From 8b035d86612e4d872e789974f744827477128d79 Mon Sep 17 00:00:00 2001 From: Daniel Lee Date: Thu, 13 Feb 2014 20:41:10 -0500 Subject: [PATCH 1/3] bumping version numbers --- src/docs/stan-models/build.xml | 2 +- src/docs/stan-models/models.sty | 2 +- src/docs/stan-models/src/MakeModelTex.java | 2 +- src/doxygen/doxygen.cfg | 2 +- src/stan/version.hpp | 2 +- 5 files changed, 5 insertions(+), 5 deletions(-) diff --git a/src/docs/stan-models/build.xml b/src/docs/stan-models/build.xml index 3ab6ea53ecb..e5ca314f7d6 100755 --- a/src/docs/stan-models/build.xml +++ b/src/docs/stan-models/build.xml @@ -3,7 +3,7 @@ + value="2.2.0"/> diff --git a/src/docs/stan-models/models.sty b/src/docs/stan-models/models.sty index 0ad60363e71..c9410620da2 100644 --- a/src/docs/stan-models/models.sty +++ b/src/docs/stan-models/models.sty @@ -56,5 +56,5 @@ \sloppy % no line overruns -\title{{\Huge\bf Stan Example Models} \\[12pt] Version 2.1.0 \\[48pt]} +\title{{\Huge\bf Stan Example Models} \\[12pt] Version 2.2.0 \\[48pt]} \author{Stan Development Team \vfill \today} diff --git a/src/docs/stan-models/src/MakeModelTex.java b/src/docs/stan-models/src/MakeModelTex.java index f913146f5f0..d2c08b8be13 100644 --- a/src/docs/stan-models/src/MakeModelTex.java +++ b/src/docs/stan-models/src/MakeModelTex.java @@ -56,7 +56,7 @@ static void writeStart(Writer texWriter) texWriter.write("\\\\[2in]" + EOL); texWriter.write("{\\Huge\\bf Stan Example Models}" + EOL); texWriter.write("\\\\[18pt]" + EOL); - texWriter.write("{\\large Version 2.1.0}" + EOL); + texWriter.write("{\\large Version 2.2.0}" + EOL); texWriter.write("\\\\[12pt]" + EOL); texWriter.write("{\\large \\today}" + EOL); texWriter.write("\\\\[1in]" + EOL); diff --git a/src/doxygen/doxygen.cfg b/src/doxygen/doxygen.cfg index ef0023723c7..2539c5c56b6 100644 --- a/src/doxygen/doxygen.cfg +++ b/src/doxygen/doxygen.cfg @@ -32,7 +32,7 @@ PROJECT_NAME = "Stan" # This could be handy for archiving the generated documentation or # if some version control system is used. -PROJECT_NUMBER = 1.3 +PROJECT_NUMBER = 2.2.0 # Using the PROJECT_BRIEF tag one can provide an optional one line description # for a project that appears at the top of each page and should give viewer diff --git a/src/stan/version.hpp b/src/stan/version.hpp index c302447d0ba..c17886a222a 100644 --- a/src/stan/version.hpp +++ b/src/stan/version.hpp @@ -9,7 +9,7 @@ namespace stan { const std::string MAJOR_VERSION = "2"; /** Minor version number for Stan package. */ - const std::string MINOR_VERSION = "1"; + const std::string MINOR_VERSION = "2"; /** Patch version for Stan package. */ const std::string PATCH_VERSION = "0"; From 5526c9fa4983e3abec5070b19ca92062a969a4ad Mon Sep 17 00:00:00 2001 From: Daniel Lee Date: Thu, 13 Feb 2014 20:51:53 -0500 Subject: [PATCH 2/3] updating doxygen --- src/doxygen/doxygen-footer.html | 2 +- src/doxygen/mainpage.dox | 3 --- 2 files changed, 1 insertion(+), 4 deletions(-) diff --git a/src/doxygen/doxygen-footer.html b/src/doxygen/doxygen-footer.html index 04b939f532a..6eb1ff3fb1a 100644 --- a/src/doxygen/doxygen-footer.html +++ b/src/doxygen/doxygen-footer.html @@ -5,7 +5,7 @@ [ Stan Home Page ] - © 2011–2013, + © 2011–2014, Stan Development Team.      diff --git a/src/doxygen/mainpage.dox b/src/doxygen/mainpage.dox index 2cdeba61817..8eae5bf0028 100644 --- a/src/doxygen/mainpage.dox +++ b/src/doxygen/mainpage.dox @@ -29,7 +29,4 @@ * http://mc-stan.org/ * - * Stan's home page is also available in the source distribution at - * - * web/mc-stan.org/index.html */ From 4984647e918a08254525b09367dba23f347888bb Mon Sep 17 00:00:00 2001 From: Daniel Lee Date: Thu, 13 Feb 2014 20:52:45 -0500 Subject: [PATCH 3/3] adding artifacts (manual + api doc) to the repository for v2.2.0 --- doc/api/html/_eigen_8dox.html | 115 + doc/api/html/_eigen_8hpp.html | 134 + doc/api/html/_eigen_8hpp_source.html | 115 + doc/api/html/_eigen___num_traits_8hpp.html | 232 + .../html/_eigen___num_traits_8hpp_source.html | 289 + doc/api/html/_l_d_l_t__alloc_8hpp.html | 130 + doc/api/html/_l_d_l_t__alloc_8hpp_source.html | 150 + doc/api/html/accumulator_8hpp.html | 134 + doc/api/html/accumulator_8hpp_source.html | 172 + doc/api/html/adapt__dense__e__nuts_8hpp.html | 129 + .../adapt__dense__e__nuts_8hpp_source.html | 171 + .../adapt__dense__e__static__hmc_8hpp.html | 129 + ...pt__dense__e__static__hmc_8hpp_source.html | 174 + doc/api/html/adapt__diag__e__nuts_8hpp.html | 129 + .../adapt__diag__e__nuts_8hpp_source.html | 171 + .../adapt__diag__e__static__hmc_8hpp.html | 129 + ...apt__diag__e__static__hmc_8hpp_source.html | 174 + doc/api/html/adapt__unit__e__nuts_8hpp.html | 129 + .../adapt__unit__e__nuts_8hpp_source.html | 157 + .../adapt__unit__e__static__hmc_8hpp.html | 129 + ...apt__unit__e__static__hmc_8hpp_source.html | 160 + doc/api/html/add_8hpp.html | 146 + doc/api/html/add_8hpp_source.html | 157 + .../agrad_2fwd_2functions_2_phi_8hpp.html | 132 + ...rad_2fwd_2functions_2_phi_8hpp_source.html | 131 + .../html/agrad_2fwd_2functions_2abs_8hpp.html | 131 + ...grad_2fwd_2functions_2abs_8hpp_source.html | 135 + ..._2functions_2bessel__first__kind_8hpp.html | 131 + ...ions_2bessel__first__kind_8hpp_source.html | 132 + ...2functions_2bessel__second__kind_8hpp.html | 131 + ...ons_2bessel__second__kind_8hpp_source.html | 132 + ...wd_2functions_2binary__log__loss_8hpp.html | 131 + ...ctions_2binary__log__loss_8hpp_source.html | 132 + ...ions_2binomial__coefficient__log_8hpp.html | 138 + ...inomial__coefficient__log_8hpp_source.html | 197 + .../agrad_2fwd_2functions_2digamma_8hpp.html | 132 + ..._2fwd_2functions_2digamma_8hpp_source.html | 130 + .../agrad_2fwd_2functions_2exp2_8hpp.html | 132 + ...rad_2fwd_2functions_2exp2_8hpp_source.html | 130 + .../html/agrad_2fwd_2functions_2exp_8hpp.html | 130 + ...grad_2fwd_2functions_2exp_8hpp_source.html | 128 + ...d_2functions_2falling__factorial_8hpp.html | 138 + ...tions_2falling__factorial_8hpp_source.html | 154 + .../agrad_2fwd_2functions_2fdim_8hpp.html | 137 + ...rad_2fwd_2functions_2fdim_8hpp_source.html | 157 + .../html/agrad_2fwd_2functions_2fma_8hpp.html | 163 + ...grad_2fwd_2functions_2fma_8hpp_source.html | 190 + .../agrad_2fwd_2functions_2gamma__p_8hpp.html | 138 + ...2fwd_2functions_2gamma__p_8hpp_source.html | 209 + .../agrad_2fwd_2functions_2gamma__q_8hpp.html | 137 + ...2fwd_2functions_2gamma__q_8hpp_source.html | 208 + .../html/agrad_2fwd_2functions_2inv_8hpp.html | 131 + ...grad_2fwd_2functions_2inv_8hpp_source.html | 128 + ...ad_2fwd_2functions_2inv__cloglog_8hpp.html | 131 + ..._2functions_2inv__cloglog_8hpp_source.html | 129 + ...grad_2fwd_2functions_2inv__logit_8hpp.html | 131 + ...wd_2functions_2inv__logit_8hpp_source.html | 131 + ...agrad_2fwd_2functions_2inv__sqrt_8hpp.html | 131 + ...fwd_2functions_2inv__sqrt_8hpp_source.html | 129 + ...rad_2fwd_2functions_2inv__square_8hpp.html | 131 + ...d_2functions_2inv__square_8hpp_source.html | 129 + .../agrad_2fwd_2functions_2lbeta_8hpp.html | 138 + ...ad_2fwd_2functions_2lbeta_8hpp_source.html | 153 + .../agrad_2fwd_2functions_2lgamma_8hpp.html | 131 + ...d_2fwd_2functions_2lgamma_8hpp_source.html | 129 + .../agrad_2fwd_2functions_2lmgamma_8hpp.html | 134 + ..._2fwd_2functions_2lmgamma_8hpp_source.html | 135 + .../agrad_2fwd_2functions_2log1m_8hpp.html | 132 + ...ad_2fwd_2functions_2log1m_8hpp_source.html | 133 + ...grad_2fwd_2functions_2log1m__exp_8hpp.html | 133 + ...wd_2functions_2log1m__exp_8hpp_source.html | 135 + ...wd_2functions_2log1m__inv__logit_8hpp.html | 131 + ...ctions_2log1m__inv__logit_8hpp_source.html | 130 + .../agrad_2fwd_2functions_2log1p_8hpp.html | 132 + ...ad_2fwd_2functions_2log1p_8hpp_source.html | 133 + ...grad_2fwd_2functions_2log1p__exp_8hpp.html | 131 + ...wd_2functions_2log1p__exp_8hpp_source.html | 129 + .../agrad_2fwd_2functions_2log2_8hpp.html | 132 + ...rad_2fwd_2functions_2log2_8hpp_source.html | 135 + .../html/agrad_2fwd_2functions_2log_8hpp.html | 131 + ...grad_2fwd_2functions_2log_8hpp_source.html | 132 + ..._2fwd_2functions_2log__diff__exp_8hpp.html | 138 + ...functions_2log__diff__exp_8hpp_source.html | 154 + ...nctions_2log__falling__factorial_8hpp.html | 138 + ..._2log__falling__factorial_8hpp_source.html | 151 + ...2fwd_2functions_2log__inv__logit_8hpp.html | 131 + ...unctions_2log__inv__logit_8hpp_source.html | 130 + ...unctions_2log__rising__factorial_8hpp.html | 138 + ...s_2log__rising__factorial_8hpp_source.html | 155 + ...d_2fwd_2functions_2log__sum__exp_8hpp.html | 140 + ...2functions_2log__sum__exp_8hpp_source.html | 170 + .../agrad_2fwd_2functions_2logit_8hpp.html | 133 + ...ad_2fwd_2functions_2logit_8hpp_source.html | 135 + ...s_2modified__bessel__first__kind_8hpp.html | 131 + ...fied__bessel__first__kind_8hpp_source.html | 132 + ..._2modified__bessel__second__kind_8hpp.html | 131 + ...ied__bessel__second__kind_8hpp_source.html | 132 + ...d_2fwd_2functions_2multiply__log_8hpp.html | 137 + ...2functions_2multiply__log_8hpp_source.html | 150 + .../agrad_2fwd_2functions_2owens__t_8hpp.html | 138 + ...2fwd_2functions_2owens__t_8hpp_source.html | 175 + ...wd_2functions_2rising__factorial_8hpp.html | 138 + ...ctions_2rising__factorial_8hpp_source.html | 157 + .../agrad_2fwd_2functions_2square_8hpp.html | 131 + ...d_2fwd_2functions_2square_8hpp_source.html | 129 + doc/api/html/agrad_2fwd_2functions_8hpp.html | 180 + .../agrad_2fwd_2functions_8hpp_source.html | 183 + ...d_2matrix_2columns__dot__product_8hpp.html | 141 + ...ix_2columns__dot__product_8hpp_source.html | 169 + ...2fwd_2matrix_2columns__dot__self_8hpp.html | 134 + ...atrix_2columns__dot__self_8hpp_source.html | 133 + .../agrad_2fwd_2matrix_2crossprod_8hpp.html | 134 + ...d_2fwd_2matrix_2crossprod_8hpp_source.html | 132 + .../agrad_2fwd_2matrix_2determinant_8hpp.html | 137 + ...2fwd_2matrix_2determinant_8hpp_source.html | 153 + .../html/agrad_2fwd_2matrix_2divide_8hpp.html | 152 + ...grad_2fwd_2matrix_2divide_8hpp_source.html | 182 + ...agrad_2fwd_2matrix_2dot__product_8hpp.html | 169 + ...fwd_2matrix_2dot__product_8hpp_source.html | 287 + .../agrad_2fwd_2matrix_2dot__self_8hpp.html | 134 + ...d_2fwd_2matrix_2dot__self_8hpp_source.html | 129 + .../agrad_2fwd_2matrix_2inverse_8hpp.html | 138 + ...rad_2fwd_2matrix_2inverse_8hpp_source.html | 151 + ...d_2fwd_2matrix_2log__determinant_8hpp.html | 136 + ...2matrix_2log__determinant_8hpp_source.html | 133 + ...agrad_2fwd_2matrix_2log__softmax_8hpp.html | 134 + ...fwd_2matrix_2log__softmax_8hpp_source.html | 166 + ...grad_2fwd_2matrix_2log__sum__exp_8hpp.html | 132 + ...wd_2matrix_2log__sum__exp_8hpp_source.html | 142 + ...grad_2fwd_2matrix_2mdivide__left_8hpp.html | 147 + ...wd_2matrix_2mdivide__left_8hpp_source.html | 231 + ...2matrix_2mdivide__left__tri__low_8hpp.html | 144 + ..._2mdivide__left__tri__low_8hpp_source.html | 243 + ...rad_2fwd_2matrix_2mdivide__right_8hpp.html | 143 + ...d_2matrix_2mdivide__right_8hpp_source.html | 228 + ...matrix_2mdivide__right__tri__low_8hpp.html | 144 + ...2mdivide__right__tri__low_8hpp_source.html | 240 + .../agrad_2fwd_2matrix_2multiply_8hpp.html | 171 + ...ad_2fwd_2matrix_2multiply_8hpp_source.html | 268 + ...ply__lower__tri__self__transpose_8hpp.html | 134 + ...wer__tri__self__transpose_8hpp_source.html | 140 + ...2fwd_2matrix_2rows__dot__product_8hpp.html | 141 + ...atrix_2rows__dot__product_8hpp_source.html | 171 + ...ad_2fwd_2matrix_2rows__dot__self_8hpp.html | 134 + ..._2matrix_2rows__dot__self_8hpp_source.html | 133 + .../agrad_2fwd_2matrix_2softmax_8hpp.html | 132 + ...rad_2fwd_2matrix_2softmax_8hpp_source.html | 165 + .../html/agrad_2fwd_2matrix_2sort_8hpp.html | 143 + .../agrad_2fwd_2matrix_2sort_8hpp_source.html | 156 + .../html/agrad_2fwd_2matrix_2sum_8hpp.html | 131 + .../agrad_2fwd_2matrix_2sum_8hpp_source.html | 133 + .../agrad_2fwd_2matrix_2tcrossprod_8hpp.html | 134 + ..._2fwd_2matrix_2tcrossprod_8hpp_source.html | 132 + .../agrad_2fwd_2matrix_2typedefs_8hpp.html | 179 + ...ad_2fwd_2matrix_2typedefs_8hpp_source.html | 173 + doc/api/html/agrad_2fwd_2matrix_8hpp.html | 134 + .../html/agrad_2fwd_2matrix_8hpp_source.html | 137 + ..._2univariate_2continuous_2normal_8hpp.html | 142 + ...riate_2continuous_2normal_8hpp_source.html | 163 + ...ng_2matrix_2check__pos__definite_8hpp.html | 132 + ...rix_2check__pos__definite_8hpp_source.html | 138 + ...ad_2rev_2error__handling_2matrix_8hpp.html | 110 + ..._2error__handling_2matrix_8hpp_source.html | 113 + .../agrad_2rev_2error__handling_8hpp.html | 109 + ...rad_2rev_2error__handling_8hpp_source.html | 111 + .../agrad_2rev_2functions_2_phi_8hpp.html | 131 + ...rad_2rev_2functions_2_phi_8hpp_source.html | 138 + ...ad_2rev_2functions_2_phi__approx_8hpp.html | 131 + ..._2functions_2_phi__approx_8hpp_source.html | 131 + .../html/agrad_2rev_2functions_2abs_8hpp.html | 129 + ...grad_2rev_2functions_2abs_8hpp_source.html | 122 + .../agrad_2rev_2functions_2as__bool_8hpp.html | 129 + ...2rev_2functions_2as__bool_8hpp_source.html | 122 + ..._2functions_2bessel__first__kind_8hpp.html | 133 + ...ions_2bessel__first__kind_8hpp_source.html | 141 + ...2functions_2bessel__second__kind_8hpp.html | 133 + ...ons_2bessel__second__kind_8hpp_source.html | 141 + ...ev_2functions_2binary__log__loss_8hpp.html | 133 + ...ctions_2binary__log__loss_8hpp_source.html | 151 + .../agrad_2rev_2functions_2digamma_8hpp.html | 132 + ..._2rev_2functions_2digamma_8hpp_source.html | 138 + .../agrad_2rev_2functions_2exp2_8hpp.html | 132 + ...rad_2rev_2functions_2exp2_8hpp_source.html | 137 + .../html/agrad_2rev_2functions_2exp_8hpp.html | 131 + ...grad_2rev_2functions_2exp_8hpp_source.html | 136 + ...v_2functions_2falling__factorial_8hpp.html | 137 + ...tions_2falling__factorial_8hpp_source.html | 171 + .../agrad_2rev_2functions_2fdim_8hpp.html | 137 + ...rad_2rev_2functions_2fdim_8hpp_source.html | 176 + .../html/agrad_2rev_2functions_2fma_8hpp.html | 154 + ...grad_2rev_2functions_2fma_8hpp_source.html | 229 + .../agrad_2rev_2functions_2gamma__p_8hpp.html | 139 + ...2rev_2functions_2gamma__p_8hpp_source.html | 215 + .../agrad_2rev_2functions_2gamma__q_8hpp.html | 140 + ...2rev_2functions_2gamma__q_8hpp_source.html | 185 + .../agrad_2rev_2functions_2ibeta_8hpp.html | 139 + ...ad_2rev_2functions_2ibeta_8hpp_source.html | 315 + .../agrad_2rev_2functions_2if__else_8hpp.html | 135 + ...2rev_2functions_2if__else_8hpp_source.html | 134 + .../html/agrad_2rev_2functions_2inv_8hpp.html | 131 + ...grad_2rev_2functions_2inv_8hpp_source.html | 137 + ...ad_2rev_2functions_2inv__cloglog_8hpp.html | 131 + ..._2functions_2inv__cloglog_8hpp_source.html | 136 + ...grad_2rev_2functions_2inv__logit_8hpp.html | 131 + ...ev_2functions_2inv__logit_8hpp_source.html | 136 + ...agrad_2rev_2functions_2inv__sqrt_8hpp.html | 131 + ...rev_2functions_2inv__sqrt_8hpp_source.html | 137 + ...rad_2rev_2functions_2inv__square_8hpp.html | 131 + ...v_2functions_2inv__square_8hpp_source.html | 137 + ...ev_2functions_2is__uninitialized_8hpp.html | 132 + ...ctions_2is__uninitialized_8hpp_source.html | 126 + .../agrad_2rev_2functions_2lgamma_8hpp.html | 134 + ...d_2rev_2functions_2lgamma_8hpp_source.html | 140 + .../agrad_2rev_2functions_2lmgamma_8hpp.html | 133 + ..._2rev_2functions_2lmgamma_8hpp_source.html | 142 + .../agrad_2rev_2functions_2log1m_8hpp.html | 131 + ...ad_2rev_2functions_2log1m_8hpp_source.html | 136 + ...grad_2rev_2functions_2log1m__exp_8hpp.html | 133 + ...ev_2functions_2log1m__exp_8hpp_source.html | 140 + .../agrad_2rev_2functions_2log1p_8hpp.html | 133 + ...ad_2rev_2functions_2log1p_8hpp_source.html | 138 + ...grad_2rev_2functions_2log1p__exp_8hpp.html | 132 + ...ev_2functions_2log1p__exp_8hpp_source.html | 138 + .../agrad_2rev_2functions_2log2_8hpp.html | 132 + ...rad_2rev_2functions_2log2_8hpp_source.html | 137 + .../html/agrad_2rev_2functions_2log_8hpp.html | 131 + ...grad_2rev_2functions_2log_8hpp_source.html | 136 + ..._2rev_2functions_2log__diff__exp_8hpp.html | 144 + ...functions_2log__diff__exp_8hpp_source.html | 174 + ...nctions_2log__falling__factorial_8hpp.html | 137 + ..._2log__falling__factorial_8hpp_source.html | 171 + ...unctions_2log__rising__factorial_8hpp.html | 137 + ...s_2log__rising__factorial_8hpp_source.html | 172 + ...d_2rev_2functions_2log__sum__exp_8hpp.html | 146 + ...2functions_2log__sum__exp_8hpp_source.html | 203 + ...s_2modified__bessel__first__kind_8hpp.html | 130 + ...fied__bessel__first__kind_8hpp_source.html | 138 + ..._2modified__bessel__second__kind_8hpp.html | 130 + ...ied__bessel__second__kind_8hpp_source.html | 138 + ...d_2rev_2functions_2multiply__log_8hpp.html | 141 + ...2functions_2multiply__log_8hpp_source.html | 175 + .../agrad_2rev_2functions_2owens__t_8hpp.html | 140 + ...2rev_2functions_2owens__t_8hpp_source.html | 173 + ...ev_2functions_2rising__factorial_8hpp.html | 137 + ...ctions_2rising__factorial_8hpp_source.html | 171 + .../agrad_2rev_2functions_2square_8hpp.html | 130 + ...d_2rev_2functions_2square_8hpp_source.html | 135 + .../agrad_2rev_2functions_2step_8hpp.html | 129 + ...rad_2rev_2functions_2step_8hpp_source.html | 122 + ...agrad_2rev_2functions_2value__of_8hpp.html | 129 + ...rev_2functions_2value__of_8hpp_source.html | 122 + doc/api/html/agrad_2rev_2functions_8hpp.html | 182 + .../agrad_2rev_2functions_8hpp_source.html | 185 + ...d_2rev_2matrix_2_l_d_l_t__factor_8hpp.html | 132 + ...2matrix_2_l_d_l_t__factor_8hpp_source.html | 161 + .../agrad_2rev_2matrix_2crossprod_8hpp.html | 130 + ...d_2rev_2matrix_2crossprod_8hpp_source.html | 124 + .../agrad_2rev_2matrix_2determinant_8hpp.html | 201 + ...2rev_2matrix_2determinant_8hpp_source.html | 182 + .../html/agrad_2rev_2matrix_2divide_8hpp.html | 144 + ...grad_2rev_2matrix_2divide_8hpp_source.html | 141 + ...agrad_2rev_2matrix_2dot__product_8hpp.html | 221 + ...rev_2matrix_2dot__product_8hpp_source.html | 368 + .../agrad_2rev_2matrix_2dot__self_8hpp.html | 176 + ...d_2rev_2matrix_2dot__self_8hpp_source.html | 192 + ...d_2rev_2matrix_2log__determinant_8hpp.html | 201 + ...2matrix_2log__determinant_8hpp_source.html | 184 + ..._2matrix_2log__determinant__ldlt_8hpp.html | 147 + ...x_2log__determinant__ldlt_8hpp_source.html | 151 + ...v_2matrix_2log__determinant__spd_8hpp.html | 208 + ...ix_2log__determinant__spd_8hpp_source.html | 231 + ...agrad_2rev_2matrix_2log__softmax_8hpp.html | 201 + ...rev_2matrix_2log__softmax_8hpp_source.html | 222 + ...grad_2rev_2matrix_2log__sum__exp_8hpp.html | 139 + ...ev_2matrix_2log__sum__exp_8hpp_source.html | 167 + ...grad_2rev_2matrix_2mdivide__left_8hpp.html | 248 + ...ev_2matrix_2mdivide__left_8hpp_source.html | 439 + ...rev_2matrix_2mdivide__left__ldlt_8hpp.html | 258 + ...trix_2mdivide__left__ldlt_8hpp_source.html | 362 + ...2rev_2matrix_2mdivide__left__spd_8hpp.html | 254 + ...atrix_2mdivide__left__spd_8hpp_source.html | 419 + ...2rev_2matrix_2mdivide__left__tri_8hpp.html | 248 + ...atrix_2mdivide__left__tri_8hpp_source.html | 469 + .../agrad_2rev_2matrix_2multiply_8hpp.html | 173 + ...ad_2rev_2matrix_2multiply_8hpp_source.html | 203 + ...ply__lower__tri__self__transpose_8hpp.html | 139 + ...wer__tri__self__transpose_8hpp_source.html | 160 + .../agrad_2rev_2matrix_2quad__form_8hpp.html | 233 + ..._2rev_2matrix_2quad__form_8hpp_source.html | 297 + doc/api/html/agrad_2rev_2matrix_2sd_8hpp.html | 139 + .../agrad_2rev_2matrix_2sd_8hpp_source.html | 188 + .../agrad_2rev_2matrix_2softmax_8hpp.html | 198 + ...rad_2rev_2matrix_2softmax_8hpp_source.html | 191 + .../html/agrad_2rev_2matrix_2sort_8hpp.html | 148 + .../agrad_2rev_2matrix_2sort_8hpp_source.html | 148 + ..._2rev_2matrix_2squared__distance_8hpp.html | 194 + ...matrix_2squared__distance_8hpp_source.html | 228 + .../agrad_2rev_2matrix_2stan__print_8hpp.html | 129 + ...2rev_2matrix_2stan__print_8hpp_source.html | 123 + .../html/agrad_2rev_2matrix_2sum_8hpp.html | 172 + .../agrad_2rev_2matrix_2sum_8hpp_source.html | 177 + .../agrad_2rev_2matrix_2tcrossprod_8hpp.html | 140 + ..._2rev_2matrix_2tcrossprod_8hpp_source.html | 161 + ...race__gen__inv__quad__form__ldlt_8hpp.html | 141 + ...en__inv__quad__form__ldlt_8hpp_source.html | 144 + ..._2matrix_2trace__gen__quad__form_8hpp.html | 201 + ...x_2trace__gen__quad__form_8hpp_source.html | 234 + ...ix_2trace__inv__quad__form__ldlt_8hpp.html | 266 + ...ce__inv__quad__form__ldlt_8hpp_source.html | 277 + ..._2rev_2matrix_2trace__quad__form_8hpp.html | 185 + ...matrix_2trace__quad__form_8hpp_source.html | 219 + .../agrad_2rev_2matrix_2typedefs_8hpp.html | 139 + ...ad_2rev_2matrix_2typedefs_8hpp_source.html | 132 + .../agrad_2rev_2matrix_2value__of_8hpp.html | 136 + ...d_2rev_2matrix_2value__of_8hpp_source.html | 133 + .../agrad_2rev_2matrix_2variance_8hpp.html | 138 + ...ad_2rev_2matrix_2variance_8hpp_source.html | 176 + doc/api/html/agrad_2rev_2matrix_8hpp.html | 147 + .../html/agrad_2rev_2matrix_8hpp_source.html | 150 + doc/api/html/agrad_8hpp.html | 109 + doc/api/html/agrad_8hpp_source.html | 119 + doc/api/html/agrad__thread__safe_8hpp.html | 473 + .../html/agrad__thread__safe_8hpp_source.html | 1156 + doc/api/html/annotated.html | 501 + doc/api/html/arg__adapt_8hpp.html | 136 + doc/api/html/arg__adapt_8hpp_source.html | 153 + doc/api/html/arg__adapt__delta_8hpp.html | 128 + .../html/arg__adapt__delta_8hpp_source.html | 141 + doc/api/html/arg__adapt__engaged_8hpp.html | 128 + .../html/arg__adapt__engaged_8hpp_source.html | 139 + doc/api/html/arg__adapt__gamma_8hpp.html | 128 + .../html/arg__adapt__gamma_8hpp_source.html | 142 + .../html/arg__adapt__init__buffer_8hpp.html | 128 + .../arg__adapt__init__buffer_8hpp_source.html | 136 + doc/api/html/arg__adapt__kappa_8hpp.html | 128 + .../html/arg__adapt__kappa_8hpp_source.html | 142 + doc/api/html/arg__adapt__t0_8hpp.html | 128 + doc/api/html/arg__adapt__t0_8hpp_source.html | 142 + .../html/arg__adapt__term__buffer_8hpp.html | 128 + .../arg__adapt__term__buffer_8hpp_source.html | 136 + doc/api/html/arg__adapt__window_8hpp.html | 128 + .../html/arg__adapt__window_8hpp_source.html | 136 + doc/api/html/arg__bfgs_8hpp.html | 130 + doc/api/html/arg__bfgs_8hpp_source.html | 145 + doc/api/html/arg__data_8hpp.html | 129 + doc/api/html/arg__data_8hpp_source.html | 138 + doc/api/html/arg__data__file_8hpp.html | 128 + doc/api/html/arg__data__file_8hpp_source.html | 138 + doc/api/html/arg__dense__e_8hpp.html | 128 + doc/api/html/arg__dense__e_8hpp_source.html | 135 + doc/api/html/arg__diag__e_8hpp.html | 128 + doc/api/html/arg__diag__e_8hpp_source.html | 135 + doc/api/html/arg__diagnose_8hpp.html | 129 + doc/api/html/arg__diagnose_8hpp_source.html | 139 + doc/api/html/arg__diagnostic__file_8hpp.html | 128 + .../arg__diagnostic__file_8hpp_source.html | 138 + doc/api/html/arg__engine_8hpp.html | 130 + doc/api/html/arg__engine_8hpp_source.html | 144 + doc/api/html/arg__fail_8hpp.html | 128 + doc/api/html/arg__fail_8hpp_source.html | 135 + doc/api/html/arg__fixed__param_8hpp.html | 128 + .../html/arg__fixed__param_8hpp_source.html | 135 + doc/api/html/arg__hmc_8hpp.html | 132 + doc/api/html/arg__hmc_8hpp_source.html | 145 + doc/api/html/arg__id_8hpp.html | 128 + doc/api/html/arg__id_8hpp_source.html | 142 + doc/api/html/arg__init_8hpp.html | 128 + doc/api/html/arg__init_8hpp_source.html | 140 + doc/api/html/arg__init__alpha_8hpp.html | 128 + .../html/arg__init__alpha_8hpp_source.html | 141 + doc/api/html/arg__int__time_8hpp.html | 128 + doc/api/html/arg__int__time_8hpp_source.html | 142 + doc/api/html/arg__iter_8hpp.html | 128 + doc/api/html/arg__iter_8hpp_source.html | 142 + doc/api/html/arg__max__depth_8hpp.html | 128 + doc/api/html/arg__max__depth_8hpp_source.html | 142 + doc/api/html/arg__method_8hpp.html | 131 + doc/api/html/arg__method_8hpp_source.html | 146 + doc/api/html/arg__metric_8hpp.html | 131 + doc/api/html/arg__metric_8hpp_source.html | 146 + doc/api/html/arg__nesterov_8hpp.html | 129 + doc/api/html/arg__nesterov_8hpp_source.html | 139 + doc/api/html/arg__newton_8hpp.html | 128 + doc/api/html/arg__newton_8hpp_source.html | 135 + doc/api/html/arg__num__samples_8hpp.html | 128 + .../html/arg__num__samples_8hpp_source.html | 142 + doc/api/html/arg__num__warmup_8hpp.html | 128 + .../html/arg__num__warmup_8hpp_source.html | 142 + doc/api/html/arg__nuts_8hpp.html | 129 + doc/api/html/arg__nuts_8hpp_source.html | 139 + doc/api/html/arg__optimize_8hpp.html | 131 + doc/api/html/arg__optimize_8hpp_source.html | 143 + doc/api/html/arg__optimize__algo_8hpp.html | 131 + .../html/arg__optimize__algo_8hpp_source.html | 146 + doc/api/html/arg__output_8hpp.html | 131 + doc/api/html/arg__output_8hpp_source.html | 143 + doc/api/html/arg__output__file_8hpp.html | 128 + .../html/arg__output__file_8hpp_source.html | 138 + doc/api/html/arg__random_8hpp.html | 129 + doc/api/html/arg__random_8hpp_source.html | 139 + doc/api/html/arg__refresh_8hpp.html | 128 + doc/api/html/arg__refresh_8hpp_source.html | 142 + doc/api/html/arg__rwm_8hpp.html | 128 + doc/api/html/arg__rwm_8hpp_source.html | 135 + doc/api/html/arg__sample_8hpp.html | 134 + doc/api/html/arg__sample_8hpp_source.html | 149 + doc/api/html/arg__sample__algo_8hpp.html | 130 + .../html/arg__sample__algo_8hpp_source.html | 144 + doc/api/html/arg__save__iterations_8hpp.html | 128 + .../arg__save__iterations_8hpp_source.html | 139 + doc/api/html/arg__save__warmup_8hpp.html | 128 + .../html/arg__save__warmup_8hpp_source.html | 139 + doc/api/html/arg__seed_8hpp.html | 128 + doc/api/html/arg__seed_8hpp_source.html | 139 + doc/api/html/arg__static_8hpp.html | 129 + doc/api/html/arg__static_8hpp_source.html | 139 + doc/api/html/arg__stepsize_8hpp.html | 128 + doc/api/html/arg__stepsize_8hpp_source.html | 141 + doc/api/html/arg__stepsize__jitter_8hpp.html | 128 + .../arg__stepsize__jitter_8hpp_source.html | 141 + doc/api/html/arg__test_8hpp.html | 129 + doc/api/html/arg__test_8hpp_source.html | 142 + doc/api/html/arg__test__grad__eps_8hpp.html | 128 + .../arg__test__grad__eps_8hpp_source.html | 141 + doc/api/html/arg__test__grad__err_8hpp.html | 128 + .../arg__test__grad__err_8hpp_source.html | 141 + doc/api/html/arg__test__gradient_8hpp.html | 130 + .../html/arg__test__gradient_8hpp_source.html | 140 + doc/api/html/arg__thin_8hpp.html | 128 + doc/api/html/arg__thin_8hpp_source.html | 142 + doc/api/html/arg__tolerance_8hpp.html | 128 + doc/api/html/arg__tolerance_8hpp_source.html | 141 + doc/api/html/arg__unit__e_8hpp.html | 128 + doc/api/html/arg__unit__e_8hpp_source.html | 135 + doc/api/html/argument_8hpp.html | 131 + doc/api/html/argument_8hpp_source.html | 193 + doc/api/html/argument__parser_8hpp.html | 134 + .../html/argument__parser_8hpp_source.html | 344 + doc/api/html/argument__probe_8hpp.html | 131 + doc/api/html/argument__probe_8hpp_source.html | 147 + doc/api/html/array__builder_8hpp.html | 130 + doc/api/html/array__builder_8hpp_source.html | 135 + doc/api/html/assign_8hpp.html | 152 + doc/api/html/assign_8hpp_source.html | 181 + doc/api/html/ast_8hpp.html | 296 + doc/api/html/ast_8hpp_source.html | 847 + doc/api/html/ast__def_8cpp.html | 183 + doc/api/html/ast__def_8cpp_source.html | 1160 + doc/api/html/autocorrelation_8hpp.html | 138 + doc/api/html/autocorrelation_8hpp_source.html | 203 + doc/api/html/autocovariance_8hpp.html | 135 + doc/api/html/autocovariance_8hpp_source.html | 143 + doc/api/html/autodiff_8hpp.html | 171 + doc/api/html/autodiff_8hpp_source.html | 403 + doc/api/html/base__adaptation_8hpp.html | 127 + .../html/base__adaptation_8hpp_source.html | 127 + doc/api/html/base__adapter_8hpp.html | 127 + doc/api/html/base__adapter_8hpp_source.html | 136 + doc/api/html/base__hamiltonian_8hpp.html | 133 + .../html/base__hamiltonian_8hpp_source.html | 196 + doc/api/html/base__hmc_8hpp.html | 134 + doc/api/html/base__hmc_8hpp_source.html | 259 + doc/api/html/base__integrator_8hpp.html | 128 + .../html/base__integrator_8hpp_source.html | 137 + doc/api/html/base__leapfrog_8hpp.html | 130 + doc/api/html/base__leapfrog_8hpp_source.html | 229 + doc/api/html/base__mcmc_8hpp.html | 130 + doc/api/html/base__mcmc_8hpp_source.html | 161 + doc/api/html/base__nuts_8hpp.html | 134 + doc/api/html/base__nuts_8hpp_source.html | 368 + doc/api/html/base__static__hmc_8hpp.html | 131 + .../html/base__static__hmc_8hpp_source.html | 230 + doc/api/html/bc_s.png | Bin 0 -> 676 bytes doc/api/html/bdwn.png | Bin 0 -> 147 bytes doc/api/html/bernoulli_8hpp.html | 160 + doc/api/html/bernoulli_8hpp_source.html | 539 + doc/api/html/beta_8hpp.html | 162 + doc/api/html/beta_8hpp_source.html | 743 + doc/api/html/beta__binomial_8hpp.html | 160 + doc/api/html/beta__binomial_8hpp_source.html | 708 + doc/api/html/bfgs_8hpp.html | 145 + doc/api/html/bfgs_8hpp_source.html | 706 + doc/api/html/binomial_8hpp.html | 163 + doc/api/html/binomial_8hpp_source.html | 631 + doc/api/html/block_8hpp.html | 133 + doc/api/html/block_8hpp_source.html | 136 + doc/api/html/boost_8dox.html | 115 + doc/api/html/boost__fpclassify_8hpp.html | 147 + .../html/boost__fpclassify_8hpp_source.html | 151 + doc/api/html/calculate__chain_8hpp.html | 128 + .../html/calculate__chain_8hpp_source.html | 120 + doc/api/html/categorical_8hpp.html | 152 + doc/api/html/categorical_8hpp_source.html | 272 + doc/api/html/categorical__argument_8hpp.html | 129 + .../categorical__argument_8hpp_source.html | 268 + doc/api/html/categorical__logit_8hpp.html | 149 + .../html/categorical__logit_8hpp_source.html | 210 + doc/api/html/cauchy_8hpp.html | 159 + doc/api/html/cauchy_8hpp_source.html | 508 + doc/api/html/chainable_8hpp.html | 140 + doc/api/html/chainable_8hpp_source.html | 165 + doc/api/html/chains_8hpp.html | 154 + doc/api/html/chains_8hpp_source.html | 702 + doc/api/html/check__bounded_8hpp.html | 133 + doc/api/html/check__bounded_8hpp_source.html | 197 + .../html/check__cholesky__factor_8hpp.html | 143 + .../check__cholesky__factor_8hpp_source.html | 167 + .../html/check__consistent__size_8hpp.html | 130 + .../check__consistent__size_8hpp_source.html | 135 + .../html/check__consistent__sizes_8hpp.html | 137 + .../check__consistent__sizes_8hpp_source.html | 168 + doc/api/html/check__corr__matrix_8hpp.html | 139 + .../html/check__corr__matrix_8hpp_source.html | 163 + doc/api/html/check__cov__matrix_8hpp.html | 145 + .../html/check__cov__matrix_8hpp_source.html | 177 + doc/api/html/check__finite_8hpp.html | 134 + doc/api/html/check__finite_8hpp_source.html | 171 + doc/api/html/check__greater_8hpp.html | 133 + doc/api/html/check__greater_8hpp_source.html | 182 + .../html/check__greater__or__equal_8hpp.html | 133 + ...check__greater__or__equal_8hpp_source.html | 182 + doc/api/html/check__ldlt__factor_8hpp.html | 136 + .../html/check__ldlt__factor_8hpp_source.html | 146 + doc/api/html/check__less_8hpp.html | 133 + doc/api/html/check__less_8hpp_source.html | 181 + doc/api/html/check__less__or__equal_8hpp.html | 133 + .../check__less__or__equal_8hpp_source.html | 176 + .../html/check__lower__triangular_8hpp.html | 136 + .../check__lower__triangular_8hpp_source.html | 150 + doc/api/html/check__nonnegative_8hpp.html | 133 + .../html/check__nonnegative_8hpp_source.html | 170 + doc/api/html/check__not__nan_8hpp.html | 134 + doc/api/html/check__not__nan_8hpp_source.html | 170 + doc/api/html/check__ordered_8hpp.html | 135 + doc/api/html/check__ordered_8hpp_source.html | 153 + .../html/check__pos__semidefinite_8hpp.html | 136 + .../check__pos__semidefinite_8hpp_source.html | 157 + doc/api/html/check__positive_8hpp.html | 135 + doc/api/html/check__positive_8hpp_source.html | 172 + .../html/check__positive__ordered_8hpp.html | 135 + .../check__positive__ordered_8hpp_source.html | 162 + doc/api/html/check__range_8hpp.html | 129 + doc/api/html/check__range_8hpp_source.html | 148 + doc/api/html/check__simplex_8hpp.html | 136 + doc/api/html/check__simplex_8hpp_source.html | 169 + doc/api/html/check__size__match_8hpp.html | 134 + .../html/check__size__match_8hpp_source.html | 153 + doc/api/html/check__spsd__matrix_8hpp.html | 138 + .../html/check__spsd__matrix_8hpp_source.html | 149 + doc/api/html/check__square_8hpp.html | 138 + doc/api/html/check__square_8hpp_source.html | 144 + doc/api/html/check__symmetric_8hpp.html | 137 + .../html/check__symmetric_8hpp_source.html | 159 + doc/api/html/check__unit__vector_8hpp.html | 136 + .../html/check__unit__vector_8hpp_source.html | 156 + doc/api/html/chi__square_8hpp.html | 156 + doc/api/html/chi__square_8hpp_source.html | 570 + doc/api/html/cholesky__decompose_8hpp.html | 132 + .../html/cholesky__decompose_8hpp_source.html | 128 + doc/api/html/chunk__alloc_8hpp.html | 155 + doc/api/html/chunk__alloc_8hpp_source.html | 181 + doc/api/html/class_l_d_l_t__factor.html | 116 + doc/api/html/classes.html | 214 + ...ssstan_1_1_double_vector_view-members.html | 114 + .../classstan_1_1_double_vector_view.html | 199 + ...view_3_01true_00_01false_01_4-members.html | 114 + ..._vector_view_3_01true_00_01false_01_4.html | 185 + ..._view_3_01true_00_01true_01_4-members.html | 114 + ...e_vector_view_3_01true_00_01true_01_4.html | 185 + .../classstan_1_1_vector_view-members.html | 118 + doc/api/html/classstan_1_1_vector_view.html | 319 + ...00_01throw__if__accessed_01_4-members.html | 118 + ...__array_00_01throw__if__accessed_01_4.html | 309 + ...le_00_01false_00_01false_01_4-members.html | 114 + ...t_01double_00_01false_00_01false_01_4.html | 185 + ...n_1_1agrad_1_1_l_d_l_t__alloc-members.html | 121 + ...classstan_1_1agrad_1_1_l_d_l_t__alloc.html | 333 + .../classstan_1_1agrad_1_1_l_d_l_t__alloc.png | Bin 0 -> 768 bytes ...assstan_1_1agrad_1_1chainable-members.html | 119 + .../html/classstan_1_1agrad_1_1chainable.html | 400 + .../html/classstan_1_1agrad_1_1chainable.png | Bin 0 -> 13283 bytes ..._1_1agrad_1_1chainable__alloc-members.html | 114 + ...lassstan_1_1agrad_1_1chainable__alloc.html | 193 + ...classstan_1_1agrad_1_1chainable__alloc.png | Bin 0 -> 769 bytes ...tan_1_1agrad_1_1op__ddv__vari-members.html | 131 + .../classstan_1_1agrad_1_1op__ddv__vari.html | 312 + .../classstan_1_1agrad_1_1op__ddv__vari.png | Bin 0 -> 1326 bytes ...stan_1_1agrad_1_1op__dv__vari-members.html | 130 + .../classstan_1_1agrad_1_1op__dv__vari.html | 282 + .../classstan_1_1agrad_1_1op__dv__vari.png | Bin 0 -> 1314 bytes ...tan_1_1agrad_1_1op__dvd__vari-members.html | 131 + .../classstan_1_1agrad_1_1op__dvd__vari.html | 312 + .../classstan_1_1agrad_1_1op__dvd__vari.png | Bin 0 -> 1331 bytes ...tan_1_1agrad_1_1op__dvv__vari-members.html | 131 + .../classstan_1_1agrad_1_1op__dvv__vari.html | 312 + .../classstan_1_1agrad_1_1op__dvv__vari.png | Bin 0 -> 1326 bytes ..._1_1agrad_1_1op__matrix__vari-members.html | 132 + ...lassstan_1_1agrad_1_1op__matrix__vari.html | 333 + ...classstan_1_1agrad_1_1op__matrix__vari.png | Bin 0 -> 985 bytes ...sstan_1_1agrad_1_1op__v__vari-members.html | 129 + .../classstan_1_1agrad_1_1op__v__vari.html | 252 + .../classstan_1_1agrad_1_1op__v__vari.png | Bin 0 -> 1293 bytes ...stan_1_1agrad_1_1op__vd__vari-members.html | 130 + .../classstan_1_1agrad_1_1op__vd__vari.html | 282 + .../classstan_1_1agrad_1_1op__vd__vari.png | Bin 0 -> 1315 bytes ...tan_1_1agrad_1_1op__vdd__vari-members.html | 131 + .../classstan_1_1agrad_1_1op__vdd__vari.html | 312 + .../classstan_1_1agrad_1_1op__vdd__vari.png | Bin 0 -> 1331 bytes ...tan_1_1agrad_1_1op__vdv__vari-members.html | 131 + .../classstan_1_1agrad_1_1op__vdv__vari.html | 312 + .../classstan_1_1agrad_1_1op__vdv__vari.png | Bin 0 -> 1333 bytes ..._1_1agrad_1_1op__vector__vari-members.html | 132 + ...lassstan_1_1agrad_1_1op__vector__vari.html | 330 + ...classstan_1_1agrad_1_1op__vector__vari.png | Bin 0 -> 979 bytes ...stan_1_1agrad_1_1op__vv__vari-members.html | 130 + .../classstan_1_1agrad_1_1op__vv__vari.html | 282 + .../classstan_1_1agrad_1_1op__vv__vari.png | Bin 0 -> 1309 bytes ...tan_1_1agrad_1_1op__vvd__vari-members.html | 131 + .../classstan_1_1agrad_1_1op__vvd__vari.html | 312 + .../classstan_1_1agrad_1_1op__vvd__vari.png | Bin 0 -> 1328 bytes ...tan_1_1agrad_1_1op__vvv__vari-members.html | 131 + .../classstan_1_1agrad_1_1op__vvv__vari.html | 312 + .../classstan_1_1agrad_1_1op__vvv__vari.png | Bin 0 -> 1316 bytes ...an_1_1agrad_1_1partials__vari-members.html | 128 + .../classstan_1_1agrad_1_1partials__vari.html | 264 + .../classstan_1_1agrad_1_1partials__vari.png | Bin 0 -> 972 bytes ..._1_1agrad_1_1precomp__v__vari-members.html | 116 + ...lassstan_1_1agrad_1_1precomp__v__vari.html | 234 + ...1precomputed__gradients__vari-members.html | 130 + ...agrad_1_1precomputed__gradients__vari.html | 335 + ...1agrad_1_1precomputed__gradients__vari.png | Bin 0 -> 1116 bytes ...rad_1_1stored__gradient__vari-members.html | 131 + ...an_1_1agrad_1_1stored__gradient__vari.html | 357 + ...tan_1_1agrad_1_1stored__gradient__vari.png | Bin 0 -> 1049 bytes .../classstan_1_1agrad_1_1var-members.html | 170 + doc/api/html/classstan_1_1agrad_1_1var.html | 2247 ++ .../classstan_1_1agrad_1_1vari-members.html | 129 + doc/api/html/classstan_1_1agrad_1_1vari.html | 661 + doc/api/html/classstan_1_1agrad_1_1vari.png | Bin 0 -> 13279 bytes ...classstan_1_1gm_1_1arg__adapt-members.html | 133 + .../html/classstan_1_1gm_1_1arg__adapt.html | 201 + .../html/classstan_1_1gm_1_1arg__adapt.png | Bin 0 -> 1020 bytes ...an_1_1gm_1_1arg__adapt__delta-members.html | 147 + .../classstan_1_1gm_1_1arg__adapt__delta.html | 255 + .../classstan_1_1gm_1_1arg__adapt__delta.png | Bin 0 -> 1508 bytes ..._1_1gm_1_1arg__adapt__engaged-members.html | 146 + ...lassstan_1_1gm_1_1arg__adapt__engaged.html | 226 + ...classstan_1_1gm_1_1arg__adapt__engaged.png | Bin 0 -> 1500 bytes ...an_1_1gm_1_1arg__adapt__gamma-members.html | 147 + .../classstan_1_1gm_1_1arg__adapt__gamma.html | 255 + .../classstan_1_1gm_1_1arg__adapt__gamma.png | Bin 0 -> 1527 bytes ...m_1_1arg__adapt__init__buffer-members.html | 146 + ...tan_1_1gm_1_1arg__adapt__init__buffer.html | 226 + ...stan_1_1gm_1_1arg__adapt__init__buffer.png | Bin 0 -> 1667 bytes ...an_1_1gm_1_1arg__adapt__kappa-members.html | 147 + .../classstan_1_1gm_1_1arg__adapt__kappa.html | 255 + .../classstan_1_1gm_1_1arg__adapt__kappa.png | Bin 0 -> 1518 bytes ...sstan_1_1gm_1_1arg__adapt__t0-members.html | 147 + .../classstan_1_1gm_1_1arg__adapt__t0.html | 255 + .../classstan_1_1gm_1_1arg__adapt__t0.png | Bin 0 -> 1488 bytes ...m_1_1arg__adapt__term__buffer-members.html | 146 + ...tan_1_1gm_1_1arg__adapt__term__buffer.html | 226 + ...stan_1_1gm_1_1arg__adapt__term__buffer.png | Bin 0 -> 1676 bytes ...n_1_1gm_1_1arg__adapt__window-members.html | 146 + ...classstan_1_1gm_1_1arg__adapt__window.html | 226 + .../classstan_1_1gm_1_1arg__adapt__window.png | Bin 0 -> 1635 bytes .../classstan_1_1gm_1_1arg__bfgs-members.html | 133 + .../html/classstan_1_1gm_1_1arg__bfgs.html | 201 + doc/api/html/classstan_1_1gm_1_1arg__bfgs.png | Bin 0 -> 1015 bytes .../classstan_1_1gm_1_1arg__data-members.html | 133 + .../html/classstan_1_1gm_1_1arg__data.html | 201 + doc/api/html/classstan_1_1gm_1_1arg__data.png | Bin 0 -> 1001 bytes ...stan_1_1gm_1_1arg__data__file-members.html | 146 + .../classstan_1_1gm_1_1arg__data__file.html | 226 + .../classstan_1_1gm_1_1arg__data__file.png | Bin 0 -> 1429 bytes ...ssstan_1_1gm_1_1arg__dense__e-members.html | 133 + .../classstan_1_1gm_1_1arg__dense__e.html | 201 + .../html/classstan_1_1gm_1_1arg__dense__e.png | Bin 0 -> 1001 bytes ...assstan_1_1gm_1_1arg__diag__e-members.html | 133 + .../html/classstan_1_1gm_1_1arg__diag__e.html | 201 + .../html/classstan_1_1gm_1_1arg__diag__e.png | Bin 0 -> 996 bytes ...ssstan_1_1gm_1_1arg__diagnose-members.html | 133 + .../classstan_1_1gm_1_1arg__diagnose.html | 201 + .../html/classstan_1_1gm_1_1arg__diagnose.png | Bin 0 -> 1040 bytes ..._1gm_1_1arg__diagnostic__file-members.html | 146 + ...ssstan_1_1gm_1_1arg__diagnostic__file.html | 226 + ...assstan_1_1gm_1_1arg__diagnostic__file.png | Bin 0 -> 1468 bytes ...lassstan_1_1gm_1_1arg__engine-members.html | 143 + .../html/classstan_1_1gm_1_1arg__engine.html | 205 + .../html/classstan_1_1gm_1_1arg__engine.png | Bin 0 -> 1298 bytes .../classstan_1_1gm_1_1arg__fail-members.html | 133 + .../html/classstan_1_1gm_1_1arg__fail.html | 201 + doc/api/html/classstan_1_1gm_1_1arg__fail.png | Bin 0 -> 974 bytes ...an_1_1gm_1_1arg__fixed__param-members.html | 133 + .../classstan_1_1gm_1_1arg__fixed__param.html | 201 + .../classstan_1_1gm_1_1arg__fixed__param.png | Bin 0 -> 1029 bytes .../classstan_1_1gm_1_1arg__hmc-members.html | 133 + doc/api/html/classstan_1_1gm_1_1arg__hmc.html | 201 + doc/api/html/classstan_1_1gm_1_1arg__hmc.png | Bin 0 -> 993 bytes .../classstan_1_1gm_1_1arg__id-members.html | 147 + doc/api/html/classstan_1_1gm_1_1arg__id.html | 255 + doc/api/html/classstan_1_1gm_1_1arg__id.png | Bin 0 -> 1397 bytes .../classstan_1_1gm_1_1arg__init-members.html | 146 + .../html/classstan_1_1gm_1_1arg__init.html | 226 + doc/api/html/classstan_1_1gm_1_1arg__init.png | Bin 0 -> 1390 bytes ...tan_1_1gm_1_1arg__init__alpha-members.html | 147 + .../classstan_1_1gm_1_1arg__init__alpha.html | 255 + .../classstan_1_1gm_1_1arg__init__alpha.png | Bin 0 -> 1507 bytes ...sstan_1_1gm_1_1arg__int__time-members.html | 147 + .../classstan_1_1gm_1_1arg__int__time.html | 255 + .../classstan_1_1gm_1_1arg__int__time.png | Bin 0 -> 1482 bytes .../classstan_1_1gm_1_1arg__iter-members.html | 147 + .../html/classstan_1_1gm_1_1arg__iter.html | 255 + doc/api/html/classstan_1_1gm_1_1arg__iter.png | Bin 0 -> 1418 bytes ...stan_1_1gm_1_1arg__max__depth-members.html | 147 + .../classstan_1_1gm_1_1arg__max__depth.html | 255 + .../classstan_1_1gm_1_1arg__max__depth.png | Bin 0 -> 1458 bytes ...lassstan_1_1gm_1_1arg__method-members.html | 143 + .../html/classstan_1_1gm_1_1arg__method.html | 205 + .../html/classstan_1_1gm_1_1arg__method.png | Bin 0 -> 1291 bytes ...lassstan_1_1gm_1_1arg__metric-members.html | 143 + .../html/classstan_1_1gm_1_1arg__metric.html | 205 + .../html/classstan_1_1gm_1_1arg__metric.png | Bin 0 -> 1293 bytes ...ssstan_1_1gm_1_1arg__nesterov-members.html | 133 + .../classstan_1_1gm_1_1arg__nesterov.html | 201 + .../html/classstan_1_1gm_1_1arg__nesterov.png | Bin 0 -> 1030 bytes ...lassstan_1_1gm_1_1arg__newton-members.html | 133 + .../html/classstan_1_1gm_1_1arg__newton.html | 201 + .../html/classstan_1_1gm_1_1arg__newton.png | Bin 0 -> 1015 bytes ...an_1_1gm_1_1arg__num__samples-members.html | 147 + .../classstan_1_1gm_1_1arg__num__samples.html | 255 + .../classstan_1_1gm_1_1arg__num__samples.png | Bin 0 -> 1460 bytes ...tan_1_1gm_1_1arg__num__warmup-members.html | 147 + .../classstan_1_1gm_1_1arg__num__warmup.html | 255 + .../classstan_1_1gm_1_1arg__num__warmup.png | Bin 0 -> 1453 bytes .../classstan_1_1gm_1_1arg__nuts-members.html | 133 + .../html/classstan_1_1gm_1_1arg__nuts.html | 201 + doc/api/html/classstan_1_1gm_1_1arg__nuts.png | Bin 0 -> 1000 bytes ...ssstan_1_1gm_1_1arg__optimize-members.html | 133 + .../classstan_1_1gm_1_1arg__optimize.html | 201 + .../html/classstan_1_1gm_1_1arg__optimize.png | Bin 0 -> 1025 bytes ..._1_1gm_1_1arg__optimize__algo-members.html | 143 + ...lassstan_1_1gm_1_1arg__optimize__algo.html | 205 + ...classstan_1_1gm_1_1arg__optimize__algo.png | Bin 0 -> 1342 bytes ...lassstan_1_1gm_1_1arg__output-members.html | 133 + .../html/classstan_1_1gm_1_1arg__output.html | 201 + .../html/classstan_1_1gm_1_1arg__output.png | Bin 0 -> 1014 bytes ...an_1_1gm_1_1arg__output__file-members.html | 146 + .../classstan_1_1gm_1_1arg__output__file.html | 226 + .../classstan_1_1gm_1_1arg__output__file.png | Bin 0 -> 1427 bytes ...lassstan_1_1gm_1_1arg__random-members.html | 133 + .../html/classstan_1_1gm_1_1arg__random.html | 201 + .../html/classstan_1_1gm_1_1arg__random.png | Bin 0 -> 1012 bytes ...assstan_1_1gm_1_1arg__refresh-members.html | 147 + .../html/classstan_1_1gm_1_1arg__refresh.html | 255 + .../html/classstan_1_1gm_1_1arg__refresh.png | Bin 0 -> 1448 bytes .../classstan_1_1gm_1_1arg__rwm-members.html | 133 + doc/api/html/classstan_1_1gm_1_1arg__rwm.html | 201 + doc/api/html/classstan_1_1gm_1_1arg__rwm.png | Bin 0 -> 994 bytes ...lassstan_1_1gm_1_1arg__sample-members.html | 133 + .../html/classstan_1_1gm_1_1arg__sample.html | 201 + .../html/classstan_1_1gm_1_1arg__sample.png | Bin 0 -> 1018 bytes ...an_1_1gm_1_1arg__sample__algo-members.html | 143 + .../classstan_1_1gm_1_1arg__sample__algo.html | 205 + .../classstan_1_1gm_1_1arg__sample__algo.png | Bin 0 -> 1323 bytes ..._1gm_1_1arg__save__iterations-members.html | 146 + ...ssstan_1_1gm_1_1arg__save__iterations.html | 226 + ...assstan_1_1gm_1_1arg__save__iterations.png | Bin 0 -> 1507 bytes ...an_1_1gm_1_1arg__save__warmup-members.html | 146 + .../classstan_1_1gm_1_1arg__save__warmup.html | 226 + .../classstan_1_1gm_1_1arg__save__warmup.png | Bin 0 -> 1479 bytes .../classstan_1_1gm_1_1arg__seed-members.html | 146 + .../html/classstan_1_1gm_1_1arg__seed.html | 226 + doc/api/html/classstan_1_1gm_1_1arg__seed.png | Bin 0 -> 1562 bytes ...lassstan_1_1gm_1_1arg__static-members.html | 133 + .../html/classstan_1_1gm_1_1arg__static.html | 201 + .../html/classstan_1_1gm_1_1arg__static.png | Bin 0 -> 1002 bytes ...ssstan_1_1gm_1_1arg__stepsize-members.html | 147 + .../classstan_1_1gm_1_1arg__stepsize.html | 255 + .../html/classstan_1_1gm_1_1arg__stepsize.png | Bin 0 -> 1481 bytes ..._1gm_1_1arg__stepsize__jitter-members.html | 147 + ...ssstan_1_1gm_1_1arg__stepsize__jitter.html | 255 + ...assstan_1_1gm_1_1arg__stepsize__jitter.png | Bin 0 -> 1527 bytes .../classstan_1_1gm_1_1arg__test-members.html | 143 + .../html/classstan_1_1gm_1_1arg__test.html | 205 + doc/api/html/classstan_1_1gm_1_1arg__test.png | Bin 0 -> 1282 bytes ...1_1gm_1_1arg__test__grad__eps-members.html | 147 + ...assstan_1_1gm_1_1arg__test__grad__eps.html | 255 + ...lassstan_1_1gm_1_1arg__test__grad__eps.png | Bin 0 -> 1523 bytes ...1_1gm_1_1arg__test__grad__err-members.html | 147 + ...assstan_1_1gm_1_1arg__test__grad__err.html | 255 + ...lassstan_1_1gm_1_1arg__test__grad__err.png | Bin 0 -> 1519 bytes ..._1_1gm_1_1arg__test__gradient-members.html | 133 + ...lassstan_1_1gm_1_1arg__test__gradient.html | 201 + ...classstan_1_1gm_1_1arg__test__gradient.png | Bin 0 -> 1069 bytes .../classstan_1_1gm_1_1arg__thin-members.html | 147 + .../html/classstan_1_1gm_1_1arg__thin.html | 255 + doc/api/html/classstan_1_1gm_1_1arg__thin.png | Bin 0 -> 1411 bytes ...sstan_1_1gm_1_1arg__tolerance-members.html | 147 + .../classstan_1_1gm_1_1arg__tolerance.html | 278 + .../classstan_1_1gm_1_1arg__tolerance.png | Bin 0 -> 1490 bytes ...assstan_1_1gm_1_1arg__unit__e-members.html | 133 + .../html/classstan_1_1gm_1_1arg__unit__e.html | 201 + .../html/classstan_1_1gm_1_1arg__unit__e.png | Bin 0 -> 996 bytes .../classstan_1_1gm_1_1argument-members.html | 129 + doc/api/html/classstan_1_1gm_1_1argument.html | 728 + doc/api/html/classstan_1_1gm_1_1argument.png | Bin 0 -> 13621 bytes ...tan_1_1gm_1_1argument__parser-members.html | 122 + .../classstan_1_1gm_1_1argument__parser.html | 450 + ...stan_1_1gm_1_1argument__probe-members.html | 115 + .../classstan_1_1gm_1_1argument__probe.html | 211 + ..._1gm_1_1categorical__argument-members.html | 132 + ...ssstan_1_1gm_1_1categorical__argument.html | 521 + ...assstan_1_1gm_1_1categorical__argument.png | Bin 0 -> 6971 bytes ...1_1gm_1_1function__signatures-members.html | 130 + ...assstan_1_1gm_1_1function__signatures.html | 786 + ...sstan_1_1gm_1_1list__argument-members.html | 142 + .../classstan_1_1gm_1_1list__argument.html | 722 + .../classstan_1_1gm_1_1list__argument.png | Bin 0 -> 3141 bytes ..._1_1gm_1_1singleton__argument-members.html | 145 + ...lassstan_1_1gm_1_1singleton__argument.html | 758 + ...classstan_1_1gm_1_1singleton__argument.png | Bin 0 -> 14438 bytes ...n_1_1gm_1_1unvalued__argument-members.html | 132 + ...classstan_1_1gm_1_1unvalued__argument.html | 401 + .../classstan_1_1gm_1_1unvalued__argument.png | Bin 0 -> 2253 bytes ...tan_1_1gm_1_1valued__argument-members.html | 134 + .../classstan_1_1gm_1_1valued__argument.html | 437 + .../classstan_1_1gm_1_1valued__argument.png | Bin 0 -> 20770 bytes .../classstan_1_1io_1_1cmd__line-members.html | 120 + .../html/classstan_1_1io_1_1cmd__line.html | 478 + ...lassstan_1_1io_1_1csv__writer-members.html | 121 + .../html/classstan_1_1io_1_1csv__writer.html | 457 + .../html/classstan_1_1io_1_1dump-members.html | 133 + doc/api/html/classstan_1_1io_1_1dump.html | 565 + doc/api/html/classstan_1_1io_1_1dump.png | Bin 0 -> 531 bytes ...assstan_1_1io_1_1dump__reader-members.html | 121 + .../html/classstan_1_1io_1_1dump__reader.html | 428 + ...assstan_1_1io_1_1dump__writer-members.html | 119 + .../html/classstan_1_1io_1_1dump__writer.html | 466 + ...assstan_1_1io_1_1mcmc__writer-members.html | 121 + .../html/classstan_1_1io_1_1mcmc__writer.html | 524 + .../classstan_1_1io_1_1reader-members.html | 213 + doc/api/html/classstan_1_1io_1_1reader.html | 4761 ++++ ...an_1_1io_1_1stan__csv__reader-members.html | 119 + .../classstan_1_1io_1_1stan__csv__reader.html | 377 + ...assstan_1_1io_1_1var__context-members.html | 131 + .../html/classstan_1_1io_1_1var__context.html | 987 + .../html/classstan_1_1io_1_1var__context.png | Bin 0 -> 534 bytes .../classstan_1_1io_1_1writer-members.html | 148 + doc/api/html/classstan_1_1io_1_1writer.html | 1616 ++ ...01double_00_01_r_00_01_c_01_4-members.html | 126 + ...actor_3_01double_00_01_r_00_01_c_01_4.html | 543 + ...d_1_1var_00_01_r_00_01_c_01_4-members.html | 122 + ..._1_1agrad_1_1var_00_01_r_00_01_c_01_4.html | 472 + ...ssstan_1_1math_1_1accumulator-members.html | 119 + .../classstan_1_1math_1_1accumulator.html | 442 + ...lassstan_1_1math_1_1seq__view-members.html | 115 + .../html/classstan_1_1math_1_1seq__view.html | 218 + ...1_eigen_1_1_dynamic_01_4_01_4-members.html | 115 + ...011_00_01_eigen_1_1_dynamic_01_4_01_4.html | 218 + ..._1_1_dynamic_00_011_01_4_01_4-members.html | 115 + ...01_eigen_1_1_dynamic_00_011_01_4_01_4.html | 218 + ...mic_00_01_eigen_1_1_dynamic_01_4_01_4.html | 218 + ..._00_085212abef8028c93e19b6c8ba8c0204d.html | 115 + ...td_1_1vector_3_01_s_01_4_01_4-members.html | 115 + ...t_00_01std_1_1vector_3_01_s_01_4_01_4.html | 218 + ...td_1_1vector_3_01_t_01_4_01_4-members.html | 115 + ...t_00_01std_1_1vector_3_01_t_01_4_01_4.html | 218 + ...1vector_3_01_t_01_4_01_4_01_4-members.html | 115 + ...01std_1_1vector_3_01_t_01_4_01_4_01_4.html | 218 + ...d_1_1vector_3_01int_01_4_01_4-members.html | 115 + ..._00_01std_1_1vector_3_01int_01_4_01_4.html | 212 + ...mcmc_1_1adapt__dense__e__nuts-members.html | 171 + ...stan_1_1mcmc_1_1adapt__dense__e__nuts.html | 404 + ...sstan_1_1mcmc_1_1adapt__dense__e__nuts.png | Bin 0 -> 4606 bytes ...1adapt__dense__e__static__hmc-members.html | 168 + ...1mcmc_1_1adapt__dense__e__static__hmc.html | 381 + ..._1mcmc_1_1adapt__dense__e__static__hmc.png | Bin 0 -> 5169 bytes ...1mcmc_1_1adapt__diag__e__nuts-members.html | 171 + ...sstan_1_1mcmc_1_1adapt__diag__e__nuts.html | 404 + ...ssstan_1_1mcmc_1_1adapt__diag__e__nuts.png | Bin 0 -> 4595 bytes ..._1adapt__diag__e__static__hmc-members.html | 168 + ..._1mcmc_1_1adapt__diag__e__static__hmc.html | 381 + ...1_1mcmc_1_1adapt__diag__e__static__hmc.png | Bin 0 -> 4868 bytes ...1mcmc_1_1adapt__unit__e__nuts-members.html | 168 + ...sstan_1_1mcmc_1_1adapt__unit__e__nuts.html | 398 + ...ssstan_1_1mcmc_1_1adapt__unit__e__nuts.png | Bin 0 -> 4491 bytes ..._1adapt__unit__e__static__hmc-members.html | 165 + ..._1mcmc_1_1adapt__unit__e__static__hmc.html | 375 + ...1_1mcmc_1_1adapt__unit__e__static__hmc.png | Bin 0 -> 4541 bytes ...n_1_1mcmc_1_1base__adaptation-members.html | 113 + ...classstan_1_1mcmc_1_1base__adaptation.html | 166 + .../classstan_1_1mcmc_1_1base__adaptation.png | Bin 0 -> 1722 bytes ...stan_1_1mcmc_1_1base__adapter-members.html | 117 + .../classstan_1_1mcmc_1_1base__adapter.html | 282 + .../classstan_1_1mcmc_1_1base__adapter.png | Bin 0 -> 4106 bytes ..._1_1mcmc_1_1base__hamiltonian-members.html | 128 + ...lassstan_1_1mcmc_1_1base__hamiltonian.html | 639 + ...lassstan_1_1mcmc_1_1base__hmc-members.html | 144 + .../html/classstan_1_1mcmc_1_1base__hmc.html | 801 + .../html/classstan_1_1mcmc_1_1base__hmc.png | Bin 0 -> 2033 bytes ...n_1_1mcmc_1_1base__integrator-members.html | 115 + ...classstan_1_1mcmc_1_1base__integrator.html | 246 + .../classstan_1_1mcmc_1_1base__integrator.png | Bin 0 -> 1221 bytes ...tan_1_1mcmc_1_1base__leapfrog-members.html | 120 + .../classstan_1_1mcmc_1_1base__leapfrog.html | 410 + .../classstan_1_1mcmc_1_1base__leapfrog.png | Bin 0 -> 1220 bytes ...assstan_1_1mcmc_1_1base__mcmc-members.html | 126 + .../html/classstan_1_1mcmc_1_1base__mcmc.html | 564 + .../html/classstan_1_1mcmc_1_1base__mcmc.png | Bin 0 -> 10651 bytes ...assstan_1_1mcmc_1_1base__nuts-members.html | 157 + .../html/classstan_1_1mcmc_1_1base__nuts.html | 751 + .../html/classstan_1_1mcmc_1_1base__nuts.png | Bin 0 -> 1380 bytes ..._1_1mcmc_1_1base__static__hmc-members.html | 154 + ...lassstan_1_1mcmc_1_1base__static__hmc.html | 726 + ...classstan_1_1mcmc_1_1base__static__hmc.png | Bin 0 -> 1453 bytes .../classstan_1_1mcmc_1_1chains-members.html | 174 + doc/api/html/classstan_1_1mcmc_1_1chains.html | 2390 ++ ..._1_1mcmc_1_1covar__adaptation-members.html | 129 + ...lassstan_1_1mcmc_1_1covar__adaptation.html | 261 + ...classstan_1_1mcmc_1_1covar__adaptation.png | Bin 0 -> 1083 bytes ...n_1_1mcmc_1_1dense__e__metric-members.html | 130 + ...classstan_1_1mcmc_1_1dense__e__metric.html | 465 + .../classstan_1_1mcmc_1_1dense__e__metric.png | Bin 0 -> 1197 bytes ...tan_1_1mcmc_1_1dense__e__nuts-members.html | 158 + .../classstan_1_1mcmc_1_1dense__e__nuts.html | 332 + .../classstan_1_1mcmc_1_1dense__e__nuts.png | Bin 0 -> 3170 bytes ...an_1_1mcmc_1_1dense__e__point-members.html | 127 + .../classstan_1_1mcmc_1_1dense__e__point.html | 272 + .../classstan_1_1mcmc_1_1dense__e__point.png | Bin 0 -> 632 bytes ...mcmc_1_1dense__e__static__hmc-members.html | 155 + ...stan_1_1mcmc_1_1dense__e__static__hmc.html | 262 + ...sstan_1_1mcmc_1_1dense__e__static__hmc.png | Bin 0 -> 3626 bytes ...an_1_1mcmc_1_1diag__e__metric-members.html | 130 + .../classstan_1_1mcmc_1_1diag__e__metric.html | 465 + .../classstan_1_1mcmc_1_1diag__e__metric.png | Bin 0 -> 1200 bytes ...stan_1_1mcmc_1_1diag__e__nuts-members.html | 158 + .../classstan_1_1mcmc_1_1diag__e__nuts.html | 332 + .../classstan_1_1mcmc_1_1diag__e__nuts.png | Bin 0 -> 3177 bytes ...tan_1_1mcmc_1_1diag__e__point-members.html | 127 + .../classstan_1_1mcmc_1_1diag__e__point.html | 272 + .../classstan_1_1mcmc_1_1diag__e__point.png | Bin 0 -> 626 bytes ...1mcmc_1_1diag__e__static__hmc-members.html | 155 + ...sstan_1_1mcmc_1_1diag__e__static__hmc.html | 262 + ...ssstan_1_1mcmc_1_1diag__e__static__hmc.png | Bin 0 -> 3332 bytes ...tan_1_1mcmc_1_1expl__leapfrog-members.html | 121 + .../classstan_1_1mcmc_1_1expl__leapfrog.html | 329 + .../classstan_1_1mcmc_1_1expl__leapfrog.png | Bin 0 -> 1215 bytes ...mcmc_1_1fixed__param__sampler-members.html | 127 + ...stan_1_1mcmc_1_1fixed__param__sampler.html | 261 + ...sstan_1_1mcmc_1_1fixed__param__sampler.png | Bin 0 -> 708 bytes ...lassstan_1_1mcmc_1_1ps__point-members.html | 124 + .../html/classstan_1_1mcmc_1_1ps__point.html | 472 + .../html/classstan_1_1mcmc_1_1ps__point.png | Bin 0 -> 1105 bytes .../classstan_1_1mcmc_1_1sample-members.html | 122 + doc/api/html/classstan_1_1mcmc_1_1sample.html | 417 + ...1mcmc_1_1stepsize__adaptation-members.html | 134 + ...sstan_1_1mcmc_1_1stepsize__adaptation.html | 729 + ...ssstan_1_1mcmc_1_1stepsize__adaptation.png | Bin 0 -> 732 bytes ..._1_1mcmc_1_1stepsize__adapter-members.html | 120 + ...lassstan_1_1mcmc_1_1stepsize__adapter.html | 232 + ...classstan_1_1mcmc_1_1stepsize__adapter.png | Bin 0 -> 2039 bytes ...c_1_1stepsize__covar__adapter-members.html | 123 + ...n_1_1mcmc_1_1stepsize__covar__adapter.html | 340 + ...an_1_1mcmc_1_1stepsize__covar__adapter.png | Bin 0 -> 2090 bytes ...cmc_1_1stepsize__var__adapter-members.html | 123 + ...tan_1_1mcmc_1_1stepsize__var__adapter.html | 340 + ...stan_1_1mcmc_1_1stepsize__var__adapter.png | Bin 0 -> 2089 bytes ...an_1_1mcmc_1_1unit__e__metric-members.html | 130 + .../classstan_1_1mcmc_1_1unit__e__metric.html | 465 + .../classstan_1_1mcmc_1_1unit__e__metric.png | Bin 0 -> 1179 bytes ...stan_1_1mcmc_1_1unit__e__nuts-members.html | 158 + .../classstan_1_1mcmc_1_1unit__e__nuts.html | 332 + .../classstan_1_1mcmc_1_1unit__e__nuts.png | Bin 0 -> 3114 bytes ...tan_1_1mcmc_1_1unit__e__point-members.html | 125 + .../classstan_1_1mcmc_1_1unit__e__point.html | 194 + .../classstan_1_1mcmc_1_1unit__e__point.png | Bin 0 -> 610 bytes ...1mcmc_1_1unit__e__static__hmc-members.html | 155 + ...sstan_1_1mcmc_1_1unit__e__static__hmc.html | 262 + ...ssstan_1_1mcmc_1_1unit__e__static__hmc.png | Bin 0 -> 3323 bytes ...an_1_1mcmc_1_1var__adaptation-members.html | 129 + .../classstan_1_1mcmc_1_1var__adaptation.html | 261 + .../classstan_1_1mcmc_1_1var__adaptation.png | Bin 0 -> 1077 bytes ...1mcmc_1_1windowed__adaptation-members.html | 126 + ...sstan_1_1mcmc_1_1windowed__adaptation.html | 528 + ...ssstan_1_1mcmc_1_1windowed__adaptation.png | Bin 0 -> 1445 bytes ...tan_1_1memory_1_1chunk__alloc-members.html | 117 + .../classstan_1_1memory_1_1chunk__alloc.html | 299 + ...tan_1_1memory_1_1stack__alloc-members.html | 118 + .../classstan_1_1memory_1_1stack__alloc.html | 341 + ...ssstan_1_1model_1_1prob__grad-members.html | 120 + .../classstan_1_1model_1_1prob__grad.html | 360 + ...ation_1_1_b_f_g_s_line_search-members.html | 156 + ...1optimization_1_1_b_f_g_s_line_search.html | 462 + ..._1optimization_1_1_b_f_g_s_line_search.png | Bin 0 -> 1152 bytes ...ization_1_1_b_f_g_s_minimizer-members.html | 148 + ...1_1optimization_1_1_b_f_g_s_minimizer.html | 1132 + ...ptimization_1_1_model_adaptor-members.html | 117 + ...tan_1_1optimization_1_1_model_adaptor.html | 330 + ...ization_1_1_nesterov_gradient-members.html | 118 + ...1_1optimization_1_1_nesterov_gradient.html | 334 + ..._1_1welford__covar__estimator-members.html | 121 + ..._1_1prob_1_1welford__covar__estimator.html | 369 + ...ob_1_1welford__var__estimator-members.html | 121 + ...an_1_1prob_1_1welford__var__estimator.html | 369 + doc/api/html/closed.png | Bin 0 -> 132 bytes doc/api/html/cmd__line_8hpp.html | 153 + doc/api/html/cmd__line_8hpp_source.html | 278 + doc/api/html/col_8hpp.html | 132 + doc/api/html/col_8hpp_source.html | 128 + doc/api/html/cols_8hpp.html | 129 + doc/api/html/cols_8hpp_source.html | 125 + doc/api/html/command_8hpp.html | 198 + doc/api/html/command_8hpp_source.html | 1151 + doc/api/html/common__adaptors__def_8hpp.html | 111 + .../common__adaptors__def_8hpp_source.html | 120 + doc/api/html/common__type_8hpp.html | 134 + doc/api/html/common__type_8hpp_source.html | 138 + doc/api/html/compiler_8hpp.html | 133 + doc/api/html/compiler_8hpp_source.html | 141 + doc/api/html/constraint__tolerance_8hpp.html | 128 + .../constraint__tolerance_8hpp_source.html | 118 + doc/api/html/covar__adaptation_8hpp.html | 131 + .../html/covar__adaptation_8hpp_source.html | 163 + doc/api/html/csv__writer_8hpp.html | 132 + doc/api/html/csv__writer_8hpp_source.html | 197 + doc/api/html/cumulative__sum_8hpp.html | 135 + doc/api/html/cumulative__sum_8hpp_source.html | 142 + doc/api/html/ddv__vari_8hpp.html | 128 + doc/api/html/ddv__vari_8hpp_source.html | 132 + doc/api/html/dense__e__metric_8hpp.html | 133 + .../html/dense__e__metric_8hpp_source.html | 174 + doc/api/html/dense__e__nuts_8hpp.html | 131 + doc/api/html/dense__e__nuts_8hpp_source.html | 151 + doc/api/html/dense__e__point_8hpp.html | 128 + doc/api/html/dense__e__point_8hpp_source.html | 151 + doc/api/html/dense__e__static__hmc_8hpp.html | 131 + .../dense__e__static__hmc_8hpp_source.html | 145 + doc/api/html/diag__e__metric_8hpp.html | 131 + doc/api/html/diag__e__metric_8hpp_source.html | 167 + doc/api/html/diag__e__nuts_8hpp.html | 131 + doc/api/html/diag__e__nuts_8hpp_source.html | 151 + doc/api/html/diag__e__point_8hpp.html | 128 + doc/api/html/diag__e__point_8hpp_source.html | 149 + doc/api/html/diag__e__static__hmc_8hpp.html | 131 + .../diag__e__static__hmc_8hpp_source.html | 145 + doc/api/html/diag__matrix_8hpp.html | 131 + doc/api/html/diag__matrix_8hpp_source.html | 125 + doc/api/html/diag__post__multiply_8hpp.html | 133 + .../diag__post__multiply_8hpp_source.html | 136 + doc/api/html/diag__pre__multiply_8hpp.html | 133 + .../html/diag__pre__multiply_8hpp_source.html | 136 + doc/api/html/diagonal_8hpp.html | 131 + doc/api/html/diagonal_8hpp_source.html | 125 + doc/api/html/dims_8hpp.html | 139 + doc/api/html/dims_8hpp_source.html | 149 + .../dir_0c7ba03e05d7755a93c72a387515f18e.html | 135 + .../dir_0f7468ba3d646c35c5f1677a20123edb.html | 118 + .../dir_139cce78ba5d92491da28703870a60b5.html | 107 + .../dir_182af125d00bd279bb48de10042b58c3.html | 127 + .../dir_1ff9d265245893e221d5111ecd1383dc.html | 231 + .../dir_2199d12d39bf553599a4a7fa2d24fe67.html | 107 + .../dir_22b468d2bc5e21cba3741edb912cd36a.html | 139 + .../dir_29b20cd43524c7f0fc77aef3c7e38f50.html | 126 + .../dir_2e546bda41fe40b59dc00b79d00b50ce.html | 107 + .../dir_2fa10d765296c30bb35aa6c0b0bc0528.html | 116 + .../dir_3995d5884456238d20884a417bb53c63.html | 136 + .../dir_3b4610d017c705a4887f638ce7fbc838.html | 116 + .../dir_3bf5ecbbc2acdb8067d845784c2d4c37.html | 129 + .../dir_4169038f84fc0e1ed68b4a7c11130da4.html | 119 + .../dir_44cbf1ed18699f3d3b4fc628a26fcd8e.html | 112 + .../dir_4ff6d94cb2a0a21decf9fe1d17e36a84.html | 128 + .../dir_50f5c6d2b5c0f0cf0dce53a8e04f8433.html | 143 + .../dir_52470340ee5541bea78123d62b747bfc.html | 181 + .../dir_52c3c3fe3bff0ba6815d4f34971ed7d3.html | 124 + .../dir_54e1f17c1ac5ea0adfc355c0b89ee8b2.html | 155 + .../dir_5a90b97b153f6d877d3f3fe75b024a65.html | 109 + .../dir_68c25edf9c6d341fdd24c7ac7d0f552b.html | 113 + .../dir_6b822de55cde49ee6f3a9b01e44fb566.html | 247 + .../dir_7edb90b8895d3ae5eaffb58e5bac252e.html | 116 + .../dir_7f504516231d3fe329ee42a0c6d09a23.html | 119 + .../dir_8bbd805b34b7b8cc78ee869a600898c2.html | 111 + .../dir_8c3552022fc3ada5c17e804a5e09b39f.html | 107 + .../dir_918f1495a74b4bbbcceda6da05869dad.html | 123 + .../dir_99762ae463b7309a47de4b14a14d0e0f.html | 319 + .../dir_99fdd75913c28d151522a8b8afede414.html | 138 + .../dir_9c4b002ce8795bbd5dbe2cf3421fe13a.html | 107 + .../dir_adda0d2b1be4bc1eb47d3b2cf56797af.html | 147 + .../dir_ae30097f91ecf0dffad078cd8b901d6c.html | 111 + .../dir_b1c6471129ce395961fd25e68f861508.html | 150 + .../dir_b5faa64c567d6f189426dea685de5e0f.html | 107 + .../dir_bfdd916fd7a3310c7c8c32c9dbb4c5dd.html | 151 + .../dir_d06f81619dd9bcc28d70dd2c97937727.html | 237 + .../dir_e5fd7b97e7c167e7281b34e17696a6e4.html | 111 + .../dir_e65b8371bb074abd719c6e80ee5d6469.html | 121 + .../dir_e7242831226ee912bf5f374de664968d.html | 136 + .../dir_e9c236c76d69ff67463df99eaf9c4820.html | 119 + .../dir_f2ec37f115c79ba754de20300359aed5.html | 148 + .../dir_f3e98ab768ca388ef4baecb6d973adcf.html | 111 + .../dir_f77850045c6d72da1ced64bfc8354271.html | 251 + .../dir_fb5291ba38e4a736e77d8ba78c86369a.html | 126 + doc/api/html/dirichlet_8hpp.html | 147 + doc/api/html/dirichlet_8hpp_source.html | 189 + doc/api/html/dist_8hpp.html | 130 + doc/api/html/dist_8hpp_source.html | 131 + doc/api/html/distance_8hpp.html | 134 + doc/api/html/distance_8hpp_source.html | 128 + doc/api/html/distributions_8hpp.html | 111 + doc/api/html/distributions_8hpp_source.html | 114 + doc/api/html/dom__err_8hpp.html | 131 + doc/api/html/dom__err_8hpp_source.html | 153 + doc/api/html/dom__err__vec_8hpp.html | 132 + doc/api/html/dom__err__vec_8hpp_source.html | 147 + doc/api/html/dot_8hpp.html | 129 + doc/api/html/dot_8hpp_source.html | 129 + doc/api/html/double__exponential_8hpp.html | 160 + .../html/double__exponential_8hpp_source.html | 522 + doc/api/html/doxygen.css | 1172 + doc/api/html/doxygen.png | Bin 0 -> 3779 bytes doc/api/html/dump_8hpp.html | 145 + doc/api/html/dump_8hpp_source.html | 858 + doc/api/html/dv__vari_8hpp.html | 128 + doc/api/html/dv__vari_8hpp_source.html | 130 + doc/api/html/dvd__vari_8hpp.html | 128 + doc/api/html/dvd__vari_8hpp_source.html | 132 + doc/api/html/dvv__vari_8hpp.html | 128 + doc/api/html/dvv__vari_8hpp_source.html | 132 + doc/api/html/dynsections.js | 78 + doc/api/html/eigenvalues__sym_8hpp.html | 133 + .../html/eigenvalues__sym_8hpp_source.html | 130 + doc/api/html/eigenvectors__sym_8hpp.html | 132 + .../html/eigenvectors__sym_8hpp_source.html | 130 + doc/api/html/elt__divide_8hpp.html | 134 + doc/api/html/elt__divide_8hpp_source.html | 132 + doc/api/html/elt__multiply_8hpp.html | 134 + doc/api/html/elt__multiply_8hpp_source.html | 132 + doc/api/html/error__codes_8hpp.html | 127 + doc/api/html/error__codes_8hpp_source.html | 128 + doc/api/html/error__handling_8dox.html | 103 + doc/api/html/exp__mod__normal_8hpp.html | 160 + .../html/exp__mod__normal_8hpp_source.html | 635 + doc/api/html/expl__leapfrog_8hpp.html | 129 + doc/api/html/expl__leapfrog_8hpp_source.html | 145 + doc/api/html/exponential_8hpp.html | 158 + doc/api/html/exponential_8hpp_source.html | 378 + doc/api/html/expression__grammar_8hpp.html | 138 + .../html/expression__grammar_8hpp_source.html | 180 + .../html/expression__grammar__def_8hpp.html | 196 + .../expression__grammar__def_8hpp_source.html | 364 + .../html/expression__grammar__inst_8cpp.html | 123 + ...expression__grammar__inst_8cpp_source.html | 115 + doc/api/html/files.html | 870 + doc/api/html/fill_8hpp.html | 139 + doc/api/html/fill_8hpp_source.html | 138 + doc/api/html/fixed__param__sampler_8hpp.html | 131 + .../fixed__param__sampler_8hpp_source.html | 140 + doc/api/html/form_0.png | Bin 0 -> 601 bytes doc/api/html/form_1.png | Bin 0 -> 416 bytes doc/api/html/form_10.png | Bin 0 -> 585 bytes doc/api/html/form_100.png | Bin 0 -> 842 bytes doc/api/html/form_101.png | Bin 0 -> 452 bytes doc/api/html/form_102.png | Bin 0 -> 641 bytes doc/api/html/form_103.png | Bin 0 -> 211 bytes doc/api/html/form_104.png | Bin 0 -> 294 bytes doc/api/html/form_105.png | Bin 0 -> 355 bytes doc/api/html/form_106.png | Bin 0 -> 336 bytes doc/api/html/form_107.png | Bin 0 -> 353 bytes doc/api/html/form_108.png | Bin 0 -> 436 bytes doc/api/html/form_109.png | Bin 0 -> 462 bytes doc/api/html/form_11.png | Bin 0 -> 582 bytes doc/api/html/form_110.png | Bin 0 -> 798 bytes doc/api/html/form_111.png | Bin 0 -> 918 bytes doc/api/html/form_112.png | Bin 0 -> 355 bytes doc/api/html/form_113.png | Bin 0 -> 441 bytes doc/api/html/form_114.png | Bin 0 -> 694 bytes doc/api/html/form_115.png | Bin 0 -> 1513 bytes doc/api/html/form_116.png | Bin 0 -> 792 bytes doc/api/html/form_117.png | Bin 0 -> 1002 bytes doc/api/html/form_118.png | Bin 0 -> 309 bytes doc/api/html/form_119.png | Bin 0 -> 310 bytes doc/api/html/form_12.png | Bin 0 -> 571 bytes doc/api/html/form_120.png | Bin 0 -> 797 bytes doc/api/html/form_121.png | Bin 0 -> 1337 bytes doc/api/html/form_122.png | Bin 0 -> 363 bytes doc/api/html/form_123.png | Bin 0 -> 226 bytes doc/api/html/form_124.png | Bin 0 -> 215 bytes doc/api/html/form_125.png | Bin 0 -> 1233 bytes doc/api/html/form_126.png | Bin 0 -> 287 bytes doc/api/html/form_127.png | Bin 0 -> 1579 bytes doc/api/html/form_128.png | Bin 0 -> 581 bytes doc/api/html/form_129.png | Bin 0 -> 1792 bytes doc/api/html/form_13.png | Bin 0 -> 578 bytes doc/api/html/form_130.png | Bin 0 -> 414 bytes doc/api/html/form_131.png | Bin 0 -> 884 bytes doc/api/html/form_132.png | Bin 0 -> 420 bytes doc/api/html/form_133.png | Bin 0 -> 1042 bytes doc/api/html/form_134.png | Bin 0 -> 605 bytes doc/api/html/form_135.png | Bin 0 -> 224 bytes doc/api/html/form_136.png | Bin 0 -> 234 bytes doc/api/html/form_137.png | Bin 0 -> 426 bytes doc/api/html/form_138.png | Bin 0 -> 5512 bytes doc/api/html/form_139.png | Bin 0 -> 323 bytes doc/api/html/form_14.png | Bin 0 -> 627 bytes doc/api/html/form_140.png | Bin 0 -> 1752 bytes doc/api/html/form_141.png | Bin 0 -> 2047 bytes doc/api/html/form_142.png | Bin 0 -> 8351 bytes doc/api/html/form_143.png | Bin 0 -> 8155 bytes doc/api/html/form_144.png | Bin 0 -> 751 bytes doc/api/html/form_145.png | Bin 0 -> 4210 bytes doc/api/html/form_146.png | Bin 0 -> 1940 bytes doc/api/html/form_147.png | Bin 0 -> 2456 bytes doc/api/html/form_148.png | Bin 0 -> 4112 bytes doc/api/html/form_149.png | Bin 0 -> 4327 bytes doc/api/html/form_15.png | Bin 0 -> 742 bytes doc/api/html/form_150.png | Bin 0 -> 989 bytes doc/api/html/form_151.png | Bin 0 -> 5210 bytes doc/api/html/form_152.png | Bin 0 -> 6080 bytes doc/api/html/form_153.png | Bin 0 -> 3957 bytes doc/api/html/form_154.png | Bin 0 -> 604 bytes doc/api/html/form_155.png | Bin 0 -> 1102 bytes doc/api/html/form_156.png | Bin 0 -> 227 bytes doc/api/html/form_157.png | Bin 0 -> 661 bytes doc/api/html/form_158.png | Bin 0 -> 694 bytes doc/api/html/form_159.png | Bin 0 -> 660 bytes doc/api/html/form_16.png | Bin 0 -> 642 bytes doc/api/html/form_160.png | Bin 0 -> 236 bytes doc/api/html/form_161.png | Bin 0 -> 1398 bytes doc/api/html/form_162.png | Bin 0 -> 777 bytes doc/api/html/form_163.png | Bin 0 -> 948 bytes doc/api/html/form_164.png | Bin 0 -> 1151 bytes doc/api/html/form_165.png | Bin 0 -> 1260 bytes doc/api/html/form_166.png | Bin 0 -> 1482 bytes doc/api/html/form_167.png | Bin 0 -> 873 bytes doc/api/html/form_168.png | Bin 0 -> 986 bytes doc/api/html/form_169.png | Bin 0 -> 781 bytes doc/api/html/form_17.png | Bin 0 -> 632 bytes doc/api/html/form_170.png | Bin 0 -> 1078 bytes doc/api/html/form_171.png | Bin 0 -> 1108 bytes doc/api/html/form_172.png | Bin 0 -> 860 bytes doc/api/html/form_173.png | Bin 0 -> 1066 bytes doc/api/html/form_174.png | Bin 0 -> 1042 bytes doc/api/html/form_175.png | Bin 0 -> 1016 bytes doc/api/html/form_176.png | Bin 0 -> 568 bytes doc/api/html/form_177.png | Bin 0 -> 324 bytes doc/api/html/form_178.png | Bin 0 -> 388 bytes doc/api/html/form_18.png | Bin 0 -> 534 bytes doc/api/html/form_19.png | Bin 0 -> 734 bytes doc/api/html/form_2.png | Bin 0 -> 589 bytes doc/api/html/form_20.png | Bin 0 -> 576 bytes doc/api/html/form_21.png | Bin 0 -> 794 bytes doc/api/html/form_22.png | Bin 0 -> 874 bytes doc/api/html/form_23.png | Bin 0 -> 772 bytes doc/api/html/form_24.png | Bin 0 -> 863 bytes doc/api/html/form_25.png | Bin 0 -> 603 bytes doc/api/html/form_26.png | Bin 0 -> 590 bytes doc/api/html/form_27.png | Bin 0 -> 628 bytes doc/api/html/form_28.png | Bin 0 -> 716 bytes doc/api/html/form_29.png | Bin 0 -> 717 bytes doc/api/html/form_3.png | Bin 0 -> 587 bytes doc/api/html/form_30.png | Bin 0 -> 687 bytes doc/api/html/form_31.png | Bin 0 -> 795 bytes doc/api/html/form_32.png | Bin 0 -> 775 bytes doc/api/html/form_33.png | Bin 0 -> 743 bytes doc/api/html/form_34.png | Bin 0 -> 778 bytes doc/api/html/form_35.png | Bin 0 -> 655 bytes doc/api/html/form_36.png | Bin 0 -> 654 bytes doc/api/html/form_37.png | Bin 0 -> 698 bytes doc/api/html/form_38.png | Bin 0 -> 622 bytes doc/api/html/form_39.png | Bin 0 -> 419 bytes doc/api/html/form_4.png | Bin 0 -> 539 bytes doc/api/html/form_40.png | Bin 0 -> 306 bytes doc/api/html/form_41.png | Bin 0 -> 302 bytes doc/api/html/form_42.png | Bin 0 -> 279 bytes doc/api/html/form_43.png | Bin 0 -> 454 bytes doc/api/html/form_44.png | Bin 0 -> 452 bytes doc/api/html/form_45.png | Bin 0 -> 299 bytes doc/api/html/form_46.png | Bin 0 -> 726 bytes doc/api/html/form_47.png | Bin 0 -> 828 bytes doc/api/html/form_48.png | Bin 0 -> 723 bytes doc/api/html/form_49.png | Bin 0 -> 809 bytes doc/api/html/form_5.png | Bin 0 -> 574 bytes doc/api/html/form_50.png | Bin 0 -> 737 bytes doc/api/html/form_51.png | Bin 0 -> 752 bytes doc/api/html/form_52.png | Bin 0 -> 732 bytes doc/api/html/form_53.png | Bin 0 -> 243 bytes doc/api/html/form_54.png | Bin 0 -> 855 bytes doc/api/html/form_55.png | Bin 0 -> 891 bytes doc/api/html/form_56.png | Bin 0 -> 623 bytes doc/api/html/form_57.png | Bin 0 -> 941 bytes doc/api/html/form_58.png | Bin 0 -> 997 bytes doc/api/html/form_59.png | Bin 0 -> 691 bytes doc/api/html/form_6.png | Bin 0 -> 574 bytes doc/api/html/form_60.png | Bin 0 -> 847 bytes doc/api/html/form_61.png | Bin 0 -> 777 bytes doc/api/html/form_62.png | Bin 0 -> 317 bytes doc/api/html/form_63.png | Bin 0 -> 769 bytes doc/api/html/form_64.png | Bin 0 -> 335 bytes doc/api/html/form_65.png | Bin 0 -> 764 bytes doc/api/html/form_66.png | Bin 0 -> 817 bytes doc/api/html/form_67.png | Bin 0 -> 758 bytes doc/api/html/form_68.png | Bin 0 -> 310 bytes doc/api/html/form_69.png | Bin 0 -> 804 bytes doc/api/html/form_7.png | Bin 0 -> 582 bytes doc/api/html/form_70.png | Bin 0 -> 322 bytes doc/api/html/form_71.png | Bin 0 -> 752 bytes doc/api/html/form_72.png | Bin 0 -> 288 bytes doc/api/html/form_73.png | Bin 0 -> 733 bytes doc/api/html/form_74.png | Bin 0 -> 363 bytes doc/api/html/form_75.png | Bin 0 -> 669 bytes doc/api/html/form_76.png | Bin 0 -> 671 bytes doc/api/html/form_77.png | Bin 0 -> 635 bytes doc/api/html/form_78.png | Bin 0 -> 666 bytes doc/api/html/form_79.png | Bin 0 -> 675 bytes doc/api/html/form_8.png | Bin 0 -> 547 bytes doc/api/html/form_80.png | Bin 0 -> 626 bytes doc/api/html/form_81.png | Bin 0 -> 626 bytes doc/api/html/form_82.png | Bin 0 -> 626 bytes doc/api/html/form_83.png | Bin 0 -> 656 bytes doc/api/html/form_84.png | Bin 0 -> 632 bytes doc/api/html/form_85.png | Bin 0 -> 650 bytes doc/api/html/form_86.png | Bin 0 -> 622 bytes doc/api/html/form_87.png | Bin 0 -> 867 bytes doc/api/html/form_88.png | Bin 0 -> 925 bytes doc/api/html/form_89.png | Bin 0 -> 801 bytes doc/api/html/form_9.png | Bin 0 -> 578 bytes doc/api/html/form_90.png | Bin 0 -> 887 bytes doc/api/html/form_91.png | Bin 0 -> 1070 bytes doc/api/html/form_92.png | Bin 0 -> 1155 bytes doc/api/html/form_93.png | Bin 0 -> 757 bytes doc/api/html/form_94.png | Bin 0 -> 708 bytes doc/api/html/form_95.png | Bin 0 -> 740 bytes doc/api/html/form_96.png | Bin 0 -> 677 bytes doc/api/html/form_97.png | Bin 0 -> 1419 bytes doc/api/html/form_98.png | Bin 0 -> 655 bytes doc/api/html/form_99.png | Bin 0 -> 529 bytes doc/api/html/formula.repository | 179 + doc/api/html/ftv2blank.png | Bin 0 -> 86 bytes doc/api/html/ftv2cl.png | Bin 0 -> 453 bytes doc/api/html/ftv2doc.png | Bin 0 -> 746 bytes doc/api/html/ftv2folderclosed.png | Bin 0 -> 616 bytes doc/api/html/ftv2folderopen.png | Bin 0 -> 597 bytes doc/api/html/ftv2lastnode.png | Bin 0 -> 86 bytes doc/api/html/ftv2link.png | Bin 0 -> 746 bytes doc/api/html/ftv2mlastnode.png | Bin 0 -> 246 bytes doc/api/html/ftv2mnode.png | Bin 0 -> 246 bytes doc/api/html/ftv2mo.png | Bin 0 -> 403 bytes doc/api/html/ftv2node.png | Bin 0 -> 86 bytes doc/api/html/ftv2ns.png | Bin 0 -> 388 bytes doc/api/html/ftv2plastnode.png | Bin 0 -> 229 bytes doc/api/html/ftv2pnode.png | Bin 0 -> 229 bytes doc/api/html/ftv2splitbar.png | Bin 0 -> 314 bytes doc/api/html/ftv2vertline.png | Bin 0 -> 86 bytes doc/api/html/functions.html | 399 + doc/api/html/functions_0x61.html | 477 + doc/api/html/functions_0x62.html | 227 + doc/api/html/functions_0x63.html | 340 + doc/api/html/functions_0x64.html | 353 + doc/api/html/functions_0x65.html | 233 + doc/api/html/functions_0x66.html | 188 + doc/api/html/functions_0x67.html | 347 + doc/api/html/functions_0x68.html | 204 + doc/api/html/functions_0x69.html | 362 + doc/api/html/functions_0x6b.html | 156 + doc/api/html/functions_0x6c.html | 211 + doc/api/html/functions_0x6d.html | 279 + doc/api/html/functions_0x6e.html | 257 + doc/api/html/functions_0x6f.html | 505 + doc/api/html/functions_0x70.html | 351 + doc/api/html/functions_0x71.html | 158 + doc/api/html/functions_0x72.html | 305 + doc/api/html/functions_0x73.html | 488 + doc/api/html/functions_0x74.html | 281 + doc/api/html/functions_0x75.html | 191 + doc/api/html/functions_0x76.html | 367 + doc/api/html/functions_0x77.html | 227 + doc/api/html/functions_0x78.html | 148 + doc/api/html/functions_0x7a.html | 148 + doc/api/html/functions_0x7e.html | 232 + doc/api/html/functions_2max_8hpp.html | 127 + doc/api/html/functions_2max_8hpp_source.html | 121 + doc/api/html/functions_2min_8hpp.html | 127 + doc/api/html/functions_2min_8hpp_source.html | 121 + doc/api/html/functions_eval.html | 249 + doc/api/html/functions_func.html | 156 + doc/api/html/functions_func_0x61.html | 428 + doc/api/html/functions_func_0x62.html | 202 + doc/api/html/functions_func_0x63.html | 292 + doc/api/html/functions_func_0x64.html | 264 + doc/api/html/functions_func_0x65.html | 187 + doc/api/html/functions_func_0x66.html | 175 + doc/api/html/functions_func_0x67.html | 334 + doc/api/html/functions_func_0x68.html | 165 + doc/api/html/functions_func_0x69.html | 277 + doc/api/html/functions_func_0x6b.html | 147 + doc/api/html/functions_func_0x6c.html | 182 + doc/api/html/functions_func_0x6d.html | 209 + doc/api/html/functions_func_0x6e.html | 210 + doc/api/html/functions_func_0x6f.html | 466 + doc/api/html/functions_func_0x70.html | 311 + doc/api/html/functions_func_0x71.html | 154 + doc/api/html/functions_func_0x72.html | 233 + doc/api/html/functions_func_0x73.html | 402 + doc/api/html/functions_func_0x74.html | 183 + doc/api/html/functions_func_0x75.html | 184 + doc/api/html/functions_func_0x76.html | 267 + doc/api/html/functions_func_0x77.html | 219 + doc/api/html/functions_func_0x7a.html | 147 + doc/api/html/functions_func_0x7e.html | 231 + doc/api/html/functions_rela.html | 120 + doc/api/html/functions_type.html | 317 + doc/api/html/functions_vars.html | 385 + doc/api/html/functions_vars_0x61.html | 193 + doc/api/html/functions_vars_0x62.html | 167 + doc/api/html/functions_vars_0x63.html | 187 + doc/api/html/functions_vars_0x64.html | 230 + doc/api/html/functions_vars_0x65.html | 185 + doc/api/html/functions_vars_0x66.html | 155 + doc/api/html/functions_vars_0x67.html | 155 + doc/api/html/functions_vars_0x68.html | 175 + doc/api/html/functions_vars_0x69.html | 217 + doc/api/html/functions_vars_0x6b.html | 151 + doc/api/html/functions_vars_0x6c.html | 164 + doc/api/html/functions_vars_0x6d.html | 196 + doc/api/html/functions_vars_0x6e.html | 183 + doc/api/html/functions_vars_0x6f.html | 160 + doc/api/html/functions_vars_0x70.html | 179 + doc/api/html/functions_vars_0x71.html | 146 + doc/api/html/functions_vars_0x72.html | 181 + doc/api/html/functions_vars_0x73.html | 214 + doc/api/html/functions_vars_0x74.html | 191 + doc/api/html/functions_vars_0x75.html | 146 + doc/api/html/functions_vars_0x76.html | 207 + doc/api/html/functions_vars_0x77.html | 152 + doc/api/html/functions_vars_0x78.html | 146 + doc/api/html/fvar_8hpp.html | 127 + doc/api/html/fvar_8hpp_source.html | 235 + doc/api/html/fwd_2functions_2acos_8hpp.html | 131 + .../fwd_2functions_2acos_8hpp_source.html | 131 + doc/api/html/fwd_2functions_2acosh_8hpp.html | 133 + .../fwd_2functions_2acosh_8hpp_source.html | 137 + doc/api/html/fwd_2functions_2asin_8hpp.html | 131 + .../fwd_2functions_2asin_8hpp_source.html | 130 + doc/api/html/fwd_2functions_2asinh_8hpp.html | 132 + .../fwd_2functions_2asinh_8hpp_source.html | 131 + doc/api/html/fwd_2functions_2atan2_8hpp.html | 137 + .../fwd_2functions_2atan2_8hpp_source.html | 151 + doc/api/html/fwd_2functions_2atan_8hpp.html | 131 + .../fwd_2functions_2atan_8hpp_source.html | 129 + doc/api/html/fwd_2functions_2atanh_8hpp.html | 132 + .../fwd_2functions_2atanh_8hpp_source.html | 130 + doc/api/html/fwd_2functions_2cbrt_8hpp.html | 132 + .../fwd_2functions_2cbrt_8hpp_source.html | 131 + doc/api/html/fwd_2functions_2ceil_8hpp.html | 130 + .../fwd_2functions_2ceil_8hpp_source.html | 127 + doc/api/html/fwd_2functions_2cos_8hpp.html | 130 + .../html/fwd_2functions_2cos_8hpp_source.html | 128 + doc/api/html/fwd_2functions_2cosh_8hpp.html | 130 + .../fwd_2functions_2cosh_8hpp_source.html | 128 + doc/api/html/fwd_2functions_2erf_8hpp.html | 133 + .../html/fwd_2functions_2erf_8hpp_source.html | 134 + doc/api/html/fwd_2functions_2erfc_8hpp.html | 133 + .../fwd_2functions_2erfc_8hpp_source.html | 134 + doc/api/html/fwd_2functions_2expm1_8hpp.html | 131 + .../fwd_2functions_2expm1_8hpp_source.html | 129 + doc/api/html/fwd_2functions_2fabs_8hpp.html | 131 + .../fwd_2functions_2fabs_8hpp_source.html | 135 + doc/api/html/fwd_2functions_2floor_8hpp.html | 130 + .../fwd_2functions_2floor_8hpp_source.html | 127 + doc/api/html/fwd_2functions_2fmax_8hpp.html | 137 + .../fwd_2functions_2fmax_8hpp_source.html | 162 + doc/api/html/fwd_2functions_2fmin_8hpp.html | 137 + .../fwd_2functions_2fmin_8hpp_source.html | 162 + doc/api/html/fwd_2functions_2fmod_8hpp.html | 136 + .../fwd_2functions_2fmod_8hpp_source.html | 146 + doc/api/html/fwd_2functions_2hypot_8hpp.html | 138 + .../fwd_2functions_2hypot_8hpp_source.html | 154 + doc/api/html/fwd_2functions_2log10_8hpp.html | 131 + .../fwd_2functions_2log10_8hpp_source.html | 133 + doc/api/html/fwd_2functions_2pow_8hpp.html | 139 + .../html/fwd_2functions_2pow_8hpp_source.html | 172 + doc/api/html/fwd_2functions_2round_8hpp.html | 131 + .../fwd_2functions_2round_8hpp_source.html | 129 + doc/api/html/fwd_2functions_2sin_8hpp.html | 130 + .../html/fwd_2functions_2sin_8hpp_source.html | 129 + doc/api/html/fwd_2functions_2sinh_8hpp.html | 130 + .../fwd_2functions_2sinh_8hpp_source.html | 129 + doc/api/html/fwd_2functions_2sqrt_8hpp.html | 131 + .../fwd_2functions_2sqrt_8hpp_source.html | 129 + doc/api/html/fwd_2functions_2tan_8hpp.html | 130 + .../html/fwd_2functions_2tan_8hpp_source.html | 128 + doc/api/html/fwd_2functions_2tanh_8hpp.html | 130 + .../fwd_2functions_2tanh_8hpp_source.html | 128 + doc/api/html/fwd_2functions_2tgamma_8hpp.html | 131 + .../fwd_2functions_2tgamma_8hpp_source.html | 130 + doc/api/html/fwd_2functions_2trunc_8hpp.html | 131 + .../fwd_2functions_2trunc_8hpp_source.html | 129 + doc/api/html/fwd_2numeric__limits_8hpp.html | 126 + .../fwd_2numeric__limits_8hpp_source.html | 164 + ...d_2operators_2operator__addition_8hpp.html | 136 + ...ators_2operator__addition_8hpp_source.html | 140 + ...d_2operators_2operator__division_8hpp.html | 136 + ...ators_2operator__division_8hpp_source.html | 144 + .../fwd_2operators_2operator__equal_8hpp.html | 136 + ...perators_2operator__equal_8hpp_source.html | 140 + ...erators_2operator__greater__than_8hpp.html | 136 + ..._2operator__greater__than_8hpp_source.html | 140 + ...erator__greater__than__or__equal_8hpp.html | 136 + ..._greater__than__or__equal_8hpp_source.html | 140 + ...2operators_2operator__less__than_8hpp.html | 136 + ...ors_2operator__less__than_8hpp_source.html | 137 + ...2operator__less__than__or__equal_8hpp.html | 136 + ...or__less__than__or__equal_8hpp_source.html | 140 + ...rators_2operator__multiplication_8hpp.html | 136 + ...2operator__multiplication_8hpp_source.html | 141 + ...2operators_2operator__not__equal_8hpp.html | 136 + ...ors_2operator__not__equal_8hpp_source.html | 140 + ...operators_2operator__subtraction_8hpp.html | 136 + ...rs_2operator__subtraction_8hpp_source.html | 140 + doc/api/html/fwd_2operators_8hpp.html | 120 + doc/api/html/fwd_2operators_8hpp_source.html | 123 + doc/api/html/fwd_8hpp.html | 113 + doc/api/html/fwd_8hpp_source.html | 117 + doc/api/html/gamma_8hpp.html | 161 + doc/api/html/gamma_8hpp_source.html | 637 + doc/api/html/gaussian__dlm__obs_8hpp.html | 173 + .../html/gaussian__dlm__obs_8hpp_source.html | 547 + doc/api/html/generator_8hpp.html | 327 + doc/api/html/generator_8hpp_source.html | 4105 +++ doc/api/html/get__base1_8hpp.html | 177 + doc/api/html/get__base1_8hpp_source.html | 274 + doc/api/html/get__base1__lhs_8hpp.html | 177 + doc/api/html/get__base1__lhs_8hpp_source.html | 276 + doc/api/html/globals.html | 439 + doc/api/html/globals_defs.html | 127 + doc/api/html/globals_func.html | 206 + doc/api/html/globals_vars.html | 355 + doc/api/html/gm_8hpp.html | 111 + doc/api/html/gm_8hpp_source.html | 114 + doc/api/html/grad_8hpp.html | 130 + doc/api/html/grad_8hpp_source.html | 133 + doc/api/html/gumbel_8hpp.html | 157 + doc/api/html/gumbel_8hpp_source.html | 440 + doc/api/html/head_8hpp.html | 144 + doc/api/html/head_8hpp_source.html | 156 + doc/api/html/hessian_8hpp.html | 132 + doc/api/html/hessian_8hpp_source.html | 151 + doc/api/html/hierarchy.html | 539 + doc/api/html/hypergeometric_8hpp.html | 143 + doc/api/html/hypergeometric_8hpp_source.html | 240 + doc/api/html/index.html | 102 + doc/api/html/initialize_8hpp.html | 143 + doc/api/html/initialize_8hpp_source.html | 145 + doc/api/html/initialize__variable_8hpp.html | 139 + .../initialize__variable_8hpp_source.html | 137 + doc/api/html/int__step_8hpp.html | 129 + doc/api/html/int__step_8hpp_source.html | 120 + doc/api/html/internal_8hpp.html | 123 + doc/api/html/internal_8hpp_source.html | 126 + doc/api/html/internal__math_8hpp.html | 141 + doc/api/html/internal__math_8hpp_source.html | 314 + doc/api/html/inv__chi__square_8hpp.html | 155 + .../html/inv__chi__square_8hpp_source.html | 563 + doc/api/html/inv__gamma_8hpp.html | 161 + doc/api/html/inv__gamma_8hpp_source.html | 653 + doc/api/html/inv__wishart_8hpp.html | 149 + doc/api/html/inv__wishart_8hpp_source.html | 237 + doc/api/html/inverse__softmax_8hpp.html | 132 + .../html/inverse__softmax_8hpp_source.html | 130 + doc/api/html/inverse__spd_8hpp.html | 133 + doc/api/html/inverse__spd_8hpp_source.html | 134 + doc/api/html/io_2util_8hpp.html | 130 + doc/api/html/io_2util_8hpp_source.html | 140 + doc/api/html/io_8hpp.html | 115 + doc/api/html/io_8hpp_source.html | 118 + doc/api/html/iterator__typedefs_8hpp.html | 139 + .../html/iterator__typedefs_8hpp_source.html | 122 + doc/api/html/jacobian_8hpp.html | 130 + doc/api/html/jacobian_8hpp_source.html | 134 + doc/api/html/jquery.js | 8 + doc/api/html/list__argument_8hpp.html | 130 + doc/api/html/list__argument_8hpp_source.html | 300 + doc/api/html/lkj__corr_8hpp.html | 156 + doc/api/html/lkj__corr_8hpp_source.html | 291 + doc/api/html/lkj__cov_8hpp.html | 153 + doc/api/html/lkj__cov_8hpp_source.html | 252 + doc/api/html/logical__and_8hpp.html | 129 + doc/api/html/logical__and_8hpp_source.html | 123 + doc/api/html/logical__eq_8hpp.html | 129 + doc/api/html/logical__eq_8hpp_source.html | 123 + doc/api/html/logical__gt_8hpp.html | 129 + doc/api/html/logical__gt_8hpp_source.html | 123 + doc/api/html/logical__gte_8hpp.html | 129 + doc/api/html/logical__gte_8hpp_source.html | 123 + doc/api/html/logical__lt_8hpp.html | 129 + doc/api/html/logical__lt_8hpp_source.html | 124 + doc/api/html/logical__lte_8hpp.html | 129 + doc/api/html/logical__lte_8hpp_source.html | 123 + doc/api/html/logical__negation_8hpp.html | 129 + .../html/logical__negation_8hpp_source.html | 123 + doc/api/html/logical__neq_8hpp.html | 129 + doc/api/html/logical__neq_8hpp_source.html | 122 + doc/api/html/logical__or_8hpp.html | 129 + doc/api/html/logical__or_8hpp_source.html | 123 + doc/api/html/logistic_8hpp.html | 157 + doc/api/html/logistic_8hpp_source.html | 546 + doc/api/html/lognormal_8hpp.html | 158 + doc/api/html/lognormal_8hpp_source.html | 519 + doc/api/html/mainpage_8dox.html | 103 + doc/api/html/math_2constants_8hpp.html | 192 + doc/api/html/math_2constants_8hpp_source.html | 186 + ...ng_2matrix_2check__pos__definite_8hpp.html | 136 + ...rix_2check__pos__definite_8hpp_source.html | 159 + doc/api/html/math_2error__handling_8hpp.html | 130 + .../math_2error__handling_8hpp_source.html | 136 + doc/api/html/math_2functions_2_phi_8hpp.html | 133 + .../math_2functions_2_phi_8hpp_source.html | 136 + .../math_2functions_2_phi__approx_8hpp.html | 132 + ..._2functions_2_phi__approx_8hpp_source.html | 126 + doc/api/html/math_2functions_2abs_8hpp.html | 129 + .../math_2functions_2abs_8hpp_source.html | 124 + .../html/math_2functions_2as__bool_8hpp.html | 133 + ...math_2functions_2as__bool_8hpp_source.html | 128 + ..._2functions_2bessel__first__kind_8hpp.html | 129 + ...ions_2bessel__first__kind_8hpp_source.html | 125 + ...2functions_2bessel__second__kind_8hpp.html | 129 + ...ons_2bessel__second__kind_8hpp_source.html | 125 + ...th_2functions_2binary__log__loss_8hpp.html | 131 + ...ctions_2binary__log__loss_8hpp_source.html | 126 + ...ions_2binomial__coefficient__log_8hpp.html | 132 + ...inomial__coefficient__log_8hpp_source.html | 136 + .../html/math_2functions_2digamma_8hpp.html | 128 + .../math_2functions_2digamma_8hpp_source.html | 124 + .../html/math_2functions_2dot__self_8hpp.html | 129 + ...ath_2functions_2dot__self_8hpp_source.html | 128 + doc/api/html/math_2functions_2exp2_8hpp.html | 131 + .../math_2functions_2exp2_8hpp_source.html | 126 + ...h_2functions_2falling__factorial_8hpp.html | 130 + ...tions_2falling__factorial_8hpp_source.html | 125 + doc/api/html/math_2functions_2fdim_8hpp.html | 131 + .../math_2functions_2fdim_8hpp_source.html | 123 + doc/api/html/math_2functions_2fma_8hpp.html | 131 + .../math_2functions_2fma_8hpp_source.html | 124 + .../html/math_2functions_2gamma__p_8hpp.html | 128 + ...math_2functions_2gamma__p_8hpp_source.html | 125 + .../html/math_2functions_2gamma__q_8hpp.html | 128 + ...math_2functions_2gamma__q_8hpp_source.html | 125 + doc/api/html/math_2functions_2ibeta_8hpp.html | 129 + .../math_2functions_2ibeta_8hpp_source.html | 125 + .../html/math_2functions_2if__else_8hpp.html | 131 + ...math_2functions_2if__else_8hpp_source.html | 125 + doc/api/html/math_2functions_2inv_8hpp.html | 130 + .../math_2functions_2inv_8hpp_source.html | 126 + .../math_2functions_2inv__cloglog_8hpp.html | 131 + ..._2functions_2inv__cloglog_8hpp_source.html | 126 + .../math_2functions_2inv__logit_8hpp.html | 131 + ...th_2functions_2inv__logit_8hpp_source.html | 127 + .../html/math_2functions_2inv__sqrt_8hpp.html | 130 + ...ath_2functions_2inv__sqrt_8hpp_source.html | 128 + .../math_2functions_2inv__square_8hpp.html | 130 + ...h_2functions_2inv__square_8hpp_source.html | 125 + ...th_2functions_2is__uninitialized_8hpp.html | 129 + ...ctions_2is__uninitialized_8hpp_source.html | 122 + doc/api/html/math_2functions_2lbeta_8hpp.html | 132 + .../math_2functions_2lbeta_8hpp_source.html | 130 + .../html/math_2functions_2lgamma_8hpp.html | 128 + .../math_2functions_2lgamma_8hpp_source.html | 125 + .../html/math_2functions_2lmgamma_8hpp.html | 133 + .../math_2functions_2lmgamma_8hpp_source.html | 133 + doc/api/html/math_2functions_2log1m_8hpp.html | 132 + .../math_2functions_2log1m_8hpp_source.html | 126 + .../math_2functions_2log1m__exp_8hpp.html | 135 + ...th_2functions_2log1m__exp_8hpp_source.html | 134 + ...th_2functions_2log1m__inv__logit_8hpp.html | 131 + ...ctions_2log1m__inv__logit_8hpp_source.html | 128 + doc/api/html/math_2functions_2log1p_8hpp.html | 132 + .../math_2functions_2log1p_8hpp_source.html | 135 + .../math_2functions_2log1p__exp_8hpp.html | 132 + ...th_2functions_2log1p__exp_8hpp_source.html | 130 + doc/api/html/math_2functions_2log2_8hpp.html | 136 + .../math_2functions_2log2_8hpp_source.html | 133 + .../math_2functions_2log__diff__exp_8hpp.html | 134 + ...functions_2log__diff__exp_8hpp_source.html | 130 + ...nctions_2log__falling__factorial_8hpp.html | 130 + ..._2log__falling__factorial_8hpp_source.html | 126 + ...math_2functions_2log__inv__logit_8hpp.html | 131 + ...unctions_2log__inv__logit_8hpp_source.html | 128 + ...unctions_2log__rising__factorial_8hpp.html | 130 + ...s_2log__rising__factorial_8hpp_source.html | 126 + .../math_2functions_2log__sum__exp_8hpp.html | 138 + ...2functions_2log__sum__exp_8hpp_source.html | 150 + doc/api/html/math_2functions_2logit_8hpp.html | 131 + .../math_2functions_2logit_8hpp_source.html | 126 + ...s_2modified__bessel__first__kind_8hpp.html | 129 + ...fied__bessel__first__kind_8hpp_source.html | 125 + ..._2modified__bessel__second__kind_8hpp.html | 129 + ...ied__bessel__second__kind_8hpp_source.html | 125 + .../math_2functions_2multiply__log_8hpp.html | 131 + ...2functions_2multiply__log_8hpp_source.html | 128 + .../html/math_2functions_2owens__t_8hpp.html | 132 + ...math_2functions_2owens__t_8hpp_source.html | 126 + ...th_2functions_2rising__factorial_8hpp.html | 130 + ...ctions_2rising__factorial_8hpp_source.html | 125 + .../html/math_2functions_2square_8hpp.html | 129 + .../math_2functions_2square_8hpp_source.html | 122 + doc/api/html/math_2functions_2step_8hpp.html | 129 + .../math_2functions_2step_8hpp_source.html | 122 + doc/api/html/math_2functions_2sum_8hpp.html | 129 + .../math_2functions_2sum_8hpp_source.html | 127 + .../html/math_2functions_2value__of_8hpp.html | 133 + ...ath_2functions_2value__of_8hpp_source.html | 127 + doc/api/html/math_2functions_8hpp.html | 175 + doc/api/html/math_2functions_8hpp_source.html | 178 + .../math_2matrix_2_l_d_l_t__factor_8hpp.html | 133 + ...2matrix_2_l_d_l_t__factor_8hpp_source.html | 184 + ...h_2matrix_2columns__dot__product_8hpp.html | 132 + ...ix_2columns__dot__product_8hpp_source.html | 132 + ...math_2matrix_2columns__dot__self_8hpp.html | 130 + ...atrix_2columns__dot__self_8hpp_source.html | 124 + .../html/math_2matrix_2crossprod_8hpp.html | 130 + .../math_2matrix_2crossprod_8hpp_source.html | 124 + .../html/math_2matrix_2determinant_8hpp.html | 131 + ...math_2matrix_2determinant_8hpp_source.html | 125 + doc/api/html/math_2matrix_2divide_8hpp.html | 135 + .../math_2matrix_2divide_8hpp_source.html | 129 + .../html/math_2matrix_2dot__product_8hpp.html | 139 + ...ath_2matrix_2dot__product_8hpp_source.html | 142 + .../html/math_2matrix_2dot__self_8hpp.html | 131 + .../math_2matrix_2dot__self_8hpp_source.html | 125 + doc/api/html/math_2matrix_2exp_8hpp.html | 130 + .../html/math_2matrix_2exp_8hpp_source.html | 123 + doc/api/html/math_2matrix_2inverse_8hpp.html | 132 + .../math_2matrix_2inverse_8hpp_source.html | 127 + doc/api/html/math_2matrix_2log_8hpp.html | 130 + .../html/math_2matrix_2log_8hpp_source.html | 124 + .../math_2matrix_2log__determinant_8hpp.html | 131 + ...2matrix_2log__determinant_8hpp_source.html | 125 + ..._2matrix_2log__determinant__ldlt_8hpp.html | 129 + ...x_2log__determinant__ldlt_8hpp_source.html | 125 + ...h_2matrix_2log__determinant__spd_8hpp.html | 132 + ...ix_2log__determinant__spd_8hpp_source.html | 133 + .../html/math_2matrix_2log__softmax_8hpp.html | 136 + ...ath_2matrix_2log__softmax_8hpp_source.html | 145 + .../math_2matrix_2log__sum__exp_8hpp.html | 134 + ...th_2matrix_2log__sum__exp_8hpp_source.html | 143 + .../math_2matrix_2mdivide__left_8hpp.html | 136 + ...th_2matrix_2mdivide__left_8hpp_source.html | 136 + ...ath_2matrix_2mdivide__left__ldlt_8hpp.html | 132 + ...trix_2mdivide__left__ldlt_8hpp_source.html | 129 + ...math_2matrix_2mdivide__left__spd_8hpp.html | 136 + ...atrix_2mdivide__left__spd_8hpp_source.html | 136 + ...math_2matrix_2mdivide__left__tri_8hpp.html | 140 + ...atrix_2mdivide__left__tri_8hpp_source.html | 149 + ...2matrix_2mdivide__left__tri__low_8hpp.html | 136 + ..._2mdivide__left__tri__low_8hpp_source.html | 149 + .../math_2matrix_2mdivide__right_8hpp.html | 137 + ...h_2matrix_2mdivide__right_8hpp_source.html | 142 + ...matrix_2mdivide__right__tri__low_8hpp.html | 135 + ...2mdivide__right__tri__low_8hpp_source.html | 133 + doc/api/html/math_2matrix_2multiply_8hpp.html | 152 + .../math_2matrix_2multiply_8hpp_source.html | 160 + ...ply__lower__tri__self__transpose_8hpp.html | 129 + ...wer__tri__self__transpose_8hpp_source.html | 133 + .../html/math_2matrix_2quad__form_8hpp.html | 144 + .../math_2matrix_2quad__form_8hpp_source.html | 166 + ...math_2matrix_2rows__dot__product_8hpp.html | 132 + ...atrix_2rows__dot__product_8hpp_source.html | 132 + .../math_2matrix_2rows__dot__self_8hpp.html | 130 + ..._2matrix_2rows__dot__self_8hpp_source.html | 124 + doc/api/html/math_2matrix_2sd_8hpp.html | 140 + .../html/math_2matrix_2sd_8hpp_source.html | 141 + doc/api/html/math_2matrix_2softmax_8hpp.html | 133 + .../math_2matrix_2softmax_8hpp_source.html | 137 + doc/api/html/math_2matrix_2sort_8hpp.html | 145 + .../html/math_2matrix_2sort_8hpp_source.html | 145 + .../math_2matrix_2squared__distance_8hpp.html | 132 + ...matrix_2squared__distance_8hpp_source.html | 131 + .../html/math_2matrix_2stan__print_8hpp.html | 142 + ...math_2matrix_2stan__print_8hpp_source.html | 166 + doc/api/html/math_2matrix_2sum_8hpp.html | 135 + .../html/math_2matrix_2sum_8hpp_source.html | 133 + .../html/math_2matrix_2tcrossprod_8hpp.html | 130 + .../math_2matrix_2tcrossprod_8hpp_source.html | 132 + ...race__gen__inv__quad__form__ldlt_8hpp.html | 132 + ...en__inv__quad__form__ldlt_8hpp_source.html | 139 + ..._2matrix_2trace__gen__quad__form_8hpp.html | 134 + ...x_2trace__gen__quad__form_8hpp_source.html | 135 + ...ix_2trace__inv__quad__form__ldlt_8hpp.html | 131 + ...ce__inv__quad__form__ldlt_8hpp_source.html | 134 + .../math_2matrix_2trace__quad__form_8hpp.html | 134 + ...matrix_2trace__quad__form_8hpp_source.html | 132 + doc/api/html/math_2matrix_2typedefs_8hpp.html | 142 + .../math_2matrix_2typedefs_8hpp_source.html | 134 + doc/api/html/math_2matrix_2variance_8hpp.html | 139 + .../math_2matrix_2variance_8hpp_source.html | 156 + doc/api/html/math_2matrix_8hpp.html | 213 + doc/api/html/math_2matrix_8hpp_source.html | 217 + doc/api/html/math_8hpp.html | 115 + doc/api/html/math_8hpp_source.html | 118 + doc/api/html/matrix_2max_8hpp.html | 139 + doc/api/html/matrix_2max_8hpp_source.html | 148 + doc/api/html/matrix_2min_8hpp.html | 139 + doc/api/html/matrix_2min_8hpp_source.html | 148 + .../html/matrix__error__handling_8hpp.html | 125 + .../matrix__error__handling_8hpp_source.html | 128 + doc/api/html/matrix__normal_8hpp.html | 149 + doc/api/html/matrix__normal_8hpp_source.html | 233 + doc/api/html/matrix__vari_8hpp.html | 130 + doc/api/html/matrix__vari_8hpp_source.html | 142 + doc/api/html/mcmc_8hpp.html | 123 + doc/api/html/mcmc_8hpp_source.html | 128 + doc/api/html/mcmc__writer_8hpp.html | 134 + doc/api/html/mcmc__writer_8hpp_source.html | 281 + doc/api/html/mdivide__right__ldlt_8hpp.html | 140 + .../mdivide__right__ldlt_8hpp_source.html | 143 + doc/api/html/mdivide__right__spd_8hpp.html | 137 + .../html/mdivide__right__spd_8hpp_source.html | 134 + doc/api/html/mdivide__right__tri_8hpp.html | 138 + .../html/mdivide__right__tri_8hpp_source.html | 144 + doc/api/html/mean_8hpp.html | 139 + doc/api/html/mean_8hpp_source.html | 140 + doc/api/html/memory_8hpp.html | 110 + doc/api/html/memory_8hpp_source.html | 114 + doc/api/html/meta_2traits_8hpp.html | 235 + doc/api/html/meta_2traits_8hpp_source.html | 482 + doc/api/html/meta_8hpp.html | 110 + doc/api/html/meta_8hpp_source.html | 113 + doc/api/html/minus_8hpp.html | 129 + doc/api/html/minus_8hpp_source.html | 122 + doc/api/html/model_2util_8hpp.html | 182 + doc/api/html/model_2util_8hpp_source.html | 436 + doc/api/html/model_8hpp.html | 111 + doc/api/html/model_8hpp_source.html | 114 + doc/api/html/model__header_8hpp.html | 135 + doc/api/html/model__header_8hpp_source.html | 144 + doc/api/html/multi__gp_8hpp.html | 154 + doc/api/html/multi__gp_8hpp_source.html | 231 + doc/api/html/multi__normal_8hpp.html | 155 + doc/api/html/multi__normal_8hpp_source.html | 340 + .../html/multi__normal__cholesky_8hpp.html | 162 + .../multi__normal__cholesky_8hpp_source.html | 317 + doc/api/html/multi__normal__prec_8hpp.html | 163 + .../html/multi__normal__prec_8hpp_source.html | 318 + doc/api/html/multi__student__t_8hpp.html | 150 + .../html/multi__student__t_8hpp_source.html | 267 + doc/api/html/multinomial_8hpp.html | 146 + doc/api/html/multinomial_8hpp_source.html | 204 + .../html/multivariate_2continuous_8hpp.html | 121 + .../multivariate_2continuous_8hpp_source.html | 124 + doc/api/html/multivariate_2discrete_8hpp.html | 112 + .../multivariate_2discrete_8hpp_source.html | 114 + doc/api/html/multivariate_8hpp.html | 111 + doc/api/html/multivariate_8hpp_source.html | 114 + doc/api/html/namespace_eigen.html | 124 + doc/api/html/namespace_eigen_1_1internal.html | 134 + doc/api/html/namespaceboost.html | 117 + doc/api/html/namespaceboost_1_1math.html | 330 + doc/api/html/namespacemembers.html | 205 + doc/api/html/namespacemembers_0x62.html | 240 + doc/api/html/namespacemembers_0x63.html | 344 + doc/api/html/namespacemembers_0x64.html | 234 + doc/api/html/namespacemembers_0x65.html | 223 + doc/api/html/namespacemembers_0x66.html | 191 + doc/api/html/namespacemembers_0x67.html | 378 + doc/api/html/namespacemembers_0x68.html | 175 + doc/api/html/namespacemembers_0x69.html | 300 + doc/api/html/namespacemembers_0x6a.html | 140 + doc/api/html/namespacemembers_0x6c.html | 343 + doc/api/html/namespacemembers_0x6d.html | 286 + doc/api/html/namespacemembers_0x6e.html | 191 + doc/api/html/namespacemembers_0x6f.html | 195 + doc/api/html/namespacemembers_0x70.html | 256 + doc/api/html/namespacemembers_0x71.html | 147 + doc/api/html/namespacemembers_0x72.html | 242 + doc/api/html/namespacemembers_0x73.html | 303 + doc/api/html/namespacemembers_0x74.html | 211 + doc/api/html/namespacemembers_0x75.html | 173 + doc/api/html/namespacemembers_0x76.html | 255 + doc/api/html/namespacemembers_0x77.html | 179 + doc/api/html/namespacemembers_func.html | 184 + doc/api/html/namespacemembers_func_0x62.html | 226 + doc/api/html/namespacemembers_func_0x63.html | 341 + doc/api/html/namespacemembers_func_0x64.html | 220 + doc/api/html/namespacemembers_func_0x65.html | 208 + doc/api/html/namespacemembers_func_0x66.html | 185 + doc/api/html/namespacemembers_func_0x67.html | 378 + doc/api/html/namespacemembers_func_0x68.html | 175 + doc/api/html/namespacemembers_func_0x69.html | 282 + doc/api/html/namespacemembers_func_0x6a.html | 140 + doc/api/html/namespacemembers_func_0x6c.html | 324 + doc/api/html/namespacemembers_func_0x6d.html | 251 + doc/api/html/namespacemembers_func_0x6e.html | 176 + doc/api/html/namespacemembers_func_0x6f.html | 195 + doc/api/html/namespacemembers_func_0x70.html | 247 + doc/api/html/namespacemembers_func_0x71.html | 147 + doc/api/html/namespacemembers_func_0x72.html | 216 + doc/api/html/namespacemembers_func_0x73.html | 277 + doc/api/html/namespacemembers_func_0x74.html | 199 + doc/api/html/namespacemembers_func_0x75.html | 167 + doc/api/html/namespacemembers_func_0x76.html | 199 + doc/api/html/namespacemembers_func_0x77.html | 179 + doc/api/html/namespacemembers_type.html | 249 + doc/api/html/namespacemembers_vars.html | 385 + doc/api/html/namespaces.html | 124 + doc/api/html/namespacestan.html | 615 + doc/api/html/namespacestan_1_1agrad.html | 21688 ++++++++++++++++ doc/api/html/namespacestan_1_1gm.html | 4811 ++++ doc/api/html/namespacestan_1_1io.html | 413 + doc/api/html/namespacestan_1_1math.html | 17659 +++++++++++++ .../namespacestan_1_1math_1_1policies.html | 179 + ...acestan_1_1math_1_1policies_1_1detail.html | 335 + doc/api/html/namespacestan_1_1mcmc.html | 199 + doc/api/html/namespacestan_1_1memory.html | 179 + doc/api/html/namespacestan_1_1model.html | 910 + .../html/namespacestan_1_1optimization.html | 255 + doc/api/html/namespacestan_1_1prob.html | 13569 ++++++++++ doc/api/html/namespacestd.html | 202 + doc/api/html/nav_f.png | Bin 0 -> 153 bytes doc/api/html/nav_g.png | Bin 0 -> 95 bytes doc/api/html/nav_h.png | Bin 0 -> 98 bytes doc/api/html/neg__binomial_8hpp.html | 163 + doc/api/html/neg__binomial_8hpp_source.html | 714 + doc/api/html/nesterov__gradient_8hpp.html | 128 + .../html/nesterov__gradient_8hpp_source.html | 258 + doc/api/html/newton_8hpp.html | 141 + doc/api/html/newton_8hpp_source.html | 193 + doc/api/html/open.png | Bin 0 -> 123 bytes .../html/operator__divide__equal_8hpp.html | 123 + .../operator__divide__equal_8hpp_source.html | 131 + doc/api/html/operator__minus__equal_8hpp.html | 123 + .../operator__minus__equal_8hpp_source.html | 131 + .../html/operator__multiply__equal_8hpp.html | 123 + ...operator__multiply__equal_8hpp_source.html | 131 + doc/api/html/operator__plus__equal_8hpp.html | 123 + .../operator__plus__equal_8hpp_source.html | 131 + .../html/operator__unary__decrement_8hpp.html | 133 + ...perator__unary__decrement_8hpp_source.html | 142 + .../html/operator__unary__increment_8hpp.html | 133 + ...perator__unary__increment_8hpp_source.html | 142 + doc/api/html/operator__unary__minus_8hpp.html | 130 + .../operator__unary__minus_8hpp_source.html | 126 + .../html/operator__unary__negative_8hpp.html | 130 + ...operator__unary__negative_8hpp_source.html | 135 + doc/api/html/operator__unary__not_8hpp.html | 129 + .../operator__unary__not_8hpp_source.html | 122 + doc/api/html/operator__unary__plus_8hpp.html | 129 + .../operator__unary__plus_8hpp_source.html | 122 + doc/api/html/ordered__logistic_8hpp.html | 151 + .../html/ordered__logistic_8hpp_source.html | 264 + doc/api/html/pages.html | 102 + doc/api/html/pareto_8hpp.html | 158 + doc/api/html/pareto_8hpp_source.html | 556 + doc/api/html/parser_8hpp.html | 165 + doc/api/html/parser_8hpp_source.html | 282 + doc/api/html/partials__vari_8hpp.html | 133 + doc/api/html/partials__vari_8hpp_source.html | 250 + doc/api/html/poisson_8hpp.html | 161 + doc/api/html/poisson_8hpp_source.html | 531 + doc/api/html/policy_page.html | 98 + doc/api/html/precomp__v__vari_8hpp.html | 129 + .../html/precomp__v__vari_8hpp_source.html | 133 + doc/api/html/precomputed__gradients_8hpp.html | 140 + .../precomputed__gradients_8hpp_source.html | 156 + doc/api/html/print_8cpp.html | 164 + doc/api/html/print_8cpp_source.html | 419 + doc/api/html/print_8hpp.html | 502 + doc/api/html/print_8hpp_source.html | 314 + doc/api/html/print__stack_8hpp.html | 131 + doc/api/html/print__stack_8hpp_source.html | 130 + doc/api/html/prob_2constants_8hpp.html | 122 + doc/api/html/prob_2constants_8hpp_source.html | 149 + ..._2univariate_2continuous_2normal_8hpp.html | 162 + ...riate_2continuous_2normal_8hpp_source.html | 472 + doc/api/html/prob_2traits_8hpp.html | 130 + doc/api/html/prob_2traits_8hpp_source.html | 149 + doc/api/html/prob_8hpp.html | 115 + doc/api/html/prob_8hpp_source.html | 117 + doc/api/html/prob__grad_8hpp.html | 131 + doc/api/html/prob__grad_8hpp_source.html | 158 + doc/api/html/prod_8hpp.html | 135 + doc/api/html/prod_8hpp_source.html | 134 + doc/api/html/program__grammar_8hpp.html | 136 + .../html/program__grammar_8hpp_source.html | 191 + doc/api/html/program__grammar__def_8hpp.html | 180 + .../program__grammar__def_8hpp_source.html | 290 + doc/api/html/program__grammar__inst_8cpp.html | 123 + .../program__grammar__inst_8cpp_source.html | 115 + doc/api/html/promote__common_8hpp.html | 130 + doc/api/html/promote__common_8hpp_source.html | 130 + doc/api/html/promoter_8hpp.html | 139 + doc/api/html/promoter_8hpp_source.html | 200 + doc/api/html/ps__point_8hpp.html | 132 + doc/api/html/ps__point_8hpp_source.html | 205 + doc/api/html/raise__domain__error_8hpp.html | 149 + .../raise__domain__error_8hpp_source.html | 179 + doc/api/html/rank_8hpp.html | 136 + doc/api/html/rank_8hpp_source.html | 145 + doc/api/html/rayleigh_8hpp.html | 151 + doc/api/html/rayleigh_8hpp_source.html | 447 + doc/api/html/reader_8hpp.html | 130 + doc/api/html/reader_8hpp_source.html | 726 + doc/api/html/rep__array_8hpp.html | 137 + doc/api/html/rep__array_8hpp_source.html | 150 + doc/api/html/rep__matrix_8hpp.html | 142 + doc/api/html/rep__matrix_8hpp_source.html | 150 + doc/api/html/rep__row__vector_8hpp.html | 133 + .../html/rep__row__vector_8hpp_source.html | 131 + doc/api/html/rep__vector_8hpp.html | 133 + doc/api/html/rep__vector_8hpp_source.html | 133 + doc/api/html/resize_8hpp.html | 131 + doc/api/html/resize_8hpp_source.html | 167 + doc/api/html/rev_2functions_2acos_8hpp.html | 131 + .../rev_2functions_2acos_8hpp_source.html | 136 + doc/api/html/rev_2functions_2acosh_8hpp.html | 136 + .../rev_2functions_2acosh_8hpp_source.html | 144 + doc/api/html/rev_2functions_2asin_8hpp.html | 131 + .../rev_2functions_2asin_8hpp_source.html | 136 + doc/api/html/rev_2functions_2asinh_8hpp.html | 136 + .../rev_2functions_2asinh_8hpp_source.html | 143 + doc/api/html/rev_2functions_2atan2_8hpp.html | 139 + .../rev_2functions_2atan2_8hpp_source.html | 170 + doc/api/html/rev_2functions_2atan_8hpp.html | 131 + .../rev_2functions_2atan_8hpp_source.html | 136 + doc/api/html/rev_2functions_2atanh_8hpp.html | 132 + .../rev_2functions_2atanh_8hpp_source.html | 141 + doc/api/html/rev_2functions_2cbrt_8hpp.html | 131 + .../rev_2functions_2cbrt_8hpp_source.html | 136 + doc/api/html/rev_2functions_2ceil_8hpp.html | 131 + .../rev_2functions_2ceil_8hpp_source.html | 133 + doc/api/html/rev_2functions_2cos_8hpp.html | 131 + .../html/rev_2functions_2cos_8hpp_source.html | 136 + doc/api/html/rev_2functions_2cosh_8hpp.html | 131 + .../rev_2functions_2cosh_8hpp_source.html | 136 + doc/api/html/rev_2functions_2erf_8hpp.html | 133 + .../html/rev_2functions_2erf_8hpp_source.html | 138 + doc/api/html/rev_2functions_2erfc_8hpp.html | 133 + .../rev_2functions_2erfc_8hpp_source.html | 138 + doc/api/html/rev_2functions_2expm1_8hpp.html | 132 + .../rev_2functions_2expm1_8hpp_source.html | 137 + doc/api/html/rev_2functions_2fabs_8hpp.html | 133 + .../rev_2functions_2fabs_8hpp_source.html | 136 + doc/api/html/rev_2functions_2floor_8hpp.html | 131 + .../rev_2functions_2floor_8hpp_source.html | 133 + doc/api/html/rev_2functions_2fmax_8hpp.html | 135 + .../rev_2functions_2fmax_8hpp_source.html | 133 + doc/api/html/rev_2functions_2fmin_8hpp.html | 135 + .../rev_2functions_2fmin_8hpp_source.html | 133 + doc/api/html/rev_2functions_2fmod_8hpp.html | 139 + .../rev_2functions_2fmod_8hpp_source.html | 168 + doc/api/html/rev_2functions_2hypot_8hpp.html | 139 + .../rev_2functions_2hypot_8hpp_source.html | 162 + doc/api/html/rev_2functions_2log10_8hpp.html | 155 + .../rev_2functions_2log10_8hpp_source.html | 139 + doc/api/html/rev_2functions_2pow_8hpp.html | 141 + .../html/rev_2functions_2pow_8hpp_source.html | 178 + doc/api/html/rev_2functions_2round_8hpp.html | 131 + .../rev_2functions_2round_8hpp_source.html | 134 + doc/api/html/rev_2functions_2sin_8hpp.html | 131 + .../html/rev_2functions_2sin_8hpp_source.html | 136 + doc/api/html/rev_2functions_2sinh_8hpp.html | 131 + .../rev_2functions_2sinh_8hpp_source.html | 136 + doc/api/html/rev_2functions_2sqrt_8hpp.html | 131 + .../rev_2functions_2sqrt_8hpp_source.html | 136 + doc/api/html/rev_2functions_2tan_8hpp.html | 131 + .../html/rev_2functions_2tan_8hpp_source.html | 136 + doc/api/html/rev_2functions_2tanh_8hpp.html | 131 + .../rev_2functions_2tanh_8hpp_source.html | 137 + doc/api/html/rev_2functions_2tgamma_8hpp.html | 131 + .../rev_2functions_2tgamma_8hpp_source.html | 136 + doc/api/html/rev_2functions_2trunc_8hpp.html | 131 + .../rev_2functions_2trunc_8hpp_source.html | 134 + doc/api/html/rev_2numeric__limits_8hpp.html | 137 + .../rev_2numeric__limits_8hpp_source.html | 163 + ...v_2operators_2operator__addition_8hpp.html | 137 + ...ators_2operator__addition_8hpp_source.html | 159 + ...v_2operators_2operator__division_8hpp.html | 138 + ...ators_2operator__division_8hpp_source.html | 169 + .../rev_2operators_2operator__equal_8hpp.html | 135 + ...perators_2operator__equal_8hpp_source.html | 130 + ...erators_2operator__greater__than_8hpp.html | 135 + ..._2operator__greater__than_8hpp_source.html | 130 + ...erator__greater__than__or__equal_8hpp.html | 135 + ..._greater__than__or__equal_8hpp_source.html | 130 + ...2operators_2operator__less__than_8hpp.html | 135 + ...ors_2operator__less__than_8hpp_source.html | 130 + ...2operator__less__than__or__equal_8hpp.html | 135 + ...or__less__than__or__equal_8hpp_source.html | 130 + ...rators_2operator__multiplication_8hpp.html | 137 + ...2operator__multiplication_8hpp_source.html | 159 + ...2operators_2operator__not__equal_8hpp.html | 135 + ...ors_2operator__not__equal_8hpp_source.html | 130 + ...operators_2operator__subtraction_8hpp.html | 138 + ...rs_2operator__subtraction_8hpp_source.html | 168 + doc/api/html/rev_2operators_8hpp.html | 128 + doc/api/html/rev_2operators_8hpp_source.html | 131 + doc/api/html/rev_8hpp.html | 120 + doc/api/html/rev_8hpp_source.html | 124 + doc/api/html/row_8hpp.html | 132 + doc/api/html/row_8hpp_source.html | 128 + doc/api/html/rows_8hpp.html | 129 + doc/api/html/rows_8hpp_source.html | 125 + doc/api/html/sample_8hpp.html | 130 + doc/api/html/sample_8hpp_source.html | 180 + doc/api/html/scaled__add_8hpp.html | 129 + doc/api/html/scaled__add_8hpp_source.html | 128 + .../html/scaled__inv__chi__square_8hpp.html | 162 + .../scaled__inv__chi__square_8hpp_source.html | 670 + doc/api/html/search/all_5f.html | 25 + doc/api/html/search/all_5f.js | 99 + doc/api/html/search/all_61.html | 25 + doc/api/html/search/all_61.js | 297 + doc/api/html/search/all_62.html | 25 + doc/api/html/search/all_62.js | 126 + doc/api/html/search/all_63.html | 25 + doc/api/html/search/all_63.js | 215 + doc/api/html/search/all_64.html | 25 + doc/api/html/search/all_64.js | 160 + doc/api/html/search/all_65.html | 25 + doc/api/html/search/all_65.js | 100 + doc/api/html/search/all_66.html | 25 + doc/api/html/search/all_66.js | 62 + doc/api/html/search/all_67.html | 25 + doc/api/html/search/all_67.js | 159 + doc/api/html/search/all_68.html | 25 + doc/api/html/search/all_68.js | 38 + doc/api/html/search/all_69.html | 25 + doc/api/html/search/all_69.js | 171 + doc/api/html/search/all_6a.html | 25 + doc/api/html/search/all_6a.js | 5 + doc/api/html/search/all_6b.html | 25 + doc/api/html/search/all_6b.js | 5 + doc/api/html/search/all_6c.html | 25 + doc/api/html/search/all_6c.js | 168 + doc/api/html/search/all_6d.html | 25 + doc/api/html/search/all_6d.js | 153 + doc/api/html/search/all_6e.html | 25 + doc/api/html/search/all_6e.js | 67 + doc/api/html/search/all_6f.html | 25 + doc/api/html/search/all_6f.js | 106 + doc/api/html/search/all_70.html | 25 + doc/api/html/search/all_70.js | 141 + doc/api/html/search/all_71.html | 25 + doc/api/html/search/all_71.js | 11 + doc/api/html/search/all_72.html | 25 + doc/api/html/search/all_72.js | 135 + doc/api/html/search/all_73.html | 25 + doc/api/html/search/all_73.js | 271 + doc/api/html/search/all_74.html | 25 + doc/api/html/search/all_74.js | 89 + doc/api/html/search/all_75.html | 25 + doc/api/html/search/all_75.js | 48 + doc/api/html/search/all_76.html | 25 + doc/api/html/search/all_76.js | 172 + doc/api/html/search/all_77.html | 25 + doc/api/html/search/all_77.js | 62 + doc/api/html/search/all_78.html | 25 + doc/api/html/search/all_78.js | 4 + doc/api/html/search/all_7a.html | 25 + doc/api/html/search/all_7a.js | 4 + doc/api/html/search/all_7e.html | 25 + doc/api/html/search/all_7e.js | 32 + doc/api/html/search/classes_61.html | 25 + doc/api/html/search/classes_61.js | 78 + doc/api/html/search/classes_62.html | 25 + doc/api/html/search/classes_62.js | 37 + doc/api/html/search/classes_63.html | 25 + doc/api/html/search/classes_63.js | 22 + doc/api/html/search/classes_64.html | 25 + doc/api/html/search/classes_64.js | 23 + doc/api/html/search/classes_65.html | 25 + doc/api/html/search/classes_65.js | 17 + doc/api/html/search/classes_66.html | 25 + doc/api/html/search/classes_66.js | 8 + doc/api/html/search/classes_67.html | 25 + doc/api/html/search/classes_67.js | 9 + doc/api/html/search/classes_69.html | 25 + doc/api/html/search/classes_69.js | 29 + doc/api/html/search/classes_6c.html | 25 + doc/api/html/search/classes_6c.js | 11 + doc/api/html/search/classes_6d.html | 25 + doc/api/html/search/classes_6d.js | 9 + doc/api/html/search/classes_6e.html | 25 + doc/api/html/search/classes_6e.js | 12 + doc/api/html/search/classes_6f.html | 25 + doc/api/html/search/classes_6f.js | 18 + doc/api/html/search/classes_70.html | 25 + doc/api/html/search/classes_70.js | 23 + doc/api/html/search/classes_72.html | 25 + doc/api/html/search/classes_72.js | 39 + doc/api/html/search/classes_73.html | 25 + doc/api/html/search/classes_73.js | 57 + doc/api/html/search/classes_74.html | 25 + doc/api/html/search/classes_74.js | 12 + doc/api/html/search/classes_75.html | 25 + doc/api/html/search/classes_75.js | 12 + doc/api/html/search/classes_76.html | 25 + doc/api/html/search/classes_76.js | 35 + doc/api/html/search/classes_77.html | 25 + doc/api/html/search/classes_77.js | 16 + doc/api/html/search/close.png | Bin 0 -> 273 bytes doc/api/html/search/defines_5f.html | 25 + doc/api/html/search/defines_5f.js | 5 + doc/api/html/search/defines_64.html | 25 + doc/api/html/search/defines_64.js | 4 + doc/api/html/search/defines_65.html | 25 + doc/api/html/search/defines_65.js | 4 + doc/api/html/search/defines_6c.html | 25 + doc/api/html/search/defines_6c.js | 4 + doc/api/html/search/defines_75.html | 25 + doc/api/html/search/defines_75.js | 4 + doc/api/html/search/enumvalues_61.html | 25 + doc/api/html/search/enumvalues_61.js | 4 + doc/api/html/search/enumvalues_63.html | 25 + doc/api/html/search/enumvalues_63.js | 4 + doc/api/html/search/enumvalues_64.html | 25 + doc/api/html/search/enumvalues_64.js | 4 + doc/api/html/search/enumvalues_68.html | 25 + doc/api/html/search/enumvalues_68.js | 4 + doc/api/html/search/enumvalues_69.html | 25 + doc/api/html/search/enumvalues_69.js | 6 + doc/api/html/search/enumvalues_6c.html | 25 + doc/api/html/search/enumvalues_6c.js | 4 + doc/api/html/search/enumvalues_6d.html | 25 + doc/api/html/search/enumvalues_6d.js | 4 + doc/api/html/search/enumvalues_6e.html | 25 + doc/api/html/search/enumvalues_6e.js | 4 + doc/api/html/search/enumvalues_6f.html | 25 + doc/api/html/search/enumvalues_6f.js | 4 + doc/api/html/search/enumvalues_72.html | 25 + doc/api/html/search/enumvalues_72.js | 5 + doc/api/html/search/enumvalues_73.html | 25 + doc/api/html/search/enumvalues_73.js | 4 + doc/api/html/search/enumvalues_75.html | 25 + doc/api/html/search/enumvalues_75.js | 4 + doc/api/html/search/enumvalues_76.html | 25 + doc/api/html/search/enumvalues_76.js | 4 + doc/api/html/search/files_61.html | 25 + doc/api/html/search/files_61.js | 97 + doc/api/html/search/files_62.html | 25 + doc/api/html/search/files_62.js | 31 + doc/api/html/search/files_63.html | 25 + doc/api/html/search/files_63.js | 71 + doc/api/html/search/files_64.html | 25 + doc/api/html/search/files_64.js | 47 + doc/api/html/search/files_65.html | 25 + doc/api/html/search/files_65.js | 32 + doc/api/html/search/files_66.html | 25 + doc/api/html/search/files_66.js | 29 + doc/api/html/search/files_67.html | 25 + doc/api/html/search/files_67.js | 17 + doc/api/html/search/files_68.html | 25 + doc/api/html/search/files_68.js | 8 + doc/api/html/search/files_69.html | 25 + doc/api/html/search/files_69.js | 38 + doc/api/html/search/files_6a.html | 25 + doc/api/html/search/files_6a.js | 4 + doc/api/html/search/files_6c.html | 25 + doc/api/html/search/files_6c.js | 79 + doc/api/html/search/files_6d.html | 25 + doc/api/html/search/files_6d.js | 64 + doc/api/html/search/files_6e.html | 25 + doc/api/html/search/files_6e.js | 10 + doc/api/html/search/files_6f.html | 25 + doc/api/html/search/files_6f.js | 39 + doc/api/html/search/files_70.html | 25 + doc/api/html/search/files_70.js | 28 + doc/api/html/search/files_71.html | 25 + doc/api/html/search/files_71.js | 5 + doc/api/html/search/files_72.html | 25 + doc/api/html/search/files_72.js | 24 + doc/api/html/search/files_73.html | 25 + doc/api/html/search/files_73.js | 61 + doc/api/html/search/files_74.html | 25 + doc/api/html/search/files_74.js | 38 + doc/api/html/search/files_75.html | 25 + doc/api/html/search/files_75.js | 12 + doc/api/html/search/files_76.html | 25 + doc/api/html/search/files_76.js | 44 + doc/api/html/search/files_77.html | 25 + doc/api/html/search/files_77.js | 12 + doc/api/html/search/functions_5f.html | 25 + doc/api/html/search/functions_5f.js | 7 + doc/api/html/search/functions_61.html | 25 + doc/api/html/search/functions_61.js | 104 + doc/api/html/search/functions_62.html | 25 + doc/api/html/search/functions_62.js | 52 + doc/api/html/search/functions_63.html | 25 + doc/api/html/search/functions_63.js | 113 + doc/api/html/search/functions_64.html | 25 + doc/api/html/search/functions_64.js | 62 + doc/api/html/search/functions_65.html | 25 + doc/api/html/search/functions_65.js | 39 + doc/api/html/search/functions_66.html | 25 + doc/api/html/search/functions_66.js | 25 + doc/api/html/search/functions_67.html | 25 + doc/api/html/search/functions_67.js | 135 + doc/api/html/search/functions_68.html | 25 + doc/api/html/search/functions_68.js | 22 + doc/api/html/search/functions_69.html | 25 + doc/api/html/search/functions_69.js | 81 + doc/api/html/search/functions_6a.html | 25 + doc/api/html/search/functions_6a.js | 4 + doc/api/html/search/functions_6b.html | 25 + doc/api/html/search/functions_6b.js | 4 + doc/api/html/search/functions_6c.html | 25 + doc/api/html/search/functions_6c.js | 68 + doc/api/html/search/functions_6d.html | 25 + doc/api/html/search/functions_6d.js | 55 + doc/api/html/search/functions_6e.html | 25 + doc/api/html/search/functions_6e.js | 34 + doc/api/html/search/functions_6f.html | 25 + doc/api/html/search/functions_6f.js | 49 + doc/api/html/search/functions_70.html | 25 + doc/api/html/search/functions_70.js | 80 + doc/api/html/search/functions_71.html | 25 + doc/api/html/search/functions_71.js | 8 + doc/api/html/search/functions_72.html | 25 + doc/api/html/search/functions_72.js | 51 + doc/api/html/search/functions_73.html | 25 + doc/api/html/search/functions_73.js | 116 + doc/api/html/search/functions_74.html | 25 + doc/api/html/search/functions_74.js | 29 + doc/api/html/search/functions_75.html | 25 + doc/api/html/search/functions_75.js | 25 + doc/api/html/search/functions_76.html | 25 + doc/api/html/search/functions_76.js | 60 + doc/api/html/search/functions_77.html | 25 + doc/api/html/search/functions_77.js | 38 + doc/api/html/search/functions_7a.html | 25 + doc/api/html/search/functions_7a.js | 4 + doc/api/html/search/functions_7e.html | 25 + doc/api/html/search/functions_7e.js | 32 + doc/api/html/search/mag_sel.png | Bin 0 -> 563 bytes doc/api/html/search/namespaces_62.html | 25 + doc/api/html/search/namespaces_62.js | 5 + doc/api/html/search/namespaces_65.html | 25 + doc/api/html/search/namespaces_65.js | 5 + doc/api/html/search/namespaces_73.html | 25 + doc/api/html/search/namespaces_73.js | 16 + doc/api/html/search/nomatches.html | 12 + doc/api/html/search/pages_65.html | 25 + doc/api/html/search/pages_65.js | 4 + doc/api/html/search/related_6f.html | 25 + doc/api/html/search/related_6f.js | 4 + doc/api/html/search/related_76.html | 25 + doc/api/html/search/related_76.js | 4 + doc/api/html/search/search.css | 238 + doc/api/html/search/search.js | 815 + doc/api/html/search/search_l.png | Bin 0 -> 604 bytes doc/api/html/search/search_m.png | Bin 0 -> 158 bytes doc/api/html/search/search_r.png | Bin 0 -> 612 bytes doc/api/html/search/typedefs_61.html | 25 + doc/api/html/search/typedefs_61.js | 4 + doc/api/html/search/typedefs_62.html | 25 + doc/api/html/search/typedefs_62.js | 6 + doc/api/html/search/typedefs_65.html | 25 + doc/api/html/search/typedefs_65.js | 4 + doc/api/html/search/typedefs_66.html | 25 + doc/api/html/search/typedefs_66.js | 5 + doc/api/html/search/typedefs_68.html | 25 + doc/api/html/search/typedefs_68.js | 4 + doc/api/html/search/typedefs_69.html | 25 + doc/api/html/search/typedefs_69.js | 5 + doc/api/html/search/typedefs_6c.html | 25 + doc/api/html/search/typedefs_6c.js | 4 + doc/api/html/search/typedefs_6d.html | 25 + doc/api/html/search/typedefs_6d.js | 13 + doc/api/html/search/typedefs_6e.html | 25 + doc/api/html/search/typedefs_6e.js | 5 + doc/api/html/search/typedefs_70.html | 25 + doc/api/html/search/typedefs_70.js | 5 + doc/api/html/search/typedefs_72.html | 25 + doc/api/html/search/typedefs_72.js | 17 + doc/api/html/search/typedefs_73.html | 25 + doc/api/html/search/typedefs_73.js | 8 + doc/api/html/search/typedefs_74.html | 25 + doc/api/html/search/typedefs_74.js | 4 + doc/api/html/search/typedefs_75.html | 25 + doc/api/html/search/typedefs_75.js | 4 + doc/api/html/search/typedefs_76.html | 25 + doc/api/html/search/typedefs_76.js | 13 + doc/api/html/search/variables_5f.html | 25 + doc/api/html/search/variables_5f.js | 93 + doc/api/html/search/variables_61.html | 25 + doc/api/html/search/variables_61.js | 26 + doc/api/html/search/variables_62.html | 25 + doc/api/html/search/variables_62.js | 10 + doc/api/html/search/variables_63.html | 25 + doc/api/html/search/variables_63.js | 17 + doc/api/html/search/variables_64.html | 25 + doc/api/html/search/variables_64.js | 36 + doc/api/html/search/variables_65.html | 25 + doc/api/html/search/variables_65.js | 19 + doc/api/html/search/variables_66.html | 25 + doc/api/html/search/variables_66.js | 7 + doc/api/html/search/variables_67.html | 25 + doc/api/html/search/variables_67.js | 7 + doc/api/html/search/variables_68.html | 25 + doc/api/html/search/variables_68.js | 12 + doc/api/html/search/variables_69.html | 25 + doc/api/html/search/variables_69.js | 28 + doc/api/html/search/variables_6b.html | 25 + doc/api/html/search/variables_6b.js | 4 + doc/api/html/search/variables_6c.html | 25 + doc/api/html/search/variables_6c.js | 17 + doc/api/html/search/variables_6d.html | 25 + doc/api/html/search/variables_6d.js | 24 + doc/api/html/search/variables_6e.html | 25 + doc/api/html/search/variables_6e.js | 19 + doc/api/html/search/variables_6f.html | 25 + doc/api/html/search/variables_6f.js | 8 + doc/api/html/search/variables_70.html | 25 + doc/api/html/search/variables_70.js | 17 + doc/api/html/search/variables_71.html | 25 + doc/api/html/search/variables_71.js | 4 + doc/api/html/search/variables_72.html | 25 + doc/api/html/search/variables_72.js | 15 + doc/api/html/search/variables_73.html | 25 + doc/api/html/search/variables_73.js | 32 + doc/api/html/search/variables_74.html | 25 + doc/api/html/search/variables_74.js | 20 + doc/api/html/search/variables_75.html | 25 + doc/api/html/search/variables_75.js | 5 + doc/api/html/search/variables_76.html | 25 + doc/api/html/search/variables_76.js | 34 + doc/api/html/search/variables_77.html | 25 + doc/api/html/search/variables_77.js | 6 + doc/api/html/search/variables_78.html | 25 + doc/api/html/search/variables_78.js | 4 + doc/api/html/segment_8hpp.html | 141 + doc/api/html/segment_8hpp_source.html | 158 + doc/api/html/seq__view_8hpp.html | 155 + doc/api/html/seq__view_8hpp_source.html | 302 + doc/api/html/singleton__argument_8hpp.html | 159 + .../html/singleton__argument_8hpp_source.html | 281 + doc/api/html/singular__values_8hpp.html | 131 + .../html/singular__values_8hpp_source.html | 125 + doc/api/html/size_8hpp.html | 129 + doc/api/html/size_8hpp_source.html | 124 + doc/api/html/skew__normal_8hpp.html | 158 + doc/api/html/skew__normal_8hpp_source.html | 562 + doc/api/html/stack__alloc_8hpp.html | 187 + doc/api/html/stack__alloc_8hpp_source.html | 245 + doc/api/html/stan_8dox.html | 142 + doc/api/html/stan__csv__reader_8hpp.html | 143 + .../html/stan__csv__reader_8hpp_source.html | 453 + doc/api/html/stanc_8cpp.html | 158 + doc/api/html/stanc_8cpp_source.html | 115 + doc/api/html/stanc__helper_8hpp.html | 239 + doc/api/html/stanc__helper_8hpp_source.html | 284 + doc/api/html/stanlogo-main.png | Bin 0 -> 7353 bytes doc/api/html/statement__2__grammar_8hpp.html | 137 + .../statement__2__grammar_8hpp_source.html | 169 + .../html/statement__2__grammar__def_8hpp.html | 178 + ...tatement__2__grammar__def_8hpp_source.html | 252 + .../statement__2__grammar__inst_8cpp.html | 123 + ...atement__2__grammar__inst_8cpp_source.html | 115 + doc/api/html/statement__grammar_8hpp.html | 136 + .../html/statement__grammar_8hpp_source.html | 264 + .../html/statement__grammar__def_8hpp.html | 462 + .../statement__grammar__def_8hpp_source.html | 729 + .../html/statement__grammar__inst_8cpp.html | 123 + .../statement__grammar__inst_8cpp_source.html | 115 + doc/api/html/std_8dox.html | 112 + doc/api/html/stepsize__adaptation_8hpp.html | 129 + .../stepsize__adaptation_8hpp_source.html | 185 + doc/api/html/stepsize__adapter_8hpp.html | 129 + .../html/stepsize__adapter_8hpp_source.html | 138 + .../html/stepsize__covar__adapter_8hpp.html | 130 + .../stepsize__covar__adapter_8hpp_source.html | 157 + doc/api/html/stepsize__var__adapter_8hpp.html | 130 + .../stepsize__var__adapter_8hpp_source.html | 158 + doc/api/html/stored__gradient__vari_8hpp.html | 129 + .../stored__gradient__vari_8hpp_source.html | 146 + ...3_01stan_1_1agrad_1_1var_01_4-members.html | 127 + ..._traits_3_01stan_1_1agrad_1_1var_01_4.html | 371 + ...1_1va753d9f8f3d54fbedc22d657246672d94.html | 116 + ...1_1va9b485de9571b6e46d7a64aff43a6d9d3.html | 289 + ...1_1va16fe21f36cb92096f2fc63d419437421.html | 117 + ...1_1va3d1bc254c18abbf59c1006f7e7cbcbac.html | 117 + ...1_1va44da5f98e1caea9523bacbd5bdc025fe.html | 301 + ...1_1vacd54cabc78c49ca719650381b68b105e.html | 297 + ...0_01stan_1_1agrad_1_1var_01_4-members.html | 113 + ...double_00_01stan_1_1agrad_1_1var_01_4.html | 148 + ...agrad_1_1var_00_01double_01_4-members.html | 113 + ...stan_1_1agrad_1_1var_00_01double_01_4.html | 148 + ...1agrad_1_1var_00_01false_01_4-members.html | 113 + ...1stan_1_1agrad_1_1var_00_01false_01_4.html | 159 + .../html/structdot__product__store__type.html | 116 + doc/api/html/structexpression__grammar.html | 116 + ...rad_1_1_operands_and_partials-members.html | 124 + ...an_1_1agrad_1_1_operands_and_partials.html | 442 + .../structstan_1_1agrad_1_1fvar-members.html | 131 + doc/api/html/structstan_1_1agrad_1_1fvar.html | 715 + .../structstan_1_1contains__fvar-members.html | 113 + .../html/structstan_1_1contains__fvar.html | 157 + ...1gm_1_1add__conditional__body-members.html | 113 + ...tstan_1_1gm_1_1add__conditional__body.html | 169 + ...__conditional__body_1_1result-members.html | 113 + ...m_1_1add__conditional__body_1_1result.html | 146 + ..._1add__conditional__condition-members.html | 113 + ..._1_1gm_1_1add__conditional__condition.html | 175 + ...ditional__condition_1_1result-members.html | 113 + ...add__conditional__condition_1_1result.html | 146 + ...1gm_1_1add__expression__dimss-members.html | 113 + ...tstan_1_1gm_1_1add__expression__dimss.html | 181 + ...__expression__dimss_1_1result-members.html | 113 + ...m_1_1add__expression__dimss_1_1result.html | 146 + ..._1gm_1_1add__loop__identifier-members.html | 113 + ...ctstan_1_1gm_1_1add__loop__identifier.html | 181 + ...d__loop__identifier_1_1result-members.html | 113 + ...gm_1_1add__loop__identifier_1_1result.html | 146 + ...tan_1_1gm_1_1add__while__body-members.html | 113 + .../structstan_1_1gm_1_1add__while__body.html | 169 + ...1_1add__while__body_1_1result-members.html | 113 + ...n_1_1gm_1_1add__while__body_1_1result.html | 146 + ..._1gm_1_1add__while__condition-members.html | 113 + ...ctstan_1_1gm_1_1add__while__condition.html | 175 + ...d__while__condition_1_1result-members.html | 113 + ...gm_1_1add__while__condition_1_1result.html | 146 + ...tstan_1_1gm_1_1addition__expr-members.html | 113 + .../structstan_1_1gm_1_1addition__expr.html | 175 + ...m_1_1addition__expr_1_1result-members.html | 113 + ...tan_1_1gm_1_1addition__expr_1_1result.html | 146 + ...tstan_1_1gm_1_1array__literal-members.html | 117 + .../structstan_1_1gm_1_1array__literal.html | 223 + ...tructstan_1_1gm_1_1assignment-members.html | 117 + .../html/structstan_1_1gm_1_1assignment.html | 228 + ...stan_1_1gm_1_1base__var__decl-members.html | 118 + .../structstan_1_1gm_1_1base__var__decl.html | 274 + .../structstan_1_1gm_1_1base__var__decl.png | Bin 0 -> 6084 bytes ...tructstan_1_1gm_1_1binary__op-members.html | 118 + .../html/structstan_1_1gm_1_1binary__op.html | 250 + ...tan_1_1gm_1_1binary__op__expr-members.html | 113 + .../structstan_1_1gm_1_1binary__op__expr.html | 187 + ...1_1binary__op__expr_1_1result-members.html | 113 + ...n_1_1gm_1_1binary__op__expr_1_1result.html | 146 + ..._1cholesky__factor__var__decl-members.html | 122 + ..._1_1gm_1_1cholesky__factor__var__decl.html | 247 + ...n_1_1gm_1_1cholesky__factor__var__decl.png | Bin 0 -> 792 bytes ...1gm_1_1conditional__statement-members.html | 116 + ...tstan_1_1gm_1_1conditional__statement.html | 212 + ...trained__param__names__visgen-members.html | 130 + ..._1_1constrained__param__names__visgen.html | 583 + ...m_1_1constrained__param__names__visgen.png | Bin 0 -> 781 bytes ...gm_1_1contains__nonparam__var-members.html | 123 + ...stan_1_1gm_1_1contains__nonparam__var.html | 356 + ...tstan_1_1gm_1_1contains__nonparam__var.png | Bin 0 -> 737 bytes ...ctstan_1_1gm_1_1contains__var-members.html | 123 + .../structstan_1_1gm_1_1contains__var.html | 356 + .../structstan_1_1gm_1_1contains__var.png | Bin 0 -> 675 bytes ...gm_1_1corr__matrix__var__decl-members.html | 121 + ...stan_1_1gm_1_1corr__matrix__var__decl.html | 225 + ...tstan_1_1gm_1_1corr__matrix__var__decl.png | Bin 0 -> 745 bytes ...1gm_1_1cov__matrix__var__decl-members.html | 121 + ...tstan_1_1gm_1_1cov__matrix__var__decl.html | 225 + ...ctstan_1_1gm_1_1cov__matrix__var__decl.png | Bin 0 -> 747 bytes ...uctstan_1_1gm_1_1distribution-members.html | 114 + .../structstan_1_1gm_1_1distribution.html | 157 + ...tstan_1_1gm_1_1division__expr-members.html | 113 + .../structstan_1_1gm_1_1division__expr.html | 175 + ...m_1_1division__expr_1_1result-members.html | 113 + ...tan_1_1gm_1_1division__expr_1_1result.html | 146 + ...stan_1_1gm_1_1double__literal-members.html | 117 + .../structstan_1_1gm_1_1double__literal.html | 223 + ...an_1_1gm_1_1double__var__decl-members.html | 121 + ...structstan_1_1gm_1_1double__var__decl.html | 225 + .../structstan_1_1gm_1_1double__var__decl.png | Bin 0 -> 693 bytes ..._1_1dump__member__var__visgen-members.html | 131 + ...an_1_1gm_1_1dump__member__var__visgen.html | 576 + ...tan_1_1gm_1_1dump__member__var__visgen.png | Bin 0 -> 744 bytes ..._1_1gm_1_1elt__division__expr-members.html | 113 + ...ructstan_1_1gm_1_1elt__division__expr.html | 175 + ...elt__division__expr_1_1result-members.html | 113 + ..._1gm_1_1elt__division__expr_1_1result.html | 146 + ..._1_1elt__multiplication__expr-members.html | 113 + ...an_1_1gm_1_1elt__multiplication__expr.html | 175 + ...ultiplication__expr_1_1result-members.html | 113 + ..._1elt__multiplication__expr_1_1result.html | 146 + ...uctstan_1_1gm_1_1error__codes-members.html | 118 + .../structstan_1_1gm_1_1error__codes.html | 166 + ...tructstan_1_1gm_1_1expr__type-members.html | 125 + .../html/structstan_1_1gm_1_1expr__type.html | 387 + ...tructstan_1_1gm_1_1expression-members.html | 131 + .../html/structstan_1_1gm_1_1expression.html | 525 + ..._1_1expression__as__statement-members.html | 113 + ...an_1_1gm_1_1expression__as__statement.html | 175 + ...sion__as__statement_1_1result-members.html | 113 + ..._1expression__as__statement_1_1result.html | 146 + ..._1_1gm_1_1expression__grammar-members.html | 121 + ...ructstan_1_1gm_1_1expression__grammar.html | 334 + ...tructstan_1_1gm_1_1expression__grammar.png | Bin 0 -> 1419 bytes ..._1gm_1_1expression__type__vis-members.html | 121 + ...ctstan_1_1gm_1_1expression__type__vis.html | 314 + ...uctstan_1_1gm_1_1expression__type__vis.png | Bin 0 -> 818 bytes ...n_1_1gm_1_1expression__visgen-members.html | 128 + ...tructstan_1_1gm_1_1expression__visgen.html | 511 + ...structstan_1_1gm_1_1expression__visgen.png | Bin 0 -> 692 bytes ...tstan_1_1gm_1_1for__statement-members.html | 117 + .../structstan_1_1gm_1_1for__statement.html | 234 + .../html/structstan_1_1gm_1_1fun-members.html | 118 + doc/api/html/structstan_1_1gm_1_1fun.html | 248 + ...1generate__init__vars__visgen-members.html | 130 + ...1_1gm_1_1generate__init__vars__visgen.html | 570 + ..._1_1gm_1_1generate__init__vars__visgen.png | Bin 0 -> 763 bytes ...1gm_1_1generate__init__visgen-members.html | 139 + ...tstan_1_1gm_1_1generate__init__visgen.html | 965 + ...ctstan_1_1gm_1_1generate__init__visgen.png | Bin 0 -> 714 bytes ...local__var__init__nan__visgen-members.html | 133 + ...nerate__local__var__init__nan__visgen.html | 645 + ...enerate__local__var__init__nan__visgen.png | Bin 0 -> 846 bytes ...crement__log__prob__statement-members.html | 115 + ...gm_1_1increment__log__prob__statement.html | 186 + ...structstan_1_1gm_1_1index__op-members.html | 118 + .../html/structstan_1_1gm_1_1index__op.html | 249 + ...m_1_1init__local__var__visgen-members.html | 133 + ...tan_1_1gm_1_1init__local__var__visgen.html | 701 + ...stan_1_1gm_1_1init__local__var__visgen.png | Bin 0 -> 711 bytes ...uctstan_1_1gm_1_1int__literal-members.html | 118 + .../structstan_1_1gm_1_1int__literal.html | 243 + ...tstan_1_1gm_1_1int__var__decl-members.html | 121 + .../structstan_1_1gm_1_1int__var__decl.html | 225 + .../structstan_1_1gm_1_1int__var__decl.png | Bin 0 -> 670 bytes ...ructstan_1_1gm_1_1is__nil__op-members.html | 121 + .../html/structstan_1_1gm_1_1is__nil__op.html | 314 + .../html/structstan_1_1gm_1_1is__nil__op.png | Bin 0 -> 639 bytes ...1_1gm_1_1left__division__expr-members.html | 113 + ...uctstan_1_1gm_1_1left__division__expr.html | 175 + ...eft__division__expr_1_1result-members.html | 113 + ...1gm_1_1left__division__expr_1_1result.html | 146 + ...m_1_1local__var__decl__visgen-members.html | 135 + ...tan_1_1gm_1_1local__var__decl__visgen.html | 758 + ...stan_1_1gm_1_1local__var__decl__visgen.png | Bin 0 -> 711 bytes ..._1gm_1_1logical__negate__expr-members.html | 113 + ...ctstan_1_1gm_1_1logical__negate__expr.html | 169 + ...gical__negate__expr_1_1result-members.html | 113 + ...gm_1_1logical__negate__expr_1_1result.html | 146 + ...an_1_1gm_1_1matrix__var__decl-members.html | 123 + ...structstan_1_1gm_1_1matrix__var__decl.html | 269 + .../structstan_1_1gm_1_1matrix__var__decl.png | Bin 0 -> 698 bytes ..._1_1member__var__decl__visgen-members.html | 131 + ...an_1_1gm_1_1member__var__decl__visgen.html | 614 + ...tan_1_1gm_1_1member__var__decl__visgen.png | Bin 0 -> 747 bytes ...1_1gm_1_1multiplication__expr-members.html | 113 + ...uctstan_1_1gm_1_1multiplication__expr.html | 175 + ...ultiplication__expr_1_1result-members.html | 113 + ...1gm_1_1multiplication__expr_1_1result.html | 146 + ...structstan_1_1gm_1_1name__vis-members.html | 126 + .../html/structstan_1_1gm_1_1name__vis.html | 414 + .../html/structstan_1_1gm_1_1name__vis.png | Bin 0 -> 731 bytes ...uctstan_1_1gm_1_1negate__expr-members.html | 113 + .../structstan_1_1gm_1_1negate__expr.html | 169 + ...1gm_1_1negate__expr_1_1result-members.html | 113 + ...tstan_1_1gm_1_1negate__expr_1_1result.html | 146 + doc/api/html/structstan_1_1gm_1_1nil.html | 121 + ...structstan_1_1gm_1_1no__op__statement.html | 117 + ...n_1_1gm_1_1ordered__var__decl-members.html | 121 + ...tructstan_1_1gm_1_1ordered__var__decl.html | 225 + ...structstan_1_1gm_1_1ordered__var__decl.png | Bin 0 -> 719 bytes ...1positive__ordered__var__decl-members.html | 121 + ...1_1gm_1_1positive__ordered__var__decl.html | 225 + ..._1_1gm_1_1positive__ordered__var__decl.png | Bin 0 -> 794 bytes ...tan_1_1gm_1_1print__statement-members.html | 115 + .../structstan_1_1gm_1_1print__statement.html | 186 + ...structstan_1_1gm_1_1printable-members.html | 119 + .../html/structstan_1_1gm_1_1printable.html | 271 + ...an_1_1gm_1_1printable__visgen-members.html | 118 + ...structstan_1_1gm_1_1printable__visgen.html | 231 + .../structstan_1_1gm_1_1printable__visgen.png | Bin 0 -> 661 bytes .../structstan_1_1gm_1_1program-members.html | 120 + doc/api/html/structstan_1_1gm_1_1program.html | 306 + ...tan_1_1gm_1_1program__grammar-members.html | 126 + .../structstan_1_1gm_1_1program__grammar.html | 422 + .../structstan_1_1gm_1_1program__grammar.png | Bin 0 -> 1216 bytes .../structstan_1_1gm_1_1range-members.html | 118 + doc/api/html/structstan_1_1gm_1_1range.html | 251 + ...m_1_1remove__loop__identifier-members.html | 113 + ...tan_1_1gm_1_1remove__loop__identifier.html | 169 + ...e__loop__identifier_1_1result-members.html | 113 + ...1_1remove__loop__identifier_1_1result.html | 146 + ...1gm_1_1row__vector__var__decl-members.html | 122 + ...tstan_1_1gm_1_1row__vector__var__decl.html | 247 + ...ctstan_1_1gm_1_1row__vector__var__decl.png | Bin 0 -> 735 bytes .../structstan_1_1gm_1_1sample-members.html | 118 + doc/api/html/structstan_1_1gm_1_1sample.html | 248 + ...tstan_1_1gm_1_1set__fun__type-members.html | 113 + .../structstan_1_1gm_1_1set__fun__type.html | 169 + ...stan_1_1gm_1_1set__fun__type2-members.html | 113 + .../structstan_1_1gm_1_1set__fun__type2.html | 169 + ..._1_1set__fun__type2_1_1result-members.html | 113 + ...an_1_1gm_1_1set__fun__type2_1_1result.html | 146 + ...m_1_1set__fun__type_1_1result-members.html | 113 + ...tan_1_1gm_1_1set__fun__type_1_1result.html | 146 + ..._1gm_1_1set__fun__type__named-members.html | 113 + ...ctstan_1_1gm_1_1set__fun__type__named.html | 181 + ...t__fun__type__named_1_1result-members.html | 113 + ...gm_1_1set__fun__type__named_1_1result.html | 146 + ...1_1set__param__ranges__visgen-members.html | 133 + ...n_1_1gm_1_1set__param__ranges__visgen.html | 677 + ...an_1_1gm_1_1set__param__ranges__visgen.png | Bin 0 -> 766 bytes ...tstan_1_1gm_1_1set__var__type-members.html | 113 + .../structstan_1_1gm_1_1set__var__type.html | 181 + ...m_1_1set__var__type_1_1result-members.html | 113 + ...tan_1_1gm_1_1set__var__type_1_1result.html | 146 + ...n_1_1gm_1_1simplex__var__decl-members.html | 121 + ...tructstan_1_1gm_1_1simplex__var__decl.html | 225 + ...structstan_1_1gm_1_1simplex__var__decl.png | Bin 0 -> 716 bytes ...structstan_1_1gm_1_1statement-members.html | 127 + .../html/structstan_1_1gm_1_1statement.html | 449 + ..._1gm_1_1statement__2__grammar-members.html | 119 + ...ctstan_1_1gm_1_1statement__2__grammar.html | 295 + ...uctstan_1_1gm_1_1statement__2__grammar.png | Bin 0 -> 1468 bytes ...n_1_1gm_1_1statement__grammar-members.html | 138 + ...tructstan_1_1gm_1_1statement__grammar.html | 679 + ...structstan_1_1gm_1_1statement__grammar.png | Bin 0 -> 1445 bytes ...an_1_1gm_1_1statement__visgen-members.html | 130 + ...structstan_1_1gm_1_1statement__visgen.html | 558 + .../structstan_1_1gm_1_1statement__visgen.png | Bin 0 -> 675 bytes ...tructstan_1_1gm_1_1statements-members.html | 116 + .../html/structstan_1_1gm_1_1statements.html | 212 + ...an_1_1gm_1_1subtraction__expr-members.html | 113 + ...structstan_1_1gm_1_1subtraction__expr.html | 175 + ..._1subtraction__expr_1_1result-members.html | 113 + ..._1_1gm_1_1subtraction__expr_1_1result.html | 146 + ...ctstan_1_1gm_1_1term__grammar-members.html | 127 + .../structstan_1_1gm_1_1term__grammar.html | 459 + .../structstan_1_1gm_1_1term__grammar.png | Bin 0 -> 1363 bytes ...stan_1_1gm_1_1transpose__expr-members.html | 113 + .../structstan_1_1gm_1_1transpose__expr.html | 169 + ..._1_1transpose__expr_1_1result-members.html | 113 + ...an_1_1gm_1_1transpose__expr_1_1result.html | 146 + ...tructstan_1_1gm_1_1type__name-members.html | 113 + .../html/structstan_1_1gm_1_1type__name.html | 157 + ...m_1_1type__name_3_01bool_01_4-members.html | 113 + ...tan_1_1gm_1_1type__name_3_01bool_01_4.html | 155 + ...1_1type__name_3_01double_01_4-members.html | 113 + ...n_1_1gm_1_1type__name_3_01double_01_4.html | 155 + ...gm_1_1type__name_3_01int_01_4-members.html | 113 + ...stan_1_1gm_1_1type__name_3_01int_01_4.html | 155 + ...__name_3_01std_1_1string_01_4-members.html | 113 + ..._1_1type__name_3_01std_1_1string_01_4.html | 155 + ..._name_3_01unsigned_01int_01_4-members.html | 113 + ...1_1type__name_3_01unsigned_01int_01_4.html | 155 + ...structstan_1_1gm_1_1unary__op-members.html | 116 + .../html/structstan_1_1gm_1_1unary__op.html | 209 + ...trained__param__names__visgen-members.html | 130 + ..._1unconstrained__param__names__visgen.html | 583 + ...1_1unconstrained__param__names__visgen.png | Bin 0 -> 872 bytes ...gm_1_1unit__vector__var__decl-members.html | 121 + ...stan_1_1gm_1_1unit__vector__var__decl.html | 225 + ...tstan_1_1gm_1_1unit__vector__var__decl.png | Bin 0 -> 742 bytes ...stan_1_1gm_1_1unscope__locals-members.html | 113 + .../structstan_1_1gm_1_1unscope__locals.html | 169 + ..._1_1unscope__locals_1_1result-members.html | 113 + ...an_1_1gm_1_1unscope__locals_1_1result.html | 146 + ...gm_1_1validate__allow__sample-members.html | 113 + ...stan_1_1gm_1_1validate__allow__sample.html | 169 + ...date__allow__sample_1_1result-members.html | 113 + ..._1_1validate__allow__sample_1_1result.html | 146 + ...1_1gm_1_1validate__assignment-members.html | 113 + ...uctstan_1_1gm_1_1validate__assignment.html | 181 + ...alidate__assignment_1_1result-members.html | 113 + ...1gm_1_1validate__assignment_1_1result.html | 146 + ...1_1gm_1_1validate__expr__type-members.html | 113 + ...uctstan_1_1gm_1_1validate__expr__type.html | 169 + ..._1gm_1_1validate__expr__type2-members.html | 113 + ...ctstan_1_1gm_1_1validate__expr__type2.html | 169 + ...lidate__expr__type2_1_1result-members.html | 113 + ...gm_1_1validate__expr__type2_1_1result.html | 146 + ...alidate__expr__type_1_1result-members.html | 113 + ...1gm_1_1validate__expr__type_1_1result.html | 146 + ...1_1gm_1_1validate__int__expr2-members.html | 113 + ...uctstan_1_1gm_1_1validate__int__expr2.html | 169 + ...alidate__int__expr2_1_1result-members.html | 113 + ...1gm_1_1validate__int__expr2_1_1result.html | 146 + ...1_1gm_1_1validate__int__expr3-members.html | 113 + ...uctstan_1_1gm_1_1validate__int__expr3.html | 169 + ...alidate__int__expr3_1_1result-members.html | 113 + ...1gm_1_1validate__int__expr3_1_1result.html | 146 + ...tan_1_1gm_1_1validate__sample-members.html | 115 + .../structstan_1_1gm_1_1validate__sample.html | 251 + ...1_1validate__sample_1_1result-members.html | 113 + ...n_1_1gm_1_1validate__sample_1_1result.html | 146 + ...__transformed__params__visgen-members.html | 131 + ...validate__transformed__params__visgen.html | 614 + ...1validate__transformed__params__visgen.png | Bin 0 -> 919 bytes ..._1validate__var__decl__visgen-members.html | 135 + ..._1_1gm_1_1validate__var__decl__visgen.html | 736 + ...n_1_1gm_1_1validate__var__decl__visgen.png | Bin 0 -> 760 bytes ...structstan_1_1gm_1_1var__decl-members.html | 130 + .../html/structstan_1_1gm_1_1var__decl.html | 513 + ..._1_1gm_1_1var__decls__grammar-members.html | 138 + ...ructstan_1_1gm_1_1var__decls__grammar.html | 677 + ...tructstan_1_1gm_1_1var__decls__grammar.png | Bin 0 -> 1786 bytes ..._1gm_1_1var__resizing__visgen-members.html | 129 + ...ctstan_1_1gm_1_1var__resizing__visgen.html | 539 + ...uctstan_1_1gm_1_1var__resizing__visgen.png | Bin 0 -> 712 bytes ...var__size__validating__visgen-members.html | 130 + ..._1gm_1_1var__size__validating__visgen.html | 570 + ...1_1gm_1_1var__size__validating__visgen.png | Bin 0 -> 777 bytes .../structstan_1_1gm_1_1variable-members.html | 117 + .../html/structstan_1_1gm_1_1variable.html | 233 + ...tstan_1_1gm_1_1variable__dims-members.html | 116 + .../structstan_1_1gm_1_1variable__dims.html | 212 + ...ctstan_1_1gm_1_1variable__map-members.html | 121 + .../structstan_1_1gm_1_1variable__map.html | 325 + ...an_1_1gm_1_1vector__var__decl-members.html | 122 + ...structstan_1_1gm_1_1vector__var__decl.html | 247 + .../structstan_1_1gm_1_1vector__var__decl.png | Bin 0 -> 691 bytes .../structstan_1_1gm_1_1visgen-members.html | 115 + doc/api/html/structstan_1_1gm_1_1visgen.html | 231 + doc/api/html/structstan_1_1gm_1_1visgen.png | Bin 0 -> 15238 bytes ...tan_1_1gm_1_1while__statement-members.html | 116 + .../structstan_1_1gm_1_1while__statement.html | 212 + ..._1_1gm_1_1whitespace__grammar-members.html | 114 + ...ructstan_1_1gm_1_1whitespace__grammar.html | 181 + ...tructstan_1_1gm_1_1whitespace__grammar.png | Bin 0 -> 873 bytes ...1_1write__array__vars__visgen-members.html | 130 + ...n_1_1gm_1_1write__array__vars__visgen.html | 583 + ...an_1_1gm_1_1write__array__vars__visgen.png | Bin 0 -> 754 bytes ...1_1gm_1_1write__array__visgen-members.html | 131 + ...uctstan_1_1gm_1_1write__array__visgen.html | 648 + ...ructstan_1_1gm_1_1write__array__visgen.png | Bin 0 -> 710 bytes ...1_1write__csv__header__visgen-members.html | 130 + ...n_1_1gm_1_1write__csv__header__visgen.html | 583 + ...an_1_1gm_1_1write__csv__header__visgen.png | Bin 0 -> 763 bytes ...m_1_1write__csv__vars__visgen-members.html | 130 + ...tan_1_1gm_1_1write__csv__vars__visgen.html | 577 + ...stan_1_1gm_1_1write__csv__vars__visgen.png | Bin 0 -> 732 bytes ...n_1_1gm_1_1write__csv__visgen-members.html | 131 + ...tructstan_1_1gm_1_1write__csv__visgen.html | 648 + ...structstan_1_1gm_1_1write__csv__visgen.png | Bin 0 -> 679 bytes ..._1_1gm_1_1write__dims__visgen-members.html | 130 + ...ructstan_1_1gm_1_1write__dims__visgen.html | 577 + ...tructstan_1_1gm_1_1write__dims__visgen.png | Bin 0 -> 689 bytes ..._1write__param__names__visgen-members.html | 130 + ..._1_1gm_1_1write__param__names__visgen.html | 567 + ...n_1_1gm_1_1write__param__names__visgen.png | Bin 0 -> 775 bytes ...structstan_1_1io_1_1stan__csv-members.html | 117 + .../html/structstan_1_1io_1_1stan__csv.html | 206 + ..._1io_1_1stan__csv__adaptation-members.html | 115 + ...ctstan_1_1io_1_1stan__csv__adaptation.html | 189 + ..._1_1io_1_1stan__csv__metadata-members.html | 129 + ...ructstan_1_1io_1_1stan__csv__metadata.html | 413 + ...an_1_1io_1_1stan__csv__timing-members.html | 115 + ...structstan_1_1io_1_1stan__csv__timing.html | 189 + .../structstan_1_1is__constant-members.html | 113 + doc/api/html/structstan_1_1is__constant.html | 168 + ...tstan_1_1is__constant__struct-members.html | 113 + .../structstan_1_1is__constant__struct.html | 157 + ...en_1_1_block_3_01_t_01_4_01_4-members.html | 113 + ...3_01_eigen_1_1_block_3_01_t_01_4_01_4.html | 153 + ...1_t_00_01_r_00_01_c_01_4_01_4-members.html | 113 + ...trix_3_01_t_00_01_r_00_01_c_01_4_01_4.html | 153 + ...td_1_1vector_3_01_t_01_4_01_4-members.html | 113 + ...ct_3_01std_1_1vector_3_01_t_01_4_01_4.html | 153 + .../html/structstan_1_1is__fvar-members.html | 113 + doc/api/html/structstan_1_1is__fvar.html | 153 + ...grad_1_1fvar_3_01_t_01_4_01_4-members.html | 113 + ...tan_1_1agrad_1_1fvar_3_01_t_01_4_01_4.html | 153 + .../html/structstan_1_1is__var-members.html | 113 + doc/api/html/structstan_1_1is__var.html | 153 + ...3_01stan_1_1agrad_1_1var_01_4-members.html | 113 + ...is__var_3_01stan_1_1agrad_1_1var_01_4.html | 151 + ...an_1_1is__var__or__arithmetic-members.html | 113 + ...structstan_1_1is__var__or__arithmetic.html | 153 + .../structstan_1_1is__vector-members.html | 114 + doc/api/html/structstan_1_1is__vector.html | 172 + ...1_eigen_1_1_dynamic_01_4_01_4-members.html | 114 + ...011_00_01_eigen_1_1_dynamic_01_4_01_4.html | 172 + ..._1_1_dynamic_00_011_01_4_01_4-members.html | 114 + ...01_eigen_1_1_dynamic_00_011_01_4_01_4.html | 172 + ...s__vector_3_01const_01_t_01_4-members.html | 114 + ...tan_1_1is__vector_3_01const_01_t_01_4.html | 172 + ...td_1_1vector_3_01_t_01_4_01_4-members.html | 114 + ...or_3_01std_1_1vector_3_01_t_01_4_01_4.html | 172 + ...tructstan_1_1is__vector__like-members.html | 113 + .../html/structstan_1_1is__vector__like.html | 153 + ...1_eigen_1_1_dynamic_01_4_01_4-members.html | 113 + ...mic_00_01_eigen_1_1_dynamic_01_4_01_4.html | 153 + ...vector__like_3_01_t_01_5_01_4-members.html | 113 + ..._1_1is__vector__like_3_01_t_01_5_01_4.html | 153 + ...tor__like_3_01const_01_t_01_4-members.html | 113 + ...1is__vector__like_3_01const_01_t_01_4.html | 153 + ...tan_1_1math_1_1array__builder-members.html | 116 + .../structstan_1_1math_1_1array__builder.html | 247 + ...tstan_1_1math_1_1common__type-members.html | 113 + .../structstan_1_1math_1_1common__type.html | 148 + ..._eige106a86f1021708b40db478c4e2fef0a7.html | 113 + ..._eiged8accfa00e73f240c58ad02ac582ba93.html | 148 + ...d_1_1vector_3_01_t2_01_4_01_4-members.html | 113 + ..._00_01std_1_1vector_3_01_t2_01_4_01_4.html | 147 + ...uctstan_1_1math_1_1pass__type-members.html | 113 + .../structstan_1_1math_1_1pass__type.html | 146 + ...1_1pass__type_3_01double_01_4-members.html | 113 + ...1_1math_1_1pass__type_3_01double_01_4.html | 144 + ...th_1_1pass__type_3_01int_01_4-members.html | 113 + ...an_1_1math_1_1pass__type_3_01int_01_4.html | 144 + ...tructstan_1_1math_1_1promoter-members.html | 114 + .../html/structstan_1_1math_1_1promoter.html | 198 + ...n_1_142b48fda94601374e41a81325f3f7b84.html | 198 + ...n_1_19fcbf4e7bc8e106173bfa338a15054ff.html | 114 + ...n_1_12d7fadf0560f1f2f3abc5388b7666f9c.html | 198 + ...n_1_1ab38afe2feaa91a91579e3639d1f03b0.html | 114 + ...1promoter_3_01_t_00_01_t_01_4-members.html | 114 + ...1math_1_1promoter_3_01_t_00_01_t_01_4.html | 198 + ...td_1_1vector_3_01_t_01_4_01_4-members.html | 114 + ...4_00_01std_1_1vector_3_01_t_01_4_01_4.html | 198 + ...td_1_1vector_3_01_t_01_4_01_4-members.html | 114 + ...4_00_01std_1_1vector_3_01_t_01_4_01_4.html | 198 + ...ctstan_1_1math_1_1store__type-members.html | 113 + .../structstan_1_1math_1_1store__type.html | 146 + ..._1store__type_3_01double_01_4-members.html | 113 + ..._1math_1_1store__type_3_01double_01_4.html | 144 + ...h_1_1store__type_3_01int_01_4-members.html | 113 + ...n_1_1math_1_1store__type_3_01int_01_4.html | 144 + ...uctstan_1_1mcmc_1_1nuts__util-members.html | 118 + .../structstan_1_1mcmc_1_1nuts__util.html | 221 + ...1_1model_1_1model__functional-members.html | 116 + ...uctstan_1_1model_1_1model__functional.html | 243 + ...minimizer_1_1_b_f_g_s_options-members.html | 122 + ...b_f_g_s_minimizer_1_1_b_f_g_s_options.html | 324 + ...n_1_1prob_1_1include__summand-members.html | 113 + ...tructstan_1_1prob_1_1include__summand.html | 169 + .../structstan_1_1return__type-members.html | 113 + doc/api/html/structstan_1_1return__type.html | 160 + .../structstan_1_1scalar__type-members.html | 113 + doc/api/html/structstan_1_1scalar__type.html | 159 + ...1_eigen_1_1_dynamic_01_4_01_4-members.html | 113 + ...mic_00_01_eigen_1_1_dynamic_01_4_01_4.html | 146 + ...scalar__type_3_01_t_01_5_01_4-members.html | 113 + ...stan_1_1scalar__type_3_01_t_01_5_01_4.html | 146 + ...tructstan_1_1size__of__helper-members.html | 113 + .../html/structstan_1_1size__of__helper.html | 158 + ..._helper_3_01_t_00_01true_01_4-members.html | 113 + ...ize__of__helper_3_01_t_00_01true_01_4.html | 158 + doc/api/html/structstatement__grammar.html | 116 + ...grad_1_1fvar_3_01_t_01_4_01_4-members.html | 142 + ...tan_1_1agrad_1_1fvar_3_01_t_01_4_01_4.html | 943 + ...3_01stan_1_1agrad_1_1var_01_4-members.html | 142 + ..._limits_3_01stan_1_1agrad_1_1var_01_4.html | 882 + doc/api/html/structterm__grammar.html | 116 + doc/api/html/student__t_8hpp.html | 160 + doc/api/html/student__t_8hpp_source.html | 865 + doc/api/html/sub_8hpp.html | 129 + doc/api/html/sub_8hpp_source.html | 127 + doc/api/html/sub__col_8hpp.html | 133 + doc/api/html/sub__col_8hpp_source.html | 133 + doc/api/html/sub__row_8hpp.html | 133 + doc/api/html/sub__row_8hpp_source.html | 133 + doc/api/html/subtract_8hpp.html | 144 + doc/api/html/subtract_8hpp_source.html | 157 + doc/api/html/sync_off.png | Bin 0 -> 853 bytes doc/api/html/sync_on.png | Bin 0 -> 845 bytes doc/api/html/tab_a.png | Bin 0 -> 142 bytes doc/api/html/tab_b.png | Bin 0 -> 170 bytes doc/api/html/tab_h.png | Bin 0 -> 177 bytes doc/api/html/tab_s.png | Bin 0 -> 184 bytes doc/api/html/tabs.css | 60 + doc/api/html/tail_8hpp.html | 143 + doc/api/html/tail_8hpp_source.html | 156 + doc/api/html/term__grammar_8hpp.html | 138 + doc/api/html/term__grammar_8hpp_source.html | 219 + doc/api/html/term__grammar__def_8hpp.html | 378 + .../html/term__grammar__def_8hpp_source.html | 673 + doc/api/html/term__grammar__inst_8cpp.html | 123 + .../html/term__grammar__inst_8cpp_source.html | 115 + doc/api/html/to__fvar_8hpp.html | 170 + doc/api/html/to__fvar_8hpp_source.html | 252 + doc/api/html/to__var_8hpp.html | 154 + doc/api/html/to__var_8hpp_source.html | 157 + doc/api/html/to__vector_8hpp.html | 130 + doc/api/html/to__vector_8hpp_source.html | 125 + doc/api/html/trace_8hpp.html | 130 + doc/api/html/trace_8hpp_source.html | 123 + doc/api/html/transform_8hpp.html | 403 + doc/api/html/transform_8hpp_source.html | 1073 + doc/api/html/transpose_8hpp.html | 129 + doc/api/html/transpose_8hpp_source.html | 125 + doc/api/html/trigamma_8hpp.html | 129 + doc/api/html/trigamma_8hpp_source.html | 182 + doc/api/html/uniform_8hpp.html | 158 + doc/api/html/uniform_8hpp_source.html | 473 + doc/api/html/unit__e__metric_8hpp.html | 131 + doc/api/html/unit__e__metric_8hpp_source.html | 167 + doc/api/html/unit__e__nuts_8hpp.html | 131 + doc/api/html/unit__e__nuts_8hpp_source.html | 149 + doc/api/html/unit__e__point_8hpp.html | 128 + doc/api/html/unit__e__point_8hpp_source.html | 132 + doc/api/html/unit__e__static__hmc_8hpp.html | 131 + .../unit__e__static__hmc_8hpp_source.html | 144 + doc/api/html/univariate_2continuous_8hpp.html | 130 + .../univariate_2continuous_8hpp_source.html | 134 + doc/api/html/univariate_2discrete_8hpp.html | 116 + .../univariate_2discrete_8hpp_source.html | 119 + doc/api/html/univariate_8hpp.html | 111 + doc/api/html/univariate_8hpp_source.html | 114 + doc/api/html/unvalued__argument_8hpp.html | 130 + .../html/unvalued__argument_8hpp_source.html | 167 + doc/api/html/v__vari_8hpp.html | 128 + doc/api/html/v__vari_8hpp_source.html | 128 + .../html/validate__column__index_8hpp.html | 131 + .../validate__column__index_8hpp_source.html | 132 + doc/api/html/validate__greater_8hpp.html | 130 + .../html/validate__greater_8hpp_source.html | 133 + .../validate__greater__or__equal_8hpp.html | 130 + ...idate__greater__or__equal_8hpp_source.html | 133 + doc/api/html/validate__less_8hpp.html | 130 + doc/api/html/validate__less_8hpp_source.html | 133 + .../html/validate__less__or__equal_8hpp.html | 130 + ...validate__less__or__equal_8hpp_source.html | 133 + .../html/validate__matching__dims_8hpp.html | 131 + .../validate__matching__dims_8hpp_source.html | 134 + .../html/validate__matching__sizes_8hpp.html | 144 + ...validate__matching__sizes_8hpp_source.html | 194 + .../html/validate__multiplicable_8hpp.html | 131 + .../validate__multiplicable_8hpp_source.html | 134 + .../validate__non__negative__index_8hpp.html | 129 + ...ate__non__negative__index_8hpp_source.html | 134 + .../validate__non__negative__rep_8hpp.html | 131 + ...idate__non__negative__rep_8hpp_source.html | 131 + .../html/validate__nonzero__size_8hpp.html | 130 + .../validate__nonzero__size_8hpp_source.html | 128 + doc/api/html/validate__row__index_8hpp.html | 132 + .../validate__row__index_8hpp_source.html | 133 + doc/api/html/validate__square_8hpp.html | 131 + .../html/validate__square_8hpp_source.html | 132 + .../validate__std__vector__index_8hpp.html | 131 + ...idate__std__vector__index_8hpp_source.html | 133 + doc/api/html/validate__symmetric_8hpp.html | 132 + .../html/validate__symmetric_8hpp_source.html | 140 + doc/api/html/validate__vector_8hpp.html | 131 + .../html/validate__vector_8hpp_source.html | 131 + doc/api/html/valued__argument_8hpp.html | 128 + .../html/valued__argument_8hpp_source.html | 161 + doc/api/html/var_8hpp.html | 139 + doc/api/html/var_8hpp_source.html | 253 + doc/api/html/var__adaptation_8hpp.html | 131 + doc/api/html/var__adaptation_8hpp_source.html | 163 + doc/api/html/var__context_8hpp.html | 132 + doc/api/html/var__context_8hpp_source.html | 294 + doc/api/html/var__decls__grammar_8hpp.html | 134 + .../html/var__decls__grammar_8hpp_source.html | 259 + .../html/var__decls__grammar__def_8hpp.html | 161 + .../var__decls__grammar__def_8hpp_source.html | 1017 + .../html/var__decls__grammar__inst_8cpp.html | 123 + ...var__decls__grammar__inst_8cpp_source.html | 115 + doc/api/html/var__stack_8cpp.html | 155 + doc/api/html/var__stack_8cpp_source.html | 126 + doc/api/html/var__stack_8hpp.html | 140 + doc/api/html/var__stack_8hpp_source.html | 151 + doc/api/html/vari_8hpp.html | 131 + doc/api/html/vari_8hpp_source.html | 166 + doc/api/html/vd__vari_8hpp.html | 128 + doc/api/html/vd__vari_8hpp_source.html | 130 + doc/api/html/vdd__vari_8hpp.html | 128 + doc/api/html/vdd__vari_8hpp_source.html | 132 + doc/api/html/vdv__vari_8hpp.html | 128 + doc/api/html/vdv__vari_8hpp_source.html | 132 + doc/api/html/vector__vari_8hpp.html | 130 + doc/api/html/vector__vari_8hpp_source.html | 140 + doc/api/html/version_8hpp.html | 132 + doc/api/html/version_8hpp_source.html | 123 + doc/api/html/von__mises_8hpp.html | 139 + doc/api/html/von__mises_8hpp_source.html | 232 + doc/api/html/vv__vari_8hpp.html | 128 + doc/api/html/vv__vari_8hpp_source.html | 130 + doc/api/html/vvd__vari_8hpp.html | 128 + doc/api/html/vvd__vari_8hpp_source.html | 132 + doc/api/html/vvv__vari_8hpp.html | 128 + doc/api/html/vvv__vari_8hpp_source.html | 132 + doc/api/html/weibull_8hpp.html | 157 + doc/api/html/weibull_8hpp_source.html | 474 + .../html/welford__covar__estimator_8hpp.html | 129 + ...welford__covar__estimator_8hpp_source.html | 165 + .../html/welford__var__estimator_8hpp.html | 129 + .../welford__var__estimator_8hpp_source.html | 165 + doc/api/html/whitespace__grammar_8hpp.html | 128 + .../html/whitespace__grammar_8hpp_source.html | 133 + .../html/whitespace__grammar__def_8hpp.html | 123 + .../whitespace__grammar__def_8hpp_source.html | 142 + .../html/whitespace__grammar__inst_8cpp.html | 123 + ...whitespace__grammar__inst_8cpp_source.html | 115 + doc/api/html/windowed__adaptation_8hpp.html | 130 + .../windowed__adaptation_8hpp_source.html | 234 + doc/api/html/wishart_8hpp.html | 155 + doc/api/html/wishart_8hpp_source.html | 251 + doc/api/html/writer_8hpp.html | 130 + doc/api/html/writer_8hpp_source.html | 332 + doc/stan-reference-2.2.0.pdf | Bin 0 -> 1553572 bytes 3089 files changed, 516488 insertions(+) create mode 100644 doc/api/html/_eigen_8dox.html create mode 100644 doc/api/html/_eigen_8hpp.html create mode 100644 doc/api/html/_eigen_8hpp_source.html create mode 100644 doc/api/html/_eigen___num_traits_8hpp.html create mode 100644 doc/api/html/_eigen___num_traits_8hpp_source.html create mode 100644 doc/api/html/_l_d_l_t__alloc_8hpp.html create mode 100644 doc/api/html/_l_d_l_t__alloc_8hpp_source.html create mode 100644 doc/api/html/accumulator_8hpp.html create mode 100644 doc/api/html/accumulator_8hpp_source.html create mode 100644 doc/api/html/adapt__dense__e__nuts_8hpp.html create mode 100644 doc/api/html/adapt__dense__e__nuts_8hpp_source.html create mode 100644 doc/api/html/adapt__dense__e__static__hmc_8hpp.html create mode 100644 doc/api/html/adapt__dense__e__static__hmc_8hpp_source.html create mode 100644 doc/api/html/adapt__diag__e__nuts_8hpp.html create mode 100644 doc/api/html/adapt__diag__e__nuts_8hpp_source.html create mode 100644 doc/api/html/adapt__diag__e__static__hmc_8hpp.html create mode 100644 doc/api/html/adapt__diag__e__static__hmc_8hpp_source.html create mode 100644 doc/api/html/adapt__unit__e__nuts_8hpp.html create mode 100644 doc/api/html/adapt__unit__e__nuts_8hpp_source.html create mode 100644 doc/api/html/adapt__unit__e__static__hmc_8hpp.html create mode 100644 doc/api/html/adapt__unit__e__static__hmc_8hpp_source.html create mode 100644 doc/api/html/add_8hpp.html create mode 100644 doc/api/html/add_8hpp_source.html create mode 100644 doc/api/html/agrad_2fwd_2functions_2_phi_8hpp.html create mode 100644 doc/api/html/agrad_2fwd_2functions_2_phi_8hpp_source.html create mode 100644 doc/api/html/agrad_2fwd_2functions_2abs_8hpp.html create mode 100644 doc/api/html/agrad_2fwd_2functions_2abs_8hpp_source.html create mode 100644 doc/api/html/agrad_2fwd_2functions_2bessel__first__kind_8hpp.html create mode 100644 doc/api/html/agrad_2fwd_2functions_2bessel__first__kind_8hpp_source.html create mode 100644 doc/api/html/agrad_2fwd_2functions_2bessel__second__kind_8hpp.html create mode 100644 doc/api/html/agrad_2fwd_2functions_2bessel__second__kind_8hpp_source.html create mode 100644 doc/api/html/agrad_2fwd_2functions_2binary__log__loss_8hpp.html create mode 100644 doc/api/html/agrad_2fwd_2functions_2binary__log__loss_8hpp_source.html create mode 100644 doc/api/html/agrad_2fwd_2functions_2binomial__coefficient__log_8hpp.html create mode 100644 doc/api/html/agrad_2fwd_2functions_2binomial__coefficient__log_8hpp_source.html create mode 100644 doc/api/html/agrad_2fwd_2functions_2digamma_8hpp.html create mode 100644 doc/api/html/agrad_2fwd_2functions_2digamma_8hpp_source.html create mode 100644 doc/api/html/agrad_2fwd_2functions_2exp2_8hpp.html create mode 100644 doc/api/html/agrad_2fwd_2functions_2exp2_8hpp_source.html create mode 100644 doc/api/html/agrad_2fwd_2functions_2exp_8hpp.html create mode 100644 doc/api/html/agrad_2fwd_2functions_2exp_8hpp_source.html create mode 100644 doc/api/html/agrad_2fwd_2functions_2falling__factorial_8hpp.html create mode 100644 doc/api/html/agrad_2fwd_2functions_2falling__factorial_8hpp_source.html create mode 100644 doc/api/html/agrad_2fwd_2functions_2fdim_8hpp.html create mode 100644 doc/api/html/agrad_2fwd_2functions_2fdim_8hpp_source.html create mode 100644 doc/api/html/agrad_2fwd_2functions_2fma_8hpp.html create mode 100644 doc/api/html/agrad_2fwd_2functions_2fma_8hpp_source.html create mode 100644 doc/api/html/agrad_2fwd_2functions_2gamma__p_8hpp.html create mode 100644 doc/api/html/agrad_2fwd_2functions_2gamma__p_8hpp_source.html create mode 100644 doc/api/html/agrad_2fwd_2functions_2gamma__q_8hpp.html create mode 100644 doc/api/html/agrad_2fwd_2functions_2gamma__q_8hpp_source.html create mode 100644 doc/api/html/agrad_2fwd_2functions_2inv_8hpp.html create mode 100644 doc/api/html/agrad_2fwd_2functions_2inv_8hpp_source.html create mode 100644 doc/api/html/agrad_2fwd_2functions_2inv__cloglog_8hpp.html create mode 100644 doc/api/html/agrad_2fwd_2functions_2inv__cloglog_8hpp_source.html create mode 100644 doc/api/html/agrad_2fwd_2functions_2inv__logit_8hpp.html create mode 100644 doc/api/html/agrad_2fwd_2functions_2inv__logit_8hpp_source.html create mode 100644 doc/api/html/agrad_2fwd_2functions_2inv__sqrt_8hpp.html create mode 100644 doc/api/html/agrad_2fwd_2functions_2inv__sqrt_8hpp_source.html create mode 100644 doc/api/html/agrad_2fwd_2functions_2inv__square_8hpp.html create mode 100644 doc/api/html/agrad_2fwd_2functions_2inv__square_8hpp_source.html create mode 100644 doc/api/html/agrad_2fwd_2functions_2lbeta_8hpp.html create mode 100644 doc/api/html/agrad_2fwd_2functions_2lbeta_8hpp_source.html create mode 100644 doc/api/html/agrad_2fwd_2functions_2lgamma_8hpp.html create mode 100644 doc/api/html/agrad_2fwd_2functions_2lgamma_8hpp_source.html create mode 100644 doc/api/html/agrad_2fwd_2functions_2lmgamma_8hpp.html create mode 100644 doc/api/html/agrad_2fwd_2functions_2lmgamma_8hpp_source.html create mode 100644 doc/api/html/agrad_2fwd_2functions_2log1m_8hpp.html create mode 100644 doc/api/html/agrad_2fwd_2functions_2log1m_8hpp_source.html create mode 100644 doc/api/html/agrad_2fwd_2functions_2log1m__exp_8hpp.html create mode 100644 doc/api/html/agrad_2fwd_2functions_2log1m__exp_8hpp_source.html create mode 100644 doc/api/html/agrad_2fwd_2functions_2log1m__inv__logit_8hpp.html create mode 100644 doc/api/html/agrad_2fwd_2functions_2log1m__inv__logit_8hpp_source.html create mode 100644 doc/api/html/agrad_2fwd_2functions_2log1p_8hpp.html create mode 100644 doc/api/html/agrad_2fwd_2functions_2log1p_8hpp_source.html create mode 100644 doc/api/html/agrad_2fwd_2functions_2log1p__exp_8hpp.html create mode 100644 doc/api/html/agrad_2fwd_2functions_2log1p__exp_8hpp_source.html create mode 100644 doc/api/html/agrad_2fwd_2functions_2log2_8hpp.html create mode 100644 doc/api/html/agrad_2fwd_2functions_2log2_8hpp_source.html create mode 100644 doc/api/html/agrad_2fwd_2functions_2log_8hpp.html create mode 100644 doc/api/html/agrad_2fwd_2functions_2log_8hpp_source.html create mode 100644 doc/api/html/agrad_2fwd_2functions_2log__diff__exp_8hpp.html create mode 100644 doc/api/html/agrad_2fwd_2functions_2log__diff__exp_8hpp_source.html create mode 100644 doc/api/html/agrad_2fwd_2functions_2log__falling__factorial_8hpp.html create mode 100644 doc/api/html/agrad_2fwd_2functions_2log__falling__factorial_8hpp_source.html create mode 100644 doc/api/html/agrad_2fwd_2functions_2log__inv__logit_8hpp.html create mode 100644 doc/api/html/agrad_2fwd_2functions_2log__inv__logit_8hpp_source.html create mode 100644 doc/api/html/agrad_2fwd_2functions_2log__rising__factorial_8hpp.html create mode 100644 doc/api/html/agrad_2fwd_2functions_2log__rising__factorial_8hpp_source.html create mode 100644 doc/api/html/agrad_2fwd_2functions_2log__sum__exp_8hpp.html create mode 100644 doc/api/html/agrad_2fwd_2functions_2log__sum__exp_8hpp_source.html create mode 100644 doc/api/html/agrad_2fwd_2functions_2logit_8hpp.html create mode 100644 doc/api/html/agrad_2fwd_2functions_2logit_8hpp_source.html create mode 100644 doc/api/html/agrad_2fwd_2functions_2modified__bessel__first__kind_8hpp.html create mode 100644 doc/api/html/agrad_2fwd_2functions_2modified__bessel__first__kind_8hpp_source.html create mode 100644 doc/api/html/agrad_2fwd_2functions_2modified__bessel__second__kind_8hpp.html create mode 100644 doc/api/html/agrad_2fwd_2functions_2modified__bessel__second__kind_8hpp_source.html create mode 100644 doc/api/html/agrad_2fwd_2functions_2multiply__log_8hpp.html create mode 100644 doc/api/html/agrad_2fwd_2functions_2multiply__log_8hpp_source.html create mode 100644 doc/api/html/agrad_2fwd_2functions_2owens__t_8hpp.html create mode 100644 doc/api/html/agrad_2fwd_2functions_2owens__t_8hpp_source.html create mode 100644 doc/api/html/agrad_2fwd_2functions_2rising__factorial_8hpp.html create mode 100644 doc/api/html/agrad_2fwd_2functions_2rising__factorial_8hpp_source.html create mode 100644 doc/api/html/agrad_2fwd_2functions_2square_8hpp.html create mode 100644 doc/api/html/agrad_2fwd_2functions_2square_8hpp_source.html create mode 100644 doc/api/html/agrad_2fwd_2functions_8hpp.html create mode 100644 doc/api/html/agrad_2fwd_2functions_8hpp_source.html create mode 100644 doc/api/html/agrad_2fwd_2matrix_2columns__dot__product_8hpp.html create mode 100644 doc/api/html/agrad_2fwd_2matrix_2columns__dot__product_8hpp_source.html create mode 100644 doc/api/html/agrad_2fwd_2matrix_2columns__dot__self_8hpp.html create mode 100644 doc/api/html/agrad_2fwd_2matrix_2columns__dot__self_8hpp_source.html create mode 100644 doc/api/html/agrad_2fwd_2matrix_2crossprod_8hpp.html create mode 100644 doc/api/html/agrad_2fwd_2matrix_2crossprod_8hpp_source.html create mode 100644 doc/api/html/agrad_2fwd_2matrix_2determinant_8hpp.html create mode 100644 doc/api/html/agrad_2fwd_2matrix_2determinant_8hpp_source.html create mode 100644 doc/api/html/agrad_2fwd_2matrix_2divide_8hpp.html create mode 100644 doc/api/html/agrad_2fwd_2matrix_2divide_8hpp_source.html create mode 100644 doc/api/html/agrad_2fwd_2matrix_2dot__product_8hpp.html create mode 100644 doc/api/html/agrad_2fwd_2matrix_2dot__product_8hpp_source.html create mode 100644 doc/api/html/agrad_2fwd_2matrix_2dot__self_8hpp.html create mode 100644 doc/api/html/agrad_2fwd_2matrix_2dot__self_8hpp_source.html create mode 100644 doc/api/html/agrad_2fwd_2matrix_2inverse_8hpp.html create mode 100644 doc/api/html/agrad_2fwd_2matrix_2inverse_8hpp_source.html create mode 100644 doc/api/html/agrad_2fwd_2matrix_2log__determinant_8hpp.html create mode 100644 doc/api/html/agrad_2fwd_2matrix_2log__determinant_8hpp_source.html create mode 100644 doc/api/html/agrad_2fwd_2matrix_2log__softmax_8hpp.html create mode 100644 doc/api/html/agrad_2fwd_2matrix_2log__softmax_8hpp_source.html create mode 100644 doc/api/html/agrad_2fwd_2matrix_2log__sum__exp_8hpp.html create mode 100644 doc/api/html/agrad_2fwd_2matrix_2log__sum__exp_8hpp_source.html create mode 100644 doc/api/html/agrad_2fwd_2matrix_2mdivide__left_8hpp.html create mode 100644 doc/api/html/agrad_2fwd_2matrix_2mdivide__left_8hpp_source.html create mode 100644 doc/api/html/agrad_2fwd_2matrix_2mdivide__left__tri__low_8hpp.html create mode 100644 doc/api/html/agrad_2fwd_2matrix_2mdivide__left__tri__low_8hpp_source.html create mode 100644 doc/api/html/agrad_2fwd_2matrix_2mdivide__right_8hpp.html create mode 100644 doc/api/html/agrad_2fwd_2matrix_2mdivide__right_8hpp_source.html create mode 100644 doc/api/html/agrad_2fwd_2matrix_2mdivide__right__tri__low_8hpp.html create mode 100644 doc/api/html/agrad_2fwd_2matrix_2mdivide__right__tri__low_8hpp_source.html create mode 100644 doc/api/html/agrad_2fwd_2matrix_2multiply_8hpp.html create mode 100644 doc/api/html/agrad_2fwd_2matrix_2multiply_8hpp_source.html create mode 100644 doc/api/html/agrad_2fwd_2matrix_2multiply__lower__tri__self__transpose_8hpp.html create mode 100644 doc/api/html/agrad_2fwd_2matrix_2multiply__lower__tri__self__transpose_8hpp_source.html create mode 100644 doc/api/html/agrad_2fwd_2matrix_2rows__dot__product_8hpp.html create mode 100644 doc/api/html/agrad_2fwd_2matrix_2rows__dot__product_8hpp_source.html create mode 100644 doc/api/html/agrad_2fwd_2matrix_2rows__dot__self_8hpp.html create mode 100644 doc/api/html/agrad_2fwd_2matrix_2rows__dot__self_8hpp_source.html create mode 100644 doc/api/html/agrad_2fwd_2matrix_2softmax_8hpp.html create mode 100644 doc/api/html/agrad_2fwd_2matrix_2softmax_8hpp_source.html create mode 100644 doc/api/html/agrad_2fwd_2matrix_2sort_8hpp.html create mode 100644 doc/api/html/agrad_2fwd_2matrix_2sort_8hpp_source.html create mode 100644 doc/api/html/agrad_2fwd_2matrix_2sum_8hpp.html create mode 100644 doc/api/html/agrad_2fwd_2matrix_2sum_8hpp_source.html create mode 100644 doc/api/html/agrad_2fwd_2matrix_2tcrossprod_8hpp.html create mode 100644 doc/api/html/agrad_2fwd_2matrix_2tcrossprod_8hpp_source.html create mode 100644 doc/api/html/agrad_2fwd_2matrix_2typedefs_8hpp.html create mode 100644 doc/api/html/agrad_2fwd_2matrix_2typedefs_8hpp_source.html create mode 100644 doc/api/html/agrad_2fwd_2matrix_8hpp.html create mode 100644 doc/api/html/agrad_2fwd_2matrix_8hpp_source.html create mode 100644 doc/api/html/agrad_2fwd_2prob_2univariate_2continuous_2normal_8hpp.html create mode 100644 doc/api/html/agrad_2fwd_2prob_2univariate_2continuous_2normal_8hpp_source.html create mode 100644 doc/api/html/agrad_2rev_2error__handling_2matrix_2check__pos__definite_8hpp.html create mode 100644 doc/api/html/agrad_2rev_2error__handling_2matrix_2check__pos__definite_8hpp_source.html create mode 100644 doc/api/html/agrad_2rev_2error__handling_2matrix_8hpp.html create mode 100644 doc/api/html/agrad_2rev_2error__handling_2matrix_8hpp_source.html create mode 100644 doc/api/html/agrad_2rev_2error__handling_8hpp.html create mode 100644 doc/api/html/agrad_2rev_2error__handling_8hpp_source.html create mode 100644 doc/api/html/agrad_2rev_2functions_2_phi_8hpp.html create mode 100644 doc/api/html/agrad_2rev_2functions_2_phi_8hpp_source.html create mode 100644 doc/api/html/agrad_2rev_2functions_2_phi__approx_8hpp.html create mode 100644 doc/api/html/agrad_2rev_2functions_2_phi__approx_8hpp_source.html create mode 100644 doc/api/html/agrad_2rev_2functions_2abs_8hpp.html create mode 100644 doc/api/html/agrad_2rev_2functions_2abs_8hpp_source.html create mode 100644 doc/api/html/agrad_2rev_2functions_2as__bool_8hpp.html create mode 100644 doc/api/html/agrad_2rev_2functions_2as__bool_8hpp_source.html create mode 100644 doc/api/html/agrad_2rev_2functions_2bessel__first__kind_8hpp.html create mode 100644 doc/api/html/agrad_2rev_2functions_2bessel__first__kind_8hpp_source.html create mode 100644 doc/api/html/agrad_2rev_2functions_2bessel__second__kind_8hpp.html create mode 100644 doc/api/html/agrad_2rev_2functions_2bessel__second__kind_8hpp_source.html create mode 100644 doc/api/html/agrad_2rev_2functions_2binary__log__loss_8hpp.html create mode 100644 doc/api/html/agrad_2rev_2functions_2binary__log__loss_8hpp_source.html create mode 100644 doc/api/html/agrad_2rev_2functions_2digamma_8hpp.html create mode 100644 doc/api/html/agrad_2rev_2functions_2digamma_8hpp_source.html create mode 100644 doc/api/html/agrad_2rev_2functions_2exp2_8hpp.html create mode 100644 doc/api/html/agrad_2rev_2functions_2exp2_8hpp_source.html create mode 100644 doc/api/html/agrad_2rev_2functions_2exp_8hpp.html create mode 100644 doc/api/html/agrad_2rev_2functions_2exp_8hpp_source.html create mode 100644 doc/api/html/agrad_2rev_2functions_2falling__factorial_8hpp.html create mode 100644 doc/api/html/agrad_2rev_2functions_2falling__factorial_8hpp_source.html create mode 100644 doc/api/html/agrad_2rev_2functions_2fdim_8hpp.html create mode 100644 doc/api/html/agrad_2rev_2functions_2fdim_8hpp_source.html create mode 100644 doc/api/html/agrad_2rev_2functions_2fma_8hpp.html create mode 100644 doc/api/html/agrad_2rev_2functions_2fma_8hpp_source.html create mode 100644 doc/api/html/agrad_2rev_2functions_2gamma__p_8hpp.html create mode 100644 doc/api/html/agrad_2rev_2functions_2gamma__p_8hpp_source.html create mode 100644 doc/api/html/agrad_2rev_2functions_2gamma__q_8hpp.html create mode 100644 doc/api/html/agrad_2rev_2functions_2gamma__q_8hpp_source.html create mode 100644 doc/api/html/agrad_2rev_2functions_2ibeta_8hpp.html create mode 100644 doc/api/html/agrad_2rev_2functions_2ibeta_8hpp_source.html create mode 100644 doc/api/html/agrad_2rev_2functions_2if__else_8hpp.html create mode 100644 doc/api/html/agrad_2rev_2functions_2if__else_8hpp_source.html create mode 100644 doc/api/html/agrad_2rev_2functions_2inv_8hpp.html create mode 100644 doc/api/html/agrad_2rev_2functions_2inv_8hpp_source.html create mode 100644 doc/api/html/agrad_2rev_2functions_2inv__cloglog_8hpp.html create mode 100644 doc/api/html/agrad_2rev_2functions_2inv__cloglog_8hpp_source.html create mode 100644 doc/api/html/agrad_2rev_2functions_2inv__logit_8hpp.html create mode 100644 doc/api/html/agrad_2rev_2functions_2inv__logit_8hpp_source.html create mode 100644 doc/api/html/agrad_2rev_2functions_2inv__sqrt_8hpp.html create mode 100644 doc/api/html/agrad_2rev_2functions_2inv__sqrt_8hpp_source.html create mode 100644 doc/api/html/agrad_2rev_2functions_2inv__square_8hpp.html create mode 100644 doc/api/html/agrad_2rev_2functions_2inv__square_8hpp_source.html create mode 100644 doc/api/html/agrad_2rev_2functions_2is__uninitialized_8hpp.html create mode 100644 doc/api/html/agrad_2rev_2functions_2is__uninitialized_8hpp_source.html create mode 100644 doc/api/html/agrad_2rev_2functions_2lgamma_8hpp.html create mode 100644 doc/api/html/agrad_2rev_2functions_2lgamma_8hpp_source.html create mode 100644 doc/api/html/agrad_2rev_2functions_2lmgamma_8hpp.html create mode 100644 doc/api/html/agrad_2rev_2functions_2lmgamma_8hpp_source.html create mode 100644 doc/api/html/agrad_2rev_2functions_2log1m_8hpp.html create mode 100644 doc/api/html/agrad_2rev_2functions_2log1m_8hpp_source.html create mode 100644 doc/api/html/agrad_2rev_2functions_2log1m__exp_8hpp.html create mode 100644 doc/api/html/agrad_2rev_2functions_2log1m__exp_8hpp_source.html create mode 100644 doc/api/html/agrad_2rev_2functions_2log1p_8hpp.html create mode 100644 doc/api/html/agrad_2rev_2functions_2log1p_8hpp_source.html create mode 100644 doc/api/html/agrad_2rev_2functions_2log1p__exp_8hpp.html create mode 100644 doc/api/html/agrad_2rev_2functions_2log1p__exp_8hpp_source.html create mode 100644 doc/api/html/agrad_2rev_2functions_2log2_8hpp.html create mode 100644 doc/api/html/agrad_2rev_2functions_2log2_8hpp_source.html create mode 100644 doc/api/html/agrad_2rev_2functions_2log_8hpp.html create mode 100644 doc/api/html/agrad_2rev_2functions_2log_8hpp_source.html create mode 100644 doc/api/html/agrad_2rev_2functions_2log__diff__exp_8hpp.html create mode 100644 doc/api/html/agrad_2rev_2functions_2log__diff__exp_8hpp_source.html create mode 100644 doc/api/html/agrad_2rev_2functions_2log__falling__factorial_8hpp.html create mode 100644 doc/api/html/agrad_2rev_2functions_2log__falling__factorial_8hpp_source.html create mode 100644 doc/api/html/agrad_2rev_2functions_2log__rising__factorial_8hpp.html create mode 100644 doc/api/html/agrad_2rev_2functions_2log__rising__factorial_8hpp_source.html create mode 100644 doc/api/html/agrad_2rev_2functions_2log__sum__exp_8hpp.html create mode 100644 doc/api/html/agrad_2rev_2functions_2log__sum__exp_8hpp_source.html create mode 100644 doc/api/html/agrad_2rev_2functions_2modified__bessel__first__kind_8hpp.html create mode 100644 doc/api/html/agrad_2rev_2functions_2modified__bessel__first__kind_8hpp_source.html create mode 100644 doc/api/html/agrad_2rev_2functions_2modified__bessel__second__kind_8hpp.html create mode 100644 doc/api/html/agrad_2rev_2functions_2modified__bessel__second__kind_8hpp_source.html create mode 100644 doc/api/html/agrad_2rev_2functions_2multiply__log_8hpp.html create mode 100644 doc/api/html/agrad_2rev_2functions_2multiply__log_8hpp_source.html create mode 100644 doc/api/html/agrad_2rev_2functions_2owens__t_8hpp.html create mode 100644 doc/api/html/agrad_2rev_2functions_2owens__t_8hpp_source.html create mode 100644 doc/api/html/agrad_2rev_2functions_2rising__factorial_8hpp.html create mode 100644 doc/api/html/agrad_2rev_2functions_2rising__factorial_8hpp_source.html create mode 100644 doc/api/html/agrad_2rev_2functions_2square_8hpp.html create mode 100644 doc/api/html/agrad_2rev_2functions_2square_8hpp_source.html create mode 100644 doc/api/html/agrad_2rev_2functions_2step_8hpp.html create mode 100644 doc/api/html/agrad_2rev_2functions_2step_8hpp_source.html create mode 100644 doc/api/html/agrad_2rev_2functions_2value__of_8hpp.html create mode 100644 doc/api/html/agrad_2rev_2functions_2value__of_8hpp_source.html create mode 100644 doc/api/html/agrad_2rev_2functions_8hpp.html create mode 100644 doc/api/html/agrad_2rev_2functions_8hpp_source.html create mode 100644 doc/api/html/agrad_2rev_2matrix_2_l_d_l_t__factor_8hpp.html create mode 100644 doc/api/html/agrad_2rev_2matrix_2_l_d_l_t__factor_8hpp_source.html create mode 100644 doc/api/html/agrad_2rev_2matrix_2crossprod_8hpp.html create mode 100644 doc/api/html/agrad_2rev_2matrix_2crossprod_8hpp_source.html create mode 100644 doc/api/html/agrad_2rev_2matrix_2determinant_8hpp.html create mode 100644 doc/api/html/agrad_2rev_2matrix_2determinant_8hpp_source.html create mode 100644 doc/api/html/agrad_2rev_2matrix_2divide_8hpp.html create mode 100644 doc/api/html/agrad_2rev_2matrix_2divide_8hpp_source.html create mode 100644 doc/api/html/agrad_2rev_2matrix_2dot__product_8hpp.html create mode 100644 doc/api/html/agrad_2rev_2matrix_2dot__product_8hpp_source.html create mode 100644 doc/api/html/agrad_2rev_2matrix_2dot__self_8hpp.html create mode 100644 doc/api/html/agrad_2rev_2matrix_2dot__self_8hpp_source.html create mode 100644 doc/api/html/agrad_2rev_2matrix_2log__determinant_8hpp.html create mode 100644 doc/api/html/agrad_2rev_2matrix_2log__determinant_8hpp_source.html create mode 100644 doc/api/html/agrad_2rev_2matrix_2log__determinant__ldlt_8hpp.html create mode 100644 doc/api/html/agrad_2rev_2matrix_2log__determinant__ldlt_8hpp_source.html create mode 100644 doc/api/html/agrad_2rev_2matrix_2log__determinant__spd_8hpp.html create mode 100644 doc/api/html/agrad_2rev_2matrix_2log__determinant__spd_8hpp_source.html create mode 100644 doc/api/html/agrad_2rev_2matrix_2log__softmax_8hpp.html create mode 100644 doc/api/html/agrad_2rev_2matrix_2log__softmax_8hpp_source.html create mode 100644 doc/api/html/agrad_2rev_2matrix_2log__sum__exp_8hpp.html create mode 100644 doc/api/html/agrad_2rev_2matrix_2log__sum__exp_8hpp_source.html create mode 100644 doc/api/html/agrad_2rev_2matrix_2mdivide__left_8hpp.html create mode 100644 doc/api/html/agrad_2rev_2matrix_2mdivide__left_8hpp_source.html create mode 100644 doc/api/html/agrad_2rev_2matrix_2mdivide__left__ldlt_8hpp.html create mode 100644 doc/api/html/agrad_2rev_2matrix_2mdivide__left__ldlt_8hpp_source.html create mode 100644 doc/api/html/agrad_2rev_2matrix_2mdivide__left__spd_8hpp.html create mode 100644 doc/api/html/agrad_2rev_2matrix_2mdivide__left__spd_8hpp_source.html create mode 100644 doc/api/html/agrad_2rev_2matrix_2mdivide__left__tri_8hpp.html create mode 100644 doc/api/html/agrad_2rev_2matrix_2mdivide__left__tri_8hpp_source.html create mode 100644 doc/api/html/agrad_2rev_2matrix_2multiply_8hpp.html create mode 100644 doc/api/html/agrad_2rev_2matrix_2multiply_8hpp_source.html create mode 100644 doc/api/html/agrad_2rev_2matrix_2multiply__lower__tri__self__transpose_8hpp.html create mode 100644 doc/api/html/agrad_2rev_2matrix_2multiply__lower__tri__self__transpose_8hpp_source.html create mode 100644 doc/api/html/agrad_2rev_2matrix_2quad__form_8hpp.html create mode 100644 doc/api/html/agrad_2rev_2matrix_2quad__form_8hpp_source.html create mode 100644 doc/api/html/agrad_2rev_2matrix_2sd_8hpp.html create mode 100644 doc/api/html/agrad_2rev_2matrix_2sd_8hpp_source.html create mode 100644 doc/api/html/agrad_2rev_2matrix_2softmax_8hpp.html create mode 100644 doc/api/html/agrad_2rev_2matrix_2softmax_8hpp_source.html create mode 100644 doc/api/html/agrad_2rev_2matrix_2sort_8hpp.html create mode 100644 doc/api/html/agrad_2rev_2matrix_2sort_8hpp_source.html create mode 100644 doc/api/html/agrad_2rev_2matrix_2squared__distance_8hpp.html create mode 100644 doc/api/html/agrad_2rev_2matrix_2squared__distance_8hpp_source.html create mode 100644 doc/api/html/agrad_2rev_2matrix_2stan__print_8hpp.html create mode 100644 doc/api/html/agrad_2rev_2matrix_2stan__print_8hpp_source.html create mode 100644 doc/api/html/agrad_2rev_2matrix_2sum_8hpp.html create mode 100644 doc/api/html/agrad_2rev_2matrix_2sum_8hpp_source.html create mode 100644 doc/api/html/agrad_2rev_2matrix_2tcrossprod_8hpp.html create mode 100644 doc/api/html/agrad_2rev_2matrix_2tcrossprod_8hpp_source.html create mode 100644 doc/api/html/agrad_2rev_2matrix_2trace__gen__inv__quad__form__ldlt_8hpp.html create mode 100644 doc/api/html/agrad_2rev_2matrix_2trace__gen__inv__quad__form__ldlt_8hpp_source.html create mode 100644 doc/api/html/agrad_2rev_2matrix_2trace__gen__quad__form_8hpp.html create mode 100644 doc/api/html/agrad_2rev_2matrix_2trace__gen__quad__form_8hpp_source.html create mode 100644 doc/api/html/agrad_2rev_2matrix_2trace__inv__quad__form__ldlt_8hpp.html create mode 100644 doc/api/html/agrad_2rev_2matrix_2trace__inv__quad__form__ldlt_8hpp_source.html create mode 100644 doc/api/html/agrad_2rev_2matrix_2trace__quad__form_8hpp.html create mode 100644 doc/api/html/agrad_2rev_2matrix_2trace__quad__form_8hpp_source.html create mode 100644 doc/api/html/agrad_2rev_2matrix_2typedefs_8hpp.html create mode 100644 doc/api/html/agrad_2rev_2matrix_2typedefs_8hpp_source.html create mode 100644 doc/api/html/agrad_2rev_2matrix_2value__of_8hpp.html create mode 100644 doc/api/html/agrad_2rev_2matrix_2value__of_8hpp_source.html create mode 100644 doc/api/html/agrad_2rev_2matrix_2variance_8hpp.html create mode 100644 doc/api/html/agrad_2rev_2matrix_2variance_8hpp_source.html create mode 100644 doc/api/html/agrad_2rev_2matrix_8hpp.html create mode 100644 doc/api/html/agrad_2rev_2matrix_8hpp_source.html create mode 100644 doc/api/html/agrad_8hpp.html create mode 100644 doc/api/html/agrad_8hpp_source.html create mode 100644 doc/api/html/agrad__thread__safe_8hpp.html create mode 100644 doc/api/html/agrad__thread__safe_8hpp_source.html create mode 100644 doc/api/html/annotated.html create mode 100644 doc/api/html/arg__adapt_8hpp.html create mode 100644 doc/api/html/arg__adapt_8hpp_source.html create mode 100644 doc/api/html/arg__adapt__delta_8hpp.html create mode 100644 doc/api/html/arg__adapt__delta_8hpp_source.html create mode 100644 doc/api/html/arg__adapt__engaged_8hpp.html create mode 100644 doc/api/html/arg__adapt__engaged_8hpp_source.html create mode 100644 doc/api/html/arg__adapt__gamma_8hpp.html create mode 100644 doc/api/html/arg__adapt__gamma_8hpp_source.html create mode 100644 doc/api/html/arg__adapt__init__buffer_8hpp.html create mode 100644 doc/api/html/arg__adapt__init__buffer_8hpp_source.html create mode 100644 doc/api/html/arg__adapt__kappa_8hpp.html create mode 100644 doc/api/html/arg__adapt__kappa_8hpp_source.html create mode 100644 doc/api/html/arg__adapt__t0_8hpp.html create mode 100644 doc/api/html/arg__adapt__t0_8hpp_source.html create mode 100644 doc/api/html/arg__adapt__term__buffer_8hpp.html create mode 100644 doc/api/html/arg__adapt__term__buffer_8hpp_source.html create mode 100644 doc/api/html/arg__adapt__window_8hpp.html create mode 100644 doc/api/html/arg__adapt__window_8hpp_source.html create mode 100644 doc/api/html/arg__bfgs_8hpp.html create mode 100644 doc/api/html/arg__bfgs_8hpp_source.html create mode 100644 doc/api/html/arg__data_8hpp.html create mode 100644 doc/api/html/arg__data_8hpp_source.html create mode 100644 doc/api/html/arg__data__file_8hpp.html create mode 100644 doc/api/html/arg__data__file_8hpp_source.html create mode 100644 doc/api/html/arg__dense__e_8hpp.html create mode 100644 doc/api/html/arg__dense__e_8hpp_source.html create mode 100644 doc/api/html/arg__diag__e_8hpp.html create mode 100644 doc/api/html/arg__diag__e_8hpp_source.html create mode 100644 doc/api/html/arg__diagnose_8hpp.html create mode 100644 doc/api/html/arg__diagnose_8hpp_source.html create mode 100644 doc/api/html/arg__diagnostic__file_8hpp.html create mode 100644 doc/api/html/arg__diagnostic__file_8hpp_source.html create mode 100644 doc/api/html/arg__engine_8hpp.html create mode 100644 doc/api/html/arg__engine_8hpp_source.html create mode 100644 doc/api/html/arg__fail_8hpp.html create mode 100644 doc/api/html/arg__fail_8hpp_source.html create mode 100644 doc/api/html/arg__fixed__param_8hpp.html create mode 100644 doc/api/html/arg__fixed__param_8hpp_source.html create mode 100644 doc/api/html/arg__hmc_8hpp.html create mode 100644 doc/api/html/arg__hmc_8hpp_source.html create mode 100644 doc/api/html/arg__id_8hpp.html create mode 100644 doc/api/html/arg__id_8hpp_source.html create mode 100644 doc/api/html/arg__init_8hpp.html create mode 100644 doc/api/html/arg__init_8hpp_source.html create mode 100644 doc/api/html/arg__init__alpha_8hpp.html create mode 100644 doc/api/html/arg__init__alpha_8hpp_source.html create mode 100644 doc/api/html/arg__int__time_8hpp.html create mode 100644 doc/api/html/arg__int__time_8hpp_source.html create mode 100644 doc/api/html/arg__iter_8hpp.html create mode 100644 doc/api/html/arg__iter_8hpp_source.html create mode 100644 doc/api/html/arg__max__depth_8hpp.html create mode 100644 doc/api/html/arg__max__depth_8hpp_source.html create mode 100644 doc/api/html/arg__method_8hpp.html create mode 100644 doc/api/html/arg__method_8hpp_source.html create mode 100644 doc/api/html/arg__metric_8hpp.html create mode 100644 doc/api/html/arg__metric_8hpp_source.html create mode 100644 doc/api/html/arg__nesterov_8hpp.html create mode 100644 doc/api/html/arg__nesterov_8hpp_source.html create mode 100644 doc/api/html/arg__newton_8hpp.html create mode 100644 doc/api/html/arg__newton_8hpp_source.html create mode 100644 doc/api/html/arg__num__samples_8hpp.html create mode 100644 doc/api/html/arg__num__samples_8hpp_source.html create mode 100644 doc/api/html/arg__num__warmup_8hpp.html create mode 100644 doc/api/html/arg__num__warmup_8hpp_source.html create mode 100644 doc/api/html/arg__nuts_8hpp.html create mode 100644 doc/api/html/arg__nuts_8hpp_source.html create mode 100644 doc/api/html/arg__optimize_8hpp.html create mode 100644 doc/api/html/arg__optimize_8hpp_source.html create mode 100644 doc/api/html/arg__optimize__algo_8hpp.html create mode 100644 doc/api/html/arg__optimize__algo_8hpp_source.html create mode 100644 doc/api/html/arg__output_8hpp.html create mode 100644 doc/api/html/arg__output_8hpp_source.html create mode 100644 doc/api/html/arg__output__file_8hpp.html create mode 100644 doc/api/html/arg__output__file_8hpp_source.html create mode 100644 doc/api/html/arg__random_8hpp.html create mode 100644 doc/api/html/arg__random_8hpp_source.html create mode 100644 doc/api/html/arg__refresh_8hpp.html create mode 100644 doc/api/html/arg__refresh_8hpp_source.html create mode 100644 doc/api/html/arg__rwm_8hpp.html create mode 100644 doc/api/html/arg__rwm_8hpp_source.html create mode 100644 doc/api/html/arg__sample_8hpp.html create mode 100644 doc/api/html/arg__sample_8hpp_source.html create mode 100644 doc/api/html/arg__sample__algo_8hpp.html create mode 100644 doc/api/html/arg__sample__algo_8hpp_source.html create mode 100644 doc/api/html/arg__save__iterations_8hpp.html create mode 100644 doc/api/html/arg__save__iterations_8hpp_source.html create mode 100644 doc/api/html/arg__save__warmup_8hpp.html create mode 100644 doc/api/html/arg__save__warmup_8hpp_source.html create mode 100644 doc/api/html/arg__seed_8hpp.html create mode 100644 doc/api/html/arg__seed_8hpp_source.html create mode 100644 doc/api/html/arg__static_8hpp.html create mode 100644 doc/api/html/arg__static_8hpp_source.html create mode 100644 doc/api/html/arg__stepsize_8hpp.html create mode 100644 doc/api/html/arg__stepsize_8hpp_source.html create mode 100644 doc/api/html/arg__stepsize__jitter_8hpp.html create mode 100644 doc/api/html/arg__stepsize__jitter_8hpp_source.html create mode 100644 doc/api/html/arg__test_8hpp.html create mode 100644 doc/api/html/arg__test_8hpp_source.html create mode 100644 doc/api/html/arg__test__grad__eps_8hpp.html create mode 100644 doc/api/html/arg__test__grad__eps_8hpp_source.html create mode 100644 doc/api/html/arg__test__grad__err_8hpp.html create mode 100644 doc/api/html/arg__test__grad__err_8hpp_source.html create mode 100644 doc/api/html/arg__test__gradient_8hpp.html create mode 100644 doc/api/html/arg__test__gradient_8hpp_source.html create mode 100644 doc/api/html/arg__thin_8hpp.html create mode 100644 doc/api/html/arg__thin_8hpp_source.html create mode 100644 doc/api/html/arg__tolerance_8hpp.html create mode 100644 doc/api/html/arg__tolerance_8hpp_source.html create mode 100644 doc/api/html/arg__unit__e_8hpp.html create mode 100644 doc/api/html/arg__unit__e_8hpp_source.html create mode 100644 doc/api/html/argument_8hpp.html create mode 100644 doc/api/html/argument_8hpp_source.html create mode 100644 doc/api/html/argument__parser_8hpp.html create mode 100644 doc/api/html/argument__parser_8hpp_source.html create mode 100644 doc/api/html/argument__probe_8hpp.html create mode 100644 doc/api/html/argument__probe_8hpp_source.html create mode 100644 doc/api/html/array__builder_8hpp.html create mode 100644 doc/api/html/array__builder_8hpp_source.html create mode 100644 doc/api/html/assign_8hpp.html create mode 100644 doc/api/html/assign_8hpp_source.html create mode 100644 doc/api/html/ast_8hpp.html create mode 100644 doc/api/html/ast_8hpp_source.html create mode 100644 doc/api/html/ast__def_8cpp.html create mode 100644 doc/api/html/ast__def_8cpp_source.html create mode 100644 doc/api/html/autocorrelation_8hpp.html create mode 100644 doc/api/html/autocorrelation_8hpp_source.html create mode 100644 doc/api/html/autocovariance_8hpp.html create mode 100644 doc/api/html/autocovariance_8hpp_source.html create mode 100644 doc/api/html/autodiff_8hpp.html create mode 100644 doc/api/html/autodiff_8hpp_source.html create mode 100644 doc/api/html/base__adaptation_8hpp.html create mode 100644 doc/api/html/base__adaptation_8hpp_source.html create mode 100644 doc/api/html/base__adapter_8hpp.html create mode 100644 doc/api/html/base__adapter_8hpp_source.html create mode 100644 doc/api/html/base__hamiltonian_8hpp.html create mode 100644 doc/api/html/base__hamiltonian_8hpp_source.html create mode 100644 doc/api/html/base__hmc_8hpp.html create mode 100644 doc/api/html/base__hmc_8hpp_source.html create mode 100644 doc/api/html/base__integrator_8hpp.html create mode 100644 doc/api/html/base__integrator_8hpp_source.html create mode 100644 doc/api/html/base__leapfrog_8hpp.html create mode 100644 doc/api/html/base__leapfrog_8hpp_source.html create mode 100644 doc/api/html/base__mcmc_8hpp.html create mode 100644 doc/api/html/base__mcmc_8hpp_source.html create mode 100644 doc/api/html/base__nuts_8hpp.html create mode 100644 doc/api/html/base__nuts_8hpp_source.html create mode 100644 doc/api/html/base__static__hmc_8hpp.html create mode 100644 doc/api/html/base__static__hmc_8hpp_source.html create mode 100644 doc/api/html/bc_s.png create mode 100644 doc/api/html/bdwn.png create mode 100644 doc/api/html/bernoulli_8hpp.html create mode 100644 doc/api/html/bernoulli_8hpp_source.html create mode 100644 doc/api/html/beta_8hpp.html create mode 100644 doc/api/html/beta_8hpp_source.html create mode 100644 doc/api/html/beta__binomial_8hpp.html create mode 100644 doc/api/html/beta__binomial_8hpp_source.html create mode 100644 doc/api/html/bfgs_8hpp.html create mode 100644 doc/api/html/bfgs_8hpp_source.html create mode 100644 doc/api/html/binomial_8hpp.html create mode 100644 doc/api/html/binomial_8hpp_source.html create mode 100644 doc/api/html/block_8hpp.html create mode 100644 doc/api/html/block_8hpp_source.html create mode 100644 doc/api/html/boost_8dox.html create mode 100644 doc/api/html/boost__fpclassify_8hpp.html create mode 100644 doc/api/html/boost__fpclassify_8hpp_source.html create mode 100644 doc/api/html/calculate__chain_8hpp.html create mode 100644 doc/api/html/calculate__chain_8hpp_source.html create mode 100644 doc/api/html/categorical_8hpp.html create mode 100644 doc/api/html/categorical_8hpp_source.html create mode 100644 doc/api/html/categorical__argument_8hpp.html create mode 100644 doc/api/html/categorical__argument_8hpp_source.html create mode 100644 doc/api/html/categorical__logit_8hpp.html create mode 100644 doc/api/html/categorical__logit_8hpp_source.html create mode 100644 doc/api/html/cauchy_8hpp.html create mode 100644 doc/api/html/cauchy_8hpp_source.html create mode 100644 doc/api/html/chainable_8hpp.html create mode 100644 doc/api/html/chainable_8hpp_source.html create mode 100644 doc/api/html/chains_8hpp.html create mode 100644 doc/api/html/chains_8hpp_source.html create mode 100644 doc/api/html/check__bounded_8hpp.html create mode 100644 doc/api/html/check__bounded_8hpp_source.html create mode 100644 doc/api/html/check__cholesky__factor_8hpp.html create mode 100644 doc/api/html/check__cholesky__factor_8hpp_source.html create mode 100644 doc/api/html/check__consistent__size_8hpp.html create mode 100644 doc/api/html/check__consistent__size_8hpp_source.html create mode 100644 doc/api/html/check__consistent__sizes_8hpp.html create mode 100644 doc/api/html/check__consistent__sizes_8hpp_source.html create mode 100644 doc/api/html/check__corr__matrix_8hpp.html create mode 100644 doc/api/html/check__corr__matrix_8hpp_source.html create mode 100644 doc/api/html/check__cov__matrix_8hpp.html create mode 100644 doc/api/html/check__cov__matrix_8hpp_source.html create mode 100644 doc/api/html/check__finite_8hpp.html create mode 100644 doc/api/html/check__finite_8hpp_source.html create mode 100644 doc/api/html/check__greater_8hpp.html create mode 100644 doc/api/html/check__greater_8hpp_source.html create mode 100644 doc/api/html/check__greater__or__equal_8hpp.html create mode 100644 doc/api/html/check__greater__or__equal_8hpp_source.html create mode 100644 doc/api/html/check__ldlt__factor_8hpp.html create mode 100644 doc/api/html/check__ldlt__factor_8hpp_source.html create mode 100644 doc/api/html/check__less_8hpp.html create mode 100644 doc/api/html/check__less_8hpp_source.html create mode 100644 doc/api/html/check__less__or__equal_8hpp.html create mode 100644 doc/api/html/check__less__or__equal_8hpp_source.html create mode 100644 doc/api/html/check__lower__triangular_8hpp.html create mode 100644 doc/api/html/check__lower__triangular_8hpp_source.html create mode 100644 doc/api/html/check__nonnegative_8hpp.html create mode 100644 doc/api/html/check__nonnegative_8hpp_source.html create mode 100644 doc/api/html/check__not__nan_8hpp.html create mode 100644 doc/api/html/check__not__nan_8hpp_source.html create mode 100644 doc/api/html/check__ordered_8hpp.html create mode 100644 doc/api/html/check__ordered_8hpp_source.html create mode 100644 doc/api/html/check__pos__semidefinite_8hpp.html create mode 100644 doc/api/html/check__pos__semidefinite_8hpp_source.html create mode 100644 doc/api/html/check__positive_8hpp.html create mode 100644 doc/api/html/check__positive_8hpp_source.html create mode 100644 doc/api/html/check__positive__ordered_8hpp.html create mode 100644 doc/api/html/check__positive__ordered_8hpp_source.html create mode 100644 doc/api/html/check__range_8hpp.html create mode 100644 doc/api/html/check__range_8hpp_source.html create mode 100644 doc/api/html/check__simplex_8hpp.html create mode 100644 doc/api/html/check__simplex_8hpp_source.html create mode 100644 doc/api/html/check__size__match_8hpp.html create mode 100644 doc/api/html/check__size__match_8hpp_source.html create mode 100644 doc/api/html/check__spsd__matrix_8hpp.html create mode 100644 doc/api/html/check__spsd__matrix_8hpp_source.html create mode 100644 doc/api/html/check__square_8hpp.html create mode 100644 doc/api/html/check__square_8hpp_source.html create mode 100644 doc/api/html/check__symmetric_8hpp.html create mode 100644 doc/api/html/check__symmetric_8hpp_source.html create mode 100644 doc/api/html/check__unit__vector_8hpp.html create mode 100644 doc/api/html/check__unit__vector_8hpp_source.html create mode 100644 doc/api/html/chi__square_8hpp.html create mode 100644 doc/api/html/chi__square_8hpp_source.html create mode 100644 doc/api/html/cholesky__decompose_8hpp.html create mode 100644 doc/api/html/cholesky__decompose_8hpp_source.html create mode 100644 doc/api/html/chunk__alloc_8hpp.html create mode 100644 doc/api/html/chunk__alloc_8hpp_source.html create mode 100644 doc/api/html/class_l_d_l_t__factor.html create mode 100644 doc/api/html/classes.html create mode 100644 doc/api/html/classstan_1_1_double_vector_view-members.html create mode 100644 doc/api/html/classstan_1_1_double_vector_view.html create mode 100644 doc/api/html/classstan_1_1_double_vector_view_3_01true_00_01false_01_4-members.html create mode 100644 doc/api/html/classstan_1_1_double_vector_view_3_01true_00_01false_01_4.html create mode 100644 doc/api/html/classstan_1_1_double_vector_view_3_01true_00_01true_01_4-members.html create mode 100644 doc/api/html/classstan_1_1_double_vector_view_3_01true_00_01true_01_4.html create mode 100644 doc/api/html/classstan_1_1_vector_view-members.html create mode 100644 doc/api/html/classstan_1_1_vector_view.html create mode 100644 doc/api/html/classstan_1_1_vector_view_3_01const_01_t_00_01is__array_00_01throw__if__accessed_01_4-members.html create mode 100644 doc/api/html/classstan_1_1_vector_view_3_01const_01_t_00_01is__array_00_01throw__if__accessed_01_4.html create mode 100644 doc/api/html/classstan_1_1_vector_view_3_01const_01double_00_01false_00_01false_01_4-members.html create mode 100644 doc/api/html/classstan_1_1_vector_view_3_01const_01double_00_01false_00_01false_01_4.html create mode 100644 doc/api/html/classstan_1_1agrad_1_1_l_d_l_t__alloc-members.html create mode 100644 doc/api/html/classstan_1_1agrad_1_1_l_d_l_t__alloc.html create mode 100644 doc/api/html/classstan_1_1agrad_1_1_l_d_l_t__alloc.png create mode 100644 doc/api/html/classstan_1_1agrad_1_1chainable-members.html create mode 100644 doc/api/html/classstan_1_1agrad_1_1chainable.html create mode 100644 doc/api/html/classstan_1_1agrad_1_1chainable.png create mode 100644 doc/api/html/classstan_1_1agrad_1_1chainable__alloc-members.html create mode 100644 doc/api/html/classstan_1_1agrad_1_1chainable__alloc.html create mode 100644 doc/api/html/classstan_1_1agrad_1_1chainable__alloc.png create mode 100644 doc/api/html/classstan_1_1agrad_1_1op__ddv__vari-members.html create mode 100644 doc/api/html/classstan_1_1agrad_1_1op__ddv__vari.html create mode 100644 doc/api/html/classstan_1_1agrad_1_1op__ddv__vari.png create mode 100644 doc/api/html/classstan_1_1agrad_1_1op__dv__vari-members.html create mode 100644 doc/api/html/classstan_1_1agrad_1_1op__dv__vari.html create mode 100644 doc/api/html/classstan_1_1agrad_1_1op__dv__vari.png create mode 100644 doc/api/html/classstan_1_1agrad_1_1op__dvd__vari-members.html create mode 100644 doc/api/html/classstan_1_1agrad_1_1op__dvd__vari.html create mode 100644 doc/api/html/classstan_1_1agrad_1_1op__dvd__vari.png create mode 100644 doc/api/html/classstan_1_1agrad_1_1op__dvv__vari-members.html create mode 100644 doc/api/html/classstan_1_1agrad_1_1op__dvv__vari.html create mode 100644 doc/api/html/classstan_1_1agrad_1_1op__dvv__vari.png create mode 100644 doc/api/html/classstan_1_1agrad_1_1op__matrix__vari-members.html create mode 100644 doc/api/html/classstan_1_1agrad_1_1op__matrix__vari.html create mode 100644 doc/api/html/classstan_1_1agrad_1_1op__matrix__vari.png create mode 100644 doc/api/html/classstan_1_1agrad_1_1op__v__vari-members.html create mode 100644 doc/api/html/classstan_1_1agrad_1_1op__v__vari.html create mode 100644 doc/api/html/classstan_1_1agrad_1_1op__v__vari.png create mode 100644 doc/api/html/classstan_1_1agrad_1_1op__vd__vari-members.html create mode 100644 doc/api/html/classstan_1_1agrad_1_1op__vd__vari.html create mode 100644 doc/api/html/classstan_1_1agrad_1_1op__vd__vari.png create mode 100644 doc/api/html/classstan_1_1agrad_1_1op__vdd__vari-members.html create mode 100644 doc/api/html/classstan_1_1agrad_1_1op__vdd__vari.html create mode 100644 doc/api/html/classstan_1_1agrad_1_1op__vdd__vari.png create mode 100644 doc/api/html/classstan_1_1agrad_1_1op__vdv__vari-members.html create mode 100644 doc/api/html/classstan_1_1agrad_1_1op__vdv__vari.html create mode 100644 doc/api/html/classstan_1_1agrad_1_1op__vdv__vari.png create mode 100644 doc/api/html/classstan_1_1agrad_1_1op__vector__vari-members.html create mode 100644 doc/api/html/classstan_1_1agrad_1_1op__vector__vari.html create mode 100644 doc/api/html/classstan_1_1agrad_1_1op__vector__vari.png create mode 100644 doc/api/html/classstan_1_1agrad_1_1op__vv__vari-members.html create mode 100644 doc/api/html/classstan_1_1agrad_1_1op__vv__vari.html create mode 100644 doc/api/html/classstan_1_1agrad_1_1op__vv__vari.png create mode 100644 doc/api/html/classstan_1_1agrad_1_1op__vvd__vari-members.html create mode 100644 doc/api/html/classstan_1_1agrad_1_1op__vvd__vari.html create mode 100644 doc/api/html/classstan_1_1agrad_1_1op__vvd__vari.png create mode 100644 doc/api/html/classstan_1_1agrad_1_1op__vvv__vari-members.html create mode 100644 doc/api/html/classstan_1_1agrad_1_1op__vvv__vari.html create mode 100644 doc/api/html/classstan_1_1agrad_1_1op__vvv__vari.png create mode 100644 doc/api/html/classstan_1_1agrad_1_1partials__vari-members.html create mode 100644 doc/api/html/classstan_1_1agrad_1_1partials__vari.html create mode 100644 doc/api/html/classstan_1_1agrad_1_1partials__vari.png create mode 100644 doc/api/html/classstan_1_1agrad_1_1precomp__v__vari-members.html create mode 100644 doc/api/html/classstan_1_1agrad_1_1precomp__v__vari.html create mode 100644 doc/api/html/classstan_1_1agrad_1_1precomputed__gradients__vari-members.html create mode 100644 doc/api/html/classstan_1_1agrad_1_1precomputed__gradients__vari.html create mode 100644 doc/api/html/classstan_1_1agrad_1_1precomputed__gradients__vari.png create mode 100644 doc/api/html/classstan_1_1agrad_1_1stored__gradient__vari-members.html create mode 100644 doc/api/html/classstan_1_1agrad_1_1stored__gradient__vari.html create mode 100644 doc/api/html/classstan_1_1agrad_1_1stored__gradient__vari.png create mode 100644 doc/api/html/classstan_1_1agrad_1_1var-members.html create mode 100644 doc/api/html/classstan_1_1agrad_1_1var.html create mode 100644 doc/api/html/classstan_1_1agrad_1_1vari-members.html create mode 100644 doc/api/html/classstan_1_1agrad_1_1vari.html create mode 100644 doc/api/html/classstan_1_1agrad_1_1vari.png create mode 100644 doc/api/html/classstan_1_1gm_1_1arg__adapt-members.html create mode 100644 doc/api/html/classstan_1_1gm_1_1arg__adapt.html create mode 100644 doc/api/html/classstan_1_1gm_1_1arg__adapt.png create mode 100644 doc/api/html/classstan_1_1gm_1_1arg__adapt__delta-members.html create mode 100644 doc/api/html/classstan_1_1gm_1_1arg__adapt__delta.html create mode 100644 doc/api/html/classstan_1_1gm_1_1arg__adapt__delta.png create mode 100644 doc/api/html/classstan_1_1gm_1_1arg__adapt__engaged-members.html create mode 100644 doc/api/html/classstan_1_1gm_1_1arg__adapt__engaged.html create mode 100644 doc/api/html/classstan_1_1gm_1_1arg__adapt__engaged.png create mode 100644 doc/api/html/classstan_1_1gm_1_1arg__adapt__gamma-members.html create mode 100644 doc/api/html/classstan_1_1gm_1_1arg__adapt__gamma.html create mode 100644 doc/api/html/classstan_1_1gm_1_1arg__adapt__gamma.png create mode 100644 doc/api/html/classstan_1_1gm_1_1arg__adapt__init__buffer-members.html create mode 100644 doc/api/html/classstan_1_1gm_1_1arg__adapt__init__buffer.html create mode 100644 doc/api/html/classstan_1_1gm_1_1arg__adapt__init__buffer.png create mode 100644 doc/api/html/classstan_1_1gm_1_1arg__adapt__kappa-members.html create mode 100644 doc/api/html/classstan_1_1gm_1_1arg__adapt__kappa.html create mode 100644 doc/api/html/classstan_1_1gm_1_1arg__adapt__kappa.png create mode 100644 doc/api/html/classstan_1_1gm_1_1arg__adapt__t0-members.html create mode 100644 doc/api/html/classstan_1_1gm_1_1arg__adapt__t0.html create mode 100644 doc/api/html/classstan_1_1gm_1_1arg__adapt__t0.png create mode 100644 doc/api/html/classstan_1_1gm_1_1arg__adapt__term__buffer-members.html create mode 100644 doc/api/html/classstan_1_1gm_1_1arg__adapt__term__buffer.html create mode 100644 doc/api/html/classstan_1_1gm_1_1arg__adapt__term__buffer.png create mode 100644 doc/api/html/classstan_1_1gm_1_1arg__adapt__window-members.html create mode 100644 doc/api/html/classstan_1_1gm_1_1arg__adapt__window.html create mode 100644 doc/api/html/classstan_1_1gm_1_1arg__adapt__window.png create mode 100644 doc/api/html/classstan_1_1gm_1_1arg__bfgs-members.html create mode 100644 doc/api/html/classstan_1_1gm_1_1arg__bfgs.html create mode 100644 doc/api/html/classstan_1_1gm_1_1arg__bfgs.png create mode 100644 doc/api/html/classstan_1_1gm_1_1arg__data-members.html create mode 100644 doc/api/html/classstan_1_1gm_1_1arg__data.html create mode 100644 doc/api/html/classstan_1_1gm_1_1arg__data.png create mode 100644 doc/api/html/classstan_1_1gm_1_1arg__data__file-members.html create mode 100644 doc/api/html/classstan_1_1gm_1_1arg__data__file.html create mode 100644 doc/api/html/classstan_1_1gm_1_1arg__data__file.png create mode 100644 doc/api/html/classstan_1_1gm_1_1arg__dense__e-members.html create mode 100644 doc/api/html/classstan_1_1gm_1_1arg__dense__e.html create mode 100644 doc/api/html/classstan_1_1gm_1_1arg__dense__e.png create mode 100644 doc/api/html/classstan_1_1gm_1_1arg__diag__e-members.html create mode 100644 doc/api/html/classstan_1_1gm_1_1arg__diag__e.html create mode 100644 doc/api/html/classstan_1_1gm_1_1arg__diag__e.png create mode 100644 doc/api/html/classstan_1_1gm_1_1arg__diagnose-members.html create mode 100644 doc/api/html/classstan_1_1gm_1_1arg__diagnose.html create mode 100644 doc/api/html/classstan_1_1gm_1_1arg__diagnose.png create mode 100644 doc/api/html/classstan_1_1gm_1_1arg__diagnostic__file-members.html create mode 100644 doc/api/html/classstan_1_1gm_1_1arg__diagnostic__file.html create mode 100644 doc/api/html/classstan_1_1gm_1_1arg__diagnostic__file.png create mode 100644 doc/api/html/classstan_1_1gm_1_1arg__engine-members.html create mode 100644 doc/api/html/classstan_1_1gm_1_1arg__engine.html create mode 100644 doc/api/html/classstan_1_1gm_1_1arg__engine.png create mode 100644 doc/api/html/classstan_1_1gm_1_1arg__fail-members.html create mode 100644 doc/api/html/classstan_1_1gm_1_1arg__fail.html create mode 100644 doc/api/html/classstan_1_1gm_1_1arg__fail.png create mode 100644 doc/api/html/classstan_1_1gm_1_1arg__fixed__param-members.html create mode 100644 doc/api/html/classstan_1_1gm_1_1arg__fixed__param.html create mode 100644 doc/api/html/classstan_1_1gm_1_1arg__fixed__param.png create mode 100644 doc/api/html/classstan_1_1gm_1_1arg__hmc-members.html create mode 100644 doc/api/html/classstan_1_1gm_1_1arg__hmc.html create mode 100644 doc/api/html/classstan_1_1gm_1_1arg__hmc.png create mode 100644 doc/api/html/classstan_1_1gm_1_1arg__id-members.html create mode 100644 doc/api/html/classstan_1_1gm_1_1arg__id.html create mode 100644 doc/api/html/classstan_1_1gm_1_1arg__id.png create mode 100644 doc/api/html/classstan_1_1gm_1_1arg__init-members.html create mode 100644 doc/api/html/classstan_1_1gm_1_1arg__init.html create mode 100644 doc/api/html/classstan_1_1gm_1_1arg__init.png create mode 100644 doc/api/html/classstan_1_1gm_1_1arg__init__alpha-members.html create mode 100644 doc/api/html/classstan_1_1gm_1_1arg__init__alpha.html create mode 100644 doc/api/html/classstan_1_1gm_1_1arg__init__alpha.png create mode 100644 doc/api/html/classstan_1_1gm_1_1arg__int__time-members.html create mode 100644 doc/api/html/classstan_1_1gm_1_1arg__int__time.html create mode 100644 doc/api/html/classstan_1_1gm_1_1arg__int__time.png create mode 100644 doc/api/html/classstan_1_1gm_1_1arg__iter-members.html create mode 100644 doc/api/html/classstan_1_1gm_1_1arg__iter.html create mode 100644 doc/api/html/classstan_1_1gm_1_1arg__iter.png create mode 100644 doc/api/html/classstan_1_1gm_1_1arg__max__depth-members.html create mode 100644 doc/api/html/classstan_1_1gm_1_1arg__max__depth.html create mode 100644 doc/api/html/classstan_1_1gm_1_1arg__max__depth.png create mode 100644 doc/api/html/classstan_1_1gm_1_1arg__method-members.html create mode 100644 doc/api/html/classstan_1_1gm_1_1arg__method.html create mode 100644 doc/api/html/classstan_1_1gm_1_1arg__method.png create mode 100644 doc/api/html/classstan_1_1gm_1_1arg__metric-members.html create mode 100644 doc/api/html/classstan_1_1gm_1_1arg__metric.html create mode 100644 doc/api/html/classstan_1_1gm_1_1arg__metric.png create mode 100644 doc/api/html/classstan_1_1gm_1_1arg__nesterov-members.html create mode 100644 doc/api/html/classstan_1_1gm_1_1arg__nesterov.html create mode 100644 doc/api/html/classstan_1_1gm_1_1arg__nesterov.png create mode 100644 doc/api/html/classstan_1_1gm_1_1arg__newton-members.html create mode 100644 doc/api/html/classstan_1_1gm_1_1arg__newton.html create mode 100644 doc/api/html/classstan_1_1gm_1_1arg__newton.png create mode 100644 doc/api/html/classstan_1_1gm_1_1arg__num__samples-members.html create mode 100644 doc/api/html/classstan_1_1gm_1_1arg__num__samples.html create mode 100644 doc/api/html/classstan_1_1gm_1_1arg__num__samples.png create mode 100644 doc/api/html/classstan_1_1gm_1_1arg__num__warmup-members.html create mode 100644 doc/api/html/classstan_1_1gm_1_1arg__num__warmup.html create mode 100644 doc/api/html/classstan_1_1gm_1_1arg__num__warmup.png create mode 100644 doc/api/html/classstan_1_1gm_1_1arg__nuts-members.html create mode 100644 doc/api/html/classstan_1_1gm_1_1arg__nuts.html create mode 100644 doc/api/html/classstan_1_1gm_1_1arg__nuts.png create mode 100644 doc/api/html/classstan_1_1gm_1_1arg__optimize-members.html create mode 100644 doc/api/html/classstan_1_1gm_1_1arg__optimize.html create mode 100644 doc/api/html/classstan_1_1gm_1_1arg__optimize.png create mode 100644 doc/api/html/classstan_1_1gm_1_1arg__optimize__algo-members.html create mode 100644 doc/api/html/classstan_1_1gm_1_1arg__optimize__algo.html create mode 100644 doc/api/html/classstan_1_1gm_1_1arg__optimize__algo.png create mode 100644 doc/api/html/classstan_1_1gm_1_1arg__output-members.html create mode 100644 doc/api/html/classstan_1_1gm_1_1arg__output.html create mode 100644 doc/api/html/classstan_1_1gm_1_1arg__output.png create mode 100644 doc/api/html/classstan_1_1gm_1_1arg__output__file-members.html create mode 100644 doc/api/html/classstan_1_1gm_1_1arg__output__file.html create mode 100644 doc/api/html/classstan_1_1gm_1_1arg__output__file.png create mode 100644 doc/api/html/classstan_1_1gm_1_1arg__random-members.html create mode 100644 doc/api/html/classstan_1_1gm_1_1arg__random.html create mode 100644 doc/api/html/classstan_1_1gm_1_1arg__random.png create mode 100644 doc/api/html/classstan_1_1gm_1_1arg__refresh-members.html create mode 100644 doc/api/html/classstan_1_1gm_1_1arg__refresh.html create mode 100644 doc/api/html/classstan_1_1gm_1_1arg__refresh.png create mode 100644 doc/api/html/classstan_1_1gm_1_1arg__rwm-members.html create mode 100644 doc/api/html/classstan_1_1gm_1_1arg__rwm.html create mode 100644 doc/api/html/classstan_1_1gm_1_1arg__rwm.png create mode 100644 doc/api/html/classstan_1_1gm_1_1arg__sample-members.html create mode 100644 doc/api/html/classstan_1_1gm_1_1arg__sample.html create mode 100644 doc/api/html/classstan_1_1gm_1_1arg__sample.png create mode 100644 doc/api/html/classstan_1_1gm_1_1arg__sample__algo-members.html create mode 100644 doc/api/html/classstan_1_1gm_1_1arg__sample__algo.html create mode 100644 doc/api/html/classstan_1_1gm_1_1arg__sample__algo.png create mode 100644 doc/api/html/classstan_1_1gm_1_1arg__save__iterations-members.html create mode 100644 doc/api/html/classstan_1_1gm_1_1arg__save__iterations.html create mode 100644 doc/api/html/classstan_1_1gm_1_1arg__save__iterations.png create mode 100644 doc/api/html/classstan_1_1gm_1_1arg__save__warmup-members.html create mode 100644 doc/api/html/classstan_1_1gm_1_1arg__save__warmup.html create mode 100644 doc/api/html/classstan_1_1gm_1_1arg__save__warmup.png create mode 100644 doc/api/html/classstan_1_1gm_1_1arg__seed-members.html create mode 100644 doc/api/html/classstan_1_1gm_1_1arg__seed.html create mode 100644 doc/api/html/classstan_1_1gm_1_1arg__seed.png create mode 100644 doc/api/html/classstan_1_1gm_1_1arg__static-members.html create mode 100644 doc/api/html/classstan_1_1gm_1_1arg__static.html create mode 100644 doc/api/html/classstan_1_1gm_1_1arg__static.png create mode 100644 doc/api/html/classstan_1_1gm_1_1arg__stepsize-members.html create mode 100644 doc/api/html/classstan_1_1gm_1_1arg__stepsize.html create mode 100644 doc/api/html/classstan_1_1gm_1_1arg__stepsize.png create mode 100644 doc/api/html/classstan_1_1gm_1_1arg__stepsize__jitter-members.html create mode 100644 doc/api/html/classstan_1_1gm_1_1arg__stepsize__jitter.html create mode 100644 doc/api/html/classstan_1_1gm_1_1arg__stepsize__jitter.png create mode 100644 doc/api/html/classstan_1_1gm_1_1arg__test-members.html create mode 100644 doc/api/html/classstan_1_1gm_1_1arg__test.html create mode 100644 doc/api/html/classstan_1_1gm_1_1arg__test.png create mode 100644 doc/api/html/classstan_1_1gm_1_1arg__test__grad__eps-members.html create mode 100644 doc/api/html/classstan_1_1gm_1_1arg__test__grad__eps.html create mode 100644 doc/api/html/classstan_1_1gm_1_1arg__test__grad__eps.png create mode 100644 doc/api/html/classstan_1_1gm_1_1arg__test__grad__err-members.html create mode 100644 doc/api/html/classstan_1_1gm_1_1arg__test__grad__err.html create mode 100644 doc/api/html/classstan_1_1gm_1_1arg__test__grad__err.png create mode 100644 doc/api/html/classstan_1_1gm_1_1arg__test__gradient-members.html create mode 100644 doc/api/html/classstan_1_1gm_1_1arg__test__gradient.html create mode 100644 doc/api/html/classstan_1_1gm_1_1arg__test__gradient.png create mode 100644 doc/api/html/classstan_1_1gm_1_1arg__thin-members.html create mode 100644 doc/api/html/classstan_1_1gm_1_1arg__thin.html create mode 100644 doc/api/html/classstan_1_1gm_1_1arg__thin.png create mode 100644 doc/api/html/classstan_1_1gm_1_1arg__tolerance-members.html create mode 100644 doc/api/html/classstan_1_1gm_1_1arg__tolerance.html create mode 100644 doc/api/html/classstan_1_1gm_1_1arg__tolerance.png create mode 100644 doc/api/html/classstan_1_1gm_1_1arg__unit__e-members.html create mode 100644 doc/api/html/classstan_1_1gm_1_1arg__unit__e.html create mode 100644 doc/api/html/classstan_1_1gm_1_1arg__unit__e.png create mode 100644 doc/api/html/classstan_1_1gm_1_1argument-members.html create mode 100644 doc/api/html/classstan_1_1gm_1_1argument.html create mode 100644 doc/api/html/classstan_1_1gm_1_1argument.png create mode 100644 doc/api/html/classstan_1_1gm_1_1argument__parser-members.html create mode 100644 doc/api/html/classstan_1_1gm_1_1argument__parser.html create mode 100644 doc/api/html/classstan_1_1gm_1_1argument__probe-members.html create mode 100644 doc/api/html/classstan_1_1gm_1_1argument__probe.html create mode 100644 doc/api/html/classstan_1_1gm_1_1categorical__argument-members.html create mode 100644 doc/api/html/classstan_1_1gm_1_1categorical__argument.html create mode 100644 doc/api/html/classstan_1_1gm_1_1categorical__argument.png create mode 100644 doc/api/html/classstan_1_1gm_1_1function__signatures-members.html create mode 100644 doc/api/html/classstan_1_1gm_1_1function__signatures.html create mode 100644 doc/api/html/classstan_1_1gm_1_1list__argument-members.html create mode 100644 doc/api/html/classstan_1_1gm_1_1list__argument.html create mode 100644 doc/api/html/classstan_1_1gm_1_1list__argument.png create mode 100644 doc/api/html/classstan_1_1gm_1_1singleton__argument-members.html create mode 100644 doc/api/html/classstan_1_1gm_1_1singleton__argument.html create mode 100644 doc/api/html/classstan_1_1gm_1_1singleton__argument.png create mode 100644 doc/api/html/classstan_1_1gm_1_1unvalued__argument-members.html create mode 100644 doc/api/html/classstan_1_1gm_1_1unvalued__argument.html create mode 100644 doc/api/html/classstan_1_1gm_1_1unvalued__argument.png create mode 100644 doc/api/html/classstan_1_1gm_1_1valued__argument-members.html create mode 100644 doc/api/html/classstan_1_1gm_1_1valued__argument.html create mode 100644 doc/api/html/classstan_1_1gm_1_1valued__argument.png create mode 100644 doc/api/html/classstan_1_1io_1_1cmd__line-members.html create mode 100644 doc/api/html/classstan_1_1io_1_1cmd__line.html create mode 100644 doc/api/html/classstan_1_1io_1_1csv__writer-members.html create mode 100644 doc/api/html/classstan_1_1io_1_1csv__writer.html create mode 100644 doc/api/html/classstan_1_1io_1_1dump-members.html create mode 100644 doc/api/html/classstan_1_1io_1_1dump.html create mode 100644 doc/api/html/classstan_1_1io_1_1dump.png create mode 100644 doc/api/html/classstan_1_1io_1_1dump__reader-members.html create mode 100644 doc/api/html/classstan_1_1io_1_1dump__reader.html create mode 100644 doc/api/html/classstan_1_1io_1_1dump__writer-members.html create mode 100644 doc/api/html/classstan_1_1io_1_1dump__writer.html create mode 100644 doc/api/html/classstan_1_1io_1_1mcmc__writer-members.html create mode 100644 doc/api/html/classstan_1_1io_1_1mcmc__writer.html create mode 100644 doc/api/html/classstan_1_1io_1_1reader-members.html create mode 100644 doc/api/html/classstan_1_1io_1_1reader.html create mode 100644 doc/api/html/classstan_1_1io_1_1stan__csv__reader-members.html create mode 100644 doc/api/html/classstan_1_1io_1_1stan__csv__reader.html create mode 100644 doc/api/html/classstan_1_1io_1_1var__context-members.html create mode 100644 doc/api/html/classstan_1_1io_1_1var__context.html create mode 100644 doc/api/html/classstan_1_1io_1_1var__context.png create mode 100644 doc/api/html/classstan_1_1io_1_1writer-members.html create mode 100644 doc/api/html/classstan_1_1io_1_1writer.html create mode 100644 doc/api/html/classstan_1_1math_1_1_l_d_l_t__factor_3_01double_00_01_r_00_01_c_01_4-members.html create mode 100644 doc/api/html/classstan_1_1math_1_1_l_d_l_t__factor_3_01double_00_01_r_00_01_c_01_4.html create mode 100644 doc/api/html/classstan_1_1math_1_1_l_d_l_t__factor_3_01stan_1_1agrad_1_1var_00_01_r_00_01_c_01_4-members.html create mode 100644 doc/api/html/classstan_1_1math_1_1_l_d_l_t__factor_3_01stan_1_1agrad_1_1var_00_01_r_00_01_c_01_4.html create mode 100644 doc/api/html/classstan_1_1math_1_1accumulator-members.html create mode 100644 doc/api/html/classstan_1_1math_1_1accumulator.html create mode 100644 doc/api/html/classstan_1_1math_1_1seq__view-members.html create mode 100644 doc/api/html/classstan_1_1math_1_1seq__view.html create mode 100644 doc/api/html/classstan_1_1math_1_1seq__view_3_01_t_00_01_eigen_1_1_matrix_3_01_s_00_011_00_01_eigen_1_1_dynamic_01_4_01_4-members.html create mode 100644 doc/api/html/classstan_1_1math_1_1seq__view_3_01_t_00_01_eigen_1_1_matrix_3_01_s_00_011_00_01_eigen_1_1_dynamic_01_4_01_4.html create mode 100644 doc/api/html/classstan_1_1math_1_1seq__view_3_01_t_00_01_eigen_1_1_matrix_3_01_s_00_01_eigen_1_1_dynamic_00_011_01_4_01_4-members.html create mode 100644 doc/api/html/classstan_1_1math_1_1seq__view_3_01_t_00_01_eigen_1_1_matrix_3_01_s_00_01_eigen_1_1_dynamic_00_011_01_4_01_4.html create mode 100644 doc/api/html/classstan_1_1math_1_1seq__view_3_01_t_00_01_eigen_1_1_matrix_3_01_s_00_01_eigen_1_1_dynamic_00_01_eigen_1_1_dynamic_01_4_01_4.html create mode 100644 doc/api/html/classstan_1_1math_1_1seq__view_3_01_t_00_01_eigen_1_1_matrix_3_01_s_00_01_eigen_1_1_dynamic_00_085212abef8028c93e19b6c8ba8c0204d.html create mode 100644 doc/api/html/classstan_1_1math_1_1seq__view_3_01_t_00_01std_1_1vector_3_01_s_01_4_01_4-members.html create mode 100644 doc/api/html/classstan_1_1math_1_1seq__view_3_01_t_00_01std_1_1vector_3_01_s_01_4_01_4.html create mode 100644 doc/api/html/classstan_1_1math_1_1seq__view_3_01_t_00_01std_1_1vector_3_01_t_01_4_01_4-members.html create mode 100644 doc/api/html/classstan_1_1math_1_1seq__view_3_01_t_00_01std_1_1vector_3_01_t_01_4_01_4.html create mode 100644 doc/api/html/classstan_1_1math_1_1seq__view_3_01_t_00_01std_1_1vector_3_01std_1_1vector_3_01_t_01_4_01_4_01_4-members.html create mode 100644 doc/api/html/classstan_1_1math_1_1seq__view_3_01_t_00_01std_1_1vector_3_01std_1_1vector_3_01_t_01_4_01_4_01_4.html create mode 100644 doc/api/html/classstan_1_1math_1_1seq__view_3_01double_00_01std_1_1vector_3_01int_01_4_01_4-members.html create mode 100644 doc/api/html/classstan_1_1math_1_1seq__view_3_01double_00_01std_1_1vector_3_01int_01_4_01_4.html create mode 100644 doc/api/html/classstan_1_1mcmc_1_1adapt__dense__e__nuts-members.html create mode 100644 doc/api/html/classstan_1_1mcmc_1_1adapt__dense__e__nuts.html create mode 100644 doc/api/html/classstan_1_1mcmc_1_1adapt__dense__e__nuts.png create mode 100644 doc/api/html/classstan_1_1mcmc_1_1adapt__dense__e__static__hmc-members.html create mode 100644 doc/api/html/classstan_1_1mcmc_1_1adapt__dense__e__static__hmc.html create mode 100644 doc/api/html/classstan_1_1mcmc_1_1adapt__dense__e__static__hmc.png create mode 100644 doc/api/html/classstan_1_1mcmc_1_1adapt__diag__e__nuts-members.html create mode 100644 doc/api/html/classstan_1_1mcmc_1_1adapt__diag__e__nuts.html create mode 100644 doc/api/html/classstan_1_1mcmc_1_1adapt__diag__e__nuts.png create mode 100644 doc/api/html/classstan_1_1mcmc_1_1adapt__diag__e__static__hmc-members.html create mode 100644 doc/api/html/classstan_1_1mcmc_1_1adapt__diag__e__static__hmc.html create mode 100644 doc/api/html/classstan_1_1mcmc_1_1adapt__diag__e__static__hmc.png create mode 100644 doc/api/html/classstan_1_1mcmc_1_1adapt__unit__e__nuts-members.html create mode 100644 doc/api/html/classstan_1_1mcmc_1_1adapt__unit__e__nuts.html create mode 100644 doc/api/html/classstan_1_1mcmc_1_1adapt__unit__e__nuts.png create mode 100644 doc/api/html/classstan_1_1mcmc_1_1adapt__unit__e__static__hmc-members.html create mode 100644 doc/api/html/classstan_1_1mcmc_1_1adapt__unit__e__static__hmc.html create mode 100644 doc/api/html/classstan_1_1mcmc_1_1adapt__unit__e__static__hmc.png create mode 100644 doc/api/html/classstan_1_1mcmc_1_1base__adaptation-members.html create mode 100644 doc/api/html/classstan_1_1mcmc_1_1base__adaptation.html create mode 100644 doc/api/html/classstan_1_1mcmc_1_1base__adaptation.png create mode 100644 doc/api/html/classstan_1_1mcmc_1_1base__adapter-members.html create mode 100644 doc/api/html/classstan_1_1mcmc_1_1base__adapter.html create mode 100644 doc/api/html/classstan_1_1mcmc_1_1base__adapter.png create mode 100644 doc/api/html/classstan_1_1mcmc_1_1base__hamiltonian-members.html create mode 100644 doc/api/html/classstan_1_1mcmc_1_1base__hamiltonian.html create mode 100644 doc/api/html/classstan_1_1mcmc_1_1base__hmc-members.html create mode 100644 doc/api/html/classstan_1_1mcmc_1_1base__hmc.html create mode 100644 doc/api/html/classstan_1_1mcmc_1_1base__hmc.png create mode 100644 doc/api/html/classstan_1_1mcmc_1_1base__integrator-members.html create mode 100644 doc/api/html/classstan_1_1mcmc_1_1base__integrator.html create mode 100644 doc/api/html/classstan_1_1mcmc_1_1base__integrator.png create mode 100644 doc/api/html/classstan_1_1mcmc_1_1base__leapfrog-members.html create mode 100644 doc/api/html/classstan_1_1mcmc_1_1base__leapfrog.html create mode 100644 doc/api/html/classstan_1_1mcmc_1_1base__leapfrog.png create mode 100644 doc/api/html/classstan_1_1mcmc_1_1base__mcmc-members.html create mode 100644 doc/api/html/classstan_1_1mcmc_1_1base__mcmc.html create mode 100644 doc/api/html/classstan_1_1mcmc_1_1base__mcmc.png create mode 100644 doc/api/html/classstan_1_1mcmc_1_1base__nuts-members.html create mode 100644 doc/api/html/classstan_1_1mcmc_1_1base__nuts.html create mode 100644 doc/api/html/classstan_1_1mcmc_1_1base__nuts.png create mode 100644 doc/api/html/classstan_1_1mcmc_1_1base__static__hmc-members.html create mode 100644 doc/api/html/classstan_1_1mcmc_1_1base__static__hmc.html create mode 100644 doc/api/html/classstan_1_1mcmc_1_1base__static__hmc.png create mode 100644 doc/api/html/classstan_1_1mcmc_1_1chains-members.html create mode 100644 doc/api/html/classstan_1_1mcmc_1_1chains.html create mode 100644 doc/api/html/classstan_1_1mcmc_1_1covar__adaptation-members.html create mode 100644 doc/api/html/classstan_1_1mcmc_1_1covar__adaptation.html create mode 100644 doc/api/html/classstan_1_1mcmc_1_1covar__adaptation.png create mode 100644 doc/api/html/classstan_1_1mcmc_1_1dense__e__metric-members.html create mode 100644 doc/api/html/classstan_1_1mcmc_1_1dense__e__metric.html create mode 100644 doc/api/html/classstan_1_1mcmc_1_1dense__e__metric.png create mode 100644 doc/api/html/classstan_1_1mcmc_1_1dense__e__nuts-members.html create mode 100644 doc/api/html/classstan_1_1mcmc_1_1dense__e__nuts.html create mode 100644 doc/api/html/classstan_1_1mcmc_1_1dense__e__nuts.png create mode 100644 doc/api/html/classstan_1_1mcmc_1_1dense__e__point-members.html create mode 100644 doc/api/html/classstan_1_1mcmc_1_1dense__e__point.html create mode 100644 doc/api/html/classstan_1_1mcmc_1_1dense__e__point.png create mode 100644 doc/api/html/classstan_1_1mcmc_1_1dense__e__static__hmc-members.html create mode 100644 doc/api/html/classstan_1_1mcmc_1_1dense__e__static__hmc.html create mode 100644 doc/api/html/classstan_1_1mcmc_1_1dense__e__static__hmc.png create mode 100644 doc/api/html/classstan_1_1mcmc_1_1diag__e__metric-members.html create mode 100644 doc/api/html/classstan_1_1mcmc_1_1diag__e__metric.html create mode 100644 doc/api/html/classstan_1_1mcmc_1_1diag__e__metric.png create mode 100644 doc/api/html/classstan_1_1mcmc_1_1diag__e__nuts-members.html create mode 100644 doc/api/html/classstan_1_1mcmc_1_1diag__e__nuts.html create mode 100644 doc/api/html/classstan_1_1mcmc_1_1diag__e__nuts.png create mode 100644 doc/api/html/classstan_1_1mcmc_1_1diag__e__point-members.html create mode 100644 doc/api/html/classstan_1_1mcmc_1_1diag__e__point.html create mode 100644 doc/api/html/classstan_1_1mcmc_1_1diag__e__point.png create mode 100644 doc/api/html/classstan_1_1mcmc_1_1diag__e__static__hmc-members.html create mode 100644 doc/api/html/classstan_1_1mcmc_1_1diag__e__static__hmc.html create mode 100644 doc/api/html/classstan_1_1mcmc_1_1diag__e__static__hmc.png create mode 100644 doc/api/html/classstan_1_1mcmc_1_1expl__leapfrog-members.html create mode 100644 doc/api/html/classstan_1_1mcmc_1_1expl__leapfrog.html create mode 100644 doc/api/html/classstan_1_1mcmc_1_1expl__leapfrog.png create mode 100644 doc/api/html/classstan_1_1mcmc_1_1fixed__param__sampler-members.html create mode 100644 doc/api/html/classstan_1_1mcmc_1_1fixed__param__sampler.html create mode 100644 doc/api/html/classstan_1_1mcmc_1_1fixed__param__sampler.png create mode 100644 doc/api/html/classstan_1_1mcmc_1_1ps__point-members.html create mode 100644 doc/api/html/classstan_1_1mcmc_1_1ps__point.html create mode 100644 doc/api/html/classstan_1_1mcmc_1_1ps__point.png create mode 100644 doc/api/html/classstan_1_1mcmc_1_1sample-members.html create mode 100644 doc/api/html/classstan_1_1mcmc_1_1sample.html create mode 100644 doc/api/html/classstan_1_1mcmc_1_1stepsize__adaptation-members.html create mode 100644 doc/api/html/classstan_1_1mcmc_1_1stepsize__adaptation.html create mode 100644 doc/api/html/classstan_1_1mcmc_1_1stepsize__adaptation.png create mode 100644 doc/api/html/classstan_1_1mcmc_1_1stepsize__adapter-members.html create mode 100644 doc/api/html/classstan_1_1mcmc_1_1stepsize__adapter.html create mode 100644 doc/api/html/classstan_1_1mcmc_1_1stepsize__adapter.png create mode 100644 doc/api/html/classstan_1_1mcmc_1_1stepsize__covar__adapter-members.html create mode 100644 doc/api/html/classstan_1_1mcmc_1_1stepsize__covar__adapter.html create mode 100644 doc/api/html/classstan_1_1mcmc_1_1stepsize__covar__adapter.png create mode 100644 doc/api/html/classstan_1_1mcmc_1_1stepsize__var__adapter-members.html create mode 100644 doc/api/html/classstan_1_1mcmc_1_1stepsize__var__adapter.html create mode 100644 doc/api/html/classstan_1_1mcmc_1_1stepsize__var__adapter.png create mode 100644 doc/api/html/classstan_1_1mcmc_1_1unit__e__metric-members.html create mode 100644 doc/api/html/classstan_1_1mcmc_1_1unit__e__metric.html create mode 100644 doc/api/html/classstan_1_1mcmc_1_1unit__e__metric.png create mode 100644 doc/api/html/classstan_1_1mcmc_1_1unit__e__nuts-members.html create mode 100644 doc/api/html/classstan_1_1mcmc_1_1unit__e__nuts.html create mode 100644 doc/api/html/classstan_1_1mcmc_1_1unit__e__nuts.png create mode 100644 doc/api/html/classstan_1_1mcmc_1_1unit__e__point-members.html create mode 100644 doc/api/html/classstan_1_1mcmc_1_1unit__e__point.html create mode 100644 doc/api/html/classstan_1_1mcmc_1_1unit__e__point.png create mode 100644 doc/api/html/classstan_1_1mcmc_1_1unit__e__static__hmc-members.html create mode 100644 doc/api/html/classstan_1_1mcmc_1_1unit__e__static__hmc.html create mode 100644 doc/api/html/classstan_1_1mcmc_1_1unit__e__static__hmc.png create mode 100644 doc/api/html/classstan_1_1mcmc_1_1var__adaptation-members.html create mode 100644 doc/api/html/classstan_1_1mcmc_1_1var__adaptation.html create mode 100644 doc/api/html/classstan_1_1mcmc_1_1var__adaptation.png create mode 100644 doc/api/html/classstan_1_1mcmc_1_1windowed__adaptation-members.html create mode 100644 doc/api/html/classstan_1_1mcmc_1_1windowed__adaptation.html create mode 100644 doc/api/html/classstan_1_1mcmc_1_1windowed__adaptation.png create mode 100644 doc/api/html/classstan_1_1memory_1_1chunk__alloc-members.html create mode 100644 doc/api/html/classstan_1_1memory_1_1chunk__alloc.html create mode 100644 doc/api/html/classstan_1_1memory_1_1stack__alloc-members.html create mode 100644 doc/api/html/classstan_1_1memory_1_1stack__alloc.html create mode 100644 doc/api/html/classstan_1_1model_1_1prob__grad-members.html create mode 100644 doc/api/html/classstan_1_1model_1_1prob__grad.html create mode 100644 doc/api/html/classstan_1_1optimization_1_1_b_f_g_s_line_search-members.html create mode 100644 doc/api/html/classstan_1_1optimization_1_1_b_f_g_s_line_search.html create mode 100644 doc/api/html/classstan_1_1optimization_1_1_b_f_g_s_line_search.png create mode 100644 doc/api/html/classstan_1_1optimization_1_1_b_f_g_s_minimizer-members.html create mode 100644 doc/api/html/classstan_1_1optimization_1_1_b_f_g_s_minimizer.html create mode 100644 doc/api/html/classstan_1_1optimization_1_1_model_adaptor-members.html create mode 100644 doc/api/html/classstan_1_1optimization_1_1_model_adaptor.html create mode 100644 doc/api/html/classstan_1_1optimization_1_1_nesterov_gradient-members.html create mode 100644 doc/api/html/classstan_1_1optimization_1_1_nesterov_gradient.html create mode 100644 doc/api/html/classstan_1_1prob_1_1welford__covar__estimator-members.html create mode 100644 doc/api/html/classstan_1_1prob_1_1welford__covar__estimator.html create mode 100644 doc/api/html/classstan_1_1prob_1_1welford__var__estimator-members.html create mode 100644 doc/api/html/classstan_1_1prob_1_1welford__var__estimator.html create mode 100644 doc/api/html/closed.png create mode 100644 doc/api/html/cmd__line_8hpp.html create mode 100644 doc/api/html/cmd__line_8hpp_source.html create mode 100644 doc/api/html/col_8hpp.html create mode 100644 doc/api/html/col_8hpp_source.html create mode 100644 doc/api/html/cols_8hpp.html create mode 100644 doc/api/html/cols_8hpp_source.html create mode 100644 doc/api/html/command_8hpp.html create mode 100644 doc/api/html/command_8hpp_source.html create mode 100644 doc/api/html/common__adaptors__def_8hpp.html create mode 100644 doc/api/html/common__adaptors__def_8hpp_source.html create mode 100644 doc/api/html/common__type_8hpp.html create mode 100644 doc/api/html/common__type_8hpp_source.html create mode 100644 doc/api/html/compiler_8hpp.html create mode 100644 doc/api/html/compiler_8hpp_source.html create mode 100644 doc/api/html/constraint__tolerance_8hpp.html create mode 100644 doc/api/html/constraint__tolerance_8hpp_source.html create mode 100644 doc/api/html/covar__adaptation_8hpp.html create mode 100644 doc/api/html/covar__adaptation_8hpp_source.html create mode 100644 doc/api/html/csv__writer_8hpp.html create mode 100644 doc/api/html/csv__writer_8hpp_source.html create mode 100644 doc/api/html/cumulative__sum_8hpp.html create mode 100644 doc/api/html/cumulative__sum_8hpp_source.html create mode 100644 doc/api/html/ddv__vari_8hpp.html create mode 100644 doc/api/html/ddv__vari_8hpp_source.html create mode 100644 doc/api/html/dense__e__metric_8hpp.html create mode 100644 doc/api/html/dense__e__metric_8hpp_source.html create mode 100644 doc/api/html/dense__e__nuts_8hpp.html create mode 100644 doc/api/html/dense__e__nuts_8hpp_source.html create mode 100644 doc/api/html/dense__e__point_8hpp.html create mode 100644 doc/api/html/dense__e__point_8hpp_source.html create mode 100644 doc/api/html/dense__e__static__hmc_8hpp.html create mode 100644 doc/api/html/dense__e__static__hmc_8hpp_source.html create mode 100644 doc/api/html/diag__e__metric_8hpp.html create mode 100644 doc/api/html/diag__e__metric_8hpp_source.html create mode 100644 doc/api/html/diag__e__nuts_8hpp.html create mode 100644 doc/api/html/diag__e__nuts_8hpp_source.html create mode 100644 doc/api/html/diag__e__point_8hpp.html create mode 100644 doc/api/html/diag__e__point_8hpp_source.html create mode 100644 doc/api/html/diag__e__static__hmc_8hpp.html create mode 100644 doc/api/html/diag__e__static__hmc_8hpp_source.html create mode 100644 doc/api/html/diag__matrix_8hpp.html create mode 100644 doc/api/html/diag__matrix_8hpp_source.html create mode 100644 doc/api/html/diag__post__multiply_8hpp.html create mode 100644 doc/api/html/diag__post__multiply_8hpp_source.html create mode 100644 doc/api/html/diag__pre__multiply_8hpp.html create mode 100644 doc/api/html/diag__pre__multiply_8hpp_source.html create mode 100644 doc/api/html/diagonal_8hpp.html create mode 100644 doc/api/html/diagonal_8hpp_source.html create mode 100644 doc/api/html/dims_8hpp.html create mode 100644 doc/api/html/dims_8hpp_source.html create mode 100644 doc/api/html/dir_0c7ba03e05d7755a93c72a387515f18e.html create mode 100644 doc/api/html/dir_0f7468ba3d646c35c5f1677a20123edb.html create mode 100644 doc/api/html/dir_139cce78ba5d92491da28703870a60b5.html create mode 100644 doc/api/html/dir_182af125d00bd279bb48de10042b58c3.html create mode 100644 doc/api/html/dir_1ff9d265245893e221d5111ecd1383dc.html create mode 100644 doc/api/html/dir_2199d12d39bf553599a4a7fa2d24fe67.html create mode 100644 doc/api/html/dir_22b468d2bc5e21cba3741edb912cd36a.html create mode 100644 doc/api/html/dir_29b20cd43524c7f0fc77aef3c7e38f50.html create mode 100644 doc/api/html/dir_2e546bda41fe40b59dc00b79d00b50ce.html create mode 100644 doc/api/html/dir_2fa10d765296c30bb35aa6c0b0bc0528.html create mode 100644 doc/api/html/dir_3995d5884456238d20884a417bb53c63.html create mode 100644 doc/api/html/dir_3b4610d017c705a4887f638ce7fbc838.html create mode 100644 doc/api/html/dir_3bf5ecbbc2acdb8067d845784c2d4c37.html create mode 100644 doc/api/html/dir_4169038f84fc0e1ed68b4a7c11130da4.html create mode 100644 doc/api/html/dir_44cbf1ed18699f3d3b4fc628a26fcd8e.html create mode 100644 doc/api/html/dir_4ff6d94cb2a0a21decf9fe1d17e36a84.html create mode 100644 doc/api/html/dir_50f5c6d2b5c0f0cf0dce53a8e04f8433.html create mode 100644 doc/api/html/dir_52470340ee5541bea78123d62b747bfc.html create mode 100644 doc/api/html/dir_52c3c3fe3bff0ba6815d4f34971ed7d3.html create mode 100644 doc/api/html/dir_54e1f17c1ac5ea0adfc355c0b89ee8b2.html create mode 100644 doc/api/html/dir_5a90b97b153f6d877d3f3fe75b024a65.html create mode 100644 doc/api/html/dir_68c25edf9c6d341fdd24c7ac7d0f552b.html create mode 100644 doc/api/html/dir_6b822de55cde49ee6f3a9b01e44fb566.html create mode 100644 doc/api/html/dir_7edb90b8895d3ae5eaffb58e5bac252e.html create mode 100644 doc/api/html/dir_7f504516231d3fe329ee42a0c6d09a23.html create mode 100644 doc/api/html/dir_8bbd805b34b7b8cc78ee869a600898c2.html create mode 100644 doc/api/html/dir_8c3552022fc3ada5c17e804a5e09b39f.html create mode 100644 doc/api/html/dir_918f1495a74b4bbbcceda6da05869dad.html create mode 100644 doc/api/html/dir_99762ae463b7309a47de4b14a14d0e0f.html create mode 100644 doc/api/html/dir_99fdd75913c28d151522a8b8afede414.html create mode 100644 doc/api/html/dir_9c4b002ce8795bbd5dbe2cf3421fe13a.html create mode 100644 doc/api/html/dir_adda0d2b1be4bc1eb47d3b2cf56797af.html create mode 100644 doc/api/html/dir_ae30097f91ecf0dffad078cd8b901d6c.html create mode 100644 doc/api/html/dir_b1c6471129ce395961fd25e68f861508.html create mode 100644 doc/api/html/dir_b5faa64c567d6f189426dea685de5e0f.html create mode 100644 doc/api/html/dir_bfdd916fd7a3310c7c8c32c9dbb4c5dd.html create mode 100644 doc/api/html/dir_d06f81619dd9bcc28d70dd2c97937727.html create mode 100644 doc/api/html/dir_e5fd7b97e7c167e7281b34e17696a6e4.html create mode 100644 doc/api/html/dir_e65b8371bb074abd719c6e80ee5d6469.html create mode 100644 doc/api/html/dir_e7242831226ee912bf5f374de664968d.html create mode 100644 doc/api/html/dir_e9c236c76d69ff67463df99eaf9c4820.html create mode 100644 doc/api/html/dir_f2ec37f115c79ba754de20300359aed5.html create mode 100644 doc/api/html/dir_f3e98ab768ca388ef4baecb6d973adcf.html create mode 100644 doc/api/html/dir_f77850045c6d72da1ced64bfc8354271.html create mode 100644 doc/api/html/dir_fb5291ba38e4a736e77d8ba78c86369a.html create mode 100644 doc/api/html/dirichlet_8hpp.html create mode 100644 doc/api/html/dirichlet_8hpp_source.html create mode 100644 doc/api/html/dist_8hpp.html create mode 100644 doc/api/html/dist_8hpp_source.html create mode 100644 doc/api/html/distance_8hpp.html create mode 100644 doc/api/html/distance_8hpp_source.html create mode 100644 doc/api/html/distributions_8hpp.html create mode 100644 doc/api/html/distributions_8hpp_source.html create mode 100644 doc/api/html/dom__err_8hpp.html create mode 100644 doc/api/html/dom__err_8hpp_source.html create mode 100644 doc/api/html/dom__err__vec_8hpp.html create mode 100644 doc/api/html/dom__err__vec_8hpp_source.html create mode 100644 doc/api/html/dot_8hpp.html create mode 100644 doc/api/html/dot_8hpp_source.html create mode 100644 doc/api/html/double__exponential_8hpp.html create mode 100644 doc/api/html/double__exponential_8hpp_source.html create mode 100644 doc/api/html/doxygen.css create mode 100644 doc/api/html/doxygen.png create mode 100644 doc/api/html/dump_8hpp.html create mode 100644 doc/api/html/dump_8hpp_source.html create mode 100644 doc/api/html/dv__vari_8hpp.html create mode 100644 doc/api/html/dv__vari_8hpp_source.html create mode 100644 doc/api/html/dvd__vari_8hpp.html create mode 100644 doc/api/html/dvd__vari_8hpp_source.html create mode 100644 doc/api/html/dvv__vari_8hpp.html create mode 100644 doc/api/html/dvv__vari_8hpp_source.html create mode 100644 doc/api/html/dynsections.js create mode 100644 doc/api/html/eigenvalues__sym_8hpp.html create mode 100644 doc/api/html/eigenvalues__sym_8hpp_source.html create mode 100644 doc/api/html/eigenvectors__sym_8hpp.html create mode 100644 doc/api/html/eigenvectors__sym_8hpp_source.html create mode 100644 doc/api/html/elt__divide_8hpp.html create mode 100644 doc/api/html/elt__divide_8hpp_source.html create mode 100644 doc/api/html/elt__multiply_8hpp.html create mode 100644 doc/api/html/elt__multiply_8hpp_source.html create mode 100644 doc/api/html/error__codes_8hpp.html create mode 100644 doc/api/html/error__codes_8hpp_source.html create mode 100644 doc/api/html/error__handling_8dox.html create mode 100644 doc/api/html/exp__mod__normal_8hpp.html create mode 100644 doc/api/html/exp__mod__normal_8hpp_source.html create mode 100644 doc/api/html/expl__leapfrog_8hpp.html create mode 100644 doc/api/html/expl__leapfrog_8hpp_source.html create mode 100644 doc/api/html/exponential_8hpp.html create mode 100644 doc/api/html/exponential_8hpp_source.html create mode 100644 doc/api/html/expression__grammar_8hpp.html create mode 100644 doc/api/html/expression__grammar_8hpp_source.html create mode 100644 doc/api/html/expression__grammar__def_8hpp.html create mode 100644 doc/api/html/expression__grammar__def_8hpp_source.html create mode 100644 doc/api/html/expression__grammar__inst_8cpp.html create mode 100644 doc/api/html/expression__grammar__inst_8cpp_source.html create mode 100644 doc/api/html/files.html create mode 100644 doc/api/html/fill_8hpp.html create mode 100644 doc/api/html/fill_8hpp_source.html create mode 100644 doc/api/html/fixed__param__sampler_8hpp.html create mode 100644 doc/api/html/fixed__param__sampler_8hpp_source.html create mode 100644 doc/api/html/form_0.png create mode 100644 doc/api/html/form_1.png create mode 100644 doc/api/html/form_10.png create mode 100644 doc/api/html/form_100.png create mode 100644 doc/api/html/form_101.png create mode 100644 doc/api/html/form_102.png create mode 100644 doc/api/html/form_103.png create mode 100644 doc/api/html/form_104.png create mode 100644 doc/api/html/form_105.png create mode 100644 doc/api/html/form_106.png create mode 100644 doc/api/html/form_107.png create mode 100644 doc/api/html/form_108.png create mode 100644 doc/api/html/form_109.png create mode 100644 doc/api/html/form_11.png create mode 100644 doc/api/html/form_110.png create mode 100644 doc/api/html/form_111.png create mode 100644 doc/api/html/form_112.png create mode 100644 doc/api/html/form_113.png create mode 100644 doc/api/html/form_114.png create mode 100644 doc/api/html/form_115.png create mode 100644 doc/api/html/form_116.png create mode 100644 doc/api/html/form_117.png create mode 100644 doc/api/html/form_118.png create mode 100644 doc/api/html/form_119.png create mode 100644 doc/api/html/form_12.png create mode 100644 doc/api/html/form_120.png create mode 100644 doc/api/html/form_121.png create mode 100644 doc/api/html/form_122.png create mode 100644 doc/api/html/form_123.png create mode 100644 doc/api/html/form_124.png create mode 100644 doc/api/html/form_125.png create mode 100644 doc/api/html/form_126.png create mode 100644 doc/api/html/form_127.png create mode 100644 doc/api/html/form_128.png create mode 100644 doc/api/html/form_129.png create mode 100644 doc/api/html/form_13.png create mode 100644 doc/api/html/form_130.png create mode 100644 doc/api/html/form_131.png create mode 100644 doc/api/html/form_132.png create mode 100644 doc/api/html/form_133.png create mode 100644 doc/api/html/form_134.png create mode 100644 doc/api/html/form_135.png create mode 100644 doc/api/html/form_136.png create mode 100644 doc/api/html/form_137.png create mode 100644 doc/api/html/form_138.png create mode 100644 doc/api/html/form_139.png create mode 100644 doc/api/html/form_14.png create mode 100644 doc/api/html/form_140.png create mode 100644 doc/api/html/form_141.png create mode 100644 doc/api/html/form_142.png create mode 100644 doc/api/html/form_143.png create mode 100644 doc/api/html/form_144.png create mode 100644 doc/api/html/form_145.png create mode 100644 doc/api/html/form_146.png create mode 100644 doc/api/html/form_147.png create mode 100644 doc/api/html/form_148.png create mode 100644 doc/api/html/form_149.png create mode 100644 doc/api/html/form_15.png create mode 100644 doc/api/html/form_150.png create mode 100644 doc/api/html/form_151.png create mode 100644 doc/api/html/form_152.png create mode 100644 doc/api/html/form_153.png create mode 100644 doc/api/html/form_154.png create mode 100644 doc/api/html/form_155.png create mode 100644 doc/api/html/form_156.png create mode 100644 doc/api/html/form_157.png create mode 100644 doc/api/html/form_158.png create mode 100644 doc/api/html/form_159.png create mode 100644 doc/api/html/form_16.png create mode 100644 doc/api/html/form_160.png create mode 100644 doc/api/html/form_161.png create mode 100644 doc/api/html/form_162.png create mode 100644 doc/api/html/form_163.png create mode 100644 doc/api/html/form_164.png create mode 100644 doc/api/html/form_165.png create mode 100644 doc/api/html/form_166.png create mode 100644 doc/api/html/form_167.png create mode 100644 doc/api/html/form_168.png create mode 100644 doc/api/html/form_169.png create mode 100644 doc/api/html/form_17.png create mode 100644 doc/api/html/form_170.png create mode 100644 doc/api/html/form_171.png create mode 100644 doc/api/html/form_172.png create mode 100644 doc/api/html/form_173.png create mode 100644 doc/api/html/form_174.png create mode 100644 doc/api/html/form_175.png create mode 100644 doc/api/html/form_176.png create mode 100644 doc/api/html/form_177.png create mode 100644 doc/api/html/form_178.png create mode 100644 doc/api/html/form_18.png create mode 100644 doc/api/html/form_19.png create mode 100644 doc/api/html/form_2.png create mode 100644 doc/api/html/form_20.png create mode 100644 doc/api/html/form_21.png create mode 100644 doc/api/html/form_22.png create mode 100644 doc/api/html/form_23.png create mode 100644 doc/api/html/form_24.png create mode 100644 doc/api/html/form_25.png create mode 100644 doc/api/html/form_26.png create mode 100644 doc/api/html/form_27.png create mode 100644 doc/api/html/form_28.png create mode 100644 doc/api/html/form_29.png create mode 100644 doc/api/html/form_3.png create mode 100644 doc/api/html/form_30.png create mode 100644 doc/api/html/form_31.png create mode 100644 doc/api/html/form_32.png create mode 100644 doc/api/html/form_33.png create mode 100644 doc/api/html/form_34.png create mode 100644 doc/api/html/form_35.png create mode 100644 doc/api/html/form_36.png create mode 100644 doc/api/html/form_37.png create mode 100644 doc/api/html/form_38.png create mode 100644 doc/api/html/form_39.png create mode 100644 doc/api/html/form_4.png create mode 100644 doc/api/html/form_40.png create mode 100644 doc/api/html/form_41.png create mode 100644 doc/api/html/form_42.png create mode 100644 doc/api/html/form_43.png create mode 100644 doc/api/html/form_44.png create mode 100644 doc/api/html/form_45.png create mode 100644 doc/api/html/form_46.png create mode 100644 doc/api/html/form_47.png create mode 100644 doc/api/html/form_48.png create mode 100644 doc/api/html/form_49.png create mode 100644 doc/api/html/form_5.png create mode 100644 doc/api/html/form_50.png create mode 100644 doc/api/html/form_51.png create mode 100644 doc/api/html/form_52.png create mode 100644 doc/api/html/form_53.png create mode 100644 doc/api/html/form_54.png create mode 100644 doc/api/html/form_55.png create mode 100644 doc/api/html/form_56.png create mode 100644 doc/api/html/form_57.png create mode 100644 doc/api/html/form_58.png create mode 100644 doc/api/html/form_59.png create mode 100644 doc/api/html/form_6.png create mode 100644 doc/api/html/form_60.png create mode 100644 doc/api/html/form_61.png create mode 100644 doc/api/html/form_62.png create mode 100644 doc/api/html/form_63.png create mode 100644 doc/api/html/form_64.png create mode 100644 doc/api/html/form_65.png create mode 100644 doc/api/html/form_66.png create mode 100644 doc/api/html/form_67.png create mode 100644 doc/api/html/form_68.png create mode 100644 doc/api/html/form_69.png create mode 100644 doc/api/html/form_7.png create mode 100644 doc/api/html/form_70.png create mode 100644 doc/api/html/form_71.png create mode 100644 doc/api/html/form_72.png create mode 100644 doc/api/html/form_73.png create mode 100644 doc/api/html/form_74.png create mode 100644 doc/api/html/form_75.png create mode 100644 doc/api/html/form_76.png create mode 100644 doc/api/html/form_77.png create mode 100644 doc/api/html/form_78.png create mode 100644 doc/api/html/form_79.png create mode 100644 doc/api/html/form_8.png create mode 100644 doc/api/html/form_80.png create mode 100644 doc/api/html/form_81.png create mode 100644 doc/api/html/form_82.png create mode 100644 doc/api/html/form_83.png create mode 100644 doc/api/html/form_84.png create mode 100644 doc/api/html/form_85.png create mode 100644 doc/api/html/form_86.png create mode 100644 doc/api/html/form_87.png create mode 100644 doc/api/html/form_88.png create mode 100644 doc/api/html/form_89.png create mode 100644 doc/api/html/form_9.png create mode 100644 doc/api/html/form_90.png create mode 100644 doc/api/html/form_91.png create mode 100644 doc/api/html/form_92.png create mode 100644 doc/api/html/form_93.png create mode 100644 doc/api/html/form_94.png create mode 100644 doc/api/html/form_95.png create mode 100644 doc/api/html/form_96.png create mode 100644 doc/api/html/form_97.png create mode 100644 doc/api/html/form_98.png create mode 100644 doc/api/html/form_99.png create mode 100644 doc/api/html/formula.repository create mode 100644 doc/api/html/ftv2blank.png create mode 100644 doc/api/html/ftv2cl.png create mode 100644 doc/api/html/ftv2doc.png create mode 100644 doc/api/html/ftv2folderclosed.png create mode 100644 doc/api/html/ftv2folderopen.png create mode 100644 doc/api/html/ftv2lastnode.png create mode 100644 doc/api/html/ftv2link.png create mode 100644 doc/api/html/ftv2mlastnode.png create mode 100644 doc/api/html/ftv2mnode.png create mode 100644 doc/api/html/ftv2mo.png create mode 100644 doc/api/html/ftv2node.png create mode 100644 doc/api/html/ftv2ns.png create mode 100644 doc/api/html/ftv2plastnode.png create mode 100644 doc/api/html/ftv2pnode.png create mode 100644 doc/api/html/ftv2splitbar.png create mode 100644 doc/api/html/ftv2vertline.png create mode 100644 doc/api/html/functions.html create mode 100644 doc/api/html/functions_0x61.html create mode 100644 doc/api/html/functions_0x62.html create mode 100644 doc/api/html/functions_0x63.html create mode 100644 doc/api/html/functions_0x64.html create mode 100644 doc/api/html/functions_0x65.html create mode 100644 doc/api/html/functions_0x66.html create mode 100644 doc/api/html/functions_0x67.html create mode 100644 doc/api/html/functions_0x68.html create mode 100644 doc/api/html/functions_0x69.html create mode 100644 doc/api/html/functions_0x6b.html create mode 100644 doc/api/html/functions_0x6c.html create mode 100644 doc/api/html/functions_0x6d.html create mode 100644 doc/api/html/functions_0x6e.html create mode 100644 doc/api/html/functions_0x6f.html create mode 100644 doc/api/html/functions_0x70.html create mode 100644 doc/api/html/functions_0x71.html create mode 100644 doc/api/html/functions_0x72.html create mode 100644 doc/api/html/functions_0x73.html create mode 100644 doc/api/html/functions_0x74.html create mode 100644 doc/api/html/functions_0x75.html create mode 100644 doc/api/html/functions_0x76.html create mode 100644 doc/api/html/functions_0x77.html create mode 100644 doc/api/html/functions_0x78.html create mode 100644 doc/api/html/functions_0x7a.html create mode 100644 doc/api/html/functions_0x7e.html create mode 100644 doc/api/html/functions_2max_8hpp.html create mode 100644 doc/api/html/functions_2max_8hpp_source.html create mode 100644 doc/api/html/functions_2min_8hpp.html create mode 100644 doc/api/html/functions_2min_8hpp_source.html create mode 100644 doc/api/html/functions_eval.html create mode 100644 doc/api/html/functions_func.html create mode 100644 doc/api/html/functions_func_0x61.html create mode 100644 doc/api/html/functions_func_0x62.html create mode 100644 doc/api/html/functions_func_0x63.html create mode 100644 doc/api/html/functions_func_0x64.html create mode 100644 doc/api/html/functions_func_0x65.html create mode 100644 doc/api/html/functions_func_0x66.html create mode 100644 doc/api/html/functions_func_0x67.html create mode 100644 doc/api/html/functions_func_0x68.html create mode 100644 doc/api/html/functions_func_0x69.html create mode 100644 doc/api/html/functions_func_0x6b.html create mode 100644 doc/api/html/functions_func_0x6c.html create mode 100644 doc/api/html/functions_func_0x6d.html create mode 100644 doc/api/html/functions_func_0x6e.html create mode 100644 doc/api/html/functions_func_0x6f.html create mode 100644 doc/api/html/functions_func_0x70.html create mode 100644 doc/api/html/functions_func_0x71.html create mode 100644 doc/api/html/functions_func_0x72.html create mode 100644 doc/api/html/functions_func_0x73.html create mode 100644 doc/api/html/functions_func_0x74.html create mode 100644 doc/api/html/functions_func_0x75.html create mode 100644 doc/api/html/functions_func_0x76.html create mode 100644 doc/api/html/functions_func_0x77.html create mode 100644 doc/api/html/functions_func_0x7a.html create mode 100644 doc/api/html/functions_func_0x7e.html create mode 100644 doc/api/html/functions_rela.html create mode 100644 doc/api/html/functions_type.html create mode 100644 doc/api/html/functions_vars.html create mode 100644 doc/api/html/functions_vars_0x61.html create mode 100644 doc/api/html/functions_vars_0x62.html create mode 100644 doc/api/html/functions_vars_0x63.html create mode 100644 doc/api/html/functions_vars_0x64.html create mode 100644 doc/api/html/functions_vars_0x65.html create mode 100644 doc/api/html/functions_vars_0x66.html create mode 100644 doc/api/html/functions_vars_0x67.html create mode 100644 doc/api/html/functions_vars_0x68.html create mode 100644 doc/api/html/functions_vars_0x69.html create mode 100644 doc/api/html/functions_vars_0x6b.html create mode 100644 doc/api/html/functions_vars_0x6c.html create mode 100644 doc/api/html/functions_vars_0x6d.html create mode 100644 doc/api/html/functions_vars_0x6e.html create mode 100644 doc/api/html/functions_vars_0x6f.html create mode 100644 doc/api/html/functions_vars_0x70.html create mode 100644 doc/api/html/functions_vars_0x71.html create mode 100644 doc/api/html/functions_vars_0x72.html create mode 100644 doc/api/html/functions_vars_0x73.html create mode 100644 doc/api/html/functions_vars_0x74.html create mode 100644 doc/api/html/functions_vars_0x75.html create mode 100644 doc/api/html/functions_vars_0x76.html create mode 100644 doc/api/html/functions_vars_0x77.html create mode 100644 doc/api/html/functions_vars_0x78.html create mode 100644 doc/api/html/fvar_8hpp.html create mode 100644 doc/api/html/fvar_8hpp_source.html create mode 100644 doc/api/html/fwd_2functions_2acos_8hpp.html create mode 100644 doc/api/html/fwd_2functions_2acos_8hpp_source.html create mode 100644 doc/api/html/fwd_2functions_2acosh_8hpp.html create mode 100644 doc/api/html/fwd_2functions_2acosh_8hpp_source.html create mode 100644 doc/api/html/fwd_2functions_2asin_8hpp.html create mode 100644 doc/api/html/fwd_2functions_2asin_8hpp_source.html create mode 100644 doc/api/html/fwd_2functions_2asinh_8hpp.html create mode 100644 doc/api/html/fwd_2functions_2asinh_8hpp_source.html create mode 100644 doc/api/html/fwd_2functions_2atan2_8hpp.html create mode 100644 doc/api/html/fwd_2functions_2atan2_8hpp_source.html create mode 100644 doc/api/html/fwd_2functions_2atan_8hpp.html create mode 100644 doc/api/html/fwd_2functions_2atan_8hpp_source.html create mode 100644 doc/api/html/fwd_2functions_2atanh_8hpp.html create mode 100644 doc/api/html/fwd_2functions_2atanh_8hpp_source.html create mode 100644 doc/api/html/fwd_2functions_2cbrt_8hpp.html create mode 100644 doc/api/html/fwd_2functions_2cbrt_8hpp_source.html create mode 100644 doc/api/html/fwd_2functions_2ceil_8hpp.html create mode 100644 doc/api/html/fwd_2functions_2ceil_8hpp_source.html create mode 100644 doc/api/html/fwd_2functions_2cos_8hpp.html create mode 100644 doc/api/html/fwd_2functions_2cos_8hpp_source.html create mode 100644 doc/api/html/fwd_2functions_2cosh_8hpp.html create mode 100644 doc/api/html/fwd_2functions_2cosh_8hpp_source.html create mode 100644 doc/api/html/fwd_2functions_2erf_8hpp.html create mode 100644 doc/api/html/fwd_2functions_2erf_8hpp_source.html create mode 100644 doc/api/html/fwd_2functions_2erfc_8hpp.html create mode 100644 doc/api/html/fwd_2functions_2erfc_8hpp_source.html create mode 100644 doc/api/html/fwd_2functions_2expm1_8hpp.html create mode 100644 doc/api/html/fwd_2functions_2expm1_8hpp_source.html create mode 100644 doc/api/html/fwd_2functions_2fabs_8hpp.html create mode 100644 doc/api/html/fwd_2functions_2fabs_8hpp_source.html create mode 100644 doc/api/html/fwd_2functions_2floor_8hpp.html create mode 100644 doc/api/html/fwd_2functions_2floor_8hpp_source.html create mode 100644 doc/api/html/fwd_2functions_2fmax_8hpp.html create mode 100644 doc/api/html/fwd_2functions_2fmax_8hpp_source.html create mode 100644 doc/api/html/fwd_2functions_2fmin_8hpp.html create mode 100644 doc/api/html/fwd_2functions_2fmin_8hpp_source.html create mode 100644 doc/api/html/fwd_2functions_2fmod_8hpp.html create mode 100644 doc/api/html/fwd_2functions_2fmod_8hpp_source.html create mode 100644 doc/api/html/fwd_2functions_2hypot_8hpp.html create mode 100644 doc/api/html/fwd_2functions_2hypot_8hpp_source.html create mode 100644 doc/api/html/fwd_2functions_2log10_8hpp.html create mode 100644 doc/api/html/fwd_2functions_2log10_8hpp_source.html create mode 100644 doc/api/html/fwd_2functions_2pow_8hpp.html create mode 100644 doc/api/html/fwd_2functions_2pow_8hpp_source.html create mode 100644 doc/api/html/fwd_2functions_2round_8hpp.html create mode 100644 doc/api/html/fwd_2functions_2round_8hpp_source.html create mode 100644 doc/api/html/fwd_2functions_2sin_8hpp.html create mode 100644 doc/api/html/fwd_2functions_2sin_8hpp_source.html create mode 100644 doc/api/html/fwd_2functions_2sinh_8hpp.html create mode 100644 doc/api/html/fwd_2functions_2sinh_8hpp_source.html create mode 100644 doc/api/html/fwd_2functions_2sqrt_8hpp.html create mode 100644 doc/api/html/fwd_2functions_2sqrt_8hpp_source.html create mode 100644 doc/api/html/fwd_2functions_2tan_8hpp.html create mode 100644 doc/api/html/fwd_2functions_2tan_8hpp_source.html create mode 100644 doc/api/html/fwd_2functions_2tanh_8hpp.html create mode 100644 doc/api/html/fwd_2functions_2tanh_8hpp_source.html create mode 100644 doc/api/html/fwd_2functions_2tgamma_8hpp.html create mode 100644 doc/api/html/fwd_2functions_2tgamma_8hpp_source.html create mode 100644 doc/api/html/fwd_2functions_2trunc_8hpp.html create mode 100644 doc/api/html/fwd_2functions_2trunc_8hpp_source.html create mode 100644 doc/api/html/fwd_2numeric__limits_8hpp.html create mode 100644 doc/api/html/fwd_2numeric__limits_8hpp_source.html create mode 100644 doc/api/html/fwd_2operators_2operator__addition_8hpp.html create mode 100644 doc/api/html/fwd_2operators_2operator__addition_8hpp_source.html create mode 100644 doc/api/html/fwd_2operators_2operator__division_8hpp.html create mode 100644 doc/api/html/fwd_2operators_2operator__division_8hpp_source.html create mode 100644 doc/api/html/fwd_2operators_2operator__equal_8hpp.html create mode 100644 doc/api/html/fwd_2operators_2operator__equal_8hpp_source.html create mode 100644 doc/api/html/fwd_2operators_2operator__greater__than_8hpp.html create mode 100644 doc/api/html/fwd_2operators_2operator__greater__than_8hpp_source.html create mode 100644 doc/api/html/fwd_2operators_2operator__greater__than__or__equal_8hpp.html create mode 100644 doc/api/html/fwd_2operators_2operator__greater__than__or__equal_8hpp_source.html create mode 100644 doc/api/html/fwd_2operators_2operator__less__than_8hpp.html create mode 100644 doc/api/html/fwd_2operators_2operator__less__than_8hpp_source.html create mode 100644 doc/api/html/fwd_2operators_2operator__less__than__or__equal_8hpp.html create mode 100644 doc/api/html/fwd_2operators_2operator__less__than__or__equal_8hpp_source.html create mode 100644 doc/api/html/fwd_2operators_2operator__multiplication_8hpp.html create mode 100644 doc/api/html/fwd_2operators_2operator__multiplication_8hpp_source.html create mode 100644 doc/api/html/fwd_2operators_2operator__not__equal_8hpp.html create mode 100644 doc/api/html/fwd_2operators_2operator__not__equal_8hpp_source.html create mode 100644 doc/api/html/fwd_2operators_2operator__subtraction_8hpp.html create mode 100644 doc/api/html/fwd_2operators_2operator__subtraction_8hpp_source.html create mode 100644 doc/api/html/fwd_2operators_8hpp.html create mode 100644 doc/api/html/fwd_2operators_8hpp_source.html create mode 100644 doc/api/html/fwd_8hpp.html create mode 100644 doc/api/html/fwd_8hpp_source.html create mode 100644 doc/api/html/gamma_8hpp.html create mode 100644 doc/api/html/gamma_8hpp_source.html create mode 100644 doc/api/html/gaussian__dlm__obs_8hpp.html create mode 100644 doc/api/html/gaussian__dlm__obs_8hpp_source.html create mode 100644 doc/api/html/generator_8hpp.html create mode 100644 doc/api/html/generator_8hpp_source.html create mode 100644 doc/api/html/get__base1_8hpp.html create mode 100644 doc/api/html/get__base1_8hpp_source.html create mode 100644 doc/api/html/get__base1__lhs_8hpp.html create mode 100644 doc/api/html/get__base1__lhs_8hpp_source.html create mode 100644 doc/api/html/globals.html create mode 100644 doc/api/html/globals_defs.html create mode 100644 doc/api/html/globals_func.html create mode 100644 doc/api/html/globals_vars.html create mode 100644 doc/api/html/gm_8hpp.html create mode 100644 doc/api/html/gm_8hpp_source.html create mode 100644 doc/api/html/grad_8hpp.html create mode 100644 doc/api/html/grad_8hpp_source.html create mode 100644 doc/api/html/gumbel_8hpp.html create mode 100644 doc/api/html/gumbel_8hpp_source.html create mode 100644 doc/api/html/head_8hpp.html create mode 100644 doc/api/html/head_8hpp_source.html create mode 100644 doc/api/html/hessian_8hpp.html create mode 100644 doc/api/html/hessian_8hpp_source.html create mode 100644 doc/api/html/hierarchy.html create mode 100644 doc/api/html/hypergeometric_8hpp.html create mode 100644 doc/api/html/hypergeometric_8hpp_source.html create mode 100644 doc/api/html/index.html create mode 100644 doc/api/html/initialize_8hpp.html create mode 100644 doc/api/html/initialize_8hpp_source.html create mode 100644 doc/api/html/initialize__variable_8hpp.html create mode 100644 doc/api/html/initialize__variable_8hpp_source.html create mode 100644 doc/api/html/int__step_8hpp.html create mode 100644 doc/api/html/int__step_8hpp_source.html create mode 100644 doc/api/html/internal_8hpp.html create mode 100644 doc/api/html/internal_8hpp_source.html create mode 100644 doc/api/html/internal__math_8hpp.html create mode 100644 doc/api/html/internal__math_8hpp_source.html create mode 100644 doc/api/html/inv__chi__square_8hpp.html create mode 100644 doc/api/html/inv__chi__square_8hpp_source.html create mode 100644 doc/api/html/inv__gamma_8hpp.html create mode 100644 doc/api/html/inv__gamma_8hpp_source.html create mode 100644 doc/api/html/inv__wishart_8hpp.html create mode 100644 doc/api/html/inv__wishart_8hpp_source.html create mode 100644 doc/api/html/inverse__softmax_8hpp.html create mode 100644 doc/api/html/inverse__softmax_8hpp_source.html create mode 100644 doc/api/html/inverse__spd_8hpp.html create mode 100644 doc/api/html/inverse__spd_8hpp_source.html create mode 100644 doc/api/html/io_2util_8hpp.html create mode 100644 doc/api/html/io_2util_8hpp_source.html create mode 100644 doc/api/html/io_8hpp.html create mode 100644 doc/api/html/io_8hpp_source.html create mode 100644 doc/api/html/iterator__typedefs_8hpp.html create mode 100644 doc/api/html/iterator__typedefs_8hpp_source.html create mode 100644 doc/api/html/jacobian_8hpp.html create mode 100644 doc/api/html/jacobian_8hpp_source.html create mode 100644 doc/api/html/jquery.js create mode 100644 doc/api/html/list__argument_8hpp.html create mode 100644 doc/api/html/list__argument_8hpp_source.html create mode 100644 doc/api/html/lkj__corr_8hpp.html create mode 100644 doc/api/html/lkj__corr_8hpp_source.html create mode 100644 doc/api/html/lkj__cov_8hpp.html create mode 100644 doc/api/html/lkj__cov_8hpp_source.html create mode 100644 doc/api/html/logical__and_8hpp.html create mode 100644 doc/api/html/logical__and_8hpp_source.html create mode 100644 doc/api/html/logical__eq_8hpp.html create mode 100644 doc/api/html/logical__eq_8hpp_source.html create mode 100644 doc/api/html/logical__gt_8hpp.html create mode 100644 doc/api/html/logical__gt_8hpp_source.html create mode 100644 doc/api/html/logical__gte_8hpp.html create mode 100644 doc/api/html/logical__gte_8hpp_source.html create mode 100644 doc/api/html/logical__lt_8hpp.html create mode 100644 doc/api/html/logical__lt_8hpp_source.html create mode 100644 doc/api/html/logical__lte_8hpp.html create mode 100644 doc/api/html/logical__lte_8hpp_source.html create mode 100644 doc/api/html/logical__negation_8hpp.html create mode 100644 doc/api/html/logical__negation_8hpp_source.html create mode 100644 doc/api/html/logical__neq_8hpp.html create mode 100644 doc/api/html/logical__neq_8hpp_source.html create mode 100644 doc/api/html/logical__or_8hpp.html create mode 100644 doc/api/html/logical__or_8hpp_source.html create mode 100644 doc/api/html/logistic_8hpp.html create mode 100644 doc/api/html/logistic_8hpp_source.html create mode 100644 doc/api/html/lognormal_8hpp.html create mode 100644 doc/api/html/lognormal_8hpp_source.html create mode 100644 doc/api/html/mainpage_8dox.html create mode 100644 doc/api/html/math_2constants_8hpp.html create mode 100644 doc/api/html/math_2constants_8hpp_source.html create mode 100644 doc/api/html/math_2error__handling_2matrix_2check__pos__definite_8hpp.html create mode 100644 doc/api/html/math_2error__handling_2matrix_2check__pos__definite_8hpp_source.html create mode 100644 doc/api/html/math_2error__handling_8hpp.html create mode 100644 doc/api/html/math_2error__handling_8hpp_source.html create mode 100644 doc/api/html/math_2functions_2_phi_8hpp.html create mode 100644 doc/api/html/math_2functions_2_phi_8hpp_source.html create mode 100644 doc/api/html/math_2functions_2_phi__approx_8hpp.html create mode 100644 doc/api/html/math_2functions_2_phi__approx_8hpp_source.html create mode 100644 doc/api/html/math_2functions_2abs_8hpp.html create mode 100644 doc/api/html/math_2functions_2abs_8hpp_source.html create mode 100644 doc/api/html/math_2functions_2as__bool_8hpp.html create mode 100644 doc/api/html/math_2functions_2as__bool_8hpp_source.html create mode 100644 doc/api/html/math_2functions_2bessel__first__kind_8hpp.html create mode 100644 doc/api/html/math_2functions_2bessel__first__kind_8hpp_source.html create mode 100644 doc/api/html/math_2functions_2bessel__second__kind_8hpp.html create mode 100644 doc/api/html/math_2functions_2bessel__second__kind_8hpp_source.html create mode 100644 doc/api/html/math_2functions_2binary__log__loss_8hpp.html create mode 100644 doc/api/html/math_2functions_2binary__log__loss_8hpp_source.html create mode 100644 doc/api/html/math_2functions_2binomial__coefficient__log_8hpp.html create mode 100644 doc/api/html/math_2functions_2binomial__coefficient__log_8hpp_source.html create mode 100644 doc/api/html/math_2functions_2digamma_8hpp.html create mode 100644 doc/api/html/math_2functions_2digamma_8hpp_source.html create mode 100644 doc/api/html/math_2functions_2dot__self_8hpp.html create mode 100644 doc/api/html/math_2functions_2dot__self_8hpp_source.html create mode 100644 doc/api/html/math_2functions_2exp2_8hpp.html create mode 100644 doc/api/html/math_2functions_2exp2_8hpp_source.html create mode 100644 doc/api/html/math_2functions_2falling__factorial_8hpp.html create mode 100644 doc/api/html/math_2functions_2falling__factorial_8hpp_source.html create mode 100644 doc/api/html/math_2functions_2fdim_8hpp.html create mode 100644 doc/api/html/math_2functions_2fdim_8hpp_source.html create mode 100644 doc/api/html/math_2functions_2fma_8hpp.html create mode 100644 doc/api/html/math_2functions_2fma_8hpp_source.html create mode 100644 doc/api/html/math_2functions_2gamma__p_8hpp.html create mode 100644 doc/api/html/math_2functions_2gamma__p_8hpp_source.html create mode 100644 doc/api/html/math_2functions_2gamma__q_8hpp.html create mode 100644 doc/api/html/math_2functions_2gamma__q_8hpp_source.html create mode 100644 doc/api/html/math_2functions_2ibeta_8hpp.html create mode 100644 doc/api/html/math_2functions_2ibeta_8hpp_source.html create mode 100644 doc/api/html/math_2functions_2if__else_8hpp.html create mode 100644 doc/api/html/math_2functions_2if__else_8hpp_source.html create mode 100644 doc/api/html/math_2functions_2inv_8hpp.html create mode 100644 doc/api/html/math_2functions_2inv_8hpp_source.html create mode 100644 doc/api/html/math_2functions_2inv__cloglog_8hpp.html create mode 100644 doc/api/html/math_2functions_2inv__cloglog_8hpp_source.html create mode 100644 doc/api/html/math_2functions_2inv__logit_8hpp.html create mode 100644 doc/api/html/math_2functions_2inv__logit_8hpp_source.html create mode 100644 doc/api/html/math_2functions_2inv__sqrt_8hpp.html create mode 100644 doc/api/html/math_2functions_2inv__sqrt_8hpp_source.html create mode 100644 doc/api/html/math_2functions_2inv__square_8hpp.html create mode 100644 doc/api/html/math_2functions_2inv__square_8hpp_source.html create mode 100644 doc/api/html/math_2functions_2is__uninitialized_8hpp.html create mode 100644 doc/api/html/math_2functions_2is__uninitialized_8hpp_source.html create mode 100644 doc/api/html/math_2functions_2lbeta_8hpp.html create mode 100644 doc/api/html/math_2functions_2lbeta_8hpp_source.html create mode 100644 doc/api/html/math_2functions_2lgamma_8hpp.html create mode 100644 doc/api/html/math_2functions_2lgamma_8hpp_source.html create mode 100644 doc/api/html/math_2functions_2lmgamma_8hpp.html create mode 100644 doc/api/html/math_2functions_2lmgamma_8hpp_source.html create mode 100644 doc/api/html/math_2functions_2log1m_8hpp.html create mode 100644 doc/api/html/math_2functions_2log1m_8hpp_source.html create mode 100644 doc/api/html/math_2functions_2log1m__exp_8hpp.html create mode 100644 doc/api/html/math_2functions_2log1m__exp_8hpp_source.html create mode 100644 doc/api/html/math_2functions_2log1m__inv__logit_8hpp.html create mode 100644 doc/api/html/math_2functions_2log1m__inv__logit_8hpp_source.html create mode 100644 doc/api/html/math_2functions_2log1p_8hpp.html create mode 100644 doc/api/html/math_2functions_2log1p_8hpp_source.html create mode 100644 doc/api/html/math_2functions_2log1p__exp_8hpp.html create mode 100644 doc/api/html/math_2functions_2log1p__exp_8hpp_source.html create mode 100644 doc/api/html/math_2functions_2log2_8hpp.html create mode 100644 doc/api/html/math_2functions_2log2_8hpp_source.html create mode 100644 doc/api/html/math_2functions_2log__diff__exp_8hpp.html create mode 100644 doc/api/html/math_2functions_2log__diff__exp_8hpp_source.html create mode 100644 doc/api/html/math_2functions_2log__falling__factorial_8hpp.html create mode 100644 doc/api/html/math_2functions_2log__falling__factorial_8hpp_source.html create mode 100644 doc/api/html/math_2functions_2log__inv__logit_8hpp.html create mode 100644 doc/api/html/math_2functions_2log__inv__logit_8hpp_source.html create mode 100644 doc/api/html/math_2functions_2log__rising__factorial_8hpp.html create mode 100644 doc/api/html/math_2functions_2log__rising__factorial_8hpp_source.html create mode 100644 doc/api/html/math_2functions_2log__sum__exp_8hpp.html create mode 100644 doc/api/html/math_2functions_2log__sum__exp_8hpp_source.html create mode 100644 doc/api/html/math_2functions_2logit_8hpp.html create mode 100644 doc/api/html/math_2functions_2logit_8hpp_source.html create mode 100644 doc/api/html/math_2functions_2modified__bessel__first__kind_8hpp.html create mode 100644 doc/api/html/math_2functions_2modified__bessel__first__kind_8hpp_source.html create mode 100644 doc/api/html/math_2functions_2modified__bessel__second__kind_8hpp.html create mode 100644 doc/api/html/math_2functions_2modified__bessel__second__kind_8hpp_source.html create mode 100644 doc/api/html/math_2functions_2multiply__log_8hpp.html create mode 100644 doc/api/html/math_2functions_2multiply__log_8hpp_source.html create mode 100644 doc/api/html/math_2functions_2owens__t_8hpp.html create mode 100644 doc/api/html/math_2functions_2owens__t_8hpp_source.html create mode 100644 doc/api/html/math_2functions_2rising__factorial_8hpp.html create mode 100644 doc/api/html/math_2functions_2rising__factorial_8hpp_source.html create mode 100644 doc/api/html/math_2functions_2square_8hpp.html create mode 100644 doc/api/html/math_2functions_2square_8hpp_source.html create mode 100644 doc/api/html/math_2functions_2step_8hpp.html create mode 100644 doc/api/html/math_2functions_2step_8hpp_source.html create mode 100644 doc/api/html/math_2functions_2sum_8hpp.html create mode 100644 doc/api/html/math_2functions_2sum_8hpp_source.html create mode 100644 doc/api/html/math_2functions_2value__of_8hpp.html create mode 100644 doc/api/html/math_2functions_2value__of_8hpp_source.html create mode 100644 doc/api/html/math_2functions_8hpp.html create mode 100644 doc/api/html/math_2functions_8hpp_source.html create mode 100644 doc/api/html/math_2matrix_2_l_d_l_t__factor_8hpp.html create mode 100644 doc/api/html/math_2matrix_2_l_d_l_t__factor_8hpp_source.html create mode 100644 doc/api/html/math_2matrix_2columns__dot__product_8hpp.html create mode 100644 doc/api/html/math_2matrix_2columns__dot__product_8hpp_source.html create mode 100644 doc/api/html/math_2matrix_2columns__dot__self_8hpp.html create mode 100644 doc/api/html/math_2matrix_2columns__dot__self_8hpp_source.html create mode 100644 doc/api/html/math_2matrix_2crossprod_8hpp.html create mode 100644 doc/api/html/math_2matrix_2crossprod_8hpp_source.html create mode 100644 doc/api/html/math_2matrix_2determinant_8hpp.html create mode 100644 doc/api/html/math_2matrix_2determinant_8hpp_source.html create mode 100644 doc/api/html/math_2matrix_2divide_8hpp.html create mode 100644 doc/api/html/math_2matrix_2divide_8hpp_source.html create mode 100644 doc/api/html/math_2matrix_2dot__product_8hpp.html create mode 100644 doc/api/html/math_2matrix_2dot__product_8hpp_source.html create mode 100644 doc/api/html/math_2matrix_2dot__self_8hpp.html create mode 100644 doc/api/html/math_2matrix_2dot__self_8hpp_source.html create mode 100644 doc/api/html/math_2matrix_2exp_8hpp.html create mode 100644 doc/api/html/math_2matrix_2exp_8hpp_source.html create mode 100644 doc/api/html/math_2matrix_2inverse_8hpp.html create mode 100644 doc/api/html/math_2matrix_2inverse_8hpp_source.html create mode 100644 doc/api/html/math_2matrix_2log_8hpp.html create mode 100644 doc/api/html/math_2matrix_2log_8hpp_source.html create mode 100644 doc/api/html/math_2matrix_2log__determinant_8hpp.html create mode 100644 doc/api/html/math_2matrix_2log__determinant_8hpp_source.html create mode 100644 doc/api/html/math_2matrix_2log__determinant__ldlt_8hpp.html create mode 100644 doc/api/html/math_2matrix_2log__determinant__ldlt_8hpp_source.html create mode 100644 doc/api/html/math_2matrix_2log__determinant__spd_8hpp.html create mode 100644 doc/api/html/math_2matrix_2log__determinant__spd_8hpp_source.html create mode 100644 doc/api/html/math_2matrix_2log__softmax_8hpp.html create mode 100644 doc/api/html/math_2matrix_2log__softmax_8hpp_source.html create mode 100644 doc/api/html/math_2matrix_2log__sum__exp_8hpp.html create mode 100644 doc/api/html/math_2matrix_2log__sum__exp_8hpp_source.html create mode 100644 doc/api/html/math_2matrix_2mdivide__left_8hpp.html create mode 100644 doc/api/html/math_2matrix_2mdivide__left_8hpp_source.html create mode 100644 doc/api/html/math_2matrix_2mdivide__left__ldlt_8hpp.html create mode 100644 doc/api/html/math_2matrix_2mdivide__left__ldlt_8hpp_source.html create mode 100644 doc/api/html/math_2matrix_2mdivide__left__spd_8hpp.html create mode 100644 doc/api/html/math_2matrix_2mdivide__left__spd_8hpp_source.html create mode 100644 doc/api/html/math_2matrix_2mdivide__left__tri_8hpp.html create mode 100644 doc/api/html/math_2matrix_2mdivide__left__tri_8hpp_source.html create mode 100644 doc/api/html/math_2matrix_2mdivide__left__tri__low_8hpp.html create mode 100644 doc/api/html/math_2matrix_2mdivide__left__tri__low_8hpp_source.html create mode 100644 doc/api/html/math_2matrix_2mdivide__right_8hpp.html create mode 100644 doc/api/html/math_2matrix_2mdivide__right_8hpp_source.html create mode 100644 doc/api/html/math_2matrix_2mdivide__right__tri__low_8hpp.html create mode 100644 doc/api/html/math_2matrix_2mdivide__right__tri__low_8hpp_source.html create mode 100644 doc/api/html/math_2matrix_2multiply_8hpp.html create mode 100644 doc/api/html/math_2matrix_2multiply_8hpp_source.html create mode 100644 doc/api/html/math_2matrix_2multiply__lower__tri__self__transpose_8hpp.html create mode 100644 doc/api/html/math_2matrix_2multiply__lower__tri__self__transpose_8hpp_source.html create mode 100644 doc/api/html/math_2matrix_2quad__form_8hpp.html create mode 100644 doc/api/html/math_2matrix_2quad__form_8hpp_source.html create mode 100644 doc/api/html/math_2matrix_2rows__dot__product_8hpp.html create mode 100644 doc/api/html/math_2matrix_2rows__dot__product_8hpp_source.html create mode 100644 doc/api/html/math_2matrix_2rows__dot__self_8hpp.html create mode 100644 doc/api/html/math_2matrix_2rows__dot__self_8hpp_source.html create mode 100644 doc/api/html/math_2matrix_2sd_8hpp.html create mode 100644 doc/api/html/math_2matrix_2sd_8hpp_source.html create mode 100644 doc/api/html/math_2matrix_2softmax_8hpp.html create mode 100644 doc/api/html/math_2matrix_2softmax_8hpp_source.html create mode 100644 doc/api/html/math_2matrix_2sort_8hpp.html create mode 100644 doc/api/html/math_2matrix_2sort_8hpp_source.html create mode 100644 doc/api/html/math_2matrix_2squared__distance_8hpp.html create mode 100644 doc/api/html/math_2matrix_2squared__distance_8hpp_source.html create mode 100644 doc/api/html/math_2matrix_2stan__print_8hpp.html create mode 100644 doc/api/html/math_2matrix_2stan__print_8hpp_source.html create mode 100644 doc/api/html/math_2matrix_2sum_8hpp.html create mode 100644 doc/api/html/math_2matrix_2sum_8hpp_source.html create mode 100644 doc/api/html/math_2matrix_2tcrossprod_8hpp.html create mode 100644 doc/api/html/math_2matrix_2tcrossprod_8hpp_source.html create mode 100644 doc/api/html/math_2matrix_2trace__gen__inv__quad__form__ldlt_8hpp.html create mode 100644 doc/api/html/math_2matrix_2trace__gen__inv__quad__form__ldlt_8hpp_source.html create mode 100644 doc/api/html/math_2matrix_2trace__gen__quad__form_8hpp.html create mode 100644 doc/api/html/math_2matrix_2trace__gen__quad__form_8hpp_source.html create mode 100644 doc/api/html/math_2matrix_2trace__inv__quad__form__ldlt_8hpp.html create mode 100644 doc/api/html/math_2matrix_2trace__inv__quad__form__ldlt_8hpp_source.html create mode 100644 doc/api/html/math_2matrix_2trace__quad__form_8hpp.html create mode 100644 doc/api/html/math_2matrix_2trace__quad__form_8hpp_source.html create mode 100644 doc/api/html/math_2matrix_2typedefs_8hpp.html create mode 100644 doc/api/html/math_2matrix_2typedefs_8hpp_source.html create mode 100644 doc/api/html/math_2matrix_2variance_8hpp.html create mode 100644 doc/api/html/math_2matrix_2variance_8hpp_source.html create mode 100644 doc/api/html/math_2matrix_8hpp.html create mode 100644 doc/api/html/math_2matrix_8hpp_source.html create mode 100644 doc/api/html/math_8hpp.html create mode 100644 doc/api/html/math_8hpp_source.html create mode 100644 doc/api/html/matrix_2max_8hpp.html create mode 100644 doc/api/html/matrix_2max_8hpp_source.html create mode 100644 doc/api/html/matrix_2min_8hpp.html create mode 100644 doc/api/html/matrix_2min_8hpp_source.html create mode 100644 doc/api/html/matrix__error__handling_8hpp.html create mode 100644 doc/api/html/matrix__error__handling_8hpp_source.html create mode 100644 doc/api/html/matrix__normal_8hpp.html create mode 100644 doc/api/html/matrix__normal_8hpp_source.html create mode 100644 doc/api/html/matrix__vari_8hpp.html create mode 100644 doc/api/html/matrix__vari_8hpp_source.html create mode 100644 doc/api/html/mcmc_8hpp.html create mode 100644 doc/api/html/mcmc_8hpp_source.html create mode 100644 doc/api/html/mcmc__writer_8hpp.html create mode 100644 doc/api/html/mcmc__writer_8hpp_source.html create mode 100644 doc/api/html/mdivide__right__ldlt_8hpp.html create mode 100644 doc/api/html/mdivide__right__ldlt_8hpp_source.html create mode 100644 doc/api/html/mdivide__right__spd_8hpp.html create mode 100644 doc/api/html/mdivide__right__spd_8hpp_source.html create mode 100644 doc/api/html/mdivide__right__tri_8hpp.html create mode 100644 doc/api/html/mdivide__right__tri_8hpp_source.html create mode 100644 doc/api/html/mean_8hpp.html create mode 100644 doc/api/html/mean_8hpp_source.html create mode 100644 doc/api/html/memory_8hpp.html create mode 100644 doc/api/html/memory_8hpp_source.html create mode 100644 doc/api/html/meta_2traits_8hpp.html create mode 100644 doc/api/html/meta_2traits_8hpp_source.html create mode 100644 doc/api/html/meta_8hpp.html create mode 100644 doc/api/html/meta_8hpp_source.html create mode 100644 doc/api/html/minus_8hpp.html create mode 100644 doc/api/html/minus_8hpp_source.html create mode 100644 doc/api/html/model_2util_8hpp.html create mode 100644 doc/api/html/model_2util_8hpp_source.html create mode 100644 doc/api/html/model_8hpp.html create mode 100644 doc/api/html/model_8hpp_source.html create mode 100644 doc/api/html/model__header_8hpp.html create mode 100644 doc/api/html/model__header_8hpp_source.html create mode 100644 doc/api/html/multi__gp_8hpp.html create mode 100644 doc/api/html/multi__gp_8hpp_source.html create mode 100644 doc/api/html/multi__normal_8hpp.html create mode 100644 doc/api/html/multi__normal_8hpp_source.html create mode 100644 doc/api/html/multi__normal__cholesky_8hpp.html create mode 100644 doc/api/html/multi__normal__cholesky_8hpp_source.html create mode 100644 doc/api/html/multi__normal__prec_8hpp.html create mode 100644 doc/api/html/multi__normal__prec_8hpp_source.html create mode 100644 doc/api/html/multi__student__t_8hpp.html create mode 100644 doc/api/html/multi__student__t_8hpp_source.html create mode 100644 doc/api/html/multinomial_8hpp.html create mode 100644 doc/api/html/multinomial_8hpp_source.html create mode 100644 doc/api/html/multivariate_2continuous_8hpp.html create mode 100644 doc/api/html/multivariate_2continuous_8hpp_source.html create mode 100644 doc/api/html/multivariate_2discrete_8hpp.html create mode 100644 doc/api/html/multivariate_2discrete_8hpp_source.html create mode 100644 doc/api/html/multivariate_8hpp.html create mode 100644 doc/api/html/multivariate_8hpp_source.html create mode 100644 doc/api/html/namespace_eigen.html create mode 100644 doc/api/html/namespace_eigen_1_1internal.html create mode 100644 doc/api/html/namespaceboost.html create mode 100644 doc/api/html/namespaceboost_1_1math.html create mode 100644 doc/api/html/namespacemembers.html create mode 100644 doc/api/html/namespacemembers_0x62.html create mode 100644 doc/api/html/namespacemembers_0x63.html create mode 100644 doc/api/html/namespacemembers_0x64.html create mode 100644 doc/api/html/namespacemembers_0x65.html create mode 100644 doc/api/html/namespacemembers_0x66.html create mode 100644 doc/api/html/namespacemembers_0x67.html create mode 100644 doc/api/html/namespacemembers_0x68.html create mode 100644 doc/api/html/namespacemembers_0x69.html create mode 100644 doc/api/html/namespacemembers_0x6a.html create mode 100644 doc/api/html/namespacemembers_0x6c.html create mode 100644 doc/api/html/namespacemembers_0x6d.html create mode 100644 doc/api/html/namespacemembers_0x6e.html create mode 100644 doc/api/html/namespacemembers_0x6f.html create mode 100644 doc/api/html/namespacemembers_0x70.html create mode 100644 doc/api/html/namespacemembers_0x71.html create mode 100644 doc/api/html/namespacemembers_0x72.html create mode 100644 doc/api/html/namespacemembers_0x73.html create mode 100644 doc/api/html/namespacemembers_0x74.html create mode 100644 doc/api/html/namespacemembers_0x75.html create mode 100644 doc/api/html/namespacemembers_0x76.html create mode 100644 doc/api/html/namespacemembers_0x77.html create mode 100644 doc/api/html/namespacemembers_func.html create mode 100644 doc/api/html/namespacemembers_func_0x62.html create mode 100644 doc/api/html/namespacemembers_func_0x63.html create mode 100644 doc/api/html/namespacemembers_func_0x64.html create mode 100644 doc/api/html/namespacemembers_func_0x65.html create mode 100644 doc/api/html/namespacemembers_func_0x66.html create mode 100644 doc/api/html/namespacemembers_func_0x67.html create mode 100644 doc/api/html/namespacemembers_func_0x68.html create mode 100644 doc/api/html/namespacemembers_func_0x69.html create mode 100644 doc/api/html/namespacemembers_func_0x6a.html create mode 100644 doc/api/html/namespacemembers_func_0x6c.html create mode 100644 doc/api/html/namespacemembers_func_0x6d.html create mode 100644 doc/api/html/namespacemembers_func_0x6e.html create mode 100644 doc/api/html/namespacemembers_func_0x6f.html create mode 100644 doc/api/html/namespacemembers_func_0x70.html create mode 100644 doc/api/html/namespacemembers_func_0x71.html create mode 100644 doc/api/html/namespacemembers_func_0x72.html create mode 100644 doc/api/html/namespacemembers_func_0x73.html create mode 100644 doc/api/html/namespacemembers_func_0x74.html create mode 100644 doc/api/html/namespacemembers_func_0x75.html create mode 100644 doc/api/html/namespacemembers_func_0x76.html create mode 100644 doc/api/html/namespacemembers_func_0x77.html create mode 100644 doc/api/html/namespacemembers_type.html create mode 100644 doc/api/html/namespacemembers_vars.html create mode 100644 doc/api/html/namespaces.html create mode 100644 doc/api/html/namespacestan.html create mode 100644 doc/api/html/namespacestan_1_1agrad.html create mode 100644 doc/api/html/namespacestan_1_1gm.html create mode 100644 doc/api/html/namespacestan_1_1io.html create mode 100644 doc/api/html/namespacestan_1_1math.html create mode 100644 doc/api/html/namespacestan_1_1math_1_1policies.html create mode 100644 doc/api/html/namespacestan_1_1math_1_1policies_1_1detail.html create mode 100644 doc/api/html/namespacestan_1_1mcmc.html create mode 100644 doc/api/html/namespacestan_1_1memory.html create mode 100644 doc/api/html/namespacestan_1_1model.html create mode 100644 doc/api/html/namespacestan_1_1optimization.html create mode 100644 doc/api/html/namespacestan_1_1prob.html create mode 100644 doc/api/html/namespacestd.html create mode 100644 doc/api/html/nav_f.png create mode 100644 doc/api/html/nav_g.png create mode 100644 doc/api/html/nav_h.png create mode 100644 doc/api/html/neg__binomial_8hpp.html create mode 100644 doc/api/html/neg__binomial_8hpp_source.html create mode 100644 doc/api/html/nesterov__gradient_8hpp.html create mode 100644 doc/api/html/nesterov__gradient_8hpp_source.html create mode 100644 doc/api/html/newton_8hpp.html create mode 100644 doc/api/html/newton_8hpp_source.html create mode 100644 doc/api/html/open.png create mode 100644 doc/api/html/operator__divide__equal_8hpp.html create mode 100644 doc/api/html/operator__divide__equal_8hpp_source.html create mode 100644 doc/api/html/operator__minus__equal_8hpp.html create mode 100644 doc/api/html/operator__minus__equal_8hpp_source.html create mode 100644 doc/api/html/operator__multiply__equal_8hpp.html create mode 100644 doc/api/html/operator__multiply__equal_8hpp_source.html create mode 100644 doc/api/html/operator__plus__equal_8hpp.html create mode 100644 doc/api/html/operator__plus__equal_8hpp_source.html create mode 100644 doc/api/html/operator__unary__decrement_8hpp.html create mode 100644 doc/api/html/operator__unary__decrement_8hpp_source.html create mode 100644 doc/api/html/operator__unary__increment_8hpp.html create mode 100644 doc/api/html/operator__unary__increment_8hpp_source.html create mode 100644 doc/api/html/operator__unary__minus_8hpp.html create mode 100644 doc/api/html/operator__unary__minus_8hpp_source.html create mode 100644 doc/api/html/operator__unary__negative_8hpp.html create mode 100644 doc/api/html/operator__unary__negative_8hpp_source.html create mode 100644 doc/api/html/operator__unary__not_8hpp.html create mode 100644 doc/api/html/operator__unary__not_8hpp_source.html create mode 100644 doc/api/html/operator__unary__plus_8hpp.html create mode 100644 doc/api/html/operator__unary__plus_8hpp_source.html create mode 100644 doc/api/html/ordered__logistic_8hpp.html create mode 100644 doc/api/html/ordered__logistic_8hpp_source.html create mode 100644 doc/api/html/pages.html create mode 100644 doc/api/html/pareto_8hpp.html create mode 100644 doc/api/html/pareto_8hpp_source.html create mode 100644 doc/api/html/parser_8hpp.html create mode 100644 doc/api/html/parser_8hpp_source.html create mode 100644 doc/api/html/partials__vari_8hpp.html create mode 100644 doc/api/html/partials__vari_8hpp_source.html create mode 100644 doc/api/html/poisson_8hpp.html create mode 100644 doc/api/html/poisson_8hpp_source.html create mode 100644 doc/api/html/policy_page.html create mode 100644 doc/api/html/precomp__v__vari_8hpp.html create mode 100644 doc/api/html/precomp__v__vari_8hpp_source.html create mode 100644 doc/api/html/precomputed__gradients_8hpp.html create mode 100644 doc/api/html/precomputed__gradients_8hpp_source.html create mode 100644 doc/api/html/print_8cpp.html create mode 100644 doc/api/html/print_8cpp_source.html create mode 100644 doc/api/html/print_8hpp.html create mode 100644 doc/api/html/print_8hpp_source.html create mode 100644 doc/api/html/print__stack_8hpp.html create mode 100644 doc/api/html/print__stack_8hpp_source.html create mode 100644 doc/api/html/prob_2constants_8hpp.html create mode 100644 doc/api/html/prob_2constants_8hpp_source.html create mode 100644 doc/api/html/prob_2distributions_2univariate_2continuous_2normal_8hpp.html create mode 100644 doc/api/html/prob_2distributions_2univariate_2continuous_2normal_8hpp_source.html create mode 100644 doc/api/html/prob_2traits_8hpp.html create mode 100644 doc/api/html/prob_2traits_8hpp_source.html create mode 100644 doc/api/html/prob_8hpp.html create mode 100644 doc/api/html/prob_8hpp_source.html create mode 100644 doc/api/html/prob__grad_8hpp.html create mode 100644 doc/api/html/prob__grad_8hpp_source.html create mode 100644 doc/api/html/prod_8hpp.html create mode 100644 doc/api/html/prod_8hpp_source.html create mode 100644 doc/api/html/program__grammar_8hpp.html create mode 100644 doc/api/html/program__grammar_8hpp_source.html create mode 100644 doc/api/html/program__grammar__def_8hpp.html create mode 100644 doc/api/html/program__grammar__def_8hpp_source.html create mode 100644 doc/api/html/program__grammar__inst_8cpp.html create mode 100644 doc/api/html/program__grammar__inst_8cpp_source.html create mode 100644 doc/api/html/promote__common_8hpp.html create mode 100644 doc/api/html/promote__common_8hpp_source.html create mode 100644 doc/api/html/promoter_8hpp.html create mode 100644 doc/api/html/promoter_8hpp_source.html create mode 100644 doc/api/html/ps__point_8hpp.html create mode 100644 doc/api/html/ps__point_8hpp_source.html create mode 100644 doc/api/html/raise__domain__error_8hpp.html create mode 100644 doc/api/html/raise__domain__error_8hpp_source.html create mode 100644 doc/api/html/rank_8hpp.html create mode 100644 doc/api/html/rank_8hpp_source.html create mode 100644 doc/api/html/rayleigh_8hpp.html create mode 100644 doc/api/html/rayleigh_8hpp_source.html create mode 100644 doc/api/html/reader_8hpp.html create mode 100644 doc/api/html/reader_8hpp_source.html create mode 100644 doc/api/html/rep__array_8hpp.html create mode 100644 doc/api/html/rep__array_8hpp_source.html create mode 100644 doc/api/html/rep__matrix_8hpp.html create mode 100644 doc/api/html/rep__matrix_8hpp_source.html create mode 100644 doc/api/html/rep__row__vector_8hpp.html create mode 100644 doc/api/html/rep__row__vector_8hpp_source.html create mode 100644 doc/api/html/rep__vector_8hpp.html create mode 100644 doc/api/html/rep__vector_8hpp_source.html create mode 100644 doc/api/html/resize_8hpp.html create mode 100644 doc/api/html/resize_8hpp_source.html create mode 100644 doc/api/html/rev_2functions_2acos_8hpp.html create mode 100644 doc/api/html/rev_2functions_2acos_8hpp_source.html create mode 100644 doc/api/html/rev_2functions_2acosh_8hpp.html create mode 100644 doc/api/html/rev_2functions_2acosh_8hpp_source.html create mode 100644 doc/api/html/rev_2functions_2asin_8hpp.html create mode 100644 doc/api/html/rev_2functions_2asin_8hpp_source.html create mode 100644 doc/api/html/rev_2functions_2asinh_8hpp.html create mode 100644 doc/api/html/rev_2functions_2asinh_8hpp_source.html create mode 100644 doc/api/html/rev_2functions_2atan2_8hpp.html create mode 100644 doc/api/html/rev_2functions_2atan2_8hpp_source.html create mode 100644 doc/api/html/rev_2functions_2atan_8hpp.html create mode 100644 doc/api/html/rev_2functions_2atan_8hpp_source.html create mode 100644 doc/api/html/rev_2functions_2atanh_8hpp.html create mode 100644 doc/api/html/rev_2functions_2atanh_8hpp_source.html create mode 100644 doc/api/html/rev_2functions_2cbrt_8hpp.html create mode 100644 doc/api/html/rev_2functions_2cbrt_8hpp_source.html create mode 100644 doc/api/html/rev_2functions_2ceil_8hpp.html create mode 100644 doc/api/html/rev_2functions_2ceil_8hpp_source.html create mode 100644 doc/api/html/rev_2functions_2cos_8hpp.html create mode 100644 doc/api/html/rev_2functions_2cos_8hpp_source.html create mode 100644 doc/api/html/rev_2functions_2cosh_8hpp.html create mode 100644 doc/api/html/rev_2functions_2cosh_8hpp_source.html create mode 100644 doc/api/html/rev_2functions_2erf_8hpp.html create mode 100644 doc/api/html/rev_2functions_2erf_8hpp_source.html create mode 100644 doc/api/html/rev_2functions_2erfc_8hpp.html create mode 100644 doc/api/html/rev_2functions_2erfc_8hpp_source.html create mode 100644 doc/api/html/rev_2functions_2expm1_8hpp.html create mode 100644 doc/api/html/rev_2functions_2expm1_8hpp_source.html create mode 100644 doc/api/html/rev_2functions_2fabs_8hpp.html create mode 100644 doc/api/html/rev_2functions_2fabs_8hpp_source.html create mode 100644 doc/api/html/rev_2functions_2floor_8hpp.html create mode 100644 doc/api/html/rev_2functions_2floor_8hpp_source.html create mode 100644 doc/api/html/rev_2functions_2fmax_8hpp.html create mode 100644 doc/api/html/rev_2functions_2fmax_8hpp_source.html create mode 100644 doc/api/html/rev_2functions_2fmin_8hpp.html create mode 100644 doc/api/html/rev_2functions_2fmin_8hpp_source.html create mode 100644 doc/api/html/rev_2functions_2fmod_8hpp.html create mode 100644 doc/api/html/rev_2functions_2fmod_8hpp_source.html create mode 100644 doc/api/html/rev_2functions_2hypot_8hpp.html create mode 100644 doc/api/html/rev_2functions_2hypot_8hpp_source.html create mode 100644 doc/api/html/rev_2functions_2log10_8hpp.html create mode 100644 doc/api/html/rev_2functions_2log10_8hpp_source.html create mode 100644 doc/api/html/rev_2functions_2pow_8hpp.html create mode 100644 doc/api/html/rev_2functions_2pow_8hpp_source.html create mode 100644 doc/api/html/rev_2functions_2round_8hpp.html create mode 100644 doc/api/html/rev_2functions_2round_8hpp_source.html create mode 100644 doc/api/html/rev_2functions_2sin_8hpp.html create mode 100644 doc/api/html/rev_2functions_2sin_8hpp_source.html create mode 100644 doc/api/html/rev_2functions_2sinh_8hpp.html create mode 100644 doc/api/html/rev_2functions_2sinh_8hpp_source.html create mode 100644 doc/api/html/rev_2functions_2sqrt_8hpp.html create mode 100644 doc/api/html/rev_2functions_2sqrt_8hpp_source.html create mode 100644 doc/api/html/rev_2functions_2tan_8hpp.html create mode 100644 doc/api/html/rev_2functions_2tan_8hpp_source.html create mode 100644 doc/api/html/rev_2functions_2tanh_8hpp.html create mode 100644 doc/api/html/rev_2functions_2tanh_8hpp_source.html create mode 100644 doc/api/html/rev_2functions_2tgamma_8hpp.html create mode 100644 doc/api/html/rev_2functions_2tgamma_8hpp_source.html create mode 100644 doc/api/html/rev_2functions_2trunc_8hpp.html create mode 100644 doc/api/html/rev_2functions_2trunc_8hpp_source.html create mode 100644 doc/api/html/rev_2numeric__limits_8hpp.html create mode 100644 doc/api/html/rev_2numeric__limits_8hpp_source.html create mode 100644 doc/api/html/rev_2operators_2operator__addition_8hpp.html create mode 100644 doc/api/html/rev_2operators_2operator__addition_8hpp_source.html create mode 100644 doc/api/html/rev_2operators_2operator__division_8hpp.html create mode 100644 doc/api/html/rev_2operators_2operator__division_8hpp_source.html create mode 100644 doc/api/html/rev_2operators_2operator__equal_8hpp.html create mode 100644 doc/api/html/rev_2operators_2operator__equal_8hpp_source.html create mode 100644 doc/api/html/rev_2operators_2operator__greater__than_8hpp.html create mode 100644 doc/api/html/rev_2operators_2operator__greater__than_8hpp_source.html create mode 100644 doc/api/html/rev_2operators_2operator__greater__than__or__equal_8hpp.html create mode 100644 doc/api/html/rev_2operators_2operator__greater__than__or__equal_8hpp_source.html create mode 100644 doc/api/html/rev_2operators_2operator__less__than_8hpp.html create mode 100644 doc/api/html/rev_2operators_2operator__less__than_8hpp_source.html create mode 100644 doc/api/html/rev_2operators_2operator__less__than__or__equal_8hpp.html create mode 100644 doc/api/html/rev_2operators_2operator__less__than__or__equal_8hpp_source.html create mode 100644 doc/api/html/rev_2operators_2operator__multiplication_8hpp.html create mode 100644 doc/api/html/rev_2operators_2operator__multiplication_8hpp_source.html create mode 100644 doc/api/html/rev_2operators_2operator__not__equal_8hpp.html create mode 100644 doc/api/html/rev_2operators_2operator__not__equal_8hpp_source.html create mode 100644 doc/api/html/rev_2operators_2operator__subtraction_8hpp.html create mode 100644 doc/api/html/rev_2operators_2operator__subtraction_8hpp_source.html create mode 100644 doc/api/html/rev_2operators_8hpp.html create mode 100644 doc/api/html/rev_2operators_8hpp_source.html create mode 100644 doc/api/html/rev_8hpp.html create mode 100644 doc/api/html/rev_8hpp_source.html create mode 100644 doc/api/html/row_8hpp.html create mode 100644 doc/api/html/row_8hpp_source.html create mode 100644 doc/api/html/rows_8hpp.html create mode 100644 doc/api/html/rows_8hpp_source.html create mode 100644 doc/api/html/sample_8hpp.html create mode 100644 doc/api/html/sample_8hpp_source.html create mode 100644 doc/api/html/scaled__add_8hpp.html create mode 100644 doc/api/html/scaled__add_8hpp_source.html create mode 100644 doc/api/html/scaled__inv__chi__square_8hpp.html create mode 100644 doc/api/html/scaled__inv__chi__square_8hpp_source.html create mode 100644 doc/api/html/search/all_5f.html create mode 100644 doc/api/html/search/all_5f.js create mode 100644 doc/api/html/search/all_61.html create mode 100644 doc/api/html/search/all_61.js create mode 100644 doc/api/html/search/all_62.html create mode 100644 doc/api/html/search/all_62.js create mode 100644 doc/api/html/search/all_63.html create mode 100644 doc/api/html/search/all_63.js create mode 100644 doc/api/html/search/all_64.html create mode 100644 doc/api/html/search/all_64.js create mode 100644 doc/api/html/search/all_65.html create mode 100644 doc/api/html/search/all_65.js create mode 100644 doc/api/html/search/all_66.html create mode 100644 doc/api/html/search/all_66.js create mode 100644 doc/api/html/search/all_67.html create mode 100644 doc/api/html/search/all_67.js create mode 100644 doc/api/html/search/all_68.html create mode 100644 doc/api/html/search/all_68.js create mode 100644 doc/api/html/search/all_69.html create mode 100644 doc/api/html/search/all_69.js create mode 100644 doc/api/html/search/all_6a.html create mode 100644 doc/api/html/search/all_6a.js create mode 100644 doc/api/html/search/all_6b.html create mode 100644 doc/api/html/search/all_6b.js create mode 100644 doc/api/html/search/all_6c.html create mode 100644 doc/api/html/search/all_6c.js create mode 100644 doc/api/html/search/all_6d.html create mode 100644 doc/api/html/search/all_6d.js create mode 100644 doc/api/html/search/all_6e.html create mode 100644 doc/api/html/search/all_6e.js create mode 100644 doc/api/html/search/all_6f.html create mode 100644 doc/api/html/search/all_6f.js create mode 100644 doc/api/html/search/all_70.html create mode 100644 doc/api/html/search/all_70.js create mode 100644 doc/api/html/search/all_71.html create mode 100644 doc/api/html/search/all_71.js create mode 100644 doc/api/html/search/all_72.html create mode 100644 doc/api/html/search/all_72.js create mode 100644 doc/api/html/search/all_73.html create mode 100644 doc/api/html/search/all_73.js create mode 100644 doc/api/html/search/all_74.html create mode 100644 doc/api/html/search/all_74.js create mode 100644 doc/api/html/search/all_75.html create mode 100644 doc/api/html/search/all_75.js create mode 100644 doc/api/html/search/all_76.html create mode 100644 doc/api/html/search/all_76.js create mode 100644 doc/api/html/search/all_77.html create mode 100644 doc/api/html/search/all_77.js create mode 100644 doc/api/html/search/all_78.html create mode 100644 doc/api/html/search/all_78.js create mode 100644 doc/api/html/search/all_7a.html create mode 100644 doc/api/html/search/all_7a.js create mode 100644 doc/api/html/search/all_7e.html create mode 100644 doc/api/html/search/all_7e.js create mode 100644 doc/api/html/search/classes_61.html create mode 100644 doc/api/html/search/classes_61.js create mode 100644 doc/api/html/search/classes_62.html create mode 100644 doc/api/html/search/classes_62.js create mode 100644 doc/api/html/search/classes_63.html create mode 100644 doc/api/html/search/classes_63.js create mode 100644 doc/api/html/search/classes_64.html create mode 100644 doc/api/html/search/classes_64.js create mode 100644 doc/api/html/search/classes_65.html create mode 100644 doc/api/html/search/classes_65.js create mode 100644 doc/api/html/search/classes_66.html create mode 100644 doc/api/html/search/classes_66.js create mode 100644 doc/api/html/search/classes_67.html create mode 100644 doc/api/html/search/classes_67.js create mode 100644 doc/api/html/search/classes_69.html create mode 100644 doc/api/html/search/classes_69.js create mode 100644 doc/api/html/search/classes_6c.html create mode 100644 doc/api/html/search/classes_6c.js create mode 100644 doc/api/html/search/classes_6d.html create mode 100644 doc/api/html/search/classes_6d.js create mode 100644 doc/api/html/search/classes_6e.html create mode 100644 doc/api/html/search/classes_6e.js create mode 100644 doc/api/html/search/classes_6f.html create mode 100644 doc/api/html/search/classes_6f.js create mode 100644 doc/api/html/search/classes_70.html create mode 100644 doc/api/html/search/classes_70.js create mode 100644 doc/api/html/search/classes_72.html create mode 100644 doc/api/html/search/classes_72.js create mode 100644 doc/api/html/search/classes_73.html create mode 100644 doc/api/html/search/classes_73.js create mode 100644 doc/api/html/search/classes_74.html create mode 100644 doc/api/html/search/classes_74.js create mode 100644 doc/api/html/search/classes_75.html create mode 100644 doc/api/html/search/classes_75.js create mode 100644 doc/api/html/search/classes_76.html create mode 100644 doc/api/html/search/classes_76.js create mode 100644 doc/api/html/search/classes_77.html create mode 100644 doc/api/html/search/classes_77.js create mode 100644 doc/api/html/search/close.png create mode 100644 doc/api/html/search/defines_5f.html create mode 100644 doc/api/html/search/defines_5f.js create mode 100644 doc/api/html/search/defines_64.html create mode 100644 doc/api/html/search/defines_64.js create mode 100644 doc/api/html/search/defines_65.html create mode 100644 doc/api/html/search/defines_65.js create mode 100644 doc/api/html/search/defines_6c.html create mode 100644 doc/api/html/search/defines_6c.js create mode 100644 doc/api/html/search/defines_75.html create mode 100644 doc/api/html/search/defines_75.js create mode 100644 doc/api/html/search/enumvalues_61.html create mode 100644 doc/api/html/search/enumvalues_61.js create mode 100644 doc/api/html/search/enumvalues_63.html create mode 100644 doc/api/html/search/enumvalues_63.js create mode 100644 doc/api/html/search/enumvalues_64.html create mode 100644 doc/api/html/search/enumvalues_64.js create mode 100644 doc/api/html/search/enumvalues_68.html create mode 100644 doc/api/html/search/enumvalues_68.js create mode 100644 doc/api/html/search/enumvalues_69.html create mode 100644 doc/api/html/search/enumvalues_69.js create mode 100644 doc/api/html/search/enumvalues_6c.html create mode 100644 doc/api/html/search/enumvalues_6c.js create mode 100644 doc/api/html/search/enumvalues_6d.html create mode 100644 doc/api/html/search/enumvalues_6d.js create mode 100644 doc/api/html/search/enumvalues_6e.html create mode 100644 doc/api/html/search/enumvalues_6e.js create mode 100644 doc/api/html/search/enumvalues_6f.html create mode 100644 doc/api/html/search/enumvalues_6f.js create mode 100644 doc/api/html/search/enumvalues_72.html create mode 100644 doc/api/html/search/enumvalues_72.js create mode 100644 doc/api/html/search/enumvalues_73.html create mode 100644 doc/api/html/search/enumvalues_73.js create mode 100644 doc/api/html/search/enumvalues_75.html create mode 100644 doc/api/html/search/enumvalues_75.js create mode 100644 doc/api/html/search/enumvalues_76.html create mode 100644 doc/api/html/search/enumvalues_76.js create mode 100644 doc/api/html/search/files_61.html create mode 100644 doc/api/html/search/files_61.js create mode 100644 doc/api/html/search/files_62.html create mode 100644 doc/api/html/search/files_62.js create mode 100644 doc/api/html/search/files_63.html create mode 100644 doc/api/html/search/files_63.js create mode 100644 doc/api/html/search/files_64.html create mode 100644 doc/api/html/search/files_64.js create mode 100644 doc/api/html/search/files_65.html create mode 100644 doc/api/html/search/files_65.js create mode 100644 doc/api/html/search/files_66.html create mode 100644 doc/api/html/search/files_66.js create mode 100644 doc/api/html/search/files_67.html create mode 100644 doc/api/html/search/files_67.js create mode 100644 doc/api/html/search/files_68.html create mode 100644 doc/api/html/search/files_68.js create mode 100644 doc/api/html/search/files_69.html create mode 100644 doc/api/html/search/files_69.js create mode 100644 doc/api/html/search/files_6a.html create mode 100644 doc/api/html/search/files_6a.js create mode 100644 doc/api/html/search/files_6c.html create mode 100644 doc/api/html/search/files_6c.js create mode 100644 doc/api/html/search/files_6d.html create mode 100644 doc/api/html/search/files_6d.js create mode 100644 doc/api/html/search/files_6e.html create mode 100644 doc/api/html/search/files_6e.js create mode 100644 doc/api/html/search/files_6f.html create mode 100644 doc/api/html/search/files_6f.js create mode 100644 doc/api/html/search/files_70.html create mode 100644 doc/api/html/search/files_70.js create mode 100644 doc/api/html/search/files_71.html create mode 100644 doc/api/html/search/files_71.js create mode 100644 doc/api/html/search/files_72.html create mode 100644 doc/api/html/search/files_72.js create mode 100644 doc/api/html/search/files_73.html create mode 100644 doc/api/html/search/files_73.js create mode 100644 doc/api/html/search/files_74.html create mode 100644 doc/api/html/search/files_74.js create mode 100644 doc/api/html/search/files_75.html create mode 100644 doc/api/html/search/files_75.js create mode 100644 doc/api/html/search/files_76.html create mode 100644 doc/api/html/search/files_76.js create mode 100644 doc/api/html/search/files_77.html create mode 100644 doc/api/html/search/files_77.js create mode 100644 doc/api/html/search/functions_5f.html create mode 100644 doc/api/html/search/functions_5f.js create mode 100644 doc/api/html/search/functions_61.html create mode 100644 doc/api/html/search/functions_61.js create mode 100644 doc/api/html/search/functions_62.html create mode 100644 doc/api/html/search/functions_62.js create mode 100644 doc/api/html/search/functions_63.html create mode 100644 doc/api/html/search/functions_63.js create mode 100644 doc/api/html/search/functions_64.html create mode 100644 doc/api/html/search/functions_64.js create mode 100644 doc/api/html/search/functions_65.html create mode 100644 doc/api/html/search/functions_65.js create mode 100644 doc/api/html/search/functions_66.html create mode 100644 doc/api/html/search/functions_66.js create mode 100644 doc/api/html/search/functions_67.html create mode 100644 doc/api/html/search/functions_67.js create mode 100644 doc/api/html/search/functions_68.html create mode 100644 doc/api/html/search/functions_68.js create mode 100644 doc/api/html/search/functions_69.html create mode 100644 doc/api/html/search/functions_69.js create mode 100644 doc/api/html/search/functions_6a.html create mode 100644 doc/api/html/search/functions_6a.js create mode 100644 doc/api/html/search/functions_6b.html create mode 100644 doc/api/html/search/functions_6b.js create mode 100644 doc/api/html/search/functions_6c.html create mode 100644 doc/api/html/search/functions_6c.js create mode 100644 doc/api/html/search/functions_6d.html create mode 100644 doc/api/html/search/functions_6d.js create mode 100644 doc/api/html/search/functions_6e.html create mode 100644 doc/api/html/search/functions_6e.js create mode 100644 doc/api/html/search/functions_6f.html create mode 100644 doc/api/html/search/functions_6f.js create mode 100644 doc/api/html/search/functions_70.html create mode 100644 doc/api/html/search/functions_70.js create mode 100644 doc/api/html/search/functions_71.html create mode 100644 doc/api/html/search/functions_71.js create mode 100644 doc/api/html/search/functions_72.html create mode 100644 doc/api/html/search/functions_72.js create mode 100644 doc/api/html/search/functions_73.html create mode 100644 doc/api/html/search/functions_73.js create mode 100644 doc/api/html/search/functions_74.html create mode 100644 doc/api/html/search/functions_74.js create mode 100644 doc/api/html/search/functions_75.html create mode 100644 doc/api/html/search/functions_75.js create mode 100644 doc/api/html/search/functions_76.html create mode 100644 doc/api/html/search/functions_76.js create mode 100644 doc/api/html/search/functions_77.html create mode 100644 doc/api/html/search/functions_77.js create mode 100644 doc/api/html/search/functions_7a.html create mode 100644 doc/api/html/search/functions_7a.js create mode 100644 doc/api/html/search/functions_7e.html create mode 100644 doc/api/html/search/functions_7e.js create mode 100644 doc/api/html/search/mag_sel.png create mode 100644 doc/api/html/search/namespaces_62.html create mode 100644 doc/api/html/search/namespaces_62.js create mode 100644 doc/api/html/search/namespaces_65.html create mode 100644 doc/api/html/search/namespaces_65.js create mode 100644 doc/api/html/search/namespaces_73.html create mode 100644 doc/api/html/search/namespaces_73.js create mode 100644 doc/api/html/search/nomatches.html create mode 100644 doc/api/html/search/pages_65.html create mode 100644 doc/api/html/search/pages_65.js create mode 100644 doc/api/html/search/related_6f.html create mode 100644 doc/api/html/search/related_6f.js create mode 100644 doc/api/html/search/related_76.html create mode 100644 doc/api/html/search/related_76.js create mode 100644 doc/api/html/search/search.css create mode 100644 doc/api/html/search/search.js create mode 100644 doc/api/html/search/search_l.png create mode 100644 doc/api/html/search/search_m.png create mode 100644 doc/api/html/search/search_r.png create mode 100644 doc/api/html/search/typedefs_61.html create mode 100644 doc/api/html/search/typedefs_61.js create mode 100644 doc/api/html/search/typedefs_62.html create mode 100644 doc/api/html/search/typedefs_62.js create mode 100644 doc/api/html/search/typedefs_65.html create mode 100644 doc/api/html/search/typedefs_65.js create mode 100644 doc/api/html/search/typedefs_66.html create mode 100644 doc/api/html/search/typedefs_66.js create mode 100644 doc/api/html/search/typedefs_68.html create mode 100644 doc/api/html/search/typedefs_68.js create mode 100644 doc/api/html/search/typedefs_69.html create mode 100644 doc/api/html/search/typedefs_69.js create mode 100644 doc/api/html/search/typedefs_6c.html create mode 100644 doc/api/html/search/typedefs_6c.js create mode 100644 doc/api/html/search/typedefs_6d.html create mode 100644 doc/api/html/search/typedefs_6d.js create mode 100644 doc/api/html/search/typedefs_6e.html create mode 100644 doc/api/html/search/typedefs_6e.js create mode 100644 doc/api/html/search/typedefs_70.html create mode 100644 doc/api/html/search/typedefs_70.js create mode 100644 doc/api/html/search/typedefs_72.html create mode 100644 doc/api/html/search/typedefs_72.js create mode 100644 doc/api/html/search/typedefs_73.html create mode 100644 doc/api/html/search/typedefs_73.js create mode 100644 doc/api/html/search/typedefs_74.html create mode 100644 doc/api/html/search/typedefs_74.js create mode 100644 doc/api/html/search/typedefs_75.html create mode 100644 doc/api/html/search/typedefs_75.js create mode 100644 doc/api/html/search/typedefs_76.html create mode 100644 doc/api/html/search/typedefs_76.js create mode 100644 doc/api/html/search/variables_5f.html create mode 100644 doc/api/html/search/variables_5f.js create mode 100644 doc/api/html/search/variables_61.html create mode 100644 doc/api/html/search/variables_61.js create mode 100644 doc/api/html/search/variables_62.html create mode 100644 doc/api/html/search/variables_62.js create mode 100644 doc/api/html/search/variables_63.html create mode 100644 doc/api/html/search/variables_63.js create mode 100644 doc/api/html/search/variables_64.html create mode 100644 doc/api/html/search/variables_64.js create mode 100644 doc/api/html/search/variables_65.html create mode 100644 doc/api/html/search/variables_65.js create mode 100644 doc/api/html/search/variables_66.html create mode 100644 doc/api/html/search/variables_66.js create mode 100644 doc/api/html/search/variables_67.html create mode 100644 doc/api/html/search/variables_67.js create mode 100644 doc/api/html/search/variables_68.html create mode 100644 doc/api/html/search/variables_68.js create mode 100644 doc/api/html/search/variables_69.html create mode 100644 doc/api/html/search/variables_69.js create mode 100644 doc/api/html/search/variables_6b.html create mode 100644 doc/api/html/search/variables_6b.js create mode 100644 doc/api/html/search/variables_6c.html create mode 100644 doc/api/html/search/variables_6c.js create mode 100644 doc/api/html/search/variables_6d.html create mode 100644 doc/api/html/search/variables_6d.js create mode 100644 doc/api/html/search/variables_6e.html create mode 100644 doc/api/html/search/variables_6e.js create mode 100644 doc/api/html/search/variables_6f.html create mode 100644 doc/api/html/search/variables_6f.js create mode 100644 doc/api/html/search/variables_70.html create mode 100644 doc/api/html/search/variables_70.js create mode 100644 doc/api/html/search/variables_71.html create mode 100644 doc/api/html/search/variables_71.js create mode 100644 doc/api/html/search/variables_72.html create mode 100644 doc/api/html/search/variables_72.js create mode 100644 doc/api/html/search/variables_73.html create mode 100644 doc/api/html/search/variables_73.js create mode 100644 doc/api/html/search/variables_74.html create mode 100644 doc/api/html/search/variables_74.js create mode 100644 doc/api/html/search/variables_75.html create mode 100644 doc/api/html/search/variables_75.js create mode 100644 doc/api/html/search/variables_76.html create mode 100644 doc/api/html/search/variables_76.js create mode 100644 doc/api/html/search/variables_77.html create mode 100644 doc/api/html/search/variables_77.js create mode 100644 doc/api/html/search/variables_78.html create mode 100644 doc/api/html/search/variables_78.js create mode 100644 doc/api/html/segment_8hpp.html create mode 100644 doc/api/html/segment_8hpp_source.html create mode 100644 doc/api/html/seq__view_8hpp.html create mode 100644 doc/api/html/seq__view_8hpp_source.html create mode 100644 doc/api/html/singleton__argument_8hpp.html create mode 100644 doc/api/html/singleton__argument_8hpp_source.html create mode 100644 doc/api/html/singular__values_8hpp.html create mode 100644 doc/api/html/singular__values_8hpp_source.html create mode 100644 doc/api/html/size_8hpp.html create mode 100644 doc/api/html/size_8hpp_source.html create mode 100644 doc/api/html/skew__normal_8hpp.html create mode 100644 doc/api/html/skew__normal_8hpp_source.html create mode 100644 doc/api/html/stack__alloc_8hpp.html create mode 100644 doc/api/html/stack__alloc_8hpp_source.html create mode 100644 doc/api/html/stan_8dox.html create mode 100644 doc/api/html/stan__csv__reader_8hpp.html create mode 100644 doc/api/html/stan__csv__reader_8hpp_source.html create mode 100644 doc/api/html/stanc_8cpp.html create mode 100644 doc/api/html/stanc_8cpp_source.html create mode 100644 doc/api/html/stanc__helper_8hpp.html create mode 100644 doc/api/html/stanc__helper_8hpp_source.html create mode 100644 doc/api/html/stanlogo-main.png create mode 100644 doc/api/html/statement__2__grammar_8hpp.html create mode 100644 doc/api/html/statement__2__grammar_8hpp_source.html create mode 100644 doc/api/html/statement__2__grammar__def_8hpp.html create mode 100644 doc/api/html/statement__2__grammar__def_8hpp_source.html create mode 100644 doc/api/html/statement__2__grammar__inst_8cpp.html create mode 100644 doc/api/html/statement__2__grammar__inst_8cpp_source.html create mode 100644 doc/api/html/statement__grammar_8hpp.html create mode 100644 doc/api/html/statement__grammar_8hpp_source.html create mode 100644 doc/api/html/statement__grammar__def_8hpp.html create mode 100644 doc/api/html/statement__grammar__def_8hpp_source.html create mode 100644 doc/api/html/statement__grammar__inst_8cpp.html create mode 100644 doc/api/html/statement__grammar__inst_8cpp_source.html create mode 100644 doc/api/html/std_8dox.html create mode 100644 doc/api/html/stepsize__adaptation_8hpp.html create mode 100644 doc/api/html/stepsize__adaptation_8hpp_source.html create mode 100644 doc/api/html/stepsize__adapter_8hpp.html create mode 100644 doc/api/html/stepsize__adapter_8hpp_source.html create mode 100644 doc/api/html/stepsize__covar__adapter_8hpp.html create mode 100644 doc/api/html/stepsize__covar__adapter_8hpp_source.html create mode 100644 doc/api/html/stepsize__var__adapter_8hpp.html create mode 100644 doc/api/html/stepsize__var__adapter_8hpp_source.html create mode 100644 doc/api/html/stored__gradient__vari_8hpp.html create mode 100644 doc/api/html/stored__gradient__vari_8hpp_source.html create mode 100644 doc/api/html/struct_eigen_1_1_num_traits_3_01stan_1_1agrad_1_1var_01_4-members.html create mode 100644 doc/api/html/struct_eigen_1_1_num_traits_3_01stan_1_1agrad_1_1var_01_4.html create mode 100644 doc/api/html/struct_eigen_1_1internal_1_1general__matrix__matrix__product_3_01_index_00_01stan_1_1agrad_1_1va753d9f8f3d54fbedc22d657246672d94.html create mode 100644 doc/api/html/struct_eigen_1_1internal_1_1general__matrix__matrix__product_3_01_index_00_01stan_1_1agrad_1_1va9b485de9571b6e46d7a64aff43a6d9d3.html create mode 100644 doc/api/html/struct_eigen_1_1internal_1_1general__matrix__vector__product_3_01_index_00_01stan_1_1agrad_1_1va16fe21f36cb92096f2fc63d419437421.html create mode 100644 doc/api/html/struct_eigen_1_1internal_1_1general__matrix__vector__product_3_01_index_00_01stan_1_1agrad_1_1va3d1bc254c18abbf59c1006f7e7cbcbac.html create mode 100644 doc/api/html/struct_eigen_1_1internal_1_1general__matrix__vector__product_3_01_index_00_01stan_1_1agrad_1_1va44da5f98e1caea9523bacbd5bdc025fe.html create mode 100644 doc/api/html/struct_eigen_1_1internal_1_1general__matrix__vector__product_3_01_index_00_01stan_1_1agrad_1_1vacd54cabc78c49ca719650381b68b105e.html create mode 100644 doc/api/html/struct_eigen_1_1internal_1_1scalar__product__traits_3_01double_00_01stan_1_1agrad_1_1var_01_4-members.html create mode 100644 doc/api/html/struct_eigen_1_1internal_1_1scalar__product__traits_3_01double_00_01stan_1_1agrad_1_1var_01_4.html create mode 100644 doc/api/html/struct_eigen_1_1internal_1_1scalar__product__traits_3_01stan_1_1agrad_1_1var_00_01double_01_4-members.html create mode 100644 doc/api/html/struct_eigen_1_1internal_1_1scalar__product__traits_3_01stan_1_1agrad_1_1var_00_01double_01_4.html create mode 100644 doc/api/html/struct_eigen_1_1internal_1_1significant__decimals__default__impl_3_01stan_1_1agrad_1_1var_00_01false_01_4-members.html create mode 100644 doc/api/html/struct_eigen_1_1internal_1_1significant__decimals__default__impl_3_01stan_1_1agrad_1_1var_00_01false_01_4.html create mode 100644 doc/api/html/structdot__product__store__type.html create mode 100644 doc/api/html/structexpression__grammar.html create mode 100644 doc/api/html/structstan_1_1agrad_1_1_operands_and_partials-members.html create mode 100644 doc/api/html/structstan_1_1agrad_1_1_operands_and_partials.html create mode 100644 doc/api/html/structstan_1_1agrad_1_1fvar-members.html create mode 100644 doc/api/html/structstan_1_1agrad_1_1fvar.html create mode 100644 doc/api/html/structstan_1_1contains__fvar-members.html create mode 100644 doc/api/html/structstan_1_1contains__fvar.html create mode 100644 doc/api/html/structstan_1_1gm_1_1add__conditional__body-members.html create mode 100644 doc/api/html/structstan_1_1gm_1_1add__conditional__body.html create mode 100644 doc/api/html/structstan_1_1gm_1_1add__conditional__body_1_1result-members.html create mode 100644 doc/api/html/structstan_1_1gm_1_1add__conditional__body_1_1result.html create mode 100644 doc/api/html/structstan_1_1gm_1_1add__conditional__condition-members.html create mode 100644 doc/api/html/structstan_1_1gm_1_1add__conditional__condition.html create mode 100644 doc/api/html/structstan_1_1gm_1_1add__conditional__condition_1_1result-members.html create mode 100644 doc/api/html/structstan_1_1gm_1_1add__conditional__condition_1_1result.html create mode 100644 doc/api/html/structstan_1_1gm_1_1add__expression__dimss-members.html create mode 100644 doc/api/html/structstan_1_1gm_1_1add__expression__dimss.html create mode 100644 doc/api/html/structstan_1_1gm_1_1add__expression__dimss_1_1result-members.html create mode 100644 doc/api/html/structstan_1_1gm_1_1add__expression__dimss_1_1result.html create mode 100644 doc/api/html/structstan_1_1gm_1_1add__loop__identifier-members.html create mode 100644 doc/api/html/structstan_1_1gm_1_1add__loop__identifier.html create mode 100644 doc/api/html/structstan_1_1gm_1_1add__loop__identifier_1_1result-members.html create mode 100644 doc/api/html/structstan_1_1gm_1_1add__loop__identifier_1_1result.html create mode 100644 doc/api/html/structstan_1_1gm_1_1add__while__body-members.html create mode 100644 doc/api/html/structstan_1_1gm_1_1add__while__body.html create mode 100644 doc/api/html/structstan_1_1gm_1_1add__while__body_1_1result-members.html create mode 100644 doc/api/html/structstan_1_1gm_1_1add__while__body_1_1result.html create mode 100644 doc/api/html/structstan_1_1gm_1_1add__while__condition-members.html create mode 100644 doc/api/html/structstan_1_1gm_1_1add__while__condition.html create mode 100644 doc/api/html/structstan_1_1gm_1_1add__while__condition_1_1result-members.html create mode 100644 doc/api/html/structstan_1_1gm_1_1add__while__condition_1_1result.html create mode 100644 doc/api/html/structstan_1_1gm_1_1addition__expr-members.html create mode 100644 doc/api/html/structstan_1_1gm_1_1addition__expr.html create mode 100644 doc/api/html/structstan_1_1gm_1_1addition__expr_1_1result-members.html create mode 100644 doc/api/html/structstan_1_1gm_1_1addition__expr_1_1result.html create mode 100644 doc/api/html/structstan_1_1gm_1_1array__literal-members.html create mode 100644 doc/api/html/structstan_1_1gm_1_1array__literal.html create mode 100644 doc/api/html/structstan_1_1gm_1_1assignment-members.html create mode 100644 doc/api/html/structstan_1_1gm_1_1assignment.html create mode 100644 doc/api/html/structstan_1_1gm_1_1base__var__decl-members.html create mode 100644 doc/api/html/structstan_1_1gm_1_1base__var__decl.html create mode 100644 doc/api/html/structstan_1_1gm_1_1base__var__decl.png create mode 100644 doc/api/html/structstan_1_1gm_1_1binary__op-members.html create mode 100644 doc/api/html/structstan_1_1gm_1_1binary__op.html create mode 100644 doc/api/html/structstan_1_1gm_1_1binary__op__expr-members.html create mode 100644 doc/api/html/structstan_1_1gm_1_1binary__op__expr.html create mode 100644 doc/api/html/structstan_1_1gm_1_1binary__op__expr_1_1result-members.html create mode 100644 doc/api/html/structstan_1_1gm_1_1binary__op__expr_1_1result.html create mode 100644 doc/api/html/structstan_1_1gm_1_1cholesky__factor__var__decl-members.html create mode 100644 doc/api/html/structstan_1_1gm_1_1cholesky__factor__var__decl.html create mode 100644 doc/api/html/structstan_1_1gm_1_1cholesky__factor__var__decl.png create mode 100644 doc/api/html/structstan_1_1gm_1_1conditional__statement-members.html create mode 100644 doc/api/html/structstan_1_1gm_1_1conditional__statement.html create mode 100644 doc/api/html/structstan_1_1gm_1_1constrained__param__names__visgen-members.html create mode 100644 doc/api/html/structstan_1_1gm_1_1constrained__param__names__visgen.html create mode 100644 doc/api/html/structstan_1_1gm_1_1constrained__param__names__visgen.png create mode 100644 doc/api/html/structstan_1_1gm_1_1contains__nonparam__var-members.html create mode 100644 doc/api/html/structstan_1_1gm_1_1contains__nonparam__var.html create mode 100644 doc/api/html/structstan_1_1gm_1_1contains__nonparam__var.png create mode 100644 doc/api/html/structstan_1_1gm_1_1contains__var-members.html create mode 100644 doc/api/html/structstan_1_1gm_1_1contains__var.html create mode 100644 doc/api/html/structstan_1_1gm_1_1contains__var.png create mode 100644 doc/api/html/structstan_1_1gm_1_1corr__matrix__var__decl-members.html create mode 100644 doc/api/html/structstan_1_1gm_1_1corr__matrix__var__decl.html create mode 100644 doc/api/html/structstan_1_1gm_1_1corr__matrix__var__decl.png create mode 100644 doc/api/html/structstan_1_1gm_1_1cov__matrix__var__decl-members.html create mode 100644 doc/api/html/structstan_1_1gm_1_1cov__matrix__var__decl.html create mode 100644 doc/api/html/structstan_1_1gm_1_1cov__matrix__var__decl.png create mode 100644 doc/api/html/structstan_1_1gm_1_1distribution-members.html create mode 100644 doc/api/html/structstan_1_1gm_1_1distribution.html create mode 100644 doc/api/html/structstan_1_1gm_1_1division__expr-members.html create mode 100644 doc/api/html/structstan_1_1gm_1_1division__expr.html create mode 100644 doc/api/html/structstan_1_1gm_1_1division__expr_1_1result-members.html create mode 100644 doc/api/html/structstan_1_1gm_1_1division__expr_1_1result.html create mode 100644 doc/api/html/structstan_1_1gm_1_1double__literal-members.html create mode 100644 doc/api/html/structstan_1_1gm_1_1double__literal.html create mode 100644 doc/api/html/structstan_1_1gm_1_1double__var__decl-members.html create mode 100644 doc/api/html/structstan_1_1gm_1_1double__var__decl.html create mode 100644 doc/api/html/structstan_1_1gm_1_1double__var__decl.png create mode 100644 doc/api/html/structstan_1_1gm_1_1dump__member__var__visgen-members.html create mode 100644 doc/api/html/structstan_1_1gm_1_1dump__member__var__visgen.html create mode 100644 doc/api/html/structstan_1_1gm_1_1dump__member__var__visgen.png create mode 100644 doc/api/html/structstan_1_1gm_1_1elt__division__expr-members.html create mode 100644 doc/api/html/structstan_1_1gm_1_1elt__division__expr.html create mode 100644 doc/api/html/structstan_1_1gm_1_1elt__division__expr_1_1result-members.html create mode 100644 doc/api/html/structstan_1_1gm_1_1elt__division__expr_1_1result.html create mode 100644 doc/api/html/structstan_1_1gm_1_1elt__multiplication__expr-members.html create mode 100644 doc/api/html/structstan_1_1gm_1_1elt__multiplication__expr.html create mode 100644 doc/api/html/structstan_1_1gm_1_1elt__multiplication__expr_1_1result-members.html create mode 100644 doc/api/html/structstan_1_1gm_1_1elt__multiplication__expr_1_1result.html create mode 100644 doc/api/html/structstan_1_1gm_1_1error__codes-members.html create mode 100644 doc/api/html/structstan_1_1gm_1_1error__codes.html create mode 100644 doc/api/html/structstan_1_1gm_1_1expr__type-members.html create mode 100644 doc/api/html/structstan_1_1gm_1_1expr__type.html create mode 100644 doc/api/html/structstan_1_1gm_1_1expression-members.html create mode 100644 doc/api/html/structstan_1_1gm_1_1expression.html create mode 100644 doc/api/html/structstan_1_1gm_1_1expression__as__statement-members.html create mode 100644 doc/api/html/structstan_1_1gm_1_1expression__as__statement.html create mode 100644 doc/api/html/structstan_1_1gm_1_1expression__as__statement_1_1result-members.html create mode 100644 doc/api/html/structstan_1_1gm_1_1expression__as__statement_1_1result.html create mode 100644 doc/api/html/structstan_1_1gm_1_1expression__grammar-members.html create mode 100644 doc/api/html/structstan_1_1gm_1_1expression__grammar.html create mode 100644 doc/api/html/structstan_1_1gm_1_1expression__grammar.png create mode 100644 doc/api/html/structstan_1_1gm_1_1expression__type__vis-members.html create mode 100644 doc/api/html/structstan_1_1gm_1_1expression__type__vis.html create mode 100644 doc/api/html/structstan_1_1gm_1_1expression__type__vis.png create mode 100644 doc/api/html/structstan_1_1gm_1_1expression__visgen-members.html create mode 100644 doc/api/html/structstan_1_1gm_1_1expression__visgen.html create mode 100644 doc/api/html/structstan_1_1gm_1_1expression__visgen.png create mode 100644 doc/api/html/structstan_1_1gm_1_1for__statement-members.html create mode 100644 doc/api/html/structstan_1_1gm_1_1for__statement.html create mode 100644 doc/api/html/structstan_1_1gm_1_1fun-members.html create mode 100644 doc/api/html/structstan_1_1gm_1_1fun.html create mode 100644 doc/api/html/structstan_1_1gm_1_1generate__init__vars__visgen-members.html create mode 100644 doc/api/html/structstan_1_1gm_1_1generate__init__vars__visgen.html create mode 100644 doc/api/html/structstan_1_1gm_1_1generate__init__vars__visgen.png create mode 100644 doc/api/html/structstan_1_1gm_1_1generate__init__visgen-members.html create mode 100644 doc/api/html/structstan_1_1gm_1_1generate__init__visgen.html create mode 100644 doc/api/html/structstan_1_1gm_1_1generate__init__visgen.png create mode 100644 doc/api/html/structstan_1_1gm_1_1generate__local__var__init__nan__visgen-members.html create mode 100644 doc/api/html/structstan_1_1gm_1_1generate__local__var__init__nan__visgen.html create mode 100644 doc/api/html/structstan_1_1gm_1_1generate__local__var__init__nan__visgen.png create mode 100644 doc/api/html/structstan_1_1gm_1_1increment__log__prob__statement-members.html create mode 100644 doc/api/html/structstan_1_1gm_1_1increment__log__prob__statement.html create mode 100644 doc/api/html/structstan_1_1gm_1_1index__op-members.html create mode 100644 doc/api/html/structstan_1_1gm_1_1index__op.html create mode 100644 doc/api/html/structstan_1_1gm_1_1init__local__var__visgen-members.html create mode 100644 doc/api/html/structstan_1_1gm_1_1init__local__var__visgen.html create mode 100644 doc/api/html/structstan_1_1gm_1_1init__local__var__visgen.png create mode 100644 doc/api/html/structstan_1_1gm_1_1int__literal-members.html create mode 100644 doc/api/html/structstan_1_1gm_1_1int__literal.html create mode 100644 doc/api/html/structstan_1_1gm_1_1int__var__decl-members.html create mode 100644 doc/api/html/structstan_1_1gm_1_1int__var__decl.html create mode 100644 doc/api/html/structstan_1_1gm_1_1int__var__decl.png create mode 100644 doc/api/html/structstan_1_1gm_1_1is__nil__op-members.html create mode 100644 doc/api/html/structstan_1_1gm_1_1is__nil__op.html create mode 100644 doc/api/html/structstan_1_1gm_1_1is__nil__op.png create mode 100644 doc/api/html/structstan_1_1gm_1_1left__division__expr-members.html create mode 100644 doc/api/html/structstan_1_1gm_1_1left__division__expr.html create mode 100644 doc/api/html/structstan_1_1gm_1_1left__division__expr_1_1result-members.html create mode 100644 doc/api/html/structstan_1_1gm_1_1left__division__expr_1_1result.html create mode 100644 doc/api/html/structstan_1_1gm_1_1local__var__decl__visgen-members.html create mode 100644 doc/api/html/structstan_1_1gm_1_1local__var__decl__visgen.html create mode 100644 doc/api/html/structstan_1_1gm_1_1local__var__decl__visgen.png create mode 100644 doc/api/html/structstan_1_1gm_1_1logical__negate__expr-members.html create mode 100644 doc/api/html/structstan_1_1gm_1_1logical__negate__expr.html create mode 100644 doc/api/html/structstan_1_1gm_1_1logical__negate__expr_1_1result-members.html create mode 100644 doc/api/html/structstan_1_1gm_1_1logical__negate__expr_1_1result.html create mode 100644 doc/api/html/structstan_1_1gm_1_1matrix__var__decl-members.html create mode 100644 doc/api/html/structstan_1_1gm_1_1matrix__var__decl.html create mode 100644 doc/api/html/structstan_1_1gm_1_1matrix__var__decl.png create mode 100644 doc/api/html/structstan_1_1gm_1_1member__var__decl__visgen-members.html create mode 100644 doc/api/html/structstan_1_1gm_1_1member__var__decl__visgen.html create mode 100644 doc/api/html/structstan_1_1gm_1_1member__var__decl__visgen.png create mode 100644 doc/api/html/structstan_1_1gm_1_1multiplication__expr-members.html create mode 100644 doc/api/html/structstan_1_1gm_1_1multiplication__expr.html create mode 100644 doc/api/html/structstan_1_1gm_1_1multiplication__expr_1_1result-members.html create mode 100644 doc/api/html/structstan_1_1gm_1_1multiplication__expr_1_1result.html create mode 100644 doc/api/html/structstan_1_1gm_1_1name__vis-members.html create mode 100644 doc/api/html/structstan_1_1gm_1_1name__vis.html create mode 100644 doc/api/html/structstan_1_1gm_1_1name__vis.png create mode 100644 doc/api/html/structstan_1_1gm_1_1negate__expr-members.html create mode 100644 doc/api/html/structstan_1_1gm_1_1negate__expr.html create mode 100644 doc/api/html/structstan_1_1gm_1_1negate__expr_1_1result-members.html create mode 100644 doc/api/html/structstan_1_1gm_1_1negate__expr_1_1result.html create mode 100644 doc/api/html/structstan_1_1gm_1_1nil.html create mode 100644 doc/api/html/structstan_1_1gm_1_1no__op__statement.html create mode 100644 doc/api/html/structstan_1_1gm_1_1ordered__var__decl-members.html create mode 100644 doc/api/html/structstan_1_1gm_1_1ordered__var__decl.html create mode 100644 doc/api/html/structstan_1_1gm_1_1ordered__var__decl.png create mode 100644 doc/api/html/structstan_1_1gm_1_1positive__ordered__var__decl-members.html create mode 100644 doc/api/html/structstan_1_1gm_1_1positive__ordered__var__decl.html create mode 100644 doc/api/html/structstan_1_1gm_1_1positive__ordered__var__decl.png create mode 100644 doc/api/html/structstan_1_1gm_1_1print__statement-members.html create mode 100644 doc/api/html/structstan_1_1gm_1_1print__statement.html create mode 100644 doc/api/html/structstan_1_1gm_1_1printable-members.html create mode 100644 doc/api/html/structstan_1_1gm_1_1printable.html create mode 100644 doc/api/html/structstan_1_1gm_1_1printable__visgen-members.html create mode 100644 doc/api/html/structstan_1_1gm_1_1printable__visgen.html create mode 100644 doc/api/html/structstan_1_1gm_1_1printable__visgen.png create mode 100644 doc/api/html/structstan_1_1gm_1_1program-members.html create mode 100644 doc/api/html/structstan_1_1gm_1_1program.html create mode 100644 doc/api/html/structstan_1_1gm_1_1program__grammar-members.html create mode 100644 doc/api/html/structstan_1_1gm_1_1program__grammar.html create mode 100644 doc/api/html/structstan_1_1gm_1_1program__grammar.png create mode 100644 doc/api/html/structstan_1_1gm_1_1range-members.html create mode 100644 doc/api/html/structstan_1_1gm_1_1range.html create mode 100644 doc/api/html/structstan_1_1gm_1_1remove__loop__identifier-members.html create mode 100644 doc/api/html/structstan_1_1gm_1_1remove__loop__identifier.html create mode 100644 doc/api/html/structstan_1_1gm_1_1remove__loop__identifier_1_1result-members.html create mode 100644 doc/api/html/structstan_1_1gm_1_1remove__loop__identifier_1_1result.html create mode 100644 doc/api/html/structstan_1_1gm_1_1row__vector__var__decl-members.html create mode 100644 doc/api/html/structstan_1_1gm_1_1row__vector__var__decl.html create mode 100644 doc/api/html/structstan_1_1gm_1_1row__vector__var__decl.png create mode 100644 doc/api/html/structstan_1_1gm_1_1sample-members.html create mode 100644 doc/api/html/structstan_1_1gm_1_1sample.html create mode 100644 doc/api/html/structstan_1_1gm_1_1set__fun__type-members.html create mode 100644 doc/api/html/structstan_1_1gm_1_1set__fun__type.html create mode 100644 doc/api/html/structstan_1_1gm_1_1set__fun__type2-members.html create mode 100644 doc/api/html/structstan_1_1gm_1_1set__fun__type2.html create mode 100644 doc/api/html/structstan_1_1gm_1_1set__fun__type2_1_1result-members.html create mode 100644 doc/api/html/structstan_1_1gm_1_1set__fun__type2_1_1result.html create mode 100644 doc/api/html/structstan_1_1gm_1_1set__fun__type_1_1result-members.html create mode 100644 doc/api/html/structstan_1_1gm_1_1set__fun__type_1_1result.html create mode 100644 doc/api/html/structstan_1_1gm_1_1set__fun__type__named-members.html create mode 100644 doc/api/html/structstan_1_1gm_1_1set__fun__type__named.html create mode 100644 doc/api/html/structstan_1_1gm_1_1set__fun__type__named_1_1result-members.html create mode 100644 doc/api/html/structstan_1_1gm_1_1set__fun__type__named_1_1result.html create mode 100644 doc/api/html/structstan_1_1gm_1_1set__param__ranges__visgen-members.html create mode 100644 doc/api/html/structstan_1_1gm_1_1set__param__ranges__visgen.html create mode 100644 doc/api/html/structstan_1_1gm_1_1set__param__ranges__visgen.png create mode 100644 doc/api/html/structstan_1_1gm_1_1set__var__type-members.html create mode 100644 doc/api/html/structstan_1_1gm_1_1set__var__type.html create mode 100644 doc/api/html/structstan_1_1gm_1_1set__var__type_1_1result-members.html create mode 100644 doc/api/html/structstan_1_1gm_1_1set__var__type_1_1result.html create mode 100644 doc/api/html/structstan_1_1gm_1_1simplex__var__decl-members.html create mode 100644 doc/api/html/structstan_1_1gm_1_1simplex__var__decl.html create mode 100644 doc/api/html/structstan_1_1gm_1_1simplex__var__decl.png create mode 100644 doc/api/html/structstan_1_1gm_1_1statement-members.html create mode 100644 doc/api/html/structstan_1_1gm_1_1statement.html create mode 100644 doc/api/html/structstan_1_1gm_1_1statement__2__grammar-members.html create mode 100644 doc/api/html/structstan_1_1gm_1_1statement__2__grammar.html create mode 100644 doc/api/html/structstan_1_1gm_1_1statement__2__grammar.png create mode 100644 doc/api/html/structstan_1_1gm_1_1statement__grammar-members.html create mode 100644 doc/api/html/structstan_1_1gm_1_1statement__grammar.html create mode 100644 doc/api/html/structstan_1_1gm_1_1statement__grammar.png create mode 100644 doc/api/html/structstan_1_1gm_1_1statement__visgen-members.html create mode 100644 doc/api/html/structstan_1_1gm_1_1statement__visgen.html create mode 100644 doc/api/html/structstan_1_1gm_1_1statement__visgen.png create mode 100644 doc/api/html/structstan_1_1gm_1_1statements-members.html create mode 100644 doc/api/html/structstan_1_1gm_1_1statements.html create mode 100644 doc/api/html/structstan_1_1gm_1_1subtraction__expr-members.html create mode 100644 doc/api/html/structstan_1_1gm_1_1subtraction__expr.html create mode 100644 doc/api/html/structstan_1_1gm_1_1subtraction__expr_1_1result-members.html create mode 100644 doc/api/html/structstan_1_1gm_1_1subtraction__expr_1_1result.html create mode 100644 doc/api/html/structstan_1_1gm_1_1term__grammar-members.html create mode 100644 doc/api/html/structstan_1_1gm_1_1term__grammar.html create mode 100644 doc/api/html/structstan_1_1gm_1_1term__grammar.png create mode 100644 doc/api/html/structstan_1_1gm_1_1transpose__expr-members.html create mode 100644 doc/api/html/structstan_1_1gm_1_1transpose__expr.html create mode 100644 doc/api/html/structstan_1_1gm_1_1transpose__expr_1_1result-members.html create mode 100644 doc/api/html/structstan_1_1gm_1_1transpose__expr_1_1result.html create mode 100644 doc/api/html/structstan_1_1gm_1_1type__name-members.html create mode 100644 doc/api/html/structstan_1_1gm_1_1type__name.html create mode 100644 doc/api/html/structstan_1_1gm_1_1type__name_3_01bool_01_4-members.html create mode 100644 doc/api/html/structstan_1_1gm_1_1type__name_3_01bool_01_4.html create mode 100644 doc/api/html/structstan_1_1gm_1_1type__name_3_01double_01_4-members.html create mode 100644 doc/api/html/structstan_1_1gm_1_1type__name_3_01double_01_4.html create mode 100644 doc/api/html/structstan_1_1gm_1_1type__name_3_01int_01_4-members.html create mode 100644 doc/api/html/structstan_1_1gm_1_1type__name_3_01int_01_4.html create mode 100644 doc/api/html/structstan_1_1gm_1_1type__name_3_01std_1_1string_01_4-members.html create mode 100644 doc/api/html/structstan_1_1gm_1_1type__name_3_01std_1_1string_01_4.html create mode 100644 doc/api/html/structstan_1_1gm_1_1type__name_3_01unsigned_01int_01_4-members.html create mode 100644 doc/api/html/structstan_1_1gm_1_1type__name_3_01unsigned_01int_01_4.html create mode 100644 doc/api/html/structstan_1_1gm_1_1unary__op-members.html create mode 100644 doc/api/html/structstan_1_1gm_1_1unary__op.html create mode 100644 doc/api/html/structstan_1_1gm_1_1unconstrained__param__names__visgen-members.html create mode 100644 doc/api/html/structstan_1_1gm_1_1unconstrained__param__names__visgen.html create mode 100644 doc/api/html/structstan_1_1gm_1_1unconstrained__param__names__visgen.png create mode 100644 doc/api/html/structstan_1_1gm_1_1unit__vector__var__decl-members.html create mode 100644 doc/api/html/structstan_1_1gm_1_1unit__vector__var__decl.html create mode 100644 doc/api/html/structstan_1_1gm_1_1unit__vector__var__decl.png create mode 100644 doc/api/html/structstan_1_1gm_1_1unscope__locals-members.html create mode 100644 doc/api/html/structstan_1_1gm_1_1unscope__locals.html create mode 100644 doc/api/html/structstan_1_1gm_1_1unscope__locals_1_1result-members.html create mode 100644 doc/api/html/structstan_1_1gm_1_1unscope__locals_1_1result.html create mode 100644 doc/api/html/structstan_1_1gm_1_1validate__allow__sample-members.html create mode 100644 doc/api/html/structstan_1_1gm_1_1validate__allow__sample.html create mode 100644 doc/api/html/structstan_1_1gm_1_1validate__allow__sample_1_1result-members.html create mode 100644 doc/api/html/structstan_1_1gm_1_1validate__allow__sample_1_1result.html create mode 100644 doc/api/html/structstan_1_1gm_1_1validate__assignment-members.html create mode 100644 doc/api/html/structstan_1_1gm_1_1validate__assignment.html create mode 100644 doc/api/html/structstan_1_1gm_1_1validate__assignment_1_1result-members.html create mode 100644 doc/api/html/structstan_1_1gm_1_1validate__assignment_1_1result.html create mode 100644 doc/api/html/structstan_1_1gm_1_1validate__expr__type-members.html create mode 100644 doc/api/html/structstan_1_1gm_1_1validate__expr__type.html create mode 100644 doc/api/html/structstan_1_1gm_1_1validate__expr__type2-members.html create mode 100644 doc/api/html/structstan_1_1gm_1_1validate__expr__type2.html create mode 100644 doc/api/html/structstan_1_1gm_1_1validate__expr__type2_1_1result-members.html create mode 100644 doc/api/html/structstan_1_1gm_1_1validate__expr__type2_1_1result.html create mode 100644 doc/api/html/structstan_1_1gm_1_1validate__expr__type_1_1result-members.html create mode 100644 doc/api/html/structstan_1_1gm_1_1validate__expr__type_1_1result.html create mode 100644 doc/api/html/structstan_1_1gm_1_1validate__int__expr2-members.html create mode 100644 doc/api/html/structstan_1_1gm_1_1validate__int__expr2.html create mode 100644 doc/api/html/structstan_1_1gm_1_1validate__int__expr2_1_1result-members.html create mode 100644 doc/api/html/structstan_1_1gm_1_1validate__int__expr2_1_1result.html create mode 100644 doc/api/html/structstan_1_1gm_1_1validate__int__expr3-members.html create mode 100644 doc/api/html/structstan_1_1gm_1_1validate__int__expr3.html create mode 100644 doc/api/html/structstan_1_1gm_1_1validate__int__expr3_1_1result-members.html create mode 100644 doc/api/html/structstan_1_1gm_1_1validate__int__expr3_1_1result.html create mode 100644 doc/api/html/structstan_1_1gm_1_1validate__sample-members.html create mode 100644 doc/api/html/structstan_1_1gm_1_1validate__sample.html create mode 100644 doc/api/html/structstan_1_1gm_1_1validate__sample_1_1result-members.html create mode 100644 doc/api/html/structstan_1_1gm_1_1validate__sample_1_1result.html create mode 100644 doc/api/html/structstan_1_1gm_1_1validate__transformed__params__visgen-members.html create mode 100644 doc/api/html/structstan_1_1gm_1_1validate__transformed__params__visgen.html create mode 100644 doc/api/html/structstan_1_1gm_1_1validate__transformed__params__visgen.png create mode 100644 doc/api/html/structstan_1_1gm_1_1validate__var__decl__visgen-members.html create mode 100644 doc/api/html/structstan_1_1gm_1_1validate__var__decl__visgen.html create mode 100644 doc/api/html/structstan_1_1gm_1_1validate__var__decl__visgen.png create mode 100644 doc/api/html/structstan_1_1gm_1_1var__decl-members.html create mode 100644 doc/api/html/structstan_1_1gm_1_1var__decl.html create mode 100644 doc/api/html/structstan_1_1gm_1_1var__decls__grammar-members.html create mode 100644 doc/api/html/structstan_1_1gm_1_1var__decls__grammar.html create mode 100644 doc/api/html/structstan_1_1gm_1_1var__decls__grammar.png create mode 100644 doc/api/html/structstan_1_1gm_1_1var__resizing__visgen-members.html create mode 100644 doc/api/html/structstan_1_1gm_1_1var__resizing__visgen.html create mode 100644 doc/api/html/structstan_1_1gm_1_1var__resizing__visgen.png create mode 100644 doc/api/html/structstan_1_1gm_1_1var__size__validating__visgen-members.html create mode 100644 doc/api/html/structstan_1_1gm_1_1var__size__validating__visgen.html create mode 100644 doc/api/html/structstan_1_1gm_1_1var__size__validating__visgen.png create mode 100644 doc/api/html/structstan_1_1gm_1_1variable-members.html create mode 100644 doc/api/html/structstan_1_1gm_1_1variable.html create mode 100644 doc/api/html/structstan_1_1gm_1_1variable__dims-members.html create mode 100644 doc/api/html/structstan_1_1gm_1_1variable__dims.html create mode 100644 doc/api/html/structstan_1_1gm_1_1variable__map-members.html create mode 100644 doc/api/html/structstan_1_1gm_1_1variable__map.html create mode 100644 doc/api/html/structstan_1_1gm_1_1vector__var__decl-members.html create mode 100644 doc/api/html/structstan_1_1gm_1_1vector__var__decl.html create mode 100644 doc/api/html/structstan_1_1gm_1_1vector__var__decl.png create mode 100644 doc/api/html/structstan_1_1gm_1_1visgen-members.html create mode 100644 doc/api/html/structstan_1_1gm_1_1visgen.html create mode 100644 doc/api/html/structstan_1_1gm_1_1visgen.png create mode 100644 doc/api/html/structstan_1_1gm_1_1while__statement-members.html create mode 100644 doc/api/html/structstan_1_1gm_1_1while__statement.html create mode 100644 doc/api/html/structstan_1_1gm_1_1whitespace__grammar-members.html create mode 100644 doc/api/html/structstan_1_1gm_1_1whitespace__grammar.html create mode 100644 doc/api/html/structstan_1_1gm_1_1whitespace__grammar.png create mode 100644 doc/api/html/structstan_1_1gm_1_1write__array__vars__visgen-members.html create mode 100644 doc/api/html/structstan_1_1gm_1_1write__array__vars__visgen.html create mode 100644 doc/api/html/structstan_1_1gm_1_1write__array__vars__visgen.png create mode 100644 doc/api/html/structstan_1_1gm_1_1write__array__visgen-members.html create mode 100644 doc/api/html/structstan_1_1gm_1_1write__array__visgen.html create mode 100644 doc/api/html/structstan_1_1gm_1_1write__array__visgen.png create mode 100644 doc/api/html/structstan_1_1gm_1_1write__csv__header__visgen-members.html create mode 100644 doc/api/html/structstan_1_1gm_1_1write__csv__header__visgen.html create mode 100644 doc/api/html/structstan_1_1gm_1_1write__csv__header__visgen.png create mode 100644 doc/api/html/structstan_1_1gm_1_1write__csv__vars__visgen-members.html create mode 100644 doc/api/html/structstan_1_1gm_1_1write__csv__vars__visgen.html create mode 100644 doc/api/html/structstan_1_1gm_1_1write__csv__vars__visgen.png create mode 100644 doc/api/html/structstan_1_1gm_1_1write__csv__visgen-members.html create mode 100644 doc/api/html/structstan_1_1gm_1_1write__csv__visgen.html create mode 100644 doc/api/html/structstan_1_1gm_1_1write__csv__visgen.png create mode 100644 doc/api/html/structstan_1_1gm_1_1write__dims__visgen-members.html create mode 100644 doc/api/html/structstan_1_1gm_1_1write__dims__visgen.html create mode 100644 doc/api/html/structstan_1_1gm_1_1write__dims__visgen.png create mode 100644 doc/api/html/structstan_1_1gm_1_1write__param__names__visgen-members.html create mode 100644 doc/api/html/structstan_1_1gm_1_1write__param__names__visgen.html create mode 100644 doc/api/html/structstan_1_1gm_1_1write__param__names__visgen.png create mode 100644 doc/api/html/structstan_1_1io_1_1stan__csv-members.html create mode 100644 doc/api/html/structstan_1_1io_1_1stan__csv.html create mode 100644 doc/api/html/structstan_1_1io_1_1stan__csv__adaptation-members.html create mode 100644 doc/api/html/structstan_1_1io_1_1stan__csv__adaptation.html create mode 100644 doc/api/html/structstan_1_1io_1_1stan__csv__metadata-members.html create mode 100644 doc/api/html/structstan_1_1io_1_1stan__csv__metadata.html create mode 100644 doc/api/html/structstan_1_1io_1_1stan__csv__timing-members.html create mode 100644 doc/api/html/structstan_1_1io_1_1stan__csv__timing.html create mode 100644 doc/api/html/structstan_1_1is__constant-members.html create mode 100644 doc/api/html/structstan_1_1is__constant.html create mode 100644 doc/api/html/structstan_1_1is__constant__struct-members.html create mode 100644 doc/api/html/structstan_1_1is__constant__struct.html create mode 100644 doc/api/html/structstan_1_1is__constant__struct_3_01_eigen_1_1_block_3_01_t_01_4_01_4-members.html create mode 100644 doc/api/html/structstan_1_1is__constant__struct_3_01_eigen_1_1_block_3_01_t_01_4_01_4.html create mode 100644 doc/api/html/structstan_1_1is__constant__struct_3_01_eigen_1_1_matrix_3_01_t_00_01_r_00_01_c_01_4_01_4-members.html create mode 100644 doc/api/html/structstan_1_1is__constant__struct_3_01_eigen_1_1_matrix_3_01_t_00_01_r_00_01_c_01_4_01_4.html create mode 100644 doc/api/html/structstan_1_1is__constant__struct_3_01std_1_1vector_3_01_t_01_4_01_4-members.html create mode 100644 doc/api/html/structstan_1_1is__constant__struct_3_01std_1_1vector_3_01_t_01_4_01_4.html create mode 100644 doc/api/html/structstan_1_1is__fvar-members.html create mode 100644 doc/api/html/structstan_1_1is__fvar.html create mode 100644 doc/api/html/structstan_1_1is__fvar_3_01stan_1_1agrad_1_1fvar_3_01_t_01_4_01_4-members.html create mode 100644 doc/api/html/structstan_1_1is__fvar_3_01stan_1_1agrad_1_1fvar_3_01_t_01_4_01_4.html create mode 100644 doc/api/html/structstan_1_1is__var-members.html create mode 100644 doc/api/html/structstan_1_1is__var.html create mode 100644 doc/api/html/structstan_1_1is__var_3_01stan_1_1agrad_1_1var_01_4-members.html create mode 100644 doc/api/html/structstan_1_1is__var_3_01stan_1_1agrad_1_1var_01_4.html create mode 100644 doc/api/html/structstan_1_1is__var__or__arithmetic-members.html create mode 100644 doc/api/html/structstan_1_1is__var__or__arithmetic.html create mode 100644 doc/api/html/structstan_1_1is__vector-members.html create mode 100644 doc/api/html/structstan_1_1is__vector.html create mode 100644 doc/api/html/structstan_1_1is__vector_3_01_eigen_1_1_matrix_3_01_t_00_011_00_01_eigen_1_1_dynamic_01_4_01_4-members.html create mode 100644 doc/api/html/structstan_1_1is__vector_3_01_eigen_1_1_matrix_3_01_t_00_011_00_01_eigen_1_1_dynamic_01_4_01_4.html create mode 100644 doc/api/html/structstan_1_1is__vector_3_01_eigen_1_1_matrix_3_01_t_00_01_eigen_1_1_dynamic_00_011_01_4_01_4-members.html create mode 100644 doc/api/html/structstan_1_1is__vector_3_01_eigen_1_1_matrix_3_01_t_00_01_eigen_1_1_dynamic_00_011_01_4_01_4.html create mode 100644 doc/api/html/structstan_1_1is__vector_3_01const_01_t_01_4-members.html create mode 100644 doc/api/html/structstan_1_1is__vector_3_01const_01_t_01_4.html create mode 100644 doc/api/html/structstan_1_1is__vector_3_01std_1_1vector_3_01_t_01_4_01_4-members.html create mode 100644 doc/api/html/structstan_1_1is__vector_3_01std_1_1vector_3_01_t_01_4_01_4.html create mode 100644 doc/api/html/structstan_1_1is__vector__like-members.html create mode 100644 doc/api/html/structstan_1_1is__vector__like.html create mode 100644 doc/api/html/structstan_1_1is__vector__like_3_01_eigen_1_1_matrix_3_01_t_00_01_eigen_1_1_dynamic_00_01_eigen_1_1_dynamic_01_4_01_4-members.html create mode 100644 doc/api/html/structstan_1_1is__vector__like_3_01_eigen_1_1_matrix_3_01_t_00_01_eigen_1_1_dynamic_00_01_eigen_1_1_dynamic_01_4_01_4.html create mode 100644 doc/api/html/structstan_1_1is__vector__like_3_01_t_01_5_01_4-members.html create mode 100644 doc/api/html/structstan_1_1is__vector__like_3_01_t_01_5_01_4.html create mode 100644 doc/api/html/structstan_1_1is__vector__like_3_01const_01_t_01_4-members.html create mode 100644 doc/api/html/structstan_1_1is__vector__like_3_01const_01_t_01_4.html create mode 100644 doc/api/html/structstan_1_1math_1_1array__builder-members.html create mode 100644 doc/api/html/structstan_1_1math_1_1array__builder.html create mode 100644 doc/api/html/structstan_1_1math_1_1common__type-members.html create mode 100644 doc/api/html/structstan_1_1math_1_1common__type.html create mode 100644 doc/api/html/structstan_1_1math_1_1common__type_3_01_eigen_1_1_matrix_3_01_t1_00_01_r_00_01_c_01_4_00_01_eige106a86f1021708b40db478c4e2fef0a7.html create mode 100644 doc/api/html/structstan_1_1math_1_1common__type_3_01_eigen_1_1_matrix_3_01_t1_00_01_r_00_01_c_01_4_00_01_eiged8accfa00e73f240c58ad02ac582ba93.html create mode 100644 doc/api/html/structstan_1_1math_1_1common__type_3_01std_1_1vector_3_01_t1_01_4_00_01std_1_1vector_3_01_t2_01_4_01_4-members.html create mode 100644 doc/api/html/structstan_1_1math_1_1common__type_3_01std_1_1vector_3_01_t1_01_4_00_01std_1_1vector_3_01_t2_01_4_01_4.html create mode 100644 doc/api/html/structstan_1_1math_1_1pass__type-members.html create mode 100644 doc/api/html/structstan_1_1math_1_1pass__type.html create mode 100644 doc/api/html/structstan_1_1math_1_1pass__type_3_01double_01_4-members.html create mode 100644 doc/api/html/structstan_1_1math_1_1pass__type_3_01double_01_4.html create mode 100644 doc/api/html/structstan_1_1math_1_1pass__type_3_01int_01_4-members.html create mode 100644 doc/api/html/structstan_1_1math_1_1pass__type_3_01int_01_4.html create mode 100644 doc/api/html/structstan_1_1math_1_1promoter-members.html create mode 100644 doc/api/html/structstan_1_1math_1_1promoter.html create mode 100644 doc/api/html/structstan_1_1math_1_1promoter_3_01_eigen_1_1_matrix_3_01_f_00_01_r_00_01_c_01_4_00_01_eigen_1_142b48fda94601374e41a81325f3f7b84.html create mode 100644 doc/api/html/structstan_1_1math_1_1promoter_3_01_eigen_1_1_matrix_3_01_f_00_01_r_00_01_c_01_4_00_01_eigen_1_19fcbf4e7bc8e106173bfa338a15054ff.html create mode 100644 doc/api/html/structstan_1_1math_1_1promoter_3_01_eigen_1_1_matrix_3_01_t_00_01_r_00_01_c_01_4_00_01_eigen_1_12d7fadf0560f1f2f3abc5388b7666f9c.html create mode 100644 doc/api/html/structstan_1_1math_1_1promoter_3_01_eigen_1_1_matrix_3_01_t_00_01_r_00_01_c_01_4_00_01_eigen_1_1ab38afe2feaa91a91579e3639d1f03b0.html create mode 100644 doc/api/html/structstan_1_1math_1_1promoter_3_01_t_00_01_t_01_4-members.html create mode 100644 doc/api/html/structstan_1_1math_1_1promoter_3_01_t_00_01_t_01_4.html create mode 100644 doc/api/html/structstan_1_1math_1_1promoter_3_01std_1_1vector_3_01_f_01_4_00_01std_1_1vector_3_01_t_01_4_01_4-members.html create mode 100644 doc/api/html/structstan_1_1math_1_1promoter_3_01std_1_1vector_3_01_f_01_4_00_01std_1_1vector_3_01_t_01_4_01_4.html create mode 100644 doc/api/html/structstan_1_1math_1_1promoter_3_01std_1_1vector_3_01_t_01_4_00_01std_1_1vector_3_01_t_01_4_01_4-members.html create mode 100644 doc/api/html/structstan_1_1math_1_1promoter_3_01std_1_1vector_3_01_t_01_4_00_01std_1_1vector_3_01_t_01_4_01_4.html create mode 100644 doc/api/html/structstan_1_1math_1_1store__type-members.html create mode 100644 doc/api/html/structstan_1_1math_1_1store__type.html create mode 100644 doc/api/html/structstan_1_1math_1_1store__type_3_01double_01_4-members.html create mode 100644 doc/api/html/structstan_1_1math_1_1store__type_3_01double_01_4.html create mode 100644 doc/api/html/structstan_1_1math_1_1store__type_3_01int_01_4-members.html create mode 100644 doc/api/html/structstan_1_1math_1_1store__type_3_01int_01_4.html create mode 100644 doc/api/html/structstan_1_1mcmc_1_1nuts__util-members.html create mode 100644 doc/api/html/structstan_1_1mcmc_1_1nuts__util.html create mode 100644 doc/api/html/structstan_1_1model_1_1model__functional-members.html create mode 100644 doc/api/html/structstan_1_1model_1_1model__functional.html create mode 100644 doc/api/html/structstan_1_1optimization_1_1_b_f_g_s_minimizer_1_1_b_f_g_s_options-members.html create mode 100644 doc/api/html/structstan_1_1optimization_1_1_b_f_g_s_minimizer_1_1_b_f_g_s_options.html create mode 100644 doc/api/html/structstan_1_1prob_1_1include__summand-members.html create mode 100644 doc/api/html/structstan_1_1prob_1_1include__summand.html create mode 100644 doc/api/html/structstan_1_1return__type-members.html create mode 100644 doc/api/html/structstan_1_1return__type.html create mode 100644 doc/api/html/structstan_1_1scalar__type-members.html create mode 100644 doc/api/html/structstan_1_1scalar__type.html create mode 100644 doc/api/html/structstan_1_1scalar__type_3_01_eigen_1_1_matrix_3_01_t_00_01_eigen_1_1_dynamic_00_01_eigen_1_1_dynamic_01_4_01_4-members.html create mode 100644 doc/api/html/structstan_1_1scalar__type_3_01_eigen_1_1_matrix_3_01_t_00_01_eigen_1_1_dynamic_00_01_eigen_1_1_dynamic_01_4_01_4.html create mode 100644 doc/api/html/structstan_1_1scalar__type_3_01_t_01_5_01_4-members.html create mode 100644 doc/api/html/structstan_1_1scalar__type_3_01_t_01_5_01_4.html create mode 100644 doc/api/html/structstan_1_1size__of__helper-members.html create mode 100644 doc/api/html/structstan_1_1size__of__helper.html create mode 100644 doc/api/html/structstan_1_1size__of__helper_3_01_t_00_01true_01_4-members.html create mode 100644 doc/api/html/structstan_1_1size__of__helper_3_01_t_00_01true_01_4.html create mode 100644 doc/api/html/structstatement__grammar.html create mode 100644 doc/api/html/structstd_1_1numeric__limits_3_01stan_1_1agrad_1_1fvar_3_01_t_01_4_01_4-members.html create mode 100644 doc/api/html/structstd_1_1numeric__limits_3_01stan_1_1agrad_1_1fvar_3_01_t_01_4_01_4.html create mode 100644 doc/api/html/structstd_1_1numeric__limits_3_01stan_1_1agrad_1_1var_01_4-members.html create mode 100644 doc/api/html/structstd_1_1numeric__limits_3_01stan_1_1agrad_1_1var_01_4.html create mode 100644 doc/api/html/structterm__grammar.html create mode 100644 doc/api/html/student__t_8hpp.html create mode 100644 doc/api/html/student__t_8hpp_source.html create mode 100644 doc/api/html/sub_8hpp.html create mode 100644 doc/api/html/sub_8hpp_source.html create mode 100644 doc/api/html/sub__col_8hpp.html create mode 100644 doc/api/html/sub__col_8hpp_source.html create mode 100644 doc/api/html/sub__row_8hpp.html create mode 100644 doc/api/html/sub__row_8hpp_source.html create mode 100644 doc/api/html/subtract_8hpp.html create mode 100644 doc/api/html/subtract_8hpp_source.html create mode 100644 doc/api/html/sync_off.png create mode 100644 doc/api/html/sync_on.png create mode 100644 doc/api/html/tab_a.png create mode 100644 doc/api/html/tab_b.png create mode 100644 doc/api/html/tab_h.png create mode 100644 doc/api/html/tab_s.png create mode 100644 doc/api/html/tabs.css create mode 100644 doc/api/html/tail_8hpp.html create mode 100644 doc/api/html/tail_8hpp_source.html create mode 100644 doc/api/html/term__grammar_8hpp.html create mode 100644 doc/api/html/term__grammar_8hpp_source.html create mode 100644 doc/api/html/term__grammar__def_8hpp.html create mode 100644 doc/api/html/term__grammar__def_8hpp_source.html create mode 100644 doc/api/html/term__grammar__inst_8cpp.html create mode 100644 doc/api/html/term__grammar__inst_8cpp_source.html create mode 100644 doc/api/html/to__fvar_8hpp.html create mode 100644 doc/api/html/to__fvar_8hpp_source.html create mode 100644 doc/api/html/to__var_8hpp.html create mode 100644 doc/api/html/to__var_8hpp_source.html create mode 100644 doc/api/html/to__vector_8hpp.html create mode 100644 doc/api/html/to__vector_8hpp_source.html create mode 100644 doc/api/html/trace_8hpp.html create mode 100644 doc/api/html/trace_8hpp_source.html create mode 100644 doc/api/html/transform_8hpp.html create mode 100644 doc/api/html/transform_8hpp_source.html create mode 100644 doc/api/html/transpose_8hpp.html create mode 100644 doc/api/html/transpose_8hpp_source.html create mode 100644 doc/api/html/trigamma_8hpp.html create mode 100644 doc/api/html/trigamma_8hpp_source.html create mode 100644 doc/api/html/uniform_8hpp.html create mode 100644 doc/api/html/uniform_8hpp_source.html create mode 100644 doc/api/html/unit__e__metric_8hpp.html create mode 100644 doc/api/html/unit__e__metric_8hpp_source.html create mode 100644 doc/api/html/unit__e__nuts_8hpp.html create mode 100644 doc/api/html/unit__e__nuts_8hpp_source.html create mode 100644 doc/api/html/unit__e__point_8hpp.html create mode 100644 doc/api/html/unit__e__point_8hpp_source.html create mode 100644 doc/api/html/unit__e__static__hmc_8hpp.html create mode 100644 doc/api/html/unit__e__static__hmc_8hpp_source.html create mode 100644 doc/api/html/univariate_2continuous_8hpp.html create mode 100644 doc/api/html/univariate_2continuous_8hpp_source.html create mode 100644 doc/api/html/univariate_2discrete_8hpp.html create mode 100644 doc/api/html/univariate_2discrete_8hpp_source.html create mode 100644 doc/api/html/univariate_8hpp.html create mode 100644 doc/api/html/univariate_8hpp_source.html create mode 100644 doc/api/html/unvalued__argument_8hpp.html create mode 100644 doc/api/html/unvalued__argument_8hpp_source.html create mode 100644 doc/api/html/v__vari_8hpp.html create mode 100644 doc/api/html/v__vari_8hpp_source.html create mode 100644 doc/api/html/validate__column__index_8hpp.html create mode 100644 doc/api/html/validate__column__index_8hpp_source.html create mode 100644 doc/api/html/validate__greater_8hpp.html create mode 100644 doc/api/html/validate__greater_8hpp_source.html create mode 100644 doc/api/html/validate__greater__or__equal_8hpp.html create mode 100644 doc/api/html/validate__greater__or__equal_8hpp_source.html create mode 100644 doc/api/html/validate__less_8hpp.html create mode 100644 doc/api/html/validate__less_8hpp_source.html create mode 100644 doc/api/html/validate__less__or__equal_8hpp.html create mode 100644 doc/api/html/validate__less__or__equal_8hpp_source.html create mode 100644 doc/api/html/validate__matching__dims_8hpp.html create mode 100644 doc/api/html/validate__matching__dims_8hpp_source.html create mode 100644 doc/api/html/validate__matching__sizes_8hpp.html create mode 100644 doc/api/html/validate__matching__sizes_8hpp_source.html create mode 100644 doc/api/html/validate__multiplicable_8hpp.html create mode 100644 doc/api/html/validate__multiplicable_8hpp_source.html create mode 100644 doc/api/html/validate__non__negative__index_8hpp.html create mode 100644 doc/api/html/validate__non__negative__index_8hpp_source.html create mode 100644 doc/api/html/validate__non__negative__rep_8hpp.html create mode 100644 doc/api/html/validate__non__negative__rep_8hpp_source.html create mode 100644 doc/api/html/validate__nonzero__size_8hpp.html create mode 100644 doc/api/html/validate__nonzero__size_8hpp_source.html create mode 100644 doc/api/html/validate__row__index_8hpp.html create mode 100644 doc/api/html/validate__row__index_8hpp_source.html create mode 100644 doc/api/html/validate__square_8hpp.html create mode 100644 doc/api/html/validate__square_8hpp_source.html create mode 100644 doc/api/html/validate__std__vector__index_8hpp.html create mode 100644 doc/api/html/validate__std__vector__index_8hpp_source.html create mode 100644 doc/api/html/validate__symmetric_8hpp.html create mode 100644 doc/api/html/validate__symmetric_8hpp_source.html create mode 100644 doc/api/html/validate__vector_8hpp.html create mode 100644 doc/api/html/validate__vector_8hpp_source.html create mode 100644 doc/api/html/valued__argument_8hpp.html create mode 100644 doc/api/html/valued__argument_8hpp_source.html create mode 100644 doc/api/html/var_8hpp.html create mode 100644 doc/api/html/var_8hpp_source.html create mode 100644 doc/api/html/var__adaptation_8hpp.html create mode 100644 doc/api/html/var__adaptation_8hpp_source.html create mode 100644 doc/api/html/var__context_8hpp.html create mode 100644 doc/api/html/var__context_8hpp_source.html create mode 100644 doc/api/html/var__decls__grammar_8hpp.html create mode 100644 doc/api/html/var__decls__grammar_8hpp_source.html create mode 100644 doc/api/html/var__decls__grammar__def_8hpp.html create mode 100644 doc/api/html/var__decls__grammar__def_8hpp_source.html create mode 100644 doc/api/html/var__decls__grammar__inst_8cpp.html create mode 100644 doc/api/html/var__decls__grammar__inst_8cpp_source.html create mode 100644 doc/api/html/var__stack_8cpp.html create mode 100644 doc/api/html/var__stack_8cpp_source.html create mode 100644 doc/api/html/var__stack_8hpp.html create mode 100644 doc/api/html/var__stack_8hpp_source.html create mode 100644 doc/api/html/vari_8hpp.html create mode 100644 doc/api/html/vari_8hpp_source.html create mode 100644 doc/api/html/vd__vari_8hpp.html create mode 100644 doc/api/html/vd__vari_8hpp_source.html create mode 100644 doc/api/html/vdd__vari_8hpp.html create mode 100644 doc/api/html/vdd__vari_8hpp_source.html create mode 100644 doc/api/html/vdv__vari_8hpp.html create mode 100644 doc/api/html/vdv__vari_8hpp_source.html create mode 100644 doc/api/html/vector__vari_8hpp.html create mode 100644 doc/api/html/vector__vari_8hpp_source.html create mode 100644 doc/api/html/version_8hpp.html create mode 100644 doc/api/html/version_8hpp_source.html create mode 100644 doc/api/html/von__mises_8hpp.html create mode 100644 doc/api/html/von__mises_8hpp_source.html create mode 100644 doc/api/html/vv__vari_8hpp.html create mode 100644 doc/api/html/vv__vari_8hpp_source.html create mode 100644 doc/api/html/vvd__vari_8hpp.html create mode 100644 doc/api/html/vvd__vari_8hpp_source.html create mode 100644 doc/api/html/vvv__vari_8hpp.html create mode 100644 doc/api/html/vvv__vari_8hpp_source.html create mode 100644 doc/api/html/weibull_8hpp.html create mode 100644 doc/api/html/weibull_8hpp_source.html create mode 100644 doc/api/html/welford__covar__estimator_8hpp.html create mode 100644 doc/api/html/welford__covar__estimator_8hpp_source.html create mode 100644 doc/api/html/welford__var__estimator_8hpp.html create mode 100644 doc/api/html/welford__var__estimator_8hpp_source.html create mode 100644 doc/api/html/whitespace__grammar_8hpp.html create mode 100644 doc/api/html/whitespace__grammar_8hpp_source.html create mode 100644 doc/api/html/whitespace__grammar__def_8hpp.html create mode 100644 doc/api/html/whitespace__grammar__def_8hpp_source.html create mode 100644 doc/api/html/whitespace__grammar__inst_8cpp.html create mode 100644 doc/api/html/whitespace__grammar__inst_8cpp_source.html create mode 100644 doc/api/html/windowed__adaptation_8hpp.html create mode 100644 doc/api/html/windowed__adaptation_8hpp_source.html create mode 100644 doc/api/html/wishart_8hpp.html create mode 100644 doc/api/html/wishart_8hpp_source.html create mode 100644 doc/api/html/writer_8hpp.html create mode 100644 doc/api/html/writer_8hpp_source.html create mode 100644 doc/stan-reference-2.2.0.pdf diff --git a/doc/api/html/_eigen_8dox.html b/doc/api/html/_eigen_8dox.html new file mode 100644 index 00000000000..ab3a71f3c3b --- /dev/null +++ b/doc/api/html/_eigen_8dox.html @@ -0,0 +1,115 @@ + + + + + +Stan: src/doxygen/Eigen.dox File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ +
+
+ +
+
src/doxygen/Eigen.dox File Reference
+
+
+ + + + + + + + +

+Namespaces

namespace  Eigen
 (Expert) Numerical traits for algorithmic differentiation variables.
 
namespace  Eigen::internal
 (Expert) Product traits for algorithmic differentiation variables.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/_eigen_8hpp.html b/doc/api/html/_eigen_8hpp.html new file mode 100644 index 00000000000..dfb5dfaa874 --- /dev/null +++ b/doc/api/html/_eigen_8hpp.html @@ -0,0 +1,134 @@ + + + + + +Stan: src/stan/math/matrix/Eigen.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
Eigen.hpp File Reference
+
+
+
#include <Eigen/Dense>
+#include <Eigen/QR>
+
+

Go to the source code of this file.

+ + + + +

+Macros

#define EIGEN_DENSEBASE_PLUGIN   "stan/math/matrix/EigenDenseBaseAddons.h"
 
+

Macro Definition Documentation

+ +
+
+ + + + +
#define EIGEN_DENSEBASE_PLUGIN   "stan/math/matrix/EigenDenseBaseAddons.h"
+
+ +

Definition at line 4 of file Eigen.hpp.

+ +
+
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/_eigen_8hpp_source.html b/doc/api/html/_eigen_8hpp_source.html new file mode 100644 index 00000000000..e8a4100e05d --- /dev/null +++ b/doc/api/html/_eigen_8hpp_source.html @@ -0,0 +1,115 @@ + + + + + +Stan: src/stan/math/matrix/Eigen.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
Eigen.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MATH__MATRIX__EIGEN_HPP__
+
2 #define __STAN__MATH__MATRIX__EIGEN_HPP__
+
3 
+
4 #define EIGEN_DENSEBASE_PLUGIN "stan/math/matrix/EigenDenseBaseAddons.h"
+
5 #include <Eigen/Dense>
+
6 #include <Eigen/QR>
+
7 
+
8 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/_eigen___num_traits_8hpp.html b/doc/api/html/_eigen___num_traits_8hpp.html new file mode 100644 index 00000000000..5c06ffaae2e --- /dev/null +++ b/doc/api/html/_eigen___num_traits_8hpp.html @@ -0,0 +1,232 @@ + + + + + +Stan: src/stan/agrad/rev/matrix/Eigen_NumTraits.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
Eigen_NumTraits.hpp File Reference
+
+
+
#include <limits>
+#include <stan/math/matrix/Eigen.hpp>
+#include <stan/agrad/rev/var.hpp>
+
+

Go to the source code of this file.

+ + + + + + + + + + + + + + + + + + + + + +

+Classes

struct  Eigen::NumTraits< stan::agrad::var >
 Numerical traits template override for Eigen for automatic gradient variables. More...
 
struct  Eigen::internal::significant_decimals_default_impl< stan::agrad::var, false >
 Implemented this for printing to stream. More...
 
struct  Eigen::internal::scalar_product_traits< stan::agrad::var, double >
 Scalar product traits override for Eigen for automatic gradient variables. More...
 
struct  Eigen::internal::scalar_product_traits< double, stan::agrad::var >
 Scalar product traits override for Eigen for automatic gradient variables. More...
 
struct  Eigen::internal::general_matrix_vector_product< Index, stan::agrad::var, ColMajor, ConjugateLhs, stan::agrad::var, ConjugateRhs >
 Override matrix-vector and matrix-matrix products to use more efficient implementation. More...
 
struct  Eigen::internal::general_matrix_vector_product< Index, stan::agrad::var, RowMajor, ConjugateLhs, stan::agrad::var, ConjugateRhs >
 
struct  Eigen::internal::general_matrix_matrix_product< Index, stan::agrad::var, LhsStorageOrder, ConjugateLhs, stan::agrad::var, RhsStorageOrder, ConjugateRhs, ColMajor >
 
+ + + + + + + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
namespace  Eigen
 (Expert) Numerical traits for algorithmic differentiation variables.
 
namespace  Eigen::internal
 (Expert) Product traits for algorithmic differentiation variables.
 
+

Variable Documentation

+ +
+
+ + + + + +
+ + + + +
stan::agrad::vari* alpha_
+
+static
+
+ +

Definition at line 14 of file Eigen_NumTraits.hpp.

+ +
+
+ +
+
+ + + + +
double dotval_
+
+ +

Definition at line 17 of file Eigen_NumTraits.hpp.

+ +
+
+ +
+
+ + + + +
size_t length_
+
+ +

Definition at line 18 of file Eigen_NumTraits.hpp.

+ +
+
+ +
+
+ + + + +
stan::agrad::vari** v1_
+
+ +

Definition at line 15 of file Eigen_NumTraits.hpp.

+ +
+
+ +
+
+ + + + +
stan::agrad::vari** v2_
+
+ +

Definition at line 16 of file Eigen_NumTraits.hpp.

+ +
+
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/_eigen___num_traits_8hpp_source.html b/doc/api/html/_eigen___num_traits_8hpp_source.html new file mode 100644 index 00000000000..be8dc94c209 --- /dev/null +++ b/doc/api/html/_eigen___num_traits_8hpp_source.html @@ -0,0 +1,289 @@ + + + + + +Stan: src/stan/agrad/rev/matrix/Eigen_NumTraits.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
Eigen_NumTraits.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__REV__MATRIX__EIGEN_NUMTRAITS_HPP__
+
2 #define __STAN__AGRAD__REV__MATRIX__EIGEN_NUMTRAITS_HPP__
+
3 
+
4 #include <limits>
+ +
6 #include <stan/agrad/rev/var.hpp>
+
7 
+
8 namespace stan {
+
9  namespace agrad {
+
10 
+
11  namespace {
+
12  class gevv_vvv_vari : public stan::agrad::vari {
+
13  protected:
+ + + +
17  double dotval_;
+
18  size_t length_;
+
19  inline static double eval_gevv(const stan::agrad::var* alpha,
+
20  const stan::agrad::var* v1, int stride1,
+
21  const stan::agrad::var* v2, int stride2,
+
22  size_t length, double *dotprod) {
+
23  double result = 0;
+
24  for (size_t i = 0; i < length; i++)
+
25  result += v1[i*stride1].vi_->val_ * v2[i*stride2].vi_->val_;
+
26  *dotprod = result;
+
27  return alpha->vi_->val_ * result;
+
28  }
+
29  public:
+
30  gevv_vvv_vari(const stan::agrad::var* alpha,
+
31  const stan::agrad::var* v1, int stride1,
+
32  const stan::agrad::var* v2, int stride2, size_t length) :
+
33  vari(eval_gevv(alpha,v1,stride1,v2,stride2,length,&dotval_)), length_(length) {
+
34  alpha_ = alpha->vi_;
+ +
36  v2_ = v1_ + length_;
+
37  for (size_t i = 0; i < length_; i++)
+
38  v1_[i] = v1[i*stride1].vi_;
+
39  for (size_t i = 0; i < length_; i++)
+
40  v2_[i] = v2[i*stride2].vi_;
+
41  }
+
42  virtual ~gevv_vvv_vari() {}
+
43  void chain() {
+
44  const double adj_alpha = adj_ * alpha_->val_;
+
45  for (size_t i = 0; i < length_; i++) {
+
46  v1_[i]->adj_ += adj_alpha * v2_[i]->val_;
+
47  v2_[i]->adj_ += adj_alpha * v1_[i]->val_;
+
48  }
+
49  alpha_->adj_ += adj_ * dotval_;
+
50  }
+
51  };
+
52  }
+
53 
+
54  }
+
55 }
+
56 
+
57 
+
58 namespace Eigen {
+
59 
+
64  template <>
+
65  struct NumTraits<stan::agrad::var> {
+ +
72 
+ +
79 
+ +
86 
+
93  inline static Real epsilon() {
+
94  return std::numeric_limits<double>::epsilon();
+
95  }
+
96 
+
100  inline static Real dummy_precision() {
+
101  return 1e-12; // copied from NumTraits.h values for double
+
102  }
+
103 
+
110  inline static Real highest() {
+ +
112  }
+
113 
+
120  inline static Real lowest() {
+ +
122  }
+
123 
+
128  enum {
+
129  IsInteger = 0,
+
130  IsSigned = 1,
+
131  IsComplex = 0,
+
132  RequireInitialization = 0,
+
133  ReadCost = 1,
+
134  AddCost = 1,
+
135  MulCost = 1,
+
136  HasFloatingPoint = 1
+
137  };
+
138  };
+
139 
+
140  namespace internal {
+
144  template<>
+
145  struct significant_decimals_default_impl<stan::agrad::var,false>
+
146  {
+
147  static inline int run()
+
148  {
+
149  using std::ceil;
+
150  using std::log;
+
151  return cast<double,int>(ceil(-log(std::numeric_limits<double>::epsilon())
+
152  / log(10.0)));
+
153  }
+
154  };
+
155 
+
160  template <>
+
161  struct scalar_product_traits<stan::agrad::var,double> {
+ +
163  };
+
164 
+
169  template <>
+
170  struct scalar_product_traits<double,stan::agrad::var> {
+ +
172  };
+
173 
+
177  template<typename Index, bool ConjugateLhs, bool ConjugateRhs>
+
178  struct general_matrix_vector_product<Index,stan::agrad::var,ColMajor,ConjugateLhs,stan::agrad::var,ConjugateRhs>
+
179  {
+ + +
182  typedef typename scalar_product_traits<LhsScalar, RhsScalar>::ReturnType ResScalar;
+
183  enum { LhsStorageOrder = ColMajor };
+
184 
+
185  EIGEN_DONT_INLINE static void run(
+
186  Index rows, Index cols,
+
187  const LhsScalar* lhs, Index lhsStride,
+
188  const RhsScalar* rhs, Index rhsIncr,
+
189  ResScalar* res, Index resIncr, const ResScalar &alpha)
+
190  {
+
191  for (Index i = 0; i < rows; i++) {
+
192  res[i*resIncr] += stan::agrad::var(new stan::agrad::gevv_vvv_vari(&alpha,((int)LhsStorageOrder == (int)ColMajor)?(&lhs[i]):(&lhs[i*lhsStride]),((int)LhsStorageOrder == (int)ColMajor)?(lhsStride):(1),rhs,rhsIncr,cols));
+
193  }
+
194  }
+
195  };
+
196  template<typename Index, bool ConjugateLhs, bool ConjugateRhs>
+
197  struct general_matrix_vector_product<Index,stan::agrad::var,RowMajor,ConjugateLhs,stan::agrad::var,ConjugateRhs>
+
198  {
+ + +
201  typedef typename scalar_product_traits<LhsScalar, RhsScalar>::ReturnType ResScalar;
+
202  enum { LhsStorageOrder = RowMajor };
+
203 
+
204  EIGEN_DONT_INLINE static void run(
+
205  Index rows, Index cols,
+
206  const LhsScalar* lhs, Index lhsStride,
+
207  const RhsScalar* rhs, Index rhsIncr,
+
208  ResScalar* res, Index resIncr, const RhsScalar &alpha)
+
209  {
+
210  for (Index i = 0; i < rows; i++) {
+
211  res[i*resIncr] += stan::agrad::var(new stan::agrad::gevv_vvv_vari(&alpha,((int)LhsStorageOrder == (int)ColMajor)?(&lhs[i]):(&lhs[i*lhsStride]),((int)LhsStorageOrder == (int)ColMajor)?(lhsStride):(1),rhs,rhsIncr,cols));
+
212  }
+
213  }
+
214  };
+
215  template<typename Index, int LhsStorageOrder, bool ConjugateLhs, int RhsStorageOrder, bool ConjugateRhs>
+
216  struct general_matrix_matrix_product<Index,stan::agrad::var,LhsStorageOrder,ConjugateLhs,stan::agrad::var,RhsStorageOrder,ConjugateRhs,ColMajor>
+
217  {
+ + +
220  typedef typename scalar_product_traits<LhsScalar, RhsScalar>::ReturnType ResScalar;
+
221  static void run(Index rows, Index cols, Index depth,
+
222  const LhsScalar* _lhs, Index lhsStride,
+
223  const RhsScalar* _rhs, Index rhsStride,
+
224  ResScalar* res, Index resStride,
+
225  const ResScalar &alpha,
+
226  level3_blocking<LhsScalar,RhsScalar>& /* blocking */,
+
227  GemmParallelInfo<Index>* /* info = 0 */)
+
228  {
+
229  for (Index i = 0; i < cols; i++) {
+
230  general_matrix_vector_product<Index,LhsScalar,LhsStorageOrder,ConjugateLhs,RhsScalar,ConjugateRhs>::run(
+
231  rows,depth,_lhs,lhsStride,
+
232  &_rhs[((int)RhsStorageOrder == (int)ColMajor)?(i*rhsStride):(i)],((int)RhsStorageOrder == (int)ColMajor)?(1):(rhsStride),
+
233  &res[i*resStride],1,alpha);
+
234  }
+
235  }
+
236  };
+
237  }
+
238 }
+
239 
+
240 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/_l_d_l_t__alloc_8hpp.html b/doc/api/html/_l_d_l_t__alloc_8hpp.html new file mode 100644 index 00000000000..bf36ebeedd0 --- /dev/null +++ b/doc/api/html/_l_d_l_t__alloc_8hpp.html @@ -0,0 +1,130 @@ + + + + + +Stan: src/stan/agrad/rev/matrix/LDLT_alloc.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
LDLT_alloc.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + +

+Classes

class  stan::agrad::LDLT_alloc< R, C >
 This object stores the actual (double typed) LDLT factorization of an Eigen::Matrix<var> along with pointers to its vari's which allow the *_ldlt functions to save memory. More...
 
+ + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/_l_d_l_t__alloc_8hpp_source.html b/doc/api/html/_l_d_l_t__alloc_8hpp_source.html new file mode 100644 index 00000000000..425af4ef47a --- /dev/null +++ b/doc/api/html/_l_d_l_t__alloc_8hpp_source.html @@ -0,0 +1,150 @@ + + + + + +Stan: src/stan/agrad/rev/matrix/LDLT_alloc.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
LDLT_alloc.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__REV__MATRIX__LDLT_ALLOC_HPP__
+
2 #define __STAN__AGRAD__REV__MATRIX__LDLT_ALLOC_HPP__
+
3 
+ +
5 #include <stan/agrad/rev/var.hpp>
+
6 
+
7 namespace stan {
+
8  namespace agrad {
+
19  template<int R, int C>
+
20  class LDLT_alloc : public chainable_alloc {
+
21  public:
+
22  LDLT_alloc() : N_(0) {}
+
23  LDLT_alloc(const Eigen::Matrix<var,R,C> &A) : N_(0) {
+
24  compute(A);
+
25  }
+
26 
+
32  inline void compute(const Eigen::Matrix<var,R,C> &A) {
+
33  Eigen::Matrix<double,R,C> Ad(A.rows(),A.cols());
+
34 
+
35  N_ = A.rows();
+
36  _variA.resize(A.rows(),A.cols());
+
37 
+
38  for (size_t j = 0; j < N_; j++) {
+
39  for (size_t i = 0; i < N_; i++) {
+
40  Ad(i,j) = A(i,j).val();
+
41  _variA(i,j) = A(i,j).vi_;
+
42  }
+
43  }
+
44 
+
45  _ldlt.compute(Ad);
+
46  }
+
47 
+
49  inline double log_abs_det() const {
+
50  return _ldlt.vectorD().array().log().sum();
+
51  }
+
52 
+
53  size_t N_;
+
54  Eigen::LDLT<Eigen::Matrix<double,R,C> > _ldlt;
+
55  Eigen::Matrix<vari*,R,C> _variA;
+
56  };
+
57  }
+
58 }
+
59 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/accumulator_8hpp.html b/doc/api/html/accumulator_8hpp.html new file mode 100644 index 00000000000..4ec950f4bf0 --- /dev/null +++ b/doc/api/html/accumulator_8hpp.html @@ -0,0 +1,134 @@ + + + + + +Stan: src/stan/math/matrix/accumulator.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
accumulator.hpp File Reference
+
+
+
#include <vector>
+#include <boost/utility/enable_if.hpp>
+#include <boost/type_traits/is_arithmetic.hpp>
+#include <boost/type_traits/is_same.hpp>
+#include <stan/math/matrix/Eigen.hpp>
+#include <stan/math/matrix/sum.hpp>
+
+

Go to the source code of this file.

+ + + + + +

+Classes

class  stan::math::accumulator< T >
 Class to accumulate values and eventually return their sum. More...
 
+ + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::math
 Matrices and templated mathematical functions.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/accumulator_8hpp_source.html b/doc/api/html/accumulator_8hpp_source.html new file mode 100644 index 00000000000..649333745f4 --- /dev/null +++ b/doc/api/html/accumulator_8hpp_source.html @@ -0,0 +1,172 @@ + + + + + +Stan: src/stan/math/matrix/accumulator.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
accumulator.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MATH__MATRIX__ACCUMULATOR_HPP__
+
2 #define __STAN__MATH__MATRIX__ACCUMULATOR_HPP__
+
3 
+
4 #include <vector>
+
5 #include <boost/utility/enable_if.hpp>
+
6 #include <boost/type_traits/is_arithmetic.hpp>
+
7 #include <boost/type_traits/is_same.hpp>
+ + +
10 
+
11 namespace stan {
+
12  namespace math {
+
13 
+
24  template <typename T>
+
25  class accumulator {
+
26  private:
+
27  std::vector<T> buf_;
+
28 
+
29  public:
+ +
34  : buf_() {
+
35  }
+
36 
+ +
41 
+
52  template <typename S>
+
53  typename boost::enable_if<boost::is_arithmetic<S>, void>::type
+
54  add(S x) {
+
55  buf_.push_back(static_cast<T>(x));
+
56  }
+
57 
+
70  template <typename S>
+
71  typename boost::disable_if<boost::is_arithmetic<S>,
+
72  typename boost::enable_if<boost::is_same<S,T>,
+
73  void>::type >::type
+
74  add(const S& x) {
+
75  buf_.push_back(x);
+
76  }
+
77 
+
87  template <typename S, int R, int C>
+
88  void add(const Eigen::Matrix<S,R,C>& m) {
+
89  for (int i = 0; i < m.size(); ++i)
+
90  add(m(i));
+
91  }
+
92 
+
102  template <typename S>
+
103  void add(const std::vector<S>& xs) {
+
104  for (size_t i = 0; i < xs.size(); ++i)
+
105  add(xs[i]);
+
106  }
+
107 
+
113  T sum() {
+
114  using math::sum;
+
115  return sum(buf_);
+
116  }
+
117 
+
118  };
+
119 
+
120 
+
121 
+
122 
+
123  }
+
124 }
+
125 
+
126 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/adapt__dense__e__nuts_8hpp.html b/doc/api/html/adapt__dense__e__nuts_8hpp.html new file mode 100644 index 00000000000..f3f1e143bf3 --- /dev/null +++ b/doc/api/html/adapt__dense__e__nuts_8hpp.html @@ -0,0 +1,129 @@ + + + + + +Stan: src/stan/mcmc/hmc/nuts/adapt_dense_e_nuts.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
adapt_dense_e_nuts.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + +

+Classes

class  stan::mcmc::adapt_dense_e_nuts< M, BaseRNG >
 
+ + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::mcmc
 Markov chain Monte Carlo samplers.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/adapt__dense__e__nuts_8hpp_source.html b/doc/api/html/adapt__dense__e__nuts_8hpp_source.html new file mode 100644 index 00000000000..f59a6837723 --- /dev/null +++ b/doc/api/html/adapt__dense__e__nuts_8hpp_source.html @@ -0,0 +1,171 @@ + + + + + +Stan: src/stan/mcmc/hmc/nuts/adapt_dense_e_nuts.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
adapt_dense_e_nuts.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MCMC__ADAPT__DENSE__E__NUTS__BETA__
+
2 #define __STAN__MCMC__ADAPT__DENSE__E__NUTS__BETA__
+
3 
+ + +
6 
+
7 namespace stan {
+
8 
+
9  namespace mcmc {
+
10 
+
11  // The No-U-Turn Sampler (NUTS) on a
+
12  // Euclidean manifold with dense metric
+
13  // and adaptive stepsize
+
14 
+
15  template <typename M, class BaseRNG>
+
16  class adapt_dense_e_nuts: public dense_e_nuts<M, BaseRNG>,
+
17  public stepsize_covar_adapter {
+
18 
+
19  public:
+
20 
+
21  adapt_dense_e_nuts(M &m, BaseRNG& rng,
+
22  std::ostream* o = &std::cout, std::ostream* e = 0):
+
23  dense_e_nuts<M, BaseRNG>(m, rng, o, e),
+
24  stepsize_covar_adapter(m.num_params_r())
+
25  {};
+
26 
+ +
28 
+
29  sample transition(sample& init_sample) {
+
30 
+ +
32 
+
33  if (this->_adapt_flag) {
+
34 
+ +
36 
+
37  bool update = this->_covar_adaptation.learn_covariance(this->_z.mInv, this->_z.q);
+
38 
+
39  if(update) {
+
40  this->init_stepsize();
+
41 
+
42  this->_stepsize_adaptation.set_mu(log(10 * this->_nom_epsilon));
+ +
44  }
+
45 
+
46  }
+
47 
+
48  return s;
+
49 
+
50  }
+
51 
+ + + +
55  }
+
56 
+
57  };
+
58 
+
59  } // mcmc
+
60 
+
61 } // stan
+
62 
+
63 
+
64 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/adapt__dense__e__static__hmc_8hpp.html b/doc/api/html/adapt__dense__e__static__hmc_8hpp.html new file mode 100644 index 00000000000..f7629d5b4c9 --- /dev/null +++ b/doc/api/html/adapt__dense__e__static__hmc_8hpp.html @@ -0,0 +1,129 @@ + + + + + +Stan: src/stan/mcmc/hmc/static/adapt_dense_e_static_hmc.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
adapt_dense_e_static_hmc.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + +

+Classes

class  stan::mcmc::adapt_dense_e_static_hmc< M, BaseRNG >
 
+ + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::mcmc
 Markov chain Monte Carlo samplers.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/adapt__dense__e__static__hmc_8hpp_source.html b/doc/api/html/adapt__dense__e__static__hmc_8hpp_source.html new file mode 100644 index 00000000000..d48aaea90a9 --- /dev/null +++ b/doc/api/html/adapt__dense__e__static__hmc_8hpp_source.html @@ -0,0 +1,174 @@ + + + + + +Stan: src/stan/mcmc/hmc/static/adapt_dense_e_static_hmc.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
adapt_dense_e_static_hmc.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MCMC__ADAPT__DENSE__E__STATIC__HMC__BETA__
+
2 #define __STAN__MCMC__ADAPT__DENSE__E__STATIC__HMC__BETA__
+
3 
+ + +
6 
+
7 namespace stan {
+
8 
+
9  namespace mcmc {
+
10 
+
11  // Hamiltonian Monte Carlo on a
+
12  // Euclidean manifold with dense metric,
+
13  // static integration time,
+
14  // and adaptive stepsize
+
15 
+
16  template <typename M, class BaseRNG>
+
17  class adapt_dense_e_static_hmc: public dense_e_static_hmc<M, BaseRNG>,
+
18  public stepsize_covar_adapter {
+
19 
+
20  public:
+
21 
+
22  adapt_dense_e_static_hmc(M &m, BaseRNG& rng,
+
23  std::ostream* o = &std::cout, std::ostream* e = 0):
+
24  dense_e_static_hmc<M, BaseRNG>(m, rng, o, e),
+
25  stepsize_covar_adapter(m.num_params_r())
+
26  {};
+
27 
+ +
29 
+
30  sample transition(sample& init_sample) {
+
31 
+ +
33 
+
34  if (this->_adapt_flag) {
+
35 
+ +
37  this->_update_L();
+
38 
+
39  bool update = this->_covar_adaptation.learn_covariance(this->_z.mInv, this->_z.q);
+
40 
+
41  if(update) {
+
42  this->init_stepsize();
+
43  this->_update_L();
+
44 
+
45  this->_stepsize_adaptation.set_mu(log(10 * this->_nom_epsilon));
+ +
47  }
+
48 
+
49  }
+
50 
+
51  return s;
+
52 
+
53  }
+
54 
+ + + +
58  }
+
59 
+
60  };
+
61 
+
62  } // mcmc
+
63 
+
64 } // stan
+
65 
+
66 
+
67 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/adapt__diag__e__nuts_8hpp.html b/doc/api/html/adapt__diag__e__nuts_8hpp.html new file mode 100644 index 00000000000..12a32e87fe5 --- /dev/null +++ b/doc/api/html/adapt__diag__e__nuts_8hpp.html @@ -0,0 +1,129 @@ + + + + + +Stan: src/stan/mcmc/hmc/nuts/adapt_diag_e_nuts.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
adapt_diag_e_nuts.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + +

+Classes

class  stan::mcmc::adapt_diag_e_nuts< M, BaseRNG >
 
+ + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::mcmc
 Markov chain Monte Carlo samplers.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/adapt__diag__e__nuts_8hpp_source.html b/doc/api/html/adapt__diag__e__nuts_8hpp_source.html new file mode 100644 index 00000000000..2bd74e2acd8 --- /dev/null +++ b/doc/api/html/adapt__diag__e__nuts_8hpp_source.html @@ -0,0 +1,171 @@ + + + + + +Stan: src/stan/mcmc/hmc/nuts/adapt_diag_e_nuts.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
adapt_diag_e_nuts.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MCMC__ADAPT__DIAG__E__NUTS__BETA__
+
2 #define __STAN__MCMC__ADAPT__DIAG__E__NUTS__BETA__
+
3 
+ + +
6 
+
7 namespace stan {
+
8 
+
9  namespace mcmc {
+
10 
+
11  // The No-U-Turn Sampler (NUTS) on a
+
12  // Euclidean manifold with diagonal metric
+
13  // and adaptive stepsize
+
14 
+
15  template <typename M, class BaseRNG>
+
16  class adapt_diag_e_nuts: public diag_e_nuts<M, BaseRNG>,
+
17  public stepsize_var_adapter {
+
18 
+
19  public:
+
20 
+
21  adapt_diag_e_nuts(M &m, BaseRNG& rng,
+
22  std::ostream* o = &std::cout, std::ostream* e = 0):
+
23  diag_e_nuts<M, BaseRNG>(m, rng, o, e),
+
24  stepsize_var_adapter(m.num_params_r())
+
25  {};
+
26 
+ +
28 
+
29  sample transition(sample& init_sample) {
+
30 
+ +
32 
+
33  if (this->_adapt_flag) {
+
34 
+ +
36 
+
37  bool update = this->_var_adaptation.learn_variance(this->_z.mInv, this->_z.q);
+
38 
+
39  if(update) {
+
40  this->init_stepsize();
+
41 
+
42  this->_stepsize_adaptation.set_mu(log(10 * this->_nom_epsilon));
+ +
44  }
+
45 
+
46  }
+
47 
+
48  return s;
+
49 
+
50  }
+
51 
+ + + +
55  }
+
56 
+
57  };
+
58 
+
59  } // mcmc
+
60 
+
61 } // stan
+
62 
+
63 
+
64 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/adapt__diag__e__static__hmc_8hpp.html b/doc/api/html/adapt__diag__e__static__hmc_8hpp.html new file mode 100644 index 00000000000..5ed4df522db --- /dev/null +++ b/doc/api/html/adapt__diag__e__static__hmc_8hpp.html @@ -0,0 +1,129 @@ + + + + + +Stan: src/stan/mcmc/hmc/static/adapt_diag_e_static_hmc.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
adapt_diag_e_static_hmc.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + +

+Classes

class  stan::mcmc::adapt_diag_e_static_hmc< M, BaseRNG >
 
+ + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::mcmc
 Markov chain Monte Carlo samplers.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/adapt__diag__e__static__hmc_8hpp_source.html b/doc/api/html/adapt__diag__e__static__hmc_8hpp_source.html new file mode 100644 index 00000000000..988906b8a24 --- /dev/null +++ b/doc/api/html/adapt__diag__e__static__hmc_8hpp_source.html @@ -0,0 +1,174 @@ + + + + + +Stan: src/stan/mcmc/hmc/static/adapt_diag_e_static_hmc.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
adapt_diag_e_static_hmc.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MCMC__ADAPT__DIAG__E__STATIC__HMC__BETA__
+
2 #define __STAN__MCMC__ADAPT__DIAG__E__STATIC__HMC__BETA__
+
3 
+ + +
6 
+
7 namespace stan {
+
8 
+
9  namespace mcmc {
+
10 
+
11  // Hamiltonian Monte Carlo on a
+
12  // Euclidean manifold with diagonal metric,
+
13  // static integration time,
+
14  // and adaptive stepsize
+
15 
+
16  template <typename M, class BaseRNG>
+
17  class adapt_diag_e_static_hmc: public diag_e_static_hmc<M, BaseRNG>,
+
18  public stepsize_var_adapter {
+
19 
+
20  public:
+
21 
+
22  adapt_diag_e_static_hmc(M &m, BaseRNG& rng,
+
23  std::ostream* o = &std::cout, std::ostream* e = 0):
+
24  diag_e_static_hmc<M, BaseRNG>(m, rng, o, e),
+
25  stepsize_var_adapter(m.num_params_r())
+
26  {};
+
27 
+ +
29 
+
30  sample transition(sample& init_sample) {
+
31 
+ +
33 
+
34  if (this->_adapt_flag) {
+
35 
+ +
37  this->_update_L();
+
38 
+
39  bool update = this->_var_adaptation.learn_variance(this->_z.mInv, this->_z.q);
+
40 
+
41  if(update) {
+
42  this->init_stepsize();
+
43  this->_update_L();
+
44 
+
45  this->_stepsize_adaptation.set_mu(log(10 * this->_nom_epsilon));
+ +
47  }
+
48 
+
49  }
+
50 
+
51  return s;
+
52 
+
53  }
+
54 
+ + + +
58  }
+
59 
+
60  };
+
61 
+
62  } // mcmc
+
63 
+
64 } // stan
+
65 
+
66 
+
67 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/adapt__unit__e__nuts_8hpp.html b/doc/api/html/adapt__unit__e__nuts_8hpp.html new file mode 100644 index 00000000000..5bb53b7554c --- /dev/null +++ b/doc/api/html/adapt__unit__e__nuts_8hpp.html @@ -0,0 +1,129 @@ + + + + + +Stan: src/stan/mcmc/hmc/nuts/adapt_unit_e_nuts.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
adapt_unit_e_nuts.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + +

+Classes

class  stan::mcmc::adapt_unit_e_nuts< M, BaseRNG >
 
+ + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::mcmc
 Markov chain Monte Carlo samplers.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/adapt__unit__e__nuts_8hpp_source.html b/doc/api/html/adapt__unit__e__nuts_8hpp_source.html new file mode 100644 index 00000000000..e81eaf5ef5a --- /dev/null +++ b/doc/api/html/adapt__unit__e__nuts_8hpp_source.html @@ -0,0 +1,157 @@ + + + + + +Stan: src/stan/mcmc/hmc/nuts/adapt_unit_e_nuts.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
adapt_unit_e_nuts.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MCMC__ADAPT__UNIT__E__NUTS__BETA__
+
2 #define __STAN__MCMC__ADAPT__UNIT__E__NUTS__BETA__
+
3 
+ + +
6 
+
7 namespace stan {
+
8 
+
9  namespace mcmc {
+
10 
+
11  // The No-U-Turn Sampler (NUTS) on a
+
12  // Euclidean manifold with unit metric
+
13  // and adaptive stepsize
+
14 
+
15  template <typename M, class BaseRNG>
+
16  class adapt_unit_e_nuts: public unit_e_nuts<M, BaseRNG>,
+
17  public stepsize_adapter {
+
18 
+
19  public:
+
20 
+
21  adapt_unit_e_nuts(M &m, BaseRNG& rng,
+
22  std::ostream* o = &std::cout, std::ostream* e = 0):
+
23  unit_e_nuts<M, BaseRNG>(m, rng, o, e) {};
+
24 
+ +
26 
+
27  sample transition(sample& init_sample) {
+
28 
+ +
30 
+
31  if (this->_adapt_flag)
+ +
33 
+
34  return s;
+
35 
+
36  }
+
37 
+ + + +
41  }
+
42 
+
43  };
+
44 
+
45  } // mcmc
+
46 
+
47 } // stan
+
48 
+
49 
+
50 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/adapt__unit__e__static__hmc_8hpp.html b/doc/api/html/adapt__unit__e__static__hmc_8hpp.html new file mode 100644 index 00000000000..d598d43ee31 --- /dev/null +++ b/doc/api/html/adapt__unit__e__static__hmc_8hpp.html @@ -0,0 +1,129 @@ + + + + + +Stan: src/stan/mcmc/hmc/static/adapt_unit_e_static_hmc.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
adapt_unit_e_static_hmc.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + +

+Classes

class  stan::mcmc::adapt_unit_e_static_hmc< M, BaseRNG >
 
+ + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::mcmc
 Markov chain Monte Carlo samplers.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/adapt__unit__e__static__hmc_8hpp_source.html b/doc/api/html/adapt__unit__e__static__hmc_8hpp_source.html new file mode 100644 index 00000000000..7ccf5b8da12 --- /dev/null +++ b/doc/api/html/adapt__unit__e__static__hmc_8hpp_source.html @@ -0,0 +1,160 @@ + + + + + +Stan: src/stan/mcmc/hmc/static/adapt_unit_e_static_hmc.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
adapt_unit_e_static_hmc.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MCMC__ADAPT__UNIT__E__STATIC__HMC__BETA__
+
2 #define __STAN__MCMC__ADAPT__UNIT__E__STATIC__HMC__BETA__
+
3 
+ + +
6 
+
7 namespace stan {
+
8 
+
9  namespace mcmc {
+
10 
+
11  // Hamiltonian Monte Carlo on a
+
12  // Euclidean manifold with unit metric,
+
13  // static integration time,
+
14  // and adaptive stepsize
+
15 
+
16  template <typename M, class BaseRNG>
+
17  class adapt_unit_e_static_hmc: public unit_e_static_hmc<M, BaseRNG>,
+
18  public stepsize_adapter {
+
19 
+
20  public:
+
21 
+
22  adapt_unit_e_static_hmc(M &m, BaseRNG& rng,
+
23  std::ostream* o = &std::cout, std::ostream* e = 0):
+
24  unit_e_static_hmc<M, BaseRNG>(m, rng, o, e) {};
+
25 
+ +
27 
+
28  sample transition(sample& init_sample) {
+
29 
+ +
31 
+
32  if (this->_adapt_flag) {
+ +
34  this->_update_L();
+
35  }
+
36 
+
37  return s;
+
38 
+
39  }
+
40 
+ + + +
44  }
+
45 
+
46  };
+
47 
+
48  } // mcmc
+
49 
+
50 } // stan
+
51 
+
52 
+
53 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/add_8hpp.html b/doc/api/html/add_8hpp.html new file mode 100644 index 00000000000..b91c76b3331 --- /dev/null +++ b/doc/api/html/add_8hpp.html @@ -0,0 +1,146 @@ + + + + + +Stan: src/stan/math/matrix/add.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
add.hpp File Reference
+
+
+
#include <boost/math/tools/promotion.hpp>
+#include <stan/math/matrix/Eigen.hpp>
+#include <stan/math/matrix/validate_matching_dims.hpp>
+
+

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::math
 Matrices and templated mathematical functions.
 
+ + + + + + + + + + + + + +

+Functions

template<typename T1 , typename T2 , int R, int C>
Eigen::Matrix< typename
+boost::math::tools::promote_args
+< T1, T2 >::type, R, C > 
stan::math::add (const Eigen::Matrix< T1, R, C > &m1, const Eigen::Matrix< T2, R, C > &m2)
 Return the sum of the specified matrices.
 
template<typename T1 , typename T2 , int R, int C>
Eigen::Matrix< typename
+boost::math::tools::promote_args
+< T1, T2 >::type, R, C > 
stan::math::add (const Eigen::Matrix< T1, R, C > &m, const T2 &c)
 Return the sum of the specified matrix and specified scalar.
 
template<typename T1 , typename T2 , int R, int C>
Eigen::Matrix< typename
+boost::math::tools::promote_args
+< T1, T2 >::type, R, C > 
stan::math::add (const T1 &c, const Eigen::Matrix< T2, R, C > &m)
 Return the sum of the specified scalar and specified matrix.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/add_8hpp_source.html b/doc/api/html/add_8hpp_source.html new file mode 100644 index 00000000000..44a73d5a7c1 --- /dev/null +++ b/doc/api/html/add_8hpp_source.html @@ -0,0 +1,157 @@ + + + + + +Stan: src/stan/math/matrix/add.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
add.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MATH__MATRIX__ADD_HPP__
+
2 #define __STAN__MATH__MATRIX__ADD_HPP__
+
3 
+
4 #include <boost/math/tools/promotion.hpp>
+ + +
7 
+
8 namespace stan {
+
9  namespace math {
+
10 
+
24  template <typename T1, typename T2, int R, int C>
+
25  inline
+
26  Eigen::Matrix<typename boost::math::tools::promote_args<T1,T2>::type,R,C>
+
27  add(const Eigen::Matrix<T1,R,C>& m1,
+
28  const Eigen::Matrix<T2,R,C>& m2) {
+ +
30  Eigen::Matrix<typename boost::math::tools::promote_args<T1,T2>::type,R,C>
+
31  result(m1.rows(),m1.cols());
+
32  for (int i = 0; i < result.size(); ++i)
+
33  result(i) = m1(i) + m2(i);
+
34  return result;
+
35  }
+
36 
+
46  template <typename T1, typename T2, int R, int C>
+
47  inline
+
48  Eigen::Matrix<typename boost::math::tools::promote_args<T1,T2>::type,R,C>
+
49  add(const Eigen::Matrix<T1,R,C>& m,
+
50  const T2& c) {
+
51  Eigen::Matrix<typename boost::math::tools::promote_args<T1,T2>::type,R,C>
+
52  result(m.rows(),m.cols());
+
53  for (int i = 0; i < result.size(); ++i)
+
54  result(i) = m(i) + c;
+
55  return result;
+
56  }
+
57 
+
67  template <typename T1, typename T2, int R, int C>
+
68  inline
+
69  Eigen::Matrix<typename boost::math::tools::promote_args<T1,T2>::type,R,C>
+
70  add(const T1& c,
+
71  const Eigen::Matrix<T2,R,C>& m) {
+
72  Eigen::Matrix<typename boost::math::tools::promote_args<T1,T2>::type,R,C>
+
73  result(m.rows(),m.cols());
+
74  for (int i = 0; i < result.size(); ++i)
+
75  result(i) = c + m(i);
+
76  return result;
+
77  }
+
78 
+
79  }
+
80 }
+
81 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2fwd_2functions_2_phi_8hpp.html b/doc/api/html/agrad_2fwd_2functions_2_phi_8hpp.html new file mode 100644 index 00000000000..3fc6c852c38 --- /dev/null +++ b/doc/api/html/agrad_2fwd_2functions_2_phi_8hpp.html @@ -0,0 +1,132 @@ + + + + + +Stan: src/stan/agrad/fwd/functions/Phi.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
Phi.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+ + + + +

+Functions

template<typename T >
fvar< T > stan::agrad::Phi (const fvar< T > &x)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2fwd_2functions_2_phi_8hpp_source.html b/doc/api/html/agrad_2fwd_2functions_2_phi_8hpp_source.html new file mode 100644 index 00000000000..be6a93cdfd4 --- /dev/null +++ b/doc/api/html/agrad_2fwd_2functions_2_phi_8hpp_source.html @@ -0,0 +1,131 @@ + + + + + +Stan: src/stan/agrad/fwd/functions/Phi.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
Phi.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__FWD__FUNCTIONS__PHI_HPP__
+
2 #define __STAN__AGRAD__FWD__FUNCTIONS__PHI_HPP__
+
3 
+ +
5 #include <stan/meta/traits.hpp>
+ + +
8 
+
9 namespace stan {
+
10 
+
11  namespace agrad {
+
12 
+
13  template <typename T>
+
14  inline fvar<T> Phi(const fvar<T>& x) {
+
15  using stan::math::Phi;
+
16  using std::exp;
+
17  using std::sqrt;
+
18  T xv = x.val_;
+
19  return fvar<T>(Phi(xv),
+
20  x.d_ * exp(xv * xv / -2.0) / sqrt(2.0 * stan::math::pi()));
+
21  }
+
22  }
+
23 }
+
24 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2fwd_2functions_2abs_8hpp.html b/doc/api/html/agrad_2fwd_2functions_2abs_8hpp.html new file mode 100644 index 00000000000..2d5239bdf80 --- /dev/null +++ b/doc/api/html/agrad_2fwd_2functions_2abs_8hpp.html @@ -0,0 +1,131 @@ + + + + + +Stan: src/stan/agrad/fwd/functions/abs.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
abs.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+ + + + +

+Functions

template<typename T >
fvar< T > stan::agrad::abs (const fvar< T > &x)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2fwd_2functions_2abs_8hpp_source.html b/doc/api/html/agrad_2fwd_2functions_2abs_8hpp_source.html new file mode 100644 index 00000000000..698c1f8937f --- /dev/null +++ b/doc/api/html/agrad_2fwd_2functions_2abs_8hpp_source.html @@ -0,0 +1,135 @@ + + + + + +Stan: src/stan/agrad/fwd/functions/abs.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
abs.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__FWD__FUNCTIONS__ABS_HPP__
+
2 #define __STAN__AGRAD__FWD__FUNCTIONS__ABS_HPP__
+
3 
+ +
5 #include <stan/meta/traits.hpp>
+ +
7 
+
8 namespace stan {
+
9 
+
10  namespace agrad {
+
11 
+
12  template<typename T>
+
13  inline
+
14  fvar<T>
+
15  abs(const fvar<T>& x) {
+ +
17  if (x.val_ > 0.0)
+
18  return x;
+
19  else if (x.val_ < 0.0)
+
20  return fvar<T>(-x.val_, -x.d_);
+
21  else if (x.val_ == 0.0)
+
22  return fvar<T>(0, 0);
+
23  else
+ +
25  }
+
26  }
+
27 }
+
28 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2fwd_2functions_2bessel__first__kind_8hpp.html b/doc/api/html/agrad_2fwd_2functions_2bessel__first__kind_8hpp.html new file mode 100644 index 00000000000..03b75c50564 --- /dev/null +++ b/doc/api/html/agrad_2fwd_2functions_2bessel__first__kind_8hpp.html @@ -0,0 +1,131 @@ + + + + + +Stan: src/stan/agrad/fwd/functions/bessel_first_kind.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
bessel_first_kind.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+ + + + +

+Functions

template<typename T >
fvar< T > stan::agrad::bessel_first_kind (int v, const fvar< T > &z)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2fwd_2functions_2bessel__first__kind_8hpp_source.html b/doc/api/html/agrad_2fwd_2functions_2bessel__first__kind_8hpp_source.html new file mode 100644 index 00000000000..2281b0ffb00 --- /dev/null +++ b/doc/api/html/agrad_2fwd_2functions_2bessel__first__kind_8hpp_source.html @@ -0,0 +1,132 @@ + + + + + +Stan: src/stan/agrad/fwd/functions/bessel_first_kind.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
bessel_first_kind.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__FWD__FUNCTIONS__BESSEL_FIRST_KIND_HPP__
+
2 #define __STAN__AGRAD__FWD__FUNCTIONS__BESSEL_FIRST_KIND_HPP__
+
3 
+ +
5 #include <stan/meta/traits.hpp>
+ +
7 
+
8 namespace stan {
+
9 
+
10  namespace agrad {
+
11 
+
12  template <typename T>
+
13  inline
+
14  fvar<T>
+
15  bessel_first_kind(int v, const fvar<T>& z) {
+ +
17 
+
18  T bessel_first_kind_z(bessel_first_kind(v, z.val_));
+
19  return fvar<T>(bessel_first_kind_z,
+
20  v * z.d_ * bessel_first_kind_z / z.val_
+
21  - z.d_ * bessel_first_kind(v + 1,z.val_));
+
22  }
+
23  }
+
24 }
+
25 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2fwd_2functions_2bessel__second__kind_8hpp.html b/doc/api/html/agrad_2fwd_2functions_2bessel__second__kind_8hpp.html new file mode 100644 index 00000000000..0215260d920 --- /dev/null +++ b/doc/api/html/agrad_2fwd_2functions_2bessel__second__kind_8hpp.html @@ -0,0 +1,131 @@ + + + + + +Stan: src/stan/agrad/fwd/functions/bessel_second_kind.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
bessel_second_kind.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+ + + + +

+Functions

template<typename T >
fvar< T > stan::agrad::bessel_second_kind (int v, const fvar< T > &z)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2fwd_2functions_2bessel__second__kind_8hpp_source.html b/doc/api/html/agrad_2fwd_2functions_2bessel__second__kind_8hpp_source.html new file mode 100644 index 00000000000..afdcd0b005d --- /dev/null +++ b/doc/api/html/agrad_2fwd_2functions_2bessel__second__kind_8hpp_source.html @@ -0,0 +1,132 @@ + + + + + +Stan: src/stan/agrad/fwd/functions/bessel_second_kind.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
bessel_second_kind.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__FWD__FUNCTIONS__BESSEL_SECOND_KIND_HPP__
+
2 #define __STAN__AGRAD__FWD__FUNCTIONS__BESSEL_SECOND_KIND_HPP__
+
3 
+ +
5 #include <stan/meta/traits.hpp>
+ +
7 
+
8 namespace stan {
+
9 
+
10  namespace agrad {
+
11 
+
12  template <typename T>
+
13  inline
+
14  fvar<T>
+
15  bessel_second_kind(int v, const fvar<T>& z) {
+ +
17 
+
18  T bessel_second_kind_z(bessel_second_kind(v, z.val_));
+
19  return fvar<T>(bessel_second_kind_z,
+
20  v * z.d_ * bessel_second_kind_z / z.val_
+
21  - z.d_ * bessel_second_kind(v + 1,z.val_));
+
22  }
+
23  }
+
24 }
+
25 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2fwd_2functions_2binary__log__loss_8hpp.html b/doc/api/html/agrad_2fwd_2functions_2binary__log__loss_8hpp.html new file mode 100644 index 00000000000..efb362f036f --- /dev/null +++ b/doc/api/html/agrad_2fwd_2functions_2binary__log__loss_8hpp.html @@ -0,0 +1,131 @@ + + + + + +Stan: src/stan/agrad/fwd/functions/binary_log_loss.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
binary_log_loss.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+ + + + +

+Functions

template<typename T >
fvar< T > stan::agrad::binary_log_loss (const int y, const fvar< T > &y_hat)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2fwd_2functions_2binary__log__loss_8hpp_source.html b/doc/api/html/agrad_2fwd_2functions_2binary__log__loss_8hpp_source.html new file mode 100644 index 00000000000..5bd3a5ae9d0 --- /dev/null +++ b/doc/api/html/agrad_2fwd_2functions_2binary__log__loss_8hpp_source.html @@ -0,0 +1,132 @@ + + + + + +Stan: src/stan/agrad/fwd/functions/binary_log_loss.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
binary_log_loss.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__FWD__FUNCTIONS__BINARY_LOG_LOSS_HPP__
+
2 #define __STAN__AGRAD__FWD__FUNCTIONS__BINARY_LOG_LOSS_HPP__
+
3 
+ +
5 #include <stan/meta/traits.hpp>
+ +
7 
+
8 namespace stan {
+
9 
+
10  namespace agrad {
+
11 
+
12  template <typename T>
+
13  inline
+
14  fvar<T>
+
15  binary_log_loss(const int y, const fvar<T>& y_hat) {
+ +
17 
+
18  if (y)
+
19  return fvar<T>(binary_log_loss(y,y_hat.val_), -y_hat.d_ / y_hat.val_);
+
20  else
+
21  return fvar<T>(binary_log_loss(y,y_hat.val_), y_hat.d_ / (1.0 - y_hat.val_));
+
22  }
+
23  }
+
24 }
+
25 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2fwd_2functions_2binomial__coefficient__log_8hpp.html b/doc/api/html/agrad_2fwd_2functions_2binomial__coefficient__log_8hpp.html new file mode 100644 index 00000000000..4ba27be7699 --- /dev/null +++ b/doc/api/html/agrad_2fwd_2functions_2binomial__coefficient__log_8hpp.html @@ -0,0 +1,138 @@ + + + + + +Stan: src/stan/agrad/fwd/functions/binomial_coefficient_log.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
binomial_coefficient_log.hpp File Reference
+
+
+
#include <stan/agrad/fwd/fvar.hpp>
+#include <stan/meta/traits.hpp>
+#include <boost/math/special_functions/digamma.hpp>
+#include <stan/math/functions/binomial_coefficient_log.hpp>
+
+

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+ + + + + + + + + + +

+Functions

template<typename T >
fvar< T > stan::agrad::binomial_coefficient_log (const fvar< T > &x1, const fvar< T > &x2)
 
template<typename T >
fvar< T > stan::agrad::binomial_coefficient_log (const fvar< T > &x1, const double x2)
 
template<typename T >
fvar< T > stan::agrad::binomial_coefficient_log (const double x1, const fvar< T > &x2)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2fwd_2functions_2binomial__coefficient__log_8hpp_source.html b/doc/api/html/agrad_2fwd_2functions_2binomial__coefficient__log_8hpp_source.html new file mode 100644 index 00000000000..bda788ffe31 --- /dev/null +++ b/doc/api/html/agrad_2fwd_2functions_2binomial__coefficient__log_8hpp_source.html @@ -0,0 +1,197 @@ + + + + + +Stan: src/stan/agrad/fwd/functions/binomial_coefficient_log.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
binomial_coefficient_log.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__FWD__FUNCTIONS__BINOMIAL_COEFFICIENT_LOG_HPP__
+
2 #define __STAN__AGRAD__FWD__FUNCTIONS__BINOMIAL_COEFFICIENT_LOG_HPP__
+
3 
+ +
5 #include <stan/meta/traits.hpp>
+
6 #include <boost/math/special_functions/digamma.hpp>
+ +
8 
+
9 namespace stan {
+
10 
+
11  namespace agrad {
+
12 
+
13  template <typename T>
+
14  inline
+
15  fvar<T>
+
16  binomial_coefficient_log(const fvar<T>& x1, const fvar<T>& x2) {
+ +
18  using std::log;
+ +
20  const double cutoff = 1000;
+
21  if ((x1.val_ < cutoff) || (x1.val_ - x2.val_ < cutoff)) {
+ +
23  x1.d_ * digamma(x1.val_ + 1)
+
24  - x2.d_ * digamma(x2.val_ + 1)
+
25  - (x1.d_ - x2.d_) * digamma(x1.val_ - x2.val_ + 1));
+
26  } else {
+
27  return fvar<T>(binomial_coefficient_log(x1.val_, x2.val_),
+
28  x2.d_ * log(x1.val_ - x2.val_)
+
29  + x2.val_ * (x1.d_ - x2.d_) / (x1.val_ - x2.val_)
+
30  + x1.d_ * log(x1.val_ / (x1.val_ - x2.val_))
+
31  + (x1.val_ + 0.5) / (x1.val_ / (x1.val_ - x2.val_))
+
32  * (x1.d_ * (x1.val_ - x2.val_) - (x1.d_ - x2.d_) * x1.val_)
+
33  / ((x1.val_ - x2.val_) * (x1.val_ - x2.val_))
+
34  - x1.d_ / (12.0 * x1.val_ * x1.val_)
+
35  - x2.d_
+
36  + (x1.d_ - x2.d_) / (12.0 * (x1.val_ - x2.val_)
+
37  * (x1.val_ - x2.val_))
+
38  - digamma(x2.val_ + 1) * x2.d_);
+
39  }
+
40  }
+
41 
+
42  template <typename T>
+
43  inline
+
44  fvar<T>
+
45  binomial_coefficient_log(const fvar<T>& x1, const double x2) {
+ +
47  using std::log;
+ +
49  const double cutoff = 1000;
+
50  if ((x1.val_ < cutoff) || (x1.val_ - x2 < cutoff)) {
+
51  return fvar<T>(binomial_coefficient_log(x1.val_, x2),
+
52  x1.d_ * digamma(x1.val_ + 1)
+
53  - x1.d_ * digamma(x1.val_ - x2 + 1));
+
54  } else {
+
55  return fvar<T>(binomial_coefficient_log(x1.val_, x2),
+
56  x2 * x1.d_ / (x1.val_ - x2)
+
57  + x1.d_ * log(x1.val_ / (x1.val_ - x2))
+
58  + (x1.val_ + 0.5) / (x1.val_ / (x1.val_ - x2))
+
59  * (x1.d_ * (x1.val_ - x2) - x1.d_ * x1.val_)
+
60  / ((x1.val_ - x2) * (x1.val_ - x2))
+
61  - x1.d_ / (12.0 * x1.val_ * x1.val_)
+
62  + x1.d_ / (12.0 * (x1.val_ - x2) * (x1.val_ - x2)));
+
63  }
+
64  }
+
65 
+
66  template <typename T>
+
67  inline
+
68  fvar<T>
+
69  binomial_coefficient_log(const double x1, const fvar<T>& x2) {
+ +
71  using std::log;
+ +
73  const double cutoff = 1000;
+
74  if ((x1 < cutoff) || (x1 - x2.val_ < cutoff)) {
+
75  return fvar<T>(binomial_coefficient_log(x1, x2.val_),
+
76  -x2.d_ * digamma(x2.val_ + 1)
+
77  - x2.d_ * digamma(x1 - x2.val_ + 1));
+
78  } else {
+
79  return fvar<T>(binomial_coefficient_log(x1, x2.val_),
+
80  x2.d_ * log(x1 - x2.val_)
+
81  + x2.val_ * -x2.d_ / (x1 - x2.val_)
+
82  - x2.d_
+
83  - x2.d_ / (12.0 * (x1 - x2.val_) * (x1 - x2.val_))
+
84  + x2.d_ * (x1 + 0.5) / (x1 - x2.val_)
+
85  - digamma(x2.val_ + 1) * x2.d_);
+
86  }
+
87  }
+
88  }
+
89 }
+
90 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2fwd_2functions_2digamma_8hpp.html b/doc/api/html/agrad_2fwd_2functions_2digamma_8hpp.html new file mode 100644 index 00000000000..2580439e338 --- /dev/null +++ b/doc/api/html/agrad_2fwd_2functions_2digamma_8hpp.html @@ -0,0 +1,132 @@ + + + + + +Stan: src/stan/agrad/fwd/functions/digamma.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
digamma.hpp File Reference
+
+
+
#include <stan/agrad/fwd/fvar.hpp>
+#include <stan/meta/traits.hpp>
+#include <boost/math/special_functions/digamma.hpp>
+#include <stan/math/functions/trigamma.hpp>
+
+

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+ + + + +

+Functions

template<typename T >
fvar< T > stan::agrad::digamma (const fvar< T > &x)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2fwd_2functions_2digamma_8hpp_source.html b/doc/api/html/agrad_2fwd_2functions_2digamma_8hpp_source.html new file mode 100644 index 00000000000..638c0ed4c52 --- /dev/null +++ b/doc/api/html/agrad_2fwd_2functions_2digamma_8hpp_source.html @@ -0,0 +1,130 @@ + + + + + +Stan: src/stan/agrad/fwd/functions/digamma.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
digamma.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__FWD__FUNCTIONS__DIGAMMA_HPP__
+
2 #define __STAN__AGRAD__FWD__FUNCTIONS__DIGAMMA_HPP__
+
3 
+ +
5 #include <stan/meta/traits.hpp>
+
6 #include <boost/math/special_functions/digamma.hpp>
+ +
8 
+
9 namespace stan {
+
10 
+
11  namespace agrad {
+
12 
+
13  template <typename T>
+
14  inline
+
15  fvar<T>
+
16  digamma(const fvar<T>& x) {
+ + +
19  return fvar<T>(digamma(x.val_), x.d_ * trigamma(x.val_));
+
20  }
+
21  }
+
22 }
+
23 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2fwd_2functions_2exp2_8hpp.html b/doc/api/html/agrad_2fwd_2functions_2exp2_8hpp.html new file mode 100644 index 00000000000..d2779493912 --- /dev/null +++ b/doc/api/html/agrad_2fwd_2functions_2exp2_8hpp.html @@ -0,0 +1,132 @@ + + + + + +Stan: src/stan/agrad/fwd/functions/exp2.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
exp2.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+ + + + +

+Functions

template<typename T >
fvar< T > stan::agrad::exp2 (const fvar< T > &x)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2fwd_2functions_2exp2_8hpp_source.html b/doc/api/html/agrad_2fwd_2functions_2exp2_8hpp_source.html new file mode 100644 index 00000000000..2243a3b8dc8 --- /dev/null +++ b/doc/api/html/agrad_2fwd_2functions_2exp2_8hpp_source.html @@ -0,0 +1,130 @@ + + + + + +Stan: src/stan/agrad/fwd/functions/exp2.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
exp2.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__FWD__FUNCTIONS__EXP2_HPP__
+
2 #define __STAN__AGRAD__FWD__FUNCTIONS__EXP2_HPP__
+
3 
+ +
5 #include <stan/meta/traits.hpp>
+ + +
8 
+
9 namespace stan {
+
10 
+
11  namespace agrad {
+
12 
+
13  template <typename T>
+
14  inline
+
15  fvar<T>
+
16  exp2(const fvar<T>& x) {
+
17  using stan::math::exp2;
+
18  using std::log;
+
19  return fvar<T>(exp2(x.val_), x.d_ * exp2(x.val_) * stan::math::LOG_2);
+
20  }
+
21  }
+
22 }
+
23 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2fwd_2functions_2exp_8hpp.html b/doc/api/html/agrad_2fwd_2functions_2exp_8hpp.html new file mode 100644 index 00000000000..74c689e5e3d --- /dev/null +++ b/doc/api/html/agrad_2fwd_2functions_2exp_8hpp.html @@ -0,0 +1,130 @@ + + + + + +Stan: src/stan/agrad/fwd/functions/exp.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
exp.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+ + + + +

+Functions

template<typename T >
fvar< T > stan::agrad::exp (const fvar< T > &x)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2fwd_2functions_2exp_8hpp_source.html b/doc/api/html/agrad_2fwd_2functions_2exp_8hpp_source.html new file mode 100644 index 00000000000..57ffbefaff4 --- /dev/null +++ b/doc/api/html/agrad_2fwd_2functions_2exp_8hpp_source.html @@ -0,0 +1,128 @@ + + + + + +Stan: src/stan/agrad/fwd/functions/exp.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
exp.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__FWD__FUNCTIONS__EXP_HPP__
+
2 #define __STAN__AGRAD__FWD__FUNCTIONS__EXP_HPP__
+
3 
+ +
5 #include <stan/meta/traits.hpp>
+
6 
+
7 namespace stan {
+
8 
+
9  namespace agrad {
+
10 
+
11 
+
12  template <typename T>
+
13  inline
+
14  fvar<T>
+
15  exp(const fvar<T>& x) {
+
16  using std::exp;
+
17  return fvar<T>(exp(x.val_), x.d_ * exp(x.val_));
+
18  }
+
19  }
+
20 }
+
21 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2fwd_2functions_2falling__factorial_8hpp.html b/doc/api/html/agrad_2fwd_2functions_2falling__factorial_8hpp.html new file mode 100644 index 00000000000..c36f3053046 --- /dev/null +++ b/doc/api/html/agrad_2fwd_2functions_2falling__factorial_8hpp.html @@ -0,0 +1,138 @@ + + + + + +Stan: src/stan/agrad/fwd/functions/falling_factorial.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
falling_factorial.hpp File Reference
+
+
+
#include <stan/agrad/fwd/fvar.hpp>
+#include <stan/meta/traits.hpp>
+#include <stan/math/functions/falling_factorial.hpp>
+#include <boost/math/special_functions/digamma.hpp>
+
+

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+ + + + + + + + + + +

+Functions

template<typename T >
fvar< T > stan::agrad::falling_factorial (const fvar< T > &x, const fvar< T > &n)
 
template<typename T >
fvar< T > stan::agrad::falling_factorial (const fvar< T > &x, const double n)
 
template<typename T >
fvar< T > stan::agrad::falling_factorial (const double x, const fvar< T > &n)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2fwd_2functions_2falling__factorial_8hpp_source.html b/doc/api/html/agrad_2fwd_2functions_2falling__factorial_8hpp_source.html new file mode 100644 index 00000000000..bd5f17d5900 --- /dev/null +++ b/doc/api/html/agrad_2fwd_2functions_2falling__factorial_8hpp_source.html @@ -0,0 +1,154 @@ + + + + + +Stan: src/stan/agrad/fwd/functions/falling_factorial.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
falling_factorial.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__FWD__FUNCTIONS__FALLING_FACTORIAL_HPP__
+
2 #define __STAN__AGRAD__FWD__FUNCTIONS__FALLING_FACTORIAL_HPP__
+
3 
+ +
5 #include <stan/meta/traits.hpp>
+ +
7 #include <boost/math/special_functions/digamma.hpp>
+
8 
+
9 namespace stan {
+
10 
+
11  namespace agrad {
+
12 
+
13  template<typename T>
+
14  inline fvar<T>
+
15  falling_factorial(const fvar<T>& x, const fvar<T>& n) {
+ + +
18 
+
19  T falling_fact(falling_factorial(x.val_,n.val_));
+
20  return fvar<T>(falling_fact, falling_fact * digamma(x.val_ + 1) * x.d_
+
21  - falling_fact * digamma(n.val_ + 1) * n.d_);
+
22  }
+
23 
+
24  template<typename T>
+
25  inline fvar<T>
+
26  falling_factorial(const fvar<T>& x, const double n) {
+ + +
29 
+
30  T falling_fact(falling_factorial(x.val_,n));
+
31  return fvar<T>(falling_fact,
+
32  falling_fact * digamma(x.val_ + 1) * x.d_);
+
33  }
+
34 
+
35  template<typename T>
+
36  inline fvar<T>
+
37  falling_factorial(const double x, const fvar<T>& n) {
+ + +
40 
+
41  T falling_fact(falling_factorial(x, n.val_));
+
42  return fvar<T>(falling_fact,
+
43  -falling_fact * digamma(n.val_ + 1) * n.d_);
+
44  }
+
45  }
+
46 }
+
47 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2fwd_2functions_2fdim_8hpp.html b/doc/api/html/agrad_2fwd_2functions_2fdim_8hpp.html new file mode 100644 index 00000000000..2abc11b0ebf --- /dev/null +++ b/doc/api/html/agrad_2fwd_2functions_2fdim_8hpp.html @@ -0,0 +1,137 @@ + + + + + +Stan: src/stan/agrad/fwd/functions/fdim.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
fdim.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+ + + + + + + + + + +

+Functions

template<typename T >
fvar< T > stan::agrad::fdim (const fvar< T > &x1, const fvar< T > &x2)
 
template<typename T >
fvar< T > stan::agrad::fdim (const fvar< T > &x1, const double x2)
 
template<typename T >
fvar< T > stan::agrad::fdim (const double x1, const fvar< T > &x2)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2fwd_2functions_2fdim_8hpp_source.html b/doc/api/html/agrad_2fwd_2functions_2fdim_8hpp_source.html new file mode 100644 index 00000000000..b94812fee3b --- /dev/null +++ b/doc/api/html/agrad_2fwd_2functions_2fdim_8hpp_source.html @@ -0,0 +1,157 @@ + + + + + +Stan: src/stan/agrad/fwd/functions/fdim.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
fdim.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__FWD__FUNCTIONS__FDIM_HPP__
+
2 #define __STAN__AGRAD__FWD__FUNCTIONS__FDIM_HPP__
+
3 
+ +
5 #include <stan/meta/traits.hpp>
+ +
7 
+
8 namespace stan {
+
9 
+
10  namespace agrad {
+
11 
+
12  template <typename T>
+
13  inline
+
14  fvar<T>
+
15  fdim(const fvar<T>& x1, const fvar<T>& x2) {
+
16  using stan::math::fdim;
+
17  using std::floor;
+
18  if(x1.val_ < x2.val_)
+
19  return fvar<T>(fdim(x1.val_, x2.val_), 0);
+
20  else
+
21  return fvar<T>(fdim(x1.val_, x2.val_),
+
22  x1.d_ - x2.d_ * floor(x1.val_ / x2.val_));
+
23  }
+
24 
+
25  template <typename T>
+
26  inline
+
27  fvar<T>
+
28  fdim(const fvar<T>& x1, const double x2) {
+
29  using stan::math::fdim;
+
30  using std::floor;
+
31  if(x1.val_ < x2)
+
32  return fvar<T>(fdim(x1.val_, x2), 0);
+
33  else
+
34  return fvar<T>(fdim(x1.val_, x2), x1.d_);
+
35  }
+
36 
+
37  template <typename T>
+
38  inline
+
39  fvar<T>
+
40  fdim(const double x1, const fvar<T>& x2) {
+
41  using stan::math::fdim;
+
42  using std::floor;
+
43  if(x1 < x2.val_)
+
44  return fvar<T>(fdim(x1, x2.val_), 0);
+
45  else
+
46  return fvar<T>(fdim(x1, x2.val_), x2.d_ * -floor(x1 / x2.val_));
+
47  }
+
48  }
+
49 }
+
50 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2fwd_2functions_2fma_8hpp.html b/doc/api/html/agrad_2fwd_2functions_2fma_8hpp.html new file mode 100644 index 00000000000..0487395b715 --- /dev/null +++ b/doc/api/html/agrad_2fwd_2functions_2fma_8hpp.html @@ -0,0 +1,163 @@ + + + + + +Stan: src/stan/agrad/fwd/functions/fma.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
fma.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+ + + + + + + + + + + + + + + + + + + + + + +

+Functions

template<typename T1 , typename T2 , typename T3 >
fvar< typename
+stan::return_type< T1, T2, T3 >
+::type > 
stan::agrad::fma (const fvar< T1 > &x1, const fvar< T2 > &x2, const fvar< T3 > &x3)
 
template<typename T1 , typename T2 , typename T3 >
fvar< typename
+stan::return_type< T1, T2, T3 >
+::type > 
stan::agrad::fma (const T1 &x1, const fvar< T2 > &x2, const fvar< T3 > &x3)
 
template<typename T1 , typename T2 , typename T3 >
fvar< typename
+stan::return_type< T1, T2, T3 >
+::type > 
stan::agrad::fma (const fvar< T1 > &x1, const T2 &x2, const fvar< T3 > &x3)
 
template<typename T1 , typename T2 , typename T3 >
fvar< typename
+stan::return_type< T1, T2, T3 >
+::type > 
stan::agrad::fma (const fvar< T1 > &x1, const fvar< T2 > &x2, const T3 &x3)
 
template<typename T1 , typename T2 , typename T3 >
fvar< typename
+stan::return_type< T1, T2, T3 >
+::type > 
stan::agrad::fma (const T1 &x1, const T2 &x2, const fvar< T3 > &x3)
 
template<typename T1 , typename T2 , typename T3 >
fvar< typename
+stan::return_type< T1, T2, T3 >
+::type > 
stan::agrad::fma (const fvar< T1 > &x1, const T2 &x2, const T3 &x3)
 
template<typename T1 , typename T2 , typename T3 >
fvar< typename
+stan::return_type< T1, T2, T3 >
+::type > 
stan::agrad::fma (const T1 &x1, const fvar< T2 > &x2, const T3 &x3)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2fwd_2functions_2fma_8hpp_source.html b/doc/api/html/agrad_2fwd_2functions_2fma_8hpp_source.html new file mode 100644 index 00000000000..81128b4546b --- /dev/null +++ b/doc/api/html/agrad_2fwd_2functions_2fma_8hpp_source.html @@ -0,0 +1,190 @@ + + + + + +Stan: src/stan/agrad/fwd/functions/fma.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
fma.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__FWD__FUNCTIONS__FMA_HPP__
+
2 #define __STAN__AGRAD__FWD__FUNCTIONS__FMA_HPP__
+
3 
+ +
5 #include <stan/meta/traits.hpp>
+ +
7 
+
8 namespace stan {
+
9 
+
10  namespace agrad {
+
11 
+
12  template <typename T1, typename T2, typename T3>
+
13  inline
+
14  fvar<typename stan::return_type<T1,T2,T3>::type>
+
15  fma(const fvar<T1>& x1, const fvar<T2>& x2, const fvar<T3>& x3) {
+
16  using stan::math::fma;
+
17  return fvar<typename
+ +
19  x3.val_), x1.d_ * x2.val_ + x2.d_ * x1.val_ + x3.d_);
+
20  }
+
21 
+
22  template <typename T1, typename T2, typename T3>
+
23  inline
+
24  fvar<typename stan::return_type<T1,T2,T3>::type>
+
25  fma(const T1& x1, const fvar<T2>& x2, const fvar<T3>& x3) {
+
26  using stan::math::fma;
+
27  return fvar<typename
+ +
29  x2.d_ * x1 + x3.d_);
+
30  }
+
31 
+
32  template <typename T1, typename T2, typename T3>
+
33  inline
+
34  fvar<typename stan::return_type<T1,T2,T3>::type>
+
35  fma(const fvar<T1>& x1, const T2& x2, const fvar<T3>& x3) {
+
36  using stan::math::fma;
+
37  return fvar<typename
+ +
39  x1.d_ * x2 + x3.d_);
+
40  }
+
41 
+
42  template <typename T1, typename T2, typename T3>
+
43  inline
+
44  fvar<typename stan::return_type<T1,T2,T3>::type>
+
45  fma(const fvar<T1>& x1, const fvar<T2>& x2, const T3& x3) {
+
46  using stan::math::fma;
+
47  return fvar<typename
+ +
49  x1.d_ * x2.val_ + x2.d_ * x1.val_);
+
50  }
+
51 
+
52  template <typename T1, typename T2, typename T3>
+
53  inline
+
54  fvar<typename stan::return_type<T1,T2,T3>::type>
+
55  fma(const T1& x1, const T2& x2, const fvar<T3>& x3) {
+
56  using stan::math::fma;
+
57  return fvar<typename
+ +
59  x3.d_);
+
60  }
+
61 
+
62  template <typename T1, typename T2, typename T3>
+
63  inline
+
64  fvar<typename stan::return_type<T1,T2,T3>::type>
+
65  fma(const fvar<T1>& x1, const T2& x2, const T3& x3) {
+
66  using stan::math::fma;
+
67  return fvar<typename
+ +
69  x1.d_ * x2);
+
70  }
+
71 
+
72  template <typename T1, typename T2, typename T3>
+
73  inline
+
74  fvar<typename stan::return_type<T1,T2,T3>::type>
+
75  fma(const T1& x1, const fvar<T2>& x2, const T3& x3) {
+
76  using stan::math::fma;
+
77  return fvar<typename
+ +
79  x2.d_ * x1);
+
80  }
+
81  }
+
82 }
+
83 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2fwd_2functions_2gamma__p_8hpp.html b/doc/api/html/agrad_2fwd_2functions_2gamma__p_8hpp.html new file mode 100644 index 00000000000..8417474eaf0 --- /dev/null +++ b/doc/api/html/agrad_2fwd_2functions_2gamma__p_8hpp.html @@ -0,0 +1,138 @@ + + + + + +Stan: src/stan/agrad/fwd/functions/gamma_p.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
gamma_p.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+ + + + + + + + + + +

+Functions

template<typename T >
fvar< T > stan::agrad::gamma_p (const fvar< T > &x1, const fvar< T > &x2)
 
template<typename T >
fvar< T > stan::agrad::gamma_p (const fvar< T > &x1, const double x2)
 
template<typename T >
fvar< T > stan::agrad::gamma_p (const double x1, const fvar< T > &x2)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2fwd_2functions_2gamma__p_8hpp_source.html b/doc/api/html/agrad_2fwd_2functions_2gamma__p_8hpp_source.html new file mode 100644 index 00000000000..f72d10af382 --- /dev/null +++ b/doc/api/html/agrad_2fwd_2functions_2gamma__p_8hpp_source.html @@ -0,0 +1,209 @@ + + + + + +Stan: src/stan/agrad/fwd/functions/gamma_p.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
gamma_p.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__FWD__FUNCTIONS__GAMMA_P_HPP__
+
2 #define __STAN__AGRAD__FWD__FUNCTIONS__GAMMA_P_HPP__
+
3 
+ +
5 #include <stan/meta/traits.hpp>
+ + +
8 
+
9 namespace stan{
+
10 
+
11  namespace agrad{
+
12 
+
13  template <typename T>
+
14  inline
+
15  fvar<T>
+
16  gamma_p(const fvar<T>& x1, const fvar<T>& x2){
+
17  using stan::math::gamma_p;
+
18  using std::log;
+
19  using std::exp;
+
20  using std::pow;
+
21  using std::fabs;
+
22  using boost::math::tgamma;
+ +
24 
+
25  T u = gamma_p(x1.val_, x2.val_);
+
26 
+
27  T S = 0;
+
28  T s = 1;
+
29  T l = log(x2.val_);
+
30  T g = tgamma(x1.val_);
+
31  T dig = digamma(x1.val_);
+
32 
+
33  int k = 0;
+
34  T delta = s / (x1.val_ * x1.val_);
+
35 
+
36  while (fabs(delta) > 1e-6) {
+
37  S += delta;
+
38  ++k;
+
39  s *= -x2.val_ / k;
+
40  delta = s / ((k + x1.val_) * (k + x1.val_));
+
41  }
+
42 
+
43  T der1 = (u) * ( dig - l ) + exp( x1.val_ * l ) * S / g;
+
44  T der2 = exp(-x2.val_) * pow(x2.val_, x1.val_ - 1.0) / g;
+
45 
+
46  return fvar<T>(u,x1.d_ * -der1 + x2.d_ * der2);
+
47  }
+
48 
+
49  template <typename T>
+
50  inline
+
51  fvar<T>
+
52  gamma_p(const fvar<T>& x1, const double x2){
+
53  using stan::math::gamma_p;
+
54  using std::log;
+
55  using std::exp;
+
56  using std::pow;
+
57  using std::fabs;
+
58  using boost::math::tgamma;
+ +
60 
+
61  T u = gamma_p(x1.val_, x2);
+
62 
+
63  T S = 0.0;
+
64  double s = 1.0;
+
65  double l = log(x2);
+
66  T g = tgamma(x1.val_);
+
67  T dig = digamma(x1.val_);
+
68 
+
69  int k = 0;
+
70  T delta = s / (x1.val_ * x1.val_);
+
71 
+
72  while (fabs(delta) > 1e-6) {
+
73  S += delta;
+
74  ++k;
+
75  s *= -x2 / k;
+
76  delta = s / ((k + x1.val_) * (k + x1.val_));
+
77  }
+
78 
+
79  T der1 = (u) * ( dig - l ) + exp( x1.val_ * l ) * S / g;
+
80 
+
81  return fvar<T>(u, x1.d_ * -der1);
+
82  }
+
83 
+
84  template <typename T>
+
85  inline
+
86  fvar<T>
+
87  gamma_p(const double x1, const fvar<T>& x2){
+
88  using stan::math::gamma_p;
+
89  using std::exp;
+
90  using std::pow;
+
91 
+
92  T u = gamma_p(x1, x2.val_);
+
93 
+
94  double g = boost::math::tgamma(x1);
+
95 
+
96  T der2 = exp(-x2.val_) * pow(x2.val_, x1 - 1.0) / g;
+
97 
+
98  return fvar<T>(u, x2.d_ * der2);
+
99  }
+
100  }
+
101 }
+
102 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2fwd_2functions_2gamma__q_8hpp.html b/doc/api/html/agrad_2fwd_2functions_2gamma__q_8hpp.html new file mode 100644 index 00000000000..8e9bb45b142 --- /dev/null +++ b/doc/api/html/agrad_2fwd_2functions_2gamma__q_8hpp.html @@ -0,0 +1,137 @@ + + + + + +Stan: src/stan/agrad/fwd/functions/gamma_q.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
gamma_q.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+ + + + + + + + + + +

+Functions

template<typename T >
fvar< T > stan::agrad::gamma_q (const fvar< T > &x1, const fvar< T > &x2)
 
template<typename T >
fvar< T > stan::agrad::gamma_q (const fvar< T > &x1, const double x2)
 
template<typename T >
fvar< T > stan::agrad::gamma_q (const double x1, const fvar< T > &x2)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2fwd_2functions_2gamma__q_8hpp_source.html b/doc/api/html/agrad_2fwd_2functions_2gamma__q_8hpp_source.html new file mode 100644 index 00000000000..69b9de32bcb --- /dev/null +++ b/doc/api/html/agrad_2fwd_2functions_2gamma__q_8hpp_source.html @@ -0,0 +1,208 @@ + + + + + +Stan: src/stan/agrad/fwd/functions/gamma_q.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
gamma_q.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__FWD__FUNCTIONS__GAMMA_Q_HPP__
+
2 #define __STAN__AGRAD__FWD__FUNCTIONS__GAMMA_Q_HPP__
+
3 
+ +
5 #include <stan/meta/traits.hpp>
+ +
7 
+
8 namespace stan{
+
9 
+
10  namespace agrad{
+
11 
+
12  template <typename T>
+
13  inline
+
14  fvar<T>
+
15  gamma_q(const fvar<T>& x1, const fvar<T>& x2){
+
16  using stan::math::gamma_q;
+
17  using std::log;
+
18  using std::exp;
+
19  using std::pow;
+
20  using std::fabs;
+
21  using boost::math::tgamma;
+ +
23 
+
24  T u = gamma_q(x1.val_, x2.val_);
+
25 
+
26  T S = 0;
+
27  T s = 1;
+
28  T l = log(x2.val_);
+
29  T g = tgamma(x1.val_);
+
30  T dig = digamma(x1.val_);
+
31 
+
32  int k = 0;
+
33  T delta = s / (x1.val_ * x1.val_);
+
34 
+
35  while (fabs(delta) > 1e-6) {
+
36  S += delta;
+
37  ++k;
+
38  s *= -x2.val_ / k;
+
39  delta = s / ((k + x1.val_) * (k + x1.val_));
+
40  }
+
41 
+
42  T der1 = (1.0 - u) * ( dig - l ) + exp( x1.val_ * l ) * S / g;
+
43  T der2 = -exp(-x2.val_) * pow(x2.val_, x1.val_ - 1.0) / g;
+
44 
+
45  return fvar<T>(u,x1.d_ * der1 + x2.d_ * der2);
+
46  }
+
47 
+
48  template <typename T>
+
49  inline
+
50  fvar<T>
+
51  gamma_q(const fvar<T>& x1, const double x2){
+
52  using stan::math::gamma_q;
+
53  using std::log;
+
54  using std::exp;
+
55  using std::pow;
+
56  using std::fabs;
+
57  using boost::math::tgamma;
+ +
59 
+
60  T u = gamma_q(x1.val_, x2);
+
61 
+
62  T S = 0;
+
63  double s = 1;
+
64  double l = log(x2);
+
65  T g = tgamma(x1.val_);
+
66  T dig = digamma(x1.val_);
+
67 
+
68  int k = 0;
+
69  T delta = s / (x1.val_ * x1.val_);
+
70 
+
71  while (fabs(delta) > 1e-6) {
+
72  S += delta;
+
73  ++k;
+
74  s *= -x2 / k;
+
75  delta = s / ((k + x1.val_) * (k + x1.val_));
+
76  }
+
77 
+
78  T der1 = (1.0 - u) * ( dig - l ) + exp( x1.val_ * l ) * S / g;
+
79 
+
80  return fvar<T>(u, x1.d_ * der1);
+
81  }
+
82 
+
83  template <typename T>
+
84  inline
+
85  fvar<T>
+
86  gamma_q(const double x1, const fvar<T>& x2){
+
87  using stan::math::gamma_q;
+
88  using std::exp;
+
89  using std::pow;
+
90 
+
91  T u = gamma_q(x1, x2.val_);
+
92 
+
93  double g = boost::math::tgamma(x1);
+
94 
+
95  T der2 = -exp(-x2.val_) * pow(x2.val_, x1 - 1.0) / g;
+
96 
+
97  return fvar<T>(u, x2.d_ * der2);
+
98  }
+
99  }
+
100 }
+
101 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2fwd_2functions_2inv_8hpp.html b/doc/api/html/agrad_2fwd_2functions_2inv_8hpp.html new file mode 100644 index 00000000000..6314a8ac013 --- /dev/null +++ b/doc/api/html/agrad_2fwd_2functions_2inv_8hpp.html @@ -0,0 +1,131 @@ + + + + + +Stan: src/stan/agrad/fwd/functions/inv.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
inv.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+ + + + +

+Functions

template<typename T >
fvar< T > stan::agrad::inv (const fvar< T > &x)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2fwd_2functions_2inv_8hpp_source.html b/doc/api/html/agrad_2fwd_2functions_2inv_8hpp_source.html new file mode 100644 index 00000000000..871030b6d31 --- /dev/null +++ b/doc/api/html/agrad_2fwd_2functions_2inv_8hpp_source.html @@ -0,0 +1,128 @@ + + + + + +Stan: src/stan/agrad/fwd/functions/inv.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
inv.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__FWD__FUNCTIONS__INV_HPP__
+
2 #define __STAN__AGRAD__FWD__FUNCTIONS__INV_HPP__
+
3 
+ +
5 #include <stan/meta/traits.hpp>
+ +
7 
+
8 namespace stan {
+
9 
+
10  namespace agrad {
+
11 
+
12  template <typename T>
+
13  inline
+
14  fvar<T>
+
15  inv(const fvar<T>& x) {
+
16  using stan::math::square;
+
17  return fvar<T>(1 / x.val_, -x.d_ / square(x.val_));
+
18  }
+
19  }
+
20 }
+
21 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2fwd_2functions_2inv__cloglog_8hpp.html b/doc/api/html/agrad_2fwd_2functions_2inv__cloglog_8hpp.html new file mode 100644 index 00000000000..ad7a05428ae --- /dev/null +++ b/doc/api/html/agrad_2fwd_2functions_2inv__cloglog_8hpp.html @@ -0,0 +1,131 @@ + + + + + +Stan: src/stan/agrad/fwd/functions/inv_cloglog.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
inv_cloglog.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+ + + + +

+Functions

template<typename T >
fvar< T > stan::agrad::inv_cloglog (const fvar< T > &x)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2fwd_2functions_2inv__cloglog_8hpp_source.html b/doc/api/html/agrad_2fwd_2functions_2inv__cloglog_8hpp_source.html new file mode 100644 index 00000000000..85de0ddb45f --- /dev/null +++ b/doc/api/html/agrad_2fwd_2functions_2inv__cloglog_8hpp_source.html @@ -0,0 +1,129 @@ + + + + + +Stan: src/stan/agrad/fwd/functions/inv_cloglog.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
inv_cloglog.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__FWD__FUNCTIONS__INV_CLOGLOG_HPP__
+
2 #define __STAN__AGRAD__FWD__FUNCTIONS__INV_CLOGLOG_HPP__
+
3 
+ +
5 #include <stan/meta/traits.hpp>
+ +
7 
+
8 namespace stan {
+
9 
+
10  namespace agrad {
+
11 
+
12  template <typename T>
+
13  inline
+
14  fvar<T>
+
15  inv_cloglog(const fvar<T>& x) {
+
16  using std::exp;
+ +
18  return fvar<T>(inv_cloglog(x.val_), x.d_ * exp(x.val_ - exp(x.val_)));
+
19  }
+
20  }
+
21 }
+
22 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2fwd_2functions_2inv__logit_8hpp.html b/doc/api/html/agrad_2fwd_2functions_2inv__logit_8hpp.html new file mode 100644 index 00000000000..c230c6c4e11 --- /dev/null +++ b/doc/api/html/agrad_2fwd_2functions_2inv__logit_8hpp.html @@ -0,0 +1,131 @@ + + + + + +Stan: src/stan/agrad/fwd/functions/inv_logit.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
inv_logit.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+ + + + +

+Functions

template<typename T >
fvar< T > stan::agrad::inv_logit (const fvar< T > &x)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2fwd_2functions_2inv__logit_8hpp_source.html b/doc/api/html/agrad_2fwd_2functions_2inv__logit_8hpp_source.html new file mode 100644 index 00000000000..72ec616bf5e --- /dev/null +++ b/doc/api/html/agrad_2fwd_2functions_2inv__logit_8hpp_source.html @@ -0,0 +1,131 @@ + + + + + +Stan: src/stan/agrad/fwd/functions/inv_logit.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
inv_logit.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__FWD__FUNCTIONS__INV_LOGIT_HPP__
+
2 #define __STAN__AGRAD__FWD__FUNCTIONS__INV_LOGIT_HPP__
+
3 
+ +
5 #include <stan/meta/traits.hpp>
+ +
7 
+
8 namespace stan {
+
9 
+
10  namespace agrad {
+
11 
+
12  template <typename T>
+
13  inline
+
14  fvar<T>
+
15  inv_logit(const fvar<T>& x) {
+
16  using std::exp;
+
17  using std::pow;
+ +
19  return fvar<T>(inv_logit(x.val_),
+
20  x.d_ * inv_logit(x.val_) * (1 - inv_logit(x.val_)));
+
21  }
+
22  }
+
23 }
+
24 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2fwd_2functions_2inv__sqrt_8hpp.html b/doc/api/html/agrad_2fwd_2functions_2inv__sqrt_8hpp.html new file mode 100644 index 00000000000..e709c498f10 --- /dev/null +++ b/doc/api/html/agrad_2fwd_2functions_2inv__sqrt_8hpp.html @@ -0,0 +1,131 @@ + + + + + +Stan: src/stan/agrad/fwd/functions/inv_sqrt.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
inv_sqrt.hpp File Reference
+
+
+
#include <stan/agrad/fwd/fvar.hpp>
+#include <stan/meta/traits.hpp>
+#include <boost/math/tools/promotion.hpp>
+
+

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+ + + + +

+Functions

template<typename T >
fvar< T > stan::agrad::inv_sqrt (const fvar< T > &x)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2fwd_2functions_2inv__sqrt_8hpp_source.html b/doc/api/html/agrad_2fwd_2functions_2inv__sqrt_8hpp_source.html new file mode 100644 index 00000000000..03510be0a4a --- /dev/null +++ b/doc/api/html/agrad_2fwd_2functions_2inv__sqrt_8hpp_source.html @@ -0,0 +1,129 @@ + + + + + +Stan: src/stan/agrad/fwd/functions/inv_sqrt.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
inv_sqrt.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__FWD__FUNCTIONS__INV_SQRT_HPP__
+
2 #define __STAN__AGRAD__FWD__FUNCTIONS__INV_SQRT_HPP__
+
3 
+ +
5 #include <stan/meta/traits.hpp>
+
6 #include <boost/math/tools/promotion.hpp>
+
7 
+
8 namespace stan {
+
9 
+
10  namespace agrad {
+
11 
+
12  template <typename T>
+
13  inline
+
14  fvar<T>
+
15  inv_sqrt(const fvar<T>& x) {
+
16  using std::sqrt;
+
17  T sqrt_x(sqrt(x.val_));
+
18  return fvar<T>(1 / sqrt_x, -0.5 * x.d_ / (x.val_ * sqrt_x));
+
19  }
+
20  }
+
21 }
+
22 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2fwd_2functions_2inv__square_8hpp.html b/doc/api/html/agrad_2fwd_2functions_2inv__square_8hpp.html new file mode 100644 index 00000000000..69ee606d8cc --- /dev/null +++ b/doc/api/html/agrad_2fwd_2functions_2inv__square_8hpp.html @@ -0,0 +1,131 @@ + + + + + +Stan: src/stan/agrad/fwd/functions/inv_square.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
inv_square.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+ + + + +

+Functions

template<typename T >
fvar< T > stan::agrad::inv_square (const fvar< T > &x)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2fwd_2functions_2inv__square_8hpp_source.html b/doc/api/html/agrad_2fwd_2functions_2inv__square_8hpp_source.html new file mode 100644 index 00000000000..d95901f811b --- /dev/null +++ b/doc/api/html/agrad_2fwd_2functions_2inv__square_8hpp_source.html @@ -0,0 +1,129 @@ + + + + + +Stan: src/stan/agrad/fwd/functions/inv_square.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
inv_square.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__FWD__FUNCTIONS__INV_SQUARE_HPP__
+
2 #define __STAN__AGRAD__FWD__FUNCTIONS__INV_SQUARE_HPP__
+
3 
+ +
5 #include <stan/meta/traits.hpp>
+ +
7 
+
8 namespace stan {
+
9 
+
10  namespace agrad {
+
11 
+
12  template <typename T>
+
13  inline
+
14  fvar<T>
+
15  inv_square(const fvar<T>& x) {
+
16  using stan::math::square;
+
17  T square_x(square(x.val_));
+
18  return fvar<T>(1 / square_x, -2 * x.d_ / (square_x * x.val_));
+
19  }
+
20  }
+
21 }
+
22 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2fwd_2functions_2lbeta_8hpp.html b/doc/api/html/agrad_2fwd_2functions_2lbeta_8hpp.html new file mode 100644 index 00000000000..8ef459106c4 --- /dev/null +++ b/doc/api/html/agrad_2fwd_2functions_2lbeta_8hpp.html @@ -0,0 +1,138 @@ + + + + + +Stan: src/stan/agrad/fwd/functions/lbeta.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
lbeta.hpp File Reference
+
+
+
#include <stan/agrad/fwd/fvar.hpp>
+#include <stan/meta/traits.hpp>
+#include <boost/math/special_functions/digamma.hpp>
+#include <stan/math/functions/lbeta.hpp>
+
+

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+ + + + + + + + + + +

+Functions

template<typename T >
fvar< T > stan::agrad::lbeta (const fvar< T > &x1, const fvar< T > &x2)
 
template<typename T >
fvar< T > stan::agrad::lbeta (const double x1, const fvar< T > &x2)
 
template<typename T >
fvar< T > stan::agrad::lbeta (const fvar< T > &x1, const double x2)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2fwd_2functions_2lbeta_8hpp_source.html b/doc/api/html/agrad_2fwd_2functions_2lbeta_8hpp_source.html new file mode 100644 index 00000000000..c80dc44a693 --- /dev/null +++ b/doc/api/html/agrad_2fwd_2functions_2lbeta_8hpp_source.html @@ -0,0 +1,153 @@ + + + + + +Stan: src/stan/agrad/fwd/functions/lbeta.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
lbeta.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__FWD__FUNCTIONS__LBETA_HPP__
+
2 #define __STAN__AGRAD__FWD__FUNCTIONS__LBETA_HPP__
+
3 
+ +
5 #include <stan/meta/traits.hpp>
+
6 #include <boost/math/special_functions/digamma.hpp>
+ +
8 
+
9 namespace stan {
+
10 
+
11  namespace agrad {
+
12 
+
13  template <typename T>
+
14  inline
+
15  fvar<T>
+
16  lbeta(const fvar<T>& x1, const fvar<T>& x2) {
+
17  using stan::math::lbeta;
+ +
19  return fvar<T>(lbeta(x1.val_, x2.val_),
+
20  x1.d_ * digamma(x1.val_)
+
21  + x2.d_ * digamma(x2.val_)
+
22  - (x1.d_ + x2.d_) * digamma(x1.val_ + x2.val_));
+
23  }
+
24 
+
25  template <typename T>
+
26  inline
+
27  fvar<T>
+
28  lbeta(const double x1, const fvar<T>& x2) {
+
29  using stan::math::lbeta;
+ +
31  return fvar<T>(lbeta(x1, x2.val_),
+
32  x2.d_ * digamma(x2.val_) - x2.d_ * digamma(x1 + x2.val_));
+
33  }
+
34 
+
35  template <typename T>
+
36  inline
+
37  fvar<T>
+
38  lbeta(const fvar<T>& x1, const double x2) {
+
39  using stan::math::lbeta;
+ +
41  return fvar<T>(lbeta(x1.val_, x2),
+
42  x1.d_ * digamma(x1.val_) - x1.d_ * digamma(x1.val_ + x2));
+
43  }
+
44  }
+
45 }
+
46 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2fwd_2functions_2lgamma_8hpp.html b/doc/api/html/agrad_2fwd_2functions_2lgamma_8hpp.html new file mode 100644 index 00000000000..753d24c00ea --- /dev/null +++ b/doc/api/html/agrad_2fwd_2functions_2lgamma_8hpp.html @@ -0,0 +1,131 @@ + + + + + +Stan: src/stan/agrad/fwd/functions/lgamma.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
lgamma.hpp File Reference
+
+
+
#include <stan/agrad/fwd/fvar.hpp>
+#include <stan/meta/traits.hpp>
+#include <boost/math/special_functions/digamma.hpp>
+
+

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+ + + + +

+Functions

template<typename T >
fvar< T > stan::agrad::lgamma (const fvar< T > &x)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2fwd_2functions_2lgamma_8hpp_source.html b/doc/api/html/agrad_2fwd_2functions_2lgamma_8hpp_source.html new file mode 100644 index 00000000000..f8b124fc8f7 --- /dev/null +++ b/doc/api/html/agrad_2fwd_2functions_2lgamma_8hpp_source.html @@ -0,0 +1,129 @@ + + + + + +Stan: src/stan/agrad/fwd/functions/lgamma.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
lgamma.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__FWD__FUNCTIONS__LGAMMA_HPP__
+
2 #define __STAN__AGRAD__FWD__FUNCTIONS__LGAMMA_HPP__
+
3 
+ +
5 #include <stan/meta/traits.hpp>
+
6 #include <boost/math/special_functions/digamma.hpp>
+
7 
+
8 namespace stan {
+
9 
+
10  namespace agrad {
+
11 
+
12  template <typename T>
+
13  inline
+
14  fvar<T>
+
15  lgamma(const fvar<T>& x) {
+ +
17  using boost::math::lgamma;
+
18  return fvar<T>(lgamma(x.val_), x.d_ * digamma(x.val_));
+
19  }
+
20  }
+
21 }
+
22 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2fwd_2functions_2lmgamma_8hpp.html b/doc/api/html/agrad_2fwd_2functions_2lmgamma_8hpp.html new file mode 100644 index 00000000000..ab509f8b752 --- /dev/null +++ b/doc/api/html/agrad_2fwd_2functions_2lmgamma_8hpp.html @@ -0,0 +1,134 @@ + + + + + +Stan: src/stan/agrad/fwd/functions/lmgamma.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
lmgamma.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+ + + + +

+Functions

template<typename T >
fvar< typename
+stan::return_type< T, int >
+::type > 
stan::agrad::lmgamma (int x1, const fvar< T > &x2)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2fwd_2functions_2lmgamma_8hpp_source.html b/doc/api/html/agrad_2fwd_2functions_2lmgamma_8hpp_source.html new file mode 100644 index 00000000000..8ff2165c3c3 --- /dev/null +++ b/doc/api/html/agrad_2fwd_2functions_2lmgamma_8hpp_source.html @@ -0,0 +1,135 @@ + + + + + +Stan: src/stan/agrad/fwd/functions/lmgamma.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
lmgamma.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__FWD__FUNCTIONS__LMGAMMA_HPP__
+
2 #define __STAN__AGRAD__FWD__FUNCTIONS__LMGAMMA_HPP__
+
3 
+ +
5 #include <stan/meta/traits.hpp>
+ + +
8 
+
9 namespace stan {
+
10 
+
11  namespace agrad {
+
12 
+
13  template <typename T>
+
14  inline
+
15  fvar<typename stan::return_type<T,int>::type>
+
16  lmgamma(int x1, const fvar<T>& x2) {
+
17  using stan::math::lmgamma;
+
18  using stan::math::digamma;
+
19  using std::log;
+
20  T deriv = 0;
+
21  for(int count = 1; count < x1 + 1; count++)
+
22  deriv += x2.d_ * digamma(x2.val_ + (1.0 - count) / 2.0);
+
23  return fvar<typename
+ +
25  }
+
26  }
+
27 }
+
28 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2fwd_2functions_2log1m_8hpp.html b/doc/api/html/agrad_2fwd_2functions_2log1m_8hpp.html new file mode 100644 index 00000000000..fb9363f3e84 --- /dev/null +++ b/doc/api/html/agrad_2fwd_2functions_2log1m_8hpp.html @@ -0,0 +1,132 @@ + + + + + +Stan: src/stan/agrad/fwd/functions/log1m.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
log1m.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+ + + + +

+Functions

template<typename T >
fvar< T > stan::agrad::log1m (const fvar< T > &x)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2fwd_2functions_2log1m_8hpp_source.html b/doc/api/html/agrad_2fwd_2functions_2log1m_8hpp_source.html new file mode 100644 index 00000000000..e7c69ec7bc9 --- /dev/null +++ b/doc/api/html/agrad_2fwd_2functions_2log1m_8hpp_source.html @@ -0,0 +1,133 @@ + + + + + +Stan: src/stan/agrad/fwd/functions/log1m.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
log1m.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__FWD__FUNCTIONS__LOG1M_HPP__
+
2 #define __STAN__AGRAD__FWD__FUNCTIONS__LOG1M_HPP__
+
3 
+ +
5 #include <stan/meta/traits.hpp>
+ + +
8 
+
9 namespace stan {
+
10 
+
11  namespace agrad {
+
12 
+
13  template <typename T>
+
14  inline
+
15  fvar<T>
+
16  log1m(const fvar<T>& x) {
+
17  using stan::math::log1m;
+ +
19  if(x.val_ > 1.0)
+ +
21  else
+
22  return fvar<T>(log1m(x.val_), -x.d_ / (1 - x.val_));
+
23  }
+
24  }
+
25 }
+
26 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2fwd_2functions_2log1m__exp_8hpp.html b/doc/api/html/agrad_2fwd_2functions_2log1m__exp_8hpp.html new file mode 100644 index 00000000000..361f494ff1d --- /dev/null +++ b/doc/api/html/agrad_2fwd_2functions_2log1m__exp_8hpp.html @@ -0,0 +1,133 @@ + + + + + +Stan: src/stan/agrad/fwd/functions/log1m_exp.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
log1m_exp.hpp File Reference
+
+
+
#include <stan/agrad/fwd/fvar.hpp>
+#include <stan/meta/traits.hpp>
+#include <stan/math/functions/log1m_exp.hpp>
+#include <boost/math/special_functions/expm1.hpp>
+#include <stan/math/constants.hpp>
+
+

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+ + + + +

+Functions

template<typename T >
fvar< T > stan::agrad::log1m_exp (const fvar< T > &x)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2fwd_2functions_2log1m__exp_8hpp_source.html b/doc/api/html/agrad_2fwd_2functions_2log1m__exp_8hpp_source.html new file mode 100644 index 00000000000..8a9387ada0a --- /dev/null +++ b/doc/api/html/agrad_2fwd_2functions_2log1m__exp_8hpp_source.html @@ -0,0 +1,135 @@ + + + + + +Stan: src/stan/agrad/fwd/functions/log1m_exp.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
log1m_exp.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__FWD__FUNCTIONS__LOG1M_EXP_HPP__
+
2 #define __STAN__AGRAD__FWD__FUNCTIONS__LOG1M_EXP_HPP__
+
3 
+ +
5 #include <stan/meta/traits.hpp>
+ +
7 #include <boost/math/special_functions/expm1.hpp>
+ +
9 
+
10 namespace stan{
+
11 
+
12  namespace agrad{
+
13 
+
14  template <typename T>
+
15  inline
+
16  fvar<T>
+
17  log1m_exp(const fvar<T>& x) {
+ +
19  using boost::math::expm1;
+ +
21  using std::exp;
+
22  if (x.val_ >= 0)
+
23  return fvar<T>(NOT_A_NUMBER);
+
24  return fvar<T>(log1m_exp(x.val_), x.d_ / -expm1(-x.val_));
+
25  }
+
26  }
+
27 }
+
28 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2fwd_2functions_2log1m__inv__logit_8hpp.html b/doc/api/html/agrad_2fwd_2functions_2log1m__inv__logit_8hpp.html new file mode 100644 index 00000000000..635af567d10 --- /dev/null +++ b/doc/api/html/agrad_2fwd_2functions_2log1m__inv__logit_8hpp.html @@ -0,0 +1,131 @@ + + + + + +Stan: src/stan/agrad/fwd/functions/log1m_inv_logit.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
log1m_inv_logit.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+ + + + +

+Functions

template<typename T >
fvar< T > stan::agrad::log1m_inv_logit (const fvar< T > &x)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2fwd_2functions_2log1m__inv__logit_8hpp_source.html b/doc/api/html/agrad_2fwd_2functions_2log1m__inv__logit_8hpp_source.html new file mode 100644 index 00000000000..4b2336733ec --- /dev/null +++ b/doc/api/html/agrad_2fwd_2functions_2log1m__inv__logit_8hpp_source.html @@ -0,0 +1,130 @@ + + + + + +Stan: src/stan/agrad/fwd/functions/log1m_inv_logit.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
log1m_inv_logit.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__FWD__FUNCTIONS__LOG1M_INV_LOGIT_HPP__
+
2 #define __STAN__AGRAD__FWD__FUNCTIONS__LOG1M_INV_LOGIT_HPP__
+
3 
+ +
5 #include <stan/meta/traits.hpp>
+ +
7 
+
8 namespace stan {
+
9 
+
10  namespace agrad {
+
11 
+
12  template <typename T>
+
13  inline
+
14  fvar<T>
+ +
16  using std::exp;
+ +
18  return fvar<T>(log1m_inv_logit(x.val_),
+
19  -x.d_ / (1 + exp(-x.val_)));
+
20  }
+
21  }
+
22 }
+
23 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2fwd_2functions_2log1p_8hpp.html b/doc/api/html/agrad_2fwd_2functions_2log1p_8hpp.html new file mode 100644 index 00000000000..a8176a02953 --- /dev/null +++ b/doc/api/html/agrad_2fwd_2functions_2log1p_8hpp.html @@ -0,0 +1,132 @@ + + + + + +Stan: src/stan/agrad/fwd/functions/log1p.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
log1p.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+ + + + +

+Functions

template<typename T >
fvar< T > stan::agrad::log1p (const fvar< T > &x)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2fwd_2functions_2log1p_8hpp_source.html b/doc/api/html/agrad_2fwd_2functions_2log1p_8hpp_source.html new file mode 100644 index 00000000000..26bff4b4113 --- /dev/null +++ b/doc/api/html/agrad_2fwd_2functions_2log1p_8hpp_source.html @@ -0,0 +1,133 @@ + + + + + +Stan: src/stan/agrad/fwd/functions/log1p.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
log1p.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__FWD__FUNCTIONS__LOG1P_HPP__
+
2 #define __STAN__AGRAD__FWD__FUNCTIONS__LOG1P_HPP__
+
3 
+ +
5 #include <stan/meta/traits.hpp>
+ + +
8 
+
9 namespace stan {
+
10 
+
11  namespace agrad {
+
12 
+
13  template <typename T>
+
14  inline
+
15  fvar<T>
+
16  log1p(const fvar<T>& x) {
+
17  using stan::math::log1p;
+ +
19  if(x.val_ < -1.0)
+ +
21  else
+
22  return fvar<T>(log1p(x.val_), x.d_ / (1 + x.val_));
+
23  }
+
24  }
+
25 }
+
26 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2fwd_2functions_2log1p__exp_8hpp.html b/doc/api/html/agrad_2fwd_2functions_2log1p__exp_8hpp.html new file mode 100644 index 00000000000..e5674229113 --- /dev/null +++ b/doc/api/html/agrad_2fwd_2functions_2log1p__exp_8hpp.html @@ -0,0 +1,131 @@ + + + + + +Stan: src/stan/agrad/fwd/functions/log1p_exp.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
log1p_exp.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+ + + + +

+Functions

template<typename T >
fvar< T > stan::agrad::log1p_exp (const fvar< T > &x)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2fwd_2functions_2log1p__exp_8hpp_source.html b/doc/api/html/agrad_2fwd_2functions_2log1p__exp_8hpp_source.html new file mode 100644 index 00000000000..9fbd8029daa --- /dev/null +++ b/doc/api/html/agrad_2fwd_2functions_2log1p__exp_8hpp_source.html @@ -0,0 +1,129 @@ + + + + + +Stan: src/stan/agrad/fwd/functions/log1p_exp.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
log1p_exp.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__FWD__FUNCTIONS__LOG1P_EXP_HPP__
+
2 #define __STAN__AGRAD__FWD__FUNCTIONS__LOG1P_EXP_HPP__
+
3 
+ +
5 #include <stan/meta/traits.hpp>
+ +
7 
+
8 namespace stan {
+
9 
+
10  namespace agrad {
+
11 
+
12  template <typename T>
+
13  inline
+
14  fvar<T>
+
15  log1p_exp(const fvar<T>& x) {
+ +
17  using std::exp;
+
18  return fvar<T>(log1p_exp(x.val_), x.d_ / (1 + exp(-x.val_)));
+
19  }
+
20  }
+
21 }
+
22 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2fwd_2functions_2log2_8hpp.html b/doc/api/html/agrad_2fwd_2functions_2log2_8hpp.html new file mode 100644 index 00000000000..0c3e986764a --- /dev/null +++ b/doc/api/html/agrad_2fwd_2functions_2log2_8hpp.html @@ -0,0 +1,132 @@ + + + + + +Stan: src/stan/agrad/fwd/functions/log2.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
log2.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+ + + + +

+Functions

template<typename T >
fvar< T > stan::agrad::log2 (const fvar< T > &x)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2fwd_2functions_2log2_8hpp_source.html b/doc/api/html/agrad_2fwd_2functions_2log2_8hpp_source.html new file mode 100644 index 00000000000..4a63fe438b3 --- /dev/null +++ b/doc/api/html/agrad_2fwd_2functions_2log2_8hpp_source.html @@ -0,0 +1,135 @@ + + + + + +Stan: src/stan/agrad/fwd/functions/log2.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
log2.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__FWD__FUNCTIONS__LOG2_HPP__
+
2 #define __STAN__AGRAD__FWD__FUNCTIONS__LOG2_HPP__
+
3 
+ +
5 #include <stan/meta/traits.hpp>
+ + +
8 
+
9 
+
10 namespace stan {
+
11 
+
12  namespace agrad {
+
13 
+
14  template <typename T>
+
15  inline
+
16  fvar<T>
+
17  log2(const fvar<T>& x) {
+
18  using std::log;
+
19  using stan::math::log2;
+ +
21  if(x.val_ < 0.0)
+ +
23  else
+
24  return fvar<T>(log2(x.val_), x.d_ / (x.val_ * stan::math::LOG_2));
+
25  }
+
26  }
+
27 }
+
28 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2fwd_2functions_2log_8hpp.html b/doc/api/html/agrad_2fwd_2functions_2log_8hpp.html new file mode 100644 index 00000000000..eb556142450 --- /dev/null +++ b/doc/api/html/agrad_2fwd_2functions_2log_8hpp.html @@ -0,0 +1,131 @@ + + + + + +Stan: src/stan/agrad/fwd/functions/log.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
log.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+ + + + +

+Functions

template<typename T >
fvar< T > stan::agrad::log (const fvar< T > &x)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2fwd_2functions_2log_8hpp_source.html b/doc/api/html/agrad_2fwd_2functions_2log_8hpp_source.html new file mode 100644 index 00000000000..3cb320fb356 --- /dev/null +++ b/doc/api/html/agrad_2fwd_2functions_2log_8hpp_source.html @@ -0,0 +1,132 @@ + + + + + +Stan: src/stan/agrad/fwd/functions/log.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
log.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__FWD__FUNCTIONS__LOG_HPP__
+
2 #define __STAN__AGRAD__FWD__FUNCTIONS__LOG_HPP__
+
3 
+ +
5 #include <stan/meta/traits.hpp>
+ +
7 
+
8 namespace stan {
+
9 
+
10  namespace agrad {
+
11 
+
12  template <typename T>
+
13  inline
+
14  fvar<T>
+
15  log(const fvar<T>& x) {
+
16  using std::log;
+ +
18  if(x.val_ < 0.0)
+ +
20  else
+
21  return fvar<T>(log(x.val_), x.d_ / x.val_);
+
22  }
+
23  }
+
24 }
+
25 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2fwd_2functions_2log__diff__exp_8hpp.html b/doc/api/html/agrad_2fwd_2functions_2log__diff__exp_8hpp.html new file mode 100644 index 00000000000..4796e2ee22c --- /dev/null +++ b/doc/api/html/agrad_2fwd_2functions_2log__diff__exp_8hpp.html @@ -0,0 +1,138 @@ + + + + + +Stan: src/stan/agrad/fwd/functions/log_diff_exp.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
log_diff_exp.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+ + + + + + + + + + +

+Functions

template<typename T >
fvar< T > stan::agrad::log_diff_exp (const fvar< T > &x1, const fvar< T > &x2)
 
template<typename T1 , typename T2 >
fvar< T2 > stan::agrad::log_diff_exp (const T1 &x1, const fvar< T2 > &x2)
 
template<typename T1 , typename T2 >
fvar< T1 > stan::agrad::log_diff_exp (const fvar< T1 > &x1, const T2 &x2)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2fwd_2functions_2log__diff__exp_8hpp_source.html b/doc/api/html/agrad_2fwd_2functions_2log__diff__exp_8hpp_source.html new file mode 100644 index 00000000000..4a94858de1a --- /dev/null +++ b/doc/api/html/agrad_2fwd_2functions_2log__diff__exp_8hpp_source.html @@ -0,0 +1,154 @@ + + + + + +Stan: src/stan/agrad/fwd/functions/log_diff_exp.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
log_diff_exp.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__FWD__FUNCTIONS__LOG_DIFF_EXP_HPP__
+
2 #define __STAN__AGRAD__FWD__FUNCTIONS__LOG_DIFF_EXP_HPP__
+
3 
+ +
5 #include <stan/meta/traits.hpp>
+ + +
8 
+
9 namespace stan{
+
10 
+
11  namespace agrad{
+
12 
+
13  template <typename T> inline fvar<T>
+
14  log_diff_exp(const fvar<T>& x1, const fvar<T>& x2) {
+ + +
17  using std::exp;
+
18  if (x1.val_ <= x2.val_)
+ +
20  return fvar<T>(log_diff_exp(x1.val_, x2.val_),
+
21  x1.d_ / (1 - exp(x2.val_ - x1.val_) ) + x2.d_ / (1 - exp(x1.val_ - x2.val_) ) );
+
22  }
+
23 
+
24  template <typename T1, typename T2> inline fvar<T2>
+
25  log_diff_exp(const T1& x1, const fvar<T2>& x2) {
+ + +
28  using std::exp;
+
29  if (x1 <= x2.val_)
+ +
31  return fvar<T2>(log_diff_exp(x1, x2.val_),
+
32  x2.d_ / (1 - exp(x1 - x2.val_)));
+
33  }
+
34 
+
35  template <typename T1, typename T2> inline fvar<T1>
+
36  log_diff_exp(const fvar<T1>& x1, const T2& x2) {
+ + +
39  using std::exp;
+
40  if (x1.val_ <= x2)
+ +
42  return fvar<T1>(log_diff_exp(x1.val_, x2),
+
43  x1.d_ / (1 - exp(x2 - x1.val_)));
+
44  }
+
45  }
+
46 }
+
47 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2fwd_2functions_2log__falling__factorial_8hpp.html b/doc/api/html/agrad_2fwd_2functions_2log__falling__factorial_8hpp.html new file mode 100644 index 00000000000..641ff1cd52d --- /dev/null +++ b/doc/api/html/agrad_2fwd_2functions_2log__falling__factorial_8hpp.html @@ -0,0 +1,138 @@ + + + + + +Stan: src/stan/agrad/fwd/functions/log_falling_factorial.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
log_falling_factorial.hpp File Reference
+
+
+
#include <stan/agrad/fwd/fvar.hpp>
+#include <stan/meta/traits.hpp>
+#include <stan/math/functions/log_falling_factorial.hpp>
+#include <boost/math/special_functions/digamma.hpp>
+
+

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+ + + + + + + + + + +

+Functions

template<typename T >
fvar< T > stan::agrad::log_falling_factorial (const fvar< T > &x, const fvar< T > &n)
 
template<typename T >
fvar< T > stan::agrad::log_falling_factorial (const double x, const fvar< T > &n)
 
template<typename T >
fvar< T > stan::agrad::log_falling_factorial (const fvar< T > &x, const double n)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2fwd_2functions_2log__falling__factorial_8hpp_source.html b/doc/api/html/agrad_2fwd_2functions_2log__falling__factorial_8hpp_source.html new file mode 100644 index 00000000000..a6075eca306 --- /dev/null +++ b/doc/api/html/agrad_2fwd_2functions_2log__falling__factorial_8hpp_source.html @@ -0,0 +1,151 @@ + + + + + +Stan: src/stan/agrad/fwd/functions/log_falling_factorial.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
log_falling_factorial.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__FWD__FUNCTIONS__LOG_FALLING_FACTORIAL_HPP__
+
2 #define __STAN__AGRAD__FWD__FUNCTIONS__LOG_FALLING_FACTORIAL_HPP__
+
3 
+ +
5 #include <stan/meta/traits.hpp>
+ +
7 #include <boost/math/special_functions/digamma.hpp>
+
8 
+
9 namespace stan {
+
10 
+
11  namespace agrad {
+
12 
+
13  template<typename T>
+
14  inline fvar<T>
+
15  log_falling_factorial(const fvar<T>& x, const fvar<T>& n) {
+ + +
18 
+
19  return fvar<T>(log_falling_factorial(x.val_, n.val_),
+
20  digamma(x.val_ + 1) * x.d_ - digamma(n.val_ + 1) * n.d_);
+
21  }
+
22 
+
23  template<typename T>
+
24  inline fvar<T>
+
25  log_falling_factorial(const double x, const fvar<T>& n) {
+ + +
28 
+
29  return fvar<T>(log_falling_factorial(x, n.val_),
+
30  -digamma(n.val_ + 1) * n.d_);
+
31  }
+
32 
+
33  template<typename T>
+
34  inline fvar<T>
+
35  log_falling_factorial(const fvar<T>& x, const double n) {
+ + +
38 
+
39  return fvar<T>(log_falling_factorial(x.val_, n),
+
40  digamma(x.val_ + 1) * x.d_);
+
41  }
+
42  }
+
43 }
+
44 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2fwd_2functions_2log__inv__logit_8hpp.html b/doc/api/html/agrad_2fwd_2functions_2log__inv__logit_8hpp.html new file mode 100644 index 00000000000..3852d66c88f --- /dev/null +++ b/doc/api/html/agrad_2fwd_2functions_2log__inv__logit_8hpp.html @@ -0,0 +1,131 @@ + + + + + +Stan: src/stan/agrad/fwd/functions/log_inv_logit.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
log_inv_logit.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+ + + + +

+Functions

template<typename T >
fvar< T > stan::agrad::log_inv_logit (const fvar< T > &x)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2fwd_2functions_2log__inv__logit_8hpp_source.html b/doc/api/html/agrad_2fwd_2functions_2log__inv__logit_8hpp_source.html new file mode 100644 index 00000000000..f8488442539 --- /dev/null +++ b/doc/api/html/agrad_2fwd_2functions_2log__inv__logit_8hpp_source.html @@ -0,0 +1,130 @@ + + + + + +Stan: src/stan/agrad/fwd/functions/log_inv_logit.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
log_inv_logit.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__FWD__FUNCTIONS__LOG_INV_LOGIT_HPP__
+
2 #define __STAN__AGRAD__FWD__FUNCTIONS__LOG_INV_LOGIT_HPP__
+
3 
+ +
5 #include <stan/meta/traits.hpp>
+ +
7 
+
8 namespace stan {
+
9 
+
10  namespace agrad {
+
11 
+
12  template <typename T>
+
13  inline
+
14  fvar<T>
+
15  log_inv_logit(const fvar<T>& x) {
+
16  using std::exp;
+ +
18  return fvar<T>(log_inv_logit(x.val_),
+
19  x.d_ / (1 + exp(x.val_)));
+
20  }
+
21  }
+
22 }
+
23 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2fwd_2functions_2log__rising__factorial_8hpp.html b/doc/api/html/agrad_2fwd_2functions_2log__rising__factorial_8hpp.html new file mode 100644 index 00000000000..9380d478d77 --- /dev/null +++ b/doc/api/html/agrad_2fwd_2functions_2log__rising__factorial_8hpp.html @@ -0,0 +1,138 @@ + + + + + +Stan: src/stan/agrad/fwd/functions/log_rising_factorial.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
log_rising_factorial.hpp File Reference
+
+
+
#include <stan/agrad/fwd/fvar.hpp>
+#include <stan/meta/traits.hpp>
+#include <stan/math/functions/log_rising_factorial.hpp>
+#include <boost/math/special_functions/digamma.hpp>
+
+

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+ + + + + + + + + + +

+Functions

template<typename T >
fvar< T > stan::agrad::log_rising_factorial (const fvar< T > &x, const fvar< T > &n)
 
template<typename T >
fvar< T > stan::agrad::log_rising_factorial (const fvar< T > &x, const double n)
 
template<typename T >
fvar< T > stan::agrad::log_rising_factorial (const double x, const fvar< T > &n)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2fwd_2functions_2log__rising__factorial_8hpp_source.html b/doc/api/html/agrad_2fwd_2functions_2log__rising__factorial_8hpp_source.html new file mode 100644 index 00000000000..95102d4dd1d --- /dev/null +++ b/doc/api/html/agrad_2fwd_2functions_2log__rising__factorial_8hpp_source.html @@ -0,0 +1,155 @@ + + + + + +Stan: src/stan/agrad/fwd/functions/log_rising_factorial.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
log_rising_factorial.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__FWD__FUNCTIONS__LOG_RISING_FACTORIAL_HPP__
+
2 #define __STAN__AGRAD__FWD__FUNCTIONS__LOG_RISING_FACTORIAL_HPP__
+
3 
+ +
5 #include <stan/meta/traits.hpp>
+ +
7 #include <boost/math/special_functions/digamma.hpp>
+
8 
+
9 namespace stan {
+
10 
+
11  namespace agrad {
+
12 
+
13  template<typename T>
+
14  inline
+
15  fvar<T>
+
16  log_rising_factorial(const fvar<T>& x, const fvar<T>& n) {
+ + +
19 
+ +
21  (digamma(x.val_ + n.val_) * (x.d_ + n.d_) - digamma(x.val_) * x.d_));
+
22  }
+
23 
+
24  template<typename T>
+
25  inline
+
26  fvar<T>
+
27  log_rising_factorial(const fvar<T>& x, const double n) {
+ + +
30 
+
31  return fvar<T>(log_rising_factorial(x.val_,n),
+
32  (digamma(x.val_ + n) - digamma(x.val_)) * x.d_);
+
33 
+
34  }
+
35 
+
36  template<typename T>
+
37  inline
+
38  fvar<T>
+
39  log_rising_factorial(const double x, const fvar<T>& n) {
+ + +
42 
+
43  return fvar<T>(log_rising_factorial(x,n.val_),
+
44  (digamma(x + n.val_) * n.d_));
+
45  }
+
46  }
+
47 }
+
48 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2fwd_2functions_2log__sum__exp_8hpp.html b/doc/api/html/agrad_2fwd_2functions_2log__sum__exp_8hpp.html new file mode 100644 index 00000000000..98c5500543b --- /dev/null +++ b/doc/api/html/agrad_2fwd_2functions_2log__sum__exp_8hpp.html @@ -0,0 +1,140 @@ + + + + + +Stan: src/stan/agrad/fwd/functions/log_sum_exp.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
log_sum_exp.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+ + + + + + + + + + + + + +

+Functions

template<typename T >
fvar< T > stan::agrad::log_sum_exp (const fvar< T > &x1, const fvar< T > &x2)
 
template<typename T >
fvar< T > stan::agrad::log_sum_exp (const double x1, const fvar< T > &x2)
 
template<typename T >
fvar< T > stan::agrad::log_sum_exp (const fvar< T > &x1, const double x2)
 
template<typename T >
fvar< T > stan::agrad::log_sum_exp (const std::vector< fvar< T > > &v)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2fwd_2functions_2log__sum__exp_8hpp_source.html b/doc/api/html/agrad_2fwd_2functions_2log__sum__exp_8hpp_source.html new file mode 100644 index 00000000000..f4e62e05778 --- /dev/null +++ b/doc/api/html/agrad_2fwd_2functions_2log__sum__exp_8hpp_source.html @@ -0,0 +1,170 @@ + + + + + +Stan: src/stan/agrad/fwd/functions/log_sum_exp.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
log_sum_exp.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__FWD__FUNCTIONS__LOG_SUM_EXP_HPP__
+
2 #define __STAN__AGRAD__FWD__FUNCTIONS__LOG_SUM_EXP_HPP__
+
3 
+ +
5 #include <stan/meta/traits.hpp>
+ +
7 
+
8 namespace stan {
+
9 
+
10  namespace agrad {
+
11 
+
12  template <typename T>
+
13  inline
+
14  fvar<T>
+
15  log_sum_exp(const fvar<T>& x1, const fvar<T>& x2) {
+ +
17  using std::exp;
+
18  return fvar<T>(log_sum_exp(x1.val_, x2.val_),
+
19  x1.d_ / (1 + exp(x2.val_ - x1.val_))
+
20  + x2.d_ / (exp(x1.val_ - x2.val_) + 1));
+
21  }
+
22 
+
23  template <typename T>
+
24  inline
+
25  fvar<T>
+
26  log_sum_exp(const double x1, const fvar<T>& x2) {
+ +
28  using std::exp;
+
29  return fvar<T>(log_sum_exp(x1, x2.val_),
+
30  x2.d_ / (exp(x1 - x2.val_) + 1));
+
31  }
+
32 
+
33  template <typename T>
+
34  inline
+
35  fvar<T>
+
36  log_sum_exp(const fvar<T>& x1, const double x2) {
+ +
38  using std::exp;
+
39  return fvar<T>(log_sum_exp(x1.val_, x2),
+
40  x1.d_ / (1 + exp(x2 - x1.val_)));
+
41  }
+
42 
+
43  template <typename T>
+
44  fvar<T>
+
45  log_sum_exp(const std::vector<fvar<T> >& v) {
+ +
47  using std::exp;
+
48  std::vector<T> vals(v.size());
+
49  for (size_t i = 0; i < v.size(); ++i)
+
50  vals[i] = v[i].val_;
+
51  T deriv(0.0);
+
52  T denominator(0.0);
+
53  for (size_t i = 0; i < v.size(); ++i) {
+
54  T exp_vi = exp(vals[i]);
+
55  denominator += exp_vi;
+
56  deriv += v[i].d_ * exp_vi;
+
57  }
+
58  return fvar<T>(log_sum_exp(vals), deriv / denominator);
+
59  }
+
60 
+
61  }
+
62 }
+
63 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2fwd_2functions_2logit_8hpp.html b/doc/api/html/agrad_2fwd_2functions_2logit_8hpp.html new file mode 100644 index 00000000000..95d16862afa --- /dev/null +++ b/doc/api/html/agrad_2fwd_2functions_2logit_8hpp.html @@ -0,0 +1,133 @@ + + + + + +Stan: src/stan/agrad/fwd/functions/logit.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
logit.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+ + + + +

+Functions

template<typename T >
fvar< T > stan::agrad::logit (const fvar< T > &x)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2fwd_2functions_2logit_8hpp_source.html b/doc/api/html/agrad_2fwd_2functions_2logit_8hpp_source.html new file mode 100644 index 00000000000..11420c3c3a1 --- /dev/null +++ b/doc/api/html/agrad_2fwd_2functions_2logit_8hpp_source.html @@ -0,0 +1,135 @@ + + + + + +Stan: src/stan/agrad/fwd/functions/logit.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
logit.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__FWD__FUNCTIONS__LOGIT_HPP__
+
2 #define __STAN__AGRAD__FWD__FUNCTIONS__LOGIT_HPP__
+
3 
+ +
5 #include <stan/meta/traits.hpp>
+ + + +
9 
+
10 namespace stan {
+
11 
+
12  namespace agrad {
+
13 
+
14  template <typename T>
+
15  inline
+
16  fvar<T>
+
17  logit(const fvar<T>& x) {
+
18  using stan::math::logit;
+
19  using stan::math::square;
+ +
21  if(x.val_ > 1 || x.val_ < 0)
+ +
23  else
+
24  return fvar<T>(logit(x.val_), x.d_ / (x.val_ - square(x.val_)));
+
25  }
+
26  }
+
27 }
+
28 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2fwd_2functions_2modified__bessel__first__kind_8hpp.html b/doc/api/html/agrad_2fwd_2functions_2modified__bessel__first__kind_8hpp.html new file mode 100644 index 00000000000..7377696691b --- /dev/null +++ b/doc/api/html/agrad_2fwd_2functions_2modified__bessel__first__kind_8hpp.html @@ -0,0 +1,131 @@ + + + + + +Stan: src/stan/agrad/fwd/functions/modified_bessel_first_kind.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
modified_bessel_first_kind.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+ + + + +

+Functions

template<typename T >
fvar< T > stan::agrad::modified_bessel_first_kind (int v, const fvar< T > &z)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2fwd_2functions_2modified__bessel__first__kind_8hpp_source.html b/doc/api/html/agrad_2fwd_2functions_2modified__bessel__first__kind_8hpp_source.html new file mode 100644 index 00000000000..68da22146a8 --- /dev/null +++ b/doc/api/html/agrad_2fwd_2functions_2modified__bessel__first__kind_8hpp_source.html @@ -0,0 +1,132 @@ + + + + + +Stan: src/stan/agrad/fwd/functions/modified_bessel_first_kind.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
modified_bessel_first_kind.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__FWD__FUNCTIONS__MODIFIED_BESSEL_FIRST_KIND_HPP__
+
2 #define __STAN__AGRAD__FWD__FUNCTIONS__MODIFIED_BESSEL_FIRST_KIND_HPP__
+
3 
+ +
5 #include <stan/meta/traits.hpp>
+ +
7 
+
8 namespace stan {
+
9 
+
10  namespace agrad {
+
11 
+
12  template <typename T>
+
13  inline
+
14  fvar<T>
+ + +
17 
+
18  T modified_bessel_first_kind_z(modified_bessel_first_kind(v, z.val_));
+
19  return fvar<T>(modified_bessel_first_kind_z,
+
20  -v * z.d_ * modified_bessel_first_kind_z / z.val_
+
21  + z.d_ * modified_bessel_first_kind(v - 1,z.val_));
+
22  }
+
23  }
+
24 }
+
25 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2fwd_2functions_2modified__bessel__second__kind_8hpp.html b/doc/api/html/agrad_2fwd_2functions_2modified__bessel__second__kind_8hpp.html new file mode 100644 index 00000000000..e3168be1a3a --- /dev/null +++ b/doc/api/html/agrad_2fwd_2functions_2modified__bessel__second__kind_8hpp.html @@ -0,0 +1,131 @@ + + + + + +Stan: src/stan/agrad/fwd/functions/modified_bessel_second_kind.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
modified_bessel_second_kind.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+ + + + +

+Functions

template<typename T >
fvar< T > stan::agrad::modified_bessel_second_kind (int v, const fvar< T > &z)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2fwd_2functions_2modified__bessel__second__kind_8hpp_source.html b/doc/api/html/agrad_2fwd_2functions_2modified__bessel__second__kind_8hpp_source.html new file mode 100644 index 00000000000..a2e113f9311 --- /dev/null +++ b/doc/api/html/agrad_2fwd_2functions_2modified__bessel__second__kind_8hpp_source.html @@ -0,0 +1,132 @@ + + + + + +Stan: src/stan/agrad/fwd/functions/modified_bessel_second_kind.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
modified_bessel_second_kind.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__FWD__FUNCTIONS__MODIFIED_BESSEL_SECOND_KIND_HPP__
+
2 #define __STAN__AGRAD__FWD__FUNCTIONS__MODIFIED_BESSEL_SECOND_KIND_HPP__
+
3 
+ +
5 #include <stan/meta/traits.hpp>
+ +
7 
+
8 namespace stan {
+
9 
+
10  namespace agrad {
+
11 
+
12  template <typename T>
+
13  inline
+
14  fvar<T>
+ + +
17 
+
18  T modified_bessel_second_kind_z(modified_bessel_second_kind(v, z.val_));
+
19  return fvar<T>(modified_bessel_second_kind_z,
+
20  -v * z.d_ * modified_bessel_second_kind_z / z.val_
+
21  - z.d_ * modified_bessel_second_kind(v - 1,z.val_));
+
22  }
+
23  }
+
24 }
+
25 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2fwd_2functions_2multiply__log_8hpp.html b/doc/api/html/agrad_2fwd_2functions_2multiply__log_8hpp.html new file mode 100644 index 00000000000..9347802a30f --- /dev/null +++ b/doc/api/html/agrad_2fwd_2functions_2multiply__log_8hpp.html @@ -0,0 +1,137 @@ + + + + + +Stan: src/stan/agrad/fwd/functions/multiply_log.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
multiply_log.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+ + + + + + + + + + +

+Functions

template<typename T >
fvar< T > stan::agrad::multiply_log (const fvar< T > &x1, const fvar< T > &x2)
 
template<typename T >
fvar< T > stan::agrad::multiply_log (const double x1, const fvar< T > &x2)
 
template<typename T >
fvar< T > stan::agrad::multiply_log (const fvar< T > &x1, const double x2)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2fwd_2functions_2multiply__log_8hpp_source.html b/doc/api/html/agrad_2fwd_2functions_2multiply__log_8hpp_source.html new file mode 100644 index 00000000000..b62421192de --- /dev/null +++ b/doc/api/html/agrad_2fwd_2functions_2multiply__log_8hpp_source.html @@ -0,0 +1,150 @@ + + + + + +Stan: src/stan/agrad/fwd/functions/multiply_log.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
multiply_log.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__FWD__FUNCTIONS__MULTIPLY_LOG_HPP__
+
2 #define __STAN__AGRAD__FWD__FUNCTIONS__MULTIPLY_LOG_HPP__
+
3 
+ +
5 #include <stan/meta/traits.hpp>
+ +
7 
+
8 namespace stan {
+
9 
+
10  namespace agrad {
+
11 
+
12  template <typename T>
+
13  inline
+
14  fvar<T>
+
15  multiply_log(const fvar<T>& x1, const fvar<T>& x2) {
+ +
17  using std::log;
+
18  return fvar<T>(multiply_log(x1.val_, x2.val_),
+
19  x1.d_ * log(x2.val_) + x1.val_ * x2.d_ / x2.val_);
+
20  }
+
21 
+
22  template <typename T>
+
23  inline
+
24  fvar<T>
+
25  multiply_log(const double x1, const fvar<T>& x2) {
+ +
27  using std::log;
+
28  return fvar<T>(multiply_log(x1, x2.val_),
+
29  x1 * x2.d_ / x2.val_);
+
30  }
+
31 
+
32  template <typename T>
+
33  inline
+
34  fvar<T>
+
35  multiply_log(const fvar<T>& x1, const double x2) {
+ +
37  using std::log;
+
38  return fvar<T>(multiply_log(x1.val_, x2),
+
39  x1.d_ * log(x2));
+
40  }
+
41  }
+
42 }
+
43 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2fwd_2functions_2owens__t_8hpp.html b/doc/api/html/agrad_2fwd_2functions_2owens__t_8hpp.html new file mode 100644 index 00000000000..692dc355a06 --- /dev/null +++ b/doc/api/html/agrad_2fwd_2functions_2owens__t_8hpp.html @@ -0,0 +1,138 @@ + + + + + +Stan: src/stan/agrad/fwd/functions/owens_t.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
owens_t.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+ + + + + + + + + + +

+Functions

template<typename T >
fvar< T > stan::agrad::owens_t (const fvar< T > &x1, const fvar< T > &x2)
 
template<typename T >
fvar< T > stan::agrad::owens_t (const double x1, const fvar< T > &x2)
 
template<typename T >
fvar< T > stan::agrad::owens_t (const fvar< T > &x1, const double x2)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2fwd_2functions_2owens__t_8hpp_source.html b/doc/api/html/agrad_2fwd_2functions_2owens__t_8hpp_source.html new file mode 100644 index 00000000000..11e03442087 --- /dev/null +++ b/doc/api/html/agrad_2fwd_2functions_2owens__t_8hpp_source.html @@ -0,0 +1,175 @@ + + + + + +Stan: src/stan/agrad/fwd/functions/owens_t.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
owens_t.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__FWD__FUNCTIONS__OWENS_T_HPP__
+
2 #define __STAN__AGRAD__FWD__FUNCTIONS__OWENS_T_HPP__
+
3 
+ +
5 #include <stan/meta/traits.hpp>
+ + +
8 
+
9 namespace stan {
+
10  namespace agrad {
+
11 
+
12  template <typename T>
+
13  inline
+
14  fvar<T>
+
15  owens_t(const fvar<T>& x1, const fvar<T>& x2) {
+
16  using stan::math::owens_t;
+
17  using boost::math::erf;
+
18  using stan::math::pi;
+
19  using std::exp;
+
20 
+
21  T neg_x1_sq_div_2 = -x1.val_ * x1.val_ / 2.0;
+
22  T one_p_x2_sq = 1.0 + x2.val_ * x2.val_;
+
23 
+
24  return fvar<T>(owens_t(x1.val_, x2.val_),
+
25  - x1.d_
+
26  * (erf(x2.val_ * x1.val_ / std::sqrt(2.0))
+
27  * exp(neg_x1_sq_div_2) / std::sqrt(8.0 * pi()))
+
28  + x2.d_ * exp(neg_x1_sq_div_2 * one_p_x2_sq)
+
29  / (one_p_x2_sq * 2.0 * pi()));
+
30  }
+
31 
+
32  template <typename T>
+
33  inline
+
34  fvar<T>
+
35  owens_t(const double x1, const fvar<T>& x2) {
+
36  using stan::math::owens_t;
+
37  using boost::math::erf;
+
38  using stan::math::pi;
+
39  using std::exp;
+
40 
+
41  T neg_x1_sq_div_2 = -x1 * x1 / 2.0;
+
42  T one_p_x2_sq = 1.0 + x2.val_ * x2.val_;
+
43 
+
44  return fvar<T>(owens_t(x1, x2.val_),
+
45  x2.d_ * exp(neg_x1_sq_div_2 * one_p_x2_sq)
+
46  / (one_p_x2_sq * 2.0 * pi()));
+
47  }
+
48 
+
49  template <typename T>
+
50  inline
+
51  fvar<T>
+
52  owens_t(const fvar<T>& x1, const double x2) {
+
53  using stan::math::owens_t;
+
54  using boost::math::erf;
+
55  using stan::math::pi;
+
56  using std::exp;
+
57 
+
58  T neg_x1_sq_div_2 = -x1.val_ * x1.val_ / 2.0;
+
59 
+
60  return fvar<T>(owens_t(x1.val_, x2),
+
61  -x1.d_ * (erf(x2 * x1.val_ / std::sqrt(2.0))
+
62  * exp(neg_x1_sq_div_2)
+
63  / std::sqrt(8.0 * pi())));
+
64  }
+
65 
+
66  }
+
67 }
+
68 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2fwd_2functions_2rising__factorial_8hpp.html b/doc/api/html/agrad_2fwd_2functions_2rising__factorial_8hpp.html new file mode 100644 index 00000000000..389c4bc26fd --- /dev/null +++ b/doc/api/html/agrad_2fwd_2functions_2rising__factorial_8hpp.html @@ -0,0 +1,138 @@ + + + + + +Stan: src/stan/agrad/fwd/functions/rising_factorial.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
rising_factorial.hpp File Reference
+
+
+
#include <stan/agrad/fwd/fvar.hpp>
+#include <stan/meta/traits.hpp>
+#include <stan/math/functions/rising_factorial.hpp>
+#include <boost/math/special_functions/digamma.hpp>
+
+

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+ + + + + + + + + + +

+Functions

template<typename T >
fvar< T > stan::agrad::rising_factorial (const fvar< T > &x, const fvar< T > &n)
 
template<typename T >
fvar< T > stan::agrad::rising_factorial (const fvar< T > &x, const double n)
 
template<typename T >
fvar< T > stan::agrad::rising_factorial (const double x, const fvar< T > &n)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2fwd_2functions_2rising__factorial_8hpp_source.html b/doc/api/html/agrad_2fwd_2functions_2rising__factorial_8hpp_source.html new file mode 100644 index 00000000000..dc6b62439d5 --- /dev/null +++ b/doc/api/html/agrad_2fwd_2functions_2rising__factorial_8hpp_source.html @@ -0,0 +1,157 @@ + + + + + +Stan: src/stan/agrad/fwd/functions/rising_factorial.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
rising_factorial.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__FWD__FUNCTIONS__RISING_FACTORIAL_HPP__
+
2 #define __STAN__AGRAD__FWD__FUNCTIONS__RISING_FACTORIAL_HPP__
+
3 
+ +
5 #include <stan/meta/traits.hpp>
+ +
7 #include <boost/math/special_functions/digamma.hpp>
+
8 
+
9 namespace stan {
+
10 
+
11  namespace agrad {
+
12 
+
13  template<typename T>
+
14  inline
+
15  fvar<T>
+
16  rising_factorial(const fvar<T>& x, const fvar<T>& n) {
+ + +
19 
+
20  T rising_fact(rising_factorial(x.val_,n.val_));
+
21  return fvar<T>(rising_fact, rising_fact * (digamma(x.val_ + n.val_)
+
22  * (x.d_ + n.d_) - digamma(x.val_) * x.d_));
+
23  }
+
24 
+
25  template<typename T>
+
26  inline
+
27  fvar<T>
+
28  rising_factorial(const fvar<T>& x, const double n) {
+ + +
31 
+
32  T rising_fact(rising_factorial(x.val_,n));
+
33  return fvar<T>(rising_fact,
+
34  rising_fact * x.d_ * (digamma(x.val_ + n) - digamma(x.val_)));
+
35  }
+
36 
+
37  template<typename T>
+
38  inline
+
39  fvar<T>
+
40  rising_factorial(const double x, const fvar<T>& n) {
+ + +
43 
+
44  T rising_fact(rising_factorial(x,n.val_));
+
45  return fvar<T>(rising_fact,
+
46  rising_fact * (digamma(x + n.val_) * n.d_));
+
47  }
+
48  }
+
49 }
+
50 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2fwd_2functions_2square_8hpp.html b/doc/api/html/agrad_2fwd_2functions_2square_8hpp.html new file mode 100644 index 00000000000..4fa50117175 --- /dev/null +++ b/doc/api/html/agrad_2fwd_2functions_2square_8hpp.html @@ -0,0 +1,131 @@ + + + + + +Stan: src/stan/agrad/fwd/functions/square.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
square.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+ + + + +

+Functions

template<typename T >
fvar< T > stan::agrad::square (const fvar< T > &x)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2fwd_2functions_2square_8hpp_source.html b/doc/api/html/agrad_2fwd_2functions_2square_8hpp_source.html new file mode 100644 index 00000000000..81b4193b99d --- /dev/null +++ b/doc/api/html/agrad_2fwd_2functions_2square_8hpp_source.html @@ -0,0 +1,129 @@ + + + + + +Stan: src/stan/agrad/fwd/functions/square.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
square.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__FWD__FUNCTIONS__SQUARE_HPP__
+
2 #define __STAN__AGRAD__FWD__FUNCTIONS__SQUARE_HPP__
+
3 
+ +
5 #include <stan/meta/traits.hpp>
+ +
7 
+
8 namespace stan {
+
9 
+
10  namespace agrad {
+
11 
+
12  template <typename T>
+
13  inline
+
14  fvar<T>
+
15  square(const fvar<T>& x) {
+
16  using stan::math::square;
+
17  return fvar<T>(square(x.val_),
+
18  x.d_ * 2 * x.val_);
+
19  }
+
20  }
+
21 }
+
22 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2fwd_2functions_8hpp.html b/doc/api/html/agrad_2fwd_2functions_8hpp.html new file mode 100644 index 00000000000..cd321c0cc33 --- /dev/null +++ b/doc/api/html/agrad_2fwd_2functions_8hpp.html @@ -0,0 +1,180 @@ + + + + + +Stan: src/stan/agrad/fwd/functions.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
functions.hpp File Reference
+
+
+
#include <stan/agrad/fwd/functions/Phi.hpp>
+#include <stan/agrad/fwd/functions/abs.hpp>
+#include <stan/agrad/fwd/functions/acos.hpp>
+#include <stan/agrad/fwd/functions/acosh.hpp>
+#include <stan/agrad/fwd/functions/asin.hpp>
+#include <stan/agrad/fwd/functions/asinh.hpp>
+#include <stan/agrad/fwd/functions/atan.hpp>
+#include <stan/agrad/fwd/functions/atan2.hpp>
+#include <stan/agrad/fwd/functions/atanh.hpp>
+#include <stan/agrad/fwd/functions/bessel_first_kind.hpp>
+#include <stan/agrad/fwd/functions/bessel_second_kind.hpp>
+#include <stan/agrad/fwd/functions/binary_log_loss.hpp>
+#include <stan/agrad/fwd/functions/binomial_coefficient_log.hpp>
+#include <stan/agrad/fwd/functions/cbrt.hpp>
+#include <stan/agrad/fwd/functions/ceil.hpp>
+#include <stan/agrad/fwd/functions/cos.hpp>
+#include <stan/agrad/fwd/functions/cosh.hpp>
+#include <stan/agrad/fwd/functions/digamma.hpp>
+#include <stan/agrad/fwd/functions/erf.hpp>
+#include <stan/agrad/fwd/functions/erfc.hpp>
+#include <stan/agrad/fwd/functions/exp.hpp>
+#include <stan/agrad/fwd/functions/exp2.hpp>
+#include <stan/agrad/fwd/functions/expm1.hpp>
+#include <stan/agrad/fwd/functions/fabs.hpp>
+#include <stan/agrad/fwd/functions/falling_factorial.hpp>
+#include <stan/agrad/fwd/functions/fdim.hpp>
+#include <stan/agrad/fwd/functions/floor.hpp>
+#include <stan/agrad/fwd/functions/fma.hpp>
+#include <stan/agrad/fwd/functions/fmax.hpp>
+#include <stan/agrad/fwd/functions/fmin.hpp>
+#include <stan/agrad/fwd/functions/fmod.hpp>
+#include <stan/agrad/fwd/functions/gamma_p.hpp>
+#include <stan/agrad/fwd/functions/gamma_q.hpp>
+#include <stan/agrad/fwd/functions/hypot.hpp>
+#include <stan/agrad/fwd/functions/inv.hpp>
+#include <stan/agrad/fwd/functions/inv_cloglog.hpp>
+#include <stan/agrad/fwd/functions/inv_logit.hpp>
+#include <stan/agrad/fwd/functions/inv_sqrt.hpp>
+#include <stan/agrad/fwd/functions/inv_square.hpp>
+#include <stan/agrad/fwd/functions/lbeta.hpp>
+#include <stan/agrad/fwd/functions/lgamma.hpp>
+#include <stan/agrad/fwd/functions/lmgamma.hpp>
+#include <stan/agrad/fwd/functions/log.hpp>
+#include <stan/agrad/fwd/functions/log10.hpp>
+#include <stan/agrad/fwd/functions/log1m.hpp>
+#include <stan/agrad/fwd/functions/log1m_exp.hpp>
+#include <stan/agrad/fwd/functions/log1m_inv_logit.hpp>
+#include <stan/agrad/fwd/functions/log1p.hpp>
+#include <stan/agrad/fwd/functions/log1p_exp.hpp>
+#include <stan/agrad/fwd/functions/log2.hpp>
+#include <stan/agrad/fwd/functions/log_diff_exp.hpp>
+#include <stan/agrad/fwd/functions/log_falling_factorial.hpp>
+#include <stan/agrad/fwd/functions/log_inv_logit.hpp>
+#include <stan/agrad/fwd/functions/log_rising_factorial.hpp>
+#include <stan/agrad/fwd/functions/log_sum_exp.hpp>
+#include <stan/agrad/fwd/functions/logit.hpp>
+#include <stan/agrad/fwd/functions/modified_bessel_first_kind.hpp>
+#include <stan/agrad/fwd/functions/modified_bessel_second_kind.hpp>
+#include <stan/agrad/fwd/functions/multiply_log.hpp>
+#include <stan/agrad/fwd/functions/owens_t.hpp>
+#include <stan/agrad/fwd/functions/pow.hpp>
+#include <stan/agrad/fwd/functions/rising_factorial.hpp>
+#include <stan/agrad/fwd/functions/round.hpp>
+#include <stan/agrad/fwd/functions/sin.hpp>
+#include <stan/agrad/fwd/functions/sinh.hpp>
+#include <stan/agrad/fwd/functions/sqrt.hpp>
+#include <stan/agrad/fwd/functions/square.hpp>
+#include <stan/agrad/fwd/functions/tan.hpp>
+#include <stan/agrad/fwd/functions/tanh.hpp>
+#include <stan/agrad/fwd/functions/tgamma.hpp>
+#include <stan/agrad/fwd/functions/trunc.hpp>
+
+

Go to the source code of this file.

+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2fwd_2functions_8hpp_source.html b/doc/api/html/agrad_2fwd_2functions_8hpp_source.html new file mode 100644 index 00000000000..08d98ca07ee --- /dev/null +++ b/doc/api/html/agrad_2fwd_2functions_8hpp_source.html @@ -0,0 +1,183 @@ + + + + + +Stan: src/stan/agrad/fwd/functions.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
functions.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__FWD__FUNCTIONS_HPP__
+
2 #define __STAN__AGRAD__FWD__FUNCTIONS_HPP__
+
3 
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
75 
+
76 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2fwd_2matrix_2columns__dot__product_8hpp.html b/doc/api/html/agrad_2fwd_2matrix_2columns__dot__product_8hpp.html new file mode 100644 index 00000000000..7215a4c01d9 --- /dev/null +++ b/doc/api/html/agrad_2fwd_2matrix_2columns__dot__product_8hpp.html @@ -0,0 +1,141 @@ + + + + + +Stan: src/stan/agrad/fwd/matrix/columns_dot_product.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
columns_dot_product.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+ + + + + + + + + + +

+Functions

template<typename T , int R1, int C1, int R2, int C2>
Eigen::Matrix< fvar< T >, 1, C1 > stan::agrad::columns_dot_product (const Eigen::Matrix< fvar< T >, R1, C1 > &v1, const Eigen::Matrix< fvar< T >, R2, C2 > &v2)
 
template<typename T , int R1, int C1, int R2, int C2>
Eigen::Matrix< fvar< T >, 1, C1 > stan::agrad::columns_dot_product (const Eigen::Matrix< fvar< T >, R1, C1 > &v1, const Eigen::Matrix< double, R2, C2 > &v2)
 
template<typename T , int R1, int C1, int R2, int C2>
Eigen::Matrix< fvar< T >, 1, C1 > stan::agrad::columns_dot_product (const Eigen::Matrix< double, R1, C1 > &v1, const Eigen::Matrix< fvar< T >, R2, C2 > &v2)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2fwd_2matrix_2columns__dot__product_8hpp_source.html b/doc/api/html/agrad_2fwd_2matrix_2columns__dot__product_8hpp_source.html new file mode 100644 index 00000000000..b14354cf7bc --- /dev/null +++ b/doc/api/html/agrad_2fwd_2matrix_2columns__dot__product_8hpp_source.html @@ -0,0 +1,169 @@ + + + + + +Stan: src/stan/agrad/fwd/matrix/columns_dot_product.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
columns_dot_product.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__FWD__MATRIX__COLUMNS__DOT_PRODUCT_HPP__
+
2 #define __STAN__AGRAD__FWD__MATRIX__COLUMNS__DOT_PRODUCT_HPP__
+
3 
+
4 #include <vector>
+ + + + + +
10 #include <stan/agrad/fwd/fvar.hpp>
+
11 
+
12 namespace stan {
+
13  namespace agrad {
+
14 
+
15  template<typename T, int R1,int C1,int R2, int C2>
+
16  inline
+
17  Eigen::Matrix<fvar<T>, 1, C1>
+
18  columns_dot_product(const Eigen::Matrix<fvar<T>, R1, C1>& v1,
+
19  const Eigen::Matrix<fvar<T>, R2, C2>& v2) {
+
20  stan::math::validate_matching_dims(v1,v2,"columns_dot_product");
+
21  Eigen::Matrix<fvar<T>, 1, C1> ret(1,v1.cols());
+
22  for (size_type j = 0; j < v1.cols(); ++j) {
+
23  Eigen::Matrix<fvar<T>,R1,C1> ccol1 = v1.col(j);
+
24  Eigen::Matrix<fvar<T>,R2,C2> ccol2 = v2.col(j);
+
25  ret(0,j) = dot_product(ccol1, ccol2);
+
26  }
+
27  return ret;
+
28  }
+
29 
+
30  template<typename T, int R1,int C1,int R2, int C2>
+
31  inline
+
32  Eigen::Matrix<fvar<T>, 1, C1>
+
33  columns_dot_product(const Eigen::Matrix<fvar<T>, R1, C1>& v1,
+
34  const Eigen::Matrix<double, R2, C2>& v2) {
+
35  stan::math::validate_matching_dims(v1,v2,"columns_dot_product");
+
36  Eigen::Matrix<fvar<T>, 1, C1>
+
37  ret(1,v1.cols());
+
38  for (size_type j = 0; j < v1.cols(); ++j) {
+
39  Eigen::Matrix<fvar<T>,R1,C1> ccol1 = v1.col(j);
+
40  Eigen::Matrix<double,R2,C2> ccol = v2.col(j);
+
41  ret(0,j) = dot_product(ccol1, ccol);
+
42  }
+
43  return ret;
+
44  }
+
45 
+
46  template<typename T, int R1,int C1,int R2, int C2>
+
47  inline
+
48  Eigen::Matrix<fvar<T>, 1, C1>
+
49  columns_dot_product(const Eigen::Matrix<double, R1, C1>& v1,
+
50  const Eigen::Matrix<fvar<T>, R2, C2>& v2) {
+
51  stan::math::validate_matching_dims(v1,v2,"columns_dot_product");
+
52  Eigen::Matrix<fvar<T>, 1, C1> ret(1,v1.cols());
+
53  for (size_type j = 0; j < v1.cols(); ++j) {
+
54  Eigen::Matrix<double,R1,C1> ccol = v1.col(j);
+
55  Eigen::Matrix<fvar<T>,R2,C2> ccol2 = v2.col(j);
+
56  ret(0,j) = dot_product(ccol, ccol2);
+
57  }
+
58  return ret;
+
59  }
+
60  }
+
61 }
+
62 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2fwd_2matrix_2columns__dot__self_8hpp.html b/doc/api/html/agrad_2fwd_2matrix_2columns__dot__self_8hpp.html new file mode 100644 index 00000000000..9ef3d38242c --- /dev/null +++ b/doc/api/html/agrad_2fwd_2matrix_2columns__dot__self_8hpp.html @@ -0,0 +1,134 @@ + + + + + +Stan: src/stan/agrad/fwd/matrix/columns_dot_self.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
columns_dot_self.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+ + + + +

+Functions

template<typename T , int R, int C>
Eigen::Matrix< fvar< T >, 1, C > stan::agrad::columns_dot_self (const Eigen::Matrix< fvar< T >, R, C > &x)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2fwd_2matrix_2columns__dot__self_8hpp_source.html b/doc/api/html/agrad_2fwd_2matrix_2columns__dot__self_8hpp_source.html new file mode 100644 index 00000000000..3f0264081f5 --- /dev/null +++ b/doc/api/html/agrad_2fwd_2matrix_2columns__dot__self_8hpp_source.html @@ -0,0 +1,133 @@ + + + + + +Stan: src/stan/agrad/fwd/matrix/columns_dot_self.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
columns_dot_self.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__REV__MATRIX__COLUMNS_DOT_SELF_HPP__
+
2 #define __STAN__AGRAD__REV__MATRIX__COLUMNS_DOT_SELF_HPP__
+
3 
+
4 #include <vector>
+ + + + + +
10 
+
11 namespace stan {
+
12  namespace agrad {
+
13 
+
14  template<typename T, int R,int C>
+
15  inline Eigen::Matrix<fvar<T>,1,C>
+
16  columns_dot_self(const Eigen::Matrix<fvar<T>,R,C>& x) {
+
17  Eigen::Matrix<fvar<T>,1,C> ret(1,x.cols());
+
18  for (size_type i = 0; i < x.cols(); i++) {
+
19  Eigen::Matrix<fvar<T>,R,1> ccol = x.col(i);
+
20  ret(0,i) = dot_self(ccol);
+
21  }
+
22  return ret;
+
23  }
+
24  }
+
25 }
+
26 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2fwd_2matrix_2crossprod_8hpp.html b/doc/api/html/agrad_2fwd_2matrix_2crossprod_8hpp.html new file mode 100644 index 00000000000..c9326385f2d --- /dev/null +++ b/doc/api/html/agrad_2fwd_2matrix_2crossprod_8hpp.html @@ -0,0 +1,134 @@ + + + + + +Stan: src/stan/agrad/fwd/matrix/crossprod.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
crossprod.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+ + + + +

+Functions

template<typename T , int R, int C>
Eigen::Matrix< fvar< T >, C, C > stan::agrad::crossprod (const Eigen::Matrix< fvar< T >, R, C > &m)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2fwd_2matrix_2crossprod_8hpp_source.html b/doc/api/html/agrad_2fwd_2matrix_2crossprod_8hpp_source.html new file mode 100644 index 00000000000..2609dae6638 --- /dev/null +++ b/doc/api/html/agrad_2fwd_2matrix_2crossprod_8hpp_source.html @@ -0,0 +1,132 @@ + + + + + +Stan: src/stan/agrad/fwd/matrix/crossprod.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
crossprod.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__FWD__MATRIX__CROSSPROD_HPP__
+
2 #define __STAN__AGRAD__FWD__MATRIX__CROSSPROD_HPP__
+
3 
+
4 #include <vector>
+ + + + + +
10 
+
11 namespace stan {
+
12  namespace agrad {
+
13 
+
14  template<typename T,int R, int C>
+
15  inline
+
16  Eigen::Matrix<fvar<T>,C,C>
+
17  crossprod(const Eigen::Matrix<fvar<T>, R, C>& m) {
+
18  if (m.rows() == 0)
+
19  return Eigen::Matrix<fvar<T>,C,C>(0,0);
+ +
21  }
+
22 
+
23  }
+
24 }
+
25 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2fwd_2matrix_2determinant_8hpp.html b/doc/api/html/agrad_2fwd_2matrix_2determinant_8hpp.html new file mode 100644 index 00000000000..c266fe1ac63 --- /dev/null +++ b/doc/api/html/agrad_2fwd_2matrix_2determinant_8hpp.html @@ -0,0 +1,137 @@ + + + + + +Stan: src/stan/agrad/fwd/matrix/determinant.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
determinant.hpp File Reference
+
+
+
#include <vector>
+#include <boost/math/tools/promotion.hpp>
+#include <stan/math/matrix/Eigen.hpp>
+#include <stan/agrad/fwd/fvar.hpp>
+#include <stan/agrad/fwd/matrix/typedefs.hpp>
+#include <stan/math/matrix/multiply.hpp>
+#include <stan/agrad/fwd/matrix/multiply.hpp>
+#include <stan/math/matrix/inverse.hpp>
+#include <stan/agrad/fwd/matrix/inverse.hpp>
+
+

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+ + + + +

+Functions

template<typename T , int R, int C>
fvar< T > stan::agrad::determinant (const Eigen::Matrix< fvar< T >, R, C > &m)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2fwd_2matrix_2determinant_8hpp_source.html b/doc/api/html/agrad_2fwd_2matrix_2determinant_8hpp_source.html new file mode 100644 index 00000000000..f83d3ceb373 --- /dev/null +++ b/doc/api/html/agrad_2fwd_2matrix_2determinant_8hpp_source.html @@ -0,0 +1,153 @@ + + + + + +Stan: src/stan/agrad/fwd/matrix/determinant.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
determinant.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__FWD__MATRIX__DETERMINANT_HPP__
+
2 #define __STAN__AGRAD__FWD__MATRIX__DETERMINANT_HPP__
+
3 
+
4 #include <vector>
+
5 #include <boost/math/tools/promotion.hpp>
+ + + + + + + +
13 
+
14 namespace stan {
+
15  namespace agrad {
+
16 
+
17  template<typename T, int R,int C>
+
18  inline
+
19  fvar<T>
+
20  determinant(const Eigen::Matrix<fvar<T>, R, C>& m) {
+ +
22 
+
23  stan::math::validate_square(m, "determinant");
+
24  Eigen::Matrix<T,R,C> m_deriv(m.rows(), m.cols());
+
25  Eigen::Matrix<T,R,C> m_val(m.rows(), m.cols());
+
26  Eigen::Matrix<T,R,C> m_inv(m.rows(), m.cols());
+
27  fvar<T> result;
+
28 
+
29  for(size_type i = 0; i < m.rows(); i++) {
+
30  for(size_type j = 0; j < m.cols(); j++) {
+
31  m_deriv(i,j) = m(i,j).d_;
+
32  m_val(i,j) = m(i,j).val_;
+
33  }
+
34  }
+
35 
+
36  m_inv = stan::math::inverse(m_val);
+
37  m_deriv = multiply(m_inv, m_deriv);
+
38 
+
39  result.val_ = m_val.determinant();
+
40  result.d_ = result.val_ * m_deriv.trace();
+
41 
+
42  return result;
+
43  }
+
44  }
+
45 }
+
46 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2fwd_2matrix_2divide_8hpp.html b/doc/api/html/agrad_2fwd_2matrix_2divide_8hpp.html new file mode 100644 index 00000000000..b159d32e9a4 --- /dev/null +++ b/doc/api/html/agrad_2fwd_2matrix_2divide_8hpp.html @@ -0,0 +1,152 @@ + + + + + +Stan: src/stan/agrad/fwd/matrix/divide.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
divide.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+ + + + + + + + + + + + + + + + + + + + + + +

+Functions

template<typename T1 , typename T2 >
stan::return_type< T1, T2 >::type stan::agrad::divide (const T1 &v, const T2 &c)
 
template<typename T , int R, int C>
Eigen::Matrix< fvar< T >, R, C > stan::agrad::divide (const Eigen::Matrix< fvar< T >, R, C > &v, const fvar< T > &c)
 
template<typename T , int R, int C>
Eigen::Matrix< fvar< T >, R, C > stan::agrad::divide (const Eigen::Matrix< fvar< T >, R, C > &v, const double c)
 
template<typename T , int R, int C>
Eigen::Matrix< fvar< T >, R, C > stan::agrad::divide (const Eigen::Matrix< double, R, C > &v, const fvar< T > &c)
 
template<typename T , int R, int C>
Eigen::Matrix< fvar< T >, R, C > stan::agrad::operator/ (const Eigen::Matrix< fvar< T >, R, C > &v, const fvar< T > &c)
 
template<typename T , int R, int C>
Eigen::Matrix< fvar< T >, R, C > stan::agrad::operator/ (const Eigen::Matrix< fvar< T >, R, C > &v, const double c)
 
template<typename T , int R, int C>
Eigen::Matrix< fvar< T >, R, C > stan::agrad::operator/ (const Eigen::Matrix< double, R, C > &v, const fvar< T > &c)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2fwd_2matrix_2divide_8hpp_source.html b/doc/api/html/agrad_2fwd_2matrix_2divide_8hpp_source.html new file mode 100644 index 00000000000..c3644415d0f --- /dev/null +++ b/doc/api/html/agrad_2fwd_2matrix_2divide_8hpp_source.html @@ -0,0 +1,182 @@ + + + + + +Stan: src/stan/agrad/fwd/matrix/divide.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
divide.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__FWD__MATRIX__DIVIDE_HPP__
+
2 #define __STAN__AGRAD__FWD__MATRIX__DIVIDE_HPP__
+
3 
+
4 #include <vector>
+ +
6 #include <stan/agrad/fwd.hpp>
+ + + +
10 
+
11 namespace stan {
+
12  namespace agrad {
+
13 
+
14  template <typename T1, typename T2>
+
15  inline
+ +
17  divide(const T1& v, const T2& c) {
+
18  return v / c;
+
19  }
+
20 
+
21  template <typename T, int R, int C>
+
22  inline Eigen::Matrix<fvar<T>,R,C>
+
23  divide(const Eigen::Matrix<fvar<T>, R,C>& v, const fvar<T>& c) {
+
24  Eigen::Matrix<fvar<T>,R,C> res(v.rows(),v.cols());
+
25  for(int i = 0; i < v.rows(); i++) {
+
26  for(int j = 0; j < v.cols(); j++)
+
27  res(i,j) = v(i,j) / c;
+
28  }
+
29  return res;
+
30  }
+
31 
+
32  template <typename T, int R, int C>
+
33  inline Eigen::Matrix<fvar<T>,R,C>
+
34  divide(const Eigen::Matrix<fvar<T>, R,C>& v, const double c) {
+
35  Eigen::Matrix<fvar<T>,R,C>
+
36  res(v.rows(),v.cols());
+
37  for(int i = 0; i < v.rows(); i++) {
+
38  for(int j = 0; j < v.cols(); j++)
+
39  res(i,j) = v(i,j) / c;
+
40  }
+
41  return res;
+
42  }
+
43 
+
44  template <typename T, int R, int C>
+
45  inline Eigen::Matrix<fvar<T>,R,C>
+
46  divide(const Eigen::Matrix<double, R,C>& v, const fvar<T>& c) {
+
47  Eigen::Matrix<fvar<T>,R,C>
+
48  res(v.rows(),v.cols());
+
49  for(int i = 0; i < v.rows(); i++) {
+
50  for(int j = 0; j < v.cols(); j++)
+
51  res(i,j) = v(i,j) / c;
+
52  }
+
53  return res;
+
54  }
+
55 
+
56  template <typename T, int R, int C>
+
57  inline Eigen::Matrix<fvar<T>,R,C>
+
58  operator/(const Eigen::Matrix<fvar<T>, R,C>& v, const fvar<T>& c) {
+
59  return divide(v,c);
+
60  }
+
61 
+
62  template <typename T, int R, int C>
+
63  inline Eigen::Matrix<fvar<T>,R,C>
+
64  operator/(const Eigen::Matrix<fvar<T>, R,C>& v, const double c) {
+
65  return divide(v,c);
+
66  }
+
67 
+
68  template <typename T, int R, int C>
+
69  inline Eigen::Matrix<fvar<T>,R,C>
+
70  operator/(const Eigen::Matrix<double,R,C>& v, const fvar<T>& c) {
+
71  return divide(v,c);
+
72  }
+
73  }
+
74 }
+
75 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2fwd_2matrix_2dot__product_8hpp.html b/doc/api/html/agrad_2fwd_2matrix_2dot__product_8hpp.html new file mode 100644 index 00000000000..f177a41f417 --- /dev/null +++ b/doc/api/html/agrad_2fwd_2matrix_2dot__product_8hpp.html @@ -0,0 +1,169 @@ + + + + + +Stan: src/stan/agrad/fwd/matrix/dot_product.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
dot_product.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Functions

template<typename T , int R1, int C1, int R2, int C2>
fvar< T > stan::agrad::dot_product (const Eigen::Matrix< fvar< T >, R1, C1 > &v1, const Eigen::Matrix< fvar< T >, R2, C2 > &v2)
 
template<typename T , int R1, int C1, int R2, int C2>
fvar< T > stan::agrad::dot_product (const Eigen::Matrix< fvar< T >, R1, C1 > &v1, const Eigen::Matrix< double, R2, C2 > &v2)
 
template<typename T , int R1, int C1, int R2, int C2>
fvar< T > stan::agrad::dot_product (const Eigen::Matrix< double, R1, C1 > &v1, const Eigen::Matrix< fvar< T >, R2, C2 > &v2)
 
template<typename T , int R1, int C1, int R2, int C2>
fvar< T > stan::agrad::dot_product (const Eigen::Matrix< fvar< T >, R1, C1 > &v1, const Eigen::Matrix< fvar< T >, R2, C2 > &v2, size_type &length)
 
template<typename T , int R1, int C1, int R2, int C2>
fvar< T > stan::agrad::dot_product (const Eigen::Matrix< fvar< T >, R1, C1 > &v1, const Eigen::Matrix< double, R2, C2 > &v2, size_type &length)
 
template<typename T , int R1, int C1, int R2, int C2>
fvar< T > stan::agrad::dot_product (const Eigen::Matrix< double, R1, C1 > &v1, const Eigen::Matrix< fvar< T >, R2, C2 > &v2, size_type &length)
 
template<typename T >
fvar< T > stan::agrad::dot_product (const std::vector< fvar< T > > &v1, const std::vector< fvar< T > > &v2)
 
template<typename T >
fvar< T > stan::agrad::dot_product (const std::vector< double > &v1, const std::vector< fvar< T > > &v2)
 
template<typename T >
fvar< T > stan::agrad::dot_product (const std::vector< fvar< T > > &v1, const std::vector< double > &v2)
 
template<typename T >
fvar< T > stan::agrad::dot_product (const std::vector< fvar< T > > &v1, const std::vector< fvar< T > > &v2, size_type &length)
 
template<typename T >
fvar< T > stan::agrad::dot_product (const std::vector< double > &v1, const std::vector< fvar< T > > &v2, size_type &length)
 
template<typename T >
fvar< T > stan::agrad::dot_product (const std::vector< fvar< T > > &v1, const std::vector< double > &v2, size_type &length)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2fwd_2matrix_2dot__product_8hpp_source.html b/doc/api/html/agrad_2fwd_2matrix_2dot__product_8hpp_source.html new file mode 100644 index 00000000000..da6a1adb950 --- /dev/null +++ b/doc/api/html/agrad_2fwd_2matrix_2dot__product_8hpp_source.html @@ -0,0 +1,287 @@ + + + + + +Stan: src/stan/agrad/fwd/matrix/dot_product.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
dot_product.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__FWD__MATRIX__DOT_PRODUCT_HPP__
+
2 #define __STAN__AGRAD__FWD__MATRIX__DOT_PRODUCT_HPP__
+
3 
+
4 #include <vector>
+ + + + +
9 #include <stan/agrad/fwd.hpp>
+ + +
12 
+
13 namespace stan {
+
14  namespace agrad {
+
15 
+
16  //dot_product for vec (in matrix) * vec (in matrix); does all combos of row row, col col, row col, col row
+
17  template<typename T, int R1, int C1, int R2, int C2>
+
18  inline
+
19  fvar<T>
+
20  dot_product(const Eigen::Matrix<fvar<T>, R1, C1>& v1,
+
21  const Eigen::Matrix<fvar<T>, R2, C2>& v2) {
+
22  stan::math::validate_vector(v1,"dot_product");
+
23  stan::math::validate_vector(v2,"dot_product");
+
24  stan::math::validate_matching_sizes(v1,v2,"dot_product");
+
25 
+
26  fvar<T> ret(0,0);
+
27  for(size_type i = 0; i < v1.size(); i++)
+
28  ret += v1(i) * v2(i);
+
29  return ret;
+
30  }
+
31 
+
32  template<typename T, int R1, int C1, int R2, int C2>
+
33  inline
+
34  fvar<T>
+
35  dot_product(const Eigen::Matrix<fvar<T>, R1, C1>& v1,
+
36  const Eigen::Matrix<double, R2, C2>& v2) {
+
37  stan::math::validate_vector(v1,"dot_product");
+
38  stan::math::validate_vector(v2,"dot_product");
+
39  stan::math::validate_matching_sizes(v1,v2,"dot_product");
+
40 
+
41  fvar<T> ret(0,0);
+
42  for(size_type i = 0; i < v1.size(); i++)
+
43  ret += v1(i) * v2(i);
+
44  return ret;
+
45  }
+
46 
+
47  template<typename T, int R1, int C1, int R2, int C2>
+
48  inline
+
49  fvar<T>
+
50  dot_product(const Eigen::Matrix<double, R1, C1>& v1,
+
51  const Eigen::Matrix<fvar<T>, R2, C2>& v2) {
+
52  stan::math::validate_vector(v1,"dot_product");
+
53  stan::math::validate_vector(v2,"dot_product");
+
54  stan::math::validate_matching_sizes(v1,v2,"dot_product");
+
55 
+
56  fvar<T> ret(0,0);
+
57  for(size_type i = 0; i < v1.size(); i++)
+
58  ret += v1(i) * v2(i);
+
59  return ret;
+
60  }
+
61 
+
62  template<typename T, int R1,int C1, int R2, int C2>
+
63  inline
+
64  fvar<T>
+
65  dot_product(const Eigen::Matrix<fvar<T>, R1, C1>& v1,
+
66  const Eigen::Matrix<fvar<T>, R2, C2>& v2,
+
67  size_type& length) {
+
68  stan::math::validate_vector(v1,"dot_product");
+
69  stan::math::validate_vector(v2,"dot_product");
+
70 
+
71  fvar<T> ret(0,0);
+
72  for(size_type i = 0; i < length; i++)
+
73  ret += v1(i) * v2(i);
+
74  return ret;
+
75  }
+
76 
+
77  template<typename T, int R1,int C1, int R2, int C2>
+
78  inline
+
79  fvar<T>
+
80  dot_product(const Eigen::Matrix<fvar<T>, R1, C1>& v1,
+
81  const Eigen::Matrix<double, R2, C2>& v2,
+
82  size_type& length) {
+
83  stan::math::validate_vector(v1,"dot_product");
+
84  stan::math::validate_vector(v2,"dot_product");
+
85 
+
86  fvar<T> ret(0,0);
+
87  for(size_type i = 0; i < length; i++)
+
88  ret += v1(i) * v2(i);
+
89  return ret;
+
90  }
+
91 
+
92  template<typename T, int R1,int C1, int R2, int C2>
+
93  inline
+
94  fvar<T>
+
95  dot_product(const Eigen::Matrix<double, R1, C1>& v1,
+
96  const Eigen::Matrix<fvar<T>, R2, C2>& v2,
+
97  size_type& length) {
+
98  stan::math::validate_vector(v1,"dot_product");
+
99  stan::math::validate_vector(v2,"dot_product");
+
100 
+
101  fvar<T> ret(0,0);
+
102  for(size_type i = 0; i < length; i++)
+
103  ret += v1(i) * v2(i);
+
104  return ret;
+
105  }
+
106 
+
107  template<typename T>
+
108  inline
+
109  fvar<T>
+
110  dot_product(const std::vector<fvar<T> >& v1,
+
111  const std::vector<fvar<T> >& v2) {
+
112  stan::math::validate_matching_sizes(v1,v2,"dot_product");
+
113  fvar<T> ret(0,0);
+
114  for (size_t i = 0; i < v1.size(); i++)
+
115  ret += v1.at(i) * v2.at(i);
+
116  return ret;
+
117  }
+
118 
+
119  template<typename T>
+
120  inline
+
121  fvar<T>
+
122  dot_product(const std::vector<double>& v1,
+
123  const std::vector<fvar<T> >& v2) {
+
124  stan::math::validate_matching_sizes(v1,v2,"dot_product");
+
125  fvar<T> ret(0,0);
+
126  for (size_t i = 0; i < v1.size(); i++)
+
127  ret += v1.at(i) * v2.at(i);
+
128  return ret;
+
129  }
+
130 
+
131  template<typename T>
+
132  inline
+
133  fvar<T>
+
134  dot_product(const std::vector<fvar<T> >& v1,
+
135  const std::vector<double>& v2) {
+
136  stan::math::validate_matching_sizes(v1,v2,"dot_product");
+
137  fvar<T> ret(0,0);
+
138  for (size_t i = 0; i < v1.size(); i++)
+
139  ret += v1.at(i) * v2.at(i);
+
140  return ret;
+
141  }
+
142 
+
143  template<typename T>
+
144  inline
+
145  fvar<T>
+
146  dot_product(const std::vector<fvar<T> >& v1,
+
147  const std::vector<fvar<T> >& v2,
+
148  size_type& length) {
+
149  fvar<T> ret(0,0);
+
150  for(size_type i = 0; i < length; i++)
+
151  ret += v1.at(i) * v2.at(i);
+
152  return ret;
+
153  }
+
154 
+
155  template<typename T>
+
156  inline
+
157  fvar<T>
+
158  dot_product(const std::vector<double>& v1,
+
159  const std::vector<fvar<T> >& v2,
+
160  size_type& length) {
+
161  fvar<T> ret(0,0);
+
162  for(size_type i = 0; i < length; i++)
+
163  ret += v1.at(i) * v2.at(i);
+
164  return ret;
+
165  }
+
166 
+
167  template<typename T>
+
168  inline
+
169  fvar<T>
+
170  dot_product(const std::vector<fvar<T> >& v1,
+
171  const std::vector<double>& v2,
+
172  size_type& length) {
+
173  fvar<T> ret(0,0);
+
174  for(size_type i = 0; i < length; i++)
+
175  ret += v1.at(i) * v2.at(i);
+
176  return ret;
+
177  }
+
178  }
+
179 }
+
180 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2fwd_2matrix_2dot__self_8hpp.html b/doc/api/html/agrad_2fwd_2matrix_2dot__self_8hpp.html new file mode 100644 index 00000000000..b4e43c42645 --- /dev/null +++ b/doc/api/html/agrad_2fwd_2matrix_2dot__self_8hpp.html @@ -0,0 +1,134 @@ + + + + + +Stan: src/stan/agrad/fwd/matrix/dot_self.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
dot_self.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+ + + + +

+Functions

template<typename T , int R, int C>
fvar< T > stan::agrad::dot_self (const Eigen::Matrix< fvar< T >, R, C > &v)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2fwd_2matrix_2dot__self_8hpp_source.html b/doc/api/html/agrad_2fwd_2matrix_2dot__self_8hpp_source.html new file mode 100644 index 00000000000..d7e949e57af --- /dev/null +++ b/doc/api/html/agrad_2fwd_2matrix_2dot__self_8hpp_source.html @@ -0,0 +1,129 @@ + + + + + +Stan: src/stan/agrad/fwd/matrix/dot_self.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
dot_self.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__REV__MATRIX__DOT_SELF_HPP__
+
2 #define __STAN__AGRAD__REV__MATRIX__DOT_SELF_HPP__
+
3 
+
4 #include <vector>
+ + + + + +
10 
+
11 namespace stan {
+
12  namespace agrad {
+
13 
+
14  template<typename T, int R, int C>
+
15  inline fvar<T>
+
16  dot_self(const Eigen::Matrix<fvar<T>, R, C>& v) {
+
17  stan::math::validate_vector(v,"dot_self");
+
18  return dot_product(v, v);
+
19  }
+
20  }
+
21 }
+
22 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2fwd_2matrix_2inverse_8hpp.html b/doc/api/html/agrad_2fwd_2matrix_2inverse_8hpp.html new file mode 100644 index 00000000000..81d986ac1ed --- /dev/null +++ b/doc/api/html/agrad_2fwd_2matrix_2inverse_8hpp.html @@ -0,0 +1,138 @@ + + + + + +Stan: src/stan/agrad/fwd/matrix/inverse.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
inverse.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+ + + + +

+Functions

template<typename T , int R, int C>
Eigen::Matrix< fvar< T >, R, C > stan::agrad::inverse (const Eigen::Matrix< fvar< T >, R, C > &m)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2fwd_2matrix_2inverse_8hpp_source.html b/doc/api/html/agrad_2fwd_2matrix_2inverse_8hpp_source.html new file mode 100644 index 00000000000..8137dffddd0 --- /dev/null +++ b/doc/api/html/agrad_2fwd_2matrix_2inverse_8hpp_source.html @@ -0,0 +1,151 @@ + + + + + +Stan: src/stan/agrad/fwd/matrix/inverse.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
inverse.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__FWD__MATRIX__INVERSE_HPP__
+
2 #define __STAN__AGRAD__FWD__MATRIX__INVERSE_HPP__
+
3 
+
4 #include <vector>
+
5 #include <boost/math/tools/promotion.hpp>
+ + + + + + + + +
14 
+
15 namespace stan {
+
16  namespace agrad {
+
17 
+
18  template<typename T, int R,int C>
+
19  inline
+
20  Eigen::Matrix<fvar<T>,R,C>
+
21  inverse(const Eigen::Matrix<fvar<T>, R, C>& m) {
+ + +
24  using stan::math::inverse;
+
25  stan::math::validate_square(m, "inverse");
+
26  Eigen::Matrix<T,R,C> m_deriv(m.rows(), m.cols());
+
27  Eigen::Matrix<T,R,C> m_inv(m.rows(), m.cols());
+
28 
+
29  for(size_type i = 0; i < m.rows(); i++) {
+
30  for(size_type j = 0; j < m.cols(); j++) {
+
31  m_inv(i,j) = m(i,j).val_;
+
32  m_deriv(i,j) = m(i,j).d_;
+
33  }
+
34  }
+
35 
+
36  m_inv = stan::math::inverse(m_inv);
+
37 
+
38  m_deriv = -1 * multiply(multiply(m_inv, m_deriv), m_inv);
+
39 
+
40  return to_fvar(m_inv, m_deriv);
+
41  }
+
42  }
+
43 }
+
44 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2fwd_2matrix_2log__determinant_8hpp.html b/doc/api/html/agrad_2fwd_2matrix_2log__determinant_8hpp.html new file mode 100644 index 00000000000..d623772e04e --- /dev/null +++ b/doc/api/html/agrad_2fwd_2matrix_2log__determinant_8hpp.html @@ -0,0 +1,136 @@ + + + + + +Stan: src/stan/agrad/fwd/matrix/log_determinant.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
log_determinant.hpp File Reference
+
+
+
#include <vector>
+#include <boost/math/tools/promotion.hpp>
+#include <stan/math/matrix/Eigen.hpp>
+#include <stan/agrad/fwd/fvar.hpp>
+#include <stan/agrad/fwd/matrix/typedefs.hpp>
+#include <stan/agrad/fwd/matrix/determinant.hpp>
+#include <stan/agrad/fwd/functions/fabs.hpp>
+#include <stan/agrad/fwd/functions/log.hpp>
+
+

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+ + + + +

+Functions

template<typename T , int R, int C>
fvar< T > stan::agrad::log_determinant (const Eigen::Matrix< fvar< T >, R, C > &m)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2fwd_2matrix_2log__determinant_8hpp_source.html b/doc/api/html/agrad_2fwd_2matrix_2log__determinant_8hpp_source.html new file mode 100644 index 00000000000..2f971ca15c3 --- /dev/null +++ b/doc/api/html/agrad_2fwd_2matrix_2log__determinant_8hpp_source.html @@ -0,0 +1,133 @@ + + + + + +Stan: src/stan/agrad/fwd/matrix/log_determinant.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
log_determinant.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__FWD__MATRIX__LOG_DETERMINANT_HPP__
+
2 #define __STAN__AGRAD__FWD__MATRIX__LOG_DETERMINANT_HPP__
+
3 
+
4 #include <vector>
+
5 #include <boost/math/tools/promotion.hpp>
+ + + + + + +
12 
+
13 namespace stan {
+
14  namespace agrad {
+
15 
+
16  template<typename T, int R,int C>
+
17  inline
+
18  fvar<T>
+
19  log_determinant(const Eigen::Matrix<fvar<T>, R, C>& m) {
+
20  stan::math::validate_square(m, "log_determinant");
+
21 
+ +
23  }
+
24  }
+
25 }
+
26 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2fwd_2matrix_2log__softmax_8hpp.html b/doc/api/html/agrad_2fwd_2matrix_2log__softmax_8hpp.html new file mode 100644 index 00000000000..6e0f2b4a95c --- /dev/null +++ b/doc/api/html/agrad_2fwd_2matrix_2log__softmax_8hpp.html @@ -0,0 +1,134 @@ + + + + + +Stan: src/stan/agrad/fwd/matrix/log_softmax.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
log_softmax.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+ + + + +

+Functions

template<typename T >
Eigen::Matrix< fvar< T >
+, Eigen::Dynamic, 1 > 
stan::agrad::log_softmax (const Eigen::Matrix< fvar< T >, Eigen::Dynamic, 1 > &alpha)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2fwd_2matrix_2log__softmax_8hpp_source.html b/doc/api/html/agrad_2fwd_2matrix_2log__softmax_8hpp_source.html new file mode 100644 index 00000000000..f5cfbba5112 --- /dev/null +++ b/doc/api/html/agrad_2fwd_2matrix_2log__softmax_8hpp_source.html @@ -0,0 +1,166 @@ + + + + + +Stan: src/stan/agrad/fwd/matrix/log_softmax.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
log_softmax.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__FWD__MATRIX__LOG_SOFTMAX_HPP__
+
2 #define __STAN__AGRAD__FWD__MATRIX__LOG_SOFTMAX_HPP__
+
3 
+ + + + + +
9 
+
10 namespace stan {
+
11  namespace agrad {
+
12 
+
13  template <typename T>
+
14  inline
+
15  Eigen::Matrix<fvar<T>,Eigen::Dynamic,1>
+
16  log_softmax(const Eigen::Matrix<fvar<T>,Eigen::Dynamic,1>& alpha) {
+
17  using stan::math::softmax;
+ +
19  using Eigen::Matrix;
+
20  using Eigen::Dynamic;
+
21 
+
22  Matrix<T,Dynamic,1> alpha_t(alpha.size());
+
23  for (int k = 0; k < alpha.size(); ++k)
+
24  alpha_t(k) = alpha(k).val_;
+
25 
+
26  Matrix<T,Dynamic,1> softmax_alpha_t = softmax(alpha_t);
+
27  Matrix<T,Dynamic,1> log_softmax_alpha_t = log_softmax(alpha_t);
+
28 
+
29  Matrix<fvar<T>,Dynamic,1> log_softmax_alpha(alpha.size());
+
30  for (int k = 0; k < alpha.size(); ++k) {
+
31  log_softmax_alpha(k).val_ = log_softmax_alpha_t(k);
+
32  log_softmax_alpha(k).d_ = 0;
+
33  }
+
34 
+
35  // for each input position
+
36  for (int m = 0; m < alpha.size(); ++m) {
+
37  T negative_alpha_m_d_times_softmax_alpha_t_m
+
38  = - alpha(m).d_ * softmax_alpha_t(m);
+
39  // for each output position
+
40  for (int k = 0; k < alpha.size(); ++k) {
+
41  // chain from input to output
+
42  if (m == k)
+
43  log_softmax_alpha(k).d_
+
44  += alpha(m).d_
+
45  + negative_alpha_m_d_times_softmax_alpha_t_m;
+
46  else
+
47  log_softmax_alpha(k).d_
+
48  += negative_alpha_m_d_times_softmax_alpha_t_m;
+
49  }
+
50  }
+
51 
+
52  return log_softmax_alpha;
+
53  }
+
54 
+
55 
+
56  }
+
57 }
+
58 
+
59 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2fwd_2matrix_2log__sum__exp_8hpp.html b/doc/api/html/agrad_2fwd_2matrix_2log__sum__exp_8hpp.html new file mode 100644 index 00000000000..060b3c88b52 --- /dev/null +++ b/doc/api/html/agrad_2fwd_2matrix_2log__sum__exp_8hpp.html @@ -0,0 +1,132 @@ + + + + + +Stan: src/stan/agrad/fwd/matrix/log_sum_exp.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
log_sum_exp.hpp File Reference
+
+
+
#include <vector>
+#include <stan/agrad/fwd/fvar.hpp>
+#include <stan/math/functions/log_sum_exp.hpp>
+#include <stan/math/matrix/Eigen.hpp>
+
+

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+ + + + +

+Functions

template<typename T , int R, int C>
fvar< T > stan::agrad::log_sum_exp (const Eigen::Matrix< fvar< T >, R, C > &v)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2fwd_2matrix_2log__sum__exp_8hpp_source.html b/doc/api/html/agrad_2fwd_2matrix_2log__sum__exp_8hpp_source.html new file mode 100644 index 00000000000..bc6f5ed4e6f --- /dev/null +++ b/doc/api/html/agrad_2fwd_2matrix_2log__sum__exp_8hpp_source.html @@ -0,0 +1,142 @@ + + + + + +Stan: src/stan/agrad/fwd/matrix/log_sum_exp.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
log_sum_exp.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__FWD__MATRIX__LOG_SUM_EXP_HPP__
+
2 #define __STAN__AGRAD__FWD__MATRIX__LOG_SUM_EXP_HPP__
+
3 
+
4 #include <vector>
+ + + +
8 
+
9 namespace stan{
+
10 
+
11  namespace agrad{
+
12 
+
13  // FIXME: cut-and-paste from fwd/log_sum_exp.hpp; should
+
14  // be able to generalize
+
15  template <typename T, int R, int C>
+
16  fvar<T>
+
17  log_sum_exp(const Eigen::Matrix<fvar<T>,R,C>& v) {
+ +
19  using std::exp;
+
20  std::vector<T> vals(v.size());
+
21  for (int i = 0; i < v.size(); ++i)
+
22  vals[i] = v[i].val_;
+
23  T deriv(0.0);
+
24  T denominator(0.0);
+
25  for (size_t i = 0; i < v.size(); ++i) {
+
26  T exp_vi = exp(vals[i]);
+
27  denominator += exp_vi;
+
28  deriv += v[i].d_ * exp_vi;
+
29  }
+
30  return fvar<T>(log_sum_exp(vals), deriv / denominator);
+
31  }
+
32 
+
33  }
+
34 }
+
35 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2fwd_2matrix_2mdivide__left_8hpp.html b/doc/api/html/agrad_2fwd_2matrix_2mdivide__left_8hpp.html new file mode 100644 index 00000000000..4d1a794598c --- /dev/null +++ b/doc/api/html/agrad_2fwd_2matrix_2mdivide__left_8hpp.html @@ -0,0 +1,147 @@ + + + + + +Stan: src/stan/agrad/fwd/matrix/mdivide_left.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
mdivide_left.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+ + + + + + + + + + +

+Functions

template<typename T , int R1, int C1, int R2, int C2>
Eigen::Matrix< fvar< T >, R1, C2 > stan::agrad::mdivide_left (const Eigen::Matrix< fvar< T >, R1, C1 > &A, const Eigen::Matrix< fvar< T >, R2, C2 > &b)
 
template<typename T , int R1, int C1, int R2, int C2>
Eigen::Matrix< fvar< T >, R1, C2 > stan::agrad::mdivide_left (const Eigen::Matrix< double, R1, C1 > &A, const Eigen::Matrix< fvar< T >, R2, C2 > &b)
 
template<typename T , int R1, int C1, int R2, int C2>
Eigen::Matrix< fvar< T >, R1, C2 > stan::agrad::mdivide_left (const Eigen::Matrix< fvar< T >, R1, C1 > &A, const Eigen::Matrix< double, R2, C2 > &b)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2fwd_2matrix_2mdivide__left_8hpp_source.html b/doc/api/html/agrad_2fwd_2matrix_2mdivide__left_8hpp_source.html new file mode 100644 index 00000000000..0cd5792c7c0 --- /dev/null +++ b/doc/api/html/agrad_2fwd_2matrix_2mdivide__left_8hpp_source.html @@ -0,0 +1,231 @@ + + + + + +Stan: src/stan/agrad/fwd/matrix/mdivide_left.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
mdivide_left.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__FWD__MATRIX__COLUMNS_MDIVIDE_LEFT_HPP__
+
2 #define __STAN__AGRAD__FWD__MATRIX__COLUMNS_MDIVIDE_LEFT_HPP__
+
3 
+
4 #include <vector>
+ + + + + + + + + + + + + +
18 
+
19 namespace stan {
+
20  namespace agrad {
+
21 
+
22  template <typename T, int R1,int C1,int R2,int C2>
+
23  inline
+
24  Eigen::Matrix<fvar<T>,R1,C2>
+
25  mdivide_left(const Eigen::Matrix<fvar<T>,R1,C1> &A,
+
26  const Eigen::Matrix<fvar<T>,R2,C2> &b) {
+
27 
+
28  using stan::math::multiply;
+ +
30  stan::math::validate_square(A,"mdivide_left");
+
31  stan::math::validate_multiplicable(A,b,"mdivide_left");
+
32 
+
33  Eigen::Matrix<T,R1,C2> inv_A_mult_b(A.rows(),b.cols());
+
34  Eigen::Matrix<T,R1,C2> inv_A_mult_deriv_b(A.rows(),b.cols());
+
35  Eigen::Matrix<T,R1,C1> inv_A_mult_deriv_A(A.rows(),A.cols());
+
36  Eigen::Matrix<T,R1,C1> val_A(A.rows(),A.cols());
+
37  Eigen::Matrix<T,R1,C1> deriv_A(A.rows(),A.cols());
+
38  Eigen::Matrix<T,R2,C2> val_b(b.rows(),b.cols());
+
39  Eigen::Matrix<T,R2,C2> deriv_b(b.rows(),b.cols());
+
40 
+
41  for (int j = 0; j < A.cols(); j++) {
+
42  for(int i = 0; i < A.rows(); i++) {
+
43  val_A(i,j) = A(i,j).val_;
+
44  deriv_A(i,j) = A(i,j).d_;
+
45  }
+
46  }
+
47 
+
48  for (int j = 0; j < b.cols(); j++) {
+
49  for(int i = 0; i < b.rows(); i++) {
+
50  val_b(i,j) = b(i,j).val_;
+
51  deriv_b(i,j) = b(i,j).d_;
+
52  }
+
53  }
+
54 
+
55  inv_A_mult_b = mdivide_left(val_A, val_b);
+
56  inv_A_mult_deriv_b = mdivide_left(val_A, deriv_b);
+
57  inv_A_mult_deriv_A = mdivide_left(val_A, deriv_A);
+
58 
+
59  Eigen::Matrix<T,R1,C2> deriv(A.rows(), b.cols());
+
60  deriv = inv_A_mult_deriv_b - multiply(inv_A_mult_deriv_A, inv_A_mult_b);
+
61 
+
62  return stan::agrad::to_fvar(inv_A_mult_b, deriv);
+
63  }
+
64 
+
65  template <typename T, int R1,int C1,int R2,int C2>
+
66  inline
+
67  Eigen::Matrix<fvar<T>,R1,C2>
+
68  mdivide_left(const Eigen::Matrix<double,R1,C1> &A,
+
69  const Eigen::Matrix<fvar<T>,R2,C2> &b) {
+
70 
+
71  using stan::math::multiply;
+ +
73  stan::math::validate_square(A,"mdivide_left");
+
74  stan::math::validate_multiplicable(A,b,"mdivide_left");
+
75 
+
76  Eigen::Matrix<T,R2,C2> val_b(b.rows(),b.cols());
+
77  Eigen::Matrix<T,R2,C2> deriv_b(b.rows(),b.cols());
+
78 
+
79  for (int j = 0; j < b.cols(); j++) {
+
80  for(int i = 0; i < b.rows(); i++) {
+
81  val_b(i,j) = b(i,j).val_;
+
82  deriv_b(i,j) = b(i,j).d_;
+
83  }
+
84  }
+
85 
+
86  return stan::agrad::to_fvar(mdivide_left(A, val_b),
+
87  mdivide_left(A, deriv_b));
+
88  }
+
89 
+
90  template <typename T, int R1,int C1,int R2,int C2>
+
91  inline
+
92  Eigen::Matrix<fvar<T>,R1,C2>
+
93  mdivide_left(const Eigen::Matrix<fvar<T>,R1,C1> &A,
+
94  const Eigen::Matrix<double,R2,C2> &b) {
+
95 
+
96  using stan::math::multiply;
+ +
98  stan::math::validate_square(A,"mdivide_left");
+
99  stan::math::validate_multiplicable(A,b,"mdivide_left");
+
100 
+
101  Eigen::Matrix<T,R1,C2>
+
102  inv_A_mult_b(A.rows(),b.cols());
+
103  Eigen::Matrix<T,R1,C1> inv_A_mult_deriv_A(A.rows(),A.cols());
+
104  Eigen::Matrix<T,R1,C1> val_A(A.rows(),A.cols());
+
105  Eigen::Matrix<T,R1,C1> deriv_A(A.rows(),A.cols());
+
106 
+
107  for (int j = 0; j < A.cols(); j++) {
+
108  for(int i = 0; i < A.rows(); i++) {
+
109  val_A(i,j) = A(i,j).val_;
+
110  deriv_A(i,j) = A(i,j).d_;
+
111  }
+
112  }
+
113 
+
114  inv_A_mult_b = mdivide_left(val_A, b);
+
115  inv_A_mult_deriv_A = mdivide_left(val_A, deriv_A);
+
116 
+
117  Eigen::Matrix<T,R1,C2> deriv(A.rows(), b.cols());
+
118  deriv = -multiply(inv_A_mult_deriv_A, inv_A_mult_b);
+
119 
+
120  return stan::agrad::to_fvar(inv_A_mult_b, deriv);
+
121  }
+
122  }
+
123 }
+
124 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2fwd_2matrix_2mdivide__left__tri__low_8hpp.html b/doc/api/html/agrad_2fwd_2matrix_2mdivide__left__tri__low_8hpp.html new file mode 100644 index 00000000000..6f3ea854395 --- /dev/null +++ b/doc/api/html/agrad_2fwd_2matrix_2mdivide__left__tri__low_8hpp.html @@ -0,0 +1,144 @@ + + + + + +Stan: src/stan/agrad/fwd/matrix/mdivide_left_tri_low.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
mdivide_left_tri_low.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+ + + + + + + + + + +

+Functions

template<typename T , int R1, int C1, int R2, int C2>
Eigen::Matrix< fvar< T >, R1, C1 > stan::agrad::mdivide_left_tri_low (const Eigen::Matrix< fvar< T >, R1, C1 > &A, const Eigen::Matrix< fvar< T >, R2, C2 > &b)
 
template<typename T , int R1, int C1, int R2, int C2>
Eigen::Matrix< fvar< T >, R1, C1 > stan::agrad::mdivide_left_tri_low (const Eigen::Matrix< double, R1, C1 > &A, const Eigen::Matrix< fvar< T >, R2, C2 > &b)
 
template<typename T , int R1, int C1, int R2, int C2>
Eigen::Matrix< fvar< T >, R1, C1 > stan::agrad::mdivide_left_tri_low (const Eigen::Matrix< fvar< T >, R1, C1 > &A, const Eigen::Matrix< double, R2, C2 > &b)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2fwd_2matrix_2mdivide__left__tri__low_8hpp_source.html b/doc/api/html/agrad_2fwd_2matrix_2mdivide__left__tri__low_8hpp_source.html new file mode 100644 index 00000000000..066383dde25 --- /dev/null +++ b/doc/api/html/agrad_2fwd_2matrix_2mdivide__left__tri__low_8hpp_source.html @@ -0,0 +1,243 @@ + + + + + +Stan: src/stan/agrad/fwd/matrix/mdivide_left_tri_low.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
mdivide_left_tri_low.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__FWD__MATRIX__MDIVIDE_LEFT_TRI_LOW_HPP__
+
2 #define __STAN__AGRAD__FWD__MATRIX__MDIVIDE_LEFT_TRI_LOW_HPP__
+
3 
+
4 #include <vector>
+ + + + + + + + +
13 #include <stan/agrad/fwd/fvar.hpp>
+
14 
+
15 namespace stan {
+
16  namespace agrad {
+
17 
+
18  template<typename T,int R1, int C1, int R2, int C2>
+
19  inline
+
20  Eigen::Matrix<fvar<T>,R1,C1>
+
21  mdivide_left_tri_low(const Eigen::Matrix<fvar<T>, R1, C1>& A,
+
22  const Eigen::Matrix<fvar<T>, R2, C2>& b) {
+
23  using stan::math::multiply;
+ +
25  stan::math::validate_square(A,"mdivide_left");
+
26  stan::math::validate_multiplicable(A,b,"mdivide_left");
+
27 
+
28  Eigen::Matrix<T,R1,C2> inv_A_mult_b(A.rows(),b.cols());
+
29  Eigen::Matrix<T,R1,C2> inv_A_mult_deriv_b(A.rows(),b.cols());
+
30  Eigen::Matrix<T,R1,C1> inv_A_mult_deriv_A(A.rows(),A.cols());
+
31  Eigen::Matrix<T,R1,C1> val_A(A.rows(),A.cols());
+
32  Eigen::Matrix<T,R1,C1> deriv_A(A.rows(),A.cols());
+
33  Eigen::Matrix<T,R2,C2> val_b(b.rows(),b.cols());
+
34  Eigen::Matrix<T,R2,C2> deriv_b(b.rows(),b.cols());
+
35  val_A.setZero();
+
36  deriv_A.setZero();
+
37 
+
38  for (size_type j = 0; j < A.cols(); j++) {
+
39  for(size_type i = j; i < A.rows(); i++) {
+
40  val_A(i,j) = A(i,j).val_;
+
41  deriv_A(i,j) = A(i,j).d_;
+
42  }
+
43  }
+
44 
+
45  for (size_type j = 0; j < b.cols(); j++) {
+
46  for(size_type i = 0; i < b.rows(); i++) {
+
47  val_b(i,j) = b(i,j).val_;
+
48  deriv_b(i,j) = b(i,j).d_;
+
49  }
+
50  }
+
51 
+
52  inv_A_mult_b = mdivide_left(val_A, val_b);
+
53  inv_A_mult_deriv_b = mdivide_left(val_A, deriv_b);
+
54  inv_A_mult_deriv_A = mdivide_left(val_A, deriv_A);
+
55 
+
56  Eigen::Matrix<T,R1,C2> deriv(A.rows(), b.cols());
+
57  deriv = inv_A_mult_deriv_b - multiply(inv_A_mult_deriv_A, inv_A_mult_b);
+
58 
+
59  return stan::agrad::to_fvar(inv_A_mult_b, deriv);
+
60  }
+
61 
+
62  template<typename T,int R1, int C1, int R2, int C2>
+
63  inline
+
64  Eigen::Matrix<fvar<T>,R1,C1>
+
65  mdivide_left_tri_low(const Eigen::Matrix<double, R1, C1>& A,
+
66  const Eigen::Matrix<fvar<T>, R2, C2>& b) {
+
67  using stan::math::multiply;
+ +
69  stan::math::validate_square(A,"mdivide_left");
+
70  stan::math::validate_multiplicable(A,b,"mdivide_left");
+
71 
+
72  Eigen::Matrix<T,R1,C2> inv_A_mult_b(A.rows(),b.cols());
+
73  Eigen::Matrix<T,R1,C2> inv_A_mult_deriv_b(A.rows(),b.cols());
+
74  Eigen::Matrix<T,R2,C2> val_b(b.rows(),b.cols());
+
75  Eigen::Matrix<T,R2,C2> deriv_b(b.rows(),b.cols());
+
76  Eigen::Matrix<double,R1,C1> val_A(A.rows(),A.cols());
+
77  val_A.setZero();
+
78 
+
79  for (size_type j = 0; j < A.cols(); j++) {
+
80  for(size_type i = j; i < A.rows(); i++) {
+
81  val_A(i,j) = A(i,j);
+
82  }
+
83  }
+
84 
+
85  for (size_type j = 0; j < b.cols(); j++) {
+
86  for(size_type i = 0; i < b.rows(); i++) {
+
87  val_b(i,j) = b(i,j).val_;
+
88  deriv_b(i,j) = b(i,j).d_;
+
89  }
+
90  }
+
91 
+
92  inv_A_mult_b = mdivide_left(val_A, val_b);
+
93  inv_A_mult_deriv_b = mdivide_left(val_A, deriv_b);
+
94 
+
95  Eigen::Matrix<T,R1,C2> deriv(A.rows(), b.cols());
+
96  deriv = inv_A_mult_deriv_b;
+
97 
+
98  return stan::agrad::to_fvar(inv_A_mult_b, deriv);
+
99  }
+
100 
+
101  template<typename T,int R1, int C1, int R2, int C2>
+
102  inline
+
103  Eigen::Matrix<fvar<T>,R1,C1>
+
104  mdivide_left_tri_low(const Eigen::Matrix<fvar<T>, R1, C1>& A,
+
105  const Eigen::Matrix<double, R2, C2>& b) {
+
106  using stan::math::multiply;
+ +
108  stan::math::validate_square(A,"mdivide_left");
+
109  stan::math::validate_multiplicable(A,b,"mdivide_left");
+
110 
+
111  Eigen::Matrix<T,R1,C2>
+
112  inv_A_mult_b(A.rows(),b.cols());
+
113  Eigen::Matrix<T,R1,C1> inv_A_mult_deriv_A(A.rows(),A.cols());
+
114  Eigen::Matrix<T,R1,C1> val_A(A.rows(),A.cols());
+
115  Eigen::Matrix<T,R1,C1> deriv_A(A.rows(),A.cols());
+
116  val_A.setZero();
+
117  deriv_A.setZero();
+
118 
+
119  for (size_type j = 0; j < A.cols(); j++) {
+
120  for(size_type i = j; i < A.rows(); i++) {
+
121  val_A(i,j) = A(i,j).val_;
+
122  deriv_A(i,j) = A(i,j).d_;
+
123  }
+
124  }
+
125 
+
126  inv_A_mult_b = mdivide_left(val_A, b);
+
127  inv_A_mult_deriv_A = mdivide_left(val_A, deriv_A);
+
128 
+
129  Eigen::Matrix<T,R1,C2> deriv(A.rows(), b.cols());
+
130  deriv = -multiply(inv_A_mult_deriv_A, inv_A_mult_b);
+
131 
+
132  return stan::agrad::to_fvar(inv_A_mult_b, deriv);
+
133  }
+
134  }
+
135 }
+
136 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2fwd_2matrix_2mdivide__right_8hpp.html b/doc/api/html/agrad_2fwd_2matrix_2mdivide__right_8hpp.html new file mode 100644 index 00000000000..f5113168783 --- /dev/null +++ b/doc/api/html/agrad_2fwd_2matrix_2mdivide__right_8hpp.html @@ -0,0 +1,143 @@ + + + + + +Stan: src/stan/agrad/fwd/matrix/mdivide_right.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
mdivide_right.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+ + + + + + + + + + +

+Functions

template<typename T , int R1, int C1, int R2, int C2>
Eigen::Matrix< fvar< T >, R1, C2 > stan::agrad::mdivide_right (const Eigen::Matrix< fvar< T >, R1, C1 > &A, const Eigen::Matrix< fvar< T >, R2, C2 > &b)
 
template<typename T , int R1, int C1, int R2, int C2>
Eigen::Matrix< fvar< T >, R1, C2 > stan::agrad::mdivide_right (const Eigen::Matrix< fvar< T >, R1, C1 > &A, const Eigen::Matrix< double, R2, C2 > &b)
 
template<typename T , int R1, int C1, int R2, int C2>
Eigen::Matrix< fvar< T >, R1, C2 > stan::agrad::mdivide_right (const Eigen::Matrix< double, R1, C1 > &A, const Eigen::Matrix< fvar< T >, R2, C2 > &b)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2fwd_2matrix_2mdivide__right_8hpp_source.html b/doc/api/html/agrad_2fwd_2matrix_2mdivide__right_8hpp_source.html new file mode 100644 index 00000000000..47b4da37992 --- /dev/null +++ b/doc/api/html/agrad_2fwd_2matrix_2mdivide__right_8hpp_source.html @@ -0,0 +1,228 @@ + + + + + +Stan: src/stan/agrad/fwd/matrix/mdivide_right.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
mdivide_right.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__FWD__MATRIX__COLUMNS_MDIVIDE_RIGHT_HPP__
+
2 #define __STAN__AGRAD__FWD__MATRIX__COLUMNS_MDIVIDE_RIGHT_HPP__
+
3 
+
4 #include <vector>
+ + + + + + + + +
13 
+
14 namespace stan {
+
15  namespace agrad {
+
16 
+
17  template <typename T, int R1,int C1,int R2,int C2>
+
18  inline
+
19  Eigen::Matrix<fvar<T>,R1,C2>
+
20  mdivide_right(const Eigen::Matrix<fvar<T>,R1,C1> &A,
+
21  const Eigen::Matrix<fvar<T>,R2,C2> &b) {
+
22 
+
23  using stan::math::multiply;
+ +
25  stan::math::validate_square(b,"mdivide_right");
+
26  stan::math::validate_multiplicable(A,b,"mdivide_right");
+
27 
+
28  Eigen::Matrix<T,R1,C2> A_mult_inv_b(A.rows(),b.cols());
+
29  Eigen::Matrix<T,R1,C2> deriv_A_mult_inv_b(A.rows(),b.cols());
+
30  Eigen::Matrix<T,R2,C2> deriv_b_mult_inv_b(b.rows(),b.cols());
+
31  Eigen::Matrix<T,R1,C1> val_A(A.rows(),A.cols());
+
32  Eigen::Matrix<T,R1,C1> deriv_A(A.rows(),A.cols());
+
33  Eigen::Matrix<T,R2,C2> val_b(b.rows(),b.cols());
+
34  Eigen::Matrix<T,R2,C2> deriv_b(b.rows(),b.cols());
+
35 
+
36  for (int j = 0; j < A.cols(); j++) {
+
37  for(int i = 0; i < A.rows(); i++) {
+
38  val_A(i,j) = A(i,j).val_;
+
39  deriv_A(i,j) = A(i,j).d_;
+
40  }
+
41  }
+
42 
+
43  for (int j = 0; j < b.cols(); j++) {
+
44  for(int i = 0; i < b.rows(); i++) {
+
45  val_b(i,j) = b(i,j).val_;
+
46  deriv_b(i,j) = b(i,j).d_;
+
47  }
+
48  }
+
49 
+
50  A_mult_inv_b = mdivide_right(val_A, val_b);
+
51  deriv_A_mult_inv_b = mdivide_right(deriv_A, val_b);
+
52  deriv_b_mult_inv_b = mdivide_right(deriv_b, val_b);
+
53 
+
54  Eigen::Matrix<T,R1,C2> deriv(A.rows(), b.cols());
+
55  deriv = deriv_A_mult_inv_b - multiply(A_mult_inv_b, deriv_b_mult_inv_b);
+
56 
+
57  return stan::agrad::to_fvar(A_mult_inv_b, deriv);
+
58  }
+
59 
+
60  template <typename T, int R1,int C1,int R2,int C2>
+
61  inline
+
62  Eigen::Matrix<fvar<T>,R1,C2>
+
63  mdivide_right(const Eigen::Matrix<fvar<T>,R1,C1> &A,
+
64  const Eigen::Matrix<double,R2,C2> &b) {
+
65 
+
66  using stan::math::multiply;
+ +
68  stan::math::validate_square(b,"mdivide_right");
+
69  stan::math::validate_multiplicable(A,b,"mdivide_right");
+
70 
+
71  Eigen::Matrix<T,R2,C2> deriv_b_mult_inv_b(b.rows(),b.cols());
+
72  Eigen::Matrix<T,R1,C1> val_A(A.rows(),A.cols());
+
73  Eigen::Matrix<T,R1,C1> deriv_A(A.rows(),A.cols());
+
74 
+
75  for (int j = 0; j < A.cols(); j++) {
+
76  for(int i = 0; i < A.rows(); i++) {
+
77  val_A(i,j) = A(i,j).val_;
+
78  deriv_A(i,j) = A(i,j).d_;
+
79  }
+
80  }
+
81 
+
82  return stan::agrad::to_fvar(mdivide_right(val_A, b),
+
83  mdivide_right(deriv_A, b));
+
84  }
+
85 
+
86  template <typename T, int R1,int C1,int R2,int C2>
+
87  inline
+
88  Eigen::Matrix<fvar<T>,R1,C2>
+
89  mdivide_right(const Eigen::Matrix<double,R1,C1> &A,
+
90  const Eigen::Matrix<fvar<T>,R2,C2> &b) {
+
91 
+
92  using stan::math::multiply;
+ +
94  stan::math::validate_square(b,"mdivide_right");
+
95  stan::math::validate_multiplicable(A,b,"mdivide_right");
+
96 
+
97  Eigen::Matrix<T,R1,C2>
+
98  A_mult_inv_b(A.rows(),b.cols());
+
99  Eigen::Matrix<T,R2,C2> deriv_b_mult_inv_b(b.rows(),b.cols());
+
100  Eigen::Matrix<T,R2,C2> val_b(b.rows(),b.cols());
+
101  Eigen::Matrix<T,R2,C2> deriv_b(b.rows(),b.cols());
+
102 
+
103  for (int j = 0; j < b.cols(); j++) {
+
104  for(int i = 0; i < b.rows(); i++) {
+
105  val_b(i,j) = b(i,j).val_;
+
106  deriv_b(i,j) = b(i,j).d_;
+
107  }
+
108  }
+
109 
+
110  A_mult_inv_b = mdivide_right(A, val_b);
+
111  deriv_b_mult_inv_b = mdivide_right(deriv_b, val_b);
+
112 
+
113  Eigen::Matrix<T,R1,C2>
+
114  deriv(A.rows(), b.cols());
+
115  deriv = -multiply(A_mult_inv_b, deriv_b_mult_inv_b);
+
116 
+
117  return stan::agrad::to_fvar(A_mult_inv_b, deriv);
+
118  }
+
119  }
+
120 }
+
121 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2fwd_2matrix_2mdivide__right__tri__low_8hpp.html b/doc/api/html/agrad_2fwd_2matrix_2mdivide__right__tri__low_8hpp.html new file mode 100644 index 00000000000..f6d82c00b7a --- /dev/null +++ b/doc/api/html/agrad_2fwd_2matrix_2mdivide__right__tri__low_8hpp.html @@ -0,0 +1,144 @@ + + + + + +Stan: src/stan/agrad/fwd/matrix/mdivide_right_tri_low.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
mdivide_right_tri_low.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+ + + + + + + + + + +

+Functions

template<typename T , int R1, int C1, int R2, int C2>
Eigen::Matrix< fvar< T >, R1, C1 > stan::agrad::mdivide_right_tri_low (const Eigen::Matrix< fvar< T >, R1, C1 > &A, const Eigen::Matrix< fvar< T >, R2, C2 > &b)
 
template<typename T , int R1, int C1, int R2, int C2>
Eigen::Matrix< fvar< T >, R1, C2 > stan::agrad::mdivide_right_tri_low (const Eigen::Matrix< fvar< T >, R1, C1 > &A, const Eigen::Matrix< double, R2, C2 > &b)
 
template<typename T , int R1, int C1, int R2, int C2>
Eigen::Matrix< fvar< T >, R1, C2 > stan::agrad::mdivide_right_tri_low (const Eigen::Matrix< double, R1, C1 > &A, const Eigen::Matrix< fvar< T >, R2, C2 > &b)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2fwd_2matrix_2mdivide__right__tri__low_8hpp_source.html b/doc/api/html/agrad_2fwd_2matrix_2mdivide__right__tri__low_8hpp_source.html new file mode 100644 index 00000000000..68b48ed7e4c --- /dev/null +++ b/doc/api/html/agrad_2fwd_2matrix_2mdivide__right__tri__low_8hpp_source.html @@ -0,0 +1,240 @@ + + + + + +Stan: src/stan/agrad/fwd/matrix/mdivide_right_tri_low.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
mdivide_right_tri_low.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__FWD__MATRIX__MDIVIDE_RIGHT_TRI_LOW_HPP__
+
2 #define __STAN__AGRAD__FWD__MATRIX__MDIVIDE_RIGHT_TRI_LOW_HPP__
+
3 
+
4 #include <vector>
+ + + + + + + + +
13 #include <stan/agrad/fwd/fvar.hpp>
+
14 
+
15 namespace stan {
+
16  namespace agrad {
+
17 
+
18  template<typename T,int R1, int C1, int R2, int C2>
+
19  inline
+
20  Eigen::Matrix<fvar<T>,R1,C1>
+
21  mdivide_right_tri_low(const Eigen::Matrix<fvar<T>, R1, C1>& A,
+
22  const Eigen::Matrix<fvar<T>, R2, C2>& b) {
+
23  using stan::math::multiply;
+ +
25  stan::math::validate_square(b,"mdivide_right");
+
26  stan::math::validate_multiplicable(A,b,"mdivide_right");
+
27 
+
28  Eigen::Matrix<T,R1,C2> A_mult_inv_b(A.rows(),b.cols());
+
29  Eigen::Matrix<T,R1,C2> deriv_A_mult_inv_b(A.rows(),b.cols());
+
30  Eigen::Matrix<T,R2,C2> deriv_b_mult_inv_b(b.rows(),b.cols());
+
31  Eigen::Matrix<T,R1,C1> val_A(A.rows(),A.cols());
+
32  Eigen::Matrix<T,R1,C1> deriv_A(A.rows(),A.cols());
+
33  Eigen::Matrix<T,R2,C2> val_b(b.rows(),b.cols());
+
34  Eigen::Matrix<T,R2,C2> deriv_b(b.rows(),b.cols());
+
35  val_b.setZero();
+
36  deriv_b.setZero();
+
37 
+
38  for (size_type j = 0; j < A.cols(); j++) {
+
39  for(size_type i = 0; i < A.rows(); i++) {
+
40  val_A(i,j) = A(i,j).val_;
+
41  deriv_A(i,j) = A(i,j).d_;
+
42  }
+
43  }
+
44 
+
45  for (size_type j = 0; j < b.cols(); j++) {
+
46  for(size_type i = j; i < b.rows(); i++) {
+
47  val_b(i,j) = b(i,j).val_;
+
48  deriv_b(i,j) = b(i,j).d_;
+
49  }
+
50  }
+
51 
+
52  A_mult_inv_b = mdivide_right(val_A, val_b);
+
53  deriv_A_mult_inv_b = mdivide_right(deriv_A, val_b);
+
54  deriv_b_mult_inv_b = mdivide_right(deriv_b, val_b);
+
55 
+
56  Eigen::Matrix<T,R1,C2> deriv(A.rows(), b.cols());
+
57  deriv = deriv_A_mult_inv_b - multiply(A_mult_inv_b, deriv_b_mult_inv_b);
+
58 
+
59  return stan::agrad::to_fvar(A_mult_inv_b, deriv);
+
60  }
+
61 
+
62  template <typename T, int R1,int C1,int R2,int C2>
+
63  inline
+
64  Eigen::Matrix<fvar<T>,R1,C2>
+
65  mdivide_right_tri_low(const Eigen::Matrix<fvar<T>,R1,C1> &A,
+
66  const Eigen::Matrix<double,R2,C2> &b) {
+
67 
+
68  using stan::math::multiply;
+ +
70  stan::math::validate_square(b,"mdivide_right");
+
71  stan::math::validate_multiplicable(A,b,"mdivide_right");
+
72 
+
73  Eigen::Matrix<T,R2,C2> deriv_b_mult_inv_b(b.rows(),b.cols());
+
74  Eigen::Matrix<T,R1,C1> val_A(A.rows(),A.cols());
+
75  Eigen::Matrix<T,R1,C1> deriv_A(A.rows(),A.cols());
+
76  Eigen::Matrix<T,R2,C2> val_b(b.rows(),b.cols());
+
77  val_b.setZero();
+
78 
+
79  for (int j = 0; j < A.cols(); j++) {
+
80  for(int i = 0; i < A.rows(); i++) {
+
81  val_A(i,j) = A(i,j).val_;
+
82  deriv_A(i,j) = A(i,j).d_;
+
83  }
+
84  }
+
85 
+
86  for (size_type j = 0; j < b.cols(); j++) {
+
87  for(size_type i = j; i < b.rows(); i++) {
+
88  val_b(i,j) = b(i,j);
+
89  }
+
90  }
+
91 
+
92  return stan::agrad::to_fvar(mdivide_right(val_A, val_b),
+
93  mdivide_right(deriv_A, val_b));
+
94  }
+
95 
+
96  template <typename T, int R1,int C1,int R2,int C2>
+
97  inline
+
98  Eigen::Matrix<fvar<T>,R1,C2>
+
99  mdivide_right_tri_low(const Eigen::Matrix<double,R1,C1> &A,
+
100  const Eigen::Matrix<fvar<T>,R2,C2> &b) {
+
101 
+
102  using stan::math::multiply;
+ +
104  stan::math::validate_square(b,"mdivide_right");
+
105  stan::math::validate_multiplicable(A,b,"mdivide_right");
+
106 
+
107  Eigen::Matrix<T,R1,C2>
+
108  A_mult_inv_b(A.rows(),b.cols());
+
109  Eigen::Matrix<T,R2,C2> deriv_b_mult_inv_b(b.rows(),b.cols());
+
110  Eigen::Matrix<T,R2,C2> val_b(b.rows(),b.cols());
+
111  Eigen::Matrix<T,R2,C2> deriv_b(b.rows(),b.cols());
+
112  val_b.setZero();
+
113  deriv_b.setZero();
+
114 
+
115  for (int j = 0; j < b.cols(); j++) {
+
116  for(int i = j; i < b.rows(); i++) {
+
117  val_b(i,j) = b(i,j).val_;
+
118  deriv_b(i,j) = b(i,j).d_;
+
119  }
+
120  }
+
121 
+
122  A_mult_inv_b = mdivide_right(A, val_b);
+
123  deriv_b_mult_inv_b = mdivide_right(deriv_b, val_b);
+
124 
+
125  Eigen::Matrix<T,R1,C2>
+
126  deriv(A.rows(), b.cols());
+
127  deriv = -multiply(A_mult_inv_b, deriv_b_mult_inv_b);
+
128 
+
129  return stan::agrad::to_fvar(A_mult_inv_b, deriv);
+
130  }
+
131  }
+
132 }
+
133 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2fwd_2matrix_2multiply_8hpp.html b/doc/api/html/agrad_2fwd_2matrix_2multiply_8hpp.html new file mode 100644 index 00000000000..c76d2f8cb3b --- /dev/null +++ b/doc/api/html/agrad_2fwd_2matrix_2multiply_8hpp.html @@ -0,0 +1,171 @@ + + + + + +Stan: src/stan/agrad/fwd/matrix/multiply.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
multiply.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Functions

template<typename T , int R1, int C1>
Eigen::Matrix< fvar< T >, R1, C1 > stan::agrad::multiply (const Eigen::Matrix< fvar< T >, R1, C1 > &m, const fvar< T > &c)
 
template<typename T , int R2, int C2>
Eigen::Matrix< fvar< T >, R2, C2 > stan::agrad::multiply (const Eigen::Matrix< fvar< T >, R2, C2 > &m, const double c)
 
template<typename T , int R1, int C1>
Eigen::Matrix< fvar< T >, R1, C1 > stan::agrad::multiply (const Eigen::Matrix< double, R1, C1 > &m, const fvar< T > &c)
 
template<typename T , int R1, int C1>
Eigen::Matrix< fvar< T >, R1, C1 > stan::agrad::multiply (const fvar< T > &c, const Eigen::Matrix< fvar< T >, R1, C1 > &m)
 
template<typename T , int R1, int C1>
Eigen::Matrix< fvar< T >, R1, C1 > stan::agrad::multiply (const double c, const Eigen::Matrix< fvar< T >, R1, C1 > &m)
 
template<typename T , int R1, int C1>
Eigen::Matrix< fvar< T >, R1, C1 > stan::agrad::multiply (const fvar< T > &c, const Eigen::Matrix< double, R1, C1 > &m)
 
template<typename T , int R1, int C1, int R2, int C2>
Eigen::Matrix< fvar< T >, R1, C2 > stan::agrad::multiply (const Eigen::Matrix< fvar< T >, R1, C1 > &m1, const Eigen::Matrix< fvar< T >, R2, C2 > &m2)
 
template<typename T , int R1, int C1, int R2, int C2>
Eigen::Matrix< fvar< T >, R1, C2 > stan::agrad::multiply (const Eigen::Matrix< fvar< T >, R1, C1 > &m1, const Eigen::Matrix< double, R2, C2 > &m2)
 
template<typename T , int R1, int C1, int R2, int C2>
Eigen::Matrix< fvar< T >, R1, C2 > stan::agrad::multiply (const Eigen::Matrix< double, R1, C1 > &m1, const Eigen::Matrix< fvar< T >, R2, C2 > &m2)
 
template<typename T , int C1, int R2>
fvar< T > stan::agrad::multiply (const Eigen::Matrix< fvar< T >, 1, C1 > &rv, const Eigen::Matrix< fvar< T >, R2, 1 > &v)
 
template<typename T , int C1, int R2>
fvar< T > stan::agrad::multiply (const Eigen::Matrix< fvar< T >, 1, C1 > &rv, const Eigen::Matrix< double, R2, 1 > &v)
 
template<typename T , int C1, int R2>
fvar< T > stan::agrad::multiply (const Eigen::Matrix< double, 1, C1 > &rv, const Eigen::Matrix< fvar< T >, R2, 1 > &v)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2fwd_2matrix_2multiply_8hpp_source.html b/doc/api/html/agrad_2fwd_2matrix_2multiply_8hpp_source.html new file mode 100644 index 00000000000..bf5ebda0f5f --- /dev/null +++ b/doc/api/html/agrad_2fwd_2matrix_2multiply_8hpp_source.html @@ -0,0 +1,268 @@ + + + + + +Stan: src/stan/agrad/fwd/matrix/multiply.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
multiply.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__FWD__MATRIX__MULTIPLY_HPP__
+
2 #define __STAN__AGRAD__FWD__MATRIX__MULTIPLY_HPP__
+
3 
+
4 #include <vector>
+
5 #include <boost/math/tools/promotion.hpp>
+ + + + + + + + +
14 
+
15 namespace stan {
+
16  namespace agrad {
+
17 
+
18  template<typename T, int R1,int C1>
+
19  inline
+
20  Eigen::Matrix<fvar<T>,R1,C1>
+
21  multiply(const Eigen::Matrix<fvar<T>, R1, C1>& m, const fvar<T>& c) {
+
22  Eigen::Matrix<fvar<T>,R1,C1> res(m.rows(),m.cols());
+
23  for(int i = 0; i < m.rows(); i++) {
+
24  for(int j = 0; j < m.cols(); j++)
+
25  res(i,j) = c * m(i,j);
+
26  }
+
27  return res;
+
28  }
+
29 
+
30  template<typename T,int R2,int C2>
+
31  inline
+
32  Eigen::Matrix<fvar<T>, R2, C2>
+
33  multiply(const Eigen::Matrix<fvar<T>, R2, C2>& m, const double c) {
+
34  Eigen::Matrix<fvar<T>,R2,C2>
+
35  res(m.rows(),m.cols());
+
36  for(int i = 0; i < m.rows(); i++) {
+
37  for(int j = 0; j < m.cols(); j++)
+
38  res(i,j) = c * m(i,j);
+
39  }
+
40  return res;
+
41  }
+
42 
+
43  template<typename T, int R1,int C1>
+
44  inline
+
45  Eigen::Matrix<fvar<T>,R1,C1>
+
46  multiply(const Eigen::Matrix<double, R1, C1>& m, const fvar<T>& c) {
+
47  Eigen::Matrix<fvar<T>,R1,C1>
+
48  res(m.rows(),m.cols());
+
49  for(int i = 0; i < m.rows(); i++) {
+
50  for(int j = 0; j < m.cols(); j++)
+
51  res(i,j) = c * m(i,j);
+
52  }
+
53  return res;
+
54  }
+
55 
+
56  template<typename T, int R1,int C1>
+
57  inline
+
58  Eigen::Matrix<fvar<T>,R1,C1>
+
59  multiply(const fvar<T>& c, const Eigen::Matrix<fvar<T>, R1, C1>& m) {
+
60  return multiply(m, c);
+
61  }
+
62 
+
63  template<typename T, int R1,int C1>
+
64  inline
+
65  Eigen::Matrix<fvar<T>,R1,C1>
+
66  multiply(const double c, const Eigen::Matrix<fvar<T>, R1, C1>& m) {
+
67  return multiply(m, c);
+
68  }
+
69 
+
70  template<typename T, int R1,int C1>
+
71  inline
+
72  Eigen::Matrix<fvar<T>,R1,C1>
+
73  multiply(const fvar<T>& c, const Eigen::Matrix<double, R1, C1>& m) {
+
74  return multiply(m, c);
+
75  }
+
76 
+
77  template<typename T, int R1,int C1,int R2,int C2>
+
78  inline
+
79  Eigen::Matrix<fvar<T>,R1,C2>
+
80  multiply(const Eigen::Matrix<fvar<T>,R1,C1>& m1,
+
81  const Eigen::Matrix<fvar<T>,R2,C2>& m2) {
+
82  stan::math::validate_multiplicable(m1,m2,"multiply");
+
83  Eigen::Matrix<fvar<T>,R1,C2> result(m1.rows(),m2.cols());
+
84  for (size_type i = 0; i < m1.rows(); i++) {
+
85  Eigen::Matrix<fvar<T>,1,C1> crow = m1.row(i);
+
86  for (size_type j = 0; j < m2.cols(); j++) {
+
87  Eigen::Matrix<fvar<T>,R2,1> ccol = m2.col(j);
+
88  result(i,j) = stan::agrad::dot_product(crow,ccol);
+
89  }
+
90  }
+
91  return result;
+
92  }
+
93 
+
94  template<typename T, int R1,int C1,int R2,int C2>
+
95  inline
+
96  Eigen::Matrix<fvar<T>,R1,C2>
+
97  multiply(const Eigen::Matrix<fvar<T>,R1,C1>& m1,
+
98  const Eigen::Matrix<double,R2,C2>& m2) {
+
99  stan::math::validate_multiplicable(m1,m2,"multiply");
+
100  Eigen::Matrix<fvar<T>,R1,C2>
+
101  result(m1.rows(),m2.cols());
+
102  for (size_type i = 0; i < m1.rows(); i++) {
+
103  Eigen::Matrix<fvar<T>,1,C1> crow = m1.row(i);
+
104  for (size_type j = 0; j < m2.cols(); j++) {
+
105  Eigen::Matrix<double,R2,1> ccol = m2.col(j);
+
106  result(i,j) = stan::agrad::dot_product(crow,ccol);
+
107  }
+
108  }
+
109  return result;
+
110  }
+
111 
+
112  template<typename T, int R1,int C1,int R2,int C2>
+
113  inline
+
114  Eigen::Matrix<fvar<T>,R1,C2>
+
115  multiply(const Eigen::Matrix<double,R1,C1>& m1,
+
116  const Eigen::Matrix<fvar<T>,R2,C2>& m2) {
+
117  stan::math::validate_multiplicable(m1,m2,"multiply");
+
118  Eigen::Matrix<fvar<T>,R1,C2>
+
119  result(m1.rows(),m2.cols());
+
120  for (size_type i = 0; i < m1.rows(); i++) {
+
121  Eigen::Matrix<double,1,C1> crow = m1.row(i);
+
122  for (size_type j = 0; j < m2.cols(); j++) {
+
123  Eigen::Matrix<fvar<T>,R2,1> ccol = m2.col(j);
+
124  result(i,j) = stan::agrad::dot_product(crow,ccol);
+
125  }
+
126  }
+
127  return result;
+
128  }
+
129 
+
130  template <typename T, int C1,int R2>
+
131  inline
+
132  fvar<T>
+
133  multiply(const Eigen::Matrix<fvar<T>, 1, C1>& rv,
+
134  const Eigen::Matrix<fvar<T>, R2, 1>& v) {
+
135  if (rv.size() != v.size())
+
136  throw std::domain_error("row vector and vector must be same length in multiply");
+
137  return dot_product(rv, v);
+
138  }
+
139 
+
140  template <typename T, int C1,int R2>
+
141  inline
+
142  fvar<T>
+
143  multiply(const Eigen::Matrix<fvar<T>, 1, C1>& rv,
+
144  const Eigen::Matrix<double, R2, 1>& v) {
+
145  if (rv.size() != v.size())
+
146  throw std::domain_error("row vector and vector must be same length in multiply");
+
147  return dot_product(rv, v);
+
148  }
+
149 
+
150  template <typename T, int C1,int R2>
+
151  inline
+
152  fvar<T>
+
153  multiply(const Eigen::Matrix<double, 1, C1>& rv,
+
154  const Eigen::Matrix<fvar<T>, R2, 1>& v) {
+
155  if (rv.size() != v.size())
+
156  throw std::domain_error("row vector and vector must be same length in multiply");
+
157  return dot_product(rv, v);
+
158  }
+
159  }
+
160 }
+
161 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2fwd_2matrix_2multiply__lower__tri__self__transpose_8hpp.html b/doc/api/html/agrad_2fwd_2matrix_2multiply__lower__tri__self__transpose_8hpp.html new file mode 100644 index 00000000000..4400bbfb532 --- /dev/null +++ b/doc/api/html/agrad_2fwd_2matrix_2multiply__lower__tri__self__transpose_8hpp.html @@ -0,0 +1,134 @@ + + + + + +Stan: src/stan/agrad/fwd/matrix/multiply_lower_tri_self_transpose.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
multiply_lower_tri_self_transpose.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+ + + + +

+Functions

template<typename T , int R, int C>
Eigen::Matrix< fvar< T >, R, R > stan::agrad::multiply_lower_tri_self_transpose (const Eigen::Matrix< fvar< T >, R, C > &m)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2fwd_2matrix_2multiply__lower__tri__self__transpose_8hpp_source.html b/doc/api/html/agrad_2fwd_2matrix_2multiply__lower__tri__self__transpose_8hpp_source.html new file mode 100644 index 00000000000..2570b0d0666 --- /dev/null +++ b/doc/api/html/agrad_2fwd_2matrix_2multiply__lower__tri__self__transpose_8hpp_source.html @@ -0,0 +1,140 @@ + + + + + +Stan: src/stan/agrad/fwd/matrix/multiply_lower_tri_self_transpose.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
multiply_lower_tri_self_transpose.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__FWD__MATRIX__MULTIPLY_LOWER_TRI_SELF_TRANSPOSE_HPP__
+
2 #define __STAN__AGRAD__FWD__MATRIX__MULTIPLY_LOWER_TRI_SELF_TRANSPOSE_HPP__
+
3 
+
4 #include <vector>
+ + + + + +
10 
+
11 namespace stan {
+
12  namespace agrad {
+
13 
+
14  template<typename T,int R, int C>
+
15  inline
+
16  Eigen::Matrix<fvar<T>,R,R>
+
17  multiply_lower_tri_self_transpose(const Eigen::Matrix<fvar<T>, R, C>& m) {
+
18  if (m.rows() == 0)
+
19  return Eigen::Matrix<fvar<T>,R,R>(0,0);
+
20  Eigen::Matrix<fvar<T>,R,C> L(m.rows(),m.cols());
+
21  L.setZero();
+
22 
+
23  for(size_type i = 0; i < m.rows(); i++) {
+
24  for(size_type j = 0; (j < i + 1) && (j < m.cols()); j++)
+
25  L(i,j) = m(i,j);
+
26  }
+
27 
+ +
29  }
+
30 
+
31  }
+
32 }
+
33 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2fwd_2matrix_2rows__dot__product_8hpp.html b/doc/api/html/agrad_2fwd_2matrix_2rows__dot__product_8hpp.html new file mode 100644 index 00000000000..5e327dc0a17 --- /dev/null +++ b/doc/api/html/agrad_2fwd_2matrix_2rows__dot__product_8hpp.html @@ -0,0 +1,141 @@ + + + + + +Stan: src/stan/agrad/fwd/matrix/rows_dot_product.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
rows_dot_product.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+ + + + + + + + + + +

+Functions

template<typename T , int R1, int C1, int R2, int C2>
Eigen::Matrix< fvar< T >, R1, 1 > stan::agrad::rows_dot_product (const Eigen::Matrix< fvar< T >, R1, C1 > &v1, const Eigen::Matrix< fvar< T >, R2, C2 > &v2)
 
template<typename T , int R1, int C1, int R2, int C2>
Eigen::Matrix< fvar< T >, R1, 1 > stan::agrad::rows_dot_product (const Eigen::Matrix< double, R1, C1 > &v1, const Eigen::Matrix< fvar< T >, R2, C2 > &v2)
 
template<typename T , int R1, int C1, int R2, int C2>
Eigen::Matrix< fvar< T >, R1, 1 > stan::agrad::rows_dot_product (const Eigen::Matrix< fvar< T >, R1, C1 > &v1, const Eigen::Matrix< double, R2, C2 > &v2)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2fwd_2matrix_2rows__dot__product_8hpp_source.html b/doc/api/html/agrad_2fwd_2matrix_2rows__dot__product_8hpp_source.html new file mode 100644 index 00000000000..1d140986684 --- /dev/null +++ b/doc/api/html/agrad_2fwd_2matrix_2rows__dot__product_8hpp_source.html @@ -0,0 +1,171 @@ + + + + + +Stan: src/stan/agrad/fwd/matrix/rows_dot_product.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
rows_dot_product.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__FWD__MATRIX__ROWS__DOT_PRODUCT_HPP__
+
2 #define __STAN__AGRAD__FWD__MATRIX__ROWS__DOT_PRODUCT_HPP__
+
3 
+
4 #include <vector>
+ + + + + +
10 #include <stan/agrad/fwd/fvar.hpp>
+
11 
+
12 
+
13 namespace stan {
+
14  namespace agrad {
+
15 
+
16  template<typename T, int R1,int C1,int R2, int C2>
+
17  inline
+
18  Eigen::Matrix<fvar<T>, R1, 1>
+
19  rows_dot_product(const Eigen::Matrix<fvar<T>, R1, C1>& v1,
+
20  const Eigen::Matrix<fvar<T>, R2, C2>& v2) {
+
21  stan::math::validate_matching_dims(v1,v2,"rows_dot_product");
+
22  Eigen::Matrix<fvar<T>, R1, 1> ret(v1.rows(),1);
+
23  for (size_type j = 0; j < v1.rows(); ++j) {
+
24  Eigen::Matrix<fvar<T>,R1,C1> crow1 = v1.row(j);
+
25  Eigen::Matrix<fvar<T>,R2,C2> crow2 = v2.row(j);
+
26  ret(j,0) = dot_product(crow1, crow2);
+
27  }
+
28  return ret;
+
29  }
+
30 
+
31  template<typename T, int R1,int C1,int R2, int C2>
+
32  inline
+
33  Eigen::Matrix<fvar<T>, R1, 1>
+
34  rows_dot_product(const Eigen::Matrix<double, R1, C1>& v1,
+
35  const Eigen::Matrix<fvar<T>, R2, C2>& v2) {
+
36  stan::math::validate_matching_dims(v1,v2,"rows_dot_product");
+
37  Eigen::Matrix<fvar<T>, R1, 1>
+
38  ret(v1.rows(),1);
+
39  for (size_type j = 0; j < v1.rows(); ++j) {
+
40  Eigen::Matrix<double,R1,C1> crow = v1.row(j);
+
41  Eigen::Matrix<fvar<T>,R2,C2> crow2 = v2.row(j);
+
42  ret(j,0) = dot_product(crow, crow2);
+
43  }
+
44  return ret;
+
45  }
+
46 
+
47  template<typename T, int R1,int C1,int R2, int C2>
+
48  inline
+
49  Eigen::Matrix<fvar<T>, R1, 1>
+
50  rows_dot_product(const Eigen::Matrix<fvar<T>, R1, C1>& v1,
+
51  const Eigen::Matrix<double, R2, C2>& v2) {
+
52  stan::math::validate_matching_dims(v1,v2,"rows_dot_product");
+
53  Eigen::Matrix<fvar<T>, R1, 1>
+
54  ret(v1.rows(),1);
+
55  for (size_type j = 0; j < v1.rows(); ++j) {
+
56  Eigen::Matrix<fvar<T>,R1,C1> crow1 = v1.row(j);
+
57  Eigen::Matrix<double,R2,C2> crow = v2.row(j);
+
58  ret(j,0) = dot_product(crow1, crow);
+
59  }
+
60  return ret;
+
61  }
+
62  }
+
63 }
+
64 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2fwd_2matrix_2rows__dot__self_8hpp.html b/doc/api/html/agrad_2fwd_2matrix_2rows__dot__self_8hpp.html new file mode 100644 index 00000000000..7db8559b81d --- /dev/null +++ b/doc/api/html/agrad_2fwd_2matrix_2rows__dot__self_8hpp.html @@ -0,0 +1,134 @@ + + + + + +Stan: src/stan/agrad/fwd/matrix/rows_dot_self.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
rows_dot_self.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+ + + + +

+Functions

template<typename T , int R, int C>
Eigen::Matrix< fvar< T >, R, 1 > stan::agrad::rows_dot_self (const Eigen::Matrix< fvar< T >, R, C > &x)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2fwd_2matrix_2rows__dot__self_8hpp_source.html b/doc/api/html/agrad_2fwd_2matrix_2rows__dot__self_8hpp_source.html new file mode 100644 index 00000000000..f87fc84e810 --- /dev/null +++ b/doc/api/html/agrad_2fwd_2matrix_2rows__dot__self_8hpp_source.html @@ -0,0 +1,133 @@ + + + + + +Stan: src/stan/agrad/fwd/matrix/rows_dot_self.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
rows_dot_self.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__REV__MATRIX__ROWS_DOT_SELF_HPP__
+
2 #define __STAN__AGRAD__REV__MATRIX__ROWS_DOT_SELF_HPP__
+
3 
+
4 #include <vector>
+ + + + + +
10 
+
11 namespace stan {
+
12  namespace agrad {
+
13 
+
14  template<typename T, int R,int C>
+
15  inline Eigen::Matrix<fvar<T>,R,1>
+
16  rows_dot_self(const Eigen::Matrix<fvar<T>,R,C>& x) {
+
17  Eigen::Matrix<fvar<T>,R,1> ret(x.rows(),1);
+
18  for (size_type i = 0; i < x.rows(); i++) {
+
19  Eigen::Matrix<fvar<T>,1,C> crow = x.row(i);
+
20  ret(i,0) = dot_self(crow);
+
21  }
+
22  return ret;
+
23  }
+
24  }
+
25 }
+
26 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2fwd_2matrix_2softmax_8hpp.html b/doc/api/html/agrad_2fwd_2matrix_2softmax_8hpp.html new file mode 100644 index 00000000000..cac0b8a3395 --- /dev/null +++ b/doc/api/html/agrad_2fwd_2matrix_2softmax_8hpp.html @@ -0,0 +1,132 @@ + + + + + +Stan: src/stan/agrad/fwd/matrix/softmax.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
softmax.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+ + + + +

+Functions

template<typename T >
Eigen::Matrix< fvar< T >
+, Eigen::Dynamic, 1 > 
stan::agrad::softmax (const Eigen::Matrix< fvar< T >, Eigen::Dynamic, 1 > &alpha)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2fwd_2matrix_2softmax_8hpp_source.html b/doc/api/html/agrad_2fwd_2matrix_2softmax_8hpp_source.html new file mode 100644 index 00000000000..abe880de247 --- /dev/null +++ b/doc/api/html/agrad_2fwd_2matrix_2softmax_8hpp_source.html @@ -0,0 +1,165 @@ + + + + + +Stan: src/stan/agrad/fwd/matrix/softmax.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
softmax.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__FWD__MATRIX__SOFTMAX_HPP__
+
2 #define __STAN__AGRAD__FWD__MATRIX__SOFTMAX_HPP__
+
3 
+ + + +
7 
+
8 namespace stan {
+
9  namespace agrad {
+
10 
+
11  template <typename T>
+
12  inline
+
13  Eigen::Matrix<fvar<T>,Eigen::Dynamic,1>
+
14  softmax(const Eigen::Matrix<fvar<T>,Eigen::Dynamic,1>& alpha) {
+
15  using stan::math::softmax;
+
16  using Eigen::Matrix;
+
17  using Eigen::Dynamic;
+
18 
+
19  Matrix<T,Dynamic,1> alpha_t(alpha.size());
+
20  for (int k = 0; k < alpha.size(); ++k)
+
21  alpha_t(k) = alpha(k).val_;
+
22 
+
23  Matrix<T,Dynamic,1> softmax_alpha_t = softmax(alpha_t);
+
24 
+
25  Matrix<fvar<T>,Dynamic,1> softmax_alpha(alpha.size());
+
26  for (int k = 0; k < alpha.size(); ++k) {
+
27  softmax_alpha(k).val_ = softmax_alpha_t(k);
+
28  softmax_alpha(k).d_ = 0;
+
29  }
+
30 
+
31  // for each input position
+
32  for (int m = 0; m < alpha.size(); ++m) {
+
33  // for each output position
+
34  T negative_alpha_m_d_times_softmax_alpha_t_m
+
35  = - alpha(m).d_ * softmax_alpha_t(m);
+
36  for (int k = 0; k < alpha.size(); ++k) {
+
37  // chain from input to output
+
38  if (m == k) {
+
39  softmax_alpha(k).d_
+
40  += softmax_alpha_t(k)
+
41  * (alpha(m).d_
+
42  + negative_alpha_m_d_times_softmax_alpha_t_m);
+
43  } else {
+
44  softmax_alpha(k).d_
+
45  += negative_alpha_m_d_times_softmax_alpha_t_m
+
46  * softmax_alpha_t(k);
+
47  }
+
48  }
+
49  }
+
50 
+
51  return softmax_alpha;
+
52  }
+
53 
+
54 
+
55  }
+
56 }
+
57 
+
58 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2fwd_2matrix_2sort_8hpp.html b/doc/api/html/agrad_2fwd_2matrix_2sort_8hpp.html new file mode 100644 index 00000000000..3bf83270e4a --- /dev/null +++ b/doc/api/html/agrad_2fwd_2matrix_2sort_8hpp.html @@ -0,0 +1,143 @@ + + + + + +Stan: src/stan/agrad/fwd/matrix/sort.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
sort.hpp File Reference
+
+
+
#include <stan/agrad/fwd/fvar.hpp>
+#include <stan/meta/traits.hpp>
+#include <vector>
+#include <stan/math/matrix/Eigen.hpp>
+#include <algorithm>
+#include <functional>
+
+

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+ + + + + + + + + + + + + +

+Functions

template<typename T >
std::vector< fvar< T > > stan::agrad::sort_asc (std::vector< fvar< T > > xs)
 
template<typename T >
std::vector< fvar< T > > stan::agrad::sort_desc (std::vector< fvar< T > > xs)
 
template<typename T , int R, int C>
Eigen::Matrix< fvar< T >, R, C > stan::agrad::sort_asc (Eigen::Matrix< fvar< T >, R, C > xs)
 
template<typename T , int R, int C>
Eigen::Matrix< fvar< T >, R, C > stan::agrad::sort_desc (Eigen::Matrix< fvar< T >, R, C > xs)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2fwd_2matrix_2sort_8hpp_source.html b/doc/api/html/agrad_2fwd_2matrix_2sort_8hpp_source.html new file mode 100644 index 00000000000..3a3baf03aae --- /dev/null +++ b/doc/api/html/agrad_2fwd_2matrix_2sort_8hpp_source.html @@ -0,0 +1,156 @@ + + + + + +Stan: src/stan/agrad/fwd/matrix/sort.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
sort.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__FWD__SORT_HPP__
+
2 #define __STAN__AGRAD__FWD__SORT_HPP__
+
3 
+ +
5 #include <stan/meta/traits.hpp>
+
6 #include <vector>
+ +
8 #include <algorithm> // std::sort
+
9 #include <functional> // std::greater
+
10 
+
11 namespace stan {
+
12 
+
13  namespace agrad {
+
14 
+
15  template <typename T>
+
16  inline
+
17  std::vector< fvar<T> >
+
18  sort_asc(std::vector< fvar<T> > xs) {
+
19  std::sort(xs.begin(), xs.end());
+
20  return xs;
+
21  }
+
22 
+
23  template <typename T>
+
24  inline
+
25  std::vector< fvar<T> >
+
26  sort_desc(std::vector< fvar<T> > xs) {
+
27  std::sort(xs.begin(), xs.end(), std::greater< fvar<T> >());
+
28  return xs;
+
29  }
+
30 
+
31  template <typename T, int R, int C>
+
32  inline
+
33  typename Eigen::Matrix<fvar<T>,R,C>
+
34  sort_asc(Eigen::Matrix<fvar<T>,R,C> xs) {
+
35  std::sort(xs.data(), xs.data()+xs.size());
+
36  return xs;
+
37  }
+
38 
+
39  template <typename T, int R, int C>
+
40  inline
+
41  typename Eigen::Matrix<fvar<T>,R,C>
+
42  sort_desc(Eigen::Matrix<fvar<T>,R,C> xs) {
+
43  std::sort(xs.data(), xs.data()+xs.size(), std::greater< fvar<T> >());
+
44  return xs;
+
45  }
+
46 
+
47  }
+
48 }
+
49 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2fwd_2matrix_2sum_8hpp.html b/doc/api/html/agrad_2fwd_2matrix_2sum_8hpp.html new file mode 100644 index 00000000000..72f6ab2fe5b --- /dev/null +++ b/doc/api/html/agrad_2fwd_2matrix_2sum_8hpp.html @@ -0,0 +1,131 @@ + + + + + +Stan: src/stan/agrad/fwd/matrix/sum.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
sum.hpp File Reference
+
+
+
#include <vector>
+#include <stan/math/matrix/Eigen.hpp>
+#include <stan/agrad/fwd/fvar.hpp>
+
+

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+ + + + +

+Functions

template<typename T , int R, int C>
fvar< T > stan::agrad::sum (const Eigen::Matrix< fvar< T >, R, C > &m)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2fwd_2matrix_2sum_8hpp_source.html b/doc/api/html/agrad_2fwd_2matrix_2sum_8hpp_source.html new file mode 100644 index 00000000000..5ef181fea4f --- /dev/null +++ b/doc/api/html/agrad_2fwd_2matrix_2sum_8hpp_source.html @@ -0,0 +1,133 @@ + + + + + +Stan: src/stan/agrad/fwd/matrix/sum.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
sum.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__FWD__MATRIX__SUM_HPP__
+
2 #define __STAN__AGRAD__FWD__MATRIX__SUM_HPP__
+
3 
+
4 #include <vector>
+ + +
7 
+
8 namespace stan {
+
9  namespace agrad {
+
10 
+
11  template <typename T, int R, int C>
+
12  inline
+
13  fvar<T>
+
14  sum(const Eigen::Matrix<fvar<T>,R,C>& m) {
+
15  fvar<T> sum = 0;
+
16  if (m.size() == 0)
+
17  return 0.0;
+
18  for(unsigned i = 0; i < m.rows(); i++) {
+
19  for(unsigned j = 0; j < m.cols(); j++)
+
20  sum += m(i,j);
+
21  }
+
22  return sum;
+
23  }
+
24  }
+
25 }
+
26 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2fwd_2matrix_2tcrossprod_8hpp.html b/doc/api/html/agrad_2fwd_2matrix_2tcrossprod_8hpp.html new file mode 100644 index 00000000000..f5205bd4eff --- /dev/null +++ b/doc/api/html/agrad_2fwd_2matrix_2tcrossprod_8hpp.html @@ -0,0 +1,134 @@ + + + + + +Stan: src/stan/agrad/fwd/matrix/tcrossprod.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
tcrossprod.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+ + + + +

+Functions

template<typename T , int R, int C>
Eigen::Matrix< fvar< T >, R, R > stan::agrad::tcrossprod (const Eigen::Matrix< fvar< T >, R, C > &m)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2fwd_2matrix_2tcrossprod_8hpp_source.html b/doc/api/html/agrad_2fwd_2matrix_2tcrossprod_8hpp_source.html new file mode 100644 index 00000000000..a0fd7add2d3 --- /dev/null +++ b/doc/api/html/agrad_2fwd_2matrix_2tcrossprod_8hpp_source.html @@ -0,0 +1,132 @@ + + + + + +Stan: src/stan/agrad/fwd/matrix/tcrossprod.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
tcrossprod.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__FWD__MATRIX__TCROSSPROD_HPP__
+
2 #define __STAN__AGRAD__FWD__MATRIX__TCROSSPROD_HPP__
+
3 
+
4 #include <vector>
+ + + + + +
10 
+
11 namespace stan {
+
12  namespace agrad {
+
13 
+
14  template<typename T,int R, int C>
+
15  inline
+
16  Eigen::Matrix<fvar<T>,R,R>
+
17  tcrossprod(const Eigen::Matrix<fvar<T>, R, C>& m) {
+
18  if (m.rows() == 0)
+
19  return Eigen::Matrix<fvar<T>,R,R>(0,0);
+ +
21  }
+
22 
+
23  }
+
24 }
+
25 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2fwd_2matrix_2typedefs_8hpp.html b/doc/api/html/agrad_2fwd_2matrix_2typedefs_8hpp.html new file mode 100644 index 00000000000..c62e1552367 --- /dev/null +++ b/doc/api/html/agrad_2fwd_2matrix_2typedefs_8hpp.html @@ -0,0 +1,179 @@ + + + + + +Stan: src/stan/agrad/fwd/matrix/typedefs.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
typedefs.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+ + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Typedefs

typedef Eigen::Matrix< double,
+Eigen::Dynamic, Eigen::Dynamic >
+::Index 
stan::agrad::size_type
 
typedef Eigen::Matrix< fvar
+< double >, Eigen::Dynamic,
+Eigen::Dynamic > 
stan::agrad::matrix_fd
 
typedef Eigen::Matrix< fvar
+< var >, Eigen::Dynamic,
+Eigen::Dynamic > 
stan::agrad::matrix_fv
 
typedef Eigen::Matrix< fvar
+< fvar< double >
+ >, Eigen::Dynamic,
+Eigen::Dynamic > 
stan::agrad::matrix_ffd
 
typedef Eigen::Matrix< fvar
+< fvar< var >
+ >, Eigen::Dynamic,
+Eigen::Dynamic > 
stan::agrad::matrix_ffv
 
typedef Eigen::Matrix< fvar
+< double >, Eigen::Dynamic, 1 > 
stan::agrad::vector_fd
 
typedef Eigen::Matrix< fvar
+< var >, Eigen::Dynamic, 1 > 
stan::agrad::vector_fv
 
typedef Eigen::Matrix< fvar
+< fvar< double >
+ >, Eigen::Dynamic, 1 > 
stan::agrad::vector_ffd
 
typedef Eigen::Matrix< fvar
+< fvar< var >
+ >, Eigen::Dynamic, 1 > 
stan::agrad::vector_ffv
 
typedef Eigen::Matrix< fvar
+< double >, 1, Eigen::Dynamic > 
stan::agrad::row_vector_fd
 
typedef Eigen::Matrix< fvar
+< var >, 1, Eigen::Dynamic > 
stan::agrad::row_vector_fv
 
typedef Eigen::Matrix< fvar
+< fvar< double >
+ >, 1, Eigen::Dynamic > 
stan::agrad::row_vector_ffd
 
typedef Eigen::Matrix< fvar
+< fvar< var >
+ >, 1, Eigen::Dynamic > 
stan::agrad::row_vector_ffv
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2fwd_2matrix_2typedefs_8hpp_source.html b/doc/api/html/agrad_2fwd_2matrix_2typedefs_8hpp_source.html new file mode 100644 index 00000000000..29717418d41 --- /dev/null +++ b/doc/api/html/agrad_2fwd_2matrix_2typedefs_8hpp_source.html @@ -0,0 +1,173 @@ + + + + + +Stan: src/stan/agrad/fwd/matrix/typedefs.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
typedefs.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__FWD__MATRIX__TYPEDEFS_HPP__
+
2 #define __STAN__AGRAD__FWD__MATRIX__TYPEDEFS_HPP__
+
3 
+ + +
6 #include <stan/agrad/rev/var.hpp>
+ +
8 
+
9 namespace stan {
+
10  namespace agrad {
+
11 
+
12  typedef
+
13  Eigen::Matrix<double,Eigen::Dynamic,Eigen::Dynamic>::Index
+ +
15 
+
16  typedef
+
17  Eigen::Matrix<fvar<double>,Eigen::Dynamic,Eigen::Dynamic>
+ +
19 
+
20  typedef
+
21  Eigen::Matrix<fvar<var>,Eigen::Dynamic,Eigen::Dynamic>
+ +
23 
+
24  typedef
+
25  Eigen::Matrix<fvar<fvar<double> >,Eigen::Dynamic,Eigen::Dynamic>
+ +
27 
+
28  typedef
+
29  Eigen::Matrix<fvar<fvar<var> >,Eigen::Dynamic,Eigen::Dynamic>
+ +
31 
+
32  typedef
+
33  Eigen::Matrix<fvar<double>,Eigen::Dynamic,1>
+ +
35 
+
36  typedef
+
37  Eigen::Matrix<fvar<var>,Eigen::Dynamic,1>
+ +
39 
+
40  typedef
+
41  Eigen::Matrix<fvar<fvar<double> >,Eigen::Dynamic,1>
+ +
43 
+
44  typedef
+
45  Eigen::Matrix<fvar<fvar<var> >,Eigen::Dynamic,1>
+ +
47 
+
48  typedef
+
49  Eigen::Matrix<fvar<double>,1,Eigen::Dynamic>
+ +
51 
+
52  typedef
+
53  Eigen::Matrix<fvar<var>,1,Eigen::Dynamic>
+ +
55 
+
56  typedef
+
57  Eigen::Matrix<fvar<fvar<double> >,1,Eigen::Dynamic>
+ +
59 
+
60  typedef
+
61  Eigen::Matrix<fvar<fvar<var> >,1,Eigen::Dynamic>
+ +
63 
+
64  }
+
65 }
+
66 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2fwd_2matrix_8hpp.html b/doc/api/html/agrad_2fwd_2matrix_8hpp.html new file mode 100644 index 00000000000..e2c0309fe81 --- /dev/null +++ b/doc/api/html/agrad_2fwd_2matrix_8hpp.html @@ -0,0 +1,134 @@ + + + + + +Stan: src/stan/agrad/fwd/matrix.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
matrix.hpp File Reference
+
+ +
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2fwd_2matrix_8hpp_source.html b/doc/api/html/agrad_2fwd_2matrix_8hpp_source.html new file mode 100644 index 00000000000..e9c978dc6ad --- /dev/null +++ b/doc/api/html/agrad_2fwd_2matrix_8hpp_source.html @@ -0,0 +1,137 @@ + + + + + +Stan: src/stan/agrad/fwd/matrix.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
matrix.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__FWD__MATRIX_HPP__
+
2 #define __STAN__AGRAD__FWD__MATRIX_HPP__
+
3 
+ + + + + + + + + + + + + + + + + + + + + + + + + +
29 
+
30 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2fwd_2prob_2univariate_2continuous_2normal_8hpp.html b/doc/api/html/agrad_2fwd_2prob_2univariate_2continuous_2normal_8hpp.html new file mode 100644 index 00000000000..b514ff7c32e --- /dev/null +++ b/doc/api/html/agrad_2fwd_2prob_2univariate_2continuous_2normal_8hpp.html @@ -0,0 +1,142 @@ + + + + + +Stan: src/stan/agrad/fwd/prob/univariate/continuous/normal.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
normal.hpp File Reference
+
+
+
#include <boost/random/normal_distribution.hpp>
+#include <boost/random/variate_generator.hpp>
+#include <boost/utility/enable_if.hpp>
+#include <stan/agrad/partials_vari.hpp>
+#include <stan/math.hpp>
+#include <stan/math/error_handling.hpp>
+#include <stan/meta/traits.hpp>
+#include <stan/prob/constants.hpp>
+#include <stan/prob/traits.hpp>
+
+

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::prob
 Templated probability distributions.
 
+ + + + + +

+Functions

template<bool propto, typename T_y , typename T_loc , typename T_scale >
boost::enable_if_c
+< contains_fvar< T_y, T_loc,
+T_scale >::value, typename
+return_type< T_y, T_loc,
+T_scale >::type >::type 
stan::prob::normal_log (const T_y &y, const T_loc &mu, const T_scale &sigma)
 The log of the normal density for the specified scalar(s) given the specified mean(s) and deviation(s).
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2fwd_2prob_2univariate_2continuous_2normal_8hpp_source.html b/doc/api/html/agrad_2fwd_2prob_2univariate_2continuous_2normal_8hpp_source.html new file mode 100644 index 00000000000..f392be4f096 --- /dev/null +++ b/doc/api/html/agrad_2fwd_2prob_2univariate_2continuous_2normal_8hpp_source.html @@ -0,0 +1,163 @@ + + + + + +Stan: src/stan/agrad/fwd/prob/univariate/continuous/normal.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
normal.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__FWD__PROB__UNIVARIATE__CONTINUOUS__NORMAL_HPP__
+
2 #define __STAN__AGRAD__FWD__PROB__UNIVARIATE__CONTINUOUS__NORMAL_HPP__
+
3 
+
4 #include <boost/random/normal_distribution.hpp>
+
5 #include <boost/random/variate_generator.hpp>
+
6 #include <boost/utility/enable_if.hpp>
+ +
8 #include <stan/math.hpp>
+ +
10 #include <stan/meta/traits.hpp>
+
11 #include <stan/prob/constants.hpp>
+
12 #include <stan/prob/traits.hpp>
+
13 
+
14 namespace stan {
+
15 
+
16  namespace prob {
+
17 
+
18  template <bool propto,
+
19  typename T_y, typename T_loc, typename T_scale>
+
20  typename boost::enable_if_c<contains_fvar<T_y,T_loc,T_scale>::value,
+ +
22  normal_log(const T_y& y, const T_loc& mu, const T_scale& sigma) {
+
23  // static const char* function = "stan::prob::normal_log(%1%)";
+
24  // FIXME: add input checks
+
25 
+
26  using std::log;
+ + + +
30 
+
31  // check if no variables are involved and prop-to
+ +
33  return 0.0;
+
34 
+
35  typename return_type<T_y,T_loc,T_scale>::type logp(0);
+
36 
+
37  // log probability
+ +
39  logp += NEG_LOG_SQRT_TWO_PI;
+
40 
+ +
42  logp -= log(sigma);
+
43 
+ +
45  typename return_type<T_y,T_loc,T_scale>::type z = (y - mu) / sigma;
+
46  logp -= 0.5 * z * z;
+
47  }
+
48 
+
49  return logp;
+
50  }
+
51 
+
52  }
+
53 
+
54 }
+
55 
+
56 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2rev_2error__handling_2matrix_2check__pos__definite_8hpp.html b/doc/api/html/agrad_2rev_2error__handling_2matrix_2check__pos__definite_8hpp.html new file mode 100644 index 00000000000..3ed9b7aba4d --- /dev/null +++ b/doc/api/html/agrad_2rev_2error__handling_2matrix_2check__pos__definite_8hpp.html @@ -0,0 +1,132 @@ + + + + + +Stan: src/stan/agrad/rev/error_handling/matrix/check_pos_definite.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
check_pos_definite.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+ + + + +

+Functions

template<typename T_result , class Policy >
bool stan::agrad::check_pos_definite (const char *function, const Eigen::Matrix< var, Eigen::Dynamic, Eigen::Dynamic > &y, const char *name, T_result *result, const Policy &)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2rev_2error__handling_2matrix_2check__pos__definite_8hpp_source.html b/doc/api/html/agrad_2rev_2error__handling_2matrix_2check__pos__definite_8hpp_source.html new file mode 100644 index 00000000000..731a12f2195 --- /dev/null +++ b/doc/api/html/agrad_2rev_2error__handling_2matrix_2check__pos__definite_8hpp_source.html @@ -0,0 +1,138 @@ + + + + + +Stan: src/stan/agrad/rev/error_handling/matrix/check_pos_definite.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
check_pos_definite.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__REV__ERROR_HANDLING__MATRIX__CHECK_POS_DEFINITE_HPP__
+
2 #define __STAN__AGRAD__REV__ERROR_HANDLING__MATRIX__CHECK_POS_DEFINITE_HPP__
+
3 
+
4 // global include
+ + +
7 #include <stan/agrad/rev/var.hpp>
+ +
9 
+
10 namespace stan {
+
11  namespace agrad {
+
12 
+
13  template <typename T_result, class Policy>
+
14  inline bool check_pos_definite(const char* function,
+
15  const Eigen::Matrix<var,Eigen::Dynamic,Eigen::Dynamic>& y,
+
16  const char* name,
+
17  T_result* result,
+
18  const Policy&) {
+
19  typedef
+ +
21  size_type;
+
22  Eigen::Matrix<double,Eigen::Dynamic,Eigen::Dynamic> y_d(y.rows(),y.cols());
+
23  for (size_type i = 0; i < y_d.rows(); i++)
+
24  for (size_type j = 0; j < y_d.cols(); j++)
+
25  y_d(i,j) = y(i,j).val();
+
26  return stan::math::check_pos_definite(function,y_d,name,result,Policy());
+
27  }
+
28 
+
29  }
+
30 }
+
31 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2rev_2error__handling_2matrix_8hpp.html b/doc/api/html/agrad_2rev_2error__handling_2matrix_8hpp.html new file mode 100644 index 00000000000..e9962cee07e --- /dev/null +++ b/doc/api/html/agrad_2rev_2error__handling_2matrix_8hpp.html @@ -0,0 +1,110 @@ + + + + + +Stan: src/stan/agrad/rev/error_handling/matrix.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
matrix.hpp File Reference
+
+ +
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2rev_2error__handling_2matrix_8hpp_source.html b/doc/api/html/agrad_2rev_2error__handling_2matrix_8hpp_source.html new file mode 100644 index 00000000000..b3cf6bb7bcd --- /dev/null +++ b/doc/api/html/agrad_2rev_2error__handling_2matrix_8hpp_source.html @@ -0,0 +1,113 @@ + + + + + +Stan: src/stan/agrad/rev/error_handling/matrix.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
matrix.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__REV__ERROR_HANDLING__MATRIX_HPP__
+
2 #define __STAN__AGRAD__REV__ERROR_HANDLING__MATRIX_HPP__
+
3 
+ +
5 
+
6 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2rev_2error__handling_8hpp.html b/doc/api/html/agrad_2rev_2error__handling_8hpp.html new file mode 100644 index 00000000000..b7f136539cd --- /dev/null +++ b/doc/api/html/agrad_2rev_2error__handling_8hpp.html @@ -0,0 +1,109 @@ + + + + + +Stan: src/stan/agrad/rev/error_handling.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
error_handling.hpp File Reference
+
+ +
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2rev_2error__handling_8hpp_source.html b/doc/api/html/agrad_2rev_2error__handling_8hpp_source.html new file mode 100644 index 00000000000..bf816aef8d2 --- /dev/null +++ b/doc/api/html/agrad_2rev_2error__handling_8hpp_source.html @@ -0,0 +1,111 @@ + + + + + +Stan: src/stan/agrad/rev/error_handling.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
error_handling.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__REV__ERROR_HANDLING_HPP__
+
2 #define __STAN__AGRAD__REV__ERROR_HANDLING_HPP__
+
3 
+
4 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2rev_2functions_2_phi_8hpp.html b/doc/api/html/agrad_2rev_2functions_2_phi_8hpp.html new file mode 100644 index 00000000000..b994ba7dc0e --- /dev/null +++ b/doc/api/html/agrad_2rev_2functions_2_phi_8hpp.html @@ -0,0 +1,131 @@ + + + + + +Stan: src/stan/agrad/rev/functions/Phi.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
Phi.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+ + + + +

+Functions

var stan::agrad::Phi (const stan::agrad::var &a)
 The unit normal cumulative density function for variables (stan).
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2rev_2functions_2_phi_8hpp_source.html b/doc/api/html/agrad_2rev_2functions_2_phi_8hpp_source.html new file mode 100644 index 00000000000..d573cbd4bca --- /dev/null +++ b/doc/api/html/agrad_2rev_2functions_2_phi_8hpp_source.html @@ -0,0 +1,138 @@ + + + + + +Stan: src/stan/agrad/rev/functions/Phi.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
Phi.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__REV__FUNCTIONS__PHI_HPP__
+
2 #define __STAN__AGRAD__REV__FUNCTIONS__PHI_HPP__
+
3 
+
4 #include <stan/agrad/rev/var.hpp>
+ + +
7 
+
8 namespace stan {
+
9  namespace agrad {
+
10 
+
11  namespace {
+
12  class Phi_vari : public op_v_vari {
+
13  public:
+
14  Phi_vari(vari* avi) :
+
15  op_v_vari(stan::math::Phi(avi->val_), avi) {
+
16  }
+
17  void chain() {
+
18  static const double NEG_HALF = -0.5;
+
19  avi_->adj_ += adj_
+
20  * stan::math::INV_SQRT_TWO_PI * std::exp(NEG_HALF * avi_->val_ * avi_->val_);
+
21  }
+
22  };
+
23  }
+
24 
+
37  inline var Phi(const stan::agrad::var& a) {
+
38  return var(new Phi_vari(a.vi_));
+
39  }
+
40 
+
41  }
+
42 }
+
43 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2rev_2functions_2_phi__approx_8hpp.html b/doc/api/html/agrad_2rev_2functions_2_phi__approx_8hpp.html new file mode 100644 index 00000000000..e5cccdcb6b2 --- /dev/null +++ b/doc/api/html/agrad_2rev_2functions_2_phi__approx_8hpp.html @@ -0,0 +1,131 @@ + + + + + +Stan: src/stan/agrad/rev/functions/Phi_approx.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
Phi_approx.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+ + + + +

+Functions

var stan::agrad::Phi_approx (const stan::agrad::var &a)
 Approximation of the unit normal CDF for variables (stan).
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2rev_2functions_2_phi__approx_8hpp_source.html b/doc/api/html/agrad_2rev_2functions_2_phi__approx_8hpp_source.html new file mode 100644 index 00000000000..7911543bdfe --- /dev/null +++ b/doc/api/html/agrad_2rev_2functions_2_phi__approx_8hpp_source.html @@ -0,0 +1,131 @@ + + + + + +Stan: src/stan/agrad/rev/functions/Phi_approx.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
Phi_approx.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__REV__FUNCTIONS__PHI_APPROX_HPP__
+
2 #define __STAN__AGRAD__REV__FUNCTIONS__PHI_APPROX_HPP__
+
3 
+
4 #include <stan/agrad/rev/var.hpp>
+ + +
7 
+
8 namespace stan {
+
9  namespace agrad {
+
10 
+
19  inline var Phi_approx(const stan::agrad::var& a) {
+
20  // return inv_logit(0.07056 * pow(a,3.0) + 1.5976 * a);
+
21 
+
22  double av = a.vi_->val_;
+
23  double av_squared = av * av;
+
24  double av_cubed = av * av_squared;
+
25  double f = stan::math::inv_logit(0.07056 * av_cubed + 1.5976 * av);
+
26  double da = f * (1 - f) * (3.0 * 0.07056 * av_squared + 1.5976);
+
27  return var(new precomp_v_vari(f,a.vi_,da));
+
28  }
+
29 
+
30  }
+
31 }
+
32 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2rev_2functions_2abs_8hpp.html b/doc/api/html/agrad_2rev_2functions_2abs_8hpp.html new file mode 100644 index 00000000000..e5e907aee89 --- /dev/null +++ b/doc/api/html/agrad_2rev_2functions_2abs_8hpp.html @@ -0,0 +1,129 @@ + + + + + +Stan: src/stan/agrad/rev/functions/abs.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
abs.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+ + + + +

+Functions

var stan::agrad::abs (const var &a)
 Return the absolute value of the variable (std).
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2rev_2functions_2abs_8hpp_source.html b/doc/api/html/agrad_2rev_2functions_2abs_8hpp_source.html new file mode 100644 index 00000000000..8b33371a0cb --- /dev/null +++ b/doc/api/html/agrad_2rev_2functions_2abs_8hpp_source.html @@ -0,0 +1,122 @@ + + + + + +Stan: src/stan/agrad/rev/functions/abs.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
abs.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__REV__FUNCTIONS__ABS_HPP__
+
2 #define __STAN__AGRAD__REV__FUNCTIONS__ABS_HPP__
+
3 
+ +
5 
+
6 namespace stan {
+
7  namespace agrad {
+
8 
+
17  inline var abs(const var& a) {
+
18  return fabs(a);
+
19  }
+
20 
+
21  }
+
22 }
+
23 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2rev_2functions_2as__bool_8hpp.html b/doc/api/html/agrad_2rev_2functions_2as__bool_8hpp.html new file mode 100644 index 00000000000..a625990579e --- /dev/null +++ b/doc/api/html/agrad_2rev_2functions_2as__bool_8hpp.html @@ -0,0 +1,129 @@ + + + + + +Stan: src/stan/agrad/rev/functions/as_bool.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
as_bool.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+ + + + +

+Functions

int stan::agrad::as_bool (const agrad::var &v)
 Return 1 if the argument is unequal to zero and 0 otherwise.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2rev_2functions_2as__bool_8hpp_source.html b/doc/api/html/agrad_2rev_2functions_2as__bool_8hpp_source.html new file mode 100644 index 00000000000..77630fb6589 --- /dev/null +++ b/doc/api/html/agrad_2rev_2functions_2as__bool_8hpp_source.html @@ -0,0 +1,122 @@ + + + + + +Stan: src/stan/agrad/rev/functions/as_bool.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
as_bool.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__REV__FUNCTIONS__AS_BOOL_HPP__
+
2 #define __STAN__AGRAD__REV__FUNCTIONS__AS_BOOL_HPP__
+
3 
+
4 #include <stan/agrad/rev/var.hpp>
+
5 
+
6 namespace stan {
+
7  namespace agrad {
+
8 
+
15  inline int as_bool(const agrad::var& v) {
+
16  return 0.0 != v.vi_->val_;
+
17  }
+
18 
+
19  }
+
20 }
+
21 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2rev_2functions_2bessel__first__kind_8hpp.html b/doc/api/html/agrad_2rev_2functions_2bessel__first__kind_8hpp.html new file mode 100644 index 00000000000..16c3f0bd7b4 --- /dev/null +++ b/doc/api/html/agrad_2rev_2functions_2bessel__first__kind_8hpp.html @@ -0,0 +1,133 @@ + + + + + +Stan: src/stan/agrad/rev/functions/bessel_first_kind.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
bessel_first_kind.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+ + + +

+Functions

var stan::agrad::bessel_first_kind (const int &v, const var &a)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2rev_2functions_2bessel__first__kind_8hpp_source.html b/doc/api/html/agrad_2rev_2functions_2bessel__first__kind_8hpp_source.html new file mode 100644 index 00000000000..39989922d76 --- /dev/null +++ b/doc/api/html/agrad_2rev_2functions_2bessel__first__kind_8hpp_source.html @@ -0,0 +1,141 @@ + + + + + +Stan: src/stan/agrad/rev/functions/bessel_first_kind.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
bessel_first_kind.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__REV__FUNCTIONS__BESSEL_FIRST_KIND_HPP__
+
2 #define __STAN__AGRAD__REV__FUNCTIONS__BESSEL_FIRST_KIND_HPP__
+
3 
+
4 #include <stan/agrad/rev/var.hpp>
+ + + + + +
10 
+
11 namespace stan {
+
12  namespace agrad {
+
13 
+
14  namespace {
+
15 
+
16  class bessel_first_kind_dv_vari : public op_dv_vari {
+
17  public:
+
18  bessel_first_kind_dv_vari(int a, vari* bvi) :
+
19  op_dv_vari(stan::math::bessel_first_kind(a, bvi->val_), a, bvi) {
+
20  }
+
21  void chain() {
+
22  bvi_->adj_ += adj_ * (ad_ * stan::math::bessel_first_kind(ad_, bvi_->val_) / bvi_->val_ - stan::math::bessel_first_kind(ad_ + 1, bvi_->val_));
+
23  }
+
24  };
+
25  }
+
26 
+
27  inline var bessel_first_kind(const int& v,
+
28  const var& a) {
+
29  return var(new bessel_first_kind_dv_vari(v, a.vi_));
+
30  }
+
31 
+
32  }
+
33 }
+
34 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2rev_2functions_2bessel__second__kind_8hpp.html b/doc/api/html/agrad_2rev_2functions_2bessel__second__kind_8hpp.html new file mode 100644 index 00000000000..fe29690c4ef --- /dev/null +++ b/doc/api/html/agrad_2rev_2functions_2bessel__second__kind_8hpp.html @@ -0,0 +1,133 @@ + + + + + +Stan: src/stan/agrad/rev/functions/bessel_second_kind.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
bessel_second_kind.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+ + + +

+Functions

var stan::agrad::bessel_second_kind (const int &v, const var &a)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2rev_2functions_2bessel__second__kind_8hpp_source.html b/doc/api/html/agrad_2rev_2functions_2bessel__second__kind_8hpp_source.html new file mode 100644 index 00000000000..75ab1b9f5e4 --- /dev/null +++ b/doc/api/html/agrad_2rev_2functions_2bessel__second__kind_8hpp_source.html @@ -0,0 +1,141 @@ + + + + + +Stan: src/stan/agrad/rev/functions/bessel_second_kind.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
bessel_second_kind.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__REV__FUNCTIONS__BESSEL_SECOND_KIND_HPP__
+
2 #define __STAN__AGRAD__REV__FUNCTIONS__BESSEL_SECOND_KIND_HPP__
+
3 
+
4 #include <stan/agrad/rev/var.hpp>
+ + + + + +
10 
+
11 namespace stan {
+
12  namespace agrad {
+
13 
+
14  namespace {
+
15 
+
16  class bessel_second_kind_dv_vari : public op_dv_vari {
+
17  public:
+
18  bessel_second_kind_dv_vari(int a, vari* bvi) :
+
19  op_dv_vari(stan::math::bessel_second_kind(a, bvi->val_), a, bvi) {
+
20  }
+
21  void chain() {
+
22  bvi_->adj_ += adj_ * (ad_ * stan::math::bessel_second_kind(ad_, bvi_->val_) / bvi_->val_ - stan::math::bessel_second_kind(ad_ + 1, bvi_->val_));
+
23  }
+
24  };
+
25  }
+
26 
+
27  inline var bessel_second_kind(const int& v,
+
28  const var& a) {
+
29  return var(new bessel_second_kind_dv_vari(v, a.vi_));
+
30  }
+
31 
+
32  }
+
33 }
+
34 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2rev_2functions_2binary__log__loss_8hpp.html b/doc/api/html/agrad_2rev_2functions_2binary__log__loss_8hpp.html new file mode 100644 index 00000000000..6e51887e87f --- /dev/null +++ b/doc/api/html/agrad_2rev_2functions_2binary__log__loss_8hpp.html @@ -0,0 +1,133 @@ + + + + + +Stan: src/stan/agrad/rev/functions/binary_log_loss.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
binary_log_loss.hpp File Reference
+
+
+
#include <valarray>
+#include <stan/agrad/rev/var.hpp>
+#include <stan/agrad/rev/internal/v_vari.hpp>
+#include <stan/math/constants.hpp>
+#include <stan/math/functions/log1p.hpp>
+
+

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+ + + + +

+Functions

var stan::agrad::binary_log_loss (const int y, const stan::agrad::var &y_hat)
 The log loss function for variables (stan).
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2rev_2functions_2binary__log__loss_8hpp_source.html b/doc/api/html/agrad_2rev_2functions_2binary__log__loss_8hpp_source.html new file mode 100644 index 00000000000..040f3a82e26 --- /dev/null +++ b/doc/api/html/agrad_2rev_2functions_2binary__log__loss_8hpp_source.html @@ -0,0 +1,151 @@ + + + + + +Stan: src/stan/agrad/rev/functions/binary_log_loss.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
binary_log_loss.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__REV__FUNCTIONS__BINARY_LOG_LOSS_HPP__
+
2 #define __STAN__AGRAD__REV__FUNCTIONS__BINARY_LOG_LOSS_HPP__
+
3 
+
4 #include <valarray>
+
5 #include <stan/agrad/rev/var.hpp>
+ + + +
9 
+
10 namespace stan {
+
11  namespace agrad {
+
12 
+
13  namespace {
+
14  class binary_log_loss_1_vari : public op_v_vari {
+
15  public:
+
16  binary_log_loss_1_vari(vari* avi) :
+
17  op_v_vari(-std::log(avi->val_),avi) {
+
18  }
+
19  void chain() {
+
20  avi_->adj_ -= adj_ / avi_->val_;
+
21  }
+
22  };
+
23 
+
24  class binary_log_loss_0_vari : public op_v_vari {
+
25  public:
+
26  binary_log_loss_0_vari(vari* avi) :
+
27  op_v_vari(-stan::math::log1p(-avi->val_),avi) {
+
28  }
+
29  void chain() {
+
30  avi_->adj_ += adj_ / (1.0 - avi_->val_);
+
31  }
+
32  };
+
33  }
+
34 
+
50  inline var binary_log_loss(const int y, const stan::agrad::var& y_hat) {
+
51  if (y == 0)
+
52  return var(new binary_log_loss_0_vari(y_hat.vi_));
+
53  else
+
54  return var(new binary_log_loss_1_vari(y_hat.vi_));
+
55  }
+
56 
+
57  }
+
58 }
+
59 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2rev_2functions_2digamma_8hpp.html b/doc/api/html/agrad_2rev_2functions_2digamma_8hpp.html new file mode 100644 index 00000000000..4fe945e82b1 --- /dev/null +++ b/doc/api/html/agrad_2rev_2functions_2digamma_8hpp.html @@ -0,0 +1,132 @@ + + + + + +Stan: src/stan/agrad/rev/functions/digamma.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
digamma.hpp File Reference
+
+
+
#include <boost/math/special_functions/digamma.hpp>
+#include <boost/math/special_functions/zeta.hpp>
+#include <stan/agrad/rev/var.hpp>
+#include <stan/agrad/rev/internal/v_vari.hpp>
+#include <stan/math/functions/trigamma.hpp>
+
+

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+ + + +

+Functions

var stan::agrad::digamma (const stan::agrad::var &a)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2rev_2functions_2digamma_8hpp_source.html b/doc/api/html/agrad_2rev_2functions_2digamma_8hpp_source.html new file mode 100644 index 00000000000..9bd3f209396 --- /dev/null +++ b/doc/api/html/agrad_2rev_2functions_2digamma_8hpp_source.html @@ -0,0 +1,138 @@ + + + + + +Stan: src/stan/agrad/rev/functions/digamma.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
digamma.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__REV__FUNCTIONS__DIGAMMA_HPP__
+
2 #define __STAN__AGRAD__REV__FUNCTIONS__DIGAMMA_HPP__
+
3 
+
4 #include <boost/math/special_functions/digamma.hpp>
+
5 #include <boost/math/special_functions/zeta.hpp>
+
6 #include <stan/agrad/rev/var.hpp>
+ + +
9 
+
10 namespace stan {
+
11  namespace agrad {
+
12 
+
13  namespace {
+
14  class digamma_vari : public op_v_vari {
+
15  public:
+
16  digamma_vari(vari* avi) :
+
17  op_v_vari(boost::math::digamma(avi->val_), avi) {
+
18  }
+
19  void chain() {
+
20  avi_->adj_ += adj_ * stan::math::trigamma(avi_->val_);
+
21  }
+
22  };
+
23  }
+
24 
+
25  inline var digamma(const stan::agrad::var& a) {
+
26  return var(new digamma_vari(a.vi_));
+
27  }
+
28 
+
29  }
+
30 }
+
31 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2rev_2functions_2exp2_8hpp.html b/doc/api/html/agrad_2rev_2functions_2exp2_8hpp.html new file mode 100644 index 00000000000..f4dc8292a2b --- /dev/null +++ b/doc/api/html/agrad_2rev_2functions_2exp2_8hpp.html @@ -0,0 +1,132 @@ + + + + + +Stan: src/stan/agrad/rev/functions/exp2.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
exp2.hpp File Reference
+
+
+
#include <valarray>
+#include <stan/agrad/rev/var.hpp>
+#include <stan/agrad/rev/internal/v_vari.hpp>
+#include <stan/math/constants.hpp>
+
+

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+ + + + +

+Functions

var stan::agrad::exp2 (const stan::agrad::var &a)
 Exponentiation base 2 function for variables (C99).
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2rev_2functions_2exp2_8hpp_source.html b/doc/api/html/agrad_2rev_2functions_2exp2_8hpp_source.html new file mode 100644 index 00000000000..a94d3f1e75f --- /dev/null +++ b/doc/api/html/agrad_2rev_2functions_2exp2_8hpp_source.html @@ -0,0 +1,137 @@ + + + + + +Stan: src/stan/agrad/rev/functions/exp2.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
exp2.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__REV__FUNCTIONS__EXP2_HPP__
+
2 #define __STAN__AGRAD__REV__FUNCTIONS__EXP2_HPP__
+
3 
+
4 #include <valarray>
+
5 #include <stan/agrad/rev/var.hpp>
+ + +
8 
+
9 namespace stan {
+
10  namespace agrad {
+
11 
+
12  namespace {
+
13  class exp2_vari : public op_v_vari {
+
14  public:
+
15  exp2_vari(vari* avi) :
+
16  op_v_vari(std::pow(2.0,avi->val_),avi) {
+
17  }
+
18  void chain() {
+
19  avi_->adj_ += adj_ * val_ * stan::math::LOG_2;
+
20  }
+
21  };
+
22  }
+
23 
+
36  inline var exp2(const stan::agrad::var& a) {
+
37  return var(new exp2_vari(a.vi_));
+
38  }
+
39 
+
40  }
+
41 }
+
42 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2rev_2functions_2exp_8hpp.html b/doc/api/html/agrad_2rev_2functions_2exp_8hpp.html new file mode 100644 index 00000000000..cd65ed24824 --- /dev/null +++ b/doc/api/html/agrad_2rev_2functions_2exp_8hpp.html @@ -0,0 +1,131 @@ + + + + + +Stan: src/stan/agrad/rev/functions/exp.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
exp.hpp File Reference
+
+
+
#include <cmath>
+#include <stan/agrad/rev/var.hpp>
+#include <stan/agrad/rev/internal/v_vari.hpp>
+
+

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+ + + + +

+Functions

var stan::agrad::exp (const var &a)
 Return the exponentiation of the specified variable (cmath).
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2rev_2functions_2exp_8hpp_source.html b/doc/api/html/agrad_2rev_2functions_2exp_8hpp_source.html new file mode 100644 index 00000000000..7d658f9212c --- /dev/null +++ b/doc/api/html/agrad_2rev_2functions_2exp_8hpp_source.html @@ -0,0 +1,136 @@ + + + + + +Stan: src/stan/agrad/rev/functions/exp.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
exp.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__REV__FUNCTIONS__EXP_HPP__
+
2 #define __STAN__AGRAD__REV__FUNCTIONS__EXP_HPP__
+
3 
+
4 #include <cmath>
+
5 #include <stan/agrad/rev/var.hpp>
+ +
7 
+
8 namespace stan {
+
9  namespace agrad {
+
10 
+
11  namespace {
+
12  class exp_vari : public op_v_vari {
+
13  public:
+
14  exp_vari(vari* avi) :
+
15  op_v_vari(std::exp(avi->val_),avi) {
+
16  }
+
17  void chain() {
+
18  avi_->adj_ += adj_ * val_;
+
19  }
+
20  };
+
21  }
+
22 
+
29  inline var exp(const var& a) {
+
30  return var(new exp_vari(a.vi_));
+
31  }
+
32 
+
33  }
+
34 }
+
35 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2rev_2functions_2falling__factorial_8hpp.html b/doc/api/html/agrad_2rev_2functions_2falling__factorial_8hpp.html new file mode 100644 index 00000000000..9061d9c9e88 --- /dev/null +++ b/doc/api/html/agrad_2rev_2functions_2falling__factorial_8hpp.html @@ -0,0 +1,137 @@ + + + + + +Stan: src/stan/agrad/rev/functions/falling_factorial.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
falling_factorial.hpp File Reference
+
+
+
#include <stan/agrad/rev/var.hpp>
+#include <stan/agrad/rev/internal/vd_vari.hpp>
+#include <stan/agrad/rev/internal/dv_vari.hpp>
+#include <stan/agrad/rev/internal/vv_vari.hpp>
+#include <stan/math/functions/falling_factorial.hpp>
+#include <boost/math/special_functions/digamma.hpp>
+
+

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+ + + + + + + +

+Functions

var stan::agrad::falling_factorial (const var &a, const double &b)
 
var stan::agrad::falling_factorial (const var &a, const var &b)
 
var stan::agrad::falling_factorial (const double &a, const var &b)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2rev_2functions_2falling__factorial_8hpp_source.html b/doc/api/html/agrad_2rev_2functions_2falling__factorial_8hpp_source.html new file mode 100644 index 00000000000..de55301c639 --- /dev/null +++ b/doc/api/html/agrad_2rev_2functions_2falling__factorial_8hpp_source.html @@ -0,0 +1,171 @@ + + + + + +Stan: src/stan/agrad/rev/functions/falling_factorial.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
falling_factorial.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__REV__FUNCTIONS__FALLING_FACTORIAL_HPP__
+
2 #define __STAN__AGRAD__REV__FUNCTIONS__FALLING_FACTORIAL_HPP__
+
3 
+
4 #include <stan/agrad/rev/var.hpp>
+ + + + +
9 #include <boost/math/special_functions/digamma.hpp>
+
10 
+
11 namespace stan {
+
12  namespace agrad {
+
13 
+
14  namespace {
+
15 
+
16  class falling_factorial_vv_vari : public op_vv_vari {
+
17  public:
+
18  falling_factorial_vv_vari(vari* avi, vari* bvi) :
+
19  op_vv_vari(stan::math::falling_factorial(avi->val_, bvi->val_), avi, bvi) {
+
20  }
+
21  void chain() {
+
22  avi_->adj_ += adj_ * stan::math::falling_factorial(avi_->val_, bvi_->val_) * boost::math::digamma(avi_->val_ + 1);
+
23  bvi_->adj_ -= adj_ * stan::math::falling_factorial(avi_->val_, bvi_->val_) * boost::math::digamma(bvi_->val_ + 1);
+
24  }
+
25  };
+
26 
+
27  class falling_factorial_vd_vari : public op_vd_vari {
+
28  public:
+
29  falling_factorial_vd_vari(vari* avi, double b) :
+
30  op_vd_vari(stan::math::falling_factorial(avi->val_, b), avi, b) {
+
31  }
+
32  void chain() {
+
33  avi_->adj_ += adj_ * stan::math::falling_factorial(avi_->val_, bd_) * boost::math::digamma(avi_->val_ + 1);
+
34  }
+
35  };
+
36 
+
37  class falling_factorial_dv_vari : public op_dv_vari {
+
38  public:
+
39  falling_factorial_dv_vari(double a, vari* bvi) :
+
40  op_dv_vari(stan::math::falling_factorial(a, bvi->val_), a, bvi) {
+
41  }
+
42  void chain() {
+
43  bvi_->adj_ += adj_ * -stan::math::falling_factorial(ad_, bvi_->val_) * boost::math::digamma(bvi_->val_ + 1);
+
44  }
+
45  };
+
46  }
+
47 
+
48  inline var falling_factorial(const var& a,
+
49  const double& b) {
+
50  return var(new falling_factorial_vd_vari(a.vi_, b));
+
51  }
+
52 
+
53  inline var falling_factorial(const var& a,
+
54  const var& b) {
+
55  return var(new falling_factorial_vv_vari(a.vi_, b.vi_));
+
56  }
+
57 
+
58  inline var falling_factorial(const double& a,
+
59  const var& b) {
+
60  return var(new falling_factorial_dv_vari(a, b.vi_));
+
61  }
+
62  }
+
63 }
+
64 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2rev_2functions_2fdim_8hpp.html b/doc/api/html/agrad_2rev_2functions_2fdim_8hpp.html new file mode 100644 index 00000000000..580e8c9c3c6 --- /dev/null +++ b/doc/api/html/agrad_2rev_2functions_2fdim_8hpp.html @@ -0,0 +1,137 @@ + + + + + +Stan: src/stan/agrad/rev/functions/fdim.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
fdim.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+ + + + + + + + + + +

+Functions

var stan::agrad::fdim (const stan::agrad::var &a, const stan::agrad::var &b)
 Return the positive difference between the first variable's the value and the second's (C99).
 
var stan::agrad::fdim (const double &a, const stan::agrad::var &b)
 Return the positive difference between the first value and the value of the second variable (C99).
 
var stan::agrad::fdim (const stan::agrad::var &a, const double &b)
 Return the positive difference between the first variable's value and the second value (C99).
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2rev_2functions_2fdim_8hpp_source.html b/doc/api/html/agrad_2rev_2functions_2fdim_8hpp_source.html new file mode 100644 index 00000000000..9b03789cddf --- /dev/null +++ b/doc/api/html/agrad_2rev_2functions_2fdim_8hpp_source.html @@ -0,0 +1,176 @@ + + + + + +Stan: src/stan/agrad/rev/functions/fdim.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
fdim.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__REV__FUNCTIONS__FDIM_HPP__
+
2 #define __STAN__AGRAD__REV__FUNCTIONS__FDIM_HPP__
+
3 
+
4 #include <stan/agrad/rev/var.hpp>
+ + +
7 
+
8 namespace stan {
+
9  namespace agrad {
+
10 
+
11  namespace {
+
12  class fdim_vv_vari : public op_vv_vari {
+
13  public:
+
14  fdim_vv_vari(vari* avi, vari* bvi) :
+
15  op_vv_vari(avi->val_ - bvi->val_, avi, bvi) {
+
16  }
+
17  void chain() {
+
18  avi_->adj_ += adj_;
+
19  bvi_->adj_ -= adj_;
+
20  }
+
21  };
+
22 
+
23  class fdim_vd_vari : public op_v_vari {
+
24  public:
+
25  fdim_vd_vari(vari* avi, double b) :
+
26  op_v_vari(avi->val_ - b, avi) {
+
27  }
+
28  void chain() {
+
29  avi_->adj_ += adj_;
+
30  }
+
31  };
+
32 
+
33  class fdim_dv_vari : public op_v_vari {
+
34  public:
+
35  fdim_dv_vari(double a, vari* bvi) :
+
36  op_v_vari(a - bvi->val_, bvi) {
+
37  }
+
38  void chain() {
+
39  // avi_ is bvi argument to constructor
+
40  avi_->adj_ -= adj_;
+
41  }
+
42  };
+
43  }
+
44 
+
68  inline var fdim(const stan::agrad::var& a,
+
69  const stan::agrad::var& b) {
+
70  if (a.vi_->val_ > b.vi_->val_)
+
71  return var(new fdim_vv_vari(a.vi_,b.vi_));
+
72  else
+
73  return var(new vari(0.0));
+
74  }
+
75 
+
93  inline var fdim(const double& a,
+
94  const stan::agrad::var& b) {
+
95  return a > b.vi_->val_
+
96  ? var(new fdim_dv_vari(a,b.vi_))
+
97  : var(new vari(0.0));
+
98  }
+
99 
+
116  inline var fdim(const stan::agrad::var& a,
+
117  const double& b) {
+
118  return a.vi_->val_ > b
+
119  ? var(new fdim_vd_vari(a.vi_,b))
+
120  : var(new vari(0.0));
+
121  }
+
122 
+
123  }
+
124 }
+
125 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2rev_2functions_2fma_8hpp.html b/doc/api/html/agrad_2rev_2functions_2fma_8hpp.html new file mode 100644 index 00000000000..c521d809644 --- /dev/null +++ b/doc/api/html/agrad_2rev_2functions_2fma_8hpp.html @@ -0,0 +1,154 @@ + + + + + +Stan: src/stan/agrad/rev/functions/fma.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
fma.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+ + + + + + + + + + + + + + + + + + + + + + +

+Functions

var stan::agrad::fma (const stan::agrad::var &a, const stan::agrad::var &b, const stan::agrad::var &c)
 The fused multiply-add function for three variables (C99).
 
var stan::agrad::fma (const stan::agrad::var &a, const stan::agrad::var &b, const double &c)
 The fused multiply-add function for two variables and a value (C99).
 
var stan::agrad::fma (const stan::agrad::var &a, const double &b, const stan::agrad::var &c)
 The fused multiply-add function for a variable, value, and variable (C99).
 
var stan::agrad::fma (const stan::agrad::var &a, const double &b, const double &c)
 The fused multiply-add function for a variable and two values (C99).
 
var stan::agrad::fma (const double &a, const stan::agrad::var &b, const double &c)
 The fused multiply-add function for a value, variable, and value (C99).
 
var stan::agrad::fma (const double &a, const double &b, const stan::agrad::var &c)
 The fused multiply-add function for two values and a variable, and value (C99).
 
var stan::agrad::fma (const double &a, const stan::agrad::var &b, const stan::agrad::var &c)
 The fused multiply-add function for a value and two variables (C99).
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2rev_2functions_2fma_8hpp_source.html b/doc/api/html/agrad_2rev_2functions_2fma_8hpp_source.html new file mode 100644 index 00000000000..8f2fff76867 --- /dev/null +++ b/doc/api/html/agrad_2rev_2functions_2fma_8hpp_source.html @@ -0,0 +1,229 @@ + + + + + +Stan: src/stan/agrad/rev/functions/fma.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
fma.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__REV__FUNCTIONS__FMA_HPP__
+
2 #define __STAN__AGRAD__REV__FUNCTIONS__FMA_HPP__
+
3 
+
4 #include <valarray>
+
5 #include <stan/agrad/rev/var.hpp>
+ + + + + +
11 #include <stan/math/constants.hpp>
+
12 
+
13 namespace stan {
+
14  namespace agrad {
+
15 
+
16  namespace {
+
17  class fma_vvv_vari : public op_vvv_vari {
+
18  public:
+
19  fma_vvv_vari(vari* avi, vari* bvi, vari* cvi) :
+
20  op_vvv_vari(avi->val_ * bvi->val_ + cvi->val_,
+
21  avi,bvi,cvi) {
+
22  }
+
23  void chain() {
+
24  avi_->adj_ += adj_ * bvi_->val_;
+
25  bvi_->adj_ += adj_ * avi_->val_;
+
26  cvi_->adj_ += adj_;
+
27  }
+
28  };
+
29 
+
30  class fma_vvd_vari : public op_vv_vari {
+
31  public:
+
32  fma_vvd_vari(vari* avi, vari* bvi, double c) :
+
33  op_vv_vari(avi->val_ * bvi->val_ + c,
+
34  avi,bvi) {
+
35  }
+
36  void chain() {
+
37  avi_->adj_ += adj_ * bvi_->val_;
+
38  bvi_->adj_ += adj_ * avi_->val_;
+
39  }
+
40  };
+
41 
+
42  class fma_vdv_vari : public op_vdv_vari {
+
43  public:
+
44  fma_vdv_vari(vari* avi, double b, vari* cvi) :
+
45  op_vdv_vari(avi->val_ * b + cvi->val_,
+
46  avi,b,cvi) {
+
47  }
+
48  void chain() {
+
49  avi_->adj_ += adj_ * bd_;
+
50  cvi_->adj_ += adj_;
+
51  }
+
52  };
+
53 
+
54  class fma_vdd_vari : public op_vd_vari {
+
55  public:
+
56  fma_vdd_vari(vari* avi, double b, double c) :
+
57  op_vd_vari(avi->val_ * b + c,
+
58  avi,b) {
+
59  }
+
60  void chain() {
+
61  avi_->adj_ += adj_ * bd_;
+
62  }
+
63  };
+
64 
+
65  class fma_ddv_vari : public op_v_vari {
+
66  public:
+
67  fma_ddv_vari(double a, double b, vari* cvi) :
+
68  op_v_vari(a * b + cvi->val_,
+
69  cvi) {
+
70  }
+
71  void chain() {
+
72  // avi_ is cvi from constructor
+
73  avi_->adj_ += adj_;
+
74  }
+
75  };
+
76  }
+
77 
+
98  inline var fma(const stan::agrad::var& a,
+
99  const stan::agrad::var& b,
+
100  const stan::agrad::var& c) {
+
101  return var(new fma_vvv_vari(a.vi_,b.vi_,c.vi_));
+
102  }
+
103 
+
122  inline var fma(const stan::agrad::var& a,
+
123  const stan::agrad::var& b,
+
124  const double& c) {
+
125  return var(new fma_vvd_vari(a.vi_,b.vi_,c));
+
126  }
+
127 
+
146  inline var fma(const stan::agrad::var& a,
+
147  const double& b,
+
148  const stan::agrad::var& c) {
+
149  return var(new fma_vdv_vari(a.vi_,b,c.vi_));
+
150  }
+
151 
+
168  inline var fma(const stan::agrad::var& a,
+
169  const double& b,
+
170  const double& c) {
+
171  return var(new fma_vdd_vari(a.vi_,b,c));
+
172  }
+
173 
+
190  inline var fma(const double& a,
+
191  const stan::agrad::var& b,
+
192  const double& c) {
+
193  return var(new fma_vdd_vari(b.vi_,a,c));
+
194  }
+
195 
+
212  inline var fma(const double& a,
+
213  const double& b,
+
214  const stan::agrad::var& c) {
+
215  return var(new fma_ddv_vari(a,b,c.vi_));
+
216  }
+
217 
+
236  inline var fma(const double& a,
+
237  const stan::agrad::var& b,
+
238  const stan::agrad::var& c) {
+
239  return var(new fma_vdv_vari(b.vi_,a,c.vi_)); // a-b symmetry
+
240  }
+
241 
+
242  }
+
243 }
+
244 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2rev_2functions_2gamma__p_8hpp.html b/doc/api/html/agrad_2rev_2functions_2gamma__p_8hpp.html new file mode 100644 index 00000000000..14d051cbea1 --- /dev/null +++ b/doc/api/html/agrad_2rev_2functions_2gamma__p_8hpp.html @@ -0,0 +1,139 @@ + + + + + +Stan: src/stan/agrad/rev/functions/gamma_p.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
gamma_p.hpp File Reference
+
+
+
#include <valarray>
+#include <stan/agrad/rev/var.hpp>
+#include <stan/agrad/rev/internal/vv_vari.hpp>
+#include <stan/agrad/rev/internal/dv_vari.hpp>
+#include <stan/agrad/rev/internal/vd_vari.hpp>
+#include <stan/math/functions/gamma_p.hpp>
+#include <boost/math/special_functions/gamma.hpp>
+#include <boost/math/special_functions/digamma.hpp>
+
+

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+ + + + + + + +

+Functions

var stan::agrad::gamma_p (const stan::agrad::var &a, const stan::agrad::var &b)
 
var stan::agrad::gamma_p (const stan::agrad::var &a, const double &b)
 
var stan::agrad::gamma_p (const double &a, const stan::agrad::var &b)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2rev_2functions_2gamma__p_8hpp_source.html b/doc/api/html/agrad_2rev_2functions_2gamma__p_8hpp_source.html new file mode 100644 index 00000000000..65c4d1bb11d --- /dev/null +++ b/doc/api/html/agrad_2rev_2functions_2gamma__p_8hpp_source.html @@ -0,0 +1,215 @@ + + + + + +Stan: src/stan/agrad/rev/functions/gamma_p.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
gamma_p.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__REV__FUNCTIONS__GAMMA_P_HPP__
+
2 #define __STAN__AGRAD__REV__FUNCTIONS__GAMMA_P_HPP__
+
3 
+
4 #include <valarray>
+
5 #include <stan/agrad/rev/var.hpp>
+ + + + +
10 #include <boost/math/special_functions/gamma.hpp>
+
11 #include <boost/math/special_functions/digamma.hpp>
+
12 
+
13 namespace stan {
+
14  namespace agrad {
+
15 
+
16  namespace {
+
17  class gamma_p_vv_vari : public op_vv_vari {
+
18  public:
+
19  gamma_p_vv_vari(vari* avi, vari* bvi) :
+
20  op_vv_vari(stan::math::gamma_p(avi->val_,bvi->val_),
+
21  avi,bvi) {
+
22  }
+
23  void chain() {
+
24 
+
25  double u = stan::math::gamma_p(avi_->val_, bvi_->val_);
+
26 
+
27  double S = 0.0;
+
28  double s = 1.0;
+
29  double l = std::log(bvi_->val_);
+
30  double g = boost::math::tgamma(avi_->val_);
+
31  double dig = boost::math::digamma(avi_->val_);
+
32 
+
33  int k = 0;
+
34  double delta = s / (avi_->val_ * avi_->val_);
+
35 
+
36  while (std::fabs(delta) > 1e-6) {
+
37  S += delta;
+
38  ++k;
+
39  s *= -bvi_->val_ / k;
+
40  delta = s / ((k + avi_->val_) * (k + avi_->val_));
+
41  }
+
42 
+
43 
+
44  avi_->adj_ -= adj_ * ((u) * ( dig - l ) + std::exp( avi_->val_ * l ) * S / g);
+
45  bvi_->adj_ += adj_ * (std::exp(-bvi_->val_) * std::pow(bvi_->val_, avi_->val_ - 1.0) / g);
+
46  }
+
47  };
+
48 
+
49  class gamma_p_vd_vari : public op_vd_vari {
+
50  public:
+
51  gamma_p_vd_vari(vari* avi, double b) :
+
52  op_vd_vari(stan::math::gamma_p(avi->val_,b),
+
53  avi,b) {
+
54  }
+
55  void chain() {
+
56 
+
57  double u = stan::math::gamma_p(avi_->val_, bd_);
+
58 
+
59  double S = 0.0;
+
60  double s = 1.0;
+
61  double l = std::log(bd_);
+
62  double g = boost::math::tgamma(avi_->val_);
+
63  double dig = boost::math::digamma(avi_->val_);
+
64 
+
65  int k = 0;
+
66  double delta = s / (avi_->val_ * avi_->val_);
+
67 
+
68  while (std::fabs(delta) > 1e-6) {
+
69  S += delta;
+
70  ++k;
+
71  s *= -bd_ / k;
+
72  delta = s / ((k + avi_->val_) * (k + avi_->val_));
+
73  }
+
74 
+
75  avi_->adj_ -= adj_ * ((u) * ( dig - l ) + std::exp( avi_->val_ * l ) * S / g);
+
76  }
+
77  };
+
78 
+
79  class gamma_p_dv_vari : public op_dv_vari {
+
80  public:
+
81  gamma_p_dv_vari(double a, vari* bvi) :
+
82  op_dv_vari(stan::math::gamma_p(a,bvi->val_),
+
83  a,bvi) {
+
84  }
+
85  void chain() {
+
86  bvi_->adj_ += adj_ * (std::exp(-bvi_->val_) * std::pow(bvi_->val_, ad_ - 1.0) / boost::math::tgamma(ad_));
+
87  }
+
88  };
+
89  }
+
90 
+
91  inline var gamma_p(const stan::agrad::var& a,
+
92  const stan::agrad::var& b) {
+
93  return var(new gamma_p_vv_vari(a.vi_,b.vi_));
+
94  }
+
95 
+
96  inline var gamma_p(const stan::agrad::var& a,
+
97  const double& b) {
+
98  return var(new gamma_p_vd_vari(a.vi_,b));
+
99  }
+
100 
+
101  inline var gamma_p(const double& a,
+
102  const stan::agrad::var& b) {
+
103  return var(new gamma_p_dv_vari(a,b.vi_));
+
104  }
+
105 
+
106  }
+
107 }
+
108 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2rev_2functions_2gamma__q_8hpp.html b/doc/api/html/agrad_2rev_2functions_2gamma__q_8hpp.html new file mode 100644 index 00000000000..f2955600bef --- /dev/null +++ b/doc/api/html/agrad_2rev_2functions_2gamma__q_8hpp.html @@ -0,0 +1,140 @@ + + + + + +Stan: src/stan/agrad/rev/functions/gamma_q.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
gamma_q.hpp File Reference
+
+
+
#include <valarray>
+#include <stan/agrad/rev/var.hpp>
+#include <stan/agrad/rev/internal/vv_vari.hpp>
+#include <stan/agrad/rev/internal/dv_vari.hpp>
+#include <stan/agrad/rev/internal/vd_vari.hpp>
+#include <stan/math/functions/gamma_q.hpp>
+#include <stan/prob/internal_math.hpp>
+#include <boost/math/special_functions/gamma.hpp>
+#include <boost/math/special_functions/digamma.hpp>
+
+

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+ + + + + + + +

+Functions

var stan::agrad::gamma_q (const stan::agrad::var &a, const stan::agrad::var &b)
 
var stan::agrad::gamma_q (const stan::agrad::var &a, const double &b)
 
var stan::agrad::gamma_q (const double &a, const stan::agrad::var &b)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2rev_2functions_2gamma__q_8hpp_source.html b/doc/api/html/agrad_2rev_2functions_2gamma__q_8hpp_source.html new file mode 100644 index 00000000000..ad55b693ade --- /dev/null +++ b/doc/api/html/agrad_2rev_2functions_2gamma__q_8hpp_source.html @@ -0,0 +1,185 @@ + + + + + +Stan: src/stan/agrad/rev/functions/gamma_q.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
gamma_q.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__REV__FUNCTIONS__GAMMA_Q_HPP__
+
2 #define __STAN__AGRAD__REV__FUNCTIONS__GAMMA_Q_HPP__
+
3 
+
4 #include <valarray>
+
5 #include <stan/agrad/rev/var.hpp>
+ + + + + +
11 #include <boost/math/special_functions/gamma.hpp>
+
12 #include <boost/math/special_functions/digamma.hpp>
+
13 
+
14 namespace stan {
+
15  namespace agrad {
+
16 
+
17  namespace {
+
18  class gamma_q_vv_vari : public op_vv_vari {
+
19  public:
+
20  gamma_q_vv_vari(vari* avi, vari* bvi) :
+
21  op_vv_vari(stan::math::gamma_q(avi->val_,bvi->val_),
+
22  avi,bvi) {
+
23  }
+
24  void chain() {
+
25  avi_->adj_ += adj_
+
26  * stan::math::gradRegIncGamma(avi_->val_, bvi_->val_,
+ +
28  boost::math::digamma(avi_->val_));
+
29  bvi_->adj_ -= adj_
+
30  * boost::math::gamma_p_derivative(avi_->val_, bvi_->val_);
+
31  }
+
32  };
+
33 
+
34  class gamma_q_vd_vari : public op_vd_vari {
+
35  public:
+
36  gamma_q_vd_vari(vari* avi, double b) :
+
37  op_vd_vari(stan::math::gamma_q(avi->val_,b),
+
38  avi,b) {
+
39  }
+
40  void chain() {
+
41  avi_->adj_ += adj_
+ + +
44  boost::math::digamma(avi_->val_));
+
45  }
+
46  };
+
47 
+
48  class gamma_q_dv_vari : public op_dv_vari {
+
49  public:
+
50  gamma_q_dv_vari(double a, vari* bvi) :
+
51  op_dv_vari(stan::math::gamma_q(a,bvi->val_),
+
52  a,bvi) {
+
53  }
+
54  void chain() {
+
55  bvi_->adj_ -= adj_
+
56  * boost::math::gamma_p_derivative(ad_, bvi_->val_);
+
57  }
+
58  };
+
59  }
+
60 
+
61  inline var gamma_q(const stan::agrad::var& a,
+
62  const stan::agrad::var& b) {
+
63  return var(new gamma_q_vv_vari(a.vi_,b.vi_));
+
64  }
+
65 
+
66  inline var gamma_q(const stan::agrad::var& a,
+
67  const double& b) {
+
68  return var(new gamma_q_vd_vari(a.vi_,b));
+
69  }
+
70 
+
71  inline var gamma_q(const double& a,
+
72  const stan::agrad::var& b) {
+
73  return var(new gamma_q_dv_vari(a,b.vi_));
+
74  }
+
75 
+
76  }
+
77 }
+
78 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2rev_2functions_2ibeta_8hpp.html b/doc/api/html/agrad_2rev_2functions_2ibeta_8hpp.html new file mode 100644 index 00000000000..5db8965fe88 --- /dev/null +++ b/doc/api/html/agrad_2rev_2functions_2ibeta_8hpp.html @@ -0,0 +1,139 @@ + + + + + +Stan: src/stan/agrad/rev/functions/ibeta.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
ibeta.hpp File Reference
+
+
+
#include <boost/math/special_functions/digamma.hpp>
+#include <boost/math/special_functions/gamma.hpp>
+#include <stan/agrad/rev/var.hpp>
+#include <stan/agrad/rev/internal/vvv_vari.hpp>
+#include <stan/agrad/rev/internal/vvd_vari.hpp>
+#include <stan/agrad/rev/internal/vdv_vari.hpp>
+#include <stan/agrad/rev/internal/vdd_vari.hpp>
+#include <stan/agrad/rev/internal/dvv_vari.hpp>
+#include <stan/agrad/rev/internal/dvd_vari.hpp>
+#include <stan/agrad/rev/internal/ddv_vari.hpp>
+#include <stan/math/functions/ibeta.hpp>
+
+

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+ + + + +

+Functions

var stan::agrad::ibeta (const var &a, const var &b, const var &x)
 The normalized incomplete beta function of a, b, and x.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2rev_2functions_2ibeta_8hpp_source.html b/doc/api/html/agrad_2rev_2functions_2ibeta_8hpp_source.html new file mode 100644 index 00000000000..fbb97cfa854 --- /dev/null +++ b/doc/api/html/agrad_2rev_2functions_2ibeta_8hpp_source.html @@ -0,0 +1,315 @@ + + + + + +Stan: src/stan/agrad/rev/functions/ibeta.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
ibeta.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__REV__FUNCTIONS__IBETA_HPP__
+
2 #define __STAN__AGRAD__REV__FUNCTIONS__IBETA_HPP__
+
3 
+
4 #include <boost/math/special_functions/digamma.hpp>
+
5 #include <boost/math/special_functions/gamma.hpp>
+
6 #include <stan/agrad/rev/var.hpp>
+ + + + + + + + +
15 
+
16 namespace stan {
+
17  namespace agrad {
+
18 
+
19  namespace {
+
25  double ibeta_hypergeometric_helper(double a, double b, double z, double precision=1e-8, double max_steps=1000) {
+
26  double val=0;
+
27  double diff=1;
+
28  double k=0;
+
29  double a_2 = a*a;
+
30  double bprod = 1;
+
31  while (std::abs(diff) > precision && (++k < max_steps) && !std::isnan(diff)) {
+
32  val += diff;
+
33  bprod *= b+k-1.0;
+
34  diff = a_2*std::pow(a+k,-2)*bprod*std::pow(z,k)/boost::math::tgamma(k+1);
+
35  }
+
36  return val;
+
37  }
+
38 
+
39  class ibeta_vvv_vari : public op_vvv_vari {
+
40  public:
+
41  ibeta_vvv_vari(vari* avi, vari* bvi, vari* xvi) :
+
42  op_vvv_vari(stan::math::ibeta(avi->val_,bvi->val_,xvi->val_),avi,bvi,xvi) {
+
43  }
+
44  void chain() {
+
45  double a = avi_->val_;
+
46  double b = bvi_->val_;
+
47  double c = cvi_->val_;
+
48 
+
49  using std::sin;
+
50  using std::pow;
+
51  using std::log;
+ +
53  using boost::math::tgamma;
+ +
55  using boost::math::ibeta;
+
56  using stan::agrad::ibeta_hypergeometric_helper;
+
57  avi_->adj_ += adj_ *
+
58  (log(c) - digamma(a) + digamma(a+b)) * val_ -
+
59  tgamma(a)*tgamma(a+b)/tgamma(b) * pow(c,a) / tgamma(1+a) / tgamma(1+a) * ibeta_hypergeometric_helper(a, 1-b, c);
+
60  bvi_->adj_ += adj_ *
+
61  (tgamma(b)*tgamma(a+b)/tgamma(a)*pow(1-c,b) * ibeta_hypergeometric_helper(b,1-a,1-c)/tgamma(b+1)/tgamma(b+1)
+
62  + ibeta(b, a, 1-c) * (digamma(b) - digamma(a+b) - log(1-c)));
+
63  cvi_->adj_ += adj_ *
+
64  boost::math::ibeta_derivative(a,b,c);
+
65  }
+
66  };
+
67  class ibeta_vvd_vari : public op_vvd_vari {
+
68  public:
+
69  ibeta_vvd_vari(vari* avi, vari* bvi, double x) :
+
70  op_vvd_vari(stan::math::ibeta(avi->val_,bvi->val_,x),avi,bvi,x) {
+
71  }
+
72  void chain() {
+
73  double a = avi_->val_;
+
74  double b = bvi_->val_;
+
75  double c = cd_;
+
76 
+
77  using std::sin;
+
78  using std::pow;
+
79  using std::log;
+ +
81  using boost::math::tgamma;
+ +
83  using boost::math::ibeta;
+
84  using stan::agrad::ibeta_hypergeometric_helper;
+
85  avi_->adj_ += adj_ *
+
86  (log(c) - digamma(a) + digamma(a+b)) * val_ -
+
87  tgamma(a)*tgamma(a+b)/tgamma(b) * pow(c,a) / tgamma(1+a) / tgamma(1+a) * ibeta_hypergeometric_helper(a, 1-b, c);
+
88  bvi_->adj_ += adj_ *
+
89  (tgamma(b)*tgamma(a+b)/tgamma(a)*pow(1-c,b) * ibeta_hypergeometric_helper(b,1-a,1-c)/tgamma(b+1)/tgamma(b+1)
+
90  + ibeta(b, a, 1-c) * (digamma(b) - digamma(a+b) - log(1-c)));
+
91  }
+
92  };
+
93  class ibeta_vdv_vari : public op_vdv_vari {
+
94  public:
+
95  ibeta_vdv_vari(vari* avi, double b, vari* xvi) :
+
96  op_vdv_vari(stan::math::ibeta(avi->val_,b,xvi->val_),avi,b,xvi) {
+
97  }
+
98  void chain() {
+
99  double a = avi_->val_;
+
100  double b = bd_;
+
101  double c = cvi_->val_;
+
102 
+
103  using std::sin;
+
104  using std::pow;
+
105  using std::log;
+ +
107  using boost::math::tgamma;
+
108  using boost::math::digamma;
+
109  using boost::math::ibeta;
+
110  using stan::agrad::ibeta_hypergeometric_helper;
+
111  avi_->adj_ += adj_ *
+
112  (log(c) - digamma(a) + digamma(a+b)) * val_ -
+
113  tgamma(a)*tgamma(a+b)/tgamma(b) * pow(c,a) / tgamma(1+a) / tgamma(1+a) * ibeta_hypergeometric_helper(a, 1-b, c);
+
114  cvi_->adj_ += adj_ *
+
115  boost::math::ibeta_derivative(a,b,c);
+
116  }
+
117  };
+
118  class ibeta_vdd_vari : public op_vdd_vari {
+
119  public:
+
120  ibeta_vdd_vari(vari* avi, double b, double x) :
+
121  op_vdd_vari(stan::math::ibeta(avi->val_,b,x),avi,b,x) {
+
122  }
+
123  void chain() {
+
124  double a = avi_->val_;
+
125  double b = bd_;
+
126  double c = cd_;
+
127 
+
128  using std::sin;
+
129  using std::pow;
+
130  using std::log;
+ +
132  using boost::math::tgamma;
+
133  using boost::math::digamma;
+
134  using boost::math::ibeta;
+
135  using stan::agrad::ibeta_hypergeometric_helper;
+
136  avi_->adj_ += adj_ *
+
137  (log(c) - digamma(a) + digamma(a+b)) * val_ -
+
138  tgamma(a)*tgamma(a+b)/tgamma(b) * pow(c,a) / tgamma(1+a) / tgamma(1+a) * ibeta_hypergeometric_helper(a, 1-b, c);
+
139  }
+
140  };
+
141  class ibeta_dvv_vari : public op_dvv_vari {
+
142  public:
+
143  ibeta_dvv_vari(double a, vari* bvi, vari* xvi) :
+
144  op_dvv_vari(stan::math::ibeta(a,bvi->val_,xvi->val_),a,bvi,xvi) {
+
145  }
+
146  void chain() {
+
147  double a = ad_;
+
148  double b = bvi_->val_;
+
149  double c = cvi_->val_;
+
150 
+
151  using std::sin;
+
152  using std::pow;
+
153  using std::log;
+ +
155  using boost::math::tgamma;
+
156  using boost::math::digamma;
+
157  using boost::math::ibeta;
+
158  using stan::agrad::ibeta_hypergeometric_helper;
+
159  bvi_->adj_ += adj_ *
+
160  (tgamma(b)*tgamma(a+b)/tgamma(a)*pow(1-c,b) * ibeta_hypergeometric_helper(b,1-a,1-c)/tgamma(b+1)/tgamma(b+1)
+
161  + ibeta(b, a, 1-c) * (digamma(b) - digamma(a+b) - log(1-c)));
+
162  cvi_->adj_ += adj_ *
+
163  boost::math::ibeta_derivative(a,b,c);
+
164  }
+
165  };
+
166  class ibeta_dvd_vari : public op_dvd_vari {
+
167  public:
+
168  ibeta_dvd_vari(double a, vari* bvi, double x) :
+
169  op_dvd_vari(stan::math::ibeta(a,bvi->val_,x),a,bvi,x) {
+
170  }
+
171  void chain() {
+
172  double a = ad_;
+
173  double b = bvi_->val_;
+
174  double c = cd_;
+
175 
+
176  using std::sin;
+
177  using std::pow;
+
178  using std::log;
+ +
180  using boost::math::tgamma;
+
181  using boost::math::digamma;
+
182  using boost::math::ibeta;
+
183  using stan::agrad::ibeta_hypergeometric_helper;
+
184  bvi_->adj_ += adj_ *
+
185  (tgamma(b)*tgamma(a+b)/tgamma(a)*pow(1-c,b) * ibeta_hypergeometric_helper(b,1-a,1-c)/tgamma(b+1)/tgamma(b+1)
+
186  + ibeta(b, a, 1-c) * (digamma(b) - digamma(a+b) - log(1-c)));
+
187  }
+
188  };
+
189  class ibeta_ddv_vari : public op_ddv_vari {
+
190  public:
+
191  ibeta_ddv_vari(double a, double b, vari* xvi) :
+
192  op_ddv_vari(stan::math::ibeta(a,b,xvi->val_),a,b,xvi) {
+
193  }
+
194  void chain() {
+
195  double a = ad_;
+
196  double b = bd_;
+
197  double c = cvi_->val_;
+
198 
+
199  cvi_->adj_ += adj_ *
+
200  boost::math::ibeta_derivative(a,b,c);
+
201  }
+
202  };
+
203  }
+
204 
+
222  inline var ibeta(const var& a,
+
223  const var& b,
+
224  const var& x) {
+
225  return var(new ibeta_vvv_vari(a.vi_, b.vi_, x.vi_));
+
226  }
+
227 
+
228  }
+
229 }
+
230 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2rev_2functions_2if__else_8hpp.html b/doc/api/html/agrad_2rev_2functions_2if__else_8hpp.html new file mode 100644 index 00000000000..8550766fea7 --- /dev/null +++ b/doc/api/html/agrad_2rev_2functions_2if__else_8hpp.html @@ -0,0 +1,135 @@ + + + + + +Stan: src/stan/agrad/rev/functions/if_else.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
if_else.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+ + + + + + + + + + +

+Functions

var stan::agrad::if_else (bool c, const var &y_true, const var &y_false)
 If the specified condition is true, return the first variable, otherwise return the second variable.
 
var stan::agrad::if_else (bool c, double y_true, const var &y_false)
 If the specified condition is true, return a new variable constructed from the first scalar, otherwise return the second variable.
 
var stan::agrad::if_else (bool c, const var &y_true, const double y_false)
 If the specified condition is true, return the first variable, otherwise return a new variable constructed from the second scalar.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2rev_2functions_2if__else_8hpp_source.html b/doc/api/html/agrad_2rev_2functions_2if__else_8hpp_source.html new file mode 100644 index 00000000000..1dd2a10b3b0 --- /dev/null +++ b/doc/api/html/agrad_2rev_2functions_2if__else_8hpp_source.html @@ -0,0 +1,134 @@ + + + + + +Stan: src/stan/agrad/rev/functions/if_else.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
if_else.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__REV__FUNCTIONS__IF_ELSE_HPP__
+
2 #define __STAN__AGRAD__REV__FUNCTIONS__IF_ELSE_HPP__
+
3 
+
4 #include <stan/agrad/rev/var.hpp>
+
5 
+
6 namespace stan {
+
7  namespace agrad {
+
8 
+
17  inline var if_else(bool c, const var& y_true, const var&y_false) {
+
18  return c ? y_true : y_false;
+
19  }
+
29  inline var if_else(bool c, double y_true, const var& y_false) {
+
30  if (c)
+
31  return var(y_true);
+
32  else
+
33  return y_false;
+
34  }
+
44  inline var if_else(bool c, const var& y_true, const double y_false) {
+
45  if (c)
+
46  return y_true;
+
47  else
+
48  return var(y_false);
+
49  }
+
50 
+
51  }
+
52 }
+
53 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2rev_2functions_2inv_8hpp.html b/doc/api/html/agrad_2rev_2functions_2inv_8hpp.html new file mode 100644 index 00000000000..7535f69cee6 --- /dev/null +++ b/doc/api/html/agrad_2rev_2functions_2inv_8hpp.html @@ -0,0 +1,131 @@ + + + + + +Stan: src/stan/agrad/rev/functions/inv.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
inv.hpp File Reference
+
+
+
#include <valarray>
+#include <stan/agrad/rev/var.hpp>
+#include <stan/agrad/rev/internal/v_vari.hpp>
+#include <stan/math/functions/inv.hpp>
+
+

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+ + + +

+Functions

var stan::agrad::inv (const var &a)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2rev_2functions_2inv_8hpp_source.html b/doc/api/html/agrad_2rev_2functions_2inv_8hpp_source.html new file mode 100644 index 00000000000..85da8e51b38 --- /dev/null +++ b/doc/api/html/agrad_2rev_2functions_2inv_8hpp_source.html @@ -0,0 +1,137 @@ + + + + + +Stan: src/stan/agrad/rev/functions/inv.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
inv.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__REV__FUNCTIONS__INV_HPP__
+
2 #define __STAN__AGRAD__REV__FUNCTIONS__INV_HPP__
+
3 
+
4 #include <valarray>
+
5 #include <stan/agrad/rev/var.hpp>
+ + +
8 
+
9 namespace stan {
+
10  namespace agrad {
+
11 
+
12  namespace {
+
13  class inv_vari : public op_v_vari {
+
14  public:
+
15  inv_vari(vari* avi) :
+
16  op_v_vari(stan::math::inv(avi->val_),avi) {
+
17  }
+
18  void chain() {
+
19  avi_->adj_ -= adj_ / (avi_->val_ * avi_->val_);
+
20  }
+
21  };
+
22  }
+
23 
+
24  inline var inv(const var& a) {
+
25  return var(new inv_vari(a.vi_));
+
26  }
+
27 
+
28  }
+
29 }
+
30 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2rev_2functions_2inv__cloglog_8hpp.html b/doc/api/html/agrad_2rev_2functions_2inv__cloglog_8hpp.html new file mode 100644 index 00000000000..f2da6b79bb6 --- /dev/null +++ b/doc/api/html/agrad_2rev_2functions_2inv__cloglog_8hpp.html @@ -0,0 +1,131 @@ + + + + + +Stan: src/stan/agrad/rev/functions/inv_cloglog.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
inv_cloglog.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+ + + + +

+Functions

var stan::agrad::inv_cloglog (const stan::agrad::var &a)
 Return the inverse complementary log-log function applied specified variable (stan).
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2rev_2functions_2inv__cloglog_8hpp_source.html b/doc/api/html/agrad_2rev_2functions_2inv__cloglog_8hpp_source.html new file mode 100644 index 00000000000..75a24a6065a --- /dev/null +++ b/doc/api/html/agrad_2rev_2functions_2inv__cloglog_8hpp_source.html @@ -0,0 +1,136 @@ + + + + + +Stan: src/stan/agrad/rev/functions/inv_cloglog.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
inv_cloglog.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__REV__FUNCTIONS__INV_CLOGLOG_HPP__
+
2 #define __STAN__AGRAD__REV__FUNCTIONS__INV_CLOGLOG_HPP__
+
3 
+
4 #include <stan/agrad/rev/var.hpp>
+ + +
7 
+
8 namespace stan {
+
9  namespace agrad {
+
10 
+
11  namespace {
+
12  class inv_cloglog_vari : public op_v_vari {
+
13  public:
+
14  inv_cloglog_vari(vari* avi) :
+
15  op_v_vari(stan::math::inv_cloglog(avi->val_), avi) {
+
16  }
+
17  void chain() {
+
18  avi_->adj_ += adj_ * std::exp(avi_->val_ - std::exp(avi_->val_));
+
19  }
+
20  };
+
21  }
+
22 
+
37  inline var inv_cloglog(const stan::agrad::var& a) {
+
38  return var(new inv_cloglog_vari(a.vi_));
+
39  }
+
40 
+
41  }
+
42 }
+
43 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2rev_2functions_2inv__logit_8hpp.html b/doc/api/html/agrad_2rev_2functions_2inv__logit_8hpp.html new file mode 100644 index 00000000000..cb4a47ef9ae --- /dev/null +++ b/doc/api/html/agrad_2rev_2functions_2inv__logit_8hpp.html @@ -0,0 +1,131 @@ + + + + + +Stan: src/stan/agrad/rev/functions/inv_logit.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
inv_logit.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+ + + + +

+Functions

var stan::agrad::inv_logit (const stan::agrad::var &a)
 The inverse logit function for variables (stan).
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2rev_2functions_2inv__logit_8hpp_source.html b/doc/api/html/agrad_2rev_2functions_2inv__logit_8hpp_source.html new file mode 100644 index 00000000000..222fb975b26 --- /dev/null +++ b/doc/api/html/agrad_2rev_2functions_2inv__logit_8hpp_source.html @@ -0,0 +1,136 @@ + + + + + +Stan: src/stan/agrad/rev/functions/inv_logit.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
inv_logit.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__REV__FUNCTIONS__INV_LOGIT_HPP__
+
2 #define __STAN__AGRAD__REV__FUNCTIONS__INV_LOGIT_HPP__
+
3 
+
4 #include <stan/agrad/rev/var.hpp>
+ + +
7 
+
8 namespace stan {
+
9  namespace agrad {
+
10 
+
11  namespace {
+
12  class inv_logit_vari : public op_v_vari {
+
13  public:
+
14  inv_logit_vari(vari* avi) :
+
15  op_v_vari(stan::math::inv_logit(avi->val_),avi) {
+
16  }
+
17  void chain() {
+
18  avi_->adj_ += adj_ * val_ * (1.0 - val_);
+
19  }
+
20  };
+
21  }
+
22 
+
35  inline var inv_logit(const stan::agrad::var& a) {
+
36  return var(new inv_logit_vari(a.vi_));
+
37  }
+
38 
+
39  }
+
40 }
+
41 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2rev_2functions_2inv__sqrt_8hpp.html b/doc/api/html/agrad_2rev_2functions_2inv__sqrt_8hpp.html new file mode 100644 index 00000000000..f7d6a8b3e05 --- /dev/null +++ b/doc/api/html/agrad_2rev_2functions_2inv__sqrt_8hpp.html @@ -0,0 +1,131 @@ + + + + + +Stan: src/stan/agrad/rev/functions/inv_sqrt.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
inv_sqrt.hpp File Reference
+
+
+
#include <valarray>
+#include <stan/agrad/rev/var.hpp>
+#include <stan/agrad/rev/internal/v_vari.hpp>
+#include <stan/math/functions/inv_sqrt.hpp>
+
+

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+ + + +

+Functions

var stan::agrad::inv_sqrt (const var &a)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2rev_2functions_2inv__sqrt_8hpp_source.html b/doc/api/html/agrad_2rev_2functions_2inv__sqrt_8hpp_source.html new file mode 100644 index 00000000000..c05d8e7ad65 --- /dev/null +++ b/doc/api/html/agrad_2rev_2functions_2inv__sqrt_8hpp_source.html @@ -0,0 +1,137 @@ + + + + + +Stan: src/stan/agrad/rev/functions/inv_sqrt.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
inv_sqrt.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__REV__FUNCTIONS__INV_SQRT_HPP__
+
2 #define __STAN__AGRAD__REV__FUNCTIONS__INV_SQRT_HPP__
+
3 
+
4 #include <valarray>
+
5 #include <stan/agrad/rev/var.hpp>
+ + +
8 
+
9 namespace stan {
+
10  namespace agrad {
+
11 
+
12  namespace {
+
13  class inv_sqrt_vari : public op_v_vari {
+
14  public:
+
15  inv_sqrt_vari(vari* avi) :
+
16  op_v_vari(stan::math::inv_sqrt(avi->val_),avi) {
+
17  }
+
18  void chain() {
+
19  avi_->adj_ -= 0.5 * adj_ / (avi_->val_ * std::sqrt(avi_->val_));
+
20  }
+
21  };
+
22  }
+
23 
+
24  inline var inv_sqrt(const var& a) {
+
25  return var(new inv_sqrt_vari(a.vi_));
+
26  }
+
27 
+
28  }
+
29 }
+
30 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2rev_2functions_2inv__square_8hpp.html b/doc/api/html/agrad_2rev_2functions_2inv__square_8hpp.html new file mode 100644 index 00000000000..656e8e572b7 --- /dev/null +++ b/doc/api/html/agrad_2rev_2functions_2inv__square_8hpp.html @@ -0,0 +1,131 @@ + + + + + +Stan: src/stan/agrad/rev/functions/inv_square.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
inv_square.hpp File Reference
+
+
+
#include <valarray>
+#include <stan/agrad/rev/var.hpp>
+#include <stan/agrad/rev/internal/v_vari.hpp>
+#include <stan/math/functions/inv_square.hpp>
+
+

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+ + + +

+Functions

var stan::agrad::inv_square (const var &a)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2rev_2functions_2inv__square_8hpp_source.html b/doc/api/html/agrad_2rev_2functions_2inv__square_8hpp_source.html new file mode 100644 index 00000000000..75144193beb --- /dev/null +++ b/doc/api/html/agrad_2rev_2functions_2inv__square_8hpp_source.html @@ -0,0 +1,137 @@ + + + + + +Stan: src/stan/agrad/rev/functions/inv_square.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
inv_square.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__REV__FUNCTIONS__INV_SQUARE_HPP__
+
2 #define __STAN__AGRAD__REV__FUNCTIONS__INV_SQUARE_HPP__
+
3 
+
4 #include <valarray>
+
5 #include <stan/agrad/rev/var.hpp>
+ + +
8 
+
9 namespace stan {
+
10  namespace agrad {
+
11 
+
12  namespace {
+
13  class inv_square_vari : public op_v_vari {
+
14  public:
+
15  inv_square_vari(vari* avi) :
+
16  op_v_vari(stan::math::inv_square(avi->val_),avi) {
+
17  }
+
18  void chain() {
+
19  avi_->adj_ -= 2 * adj_ / (avi_->val_ * avi_->val_ * avi_->val_);
+
20  }
+
21  };
+
22  }
+
23 
+
24  inline var inv_square(const var& a) {
+
25  return var(new inv_square_vari(a.vi_));
+
26  }
+
27 
+
28  }
+
29 }
+
30 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2rev_2functions_2is__uninitialized_8hpp.html b/doc/api/html/agrad_2rev_2functions_2is__uninitialized_8hpp.html new file mode 100644 index 00000000000..6ac505a3a56 --- /dev/null +++ b/doc/api/html/agrad_2rev_2functions_2is__uninitialized_8hpp.html @@ -0,0 +1,132 @@ + + + + + +Stan: src/stan/agrad/rev/functions/is_uninitialized.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
is_uninitialized.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+ + + + +

+Functions

bool stan::agrad::is_uninitialized (var x)
 Returns true if the specified variable is uninitialized.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2rev_2functions_2is__uninitialized_8hpp_source.html b/doc/api/html/agrad_2rev_2functions_2is__uninitialized_8hpp_source.html new file mode 100644 index 00000000000..a8627979418 --- /dev/null +++ b/doc/api/html/agrad_2rev_2functions_2is__uninitialized_8hpp_source.html @@ -0,0 +1,126 @@ + + + + + +Stan: src/stan/agrad/rev/functions/is_uninitialized.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
is_uninitialized.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__REV__FUNCTIONS__IS_UNINITIALIZED_HPP__
+
2 #define __STAN__AGRAD__REV__FUNCTIONS__IS_UNINITIALIZED_HPP__
+
3 
+
4 #include <stan/agrad/rev/var.hpp>
+ + + +
8 
+
9 namespace stan {
+
10 
+
11  namespace agrad {
+
12 
+
25  inline bool is_uninitialized(var x) {
+
26  return x.is_uninitialized();
+
27  }
+
28 
+
29  }
+
30 }
+
31 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2rev_2functions_2lgamma_8hpp.html b/doc/api/html/agrad_2rev_2functions_2lgamma_8hpp.html new file mode 100644 index 00000000000..cc9c66f0738 --- /dev/null +++ b/doc/api/html/agrad_2rev_2functions_2lgamma_8hpp.html @@ -0,0 +1,134 @@ + + + + + +Stan: src/stan/agrad/rev/functions/lgamma.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
lgamma.hpp File Reference
+
+
+
#include <valarray>
+#include <stan/agrad/rev/var.hpp>
+#include <stan/agrad/rev/internal/v_vari.hpp>
+#include <stan/math/constants.hpp>
+#include <boost/math/special_functions/digamma.hpp>
+#include <boost/math/special_functions/gamma.hpp>
+
+

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+ + + + +

+Functions

var stan::agrad::lgamma (const stan::agrad::var &a)
 The log gamma function for variables (C99).
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2rev_2functions_2lgamma_8hpp_source.html b/doc/api/html/agrad_2rev_2functions_2lgamma_8hpp_source.html new file mode 100644 index 00000000000..bc3e51dd617 --- /dev/null +++ b/doc/api/html/agrad_2rev_2functions_2lgamma_8hpp_source.html @@ -0,0 +1,140 @@ + + + + + +Stan: src/stan/agrad/rev/functions/lgamma.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
lgamma.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__REV__FUNCTIONS__LGAMMA_HPP__
+
2 #define __STAN__AGRAD__REV__FUNCTIONS__LGAMMA_HPP__
+
3 
+
4 #include <valarray>
+
5 #include <stan/agrad/rev/var.hpp>
+ + +
8 #include <boost/math/special_functions/digamma.hpp>
+
9 #include <boost/math/special_functions/gamma.hpp>
+
10 
+
11 namespace stan {
+
12  namespace agrad {
+
13 
+
14  namespace {
+
15  class lgamma_vari : public op_v_vari {
+
16  public:
+
17  lgamma_vari(double value, vari* avi) :
+
18  op_v_vari(value, avi) {
+
19  }
+
20  void chain() {
+
21  avi_->adj_ += adj_ * boost::math::digamma(avi_->val_);
+
22  }
+
23  };
+
24  }
+
25 
+
36  inline var lgamma(const stan::agrad::var& a) {
+
37  double lgamma_a = boost::math::lgamma(a.val());
+
38  return var(new lgamma_vari(lgamma_a, a.vi_));
+
39  }
+
40 
+
41  }
+
42 }
+
43 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2rev_2functions_2lmgamma_8hpp.html b/doc/api/html/agrad_2rev_2functions_2lmgamma_8hpp.html new file mode 100644 index 00000000000..6a2ee2b239b --- /dev/null +++ b/doc/api/html/agrad_2rev_2functions_2lmgamma_8hpp.html @@ -0,0 +1,133 @@ + + + + + +Stan: src/stan/agrad/rev/functions/lmgamma.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
lmgamma.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+ + + +

+Functions

var stan::agrad::lmgamma (int a, const stan::agrad::var &b)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2rev_2functions_2lmgamma_8hpp_source.html b/doc/api/html/agrad_2rev_2functions_2lmgamma_8hpp_source.html new file mode 100644 index 00000000000..a032d13ee47 --- /dev/null +++ b/doc/api/html/agrad_2rev_2functions_2lmgamma_8hpp_source.html @@ -0,0 +1,142 @@ + + + + + +Stan: src/stan/agrad/rev/functions/lmgamma.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
lmgamma.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__REV__FUNCTIONS__LMGAMMA_HPP__
+
2 #define __STAN__AGRAD__REV__FUNCTIONS__LMGAMMA_HPP__
+
3 
+
4 #include <valarray>
+
5 #include <stan/agrad/rev/var.hpp>
+ + + + +
10 
+
11 namespace stan {
+
12  namespace agrad {
+
13 
+
14  namespace {
+
15  class lmgamma_dv_vari : public op_dv_vari {
+
16  public:
+
17  lmgamma_dv_vari(int a, vari* bvi) :
+
18  op_dv_vari(stan::math::lmgamma(a, bvi->val_),a,bvi) {
+
19  }
+
20  void chain() {
+
21  double deriv = 0;
+
22  for (int i = 1; i < ad_ + 1; i++)
+
23  deriv += stan::math::digamma(bvi_->val_ + (1.0 - i) / 2.0);
+
24  bvi_->adj_ += adj_ * deriv;
+
25  }
+
26  };
+
27  }
+
28 
+
29  inline var lmgamma(int a, const stan::agrad::var& b) {
+
30  return var(new lmgamma_dv_vari(a, b.vi_));
+
31  }
+
32 
+
33  }
+
34 }
+
35 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2rev_2functions_2log1m_8hpp.html b/doc/api/html/agrad_2rev_2functions_2log1m_8hpp.html new file mode 100644 index 00000000000..6a3c973dc70 --- /dev/null +++ b/doc/api/html/agrad_2rev_2functions_2log1m_8hpp.html @@ -0,0 +1,131 @@ + + + + + +Stan: src/stan/agrad/rev/functions/log1m.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
log1m.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+ + + + +

+Functions

var stan::agrad::log1m (const stan::agrad::var &a)
 The log (1 - x) function for variables.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2rev_2functions_2log1m_8hpp_source.html b/doc/api/html/agrad_2rev_2functions_2log1m_8hpp_source.html new file mode 100644 index 00000000000..0672877784a --- /dev/null +++ b/doc/api/html/agrad_2rev_2functions_2log1m_8hpp_source.html @@ -0,0 +1,136 @@ + + + + + +Stan: src/stan/agrad/rev/functions/log1m.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
log1m.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__REV__FUNCTIONS__LOG1M_HPP__
+
2 #define __STAN__AGRAD__REV__FUNCTIONS__LOG1M_HPP__
+
3 
+
4 #include <stan/agrad/rev/var.hpp>
+ + +
7 
+
8 namespace stan {
+
9  namespace agrad {
+
10 
+
11  namespace {
+
12  class log1m_vari : public op_v_vari {
+
13  public:
+
14  log1m_vari(vari* avi) :
+
15  op_v_vari(stan::math::log1p(-avi->val_),avi) {
+
16  }
+
17  void chain() {
+
18  avi_->adj_ += adj_ / (avi_->val_ - 1);
+
19  }
+
20  };
+
21  }
+
22 
+
33  inline var log1m(const stan::agrad::var& a) {
+
34  return var(new log1m_vari(a.vi_));
+
35  }
+
36 
+
37  }
+
38 }
+
39 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2rev_2functions_2log1m__exp_8hpp.html b/doc/api/html/agrad_2rev_2functions_2log1m__exp_8hpp.html new file mode 100644 index 00000000000..b0e48736d54 --- /dev/null +++ b/doc/api/html/agrad_2rev_2functions_2log1m__exp_8hpp.html @@ -0,0 +1,133 @@ + + + + + +Stan: src/stan/agrad/rev/functions/log1m_exp.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
log1m_exp.hpp File Reference
+
+
+
#include <stan/agrad/rev/var.hpp>
+#include <stan/agrad/rev/internal/v_vari.hpp>
+#include <stan/math/functions/log1m_exp.hpp>
+#include <stan/agrad/rev/calculate_chain.hpp>
+#include <boost/math/special_functions/expm1.hpp>
+
+

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+ + + + +

+Functions

var stan::agrad::log1m_exp (const stan::agrad::var &a)
 Return the log of 1 minus the exponential of the specified variable.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2rev_2functions_2log1m__exp_8hpp_source.html b/doc/api/html/agrad_2rev_2functions_2log1m__exp_8hpp_source.html new file mode 100644 index 00000000000..1c37776195e --- /dev/null +++ b/doc/api/html/agrad_2rev_2functions_2log1m__exp_8hpp_source.html @@ -0,0 +1,140 @@ + + + + + +Stan: src/stan/agrad/rev/functions/log1m_exp.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
log1m_exp.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__REV__FUNCTIONS__LOG1M_EXP_HPP__
+
2 #define __STAN__AGRAD__REV__FUNCTIONS__LOG1M_EXP_HPP__
+
3 
+
4 #include <stan/agrad/rev/var.hpp>
+ + + +
8 #include <boost/math/special_functions/expm1.hpp>
+
9 
+
10 namespace stan {
+
11  namespace agrad {
+
12 
+
13  namespace {
+
14  class log1m_exp_v_vari : public op_v_vari {
+
15  public:
+
16  log1m_exp_v_vari(vari* avi) :
+
17  op_v_vari(stan::math::log1m_exp(avi->val_),
+
18  avi) {
+
19  }
+
20  void chain() {
+
21  //derivative of log(1-exp(x)) = -exp(x)/(1-exp(x)) = -1/(exp(-x)-1) = -1/expm1(-x)
+
22  avi_->adj_ -= adj_ / boost::math::expm1(-(avi_->val_));
+
23  }
+
24  };
+
25  }
+
26 
+
31  inline var log1m_exp(const stan::agrad::var& a) {
+
32  return var(new log1m_exp_v_vari(a.vi_));
+
33  }
+
34 
+
35  }
+
36 }
+
37 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2rev_2functions_2log1p_8hpp.html b/doc/api/html/agrad_2rev_2functions_2log1p_8hpp.html new file mode 100644 index 00000000000..82680f30ad4 --- /dev/null +++ b/doc/api/html/agrad_2rev_2functions_2log1p_8hpp.html @@ -0,0 +1,133 @@ + + + + + +Stan: src/stan/agrad/rev/functions/log1p.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
log1p.hpp File Reference
+
+
+
#include <valarray>
+#include <stan/agrad/rev/var.hpp>
+#include <stan/agrad/rev/internal/v_vari.hpp>
+#include <stan/math/constants.hpp>
+#include <stan/math/functions/log1p.hpp>
+
+

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+ + + + +

+Functions

var stan::agrad::log1p (const stan::agrad::var &a)
 The log (1 + x) function for variables (C99).
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2rev_2functions_2log1p_8hpp_source.html b/doc/api/html/agrad_2rev_2functions_2log1p_8hpp_source.html new file mode 100644 index 00000000000..05fc05ddb7f --- /dev/null +++ b/doc/api/html/agrad_2rev_2functions_2log1p_8hpp_source.html @@ -0,0 +1,138 @@ + + + + + +Stan: src/stan/agrad/rev/functions/log1p.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
log1p.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__REV__FUNCTIONS__LOG1P_HPP__
+
2 #define __STAN__AGRAD__REV__FUNCTIONS__LOG1P_HPP__
+
3 
+
4 #include <valarray>
+
5 #include <stan/agrad/rev/var.hpp>
+ + + +
9 
+
10 namespace stan {
+
11  namespace agrad {
+
12 
+
13  namespace {
+
14  class log1p_vari : public op_v_vari {
+
15  public:
+
16  log1p_vari(vari* avi) :
+
17  op_v_vari(stan::math::log1p(avi->val_),avi) {
+
18  }
+
19  void chain() {
+
20  avi_->adj_ += adj_ / (1 + avi_->val_);
+
21  }
+
22  };
+
23  }
+
24 
+
35  inline var log1p(const stan::agrad::var& a) {
+
36  return var(new log1p_vari(a.vi_));
+
37  }
+
38 
+
39  }
+
40 }
+
41 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2rev_2functions_2log1p__exp_8hpp.html b/doc/api/html/agrad_2rev_2functions_2log1p__exp_8hpp.html new file mode 100644 index 00000000000..3c00e9b6f95 --- /dev/null +++ b/doc/api/html/agrad_2rev_2functions_2log1p__exp_8hpp.html @@ -0,0 +1,132 @@ + + + + + +Stan: src/stan/agrad/rev/functions/log1p_exp.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
log1p_exp.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+ + + + +

+Functions

var stan::agrad::log1p_exp (const stan::agrad::var &a)
 Return the log of 1 plus the exponential of the specified variable.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2rev_2functions_2log1p__exp_8hpp_source.html b/doc/api/html/agrad_2rev_2functions_2log1p__exp_8hpp_source.html new file mode 100644 index 00000000000..4e326bf8a6c --- /dev/null +++ b/doc/api/html/agrad_2rev_2functions_2log1p__exp_8hpp_source.html @@ -0,0 +1,138 @@ + + + + + +Stan: src/stan/agrad/rev/functions/log1p_exp.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
log1p_exp.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__REV__FUNCTIONS__LOG1P_EXP_HPP__
+
2 #define __STAN__AGRAD__REV__FUNCTIONS__LOG1P_EXP_HPP__
+
3 
+
4 #include <stan/agrad/rev/var.hpp>
+ + + +
8 
+
9 namespace stan {
+
10  namespace agrad {
+
11 
+
12  namespace {
+
13  class log1p_exp_v_vari : public op_v_vari {
+
14  public:
+
15  log1p_exp_v_vari(vari* avi) :
+
16  op_v_vari(stan::math::log1p_exp(avi->val_),
+
17  avi) {
+
18  }
+
19  void chain() {
+
20  avi_->adj_ += adj_ * calculate_chain(avi_->val_, val_);
+
21  }
+
22  };
+
23  }
+
24 
+
29  inline var log1p_exp(const stan::agrad::var& a) {
+
30  return var(new log1p_exp_v_vari(a.vi_));
+
31  }
+
32 
+
33  }
+
34 }
+
35 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2rev_2functions_2log2_8hpp.html b/doc/api/html/agrad_2rev_2functions_2log2_8hpp.html new file mode 100644 index 00000000000..02ab5d6433f --- /dev/null +++ b/doc/api/html/agrad_2rev_2functions_2log2_8hpp.html @@ -0,0 +1,132 @@ + + + + + +Stan: src/stan/agrad/rev/functions/log2.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
log2.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+ + + + +

+Functions

var stan::agrad::log2 (const stan::agrad::var &a)
 Returns the base 2 logarithm of the specified variable (C99).
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2rev_2functions_2log2_8hpp_source.html b/doc/api/html/agrad_2rev_2functions_2log2_8hpp_source.html new file mode 100644 index 00000000000..8f477a8864e --- /dev/null +++ b/doc/api/html/agrad_2rev_2functions_2log2_8hpp_source.html @@ -0,0 +1,137 @@ + + + + + +Stan: src/stan/agrad/rev/functions/log2.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
log2.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__REV__FUNCTIONS__LOG2_HPP__
+
2 #define __STAN__AGRAD__REV__FUNCTIONS__LOG2_HPP__
+
3 
+
4 #include <stan/agrad/rev/var.hpp>
+ + + +
8 
+
9 namespace stan {
+
10  namespace agrad {
+
11 
+
12  namespace {
+
13  class log2_vari : public op_v_vari {
+
14  public:
+
15  log2_vari(vari* avi) :
+
16  op_v_vari(stan::math::log2(avi->val_),avi) {
+
17  }
+
18  void chain() {
+
19  avi_->adj_ += adj_ / (stan::math::LOG_2 * avi_->val_);
+
20  }
+
21  };
+
22  }
+
23 
+
36  inline var log2(const stan::agrad::var& a) {
+
37  return var(new log2_vari(a.vi_));
+
38  }
+
39 
+
40  }
+
41 }
+
42 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2rev_2functions_2log_8hpp.html b/doc/api/html/agrad_2rev_2functions_2log_8hpp.html new file mode 100644 index 00000000000..c8c98d389fd --- /dev/null +++ b/doc/api/html/agrad_2rev_2functions_2log_8hpp.html @@ -0,0 +1,131 @@ + + + + + +Stan: src/stan/agrad/rev/functions/log.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
log.hpp File Reference
+
+
+
#include <cmath>
+#include <stan/agrad/rev/var.hpp>
+#include <stan/agrad/rev/internal/v_vari.hpp>
+
+

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+ + + + +

+Functions

var stan::agrad::log (const var &a)
 Return the natural log of the specified variable (cmath).
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2rev_2functions_2log_8hpp_source.html b/doc/api/html/agrad_2rev_2functions_2log_8hpp_source.html new file mode 100644 index 00000000000..da0749c9069 --- /dev/null +++ b/doc/api/html/agrad_2rev_2functions_2log_8hpp_source.html @@ -0,0 +1,136 @@ + + + + + +Stan: src/stan/agrad/rev/functions/log.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
log.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__REV__FUNCTIONS__LOG_HPP__
+
2 #define __STAN__AGRAD__REV__FUNCTIONS__LOG_HPP__
+
3 
+
4 #include <cmath>
+
5 #include <stan/agrad/rev/var.hpp>
+ +
7 
+
8 namespace stan {
+
9  namespace agrad {
+
10 
+
11  namespace {
+
12  class log_vari : public op_v_vari {
+
13  public:
+
14  log_vari(vari* avi) :
+
15  op_v_vari(std::log(avi->val_),avi) {
+
16  }
+
17  void chain() {
+
18  avi_->adj_ += adj_ / avi_->val_;
+
19  }
+
20  };
+
21  }
+
22 
+
33  inline var log(const var& a) {
+
34  return var(new log_vari(a.vi_));
+
35  }
+
36 
+
37  }
+
38 }
+
39 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2rev_2functions_2log__diff__exp_8hpp.html b/doc/api/html/agrad_2rev_2functions_2log__diff__exp_8hpp.html new file mode 100644 index 00000000000..bd707d146a9 --- /dev/null +++ b/doc/api/html/agrad_2rev_2functions_2log__diff__exp_8hpp.html @@ -0,0 +1,144 @@ + + + + + +Stan: src/stan/agrad/rev/functions/log_diff_exp.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
log_diff_exp.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+ + + + + + + + + + +

+Functions

var stan::agrad::log_diff_exp (const stan::agrad::var &a, const stan::agrad::var &b)
 Returns the log sum of exponentials.
 
var stan::agrad::log_diff_exp (const stan::agrad::var &a, const double &b)
 Returns the log sum of exponentials.
 
var stan::agrad::log_diff_exp (const double &a, const stan::agrad::var &b)
 Returns the log sum of exponentials.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2rev_2functions_2log__diff__exp_8hpp_source.html b/doc/api/html/agrad_2rev_2functions_2log__diff__exp_8hpp_source.html new file mode 100644 index 00000000000..cf1fa304be3 --- /dev/null +++ b/doc/api/html/agrad_2rev_2functions_2log__diff__exp_8hpp_source.html @@ -0,0 +1,174 @@ + + + + + +Stan: src/stan/agrad/rev/functions/log_diff_exp.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
log_diff_exp.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__REV__FUNCTIONS__LOG_DIFF_EXP_HPP__
+
2 #define __STAN__AGRAD__REV__FUNCTIONS__LOG_DIFF_EXP_HPP__
+
3 
+
4 #include <stan/agrad/rev/var.hpp>
+ + + + + + + + +
13 #include <boost/math/special_functions/expm1.hpp>
+
14 
+
15 namespace stan {
+
16  namespace agrad {
+
17 
+
18  namespace {
+
19  class log_diff_exp_vv_vari : public op_vv_vari {
+
20  public:
+
21  log_diff_exp_vv_vari(vari* avi, vari* bvi) :
+
22  op_vv_vari(stan::math::log_diff_exp(avi->val_, bvi->val_),
+
23  avi, bvi) {
+
24  }
+
25  void chain() {
+
26  avi_->adj_ += adj_ * calculate_chain(avi_->val_, val_);
+
27  bvi_->adj_ -= adj_ / boost::math::expm1(avi_->val_ - bvi_->val_);
+
28  }
+
29  };
+
30  class log_diff_exp_vd_vari : public op_vd_vari {
+
31  public:
+
32  log_diff_exp_vd_vari(vari* avi, double b) :
+
33  op_vd_vari(stan::math::log_diff_exp(avi->val_, b),
+
34  avi, b) {
+
35  }
+
36  void chain() {
+
37  avi_->adj_ += adj_ * calculate_chain(avi_->val_, val_);
+
38  }
+
39  };
+
40  class log_diff_exp_dv_vari : public op_dv_vari {
+
41  public:
+
42  log_diff_exp_dv_vari(double a, vari* bvi) :
+
43  op_dv_vari(stan::math::log_diff_exp(a, bvi->val_),
+
44  a, bvi) {
+
45  }
+
46  void chain() {
+
47  bvi_->adj_ -= adj_ / boost::math::expm1(ad_ - bvi_->val_);
+
48  }
+
49  };
+
50  }
+
51 
+ +
56  const stan::agrad::var& b) {
+
57  return var(new log_diff_exp_vv_vari(a.vi_, b.vi_));
+
58  }
+ +
63  const double& b) {
+
64  return var(new log_diff_exp_vd_vari(a.vi_, b));
+
65  }
+
69  inline var log_diff_exp(const double& a,
+
70  const stan::agrad::var& b) {
+
71  return var(new log_diff_exp_dv_vari(a, b.vi_));
+
72  }
+
73 
+
74  }
+
75 }
+
76 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2rev_2functions_2log__falling__factorial_8hpp.html b/doc/api/html/agrad_2rev_2functions_2log__falling__factorial_8hpp.html new file mode 100644 index 00000000000..a43a9392302 --- /dev/null +++ b/doc/api/html/agrad_2rev_2functions_2log__falling__factorial_8hpp.html @@ -0,0 +1,137 @@ + + + + + +Stan: src/stan/agrad/rev/functions/log_falling_factorial.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
log_falling_factorial.hpp File Reference
+
+
+
#include <stan/agrad/rev/var.hpp>
+#include <stan/agrad/rev/internal/vd_vari.hpp>
+#include <stan/agrad/rev/internal/dv_vari.hpp>
+#include <stan/agrad/rev/internal/vv_vari.hpp>
+#include <stan/math/functions/log_falling_factorial.hpp>
+#include <boost/math/special_functions/digamma.hpp>
+
+

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+ + + + + + + +

+Functions

var stan::agrad::log_falling_factorial (const var &a, const double &b)
 
var stan::agrad::log_falling_factorial (const var &a, const var &b)
 
var stan::agrad::log_falling_factorial (const double &a, const var &b)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2rev_2functions_2log__falling__factorial_8hpp_source.html b/doc/api/html/agrad_2rev_2functions_2log__falling__factorial_8hpp_source.html new file mode 100644 index 00000000000..1556f490aa7 --- /dev/null +++ b/doc/api/html/agrad_2rev_2functions_2log__falling__factorial_8hpp_source.html @@ -0,0 +1,171 @@ + + + + + +Stan: src/stan/agrad/rev/functions/log_falling_factorial.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
log_falling_factorial.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__REV__FUNCTIONS__LOG_FALLING_FACTORIAL_HPP__
+
2 #define __STAN__AGRAD__REV__FUNCTIONS__LOG_FALLING_FACTORIAL_HPP__
+
3 
+
4 #include <stan/agrad/rev/var.hpp>
+ + + + +
9 #include <boost/math/special_functions/digamma.hpp>
+
10 
+
11 namespace stan {
+
12  namespace agrad {
+
13 
+
14  namespace {
+
15 
+
16  class log_falling_factorial_vv_vari : public op_vv_vari {
+
17  public:
+
18  log_falling_factorial_vv_vari(vari* avi, vari* bvi) :
+
19  op_vv_vari(stan::math::log_falling_factorial(avi->val_, bvi->val_), avi, bvi) {
+
20  }
+
21  void chain() {
+
22  avi_->adj_ += adj_ * boost::math::digamma(avi_->val_ + 1);
+
23  bvi_->adj_ += adj_ * -boost::math::digamma(bvi_->val_ + 1);
+
24  }
+
25  };
+
26 
+
27  class log_falling_factorial_vd_vari : public op_vd_vari {
+
28  public:
+
29  log_falling_factorial_vd_vari(vari* avi, double b) :
+
30  op_vd_vari(stan::math::log_falling_factorial(avi->val_, b), avi, b) {
+
31  }
+
32  void chain() {
+
33  avi_->adj_ += adj_ * boost::math::digamma(avi_->val_ + 1);
+
34  }
+
35  };
+
36 
+
37  class log_falling_factorial_dv_vari : public op_dv_vari {
+
38  public:
+
39  log_falling_factorial_dv_vari(double a, vari* bvi) :
+
40  op_dv_vari(stan::math::log_falling_factorial(a, bvi->val_), a, bvi) {
+
41  }
+
42  void chain() {
+
43  bvi_->adj_ += adj_ * -boost::math::digamma(bvi_->val_ + 1);
+
44  }
+
45  };
+
46  }
+
47 
+
48  inline var log_falling_factorial(const var& a,
+
49  const double& b) {
+
50  return var(new log_falling_factorial_vd_vari(a.vi_, b));
+
51  }
+
52 
+
53  inline var log_falling_factorial(const var& a,
+
54  const var& b) {
+
55  return var(new log_falling_factorial_vv_vari(a.vi_, b.vi_));
+
56  }
+
57 
+
58  inline var log_falling_factorial(const double& a,
+
59  const var& b) {
+
60  return var(new log_falling_factorial_dv_vari(a, b.vi_));
+
61  }
+
62  }
+
63 }
+
64 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2rev_2functions_2log__rising__factorial_8hpp.html b/doc/api/html/agrad_2rev_2functions_2log__rising__factorial_8hpp.html new file mode 100644 index 00000000000..434ff2ce84e --- /dev/null +++ b/doc/api/html/agrad_2rev_2functions_2log__rising__factorial_8hpp.html @@ -0,0 +1,137 @@ + + + + + +Stan: src/stan/agrad/rev/functions/log_rising_factorial.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
log_rising_factorial.hpp File Reference
+
+
+
#include <stan/agrad/rev/var.hpp>
+#include <stan/agrad/rev/internal/vd_vari.hpp>
+#include <stan/agrad/rev/internal/dv_vari.hpp>
+#include <stan/agrad/rev/internal/vv_vari.hpp>
+#include <stan/math/functions/log_rising_factorial.hpp>
+#include <boost/math/special_functions/digamma.hpp>
+
+

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+ + + + + + + +

+Functions

var stan::agrad::log_rising_factorial (const var &a, const double &b)
 
var stan::agrad::log_rising_factorial (const var &a, const var &b)
 
var stan::agrad::log_rising_factorial (const double &a, const var &b)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2rev_2functions_2log__rising__factorial_8hpp_source.html b/doc/api/html/agrad_2rev_2functions_2log__rising__factorial_8hpp_source.html new file mode 100644 index 00000000000..ded7af22beb --- /dev/null +++ b/doc/api/html/agrad_2rev_2functions_2log__rising__factorial_8hpp_source.html @@ -0,0 +1,172 @@ + + + + + +Stan: src/stan/agrad/rev/functions/log_rising_factorial.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
log_rising_factorial.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__REV__FUNCTIONS__LOG_RISING_FACTORIAL_HPP__
+
2 #define __STAN__AGRAD__REV__FUNCTIONS__LOG_RISING_FACTORIAL_HPP__
+
3 
+
4 #include <stan/agrad/rev/var.hpp>
+ + + + +
9 #include <boost/math/special_functions/digamma.hpp>
+
10 
+
11 namespace stan {
+
12  namespace agrad {
+
13 
+
14  namespace {
+
15 
+
16  class log_rising_factorial_vv_vari : public op_vv_vari {
+
17  public:
+
18  log_rising_factorial_vv_vari(vari* avi, vari* bvi) :
+
19  op_vv_vari(stan::math::log_rising_factorial(avi->val_, bvi->val_), avi, bvi) {
+
20  }
+
21  void chain() {
+
22  avi_->adj_ += adj_ * (boost::math::digamma(avi_->val_ + bvi_->val_)
+
23  - boost::math::digamma(avi_->val_));
+
24  bvi_->adj_ += adj_ * boost::math::digamma(avi_->val_ + bvi_->val_);
+
25  }
+
26  };
+
27 
+
28  class log_rising_factorial_vd_vari : public op_vd_vari {
+
29  public:
+
30  log_rising_factorial_vd_vari(vari* avi, double b) :
+
31  op_vd_vari(stan::math::log_rising_factorial(avi->val_, b), avi, b) {
+
32  }
+
33  void chain() {
+
34  avi_->adj_ += adj_ * (boost::math::digamma(avi_->val_ + bd_) - boost::math::digamma(avi_->val_));
+
35  }
+
36  };
+
37 
+
38  class log_rising_factorial_dv_vari : public op_dv_vari {
+
39  public:
+
40  log_rising_factorial_dv_vari(double a, vari* bvi) :
+
41  op_dv_vari(stan::math::log_rising_factorial(a, bvi->val_), a, bvi) {
+
42  }
+
43  void chain() {
+
44  bvi_->adj_ += adj_ * boost::math::digamma(bvi_->val_ + ad_);
+
45  }
+
46  };
+
47  }
+
48 
+
49  inline var log_rising_factorial(const var& a,
+
50  const double& b) {
+
51  return var(new log_rising_factorial_vd_vari(a.vi_, b));
+
52  }
+
53 
+
54  inline var log_rising_factorial(const var& a,
+
55  const var& b) {
+
56  return var(new log_rising_factorial_vv_vari(a.vi_, b.vi_));
+
57  }
+
58 
+
59  inline var log_rising_factorial(const double& a,
+
60  const var& b) {
+
61  return var(new log_rising_factorial_dv_vari(a, b.vi_));
+
62  }
+
63  }
+
64 }
+
65 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2rev_2functions_2log__sum__exp_8hpp.html b/doc/api/html/agrad_2rev_2functions_2log__sum__exp_8hpp.html new file mode 100644 index 00000000000..c39e763489c --- /dev/null +++ b/doc/api/html/agrad_2rev_2functions_2log__sum__exp_8hpp.html @@ -0,0 +1,146 @@ + + + + + +Stan: src/stan/agrad/rev/functions/log_sum_exp.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
log_sum_exp.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+ + + + + + + + + + + + + +

+Functions

var stan::agrad::log_sum_exp (const stan::agrad::var &a, const stan::agrad::var &b)
 Returns the log sum of exponentials.
 
var stan::agrad::log_sum_exp (const stan::agrad::var &a, const double &b)
 Returns the log sum of exponentials.
 
var stan::agrad::log_sum_exp (const double &a, const stan::agrad::var &b)
 Returns the log sum of exponentials.
 
var stan::agrad::log_sum_exp (const std::vector< var > &x)
 Returns the log sum of exponentials.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2rev_2functions_2log__sum__exp_8hpp_source.html b/doc/api/html/agrad_2rev_2functions_2log__sum__exp_8hpp_source.html new file mode 100644 index 00000000000..9d8e0794038 --- /dev/null +++ b/doc/api/html/agrad_2rev_2functions_2log__sum__exp_8hpp_source.html @@ -0,0 +1,203 @@ + + + + + +Stan: src/stan/agrad/rev/functions/log_sum_exp.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
log_sum_exp.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__REV__FUNCTIONS__LOG_SUM_EXP_HPP__
+
2 #define __STAN__AGRAD__REV__FUNCTIONS__LOG_SUM_EXP_HPP__
+
3 
+
4 #include <stan/agrad/rev/var.hpp>
+ + + + + + + + +
13 
+
14 namespace stan {
+
15  namespace agrad {
+
16 
+
17  namespace {
+
18  double log_sum_exp_as_double(const std::vector<var>& x) {
+
19  using std::numeric_limits;
+
20  using std::exp;
+
21  using std::log;
+
22  double max = -numeric_limits<double>::infinity();
+
23  for (size_t i = 0; i < x.size(); ++i)
+
24  if (x[i] > max)
+
25  max = x[i].val();
+
26  double sum = 0.0;
+
27  for (size_t i = 0; i < x.size(); ++i)
+
28  if (x[i] != -numeric_limits<double>::infinity())
+
29  sum += exp(x[i].val() - max);
+
30  return max + log(sum);
+
31  }
+
32 
+
33  class log_sum_exp_vv_vari : public op_vv_vari {
+
34  public:
+
35  log_sum_exp_vv_vari(vari* avi, vari* bvi) :
+
36  op_vv_vari(stan::math::log_sum_exp(avi->val_, bvi->val_),
+
37  avi, bvi) {
+
38  }
+
39  void chain() {
+
40  avi_->adj_ += adj_ * calculate_chain(avi_->val_, val_);
+
41  bvi_->adj_ += adj_ * calculate_chain(bvi_->val_, val_);
+
42  }
+
43  };
+
44  class log_sum_exp_vd_vari : public op_vd_vari {
+
45  public:
+
46  log_sum_exp_vd_vari(vari* avi, double b) :
+
47  op_vd_vari(stan::math::log_sum_exp(avi->val_, b),
+
48  avi, b) {
+
49  }
+
50  void chain() {
+
51  avi_->adj_ += adj_ * calculate_chain(avi_->val_, val_);
+
52  }
+
53  };
+
54  class log_sum_exp_dv_vari : public op_dv_vari {
+
55  public:
+
56  log_sum_exp_dv_vari(double a, vari* bvi) :
+
57  op_dv_vari(stan::math::log_sum_exp(a, bvi->val_),
+
58  a, bvi) {
+
59  }
+
60  void chain() {
+
61  bvi_->adj_ += adj_ * calculate_chain(bvi_->val_, val_);
+
62  }
+
63  };
+
64 
+
65  class log_sum_exp_vector_vari : public op_vector_vari {
+
66  public:
+
67  log_sum_exp_vector_vari(const std::vector<var>& x) :
+
68  op_vector_vari(log_sum_exp_as_double(x), x) {
+
69  }
+
70  void chain() {
+
71  for (size_t i = 0; i < size_; ++i) {
+
72  vis_[i]->adj_ += adj_ * calculate_chain(vis_[i]->val_, val_);
+
73  }
+
74  }
+
75  };
+
76  }
+
77 
+
81  inline var log_sum_exp(const stan::agrad::var& a,
+
82  const stan::agrad::var& b) {
+
83  return var(new log_sum_exp_vv_vari(a.vi_, b.vi_));
+
84  }
+
88  inline var log_sum_exp(const stan::agrad::var& a,
+
89  const double& b) {
+
90  return var(new log_sum_exp_vd_vari(a.vi_, b));
+
91  }
+
95  inline var log_sum_exp(const double& a,
+
96  const stan::agrad::var& b) {
+
97  return var(new log_sum_exp_dv_vari(a, b.vi_));
+
98  }
+
102  inline var log_sum_exp(const std::vector<var>& x) {
+
103  return var(new log_sum_exp_vector_vari(x));
+
104  }
+
105 
+
106  }
+
107 }
+
108 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2rev_2functions_2modified__bessel__first__kind_8hpp.html b/doc/api/html/agrad_2rev_2functions_2modified__bessel__first__kind_8hpp.html new file mode 100644 index 00000000000..bab65473c0c --- /dev/null +++ b/doc/api/html/agrad_2rev_2functions_2modified__bessel__first__kind_8hpp.html @@ -0,0 +1,130 @@ + + + + + +Stan: src/stan/agrad/rev/functions/modified_bessel_first_kind.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
modified_bessel_first_kind.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+ + + +

+Functions

var stan::agrad::modified_bessel_first_kind (const int &v, const var &a)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2rev_2functions_2modified__bessel__first__kind_8hpp_source.html b/doc/api/html/agrad_2rev_2functions_2modified__bessel__first__kind_8hpp_source.html new file mode 100644 index 00000000000..e198355a06c --- /dev/null +++ b/doc/api/html/agrad_2rev_2functions_2modified__bessel__first__kind_8hpp_source.html @@ -0,0 +1,138 @@ + + + + + +Stan: src/stan/agrad/rev/functions/modified_bessel_first_kind.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
modified_bessel_first_kind.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__REV__FUNCTIONS__MODIFIED_BESSEL_FIRST_KIND_HPP__
+
2 #define __STAN__AGRAD__REV__FUNCTIONS__MODIFIED_BESSEL_FIRST_KIND_HPP__
+
3 
+
4 #include <stan/agrad/rev/var.hpp>
+ + +
7 
+
8 namespace stan {
+
9  namespace agrad {
+
10 
+
11  namespace {
+
12 
+
13  class modified_bessel_first_kind_dv_vari : public op_dv_vari {
+
14  public:
+
15  modified_bessel_first_kind_dv_vari(int a, vari* bvi) :
+
16  op_dv_vari(stan::math::modified_bessel_first_kind(a, bvi->val_), a, bvi) {
+
17  }
+
18  void chain() {
+ +
20  }
+
21  };
+
22  }
+
23 
+
24  inline var modified_bessel_first_kind(const int& v,
+
25  const var& a) {
+
26  return var(new modified_bessel_first_kind_dv_vari(v, a.vi_));
+
27  }
+
28 
+
29  }
+
30 }
+
31 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2rev_2functions_2modified__bessel__second__kind_8hpp.html b/doc/api/html/agrad_2rev_2functions_2modified__bessel__second__kind_8hpp.html new file mode 100644 index 00000000000..6544d6ddabd --- /dev/null +++ b/doc/api/html/agrad_2rev_2functions_2modified__bessel__second__kind_8hpp.html @@ -0,0 +1,130 @@ + + + + + +Stan: src/stan/agrad/rev/functions/modified_bessel_second_kind.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
modified_bessel_second_kind.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+ + + +

+Functions

var stan::agrad::modified_bessel_second_kind (const int &v, const var &a)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2rev_2functions_2modified__bessel__second__kind_8hpp_source.html b/doc/api/html/agrad_2rev_2functions_2modified__bessel__second__kind_8hpp_source.html new file mode 100644 index 00000000000..c5b1d90dc19 --- /dev/null +++ b/doc/api/html/agrad_2rev_2functions_2modified__bessel__second__kind_8hpp_source.html @@ -0,0 +1,138 @@ + + + + + +Stan: src/stan/agrad/rev/functions/modified_bessel_second_kind.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
modified_bessel_second_kind.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__REV__FUNCTIONS__MODIFIED_BESSEL_SECOND_KIND_HPP__
+
2 #define __STAN__AGRAD__REV__FUNCTIONS__MODIFIED_BESSEL_SECOND_KIND_HPP__
+
3 
+
4 #include <stan/agrad/rev/var.hpp>
+ + +
7 
+
8 namespace stan {
+
9  namespace agrad {
+
10 
+
11  namespace {
+
12 
+
13  class modified_bessel_second_kind_dv_vari : public op_dv_vari {
+
14  public:
+
15  modified_bessel_second_kind_dv_vari(int a, vari* bvi) :
+
16  op_dv_vari(stan::math::modified_bessel_second_kind(a, bvi->val_), a, bvi) {
+
17  }
+
18  void chain() {
+ +
20  }
+
21  };
+
22  }
+
23 
+
24  inline var modified_bessel_second_kind(const int& v,
+
25  const var& a) {
+
26  return var(new modified_bessel_second_kind_dv_vari(v, a.vi_));
+
27  }
+
28 
+
29  }
+
30 }
+
31 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2rev_2functions_2multiply__log_8hpp.html b/doc/api/html/agrad_2rev_2functions_2multiply__log_8hpp.html new file mode 100644 index 00000000000..d503c8809f6 --- /dev/null +++ b/doc/api/html/agrad_2rev_2functions_2multiply__log_8hpp.html @@ -0,0 +1,141 @@ + + + + + +Stan: src/stan/agrad/rev/functions/multiply_log.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
multiply_log.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+ + + + + + + + + + +

+Functions

var stan::agrad::multiply_log (const var &a, const var &b)
 Return the value of a*log(b).
 
var stan::agrad::multiply_log (const var &a, const double b)
 Return the value of a*log(b).
 
var stan::agrad::multiply_log (const double a, const var &b)
 Return the value of a*log(b).
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2rev_2functions_2multiply__log_8hpp_source.html b/doc/api/html/agrad_2rev_2functions_2multiply__log_8hpp_source.html new file mode 100644 index 00000000000..d2eb313d8d0 --- /dev/null +++ b/doc/api/html/agrad_2rev_2functions_2multiply__log_8hpp_source.html @@ -0,0 +1,175 @@ + + + + + +Stan: src/stan/agrad/rev/functions/multiply_log.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
multiply_log.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__REV__FUNCTIONS__MULTIPLY_LOG_HPP__
+
2 #define __STAN__AGRAD__REV__FUNCTIONS__MULTIPLY_LOG_HPP__
+
3 
+
4 #include <limits>
+
5 #include <stan/agrad/rev/var.hpp>
+ + + + + +
11 
+
12 namespace stan {
+
13  namespace agrad {
+
14 
+
15  namespace {
+
16  class multiply_log_vv_vari : public op_vv_vari {
+
17  public:
+
18  multiply_log_vv_vari(vari* avi, vari* bvi) :
+
19  op_vv_vari(stan::math::multiply_log(avi->val_,bvi->val_),avi,bvi) {
+
20  }
+
21  void chain() {
+
22  using std::log;
+
23  avi_->adj_ += adj_ * log(bvi_->val_);
+
24  if (bvi_->val_ == 0.0 && avi_->val_ == 0)
+
25  bvi_->adj_ += adj_ * std::numeric_limits<double>::infinity();
+
26  else
+
27  bvi_->adj_ += adj_ * avi_->val_ / bvi_->val_;
+
28  }
+
29  };
+
30  class multiply_log_vd_vari : public op_vd_vari {
+
31  public:
+
32  multiply_log_vd_vari(vari* avi, double b) :
+
33  op_vd_vari(stan::math::multiply_log(avi->val_,b),avi,b) {
+
34  }
+
35  void chain() {
+
36  using std::log;
+
37  avi_->adj_ += adj_ * log(bd_);
+
38  }
+
39  };
+
40  class multiply_log_dv_vari : public op_dv_vari {
+
41  public:
+
42  multiply_log_dv_vari(double a, vari* bvi) :
+
43  op_dv_vari(stan::math::multiply_log(a,bvi->val_),a,bvi) {
+
44  }
+
45  void chain() {
+
46  if (bvi_->val_ == 0.0 && ad_ == 0.0)
+
47  bvi_->adj_ += adj_ * std::numeric_limits<double>::infinity();
+
48  else
+
49  bvi_->adj_ += adj_ * ad_ / bvi_->val_;
+
50  }
+
51  };
+
52  }
+
53 
+
66  inline var multiply_log(const var& a, const var& b) {
+
67  return var(new multiply_log_vv_vari(a.vi_,b.vi_));
+
68  }
+
79  inline var multiply_log(const var& a, const double b) {
+
80  return var(new multiply_log_vd_vari(a.vi_,b));
+
81  }
+
93  inline var multiply_log(const double a, const var& b) {
+
94  if (a == 1.0)
+
95  return log(b);
+
96  return var(new multiply_log_dv_vari(a,b.vi_));
+
97  }
+
98 
+
99  }
+
100 }
+
101 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2rev_2functions_2owens__t_8hpp.html b/doc/api/html/agrad_2rev_2functions_2owens__t_8hpp.html new file mode 100644 index 00000000000..fa4ecf728b6 --- /dev/null +++ b/doc/api/html/agrad_2rev_2functions_2owens__t_8hpp.html @@ -0,0 +1,140 @@ + + + + + +Stan: src/stan/agrad/rev/functions/owens_t.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
owens_t.hpp File Reference
+
+
+
#include <stan/agrad/rev/var.hpp>
+#include <stan/agrad/rev/internal/vv_vari.hpp>
+#include <stan/agrad/rev/internal/vd_vari.hpp>
+#include <stan/agrad/rev/internal/dv_vari.hpp>
+#include <stan/math/constants.hpp>
+#include <boost/math/special_functions/owens_t.hpp>
+
+

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+ + + + + + + + + + +

+Functions

var stan::agrad::owens_t (const var &h, const var &a)
 The Owen's T function of h and a.
 
var stan::agrad::owens_t (const var &h, const double &a)
 The Owen's T function of h and a.
 
var stan::agrad::owens_t (const double &h, const var &a)
 The Owen's T function of h and a.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2rev_2functions_2owens__t_8hpp_source.html b/doc/api/html/agrad_2rev_2functions_2owens__t_8hpp_source.html new file mode 100644 index 00000000000..1c25049cb48 --- /dev/null +++ b/doc/api/html/agrad_2rev_2functions_2owens__t_8hpp_source.html @@ -0,0 +1,173 @@ + + + + + +Stan: src/stan/agrad/rev/functions/owens_t.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
owens_t.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__REV__FUNCTIONS__OWENS__T_HPP__
+
2 #define __STAN__AGRAD__REV__FUNCTIONS__OWENS__T_HPP__
+
3 
+
4 #include <stan/agrad/rev/var.hpp>
+ + + + +
9 #include <boost/math/special_functions/owens_t.hpp>
+
10 
+
11 namespace stan {
+
12  namespace agrad {
+
13 
+
14  namespace {
+
15 
+
16  using stan::math::pi;
+
17  class owens_t_vv_vari : public op_vv_vari {
+
18  public:
+
19  owens_t_vv_vari(vari* avi, vari* bvi) :
+
20  op_vv_vari(boost::math::owens_t(avi->val_, bvi->val_), avi, bvi) {
+
21  }
+
22  void chain() {
+
23  avi_->adj_ += adj_ * boost::math::erf(bvi_->val_ * avi_->val_ / std::sqrt(2.0)) * std::exp(-avi_->val_ * avi_->val_ / 2.0) * std::sqrt(pi() / 2.0) / (-2.0 * pi());
+
24  bvi_->adj_ += adj_ * std::exp(-0.5 * avi_->val_ * avi_->val_ * (1.0 + bvi_->val_ * bvi_->val_)) / ((1 + bvi_->val_ * bvi_->val_) * 2.0 * pi());
+
25  }
+
26  };
+
27 
+
28  class owens_t_vd_vari : public op_vd_vari {
+
29  public:
+
30  owens_t_vd_vari(vari* avi, double b) :
+
31  op_vd_vari(boost::math::owens_t(avi->val_, b), avi, b) {
+
32  }
+
33  void chain() {
+
34  avi_->adj_ += adj_ * boost::math::erf(bd_ * avi_->val_ / std::sqrt(2.0)) * std::exp(-avi_->val_ * avi_->val_ / 2.0) * std::sqrt(pi() / 2.0) / (-2.0 * pi());
+
35  }
+
36  };
+
37 
+
38  class owens_t_dv_vari : public op_dv_vari {
+
39  public:
+
40  owens_t_dv_vari(double a, vari* bvi) :
+
41  op_dv_vari(boost::math::owens_t(a, bvi->val_), a, bvi) {
+
42  }
+
43  void chain() {
+
44  bvi_->adj_ += adj_ * std::exp(-0.5 * ad_ * ad_ * (1.0 + bvi_->val_ * bvi_->val_)) / ((1 + bvi_->val_ * bvi_->val_) * 2.0 * pi());
+
45  }
+
46  };
+
47  }
+
48 
+
60  inline var owens_t(const var& h,
+
61  const var& a) {
+
62  return var(new owens_t_vv_vari(h.vi_, a.vi_));
+
63  }
+
64 
+
76  inline var owens_t(const var& h,
+
77  const double& a) {
+
78  return var(new owens_t_vd_vari(h.vi_, a));
+
79  }
+
80 
+
92  inline var owens_t(const double& h,
+
93  const var& a) {
+
94  return var(new owens_t_dv_vari(h, a.vi_));
+
95  }
+
96 
+
97  }
+
98 }
+
99 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2rev_2functions_2rising__factorial_8hpp.html b/doc/api/html/agrad_2rev_2functions_2rising__factorial_8hpp.html new file mode 100644 index 00000000000..6da14aef776 --- /dev/null +++ b/doc/api/html/agrad_2rev_2functions_2rising__factorial_8hpp.html @@ -0,0 +1,137 @@ + + + + + +Stan: src/stan/agrad/rev/functions/rising_factorial.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
rising_factorial.hpp File Reference
+
+
+
#include <stan/agrad/rev/var.hpp>
+#include <stan/agrad/rev/internal/vd_vari.hpp>
+#include <stan/agrad/rev/internal/dv_vari.hpp>
+#include <stan/agrad/rev/internal/vv_vari.hpp>
+#include <stan/math/functions/rising_factorial.hpp>
+#include <boost/math/special_functions/digamma.hpp>
+
+

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+ + + + + + + +

+Functions

var stan::agrad::rising_factorial (const var &a, const double &b)
 
var stan::agrad::rising_factorial (const var &a, const var &b)
 
var stan::agrad::rising_factorial (const double &a, const var &b)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2rev_2functions_2rising__factorial_8hpp_source.html b/doc/api/html/agrad_2rev_2functions_2rising__factorial_8hpp_source.html new file mode 100644 index 00000000000..af48b1b8657 --- /dev/null +++ b/doc/api/html/agrad_2rev_2functions_2rising__factorial_8hpp_source.html @@ -0,0 +1,171 @@ + + + + + +Stan: src/stan/agrad/rev/functions/rising_factorial.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
rising_factorial.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__REV__FUNCTIONS__RISING_FACTORIAL_HPP__
+
2 #define __STAN__AGRAD__REV__FUNCTIONS__RISING_FACTORIAL_HPP__
+
3 
+
4 #include <stan/agrad/rev/var.hpp>
+ + + + +
9 #include <boost/math/special_functions/digamma.hpp>
+
10 
+
11 namespace stan {
+
12  namespace agrad {
+
13 
+
14  namespace {
+
15 
+
16  class rising_factorial_vv_vari : public op_vv_vari {
+
17  public:
+
18  rising_factorial_vv_vari(vari* avi, vari* bvi) :
+
19  op_vv_vari(stan::math::rising_factorial(avi->val_, bvi->val_), avi, bvi) {
+
20  }
+
21  void chain() {
+
22  avi_->adj_ += adj_ * stan::math::rising_factorial(avi_->val_, bvi_->val_) * (boost::math::digamma(avi_->val_ + bvi_->val_) - boost::math::digamma(avi_->val_));
+
23  bvi_->adj_ += adj_ * stan::math::rising_factorial(avi_->val_, bvi_->val_) * boost::math::digamma(bvi_->val_ + avi_->val_);
+
24  }
+
25  };
+
26 
+
27  class rising_factorial_vd_vari : public op_vd_vari {
+
28  public:
+
29  rising_factorial_vd_vari(vari* avi, double b) :
+
30  op_vd_vari(stan::math::rising_factorial(avi->val_, b), avi, b) {
+
31  }
+
32  void chain() {
+
33  avi_->adj_ += adj_ * stan::math::rising_factorial(avi_->val_, bd_) * (boost::math::digamma(avi_->val_ + bd_) - boost::math::digamma(avi_->val_));
+
34  }
+
35  };
+
36 
+
37  class rising_factorial_dv_vari : public op_dv_vari {
+
38  public:
+
39  rising_factorial_dv_vari(double a, vari* bvi) :
+
40  op_dv_vari(stan::math::rising_factorial(a, bvi->val_), a, bvi) {
+
41  }
+
42  void chain() {
+
43  bvi_->adj_ += adj_ * stan::math::rising_factorial(ad_, bvi_->val_) * boost::math::digamma(bvi_->val_ + ad_);
+
44  }
+
45  };
+
46  }
+
47 
+
48  inline var rising_factorial(const var& a,
+
49  const double& b) {
+
50  return var(new rising_factorial_vd_vari(a.vi_, b));
+
51  }
+
52 
+
53  inline var rising_factorial(const var& a,
+
54  const var& b) {
+
55  return var(new rising_factorial_vv_vari(a.vi_, b.vi_));
+
56  }
+
57 
+
58  inline var rising_factorial(const double& a,
+
59  const var& b) {
+
60  return var(new rising_factorial_dv_vari(a, b.vi_));
+
61  }
+
62  }
+
63 }
+
64 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2rev_2functions_2square_8hpp.html b/doc/api/html/agrad_2rev_2functions_2square_8hpp.html new file mode 100644 index 00000000000..477029ef0da --- /dev/null +++ b/doc/api/html/agrad_2rev_2functions_2square_8hpp.html @@ -0,0 +1,130 @@ + + + + + +Stan: src/stan/agrad/rev/functions/square.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
square.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+ + + + +

+Functions

var stan::agrad::square (const var &x)
 Return the square of the input variable.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2rev_2functions_2square_8hpp_source.html b/doc/api/html/agrad_2rev_2functions_2square_8hpp_source.html new file mode 100644 index 00000000000..79e28028755 --- /dev/null +++ b/doc/api/html/agrad_2rev_2functions_2square_8hpp_source.html @@ -0,0 +1,135 @@ + + + + + +Stan: src/stan/agrad/rev/functions/square.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
square.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__REV__FUNCTIONS__SQUARE_HPP__
+
2 #define __STAN__AGRAD__REV__FUNCTIONS__SQUARE_HPP__
+
3 
+
4 #include <stan/agrad/rev/var.hpp>
+ +
6 
+
7 namespace stan {
+
8  namespace agrad {
+
9 
+
10  namespace {
+
11  class square_vari : public op_v_vari {
+
12  public:
+
13  square_vari(vari* avi) :
+
14  op_v_vari(avi->val_ * avi->val_,avi) {
+
15  }
+
16  void chain() {
+
17  avi_->adj_ += adj_ * 2.0 * avi_->val_;
+
18  }
+
19  };
+
20  }
+
21 
+
31  inline var square(const var& x) {
+
32  return var(new square_vari(x.vi_));
+
33  }
+
34 
+
35  }
+
36 }
+
37 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2rev_2functions_2step_8hpp.html b/doc/api/html/agrad_2rev_2functions_2step_8hpp.html new file mode 100644 index 00000000000..666517c3429 --- /dev/null +++ b/doc/api/html/agrad_2rev_2functions_2step_8hpp.html @@ -0,0 +1,129 @@ + + + + + +Stan: src/stan/agrad/rev/functions/step.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
step.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+ + + + +

+Functions

var stan::agrad::step (const stan::agrad::var &a)
 Return the step, or heaviside, function applied to the specified variable (stan).
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2rev_2functions_2step_8hpp_source.html b/doc/api/html/agrad_2rev_2functions_2step_8hpp_source.html new file mode 100644 index 00000000000..7dd7f38f29a --- /dev/null +++ b/doc/api/html/agrad_2rev_2functions_2step_8hpp_source.html @@ -0,0 +1,122 @@ + + + + + +Stan: src/stan/agrad/rev/functions/step.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
step.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__REV__FUNCTIONS__STEP_HPP__
+
2 #define __STAN__AGRAD__REV__FUNCTIONS__STEP_HPP__
+
3 
+
4 #include <stan/agrad/rev/var.hpp>
+
5 
+
6 namespace stan {
+
7  namespace agrad {
+
8 
+
25  inline var step(const stan::agrad::var& a) {
+
26  return var(new vari(a.vi_->val_ < 0.0 ? 0.0 : 1.0));
+
27  }
+
28 
+
29  }
+
30 }
+
31 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2rev_2functions_2value__of_8hpp.html b/doc/api/html/agrad_2rev_2functions_2value__of_8hpp.html new file mode 100644 index 00000000000..fa2b15194da --- /dev/null +++ b/doc/api/html/agrad_2rev_2functions_2value__of_8hpp.html @@ -0,0 +1,129 @@ + + + + + +Stan: src/stan/agrad/rev/functions/value_of.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
value_of.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+ + + + +

+Functions

double stan::agrad::value_of (const agrad::var &v)
 Return the value of the specified variable.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2rev_2functions_2value__of_8hpp_source.html b/doc/api/html/agrad_2rev_2functions_2value__of_8hpp_source.html new file mode 100644 index 00000000000..6a49e97599f --- /dev/null +++ b/doc/api/html/agrad_2rev_2functions_2value__of_8hpp_source.html @@ -0,0 +1,122 @@ + + + + + +Stan: src/stan/agrad/rev/functions/value_of.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
value_of.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__REV__FUNCTIONS__VALUE_OF_HPP__
+
2 #define __STAN__AGRAD__REV__FUNCTIONS__VALUE_OF_HPP__
+
3 
+
4 #include <stan/agrad/rev/var.hpp>
+
5 
+
6 namespace stan {
+
7  namespace agrad {
+
8 
+
22  inline double value_of(const agrad::var& v) {
+
23  return v.vi_->val_;
+
24  }
+
25 
+
26  }
+
27 }
+
28 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2rev_2functions_8hpp.html b/doc/api/html/agrad_2rev_2functions_8hpp.html new file mode 100644 index 00000000000..a7fd5d665b8 --- /dev/null +++ b/doc/api/html/agrad_2rev_2functions_8hpp.html @@ -0,0 +1,182 @@ + + + + + +Stan: src/stan/agrad/rev/functions.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
functions.hpp File Reference
+
+
+
#include <stan/agrad/rev/functions/Phi.hpp>
+#include <stan/agrad/rev/functions/Phi_approx.hpp>
+#include <stan/agrad/rev/functions/abs.hpp>
+#include <stan/agrad/rev/functions/acos.hpp>
+#include <stan/agrad/rev/functions/acosh.hpp>
+#include <stan/agrad/rev/functions/as_bool.hpp>
+#include <stan/agrad/rev/functions/asin.hpp>
+#include <stan/agrad/rev/functions/asinh.hpp>
+#include <stan/agrad/rev/functions/atan.hpp>
+#include <stan/agrad/rev/functions/atan2.hpp>
+#include <stan/agrad/rev/functions/atanh.hpp>
+#include <stan/agrad/rev/functions/bessel_first_kind.hpp>
+#include <stan/agrad/rev/functions/bessel_second_kind.hpp>
+#include <stan/agrad/rev/functions/binary_log_loss.hpp>
+#include <stan/agrad/rev/functions/cbrt.hpp>
+#include <stan/agrad/rev/functions/ceil.hpp>
+#include <stan/agrad/rev/functions/cos.hpp>
+#include <stan/agrad/rev/functions/cosh.hpp>
+#include <stan/agrad/rev/functions/digamma.hpp>
+#include <stan/agrad/rev/functions/erf.hpp>
+#include <stan/agrad/rev/functions/erfc.hpp>
+#include <stan/agrad/rev/functions/exp.hpp>
+#include <stan/agrad/rev/functions/exp2.hpp>
+#include <stan/agrad/rev/functions/expm1.hpp>
+#include <stan/agrad/rev/functions/fabs.hpp>
+#include <stan/agrad/rev/functions/falling_factorial.hpp>
+#include <stan/agrad/rev/functions/fdim.hpp>
+#include <stan/agrad/rev/functions/floor.hpp>
+#include <stan/agrad/rev/functions/fma.hpp>
+#include <stan/agrad/rev/functions/fmax.hpp>
+#include <stan/agrad/rev/functions/fmin.hpp>
+#include <stan/agrad/rev/functions/fmod.hpp>
+#include <stan/agrad/rev/functions/gamma_p.hpp>
+#include <stan/agrad/rev/functions/gamma_q.hpp>
+#include <stan/agrad/rev/functions/hypot.hpp>
+#include <stan/agrad/rev/functions/ibeta.hpp>
+#include <stan/agrad/rev/functions/if_else.hpp>
+#include <stan/agrad/rev/functions/inv.hpp>
+#include <stan/agrad/rev/functions/inv_cloglog.hpp>
+#include <stan/agrad/rev/functions/inv_logit.hpp>
+#include <stan/agrad/rev/functions/inv_sqrt.hpp>
+#include <stan/agrad/rev/functions/inv_square.hpp>
+#include <stan/agrad/rev/functions/is_uninitialized.hpp>
+#include <stan/agrad/rev/functions/lgamma.hpp>
+#include <stan/agrad/rev/functions/lmgamma.hpp>
+#include <stan/agrad/rev/functions/log.hpp>
+#include <stan/agrad/rev/functions/log10.hpp>
+#include <stan/agrad/rev/functions/log1m.hpp>
+#include <stan/agrad/rev/functions/log1m_exp.hpp>
+#include <stan/agrad/rev/functions/log1p.hpp>
+#include <stan/agrad/rev/functions/log1p_exp.hpp>
+#include <stan/agrad/rev/functions/log2.hpp>
+#include <stan/agrad/rev/functions/log_diff_exp.hpp>
+#include <stan/agrad/rev/functions/log_falling_factorial.hpp>
+#include <stan/agrad/rev/functions/log_rising_factorial.hpp>
+#include <stan/agrad/rev/functions/log_sum_exp.hpp>
+#include <stan/agrad/rev/functions/modified_bessel_first_kind.hpp>
+#include <stan/agrad/rev/functions/modified_bessel_second_kind.hpp>
+#include <stan/agrad/rev/functions/multiply_log.hpp>
+#include <stan/agrad/rev/functions/owens_t.hpp>
+#include <stan/agrad/rev/functions/pow.hpp>
+#include <stan/agrad/rev/functions/rising_factorial.hpp>
+#include <stan/agrad/rev/functions/round.hpp>
+#include <stan/agrad/rev/functions/sin.hpp>
+#include <stan/agrad/rev/functions/sinh.hpp>
+#include <stan/agrad/rev/functions/sqrt.hpp>
+#include <stan/agrad/rev/functions/square.hpp>
+#include <stan/agrad/rev/functions/step.hpp>
+#include <stan/agrad/rev/functions/tan.hpp>
+#include <stan/agrad/rev/functions/tanh.hpp>
+#include <stan/agrad/rev/functions/tgamma.hpp>
+#include <stan/agrad/rev/functions/trunc.hpp>
+#include <stan/agrad/rev/functions/value_of.hpp>
+
+

Go to the source code of this file.

+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2rev_2functions_8hpp_source.html b/doc/api/html/agrad_2rev_2functions_8hpp_source.html new file mode 100644 index 00000000000..5148f1ecfb6 --- /dev/null +++ b/doc/api/html/agrad_2rev_2functions_8hpp_source.html @@ -0,0 +1,185 @@ + + + + + +Stan: src/stan/agrad/rev/functions.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
functions.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__REV__FUNCTIONS_HPP__
+
2 #define __STAN__AGRAD__REV__FUNCTIONS_HPP__
+
3 
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
77 
+
78 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2rev_2matrix_2_l_d_l_t__factor_8hpp.html b/doc/api/html/agrad_2rev_2matrix_2_l_d_l_t__factor_8hpp.html new file mode 100644 index 00000000000..6bc5902453b --- /dev/null +++ b/doc/api/html/agrad_2rev_2matrix_2_l_d_l_t__factor_8hpp.html @@ -0,0 +1,132 @@ + + + + + +Stan: src/stan/agrad/rev/matrix/LDLT_factor.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
LDLT_factor.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + +

+Classes

class  stan::math::LDLT_factor< stan::agrad::var, R, C >
 A template specialization of src/stan/math/matrix/LDLT_factor.hpp for stan::agrad::var which can be used with all the *_ldlt functions. More...
 
+ + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::math
 Matrices and templated mathematical functions.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2rev_2matrix_2_l_d_l_t__factor_8hpp_source.html b/doc/api/html/agrad_2rev_2matrix_2_l_d_l_t__factor_8hpp_source.html new file mode 100644 index 00000000000..fde995c255c --- /dev/null +++ b/doc/api/html/agrad_2rev_2matrix_2_l_d_l_t__factor_8hpp_source.html @@ -0,0 +1,161 @@ + + + + + +Stan: src/stan/agrad/rev/matrix/LDLT_factor.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
LDLT_factor.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__REV__MATRIX__LDLT_FACTOR_HPP__
+
2 #define __STAN__AGRAD__REV__MATRIX__LDLT_FACTOR_HPP__
+
3 
+
4 #include <stan/agrad/rev/var.hpp>
+ + + +
8 
+
9 namespace stan {
+
10  namespace math {
+
44  template<int R, int C>
+
45  class LDLT_factor<stan::agrad::var,R,C> {
+
46  public:
+
52  LDLT_factor() : _alloc(new stan::agrad::LDLT_alloc<R,C>()) {}
+
53 
+
54  LDLT_factor(const Eigen::Matrix<stan::agrad::var,R,C> &A)
+
55  : _alloc(new stan::agrad::LDLT_alloc<R,C>()) {
+
56  compute(A);
+
57  }
+
58 
+
67  inline void compute(const Eigen::Matrix<stan::agrad::var,R,C> &A) {
+
68  stan::math::validate_square(A,"LDLT_factor<var>::compute");
+
69  _alloc->compute(A);
+
70  }
+
71 
+
83  template<typename Rhs>
+
84  inline const Eigen::internal::solve_retval<Eigen::LDLT< Eigen::Matrix<double,R,C> >, Rhs>
+
85  solve(const Eigen::MatrixBase<Rhs>& b) const {
+
86  return _alloc->_ldlt.solve(b);
+
87  }
+
88 
+
94  inline bool success() const {
+
95  bool ret;
+
96  ret = _alloc->N_ != 0;
+
97  ret = ret && _alloc->_ldlt.info() == Eigen::Success;
+
98  ret = ret && _alloc->_ldlt.isPositive();
+
99  ret = ret && (_alloc->_ldlt.vectorD().array() > 0).all();
+
100  return ret;
+
101  }
+
102 
+
110  inline Eigen::VectorXd vectorD() const {
+
111  return _alloc->_ldlt.vectorD();
+
112  }
+
113 
+
114  inline size_t rows() const { return _alloc->N_; }
+
115  inline size_t cols() const { return _alloc->N_; }
+
116 
+
117  typedef size_t size_type;
+
118 
+ +
128  };
+
129  }
+
130 }
+
131 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2rev_2matrix_2crossprod_8hpp.html b/doc/api/html/agrad_2rev_2matrix_2crossprod_8hpp.html new file mode 100644 index 00000000000..284e8f595a1 --- /dev/null +++ b/doc/api/html/agrad_2rev_2matrix_2crossprod_8hpp.html @@ -0,0 +1,130 @@ + + + + + +Stan: src/stan/agrad/rev/matrix/crossprod.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
crossprod.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+ + + + +

+Functions

matrix_v stan::agrad::crossprod (const matrix_v &M)
 Returns the result of pre-multiplying a matrix by its own transpose.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2rev_2matrix_2crossprod_8hpp_source.html b/doc/api/html/agrad_2rev_2matrix_2crossprod_8hpp_source.html new file mode 100644 index 00000000000..7f3e807aa7c --- /dev/null +++ b/doc/api/html/agrad_2rev_2matrix_2crossprod_8hpp_source.html @@ -0,0 +1,124 @@ + + + + + +Stan: src/stan/agrad/rev/matrix/crossprod.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
crossprod.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__REV__MATRIX__CROSSPROD_HPP__
+
2 #define __STAN__AGRAD__REV__MATRIX__CROSSPROD_HPP__
+
3 
+ + +
6 
+
7 namespace stan {
+
8  namespace agrad {
+
9 
+
16  inline matrix_v
+
17  crossprod(const matrix_v& M) {
+
18  return tcrossprod(M.transpose());
+
19  }
+
20 
+
21  }
+
22 }
+
23 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2rev_2matrix_2determinant_8hpp.html b/doc/api/html/agrad_2rev_2matrix_2determinant_8hpp.html new file mode 100644 index 00000000000..bb8da1813cb --- /dev/null +++ b/doc/api/html/agrad_2rev_2matrix_2determinant_8hpp.html @@ -0,0 +1,201 @@ + + + + + +Stan: src/stan/agrad/rev/matrix/determinant.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
determinant.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+ + + + +

+Functions

template<int R, int C>
var stan::agrad::determinant (const Eigen::Matrix< var, R, C > &m)
 
+

Variable Documentation

+ +
+
+ + + + +
vari** _adjARef
+
+ +

Definition at line 24 of file determinant.hpp.

+ +
+
+ +
+
+ + + + +
int _cols
+
+ +

Definition at line 22 of file determinant.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + +
int _rows
+
+static
+
+ +

Definition at line 21 of file determinant.hpp.

+ +
+
+ +
+
+ + + + +
double* A_
+
+ +

Definition at line 23 of file determinant.hpp.

+ +
+
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2rev_2matrix_2determinant_8hpp_source.html b/doc/api/html/agrad_2rev_2matrix_2determinant_8hpp_source.html new file mode 100644 index 00000000000..d08aa49de27 --- /dev/null +++ b/doc/api/html/agrad_2rev_2matrix_2determinant_8hpp_source.html @@ -0,0 +1,182 @@ + + + + + +Stan: src/stan/agrad/rev/matrix/determinant.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
determinant.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__REV__MATRIX__DETERMINANT_HPP__
+
2 #define __STAN__AGRAD__REV__MATRIX__DETERMINANT_HPP__
+
3 
+
4 #include <vector>
+ + + + +
9 #include <stan/agrad/rev/var.hpp>
+ +
11 
+
12 // FIXME: use explicit files
+
13 #include <stan/agrad/rev.hpp>
+
14 
+
15 namespace stan {
+
16  namespace agrad {
+
17 
+
18  namespace {
+
19  template<int R,int C>
+
20  class determinant_vari : public vari {
+
21  int _rows;
+
22  int _cols;
+
23  double* A_;
+
24  vari** _adjARef;
+
25  public:
+
26  determinant_vari(const Eigen::Matrix<var,R,C> &A)
+
27  : vari(determinant_vari_calc(A)),
+
28  _rows(A.rows()),
+
29  _cols(A.cols()),
+
30  A_((double*)stan::agrad::memalloc_.alloc(sizeof(double)
+
31  * A.rows() * A.cols())),
+
32  _adjARef((vari**)stan::agrad::memalloc_.alloc(sizeof(vari*)
+
33  * A.rows() * A.cols()))
+
34  {
+
35  size_t pos = 0;
+
36  for (size_type j = 0; j < _cols; j++) {
+
37  for (size_type i = 0; i < _rows; i++) {
+
38  A_[pos] = A(i,j).val();
+
39  _adjARef[pos++] = A(i,j).vi_;
+
40  }
+
41  }
+
42  }
+
43  static
+
44  double determinant_vari_calc(const Eigen::Matrix<var,R,C> &A) {
+
45  Eigen::Matrix<double,R,C> Ad(A.rows(),A.cols());
+
46  for (size_type j = 0; j < A.rows(); j++)
+
47  for (size_type i = 0; i < A.cols(); i++)
+
48  Ad(i,j) = A(i,j).val();
+
49  return Ad.determinant();
+
50  }
+
51  virtual void chain() {
+
52  using Eigen::Matrix;
+
53  using Eigen::Map;
+
54  Matrix<double,R,C> adjA(_rows,_cols);
+
55  adjA = (adj_ * val_) *
+
56  Map<Matrix<double,R,C> >(A_,_rows,_cols).inverse().transpose();
+
57  size_t pos = 0;
+
58  for (size_type j = 0; j < _cols; j++) {
+
59  for (size_type i = 0; i < _rows; i++) {
+
60  _adjARef[pos++]->adj_ += adjA(i,j);
+
61  }
+
62  }
+
63  }
+
64  };
+
65  }
+
66 
+
67  template <int R, int C>
+
68  inline var determinant(const Eigen::Matrix<var,R,C>& m) {
+
69  stan::math::validate_square(m,"determinant");
+
70  return var(new determinant_vari<R,C>(m));
+
71  }
+
72 
+
73  }
+
74 }
+
75 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2rev_2matrix_2divide_8hpp.html b/doc/api/html/agrad_2rev_2matrix_2divide_8hpp.html new file mode 100644 index 00000000000..6ee8c5e192e --- /dev/null +++ b/doc/api/html/agrad_2rev_2matrix_2divide_8hpp.html @@ -0,0 +1,144 @@ + + + + + +Stan: src/stan/agrad/rev/matrix/divide.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
divide.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+ + + + + + + + + + + +

+Functions

double stan::agrad::divide (double x, double y)
 Return the division of the first scalar by the second scalar.
 
template<typename T1 , typename T2 >
stan::return_type< T1, T2 >::type stan::agrad::divide (const T1 &v, const T2 &c)
 
template<typename T1 , typename T2 , int R, int C>
Eigen::Matrix< var, R, C > stan::agrad::divide (const Eigen::Matrix< T1, R, C > &v, const T2 &c)
 Return the division of the specified column vector by the specified scalar.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2rev_2matrix_2divide_8hpp_source.html b/doc/api/html/agrad_2rev_2matrix_2divide_8hpp_source.html new file mode 100644 index 00000000000..4118b2aceeb --- /dev/null +++ b/doc/api/html/agrad_2rev_2matrix_2divide_8hpp_source.html @@ -0,0 +1,141 @@ + + + + + +Stan: src/stan/agrad/rev/matrix/divide.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
divide.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__REV__MATRIX__DIVIDE_HPP__
+
2 #define __STAN__AGRAD__REV__MATRIX__DIVIDE_HPP__
+
3 
+
4 #include <vector>
+ + + + +
9 #include <stan/agrad/rev/var.hpp>
+ + + +
13 
+
14 namespace stan {
+
15  namespace agrad {
+
16 
+
24  inline double
+
25  divide(double x, double y) {
+
26  return x / y;
+
27  }
+
28  template <typename T1, typename T2>
+
29  inline var
+
30  divide(const T1& v, const T2& c) {
+
31  return to_var(v) / to_var(c);
+
32  }
+
40  template <typename T1, typename T2, int R, int C>
+
41  inline Eigen::Matrix<var,R,C>
+
42  divide(const Eigen::Matrix<T1, R,C>& v, const T2& c) {
+
43  return to_var(v) / to_var(c);
+
44  }
+
45 
+
46  }
+
47 }
+
48 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2rev_2matrix_2dot__product_8hpp.html b/doc/api/html/agrad_2rev_2matrix_2dot__product_8hpp.html new file mode 100644 index 00000000000..d1a4efbd6ac --- /dev/null +++ b/doc/api/html/agrad_2rev_2matrix_2dot__product_8hpp.html @@ -0,0 +1,221 @@ + + + + + +Stan: src/stan/agrad/rev/matrix/dot_product.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
dot_product.hpp File Reference
+
+
+
#include <vector>
+#include <boost/utility/enable_if.hpp>
+#include <boost/type_traits.hpp>
+#include <stan/math/matrix/Eigen.hpp>
+#include <stan/math/matrix/typedefs.hpp>
+#include <stan/math/matrix/validate_vector.hpp>
+#include <stan/math/matrix/validate_matching_sizes.hpp>
+#include <stan/math/functions/value_of.hpp>
+#include <stan/agrad/rev/var.hpp>
+#include <stan/agrad/rev/vari.hpp>
+#include <stan/agrad/rev/matrix/typedefs.hpp>
+#include <stan/agrad/rev/functions/value_of.hpp>
+
+

Go to the source code of this file.

+ + + + +

+Classes

struct  dot_product_store_type< T >
 
+ + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+ + + + + + + + + + + + + + + + + + + +

+Functions

template<typename T1 , int R1, int C1, typename T2 , int R2, int C2>
boost::enable_if_c
+< boost::is_same< T1, var >
+::value||boost::is_same< T2,
+var >::value, var >::type 
stan::agrad::dot_product (const Eigen::Matrix< T1, R1, C1 > &v1, const Eigen::Matrix< T2, R2, C2 > &v2)
 Returns the dot product.
 
template<typename T1 , typename T2 >
boost::enable_if_c
+< boost::is_same< T1, var >
+::value||boost::is_same< T2,
+var >::value, var >::type 
stan::agrad::dot_product (const T1 *v1, const T2 *v2, size_t length)
 Returns the dot product.
 
template<typename T1 , typename T2 >
boost::enable_if_c
+< boost::is_same< T1, var >
+::value||boost::is_same< T2,
+var >::value, var >::type 
stan::agrad::dot_product (const std::vector< T1 > &v1, const std::vector< T2 > &v2)
 Returns the dot product.
 
template<typename T1 , int R1, int C1, typename T2 , int R2, int C2>
boost::enable_if_c
+< boost::is_same< T1, var >
+::value||boost::is_same< T2,
+var >::value, Eigen::Matrix
+< var, 1, C1 > >::type 
stan::agrad::columns_dot_product (const Eigen::Matrix< T1, R1, C1 > &v1, const Eigen::Matrix< T2, R2, C2 > &v2)
 
template<typename T1 , int R1, int C1, typename T2 , int R2, int C2>
boost::enable_if_c
+< boost::is_same< T1, var >
+::value||boost::is_same< T2,
+var >::value, Eigen::Matrix
+< var, R1, 1 > >::type 
stan::agrad::rows_dot_product (const Eigen::Matrix< T1, R1, C1 > &v1, const Eigen::Matrix< T2, R2, C2 > &v2)
 
+

Variable Documentation

+ +
+
+ + + + +
size_t length_
+
+ +

Definition at line 39 of file dot_product.hpp.

+ +
+
+ +
+
+ + + + +
dot_product_store_type<T1>::type v1_
+
+ +

Definition at line 37 of file dot_product.hpp.

+ +
+
+ +
+
+ + + + +
dot_product_store_type<T2>::type v2_
+
+ +

Definition at line 38 of file dot_product.hpp.

+ +
+
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2rev_2matrix_2dot__product_8hpp_source.html b/doc/api/html/agrad_2rev_2matrix_2dot__product_8hpp_source.html new file mode 100644 index 00000000000..3a2612728c8 --- /dev/null +++ b/doc/api/html/agrad_2rev_2matrix_2dot__product_8hpp_source.html @@ -0,0 +1,368 @@ + + + + + +Stan: src/stan/agrad/rev/matrix/dot_product.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
dot_product.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__REV__MATRIX__DOT_PRODUCT_HPP__
+
2 #define __STAN__AGRAD__REV__MATRIX__DOT_PRODUCT_HPP__
+
3 
+
4 #include <vector>
+
5 #include <boost/utility/enable_if.hpp>
+
6 #include <boost/type_traits.hpp>
+ + + + + +
12 #include <stan/agrad/rev/var.hpp>
+
13 #include <stan/agrad/rev/vari.hpp>
+ + +
16 
+
17 namespace stan {
+
18  namespace agrad {
+
19 
+
20  namespace {
+
21  template<typename T>
+ +
23 
+
24  template<>
+
25  struct dot_product_store_type<var> {
+
26  typedef vari** type;
+
27  };
+
28 
+
29  template<>
+
30  struct dot_product_store_type<double> {
+
31  typedef double* type;
+
32  };
+
33 
+
34  template<typename T1, typename T2>
+
35  class dot_product_vari : public vari {
+
36  protected:
+ + +
39  size_t length_;
+
40 
+
41  inline static double var_dot(vari** v1, vari** v2,
+
42  size_t length) {
+
43  Eigen::VectorXd vd1(length), vd2(length);
+
44  for (size_t i = 0; i < length; i++) {
+
45  vd1[i] = v1[i]->val_;
+
46  vd2[i] = v2[i]->val_;
+
47  }
+
48  return vd1.dot(vd2);
+
49  }
+
50 
+
51  inline static double var_dot(const T1* v1, const T2* v2,
+
52  size_t length) {
+ +
54  Eigen::VectorXd vd1(length), vd2(length);
+
55  for (size_t i = 0; i < length; i++) {
+
56  vd1[i] = value_of(v1[i]);
+
57  vd2[i] = value_of(v2[i]);
+
58  }
+
59  return vd1.dot(vd2);
+
60  }
+
61 
+
62  template<typename Derived1,typename Derived2>
+
63  inline static double var_dot(const Eigen::DenseBase<Derived1> &v1,
+
64  const Eigen::DenseBase<Derived2> &v2) {
+ + +
67  Eigen::VectorXd vd1(v1.size()), vd2(v1.size());
+
68  for (int i = 0; i < v1.size(); i++) {
+
69  vd1[i] = value_of(v1[i]);
+
70  vd2[i] = value_of(v2[i]);
+
71  }
+
72  return vd1.dot(vd2);
+
73  }
+
74  inline void chain(vari** v1, vari** v2) {
+
75  for (size_t i = 0; i < length_; i++) {
+
76  v1[i]->adj_ += adj_ * v2_[i]->val_;
+
77  v2[i]->adj_ += adj_ * v1_[i]->val_;
+
78  }
+
79  }
+
80  inline void chain(double* v1, vari** v2) {
+
81  for (size_t i = 0; i < length_; i++) {
+
82  v2[i]->adj_ += adj_ * v1_[i];
+
83  }
+
84  }
+
85  inline void chain(vari** v1, double* v2) {
+
86  for (size_t i = 0; i < length_; i++) {
+
87  v1[i]->adj_ += adj_ * v2_[i];
+
88  }
+
89  }
+
90  inline void initialize(vari** &mem_v, const var *inv, vari **shared = NULL) {
+
91  if (shared == NULL) {
+
92  mem_v = (vari**)memalloc_.alloc(length_*sizeof(vari*));
+
93  for (size_t i = 0; i < length_; i++)
+
94  mem_v[i] = inv[i].vi_;
+
95  }
+
96  else {
+
97  mem_v = shared;
+
98  }
+
99  }
+
100  template<typename Derived>
+
101  inline void initialize(vari** &mem_v, const Eigen::DenseBase<Derived> &inv, vari **shared = NULL) {
+
102  if (shared == NULL) {
+
103  mem_v = (vari**)memalloc_.alloc(length_*sizeof(vari*));
+
104  for (size_t i = 0; i < length_; i++)
+
105  mem_v[i] = inv(i).vi_;
+
106  }
+
107  else {
+
108  mem_v = shared;
+
109  }
+
110  }
+
111 
+
112  inline void initialize(double* &mem_d, const double *ind, double *shared = NULL) {
+
113  if (shared == NULL) {
+
114  mem_d = (double*)memalloc_.alloc(length_*sizeof(double));
+
115  for (size_t i = 0; i < length_; i++)
+
116  mem_d[i] = ind[i];
+
117  }
+
118  else {
+
119  mem_d = shared;
+
120  }
+
121  }
+
122  template<typename Derived>
+
123  inline void initialize(double* &mem_d, const Eigen::DenseBase<Derived> &ind, double *shared = NULL) {
+
124  if (shared == NULL) {
+
125  mem_d = (double*)memalloc_.alloc(length_*sizeof(double));
+
126  for (size_t i = 0; i < length_; i++)
+
127  mem_d[i] = ind(i);
+
128  }
+
129  else {
+
130  mem_d = shared;
+
131  }
+
132  }
+
133 
+
134  public:
+
135  dot_product_vari(typename dot_product_store_type<T1>::type v1,
+ +
137  size_t length)
+
138  : vari(var_dot(v1,v2,length)), v1_(v1), v2_(v2), length_(length) {}
+
139 
+
140  dot_product_vari(const T1* v1, const T2* v2, size_t length,
+
141  dot_product_vari<T1,T2>* shared_v1 = NULL,
+
142  dot_product_vari<T1,T2>* shared_v2 = NULL) :
+
143  vari(var_dot(v1, v2, length)), length_(length) {
+
144  if (shared_v1 == NULL) {
+
145  initialize(v1_,v1);
+
146  }
+
147  else {
+
148  initialize(v1_,v1,shared_v1->v1_);
+
149  }
+
150  if (shared_v2 == NULL) {
+
151  initialize(v2_,v2);
+
152  }
+
153  else {
+
154  initialize(v2_,v2,shared_v2->v2_);
+
155  }
+
156  }
+
157  template<typename Derived1,typename Derived2>
+
158  dot_product_vari(const Eigen::DenseBase<Derived1> &v1,
+
159  const Eigen::DenseBase<Derived2> &v2,
+
160  dot_product_vari<T1,T2>* shared_v1 = NULL,
+
161  dot_product_vari<T1,T2>* shared_v2 = NULL) :
+
162  vari(var_dot(v1, v2)), length_(v1.size()) {
+
163  if (shared_v1 == NULL) {
+
164  initialize(v1_,v1);
+
165  }
+
166  else {
+
167  initialize(v1_,v1,shared_v1->v1_);
+
168  }
+
169  if (shared_v2 == NULL) {
+
170  initialize(v2_,v2);
+
171  }
+
172  else {
+
173  initialize(v2_,v2,shared_v2->v2_);
+
174  }
+
175  }
+
176  template<int R1,int C1,int R2,int C2>
+
177  dot_product_vari(const Eigen::Matrix<T1,R1,C1> &v1,
+
178  const Eigen::Matrix<T2,R2,C2> &v2,
+
179  dot_product_vari<T1,T2>* shared_v1 = NULL,
+
180  dot_product_vari<T1,T2>* shared_v2 = NULL) :
+
181  vari(var_dot(v1, v2)), length_(v1.size()) {
+
182  if (shared_v1 == NULL) {
+
183  initialize(v1_,v1);
+
184  }
+
185  else {
+
186  initialize(v1_,v1,shared_v1->v1_);
+
187  }
+
188  if (shared_v2 == NULL) {
+
189  initialize(v2_,v2);
+
190  }
+
191  else {
+
192  initialize(v2_,v2,shared_v2->v2_);
+
193  }
+
194  }
+
195  virtual void chain() {
+
196  chain(v1_,v2_);
+
197  }
+
198  };
+
199  }
+
200 
+
209  template<typename T1, int R1, int C1, typename T2, int R2, int C2>
+
210  inline
+
211  typename boost::enable_if_c<boost::is_same<T1,var>::value ||
+
212  boost::is_same<T2,var>::value, var>::type
+
213  dot_product(const Eigen::Matrix<T1, R1, C1>& v1,
+
214  const Eigen::Matrix<T2, R2, C2>& v2) {
+
215  stan::math::validate_vector(v1,"dot_product");
+
216  stan::math::validate_vector(v2,"dot_product");
+
217  stan::math::validate_matching_sizes(v1,v2,"dot_product");
+
218  return var(new dot_product_vari<T1,T2>(v1,v2));
+
219  }
+
228  template<typename T1, typename T2>
+
229  inline
+
230  typename boost::enable_if_c<boost::is_same<T1,var>::value ||
+
231  boost::is_same<T2,var>::value, var>::type
+
232  dot_product(const T1* v1, const T2* v2, size_t length) {
+
233  return var(new dot_product_vari<T1,T2>(v1, v2, length));
+
234  }
+
235 
+
244  template<typename T1, typename T2>
+
245  inline
+
246  typename boost::enable_if_c<boost::is_same<T1,var>::value ||
+
247  boost::is_same<T2,var>::value, var>::type
+
248  dot_product(const std::vector<T1>& v1,
+
249  const std::vector<T2>& v2) {
+
250  stan::math::validate_matching_sizes(v1,v2,"dot_product");
+
251  return var(new dot_product_vari<T1,T2>(&v1[0], &v2[0], v1.size()));
+
252  }
+
253 
+
254  template<typename T1, int R1, int C1, typename T2, int R2, int C2>
+
255  inline
+
256  typename boost::enable_if_c<boost::is_same<T1,var>::value ||
+
257  boost::is_same<T2,var>::value,
+
258  Eigen::Matrix<var, 1, C1> >::type
+
259  columns_dot_product(const Eigen::Matrix<T1, R1, C1>& v1,
+
260  const Eigen::Matrix<T2, R2, C2>& v2) {
+
261  stan::math::validate_matching_sizes(v1,v2,"columns_dot_product");
+
262  Eigen::Matrix<var, 1, C1> ret(1,v1.cols());
+
263  for (size_type j = 0; j < v1.cols(); ++j) {
+
264  ret(j) = var(new dot_product_vari<T1,T2>(v1.col(j),v2.col(j)));
+
265  }
+
266  return ret;
+
267  }
+
268 
+
269  template<typename T1, int R1, int C1, typename T2, int R2, int C2>
+
270  inline
+
271  typename boost::enable_if_c<boost::is_same<T1,var>::value ||
+
272  boost::is_same<T2,var>::value,
+
273  Eigen::Matrix<var, R1, 1> >::type
+
274  rows_dot_product(const Eigen::Matrix<T1, R1, C1>& v1,
+
275  const Eigen::Matrix<T2, R2, C2>& v2) {
+
276  stan::math::validate_matching_sizes(v1,v2,"rows_dot_product");
+
277  Eigen::Matrix<var, R1, 1> ret(v1.rows(),1);
+
278  for (size_type j = 0; j < v1.rows(); ++j) {
+
279  ret(j) = var(new dot_product_vari<T1,T2>(v1.row(j),v2.row(j)));
+
280  }
+
281  return ret;
+
282  }
+
283  }
+
284 }
+
285 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2rev_2matrix_2dot__self_8hpp.html b/doc/api/html/agrad_2rev_2matrix_2dot__self_8hpp.html new file mode 100644 index 00000000000..35e7b4b75a7 --- /dev/null +++ b/doc/api/html/agrad_2rev_2matrix_2dot__self_8hpp.html @@ -0,0 +1,176 @@ + + + + + +Stan: src/stan/agrad/rev/matrix/dot_self.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
dot_self.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+ + + + + + + + + +

+Functions

template<int R, int C>
var stan::agrad::dot_self (const Eigen::Matrix< var, R, C > &v)
 Returns the dot product of a vector with itself.
 
template<int R, int C>
Eigen::Matrix< var, 1, C > stan::agrad::columns_dot_self (const Eigen::Matrix< var, R, C > &x)
 Returns the dot product of each column of a matrix with itself.
 
+

Variable Documentation

+ +
+
+ + + + +
size_t size_
+
+ +

Definition at line 18 of file dot_self.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + +
vari** v_
+
+static
+
+ +

Definition at line 17 of file dot_self.hpp.

+ +
+
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2rev_2matrix_2dot__self_8hpp_source.html b/doc/api/html/agrad_2rev_2matrix_2dot__self_8hpp_source.html new file mode 100644 index 00000000000..257b662a5b0 --- /dev/null +++ b/doc/api/html/agrad_2rev_2matrix_2dot__self_8hpp_source.html @@ -0,0 +1,192 @@ + + + + + +Stan: src/stan/agrad/rev/matrix/dot_self.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
dot_self.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__REV__MATRIX__DOT_SELF_HPP__
+
2 #define __STAN__AGRAD__REV__MATRIX__DOT_SELF_HPP__
+
3 
+
4 #include <vector>
+ + + +
8 #include <stan/agrad/rev/var.hpp>
+ +
10 
+
11 namespace stan {
+
12  namespace agrad {
+
13 
+
14  namespace {
+
15  class dot_self_vari : public vari {
+
16  protected:
+
17  vari** v_;
+
18  size_t size_;
+
19  public:
+
20  dot_self_vari(vari** v, size_t size)
+
21  : vari(var_dot_self(v,size)),
+
22  v_(v),
+
23  size_(size) {
+
24  }
+
25  template<typename Derived>
+
26  dot_self_vari(const Eigen::DenseBase<Derived> &v) :
+
27  vari(var_dot_self(v)), size_(v.size()) {
+
28  v_ = (vari**)memalloc_.alloc(size_*sizeof(vari*));
+
29  for (size_t i = 0; i < size_; i++)
+
30  v_[i] = v[i].vi_;
+
31  }
+
32  template <int R, int C>
+
33  dot_self_vari(const Eigen::Matrix<var,R,C>& v) :
+
34  vari(var_dot_self(v)), size_(v.size()) {
+
35  v_ = (vari**) memalloc_.alloc(size_ * sizeof(vari*));
+
36  for (size_t i = 0; i < size_; ++i)
+
37  v_[i] = v(i).vi_;
+
38  }
+
39  inline static double square(double x) { return x * x; }
+
40  inline static double var_dot_self(vari** v, size_t size) {
+
41  double sum = 0.0;
+
42  for (size_t i = 0; i < size; ++i)
+
43  sum += square(v[i]->val_);
+
44  return sum;
+
45  }
+
46  template<typename Derived>
+
47  double var_dot_self(const Eigen::DenseBase<Derived> &v) {
+
48  double sum = 0.0;
+
49  for (int i = 0; i < v.size(); ++i)
+
50  sum += square(v(i).vi_->val_);
+
51  return sum;
+
52  }
+
53  template <int R, int C>
+
54  inline static double var_dot_self(const Eigen::Matrix<var,R,C> &v) {
+
55  double sum = 0.0;
+
56  for (int i = 0; i < v.size(); ++i)
+
57  sum += square(v(i).vi_->val_);
+
58  return sum;
+
59  }
+
60  virtual void chain() {
+
61  for (size_t i = 0; i < size_; ++i)
+
62  v_[i]->adj_ += adj_ * 2.0 * v_[i]->val_;
+
63  }
+
64  };
+
65  }
+
76  template<int R, int C>
+
77  inline var dot_self(const Eigen::Matrix<var, R, C>& v) {
+
78  stan::math::validate_vector(v,"dot_self");
+
79  return var(new dot_self_vari(v));
+
80  }
+
81 
+
87  template<int R,int C>
+
88  inline Eigen::Matrix<var,1,C>
+
89  columns_dot_self(const Eigen::Matrix<var,R,C>& x) {
+
90  Eigen::Matrix<var,1,C> ret(1,x.cols());
+
91  for (size_type i = 0; i < x.cols(); i++) {
+
92  ret(i) = var(new dot_self_vari(x.col(i)));
+
93  }
+
94  return ret;
+
95  }
+
96 
+
97 
+
98  }
+
99 }
+
100 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2rev_2matrix_2log__determinant_8hpp.html b/doc/api/html/agrad_2rev_2matrix_2log__determinant_8hpp.html new file mode 100644 index 00000000000..d5cf71b3ba4 --- /dev/null +++ b/doc/api/html/agrad_2rev_2matrix_2log__determinant_8hpp.html @@ -0,0 +1,201 @@ + + + + + +Stan: src/stan/agrad/rev/matrix/log_determinant.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
log_determinant.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+ + + + +

+Functions

template<int R, int C>
var stan::agrad::log_determinant (const Eigen::Matrix< var, R, C > &m)
 
+

Variable Documentation

+ +
+
+ + + + +
vari** _adjARef
+
+ +

Definition at line 24 of file log_determinant.hpp.

+ +
+
+ +
+
+ + + + +
int _cols
+
+ +

Definition at line 22 of file log_determinant.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + +
int _rows
+
+static
+
+ +

Definition at line 21 of file log_determinant.hpp.

+ +
+
+ +
+
+ + + + +
double* A_
+
+ +

Definition at line 23 of file log_determinant.hpp.

+ +
+
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2rev_2matrix_2log__determinant_8hpp_source.html b/doc/api/html/agrad_2rev_2matrix_2log__determinant_8hpp_source.html new file mode 100644 index 00000000000..25883a73173 --- /dev/null +++ b/doc/api/html/agrad_2rev_2matrix_2log__determinant_8hpp_source.html @@ -0,0 +1,184 @@ + + + + + +Stan: src/stan/agrad/rev/matrix/log_determinant.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
log_determinant.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__REV__MATRIX__LOG_DETERMINANT_HPP__
+
2 #define __STAN__AGRAD__REV__MATRIX__LOG_DETERMINANT_HPP__
+
3 
+
4 #include <vector>
+ + + + +
9 #include <stan/agrad/rev/var.hpp>
+ +
11 
+
12 // FIXME: use explicit files
+
13 #include <stan/agrad/rev.hpp>
+
14 
+
15 namespace stan {
+
16  namespace agrad {
+
17 
+
18  namespace {
+
19  template<int R,int C>
+
20  class log_determinant_vari : public vari {
+
21  int _rows;
+
22  int _cols;
+
23  double* A_;
+
24  vari** _adjARef;
+
25  public:
+
26  log_determinant_vari(const Eigen::Matrix<var,R,C> &A)
+
27  : vari(log_determinant_vari_calc(A)),
+
28  _rows(A.rows()),
+
29  _cols(A.cols()),
+
30  A_((double*)stan::agrad::memalloc_.alloc(sizeof(double)
+
31  * A.rows() * A.cols())),
+
32  _adjARef((vari**)stan::agrad::memalloc_.alloc(sizeof(vari*)
+
33  * A.rows() * A.cols()))
+
34  {
+
35  size_t pos = 0;
+
36  for (size_type j = 0; j < _cols; j++) {
+
37  for (size_type i = 0; i < _rows; i++) {
+
38  A_[pos] = A(i,j).val();
+
39  _adjARef[pos++] = A(i,j).vi_;
+
40  }
+
41  }
+
42  }
+
43  static
+
44  double log_determinant_vari_calc(const Eigen::Matrix<var,R,C> &A)
+
45  {
+
46  Eigen::Matrix<double,R,C> Ad(A.rows(),A.cols());
+
47  for (size_type j = 0; j < A.cols(); j++)
+
48  for (size_type i = 0; i < A.rows(); i++)
+
49  Ad(i,j) = A(i,j).val();
+
50  return Ad.fullPivHouseholderQr().logAbsDeterminant();
+
51  }
+
52  virtual void chain() {
+
53  using Eigen::Matrix;
+
54  using Eigen::Map;
+
55  Matrix<double,R,C> adjA(_rows,_cols);
+
56  adjA = adj_
+
57  * Map<Matrix<double,R,C> >(A_,_rows,_cols)
+
58  .inverse().transpose();
+
59  size_t pos = 0;
+
60  for (size_type j = 0; j < _cols; j++) {
+
61  for (size_type i = 0; i < _rows; i++) {
+
62  _adjARef[pos++]->adj_ += adjA(i,j);
+
63  }
+
64  }
+
65  }
+
66  };
+
67  }
+
68 
+
69  template <int R, int C>
+
70  inline var log_determinant(const Eigen::Matrix<var,R,C>& m) {
+
71  stan::math::validate_square(m,"log_determinant");
+
72  return var(new log_determinant_vari<R,C>(m));
+
73  }
+
74 
+
75  }
+
76 }
+
77 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2rev_2matrix_2log__determinant__ldlt_8hpp.html b/doc/api/html/agrad_2rev_2matrix_2log__determinant__ldlt_8hpp.html new file mode 100644 index 00000000000..234150ef180 --- /dev/null +++ b/doc/api/html/agrad_2rev_2matrix_2log__determinant__ldlt_8hpp.html @@ -0,0 +1,147 @@ + + + + + +Stan: src/stan/agrad/rev/matrix/log_determinant_ldlt.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
log_determinant_ldlt.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+ + + + +

+Functions

template<int R, int C>
var stan::agrad::log_determinant_ldlt (stan::math::LDLT_factor< var, R, C > &A)
 
+

Variable Documentation

+ +
+
+ + + + +
const LDLT_alloc<R,C>* _alloc_ldlt
+
+ +

Definition at line 43 of file log_determinant_ldlt.hpp.

+ +
+
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2rev_2matrix_2log__determinant__ldlt_8hpp_source.html b/doc/api/html/agrad_2rev_2matrix_2log__determinant__ldlt_8hpp_source.html new file mode 100644 index 00000000000..3c15ed1081c --- /dev/null +++ b/doc/api/html/agrad_2rev_2matrix_2log__determinant__ldlt_8hpp_source.html @@ -0,0 +1,151 @@ + + + + + +Stan: src/stan/agrad/rev/matrix/log_determinant_ldlt.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
log_determinant_ldlt.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__REV__MATRIX__LOG_DETERMINANT_LDLT_HPP__
+
2 #define __STAN__AGRAD__REV__MATRIX__LOG_DETERMINANT_LDLT_HPP__
+
3 
+ +
5 #include <stan/agrad/rev/var.hpp>
+ + +
8 
+
9 namespace stan {
+
10  namespace agrad {
+
11  namespace {
+
12 
+
22  template<int R,int C>
+
23  class log_det_ldlt_vari : public vari {
+
24  public:
+
25  log_det_ldlt_vari(const stan::math::LDLT_factor<var,R,C> &A)
+
26  : vari(A._alloc->log_abs_det()), _alloc_ldlt(A._alloc)
+
27  { }
+
28 
+
29  virtual void chain() {
+
30  Eigen::Matrix<double,R,C> invA;
+
31 
+
32  // If we start computing Jacobians, this may be a bit inefficient
+
33  invA.setIdentity(_alloc_ldlt->N_, _alloc_ldlt->N_);
+
34  _alloc_ldlt->_ldlt.solveInPlace(invA);
+
35 
+
36  for (size_t j = 0; j < _alloc_ldlt->N_; j++) {
+
37  for (size_t i = 0; i < _alloc_ldlt->N_; i++) {
+
38  _alloc_ldlt->_variA(i,j)->adj_ += adj_ * invA(i,j);
+
39  }
+
40  }
+
41  }
+
42 
+
43  const LDLT_alloc<R,C> *_alloc_ldlt;
+
44  };
+
45  }
+
46 
+
47  template<int R, int C>
+
48  var log_determinant_ldlt(stan::math::LDLT_factor<var,R,C> &A) {
+
49  return var(new log_det_ldlt_vari<R,C>(A));
+
50  }
+
51  }
+
52 }
+
53 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2rev_2matrix_2log__determinant__spd_8hpp.html b/doc/api/html/agrad_2rev_2matrix_2log__determinant__spd_8hpp.html new file mode 100644 index 00000000000..f1739db7cb7 --- /dev/null +++ b/doc/api/html/agrad_2rev_2matrix_2log__determinant__spd_8hpp.html @@ -0,0 +1,208 @@ + + + + + +Stan: src/stan/agrad/rev/matrix/log_determinant_spd.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
log_determinant_spd.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+ + + + +

+Functions

template<int R, int C>
var stan::agrad::log_determinant_spd (const Eigen::Matrix< var, R, C > &m)
 
+

Variable Documentation

+ +
+
+ + + + +
vari** _adjARef
+
+ +

Definition at line 34 of file log_determinant_spd.hpp.

+ +
+
+ +
+
+ + + + +
log_determinant_spd_alloc<R,C>* _alloc
+
+ +

Definition at line 31 of file log_determinant_spd.hpp.

+ +
+
+ +
+
+ + + + +
int _cols
+
+ +

Definition at line 33 of file log_determinant_spd.hpp.

+ +
+
+ +
+
+ + + + +
Eigen::Matrix<double,R,C> _invA
+
+ +

Definition at line 25 of file log_determinant_spd.hpp.

+ +
+
+ +
+
+ + + + +
int _rows
+
+ +

Definition at line 32 of file log_determinant_spd.hpp.

+ +
+
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2rev_2matrix_2log__determinant__spd_8hpp_source.html b/doc/api/html/agrad_2rev_2matrix_2log__determinant__spd_8hpp_source.html new file mode 100644 index 00000000000..8ad4faec3d0 --- /dev/null +++ b/doc/api/html/agrad_2rev_2matrix_2log__determinant__spd_8hpp_source.html @@ -0,0 +1,231 @@ + + + + + +Stan: src/stan/agrad/rev/matrix/log_determinant_spd.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
log_determinant_spd.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__REV__MATRIX__LOG_DETERMINANT_SPD_HPP__
+
2 #define __STAN__AGRAD__REV__MATRIX__LOG_DETERMINANT_SPD_HPP__
+
3 
+
4 #include <vector>
+ + + + + +
10 #include <stan/agrad/rev/var.hpp>
+ +
12 
+
13 // FIXME: use explicit files
+
14 #include <stan/agrad/rev.hpp>
+
15 
+
16 namespace stan {
+
17  namespace agrad {
+
18 
+
19  namespace {
+
20  template <int R,int C>
+
21  class log_determinant_spd_alloc : public chainable_alloc {
+
22  public:
+
23  virtual ~log_determinant_spd_alloc() {}
+
24 
+
25  Eigen::Matrix<double,R,C> _invA;
+
26  };
+
27 
+
28 
+
29  template<int R,int C>
+
30  class log_determinant_spd_vari : public vari {
+
31  log_determinant_spd_alloc<R,C> *_alloc;
+
32  int _rows;
+
33  int _cols;
+
34  vari** _adjARef;
+
35  public:
+
36  log_determinant_spd_vari(const Eigen::Matrix<var,R,C> &A)
+
37  : vari(log_determinant_spd_vari_calc(A,&_alloc)),
+
38  _rows(A.rows()),
+
39  _cols(A.cols()),
+
40  _adjARef((vari**)stan::agrad::memalloc_.alloc(sizeof(vari*)
+
41  * A.rows() * A.cols()))
+
42  {
+
43  size_t pos = 0;
+
44  for (size_type j = 0; j < _cols; j++) {
+
45  for (size_type i = 0; i < _rows; i++) {
+
46  _adjARef[pos++] = A(i,j).vi_;
+
47  }
+
48  }
+
49  }
+
50 
+
51  static
+
52  double log_determinant_spd_vari_calc(const Eigen::Matrix<var,R,C> &A,
+
53  log_determinant_spd_alloc<R,C> **alloc)
+
54  {
+
55  using stan::math::dom_err;
+
56 
+
57  // allocate space for information needed in chain
+
58  *alloc = new log_determinant_spd_alloc<R,C>();
+
59 
+
60  // compute cholesky decomposition of A
+
61  (*alloc)->_invA.resize(A.rows(),A.cols());
+
62  for (size_type j = 0; j < A.cols(); j++)
+
63  for (size_type i = 0; i < A.rows(); i++)
+
64  (*alloc)->_invA(i,j) = A(i,j).val();
+
65  Eigen::LDLT< Eigen::Matrix<double,R,C> > ldlt((*alloc)->_invA);
+
66  if (ldlt.info() != Eigen::Success) {
+
67  // Handle this better.
+
68  (*alloc)->_invA.setZero(A.rows(),A.cols());
+
69  double y = 0;
+
70  double result = -std::numeric_limits<double>::infinity();
+
71  return dom_err("log_determinant_spd(%1%)",
+
72  y,
+
73  "matrix argument",
+
74  "failed LDLT factorization","",
+
75  &result);
+
76  }
+
77 
+
78  // compute the inverse of A (needed for the derivative)
+
79  (*alloc)->_invA.setIdentity(A.rows(),A.cols());
+
80  ldlt.solveInPlace((*alloc)->_invA);
+
81 
+
82  if (ldlt.isNegative() || (ldlt.vectorD().array() <= 1e-16).any()) {
+
83  double y = 0;
+
84  double result = -std::numeric_limits<double>::infinity();
+
85  return dom_err("log_determinant_spd(%1%)",
+
86  y,
+
87  "matrix argument",
+
88  "matrix is negative definite","",
+
89  &result);
+
90  }
+
91 
+
92  double ret = ldlt.vectorD().array().log().sum();
+
93  if (!boost::math::isfinite(ret)) {
+
94  double y = 0;
+
95  double result = -std::numeric_limits<double>::infinity();
+
96  return dom_err("log_determinant_spd(%1%)",
+
97  y,
+
98  "matrix argument",
+
99  "log determininant is infinite","",
+
100  &result);
+
101  }
+
102  return ret;
+
103  }
+
104 
+
105  virtual void chain() {
+
106  size_t pos = 0;
+
107  for (size_type j = 0; j < _cols; j++) {
+
108  for (size_type i = 0; i < _rows; i++) {
+
109  _adjARef[pos++]->adj_ += adj_*_alloc->_invA(i,j);
+
110  }
+
111  }
+
112  }
+
113  };
+
114  }
+
115 
+
116  template <int R, int C>
+
117  inline var log_determinant_spd(const Eigen::Matrix<var,R,C>& m) {
+
118  stan::math::validate_square(m,"log_determinant_spd");
+
119  return var(new log_determinant_spd_vari<R,C>(m));
+
120  }
+
121 
+
122  }
+
123 }
+
124 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2rev_2matrix_2log__softmax_8hpp.html b/doc/api/html/agrad_2rev_2matrix_2log__softmax_8hpp.html new file mode 100644 index 00000000000..9a3e38e2fe2 --- /dev/null +++ b/doc/api/html/agrad_2rev_2matrix_2log__softmax_8hpp.html @@ -0,0 +1,201 @@ + + + + + +Stan: src/stan/agrad/rev/matrix/log_softmax.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
log_softmax.hpp File Reference
+
+
+
#include <cmath>
+#include <vector>
+#include <stdexcept>
+#include <stan/math/matrix/Eigen.hpp>
+#include <stan/math/matrix/log_softmax.hpp>
+#include <stan/math/matrix/softmax.hpp>
+#include <stan/agrad/rev/var.hpp>
+
+

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+ + + + +

+Functions

Eigen::Matrix< var,
+Eigen::Dynamic, 1 > 
stan::agrad::log_softmax (const Eigen::Matrix< var, Eigen::Dynamic, 1 > &alpha)
 Return the softmax of the specified Eigen vector.
 
+

Variable Documentation

+ +
+
+ + + + + +
+ + + + +
vari** alpha_
+
+static
+
+ +

Definition at line 19 of file log_softmax.hpp.

+ +
+
+ +
+
+ + + + +
const int idx_
+
+ +

Definition at line 22 of file log_softmax.hpp.

+ +
+
+ +
+
+ + + + +
const int size_
+
+ +

Definition at line 21 of file log_softmax.hpp.

+ +
+
+ +
+
+ + + + +
const double* softmax_alpha_
+
+ +

Definition at line 20 of file log_softmax.hpp.

+ +
+
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2rev_2matrix_2log__softmax_8hpp_source.html b/doc/api/html/agrad_2rev_2matrix_2log__softmax_8hpp_source.html new file mode 100644 index 00000000000..f34453ffd17 --- /dev/null +++ b/doc/api/html/agrad_2rev_2matrix_2log__softmax_8hpp_source.html @@ -0,0 +1,222 @@ + + + + + +Stan: src/stan/agrad/rev/matrix/log_softmax.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
log_softmax.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__REV__MATRIX__LOG_SOFTMAX_HPP__
+
2 #define __STAN__AGRAD__REV__MATRIX__LOG_SOFTMAX_HPP__
+
3 
+
4 #include <cmath>
+
5 #include <vector>
+
6 #include <stdexcept>
+ + + +
10 #include <stan/agrad/rev/var.hpp>
+
11 
+
12 namespace stan {
+
13  namespace agrad {
+
14 
+
15  namespace {
+
16 
+
17  class log_softmax_elt_vari : public vari {
+
18  private:
+
19  vari** alpha_;
+
20  const double* softmax_alpha_;
+
21  const int size_; // array sizes
+
22  const int idx_; // in in softmax output
+
23  public:
+
24  log_softmax_elt_vari(double val,
+
25  vari** alpha,
+
26  const double* softmax_alpha,
+
27  int size,
+
28  int idx)
+
29  : vari(val),
+
30  alpha_(alpha),
+
31  softmax_alpha_(softmax_alpha),
+
32  size_(size),
+
33  idx_(idx) {
+
34  }
+
35  void chain() {
+
36  for (int m = 0; m < size_; ++m) {
+
37  if (m == idx_)
+
38  alpha_[m]->adj_ += adj_ * (1 - softmax_alpha_[m]);
+
39  else
+
40  alpha_[m]->adj_ -= adj_ * softmax_alpha_[m];
+
41  }
+
42  }
+
43  };
+
44 
+
45  }
+
46 
+
47 
+
58  inline Eigen::Matrix<var,Eigen::Dynamic,1>
+
59  log_softmax(const Eigen::Matrix<var,Eigen::Dynamic,1>& alpha) {
+
60  using Eigen::Matrix;
+
61  using Eigen::Dynamic;
+
62 
+
63  stan::math::validate_nonzero_size(alpha,"vector argument to var log_softmax");
+
64 
+
65  if (alpha.size() == 0)
+
66  throw std::domain_error("arg vector to log_softmax() must have size > 0");
+
67  if (alpha.size() == 0)
+
68  throw std::domain_error("arg vector to log_softmax() must have size > 0");
+
69 
+
70  if (alpha.size() == 0)
+
71  throw std::domain_error("arg vector to log_softmax() must have size > 0");
+
72 
+
73  vari** alpha_vi_array
+
74  = (vari**) agrad::chainable::operator new(sizeof(vari*) * alpha.size());
+
75  for (int i = 0; i < alpha.size(); ++i)
+
76  alpha_vi_array[i] = alpha(i).vi_;
+
77 
+
78 
+
79  Matrix<double,Dynamic,1> alpha_d(alpha.size());
+
80  for (int i = 0; i < alpha_d.size(); ++i)
+
81  alpha_d(i) = alpha(i).val();
+
82 
+
83  // fold logic of math::softmax() and math::log_softmax() to save computations
+
84 
+
85  Matrix<double,Dynamic,1> softmax_alpha_d(alpha_d.size());
+
86  Matrix<double,Dynamic,1> log_softmax_alpha_d(alpha_d.size());
+
87 
+
88  double max_v = alpha_d.maxCoeff();
+
89 
+
90  double sum = 0.0;
+
91  for (int i = 0; i < alpha_d.size(); ++i) {
+
92  softmax_alpha_d(i) = std::exp(alpha_d(i) - max_v);
+
93  sum += softmax_alpha_d(i);
+
94  }
+
95 
+
96  for (int i = 0; i < alpha_d.size(); ++i)
+
97  softmax_alpha_d(i) /= sum;
+
98  double log_sum = std::log(sum);
+
99 
+
100  for (int i = 0; i < alpha_d.size(); ++i)
+
101  log_softmax_alpha_d(i) = (alpha_d(i) - max_v) - log_sum;
+
102 
+
103  // end fold
+
104 
+
105  double* softmax_alpha_d_array
+
106  = (double*) agrad::chainable::operator new(sizeof(double) * alpha_d.size());
+
107 
+
108  for (int i = 0; i < alpha_d.size(); ++i)
+
109  softmax_alpha_d_array[i] = softmax_alpha_d(i);
+
110 
+
111  Matrix<var,Dynamic,1> log_softmax_alpha(alpha.size());
+
112  for (int k = 0; k < log_softmax_alpha.size(); ++k)
+
113  log_softmax_alpha(k) = var(new log_softmax_elt_vari(log_softmax_alpha_d[k],
+
114  alpha_vi_array,
+
115  softmax_alpha_d_array,
+
116  alpha.size(),
+
117  k));
+
118  return log_softmax_alpha;
+
119  }
+
120 
+
121 
+
122  }
+
123 }
+
124 
+
125 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2rev_2matrix_2log__sum__exp_8hpp.html b/doc/api/html/agrad_2rev_2matrix_2log__sum__exp_8hpp.html new file mode 100644 index 00000000000..c86a660afc2 --- /dev/null +++ b/doc/api/html/agrad_2rev_2matrix_2log__sum__exp_8hpp.html @@ -0,0 +1,139 @@ + + + + + +Stan: src/stan/agrad/rev/matrix/log_sum_exp.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
log_sum_exp.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+ + + + + +

+Functions

template<int R, int C>
var stan::agrad::log_sum_exp (const Eigen::Matrix< var, R, C > &x)
 Returns the log sum of exponentials.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2rev_2matrix_2log__sum__exp_8hpp_source.html b/doc/api/html/agrad_2rev_2matrix_2log__sum__exp_8hpp_source.html new file mode 100644 index 00000000000..c8b81519a6b --- /dev/null +++ b/doc/api/html/agrad_2rev_2matrix_2log__sum__exp_8hpp_source.html @@ -0,0 +1,167 @@ + + + + + +Stan: src/stan/agrad/rev/matrix/log_sum_exp.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
log_sum_exp.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__REV__MATRIX__LOG_SUM_EXP_HPP__
+
2 #define __STAN__AGRAD__REV__MATRIX__LOG_SUM_EXP_HPP__
+
3 
+
4 #include <stan/agrad/rev/var.hpp>
+ + + + + + + + + +
14 
+
15 namespace stan {
+
16  namespace agrad {
+
17 
+
18  namespace {
+
19 
+
20  // these function and the following class just translate
+
21  // log_sum_exp for std::vector for Eigen::Matrix
+
22 
+
23  template <int R, int C>
+
24  double log_sum_exp_as_double(const Eigen::Matrix<var,R,C>& x) {
+
25  using std::numeric_limits;
+
26  using std::exp;
+
27  using std::log;
+
28  double max = -numeric_limits<double>::infinity();
+
29  for (int i = 0; i < x.size(); ++i)
+
30  if (x(i) > max)
+
31  max = x(i).val();
+
32  double sum = 0.0;
+
33  for (int i = 0; i < x.size(); ++i)
+
34  if (x(i) != -numeric_limits<double>::infinity())
+
35  sum += exp(x(i).val() - max);
+
36  return max + log(sum);
+
37  }
+
38 
+
39  class log_sum_exp_matrix_vari : public op_matrix_vari {
+
40  public:
+
41  template <int R, int C>
+
42  log_sum_exp_matrix_vari(const Eigen::Matrix<var,R,C>& x) :
+
43  op_matrix_vari(log_sum_exp_as_double(x), x) {
+
44  }
+
45  void chain() {
+
46  for (size_t i = 0; i < size_; ++i) {
+
47  vis_[i]->adj_ += adj_ * calculate_chain(vis_[i]->val_, val_);
+
48  }
+
49  }
+
50  };
+
51  }
+
52 
+
58  template <int R, int C>
+
59  inline var log_sum_exp(const Eigen::Matrix<var,R,C>& x) {
+
60  return var(new log_sum_exp_matrix_vari(x));
+
61  }
+
62 
+
63  }
+
64 }
+
65 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2rev_2matrix_2mdivide__left_8hpp.html b/doc/api/html/agrad_2rev_2matrix_2mdivide__left_8hpp.html new file mode 100644 index 00000000000..8478e186a88 --- /dev/null +++ b/doc/api/html/agrad_2rev_2matrix_2mdivide__left_8hpp.html @@ -0,0 +1,248 @@ + + + + + +Stan: src/stan/agrad/rev/matrix/mdivide_left.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
mdivide_left.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+ + + + + + + + + + +

+Functions

template<int R1, int C1, int R2, int C2>
Eigen::Matrix< var, R1, C2 > stan::agrad::mdivide_left (const Eigen::Matrix< var, R1, C1 > &A, const Eigen::Matrix< var, R2, C2 > &b)
 
template<int R1, int C1, int R2, int C2>
Eigen::Matrix< var, R1, C2 > stan::agrad::mdivide_left (const Eigen::Matrix< var, R1, C1 > &A, const Eigen::Matrix< double, R2, C2 > &b)
 
template<int R1, int C1, int R2, int C2>
Eigen::Matrix< var, R1, C2 > stan::agrad::mdivide_left (const Eigen::Matrix< double, R1, C1 > &A, const Eigen::Matrix< var, R2, C2 > &b)
 
+

Variable Documentation

+ +
+
+ + + + +
vari** _variRefA
+
+ +

Definition at line 23 of file mdivide_left.hpp.

+ +
+
+ +
+
+ + + + +
vari** _variRefB
+
+ +

Definition at line 24 of file mdivide_left.hpp.

+ +
+
+ +
+
+ + + + +
vari** _variRefC
+
+ +

Definition at line 25 of file mdivide_left.hpp.

+ +
+
+ +
+
+ + + + +
double* A_
+
+ +

Definition at line 21 of file mdivide_left.hpp.

+ +
+
+ +
+
+ + + + +
double* C_
+
+ +

Definition at line 22 of file mdivide_left.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + +
int M_
+
+static
+
+ +

Definition at line 19 of file mdivide_left.hpp.

+ +
+
+ +
+
+ + + + +
int N_
+
+ +

Definition at line 20 of file mdivide_left.hpp.

+ +
+
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2rev_2matrix_2mdivide__left_8hpp_source.html b/doc/api/html/agrad_2rev_2matrix_2mdivide__left_8hpp_source.html new file mode 100644 index 00000000000..7f488e47393 --- /dev/null +++ b/doc/api/html/agrad_2rev_2matrix_2mdivide__left_8hpp_source.html @@ -0,0 +1,439 @@ + + + + + +Stan: src/stan/agrad/rev/matrix/mdivide_left.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
mdivide_left.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__REV__MATRIX__COLUMNS_MDIVIDE_LEFT_HPP__
+
2 #define __STAN__AGRAD__REV__MATRIX__COLUMNS_MDIVIDE_LEFT_HPP__
+
3 
+
4 #include <vector>
+ + + + +
9 #include <stan/agrad/rev/var.hpp>
+ +
11 
+
12 namespace stan {
+
13  namespace agrad {
+
14 
+
15  namespace {
+
16  template <int R1,int C1,int R2,int C2>
+
17  class mdivide_left_vv_vari : public vari {
+
18  public:
+
19  int M_; // A.rows() = A.cols() = B.rows()
+
20  int N_; // B.cols()
+
21  double* A_;
+
22  double* C_;
+
23  vari** _variRefA;
+
24  vari** _variRefB;
+
25  vari** _variRefC;
+
26 
+
27  mdivide_left_vv_vari(const Eigen::Matrix<var,R1,C1> &A,
+
28  const Eigen::Matrix<var,R2,C2> &B)
+
29  : vari(0.0),
+
30  M_(A.rows()),
+
31  N_(B.cols()),
+
32  A_((double*)stan::agrad::memalloc_.alloc(sizeof(double)
+
33  * A.rows() * A.cols())),
+
34  C_((double*)stan::agrad::memalloc_.alloc(sizeof(double)
+
35  * B.rows() * B.cols())),
+
36  _variRefA((vari**)stan::agrad::memalloc_.alloc(sizeof(vari*)
+
37  * A.rows() * A.cols())),
+
38  _variRefB((vari**)stan::agrad::memalloc_.alloc(sizeof(vari*)
+
39  * B.rows() * B.cols())),
+
40  _variRefC((vari**)stan::agrad::memalloc_.alloc(sizeof(vari*)
+
41  * B.rows() * B.cols()))
+
42  {
+
43  using Eigen::Matrix;
+
44  using Eigen::Map;
+
45 
+
46  size_t pos = 0;
+
47  for (size_type j = 0; j < M_; j++) {
+
48  for (size_type i = 0; i < M_; i++) {
+
49  _variRefA[pos] = A(i,j).vi_;
+
50  A_[pos++] = A(i,j).val();
+
51  }
+
52  }
+
53 
+
54  pos = 0;
+
55  for (size_type j = 0; j < N_; j++) {
+
56  for (size_type i = 0; i < M_; i++) {
+
57  _variRefB[pos] = B(i,j).vi_;
+
58  C_[pos++] = B(i,j).val();
+
59  }
+
60  }
+
61 
+
62  Matrix<double,R1,C2> C(M_,N_);
+
63  C = Map<Matrix<double,R1,C2> >(C_,M_,N_);
+
64 
+
65  C = Map<Matrix<double,R1,C1> >(A_,M_,M_)
+
66  .colPivHouseholderQr().solve(C);
+
67 
+
68  pos = 0;
+
69  for (size_type j = 0; j < N_; j++) {
+
70  for (size_type i = 0; i < M_; i++) {
+
71  C_[pos] = C(i,j);
+
72  _variRefC[pos] = new vari(C_[pos],false);
+
73  pos++;
+
74  }
+
75  }
+
76  }
+
77 
+
78  virtual void chain() {
+
79  using Eigen::Matrix;
+
80  using Eigen::Map;
+
81  Eigen::Matrix<double,R1,C1> adjA(M_,M_);
+
82  Eigen::Matrix<double,R2,C2> adjB(M_,N_);
+
83  Eigen::Matrix<double,R1,C2> adjC(M_,N_);
+
84 
+
85  size_t pos = 0;
+
86  for (size_type j = 0; j < adjC.cols(); j++)
+
87  for (size_type i = 0; i < adjC.rows(); i++)
+
88  adjC(i,j) = _variRefC[pos++]->adj_;
+
89 
+
90 
+
91  adjB = Map<Matrix<double,R1,C1> >(A_,M_,M_)
+
92  .transpose().colPivHouseholderQr().solve(adjC);
+
93  adjA.noalias() = -adjB
+
94  * Map<Matrix<double,R1,C2> >(C_,M_,N_).transpose();
+
95 
+
96  pos = 0;
+
97  for (size_type j = 0; j < adjA.cols(); j++)
+
98  for (size_type i = 0; i < adjA.rows(); i++)
+
99  _variRefA[pos++]->adj_ += adjA(i,j);
+
100 
+
101  pos = 0;
+
102  for (size_type j = 0; j < adjB.cols(); j++)
+
103  for (size_type i = 0; i < adjB.rows(); i++)
+
104  _variRefB[pos++]->adj_ += adjB(i,j);
+
105  }
+
106  };
+
107 
+
108  template <int R1,int C1,int R2,int C2>
+
109  class mdivide_left_dv_vari : public vari {
+
110  public:
+
111  int M_; // A.rows() = A.cols() = B.rows()
+
112  int N_; // B.cols()
+
113  double* A_;
+
114  double* C_;
+
115  vari** _variRefB;
+
116  vari** _variRefC;
+
117 
+
118  mdivide_left_dv_vari(const Eigen::Matrix<double,R1,C1> &A,
+
119  const Eigen::Matrix<var,R2,C2> &B)
+
120  : vari(0.0),
+
121  M_(A.rows()),
+
122  N_(B.cols()),
+
123  A_((double*)stan::agrad::memalloc_.alloc(sizeof(double)
+
124  * A.rows() * A.cols())),
+
125  C_((double*)stan::agrad::memalloc_.alloc(sizeof(double)
+
126  * B.rows() * B.cols())),
+
127  _variRefB((vari**)stan::agrad::memalloc_.alloc(sizeof(vari*)
+
128  * B.rows() * B.cols())),
+
129  _variRefC((vari**)stan::agrad::memalloc_.alloc(sizeof(vari*)
+
130  * B.rows() * B.cols()))
+
131  {
+
132  using Eigen::Matrix;
+
133  using Eigen::Map;
+
134 
+
135  size_t pos = 0;
+
136  for (size_type j = 0; j < M_; j++) {
+
137  for (size_type i = 0; i < M_; i++) {
+
138  A_[pos++] = A(i,j);
+
139  }
+
140  }
+
141 
+
142  pos = 0;
+
143  for (size_type j = 0; j < N_; j++) {
+
144  for (size_type i = 0; i < M_; i++) {
+
145  _variRefB[pos] = B(i,j).vi_;
+
146  C_[pos++] = B(i,j).val();
+
147  }
+
148  }
+
149 
+
150  Matrix<double,R1,C2> C(M_,N_);
+
151  C = Map<Matrix<double,R1,C2> >(C_,M_,N_);
+
152 
+
153  C = Map<Matrix<double,R1,C1> >(A_,M_,M_)
+
154  .colPivHouseholderQr().solve(C);
+
155 
+
156  pos = 0;
+
157  for (size_type j = 0; j < N_; j++) {
+
158  for (size_type i = 0; i < M_; i++) {
+
159  C_[pos] = C(i,j);
+
160  _variRefC[pos] = new vari(C_[pos],false);
+
161  pos++;
+
162  }
+
163  }
+
164  }
+
165 
+
166  virtual void chain() {
+
167  using Eigen::Matrix;
+
168  using Eigen::Map;
+
169  Eigen::Matrix<double,R2,C2> adjB(M_,N_);
+
170  Eigen::Matrix<double,R1,C2> adjC(M_,N_);
+
171 
+
172  size_t pos = 0;
+
173  for (size_type j = 0; j < adjC.cols(); j++)
+
174  for (size_type i = 0; i < adjC.rows(); i++)
+
175  adjC(i,j) = _variRefC[pos++]->adj_;
+
176 
+
177  adjB = Map<Matrix<double,R1,C1> >(A_,M_,M_)
+
178  .transpose().colPivHouseholderQr().solve(adjC);
+
179 
+
180  pos = 0;
+
181  for (size_type j = 0; j < adjB.cols(); j++)
+
182  for (size_type i = 0; i < adjB.rows(); i++)
+
183  _variRefB[pos++]->adj_ += adjB(i,j);
+
184  }
+
185  };
+
186 
+
187  template <int R1,int C1,int R2,int C2>
+
188  class mdivide_left_vd_vari : public vari {
+
189  public:
+
190  int M_; // A.rows() = A.cols() = B.rows()
+
191  int N_; // B.cols()
+
192  double* A_;
+
193  double* C_;
+
194  vari** _variRefA;
+
195  vari** _variRefC;
+
196 
+
197  mdivide_left_vd_vari(const Eigen::Matrix<var,R1,C1> &A,
+
198  const Eigen::Matrix<double,R2,C2> &B)
+
199  : vari(0.0),
+
200  M_(A.rows()),
+
201  N_(B.cols()),
+
202  A_((double*)stan::agrad::memalloc_.alloc(sizeof(double)
+
203  * A.rows() * A.cols())),
+
204  C_((double*)stan::agrad::memalloc_.alloc(sizeof(double)
+
205  * B.rows() * B.cols())),
+
206  _variRefA((vari**)stan::agrad::memalloc_.alloc(sizeof(vari*)
+
207  * A.rows() * A.cols())),
+
208  _variRefC((vari**)stan::agrad::memalloc_.alloc(sizeof(vari*)
+
209  * B.rows() * B.cols()))
+
210  {
+
211  using Eigen::Matrix;
+
212  using Eigen::Map;
+
213 
+
214  size_t pos = 0;
+
215  for (size_type j = 0; j < M_; j++) {
+
216  for (size_type i = 0; i < M_; i++) {
+
217  _variRefA[pos] = A(i,j).vi_;
+
218  A_[pos++] = A(i,j).val();
+
219  }
+
220  }
+
221 
+
222  Matrix<double,R1,C2> C(M_,N_);
+
223  C = Map<Matrix<double,R1,C1> >(A_,M_,M_)
+
224  .colPivHouseholderQr().solve(B);
+
225 
+
226  pos = 0;
+
227  for (size_type j = 0; j < N_; j++) {
+
228  for (size_type i = 0; i < M_; i++) {
+
229  C_[pos] = C(i,j);
+
230  _variRefC[pos] = new vari(C_[pos],false);
+
231  pos++;
+
232  }
+
233  }
+
234  }
+
235 
+
236  virtual void chain() {
+
237  using Eigen::Matrix;
+
238  using Eigen::Map;
+
239  Eigen::Matrix<double,R1,C1> adjA(M_,M_);
+
240  Eigen::Matrix<double,R1,C2> adjC(M_,N_);
+
241 
+
242  size_t pos = 0;
+
243  for (size_type j = 0; j < adjC.cols(); j++)
+
244  for (size_type i = 0; i < adjC.rows(); i++)
+
245  adjC(i,j) = _variRefC[pos++]->adj_;
+
246 
+
247  // FIXME: add .noalias() to LHS
+
248  adjA = -Map<Matrix<double,R1,C1> >(A_,M_,M_)
+
249  .transpose()
+
250  .colPivHouseholderQr()
+
251  .solve(adjC*Map<Matrix<double,R1,C2> >(C_,M_,N_).transpose());
+
252 
+
253  pos = 0;
+
254  for (size_type j = 0; j < adjA.cols(); j++)
+
255  for (size_type i = 0; i < adjA.rows(); i++)
+
256  _variRefA[pos++]->adj_ += adjA(i,j);
+
257  }
+
258  };
+
259  }
+
260 
+
261  template <int R1,int C1,int R2,int C2>
+
262  inline
+
263  Eigen::Matrix<var,R1,C2>
+
264  mdivide_left(const Eigen::Matrix<var,R1,C1> &A,
+
265  const Eigen::Matrix<var,R2,C2> &b) {
+
266  Eigen::Matrix<var,R1,C2> res(b.rows(),b.cols());
+
267 
+
268  stan::math::validate_square(A,"mdivide_left");
+
269  stan::math::validate_multiplicable(A,b,"mdivide_left");
+
270 
+
271  // NOTE: this is not a memory leak, this vari is used in the
+
272  // expression graph to evaluate the adjoint, but is not needed
+
273  // for the returned matrix. Memory will be cleaned up with the arena allocator.
+
274  mdivide_left_vv_vari<R1,C1,R2,C2> *baseVari = new mdivide_left_vv_vari<R1,C1,R2,C2>(A,b);
+
275 
+
276  size_t pos = 0;
+
277  for (size_type j = 0; j < res.cols(); j++)
+
278  for (size_type i = 0; i < res.rows(); i++)
+
279  res(i,j).vi_ = baseVari->_variRefC[pos++];
+
280 
+
281  return res;
+
282  }
+
283 
+
284  template <int R1,int C1,int R2,int C2>
+
285  inline
+
286  Eigen::Matrix<var,R1,C2>
+
287  mdivide_left(const Eigen::Matrix<var,R1,C1> &A,
+
288  const Eigen::Matrix<double,R2,C2> &b) {
+
289  Eigen::Matrix<var,R1,C2> res(b.rows(),b.cols());
+
290 
+
291  stan::math::validate_square(A,"mdivide_left");
+
292  stan::math::validate_multiplicable(A,b,"mdivide_left");
+
293 
+
294  // NOTE: this is not a memory leak, this vari is used in the
+
295  // expression graph to evaluate the adjoint, but is not needed
+
296  // for the returned matrix. Memory will be cleaned up with the arena allocator.
+
297  mdivide_left_vd_vari<R1,C1,R2,C2> *baseVari = new mdivide_left_vd_vari<R1,C1,R2,C2>(A,b);
+
298 
+
299  size_t pos = 0;
+
300  for (size_type j = 0; j < res.cols(); j++)
+
301  for (size_type i = 0; i < res.rows(); i++)
+
302  res(i,j).vi_ = baseVari->_variRefC[pos++];
+
303 
+
304  return res;
+
305  }
+
306 
+
307  template <int R1,int C1,int R2,int C2>
+
308  inline
+
309  Eigen::Matrix<var,R1,C2>
+
310  mdivide_left(const Eigen::Matrix<double,R1,C1> &A,
+
311  const Eigen::Matrix<var,R2,C2> &b) {
+
312  Eigen::Matrix<var,R1,C2> res(b.rows(),b.cols());
+
313 
+
314  stan::math::validate_square(A,"mdivide_left");
+
315  stan::math::validate_multiplicable(A,b,"mdivide_left");
+
316 
+
317  // NOTE: this is not a memory leak, this vari is used in the
+
318  // expression graph to evaluate the adjoint, but is not needed
+
319  // for the returned matrix. Memory will be cleaned up with the arena allocator.
+
320  mdivide_left_dv_vari<R1,C1,R2,C2> *baseVari = new mdivide_left_dv_vari<R1,C1,R2,C2>(A,b);
+
321 
+
322  size_t pos = 0;
+
323  for (size_type j = 0; j < res.cols(); j++)
+
324  for (size_type i = 0; i < res.rows(); i++)
+
325  res(i,j).vi_ = baseVari->_variRefC[pos++];
+
326 
+
327  return res;
+
328  }
+
329 
+
330  }
+
331 }
+
332 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2rev_2matrix_2mdivide__left__ldlt_8hpp.html b/doc/api/html/agrad_2rev_2matrix_2mdivide__left__ldlt_8hpp.html new file mode 100644 index 00000000000..80eaf56f15a --- /dev/null +++ b/doc/api/html/agrad_2rev_2matrix_2mdivide__left__ldlt_8hpp.html @@ -0,0 +1,258 @@ + + + + + +Stan: src/stan/agrad/rev/matrix/mdivide_left_ldlt.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
mdivide_left_ldlt.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+ + + + + + + + + + + + + +

+Functions

template<int R1, int C1, int R2, int C2>
Eigen::Matrix< var, R1, C2 > stan::agrad::mdivide_left_ldlt (const stan::math::LDLT_factor< var, R1, C1 > &A, const Eigen::Matrix< var, R2, C2 > &b)
 Returns the solution of the system Ax=b given an LDLT_factor of A.
 
template<int R1, int C1, int R2, int C2>
Eigen::Matrix< var, R1, C2 > stan::agrad::mdivide_left_ldlt (const stan::math::LDLT_factor< var, R1, C1 > &A, const Eigen::Matrix< double, R2, C2 > &b)
 Returns the solution of the system Ax=b given an LDLT_factor of A.
 
template<int R1, int C1, int R2, int C2>
Eigen::Matrix< var, R1, C2 > stan::agrad::mdivide_left_ldlt (const stan::math::LDLT_factor< double, R1, C1 > &A, const Eigen::Matrix< var, R2, C2 > &b)
 Returns the solution of the system Ax=b given an LDLT_factor of A.
 
+

Variable Documentation

+ +
+
+ + + + +
mdivide_left_ldlt_alloc<R1,C1,R2,C2>* _alloc
+
+ +

Definition at line 44 of file mdivide_left_ldlt.hpp.

+ +
+
+ +
+
+ + + + +
const LDLT_alloc<R1,C1>* _alloc_ldlt
+
+ +

Definition at line 45 of file mdivide_left_ldlt.hpp.

+ +
+
+ +
+
+ + + + +
boost::shared_ptr< Eigen::LDLT< Eigen::Matrix<double,R1,C1> > > _ldltP
+
+ +

This share_ptr is used to prevent copying the LDLT factorizations for mdivide_left_ldlt(ldltA,b) when ldltA is a LDLT_factor<double>.

+

The pointer is shared with the LDLT_factor<double> class.

+ +

Definition at line 23 of file mdivide_left_ldlt.hpp.

+ +
+
+ +
+
+ + + + +
vari** _variRefB
+
+ +

Definition at line 42 of file mdivide_left_ldlt.hpp.

+ +
+
+ +
+
+ + + + +
vari** _variRefC
+
+ +

Definition at line 43 of file mdivide_left_ldlt.hpp.

+ +
+
+ +
+
+ + + + +
Eigen::Matrix<double,R2,C2> C_
+
+ +

Definition at line 24 of file mdivide_left_ldlt.hpp.

+ +
+
+ +
+
+ + + + +
int M_
+
+ +

Definition at line 40 of file mdivide_left_ldlt.hpp.

+ +
+
+ +
+
+ + + + +
int N_
+
+ +

Definition at line 41 of file mdivide_left_ldlt.hpp.

+ +
+
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2rev_2matrix_2mdivide__left__ldlt_8hpp_source.html b/doc/api/html/agrad_2rev_2matrix_2mdivide__left__ldlt_8hpp_source.html new file mode 100644 index 00000000000..f08dd8aa89b --- /dev/null +++ b/doc/api/html/agrad_2rev_2matrix_2mdivide__left__ldlt_8hpp_source.html @@ -0,0 +1,362 @@ + + + + + +Stan: src/stan/agrad/rev/matrix/mdivide_left_ldlt.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
mdivide_left_ldlt.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__REV__MATRIX__MDIVIDE_LEFT_LDLT_HPP__
+
2 #define __STAN__AGRAD__REV__MATRIX__MDIVIDE_LEFT_LDLT_HPP__
+
3 
+ +
5 #include <stan/agrad/rev/var.hpp>
+ + + +
9 
+
10 namespace stan {
+
11  namespace agrad {
+
12  namespace {
+
13  template <int R1,int C1,int R2,int C2>
+
14  class mdivide_left_ldlt_alloc : public chainable_alloc {
+
15  public:
+
16  virtual ~mdivide_left_ldlt_alloc() {}
+
17 
+
23  boost::shared_ptr< Eigen::LDLT< Eigen::Matrix<double,R1,C1> > > _ldltP;
+
24  Eigen::Matrix<double,R2,C2> C_;
+
25  };
+
26 
+
37  template <int R1,int C1,int R2,int C2>
+
38  class mdivide_left_ldlt_vv_vari : public vari {
+
39  public:
+
40  int M_; // A.rows() = A.cols() = B.rows()
+
41  int N_; // B.cols()
+
42  vari** _variRefB;
+
43  vari** _variRefC;
+
44  mdivide_left_ldlt_alloc<R1,C1,R2,C2> *_alloc;
+
45  const LDLT_alloc<R1,C1> *_alloc_ldlt;
+
46 
+
47  mdivide_left_ldlt_vv_vari(const stan::math::LDLT_factor<var,R1,C1> &A,
+
48  const Eigen::Matrix<var,R2,C2> &B)
+
49  : vari(0.0),
+
50  M_(A.rows()),
+
51  N_(B.cols()),
+
52  _variRefB((vari**)stan::agrad::memalloc_.alloc(sizeof(vari*)
+
53  * B.rows() * B.cols())),
+
54  _variRefC((vari**)stan::agrad::memalloc_.alloc(sizeof(vari*)
+
55  * B.rows() * B.cols())),
+
56  _alloc(new mdivide_left_ldlt_alloc<R1,C1,R2,C2>()),
+ +
58  {
+
59  int pos = 0;
+
60  _alloc->C_.resize(M_,N_);
+
61  for (int j = 0; j < N_; j++) {
+
62  for (int i = 0; i < M_; i++) {
+
63  _variRefB[pos] = B(i,j).vi_;
+
64  _alloc->C_(i,j) = B(i,j).val();
+
65  pos++;
+
66  }
+
67  }
+
68 
+
69  _alloc_ldlt->_ldlt.solveInPlace(_alloc->C_);
+
70 
+
71  pos = 0;
+
72  for (int j = 0; j < N_; j++) {
+
73  for (int i = 0; i < M_; i++) {
+
74  _variRefC[pos] = new vari(_alloc->C_(i,j),false);
+
75  pos++;
+
76  }
+
77  }
+
78  }
+
79 
+
80  virtual void chain() {
+
81  Eigen::Matrix<double,R1,C1> adjA(M_,M_);
+
82  Eigen::Matrix<double,R2,C2> adjB(M_,N_);
+
83 
+
84  int pos = 0;
+
85  for (int j = 0; j < N_; j++)
+
86  for (int i = 0; i < M_; i++)
+
87  adjB(i,j) = _variRefC[pos++]->adj_;
+
88 
+
89  _alloc_ldlt->_ldlt.solveInPlace(adjB);
+
90  adjA.noalias() = -adjB * _alloc->C_.transpose();
+
91 
+
92  for (int j = 0; j < M_; j++)
+
93  for (int i = 0; i < M_; i++)
+
94  _alloc_ldlt->_variA(i,j)->adj_ += adjA(i,j);
+
95 
+
96  pos = 0;
+
97  for (int j = 0; j < N_; j++)
+
98  for (int i = 0; i < M_; i++)
+
99  _variRefB[pos++]->adj_ += adjB(i,j);
+
100  }
+
101  };
+
102 
+
113  template <int R1,int C1,int R2,int C2>
+
114  class mdivide_left_ldlt_dv_vari : public vari {
+
115  public:
+
116  int M_; // A.rows() = A.cols() = B.rows()
+
117  int N_; // B.cols()
+
118  vari** _variRefB;
+
119  vari** _variRefC;
+
120  mdivide_left_ldlt_alloc<R1,C1,R2,C2> *_alloc;
+
121 
+
122  mdivide_left_ldlt_dv_vari(const stan::math::LDLT_factor<double,R1,C1> &A,
+
123  const Eigen::Matrix<var,R2,C2> &B)
+
124  : vari(0.0),
+
125  M_(A.rows()),
+
126  N_(B.cols()),
+
127  _variRefB((vari**)stan::agrad::memalloc_.alloc(sizeof(vari*)
+
128  * B.rows() * B.cols())),
+
129  _variRefC((vari**)stan::agrad::memalloc_.alloc(sizeof(vari*)
+
130  * B.rows() * B.cols())),
+
131  _alloc(new mdivide_left_ldlt_alloc<R1,C1,R2,C2>())
+
132  {
+
133  using Eigen::Matrix;
+
134  using Eigen::Map;
+
135 
+
136  int pos = 0;
+
137  _alloc->C_.resize(M_,N_);
+
138  for (int j = 0; j < N_; j++) {
+
139  for (int i = 0; i < M_; i++) {
+
140  _variRefB[pos] = B(i,j).vi_;
+
141  _alloc->C_(i,j) = B(i,j).val();
+
142  pos++;
+
143  }
+
144  }
+
145 
+
146  _alloc->_ldltP = A._ldltP;
+
147  _alloc->_ldltP->solveInPlace(_alloc->C_);
+
148 
+
149  pos = 0;
+
150  for (int j = 0; j < N_; j++) {
+
151  for (int i = 0; i < M_; i++) {
+
152  _variRefC[pos] = new vari(_alloc->C_(i,j),false);
+
153  pos++;
+
154  }
+
155  }
+
156  }
+
157 
+
158  virtual void chain() {
+
159  Eigen::Matrix<double,R2,C2> adjB(M_,N_);
+
160 
+
161  int pos = 0;
+
162  for (int j = 0; j < adjB.cols(); j++)
+
163  for (int i = 0; i < adjB.rows(); i++)
+
164  adjB(i,j) = _variRefC[pos++]->adj_;
+
165 
+
166  _alloc->_ldltP->solveInPlace(adjB);
+
167 
+
168  pos = 0;
+
169  for (int j = 0; j < adjB.cols(); j++)
+
170  for (int i = 0; i < adjB.rows(); i++)
+
171  _variRefB[pos++]->adj_ += adjB(i,j);
+
172  }
+
173  };
+
174 
+
185  template <int R1,int C1,int R2,int C2>
+
186  class mdivide_left_ldlt_vd_vari : public vari {
+
187  public:
+
188  int M_; // A.rows() = A.cols() = B.rows()
+
189  int N_; // B.cols()
+
190  vari** _variRefC;
+
191  mdivide_left_ldlt_alloc<R1,C1,R2,C2> *_alloc;
+
192  const LDLT_alloc<R1,C1> *_alloc_ldlt;
+
193 
+
194  mdivide_left_ldlt_vd_vari(const stan::math::LDLT_factor<var,R1,C1> &A,
+
195  const Eigen::Matrix<double,R2,C2> &B)
+
196  : vari(0.0),
+
197  M_(A.rows()),
+
198  N_(B.cols()),
+
199  _variRefC((vari**)stan::agrad::memalloc_.alloc(sizeof(vari*)
+
200  * B.rows() * B.cols())),
+
201  _alloc(new mdivide_left_ldlt_alloc<R1,C1,R2,C2>()),
+ +
203  {
+
204  _alloc->C_ = B;
+
205  _alloc_ldlt->_ldlt.solveInPlace(_alloc->C_);
+
206 
+
207  int pos = 0;
+
208  for (int j = 0; j < N_; j++) {
+
209  for (int i = 0; i < M_; i++) {
+
210  _variRefC[pos] = new vari(_alloc->C_(i,j),false);
+
211  pos++;
+
212  }
+
213  }
+
214  }
+
215 
+
216  virtual void chain() {
+
217  Eigen::Matrix<double,R1,C1> adjA(M_,M_);
+
218  Eigen::Matrix<double,R1,C2> adjC(M_,N_);
+
219 
+
220  int pos = 0;
+
221  for (int j = 0; j < adjC.cols(); j++)
+
222  for (int i = 0; i < adjC.rows(); i++)
+
223  adjC(i,j) = _variRefC[pos++]->adj_;
+
224 
+
225  adjA = -_alloc_ldlt->_ldlt.solve(adjC*_alloc->C_.transpose());
+
226 
+
227  for (int j = 0; j < adjA.cols(); j++)
+
228  for (int i = 0; i < adjA.rows(); i++)
+
229  _alloc_ldlt->_variA(i,j)->adj_ += adjA(i,j);
+
230  }
+
231  };
+
232  }
+
233 
+
241  template <int R1,int C1,int R2,int C2>
+
242  inline Eigen::Matrix<var,R1,C2>
+
243  mdivide_left_ldlt(const stan::math::LDLT_factor<var,R1,C1> &A,
+
244  const Eigen::Matrix<var,R2,C2> &b) {
+
245  Eigen::Matrix<var,R1,C2> res(b.rows(),b.cols());
+
246 
+
247  stan::math::validate_multiplicable(A,b,"mdivide_left_ldlt");
+
248 
+
249  mdivide_left_ldlt_vv_vari<R1,C1,R2,C2> *baseVari = new mdivide_left_ldlt_vv_vari<R1,C1,R2,C2>(A,b);
+
250 
+
251  int pos = 0;
+
252  for (int j = 0; j < res.cols(); j++)
+
253  for (int i = 0; i < res.rows(); i++)
+
254  res(i,j).vi_ = baseVari->_variRefC[pos++];
+
255 
+
256  return res;
+
257  }
+
258 
+
266  template <int R1,int C1,int R2,int C2>
+
267  inline Eigen::Matrix<var,R1,C2>
+
268  mdivide_left_ldlt(const stan::math::LDLT_factor<var,R1,C1> &A,
+
269  const Eigen::Matrix<double,R2,C2> &b) {
+
270  Eigen::Matrix<var,R1,C2> res(b.rows(),b.cols());
+
271 
+
272  stan::math::validate_multiplicable(A,b,"mdivide_left_ldlt");
+
273 
+
274  mdivide_left_ldlt_vd_vari<R1,C1,R2,C2> *baseVari = new mdivide_left_ldlt_vd_vari<R1,C1,R2,C2>(A,b);
+
275 
+
276  int pos = 0;
+
277  for (int j = 0; j < res.cols(); j++)
+
278  for (int i = 0; i < res.rows(); i++)
+
279  res(i,j).vi_ = baseVari->_variRefC[pos++];
+
280 
+
281  return res;
+
282  }
+
283 
+
291  template <int R1,int C1,int R2,int C2>
+
292  inline Eigen::Matrix<var,R1,C2>
+
293  mdivide_left_ldlt(const stan::math::LDLT_factor<double,R1,C1> &A,
+
294  const Eigen::Matrix<var,R2,C2> &b) {
+
295  Eigen::Matrix<var,R1,C2> res(b.rows(),b.cols());
+
296 
+
297  stan::math::validate_multiplicable(A,b,"mdivide_left_ldlt");
+
298 
+
299  mdivide_left_ldlt_dv_vari<R1,C1,R2,C2> *baseVari = new mdivide_left_ldlt_dv_vari<R1,C1,R2,C2>(A,b);
+
300 
+
301  int pos = 0;
+
302  for (int j = 0; j < res.cols(); j++)
+
303  for (int i = 0; i < res.rows(); i++)
+
304  res(i,j).vi_ = baseVari->_variRefC[pos++];
+
305 
+
306  return res;
+
307  }
+
308 
+
309  }
+
310 }
+
311 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2rev_2matrix_2mdivide__left__spd_8hpp.html b/doc/api/html/agrad_2rev_2matrix_2mdivide__left__spd_8hpp.html new file mode 100644 index 00000000000..9cf1abf47cb --- /dev/null +++ b/doc/api/html/agrad_2rev_2matrix_2mdivide__left__spd_8hpp.html @@ -0,0 +1,254 @@ + + + + + +Stan: src/stan/agrad/rev/matrix/mdivide_left_spd.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
mdivide_left_spd.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+ + + + + + + + + + +

+Functions

template<int R1, int C1, int R2, int C2>
Eigen::Matrix< var, R1, C2 > stan::agrad::mdivide_left_spd (const Eigen::Matrix< var, R1, C1 > &A, const Eigen::Matrix< var, R2, C2 > &b)
 
template<int R1, int C1, int R2, int C2>
Eigen::Matrix< var, R1, C2 > stan::agrad::mdivide_left_spd (const Eigen::Matrix< var, R1, C1 > &A, const Eigen::Matrix< double, R2, C2 > &b)
 
template<int R1, int C1, int R2, int C2>
Eigen::Matrix< var, R1, C2 > stan::agrad::mdivide_left_spd (const Eigen::Matrix< double, R1, C1 > &A, const Eigen::Matrix< var, R2, C2 > &b)
 
+

Variable Documentation

+ +
+
+ + + + +
mdivide_left_spd_alloc<R1,C1,R2,C2>* _alloc
+
+ +

Definition at line 33 of file mdivide_left_spd.hpp.

+ +
+
+ +
+
+ + + + +
Eigen::LLT< Eigen::Matrix<double,R1,C1> > _llt
+
+ +

Definition at line 21 of file mdivide_left_spd.hpp.

+ +
+
+ +
+
+ + + + +
vari** _variRefA
+
+ +

Definition at line 30 of file mdivide_left_spd.hpp.

+ +
+
+ +
+
+ + + + +
vari** _variRefB
+
+ +

Definition at line 31 of file mdivide_left_spd.hpp.

+ +
+
+ +
+
+ + + + +
vari** _variRefC
+
+ +

Definition at line 32 of file mdivide_left_spd.hpp.

+ +
+
+ +
+
+ + + + +
Eigen::Matrix<double,R2,C2> C_
+
+ +

Definition at line 22 of file mdivide_left_spd.hpp.

+ +
+
+ +
+
+ + + + +
int M_
+
+ +

Definition at line 28 of file mdivide_left_spd.hpp.

+ +
+
+ +
+
+ + + + +
int N_
+
+ +

Definition at line 29 of file mdivide_left_spd.hpp.

+ +
+
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2rev_2matrix_2mdivide__left__spd_8hpp_source.html b/doc/api/html/agrad_2rev_2matrix_2mdivide__left__spd_8hpp_source.html new file mode 100644 index 00000000000..3517f79761e --- /dev/null +++ b/doc/api/html/agrad_2rev_2matrix_2mdivide__left__spd_8hpp_source.html @@ -0,0 +1,419 @@ + + + + + +Stan: src/stan/agrad/rev/matrix/mdivide_left_spd.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
mdivide_left_spd.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__REV__MATRIX__MDIVIDE_LEFT_SPD_HPP__
+
2 #define __STAN__AGRAD__REV__MATRIX__MDIVIDE_LEFT_SPD_HPP__
+
3 
+
4 #include <vector>
+ + + + +
9 #include <stan/agrad/rev/var.hpp>
+ +
11 
+
12 namespace stan {
+
13  namespace agrad {
+
14 
+
15  namespace {
+
16  template <int R1,int C1,int R2,int C2>
+
17  class mdivide_left_spd_alloc : public chainable_alloc {
+
18  public:
+
19  virtual ~mdivide_left_spd_alloc() {}
+
20 
+
21  Eigen::LLT< Eigen::Matrix<double,R1,C1> > _llt;
+
22  Eigen::Matrix<double,R2,C2> C_;
+
23  };
+
24 
+
25  template <int R1,int C1,int R2,int C2>
+
26  class mdivide_left_spd_vv_vari : public vari {
+
27  public:
+
28  int M_; // A.rows() = A.cols() = B.rows()
+
29  int N_; // B.cols()
+
30  vari** _variRefA;
+
31  vari** _variRefB;
+
32  vari** _variRefC;
+
33  mdivide_left_spd_alloc<R1,C1,R2,C2> *_alloc;
+
34 
+
35  mdivide_left_spd_vv_vari(const Eigen::Matrix<var,R1,C1> &A,
+
36  const Eigen::Matrix<var,R2,C2> &B)
+
37  : vari(0.0),
+
38  M_(A.rows()),
+
39  N_(B.cols()),
+
40  _variRefA((vari**)stan::agrad::memalloc_.alloc(sizeof(vari*)
+
41  * A.rows() * A.cols())),
+
42  _variRefB((vari**)stan::agrad::memalloc_.alloc(sizeof(vari*)
+
43  * B.rows() * B.cols())),
+
44  _variRefC((vari**)stan::agrad::memalloc_.alloc(sizeof(vari*)
+
45  * B.rows() * B.cols())),
+
46  _alloc(new mdivide_left_spd_alloc<R1,C1,R2,C2>())
+
47  {
+
48  using Eigen::Matrix;
+
49  using Eigen::Map;
+
50 
+
51  Matrix<double,R1,C1> Ad(A.rows(),A.cols());
+
52 
+
53  size_t pos = 0;
+
54  for (size_type j = 0; j < M_; j++) {
+
55  for (size_type i = 0; i < M_; i++) {
+
56  _variRefA[pos] = A(i,j).vi_;
+
57  Ad(i,j) = A(i,j).val();
+
58  pos++;
+
59  }
+
60  }
+
61 
+
62  pos = 0;
+
63  _alloc->C_.resize(M_,N_);
+
64  for (size_type j = 0; j < N_; j++) {
+
65  for (size_type i = 0; i < M_; i++) {
+
66  _variRefB[pos] = B(i,j).vi_;
+
67  _alloc->C_(i,j) = B(i,j).val();
+
68  pos++;
+
69  }
+
70  }
+
71 
+
72  _alloc->_llt = Ad.llt();
+
73  _alloc->_llt.solveInPlace(_alloc->C_);
+
74 
+
75  pos = 0;
+
76  for (size_type j = 0; j < N_; j++) {
+
77  for (size_type i = 0; i < M_; i++) {
+
78  _variRefC[pos] = new vari(_alloc->C_(i,j),false);
+
79  pos++;
+
80  }
+
81  }
+
82  }
+
83 
+
84  virtual void chain() {
+
85  using Eigen::Matrix;
+
86  using Eigen::Map;
+
87  Eigen::Matrix<double,R1,C1> adjA(M_,M_);
+
88  Eigen::Matrix<double,R2,C2> adjB(M_,N_);
+
89 
+
90  size_t pos = 0;
+
91  for (size_type j = 0; j < N_; j++)
+
92  for (size_type i = 0; i < M_; i++)
+
93  adjB(i,j) = _variRefC[pos++]->adj_;
+
94 
+
95  _alloc->_llt.solveInPlace(adjB);
+
96  adjA.noalias() = -adjB * _alloc->C_.transpose();
+
97 
+
98  pos = 0;
+
99  for (size_type j = 0; j < M_; j++)
+
100  for (size_type i = 0; i < M_; i++)
+
101  _variRefA[pos++]->adj_ += adjA(i,j);
+
102 
+
103  pos = 0;
+
104  for (size_type j = 0; j < N_; j++)
+
105  for (size_type i = 0; i < M_; i++)
+
106  _variRefB[pos++]->adj_ += adjB(i,j);
+
107  }
+
108  };
+
109 
+
110  template <int R1,int C1,int R2,int C2>
+
111  class mdivide_left_spd_dv_vari : public vari {
+
112  public:
+
113  int M_; // A.rows() = A.cols() = B.rows()
+
114  int N_; // B.cols()
+
115  vari** _variRefB;
+
116  vari** _variRefC;
+
117  mdivide_left_spd_alloc<R1,C1,R2,C2> *_alloc;
+
118 
+
119  mdivide_left_spd_dv_vari(const Eigen::Matrix<double,R1,C1> &A,
+
120  const Eigen::Matrix<var,R2,C2> &B)
+
121  : vari(0.0),
+
122  M_(A.rows()),
+
123  N_(B.cols()),
+
124  _variRefB((vari**)stan::agrad::memalloc_.alloc(sizeof(vari*)
+
125  * B.rows() * B.cols())),
+
126  _variRefC((vari**)stan::agrad::memalloc_.alloc(sizeof(vari*)
+
127  * B.rows() * B.cols())),
+
128  _alloc(new mdivide_left_spd_alloc<R1,C1,R2,C2>())
+
129  {
+
130  using Eigen::Matrix;
+
131  using Eigen::Map;
+
132 
+
133  size_t pos = 0;
+
134  _alloc->C_.resize(M_,N_);
+
135  for (size_type j = 0; j < N_; j++) {
+
136  for (size_type i = 0; i < M_; i++) {
+
137  _variRefB[pos] = B(i,j).vi_;
+
138  _alloc->C_(i,j) = B(i,j).val();
+
139  pos++;
+
140  }
+
141  }
+
142 
+
143  _alloc->_llt = A.llt();
+
144  _alloc->_llt.solveInPlace(_alloc->C_);
+
145 
+
146  pos = 0;
+
147  for (size_type j = 0; j < N_; j++) {
+
148  for (size_type i = 0; i < M_; i++) {
+
149  _variRefC[pos] = new vari(_alloc->C_(i,j),false);
+
150  pos++;
+
151  }
+
152  }
+
153  }
+
154 
+
155  virtual void chain() {
+
156  using Eigen::Matrix;
+
157  using Eigen::Map;
+
158  Eigen::Matrix<double,R2,C2> adjB(M_,N_);
+
159 
+
160  size_t pos = 0;
+
161  for (size_type j = 0; j < adjB.cols(); j++)
+
162  for (size_type i = 0; i < adjB.rows(); i++)
+
163  adjB(i,j) = _variRefC[pos++]->adj_;
+
164 
+
165  _alloc->_llt.solveInPlace(adjB);
+
166 
+
167  pos = 0;
+
168  for (size_type j = 0; j < adjB.cols(); j++)
+
169  for (size_type i = 0; i < adjB.rows(); i++)
+
170  _variRefB[pos++]->adj_ += adjB(i,j);
+
171  }
+
172  };
+
173 
+
174  template <int R1,int C1,int R2,int C2>
+
175  class mdivide_left_spd_vd_vari : public vari {
+
176  public:
+
177  int M_; // A.rows() = A.cols() = B.rows()
+
178  int N_; // B.cols()
+
179  vari** _variRefA;
+
180  vari** _variRefC;
+
181  mdivide_left_spd_alloc<R1,C1,R2,C2> *_alloc;
+
182 
+
183  mdivide_left_spd_vd_vari(const Eigen::Matrix<var,R1,C1> &A,
+
184  const Eigen::Matrix<double,R2,C2> &B)
+
185  : vari(0.0),
+
186  M_(A.rows()),
+
187  N_(B.cols()),
+
188  _variRefA((vari**)stan::agrad::memalloc_.alloc(sizeof(vari*)
+
189  * A.rows() * A.cols())),
+
190  _variRefC((vari**)stan::agrad::memalloc_.alloc(sizeof(vari*)
+
191  * B.rows() * B.cols())),
+
192  _alloc(new mdivide_left_spd_alloc<R1,C1,R2,C2>())
+
193  {
+
194  using Eigen::Matrix;
+
195  using Eigen::Map;
+
196 
+
197  Matrix<double,R1,C1> Ad(A.rows(),A.cols());
+
198 
+
199  size_t pos = 0;
+
200  for (size_type j = 0; j < M_; j++) {
+
201  for (size_type i = 0; i < M_; i++) {
+
202  _variRefA[pos] = A(i,j).vi_;
+
203  Ad(i,j) = A(i,j).val();
+
204  pos++;
+
205  }
+
206  }
+
207 
+
208  _alloc->_llt = Ad.llt();
+
209  _alloc->C_ = _alloc->_llt.solve(B);
+
210 
+
211  pos = 0;
+
212  for (size_type j = 0; j < N_; j++) {
+
213  for (size_type i = 0; i < M_; i++) {
+
214  _variRefC[pos] = new vari(_alloc->C_(i,j),false);
+
215  pos++;
+
216  }
+
217  }
+
218  }
+
219 
+
220  virtual void chain() {
+
221  using Eigen::Matrix;
+
222  using Eigen::Map;
+
223  Eigen::Matrix<double,R1,C1> adjA(M_,M_);
+
224  Eigen::Matrix<double,R1,C2> adjC(M_,N_);
+
225 
+
226  size_t pos = 0;
+
227  for (size_type j = 0; j < adjC.cols(); j++)
+
228  for (size_type i = 0; i < adjC.rows(); i++)
+
229  adjC(i,j) = _variRefC[pos++]->adj_;
+
230 
+
231  adjA = -_alloc->_llt.solve(adjC*_alloc->C_.transpose());
+
232 
+
233  pos = 0;
+
234  for (size_type j = 0; j < adjA.cols(); j++)
+
235  for (size_type i = 0; i < adjA.rows(); i++)
+
236  _variRefA[pos++]->adj_ += adjA(i,j);
+
237  }
+
238  };
+
239  }
+
240 
+
241  template <int R1,int C1,int R2,int C2>
+
242  inline
+
243  Eigen::Matrix<var,R1,C2>
+
244  mdivide_left_spd(const Eigen::Matrix<var,R1,C1> &A,
+
245  const Eigen::Matrix<var,R2,C2> &b) {
+
246  Eigen::Matrix<var,R1,C2> res(b.rows(),b.cols());
+
247 
+
248  stan::math::validate_square(A,"mdivide_left_spd");
+
249  stan::math::validate_multiplicable(A,b,"mdivide_left_spd");
+
250 
+
251  // NOTE: this is not a memory leak, this vari is used in the
+
252  // expression graph to evaluate the adjoint, but is not needed
+
253  // for the returned matrix. Memory will be cleaned up with the arena allocator.
+
254  mdivide_left_spd_vv_vari<R1,C1,R2,C2> *baseVari = new mdivide_left_spd_vv_vari<R1,C1,R2,C2>(A,b);
+
255 
+
256  size_t pos = 0;
+
257  for (size_type j = 0; j < res.cols(); j++)
+
258  for (size_type i = 0; i < res.rows(); i++)
+
259  res(i,j).vi_ = baseVari->_variRefC[pos++];
+
260 
+
261  return res;
+
262  }
+
263 
+
264  template <int R1,int C1,int R2,int C2>
+
265  inline
+
266  Eigen::Matrix<var,R1,C2>
+
267  mdivide_left_spd(const Eigen::Matrix<var,R1,C1> &A,
+
268  const Eigen::Matrix<double,R2,C2> &b) {
+
269  Eigen::Matrix<var,R1,C2> res(b.rows(),b.cols());
+
270 
+
271  stan::math::validate_square(A,"mdivide_left_spd");
+
272  stan::math::validate_multiplicable(A,b,"mdivide_left_spd");
+
273 
+
274  // NOTE: this is not a memory leak, this vari is used in the
+
275  // expression graph to evaluate the adjoint, but is not needed
+
276  // for the returned matrix. Memory will be cleaned up with the arena allocator.
+
277  mdivide_left_spd_vd_vari<R1,C1,R2,C2> *baseVari = new mdivide_left_spd_vd_vari<R1,C1,R2,C2>(A,b);
+
278 
+
279  size_t pos = 0;
+
280  for (size_type j = 0; j < res.cols(); j++)
+
281  for (size_type i = 0; i < res.rows(); i++)
+
282  res(i,j).vi_ = baseVari->_variRefC[pos++];
+
283 
+
284  return res;
+
285  }
+
286 
+
287  template <int R1,int C1,int R2,int C2>
+
288  inline
+
289  Eigen::Matrix<var,R1,C2>
+
290  mdivide_left_spd(const Eigen::Matrix<double,R1,C1> &A,
+
291  const Eigen::Matrix<var,R2,C2> &b) {
+
292  Eigen::Matrix<var,R1,C2> res(b.rows(),b.cols());
+
293 
+
294  stan::math::validate_square(A,"mdivide_left_spd");
+
295  stan::math::validate_multiplicable(A,b,"mdivide_left_spd");
+
296 
+
297  // NOTE: this is not a memory leak, this vari is used in the
+
298  // expression graph to evaluate the adjoint, but is not needed
+
299  // for the returned matrix. Memory will be cleaned up with the arena allocator.
+
300  mdivide_left_spd_dv_vari<R1,C1,R2,C2> *baseVari = new mdivide_left_spd_dv_vari<R1,C1,R2,C2>(A,b);
+
301 
+
302  size_t pos = 0;
+
303  for (size_type j = 0; j < res.cols(); j++)
+
304  for (size_type i = 0; i < res.rows(); i++)
+
305  res(i,j).vi_ = baseVari->_variRefC[pos++];
+
306 
+
307  return res;
+
308  }
+
309 
+
310  }
+
311 }
+
312 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2rev_2matrix_2mdivide__left__tri_8hpp.html b/doc/api/html/agrad_2rev_2matrix_2mdivide__left__tri_8hpp.html new file mode 100644 index 00000000000..90275424466 --- /dev/null +++ b/doc/api/html/agrad_2rev_2matrix_2mdivide__left__tri_8hpp.html @@ -0,0 +1,248 @@ + + + + + +Stan: src/stan/agrad/rev/matrix/mdivide_left_tri.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
mdivide_left_tri.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+ + + + + + + + + + +

+Functions

template<int TriView, int R1, int C1, int R2, int C2>
Eigen::Matrix< var, R1, C2 > stan::agrad::mdivide_left_tri (const Eigen::Matrix< var, R1, C1 > &A, const Eigen::Matrix< var, R2, C2 > &b)
 
template<int TriView, int R1, int C1, int R2, int C2>
Eigen::Matrix< var, R1, C2 > stan::agrad::mdivide_left_tri (const Eigen::Matrix< double, R1, C1 > &A, const Eigen::Matrix< var, R2, C2 > &b)
 
template<int TriView, int R1, int C1, int R2, int C2>
Eigen::Matrix< var, R1, C2 > stan::agrad::mdivide_left_tri (const Eigen::Matrix< var, R1, C1 > &A, const Eigen::Matrix< double, R2, C2 > &b)
 
+

Variable Documentation

+ +
+
+ + + + +
vari** _variRefA
+
+ +

Definition at line 23 of file mdivide_left_tri.hpp.

+ +
+
+ +
+
+ + + + +
vari** _variRefB
+
+ +

Definition at line 24 of file mdivide_left_tri.hpp.

+ +
+
+ +
+
+ + + + +
vari** _variRefC
+
+ +

Definition at line 25 of file mdivide_left_tri.hpp.

+ +
+
+ +
+
+ + + + +
double* A_
+
+ +

Definition at line 21 of file mdivide_left_tri.hpp.

+ +
+
+ +
+
+ + + + +
double* C_
+
+ +

Definition at line 22 of file mdivide_left_tri.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + +
int M_
+
+static
+
+ +

Definition at line 19 of file mdivide_left_tri.hpp.

+ +
+
+ +
+
+ + + + +
int N_
+
+ +

Definition at line 20 of file mdivide_left_tri.hpp.

+ +
+
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2rev_2matrix_2mdivide__left__tri_8hpp_source.html b/doc/api/html/agrad_2rev_2matrix_2mdivide__left__tri_8hpp_source.html new file mode 100644 index 00000000000..11da0dea8bd --- /dev/null +++ b/doc/api/html/agrad_2rev_2matrix_2mdivide__left__tri_8hpp_source.html @@ -0,0 +1,469 @@ + + + + + +Stan: src/stan/agrad/rev/matrix/mdivide_left_tri.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
mdivide_left_tri.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__REV__MATRIX__MDIVIDE_LEFT_TRI_HPP__
+
2 #define __STAN__AGRAD__REV__MATRIX__MDIVIDE_LEFT_TRI_HPP__
+
3 
+
4 #include <vector>
+ + + + +
9 #include <stan/agrad/rev/var.hpp>
+ +
11 
+
12 namespace stan {
+
13  namespace agrad {
+
14 
+
15  namespace {
+
16  template <int TriView,int R1,int C1,int R2,int C2>
+
17  class mdivide_left_tri_vv_vari : public vari {
+
18  public:
+
19  int M_; // A.rows() = A.cols() = B.rows()
+
20  int N_; // B.cols()
+
21  double* A_;
+
22  double* C_;
+
23  vari** _variRefA;
+
24  vari** _variRefB;
+
25  vari** _variRefC;
+
26 
+
27  mdivide_left_tri_vv_vari(const Eigen::Matrix<var,R1,C1> &A,
+
28  const Eigen::Matrix<var,R2,C2> &B)
+
29  : vari(0.0),
+
30  M_(A.rows()),
+
31  N_(B.cols()),
+
32  A_((double*)stan::agrad::memalloc_.alloc(sizeof(double)
+
33  * A.rows() * A.cols())),
+
34  C_((double*)stan::agrad::memalloc_.alloc(sizeof(double)
+
35  * B.rows() * B.cols())),
+
36  _variRefA((vari**)stan::agrad::memalloc_.alloc(sizeof(vari*)
+
37  * A.rows()
+
38  * (A.rows() + 1) / 2)),
+
39  _variRefB((vari**)stan::agrad::memalloc_.alloc(sizeof(vari*)
+
40  * B.rows() * B.cols())),
+
41  _variRefC((vari**)stan::agrad::memalloc_.alloc(sizeof(vari*)
+
42  * B.rows() * B.cols()))
+
43  {
+
44  using Eigen::Matrix;
+
45  using Eigen::Map;
+
46 
+
47  size_t pos = 0;
+
48  if (TriView == Eigen::Lower) {
+
49  for (size_type j = 0; j < M_; j++)
+
50  for (size_type i = j; i < M_; i++)
+
51  _variRefA[pos++] = A(i,j).vi_;
+
52  } else if (TriView == Eigen::Upper) {
+
53  for (size_type j = 0; j < M_; j++)
+
54  for (size_type i = 0; i < j+1; i++)
+
55  _variRefA[pos++] = A(i,j).vi_;
+
56  }
+
57 
+
58  pos = 0;
+
59  for (size_type j = 0; j < M_; j++) {
+
60  for (size_type i = 0; i < M_; i++) {
+
61  A_[pos++] = A(i,j).val();
+
62  }
+
63  }
+
64 
+
65  pos = 0;
+
66  for (size_type j = 0; j < N_; j++) {
+
67  for (size_type i = 0; i < M_; i++) {
+
68  _variRefB[pos] = B(i,j).vi_;
+
69  C_[pos++] = B(i,j).val();
+
70  }
+
71  }
+
72 
+
73  Matrix<double,R1,C2> C(M_,N_);
+
74  C = Map<Matrix<double,R1,C2> >(C_,M_,N_);
+
75 
+
76  C = Map<Matrix<double,R1,C1> >(A_,M_,M_)
+
77  .template triangularView<TriView>().solve(C);
+
78 
+
79  pos = 0;
+
80  for (size_type j = 0; j < N_; j++) {
+
81  for (size_type i = 0; i < M_; i++) {
+
82  C_[pos] = C(i,j);
+
83  _variRefC[pos] = new vari(C_[pos],false);
+
84  pos++;
+
85  }
+
86  }
+
87 
+
88  }
+
89 
+
90  virtual void chain() {
+
91  using Eigen::Matrix;
+
92  using Eigen::Map;
+
93  Matrix<double,R1,C1> adjA(M_,M_);
+
94  Matrix<double,R2,C2> adjB(M_,N_);
+
95  Matrix<double,R1,C2> adjC(M_,N_);
+
96 
+
97  size_t pos = 0;
+
98  for (size_type j = 0; j < adjC.cols(); j++)
+
99  for (size_type i = 0; i < adjC.rows(); i++)
+
100  adjC(i,j) = _variRefC[pos++]->adj_;
+
101 
+
102  adjB = Map<Matrix<double,R1,C1> >(A_,M_,M_)
+
103  .template triangularView<TriView>().transpose().solve(adjC);
+
104  adjA.noalias() = -adjB
+
105  * Map<Matrix<double,R1,C2> >(C_,M_,N_).transpose();
+
106 
+
107  pos = 0;
+
108  if (TriView == Eigen::Lower) {
+
109  for (size_type j = 0; j < adjA.cols(); j++)
+
110  for (size_type i = j; i < adjA.rows(); i++)
+
111  _variRefA[pos++]->adj_ += adjA(i,j);
+
112  } else if (TriView == Eigen::Upper) {
+
113  for (size_type j = 0; j < adjA.cols(); j++)
+
114  for (size_type i = 0; i < j+1; i++)
+
115  _variRefA[pos++]->adj_ += adjA(i,j);
+
116  }
+
117 
+
118  pos = 0;
+
119  for (size_type j = 0; j < adjB.cols(); j++)
+
120  for (size_type i = 0; i < adjB.rows(); i++)
+
121  _variRefB[pos++]->adj_ += adjB(i,j);
+
122  }
+
123  };
+
124 
+
125  template <int TriView,int R1,int C1,int R2,int C2>
+
126  class mdivide_left_tri_dv_vari : public vari {
+
127  public:
+
128  int M_; // A.rows() = A.cols() = B.rows()
+
129  int N_; // B.cols()
+
130  double* A_;
+
131  double* C_;
+
132  vari** _variRefB;
+
133  vari** _variRefC;
+
134 
+
135  mdivide_left_tri_dv_vari(const Eigen::Matrix<double,R1,C1> &A,
+
136  const Eigen::Matrix<var,R2,C2> &B)
+
137  : vari(0.0),
+
138  M_(A.rows()),
+
139  N_(B.cols()),
+
140  A_((double*)stan::agrad::memalloc_.alloc(sizeof(double)
+
141  * A.rows() * A.cols())),
+
142  C_((double*)stan::agrad::memalloc_.alloc(sizeof(double)
+
143  * B.rows() * B.cols())),
+
144  _variRefB((vari**)stan::agrad::memalloc_.alloc(sizeof(vari*)
+
145  * B.rows() * B.cols())),
+
146  _variRefC((vari**)stan::agrad::memalloc_.alloc(sizeof(vari*)
+
147  * B.rows() * B.cols()))
+
148  {
+
149  using Eigen::Matrix;
+
150  using Eigen::Map;
+
151 
+
152  size_t pos = 0;
+
153  for (size_type j = 0; j < M_; j++) {
+
154  for (size_type i = 0; i < M_; i++) {
+
155  A_[pos++] = A(i,j);
+
156  }
+
157  }
+
158 
+
159  pos = 0;
+
160  for (size_type j = 0; j < N_; j++) {
+
161  for (size_type i = 0; i < M_; i++) {
+
162  _variRefB[pos] = B(i,j).vi_;
+
163  C_[pos++] = B(i,j).val();
+
164  }
+
165  }
+
166 
+
167  Matrix<double,R1,C2> C(M_,N_);
+
168  C = Map<Matrix<double,R1,C2> >(C_,M_,N_);
+
169 
+
170  C = Map<Matrix<double,R1,C1> >(A_,M_,M_)
+
171  .template triangularView<TriView>().solve(C);
+
172 
+
173  pos = 0;
+
174  for (size_type j = 0; j < N_; j++) {
+
175  for (size_type i = 0; i < M_; i++) {
+
176  C_[pos] = C(i,j);
+
177  _variRefC[pos] = new vari(C_[pos],false);
+
178  pos++;
+
179  }
+
180  }
+
181  }
+
182 
+
183  virtual void chain() {
+
184  using Eigen::Matrix;
+
185  using Eigen::Map;
+
186  Matrix<double,R2,C2> adjB(M_,N_);
+
187  Matrix<double,R1,C2> adjC(M_,N_);
+
188 
+
189  size_t pos = 0;
+
190  for (size_type j = 0; j < adjC.cols(); j++)
+
191  for (size_type i = 0; i < adjC.rows(); i++)
+
192  adjC(i,j) = _variRefC[pos++]->adj_;
+
193 
+
194  adjB = Map<Matrix<double,R1,C1> >(A_,M_,M_)
+
195  .template triangularView<TriView>().transpose().solve(adjC);
+
196 
+
197  pos = 0;
+
198  for (size_type j = 0; j < adjB.cols(); j++)
+
199  for (size_type i = 0; i < adjB.rows(); i++)
+
200  _variRefB[pos++]->adj_ += adjB(i,j);
+
201  }
+
202  };
+
203 
+
204  template <int TriView,int R1,int C1,int R2,int C2>
+
205  class mdivide_left_tri_vd_vari : public vari {
+
206  public:
+
207  int M_; // A.rows() = A.cols() = B.rows()
+
208  int N_; // B.cols()
+
209  double* A_;
+
210  double* C_;
+
211  vari** _variRefA;
+
212  vari** _variRefC;
+
213 
+
214  mdivide_left_tri_vd_vari(const Eigen::Matrix<var,R1,C1> &A,
+
215  const Eigen::Matrix<double,R2,C2> &B)
+
216  : vari(0.0),
+
217  M_(A.rows()),
+
218  N_(B.cols()),
+
219  A_((double*)stan::agrad::memalloc_.alloc(sizeof(double)
+
220  * A.rows() * A.cols())),
+
221  C_((double*)stan::agrad::memalloc_.alloc(sizeof(double)
+
222  * B.rows() * B.cols())),
+
223  _variRefA((vari**)stan::agrad::memalloc_.alloc(sizeof(vari*)
+
224  * A.rows()
+
225  * (A.rows() + 1) / 2)),
+
226  _variRefC((vari**)stan::agrad::memalloc_.alloc(sizeof(vari*)
+
227  * B.rows() * B.cols()))
+
228  {
+
229  using Eigen::Matrix;
+
230  using Eigen::Map;
+
231 
+
232  size_t pos = 0;
+
233  if (TriView == Eigen::Lower) {
+
234  for (size_type j = 0; j < M_; j++)
+
235  for (size_type i = j; i < M_; i++)
+
236  _variRefA[pos++] = A(i,j).vi_;
+
237  } else if (TriView == Eigen::Upper) {
+
238  for (size_type j = 0; j < M_; j++)
+
239  for (size_type i = 0; i < j+1; i++)
+
240  _variRefA[pos++] = A(i,j).vi_;
+
241  }
+
242 
+
243  pos = 0;
+
244  for (size_type j = 0; j < M_; j++) {
+
245  for (size_type i = 0; i < M_; i++) {
+
246  A_[pos++] = A(i,j).val();
+
247  }
+
248  }
+
249 
+
250  Matrix<double,R1,C2> C(M_,N_);
+
251  C = Map<Matrix<double,R1,C1> >(A_,M_,M_)
+
252  .template triangularView<TriView>().solve(B);
+
253 
+
254  pos = 0;
+
255  for (size_type j = 0; j < N_; j++) {
+
256  for (size_type i = 0; i < M_; i++) {
+
257  C_[pos] = C(i,j);
+
258  _variRefC[pos] = new vari(C_[pos],false);
+
259  pos++;
+
260  }
+
261  }
+
262  }
+
263 
+
264  virtual void chain() {
+
265  using Eigen::Matrix;
+
266  using Eigen::Map;
+
267  Matrix<double,R1,C1> adjA(M_,M_);
+
268  Matrix<double,R1,C2> adjC(M_,N_);
+
269 
+
270  size_t pos = 0;
+
271  for (size_type j = 0; j < adjC.cols(); j++)
+
272  for (size_type i = 0; i < adjC.rows(); i++)
+
273  adjC(i,j) = _variRefC[pos++]->adj_;
+
274 
+
275  adjA.noalias() = -Map<Matrix<double,R1,C1> >(A_,M_,M_)
+
276  .template triangularView<TriView>()
+
277  .transpose().solve(adjC*Map<Matrix<double,R1,C2> >(C_,M_,N_).transpose());
+
278 
+
279  pos = 0;
+
280  if (TriView == Eigen::Lower) {
+
281  for (size_type j = 0; j < adjA.cols(); j++)
+
282  for (size_type i = j; i < adjA.rows(); i++)
+
283  _variRefA[pos++]->adj_ += adjA(i,j);
+
284  } else if (TriView == Eigen::Upper) {
+
285  for (size_type j = 0; j < adjA.cols(); j++)
+
286  for (size_type i = 0; i < j+1; i++)
+
287  _variRefA[pos++]->adj_ += adjA(i,j);
+
288  }
+
289  }
+
290  };
+
291  }
+
292 
+
293  template <int TriView,int R1,int C1,int R2,int C2>
+
294  inline
+
295  Eigen::Matrix<var,R1,C2>
+
296  mdivide_left_tri(const Eigen::Matrix<var,R1,C1> &A,
+
297  const Eigen::Matrix<var,R2,C2> &b) {
+
298  Eigen::Matrix<var,R1,C2> res(b.rows(),b.cols());
+
299 
+
300  stan::math::validate_square(A,"mdivide_left_tri");
+
301  stan::math::validate_multiplicable(A,b,"mdivide_left_tri");
+
302 
+
303  // NOTE: this is not a memory leak, this vari is used in the
+
304  // expression graph to evaluate the adjoint, but is not needed
+
305  // for the returned matrix. Memory will be cleaned up with the arena allocator.
+
306  mdivide_left_tri_vv_vari<TriView,R1,C1,R2,C2> *baseVari = new mdivide_left_tri_vv_vari<TriView,R1,C1,R2,C2>(A,b);
+
307 
+
308  size_t pos = 0;
+
309  for (size_type j = 0; j < res.cols(); j++)
+
310  for (size_type i = 0; i < res.rows(); i++)
+
311  res(i,j).vi_ = baseVari->_variRefC[pos++];
+
312 
+
313  return res;
+
314  }
+
315  template <int TriView,int R1,int C1,int R2,int C2>
+
316  inline
+
317  Eigen::Matrix<var,R1,C2>
+
318  mdivide_left_tri(const Eigen::Matrix<double,R1,C1> &A,
+
319  const Eigen::Matrix<var,R2,C2> &b) {
+
320  Eigen::Matrix<var,R1,C2> res(b.rows(),b.cols());
+
321 
+
322  stan::math::validate_square(A,"mdivide_left_tri");
+
323  stan::math::validate_multiplicable(A,b,"mdivide_left_tri");
+
324 
+
325  // NOTE: this is not a memory leak, this vari is used in the
+
326  // expression graph to evaluate the adjoint, but is not needed
+
327  // for the returned matrix. Memory will be cleaned up with the arena allocator.
+
328  mdivide_left_tri_dv_vari<TriView,R1,C1,R2,C2> *baseVari = new mdivide_left_tri_dv_vari<TriView,R1,C1,R2,C2>(A,b);
+
329 
+
330  size_t pos = 0;
+
331  for (size_type j = 0; j < res.cols(); j++)
+
332  for (size_type i = 0; i < res.rows(); i++)
+
333  res(i,j).vi_ = baseVari->_variRefC[pos++];
+
334 
+
335  return res;
+
336  }
+
337  template <int TriView,int R1,int C1,int R2,int C2>
+
338  inline
+
339  Eigen::Matrix<var,R1,C2>
+
340  mdivide_left_tri(const Eigen::Matrix<var,R1,C1> &A,
+
341  const Eigen::Matrix<double,R2,C2> &b) {
+
342  Eigen::Matrix<var,R1,C2> res(b.rows(),b.cols());
+
343 
+
344  stan::math::validate_square(A,"mdivide_left_tri");
+
345  stan::math::validate_multiplicable(A,b,"mdivide_left_tri");
+
346 
+
347  // NOTE: this is not a memory leak, this vari is used in the
+
348  // expression graph to evaluate the adjoint, but is not needed
+
349  // for the returned matrix. Memory will be cleaned up with the arena allocator.
+
350  mdivide_left_tri_vd_vari<TriView,R1,C1,R2,C2> *baseVari = new mdivide_left_tri_vd_vari<TriView,R1,C1,R2,C2>(A,b);
+
351 
+
352  size_t pos = 0;
+
353  for (size_type j = 0; j < res.cols(); j++)
+
354  for (size_type i = 0; i < res.rows(); i++)
+
355  res(i,j).vi_ = baseVari->_variRefC[pos++];
+
356 
+
357  return res;
+
358  }
+
359 
+
360  }
+
361 }
+
362 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2rev_2matrix_2multiply_8hpp.html b/doc/api/html/agrad_2rev_2matrix_2multiply_8hpp.html new file mode 100644 index 00000000000..87a9ab6c586 --- /dev/null +++ b/doc/api/html/agrad_2rev_2matrix_2multiply_8hpp.html @@ -0,0 +1,173 @@ + + + + + +Stan: src/stan/agrad/rev/matrix/multiply.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
multiply.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+ + + + + + + + + + + + + + + + + + + + + +

+Functions

template<typename T1 , typename T2 >
boost::enable_if_c
+< (boost::is_scalar< T1 >
+::value||boost::is_same< T1,
+var >::value)&&(boost::is_scalar
+< T2 >::value||boost::is_same
+< T2, var >::value), typename
+boost::math::tools::promote_args
+< T1, T2 >::type >::type 
stan::agrad::multiply (const T1 &v, const T2 &c)
 Return the product of two scalars.
 
template<typename T1 , typename T2 , int R2, int C2>
Eigen::Matrix< var, R2, C2 > stan::agrad::multiply (const T1 &c, const Eigen::Matrix< T2, R2, C2 > &m)
 Return the product of scalar and matrix.
 
template<typename T1 , int R1, int C1, typename T2 >
Eigen::Matrix< var, R1, C1 > stan::agrad::multiply (const Eigen::Matrix< T1, R1, C1 > &m, const T2 &c)
 Return the product of scalar and matrix.
 
template<typename T1 , int R1, int C1, typename T2 , int R2, int C2>
boost::enable_if_c
+< boost::is_same< T1, var >
+::value||boost::is_same< T2,
+var >::value, Eigen::Matrix
+< var, R1, C2 > >::type 
stan::agrad::multiply (const Eigen::Matrix< T1, R1, C1 > &m1, const Eigen::Matrix< T2, R2, C2 > &m2)
 Return the product of the specified matrices.
 
template<typename T1 , int C1, typename T2 , int R2>
boost::enable_if_c
+< boost::is_same< T1, var >
+::value||boost::is_same< T2,
+var >::value, var >::type 
stan::agrad::multiply (const Eigen::Matrix< T1, 1, C1 > &rv, const Eigen::Matrix< T2, R2, 1 > &v)
 Return the scalar product of the specified row vector and specified column vector.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2rev_2matrix_2multiply_8hpp_source.html b/doc/api/html/agrad_2rev_2matrix_2multiply_8hpp_source.html new file mode 100644 index 00000000000..a0dd56bbd87 --- /dev/null +++ b/doc/api/html/agrad_2rev_2matrix_2multiply_8hpp_source.html @@ -0,0 +1,203 @@ + + + + + +Stan: src/stan/agrad/rev/matrix/multiply.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
multiply.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__REV__MATRIX__MULTIPLY_HPP__
+
2 #define __STAN__AGRAD__REV__MATRIX__MULTIPLY_HPP__
+
3 
+
4 #include <stan/agrad/rev/var.hpp>
+ + + + + + + + + + +
15 #include <boost/utility/enable_if.hpp>
+
16 #include <boost/type_traits.hpp>
+
17 #include <boost/math/tools/promotion.hpp>
+
18 
+
19 namespace stan {
+
20  namespace agrad {
+
21 
+
28  template <typename T1, typename T2>
+
29  inline typename
+
30  boost::enable_if_c< (boost::is_scalar<T1>::value || boost::is_same<T1,var>::value) &&
+
31  (boost::is_scalar<T2>::value || boost::is_same<T2,var>::value),
+
32  typename boost::math::tools::promote_args<T1,T2>::type>::type
+
33  multiply(const T1& v, const T2& c) {
+
34  return v * c;
+
35  }
+
36 
+
43  template<typename T1,typename T2,int R2,int C2>
+
44  inline Eigen::Matrix<var,R2,C2> multiply(const T1& c,
+
45  const Eigen::Matrix<T2, R2, C2>& m) {
+
46  // FIXME: pull out to eliminate overpromotion of one side
+
47  // move to matrix.hpp w. promotion?
+
48  return to_var(m) * to_var(c);
+
49  }
+
50 
+
57  template<typename T1,int R1,int C1,typename T2>
+
58  inline Eigen::Matrix<var,R1,C1> multiply(const Eigen::Matrix<T1, R1, C1>& m,
+
59  const T2& c) {
+
60  return to_var(m) * to_var(c);
+
61  }
+
62 
+
73  template<typename T1,int R1,int C1,typename T2,int R2,int C2>
+
74  inline typename
+
75  boost::enable_if_c< boost::is_same<T1,var>::value ||
+
76  boost::is_same<T2,var>::value,
+
77  Eigen::Matrix<var,R1,C2> >::type
+
78  multiply(const Eigen::Matrix<T1,R1,C1>& m1,
+
79  const Eigen::Matrix<T2,R2,C2>& m2) {
+
80  stan::math::validate_multiplicable(m1,m2,"multiply");
+
81  Eigen::Matrix<var,R1,C2> result(m1.rows(),m2.cols());
+
82  for (int i = 0; i < m1.rows(); i++) {
+
83  typename Eigen::Matrix<T1,R1,C1>::ConstRowXpr crow(m1.row(i));
+
84  for (int j = 0; j < m2.cols(); j++) {
+
85  typename Eigen::Matrix<T2,R2,C2>::ConstColXpr ccol(m2.col(j));
+
86  if (j == 0) {
+
87  if (i == 0) {
+
88  result(i,j) = var(new dot_product_vari<T1,T2>(crow,ccol));
+
89  }
+
90  else {
+
91  dot_product_vari<T1,T2> *v2 = static_cast<dot_product_vari<T1,T2>*>(result(0,j).vi_);
+
92  result(i,j) = var(new dot_product_vari<T1,T2>(crow,ccol,NULL,v2));
+
93  }
+
94  }
+
95  else {
+
96  if (i == 0) {
+
97  dot_product_vari<T1,T2> *v1 = static_cast<dot_product_vari<T1,T2>*>(result(i,0).vi_);
+
98  result(i,j) = var(new dot_product_vari<T1,T2>(crow,ccol,v1,NULL));
+
99  }
+
100  else /* if (i != 0 && j != 0) */ {
+
101  dot_product_vari<T1,T2> *v1 = static_cast<dot_product_vari<T1,T2>*>(result(i,0).vi_);
+
102  dot_product_vari<T1,T2> *v2 = static_cast<dot_product_vari<T1,T2>*>(result(0,j).vi_);
+
103  result(i,j) = var(new dot_product_vari<T1,T2>(crow,ccol,v1,v2));
+
104  }
+
105  }
+
106  }
+
107  }
+
108  return result;
+
109  }
+
110 
+
120  template <typename T1,int C1,typename T2,int R2>
+
121  inline typename
+
122  boost::enable_if_c< boost::is_same<T1,var>::value ||
+
123  boost::is_same<T2,var>::value, var >::type
+
124  multiply(const Eigen::Matrix<T1, 1, C1>& rv,
+
125  const Eigen::Matrix<T2, R2, 1>& v) {
+
126  if (rv.size() != v.size())
+
127  throw std::domain_error("row vector and vector must be same length in multiply");
+
128  return dot_product(rv, v);
+
129  }
+
130 
+
131  }
+
132 }
+
133 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2rev_2matrix_2multiply__lower__tri__self__transpose_8hpp.html b/doc/api/html/agrad_2rev_2matrix_2multiply__lower__tri__self__transpose_8hpp.html new file mode 100644 index 00000000000..bec0e5b4385 --- /dev/null +++ b/doc/api/html/agrad_2rev_2matrix_2multiply__lower__tri__self__transpose_8hpp.html @@ -0,0 +1,139 @@ + + + + + +Stan: src/stan/agrad/rev/matrix/multiply_lower_tri_self_transpose.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
multiply_lower_tri_self_transpose.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+ + + +

+Functions

matrix_v stan::agrad::multiply_lower_tri_self_transpose (const matrix_v &L)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2rev_2matrix_2multiply__lower__tri__self__transpose_8hpp_source.html b/doc/api/html/agrad_2rev_2matrix_2multiply__lower__tri__self__transpose_8hpp_source.html new file mode 100644 index 00000000000..238c930b4e9 --- /dev/null +++ b/doc/api/html/agrad_2rev_2matrix_2multiply__lower__tri__self__transpose_8hpp_source.html @@ -0,0 +1,160 @@ + + + + + +Stan: src/stan/agrad/rev/matrix/multiply_lower_tri_self_transpose.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
multiply_lower_tri_self_transpose.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__REV__MATRIX__MULTIPLY_LOWER_TRI_SELF_TRANSPOSE_HPP__
+
2 #define __STAN__AGRAD__REV__MATRIX__MULTIPLY_LOWER_TRI_SELF_TRANSPOSE_HPP__
+
3 
+
4 #include <vector>
+
5 #include <boost/math/tools/promotion.hpp>
+ + + + + +
11 #include <stan/agrad/rev/var.hpp>
+ + + + +
16 
+
17 namespace stan {
+
18  namespace agrad {
+
19 
+
20  inline matrix_v
+ +
22  // stan::math::validate_square(L,"multiply_lower_tri_self_transpose");
+
23  int K = L.rows();
+
24  int J = L.cols();
+
25  matrix_v LLt(K,K);
+
26  if (K == 0) return LLt;
+
27  // if (K == 1) {
+
28  // LLt(0,0) = L(0,0) * L(0,0);
+
29  // return LLt;
+
30  // }
+
31  int Knz;
+
32  if (K >= J)
+
33  Knz = (K-J)*J + (J * (J + 1)) / 2;
+
34  else // if (K < J)
+
35  Knz = (K * (K + 1)) / 2;
+
36  vari** vs = (vari**)memalloc_.alloc( Knz * sizeof(vari*) );
+
37  int pos = 0;
+
38  for (int m = 0; m < K; ++m)
+
39  for (int n = 0; n < ((J < (m+1))?J:(m+1)); ++n) {
+
40  vs[pos++] = L(m,n).vi_;
+
41  }
+
42  for (int m = 0, mpos=0; m < K; ++m, mpos += (J < m)?J:m) {
+
43  LLt(m,m) = var(new dot_self_vari(vs + mpos, (J < (m+1))?J:(m+1)));
+
44  for (int n = 0, npos = 0; n < m; ++n, npos += (J < n)?J:n) {
+
45  LLt(m,n) = LLt(n,m) = var(new dot_product_vari<var,var>(vs + mpos, vs + npos, (J < (n+1))?J:(n+1)));
+
46  }
+
47  }
+
48  return LLt;
+
49  }
+
50 
+
51  }
+
52 }
+
53 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2rev_2matrix_2quad__form_8hpp.html b/doc/api/html/agrad_2rev_2matrix_2quad__form_8hpp.html new file mode 100644 index 00000000000..81bd77a1381 --- /dev/null +++ b/doc/api/html/agrad_2rev_2matrix_2quad__form_8hpp.html @@ -0,0 +1,233 @@ + + + + + +Stan: src/stan/agrad/rev/matrix/quad_form.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
quad_form.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+ + + + + + + + + + + + + +

+Functions

template<typename TA , int RA, int CA, typename TB , int RB, int CB>
boost::enable_if_c
+< boost::is_same< TA, var >
+::value||boost::is_same< TB,
+var >::value, Eigen::Matrix
+< var, CB, CB > >::type 
stan::agrad::quad_form (const Eigen::Matrix< TA, RA, CA > &A, const Eigen::Matrix< TB, RB, CB > &B)
 
template<typename TA , int RA, int CA, typename TB , int RB>
boost::enable_if_c
+< boost::is_same< TA, var >
+::value||boost::is_same< TB,
+var >::value, var >::type 
stan::agrad::quad_form (const Eigen::Matrix< TA, RA, CA > &A, const Eigen::Matrix< TB, RB, 1 > &B)
 
template<typename TA , int RA, int CA, typename TB , int RB, int CB>
boost::enable_if_c
+< boost::is_same< TA, var >
+::value||boost::is_same< TB,
+var >::value, Eigen::Matrix
+< var, CB, CB > >::type 
stan::agrad::quad_form_sym (const Eigen::Matrix< TA, RA, CA > &A, const Eigen::Matrix< TB, RB, CB > &B)
 
template<typename TA , int RA, int CA, typename TB , int RB>
boost::enable_if_c
+< boost::is_same< TA, var >
+::value||boost::is_same< TB,
+var >::value, var >::type 
stan::agrad::quad_form_sym (const Eigen::Matrix< TA, RA, CA > &A, const Eigen::Matrix< TB, RB, 1 > &B)
 
+

Variable Documentation

+ +
+
+ + + + +
quad_form_vari_alloc<TA,RA,CA,TB,RB,CB>* _impl
+
+ +

Definition at line 118 of file quad_form.hpp.

+ +
+
+ +
+
+ + + + +
bool _sym
+
+ +

Definition at line 51 of file quad_form.hpp.

+ +
+
+ +
+
+ + + + +
Eigen::Matrix<TA,RA,CA> A_
+
+ +

Definition at line 48 of file quad_form.hpp.

+ +
+
+ +
+
+ + + + +
Eigen::Matrix<TB,RB,CB> B_
+
+ +

Definition at line 49 of file quad_form.hpp.

+ +
+
+ +
+
+ + + + +
Eigen::Matrix<var,CB,CB> C_
+
+ +

Definition at line 50 of file quad_form.hpp.

+ +
+
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2rev_2matrix_2quad__form_8hpp_source.html b/doc/api/html/agrad_2rev_2matrix_2quad__form_8hpp_source.html new file mode 100644 index 00000000000..56ed0f52192 --- /dev/null +++ b/doc/api/html/agrad_2rev_2matrix_2quad__form_8hpp_source.html @@ -0,0 +1,297 @@ + + + + + +Stan: src/stan/agrad/rev/matrix/quad_form.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
quad_form.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__REV__MATRIX__QUAD_FORM_HPP__
+
2 #define __STAN__AGRAD__REV__MATRIX__QUAD_FORM_HPP__
+
3 
+
4 #include <boost/utility/enable_if.hpp>
+
5 #include <boost/type_traits.hpp>
+ + +
8 #include <stan/agrad/rev.hpp>
+ + + + + + +
15 
+
16 namespace stan {
+
17  namespace agrad {
+
18  namespace {
+
19  template<typename TA,int RA,int CA,typename TB,int RB,int CB>
+
20  class quad_form_vari_alloc : public chainable_alloc {
+
21  private:
+
22  inline void compute(const Eigen::Matrix<double,RA,CA> &A,
+
23  const Eigen::Matrix<double,RB,CB> &B)
+
24  {
+
25  int i,j;
+
26  Eigen::Matrix<double,CB,CB> Cd(B.transpose()*A*B);
+
27  for (j = 0; j < C_.cols(); j++) {
+
28  for (i = 0; i < C_.rows(); i++) {
+
29  if (_sym) {
+
30  C_(i,j) = var(new vari(0.5*(Cd(i,j) + Cd(j,i)),false));
+
31  }
+
32  else {
+
33  C_(i,j) = var(new vari(Cd(i,j),false));
+
34  }
+
35  }
+
36  }
+
37  }
+
38 
+
39  public:
+
40  quad_form_vari_alloc(const Eigen::Matrix<TA,RA,CA> &A,
+
41  const Eigen::Matrix<TB,RB,CB> &B,
+
42  bool symmetric = false)
+
43  : A_(A), B_(B), C_(B_.cols(),B_.cols()), _sym(symmetric)
+
44  {
+
45  compute(value_of(A),value_of(B));
+
46  }
+
47 
+
48  Eigen::Matrix<TA,RA,CA> A_;
+
49  Eigen::Matrix<TB,RB,CB> B_;
+
50  Eigen::Matrix<var,CB,CB> C_;
+
51  bool _sym;
+
52  };
+
53 
+
54  template<typename TA,int RA,int CA,typename TB,int RB,int CB>
+
55  class quad_form_vari : public vari {
+
56  protected:
+
57  inline void chainA(Eigen::Matrix<double,RA,CA> &A,
+
58  const Eigen::Matrix<double,RB,CB> &Bd,
+
59  const Eigen::Matrix<double,CB,CB> &adjC) {}
+
60  inline void chainB(Eigen::Matrix<double,RB,CB> &B,
+
61  const Eigen::Matrix<double,RA,CA> &Ad,
+
62  const Eigen::Matrix<double,RB,CB> &Bd,
+
63  const Eigen::Matrix<double,CB,CB> &adjC) {}
+
64 
+
65  inline void chainA(Eigen::Matrix<var,RA,CA> &A,
+
66  const Eigen::Matrix<double,RB,CB> &Bd,
+
67  const Eigen::Matrix<double,CB,CB> &adjC)
+
68  {
+
69  int i,j;
+
70  Eigen::Matrix<double,RA,CA> adjA(Bd*adjC*Bd.transpose());
+
71  for (j = 0; j < A.cols(); j++) {
+
72  for (i = 0; i < A.rows(); i++) {
+
73  A(i,j).vi_->adj_ += adjA(i,j);
+
74  }
+
75  }
+
76  }
+
77  inline void chainB(Eigen::Matrix<var,RB,CB> &B,
+
78  const Eigen::Matrix<double,RA,CA> &Ad,
+
79  const Eigen::Matrix<double,RB,CB> &Bd,
+
80  const Eigen::Matrix<double,CB,CB> &adjC)
+
81  {
+
82  int i,j;
+
83  Eigen::Matrix<double,RA,CA> adjB(Ad*Bd*adjC.transpose() + Ad.transpose()*Bd*adjC);
+
84  for (j = 0; j < B.cols(); j++)
+
85  for (i = 0; i < B.rows(); i++)
+
86  B(i,j).vi_->adj_ += adjB(i,j);
+
87  }
+
88 
+
89  inline void chainAB(Eigen::Matrix<TA,RA,CA> &A,
+
90  Eigen::Matrix<TB,RB,CB> &B,
+
91  const Eigen::Matrix<double,RA,CA> &Ad,
+
92  const Eigen::Matrix<double,RB,CB> &Bd,
+
93  const Eigen::Matrix<double,CB,CB> &adjC)
+
94  {
+
95  chainA(A,Bd,adjC);
+
96  chainB(B,Ad,Bd,adjC);
+
97  }
+
98 
+
99  public:
+
100  quad_form_vari(const Eigen::Matrix<TA,RA,CA> &A,
+
101  const Eigen::Matrix<TB,RB,CB> &B,
+
102  bool symmetric = false)
+
103  : vari(0.0) {
+
104  _impl = new quad_form_vari_alloc<TA,RA,CA,TB,RB,CB>(A,B,symmetric);
+
105  }
+
106 
+
107  virtual void chain() {
+
108  int i,j;
+
109  Eigen::Matrix<double,CB,CB> adjC(_impl->C_.rows(),_impl->C_.cols());
+
110 
+
111  for (j = 0; j < _impl->C_.cols(); j++)
+
112  for (i = 0; i < _impl->C_.rows(); i++)
+
113  adjC(i,j) = _impl->C_(i,j).vi_->adj_;
+
114 
+
115  chainAB(_impl->A_, _impl->B_,
+
116  value_of(_impl->A_), value_of(_impl->B_),
+
117  adjC);
+
118  };
+
119 
+
120  quad_form_vari_alloc<TA,RA,CA,TB,RB,CB> *_impl;
+
121  };
+
122  }
+
123 
+
124  template<typename TA,int RA,int CA,typename TB,int RB,int CB>
+
125  inline typename
+
126  boost::enable_if_c< boost::is_same<TA,var>::value ||
+
127  boost::is_same<TB,var>::value,
+
128  Eigen::Matrix<var,CB,CB> >::type
+
129  quad_form(const Eigen::Matrix<TA,RA,CA> &A,
+
130  const Eigen::Matrix<TB,RB,CB> &B)
+
131  {
+
132  stan::math::validate_square(A,"quad_form");
+
133  stan::math::validate_multiplicable(A,B,"quad_form");
+
134 
+
135  quad_form_vari<TA,RA,CA,TB,RB,CB> *baseVari = new quad_form_vari<TA,RA,CA,TB,RB,CB>(A,B);
+
136 
+
137  return baseVari->_impl->C_;
+
138  }
+
139  template<typename TA,int RA,int CA,typename TB,int RB>
+
140  inline typename
+
141  boost::enable_if_c< boost::is_same<TA,var>::value ||
+
142  boost::is_same<TB,var>::value,
+
143  var >::type
+
144  quad_form(const Eigen::Matrix<TA,RA,CA> &A,
+
145  const Eigen::Matrix<TB,RB,1> &B)
+
146  {
+
147  stan::math::validate_square(A,"quad_form");
+
148  stan::math::validate_multiplicable(A,B,"quad_form");
+
149 
+
150  quad_form_vari<TA,RA,CA,TB,RB,1> *baseVari = new quad_form_vari<TA,RA,CA,TB,RB,1>(A,B);
+
151 
+
152  return baseVari->_impl->C_(0,0);
+
153  }
+
154 
+
155  template<typename TA,int RA,int CA,typename TB,int RB,int CB>
+
156  inline typename
+
157  boost::enable_if_c< boost::is_same<TA,var>::value ||
+
158  boost::is_same<TB,var>::value,
+
159  Eigen::Matrix<var,CB,CB> >::type
+
160  quad_form_sym(const Eigen::Matrix<TA,RA,CA> &A,
+
161  const Eigen::Matrix<TB,RB,CB> &B)
+
162  {
+
163  stan::math::validate_square(A,"quad_form_sym");
+
164  stan::math::validate_symmetric(A,"quad_form_sym");
+
165  stan::math::validate_multiplicable(A,B,"quad_form_sym");
+
166 
+
167  quad_form_vari<TA,RA,CA,TB,RB,CB> *baseVari = new quad_form_vari<TA,RA,CA,TB,RB,CB>(A,B,true);
+
168 
+
169  return baseVari->_impl->C_;
+
170  }
+
171  template<typename TA,int RA,int CA,typename TB,int RB>
+
172  inline typename
+
173  boost::enable_if_c< boost::is_same<TA,var>::value ||
+
174  boost::is_same<TB,var>::value,
+
175  var >::type
+
176  quad_form_sym(const Eigen::Matrix<TA,RA,CA> &A,
+
177  const Eigen::Matrix<TB,RB,1> &B)
+
178  {
+
179  stan::math::validate_square(A,"quad_form_sym");
+
180  stan::math::validate_symmetric(A,"quad_form_sym");
+
181  stan::math::validate_multiplicable(A,B,"quad_form_sym");
+
182 
+
183  quad_form_vari<TA,RA,CA,TB,RB,1> *baseVari = new quad_form_vari<TA,RA,CA,TB,RB,1>(A,B,true);
+
184 
+
185  return baseVari->_impl->C_(0,0);
+
186  }
+
187  }
+
188 }
+
189 
+
190 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2rev_2matrix_2sd_8hpp.html b/doc/api/html/agrad_2rev_2matrix_2sd_8hpp.html new file mode 100644 index 00000000000..2163c0e4565 --- /dev/null +++ b/doc/api/html/agrad_2rev_2matrix_2sd_8hpp.html @@ -0,0 +1,139 @@ + + + + + +Stan: src/stan/agrad/rev/matrix/sd.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
sd.hpp File Reference
+
+
+
#include <cmath>
+#include <vector>
+#include <boost/math/tools/promotion.hpp>
+#include <stan/math/matrix/Eigen.hpp>
+#include <stan/math/matrix/mean.hpp>
+#include <stan/agrad/rev/var.hpp>
+#include <stan/agrad/rev/vari.hpp>
+#include <stan/agrad/rev/matrix/stored_gradient_vari.hpp>
+
+

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+ + + + + + + +

+Functions

var stan::agrad::sd (const std::vector< var > &v)
 Return the sample standard deviation of the specified standard vector.
 
template<int R, int C>
var stan::agrad::sd (const Eigen::Matrix< var, R, C > &m)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2rev_2matrix_2sd_8hpp_source.html b/doc/api/html/agrad_2rev_2matrix_2sd_8hpp_source.html new file mode 100644 index 00000000000..059109125fb --- /dev/null +++ b/doc/api/html/agrad_2rev_2matrix_2sd_8hpp_source.html @@ -0,0 +1,188 @@ + + + + + +Stan: src/stan/agrad/rev/matrix/sd.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
sd.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__REV__MATRIX__VARIANCE_HPP__
+
2 #define __STAN__AGRAD__REV__MATRIX__VARIANCE_HPP__
+
3 
+
4 #include <cmath>
+
5 #include <vector>
+
6 #include <boost/math/tools/promotion.hpp>
+ + +
9 #include <stan/agrad/rev/var.hpp>
+
10 #include <stan/agrad/rev/vari.hpp>
+ +
12 
+
13 namespace stan {
+
14 
+
15  namespace agrad {
+
16 
+
17  namespace { // anonymous
+
18 
+
19  // if x.size() = N, and x[i] = x[j] =
+
20  // then lim sd(x) -> 0 [ d/dx[n] sd(x) ] = sqrt(N) / N
+
21 
+
22  var calc_sd(size_t size,
+
23  const var* dtrs) {
+
24  using std::sqrt;
+
25  vari** varis = (vari**) memalloc_.alloc(size * sizeof(vari*));
+
26  for (size_t i = 0; i < size; ++i)
+
27  varis[i] = dtrs[i].vi_;
+
28  double sum = 0.0;
+
29  for (size_t i = 0; i < size; ++i)
+
30  sum += dtrs[i].vi_->val_;
+
31  double mean = sum / size;
+
32  double sum_of_squares = 0;
+
33  for (size_t i = 0; i < size; ++i) {
+
34  double diff = dtrs[i].vi_->val_ - mean;
+
35  sum_of_squares += diff * diff;
+
36  }
+
37  double variance = sum_of_squares / (size - 1);
+
38  double sd = sqrt(variance);
+
39  double* partials = (double*) memalloc_.alloc(size * sizeof(double));
+
40  if (sum_of_squares < 1e-20) {
+
41  double grad_limit = 1 / std::sqrt(size);
+
42  for (size_t i = 0; i < size; ++i)
+
43  partials[i] = grad_limit;
+
44  } else {
+
45  double multiplier = 1 / (sd * (size - 1));
+
46  for (size_t i = 0; i < size; ++i)
+
47  partials[i] = multiplier * (dtrs[i].vi_->val_ - mean);
+
48  }
+
49  return var(new stored_gradient_vari(sd, size,
+
50  varis, partials));
+
51  }
+
52 
+
53  }
+
54 
+
62  var sd(const std::vector<var>& v) {
+ +
64  if (v.size() == 1) return 0;
+
65  return calc_sd(v.size(), &v[0]);
+
66  }
+
67 
+
68  /*
+
69  * Return the sample standard deviation of the specified vector,
+
70  * row vector, or matrix. Raise domain error if size is not
+
71  * greater than zero.
+
72  *
+
73  * @tparam R number of rows
+
74  * @tparam C number of columns
+
75  * @param[in] m input matrix
+
76  * @return sample standard deviation of specified matrix
+
77  */
+
78  template <int R, int C>
+
79  var sd(const Eigen::Matrix<var,R,C>& m) {
+ +
81  if (m.size() == 1) return 0;
+
82  return calc_sd(m.size(), &m(0));
+
83  }
+
84 
+
85  }
+
86 }
+
87 
+
88 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2rev_2matrix_2softmax_8hpp.html b/doc/api/html/agrad_2rev_2matrix_2softmax_8hpp.html new file mode 100644 index 00000000000..47fc94cbdf6 --- /dev/null +++ b/doc/api/html/agrad_2rev_2matrix_2softmax_8hpp.html @@ -0,0 +1,198 @@ + + + + + +Stan: src/stan/agrad/rev/matrix/softmax.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
softmax.hpp File Reference
+
+
+
#include <vector>
+#include <stan/math/matrix/Eigen.hpp>
+#include <stan/math/matrix/softmax.hpp>
+#include <stan/agrad/rev/var.hpp>
+
+

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+ + + + +

+Functions

Eigen::Matrix< var,
+Eigen::Dynamic, 1 > 
stan::agrad::softmax (const Eigen::Matrix< var, Eigen::Dynamic, 1 > &alpha)
 Return the softmax of the specified Eigen vector.
 
+

Variable Documentation

+ +
+
+ + + + + +
+ + + + +
vari** alpha_
+
+static
+
+ +

Definition at line 15 of file softmax.hpp.

+ +
+
+ +
+
+ + + + +
const int idx_
+
+ +

Definition at line 18 of file softmax.hpp.

+ +
+
+ +
+
+ + + + +
const int size_
+
+ +

Definition at line 17 of file softmax.hpp.

+ +
+
+ +
+
+ + + + +
const double* softmax_alpha_
+
+ +

Definition at line 16 of file softmax.hpp.

+ +
+
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2rev_2matrix_2softmax_8hpp_source.html b/doc/api/html/agrad_2rev_2matrix_2softmax_8hpp_source.html new file mode 100644 index 00000000000..069433d53ac --- /dev/null +++ b/doc/api/html/agrad_2rev_2matrix_2softmax_8hpp_source.html @@ -0,0 +1,191 @@ + + + + + +Stan: src/stan/agrad/rev/matrix/softmax.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
softmax.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__REV__MATRIX__SOFTMAX_HPP__
+
2 #define __STAN__AGRAD__REV__MATRIX__SOFTMAX_HPP__
+
3 
+
4 #include <vector>
+ + +
7 #include <stan/agrad/rev/var.hpp>
+
8 
+
9 namespace stan {
+
10  namespace agrad {
+
11 
+
12  namespace {
+
13  class softmax_elt_vari : public vari {
+
14  private:
+
15  vari** alpha_;
+
16  const double* softmax_alpha_;
+
17  const int size_; // array sizes
+
18  const int idx_; // in in softmax output
+
19  public:
+
20  softmax_elt_vari(double val,
+
21  vari** alpha,
+
22  const double* softmax_alpha,
+
23  int size,
+
24  int idx)
+
25  : vari(val),
+
26  alpha_(alpha),
+
27  softmax_alpha_(softmax_alpha),
+
28  size_(size),
+
29  idx_(idx) {
+
30  }
+
31  void chain() {
+
32  for (int m = 0; m < size_; ++m) {
+
33  if (m == idx_) {
+
34  alpha_[m]->adj_
+
35  += adj_ * softmax_alpha_[idx_] * (1 - softmax_alpha_[m]);
+
36  } else {
+
37  alpha_[m]->adj_
+
38  -= adj_ * softmax_alpha_[idx_] * softmax_alpha_[m];
+
39  }
+
40  }
+
41  }
+
42  };
+
43  }
+
44 
+
45 
+
56  inline Eigen::Matrix<var,Eigen::Dynamic,1>
+
57  softmax(const Eigen::Matrix<var,Eigen::Dynamic,1>& alpha) {
+
58  using Eigen::Matrix;
+
59  using Eigen::Dynamic;
+
60 
+
61  stan::math::validate_nonzero_size(alpha,"vector argument to var softmax");
+
62 
+
63  vari** alpha_vi_array
+
64  = (vari**) memalloc_.alloc(sizeof(vari*) * alpha.size());
+
65  for (int i = 0; i < alpha.size(); ++i)
+
66  alpha_vi_array[i] = alpha(i).vi_;
+
67 
+
68  Matrix<double,Dynamic,1> alpha_d(alpha.size());
+
69  for (int i = 0; i < alpha_d.size(); ++i)
+
70  alpha_d(i) = alpha(i).val();
+
71 
+
72  Matrix<double,Dynamic,1> softmax_alpha_d
+
73  = stan::math::softmax(alpha_d);
+
74 
+
75  double* softmax_alpha_d_array
+
76  = (double*) memalloc_.alloc(sizeof(double) * alpha_d.size());
+
77  for (int i = 0; i < alpha_d.size(); ++i)
+
78  softmax_alpha_d_array[i] = softmax_alpha_d(i);
+
79 
+
80  Matrix<var,Dynamic,1> softmax_alpha(alpha.size());
+
81  for (int k = 0; k < softmax_alpha.size(); ++k)
+
82  softmax_alpha(k) = var(new softmax_elt_vari(softmax_alpha_d[k],
+
83  alpha_vi_array,
+
84  softmax_alpha_d_array,
+
85  alpha.size(),
+
86  k));
+
87  return softmax_alpha;
+
88  }
+
89 
+
90 
+
91  }
+
92 }
+
93 
+
94 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2rev_2matrix_2sort_8hpp.html b/doc/api/html/agrad_2rev_2matrix_2sort_8hpp.html new file mode 100644 index 00000000000..03013910a30 --- /dev/null +++ b/doc/api/html/agrad_2rev_2matrix_2sort_8hpp.html @@ -0,0 +1,148 @@ + + + + + +Stan: src/stan/agrad/rev/matrix/sort.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
sort.hpp File Reference
+
+
+
#include <valarray>
+#include <stan/agrad/rev/var.hpp>
+#include <stan/agrad/rev/internal/v_vari.hpp>
+#include <stan/agrad/rev/operators/operator_greater_than.hpp>
+#include <stan/agrad/rev/operators/operator_less_than.hpp>
+#include <vector>
+#include <stan/math/matrix/Eigen.hpp>
+#include <algorithm>
+#include <functional>
+
+

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+ + + + + + + + + + + + + + + +

+Functions

std::vector< var > stan::agrad::sort_asc (std::vector< var > xs)
 Return the specified standard vector in ascending order with gradients kept.
 
std::vector< var > stan::agrad::sort_desc (std::vector< var > xs)
 Return the specified standard vector in descending order with gradients kept.
 
template<int R, int C>
Eigen::Matrix< var, R, C > stan::agrad::sort_asc (Eigen::Matrix< var, R, C > xs)
 Return the specified eigen vector in ascending order with gradients kept.
 
template<int R, int C>
Eigen::Matrix< var, R, C > stan::agrad::sort_desc (Eigen::Matrix< var, R, C > xs)
 Return the specified eigen vector in descending order with gradients kept.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2rev_2matrix_2sort_8hpp_source.html b/doc/api/html/agrad_2rev_2matrix_2sort_8hpp_source.html new file mode 100644 index 00000000000..a6aefcaf1f0 --- /dev/null +++ b/doc/api/html/agrad_2rev_2matrix_2sort_8hpp_source.html @@ -0,0 +1,148 @@ + + + + + +Stan: src/stan/agrad/rev/matrix/sort.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
sort.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__REV__SORT_HPP__
+
2 #define __STAN__AGRAD__REV__SORT_HPP__
+
3 
+
4 #include <valarray>
+
5 #include <stan/agrad/rev/var.hpp>
+ + + +
9 #include <vector>
+ +
11 #include <algorithm> // std::sort
+
12 #include <functional> // std::greater
+
13 
+
14 namespace stan {
+
15  namespace agrad {
+
16 
+
24  inline std::vector<var> sort_asc(std::vector<var> xs) {
+
25  std::sort(xs.begin(), xs.end());
+
26  return xs;
+
27  }
+
28 
+
36  inline std::vector<var> sort_desc(std::vector<var> xs) {
+
37  std::sort(xs.begin(), xs.end(), std::greater<var>());
+
38  return xs;
+
39  }
+
40 
+
48  template <int R, int C>
+
49  inline typename Eigen::Matrix<var,R,C> sort_asc(Eigen::Matrix<var,R,C> xs) {
+
50  std::sort(xs.data(), xs.data()+xs.size());
+
51  return xs;
+
52  }
+
53 
+
61  template <int R, int C>
+
62  inline typename Eigen::Matrix<var,R,C> sort_desc(Eigen::Matrix<var,R,C> xs) {
+
63  std::sort(xs.data(), xs.data()+xs.size(), std::greater<var>());
+
64  return xs;
+
65  }
+
66 
+
67  }
+
68 }
+
69 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2rev_2matrix_2squared__distance_8hpp.html b/doc/api/html/agrad_2rev_2matrix_2squared__distance_8hpp.html new file mode 100644 index 00000000000..ff28dd22875 --- /dev/null +++ b/doc/api/html/agrad_2rev_2matrix_2squared__distance_8hpp.html @@ -0,0 +1,194 @@ + + + + + +Stan: src/stan/agrad/rev/matrix/squared_distance.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
squared_distance.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+ + + + + + + + + + +

+Functions

template<int R1, int C1, int R2, int C2>
var stan::agrad::squared_distance (const Eigen::Matrix< var, R1, C1 > &v1, const Eigen::Matrix< var, R2, C2 > &v2)
 
template<int R1, int C1, int R2, int C2>
var stan::agrad::squared_distance (const Eigen::Matrix< var, R1, C1 > &v1, const Eigen::Matrix< double, R2, C2 > &v2)
 
template<int R1, int C1, int R2, int C2>
var stan::agrad::squared_distance (const Eigen::Matrix< double, R1, C1 > &v1, const Eigen::Matrix< var, R2, C2 > &v2)
 
+

Variable Documentation

+ +
+
+ + + + +
size_t length_
+
+ +

Definition at line 21 of file squared_distance.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + +
vari** v1_
+
+static
+
+ +

Definition at line 19 of file squared_distance.hpp.

+ +
+
+ +
+
+ + + + +
double* v2_
+
+ +

Definition at line 20 of file squared_distance.hpp.

+ +
+
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2rev_2matrix_2squared__distance_8hpp_source.html b/doc/api/html/agrad_2rev_2matrix_2squared__distance_8hpp_source.html new file mode 100644 index 00000000000..b1909927425 --- /dev/null +++ b/doc/api/html/agrad_2rev_2matrix_2squared__distance_8hpp_source.html @@ -0,0 +1,228 @@ + + + + + +Stan: src/stan/agrad/rev/matrix/squared_distance.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
squared_distance.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__REV__MATRIX__SQUARED_DISTANCE_HPP__
+
2 #define __STAN__AGRAD__REV__MATRIX__SQUARED_DISTANCE_HPP__
+
3 
+
4 #include <vector>
+ + + + +
9 #include <stan/agrad/rev/var.hpp>
+
10 #include <stan/agrad/rev/vari.hpp>
+ + +
13 
+
14 namespace stan {
+
15  namespace agrad {
+
16  namespace {
+
17  class squared_distance_vv_vari : public vari {
+
18  protected:
+
19  vari** v1_;
+
20  vari** v2_;
+
21  size_t length_;
+
22 
+
23  template<int R1,int C1,int R2,int C2>
+
24  inline static double var_squared_distance(const Eigen::Matrix<var,R1,C1> &v1,
+
25  const Eigen::Matrix<var,R2,C2> &v2) {
+
26  double result = 0;
+
27  for (typename Eigen::Matrix<var,R1,C1>::size_type i = 0;
+
28  i < v1.size(); i++) {
+
29  double diff = v1(i).vi_->val_ - v2(i).vi_->val_;
+
30  result += diff*diff;
+
31  }
+
32  return result;
+
33  }
+
34  public:
+
35  template<int R1,int C1,int R2,int C2>
+
36  squared_distance_vv_vari(const Eigen::Matrix<var,R1,C1> &v1,
+
37  const Eigen::Matrix<var,R2,C2> &v2)
+
38  : vari(var_squared_distance(v1, v2)), length_(v1.size())
+
39  {
+
40  v1_ = (vari**)memalloc_.alloc(length_*sizeof(vari*));
+
41  for (size_t i = 0; i < length_; i++)
+
42  v1_[i] = v1(i).vi_;
+
43 
+
44  v2_ = (vari**)memalloc_.alloc(length_*sizeof(vari*));
+
45  for (size_t i = 0; i < length_; i++)
+
46  v2_[i] = v2(i).vi_;
+
47  }
+
48  virtual void chain() {
+
49  for (size_t i = 0; i < length_; i++) {
+
50  double di = 2 * adj_ * (v1_[i]->val_ - v2_[i]->val_);
+
51  v1_[i]->adj_ += di;
+
52  v2_[i]->adj_ -= di;
+
53  }
+
54  }
+
55  };
+
56  class squared_distance_vd_vari : public vari {
+
57  protected:
+
58  vari** v1_;
+
59  double* v2_;
+
60  size_t length_;
+
61 
+
62  template<int R1,int C1,int R2,int C2>
+
63  inline static double var_squared_distance(const Eigen::Matrix<var,R1,C1> &v1,
+
64  const Eigen::Matrix<double,R2,C2> &v2) {
+
65  double result = 0;
+
66  for (typename Eigen::Matrix<var,R1,C1>::size_type i = 0;
+
67  i < v1.size(); i++) {
+
68  double diff = v1(i).vi_->val_ - v2(i);
+
69  result += diff*diff;
+
70  }
+
71  return result;
+
72  }
+
73  public:
+
74  template<int R1,int C1,int R2,int C2>
+
75  squared_distance_vd_vari(const Eigen::Matrix<var,R1,C1> &v1,
+
76  const Eigen::Matrix<double,R2,C2> &v2)
+
77  : vari(var_squared_distance(v1, v2)), length_(v1.size())
+
78  {
+
79  v1_ = (vari**)memalloc_.alloc(length_*sizeof(vari*));
+
80  for (size_t i = 0; i < length_; i++)
+
81  v1_[i] = v1(i).vi_;
+
82 
+
83  v2_ = (double*)memalloc_.alloc(length_*sizeof(double));
+
84  for (size_t i = 0; i < length_; i++)
+
85  v2_[i] = v2(i);
+
86  }
+
87  virtual void chain() {
+
88  for (size_t i = 0; i < length_; i++) {
+
89  v1_[i]->adj_ += 2 * adj_ * (v1_[i]->val_ - v2_[i]);
+
90  }
+
91  }
+
92  };
+
93  }
+
94 
+
95  template<int R1,int C1,int R2, int C2>
+
96  inline var squared_distance(const Eigen::Matrix<var, R1, C1>& v1,
+
97  const Eigen::Matrix<var, R2, C2>& v2) {
+
98  stan::math::validate_vector(v1,"squared_distance");
+
99  stan::math::validate_vector(v2,"squared_distance");
+
100  stan::math::validate_matching_sizes(v1,v2,"squared_distance");
+
101  return var(new squared_distance_vv_vari(v1,v2));
+
102  }
+
103  template<int R1,int C1,int R2, int C2>
+
104  inline var squared_distance(const Eigen::Matrix<var, R1, C1>& v1,
+
105  const Eigen::Matrix<double, R2, C2>& v2) {
+
106  stan::math::validate_vector(v1,"squared_distance");
+
107  stan::math::validate_vector(v2,"squared_distance");
+
108  stan::math::validate_matching_sizes(v1,v2,"squared_distance");
+
109  return var(new squared_distance_vd_vari(v1,v2));
+
110  }
+
111  template<int R1,int C1,int R2, int C2>
+
112  inline var squared_distance(const Eigen::Matrix<double, R1, C1>& v1,
+
113  const Eigen::Matrix<var, R2, C2>& v2) {
+
114  stan::math::validate_vector(v1,"squared_distance");
+
115  stan::math::validate_vector(v2,"squared_distance");
+
116  stan::math::validate_matching_sizes(v1,v2,"squared_distance");
+
117  return var(new squared_distance_vd_vari(v2,v1));
+
118  }
+
119  }
+
120 }
+
121 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2rev_2matrix_2stan__print_8hpp.html b/doc/api/html/agrad_2rev_2matrix_2stan__print_8hpp.html new file mode 100644 index 00000000000..fadcfb59ca6 --- /dev/null +++ b/doc/api/html/agrad_2rev_2matrix_2stan__print_8hpp.html @@ -0,0 +1,129 @@ + + + + + +Stan: src/stan/agrad/rev/matrix/stan_print.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan_print.hpp File Reference
+
+
+
#include <ostream>
+#include <stan/agrad/rev/var.hpp>
+
+

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+ + + +

+Functions

void stan::agrad::stan_print (std::ostream *o, const var &x)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2rev_2matrix_2stan__print_8hpp_source.html b/doc/api/html/agrad_2rev_2matrix_2stan__print_8hpp_source.html new file mode 100644 index 00000000000..ca985454ef7 --- /dev/null +++ b/doc/api/html/agrad_2rev_2matrix_2stan__print_8hpp_source.html @@ -0,0 +1,123 @@ + + + + + +Stan: src/stan/agrad/rev/matrix/stan_print.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan_print.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__REV__MATRIX__STAN_PRINT_HPP__
+
2 #define __STAN__AGRAD__REV__MATRIX__STAN_PRINT_HPP__
+
3 
+
4 #include <ostream>
+
5 #include <stan/agrad/rev/var.hpp>
+
6 
+
7 namespace stan {
+
8  namespace agrad {
+
9 
+
10  void stan_print(std::ostream* o, const var& x) {
+
11  *o << x.val();
+
12  }
+
13 
+
14  }
+
15 }
+
16 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2rev_2matrix_2sum_8hpp.html b/doc/api/html/agrad_2rev_2matrix_2sum_8hpp.html new file mode 100644 index 00000000000..4ed5c5055e0 --- /dev/null +++ b/doc/api/html/agrad_2rev_2matrix_2sum_8hpp.html @@ -0,0 +1,172 @@ + + + + + +Stan: src/stan/agrad/rev/matrix/sum.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
sum.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+ + + + + +

+Functions

template<int R, int C>
var stan::agrad::sum (const Eigen::Matrix< var, R, C > &m)
 Returns the sum of the coefficients of the specified matrix, column vector or row vector.
 
+

Variable Documentation

+ +
+
+ + + + +
size_t length_
+
+ +

Definition at line 18 of file sum.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + +
vari** v_
+
+static
+
+ +

Definition at line 17 of file sum.hpp.

+ +
+
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2rev_2matrix_2sum_8hpp_source.html b/doc/api/html/agrad_2rev_2matrix_2sum_8hpp_source.html new file mode 100644 index 00000000000..781c198b0e4 --- /dev/null +++ b/doc/api/html/agrad_2rev_2matrix_2sum_8hpp_source.html @@ -0,0 +1,177 @@ + + + + + +Stan: src/stan/agrad/rev/matrix/sum.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
sum.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__REV__MATRIX__SUM_HPP__
+
2 #define __STAN__AGRAD__REV__MATRIX__SUM_HPP__
+
3 
+
4 #include <vector>
+ + +
7 #include <stan/agrad/rev/var.hpp>
+ + +
10 
+
11 namespace stan {
+
12  namespace agrad {
+
13 
+
14  namespace {
+
15  class sum_v_vari : public vari{
+
16  protected:
+
17  vari** v_;
+
18  size_t length_;
+
19  inline static double var_sum(const var *v, size_t length) {
+
20  double result = 0;
+
21  for (size_t i = 0; i < length; i++)
+
22  result += v[i].vi_->val_;
+
23  return result;
+
24  }
+
25  template<typename Derived>
+
26  inline static double var_sum(const Eigen::DenseBase<Derived> &v) {
+
27  double result = 0;
+
28  for (int i = 0; i < v.size(); i++)
+
29  result += v(i).vi_->val_;
+
30  return result;
+
31  }
+
32  public:
+
33  template<typename Derived>
+
34  sum_v_vari(const Eigen::DenseBase<Derived> &v) :
+
35  vari(var_sum(v)), length_(v.size()) {
+
36  v_ = (vari**)memalloc_.alloc(length_*sizeof(vari*));
+
37  for (size_t i = 0; i < length_; i++)
+
38  v_[i] = v(i).vi_;
+
39  }
+
40  template<int R1,int C1>
+
41  sum_v_vari(const Eigen::Matrix<var,R1,C1> &v1) :
+
42  vari(var_sum(v1)), length_(v1.size()) {
+
43  v_ = (vari**)memalloc_.alloc(length_*sizeof(vari*));
+
44  for (size_t i = 0; i < length_; i++)
+
45  v_[i] = v1(i).vi_;
+
46  }
+
47  sum_v_vari(const var *v, size_t len) :
+
48  vari(var_sum(v,len)), length_(len) {
+
49  v_ = (vari**)memalloc_.alloc(length_*sizeof(vari*));
+
50  for (size_t i = 0; i < length_; i++)
+
51  v_[i] = v[i].vi_;
+
52  }
+
53  virtual void chain() {
+
54  for (size_t i = 0; i < length_; i++) {
+
55  v_[i]->adj_ += adj_;
+
56  }
+
57  }
+
58  };
+
59  }
+
60 
+
67  template <int R, int C>
+
68  inline var sum(const Eigen::Matrix<var,R,C>& m) {
+
69  if (m.size() == 0)
+
70  return 0.0;
+
71  return var(new sum_v_vari(m));
+
72  }
+
73 
+
74  }
+
75 }
+
76 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2rev_2matrix_2tcrossprod_8hpp.html b/doc/api/html/agrad_2rev_2matrix_2tcrossprod_8hpp.html new file mode 100644 index 00000000000..55482dbd397 --- /dev/null +++ b/doc/api/html/agrad_2rev_2matrix_2tcrossprod_8hpp.html @@ -0,0 +1,140 @@ + + + + + +Stan: src/stan/agrad/rev/matrix/tcrossprod.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
tcrossprod.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+ + + + +

+Functions

matrix_v stan::agrad::tcrossprod (const matrix_v &M)
 Returns the result of post-multiplying a matrix by its own transpose.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2rev_2matrix_2tcrossprod_8hpp_source.html b/doc/api/html/agrad_2rev_2matrix_2tcrossprod_8hpp_source.html new file mode 100644 index 00000000000..8cdcd52bc31 --- /dev/null +++ b/doc/api/html/agrad_2rev_2matrix_2tcrossprod_8hpp_source.html @@ -0,0 +1,161 @@ + + + + + +Stan: src/stan/agrad/rev/matrix/tcrossprod.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
tcrossprod.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__REV__MATRIX__TCROSSPROD_HPP__
+
2 #define __STAN__AGRAD__REV__MATRIX__TCROSSPROD_HPP__
+
3 
+
4 #include <vector>
+
5 #include <boost/math/tools/promotion.hpp>
+ + + + + +
11 #include <stan/agrad/rev/var.hpp>
+ + + + +
16 
+
17 namespace stan {
+
18  namespace agrad {
+
19 
+
26  inline matrix_v
+
27  tcrossprod(const matrix_v& M) {
+
28  if (M.rows() == 0)
+
29  return matrix_v(0,0);
+
30  // if (M.rows() == 1)
+
31  // return M * M.transpose();
+
32 
+
33  // WAS JUST THIS
+
34  // matrix_v result(M.rows(),M.rows());
+
35  // return result.setZero().selfadjointView<Eigen::Upper>().rankUpdate(M);
+
36 
+
37  matrix_v MMt(M.rows(),M.rows());
+
38 
+
39  vari** vs
+
40  = (vari**)memalloc_.alloc((M.rows() * M.cols() ) * sizeof(vari*));
+
41  int pos = 0;
+
42  for (int m = 0; m < M.rows(); ++m)
+
43  for (int n = 0; n < M.cols(); ++n)
+
44  vs[pos++] = M(m,n).vi_;
+
45  for (int m = 0; m < M.rows(); ++m)
+
46  MMt(m,m) = var(new dot_self_vari(vs + m * M.cols(),M.cols()));
+
47  for (int m = 0; m < M.rows(); ++m) {
+
48  for (int n = 0; n < m; ++n) {
+
49  MMt(m,n) = var(new dot_product_vari<var,var>(vs + m * M.cols(),
+
50  vs + n * M.cols(),
+
51  M.cols()));
+
52  MMt(n,m) = MMt(m,n);
+
53  }
+
54  }
+
55  return MMt;
+
56  }
+
57 
+
58  }
+
59 }
+
60 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2rev_2matrix_2trace__gen__inv__quad__form__ldlt_8hpp.html b/doc/api/html/agrad_2rev_2matrix_2trace__gen__inv__quad__form__ldlt_8hpp.html new file mode 100644 index 00000000000..f5d282a14dc --- /dev/null +++ b/doc/api/html/agrad_2rev_2matrix_2trace__gen__inv__quad__form__ldlt_8hpp.html @@ -0,0 +1,141 @@ + + + + + +Stan: src/stan/agrad/rev/matrix/trace_gen_inv_quad_form_ldlt.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
trace_gen_inv_quad_form_ldlt.hpp File Reference
+
+
+
#include <stan/math/matrix/Eigen.hpp>
+#include <stan/agrad/rev/var.hpp>
+#include <boost/type_traits/is_same.hpp>
+#include <boost/utility/enable_if.hpp>
+#include <stan/math/matrix/validate_multiplicable.hpp>
+#include <stan/math/matrix/validate_square.hpp>
+#include <stan/agrad/rev/matrix/trace_inv_quad_form_ldlt.hpp>
+
+

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+ + + + + +

+Functions

template<typename T1 , int R1, int C1, typename T2 , int R2, int C2, typename T3 , int R3, int C3>
boost::enable_if_c
+< boost::is_same< T1, var >
+::value||boost::is_same< T2,
+var >::value||boost::is_same
+< T3, var >::value, var >
+::type 
stan::agrad::trace_gen_inv_quad_form_ldlt (const Eigen::Matrix< T1, R1, C1 > &D, const stan::math::LDLT_factor< T2, R2, C2 > &A, const Eigen::Matrix< T3, R3, C3 > &B)
 Compute the trace of an inverse quadratic form.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2rev_2matrix_2trace__gen__inv__quad__form__ldlt_8hpp_source.html b/doc/api/html/agrad_2rev_2matrix_2trace__gen__inv__quad__form__ldlt_8hpp_source.html new file mode 100644 index 00000000000..5d6b90ca279 --- /dev/null +++ b/doc/api/html/agrad_2rev_2matrix_2trace__gen__inv__quad__form__ldlt_8hpp_source.html @@ -0,0 +1,144 @@ + + + + + +Stan: src/stan/agrad/rev/matrix/trace_gen_inv_quad_form_ldlt.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
trace_gen_inv_quad_form_ldlt.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__REV__MATRIX__TRACE_GEN_INV_QUAD_FORM_LDLT_HPP__
+
2 #define __STAN__AGRAD__REV__MATRIX__TRACE_GEN_INV_QUAD_FORM_LDLT_HPP__
+
3 
+ +
5 #include <stan/agrad/rev/var.hpp>
+
6 #include <boost/type_traits/is_same.hpp>
+
7 #include <boost/utility/enable_if.hpp>
+ + + +
11 
+
12 namespace stan {
+
13  namespace agrad {
+
14 
+
20  template <typename T1,int R1,int C1,typename T2,int R2,int C2,typename T3,int R3,int C3>
+
21  inline typename
+
22  boost::enable_if_c<boost::is_same<T1,var>::value ||
+
23  boost::is_same<T2,var>::value ||
+
24  boost::is_same<T3,var>::value, var>::type
+
25  trace_gen_inv_quad_form_ldlt(const Eigen::Matrix<T1,R1,C1> &D,
+
26  const stan::math::LDLT_factor<T2,R2,C2> &A,
+
27  const Eigen::Matrix<T3,R3,C3> &B)
+
28  {
+
29  stan::math::validate_square(D,"trace_gen_inv_quad_form_ldlt");
+
30  stan::math::validate_multiplicable(A,B,"trace_gen_inv_quad_form_ldlt");
+
31  stan::math::validate_multiplicable(B,D,"trace_gen_inv_quad_form_ldlt");
+
32 
+
33  trace_inv_quad_form_ldlt_impl<T2,R2,C2,T3,R3,C3> *_impl = new trace_inv_quad_form_ldlt_impl<T2,R2,C2,T3,R3,C3>(D,A,B);
+
34 
+
35  return var(new trace_inv_quad_form_ldlt_vari<T2,R2,C2,T3,R3,C3>(_impl));
+
36  }
+
37 
+
38 
+
39  }
+
40 }
+
41 
+
42 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2rev_2matrix_2trace__gen__quad__form_8hpp.html b/doc/api/html/agrad_2rev_2matrix_2trace__gen__quad__form_8hpp.html new file mode 100644 index 00000000000..ccf4eba25c4 --- /dev/null +++ b/doc/api/html/agrad_2rev_2matrix_2trace__gen__quad__form_8hpp.html @@ -0,0 +1,201 @@ + + + + + +Stan: src/stan/agrad/rev/matrix/trace_gen_quad_form.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
trace_gen_quad_form.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+ + + + +

+Functions

template<typename TD , int RD, int CD, typename TA , int RA, int CA, typename TB , int RB, int CB>
boost::enable_if_c
+< boost::is_same< TD, var >
+::value||boost::is_same< TA,
+var >::value||boost::is_same
+< TB, var >::value, var >
+::type 
stan::agrad::trace_gen_quad_form (const Eigen::Matrix< TD, RD, CD > &D, const Eigen::Matrix< TA, RA, CA > &A, const Eigen::Matrix< TB, RB, CB > &B)
 
+

Variable Documentation

+ +
+
+ + + + +
trace_gen_quad_form_vari_alloc<TD,RD,CD,TA,RA,CA,TB,RB,CB>* _impl
+
+ +

Definition at line 99 of file trace_gen_quad_form.hpp.

+ +
+
+ +
+
+ + + + +
Eigen::Matrix<TA,RA,CA> A_
+
+ +

Definition at line 37 of file trace_gen_quad_form.hpp.

+ +
+
+ +
+
+ + + + +
Eigen::Matrix<TB,RB,CB> B_
+
+ +

Definition at line 38 of file trace_gen_quad_form.hpp.

+ +
+
+ +
+
+ + + + +
Eigen::Matrix<TD,RD,CD> D_
+
+ +

Definition at line 36 of file trace_gen_quad_form.hpp.

+ +
+
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2rev_2matrix_2trace__gen__quad__form_8hpp_source.html b/doc/api/html/agrad_2rev_2matrix_2trace__gen__quad__form_8hpp_source.html new file mode 100644 index 00000000000..ae2704a1c3a --- /dev/null +++ b/doc/api/html/agrad_2rev_2matrix_2trace__gen__quad__form_8hpp_source.html @@ -0,0 +1,234 @@ + + + + + +Stan: src/stan/agrad/rev/matrix/trace_gen_quad_form.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
trace_gen_quad_form.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__REV__MATRIX__TRACE_GEN_QUAD_FORM_HPP__
+
2 #define __STAN__AGRAD__REV__MATRIX__TRACE_GEN_QUAD_FORM_HPP__
+
3 
+
4 #include <boost/utility/enable_if.hpp>
+
5 #include <boost/type_traits.hpp>
+ + + +
9 #include <stan/agrad/rev/var.hpp>
+
10 #include <stan/agrad/rev/vari.hpp>
+ + + + +
15 
+
16 namespace stan {
+
17  namespace agrad {
+
18  namespace {
+
19  template<typename TD,int RD,int CD,
+
20  typename TA,int RA,int CA,
+
21  typename TB,int RB,int CB>
+
22  class trace_gen_quad_form_vari_alloc : public chainable_alloc {
+
23  public:
+
24  trace_gen_quad_form_vari_alloc(const Eigen::Matrix<TD,RD,CD> &D,
+
25  const Eigen::Matrix<TA,RA,CA> &A,
+
26  const Eigen::Matrix<TB,RB,CB> &B)
+
27  : D_(D), A_(A), B_(B)
+
28  { }
+
29 
+
30  double compute() {
+ +
32  value_of(A_),
+
33  value_of(B_));
+
34  }
+
35 
+
36  Eigen::Matrix<TD,RD,CD> D_;
+
37  Eigen::Matrix<TA,RA,CA> A_;
+
38  Eigen::Matrix<TB,RB,CB> B_;
+
39  };
+
40 
+
41  template<typename TD,int RD,int CD,
+
42  typename TA,int RA,int CA,
+
43  typename TB,int RB,int CB>
+
44  class trace_gen_quad_form_vari : public vari {
+
45  protected:
+
46  static inline void computeAdjoints(const double &adj,
+
47  const Eigen::Matrix<double,RD,CD> &D,
+
48  const Eigen::Matrix<double,RA,CA> &A,
+
49  const Eigen::Matrix<double,RB,CB> &B,
+
50  Eigen::Matrix<var,RD,CD> *varD,
+
51  Eigen::Matrix<var,RA,CA> *varA,
+
52  Eigen::Matrix<var,RB,CB> *varB)
+
53  {
+
54  Eigen::Matrix<double,CA,CB> AtB;
+
55  Eigen::Matrix<double,RA,CB> BD;
+
56  if (varB || varA)
+
57  BD.noalias() = B*D;
+
58  if (varB || varD)
+
59  AtB.noalias() = A.transpose()*B;
+
60 
+
61  if (varB) {
+
62  Eigen::Matrix<double,RB,CB> adjB(adj*(A*BD + AtB*D.transpose()));
+
63  int i,j;
+
64  for (j = 0; j < B.cols(); j++)
+
65  for (i = 0; i < B.rows(); i++)
+
66  (*varB)(i,j).vi_->adj_ += adjB(i,j);
+
67  }
+
68  if (varA) {
+
69  Eigen::Matrix<double,RA,CA> adjA(adj*(B*BD.transpose()));
+
70  int i,j;
+
71  for (j = 0; j < A.cols(); j++)
+
72  for (i = 0; i < A.rows(); i++)
+
73  (*varA)(i,j).vi_->adj_ += adjA(i,j);
+
74  }
+
75  if (varD) {
+
76  Eigen::Matrix<double,RD,CD> adjD(adj*(B.transpose()*AtB));
+
77  int i,j;
+
78  for (j = 0; j < D.cols(); j++)
+
79  for (i = 0; i < D.rows(); i++)
+
80  (*varD)(i,j).vi_->adj_ += adjD(i,j);
+
81  }
+
82  }
+
83 
+
84 
+
85  public:
+
86  trace_gen_quad_form_vari(trace_gen_quad_form_vari_alloc<TD,RD,CD,TA,RA,CA,TB,RB,CB> *impl)
+
87  : vari(impl->compute()), _impl(impl) { }
+
88 
+
89  virtual void chain() {
+
90  computeAdjoints(adj_,
+
91  value_of(_impl->D_),
+
92  value_of(_impl->A_),
+
93  value_of(_impl->B_),
+
94  (Eigen::Matrix<var,RD,CD>*)(boost::is_same<TD,var>::value?(&_impl->D_):NULL),
+
95  (Eigen::Matrix<var,RA,CA>*)(boost::is_same<TA,var>::value?(&_impl->A_):NULL),
+
96  (Eigen::Matrix<var,RB,CB>*)(boost::is_same<TB,var>::value?(&_impl->B_):NULL));
+
97  }
+
98 
+
99  trace_gen_quad_form_vari_alloc<TD,RD,CD,TA,RA,CA,TB,RB,CB> *_impl;
+
100  };
+
101  }
+
102 
+
103  template<typename TD,int RD,int CD,
+
104  typename TA,int RA,int CA,
+
105  typename TB,int RB,int CB>
+
106  inline typename
+
107  boost::enable_if_c< boost::is_same<TD,var>::value ||
+
108  boost::is_same<TA,var>::value ||
+
109  boost::is_same<TB,var>::value,
+
110  var >::type
+
111  trace_gen_quad_form(const Eigen::Matrix<TD,RD,CD> &D,
+
112  const Eigen::Matrix<TA,RA,CA> &A,
+
113  const Eigen::Matrix<TB,RB,CB> &B)
+
114  {
+
115  stan::math::validate_square(A,"trace_gen_quad_form");
+
116  stan::math::validate_square(D,"trace_gen_quad_form");
+
117  stan::math::validate_multiplicable(A,B,"trace_gen_quad_form");
+
118  stan::math::validate_multiplicable(B,D,"trace_gen_quad_form");
+
119 
+
120  trace_gen_quad_form_vari_alloc<TD,RD,CD,TA,RA,CA,TB,RB,CB> *baseVari = new trace_gen_quad_form_vari_alloc<TD,RD,CD,TA,RA,CA,TB,RB,CB>(D,A,B);
+
121 
+
122  return var(new trace_gen_quad_form_vari<TD,RD,CD,TA,RA,CA,TB,RB,CB>(baseVari));
+
123  }
+
124  }
+
125 }
+
126 
+
127 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2rev_2matrix_2trace__inv__quad__form__ldlt_8hpp.html b/doc/api/html/agrad_2rev_2matrix_2trace__inv__quad__form__ldlt_8hpp.html new file mode 100644 index 00000000000..2a97e503d8f --- /dev/null +++ b/doc/api/html/agrad_2rev_2matrix_2trace__inv__quad__form__ldlt_8hpp.html @@ -0,0 +1,266 @@ + + + + + +Stan: src/stan/agrad/rev/matrix/trace_inv_quad_form_ldlt.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
trace_inv_quad_form_ldlt.hpp File Reference
+
+
+
#include <stan/math/matrix/Eigen.hpp>
+#include <stan/agrad/rev/var.hpp>
+#include <stan/agrad/rev/matrix/LDLT_alloc.hpp>
+#include <stan/agrad/rev/matrix/LDLT_factor.hpp>
+#include <boost/type_traits/is_same.hpp>
+#include <boost/utility/enable_if.hpp>
+#include <stan/math/matrix/validate_multiplicable.hpp>
+
+

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+ + + + + +

+Functions

template<typename T2 , int R2, int C2, typename T3 , int R3, int C3>
boost::enable_if_c
+< boost::is_same< T2, var >
+::value||boost::is_same< T3,
+var >::value, var >::type 
stan::agrad::trace_inv_quad_form_ldlt (const stan::math::LDLT_factor< T2, R2, C2 > &A, const Eigen::Matrix< T3, R3, C3 > &B)
 Compute the trace of an inverse quadratic form.
 
+

Variable Documentation

+ +
+
+ + + + +
trace_inv_quad_form_ldlt_impl<T2,R2,C2,T3,R3,C3>* _impl
+
+ +

Definition at line 147 of file trace_inv_quad_form_ldlt.hpp.

+ +
+
+ +
+
+ + + + +
stan::math::LDLT_factor<T2,R2,C2> _ldlt
+
+ +

Definition at line 80 of file trace_inv_quad_form_ldlt.hpp.

+ +
+
+ +
+
+ + + + +
double _value
+
+ +

Definition at line 86 of file trace_inv_quad_form_ldlt.hpp.

+ +
+
+ +
+
+ + + + +
Eigen::Matrix<vari*,R3,C3> _variB
+
+ +

Definition at line 83 of file trace_inv_quad_form_ldlt.hpp.

+ +
+
+ +
+
+ + + + +
Eigen::Matrix<vari*,Eigen::Dynamic,Eigen::Dynamic> _variD
+
+ +

Definition at line 82 of file trace_inv_quad_form_ldlt.hpp.

+ +
+
+ +
+
+ + + + +
Eigen::Matrix<double,R3,C3> AinvB_
+
+ +

Definition at line 84 of file trace_inv_quad_form_ldlt.hpp.

+ +
+
+ +
+
+ + + + +
Eigen::Matrix<double,C3,C3> C_
+
+ +

Definition at line 85 of file trace_inv_quad_form_ldlt.hpp.

+ +
+
+ +
+
+ + + + +
Eigen::Matrix<double,Eigen::Dynamic,Eigen::Dynamic> D_
+
+ +

Definition at line 81 of file trace_inv_quad_form_ldlt.hpp.

+ +
+
+ +
+
+ + + + +
const int Dtype_
+
+ +

Definition at line 79 of file trace_inv_quad_form_ldlt.hpp.

+ +
+
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2rev_2matrix_2trace__inv__quad__form__ldlt_8hpp_source.html b/doc/api/html/agrad_2rev_2matrix_2trace__inv__quad__form__ldlt_8hpp_source.html new file mode 100644 index 00000000000..b119b54f2a9 --- /dev/null +++ b/doc/api/html/agrad_2rev_2matrix_2trace__inv__quad__form__ldlt_8hpp_source.html @@ -0,0 +1,277 @@ + + + + + +Stan: src/stan/agrad/rev/matrix/trace_inv_quad_form_ldlt.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
trace_inv_quad_form_ldlt.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__REV__MATRIX__TRACE_INV_QUAD_FORM_LDLT_HPP__
+
2 #define __STAN__AGRAD__REV__MATRIX__TRACE_INV_QUAD_FORM_LDLT_HPP__
+
3 
+ +
5 #include <stan/agrad/rev/var.hpp>
+ + +
8 #include <boost/type_traits/is_same.hpp>
+
9 #include <boost/utility/enable_if.hpp>
+ +
11 
+
12 namespace stan {
+
13  namespace agrad {
+
14  namespace {
+
15  template <typename T2, int R2,int C2,typename T3,int R3,int C3>
+
16  class trace_inv_quad_form_ldlt_impl : public chainable_alloc {
+
17  protected:
+
18  inline void initializeB(const Eigen::Matrix<var,R3,C3> &B,bool haveD) {
+
19  Eigen::Matrix<double,R3,C3> Bd(B.rows(),B.cols());
+
20  _variB.resize(B.rows(),B.cols());
+
21  for (int j = 0; j < B.cols(); j++) {
+
22  for (int i = 0; i < B.rows(); i++) {
+
23  _variB(i,j) = B(i,j).vi_;
+
24  Bd(i,j) = B(i,j).val();
+
25  }
+
26  }
+
27  AinvB_ = _ldlt.solve(Bd);
+
28  if (haveD)
+
29  C_.noalias() = Bd.transpose()*AinvB_;
+
30  else
+
31  _value = (Bd.transpose()*AinvB_).trace();
+
32  }
+
33  inline void initializeB(const Eigen::Matrix<double,R3,C3> &B,bool haveD) {
+
34  AinvB_ = _ldlt.solve(B);
+
35  if (haveD)
+
36  C_.noalias() = B.transpose()*AinvB_;
+
37  else
+
38  _value = (B.transpose()*AinvB_).trace();
+
39  }
+
40 
+
41  template<int R1,int C1>
+
42  inline void initializeD(const Eigen::Matrix<var,R1,C1> &D) {
+
43  D_.resize(D.rows(),D.cols());
+
44  _variD.resize(D.rows(),D.cols());
+
45  for (int j = 0; j < D.cols(); j++) {
+
46  for (int i = 0; i < D.rows(); i++) {
+
47  _variD(i,j) = D(i,j).vi_;
+
48  D_(i,j) = D(i,j).val();
+
49  }
+
50  }
+
51  }
+
52  template<int R1,int C1>
+
53  inline void initializeD(const Eigen::Matrix<double,R1,C1> &D) {
+
54  D_ = D;
+
55  }
+
56 
+
57  public:
+
58  template<typename T1, int R1,int C1>
+
59  trace_inv_quad_form_ldlt_impl(const Eigen::Matrix<T1,R1,C1> &D,
+
60  const stan::math::LDLT_factor<T2,R2,C2> &A,
+
61  const Eigen::Matrix<T3,R3,C3> &B)
+
62  : Dtype_(boost::is_same<T1,var>::value?1:0),
+
63  _ldlt(A)
+
64  {
+
65  initializeB(B,true);
+
66  initializeD(D);
+
67 
+
68  _value = (D_*C_).trace();
+
69  }
+
70 
+
71  trace_inv_quad_form_ldlt_impl(const stan::math::LDLT_factor<T2,R2,C2> &A,
+
72  const Eigen::Matrix<T3,R3,C3> &B)
+
73  : Dtype_(2),
+
74  _ldlt(A)
+
75  {
+
76  initializeB(B,false);
+
77  }
+
78 
+
79  const int Dtype_; // 0 = double, 1 = var, 2 = missing
+
80  stan::math::LDLT_factor<T2,R2,C2> _ldlt;
+
81  Eigen::Matrix<double,Eigen::Dynamic,Eigen::Dynamic> D_;
+
82  Eigen::Matrix<vari*,Eigen::Dynamic,Eigen::Dynamic> _variD;
+
83  Eigen::Matrix<vari*,R3,C3> _variB;
+
84  Eigen::Matrix<double,R3,C3> AinvB_;
+
85  Eigen::Matrix<double,C3,C3> C_;
+
86  double _value;
+
87  };
+
88 
+
89  template <typename T2,int R2,int C2,typename T3,int R3,int C3>
+
90  class trace_inv_quad_form_ldlt_vari : public vari {
+
91  protected:
+
92  static inline void chainA(const double &adj,
+
93  trace_inv_quad_form_ldlt_impl<double,R2,C2,T3,R3,C3> *impl) {
+
94  }
+
95  static inline void chainB(const double &adj,
+
96  trace_inv_quad_form_ldlt_impl<T2,R2,C2,double,R3,C3> *impl) {
+
97  }
+
98 
+
99  static inline void chainA(const double &adj,
+
100  trace_inv_quad_form_ldlt_impl<var,R2,C2,T3,R3,C3> *impl) {
+
101  Eigen::Matrix<double,R2,C2> aA;
+
102 
+
103  if (impl->Dtype_ != 2)
+
104  aA.noalias() = -adj*(impl->AinvB_ * impl->D_.transpose() * impl->AinvB_.transpose());
+
105  else
+
106  aA.noalias() = -adj*(impl->AinvB_ * impl->AinvB_.transpose());
+
107 
+
108  for (int j = 0; j < aA.cols(); j++)
+
109  for (int i = 0; i < aA.rows(); i++)
+
110  impl->_ldlt._alloc->_variA(i,j)->adj_ += aA(i,j);
+
111  }
+
112  static inline void chainB(const double &adj,
+
113  trace_inv_quad_form_ldlt_impl<T2,R2,C2,var,R3,C3> *impl) {
+
114  Eigen::Matrix<double,R3,C3> aB;
+
115 
+
116  if (impl->Dtype_ != 2)
+
117  aB.noalias() = adj*impl->AinvB_*(impl->D_ + impl->D_.transpose());
+
118  else
+
119  aB.noalias() = 2*adj*impl->AinvB_;
+
120 
+
121  for (int j = 0; j < aB.cols(); j++)
+
122  for (int i = 0; i < aB.rows(); i++)
+
123  impl->_variB(i,j)->adj_ += aB(i,j);
+
124  }
+
125 
+
126  public:
+
127  trace_inv_quad_form_ldlt_vari(trace_inv_quad_form_ldlt_impl<T2,R2,C2,T3,R3,C3> *impl)
+
128  : vari(impl->_value), _impl(impl)
+
129  {}
+
130 
+
131  virtual void chain() {
+
132  // F = trace(D * B' * inv(A) * B)
+
133  // aA = -aF * inv(A') * B * D' * B' * inv(A')
+
134  // aB = aF*(inv(A) * B * D + inv(A') * B * D')
+
135  // aD = aF*(B' * inv(A) * B)
+
136  chainA(adj_, _impl);
+
137 
+
138  chainB(adj_, _impl);
+
139 
+
140  if (_impl->Dtype_ == 1) {
+
141  for (int j = 0; j < _impl->_variD.cols(); j++)
+
142  for (int i = 0; i < _impl->_variD.rows(); i++)
+
143  _impl->_variD(i,j)->adj_ += adj_*_impl->C_(i,j);
+
144  }
+
145  }
+
146 
+
147  trace_inv_quad_form_ldlt_impl<T2,R2,C2,T3,R3,C3> *_impl;
+
148  };
+
149 
+
150  }
+
151 
+
152 
+
158  template <typename T2,int R2,int C2,typename T3,int R3,int C3>
+
159  inline typename
+
160  boost::enable_if_c<boost::is_same<T2,var>::value ||
+
161  boost::is_same<T3,var>::value, var>::type
+
162  trace_inv_quad_form_ldlt(const stan::math::LDLT_factor<T2,R2,C2> &A,
+
163  const Eigen::Matrix<T3,R3,C3> &B)
+
164  {
+
165  stan::math::validate_multiplicable(A,B,"trace_inv_quad_form_ldlt");
+
166 
+
167  trace_inv_quad_form_ldlt_impl<T2,R2,C2,T3,R3,C3> *_impl = new trace_inv_quad_form_ldlt_impl<T2,R2,C2,T3,R3,C3>(A,B);
+
168 
+
169  return var(new trace_inv_quad_form_ldlt_vari<T2,R2,C2,T3,R3,C3>(_impl));
+
170  }
+
171 
+
172  }
+
173 }
+
174 
+
175 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2rev_2matrix_2trace__quad__form_8hpp.html b/doc/api/html/agrad_2rev_2matrix_2trace__quad__form_8hpp.html new file mode 100644 index 00000000000..3bfb67a44a2 --- /dev/null +++ b/doc/api/html/agrad_2rev_2matrix_2trace__quad__form_8hpp.html @@ -0,0 +1,185 @@ + + + + + +Stan: src/stan/agrad/rev/matrix/trace_quad_form.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
trace_quad_form.hpp File Reference
+
+
+
#include <boost/utility/enable_if.hpp>
+#include <boost/type_traits.hpp>
+#include <stan/math/matrix/Eigen.hpp>
+#include <stan/math/matrix/typedefs.hpp>
+#include <stan/agrad/rev/matrix/value_of.hpp>
+#include <stan/agrad/rev/var.hpp>
+#include <stan/agrad/rev/vari.hpp>
+#include <stan/agrad/rev/matrix/typedefs.hpp>
+#include <stan/math/matrix/trace_quad_form.hpp>
+#include <stan/math/matrix/validate_multiplicable.hpp>
+#include <stan/math/matrix/validate_square.hpp>
+
+

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+ + + + +

+Functions

template<typename TA , int RA, int CA, typename TB , int RB, int CB>
boost::enable_if_c
+< boost::is_same< TA, var >
+::value||boost::is_same< TB,
+var >::value, var >::type 
stan::agrad::trace_quad_form (const Eigen::Matrix< TA, RA, CA > &A, const Eigen::Matrix< TB, RB, CB > &B)
 
+

Variable Documentation

+ +
+
+ + + + +
trace_quad_form_vari_alloc<TA,RA,CA,TB,RB,CB>* _impl
+
+ +

Definition at line 88 of file trace_quad_form.hpp.

+ +
+
+ +
+
+ + + + +
Eigen::Matrix<TA,RA,CA> A_
+
+ +

Definition at line 32 of file trace_quad_form.hpp.

+ +
+
+ +
+
+ + + + +
Eigen::Matrix<TB,RB,CB> B_
+
+ +

Definition at line 33 of file trace_quad_form.hpp.

+ +
+
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2rev_2matrix_2trace__quad__form_8hpp_source.html b/doc/api/html/agrad_2rev_2matrix_2trace__quad__form_8hpp_source.html new file mode 100644 index 00000000000..ab02d16e69a --- /dev/null +++ b/doc/api/html/agrad_2rev_2matrix_2trace__quad__form_8hpp_source.html @@ -0,0 +1,219 @@ + + + + + +Stan: src/stan/agrad/rev/matrix/trace_quad_form.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
trace_quad_form.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__REV__MATRIX__TRACE_QUAD_FORM_HPP__
+
2 #define __STAN__AGRAD__REV__MATRIX__TRACE_QUAD_FORM_HPP__
+
3 
+
4 #include <boost/utility/enable_if.hpp>
+
5 #include <boost/type_traits.hpp>
+ + + +
9 #include <stan/agrad/rev/var.hpp>
+
10 #include <stan/agrad/rev/vari.hpp>
+ + + + +
15 
+
16 namespace stan {
+
17  namespace agrad {
+
18  namespace {
+
19  template<typename TA,int RA,int CA,typename TB,int RB,int CB>
+
20  class trace_quad_form_vari_alloc : public chainable_alloc {
+
21  public:
+
22  trace_quad_form_vari_alloc(const Eigen::Matrix<TA,RA,CA> &A,
+
23  const Eigen::Matrix<TB,RB,CB> &B)
+
24  : A_(A), B_(B)
+
25  { }
+
26 
+
27  double compute() {
+ +
29  value_of(B_));
+
30  }
+
31 
+
32  Eigen::Matrix<TA,RA,CA> A_;
+
33  Eigen::Matrix<TB,RB,CB> B_;
+
34  };
+
35 
+
36  template<typename TA,int RA,int CA,typename TB,int RB,int CB>
+
37  class trace_quad_form_vari : public vari {
+
38  protected:
+
39  static inline void chainA(Eigen::Matrix<double,RA,CA> &A,
+
40  const Eigen::Matrix<double,RB,CB> &Bd,
+
41  const double &adjC) {}
+
42  static inline void chainB(Eigen::Matrix<double,RB,CB> &B,
+
43  const Eigen::Matrix<double,RA,CA> &Ad,
+
44  const Eigen::Matrix<double,RB,CB> &Bd,
+
45  const double &adjC) {}
+
46 
+
47  static inline void chainA(Eigen::Matrix<var,RA,CA> &A,
+
48  const Eigen::Matrix<double,RB,CB> &Bd,
+
49  const double &adjC)
+
50  {
+
51  int i,j;
+
52  Eigen::Matrix<double,RA,CA> adjA(adjC*Bd*Bd.transpose());
+
53  for (j = 0; j < A.cols(); j++)
+
54  for (i = 0; i < A.rows(); i++)
+
55  A(i,j).vi_->adj_ += adjA(i,j);
+
56  }
+
57  static inline void chainB(Eigen::Matrix<var,RB,CB> &B,
+
58  const Eigen::Matrix<double,RA,CA> &Ad,
+
59  const Eigen::Matrix<double,RB,CB> &Bd,
+
60  const double &adjC)
+
61  {
+
62  int i,j;
+
63  Eigen::Matrix<double,RA,CA> adjB(adjC*(Ad + Ad.transpose())*Bd);
+
64  for (j = 0; j < B.cols(); j++)
+
65  for (i = 0; i < B.rows(); i++)
+
66  B(i,j).vi_->adj_ += adjB(i,j);
+
67  }
+
68 
+
69  inline void chainAB(Eigen::Matrix<TA,RA,CA> &A,
+
70  Eigen::Matrix<TB,RB,CB> &B,
+
71  const Eigen::Matrix<double,RA,CA> &Ad,
+
72  const Eigen::Matrix<double,RB,CB> &Bd,
+
73  const double &adjC)
+
74  {
+
75  chainA(A,Bd,adjC);
+
76  chainB(B,Ad,Bd,adjC);
+
77  }
+
78 
+
79 
+
80  public:
+
81  trace_quad_form_vari(trace_quad_form_vari_alloc<TA,RA,CA,TB,RB,CB> *impl)
+
82  : vari(impl->compute()), _impl(impl) { }
+
83 
+
84  virtual void chain() {
+
85  chainAB(_impl->A_, _impl->B_,
+
86  value_of(_impl->A_), value_of(_impl->B_),
+
87  adj_);
+
88  };
+
89 
+
90  trace_quad_form_vari_alloc<TA,RA,CA,TB,RB,CB> *_impl;
+
91  };
+
92  }
+
93 
+
94  template<typename TA,int RA,int CA,typename TB,int RB,int CB>
+
95  inline typename
+
96  boost::enable_if_c< boost::is_same<TA,var>::value ||
+
97  boost::is_same<TB,var>::value,
+
98  var >::type
+
99  trace_quad_form(const Eigen::Matrix<TA,RA,CA> &A,
+
100  const Eigen::Matrix<TB,RB,CB> &B)
+
101  {
+
102  stan::math::validate_square(A,"trace_quad_form");
+
103  stan::math::validate_multiplicable(A,B,"trace_quad_form");
+
104 
+
105  trace_quad_form_vari_alloc<TA,RA,CA,TB,RB,CB> *baseVari = new trace_quad_form_vari_alloc<TA,RA,CA,TB,RB,CB>(A,B);
+
106 
+
107  return var(new trace_quad_form_vari<TA,RA,CA,TB,RB,CB>(baseVari));
+
108  }
+
109  }
+
110 }
+
111 
+
112 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2rev_2matrix_2typedefs_8hpp.html b/doc/api/html/agrad_2rev_2matrix_2typedefs_8hpp.html new file mode 100644 index 00000000000..8c3d1119a34 --- /dev/null +++ b/doc/api/html/agrad_2rev_2matrix_2typedefs_8hpp.html @@ -0,0 +1,139 @@ + + + + + +Stan: src/stan/agrad/rev/matrix/typedefs.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
typedefs.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+ + + + + + + + + + +

+Typedefs

typedef Eigen::Matrix< var,
+Eigen::Dynamic, Eigen::Dynamic > 
stan::agrad::matrix_v
 The type of a matrix holding stan::agrad::var values.
 
typedef Eigen::Matrix< var,
+Eigen::Dynamic, 1 > 
stan::agrad::vector_v
 The type of a (column) vector holding stan::agrad::var values.
 
typedef Eigen::Matrix< var,
+1, Eigen::Dynamic > 
stan::agrad::row_vector_v
 The type of a row vector holding stan::agrad::var values.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2rev_2matrix_2typedefs_8hpp_source.html b/doc/api/html/agrad_2rev_2matrix_2typedefs_8hpp_source.html new file mode 100644 index 00000000000..79d7b562cda --- /dev/null +++ b/doc/api/html/agrad_2rev_2matrix_2typedefs_8hpp_source.html @@ -0,0 +1,132 @@ + + + + + +Stan: src/stan/agrad/rev/matrix/typedefs.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
typedefs.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__REV__MATRIX__TYPEDEFS_HPP__
+
2 #define __STAN__AGRAD__REV__MATRIX__TYPEDEFS_HPP__
+
3 
+ +
5 #include <stan/agrad/rev/var.hpp>
+
6 
+
7 namespace stan {
+
8  namespace agrad {
+ +
10 
+
15  typedef
+
16  Eigen::Matrix<var,Eigen::Dynamic,Eigen::Dynamic>
+ +
18 
+
23  typedef
+
24  Eigen::Matrix<var,Eigen::Dynamic,1>
+ +
26 
+
31  typedef
+
32  Eigen::Matrix<var,1,Eigen::Dynamic>
+ +
34 
+
35  }
+
36 }
+
37 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2rev_2matrix_2value__of_8hpp.html b/doc/api/html/agrad_2rev_2matrix_2value__of_8hpp.html new file mode 100644 index 00000000000..4d135959b96 --- /dev/null +++ b/doc/api/html/agrad_2rev_2matrix_2value__of_8hpp.html @@ -0,0 +1,136 @@ + + + + + +Stan: src/stan/agrad/rev/matrix/value_of.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
value_of.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+ + + + + + + + + +

+Functions

template<int R, int C>
const Eigen::Matrix< double, R,
+C > & 
stan::agrad::value_of (const Eigen::Matrix< double, R, C > &M)
 Convert a matrix to a matrix of doubles.
 
template<int R, int C>
Eigen::Matrix< double, R, C > stan::agrad::value_of (const Eigen::Matrix< var, R, C > &M)
 Convert a matrix to a matrix of doubles.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2rev_2matrix_2value__of_8hpp_source.html b/doc/api/html/agrad_2rev_2matrix_2value__of_8hpp_source.html new file mode 100644 index 00000000000..8184a150f84 --- /dev/null +++ b/doc/api/html/agrad_2rev_2matrix_2value__of_8hpp_source.html @@ -0,0 +1,133 @@ + + + + + +Stan: src/stan/agrad/rev/matrix/value_of.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
value_of.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__REV__MATRIX__VALUE_OF_HPP__
+
2 #define __STAN__AGRAD__REV__MATRIX__VALUE_OF_HPP__
+
3 
+ +
5 #include <stan/agrad/rev/var.hpp>
+
6 
+
7 namespace stan {
+
8  namespace agrad {
+
15  template<int R,int C>
+
16  inline const Eigen::Matrix<double,R,C> &value_of(const Eigen::Matrix<double,R,C> &M) {
+
17  return M;
+
18  }
+
19 
+
26  template<int R,int C>
+
27  inline Eigen::Matrix<double,R,C> value_of(const Eigen::Matrix<var,R,C> &M) {
+
28  int i,j;
+
29  Eigen::Matrix<double,R,C> Md(M.rows(),M.cols());
+
30  for (j = 0; j < M.cols(); j++)
+
31  for (i = 0; i < M.rows(); i++)
+
32  Md(i,j) = M(i,j).vi_->val_;
+
33  return Md;
+
34  }
+
35  }
+
36 }
+
37 
+
38 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2rev_2matrix_2variance_8hpp.html b/doc/api/html/agrad_2rev_2matrix_2variance_8hpp.html new file mode 100644 index 00000000000..92a7a11c9da --- /dev/null +++ b/doc/api/html/agrad_2rev_2matrix_2variance_8hpp.html @@ -0,0 +1,138 @@ + + + + + +Stan: src/stan/agrad/rev/matrix/variance.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
variance.hpp File Reference
+
+
+
#include <vector>
+#include <boost/math/tools/promotion.hpp>
+#include <stan/math/matrix/Eigen.hpp>
+#include <stan/math/matrix/mean.hpp>
+#include <stan/agrad/rev/var.hpp>
+#include <stan/agrad/rev/vari.hpp>
+#include <stan/agrad/rev/matrix/stored_gradient_vari.hpp>
+
+

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+ + + + + + + +

+Functions

var stan::agrad::variance (const std::vector< var > &v)
 Return the sample variance of the specified standard vector.
 
template<int R, int C>
var stan::agrad::variance (const Eigen::Matrix< var, R, C > &m)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2rev_2matrix_2variance_8hpp_source.html b/doc/api/html/agrad_2rev_2matrix_2variance_8hpp_source.html new file mode 100644 index 00000000000..e3191360bfc --- /dev/null +++ b/doc/api/html/agrad_2rev_2matrix_2variance_8hpp_source.html @@ -0,0 +1,176 @@ + + + + + +Stan: src/stan/agrad/rev/matrix/variance.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
variance.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__REV__MATRIX__VARIANCE_HPP__
+
2 #define __STAN__AGRAD__REV__MATRIX__VARIANCE_HPP__
+
3 
+
4 #include <vector>
+
5 #include <boost/math/tools/promotion.hpp>
+ + +
8 #include <stan/agrad/rev/var.hpp>
+ + +
11 
+
12 namespace stan {
+
13 
+
14  namespace agrad {
+
15 
+
16  namespace { // anonymous
+
17 
+
18  var calc_variance(size_t size,
+
19  const var* dtrs) {
+
20  vari** varis = (vari**) memalloc_.alloc(size * sizeof(vari*));
+
21  for (size_t i = 0; i < size; ++i)
+
22  varis[i] = dtrs[i].vi_;
+
23  double sum = 0.0;
+
24  for (size_t i = 0; i < size; ++i)
+
25  sum += dtrs[i].vi_->val_;
+
26  double mean = sum / size;
+
27  double sum_of_squares = 0;
+
28  for (size_t i = 0; i < size; ++i) {
+
29  double diff = dtrs[i].vi_->val_ - mean;
+
30  sum_of_squares += diff * diff;
+
31  }
+
32  double variance = sum_of_squares / (size - 1);
+
33  double* partials = (double*) memalloc_.alloc(size * sizeof(double));
+
34  double two_over_size_m1 = 2 / (size - 1);
+
35  for (size_t i = 0; i < size; ++i)
+
36  partials[i] = two_over_size_m1 * (dtrs[i].vi_->val_ - mean);
+
37  return var(new stored_gradient_vari(variance, size,
+
38  varis, partials));
+
39  }
+
40 
+
41  }
+
42 
+
50  var variance(const std::vector<var>& v) {
+ +
52  if (v.size() == 1) return 0;
+
53  return calc_variance(v.size(), &v[0]);
+
54  }
+
55 
+
56  /*
+
57  * Return the sample variance of the specified vector, row vector,
+
58  * or matrix. Raise domain error if size is not greater than
+
59  * zero.
+
60  *
+
61  * @tparam R number of rows
+
62  * @tparam C number of columns
+
63  * @param[in] m input matrix
+
64  * @return sample variance of specified matrix
+
65  */
+
66  template <int R, int C>
+
67  var variance(const Eigen::Matrix<var,R,C>& m) {
+ +
69  if (m.size() == 1) return 0;
+
70  return calc_variance(m.size(), &m(0));
+
71  }
+
72 
+
73  }
+
74 }
+
75 
+
76 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2rev_2matrix_8hpp.html b/doc/api/html/agrad_2rev_2matrix_8hpp.html new file mode 100644 index 00000000000..7a7f67fb7c2 --- /dev/null +++ b/doc/api/html/agrad_2rev_2matrix_8hpp.html @@ -0,0 +1,147 @@ + + + + + +Stan: src/stan/agrad/rev/matrix.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
matrix.hpp File Reference
+
+
+
#include <stan/agrad/rev/matrix/Eigen_NumTraits.hpp>
+#include <stan/agrad/rev/matrix/LDLT_alloc.hpp>
+#include <stan/agrad/rev/matrix/LDLT_factor.hpp>
+#include <stan/agrad/rev/matrix/crossprod.hpp>
+#include <stan/agrad/rev/matrix/determinant.hpp>
+#include <stan/agrad/rev/matrix/divide.hpp>
+#include <stan/agrad/rev/matrix/dot_product.hpp>
+#include <stan/agrad/rev/matrix/dot_self.hpp>
+#include <stan/agrad/rev/matrix/grad.hpp>
+#include <stan/agrad/rev/matrix/initialize_variable.hpp>
+#include <stan/agrad/rev/matrix/log_determinant.hpp>
+#include <stan/agrad/rev/matrix/log_determinant_ldlt.hpp>
+#include <stan/agrad/rev/matrix/log_determinant_spd.hpp>
+#include <stan/agrad/rev/matrix/log_softmax.hpp>
+#include <stan/agrad/rev/matrix/log_sum_exp.hpp>
+#include <stan/agrad/rev/matrix/mdivide_left.hpp>
+#include <stan/agrad/rev/matrix/mdivide_left_ldlt.hpp>
+#include <stan/agrad/rev/matrix/mdivide_left_spd.hpp>
+#include <stan/agrad/rev/matrix/mdivide_left_tri.hpp>
+#include <stan/agrad/rev/matrix/multiply.hpp>
+#include <stan/agrad/rev/matrix/multiply_lower_tri_self_transpose.hpp>
+#include <stan/agrad/rev/matrix/quad_form.hpp>
+#include <stan/agrad/rev/matrix/sd.hpp>
+#include <stan/agrad/rev/matrix/softmax.hpp>
+#include <stan/agrad/rev/matrix/sort.hpp>
+#include <stan/agrad/rev/matrix/squared_distance.hpp>
+#include <stan/agrad/rev/matrix/stan_print.hpp>
+#include <stan/agrad/rev/matrix/stored_gradient_vari.hpp>
+#include <stan/agrad/rev/matrix/sum.hpp>
+#include <stan/agrad/rev/matrix/tcrossprod.hpp>
+#include <stan/agrad/rev/matrix/to_var.hpp>
+#include <stan/agrad/rev/matrix/trace_gen_inv_quad_form_ldlt.hpp>
+#include <stan/agrad/rev/matrix/trace_gen_quad_form.hpp>
+#include <stan/agrad/rev/matrix/trace_inv_quad_form_ldlt.hpp>
+#include <stan/agrad/rev/matrix/trace_quad_form.hpp>
+#include <stan/agrad/rev/matrix/typedefs.hpp>
+#include <stan/agrad/rev/matrix/value_of.hpp>
+#include <stan/agrad/rev/matrix/variance.hpp>
+
+

Go to the source code of this file.

+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_2rev_2matrix_8hpp_source.html b/doc/api/html/agrad_2rev_2matrix_8hpp_source.html new file mode 100644 index 00000000000..f4863a8ee79 --- /dev/null +++ b/doc/api/html/agrad_2rev_2matrix_8hpp_source.html @@ -0,0 +1,150 @@ + + + + + +Stan: src/stan/agrad/rev/matrix.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
matrix.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__REV__MATRIX_HPP__
+
2 #define __STAN__AGRAD__REV__MATRIX_HPP__
+
3 
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
42 
+
43 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_8hpp.html b/doc/api/html/agrad_8hpp.html new file mode 100644 index 00000000000..379a742b58a --- /dev/null +++ b/doc/api/html/agrad_8hpp.html @@ -0,0 +1,109 @@ + + + + + +Stan: src/stan/agrad.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
agrad.hpp File Reference
+
+ +
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad_8hpp_source.html b/doc/api/html/agrad_8hpp_source.html new file mode 100644 index 00000000000..8d57481c879 --- /dev/null +++ b/doc/api/html/agrad_8hpp_source.html @@ -0,0 +1,119 @@ + + + + + +Stan: src/stan/agrad.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
agrad.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD_HPP__
+
2 #define __STAN__AGRAD_HPP__
+
3 
+
4 // This header shouldn't be included directly.
+
5 // For reverse mode autodiff, include:
+
6 // #include <stan/agrad/rev.hpp>
+
7 // #include <stan/agrad/rev/matrix.hpp>
+
8 // For forward mode autodiff, include:
+
9 // #include <stan/agrad/fwd.hpp>
+
10 // #include <stan/agrad/fwd/matrix.hpp>
+
11 
+
12 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad__thread__safe_8hpp.html b/doc/api/html/agrad__thread__safe_8hpp.html new file mode 100644 index 00000000000..d9c33b717a9 --- /dev/null +++ b/doc/api/html/agrad__thread__safe_8hpp.html @@ -0,0 +1,473 @@ + + + + + +Stan: src/stan/agrad/agrad_thread_safe.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
agrad_thread_safe.hpp File Reference
+
+
+
#include <stdio.h>
+#include <stdlib.h>
+#include <vector>
+#include <cmath>
+#include <cstddef>
+#include "stan/memory/stack_alloc.hpp"
+
+

Go to the source code of this file.

+ + + + + + + + +

+Classes

class  stan::agrad::vari
 The variable implementation base class. More...
 
class  stan::agrad::var
 Independent (input) and dependent (output) variables for gradients. More...
 
+ + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Functions

bool stan::agrad::operator== (const var &a, const var &b)
 Equality operator comparing two variables' values (C++).
 
bool stan::agrad::operator== (const var &a, const double &b)
 Equality operator comparing a variable's value and a double (C++).
 
bool stan::agrad::operator== (const double &a, const var &b)
 Equality operator comparing a scalar and a variable's value (C++).
 
bool stan::agrad::operator!= (const var &a, const var &b)
 Inequality operator comparing two variables' values (C++).
 
bool stan::agrad::operator!= (const var &a, const double &b)
 Inequality operator comparing a variable's value and a double (C++).
 
bool stan::agrad::operator!= (const double &a, const var &b)
 Inequality operator comparing a double and a variable's value (C++).
 
bool stan::agrad::operator< (const var &a, const var &b)
 Less than operator comparing variables' values (C++).
 
bool stan::agrad::operator< (const var &a, const double &b)
 Less than operator comparing variable's value and a double (C++).
 
bool stan::agrad::operator< (const double &a, const var &b)
 Less than operator comparing a double and variable's value (C++).
 
bool stan::agrad::operator> (const var &a, const var &b)
 Greater than operator comparing variables' values (C++).
 
bool stan::agrad::operator> (const var &a, const double &b)
 Greater than operator comparing variable's value and double (C++).
 
bool stan::agrad::operator> (const double &a, const var &b)
 Greater than operator comparing a double and a variable's value (C++).
 
bool stan::agrad::operator<= (const var &a, const var &b)
 Less than or equal operator comparing two variables' values (C++).
 
bool stan::agrad::operator<= (const var &a, const double &b)
 Less than or equal operator comparing a variable's value and a scalar (C++).
 
bool stan::agrad::operator<= (const double &a, const var &b)
 Less than or equal operator comparing a double and variable's value (C++).
 
bool stan::agrad::operator>= (const var &a, const var &b)
 Greater than or equal operator comparing two variables' values (C++).
 
bool stan::agrad::operator>= (const var &a, const double &b)
 Greater than or equal operator comparing variable's value and double (C++).
 
bool stan::agrad::operator>= (const double &a, const var &b)
 Greater than or equal operator comparing double and variable's value (C++).
 
bool stan::agrad::operator! (const var &a)
 Prefix logical negation for the value of variables (C++).
 
var stan::agrad::operator+ (const var &a)
 Unary plus operator for variables (C++).
 
var stan::agrad::operator- (const var &a)
 Unary negation operator for variables (C++).
 
var stan::agrad::operator+ (const var &a, const var &b)
 Addition operator for variables (C++).
 
var stan::agrad::operator+ (const var &a, const double &b)
 Addition operator for variable and scalar (C++).
 
var stan::agrad::operator+ (const double &a, const var &b)
 Addition operator for scalar and variable (C++).
 
var stan::agrad::operator- (const var &a, const var &b)
 Subtraction operator for variables (C++).
 
var stan::agrad::operator- (const var &a, const double &b)
 Subtraction operator for variable and scalar (C++).
 
var stan::agrad::operator- (const double &a, const var &b)
 Subtraction operator for scalar and variable (C++).
 
var stan::agrad::operator* (const var &a, const var &b)
 Multiplication operator for two variables (C++).
 
var stan::agrad::operator* (const var &a, const double &b)
 Multiplication operator for a variable and a scalar (C++).
 
var stan::agrad::operator* (const double &a, const var &b)
 Multiplication operator for a scalar and a variable (C++).
 
var stan::agrad::operator/ (const var &a, const var &b)
 Division operator for two variables (C++).
 
var stan::agrad::operator/ (const var &a, const double &b)
 Division operator for dividing a variable by a scalar (C++).
 
var stan::agrad::operator/ (const double &a, const var &b)
 Division operator for dividing a scalar by a variable (C++).
 
var & stan::agrad::operator++ (var &a)
 Prefix increment operator for variables (C++).
 
var stan::agrad::operator++ (var &a, int)
 Postfix increment operator for variables (C++).
 
var & stan::agrad::operator-- (var &a)
 Prefix decrement operator for variables (C++).
 
var stan::agrad::operator-- (var &a, int)
 Postfix decrement operator for variables (C++).
 
var stan::agrad::exp (const var &a)
 Return the exponentiation of the specified variable (cmath).
 
var stan::agrad::log (const var &a)
 Return the natural log of the specified variable (cmath).
 
var stan::agrad::log10 (const var &a)
 Return the base 10 log of the specified variable (cmath).
 
var stan::agrad::sqrt (const var &a)
 Return the square root of the specified variable (cmath).
 
var stan::agrad::pow (const var &base, const var &exponent)
 Return the base raised to the power of the exponent (cmath).
 
var stan::agrad::pow (const var &base, const double &exponent)
 Return the base variable raised to the power of the exponent scalar (cmath).
 
var stan::agrad::pow (const double &base, const var &exponent)
 Return the base scalar raised to the power of the exponent variable (cmath).
 
var stan::agrad::cos (const var &a)
 Return the cosine of a radian-scaled variable (cmath).
 
var stan::agrad::sin (const var &a)
 Return the sine of a radian-scaled variable (cmath).
 
var stan::agrad::tan (const var &a)
 Return the tangent of a radian-scaled variable (cmath).
 
var stan::agrad::acos (const var &a)
 Return the principal value of the arc cosine of a variable, in radians (cmath).
 
var stan::agrad::asin (const var &a)
 Return the principal value of the arc sine, in radians, of the specified variable (cmath).
 
var stan::agrad::atan (const var &a)
 Return the principal value of the arc tangent, in radians, of the specified variable (cmath).
 
var stan::agrad::atan2 (const var &a, const var &b)
 Return the principal value of the arc tangent, in radians, of the first variable divided by the second (cmath).
 
var stan::agrad::atan2 (const var &a, const double &b)
 Return the principal value of the arc tangent, in radians, of the first variable divided by the second scalar (cmath).
 
var stan::agrad::atan2 (const double &a, const var &b)
 Return the principal value of the arc tangent, in radians, of the first scalar divided by the second variable (cmath).
 
var stan::agrad::cosh (const var &a)
 Return the hyperbolic cosine of the specified variable (cmath).
 
var stan::agrad::sinh (const var &a)
 Return the hyperbolic sine of the specified variable (cmath).
 
var stan::agrad::tanh (const var &a)
 Return the hyperbolic tangent of the specified variable (cmath).
 
var stan::agrad::fabs (const var &a)
 Return the absolute value of the variable (cmath).
 
var stan::agrad::floor (const var &a)
 Return the floor of the specified variable (cmath).
 
var stan::agrad::ceil (const var &a)
 Return the ceiling of the specified variable (cmath).
 
var stan::agrad::fmod (const var &a, const var &b)
 Return the floating point remainder after dividing the first variable by the second (cmath).
 
var stan::agrad::fmod (const var &a, const double &b)
 Return the floating point remainder after dividing the the first variable by the second scalar (cmath).
 
var stan::agrad::fmod (const double &a, const var &b)
 Return the floating point remainder after dividing the first scalar by the second variable (cmath).
 
var stan::agrad::abs (const var &a)
 Return the absolute value of the variable (std).
 
+

Variable Documentation

+ +
+
+ + + + +
double ad_
+
+ +

Definition at line 189 of file agrad_thread_safe.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + +
vari* avi_
+
+static
+
+ +

Definition at line 155 of file agrad_thread_safe.hpp.

+ +
+
+ +
+
+ + + + +
double bd_
+
+ +

Definition at line 178 of file agrad_thread_safe.hpp.

+ +
+
+ +
+
+ + + + +
vari* bvi_
+
+ +

Definition at line 166 of file agrad_thread_safe.hpp.

+ +
+
+ +
+
+ + + + +
double cd_
+
+ +

Definition at line 217 of file agrad_thread_safe.hpp.

+ +
+
+ +
+
+ + + + +
vari* cvi_
+
+ +

Definition at line 203 of file agrad_thread_safe.hpp.

+ +
+
+ +
+
+ + + + +
const double exp_val_
+
+ +

Definition at line 457 of file agrad_thread_safe.hpp.

+ +
+
+ +
+
+ + + + +
memory::stack_alloc memalloc_
+
+ +

Definition at line 22 of file agrad_thread_safe.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + +
std::vector<vari*> var_stack_
+
+static
+
+ +

Definition at line 21 of file agrad_thread_safe.hpp.

+ +
+
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/agrad__thread__safe_8hpp_source.html b/doc/api/html/agrad__thread__safe_8hpp_source.html new file mode 100644 index 00000000000..a1a6e8c7f78 --- /dev/null +++ b/doc/api/html/agrad__thread__safe_8hpp_source.html @@ -0,0 +1,1156 @@ + + + + + +Stan: src/stan/agrad/agrad_thread_safe.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
agrad_thread_safe.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__AGRAD_HPP__
+
2 #define __STAN__AGRAD__AGRAD_HPP__
+
3 
+
4 #include <stdio.h>
+
5 #include <stdlib.h>
+
6 #include <vector>
+
7 #include <cmath>
+
8 #include <cstddef>
+ +
10 
+
11 // FIXME: Should include common defs, not this huge cut-and-paste!
+
12 
+
13 namespace stan {
+
14 
+
15  namespace agrad {
+
16 
+
17  class vari;
+
18 
+
19  namespace {
+
20  struct var_allocator {
+
21  std::vector<vari*> var_stack_;
+
22  memory::stack_alloc memalloc_;
+
23  inline void* alloc(size_t nbytes) {
+
24  return memalloc_.alloc(nbytes);
+
25  }
+
26  inline void recover() {
+
27  var_stack_.resize(0);
+ +
29  }
+
30  inline void free() {
+ +
32  }
+
33  };
+
34 #ifdef AGRAD_THREAD_SAFE
+
35  __thread
+
36 #endif
+
37  var_allocator* allocator_;
+
38  }
+
39 
+
53  class vari {
+
54  private:
+
55  friend class var;
+
56 
+
57  public:
+
58 
+
62  const double val_;
+
63 
+
68  double adj_;
+
69 
+
82  vari(const double x):
+
83  val_(x),
+
84  adj_(0.0) {
+
85  allocator_->var_stack_.push_back(this);
+
86  }
+
87 
+
93  virtual void chain() {
+
94  }
+
95 
+
105  static inline void* operator new(size_t nbytes) {
+
106  if (allocator_ == 0)
+
107  allocator_ = new var_allocator();
+
108  return allocator_->alloc(nbytes);
+
109  }
+
110 
+
114  static void recover_memory() {
+
115  return allocator_->recover();
+
116  // allocator_.var_stack_.resize(0);
+
117  // allocator_.memalloc_.recover_all();
+
118  }
+
119 
+
123  static void free_memory() {
+
124  allocator_->free();
+
125  // allocator_.memalloc_.free_all();
+
126  }
+
127 
+
128  private:
+
137  static void grad(vari* vi) {
+
138  std::vector<vari*>::iterator it = allocator_->var_stack_.end();
+
139  std::vector<vari*>::iterator begin = allocator_->var_stack_.begin();
+
140  // skip to root variable
+
141  for (; (it >= begin) && (*it != vi); --it)
+
142  ;
+
143  vi->adj_ = 1.0; // droot/droot = 1
+
144  // propagate derivates for remaining vars
+
145  for (; it >= begin; --it)
+
146  (*it)->chain();
+
147  }
+
148 
+
149  };
+
150 
+
151  namespace {
+
152 
+
153  class op_v_vari : public vari {
+
154  protected:
+
155  vari* avi_;
+
156  public:
+
157  op_v_vari(double f, vari* avi) :
+
158  vari(f),
+
159  avi_(avi) {
+
160  }
+
161  };
+
162 
+
163  class op_vv_vari : public vari {
+
164  protected:
+
165  vari* avi_;
+
166  vari* bvi_;
+
167  public:
+
168  op_vv_vari(double f, vari* avi, vari* bvi):
+
169  vari(f),
+
170  avi_(avi),
+
171  bvi_(bvi) {
+
172  }
+
173  };
+
174 
+
175  class op_vd_vari : public vari {
+
176  protected:
+
177  vari* avi_;
+
178  double bd_;
+
179  public:
+
180  op_vd_vari(double f, vari* avi, double b) :
+
181  vari(f),
+
182  avi_(avi),
+
183  bd_(b) {
+
184  }
+
185  };
+
186 
+
187  class op_dv_vari : public vari {
+
188  protected:
+
189  double ad_;
+
190  vari* bvi_;
+
191  public:
+
192  op_dv_vari(double f, double a, vari* bvi) :
+
193  vari(f),
+
194  ad_(a),
+
195  bvi_(bvi) {
+
196  }
+
197  };
+
198 
+
199  class op_vvv_vari : public vari {
+
200  protected:
+
201  vari* avi_;
+
202  vari* bvi_;
+
203  vari* cvi_;
+
204  public:
+
205  op_vvv_vari(double f, vari* avi, vari* bvi, vari* cvi) :
+
206  vari(f),
+
207  avi_(avi),
+
208  bvi_(bvi),
+
209  cvi_(cvi) {
+
210  }
+
211  };
+
212 
+
213  class op_vvd_vari : public vari {
+
214  protected:
+
215  vari* avi_;
+
216  vari* bvi_;
+
217  double cd_;
+
218  public:
+
219  op_vvd_vari(double f, vari* avi, vari* bvi, double c) :
+
220  vari(f),
+
221  avi_(avi),
+
222  bvi_(bvi),
+
223  cd_(c) {
+
224  }
+
225  };
+
226 
+
227  class op_vdv_vari : public vari {
+
228  protected:
+
229  vari* avi_;
+
230  double bd_;
+
231  vari* cvi_;
+
232  public:
+
233  op_vdv_vari(double f, vari* avi, double b, vari* cvi) :
+
234  vari(f),
+
235  avi_(avi),
+
236  bd_(b),
+
237  cvi_(cvi) {
+
238  }
+
239  };
+
240 
+
241  class op_vdd_vari : public vari {
+
242  protected:
+
243  vari* avi_;
+
244  double bd_;
+
245  double cd_;
+
246  public:
+
247  op_vdd_vari(double f, vari* avi, double b, double c) :
+
248  vari(f),
+
249  avi_(avi),
+
250  bd_(b),
+
251  cd_(c) {
+
252  }
+
253  };
+
254 
+
255  class op_dvv_vari : public vari {
+
256  protected:
+
257  double ad_;
+
258  vari* bvi_;
+
259  vari* cvi_;
+
260  public:
+
261  op_dvv_vari(double f, double a, vari* bvi, vari* cvi) :
+
262  vari(f),
+
263  ad_(a),
+
264  bvi_(bvi),
+
265  cvi_(cvi) {
+
266  }
+
267  };
+
268 
+
269  class op_dvd_vari : public vari {
+
270  protected:
+
271  double ad_;
+
272  vari* bvi_;
+
273  double cd_;
+
274  public:
+
275  op_dvd_vari(double f, double a, vari* bvi, double c) :
+
276  vari(f),
+
277  ad_(a),
+
278  bvi_(bvi),
+
279  cd_(c) {
+
280  }
+
281  };
+
282 
+
283  class op_ddv_vari : public vari {
+
284  protected:
+
285  double ad_;
+
286  double bd_;
+
287  vari* cvi_;
+
288  public:
+
289  op_ddv_vari(double f, double a, double b, vari* cvi) :
+
290  vari(f),
+
291  ad_(a),
+
292  bd_(b),
+
293  cvi_(cvi) {
+
294  }
+
295  };
+
296 
+
297  class neg_vari : public op_v_vari {
+
298  public:
+
299  neg_vari(vari* avi) :
+
300  op_v_vari(-(avi->val_), avi) {
+
301  }
+
302  void chain() {
+
303  avi_->adj_ -= adj_;
+
304  }
+
305  };
+
306 
+
307 
+
308  class add_vv_vari : public op_vv_vari {
+
309  public:
+
310  add_vv_vari(vari* avi, vari* bvi) :
+
311  op_vv_vari(avi->val_ + bvi->val_, avi, bvi) {
+
312  }
+
313  void chain() {
+
314  avi_->adj_ += adj_;
+
315  bvi_->adj_ += adj_;
+
316  }
+
317  };
+
318 
+
319  class add_vd_vari : public op_vd_vari {
+
320  public:
+
321  add_vd_vari(vari* avi, double b) :
+
322  op_vd_vari(avi->val_ + b, avi, b) {
+
323  }
+
324  void chain() {
+
325  avi_->adj_ += adj_;
+
326  }
+
327  };
+
328 
+
329  class increment_vari : public op_v_vari {
+
330  public:
+
331  increment_vari(vari* avi) :
+
332  op_v_vari(avi->val_ + 1.0, avi) {
+
333  }
+
334  void chain() {
+
335  avi_->adj_ += adj_;
+
336  }
+
337  };
+
338 
+
339  class decrement_vari : public op_v_vari {
+
340  public:
+
341  decrement_vari(vari* avi) :
+
342  op_v_vari(avi->val_ - 1.0, avi) {
+
343  }
+
344  void chain() {
+
345  avi_->adj_ += adj_;
+
346  }
+
347  };
+
348 
+
349  class subtract_vv_vari : public op_vv_vari {
+
350  public:
+
351  subtract_vv_vari(vari* avi, vari* bvi) :
+
352  op_vv_vari(avi->val_ - bvi->val_, avi, bvi) {
+
353  }
+
354  void chain() {
+
355  avi_->adj_ += adj_;
+
356  bvi_->adj_ -= adj_;
+
357  }
+
358  };
+
359 
+
360  class subtract_vd_vari : public op_vd_vari {
+
361  public:
+
362  subtract_vd_vari(vari* avi, double b) :
+
363  op_vd_vari(avi->val_ - b, avi, b) {
+
364  }
+
365  void chain() {
+
366  avi_->adj_ += adj_;
+
367  }
+
368  };
+
369 
+
370  class subtract_dv_vari : public op_dv_vari {
+
371  public:
+
372  subtract_dv_vari(double a, vari* bvi) :
+
373  op_dv_vari(a - bvi->val_, a, bvi) {
+
374  }
+
375  void chain() {
+
376  bvi_->adj_ -= adj_;
+
377  }
+
378  };
+
379 
+
380  class multiply_vv_vari : public op_vv_vari {
+
381  public:
+
382  multiply_vv_vari(vari* avi, vari* bvi) :
+
383  op_vv_vari(avi->val_ * bvi->val_, avi, bvi) {
+
384  }
+
385  void chain() {
+
386  avi_->adj_ += bvi_->val_ * adj_;
+
387  bvi_->adj_ += avi_->val_ * adj_;
+
388  }
+
389  };
+
390 
+
391  class multiply_vd_vari : public op_vd_vari {
+
392  public:
+
393  multiply_vd_vari(vari* avi, double b) :
+
394  op_vd_vari(avi->val_ * b, avi, b) {
+
395  }
+
396  void chain() {
+
397  avi_->adj_ += adj_ * bd_;
+
398  }
+
399  };
+
400 
+
401  // (a/b)' = a' * (1 / b) - b' * (a / [b * b])
+
402  class divide_vv_vari : public op_vv_vari {
+
403  public:
+
404  divide_vv_vari(vari* avi, vari* bvi) :
+
405  op_vv_vari(avi->val_ / bvi->val_, avi, bvi) {
+
406  }
+
407  void chain() {
+
408  avi_->adj_ += adj_ / bvi_->val_;
+
409  bvi_->adj_ -= adj_ * avi_->val_ / (bvi_->val_ * bvi_->val_);
+
410  }
+
411  };
+
412 
+
413  class divide_vd_vari : public op_vd_vari {
+
414  public:
+
415  divide_vd_vari(vari* avi, double b) :
+
416  op_vd_vari(avi->val_ / b, avi, b) {
+
417  }
+
418  void chain() {
+
419  avi_->adj_ += adj_ / bd_;
+
420  }
+
421  };
+
422 
+
423  class divide_dv_vari : public op_dv_vari {
+
424  public:
+
425  divide_dv_vari(double a, vari* bvi) :
+
426  op_dv_vari(a / bvi->val_, a, bvi) {
+
427  }
+
428  void chain() {
+
429  bvi_->adj_ -= adj_ * ad_ / (bvi_->val_ * bvi_->val_);
+
430  }
+
431  };
+
432 
+
433  class exp_vari : public op_v_vari {
+
434  public:
+
435  exp_vari(vari* avi) :
+
436  op_v_vari(std::exp(avi->val_),avi) {
+
437  }
+
438  void chain() {
+
439  avi_->adj_ += adj_ * val_;
+
440  }
+
441  };
+
442 
+
443  class log_vari : public op_v_vari {
+
444  public:
+
445  log_vari(vari* avi) :
+
446  op_v_vari(std::log(avi->val_),avi) {
+
447  }
+
448  void chain() {
+
449  avi_->adj_ += adj_ / avi_->val_;
+
450  }
+
451  };
+
452 
+
453  double LOG_10 = std::log(10.0);
+
454 
+
455  class log10_vari : public op_v_vari {
+
456  public:
+
457  const double exp_val_;
+
458  log10_vari(vari* avi) :
+
459  op_v_vari(std::log10(avi->val_),avi),
+
460  exp_val_(avi->val_) {
+
461  }
+
462  void chain() {
+
463  avi_->adj_ += adj_ / (LOG_10 * exp_val_);
+
464  }
+
465  };
+
466 
+
467  class sqrt_vari : public op_v_vari {
+
468  public:
+
469  sqrt_vari(vari* avi) :
+
470  op_v_vari(std::sqrt(avi->val_),avi) {
+
471  }
+
472  void chain() {
+
473  avi_->adj_ += adj_ / (2.0 * val_);
+
474  }
+
475  };
+
476 
+
477  class pow_vv_vari : public op_vv_vari {
+
478  public:
+
479  pow_vv_vari(vari* avi, vari* bvi) :
+
480  op_vv_vari(std::pow(avi->val_,bvi->val_),avi,bvi) {
+
481  }
+
482  void chain() {
+
483  if (avi_->val_ == 0.0) return; // partials zero, avoids /0 & log(0)
+
484  avi_->adj_ += adj_ * bvi_->val_ * val_ / avi_->val_;
+
485  bvi_->adj_ += adj_ * std::log(avi_->val_) * val_;
+
486  }
+
487  };
+
488 
+
489  class pow_vd_vari : public op_vd_vari {
+
490  public:
+
491  pow_vd_vari(vari* avi, double b) :
+
492  op_vd_vari(std::pow(avi->val_,b),avi,b) {
+
493  }
+
494  void chain() {
+
495  if (avi_->val_ == 0.0) return; // partials zero, avoids /0 & log(0)
+
496  avi_->adj_ += adj_ * bd_ * val_ / avi_->val_;
+
497  }
+
498  };
+
499 
+
500  class pow_dv_vari : public op_dv_vari {
+
501  public:
+
502  pow_dv_vari(double a, vari* bvi) :
+
503  op_dv_vari(std::pow(a,bvi->val_),a,bvi) {
+
504  }
+
505  void chain() {
+
506  if (ad_ == 0.0) return; // partials zero, avoids /0 & log(0)
+
507  bvi_->adj_ += adj_ * std::log(ad_) * val_;
+
508  }
+
509  };
+
510 
+
511  class cos_vari : public op_v_vari {
+
512  public:
+
513  cos_vari(vari* avi) :
+
514  op_v_vari(std::cos(avi->val_),avi) {
+
515  }
+
516  void chain() {
+
517  avi_->adj_ -= adj_ * std::sin(avi_->val_);
+
518  }
+
519  };
+
520 
+
521  class sin_vari : public op_v_vari {
+
522  public:
+
523  sin_vari(vari* avi) :
+
524  op_v_vari(std::sin(avi->val_),avi) {
+
525  }
+
526  void chain() {
+
527  avi_->adj_ += adj_ * std::cos(avi_->val_);
+
528  }
+
529  };
+
530 
+
531  class tan_vari : public op_v_vari {
+
532  public:
+
533  tan_vari(vari* avi) :
+
534  op_v_vari(std::tan(avi->val_),avi) {
+
535  }
+
536  void chain() {
+
537  avi_->adj_ += adj_ * (1.0 + val_ * val_);
+
538  }
+
539  };
+
540 
+
541  class acos_vari : public op_v_vari {
+
542  public:
+
543  acos_vari(vari* avi) :
+
544  op_v_vari(std::acos(avi->val_),avi) {
+
545  }
+
546  void chain() {
+
547  avi_->adj_ -= adj_ / std::sqrt(1.0 - (avi_->val_ * avi_->val_));
+
548  }
+
549  };
+
550 
+
551  class asin_vari : public op_v_vari {
+
552  public:
+
553  asin_vari(vari* avi) :
+
554  op_v_vari(std::asin(avi->val_),avi) {
+
555  }
+
556  void chain() {
+
557  avi_->adj_ += adj_ / std::sqrt(1.0 - (avi_->val_ * avi_->val_));
+
558  }
+
559  };
+
560 
+
561  class atan_vari : public op_v_vari {
+
562  public:
+
563  atan_vari(vari* avi) :
+
564  op_v_vari(std::atan(avi->val_),avi) {
+
565  }
+
566  void chain() {
+
567  avi_->adj_ += adj_ / (1.0 + (avi_->val_ * avi_->val_));
+
568  }
+
569  };
+
570 
+
571  class atan2_vv_vari : public op_vv_vari {
+
572  public:
+
573  atan2_vv_vari(vari* avi, vari* bvi) :
+
574  op_vv_vari(std::atan2(avi->val_,bvi->val_),avi,bvi) {
+
575  }
+
576  void chain() {
+
577  double a_sq_plus_b_sq = (avi_->val_ * avi_->val_) + (bvi_->val_ * bvi_->val_);
+
578  avi_->adj_ += bvi_->val_ / a_sq_plus_b_sq;
+
579  bvi_->adj_ -= avi_->val_ / a_sq_plus_b_sq;
+
580  }
+
581  };
+
582 
+
583  class atan2_vd_vari : public op_vd_vari {
+
584  public:
+
585  atan2_vd_vari(vari* avi, double b) :
+
586  op_vd_vari(std::atan2(avi->val_,b),avi,b) {
+
587  }
+
588  void chain() {
+
589  double a_sq_plus_b_sq = (avi_->val_ * avi_->val_) + (bd_ * bd_);
+
590  avi_->adj_ += bd_ / a_sq_plus_b_sq;
+
591  }
+
592  };
+
593 
+
594  class atan2_dv_vari : public op_dv_vari {
+
595  public:
+
596  atan2_dv_vari(double a, vari* bvi) :
+
597  op_dv_vari(std::atan2(a,bvi->val_),a,bvi) {
+
598  }
+
599  void chain() {
+
600  double a_sq_plus_b_sq = (ad_ * ad_) + (bvi_->val_ * bvi_->val_);
+
601  bvi_->adj_ -= ad_ / a_sq_plus_b_sq;
+
602  }
+
603  };
+
604 
+
605  class cosh_vari : public op_v_vari {
+
606  public:
+
607  cosh_vari(vari* avi) :
+
608  op_v_vari(std::cosh(avi->val_),avi) {
+
609  }
+
610  void chain() {
+
611  avi_->adj_ += adj_ * std::sinh(avi_->val_);
+
612  }
+
613  };
+
614 
+
615  class sinh_vari : public op_v_vari {
+
616  public:
+
617  sinh_vari(vari* avi) :
+
618  op_v_vari(std::sinh(avi->val_),avi) {
+
619  }
+
620  void chain() {
+
621  avi_->adj_ += adj_ * std::cosh(avi_->val_);
+
622  }
+
623  };
+
624 
+
625  class tanh_vari : public op_v_vari {
+
626  public:
+
627  tanh_vari(vari* avi) :
+
628  op_v_vari(std::tanh(avi->val_),avi) {
+
629  }
+
630  void chain() {
+
631  double cosh = std::cosh(avi_->val_);
+
632  avi_->adj_ += adj_ / (cosh * cosh);
+
633  }
+
634  };
+
635 
+
636 
+
637  class floor_vari : public vari {
+
638  public:
+
639  floor_vari(vari* avi) :
+
640  vari(std::floor(avi->val_)) {
+
641  }
+
642  };
+
643 
+
644  class ceil_vari : public vari {
+
645  public:
+
646  ceil_vari(vari* avi) :
+
647  vari(std::ceil(avi->val_)) {
+
648  }
+
649  };
+
650 
+
651  class fmod_vv_vari : public op_vv_vari {
+
652  public:
+
653  fmod_vv_vari(vari* avi, vari* bvi) :
+
654  op_vv_vari(std::fmod(avi->val_,bvi->val_),avi,bvi) {
+
655  }
+
656  void chain() {
+
657  avi_->adj_ += adj_;
+
658  bvi_->adj_ -= adj_ * static_cast<int>(avi_->val_ / bvi_->val_);
+
659  }
+
660  };
+
661 
+
662  class fmod_vd_vari : public op_v_vari {
+
663  public:
+
664  fmod_vd_vari(vari* avi, double b) :
+
665  op_v_vari(std::fmod(avi->val_,b),avi) {
+
666  }
+
667  void chain() {
+
668  avi_->adj_ += adj_;
+
669  }
+
670  };
+
671 
+
672  class fmod_dv_vari : public op_dv_vari {
+
673  public:
+
674  fmod_dv_vari(double a, vari* bvi) :
+
675  op_dv_vari(std::fmod(a,bvi->val_),a,bvi) {
+
676  }
+
677  void chain() {
+
678  int d = static_cast<int>(ad_ / bvi_->val_);
+
679  bvi_->adj_ -= adj_ * d;
+
680  }
+
681  };
+
682 
+
683 
+
684 
+
685 
+
686 
+
687  }
+
688 
+
689  // ********************* vari UP, var DOWN ***********************************************************
+
690 
+
691 
+
701  class var {
+
702  public:
+
703 
+
704  typedef double Scalar;
+
705 
+ +
714 
+
720  explicit var(vari* vi) :
+
721  vi_(vi) {
+
722  }
+
723 
+
731  var() :
+
732  vi_(0) {
+
733  }
+
734 
+
741  var(bool b) :
+
742  vi_(new vari(static_cast<double>(b))) {
+
743  }
+
744 
+
751  var(char c) :
+
752  vi_(new vari(static_cast<double>(c))) {
+
753  }
+
754 
+
761  var(short n) :
+
762  vi_(new vari(static_cast<double>(n))) {
+
763  }
+
764 
+
771  var(unsigned short n) :
+
772  vi_(new vari(static_cast<double>(n))) {
+
773  }
+
774 
+
781  var(int n) :
+
782  vi_(new vari(static_cast<double>(n))) {
+
783  }
+
784 
+
791  var(unsigned int n) :
+
792  vi_(new vari(static_cast<double>(n))) {
+
793  }
+
794 
+
801  var(long int n) :
+
802  vi_(new vari(static_cast<double>(n))) {
+
803  }
+
804 
+
811  var(unsigned long int n) :
+
812  vi_(new vari(static_cast<double>(n))) {
+
813  }
+
814 
+
821  var(float x) :
+
822  vi_(new vari(static_cast<double>(x))) {
+
823  }
+
824 
+
830  var(double x) :
+
831  vi_(new vari(x)) {
+
832  }
+
833 
+
840  var(long double x) :
+
841  vi_(new vari(static_cast<double>(x))) {
+
842  }
+
843 
+
849  inline double val() const {
+
850  return vi_->val_;
+
851  }
+
852 
+
865  void grad(std::vector<var>& x,
+
866  std::vector<double>& g) {
+
867  vari::grad(vi_);
+
868  g.resize(x.size());
+
869  for (size_t i = 0U; i < x.size(); ++i)
+
870  g[i] = x[i].vi_->adj_;
+ +
872  }
+
873 
+
890  void grad() {
+
891  vari::grad(vi_);
+ +
893  }
+
894 
+
895  // COMPOUND ASSIGNMENT OPERATORS
+
896 
+
907  inline var& operator+=(const var& b) {
+
908  vi_ = new add_vv_vari(vi_,b.vi_);
+
909  return *this;
+
910  }
+
911 
+
922  inline var& operator+=(const double& b) {
+
923  vi_ = new add_vd_vari(vi_,b);
+
924  return *this;
+
925  }
+
926 
+
938  inline var& operator-=(const var& b) {
+
939  vi_ = new subtract_vv_vari(vi_,b.vi_);
+
940  return *this;
+
941  }
+
942 
+
954  inline var& operator-=(const double& b) {
+
955  vi_ = new subtract_vd_vari(vi_,b);
+
956  return *this;
+
957  }
+
958 
+
970  inline var& operator*=(const var& b) {
+
971  vi_ = new multiply_vv_vari(vi_,b.vi_);
+
972  return *this;
+
973  }
+
974 
+
986  inline var& operator*=(const double& b) {
+
987  vi_ = new multiply_vd_vari(vi_,b);
+
988  return *this;
+
989  }
+
990 
+
1001  inline var& operator/=(const var& b) {
+
1002  vi_ = new divide_vv_vari(vi_,b.vi_);
+
1003  return *this;
+
1004  }
+
1005 
+
1017  inline var& operator/=(const double& b) {
+
1018  vi_ = new divide_vd_vari(vi_,b);
+
1019  return *this;
+
1020  };
+
1021 
+
1022 
+
1023  };
+
1024 
+
1025  // COMPARISON OPERATORS
+
1026 
+
1035  inline bool operator==(const var& a, const var& b) {
+
1036  return a.val() == b.val();
+
1037  }
+
1038 
+
1048  inline bool operator==(const var& a, const double& b) {
+
1049  return a.val() == b;
+
1050  }
+
1051 
+
1060  inline bool operator==(const double& a, const var& b) {
+
1061  return a == b.val();
+
1062  }
+
1063 
+
1072  inline bool operator!=(const var& a, const var& b) {
+
1073  return a.val() != b.val();
+
1074  }
+
1075 
+
1085  inline bool operator!=(const var& a, const double& b) {
+
1086  return a.val() != b;
+
1087  }
+
1088 
+
1098  inline bool operator!=(const double& a, const var& b) {
+
1099  return a != b.val();
+
1100  }
+
1101 
+
1109  inline bool operator<(const var& a, const var& b) {
+
1110  return a.val() < b.val();
+
1111  }
+
1112 
+
1121  inline bool operator<(const var& a, const double& b) {
+
1122  return a.val() < b;
+
1123  }
+
1124 
+
1133  inline bool operator<(const double& a, const var& b) {
+
1134  return a < b.val();
+
1135  }
+
1136 
+
1144  inline bool operator>(const var& a, const var& b) {
+
1145  return a.val() > b.val();
+
1146  }
+
1147 
+
1156  inline bool operator>(const var& a, const double& b) {
+
1157  return a.val() > b;
+
1158  }
+
1159 
+
1168  inline bool operator>(const double& a, const var& b) {
+
1169  return a > b.val();
+
1170  }
+
1171 
+
1181  inline bool operator<=(const var& a, const var& b) {
+
1182  return a.val() <= b.val();
+
1183  }
+
1184 
+
1194  inline bool operator<=(const var& a, const double& b) {
+
1195  return a.val() <= b;
+
1196  }
+
1197 
+
1207  inline bool operator<=(const double& a, const var& b) {
+
1208  return a <= b.val();
+
1209  }
+
1210 
+
1220  inline bool operator>=(const var& a, const var& b) {
+
1221  return a.val() >= b.val();
+
1222  }
+
1223 
+
1233  inline bool operator>=(const var& a, const double& b) {
+
1234  return a.val() >= b;
+
1235  }
+
1236 
+
1246  inline bool operator>=(const double& a, const var& b) {
+
1247  return a >= b.val();
+
1248  }
+
1249 
+
1250  // LOGICAL OPERATORS
+
1251 
+
1265  inline bool operator!(const var& a) {
+
1266  return !a.val();
+
1267  }
+
1268 
+
1269  // ARITHMETIC OPERATORS
+
1270 
+
1286  inline var operator+(const var& a) {
+
1287  return a;
+
1288  }
+
1289 
+
1298  inline var operator-(const var& a) {
+
1299  return var(new neg_vari(a.vi_));
+
1300  }
+
1301 
+
1315  inline var operator+(const var& a, const var& b) {
+
1316  return var(new add_vv_vari(a.vi_,b.vi_));
+
1317  }
+
1318 
+
1319 
+
1331  inline var operator+(const var& a, const double& b) {
+
1332  return var(new add_vd_vari(a.vi_,b));
+
1333  }
+
1334 
+
1346  inline var operator+(const double& a, const var& b) {
+
1347  return var(new add_vd_vari(b.vi_,a)); // by symmetry
+
1348  }
+
1349 
+
1364  inline var operator-(const var& a, const var& b) {
+
1365  return var(new subtract_vv_vari(a.vi_,b.vi_));
+
1366  }
+
1367 
+
1379  inline var operator-(const var& a, const double& b) {
+
1380  return var(new subtract_vd_vari(a.vi_,b));
+
1381  }
+
1382 
+
1394  inline var operator-(const double& a, const var& b) {
+
1395  return var(new subtract_dv_vari(a,b.vi_));
+
1396  }
+
1397 
+
1411  inline var operator*(const var& a, const var& b) {
+
1412  return var(new multiply_vv_vari(a.vi_,b.vi_));
+
1413  }
+
1414 
+
1426  inline var operator*(const var& a, const double& b) {
+
1427  return var(new multiply_vd_vari(a.vi_,b));
+
1428  }
+
1429 
+
1441  inline var operator*(const double& a, const var& b) {
+
1442  return var(new multiply_vd_vari(b.vi_,a)); // by symmetry
+
1443  }
+
1444 
+
1459  inline var operator/(const var& a, const var& b) {
+
1460  return var(new divide_vv_vari(a.vi_,b.vi_));
+
1461  }
+
1462 
+
1474  inline var operator/(const var& a, const double& b) {
+
1475  return var(new divide_vd_vari(a.vi_,b));
+
1476  }
+
1477 
+
1489  inline var operator/(const double& a, const var& b) {
+
1490  return var(new divide_dv_vari(a,b.vi_));
+
1491  }
+
1492 
+
1502  inline var& operator++(var& a) {
+
1503  a.vi_ = new increment_vari(a.vi_);
+
1504  return a;
+
1505  }
+
1506 
+
1520  inline var operator++(var& a, int /*dummy*/) {
+
1521  var temp(a);
+
1522  a.vi_ = new increment_vari(a.vi_);
+
1523  return temp;
+
1524  }
+
1525 
+
1539  inline var& operator--(var& a) {
+
1540  a.vi_ = new decrement_vari(a.vi_);
+
1541  return a;
+
1542  }
+
1543 
+
1557  inline var operator--(var& a, int /*dummy*/) {
+
1558  var temp(a);
+
1559  a.vi_ = new decrement_vari(a.vi_);
+
1560  return temp;
+
1561  }
+
1562 
+
1563  // CMATH EXP AND LOG
+
1564 
+
1571  inline var exp(const var& a) {
+
1572  return var(new exp_vari(a.vi_));
+
1573  }
+
1574 
+
1585  inline var log(const var& a) {
+
1586  return var(new log_vari(a.vi_));
+
1587  }
+
1588 
+
1599  inline var log10(const var& a) {
+
1600  return var(new log10_vari(a.vi_));
+
1601  }
+
1602 
+
1603 
+
1604  // POWER FUNCTIONS
+
1605 
+
1616  inline var sqrt(const var& a) {
+
1617  return var(new sqrt_vari(a.vi_));
+
1618  }
+
1619 
+
1633  inline var pow(const var& base, const var& exponent) {
+
1634  return var(new pow_vv_vari(base.vi_,exponent.vi_));
+
1635  }
+
1636 
+
1649  inline var pow(const var& base, const double& exponent) {
+
1650  return var(new pow_vd_vari(base.vi_,exponent));
+
1651  }
+
1652 
+
1665  inline var pow(const double& base, const var& exponent) {
+
1666  return var(new pow_dv_vari(base,exponent.vi_));
+
1667  }
+
1668 
+
1669 
+
1670  // TRIG FUNCTIONS
+
1671 
+
1682  inline var cos(const var& a) {
+
1683  return var(new cos_vari(a.vi_));
+
1684  }
+
1685 
+
1696  inline var sin(const var& a) {
+
1697  return var(new sin_vari(a.vi_));
+
1698  }
+
1699 
+
1710  inline var tan(const var& a) {
+
1711  return var(new tan_vari(a.vi_));
+
1712  }
+
1713 
+
1725  inline var acos(const var& a) {
+
1726  return var(new acos_vari(a.vi_));
+
1727  }
+
1728 
+
1740  inline var asin(const var& a) {
+
1741  return var(new asin_vari(a.vi_));
+
1742  }
+
1743 
+
1755  inline var atan(const var& a) {
+
1756  return var(new atan_vari(a.vi_));
+
1757  }
+
1758 
+
1774  inline var atan2(const var& a, const var& b) {
+
1775  return var(new atan2_vv_vari(a.vi_,b.vi_));
+
1776  }
+
1777 
+
1790  inline var atan2(const var& a, const double& b) {
+
1791  return var(new atan2_vd_vari(a.vi_,b));
+
1792  }
+
1793 
+
1806  inline var atan2(const double& a, const var& b) {
+
1807  return var(new atan2_dv_vari(a,b.vi_));
+
1808  }
+
1809 
+
1810  // HYPERBOLIC FUNCTIONS
+
1811 
+
1822  inline var cosh(const var& a) {
+
1823  return var(new cosh_vari(a.vi_));
+
1824  }
+
1825 
+
1836  inline var sinh(const var& a) {
+
1837  return var(new sinh_vari(a.vi_));
+
1838  }
+
1839 
+
1850  inline var tanh(const var& a) {
+
1851  return var(new tanh_vari(a.vi_));
+
1852  }
+
1853 
+
1854 
+
1855  // ROUNDING FUNCTIONS
+
1856 
+
1873  inline var fabs(const var& a) {
+
1874  // cut-and-paste from abs()
+
1875  if (a.val() > 0.0)
+
1876  return a;
+
1877  if (a.val() < 0.0)
+
1878  return var(new neg_vari(a.vi_));
+
1879  return var(new vari(0.0));
+
1880  }
+
1881 
+
1900  inline var floor(const var& a) {
+
1901  return var(new floor_vari(a.vi_));
+
1902  }
+
1903 
+
1922  inline var ceil(const var& a) {
+
1923  return var(new ceil_vari(a.vi_));
+
1924  }
+
1925 
+
1943  inline var fmod(const var& a, const var& b) {
+
1944  return var(new fmod_vv_vari(a.vi_,b.vi_));
+
1945  }
+
1946 
+
1960  inline var fmod(const var& a, const double& b) {
+
1961  return var(new fmod_vd_vari(a.vi_,b));
+
1962  }
+
1963 
+
1977  inline var fmod(const double& a, const var& b) {
+
1978  return var(new fmod_dv_vari(a,b.vi_));
+
1979  }
+
1980 
+
1981 
+
1982  // STD LIB FUNCTIONS
+
1983 
+
1998  inline var abs(const var& a) {
+
1999  // cut-and-paste from fabs()
+
2000  if (a.val() > 0.0)
+
2001  return a;
+
2002  if (a.val() < 0.0)
+
2003  return var(new neg_vari(a.vi_));
+
2004  return var(new vari(0.0));
+
2005  }
+
2006 
+
2007  }
+
2008 
+
2009 }
+
2010 
+
2011 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/annotated.html b/doc/api/html/annotated.html new file mode 100644 index 00000000000..4be46e6e10d --- /dev/null +++ b/doc/api/html/annotated.html @@ -0,0 +1,501 @@ + + + + + +Stan: Class List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + +
+ + + + +
+ +
+ +
+
+
Class List
+
+
+
Here are the classes, structs, unions and interfaces with brief descriptions:
+
[detail level 1234]
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
oNboostReimplementing boost functionality
|\NmathReimplmeneting boost functionality for stan::agrad::var and and bugs in classification of integer types
oNEigen(Expert) Numerical traits for algorithmic differentiation variables
|oNinternal(Expert) Product traits for algorithmic differentiation variables
|\CNumTraits< stan::agrad::var >Numerical traits template override for Eigen for automatic gradient variables
oNstanProbability, optimization and sampling library
|oNagradFunction gradients via reverse-mode automatic differentiation
|oNgmDirected graphical model compiler
|oNioInput/output utilities
|oNmathMatrices and templated mathematical functions
|oNmcmcMarkov chain Monte Carlo samplers
|oNmemory(Expert) Allocate, free, and manage underlying system memory
|oNmodelFor compiling models
|oNoptimization
|oNprobTemplated probability distributions
|oCis_constantMetaprogramming struct to detect whether a given type is constant in the mathematical sense (not the C++ const sense)
|oCis_constant_structMetaprogram to determine if a type has a base scalar type that can be assigned to type double
|oCis_constant_struct< std::vector< T > >
|oCis_constant_struct< Eigen::Matrix< T, R, C > >
|oCis_constant_struct< Eigen::Block< T > >
|oCis_vector
|oCis_vector< const T >
|oCis_vector< std::vector< T > >
|oCis_vector< Eigen::Matrix< T, Eigen::Dynamic, 1 > >
|oCis_vector< Eigen::Matrix< T, 1, Eigen::Dynamic > >
|oCscalar_typeMetaprogram structure to determine the base scalar type of a template argument
|oCsize_of_helper
|oCsize_of_helper< T, true >
|oCscalar_type< Eigen::Matrix< T, Eigen::Dynamic, Eigen::Dynamic > >
|oCscalar_type< T * >
|oCis_vector_like
|oCis_vector_like< T * >
|oCis_vector_like< const T >
|oCis_vector_like< Eigen::Matrix< T, Eigen::Dynamic, Eigen::Dynamic > >
|oCVectorViewVectorView is a template metaprogram that takes its argument and allows it to be used like a vector
|oCVectorView< const T, is_array, throw_if_accessed >VectorView that has const correctness
|oCVectorView< const double, false, false >
|oCDoubleVectorViewDoubleVectorView allocates double values to be used as intermediate values
|oCDoubleVectorView< true, false >
|oCDoubleVectorView< true, true >
|oCreturn_typeMetaprogram to calculate the base scalar return type resulting from promoting all the scalar types of the template parameters
|oCis_fvar
|oCis_fvar< stan::agrad::fvar< T > >
|oCis_var
|oCis_var< stan::agrad::var >
|oCcontains_fvarMetaprogram to calculate the base scalar return type resulting from promoting all the scalar types of the template parameters
|\Cis_var_or_arithmetic
oNstdTemplate specification of functions in std for Stan
|oCnumeric_limits< stan::agrad::fvar< T > >
|\Cnumeric_limits< stan::agrad::var >Specialization of numeric limits for var objects
oCdot_product_store_type
oCexpression_grammar
oCLDLT_factor
oCstatement_grammar
oCterm_grammar
\Cterm_grammar
+
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/arg__adapt_8hpp.html b/doc/api/html/arg__adapt_8hpp.html new file mode 100644 index 00000000000..1f33f2bb7d4 --- /dev/null +++ b/doc/api/html/arg__adapt_8hpp.html @@ -0,0 +1,136 @@ + + + + + +Stan: src/stan/gm/arguments/arg_adapt.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
arg_adapt.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + +

+Classes

class  stan::gm::arg_adapt
 
+ + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::gm
 Directed graphical model compiler.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/arg__adapt_8hpp_source.html b/doc/api/html/arg__adapt_8hpp_source.html new file mode 100644 index 00000000000..eb05ac4a669 --- /dev/null +++ b/doc/api/html/arg__adapt_8hpp_source.html @@ -0,0 +1,153 @@ + + + + + +Stan: src/stan/gm/arguments/arg_adapt.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
arg_adapt.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__GM__ARGUMENTS__ADAPT__HPP__
+
2 #define __STAN__GM__ARGUMENTS__ADAPT__HPP__
+
3 
+ +
5 
+ + + + + + + + +
14 
+
15 namespace stan {
+
16 
+
17  namespace gm {
+
18 
+ +
20 
+
21  public:
+
22 
+ +
24 
+
25  _name = "adapt";
+
26  _description = "Warmup Adaptation";
+
27 
+
28  _subarguments.push_back(new arg_adapt_engaged());
+
29  _subarguments.push_back(new arg_adapt_gamma());
+
30  _subarguments.push_back(new arg_adapt_delta());
+
31  _subarguments.push_back(new arg_adapt_kappa());
+
32  _subarguments.push_back(new arg_adapt_t0());
+
33  _subarguments.push_back(new arg_adapt_init_buffer());
+
34  _subarguments.push_back(new arg_adapt_term_buffer());
+
35  _subarguments.push_back(new arg_adapt_window());
+
36 
+
37  }
+
38 
+
39  };
+
40 
+
41  } // gm
+
42 
+
43 } // stan
+
44 
+
45 #endif
+
46 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/arg__adapt__delta_8hpp.html b/doc/api/html/arg__adapt__delta_8hpp.html new file mode 100644 index 00000000000..5196c75aa50 --- /dev/null +++ b/doc/api/html/arg__adapt__delta_8hpp.html @@ -0,0 +1,128 @@ + + + + + +Stan: src/stan/gm/arguments/arg_adapt_delta.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
arg_adapt_delta.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + +

+Classes

class  stan::gm::arg_adapt_delta
 
+ + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::gm
 Directed graphical model compiler.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/arg__adapt__delta_8hpp_source.html b/doc/api/html/arg__adapt__delta_8hpp_source.html new file mode 100644 index 00000000000..949ad4e7fc3 --- /dev/null +++ b/doc/api/html/arg__adapt__delta_8hpp_source.html @@ -0,0 +1,141 @@ + + + + + +Stan: src/stan/gm/arguments/arg_adapt_delta.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
arg_adapt_delta.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__GM__ARGUMENTS__ADAPT__DELTA__HPP__
+
2 #define __STAN__GM__ARGUMENTS__ADAPT__DELTA__HPP__
+
3 
+ +
5 
+
6 namespace stan {
+
7 
+
8  namespace gm {
+
9 
+ +
11 
+
12  public:
+
13 
+ +
15  _name = "delta";
+
16  _description = "Adaptation target acceptance statistic";
+
17  _validity = "0 < delta < 1";
+
18  _default = "0.8";
+
19  _default_value = 0.8;
+
20  _constrained = true;
+
21  _good_value = 0.5;
+
22  _bad_value = -1.0;
+ +
24  };
+
25 
+
26  bool is_valid(double value) { return 0 < value && value < 1; }
+
27 
+
28  };
+
29 
+
30  } // gm
+
31 
+
32 } // stan
+
33 
+
34 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/arg__adapt__engaged_8hpp.html b/doc/api/html/arg__adapt__engaged_8hpp.html new file mode 100644 index 00000000000..cce39ffd42a --- /dev/null +++ b/doc/api/html/arg__adapt__engaged_8hpp.html @@ -0,0 +1,128 @@ + + + + + +Stan: src/stan/gm/arguments/arg_adapt_engaged.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
arg_adapt_engaged.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + +

+Classes

class  stan::gm::arg_adapt_engaged
 
+ + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::gm
 Directed graphical model compiler.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/arg__adapt__engaged_8hpp_source.html b/doc/api/html/arg__adapt__engaged_8hpp_source.html new file mode 100644 index 00000000000..b4230868efe --- /dev/null +++ b/doc/api/html/arg__adapt__engaged_8hpp_source.html @@ -0,0 +1,139 @@ + + + + + +Stan: src/stan/gm/arguments/arg_adapt_engaged.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
arg_adapt_engaged.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__GM__ARGUMENTS__ADAPT__ENGAGED__HPP__
+
2 #define __STAN__GM__ARGUMENTS__ADAPT__ENGAGED__HPP__
+
3 
+ +
5 
+
6 namespace stan {
+
7 
+
8  namespace gm {
+
9 
+ +
11 
+
12  public:
+
13 
+ +
15  _name = "engaged";
+
16  _description = "Adaptation engaged?";
+
17  _validity = "[0, 1]";
+
18  _default = "1";
+
19  _default_value = true;
+
20  _constrained = false;
+
21  _good_value = 1;
+ +
23  };
+
24 
+
25  };
+
26 
+
27  } // gm
+
28 
+
29 } // stan
+
30 
+
31 #endif
+
32 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/arg__adapt__gamma_8hpp.html b/doc/api/html/arg__adapt__gamma_8hpp.html new file mode 100644 index 00000000000..343fd93305d --- /dev/null +++ b/doc/api/html/arg__adapt__gamma_8hpp.html @@ -0,0 +1,128 @@ + + + + + +Stan: src/stan/gm/arguments/arg_adapt_gamma.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
arg_adapt_gamma.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + +

+Classes

class  stan::gm::arg_adapt_gamma
 
+ + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::gm
 Directed graphical model compiler.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/arg__adapt__gamma_8hpp_source.html b/doc/api/html/arg__adapt__gamma_8hpp_source.html new file mode 100644 index 00000000000..72af7798fbb --- /dev/null +++ b/doc/api/html/arg__adapt__gamma_8hpp_source.html @@ -0,0 +1,142 @@ + + + + + +Stan: src/stan/gm/arguments/arg_adapt_gamma.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
arg_adapt_gamma.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__GM__ARGUMENTS__ADAPT__GAMMA__HPP__
+
2 #define __STAN__GM__ARGUMENTS__ADAPT__GAMMA__HPP__
+
3 
+ +
5 
+
6 namespace stan {
+
7 
+
8  namespace gm {
+
9 
+ +
11 
+
12  public:
+
13 
+ +
15  _name = "gamma";
+
16  _description = "Adaptation regularization scale";
+
17  _validity = "0 < gamma";
+
18  _default = "0.05";
+
19  _default_value = 0.05;
+
20  _constrained = true;
+
21  _good_value = 2.0;
+
22  _bad_value = -1.0;
+ +
24  };
+
25 
+
26  bool is_valid(double value) { return value > 0; }
+
27 
+
28  };
+
29 
+
30  } // gm
+
31 
+
32 } // stan
+
33 
+
34 #endif
+
35 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/arg__adapt__init__buffer_8hpp.html b/doc/api/html/arg__adapt__init__buffer_8hpp.html new file mode 100644 index 00000000000..f7ef65f4b7f --- /dev/null +++ b/doc/api/html/arg__adapt__init__buffer_8hpp.html @@ -0,0 +1,128 @@ + + + + + +Stan: src/stan/gm/arguments/arg_adapt_init_buffer.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
arg_adapt_init_buffer.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + +

+Classes

class  stan::gm::arg_adapt_init_buffer
 
+ + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::gm
 Directed graphical model compiler.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/arg__adapt__init__buffer_8hpp_source.html b/doc/api/html/arg__adapt__init__buffer_8hpp_source.html new file mode 100644 index 00000000000..b8e8ab378b3 --- /dev/null +++ b/doc/api/html/arg__adapt__init__buffer_8hpp_source.html @@ -0,0 +1,136 @@ + + + + + +Stan: src/stan/gm/arguments/arg_adapt_init_buffer.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
arg_adapt_init_buffer.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__GM__ARGUMENTS__ADAPT__INIT__BUFFER__HPP__
+
2 #define __STAN__GM__ARGUMENTS__ADAPT__INIT__BUFFER__HPP__
+
3 
+ +
5 
+
6 namespace stan {
+
7 
+
8  namespace gm {
+
9 
+ +
11 
+
12  public:
+
13 
+ +
15  _name = "init_buffer";
+
16  _description = std::string("Width of initial fast adaptation interval");
+
17  _default = "75";
+
18  _default_value = 75;
+ +
20  };
+
21 
+
22  };
+
23 
+
24  } // gm
+
25 
+
26 } // stan
+
27 
+
28 #endif
+
29 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/arg__adapt__kappa_8hpp.html b/doc/api/html/arg__adapt__kappa_8hpp.html new file mode 100644 index 00000000000..a70cda03442 --- /dev/null +++ b/doc/api/html/arg__adapt__kappa_8hpp.html @@ -0,0 +1,128 @@ + + + + + +Stan: src/stan/gm/arguments/arg_adapt_kappa.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
arg_adapt_kappa.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + +

+Classes

class  stan::gm::arg_adapt_kappa
 
+ + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::gm
 Directed graphical model compiler.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/arg__adapt__kappa_8hpp_source.html b/doc/api/html/arg__adapt__kappa_8hpp_source.html new file mode 100644 index 00000000000..599f590540c --- /dev/null +++ b/doc/api/html/arg__adapt__kappa_8hpp_source.html @@ -0,0 +1,142 @@ + + + + + +Stan: src/stan/gm/arguments/arg_adapt_kappa.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
arg_adapt_kappa.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__GM__ARGUMENTS__ADAPT__KAPPA__HPP__
+
2 #define __STAN__GM__ARGUMENTS__ADAPT__KAPPA__HPP__
+
3 
+ +
5 
+
6 namespace stan {
+
7 
+
8  namespace gm {
+
9 
+ +
11 
+
12  public:
+
13 
+ +
15  _name = "kappa";
+
16  _description = "Adaptation relaxation exponent";
+
17  _validity = "0 < kappa";
+
18  _default = "0.75";
+
19  _default_value = 0.75;
+
20  _constrained = true;
+
21  _good_value = 2.0;
+
22  _bad_value = -1.0;
+ +
24  };
+
25 
+
26  bool is_valid(double value) { return value > 0; }
+
27 
+
28  };
+
29 
+
30  } // gm
+
31 
+
32 } // stan
+
33 
+
34 #endif
+
35 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/arg__adapt__t0_8hpp.html b/doc/api/html/arg__adapt__t0_8hpp.html new file mode 100644 index 00000000000..39c6fdc38f2 --- /dev/null +++ b/doc/api/html/arg__adapt__t0_8hpp.html @@ -0,0 +1,128 @@ + + + + + +Stan: src/stan/gm/arguments/arg_adapt_t0.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
arg_adapt_t0.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + +

+Classes

class  stan::gm::arg_adapt_t0
 
+ + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::gm
 Directed graphical model compiler.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/arg__adapt__t0_8hpp_source.html b/doc/api/html/arg__adapt__t0_8hpp_source.html new file mode 100644 index 00000000000..a6db603328d --- /dev/null +++ b/doc/api/html/arg__adapt__t0_8hpp_source.html @@ -0,0 +1,142 @@ + + + + + +Stan: src/stan/gm/arguments/arg_adapt_t0.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
arg_adapt_t0.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__GM__ARGUMENTS__ADAPT__T0__HPP__
+
2 #define __STAN__GM__ARGUMENTS__ADAPT__T0__HPP__
+
3 
+ +
5 
+
6 namespace stan {
+
7 
+
8  namespace gm {
+
9 
+
10  class arg_adapt_t0: public real_argument {
+
11 
+
12  public:
+
13 
+ +
15  _name = "t0";
+
16  _description = "Adaptation iteration offset";
+
17  _validity = "0 < t0";
+
18  _default = "10";
+
19  _default_value = 10;
+
20  _constrained = true;
+
21  _good_value = 2.0;
+
22  _bad_value = -1.0;
+ +
24  };
+
25 
+
26  bool is_valid(double value) { return value > 0; }
+
27 
+
28  };
+
29 
+
30  } // gm
+
31 
+
32 } // stan
+
33 
+
34 #endif
+
35 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/arg__adapt__term__buffer_8hpp.html b/doc/api/html/arg__adapt__term__buffer_8hpp.html new file mode 100644 index 00000000000..4d644000319 --- /dev/null +++ b/doc/api/html/arg__adapt__term__buffer_8hpp.html @@ -0,0 +1,128 @@ + + + + + +Stan: src/stan/gm/arguments/arg_adapt_term_buffer.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
arg_adapt_term_buffer.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + +

+Classes

class  stan::gm::arg_adapt_term_buffer
 
+ + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::gm
 Directed graphical model compiler.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/arg__adapt__term__buffer_8hpp_source.html b/doc/api/html/arg__adapt__term__buffer_8hpp_source.html new file mode 100644 index 00000000000..6366fc5d188 --- /dev/null +++ b/doc/api/html/arg__adapt__term__buffer_8hpp_source.html @@ -0,0 +1,136 @@ + + + + + +Stan: src/stan/gm/arguments/arg_adapt_term_buffer.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
arg_adapt_term_buffer.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__GM__ARGUMENTS__ADAPT__TERM__BUFFER__HPP__
+
2 #define __STAN__GM__ARGUMENTS__ADAPT__TERM__BUFFER__HPP__
+
3 
+ +
5 
+
6 namespace stan {
+
7 
+
8  namespace gm {
+
9 
+ +
11 
+
12  public:
+
13 
+ +
15  _name = "term_buffer";
+
16  _description = std::string("Width of final fast adaptation interval");
+
17  _default = "50";
+
18  _default_value = 50;
+ +
20  };
+
21 
+
22  };
+
23 
+
24  } // gm
+
25 
+
26 } // stan
+
27 
+
28 #endif
+
29 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/arg__adapt__window_8hpp.html b/doc/api/html/arg__adapt__window_8hpp.html new file mode 100644 index 00000000000..2a9bf4cc2e9 --- /dev/null +++ b/doc/api/html/arg__adapt__window_8hpp.html @@ -0,0 +1,128 @@ + + + + + +Stan: src/stan/gm/arguments/arg_adapt_window.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
arg_adapt_window.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + +

+Classes

class  stan::gm::arg_adapt_window
 
+ + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::gm
 Directed graphical model compiler.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/arg__adapt__window_8hpp_source.html b/doc/api/html/arg__adapt__window_8hpp_source.html new file mode 100644 index 00000000000..671e657ae79 --- /dev/null +++ b/doc/api/html/arg__adapt__window_8hpp_source.html @@ -0,0 +1,136 @@ + + + + + +Stan: src/stan/gm/arguments/arg_adapt_window.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
arg_adapt_window.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__GM__ARGUMENTS__ADAPT__WINDOW__HPP__
+
2 #define __STAN__GM__ARGUMENTS__ADAPT__WINDOW__HPP__
+
3 
+ +
5 
+
6 namespace stan {
+
7 
+
8  namespace gm {
+
9 
+ +
11 
+
12  public:
+
13 
+ +
15  _name = "window";
+
16  _description = "Initial width of slow adaptation interval";
+
17  _default = "25";
+
18  _default_value = 25;
+ +
20  };
+
21 
+
22  };
+
23 
+
24  } // gm
+
25 
+
26 } // stan
+
27 
+
28 #endif
+
29 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/arg__bfgs_8hpp.html b/doc/api/html/arg__bfgs_8hpp.html new file mode 100644 index 00000000000..639cbc11ea2 --- /dev/null +++ b/doc/api/html/arg__bfgs_8hpp.html @@ -0,0 +1,130 @@ + + + + + +Stan: src/stan/gm/arguments/arg_bfgs.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
arg_bfgs.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + +

+Classes

class  stan::gm::arg_bfgs
 
+ + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::gm
 Directed graphical model compiler.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/arg__bfgs_8hpp_source.html b/doc/api/html/arg__bfgs_8hpp_source.html new file mode 100644 index 00000000000..3eaba494ff3 --- /dev/null +++ b/doc/api/html/arg__bfgs_8hpp_source.html @@ -0,0 +1,145 @@ + + + + + +Stan: src/stan/gm/arguments/arg_bfgs.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
arg_bfgs.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__GM__ARGUMENTS__BFGS__HPP__
+
2 #define __STAN__GM__ARGUMENTS__BFGS__HPP__
+
3 
+ +
5 
+ + +
8 
+
9 namespace stan {
+
10 
+
11  namespace gm {
+
12 
+ +
14 
+
15  public:
+
16 
+ +
18 
+
19  _name = "bfgs";
+
20  _description = "BFGS with linesearch";
+
21 
+
22  _subarguments.push_back(new arg_init_alpha());
+
23  _subarguments.push_back(new arg_tolerance("tol_obj","Convergence tolerance on changes in objective function value","1e-8",1e-8));
+
24  _subarguments.push_back(new arg_tolerance("tol_grad","Convergence tolerance on the norm of the gradient","1e-8",1e-8));
+
25  _subarguments.push_back(new arg_tolerance("tol_param","Convergence tolerance on changes in parameter value","1e-8",1e-8));
+
26 
+
27 
+
28 
+
29  }
+
30 
+
31  };
+
32 
+
33  } // gm
+
34 
+
35 } // stan
+
36 
+
37 #endif
+
38 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/arg__data_8hpp.html b/doc/api/html/arg__data_8hpp.html new file mode 100644 index 00000000000..1105e50ebb8 --- /dev/null +++ b/doc/api/html/arg__data_8hpp.html @@ -0,0 +1,129 @@ + + + + + +Stan: src/stan/gm/arguments/arg_data.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
arg_data.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + +

+Classes

class  stan::gm::arg_data
 
+ + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::gm
 Directed graphical model compiler.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/arg__data_8hpp_source.html b/doc/api/html/arg__data_8hpp_source.html new file mode 100644 index 00000000000..04653ac58fe --- /dev/null +++ b/doc/api/html/arg__data_8hpp_source.html @@ -0,0 +1,138 @@ + + + + + +Stan: src/stan/gm/arguments/arg_data.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
arg_data.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__GM__ARGUMENTS__DATA__HPP__
+
2 #define __STAN__GM__ARGUMENTS__DATA__HPP__
+
3 
+ +
5 
+ +
7 
+
8 namespace stan {
+
9 
+
10  namespace gm {
+
11 
+ +
13 
+
14  public:
+
15 
+ +
17 
+
18  _name = "data";
+
19  _description = "Input data options";
+
20 
+
21  _subarguments.push_back(new arg_data_file());
+
22 
+
23  };
+
24 
+
25  };
+
26 
+
27  } // gm
+
28 
+
29 } // stan
+
30 
+
31 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/arg__data__file_8hpp.html b/doc/api/html/arg__data__file_8hpp.html new file mode 100644 index 00000000000..b645086f7ac --- /dev/null +++ b/doc/api/html/arg__data__file_8hpp.html @@ -0,0 +1,128 @@ + + + + + +Stan: src/stan/gm/arguments/arg_data_file.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
arg_data_file.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + +

+Classes

class  stan::gm::arg_data_file
 
+ + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::gm
 Directed graphical model compiler.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/arg__data__file_8hpp_source.html b/doc/api/html/arg__data__file_8hpp_source.html new file mode 100644 index 00000000000..6e22e888591 --- /dev/null +++ b/doc/api/html/arg__data__file_8hpp_source.html @@ -0,0 +1,138 @@ + + + + + +Stan: src/stan/gm/arguments/arg_data_file.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
arg_data_file.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__GM__ARGUMENTS__DATA__FILE__HPP__
+
2 #define __STAN__GM__ARGUMENTS__DATA__FILE__HPP__
+
3 
+ +
5 
+
6 namespace stan {
+
7 
+
8  namespace gm {
+
9 
+ +
11 
+
12  public:
+
13 
+ +
15  _name = "file";
+
16  _description = "Input data file";
+
17  _validity = "Path to existing file";
+
18  _default = "\"\"";
+
19  _default_value = "";
+
20  _constrained = false;
+
21  _good_value = "good";
+ +
23  };
+
24 
+
25  };
+
26 
+
27  } // gm
+
28 
+
29 } // stan
+
30 
+
31 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/arg__dense__e_8hpp.html b/doc/api/html/arg__dense__e_8hpp.html new file mode 100644 index 00000000000..11e86b939df --- /dev/null +++ b/doc/api/html/arg__dense__e_8hpp.html @@ -0,0 +1,128 @@ + + + + + +Stan: src/stan/gm/arguments/arg_dense_e.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
arg_dense_e.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + +

+Classes

class  stan::gm::arg_dense_e
 
+ + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::gm
 Directed graphical model compiler.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/arg__dense__e_8hpp_source.html b/doc/api/html/arg__dense__e_8hpp_source.html new file mode 100644 index 00000000000..a2c0e14dc77 --- /dev/null +++ b/doc/api/html/arg__dense__e_8hpp_source.html @@ -0,0 +1,135 @@ + + + + + +Stan: src/stan/gm/arguments/arg_dense_e.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
arg_dense_e.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__GM__ARGUMENTS__DENSE_E__HPP__
+
2 #define __STAN__GM__ARGUMENTS__DENSE_E__HPP__
+
3 
+ +
5 
+
6 namespace stan {
+
7 
+
8  namespace gm {
+
9 
+ +
11 
+
12  public:
+
13 
+ +
15 
+
16  _name = "dense_e";
+
17  _description = "Euclidean manifold with dense metric";
+
18 
+
19  }
+
20 
+
21  };
+
22 
+
23  } // gm
+
24 
+
25 } // stan
+
26 
+
27 #endif
+
28 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/arg__diag__e_8hpp.html b/doc/api/html/arg__diag__e_8hpp.html new file mode 100644 index 00000000000..139146330fb --- /dev/null +++ b/doc/api/html/arg__diag__e_8hpp.html @@ -0,0 +1,128 @@ + + + + + +Stan: src/stan/gm/arguments/arg_diag_e.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
arg_diag_e.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + +

+Classes

class  stan::gm::arg_diag_e
 
+ + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::gm
 Directed graphical model compiler.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/arg__diag__e_8hpp_source.html b/doc/api/html/arg__diag__e_8hpp_source.html new file mode 100644 index 00000000000..e6fde064fb6 --- /dev/null +++ b/doc/api/html/arg__diag__e_8hpp_source.html @@ -0,0 +1,135 @@ + + + + + +Stan: src/stan/gm/arguments/arg_diag_e.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
arg_diag_e.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__GM__ARGUMENTS__DIAG_E__HPP__
+
2 #define __STAN__GM__ARGUMENTS__DIAG_E__HPP__
+
3 
+ +
5 
+
6 namespace stan {
+
7 
+
8  namespace gm {
+
9 
+
10  class arg_diag_e: public unvalued_argument {
+
11 
+
12  public:
+
13 
+ +
15 
+
16  _name = "diag_e";
+
17  _description = "Euclidean manifold with diag metric";
+
18 
+
19  }
+
20 
+
21  };
+
22 
+
23  } // gm
+
24 
+
25 } // stan
+
26 
+
27 #endif
+
28 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/arg__diagnose_8hpp.html b/doc/api/html/arg__diagnose_8hpp.html new file mode 100644 index 00000000000..51c03aa0989 --- /dev/null +++ b/doc/api/html/arg__diagnose_8hpp.html @@ -0,0 +1,129 @@ + + + + + +Stan: src/stan/gm/arguments/arg_diagnose.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
arg_diagnose.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + +

+Classes

class  stan::gm::arg_diagnose
 
+ + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::gm
 Directed graphical model compiler.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/arg__diagnose_8hpp_source.html b/doc/api/html/arg__diagnose_8hpp_source.html new file mode 100644 index 00000000000..9c34cdf3813 --- /dev/null +++ b/doc/api/html/arg__diagnose_8hpp_source.html @@ -0,0 +1,139 @@ + + + + + +Stan: src/stan/gm/arguments/arg_diagnose.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
arg_diagnose.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__GM__ARGUMENTS__DIAGNOSE__HPP__
+
2 #define __STAN__GM__ARGUMENTS__DIAGNOSE__HPP__
+
3 
+ +
5 
+ +
7 
+
8 namespace stan {
+
9 
+
10  namespace gm {
+
11 
+ +
13 
+
14  public:
+
15 
+ +
17 
+
18  _name = "diagnose";
+
19  _description = "Model diagnostics";
+
20 
+
21  _subarguments.push_back(new arg_test());
+
22 
+
23  }
+
24 
+
25  };
+
26 
+
27  } // gm
+
28 
+
29 } // stan
+
30 
+
31 #endif
+
32 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/arg__diagnostic__file_8hpp.html b/doc/api/html/arg__diagnostic__file_8hpp.html new file mode 100644 index 00000000000..f521550e177 --- /dev/null +++ b/doc/api/html/arg__diagnostic__file_8hpp.html @@ -0,0 +1,128 @@ + + + + + +Stan: src/stan/gm/arguments/arg_diagnostic_file.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
arg_diagnostic_file.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + +

+Classes

class  stan::gm::arg_diagnostic_file
 
+ + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::gm
 Directed graphical model compiler.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/arg__diagnostic__file_8hpp_source.html b/doc/api/html/arg__diagnostic__file_8hpp_source.html new file mode 100644 index 00000000000..145ffa863df --- /dev/null +++ b/doc/api/html/arg__diagnostic__file_8hpp_source.html @@ -0,0 +1,138 @@ + + + + + +Stan: src/stan/gm/arguments/arg_diagnostic_file.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
arg_diagnostic_file.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__GM__ARGUMENTS__DIAGNOSTIC__FILE__HPP__
+
2 #define __STAN__GM__ARGUMENTS__DIAGNOSTIC__FILE__HPP__
+
3 
+ +
5 
+
6 namespace stan {
+
7 
+
8  namespace gm {
+
9 
+ +
11 
+
12  public:
+
13 
+ +
15  _name = "diagnostic_file";
+
16  _description = "Auxiliary output file for diagnostic information";
+
17  _validity = "Path to existing file";
+
18  _default = "\"\"";
+
19  _default_value = "";
+
20  _constrained = false;
+
21  _good_value = "good";
+ +
23  };
+
24 
+
25  };
+
26 
+
27  } // gm
+
28 
+
29 } // stan
+
30 
+
31 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/arg__engine_8hpp.html b/doc/api/html/arg__engine_8hpp.html new file mode 100644 index 00000000000..f90f1f60194 --- /dev/null +++ b/doc/api/html/arg__engine_8hpp.html @@ -0,0 +1,130 @@ + + + + + +Stan: src/stan/gm/arguments/arg_engine.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
arg_engine.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + +

+Classes

class  stan::gm::arg_engine
 
+ + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::gm
 Directed graphical model compiler.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/arg__engine_8hpp_source.html b/doc/api/html/arg__engine_8hpp_source.html new file mode 100644 index 00000000000..1a902acce5b --- /dev/null +++ b/doc/api/html/arg__engine_8hpp_source.html @@ -0,0 +1,144 @@ + + + + + +Stan: src/stan/gm/arguments/arg_engine.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
arg_engine.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__GM__ARGUMENTS__ENGINE__HPP__
+
2 #define __STAN__GM__ARGUMENTS__ENGINE__HPP__
+
3 
+ +
5 
+ + +
8 
+
9 namespace stan {
+
10 
+
11  namespace gm {
+
12 
+
13  class arg_engine: public list_argument {
+
14 
+
15  public:
+
16 
+ +
18 
+
19  _name = "engine";
+
20  _description = "Engine for Hamiltonian Monte Carlo";
+
21 
+
22  _values.push_back(new arg_static());
+
23  _values.push_back(new arg_nuts());
+
24 
+
25  _default_cursor = 1;
+ +
27 
+
28  }
+
29 
+
30  };
+
31 
+
32  } // gm
+
33 
+
34 } // stan
+
35 
+
36 #endif
+
37 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/arg__fail_8hpp.html b/doc/api/html/arg__fail_8hpp.html new file mode 100644 index 00000000000..884d8e1ab56 --- /dev/null +++ b/doc/api/html/arg__fail_8hpp.html @@ -0,0 +1,128 @@ + + + + + +Stan: src/stan/gm/arguments/arg_fail.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
arg_fail.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + +

+Classes

class  stan::gm::arg_fail
 
+ + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::gm
 Directed graphical model compiler.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/arg__fail_8hpp_source.html b/doc/api/html/arg__fail_8hpp_source.html new file mode 100644 index 00000000000..9bd7f7101d7 --- /dev/null +++ b/doc/api/html/arg__fail_8hpp_source.html @@ -0,0 +1,135 @@ + + + + + +Stan: src/stan/gm/arguments/arg_fail.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
arg_fail.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__GM__ARGUMENTS__FAIL__HPP__
+
2 #define __STAN__GM__ARGUMENTS__FAIL__HPP__
+
3 
+ +
5 
+
6 namespace stan {
+
7 
+
8  namespace gm {
+
9 
+
10  class arg_fail: public unvalued_argument {
+
11 
+
12  public:
+
13 
+ +
15 
+
16  _name = "fail";
+
17  _description = "Dummy argument to induce failures for testing";
+
18 
+
19  }
+
20 
+
21  };
+
22 
+
23  } // gm
+
24 
+
25 } // stan
+
26 
+
27 #endif
+
28 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/arg__fixed__param_8hpp.html b/doc/api/html/arg__fixed__param_8hpp.html new file mode 100644 index 00000000000..9fcf0a0b2df --- /dev/null +++ b/doc/api/html/arg__fixed__param_8hpp.html @@ -0,0 +1,128 @@ + + + + + +Stan: src/stan/gm/arguments/arg_fixed_param.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
arg_fixed_param.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + +

+Classes

class  stan::gm::arg_fixed_param
 
+ + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::gm
 Directed graphical model compiler.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/arg__fixed__param_8hpp_source.html b/doc/api/html/arg__fixed__param_8hpp_source.html new file mode 100644 index 00000000000..f4820579bbc --- /dev/null +++ b/doc/api/html/arg__fixed__param_8hpp_source.html @@ -0,0 +1,135 @@ + + + + + +Stan: src/stan/gm/arguments/arg_fixed_param.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
arg_fixed_param.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__GM__ARGUMENTS__FIXED__PARAMS__HPP__
+
2 #define __STAN__GM__ARGUMENTS__FIXED__PARAMS__HPP__
+
3 
+ +
5 
+
6 namespace stan {
+
7 
+
8  namespace gm {
+
9 
+ +
11 
+
12  public:
+
13 
+ +
15 
+
16  _name = "fixed_param";
+
17  _description = "Fixed Parameter Sampler";
+
18 
+
19  }
+
20 
+
21  };
+
22 
+
23  } // gm
+
24 
+
25 } // stan
+
26 
+
27 #endif
+
28 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/arg__hmc_8hpp.html b/doc/api/html/arg__hmc_8hpp.html new file mode 100644 index 00000000000..764624a280e --- /dev/null +++ b/doc/api/html/arg__hmc_8hpp.html @@ -0,0 +1,132 @@ + + + + + +Stan: src/stan/gm/arguments/arg_hmc.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
arg_hmc.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + +

+Classes

class  stan::gm::arg_hmc
 
+ + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::gm
 Directed graphical model compiler.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/arg__hmc_8hpp_source.html b/doc/api/html/arg__hmc_8hpp_source.html new file mode 100644 index 00000000000..597f2df28bb --- /dev/null +++ b/doc/api/html/arg__hmc_8hpp_source.html @@ -0,0 +1,145 @@ + + + + + +Stan: src/stan/gm/arguments/arg_hmc.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
arg_hmc.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__GM__ARGUMENTS__HMC__HPP__
+
2 #define __STAN__GM__ARGUMENTS__HMC__HPP__
+
3 
+ +
5 
+ + + + +
10 
+
11 namespace stan {
+
12 
+
13  namespace gm {
+
14 
+
15  class arg_hmc: public categorical_argument {
+
16 
+
17  public:
+
18 
+
19  arg_hmc() {
+
20 
+
21  _name = "hmc";
+
22  _description = "Hamiltonian Monte Carlo";
+
23 
+
24  _subarguments.push_back(new arg_engine());
+
25  _subarguments.push_back(new arg_metric());
+
26  _subarguments.push_back(new arg_stepsize());
+
27  _subarguments.push_back(new arg_stepsize_jitter());
+
28 
+
29  }
+
30 
+
31  };
+
32 
+
33  } // gm
+
34 
+
35 } // stan
+
36 
+
37 #endif
+
38 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/arg__id_8hpp.html b/doc/api/html/arg__id_8hpp.html new file mode 100644 index 00000000000..1ed78c9c6bf --- /dev/null +++ b/doc/api/html/arg__id_8hpp.html @@ -0,0 +1,128 @@ + + + + + +Stan: src/stan/gm/arguments/arg_id.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
arg_id.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + +

+Classes

class  stan::gm::arg_id
 
+ + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::gm
 Directed graphical model compiler.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/arg__id_8hpp_source.html b/doc/api/html/arg__id_8hpp_source.html new file mode 100644 index 00000000000..b952b255034 --- /dev/null +++ b/doc/api/html/arg__id_8hpp_source.html @@ -0,0 +1,142 @@ + + + + + +Stan: src/stan/gm/arguments/arg_id.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
arg_id.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__GM__ARGUMENTS__ID__HPP__
+
2 #define __STAN__GM__ARGUMENTS__ID__HPP__
+
3 
+ +
5 
+
6 namespace stan {
+
7 
+
8  namespace gm {
+
9 
+
10  class arg_id: public int_argument {
+
11 
+
12  public:
+
13 
+ +
15  _name = "id";
+
16  _description = "Unique process identifier";
+
17  _validity = "id > 0";
+
18  _default = "0";
+
19  _default_value = 0;
+
20  _constrained = true;
+
21  _good_value = 2.0;
+
22  _bad_value = -1.0;
+ +
24  };
+
25 
+
26  bool is_valid(int value) { return value > 0; }
+
27 
+
28  };
+
29 
+
30  } // gm
+
31 
+
32 } // stan
+
33 
+
34 #endif
+
35 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/arg__init_8hpp.html b/doc/api/html/arg__init_8hpp.html new file mode 100644 index 00000000000..244084638e3 --- /dev/null +++ b/doc/api/html/arg__init_8hpp.html @@ -0,0 +1,128 @@ + + + + + +Stan: src/stan/gm/arguments/arg_init.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
arg_init.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + +

+Classes

class  stan::gm::arg_init
 
+ + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::gm
 Directed graphical model compiler.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/arg__init_8hpp_source.html b/doc/api/html/arg__init_8hpp_source.html new file mode 100644 index 00000000000..cf6e1de1067 --- /dev/null +++ b/doc/api/html/arg__init_8hpp_source.html @@ -0,0 +1,140 @@ + + + + + +Stan: src/stan/gm/arguments/arg_init.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
arg_init.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__GM__ARGUMENTS__INIT__HPP__
+
2 #define __STAN__GM__ARGUMENTS__INIT__HPP__
+
3 
+ +
5 
+
6 namespace stan {
+
7 
+
8  namespace gm {
+
9 
+
10  class arg_init: public string_argument {
+
11 
+
12  public:
+
13 
+ +
15  _name = "init";
+
16  _description = std::string("Initialization method: ")
+
17  + std::string("\"x\" initializes randomly bewteen [-x, x], ")
+
18  + std::string("\"0\" initializes to 0, ")
+
19  + std::string("anything else identifies a file of values");
+
20  _default = "\"2\"";
+
21  _default_value = "2";
+
22  _constrained = false;
+
23  _good_value = "../src/test/test-models/compiled/CmdStan/test_model.init.R";
+ +
25  };
+
26 
+
27  };
+
28 
+
29  } // gm
+
30 
+
31 } // stan
+
32 
+
33 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/arg__init__alpha_8hpp.html b/doc/api/html/arg__init__alpha_8hpp.html new file mode 100644 index 00000000000..72c10d60868 --- /dev/null +++ b/doc/api/html/arg__init__alpha_8hpp.html @@ -0,0 +1,128 @@ + + + + + +Stan: src/stan/gm/arguments/arg_init_alpha.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
arg_init_alpha.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + +

+Classes

class  stan::gm::arg_init_alpha
 
+ + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::gm
 Directed graphical model compiler.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/arg__init__alpha_8hpp_source.html b/doc/api/html/arg__init__alpha_8hpp_source.html new file mode 100644 index 00000000000..d9500e3860b --- /dev/null +++ b/doc/api/html/arg__init__alpha_8hpp_source.html @@ -0,0 +1,141 @@ + + + + + +Stan: src/stan/gm/arguments/arg_init_alpha.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
arg_init_alpha.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__GM__ARGUMENTS__INIT_ALPHA__HPP__
+
2 #define __STAN__GM__ARGUMENTS__INIT_ALPHA__HPP__
+
3 
+ +
5 
+
6 namespace stan {
+
7 
+
8  namespace gm {
+
9 
+
10  class arg_init_alpha: public real_argument {
+
11 
+
12  public:
+
13 
+ +
15  _name = "init_alpha";
+
16  _description = "Line search step size for first iteration";
+
17  _validity = "0 < init_alpha";
+
18  _default = "0.001";
+
19  _default_value = 0.001;
+
20  _constrained = true;
+
21  _good_value = 1.0;
+
22  _bad_value = -1.0;
+ +
24  };
+
25 
+
26  bool is_valid(double value) { return value > 0; }
+
27 
+
28  };
+
29 
+
30  } // gm
+
31 
+
32 } // stan
+
33 
+
34 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/arg__int__time_8hpp.html b/doc/api/html/arg__int__time_8hpp.html new file mode 100644 index 00000000000..657c13cc846 --- /dev/null +++ b/doc/api/html/arg__int__time_8hpp.html @@ -0,0 +1,128 @@ + + + + + +Stan: src/stan/gm/arguments/arg_int_time.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
arg_int_time.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + +

+Classes

class  stan::gm::arg_int_time
 
+ + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::gm
 Directed graphical model compiler.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/arg__int__time_8hpp_source.html b/doc/api/html/arg__int__time_8hpp_source.html new file mode 100644 index 00000000000..ec9506b0061 --- /dev/null +++ b/doc/api/html/arg__int__time_8hpp_source.html @@ -0,0 +1,142 @@ + + + + + +Stan: src/stan/gm/arguments/arg_int_time.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
arg_int_time.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__GM__ARGUMENTS__INT__TIME__HPP__
+
2 #define __STAN__GM__ARGUMENTS__INT__TIME__HPP__
+
3 
+ +
5 
+
6 namespace stan {
+
7 
+
8  namespace gm {
+
9 
+
10  class arg_int_time: public real_argument {
+
11 
+
12  public:
+
13 
+ +
15  _name = "int_time";
+
16  _description = "Total integration time for Hamiltonian evolution";
+
17  _validity = "0 < int_time";
+
18  _default = "2 * pi";
+
19  _default_value = 6.28318530717959;
+
20  _constrained = true;
+
21  _good_value = 2.0;
+
22  _bad_value = -1.0;
+ +
24  };
+
25 
+
26  bool is_valid(double value) { return value > 0; }
+
27 
+
28  };
+
29 
+
30  } // gm
+
31 
+
32 } // stan
+
33 
+
34 #endif
+
35 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/arg__iter_8hpp.html b/doc/api/html/arg__iter_8hpp.html new file mode 100644 index 00000000000..c0fc2161d7e --- /dev/null +++ b/doc/api/html/arg__iter_8hpp.html @@ -0,0 +1,128 @@ + + + + + +Stan: src/stan/gm/arguments/arg_iter.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
arg_iter.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + +

+Classes

class  stan::gm::arg_iter
 
+ + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::gm
 Directed graphical model compiler.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/arg__iter_8hpp_source.html b/doc/api/html/arg__iter_8hpp_source.html new file mode 100644 index 00000000000..abdbbbb00c6 --- /dev/null +++ b/doc/api/html/arg__iter_8hpp_source.html @@ -0,0 +1,142 @@ + + + + + +Stan: src/stan/gm/arguments/arg_iter.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
arg_iter.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__GM__ARGUMENTS__ITER__HPP__
+
2 #define __STAN__GM__ARGUMENTS__ITER__HPP__
+
3 
+ +
5 
+
6 namespace stan {
+
7 
+
8  namespace gm {
+
9 
+
10  class arg_iter: public int_argument {
+
11 
+
12  public:
+
13 
+ +
15  _name = "iter";
+
16  _description = "Total number of iterations";
+
17  _validity = "0 < iter";
+
18  _default = "2000";
+
19  _default_value = 2000;
+
20  _constrained = true;
+
21  _good_value = 2.0;
+
22  _bad_value = -1.0;
+ +
24  };
+
25 
+
26  bool is_valid(int value) { return value > 0; }
+
27 
+
28  };
+
29 
+
30  } // gm
+
31 
+
32 } // stan
+
33 
+
34 #endif
+
35 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/arg__max__depth_8hpp.html b/doc/api/html/arg__max__depth_8hpp.html new file mode 100644 index 00000000000..8cf60ca8328 --- /dev/null +++ b/doc/api/html/arg__max__depth_8hpp.html @@ -0,0 +1,128 @@ + + + + + +Stan: src/stan/gm/arguments/arg_max_depth.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
arg_max_depth.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + +

+Classes

class  stan::gm::arg_max_depth
 
+ + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::gm
 Directed graphical model compiler.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/arg__max__depth_8hpp_source.html b/doc/api/html/arg__max__depth_8hpp_source.html new file mode 100644 index 00000000000..e0b043cf7a4 --- /dev/null +++ b/doc/api/html/arg__max__depth_8hpp_source.html @@ -0,0 +1,142 @@ + + + + + +Stan: src/stan/gm/arguments/arg_max_depth.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
arg_max_depth.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__GM__ARGUMENTS__MAX_DEPTH__HPP__
+
2 #define __STAN__GM__ARGUMENTS__MAX_DEPTH__HPP__
+
3 
+ +
5 
+
6 namespace stan {
+
7 
+
8  namespace gm {
+
9 
+
10  class arg_max_depth: public int_argument {
+
11 
+
12  public:
+
13 
+ +
15  _name = "max_depth";
+
16  _description = "Maximum tree depth";
+
17  _validity = "0 < max_depth";
+
18  _default = "10";
+
19  _default_value = 10;
+
20  _constrained = true;
+
21  _good_value = 2.0;
+
22  _bad_value = -1.0;
+ +
24  };
+
25 
+
26  bool is_valid(int value) { return value > 0; }
+
27 
+
28  };
+
29 
+
30  } // gm
+
31 
+
32 } // stan
+
33 
+
34 #endif
+
35 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/arg__method_8hpp.html b/doc/api/html/arg__method_8hpp.html new file mode 100644 index 00000000000..5a8a4516f7b --- /dev/null +++ b/doc/api/html/arg__method_8hpp.html @@ -0,0 +1,131 @@ + + + + + +Stan: src/stan/gm/arguments/arg_method.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
arg_method.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + +

+Classes

class  stan::gm::arg_method
 
+ + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::gm
 Directed graphical model compiler.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/arg__method_8hpp_source.html b/doc/api/html/arg__method_8hpp_source.html new file mode 100644 index 00000000000..2e65fc2e390 --- /dev/null +++ b/doc/api/html/arg__method_8hpp_source.html @@ -0,0 +1,146 @@ + + + + + +Stan: src/stan/gm/arguments/arg_method.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
arg_method.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__GM__ARGUMENTS__METHOD__HPP__
+
2 #define __STAN__GM__ARGUMENTS__METHOD__HPP__
+
3 
+ +
5 
+ + + +
9 
+
10 namespace stan {
+
11 
+
12  namespace gm {
+
13 
+
14  class arg_method: public list_argument {
+
15 
+
16  public:
+
17 
+ +
19 
+
20  _name = "method";
+
21  _description = "Analysis method (Note that method= is optional)";
+
22 
+
23  _values.push_back(new arg_sample());
+
24  _values.push_back(new arg_optimize());
+
25  _values.push_back(new arg_diagnose());
+
26 
+
27  _default_cursor = 0;
+ +
29 
+
30  }
+
31 
+
32  };
+
33 
+
34  } // gm
+
35 
+
36 } // stan
+
37 
+
38 #endif
+
39 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/arg__metric_8hpp.html b/doc/api/html/arg__metric_8hpp.html new file mode 100644 index 00000000000..0b6364b3066 --- /dev/null +++ b/doc/api/html/arg__metric_8hpp.html @@ -0,0 +1,131 @@ + + + + + +Stan: src/stan/gm/arguments/arg_metric.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
arg_metric.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + +

+Classes

class  stan::gm::arg_metric
 
+ + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::gm
 Directed graphical model compiler.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/arg__metric_8hpp_source.html b/doc/api/html/arg__metric_8hpp_source.html new file mode 100644 index 00000000000..a27a13db82e --- /dev/null +++ b/doc/api/html/arg__metric_8hpp_source.html @@ -0,0 +1,146 @@ + + + + + +Stan: src/stan/gm/arguments/arg_metric.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
arg_metric.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__GM__ARGUMENTS__METRIC__HPP__
+
2 #define __STAN__GM__ARGUMENTS__METRIC__HPP__
+
3 
+ +
5 
+ + + +
9 
+
10 namespace stan {
+
11 
+
12  namespace gm {
+
13 
+
14  class arg_metric: public list_argument {
+
15 
+
16  public:
+
17 
+ +
19 
+
20  _name = "metric";
+
21  _description = "Geometry of base manifold";
+
22 
+
23  _values.push_back(new arg_unit_e());
+
24  _values.push_back(new arg_diag_e());
+
25  _values.push_back(new arg_dense_e());
+
26 
+
27  _default_cursor = 1;
+ +
29 
+
30  }
+
31 
+
32  };
+
33 
+
34  } // gm
+
35 
+
36 } // stan
+
37 
+
38 #endif
+
39 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/arg__nesterov_8hpp.html b/doc/api/html/arg__nesterov_8hpp.html new file mode 100644 index 00000000000..9d90df48cea --- /dev/null +++ b/doc/api/html/arg__nesterov_8hpp.html @@ -0,0 +1,129 @@ + + + + + +Stan: src/stan/gm/arguments/arg_nesterov.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
arg_nesterov.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + +

+Classes

class  stan::gm::arg_nesterov
 
+ + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::gm
 Directed graphical model compiler.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/arg__nesterov_8hpp_source.html b/doc/api/html/arg__nesterov_8hpp_source.html new file mode 100644 index 00000000000..774aca7cf73 --- /dev/null +++ b/doc/api/html/arg__nesterov_8hpp_source.html @@ -0,0 +1,139 @@ + + + + + +Stan: src/stan/gm/arguments/arg_nesterov.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
arg_nesterov.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__GM__ARGUMENTS__NESTEROV__HPP__
+
2 #define __STAN__GM__ARGUMENTS__NESTEROV__HPP__
+
3 
+ +
5 
+ +
7 
+
8 namespace stan {
+
9 
+
10  namespace gm {
+
11 
+ +
13 
+
14  public:
+
15 
+ +
17 
+
18  _name = "nesterov";
+
19  _description = "Nesterov's accelerated gradient method";
+
20 
+
21  _subarguments.push_back(new arg_stepsize());
+
22 
+
23  }
+
24 
+
25  };
+
26 
+
27  } // gm
+
28 
+
29 } // stan
+
30 
+
31 #endif
+
32 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/arg__newton_8hpp.html b/doc/api/html/arg__newton_8hpp.html new file mode 100644 index 00000000000..39d31581b54 --- /dev/null +++ b/doc/api/html/arg__newton_8hpp.html @@ -0,0 +1,128 @@ + + + + + +Stan: src/stan/gm/arguments/arg_newton.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
arg_newton.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + +

+Classes

class  stan::gm::arg_newton
 
+ + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::gm
 Directed graphical model compiler.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/arg__newton_8hpp_source.html b/doc/api/html/arg__newton_8hpp_source.html new file mode 100644 index 00000000000..8b65f5f3623 --- /dev/null +++ b/doc/api/html/arg__newton_8hpp_source.html @@ -0,0 +1,135 @@ + + + + + +Stan: src/stan/gm/arguments/arg_newton.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
arg_newton.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__GM__ARGUMENTS__NEWTON__HPP__
+
2 #define __STAN__GM__ARGUMENTS__NEWTON__HPP__
+
3 
+ +
5 
+
6 namespace stan {
+
7 
+
8  namespace gm {
+
9 
+ +
11 
+
12  public:
+
13 
+ +
15 
+
16  _name = "newton";
+
17  _description = "Newton's method";
+
18 
+
19  }
+
20 
+
21  };
+
22 
+
23  } // gm
+
24 
+
25 } // stan
+
26 
+
27 #endif
+
28 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/arg__num__samples_8hpp.html b/doc/api/html/arg__num__samples_8hpp.html new file mode 100644 index 00000000000..f2910fe0b51 --- /dev/null +++ b/doc/api/html/arg__num__samples_8hpp.html @@ -0,0 +1,128 @@ + + + + + +Stan: src/stan/gm/arguments/arg_num_samples.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
arg_num_samples.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + +

+Classes

class  stan::gm::arg_num_samples
 
+ + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::gm
 Directed graphical model compiler.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/arg__num__samples_8hpp_source.html b/doc/api/html/arg__num__samples_8hpp_source.html new file mode 100644 index 00000000000..8d82c774fcd --- /dev/null +++ b/doc/api/html/arg__num__samples_8hpp_source.html @@ -0,0 +1,142 @@ + + + + + +Stan: src/stan/gm/arguments/arg_num_samples.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
arg_num_samples.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__GM__ARGUMENTS__NUM__SAMPLES__HPP__
+
2 #define __STAN__GM__ARGUMENTS__NUM__SAMPLES__HPP__
+
3 
+ +
5 
+
6 namespace stan {
+
7 
+
8  namespace gm {
+
9 
+
10  class arg_num_samples: public int_argument {
+
11 
+
12  public:
+
13 
+ +
15  _name = "num_samples";
+
16  _description = "Number of sampling iterations";
+
17  _validity = "0 <= num_samples";
+
18  _default = "1000";
+
19  _default_value = 1000;
+
20  _constrained = true;
+
21  _good_value = 2.0;
+
22  _bad_value = -1.0;
+ +
24  };
+
25 
+
26  bool is_valid(int value) { return value >= 0; }
+
27 
+
28  };
+
29 
+
30  } // gm
+
31 
+
32 } // stan
+
33 
+
34 #endif
+
35 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/arg__num__warmup_8hpp.html b/doc/api/html/arg__num__warmup_8hpp.html new file mode 100644 index 00000000000..8bb994c8264 --- /dev/null +++ b/doc/api/html/arg__num__warmup_8hpp.html @@ -0,0 +1,128 @@ + + + + + +Stan: src/stan/gm/arguments/arg_num_warmup.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
arg_num_warmup.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + +

+Classes

class  stan::gm::arg_num_warmup
 
+ + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::gm
 Directed graphical model compiler.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/arg__num__warmup_8hpp_source.html b/doc/api/html/arg__num__warmup_8hpp_source.html new file mode 100644 index 00000000000..406f592475d --- /dev/null +++ b/doc/api/html/arg__num__warmup_8hpp_source.html @@ -0,0 +1,142 @@ + + + + + +Stan: src/stan/gm/arguments/arg_num_warmup.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
arg_num_warmup.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__GM__ARGUMENTS__NUM__WARMUP__HPP__
+
2 #define __STAN__GM__ARGUMENTS__NUM__WARMUP__HPP__
+
3 
+ +
5 
+
6 namespace stan {
+
7 
+
8  namespace gm {
+
9 
+
10  class arg_num_warmup: public int_argument {
+
11 
+
12  public:
+
13 
+ +
15  _name = "num_warmup";
+
16  _description = "Number of warmup iterations";
+
17  _validity = "0 <= warmup";
+
18  _default = "1000";
+
19  _default_value = 1000;
+
20  _constrained = true;
+
21  _good_value = 2.0;
+
22  _bad_value = -1.0;
+ +
24  };
+
25 
+
26  bool is_valid(int value) { return value >= 0; }
+
27 
+
28  };
+
29 
+
30  } // gm
+
31 
+
32 } // stan
+
33 
+
34 #endif
+
35 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/arg__nuts_8hpp.html b/doc/api/html/arg__nuts_8hpp.html new file mode 100644 index 00000000000..427e2b75d8c --- /dev/null +++ b/doc/api/html/arg__nuts_8hpp.html @@ -0,0 +1,129 @@ + + + + + +Stan: src/stan/gm/arguments/arg_nuts.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
arg_nuts.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + +

+Classes

class  stan::gm::arg_nuts
 
+ + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::gm
 Directed graphical model compiler.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/arg__nuts_8hpp_source.html b/doc/api/html/arg__nuts_8hpp_source.html new file mode 100644 index 00000000000..aa1d4beadec --- /dev/null +++ b/doc/api/html/arg__nuts_8hpp_source.html @@ -0,0 +1,139 @@ + + + + + +Stan: src/stan/gm/arguments/arg_nuts.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
arg_nuts.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__GM__ARGUMENTS__NUTS__HMC__HPP__
+
2 #define __STAN__GM__ARGUMENTS__NUTS__HMC__HPP__
+
3 
+ +
5 
+ +
7 
+
8 namespace stan {
+
9 
+
10  namespace gm {
+
11 
+ +
13 
+
14  public:
+
15 
+ +
17 
+
18  _name = "nuts";
+
19  _description = "The No-U-Turn Sampler";
+
20 
+
21  _subarguments.push_back(new arg_max_depth());
+
22 
+
23  }
+
24 
+
25  };
+
26 
+
27  } // gm
+
28 
+
29 } // stan
+
30 
+
31 #endif
+
32 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/arg__optimize_8hpp.html b/doc/api/html/arg__optimize_8hpp.html new file mode 100644 index 00000000000..b9ebae5358d --- /dev/null +++ b/doc/api/html/arg__optimize_8hpp.html @@ -0,0 +1,131 @@ + + + + + +Stan: src/stan/gm/arguments/arg_optimize.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
arg_optimize.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + +

+Classes

class  stan::gm::arg_optimize
 
+ + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::gm
 Directed graphical model compiler.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/arg__optimize_8hpp_source.html b/doc/api/html/arg__optimize_8hpp_source.html new file mode 100644 index 00000000000..a470c5c6d76 --- /dev/null +++ b/doc/api/html/arg__optimize_8hpp_source.html @@ -0,0 +1,143 @@ + + + + + +Stan: src/stan/gm/arguments/arg_optimize.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
arg_optimize.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__GM__ARGUMENTS__OPTIMIZE__HPP__
+
2 #define __STAN__GM__ARGUMENTS__OPTIMIZE__HPP__
+
3 
+ +
5 
+ + + +
9 
+
10 namespace stan {
+
11 
+
12  namespace gm {
+
13 
+ +
15 
+
16  public:
+
17 
+ +
19 
+
20  _name = "optimize";
+
21  _description = "Point estimation";
+
22 
+
23  _subarguments.push_back(new arg_optimize_algo());
+
24  _subarguments.push_back(new arg_iter());
+
25  _subarguments.push_back(new arg_save_iterations());
+
26 
+
27  }
+
28 
+
29  };
+
30 
+
31  } // gm
+
32 
+
33 } // stan
+
34 
+
35 #endif
+
36 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/arg__optimize__algo_8hpp.html b/doc/api/html/arg__optimize__algo_8hpp.html new file mode 100644 index 00000000000..beecd485513 --- /dev/null +++ b/doc/api/html/arg__optimize__algo_8hpp.html @@ -0,0 +1,131 @@ + + + + + +Stan: src/stan/gm/arguments/arg_optimize_algo.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
arg_optimize_algo.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + +

+Classes

class  stan::gm::arg_optimize_algo
 
+ + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::gm
 Directed graphical model compiler.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/arg__optimize__algo_8hpp_source.html b/doc/api/html/arg__optimize__algo_8hpp_source.html new file mode 100644 index 00000000000..da30d5f74a5 --- /dev/null +++ b/doc/api/html/arg__optimize__algo_8hpp_source.html @@ -0,0 +1,146 @@ + + + + + +Stan: src/stan/gm/arguments/arg_optimize_algo.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
arg_optimize_algo.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__GM__ARGUMENTS__OPTIMIZE__ALGO__HPP__
+
2 #define __STAN__GM__ARGUMENTS__OPTIMIZE__ALGO__HPP__
+
3 
+ +
5 
+ + + +
9 
+
10 namespace stan {
+
11 
+
12  namespace gm {
+
13 
+ +
15 
+
16  public:
+
17 
+ +
19 
+
20  _name = "algorithm";
+
21  _description = "Optimization algorithm";
+
22 
+
23  _values.push_back(new arg_nesterov());
+
24  _values.push_back(new arg_bfgs());
+
25  _values.push_back(new arg_newton());
+
26 
+
27  _default_cursor = 1;
+ +
29 
+
30  }
+
31 
+
32  };
+
33 
+
34  } // gm
+
35 
+
36 } // stan
+
37 
+
38 #endif
+
39 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/arg__output_8hpp.html b/doc/api/html/arg__output_8hpp.html new file mode 100644 index 00000000000..1e73a817287 --- /dev/null +++ b/doc/api/html/arg__output_8hpp.html @@ -0,0 +1,131 @@ + + + + + +Stan: src/stan/gm/arguments/arg_output.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
arg_output.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + +

+Classes

class  stan::gm::arg_output
 
+ + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::gm
 Directed graphical model compiler.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/arg__output_8hpp_source.html b/doc/api/html/arg__output_8hpp_source.html new file mode 100644 index 00000000000..fb47a343afa --- /dev/null +++ b/doc/api/html/arg__output_8hpp_source.html @@ -0,0 +1,143 @@ + + + + + +Stan: src/stan/gm/arguments/arg_output.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
arg_output.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__GM__ARGUMENTS__OUTPUT__HPP__
+
2 #define __STAN__GM__ARGUMENTS__OUTPUT__HPP__
+
3 
+ +
5 
+ + + +
9 
+
10 namespace stan {
+
11 
+
12  namespace gm {
+
13 
+ +
15 
+
16  public:
+
17 
+ +
19 
+
20  _name = "output";
+
21  _description = "File output options";
+
22 
+
23  _subarguments.push_back(new arg_output_file());
+
24  _subarguments.push_back(new arg_diagnostic_file());
+
25  _subarguments.push_back(new arg_refresh());
+
26 
+
27  }
+
28 
+
29  };
+
30 
+
31  } // gm
+
32 
+
33 } // stan
+
34 
+
35 #endif
+
36 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/arg__output__file_8hpp.html b/doc/api/html/arg__output__file_8hpp.html new file mode 100644 index 00000000000..5d59fc8adc4 --- /dev/null +++ b/doc/api/html/arg__output__file_8hpp.html @@ -0,0 +1,128 @@ + + + + + +Stan: src/stan/gm/arguments/arg_output_file.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
arg_output_file.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + +

+Classes

class  stan::gm::arg_output_file
 
+ + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::gm
 Directed graphical model compiler.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/arg__output__file_8hpp_source.html b/doc/api/html/arg__output__file_8hpp_source.html new file mode 100644 index 00000000000..0e6b700594f --- /dev/null +++ b/doc/api/html/arg__output__file_8hpp_source.html @@ -0,0 +1,138 @@ + + + + + +Stan: src/stan/gm/arguments/arg_output_file.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
arg_output_file.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__GM__ARGUMENTS__OUTPUT__FILE__HPP__
+
2 #define __STAN__GM__ARGUMENTS__OUTPUT__FILE__HPP__
+
3 
+ +
5 
+
6 namespace stan {
+
7 
+
8  namespace gm {
+
9 
+ +
11 
+
12  public:
+
13 
+ +
15  _name = "file";
+
16  _description = "Output file";
+
17  _validity = "Path to existing file";
+
18  _default = "output.csv";
+
19  _default_value = "output.csv";
+
20  _constrained = false;
+
21  _good_value = "good";
+ +
23  };
+
24 
+
25  };
+
26 
+
27  } // gm
+
28 
+
29 } // stan
+
30 
+
31 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/arg__random_8hpp.html b/doc/api/html/arg__random_8hpp.html new file mode 100644 index 00000000000..25ad6ee84d1 --- /dev/null +++ b/doc/api/html/arg__random_8hpp.html @@ -0,0 +1,129 @@ + + + + + +Stan: src/stan/gm/arguments/arg_random.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
arg_random.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + +

+Classes

class  stan::gm::arg_random
 
+ + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::gm
 Directed graphical model compiler.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/arg__random_8hpp_source.html b/doc/api/html/arg__random_8hpp_source.html new file mode 100644 index 00000000000..3e7e1b13705 --- /dev/null +++ b/doc/api/html/arg__random_8hpp_source.html @@ -0,0 +1,139 @@ + + + + + +Stan: src/stan/gm/arguments/arg_random.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
arg_random.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__GM__ARGUMENTS__RANDOM__HPP__
+
2 #define __STAN__GM__ARGUMENTS__RANDOM__HPP__
+
3 
+ +
5 
+ +
7 
+
8 namespace stan {
+
9 
+
10  namespace gm {
+
11 
+ +
13 
+
14  public:
+
15 
+ +
17 
+
18  _name = "random";
+
19  _description = "Random number configuration";
+
20 
+
21  _subarguments.push_back(new arg_seed());
+
22 
+
23  }
+
24 
+
25  };
+
26 
+
27  } // gm
+
28 
+
29 } // stan
+
30 
+
31 #endif
+
32 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/arg__refresh_8hpp.html b/doc/api/html/arg__refresh_8hpp.html new file mode 100644 index 00000000000..8a87e82b750 --- /dev/null +++ b/doc/api/html/arg__refresh_8hpp.html @@ -0,0 +1,128 @@ + + + + + +Stan: src/stan/gm/arguments/arg_refresh.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
arg_refresh.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + +

+Classes

class  stan::gm::arg_refresh
 
+ + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::gm
 Directed graphical model compiler.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/arg__refresh_8hpp_source.html b/doc/api/html/arg__refresh_8hpp_source.html new file mode 100644 index 00000000000..f332f903c77 --- /dev/null +++ b/doc/api/html/arg__refresh_8hpp_source.html @@ -0,0 +1,142 @@ + + + + + +Stan: src/stan/gm/arguments/arg_refresh.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
arg_refresh.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__GM__ARGUMENTS__REFRESH__HPP__
+
2 #define __STAN__GM__ARGUMENTS__REFRESH__HPP__
+
3 
+ +
5 
+
6 namespace stan {
+
7 
+
8  namespace gm {
+
9 
+
10  class arg_refresh: public int_argument {
+
11 
+
12  public:
+
13 
+ +
15  _name = "refresh";
+
16  _description = "Number of interations between screen updates";
+
17  _validity = "0 <= refresh";
+
18  _default = "100";
+
19  _default_value = 100;
+
20  _constrained = true;
+
21  _good_value = 2.0;
+
22  _bad_value = -1.0;
+ +
24  };
+
25 
+
26  bool is_valid(int value) { return value >= 0; }
+
27 
+
28  };
+
29 
+
30  } // gm
+
31 
+
32 } // stan
+
33 
+
34 #endif
+
35 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/arg__rwm_8hpp.html b/doc/api/html/arg__rwm_8hpp.html new file mode 100644 index 00000000000..fab8513dc16 --- /dev/null +++ b/doc/api/html/arg__rwm_8hpp.html @@ -0,0 +1,128 @@ + + + + + +Stan: src/stan/gm/arguments/arg_rwm.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
arg_rwm.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + +

+Classes

class  stan::gm::arg_rwm
 
+ + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::gm
 Directed graphical model compiler.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/arg__rwm_8hpp_source.html b/doc/api/html/arg__rwm_8hpp_source.html new file mode 100644 index 00000000000..b326f79436c --- /dev/null +++ b/doc/api/html/arg__rwm_8hpp_source.html @@ -0,0 +1,135 @@ + + + + + +Stan: src/stan/gm/arguments/arg_rwm.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
arg_rwm.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__GM__ARGUMENTS__RWM__HPP__
+
2 #define __STAN__GM__ARGUMENTS__RWM__HPP__
+
3 
+ +
5 
+
6 namespace stan {
+
7 
+
8  namespace gm {
+
9 
+
10  class arg_rwm: public categorical_argument {
+
11 
+
12  public:
+
13 
+
14  arg_rwm() {
+
15 
+
16  _name = "rwm";
+
17  _description = "Random Walk Metropolis Monte Carlo";
+
18 
+
19  }
+
20 
+
21  };
+
22 
+
23  } // gm
+
24 
+
25 } // stan
+
26 
+
27 #endif
+
28 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/arg__sample_8hpp.html b/doc/api/html/arg__sample_8hpp.html new file mode 100644 index 00000000000..a1bd421dc4e --- /dev/null +++ b/doc/api/html/arg__sample_8hpp.html @@ -0,0 +1,134 @@ + + + + + +Stan: src/stan/gm/arguments/arg_sample.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
arg_sample.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + +

+Classes

class  stan::gm::arg_sample
 
+ + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::gm
 Directed graphical model compiler.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/arg__sample_8hpp_source.html b/doc/api/html/arg__sample_8hpp_source.html new file mode 100644 index 00000000000..53e04b906b9 --- /dev/null +++ b/doc/api/html/arg__sample_8hpp_source.html @@ -0,0 +1,149 @@ + + + + + +Stan: src/stan/gm/arguments/arg_sample.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
arg_sample.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__GM__ARGUMENTS__SAMPLE__HPP__
+
2 #define __STAN__GM__ARGUMENTS__SAMPLE__HPP__
+
3 
+ +
5 
+ + + + + + +
12 
+
13 namespace stan {
+
14 
+
15  namespace gm {
+
16 
+ +
18 
+
19  public:
+
20 
+ +
22 
+
23  _name = "sample";
+
24  _description = "Bayesian inference with Markov Chain Monte Carlo";
+
25 
+
26  _subarguments.push_back(new arg_num_samples());
+
27  _subarguments.push_back(new arg_num_warmup());
+
28  _subarguments.push_back(new arg_save_warmup());
+
29  _subarguments.push_back(new arg_thin());
+
30  _subarguments.push_back(new arg_adapt());
+
31  _subarguments.push_back(new arg_sample_algo());
+
32 
+
33  }
+
34 
+
35  };
+
36 
+
37  } // gm
+
38 
+
39 } // stan
+
40 
+
41 #endif
+
42 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/arg__sample__algo_8hpp.html b/doc/api/html/arg__sample__algo_8hpp.html new file mode 100644 index 00000000000..c3822d070f6 --- /dev/null +++ b/doc/api/html/arg__sample__algo_8hpp.html @@ -0,0 +1,130 @@ + + + + + +Stan: src/stan/gm/arguments/arg_sample_algo.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
arg_sample_algo.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + +

+Classes

class  stan::gm::arg_sample_algo
 
+ + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::gm
 Directed graphical model compiler.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/arg__sample__algo_8hpp_source.html b/doc/api/html/arg__sample__algo_8hpp_source.html new file mode 100644 index 00000000000..2633ca474bd --- /dev/null +++ b/doc/api/html/arg__sample__algo_8hpp_source.html @@ -0,0 +1,144 @@ + + + + + +Stan: src/stan/gm/arguments/arg_sample_algo.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
arg_sample_algo.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__GM__ARGUMENTS__SAMPLE__ALGO__HPP__
+
2 #define __STAN__GM__ARGUMENTS__SAMPLE__ALGO__HPP__
+
3 
+ +
5 
+ + +
8 
+
9 namespace stan {
+
10 
+
11  namespace gm {
+
12 
+ +
14 
+
15  public:
+
16 
+ +
18 
+
19  _name = "algorithm";
+
20  _description = "Sampling algorithm";
+
21 
+
22  _values.push_back(new arg_hmc());
+
23  _values.push_back(new arg_fixed_param());
+
24 
+
25  _default_cursor = 0;
+ +
27 
+
28  }
+
29 
+
30  };
+
31 
+
32  } // gm
+
33 
+
34 } // stan
+
35 
+
36 #endif
+
37 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/arg__save__iterations_8hpp.html b/doc/api/html/arg__save__iterations_8hpp.html new file mode 100644 index 00000000000..8f2795693ef --- /dev/null +++ b/doc/api/html/arg__save__iterations_8hpp.html @@ -0,0 +1,128 @@ + + + + + +Stan: src/stan/gm/arguments/arg_save_iterations.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
arg_save_iterations.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + +

+Classes

class  stan::gm::arg_save_iterations
 
+ + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::gm
 Directed graphical model compiler.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/arg__save__iterations_8hpp_source.html b/doc/api/html/arg__save__iterations_8hpp_source.html new file mode 100644 index 00000000000..291bd36ccad --- /dev/null +++ b/doc/api/html/arg__save__iterations_8hpp_source.html @@ -0,0 +1,139 @@ + + + + + +Stan: src/stan/gm/arguments/arg_save_iterations.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
arg_save_iterations.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__GM__ARGUMENTS__OUTPUT__SAVE__ITERATIONS__HPP__
+
2 #define __STAN__GM__ARGUMENTS__OUTPUT__SAVE__ITERATIONS__HPP__
+
3 
+ +
5 
+
6 namespace stan {
+
7 
+
8  namespace gm {
+
9 
+ +
11 
+
12  public:
+
13 
+ +
15  _name = "save_iterations";
+
16  _description = "Stream optimization progress to output?";
+
17  _validity = "[0, 1]";
+
18  _default = "0";
+
19  _default_value = false;
+
20  _constrained = false;
+
21  _good_value = 1;
+ +
23  };
+
24 
+
25  };
+
26 
+
27  } // gm
+
28 
+
29 } // stan
+
30 
+
31 #endif
+
32 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/arg__save__warmup_8hpp.html b/doc/api/html/arg__save__warmup_8hpp.html new file mode 100644 index 00000000000..c9c5f008d35 --- /dev/null +++ b/doc/api/html/arg__save__warmup_8hpp.html @@ -0,0 +1,128 @@ + + + + + +Stan: src/stan/gm/arguments/arg_save_warmup.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
arg_save_warmup.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + +

+Classes

class  stan::gm::arg_save_warmup
 
+ + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::gm
 Directed graphical model compiler.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/arg__save__warmup_8hpp_source.html b/doc/api/html/arg__save__warmup_8hpp_source.html new file mode 100644 index 00000000000..02fe675f296 --- /dev/null +++ b/doc/api/html/arg__save__warmup_8hpp_source.html @@ -0,0 +1,139 @@ + + + + + +Stan: src/stan/gm/arguments/arg_save_warmup.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
arg_save_warmup.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__GM__ARGUMENTS__OUTPUT__SAVE__WARMUP__HPP__
+
2 #define __STAN__GM__ARGUMENTS__OUTPUT__SAVE__WARMUP__HPP__
+
3 
+ +
5 
+
6 namespace stan {
+
7 
+
8  namespace gm {
+
9 
+ +
11 
+
12  public:
+
13 
+ +
15  _name = "save_warmup";
+
16  _description = "Stream warmup samples to output?";
+
17  _validity = "[0, 1]";
+
18  _default = "0";
+
19  _default_value = false;
+
20  _constrained = false;
+
21  _good_value = 1;
+ +
23  };
+
24 
+
25  };
+
26 
+
27  } // gm
+
28 
+
29 } // stan
+
30 
+
31 #endif
+
32 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/arg__seed_8hpp.html b/doc/api/html/arg__seed_8hpp.html new file mode 100644 index 00000000000..fa531d1dbbc --- /dev/null +++ b/doc/api/html/arg__seed_8hpp.html @@ -0,0 +1,128 @@ + + + + + +Stan: src/stan/gm/arguments/arg_seed.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
arg_seed.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + +

+Classes

class  stan::gm::arg_seed
 
+ + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::gm
 Directed graphical model compiler.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/arg__seed_8hpp_source.html b/doc/api/html/arg__seed_8hpp_source.html new file mode 100644 index 00000000000..60b213e79a7 --- /dev/null +++ b/doc/api/html/arg__seed_8hpp_source.html @@ -0,0 +1,139 @@ + + + + + +Stan: src/stan/gm/arguments/arg_seed.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
arg_seed.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__GM__ARGUMENTS__SEED__HPP__
+
2 #define __STAN__GM__ARGUMENTS__SEED__HPP__
+
3 
+ +
5 
+
6 namespace stan {
+
7 
+
8  namespace gm {
+
9 
+
10  class arg_seed: public u_int_argument {
+
11 
+
12  public:
+
13 
+ +
15  _name = "seed";
+
16  _description = "Random number generator seed";
+
17  _validity = "seed > 0, if negative seed is generated from time";
+
18  _default = "-1";
+
19  _default_value = -1;
+
20  _constrained = false;
+
21  _good_value = 18383;
+ +
23  };
+
24 
+
25  };
+
26 
+
27  } // gm
+
28 
+
29 } // stan
+
30 
+
31 #endif
+
32 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/arg__static_8hpp.html b/doc/api/html/arg__static_8hpp.html new file mode 100644 index 00000000000..fd4cbae59bc --- /dev/null +++ b/doc/api/html/arg__static_8hpp.html @@ -0,0 +1,129 @@ + + + + + +Stan: src/stan/gm/arguments/arg_static.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
arg_static.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + +

+Classes

class  stan::gm::arg_static
 
+ + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::gm
 Directed graphical model compiler.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/arg__static_8hpp_source.html b/doc/api/html/arg__static_8hpp_source.html new file mode 100644 index 00000000000..484d705ba70 --- /dev/null +++ b/doc/api/html/arg__static_8hpp_source.html @@ -0,0 +1,139 @@ + + + + + +Stan: src/stan/gm/arguments/arg_static.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
arg_static.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__GM__ARGUMENTS__STATIC__HMC__HPP__
+
2 #define __STAN__GM__ARGUMENTS__STATIC__HMC__HPP__
+
3 
+ +
5 
+ +
7 
+
8 namespace stan {
+
9 
+
10  namespace gm {
+
11 
+ +
13 
+
14  public:
+
15 
+ +
17 
+
18  _name = "static";
+
19  _description = "Static integration time";
+
20 
+
21  _subarguments.push_back(new arg_int_time());
+
22 
+
23  }
+
24 
+
25  };
+
26 
+
27  } // gm
+
28 
+
29 } // stan
+
30 
+
31 #endif
+
32 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/arg__stepsize_8hpp.html b/doc/api/html/arg__stepsize_8hpp.html new file mode 100644 index 00000000000..51b873d6861 --- /dev/null +++ b/doc/api/html/arg__stepsize_8hpp.html @@ -0,0 +1,128 @@ + + + + + +Stan: src/stan/gm/arguments/arg_stepsize.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
arg_stepsize.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + +

+Classes

class  stan::gm::arg_stepsize
 
+ + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::gm
 Directed graphical model compiler.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/arg__stepsize_8hpp_source.html b/doc/api/html/arg__stepsize_8hpp_source.html new file mode 100644 index 00000000000..7d046dc7c54 --- /dev/null +++ b/doc/api/html/arg__stepsize_8hpp_source.html @@ -0,0 +1,141 @@ + + + + + +Stan: src/stan/gm/arguments/arg_stepsize.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
arg_stepsize.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__GM__ARGUMENTS__STEPSIZE__HPP__
+
2 #define __STAN__GM__ARGUMENTS__STEPSIZE__HPP__
+
3 
+ +
5 
+
6 namespace stan {
+
7 
+
8  namespace gm {
+
9 
+
10  class arg_stepsize: public real_argument {
+
11 
+
12  public:
+
13 
+ +
15  _name = "stepsize";
+
16  _description = "Step size for discrete evolution";
+
17  _validity = "0 < stepsize";
+
18  _default = "1";
+
19  _default_value = 1.0;
+
20  _constrained = true;
+
21  _good_value = 2.0;
+
22  _bad_value = -1.0;
+ +
24  };
+
25 
+
26  bool is_valid(double value) { return value > 0; }
+
27 
+
28  };
+
29 
+
30  } // gm
+
31 
+
32 } // stan
+
33 
+
34 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/arg__stepsize__jitter_8hpp.html b/doc/api/html/arg__stepsize__jitter_8hpp.html new file mode 100644 index 00000000000..d6724cfd0c3 --- /dev/null +++ b/doc/api/html/arg__stepsize__jitter_8hpp.html @@ -0,0 +1,128 @@ + + + + + +Stan: src/stan/gm/arguments/arg_stepsize_jitter.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
arg_stepsize_jitter.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + +

+Classes

class  stan::gm::arg_stepsize_jitter
 
+ + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::gm
 Directed graphical model compiler.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/arg__stepsize__jitter_8hpp_source.html b/doc/api/html/arg__stepsize__jitter_8hpp_source.html new file mode 100644 index 00000000000..ff4cafde9c7 --- /dev/null +++ b/doc/api/html/arg__stepsize__jitter_8hpp_source.html @@ -0,0 +1,141 @@ + + + + + +Stan: src/stan/gm/arguments/arg_stepsize_jitter.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
arg_stepsize_jitter.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__GM__ARGUMENTS__STEPSIZE__JITTER__HPP__
+
2 #define __STAN__GM__ARGUMENTS__STEPSIZE__JITTER__HPP__
+
3 
+ +
5 
+
6 namespace stan {
+
7 
+
8  namespace gm {
+
9 
+ +
11 
+
12  public:
+
13 
+ +
15  _name = "stepsize_jitter";
+
16  _description = "Uniformly random jitter of the stepsize, in percent";
+
17  _validity = "0 <= stepsize_jitter <= 1";
+
18  _default = "0";
+
19  _default_value = 0.0;
+
20  _constrained = true;
+
21  _good_value = 0.5;
+
22  _bad_value = -1.0;
+ +
24  };
+
25 
+
26  bool is_valid(double value) { return 0 <= value && value <= 1; }
+
27 
+
28  };
+
29 
+
30  } // gm
+
31 
+
32 } // stan
+
33 
+
34 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/arg__test_8hpp.html b/doc/api/html/arg__test_8hpp.html new file mode 100644 index 00000000000..0245fa4d7f2 --- /dev/null +++ b/doc/api/html/arg__test_8hpp.html @@ -0,0 +1,129 @@ + + + + + +Stan: src/stan/gm/arguments/arg_test.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
arg_test.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + +

+Classes

class  stan::gm::arg_test
 
+ + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::gm
 Directed graphical model compiler.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/arg__test_8hpp_source.html b/doc/api/html/arg__test_8hpp_source.html new file mode 100644 index 00000000000..c12443da43e --- /dev/null +++ b/doc/api/html/arg__test_8hpp_source.html @@ -0,0 +1,142 @@ + + + + + +Stan: src/stan/gm/arguments/arg_test.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
arg_test.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__GM__ARGUMENTS__TEST__HPP__
+
2 #define __STAN__GM__ARGUMENTS__TEST__HPP__
+
3 
+ +
5 
+ +
7 
+
8 namespace stan {
+
9 
+
10  namespace gm {
+
11 
+
12  class arg_test: public list_argument {
+
13 
+
14  public:
+
15 
+ +
17 
+
18  _name = "test";
+
19  _description = "Diagnostic test";
+
20 
+
21  _values.push_back(new arg_test_gradient());
+
22 
+
23  _default_cursor = 0;
+ +
25 
+
26  }
+
27 
+
28  };
+
29 
+
30  } // gm
+
31 
+
32 } // stan
+
33 
+
34 #endif
+
35 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/arg__test__grad__eps_8hpp.html b/doc/api/html/arg__test__grad__eps_8hpp.html new file mode 100644 index 00000000000..ebb29553eff --- /dev/null +++ b/doc/api/html/arg__test__grad__eps_8hpp.html @@ -0,0 +1,128 @@ + + + + + +Stan: src/stan/gm/arguments/arg_test_grad_eps.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
arg_test_grad_eps.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + +

+Classes

class  stan::gm::arg_test_grad_eps
 
+ + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::gm
 Directed graphical model compiler.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/arg__test__grad__eps_8hpp_source.html b/doc/api/html/arg__test__grad__eps_8hpp_source.html new file mode 100644 index 00000000000..e7c59b15971 --- /dev/null +++ b/doc/api/html/arg__test__grad__eps_8hpp_source.html @@ -0,0 +1,141 @@ + + + + + +Stan: src/stan/gm/arguments/arg_test_grad_eps.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
arg_test_grad_eps.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__GM__ARGUMENTS__TEST__GRAD__EPS__HPP__
+
2 #define __STAN__GM__ARGUMENTS__TEST__GRAD__EPS__HPP__
+
3 
+ +
5 
+
6 namespace stan {
+
7 
+
8  namespace gm {
+
9 
+ +
11 
+
12  public:
+
13 
+ +
15  _name = "epsilon";
+
16  _description = "Finite difference step size";
+
17  _validity = "0 < epsilon";
+
18  _default = "1e-6";
+
19  _default_value = 1e-6;
+
20  _constrained = true;
+
21  _good_value = 1e-6;
+
22  _bad_value = -1.0;
+ +
24  };
+
25 
+
26  bool is_valid(double value) { return value > 0; }
+
27 
+
28  };
+
29 
+
30  } // gm
+
31 
+
32 } // stan
+
33 
+
34 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/arg__test__grad__err_8hpp.html b/doc/api/html/arg__test__grad__err_8hpp.html new file mode 100644 index 00000000000..741e28489a6 --- /dev/null +++ b/doc/api/html/arg__test__grad__err_8hpp.html @@ -0,0 +1,128 @@ + + + + + +Stan: src/stan/gm/arguments/arg_test_grad_err.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
arg_test_grad_err.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + +

+Classes

class  stan::gm::arg_test_grad_err
 
+ + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::gm
 Directed graphical model compiler.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/arg__test__grad__err_8hpp_source.html b/doc/api/html/arg__test__grad__err_8hpp_source.html new file mode 100644 index 00000000000..98c7ffc94ec --- /dev/null +++ b/doc/api/html/arg__test__grad__err_8hpp_source.html @@ -0,0 +1,141 @@ + + + + + +Stan: src/stan/gm/arguments/arg_test_grad_err.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
arg_test_grad_err.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__GM__ARGUMENTS__TEST__GRAD__ERR__HPP__
+
2 #define __STAN__GM__ARGUMENTS__TEST__GRAD__ERR__HPP__
+
3 
+ +
5 
+
6 namespace stan {
+
7 
+
8  namespace gm {
+
9 
+ +
11 
+
12  public:
+
13 
+ +
15  _name = "error";
+
16  _description = "Error threshold";
+
17  _validity = "0 < error";
+
18  _default = "1e-6";
+
19  _default_value = 1e-6;
+
20  _constrained = true;
+
21  _good_value = 1e-6;
+
22  _bad_value = -1.0;
+ +
24  };
+
25 
+
26  bool is_valid(double value) { return value > 0; }
+
27 
+
28  };
+
29 
+
30  } // gm
+
31 
+
32 } // stan
+
33 
+
34 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/arg__test__gradient_8hpp.html b/doc/api/html/arg__test__gradient_8hpp.html new file mode 100644 index 00000000000..5ae914aead3 --- /dev/null +++ b/doc/api/html/arg__test__gradient_8hpp.html @@ -0,0 +1,130 @@ + + + + + +Stan: src/stan/gm/arguments/arg_test_gradient.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
arg_test_gradient.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + +

+Classes

class  stan::gm::arg_test_gradient
 
+ + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::gm
 Directed graphical model compiler.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/arg__test__gradient_8hpp_source.html b/doc/api/html/arg__test__gradient_8hpp_source.html new file mode 100644 index 00000000000..1ef6421b596 --- /dev/null +++ b/doc/api/html/arg__test__gradient_8hpp_source.html @@ -0,0 +1,140 @@ + + + + + +Stan: src/stan/gm/arguments/arg_test_gradient.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
arg_test_gradient.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__GM__ARGUMENTS__TEST__GRADIENT__HPP__
+
2 #define __STAN__GM__ARGUMENTS__TEST__GRADIENT__HPP__
+
3 
+ + + +
7 
+
8 namespace stan {
+
9 
+
10  namespace gm {
+
11 
+ +
13 
+
14  public:
+
15 
+ +
17 
+
18  _name = "gradient";
+
19  _description = "Check model gradient against finite differences";
+
20 
+
21  _subarguments.push_back(new arg_test_grad_eps());
+
22  _subarguments.push_back(new arg_test_grad_err());
+
23 
+
24  }
+
25 
+
26  };
+
27 
+
28  } // gm
+
29 
+
30 } // stan
+
31 
+
32 #endif
+
33 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/arg__thin_8hpp.html b/doc/api/html/arg__thin_8hpp.html new file mode 100644 index 00000000000..3cb0345c88f --- /dev/null +++ b/doc/api/html/arg__thin_8hpp.html @@ -0,0 +1,128 @@ + + + + + +Stan: src/stan/gm/arguments/arg_thin.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
arg_thin.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + +

+Classes

class  stan::gm::arg_thin
 
+ + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::gm
 Directed graphical model compiler.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/arg__thin_8hpp_source.html b/doc/api/html/arg__thin_8hpp_source.html new file mode 100644 index 00000000000..c6e6b69b3b5 --- /dev/null +++ b/doc/api/html/arg__thin_8hpp_source.html @@ -0,0 +1,142 @@ + + + + + +Stan: src/stan/gm/arguments/arg_thin.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
arg_thin.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__GM__ARGUMENTS__THIN__HPP__
+
2 #define __STAN__GM__ARGUMENTS__THIN__HPP__
+
3 
+ +
5 
+
6 namespace stan {
+
7 
+
8  namespace gm {
+
9 
+
10  class arg_thin: public int_argument {
+
11 
+
12  public:
+
13 
+ +
15  _name = "thin";
+
16  _description = "Period between saved samples";
+
17  _validity = "0 < thin";
+
18  _default = "1";
+
19  _default_value = 1;
+
20  _constrained = true;
+
21  _good_value = 2.0;
+
22  _bad_value = -1.0;
+ +
24  };
+
25 
+
26  bool is_valid(int value) { return value > 0; }
+
27 
+
28  };
+
29 
+
30  } // gm
+
31 
+
32 } // stan
+
33 
+
34 #endif
+
35 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/arg__tolerance_8hpp.html b/doc/api/html/arg__tolerance_8hpp.html new file mode 100644 index 00000000000..0be15dd6e39 --- /dev/null +++ b/doc/api/html/arg__tolerance_8hpp.html @@ -0,0 +1,128 @@ + + + + + +Stan: src/stan/gm/arguments/arg_tolerance.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
arg_tolerance.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + +

+Classes

class  stan::gm::arg_tolerance
 
+ + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::gm
 Directed graphical model compiler.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/arg__tolerance_8hpp_source.html b/doc/api/html/arg__tolerance_8hpp_source.html new file mode 100644 index 00000000000..6e0ff9c6ce7 --- /dev/null +++ b/doc/api/html/arg__tolerance_8hpp_source.html @@ -0,0 +1,141 @@ + + + + + +Stan: src/stan/gm/arguments/arg_tolerance.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
arg_tolerance.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__GM__ARGUMENTS__TOLERANCE_HPP__
+
2 #define __STAN__GM__ARGUMENTS__TOLERANCE_HPP__
+
3 
+ +
5 
+
6 namespace stan {
+
7 
+
8  namespace gm {
+
9 
+
10  class arg_tolerance : public real_argument {
+
11 
+
12  public:
+
13 
+
14  arg_tolerance(const char *name, const char *desc, const char *def_str, double def) : real_argument() {
+
15  _name = name;
+
16  _description = desc;
+
17  _validity = "0 < tol";
+
18  _default = def_str;
+
19  _default_value = def;
+
20  _constrained = true;
+
21  _good_value = 1.0;
+
22  _bad_value = -1.0;
+ +
24  };
+
25 
+
26  bool is_valid(double value) { return value > 0; }
+
27 
+
28  };
+
29 
+
30  } // gm
+
31 
+
32 } // stan
+
33 
+
34 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/arg__unit__e_8hpp.html b/doc/api/html/arg__unit__e_8hpp.html new file mode 100644 index 00000000000..946d31aebdf --- /dev/null +++ b/doc/api/html/arg__unit__e_8hpp.html @@ -0,0 +1,128 @@ + + + + + +Stan: src/stan/gm/arguments/arg_unit_e.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
arg_unit_e.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + +

+Classes

class  stan::gm::arg_unit_e
 
+ + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::gm
 Directed graphical model compiler.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/arg__unit__e_8hpp_source.html b/doc/api/html/arg__unit__e_8hpp_source.html new file mode 100644 index 00000000000..f0d0e70a8ec --- /dev/null +++ b/doc/api/html/arg__unit__e_8hpp_source.html @@ -0,0 +1,135 @@ + + + + + +Stan: src/stan/gm/arguments/arg_unit_e.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
arg_unit_e.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__GM__ARGUMENTS__UNIT_E__HPP__
+
2 #define __STAN__GM__ARGUMENTS__UNIT_E__HPP__
+
3 
+ +
5 
+
6 namespace stan {
+
7 
+
8  namespace gm {
+
9 
+
10  class arg_unit_e: public unvalued_argument {
+
11 
+
12  public:
+
13 
+ +
15 
+
16  _name = "unit_e";
+
17  _description = "Euclidean manifold with unit metric";
+
18 
+
19  }
+
20 
+
21  };
+
22 
+
23  } // gm
+
24 
+
25 } // stan
+
26 
+
27 #endif
+
28 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/argument_8hpp.html b/doc/api/html/argument_8hpp.html new file mode 100644 index 00000000000..725e459b534 --- /dev/null +++ b/doc/api/html/argument_8hpp.html @@ -0,0 +1,131 @@ + + + + + +Stan: src/stan/gm/arguments/argument.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
argument.hpp File Reference
+
+
+
#include <vector>
+#include <string>
+#include <sstream>
+#include <iomanip>
+
+

Go to the source code of this file.

+ + + + +

+Classes

class  stan::gm::argument
 
+ + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::gm
 Directed graphical model compiler.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/argument_8hpp_source.html b/doc/api/html/argument_8hpp_source.html new file mode 100644 index 00000000000..92d8d784a47 --- /dev/null +++ b/doc/api/html/argument_8hpp_source.html @@ -0,0 +1,193 @@ + + + + + +Stan: src/stan/gm/arguments/argument.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
argument.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__GM__ARGUMENTS__ARGUMENT__BETA__
+
2 #define __STAN__GM__ARGUMENTS__ARGUMENT__BETA__
+
3 
+
4 #include <vector>
+
5 #include <string>
+
6 #include <sstream>
+
7 #include <iomanip>
+
8 
+
9 namespace stan {
+
10  namespace gm {
+
11 
+
12  class argument {
+
13  public:
+
14 
+ +
16  : indent_width(2),
+
17  help_width(20) { }
+
18 
+
19  argument(const std::string name)
+
20  : _name(name),
+
21  indent_width(2),
+
22  help_width(20) { }
+
23 
+
24  virtual ~argument() { }
+
25 
+
26  std::string name() const {
+
27  return _name;
+
28  }
+
29 
+
30  std::string description() const {
+
31  return _description;
+
32  }
+
33 
+
34  virtual void print(std::ostream* s, const int depth, const std::string prefix) = 0;
+
35  virtual void print_help(std::ostream* s, const int depth, const bool recurse) = 0;
+
36 
+
37  virtual bool parse_args(std::vector<std::string>& args,
+
38  std::ostream* out,
+
39  std::ostream* err,
+
40  bool& help_flag) {
+
41  return true;
+
42  }
+
43 
+
44  virtual void probe_args(argument* base_arg, std::stringstream& s) {};
+
45 
+
46  virtual void find_arg(std::string name,
+
47  std::string prefix,
+
48  std::vector<std::string>& valid_paths) {
+
49  if (name == _name) {
+
50  valid_paths.push_back(prefix + _name);
+
51  }
+
52  }
+
53 
+
54  static void split_arg(const std::string& arg, std::string& name, std::string& value) {
+
55  size_t pos = arg.find('=');
+
56 
+
57  if (pos != std::string::npos) {
+
58  name = arg.substr(0, pos);
+
59  value = arg.substr(pos + 1, arg.size() - pos);
+
60  }
+
61  else {
+
62  name = arg;
+
63  value = "";
+
64  }
+
65  }
+
66 
+
67  virtual argument* arg(const std::string name) {
+
68  return 0;
+
69  }
+
70 
+
71  int compute_indent(const int depth) {
+
72  return indent_width * depth + 1;
+
73  }
+
74 
+
75  protected:
+
76  std::string _name;
+
77  std::string _description;
+
78 
+ + +
81  };
+
82 
+
83  } // gm
+
84 } // stan
+
85 #endif
+
86 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/argument__parser_8hpp.html b/doc/api/html/argument__parser_8hpp.html new file mode 100644 index 00000000000..e0c9febf904 --- /dev/null +++ b/doc/api/html/argument__parser_8hpp.html @@ -0,0 +1,134 @@ + + + + + +Stan: src/stan/gm/arguments/argument_parser.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
argument_parser.hpp File Reference
+
+
+
#include <string>
+#include <vector>
+#include <fstream>
+#include <cstring>
+#include <stan/gm/arguments/argument.hpp>
+#include <stan/gm/arguments/arg_method.hpp>
+#include <stan/gm/error_codes.hpp>
+
+

Go to the source code of this file.

+ + + + +

+Classes

class  stan::gm::argument_parser
 
+ + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::gm
 Directed graphical model compiler.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/argument__parser_8hpp_source.html b/doc/api/html/argument__parser_8hpp_source.html new file mode 100644 index 00000000000..e36496ce23f --- /dev/null +++ b/doc/api/html/argument__parser_8hpp_source.html @@ -0,0 +1,344 @@ + + + + + +Stan: src/stan/gm/arguments/argument_parser.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
argument_parser.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__GM__ARGUMENTS__ARGUMENT__PARSER__HPP__
+
2 #define __STAN__GM__ARGUMENTS__ARGUMENT__PARSER__HPP__
+
3 
+
4 #include <string>
+
5 #include <vector>
+
6 #include <fstream>
+
7 #include <cstring>
+
8 
+ + +
11 #include <stan/gm/error_codes.hpp>
+
12 
+
13 namespace stan {
+
14 
+
15  namespace gm {
+
16 
+ +
18 
+
19  public:
+
20 
+
21  argument_parser(std::vector<argument*>& valid_args)
+
22  : _arguments(valid_args),
+
23  _help_flag(false),
+
24  _method_flag(false) {
+
25  _arguments.insert(_arguments.begin(), new arg_method());
+
26  }
+
27 
+
28  int parse_args(int argc,
+
29  const char* argv[],
+
30  std::ostream* out = 0,
+
31  std::ostream* err = 0) {
+
32 
+
33  if (argc == 1) {
+
34  print_usage(out, argv[0]);
+
35  return error_codes::USAGE;
+
36  }
+
37 
+
38  std::vector<std::string> args;
+
39 
+
40  // Fill in reverse order as parse_args pops from the back
+
41  for (int i = argc - 1; i > 0; --i)
+
42  args.push_back(std::string(argv[i]));
+
43 
+
44  bool good_arg = true;
+
45  bool valid_arg = true;
+
46  _help_flag = false;
+
47 
+
48  std::vector<argument*> unset_args = _arguments;
+
49 
+
50  while(good_arg) {
+
51 
+
52  if (args.size() == 0)
+
53  break;
+
54 
+
55  good_arg = false;
+
56  std::string cat_name = args.back();
+
57 
+
58  // Check for method arguments entered without the method= prefix
+
59  if (!_method_flag) {
+
60 
+
61  list_argument* method = dynamic_cast<list_argument*>(_arguments.front());
+
62 
+
63  if (method->valid_value(cat_name)) {
+
64  cat_name = "method=" + cat_name;
+
65  args.back() = cat_name;
+
66  }
+
67 
+
68  }
+
69 
+
70  std::string val_name;
+
71  std::string val;
+
72  argument::split_arg(cat_name, val_name, val);
+
73 
+
74  if (val_name == "method")
+
75  _method_flag = true;
+
76 
+
77  std::vector<argument*>::iterator arg_it;
+
78 
+
79  for (arg_it = unset_args.begin(); arg_it != unset_args.end(); ++arg_it) {
+
80  if ( (*arg_it)->name() == cat_name) {
+
81  args.pop_back();
+
82  valid_arg &= (*arg_it)->parse_args(args, out, err, _help_flag);
+
83  good_arg = true;
+
84  break;
+
85  }
+
86  else if ( (*arg_it)->name() == val_name) {
+
87  valid_arg &= (*arg_it)->parse_args(args, out, err, _help_flag);
+
88  good_arg = true;
+
89  break;
+
90  }
+
91 
+
92  }
+
93 
+
94  if (good_arg) unset_args.erase(arg_it);
+
95 
+
96  if (cat_name == "help") {
+
97  _help_flag |= true;
+
98  args.clear();
+
99  } else if (cat_name == "help-all") {
+
100  print_help(out, true);
+
101  _help_flag |= true;
+
102  args.clear();
+
103  }
+
104 
+
105  if (_help_flag) {
+
106  print_usage(out, argv[0]);
+
107  return error_codes::OK;
+
108  }
+
109 
+
110  if (!good_arg && err) {
+
111 
+
112  *err << cat_name << " is either mistyped or misplaced." << std::endl;
+
113 
+
114  std::vector<std::string> valid_paths;
+
115 
+
116  for (size_t i = 0; i < _arguments.size(); ++i) {
+
117  _arguments.at(i)->find_arg(val_name, "", valid_paths);
+
118  }
+
119 
+
120  if (valid_paths.size()) {
+
121  *err << "Perhaps you meant one of the following valid configurations?" << std::endl;
+
122  for (size_t i = 0; i < valid_paths.size(); ++i)
+
123  *err << " " << valid_paths.at(i) << std::endl;
+
124  }
+
125  }
+
126  }
+
127 
+
128  if (_help_flag)
+
129  return error_codes::OK;
+
130 
+
131  if (!_method_flag)
+
132  *err << "A method must be specified!" << std::endl;
+
133 
+
134  return (valid_arg && good_arg && _method_flag) ?
+ +
136  }
+
137 
+
138  void print(std::ostream* s, const std::string prefix = "") {
+
139  if (!s)
+
140  return;
+
141 
+
142  for (size_t i = 0; i < _arguments.size(); ++i) {
+
143  _arguments.at(i)->print(s, 0, prefix);
+
144  }
+
145 
+
146  }
+
147 
+
148  void print_help(std::ostream* s, bool recurse) {
+
149  if (!s)
+
150  return;
+
151 
+
152  for (size_t i = 0; i < _arguments.size(); ++i) {
+
153  _arguments.at(i)->print_help(s, 1, recurse);
+
154  }
+
155  }
+
156 
+
157  void print_usage(std::ostream* s, const char* executable) {
+
158  if (!s)
+
159  return;
+
160 
+
161  std::string indent(2, ' ');
+
162  int width = 12;
+
163  *s << std::left;
+
164 
+
165  *s << "Usage: " << executable << " <arg1> <subarg1_1> ... <subarg1_m>"
+
166  << " ... <arg_n> <subarg_n_1> ... <subarg_n_m>"
+
167  << std::endl << std::endl;
+
168 
+
169  *s << "Begin by selecting amongst the following inference methods"
+
170  << " and diagnostics," << std::endl;
+
171 
+
172  std::vector<argument*>::iterator arg_it = _arguments.begin();
+
173  list_argument* method = dynamic_cast<list_argument*>(*arg_it);
+
174 
+
175  for (std::vector<argument*>::iterator value_it = method->values().begin();
+
176  value_it != method->values().end(); ++value_it) {
+
177  *s << std::setw(width)
+
178  << indent + (*value_it)->name()
+
179  << indent + (*value_it)->description() << std::endl;
+
180  }
+
181  *s << std::endl;
+
182 
+
183  *s << "Or see help information with" << std::endl;
+
184  *s << std::setw(width)
+
185  << indent + "help"
+
186  << indent + "Prints help" << std::endl;
+
187  *s << std::setw(width)
+
188  << indent + "help-all"
+
189  << indent + "Prints entire argument tree" << std::endl;
+
190  *s << std::endl;
+
191 
+
192  *s << "Additional configuration available by specifying" << std::endl;
+
193 
+
194  ++arg_it;
+
195  for (; arg_it != _arguments.end(); ++arg_it) {
+
196  *s << std::setw(width)
+
197  << indent + (*arg_it)->name()
+
198  << indent + (*arg_it)->description() << std::endl;
+
199  }
+
200 
+
201  *s << std::endl;
+
202  *s << "See " << executable << " <arg1> [ help | help-all ] "
+
203  << "for details on individual arguments." << std::endl << std::endl;
+
204 
+
205  }
+
206 
+
207  argument* arg(std::string name) {
+
208  for (std::vector<argument*>::iterator it = _arguments.begin();
+
209  it != _arguments.end(); ++it)
+
210  if ( name == (*it)->name() )
+
211  return (*it);
+
212  return 0;
+
213  }
+
214 
+
215  bool help_printed() {
+
216  return _help_flag;
+
217  }
+
218 
+
219  protected:
+
220 
+
221  std::vector<argument*>& _arguments;
+
222 
+
223  // We can also check for, and warn the user of, deprecated arguments
+
224  //std::vector<argument*> deprecated_arguments;
+
225  // check_arg_conflict // Ensure non-zero intersection of valid and deprecated arguments
+
226 
+ + +
229 
+
230  };
+
231 
+
232  } // gm
+
233 
+
234 } // stan
+
235 
+
236 #endif
+
237 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/argument__probe_8hpp.html b/doc/api/html/argument__probe_8hpp.html new file mode 100644 index 00000000000..139bc1425e3 --- /dev/null +++ b/doc/api/html/argument__probe_8hpp.html @@ -0,0 +1,131 @@ + + + + + +Stan: src/stan/gm/arguments/argument_probe.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
argument_probe.hpp File Reference
+
+
+
#include <string>
+#include <vector>
+#include <sstream>
+#include <stan/gm/arguments/argument.hpp>
+
+

Go to the source code of this file.

+ + + + +

+Classes

class  stan::gm::argument_probe
 
+ + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::gm
 Directed graphical model compiler.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/argument__probe_8hpp_source.html b/doc/api/html/argument__probe_8hpp_source.html new file mode 100644 index 00000000000..90bdac839b9 --- /dev/null +++ b/doc/api/html/argument__probe_8hpp_source.html @@ -0,0 +1,147 @@ + + + + + +Stan: src/stan/gm/arguments/argument_probe.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
argument_probe.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__GM__ARGUMENTS__ARGUMENT__PROBE__HPP__
+
2 #define __STAN__GM__ARGUMENTS__ARGUMENT__PROBE__HPP__
+
3 
+
4 #include <string>
+
5 #include <vector>
+
6 #include <sstream>
+
7 
+ +
9 
+
10 namespace stan {
+
11 
+
12  namespace gm {
+
13 
+ +
15 
+
16  public:
+
17 
+
18  argument_probe(std::vector<argument*>& valid_args)
+
19  : _arguments(valid_args) {}
+
20 
+
21  void probe_args(std::stringstream& s) {
+
22 
+
23  for (std::vector<argument*>::iterator arg_it = _arguments.begin();
+
24  arg_it != _arguments.end(); ++arg_it)
+
25  (*arg_it)->probe_args(*arg_it, s);
+
26 
+
27  }
+
28 
+
29  protected:
+
30 
+
31  std::vector<argument*>& _arguments;
+
32 
+
33  };
+
34 
+
35  } // gm
+
36 
+
37 } // stan
+
38 
+
39 #endif
+
40 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/array__builder_8hpp.html b/doc/api/html/array__builder_8hpp.html new file mode 100644 index 00000000000..16bcd09f921 --- /dev/null +++ b/doc/api/html/array__builder_8hpp.html @@ -0,0 +1,130 @@ + + + + + +Stan: src/stan/math/matrix/array_builder.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
array_builder.hpp File Reference
+
+
+
#include <vector>
+#include <stan/math/matrix/promoter.hpp>
+
+

Go to the source code of this file.

+ + + + + +

+Classes

struct  stan::math::array_builder< T >
 Structure for building up arrays in an expression (rather than in statements) using an argumentchaining add() method and a getter method array() to return the result. More...
 
+ + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::math
 Matrices and templated mathematical functions.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/array__builder_8hpp_source.html b/doc/api/html/array__builder_8hpp_source.html new file mode 100644 index 00000000000..2c99f3a6c80 --- /dev/null +++ b/doc/api/html/array__builder_8hpp_source.html @@ -0,0 +1,135 @@ + + + + + +Stan: src/stan/math/matrix/array_builder.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
array_builder.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MATH__MATRIX__ARRAY_BUILDER_HPP__
+
2 #define __STAN__MATH__MATRIX__ARRAY_BUILDER_HPP__
+
3 
+
4 #include <vector>
+ +
6 
+
7 namespace stan {
+
8  namespace math {
+
9 
+
15  template <typename T>
+
16  struct array_builder {
+
17  std::vector<T> x_;
+
18  array_builder() : x_() { }
+
19  template <typename F>
+
20  array_builder& add(const F& u) {
+
21  T t;
+ +
23  x_.push_back(t);
+
24  return *this;
+
25  }
+
26  std::vector<T> array() {
+
27  return x_;
+
28  }
+
29  };
+
30 
+
31  }
+
32 }
+
33 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/assign_8hpp.html b/doc/api/html/assign_8hpp.html new file mode 100644 index 00000000000..93fbf2f5f45 --- /dev/null +++ b/doc/api/html/assign_8hpp.html @@ -0,0 +1,152 @@ + + + + + +Stan: src/stan/math/matrix/assign.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
assign.hpp File Reference
+
+
+
#include <vector>
+#include <sstream>
+#include <stdexcept>
+#include <stan/math/matrix/Eigen.hpp>
+#include <stan/math/matrix/validate_matching_sizes.hpp>
+#include <stan/math/matrix/validate_matching_dims.hpp>
+#include <iostream>
+
+

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::math
 Matrices and templated mathematical functions.
 
+ + + + + + + + + + + + + + + + + + + + + +

+Functions

template<typename LHS , typename RHS >
void stan::math::assign (LHS &lhs, const RHS &rhs)
 Copy the right-hand side's value to the left-hand side variable.
 
template<typename LHS , typename RHS , int R1, int C1, int R2, int C2>
void stan::math::assign (Eigen::Matrix< LHS, R1, C1 > &x, const Eigen::Matrix< RHS, R2, C2 > &y)
 Copy the right-hand side's value to the left-hand side variable.
 
template<typename LHS , typename RHS , int R, int C>
void stan::math::assign (Eigen::Matrix< LHS, R, C > &x, const Eigen::Matrix< RHS, R, C > &y)
 Copy the right-hand side's value to the left-hand side variable.
 
template<typename LHS , typename RHS , int R, int C>
void stan::math::assign (Eigen::Block< LHS > x, const Eigen::Matrix< RHS, R, C > &y)
 Copy the right-hand side's value to the left-hand side variable.
 
template<typename LHS , typename RHS >
void stan::math::assign (std::vector< LHS > &x, const std::vector< RHS > &y)
 Copy the right-hand side's value to the left-hand side variable.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/assign_8hpp_source.html b/doc/api/html/assign_8hpp_source.html new file mode 100644 index 00000000000..618cdb4da33 --- /dev/null +++ b/doc/api/html/assign_8hpp_source.html @@ -0,0 +1,181 @@ + + + + + +Stan: src/stan/math/matrix/assign.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
assign.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MATH__MATRIX__ASSIGN_HPP__
+
2 #define __STAN__MATH__MATRIX__ASSIGN_HPP__
+
3 
+
4 #include <vector>
+
5 #include <sstream>
+
6 #include <stdexcept>
+
7 
+
8 // #include <boost/utility/enable_if.hpp>
+
9 
+ + + +
13 
+
14 
+
15 #include <iostream>
+
16 
+
17 namespace stan {
+
18 
+
19  namespace math {
+
20 
+
21  // Recursive assignment with size match checking and promotion
+
22 
+
37  template <typename LHS, typename RHS>
+
38  inline void
+
39  assign(LHS& lhs, const RHS& rhs) {
+
40  lhs = rhs;
+
41  }
+
42 
+
63  template <typename LHS, typename RHS, int R1, int C1, int R2, int C2>
+
64  inline void
+
65  assign(Eigen::Matrix<LHS,R1,C1>& x,
+
66  const Eigen::Matrix<RHS,R2,C2>& y) {
+
67  std::stringstream ss;
+
68  ss << "error in call to assign(Eigen::Matrix,Eigen::Matrix)"
+
69  << "; shapes must match, but found"
+
70  << " R1=" << R1
+
71  << "; C1=" << C1
+
72  << "; R2=" << R2
+
73  << "; C2=" << C2;
+
74  throw std::domain_error(ss.str());
+
75  }
+
76 
+
94  template <typename LHS, typename RHS, int R, int C>
+
95  inline void
+
96  assign(Eigen::Matrix<LHS,R,C>& x,
+
97  const Eigen::Matrix<RHS,R,C>& y) {
+ +
99  for (int i = 0; i < x.size(); ++i)
+
100  assign(x(i),y(i));
+
101  }
+
102 
+
121  template <typename LHS, typename RHS, int R, int C>
+
122  inline void
+
123  assign(Eigen::Block<LHS> x,
+
124  const Eigen::Matrix<RHS,R,C>& y) {
+ +
126  for (int n = 0; n < y.cols(); ++n)
+
127  for (int m = 0; m < y.rows(); ++m)
+
128  assign(x(m,n),y(m,n));
+
129  }
+
130 
+
131 
+
151  template <typename LHS, typename RHS>
+
152  inline void
+
153  assign(std::vector<LHS>& x, const std::vector<RHS>& y) {
+ +
155  for (size_t i = 0; i < x.size(); ++i)
+
156  assign(x[i],y[i]);
+
157  }
+
158 
+
159 
+
160  }
+
161 }
+
162 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/ast_8hpp.html b/doc/api/html/ast_8hpp.html new file mode 100644 index 00000000000..8702ddf8adf --- /dev/null +++ b/doc/api/html/ast_8hpp.html @@ -0,0 +1,296 @@ + + + + + +Stan: src/stan/gm/ast.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
ast.hpp File Reference
+
+
+
#include <map>
+#include <string>
+#include <vector>
+#include <set>
+#include <boost/variant/recursive_variant.hpp>
+
+

Go to the source code of this file.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Classes

struct  stan::gm::nil
 Placeholder struct for boost::variant default ctors. More...
 
struct  stan::gm::expr_type
 
class  stan::gm::function_signatures
 
struct  stan::gm::statements
 
struct  stan::gm::distribution
 
struct  stan::gm::expression_type_vis
 
struct  stan::gm::expression
 
struct  stan::gm::printable
 
struct  stan::gm::is_nil_op
 
struct  stan::gm::variable_dims
 
struct  stan::gm::int_literal
 
struct  stan::gm::double_literal
 
struct  stan::gm::array_literal
 
struct  stan::gm::variable
 
struct  stan::gm::fun
 
struct  stan::gm::index_op
 
struct  stan::gm::binary_op
 
struct  stan::gm::unary_op
 
struct  stan::gm::range
 
struct  stan::gm::base_var_decl
 
struct  stan::gm::variable_map
 
struct  stan::gm::int_var_decl
 
struct  stan::gm::double_var_decl
 
struct  stan::gm::unit_vector_var_decl
 
struct  stan::gm::simplex_var_decl
 
struct  stan::gm::ordered_var_decl
 
struct  stan::gm::positive_ordered_var_decl
 
struct  stan::gm::vector_var_decl
 
struct  stan::gm::row_vector_var_decl
 
struct  stan::gm::matrix_var_decl
 
struct  stan::gm::cholesky_factor_var_decl
 
struct  stan::gm::cov_matrix_var_decl
 
struct  stan::gm::corr_matrix_var_decl
 
struct  stan::gm::name_vis
 
struct  stan::gm::var_decl
 
struct  stan::gm::statement
 
struct  stan::gm::increment_log_prob_statement
 
struct  stan::gm::for_statement
 
struct  stan::gm::conditional_statement
 
struct  stan::gm::while_statement
 
struct  stan::gm::print_statement
 
struct  stan::gm::no_op_statement
 
struct  stan::gm::program
 
struct  stan::gm::sample
 
struct  stan::gm::assignment
 
struct  stan::gm::contains_var
 
struct  stan::gm::contains_nonparam_var
 
+ + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::gm
 Directed graphical model compiler.
 
+ + + + + + + +

+Typedefs

typedef int stan::gm::base_expr_type
 
typedef std::pair< expr_type,
+std::vector< expr_type > > 
stan::gm::function_signature_t
 
typedef int stan::gm::var_origin
 
+ + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Functions

std::ostream & stan::gm::write_base_expr_type (std::ostream &o, base_expr_type type)
 
std::ostream & stan::gm::operator<< (std::ostream &o, const expr_type &et)
 
expr_type stan::gm::promote_primitive (const expr_type &et)
 
expr_type stan::gm::promote_primitive (const expr_type &et1, const expr_type &et2)
 
bool stan::gm::is_nil (const expression &e)
 
size_t stan::gm::total_dims (const std::vector< std::vector< expression > > &dimss)
 
expr_type stan::gm::infer_type_indexing (const base_expr_type &expr_base_type, size_t num_expr_dims, size_t num_index_dims)
 
expr_type stan::gm::infer_type_indexing (const expression &expr, size_t num_index_dims)
 
void stan::gm::print_var_origin (std::ostream &o, const var_origin &vo)
 
void stan::gm::generate_expression (const expression &e, std::ostream &o)
 
bool stan::gm::has_rng_suffix (const std::string &s)
 
bool stan::gm::has_var (const expression &e, const variable_map &var_map)
 
bool stan::gm::has_non_param_var (const expression &e, const variable_map &var_map)
 
+ + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Variables

const int stan::gm::INT_T = 1
 
const int stan::gm::DOUBLE_T = 2
 
const int stan::gm::VECTOR_T = 3
 
const int stan::gm::ROW_VECTOR_T = 4
 
const int stan::gm::MATRIX_T = 5
 
const int stan::gm::ILL_FORMED_T = 6
 
const int stan::gm::model_name_origin = 0
 
const int stan::gm::data_origin = 1
 
const int stan::gm::transformed_data_origin = 2
 
const int stan::gm::parameter_origin = 3
 
const int stan::gm::transformed_parameter_origin = 4
 
const int stan::gm::derived_origin = 5
 
const int stan::gm::local_origin = 6
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/ast_8hpp_source.html b/doc/api/html/ast_8hpp_source.html new file mode 100644 index 00000000000..498443be920 --- /dev/null +++ b/doc/api/html/ast_8hpp_source.html @@ -0,0 +1,847 @@ + + + + + +Stan: src/stan/gm/ast.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
ast.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__GM__AST_HPP__
+
2 #define __STAN__GM__AST_HPP__
+
3 
+
4 #include <map>
+
5 #include <string>
+
6 #include <vector>
+
7 #include <map>
+
8 #include <set>
+
9 
+
10 #include <boost/variant/recursive_variant.hpp>
+
11 
+
12 namespace stan {
+
13 
+
14  namespace gm {
+
15 
+
18  struct nil { };
+
19 
+
20  // components of abstract syntax tree
+
21  struct array_literal;
+
22  struct assignment;
+
23  struct binary_op;
+
24  struct conditional_statement;
+
25  struct distribution;
+
26  struct double_var_decl;
+
27  struct double_literal;
+
28  struct expression;
+
29  struct for_statement;
+
30  struct fun;
+
31  struct identifier;
+ +
33  struct index_op;
+
34  struct int_literal;
+
35  struct inv_var_decl;
+
36  struct matrix_var_decl;
+
37  struct no_op_statement;
+
38  struct ordered_var_decl;
+ +
40  struct print_statement;
+
41  struct program;
+
42  struct range;
+
43  struct row_vector_var_decl;
+
44  struct sample;
+
45  struct simplex_var_decl;
+
46  struct unit_vector_var_decl;
+
47  struct statement;
+
48  struct statements;
+
49  struct unary_op;
+
50  struct variable;
+
51  struct variable_dims;
+
52  struct var_decl;
+
53  struct var_type;
+
54  struct vector_var_decl;
+ +
56 
+
57  // forward declarable enum hack (can't fwd-decl enum)
+
58  typedef int base_expr_type;
+
59  const int INT_T = 1;
+
60  const int DOUBLE_T = 2;
+
61  const int VECTOR_T = 3;
+
62  const int ROW_VECTOR_T = 4;
+
63  const int MATRIX_T = 5;
+
64  const int ILL_FORMED_T = 6;
+
65 
+
66  std::ostream& write_base_expr_type(std::ostream& o, base_expr_type type);
+
67 
+
68  struct expr_type {
+ +
70  size_t num_dims_;
+
71  expr_type();
+
72  expr_type(const base_expr_type base_type);
+
73  expr_type(const base_expr_type base_type,
+
74  size_t num_dims);
+
75  bool operator==(const expr_type& et) const;
+
76  bool operator!=(const expr_type& et) const;
+
77  bool is_primitive() const;
+
78  bool is_primitive_int() const;
+
79  bool is_primitive_double() const;
+
80  bool is_ill_formed() const;
+
81  base_expr_type type() const;
+
82  size_t num_dims() const;
+
83  };
+
84 
+
85  std::ostream& operator<<(std::ostream& o, const expr_type& et);
+
86 
+ +
88 
+ +
90  const expr_type& et2);
+
91 
+
92  typedef std::pair<expr_type, std::vector<expr_type> > function_signature_t;
+
93 
+ +
95  public:
+
96  static function_signatures& instance();
+
97  void add(const std::string& name,
+
98  const expr_type& result_type,
+
99  const std::vector<expr_type>& arg_types);
+
100  void add(const std::string& name,
+
101  const expr_type& result_type);
+
102  void add(const std::string& name,
+
103  const expr_type& result_type,
+
104  const expr_type& arg_type);
+
105  void add(const std::string& name,
+
106  const expr_type& result_type,
+
107  const expr_type& arg_type1,
+
108  const expr_type& arg_type2);
+
109  void add(const std::string& name,
+
110  const expr_type& result_type,
+
111  const expr_type& arg_type1,
+
112  const expr_type& arg_type2,
+
113  const expr_type& arg_type3);
+
114  void add(const std::string& name,
+
115  const expr_type& result_type,
+
116  const expr_type& arg_type1,
+
117  const expr_type& arg_type2,
+
118  const expr_type& arg_type3,
+
119  const expr_type& arg_type4);
+
120  void add(const std::string& name,
+
121  const expr_type& result_type,
+
122  const expr_type& arg_type1,
+
123  const expr_type& arg_type2,
+
124  const expr_type& arg_type3,
+
125  const expr_type& arg_type4,
+
126  const expr_type& arg_type5);
+
127  void add(const std::string& name,
+
128  const expr_type& result_type,
+
129  const expr_type& arg_type1,
+
130  const expr_type& arg_type2,
+
131  const expr_type& arg_type3,
+
132  const expr_type& arg_type4,
+
133  const expr_type& arg_type5,
+
134  const expr_type& arg_type6);
+
135  void add(const std::string& name,
+
136  const expr_type& result_type,
+
137  const expr_type& arg_type1,
+
138  const expr_type& arg_type2,
+
139  const expr_type& arg_type3,
+
140  const expr_type& arg_type4,
+
141  const expr_type& arg_type5,
+
142  const expr_type& arg_type6,
+
143  const expr_type& arg_type7);
+
144  void add_nullary(const::std::string& name);
+
145  void add_unary(const::std::string& name);
+
146  void add_binary(const::std::string& name);
+
147  void add_ternary(const::std::string& name);
+
148  void add_quaternary(const::std::string& name);
+
149  int num_promotions(const std::vector<expr_type>& call_args,
+
150  const std::vector<expr_type>& sig_args);
+
151  expr_type get_result_type(const std::string& name,
+
152  const std::vector<expr_type>& args,
+
153  std::ostream& error_msgs);
+
154  std::set<std::string> key_set() const;
+
155  private:
+ + +
158  std::map<std::string, std::vector<function_signature_t> > sigs_map_;
+
159  static function_signatures* sigs_; // init below outside of class
+
160  };
+
161 
+
162  struct statements {
+
163  std::vector<var_decl> local_decl_;
+
164  std::vector<statement> statements_;
+
165  statements();
+
166  statements(const std::vector<var_decl>& local_decl,
+
167  const std::vector<statement>& stmts);
+
168  };
+
169 
+
170 
+
171  struct distribution {
+
172  std::string family_;
+
173  std::vector<expression> args_;
+
174  };
+
175 
+
176  struct expression_type_vis : public boost::static_visitor<expr_type> {
+
177  expr_type operator()(const nil& e) const;
+
178  expr_type operator()(const int_literal& e) const;
+
179  expr_type operator()(const double_literal& e) const;
+
180  expr_type operator()(const array_literal& e) const;
+
181  expr_type operator()(const variable& e) const;
+
182  expr_type operator()(const fun& e) const;
+
183  expr_type operator()(const index_op& e) const;
+
184  expr_type operator()(const binary_op& e) const;
+
185  expr_type operator()(const unary_op& e) const;
+
186  // template <typename T> expr_type operator()(const T& e) const;
+
187  };
+
188 
+
189 
+
190 
+
191 
+
192  struct expression;
+
193 
+
194  struct expression {
+
195  typedef boost::variant<boost::recursive_wrapper<nil>,
+
196  boost::recursive_wrapper<int_literal>,
+
197  boost::recursive_wrapper<double_literal>,
+
198  boost::recursive_wrapper<array_literal>,
+
199  boost::recursive_wrapper<variable>,
+
200  boost::recursive_wrapper<fun>,
+
201  boost::recursive_wrapper<index_op>,
+
202  boost::recursive_wrapper<binary_op>,
+
203  boost::recursive_wrapper<unary_op> >
+ +
205 
+
206  expression();
+
207  expression(const expression& e);
+
208 
+
209  // template <typename Expr> expression(const Expr& expr);
+
210  expression(const nil& expr);
+
211  expression(const int_literal& expr);
+
212  expression(const double_literal& expr);
+
213  expression(const array_literal& expr);
+
214  expression(const variable& expr);
+
215  expression(const fun& expr);
+
216  expression(const index_op& expr);
+
217  expression(const binary_op& expr);
+
218  expression(const unary_op& expr);
+
219  expression(const expression_t& expr_);
+
220 
+
221  expr_type expression_type() const;
+
222 
+
223  expression& operator+=(const expression& rhs);
+
224  expression& operator-=(const expression& rhs);
+
225  expression& operator*=(const expression& rhs);
+
226  expression& operator/=(const expression& rhs);
+
227 
+ +
229  };
+
230 
+
231 
+
232  struct printable {
+
233  typedef boost::variant<boost::recursive_wrapper<std::string>,
+
234  boost::recursive_wrapper<expression> >
+ +
236 
+
237  printable();
+ +
239  printable(const std::string& msg);
+ +
241  printable(const printable& printable);
+
242 
+ +
244  };
+
245 
+
246  struct is_nil_op : public boost::static_visitor<bool> {
+
247  bool operator()(const nil& x) const;
+
248  bool operator()(const int_literal& x) const;
+
249  bool operator()(const double_literal& x) const;
+
250  bool operator()(const array_literal& x) const;
+
251  bool operator()(const variable& x) const;
+
252  bool operator()(const fun& x) const;
+
253  bool operator()(const index_op& x) const;
+
254  bool operator()(const binary_op& x) const;
+
255  bool operator()(const unary_op& x) const;
+
256 
+
257  // template <typename T>
+
258  // bool operator()(const T& x) const;
+
259  };
+
260 
+
261  bool is_nil(const expression& e);
+
262 
+
263  struct variable_dims {
+
264  std::string name_;
+
265  std::vector<expression> dims_;
+
266  variable_dims();
+
267  variable_dims(std::string const& name,
+
268  std::vector<expression> const& dims);
+
269  };
+
270 
+
271 
+
272  struct int_literal {
+
273  int val_;
+ +
275  int_literal();
+
276  int_literal(int val);
+
277  int_literal(const int_literal& il);
+
278  int_literal& operator=(const int_literal& il);
+
279  };
+
280 
+
281 
+
282  struct double_literal {
+
283  double val_;
+ +
285  double_literal();
+
286  double_literal(double val);
+ +
288  };
+
289 
+
290  struct array_literal {
+
291  std::vector<expression> args_;
+ +
293  array_literal();
+
294  array_literal(const std::vector<expression>& args);
+ +
296  };
+
297 
+
298  struct variable {
+
299  std::string name_;
+ +
301  variable();
+
302  variable(std::string name);
+
303  void set_type(const base_expr_type& base_type,
+
304  size_t num_dims);
+
305  };
+
306 
+
307  struct fun {
+
308  std::string name_;
+
309  std::vector<expression> args_;
+ +
311  fun();
+
312  fun(std::string const& name,
+
313  std::vector<expression> const& args);
+
314  void infer_type(); // FIXME: is this used anywhere?
+
315  };
+
316 
+
317  size_t total_dims(const std::vector<std::vector<expression> >& dimss);
+
318 
+
319  expr_type infer_type_indexing(const base_expr_type& expr_base_type,
+
320  size_t num_expr_dims,
+
321  size_t num_index_dims);
+
322 
+ +
324  size_t num_index_dims);
+
325 
+
326 
+
327  struct index_op {
+ +
329  std::vector<std::vector<expression> > dimss_;
+ +
331  index_op();
+
332  // vec of vec for e.g., e[1,2][3][4,5,6]
+
333  index_op(const expression& expr,
+
334  const std::vector<std::vector<expression> >& dimss);
+
335  void infer_type();
+
336  };
+
337 
+
338 
+
339  struct binary_op {
+
340  std::string op;
+ + + +
344  binary_op();
+
345  binary_op(const expression& left,
+
346  const std::string& op,
+
347  const expression& right);
+
348  };
+
349 
+
350  struct unary_op {
+
351  char op;
+ + +
354  unary_op(char op,
+
355  expression const& subject);
+
356  };
+
357 
+
358  struct range {
+ + +
361  range();
+
362  range(expression const& low,
+
363  expression const& high);
+
364  bool has_low() const;
+
365  bool has_high() const;
+
366  };
+
367 
+
368  typedef int var_origin;
+
369  const int model_name_origin = 0;
+
370  const int data_origin = 1;
+
371  const int transformed_data_origin = 2;
+
372  const int parameter_origin = 3;
+ +
374  const int derived_origin = 5;
+
375  const int local_origin = 6;
+
376 
+
377 
+
378 
+
379  void print_var_origin(std::ostream& o, const var_origin& vo);
+
380 
+
381  struct base_var_decl {
+
382  std::string name_;
+
383  std::vector<expression> dims_;
+ +
385  base_var_decl();
+
386  base_var_decl(const base_expr_type& base_type);
+
387  base_var_decl(const std::string& name,
+
388  const std::vector<expression>& dims,
+
389  const base_expr_type& base_type);
+
390  };
+
391 
+
392  struct variable_map {
+
393  typedef std::pair<base_var_decl,var_origin> range_t;
+
394  std::map<std::string, range_t> map_;
+
395  bool exists(const std::string& name) const;
+
396  base_var_decl get(const std::string& name) const;
+
397  base_expr_type get_base_type(const std::string& name) const;
+
398  size_t get_num_dims(const std::string& name) const;
+
399  var_origin get_origin(const std::string& name) const;
+
400  void add(const std::string& name,
+
401  const base_var_decl& base_decl,
+
402  const var_origin& vo);
+
403  void remove(const std::string& name);
+
404  };
+
405 
+
406  struct int_var_decl : public base_var_decl {
+ +
408  int_var_decl();
+
409  int_var_decl(range const& range,
+
410  std::string const& name,
+
411  std::vector<expression> const& dims);
+
412  };
+
413 
+
414 
+
415  struct double_var_decl : public base_var_decl {
+ +
417  double_var_decl();
+
418  double_var_decl(range const& range,
+
419  std::string const& name,
+
420  std::vector<expression> const& dims);
+
421  };
+
422 
+ + + + +
427  std::string const& name,
+
428  std::vector<expression> const& dims);
+
429  };
+
430 
+
431  struct simplex_var_decl : public base_var_decl {
+ + +
434  simplex_var_decl(expression const& K,
+
435  std::string const& name,
+
436  std::vector<expression> const& dims);
+
437  };
+
438 
+
439  struct ordered_var_decl : public base_var_decl {
+ + +
442  ordered_var_decl(expression const& K,
+
443  std::string const& name,
+
444  std::vector<expression> const& dims);
+
445  };
+
446 
+ + + + +
451  std::string const& name,
+
452  std::vector<expression> const& dims);
+
453  };
+
454 
+
455  struct vector_var_decl : public base_var_decl {
+ + +
458  vector_var_decl();
+
459  vector_var_decl(range const& range,
+
460  expression const& M,
+
461  std::string const& name,
+
462  std::vector<expression> const& dims);
+
463  };
+
464 
+ + + + + +
470  expression const& N,
+
471  std::string const& name,
+
472  std::vector<expression> const& dims);
+
473  };
+
474 
+
475  struct matrix_var_decl : public base_var_decl {
+ + + +
479  matrix_var_decl();
+
480  matrix_var_decl(range const& range,
+
481  expression const& M,
+
482  expression const& N,
+
483  std::string const& name,
+
484  std::vector<expression> const& dims);
+
485  };
+
486 
+ + + + + +
492  expression const& N,
+
493  std::string const& name,
+
494  std::vector<expression> const& dims);
+
495  };
+
496 
+ + + + +
501  std::string const& name,
+
502  std::vector<expression> const& dims);
+
503  };
+
504 
+
505 
+ + + + +
510  std::string const& name,
+
511  std::vector<expression> const& dims);
+
512  };
+
513 
+
514  struct name_vis : public boost::static_visitor<std::string> {
+
515  name_vis();
+
516  std::string operator()(const nil& x) const;
+
517  std::string operator()(const int_var_decl& x) const;
+
518  std::string operator()(const double_var_decl& x) const;
+
519  std::string operator()(const vector_var_decl& x) const;
+
520  std::string operator()(const row_vector_var_decl& x) const;
+
521  std::string operator()(const matrix_var_decl& x) const;
+
522  std::string operator()(const simplex_var_decl& x) const;
+
523  std::string operator()(const unit_vector_var_decl& x) const;
+
524  std::string operator()(const ordered_var_decl& x) const;
+
525  std::string operator()(const positive_ordered_var_decl& x) const;
+
526  std::string operator()(const cholesky_factor_var_decl& x) const;
+
527  std::string operator()(const cov_matrix_var_decl& x) const;
+
528  std::string operator()(const corr_matrix_var_decl& x) const;
+
529  };
+
530 
+
531 
+
532 
+
533 
+
534  struct var_decl {
+
535  typedef boost::variant<boost::recursive_wrapper<nil>,
+
536  boost::recursive_wrapper<int_var_decl>,
+
537  boost::recursive_wrapper<double_var_decl>,
+
538  boost::recursive_wrapper<vector_var_decl>,
+
539  boost::recursive_wrapper<row_vector_var_decl>,
+
540  boost::recursive_wrapper<matrix_var_decl>,
+
541  boost::recursive_wrapper<simplex_var_decl>,
+
542  boost::recursive_wrapper<unit_vector_var_decl>,
+
543  boost::recursive_wrapper<ordered_var_decl>,
+
544  boost::recursive_wrapper<positive_ordered_var_decl>,
+
545  boost::recursive_wrapper<cholesky_factor_var_decl>,
+
546  boost::recursive_wrapper<cov_matrix_var_decl>,
+
547  boost::recursive_wrapper<corr_matrix_var_decl> >
+ +
549 
+ +
551 
+
552  var_decl();
+
553 
+
554  // template <typename Decl>
+
555  // var_decl(Decl const& decl);
+
556  var_decl(const var_decl_t& decl);
+
557  var_decl(const nil& decl);
+
558  var_decl(const int_var_decl& decl);
+
559  var_decl(const double_var_decl& decl);
+
560  var_decl(const vector_var_decl& decl);
+
561  var_decl(const row_vector_var_decl& decl);
+
562  var_decl(const matrix_var_decl& decl);
+
563  var_decl(const simplex_var_decl& decl);
+
564  var_decl(const unit_vector_var_decl& decl);
+
565  var_decl(const ordered_var_decl& decl);
+
566  var_decl(const positive_ordered_var_decl& decl);
+
567  var_decl(const cholesky_factor_var_decl& decl);
+
568  var_decl(const cov_matrix_var_decl& decl);
+
569  var_decl(const corr_matrix_var_decl& decl);
+
570 
+
571  std::string name() const;
+
572  };
+
573 
+
574  struct statement {
+
575  typedef boost::variant<boost::recursive_wrapper<nil>,
+
576  boost::recursive_wrapper<assignment>,
+
577  boost::recursive_wrapper<sample>,
+
578  boost::recursive_wrapper<increment_log_prob_statement>,
+
579  boost::recursive_wrapper<expression>, // dummy now
+
580  boost::recursive_wrapper<statements>,
+
581  boost::recursive_wrapper<for_statement>,
+
582  boost::recursive_wrapper<conditional_statement>,
+
583  boost::recursive_wrapper<while_statement>,
+
584  boost::recursive_wrapper<print_statement>,
+
585  boost::recursive_wrapper<no_op_statement> >
+ +
587 
+ +
589 
+
590  statement();
+
591  statement(const statement_t& st);
+
592  statement(const nil& st);
+
593  statement(const assignment& st);
+
594  statement(const sample& st);
+ +
596  statement(const expression& st);
+
597  statement(const statements& st);
+
598  statement(const for_statement& st);
+
599  statement(const conditional_statement& st);
+
600  statement(const while_statement& st);
+
601  statement(const print_statement& st);
+
602  statement(const no_op_statement& st);
+
603 
+
604  // template <typename Statement>
+
605  // statement(const Statement& statement);
+
606  };
+
607 
+ + + +
611  increment_log_prob_statement(const expression& log_prob);
+
612  };
+
613 
+
614  struct for_statement {
+
615  std::string variable_;
+ + +
618  for_statement();
+
619  for_statement(std::string& variable,
+
620  range& range,
+
621  statement& stmt);
+
622  };
+
623 
+
624  // bodies may be 1 longer than conditions due to else
+ +
626  std::vector<expression> conditions_;
+
627  std::vector<statement> bodies_;
+ +
629  conditional_statement(const std::vector<expression>& conditions,
+
630  const std::vector<statement>& statements);
+
631  };
+
632 
+ + + +
636  while_statement();
+
637  while_statement(const expression& condition,
+
638  const statement& body);
+
639  };
+
640 
+ +
642  std::vector<printable> printables_;
+
643  print_statement();
+
644  print_statement(const std::vector<printable>& printables);
+
645  };
+
646 
+
647 
+ +
649  // no op, no data
+
650  };
+
651 
+
652 
+
653 
+
654  struct program {
+
655  std::vector<var_decl> data_decl_;
+
656  std::pair<std::vector<var_decl>,std::vector<statement> >
+ +
658  std::vector<var_decl> parameter_decl_;
+
659  std::pair<std::vector<var_decl>,std::vector<statement> >
+ + +
662  std::pair<std::vector<var_decl>,std::vector<statement> > generated_decl_;
+
663  program();
+
664  program(const std::vector<var_decl>& data_decl,
+
665  const std::pair<std::vector<var_decl>,
+
666  std::vector<statement> >& derived_data_decl,
+
667  const std::vector<var_decl>& parameter_decl,
+
668  const std::pair<std::vector<var_decl>,
+
669  std::vector<statement> >& derived_decl,
+
670  const statement& st,
+
671  const std::pair<std::vector<var_decl>,
+
672  std::vector<statement> >& generated_decl);
+
673 
+
674 
+
675  };
+
676 
+
677  struct sample {
+ + + +
681  sample();
+ +
683  distribution& dist);
+
684  bool is_ill_formed() const;
+
685  };
+
686 
+
687  struct assignment {
+
688  variable_dims var_dims_; // lhs_var[dim0,...,dimN-1]
+
689  expression expr_; // = rhs
+
690  base_var_decl var_type_; // type of lhs_var
+
691  assignment();
+
692  assignment(variable_dims& var_dims,
+
693  expression& expr);
+
694  };
+
695 
+
696  // FIXME: is this next necessary dependency?
+
697  // from generator.hpp
+
698  void generate_expression(const expression& e, std::ostream& o);
+
699 
+
700  bool has_rng_suffix(const std::string& s);
+
701 
+
702 
+
703  struct contains_var : public boost::static_visitor<bool> {
+ +
705  contains_var(const variable_map& var_map);
+
706  bool operator()(const nil& e) const;
+
707  bool operator()(const int_literal& e) const;
+
708  bool operator()(const double_literal& e) const;
+
709  bool operator()(const array_literal& e) const;
+
710  bool operator()(const variable& e) const;
+
711  bool operator()(const fun& e) const;
+
712  bool operator()(const index_op& e) const;
+
713  bool operator()(const binary_op& e) const;
+
714  bool operator()(const unary_op& e) const;
+
715  };
+
716 
+
717  bool has_var(const expression& e,
+
718  const variable_map& var_map);
+
719 
+
720 
+
721  struct contains_nonparam_var : public boost::static_visitor<bool> {
+ +
723  contains_nonparam_var(const variable_map& var_map);
+
724  bool operator()(const nil& e) const;
+
725  bool operator()(const int_literal& e) const;
+
726  bool operator()(const double_literal& e) const;
+
727  bool operator()(const array_literal& e) const;
+
728  bool operator()(const variable& e) const;
+
729  bool operator()(const fun& e) const;
+
730  bool operator()(const index_op& e) const;
+
731  bool operator()(const binary_op& e) const;
+
732  bool operator()(const unary_op& e) const;
+
733  };
+
734 
+
735  bool has_non_param_var(const expression& e,
+
736  const variable_map& var_map);
+
737 
+
738 
+
739  }
+
740 }
+
741 
+
742 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/ast__def_8cpp.html b/doc/api/html/ast__def_8cpp.html new file mode 100644 index 00000000000..9c698668d2a --- /dev/null +++ b/doc/api/html/ast__def_8cpp.html @@ -0,0 +1,183 @@ + + + + + +Stan: src/stan/gm/ast_def.cpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
ast_def.cpp File Reference
+
+
+
#include <boost/variant/apply_visitor.hpp>
+#include <boost/variant/recursive_variant.hpp>
+#include <cstddef>
+#include <limits>
+#include <climits>
+#include <iostream>
+#include <map>
+#include <stdexcept>
+#include <string>
+#include <utility>
+#include <vector>
+#include <stan/gm/ast.hpp>
+#include <stan/gm/function_signatures.h>
+
+

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::gm
 Directed graphical model compiler.
 
+ + + +

+Macros

#define __STAN__GM__AST_DEF_HPP__
 
+ + + + + + + + + + + + + + + + + + + + + + + + + +

+Functions

std::ostream & stan::gm::write_base_expr_type (std::ostream &o, base_expr_type type)
 
std::ostream & stan::gm::operator<< (std::ostream &o, const expr_type &et)
 
expr_type stan::gm::promote_primitive (const expr_type &et)
 
expr_type stan::gm::promote_primitive (const expr_type &et1, const expr_type &et2)
 
bool stan::gm::has_var (const expression &e, const variable_map &var_map)
 
bool stan::gm::has_non_param_var (const expression &e, const variable_map &var_map)
 
bool stan::gm::is_nil (const expression &e)
 
size_t stan::gm::total_dims (const std::vector< std::vector< expression > > &dimss)
 
expr_type stan::gm::infer_type_indexing (const base_expr_type &expr_base_type, size_t num_expr_dims, size_t num_index_dims)
 
expr_type stan::gm::infer_type_indexing (const expression &expr, size_t num_index_dims)
 
void stan::gm::print_var_origin (std::ostream &o, const var_origin &vo)
 
bool stan::gm::has_rng_suffix (const std::string &s)
 
+

Macro Definition Documentation

+ +
+
+ + + + +
#define __STAN__GM__AST_DEF_HPP__
+
+ +

Definition at line 2 of file ast_def.cpp.

+ +
+
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/ast__def_8cpp_source.html b/doc/api/html/ast__def_8cpp_source.html new file mode 100644 index 00000000000..b1eabf42498 --- /dev/null +++ b/doc/api/html/ast__def_8cpp_source.html @@ -0,0 +1,1160 @@ + + + + + +Stan: src/stan/gm/ast_def.cpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
ast_def.cpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__GM__AST_DEF_HPP__
+
2 #define __STAN__GM__AST_DEF_HPP__
+
3 
+
4 #include <boost/variant/apply_visitor.hpp>
+
5 #include <boost/variant/recursive_variant.hpp>
+
6 
+
7 #include <cstddef>
+
8 #include <limits>
+
9 #include <climits>
+
10 #include <iostream>
+
11 #include <map>
+
12 #include <stdexcept>
+
13 #include <string>
+
14 #include <utility>
+
15 #include <vector>
+
16 
+
17 #include <stan/gm/ast.hpp>
+
18 
+
19 namespace stan {
+
20 
+
21  namespace gm {
+
22 
+
23  std::ostream& write_base_expr_type(std::ostream& o, base_expr_type type) {
+
24  switch (type) {
+
25  case INT_T :
+
26  o << "int";
+
27  break;
+
28  case DOUBLE_T :
+
29  o << "real";
+
30  break;
+
31  case VECTOR_T :
+
32  o << "vector";
+
33  break;
+
34  case ROW_VECTOR_T :
+
35  o << "row vector";
+
36  break;
+
37  case MATRIX_T :
+
38  o << "matrix";
+
39  break;
+
40  case ILL_FORMED_T :
+
41  o << "ill formed";
+
42  break;
+
43  default:
+
44  o << "UNKNOWN";
+
45  }
+
46  return o;
+
47  }
+
48 
+
49  // expr_type ctors and methods
+ +
51  : base_type_(ILL_FORMED_T),
+
52  num_dims_(0) {
+
53  }
+ +
55  : base_type_(base_type),
+
56  num_dims_(0) {
+
57  }
+ +
59  size_t num_dims)
+
60  : base_type_(base_type),
+
61  num_dims_(num_dims) {
+
62  }
+
63  bool expr_type::operator==(const expr_type& et) const {
+
64  return base_type_ == et.base_type_
+
65  && num_dims_ == et.num_dims_;
+
66  }
+
67  bool expr_type::operator!=(const expr_type& et) const {
+
68  return !(*this == et);
+
69  }
+
70  bool expr_type::is_primitive() const {
+
71  return is_primitive_int()
+ +
73  }
+ +
75  return base_type_ == INT_T
+
76  && num_dims_ == 0U;
+
77  }
+ +
79  return base_type_ == DOUBLE_T
+
80  && num_dims_ == 0U;
+
81  }
+
82  bool expr_type::is_ill_formed() const {
+
83  return base_type_ == ILL_FORMED_T;
+
84  }
+ +
86  return base_type_;
+
87  }
+
88  size_t expr_type::num_dims() const {
+
89  return num_dims_;
+
90  }
+
91 
+
92  std::ostream& operator<<(std::ostream& o, const expr_type& et) {
+
93  write_base_expr_type(o,et.type());
+
94  if (et.num_dims() > 0)
+
95  o << '[' << et.num_dims() << ']';
+
96  return o;
+
97  }
+
98 
+ +
100  if (!et.is_primitive())
+
101  return expr_type();
+
102  return et;
+
103  }
+
104 
+ +
106  const expr_type& et2) {
+
107  if (!et1.is_primitive() || !et2.is_primitive())
+
108  return expr_type();
+
109  return et1.type() == DOUBLE_T ? et1 : et2;
+
110  }
+
111 
+ +
113  // FIXME: for threaded models, requires double-check lock
+
114  if (!sigs_)
+
115  sigs_ = new function_signatures;
+
116  return *sigs_;
+
117  }
+
118  void function_signatures::add(const std::string& name,
+
119  const expr_type& result_type,
+
120  const std::vector<expr_type>& arg_types) {
+
121  sigs_map_[name].push_back(function_signature_t(result_type,arg_types));
+
122 
+
123  }
+
124  void function_signatures::add(const std::string& name,
+
125  const expr_type& result_type) {
+
126  std::vector<expr_type> arg_types;
+
127  add(name,result_type,arg_types);
+
128  }
+
129  void function_signatures::add(const std::string& name,
+
130  const expr_type& result_type,
+
131  const expr_type& arg_type) {
+
132  std::vector<expr_type> arg_types;
+
133  arg_types.push_back(arg_type);
+
134  add(name,result_type,arg_types);
+
135  }
+
136  void function_signatures::add(const std::string& name,
+
137  const expr_type& result_type,
+
138  const expr_type& arg_type1,
+
139  const expr_type& arg_type2) {
+
140  std::vector<expr_type> arg_types;
+
141  arg_types.push_back(arg_type1);
+
142  arg_types.push_back(arg_type2);
+
143  add(name,result_type,arg_types);
+
144  }
+
145  void function_signatures::add(const std::string& name,
+
146  const expr_type& result_type,
+
147  const expr_type& arg_type1,
+
148  const expr_type& arg_type2,
+
149  const expr_type& arg_type3) {
+
150  std::vector<expr_type> arg_types;
+
151  arg_types.push_back(arg_type1);
+
152  arg_types.push_back(arg_type2);
+
153  arg_types.push_back(arg_type3);
+
154  add(name,result_type,arg_types);
+
155  }
+
156  void function_signatures::add(const std::string& name,
+
157  const expr_type& result_type,
+
158  const expr_type& arg_type1,
+
159  const expr_type& arg_type2,
+
160  const expr_type& arg_type3,
+
161  const expr_type& arg_type4) {
+
162  std::vector<expr_type> arg_types;
+
163  arg_types.push_back(arg_type1);
+
164  arg_types.push_back(arg_type2);
+
165  arg_types.push_back(arg_type3);
+
166  arg_types.push_back(arg_type4);
+
167  add(name,result_type,arg_types);
+
168  }
+
169  void function_signatures::add(const std::string& name,
+
170  const expr_type& result_type,
+
171  const expr_type& arg_type1,
+
172  const expr_type& arg_type2,
+
173  const expr_type& arg_type3,
+
174  const expr_type& arg_type4,
+
175  const expr_type& arg_type5) {
+
176  std::vector<expr_type> arg_types;
+
177  arg_types.push_back(arg_type1);
+
178  arg_types.push_back(arg_type2);
+
179  arg_types.push_back(arg_type3);
+
180  arg_types.push_back(arg_type4);
+
181  arg_types.push_back(arg_type5);
+
182  add(name,result_type,arg_types);
+
183  }
+
184  void function_signatures::add(const std::string& name,
+
185  const expr_type& result_type,
+
186  const expr_type& arg_type1,
+
187  const expr_type& arg_type2,
+
188  const expr_type& arg_type3,
+
189  const expr_type& arg_type4,
+
190  const expr_type& arg_type5,
+
191  const expr_type& arg_type6) {
+
192  std::vector<expr_type> arg_types;
+
193  arg_types.push_back(arg_type1);
+
194  arg_types.push_back(arg_type2);
+
195  arg_types.push_back(arg_type3);
+
196  arg_types.push_back(arg_type4);
+
197  arg_types.push_back(arg_type5);
+
198  arg_types.push_back(arg_type6);
+
199  add(name,result_type,arg_types);
+
200  }
+
201  void function_signatures::add(const std::string& name,
+
202  const expr_type& result_type,
+
203  const expr_type& arg_type1,
+
204  const expr_type& arg_type2,
+
205  const expr_type& arg_type3,
+
206  const expr_type& arg_type4,
+
207  const expr_type& arg_type5,
+
208  const expr_type& arg_type6,
+
209  const expr_type& arg_type7) {
+
210  std::vector<expr_type> arg_types;
+
211  arg_types.push_back(arg_type1);
+
212  arg_types.push_back(arg_type2);
+
213  arg_types.push_back(arg_type3);
+
214  arg_types.push_back(arg_type4);
+
215  arg_types.push_back(arg_type5);
+
216  arg_types.push_back(arg_type6);
+
217  arg_types.push_back(arg_type7);
+
218  add(name,result_type,arg_types);
+
219  }
+
220  void function_signatures::add_nullary(const::std::string& name) {
+
221  add(name,DOUBLE_T);
+
222  }
+
223  void function_signatures::add_unary(const::std::string& name) {
+
224  add(name,DOUBLE_T,DOUBLE_T);
+
225  }
+
226  void function_signatures::add_binary(const::std::string& name) {
+ +
228  }
+
229  void function_signatures::add_ternary(const::std::string& name) {
+ +
231  }
+
232  void function_signatures::add_quaternary(const::std::string& name) {
+ +
234  }
+ +
236  const std::vector<expr_type>& call_args,
+
237  const std::vector<expr_type>& sig_args) {
+
238  if (call_args.size() != sig_args.size()) {
+
239  return -1; // failure
+
240  }
+
241  int num_promotions = 0;
+
242  for (size_t i = 0; i < call_args.size(); ++i) {
+
243  if (call_args[i] == sig_args[i]) {
+
244  continue;
+
245  } else if (call_args[i].is_primitive_int()
+
246  && sig_args[i].is_primitive_double()) {
+
247  ++num_promotions;
+
248  } else {
+
249  return -1; // failed match
+
250  }
+
251  }
+
252  return num_promotions;
+
253  }
+ +
255  const std::string& name,
+
256  const std::vector<expr_type>& args,
+
257  std::ostream& error_msgs) {
+
258  std::vector<function_signature_t> signatures = sigs_map_[name];
+
259  size_t match_index = 0;
+
260  size_t min_promotions = std::numeric_limits<size_t>::max();
+
261  size_t num_matches = 0;
+
262 
+
263  for (size_t i = 0; i < signatures.size(); ++i) {
+
264  int promotions = num_promotions(args,signatures[i].second);
+
265  if (promotions < 0) continue; // no match
+
266  size_t promotions_ui = static_cast<size_t>(promotions);
+
267  if (promotions_ui < min_promotions) {
+
268  min_promotions = promotions_ui;
+
269  match_index = i;
+
270  num_matches = 1;
+
271  } else if (promotions_ui == min_promotions) {
+
272  ++num_matches;
+
273  }
+
274  }
+
275 
+
276  if (num_matches == 1) {
+
277  return signatures[match_index].first;
+
278  } else if (num_matches == 0) {
+
279  error_msgs << "no matches for function name=\"" << name << "\""
+
280  << std::endl;
+
281  } else {
+
282  error_msgs << num_matches << " matches with "
+
283  << min_promotions << " integer promotions "
+
284  << "for function name=\"" << name << "\"" << std::endl;
+
285  }
+
286  for (size_t i = 0; i < args.size(); ++i)
+
287  error_msgs << " arg " << i << " type=" << args[i] << std::endl;
+
288 
+
289  error_msgs << "available function signatures for "
+
290  << name << ":" << std::endl;
+
291  for (size_t i = 0; i < signatures.size(); ++i) {
+
292  error_msgs << i << ". " << name << "(";
+
293  for (size_t j = 0; j < signatures[i].second.size(); ++j) {
+
294  if (j > 0) error_msgs << ", ";
+
295  error_msgs << signatures[i].second[j];
+
296  }
+
297  error_msgs << ") : " << signatures[i].first << std::endl;
+
298  }
+
299  return expr_type(); // ill-formed dummy
+
300  }
+
301  function_signatures::function_signatures() {
+
302 #include <stan/gm/function_signatures.h>
+
303  }
+
304  std::set<std::string>
+ +
306  using std::map;
+
307  using std::set;
+
308  using std::string;
+
309  using std::vector;
+
310  // inefficient: if used intensively, should provide const iterator adaptor
+
311  set<string> result;
+
312  for (map<string,vector<function_signature_t> >::const_iterator it = sigs_map_.begin();
+
313  it != sigs_map_.end();
+
314  ++it)
+
315  result.insert(it->first);
+
316  return result;
+
317  }
+
318 
+
319  function_signatures* function_signatures::sigs_ = 0;
+
320 
+
321 
+
322 
+ +
324  statements::statements(const std::vector<var_decl>& local_decl,
+
325  const std::vector<statement>& stmts)
+
326  : local_decl_(local_decl),
+
327  statements_(stmts) {
+
328  }
+
329 
+ +
331  return expr_type();
+
332  }
+
333  // template <typename T>
+
334  // expr_type expression_type_vis::operator()(const T& e) const {
+
335  // return e.type_;
+
336  // }
+ +
338  return e.type_;
+
339  }
+ +
341  return e.type_;
+
342  }
+ +
344  return e.type_;
+
345  }
+ +
347  return e.type_;
+
348  }
+ +
350  return e.type_;
+
351  }
+ +
353  return e.type_;
+
354  }
+ +
356  return e.type_;
+
357  }
+ +
359  return e.type_;
+
360  }
+
361 
+ +
363  : expr_(nil()) {
+
364  }
+ +
366  : expr_(e.expr_) {
+
367  }
+ + +
370  return boost::apply_visitor(vis,expr_);
+
371  }
+
372  // template <typename Expr>
+
373  // expression::expression(const Expr& expr) : expr_(expr) { }
+
374 
+
375  expression::expression(const expression_t& expr) : expr_(expr) { }
+
376  expression::expression(const nil& expr) : expr_(expr) { }
+
377  expression::expression(const int_literal& expr) : expr_(expr) { }
+
378  expression::expression(const double_literal& expr) : expr_(expr) { }
+
379  expression::expression(const array_literal& expr) : expr_(expr) { }
+
380  expression::expression(const variable& expr) : expr_(expr) { }
+
381  expression::expression(const fun& expr) : expr_(expr) { }
+
382  expression::expression(const index_op& expr) : expr_(expr) { }
+
383  expression::expression(const binary_op& expr) : expr_(expr) { }
+
384  expression::expression(const unary_op& expr) : expr_(expr) { }
+
385 
+
386  printable::printable() : printable_("") { }
+
387  printable::printable(const expression& expr) : printable_(expr) { }
+
388  printable::printable(const std::string& msg) : printable_(msg) { }
+ +
390  : printable_(printable) { }
+ +
392  : printable_(printable.printable_) { }
+
393 
+ +
395  : var_map_(var_map) {
+
396  }
+
397  bool contains_var::operator()(const nil& e) const {
+
398  return false;
+
399  }
+ +
401  return false;
+
402  }
+ +
404  return false;
+
405  }
+ +
407  for (size_t i = 0; i < e.args_.size(); ++i)
+
408  if (boost::apply_visitor(*this,e.args_[i].expr_))
+
409  return true;
+
410  return false;
+
411  }
+
412  bool contains_var::operator()(const variable& e) const {
+ +
414  return ( vo == parameter_origin
+ +
416  || vo == local_origin );
+
417  }
+
418  bool contains_var::operator()(const fun& e) const {
+
419  for (size_t i = 0; i < e.args_.size(); ++i)
+
420  if (boost::apply_visitor(*this,e.args_[i].expr_))
+
421  return true;
+
422  return false;
+
423  }
+
424  bool contains_var::operator()(const index_op& e) const {
+
425  return boost::apply_visitor(*this,e.expr_.expr_);
+
426  }
+
427  bool contains_var::operator()(const binary_op& e) const {
+
428  return boost::apply_visitor(*this,e.left.expr_)
+
429  || boost::apply_visitor(*this,e.right.expr_);
+
430  }
+
431  bool contains_var::operator()(const unary_op& e) const {
+
432  return boost::apply_visitor(*this,e.subject.expr_);
+
433  }
+
434 
+
435  bool has_var(const expression& e,
+
436  const variable_map& var_map) {
+
437  contains_var vis(var_map);
+
438  return boost::apply_visitor(vis,e.expr_);
+
439  }
+
440 
+
441 
+ +
443  : var_map_(var_map) {
+
444  }
+ +
446  return false;
+
447  }
+ +
449  return false;
+
450  }
+ +
452  return false;
+
453  }
+ +
455  for (size_t i = 0; i < e.args_.size(); ++i)
+
456  if (boost::apply_visitor(*this,e.args_[i].expr_))
+
457  return true;
+
458  return false;
+
459  }
+ + +
462  return ( vo == transformed_parameter_origin
+
463  || vo == local_origin );
+
464  }
+ +
466  for (size_t i = 0; i < e.args_.size(); ++i)
+
467  if (boost::apply_visitor(*this,e.args_[i].expr_))
+
468  return true;
+
469  return false;
+
470  }
+ +
472  return boost::apply_visitor(*this,e.expr_.expr_);
+
473  }
+ +
475  return has_var(e,var_map_);
+
476  }
+ +
478  return has_var(e,var_map_);
+
479  }
+
480 
+ +
482  const variable_map& var_map) {
+
483  contains_nonparam_var vis(var_map);
+
484  return boost::apply_visitor(vis,e.expr_);
+
485  }
+
486 
+
487  bool is_nil_op::operator()(const nil& /*x*/) const { return true; }
+
488  bool is_nil_op::operator()(const int_literal& /*x*/) const { return false; }
+
489  bool is_nil_op::operator()(const double_literal& /* x */) const { return false; }
+
490  bool is_nil_op::operator()(const array_literal& /* x */) const { return false; }
+
491  bool is_nil_op::operator()(const variable& /* x */) const { return false; }
+
492  bool is_nil_op::operator()(const fun& /* x */) const { return false; }
+
493  bool is_nil_op::operator()(const index_op& /* x */) const { return false; }
+
494  bool is_nil_op::operator()(const binary_op& /* x */) const { return false; }
+
495  bool is_nil_op::operator()(const unary_op& /* x */) const { return false; }
+
496 
+
497  // template <typename T>
+
498  // bool is_nil_op::operator()(const T& /* x */) const { return false; }
+
499 
+
500  bool is_nil(const expression& e) {
+
501  is_nil_op ino;
+
502  return boost::apply_visitor(ino,e.expr_);
+
503  }
+
504 
+
505  variable_dims::variable_dims() { } // req for FUSION_ADAPT
+
506  variable_dims::variable_dims(std::string const& name,
+
507  std::vector<expression> const& dims)
+
508  : name_(name),
+
509  dims_(dims) {
+
510  }
+
511 
+
512 
+ +
514  : type_(INT_T) {
+
515  }
+ +
517  : val_(val),
+
518  type_(INT_T) {
+
519  }
+ +
521  : val_(il.val_),
+
522  type_(il.type_) {
+
523  }
+ +
525  val_ = il.val_;
+
526  type_ = il.type_;
+
527  return *this;
+
528  }
+
529 
+
530 
+ +
532  : type_(DOUBLE_T,0U) {
+
533  }
+ +
535  : val_(val),
+
536  type_(DOUBLE_T,0U) {
+
537  }
+ +
539  val_ = dl.val_;
+
540  type_ = dl.type_;
+
541  return *this;
+
542  }
+
543 
+
544 
+ +
546  : args_(),
+
547  type_(DOUBLE_T,1U) {
+
548  }
+
549  array_literal::array_literal(const std::vector<expression>& args)
+
550  : args_(args),
+
551  type_() { // ill-formed w/o help
+
552  }
+ +
554  args_ = al.args_;
+
555  type_ = al.type_;
+
556  return *this;
+
557  }
+
558 
+ +
560  variable::variable(std::string name) : name_(name) { }
+
561  void variable::set_type(const base_expr_type& base_type,
+
562  size_t num_dims) {
+
563  type_ = expr_type(base_type, num_dims);
+
564  }
+
565 
+
566 
+
567  fun::fun() { }
+
568  fun::fun(std::string const& name,
+
569  std::vector<expression> const& args)
+
570  : name_(name),
+
571  args_(args) {
+
572  infer_type();
+
573  }
+ +
575  // FIXME: remove this useless function and any calls to it
+
576  }
+
577 
+
578 
+
579  size_t total_dims(const std::vector<std::vector<expression> >& dimss) {
+
580  size_t total = 0U;
+
581  for (size_t i = 0; i < dimss.size(); ++i)
+
582  total += dimss[i].size();
+
583  return total;
+
584  }
+
585 
+
586 
+ +
588  size_t num_expr_dims,
+
589  size_t num_index_dims) {
+
590  if (num_index_dims <= num_expr_dims)
+
591  return expr_type(expr_base_type,num_expr_dims - num_index_dims);
+
592  if (num_index_dims == (num_expr_dims + 1)) {
+
593  if (expr_base_type == VECTOR_T || expr_base_type == ROW_VECTOR_T)
+
594  return expr_type(DOUBLE_T,0U);
+
595  if (expr_base_type == MATRIX_T)
+
596  return expr_type(ROW_VECTOR_T,0U);
+
597  }
+
598  if (num_index_dims == (num_expr_dims + 2))
+
599  if (expr_base_type == MATRIX_T)
+
600  return expr_type(DOUBLE_T,0U);
+
601 
+
602  // error condition, result expr_type has is_ill_formed() = true
+
603  return expr_type();
+
604  }
+
605 
+ +
607  size_t num_index_dims) {
+ +
609  expr.expression_type().num_dims(),
+
610  num_index_dims);
+
611  }
+
612 
+
613 
+ + +
616  const std::vector<std::vector<expression> >& dimss)
+
617  : expr_(expr),
+
618  dimss_(dimss) {
+
619  infer_type();
+
620  }
+ + +
623  }
+
624 
+ + +
627  const std::string& op,
+
628  const expression& right)
+
629  : op(op),
+
630  left(left),
+
631  right(right),
+
632  type_(promote_primitive(left.expression_type(),
+
633  right.expression_type())) {
+
634  }
+
635 
+
636 
+ +
638  expression const& subject)
+
639  : op(op),
+
640  subject(subject),
+
641  type_(promote_primitive(subject.expression_type())) {
+
642  }
+
643 
+
644 
+ + +
647  expression const& high)
+
648  : low_(low),
+
649  high_(high) {
+
650  }
+
651  bool range::has_low() const {
+
652  return !is_nil(low_.expr_);
+
653  }
+
654  bool range::has_high() const {
+
655  return !is_nil(high_.expr_);
+
656  }
+
657 
+
658  void print_var_origin(std::ostream& o, const var_origin& vo) {
+
659  if (vo == model_name_origin)
+
660  o << "model name";
+
661  else if (vo == data_origin)
+
662  o << "data";
+
663  else if (vo == transformed_data_origin)
+
664  o << "transformed data";
+
665  else if (vo == parameter_origin)
+
666  o << "parameter";
+
667  else if (vo == transformed_parameter_origin)
+
668  o << "transformed parameter";
+
669  else if (vo == derived_origin)
+
670  o << "generated quantities";
+
671  else if (vo == local_origin)
+
672  o << "local";
+
673  else
+
674  o << "UNKNOWN ORIGIN";
+
675  }
+
676 
+
677 
+ + +
680  : base_type_(base_type) {
+
681  }
+
682  base_var_decl::base_var_decl(const std::string& name,
+
683  const std::vector<expression>& dims,
+
684  const base_expr_type& base_type)
+
685  : name_(name),
+
686  dims_(dims),
+
687  base_type_(base_type) {
+
688  }
+
689 
+
690  bool variable_map::exists(const std::string& name) const {
+
691  return map_.find(name) != map_.end();
+
692  }
+
693  base_var_decl variable_map::get(const std::string& name) const {
+
694  if (!exists(name))
+
695  throw std::invalid_argument("variable does not exist");
+
696  return map_.find(name)->second.first;
+
697  }
+
698  base_expr_type variable_map::get_base_type(const std::string& name) const {
+
699  return get(name).base_type_;
+
700  }
+
701  size_t variable_map::get_num_dims(const std::string& name) const {
+
702  return get(name).dims_.size();
+
703  }
+
704  var_origin variable_map::get_origin(const std::string& name) const {
+
705  if (!exists(name))
+
706  throw std::invalid_argument("variable does not exist");
+
707  return map_.find(name)->second.second;
+
708  }
+
709  void variable_map::add(const std::string& name,
+
710  const base_var_decl& base_decl,
+
711  const var_origin& vo) {
+
712  map_[name] = range_t(base_decl,vo);
+
713  }
+
714  void variable_map::remove(const std::string& name) {
+
715  map_.erase(name);
+
716  }
+
717 
+ +
719  : base_var_decl(INT_T)
+
720  { }
+
721 
+ +
723  std::string const& name,
+
724  std::vector<expression> const& dims)
+
725  : base_var_decl(name,dims,INT_T),
+
726  range_(range)
+
727  { }
+
728 
+
729 
+
730 
+ + +
733  { }
+
734 
+ +
736  std::string const& name,
+
737  std::vector<expression> const& dims)
+
738  : base_var_decl(name,dims,DOUBLE_T),
+
739  range_(range)
+
740  { }
+
741 
+ + +
744  { }
+
745 
+ +
747  std::string const& name,
+
748  std::vector<expression> const& dims)
+
749  : base_var_decl(name,dims,VECTOR_T),
+
750  K_(K)
+
751  { }
+
752 
+ + +
755  { }
+
756 
+ +
758  std::string const& name,
+
759  std::vector<expression> const& dims)
+
760  : base_var_decl(name,dims,VECTOR_T),
+
761  K_(K)
+
762  { }
+
763 
+ + +
766  { }
+
767 
+ +
769  std::string const& name,
+
770  std::vector<expression> const& dims)
+
771  : base_var_decl(name,dims,VECTOR_T),
+
772  K_(K) {
+
773  }
+
774 
+ + +
777  { }
+
778 
+ +
780  std::string const& name,
+
781  std::vector<expression> const& dims)
+
782  : base_var_decl(name,dims,VECTOR_T),
+
783  K_(K) {
+
784  }
+
785 
+ +
787 
+ +
789  expression const& M,
+
790  std::string const& name,
+
791  std::vector<expression> const& dims)
+
792  : base_var_decl(name,dims,VECTOR_T),
+
793  range_(range),
+
794  M_(M) {
+
795  }
+
796 
+ + +
799  expression const& N,
+
800  std::string const& name,
+
801  std::vector<expression> const& dims)
+
802  : base_var_decl(name,dims,ROW_VECTOR_T),
+
803  range_(range),
+
804  N_(N) {
+
805  }
+
806 
+ + +
809  expression const& M,
+
810  expression const& N,
+
811  std::string const& name,
+
812  std::vector<expression> const& dims)
+
813  : base_var_decl(name,dims,MATRIX_T),
+
814  range_(range),
+
815  M_(M),
+
816  N_(N) {
+
817  }
+
818 
+
819 
+ +
821  : base_var_decl(MATRIX_T) {
+
822  }
+ +
824  expression const& N,
+
825  std::string const& name,
+
826  std::vector<expression> const& dims)
+
827  : base_var_decl(name,dims,MATRIX_T),
+
828  M_(M),
+
829  N_(N) {
+
830  }
+
831 
+ +
833  }
+ +
835  std::string const& name,
+
836  std::vector<expression> const& dims)
+
837  : base_var_decl(name,dims,MATRIX_T),
+
838  K_(K) {
+
839  }
+
840 
+ + +
843  std::string const& name,
+
844  std::vector<expression> const& dims)
+
845  : base_var_decl(name,dims,MATRIX_T),
+
846  K_(K) {
+
847  }
+
848 
+
849 
+
850 
+
851 
+ +
853  std::string name_vis::operator()(const nil& /* x */) const {
+
854  return ""; // fail if arises
+
855  }
+
856  std::string name_vis::operator()(const int_var_decl& x) const {
+
857  return x.name_;
+
858  }
+
859  std::string name_vis::operator()(const double_var_decl& x) const {
+
860  return x.name_;
+
861  }
+
862  std::string name_vis::operator()(const vector_var_decl& x) const {
+
863  return x.name_;
+
864  }
+
865  std::string name_vis::operator()(const row_vector_var_decl& x) const {
+
866  return x.name_;
+
867  }
+
868  std::string name_vis::operator()(const matrix_var_decl& x) const {
+
869  return x.name_;
+
870  }
+
871  std::string name_vis::operator()(const unit_vector_var_decl& x) const {
+
872  return x.name_;
+
873  }
+
874  std::string name_vis::operator()(const simplex_var_decl& x) const {
+
875  return x.name_;
+
876  }
+
877  std::string name_vis::operator()(const ordered_var_decl& x) const {
+
878  return x.name_;
+
879  }
+
880  std::string name_vis::operator()(const positive_ordered_var_decl& x) const {
+
881  return x.name_;
+
882  }
+
883  std::string name_vis::operator()(const cholesky_factor_var_decl& x) const {
+
884  return x.name_;
+
885  }
+
886  std::string name_vis::operator()(const cov_matrix_var_decl& x) const {
+
887  return x.name_;
+
888  }
+
889  std::string name_vis::operator()(const corr_matrix_var_decl& x) const {
+
890  return x.name_;
+
891  }
+
892 
+
893 
+
894  // can't template out in .cpp file
+
895 
+
896  var_decl::var_decl(const var_decl_t& decl) : decl_(decl) { }
+
897  var_decl::var_decl() : decl_(nil()) { }
+
898  var_decl::var_decl(const nil& decl) : decl_(decl) { }
+
899  var_decl::var_decl(const int_var_decl& decl) : decl_(decl) { }
+
900  var_decl::var_decl(const double_var_decl& decl) : decl_(decl) { }
+
901  var_decl::var_decl(const vector_var_decl& decl) : decl_(decl) { }
+
902  var_decl::var_decl(const row_vector_var_decl& decl) : decl_(decl) { }
+
903  var_decl::var_decl(const matrix_var_decl& decl) : decl_(decl) { }
+
904  var_decl::var_decl(const unit_vector_var_decl& decl) : decl_(decl) { }
+
905  var_decl::var_decl(const simplex_var_decl& decl) : decl_(decl) { }
+
906  var_decl::var_decl(const ordered_var_decl& decl) : decl_(decl) { }
+
907  var_decl::var_decl(const positive_ordered_var_decl& decl) : decl_(decl) { }
+
908  var_decl::var_decl(const cholesky_factor_var_decl& decl) : decl_(decl) { }
+
909  var_decl::var_decl(const cov_matrix_var_decl& decl) : decl_(decl) { }
+
910  var_decl::var_decl(const corr_matrix_var_decl& decl) : decl_(decl) { }
+
911 
+
912  std::string var_decl::name() const {
+
913  return boost::apply_visitor(name_vis(),decl_);
+
914  }
+
915 
+
916  statement::statement() : statement_(nil()) { }
+
917 
+
918  statement::statement(const statement_t& st) : statement_(st) { }
+
919  statement::statement(const nil& st) : statement_(st) { }
+
920  statement::statement(const assignment& st) : statement_(st) { }
+
921  statement::statement(const sample& st) : statement_(st) { }
+
922  statement::statement(const increment_log_prob_statement& st) : statement_(st) { }
+
923  statement::statement(const statements& st) : statement_(st) { }
+
924  statement::statement(const expression& st) : statement_(st) { }
+
925  statement::statement(const for_statement& st) : statement_(st) { }
+
926  statement::statement(const while_statement& st) : statement_(st) { }
+
927  statement::statement(const conditional_statement& st) : statement_(st) { }
+
928  statement::statement(const print_statement& st) : statement_(st) { }
+
929  statement::statement(const no_op_statement& st) : statement_(st) { }
+
930 
+
931  // template <typename Statement>
+
932  // statement::statement(const Statement& statement)
+
933  // : statement_(statement) {
+
934  // }
+
935 
+
936 
+ +
938  }
+ +
940  : log_prob_(log_prob) {
+
941  }
+
942 
+ +
944  }
+ +
946  range& range,
+
947  statement& stmt)
+
948  : variable_(variable),
+
949  range_(range),
+
950  statement_(stmt) {
+
951  }
+
952 
+ +
954  }
+ +
956  const statement& body)
+
957  : condition_(condition),
+
958  body_(body) {
+
959  }
+
960 
+ +
962  }
+ +
964  ::conditional_statement(const std::vector<expression>& conditions,
+
965  const std::vector<statement>& bodies)
+
966  : conditions_(conditions),
+
967  bodies_(bodies) {
+
968  }
+
969 
+ +
971 
+
972  print_statement::print_statement(const std::vector<printable>& printables)
+
973  : printables_(printables) {
+
974  }
+
975 
+ +
977  program::program(const std::vector<var_decl>& data_decl,
+
978  const std::pair<std::vector<var_decl>,
+
979  std::vector<statement> >& derived_data_decl,
+
980  const std::vector<var_decl>& parameter_decl,
+
981  const std::pair<std::vector<var_decl>,
+
982  std::vector<statement> >& derived_decl,
+
983  const statement& st,
+
984  const std::pair<std::vector<var_decl>,
+
985  std::vector<statement> >& generated_decl)
+
986  : data_decl_(data_decl),
+
987  derived_data_decl_(derived_data_decl),
+
988  parameter_decl_(parameter_decl),
+
989  derived_decl_(derived_decl),
+
990  statement_(st),
+
991  generated_decl_(generated_decl) {
+
992  }
+
993 
+ +
995  }
+ +
997  distribution& dist)
+
998  : expr_(e),
+
999  dist_(dist) {
+
1000  }
+
1001  bool sample::is_ill_formed() const {
+ +
1003  || ( truncation_.has_low()
+
1004  && expr_.expression_type()
+ +
1006  || ( truncation_.has_high()
+
1007  && expr_.expression_type()
+ +
1009  }
+
1010 
+ +
1012  }
+ +
1014  expression& expr)
+
1015  : var_dims_(var_dims),
+
1016  expr_(expr) {
+
1017  }
+
1018 
+ +
1020  expr_ = binary_op(expr_, "+", rhs);
+
1021  return *this;
+
1022  }
+
1023 
+ +
1025  expr_ = binary_op(expr_, "-", rhs);
+
1026  return *this;
+
1027  }
+
1028 
+ +
1030  expr_ = binary_op(expr_, "*", rhs);
+
1031  return *this;
+
1032  }
+
1033 
+ +
1035  expr_ = binary_op(expr_, "/", rhs);
+
1036  return *this;
+
1037  }
+
1038 
+
1039  bool has_rng_suffix(const std::string& s) {
+
1040  int n = s.size();
+
1041  return n > 4
+
1042  && s[n-1] == 'g'
+
1043  && s[n-2] == 'n'
+
1044  && s[n-3] == 'r'
+
1045  && s[n-4] == '_';
+
1046  }
+
1047 
+
1048 
+
1049  }
+
1050 }
+
1051 
+
1052 
+
1053 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/autocorrelation_8hpp.html b/doc/api/html/autocorrelation_8hpp.html new file mode 100644 index 00000000000..a770aaa9e8a --- /dev/null +++ b/doc/api/html/autocorrelation_8hpp.html @@ -0,0 +1,138 @@ + + + + + +Stan: src/stan/prob/autocorrelation.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
autocorrelation.hpp File Reference
+
+
+
#include <stan/math/matrix.hpp>
+#include <stan/math/matrix/mean.hpp>
+#include <vector>
+#include <complex>
+#include <unsupported/Eigen/FFT>
+
+

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::prob
 Templated probability distributions.
 
+ + + + + + + + + +

+Functions

template<typename T >
void stan::prob::autocorrelation (const std::vector< T > &y, std::vector< T > &ac, Eigen::FFT< T > &fft)
 Write autocorrelation estimates for every lag for the specified input sequence into the specified result using the specified FFT engine.
 
template<typename T >
void stan::prob::autocorrelation (const std::vector< T > &y, std::vector< T > &ac)
 Write autocorrelation estimates for every lag for the specified input sequence into the specified result.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/autocorrelation_8hpp_source.html b/doc/api/html/autocorrelation_8hpp_source.html new file mode 100644 index 00000000000..f2ef1cca47f --- /dev/null +++ b/doc/api/html/autocorrelation_8hpp_source.html @@ -0,0 +1,203 @@ + + + + + +Stan: src/stan/prob/autocorrelation.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
autocorrelation.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__PROB__AUTOCORRELATION_HPP__
+
2 #define __STAN__PROB__AUTOCORRELATION_HPP__
+
3 
+
4 #include <stan/math/matrix.hpp>
+ +
6 
+
7 #include <vector>
+
8 #include <complex>
+
9 #include <unsupported/Eigen/FFT>
+
10 
+
11 
+
12 namespace stan {
+
13 
+
14  namespace prob {
+
15 
+
16  namespace {
+
21  size_t fft_next_good_size(size_t N) {
+
22  if (N <= 2) return 2;
+
23  while (true) {
+
24  size_t m = N;
+
25  while((m % 2) == 0) m /= 2;
+
26  while((m % 3) == 0) m /= 3;
+
27  while((m % 5) == 0) m /= 5;
+
28  if (m <= 1)
+
29  return N;
+
30  N++;
+
31  }
+
32  }
+
33  }
+
34 
+
55  template <typename T>
+
56  void autocorrelation(const std::vector<T>& y,
+
57  std::vector<T>& ac,
+
58  Eigen::FFT<T>& fft) {
+
59 
+
60  using std::vector;
+
61  using std::complex;
+
62 
+
63  size_t N = y.size();
+
64  size_t M = fft_next_good_size(N);
+
65  size_t Mt2 = 2 * M;
+
66 
+
67 
+
68  vector<complex<T> > freqvec;
+
69 
+
70  // centered_signal = y-mean(y) followed by N zeroes
+
71  vector<T> centered_signal(y);
+
72  centered_signal.insert(centered_signal.end(),Mt2-N,0.0);
+
73  T mean = stan::math::mean(y);
+
74  for (size_t i = 0; i < N; i++)
+
75  centered_signal[i] -= mean;
+
76 
+
77  fft.fwd(freqvec,centered_signal);
+
78  for (size_t i = 0; i < Mt2; ++i)
+
79  freqvec[i] = complex<T>(norm(freqvec[i]), 0.0);
+
80 
+
81  fft.inv(ac,freqvec);
+
82  ac.resize(N);
+
83 
+
84  /*
+
85  vector<T> mask_correction_factors;
+
86  vector<T> mask;
+
87  mask.insert(mask.end(),N,1.0);
+
88  mask.insert(mask.end(),N,0.0);
+
89 
+
90  freqvec.resize(0);
+
91  fft.fwd(freqvec,mask);
+
92  for (size_t i = 0; i < Nt2; ++i)
+
93  freqvec[i] = complex<T>(norm(freqvec[i]), 0.0);
+
94 
+
95  fft.inv(mask_correction_factors, freqvec);
+
96 
+
97  for (size_t i = 0; i < N; ++i) {
+
98  ac[i] /= mask_correction_factors[i];
+
99  }
+
100  */
+
101  for (size_t i = 0; i < N; ++i) {
+
102  ac[i] /= (N - i);
+
103  }
+
104  T var = ac[0];
+
105  for (size_t i = 0; i < N; ++i)
+
106  ac[i] /= var;
+
107  }
+
108 
+
125  template <typename T>
+
126  void autocorrelation(const std::vector<T>& y,
+
127  std::vector<T>& ac) {
+
128  Eigen::FFT<T> fft;
+
129  return autocorrelation(y,ac,fft);
+
130  }
+
131 
+
132 
+
133  }
+
134 }
+
135 
+
136 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/autocovariance_8hpp.html b/doc/api/html/autocovariance_8hpp.html new file mode 100644 index 00000000000..fcd710b6180 --- /dev/null +++ b/doc/api/html/autocovariance_8hpp.html @@ -0,0 +1,135 @@ + + + + + +Stan: src/stan/prob/autocovariance.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
autocovariance.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::prob
 Templated probability distributions.
 
+ + + + + + + + + +

+Functions

template<typename T >
void stan::prob::autocovariance (const std::vector< T > &y, std::vector< T > &acov, Eigen::FFT< T > &fft)
 Write autocovariance estimates for every lag for the specified input sequence into the specified result using the specified FFT engine.
 
template<typename T >
void stan::prob::autocovariance (const std::vector< T > &y, std::vector< T > &acov)
 Write autocovariance estimates for every lag for the specified input sequence into the specified result.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/autocovariance_8hpp_source.html b/doc/api/html/autocovariance_8hpp_source.html new file mode 100644 index 00000000000..7b998471ae6 --- /dev/null +++ b/doc/api/html/autocovariance_8hpp_source.html @@ -0,0 +1,143 @@ + + + + + +Stan: src/stan/prob/autocovariance.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
autocovariance.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__PROB__AUTOCOVARIANCE_HPP__
+
2 #define __STAN__PROB__AUTOCOVARIANCE_HPP__
+
3 
+ + +
6 
+
7 namespace stan {
+
8 
+
9  namespace prob {
+
10 
+
11 
+
32  template <typename T>
+
33  void autocovariance(const std::vector<T>& y,
+
34  std::vector<T>& acov,
+
35  Eigen::FFT<T>& fft) {
+
36 
+
37  stan::prob::autocorrelation(y, acov, fft);
+
38 
+
39  T var = stan::math::variance(y) * (y.size()-1) / y.size();
+
40  for (size_t i = 0; i < y.size(); i++) {
+
41  acov[i] *= var;
+
42  }
+
43  }
+
44 
+
61  template <typename T>
+
62  void autocovariance(const std::vector<T>& y,
+
63  std::vector<T>& acov) {
+
64  Eigen::FFT<T> fft;
+
65  autocovariance(y,acov,fft);
+
66  }
+
67 
+
68 
+
69  }
+
70 }
+
71 
+
72 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/autodiff_8hpp.html b/doc/api/html/autodiff_8hpp.html new file mode 100644 index 00000000000..97636eb1341 --- /dev/null +++ b/doc/api/html/autodiff_8hpp.html @@ -0,0 +1,171 @@ + + + + + +Stan: src/stan/agrad/autodiff.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
autodiff.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Functions

template<typename R , typename F , typename T >
stan::agrad::apply_recover (const F &f, T &x)
 Apply the specified function to the specified argument and return the result; if the function throws an exception, recover reverse-mode memory and rethrow.
 
template<typename T , typename F >
void stan::agrad::derivative (const F &f, const T &x, T &fx, T &dfx_dx)
 Return the derivative of the specified univariate function at the specified argument.
 
template<typename T , typename F >
void stan::agrad::partial_derivative (const F &f, const Eigen::Matrix< T, Eigen::Dynamic, 1 > &x, int n, T &fx, T &dfx_dxn)
 Return the partial derivative of the specified multiivariate function at the specified argument.
 
template<typename F >
void stan::agrad::gradient (const F &f, const Eigen::Matrix< double, Eigen::Dynamic, 1 > &x, double &fx, Eigen::Matrix< double, Eigen::Dynamic, 1 > &grad_fx)
 Calculate the value and the gradient of the specified function at the specified argument.
 
template<typename T , typename F >
void stan::agrad::gradient (const F &f, const Eigen::Matrix< T, Eigen::Dynamic, 1 > &x, T &fx, Eigen::Matrix< T, Eigen::Dynamic, 1 > &grad_fx)
 
template<typename F >
void stan::agrad::jacobian (const F &f, const Eigen::Matrix< double, Eigen::Dynamic, 1 > &x, Eigen::Matrix< double, Eigen::Dynamic, 1 > &fx, Eigen::Matrix< double, Eigen::Dynamic, Eigen::Dynamic > &J)
 
template<typename T , typename F >
void stan::agrad::jacobian (const F &f, const Eigen::Matrix< T, Eigen::Dynamic, 1 > &x, Eigen::Matrix< T, Eigen::Dynamic, 1 > &fx, Eigen::Matrix< T, Eigen::Dynamic, Eigen::Dynamic > &J)
 
template<typename F >
void stan::agrad::hessian (const F &f, const Eigen::Matrix< double, Eigen::Dynamic, 1 > &x, double &fx, Eigen::Matrix< double, Eigen::Dynamic, 1 > &grad, Eigen::Matrix< double, Eigen::Dynamic, Eigen::Dynamic > &H)
 
template<typename T , typename F >
void stan::agrad::hessian (const F &f, const Eigen::Matrix< T, Eigen::Dynamic, 1 > &x, T &fx, Eigen::Matrix< T, Eigen::Dynamic, 1 > &grad, Eigen::Matrix< T, Eigen::Dynamic, Eigen::Dynamic > &H)
 
template<typename T1 , typename T2 , typename F >
void stan::agrad::gradient_dot_vector (const F &f, const Eigen::Matrix< T1, Eigen::Dynamic, 1 > &x, const Eigen::Matrix< T2, Eigen::Dynamic, 1 > &v, T1 &fx, T1 &grad_fx_dot_v)
 
template<typename F >
void stan::agrad::hessian_times_vector (const F &f, const Eigen::Matrix< double, Eigen::Dynamic, 1 > &x, const Eigen::Matrix< double, Eigen::Dynamic, 1 > &v, double &fx, Eigen::Matrix< double, Eigen::Dynamic, 1 > &Hv)
 
template<typename T , typename F >
void stan::agrad::hessian_times_vector (const F &f, const Eigen::Matrix< T, Eigen::Dynamic, 1 > &x, const Eigen::Matrix< T, Eigen::Dynamic, 1 > &v, T &fx, Eigen::Matrix< T, Eigen::Dynamic, 1 > &Hv)
 
template<typename F >
void stan::agrad::grad_tr_mat_times_hessian (const F &f, const Eigen::Matrix< double, Eigen::Dynamic, 1 > &x, const Eigen::Matrix< double, Eigen::Dynamic, Eigen::Dynamic > &M, Eigen::Matrix< double, Eigen::Dynamic, 1 > &grad_tr_MH)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/autodiff_8hpp_source.html b/doc/api/html/autodiff_8hpp_source.html new file mode 100644 index 00000000000..8a6aae658ca --- /dev/null +++ b/doc/api/html/autodiff_8hpp_source.html @@ -0,0 +1,403 @@ + + + + + +Stan: src/stan/agrad/autodiff.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
autodiff.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__AUTO_DIFF_HPP__
+
2 #define __STAN__AGRAD__AUTO_DIFF_HPP__
+
3 
+ +
5 #include <stan/agrad/rev.hpp>
+
6 #include <stan/agrad/fwd.hpp>
+
7 
+
8 namespace stan {
+
9 
+
10  namespace agrad {
+
11 
+
24  template <typename R, typename F, typename T>
+
25  inline
+
26  R
+
27  apply_recover(const F& f,
+
28  T& x) {
+
29  try {
+
30  return f(x);
+
31  } catch (std::exception& e) {
+ +
33  throw;
+
34  }
+
35  }
+
36 
+
48  template <typename T, typename F>
+
49  void
+
50  derivative(const F& f,
+
51  const T& x,
+
52  T& fx,
+
53  T& dfx_dx) {
+
54  fvar<T> x_fvar = fvar<T>(x,1.0);
+
55  fvar<T> fx_fvar = apply_recover<fvar<T> >(f,x_fvar);
+
56  fx = fx_fvar.val_;
+
57  dfx_dx = fx_fvar.d_;
+
58  }
+
59 
+
72  template <typename T, typename F>
+
73  void
+
74  partial_derivative(const F& f,
+
75  const Eigen::Matrix<T,Eigen::Dynamic,1>& x,
+
76  int n,
+
77  T& fx,
+
78  T& dfx_dxn) {
+
79  Eigen::Matrix<fvar<T>,Eigen::Dynamic,1> x_fvar(x.size());
+
80  for (int i = 0; i < x.size(); ++i)
+
81  x_fvar(i) = fvar<T>(x(i),i==n);
+
82  fvar<T> fx_fvar = apply_recover<fvar<T> >(f, x_fvar);
+
83  fx = fx_fvar.val_;
+
84  dfx_dxn = fx_fvar.d_;
+
85  }
+
86 
+
116  template <typename F>
+
117  void
+
118  gradient(const F& f,
+
119  const Eigen::Matrix<double,Eigen::Dynamic,1>& x,
+
120  double& fx,
+
121  Eigen::Matrix<double,Eigen::Dynamic,1>& grad_fx) {
+
122  using stan::agrad::var;
+
123  Eigen::Matrix<var,Eigen::Dynamic,1> x_var(x.size());
+
124  for (int i = 0; i < x.size(); ++i)
+
125  x_var(i) = x(i);
+
126  var fx_var = apply_recover<var>(f,x_var);
+
127  fx = fx_var.val();
+
128  grad_fx.resize(x.size());
+
129  stan::agrad::grad(fx_var.vi_);
+
130  for (int i = 0; i < x.size(); ++i)
+
131  grad_fx(i) = x_var(i).adj();
+ +
133  }
+
134  template <typename T, typename F>
+
135  void
+
136  gradient(const F& f,
+
137  const Eigen::Matrix<T,Eigen::Dynamic,1>& x,
+
138  T& fx,
+
139  Eigen::Matrix<T,Eigen::Dynamic,1>& grad_fx) {
+
140  Eigen::Matrix<fvar<T>,Eigen::Dynamic,1> x_fvar(x.size());
+
141  grad_fx.resize(x.size());
+
142  for (int i = 0; i < x.size(); ++i) {
+
143  for (int k = 0; k < x.size(); ++k)
+
144  x_fvar(k) = fvar<T>(x(k),k==i);
+
145  fvar<T> fx_fvar = apply_recover<fvar<T> >(f, x_fvar);
+
146  if (i == 0) fx = fx_fvar.val_;
+
147  grad_fx(i) = fx_fvar.d_;
+
148  }
+
149  }
+
150 
+
151 
+
152  template <typename F>
+
153  void
+
154  jacobian(const F& f,
+
155  const Eigen::Matrix<double,Eigen::Dynamic,1>& x,
+
156  Eigen::Matrix<double,Eigen::Dynamic,1>& fx,
+
157  Eigen::Matrix<double,Eigen::Dynamic,Eigen::Dynamic>& J) {
+
158  using Eigen::Matrix; using Eigen::Dynamic;
+
159  using stan::agrad::var;
+
160  Matrix<var,Dynamic,1> x_var(x.size());
+
161  for (int k = 0; k < x.size(); ++k)
+
162  x_var(k) = x(k);
+
163  Matrix<var,Dynamic,1> fx_var
+
164  = apply_recover<Matrix<var,Dynamic,1> >(f,x_var);
+
165  fx.resize(fx_var.size());
+
166  for (int i = 0; i < fx_var.size(); ++i)
+
167  fx(i) = fx_var(i).val();
+
168  J.resize(x.size(), fx_var.size());
+
169  for (int i = 0; i < fx_var.size(); ++i) {
+
170  if (i > 0)
+ +
172  grad(fx_var(i).vi_);
+
173  for (int k = 0; k < x.size(); ++k)
+
174  J(k,i) = x_var(k).adj();
+
175  }
+
176  }
+
177  template <typename T, typename F>
+
178  void
+
179  jacobian(const F& f,
+
180  const Eigen::Matrix<T,Eigen::Dynamic,1>& x,
+
181  Eigen::Matrix<T,Eigen::Dynamic,1>& fx,
+
182  Eigen::Matrix<T,Eigen::Dynamic,Eigen::Dynamic>& J) {
+
183  using Eigen::Matrix; using Eigen::Dynamic;
+
184  using stan::agrad::fvar;
+
185  Matrix<fvar<T>,Dynamic,1> x_fvar(x.size());
+
186  for (int i = 0; i < x.size(); ++i) {
+
187  for (int k = 0; k < x.size(); ++k)
+
188  x_fvar(k) = fvar<T>(x(k), i == k);
+
189  Matrix<fvar<T>,Dynamic,1> fx_fvar
+
190  = apply_recover<Matrix<fvar<T>,Dynamic,1> >(f,x_fvar);
+
191  if (i == 0) {
+
192  J.resize(x.size(),fx_fvar.size());
+
193  fx.resize(fx_fvar.size());
+
194  for (int k = 0; k < fx_fvar.size(); ++k)
+
195  fx(k) = fx_fvar(k).val_;
+
196  }
+
197  for (int k = 0; k < fx_fvar.size(); ++k) {
+
198  J(i,k) = fx_fvar(k).d_;
+
199  }
+
200  }
+
201  }
+
202 
+
203 
+
204  // time O(N^2); space O(N^2)
+
205  template <typename F>
+
206  void
+
207  hessian(const F& f,
+
208  const Eigen::Matrix<double,Eigen::Dynamic,1>& x,
+
209  double& fx,
+
210  Eigen::Matrix<double,Eigen::Dynamic,1>& grad,
+
211  Eigen::Matrix<double,Eigen::Dynamic,Eigen::Dynamic>& H) {
+
212  H.resize(x.size(), x.size());
+
213  grad.resize(x.size());
+
214  for (int i = 0; i < x.size(); ++i) {
+
215  Eigen::Matrix<fvar<var>, Eigen::Dynamic, 1> x_fvar(x.size());
+
216  for (int j = 0; j < x.size(); ++j)
+
217  x_fvar(j) = fvar<var>(x(j),i==j);
+
218  fvar<var> fx_fvar = apply_recover<fvar<var> >(f,x_fvar);
+
219  grad(i) = fx_fvar.d_.val();
+
220  if (i == 0) fx = fx_fvar.val_.val();
+
221  stan::agrad::grad(fx_fvar.d_.vi_);
+
222  for (int j = 0; j < x.size(); ++j)
+
223  H(i,j) = x_fvar(j).val_.adj();
+
224  }
+
225  }
+
226  // time O(N^3); space O(N^2)
+
227  template <typename T, typename F>
+
228  void
+
229  hessian(const F& f,
+
230  const Eigen::Matrix<T,Eigen::Dynamic,1>& x,
+
231  T& fx,
+
232  Eigen::Matrix<T,Eigen::Dynamic,1>& grad,
+
233  Eigen::Matrix<T,Eigen::Dynamic,Eigen::Dynamic>& H) {
+
234  H.resize(x.size(), x.size());
+
235  grad.resize(x.size());
+
236  Eigen::Matrix<fvar<fvar<T> >,Eigen::Dynamic,1> x_fvar(x.size());
+
237  for (int i = 0; i < x.size(); ++i) {
+
238  for (int j = i; j < x.size(); ++j) {
+
239  for (int k = 0; k < x.size(); ++k)
+
240  x_fvar(k) = fvar<fvar<T> >(fvar<T>(x(k),j==k),
+
241  fvar<T>(i==k,0));
+
242  fvar<fvar<T> > fx_fvar
+
243  = apply_recover<fvar<fvar<T> > >(f,x_fvar);
+
244  if (j == 0)
+
245  fx = fx_fvar.val_.val_;
+
246  if (i == j)
+
247  grad(i) = fx_fvar.d_.val_;
+
248  H(i,j) = fx_fvar.d_.d_;
+
249  H(j,i) = H(i,j);
+
250  }
+
251  }
+
252  }
+
253 
+
254 
+
255  // aka directional derivative (not length normalized)
+
256  // T2 must be assignable to T1
+
257  template <typename T1, typename T2, typename F>
+
258  void
+ +
260  const Eigen::Matrix<T1,Eigen::Dynamic,1>& x,
+
261  const Eigen::Matrix<T2,Eigen::Dynamic,1>& v,
+
262  T1& fx,
+
263  T1& grad_fx_dot_v) {
+
264  using stan::agrad::fvar;
+
265  using stan::agrad::var;
+
266  using Eigen::Matrix;
+
267  using Eigen::Dynamic;
+
268  Matrix<fvar<T1>,Dynamic,1> x_fvar(x.size());
+
269  for (int i = 0; i < x.size(); ++i)
+
270  x_fvar(i) = fvar<T1>(x(i),v(i));
+
271  fvar<T1> fx_fvar = apply_recover<fvar<T1> >(f,x_fvar);
+
272  fx = fx_fvar.val_;
+
273  grad_fx_dot_v = fx_fvar.d_;
+
274  }
+
275 
+
276 
+
277 
+
278 
+
279  template <typename F>
+
280  void
+ +
282  const Eigen::Matrix<double,Eigen::Dynamic,1>& x,
+
283  const Eigen::Matrix<double,Eigen::Dynamic,1>& v,
+
284  double& fx,
+
285  Eigen::Matrix<double,Eigen::Dynamic,1>& Hv) {
+
286  using stan::agrad::fvar;
+
287  using stan::agrad::var;
+
288  using Eigen::Matrix; using Eigen::Dynamic;
+
289  Matrix<var,Dynamic,1> x_var(x.size());
+
290  for (int i = 0; i < x_var.size(); ++i)
+
291  x_var(i) = x(i);
+
292  var fx_var;
+
293  var grad_fx_var_dot_v;
+
294  gradient_dot_vector(f,x_var,v,fx_var,grad_fx_var_dot_v);
+
295  fx = fx_var.val();
+
296  stan::agrad::grad(grad_fx_var_dot_v.vi_);
+
297  Hv.resize(x.size());
+
298  for (int i = 0; i < x.size(); ++i)
+
299  Hv(i) = x_var(i).adj();
+ +
301  }
+
302  template <typename T, typename F>
+
303  void
+ +
305  const Eigen::Matrix<T,Eigen::Dynamic,1>& x,
+
306  const Eigen::Matrix<T,Eigen::Dynamic,1>& v,
+
307  T& fx,
+
308  Eigen::Matrix<T,Eigen::Dynamic,1>& Hv) {
+
309  using Eigen::Matrix;
+
310  using Eigen::Dynamic;
+
311  Matrix<T,Dynamic,1> grad;
+
312  Matrix<T,Dynamic,Dynamic> H;
+
313  hessian(f,x,fx,grad,H);
+
314  Hv = H * v;
+
315  }
+
316 
+
317  // FIXME: add other results that are easy to extract
+
318  // // N * (fwd(2) + bk)
+
319  template <typename F>
+
320  void
+ +
322  const F& f,
+
323  const Eigen::Matrix<double,Eigen::Dynamic,1>& x,
+
324  const Eigen::Matrix<double,Eigen::Dynamic,Eigen::Dynamic>& M,
+
325  Eigen::Matrix<double,Eigen::Dynamic,1>& grad_tr_MH) {
+
326  using Eigen::Matrix;
+
327  using Eigen::Dynamic;
+
328 
+
329  grad_tr_MH.resize(x.size());
+
330 
+
331  Matrix<var,Dynamic,1> x_var(x.size());
+
332  for (int i = 0; i < x.size(); ++i)
+
333  x_var(i) = x(i);
+
334 
+
335  Matrix<fvar<var>,Dynamic,1> x_fvar(x.size());
+
336 
+
337  var sum(0.0);
+
338  Matrix<double,Dynamic,1> M_n(x.size());
+
339  for (int n = 0; n < x.size(); ++n) {
+
340  for (int k = 0; k < x.size(); ++k)
+
341  M_n(k) = M(n,k);
+
342  for (int k = 0; k < x.size(); ++k)
+
343  x_fvar(k) = fvar<var>(x_var(k), k == n);
+
344  fvar<var> fx;
+
345  fvar<var> grad_fx_dot_v;
+
346  gradient_dot_vector<fvar<var>,double>(f,x_fvar,M_n,fx,grad_fx_dot_v);
+
347  sum += grad_fx_dot_v.d_;
+
348  }
+
349 
+
350  stan::agrad::grad(sum.vi_);
+
351  for (int i = 0; i < x.size(); ++i)
+
352  grad_tr_MH(i) = x_var(i).adj();
+ +
354  }
+
355 
+
356 
+
357 
+
358  }
+
359 }
+
360 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/base__adaptation_8hpp.html b/doc/api/html/base__adaptation_8hpp.html new file mode 100644 index 00000000000..e2e40642680 --- /dev/null +++ b/doc/api/html/base__adaptation_8hpp.html @@ -0,0 +1,127 @@ + + + + + +Stan: src/stan/mcmc/base_adaptation.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
base_adaptation.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + +

+Classes

class  stan::mcmc::base_adaptation
 
+ + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::mcmc
 Markov chain Monte Carlo samplers.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/base__adaptation_8hpp_source.html b/doc/api/html/base__adaptation_8hpp_source.html new file mode 100644 index 00000000000..1a1bf5ac9c5 --- /dev/null +++ b/doc/api/html/base__adaptation_8hpp_source.html @@ -0,0 +1,127 @@ + + + + + +Stan: src/stan/mcmc/base_adaptation.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
base_adaptation.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MCMC__BASE__ADAPTATION__BETA__
+
2 #define __STAN__MCMC__BASE__ADAPTATION__BETA__
+
3 
+
4 namespace stan {
+
5 
+
6  namespace mcmc {
+
7 
+ +
9 
+
10  public:
+
11 
+
12  virtual void restart() {};
+
13 
+
14  };
+
15 
+
16  } // mcmc
+
17 
+
18 } // stan
+
19 
+
20 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/base__adapter_8hpp.html b/doc/api/html/base__adapter_8hpp.html new file mode 100644 index 00000000000..a61698b723e --- /dev/null +++ b/doc/api/html/base__adapter_8hpp.html @@ -0,0 +1,127 @@ + + + + + +Stan: src/stan/mcmc/base_adapter.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
base_adapter.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + +

+Classes

class  stan::mcmc::base_adapter
 
+ + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::mcmc
 Markov chain Monte Carlo samplers.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/base__adapter_8hpp_source.html b/doc/api/html/base__adapter_8hpp_source.html new file mode 100644 index 00000000000..6de0b44d185 --- /dev/null +++ b/doc/api/html/base__adapter_8hpp_source.html @@ -0,0 +1,136 @@ + + + + + +Stan: src/stan/mcmc/base_adapter.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
base_adapter.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MCMC__BASE__ADAPTER__BETA__
+
2 #define __STAN__MCMC__BASE__ADAPTER__BETA__
+
3 
+
4 namespace stan {
+
5 
+
6  namespace mcmc {
+
7 
+
8  class base_adapter {
+
9 
+
10  public:
+
11 
+
12  base_adapter(): _adapt_flag(false) {};
+
13 
+
14  virtual void engage_adaptation() { _adapt_flag = true; }
+
15  virtual void disengage_adaptation() { _adapt_flag = false; }
+
16 
+
17  bool adapting() { return _adapt_flag; }
+
18 
+
19  protected:
+
20 
+ +
22 
+
23  };
+
24 
+
25  } // mcmc
+
26 
+
27 } // stan
+
28 
+
29 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/base__hamiltonian_8hpp.html b/doc/api/html/base__hamiltonian_8hpp.html new file mode 100644 index 00000000000..680b546e0ef --- /dev/null +++ b/doc/api/html/base__hamiltonian_8hpp.html @@ -0,0 +1,133 @@ + + + + + +Stan: src/stan/mcmc/hmc/hamiltonians/base_hamiltonian.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
base_hamiltonian.hpp File Reference
+
+
+
#include <stdexcept>
+#include <fstream>
+#include <iostream>
+#include <vector>
+#include <stan/math/matrix/Eigen.hpp>
+#include <stan/model/util.hpp>
+
+

Go to the source code of this file.

+ + + + +

+Classes

class  stan::mcmc::base_hamiltonian< M, P, BaseRNG >
 
+ + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::mcmc
 Markov chain Monte Carlo samplers.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/base__hamiltonian_8hpp_source.html b/doc/api/html/base__hamiltonian_8hpp_source.html new file mode 100644 index 00000000000..52a9faed36b --- /dev/null +++ b/doc/api/html/base__hamiltonian_8hpp_source.html @@ -0,0 +1,196 @@ + + + + + +Stan: src/stan/mcmc/hmc/hamiltonians/base_hamiltonian.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
base_hamiltonian.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MCMC__BASE__HAMILTONIAN__BETA__
+
2 #define __STAN__MCMC__BASE__HAMILTONIAN__BETA__
+
3 
+
4 #include <stdexcept>
+
5 #include <fstream>
+
6 #include <iostream>
+
7 #include <vector>
+
8 
+ +
10 #include <stan/model/util.hpp>
+
11 
+
12 namespace stan {
+
13 
+
14  namespace mcmc {
+
15 
+
16  template <typename M, typename P, typename BaseRNG>
+ +
18 
+
19  public:
+
20 
+
21  base_hamiltonian(M& m, std::ostream* e): _model(m), _err_stream(e) {};
+ +
23 
+
24  virtual double T(P& z) = 0;
+
25  double V(P& z) { return z.V; }
+
26 
+
27  virtual double tau(P& z) = 0;
+
28  virtual double phi(P& z) = 0;
+
29 
+
30  double H(P& z) { return T(z) + V(z); }
+
31 
+
32  // tau = 0.5 p_{i} p_{j} Lambda^{ij} (q)
+
33  virtual const Eigen::VectorXd dtau_dq(P& z) = 0;
+
34  virtual const Eigen::VectorXd dtau_dp(P& z) = 0;
+
35 
+
36  // phi = 0.5 * log | Lambda (q) | + V(q)
+
37  virtual const Eigen::VectorXd dphi_dq(P& z) = 0;
+
38 
+
39  virtual void sample_p(P& z, BaseRNG& rng) = 0;
+
40 
+
41  virtual void init(P& z) { this->update(z); }
+
42 
+
43  virtual void update(P& z) {
+
44 
+
45  try {
+
46  stan::model::gradient(_model, z.q, z.V, z.g, _err_stream);
+
47  z.V *= -1;
+
48  } catch (const std::exception& e) {
+
49  this->_write_error_msg(_err_stream, e);
+
50  z.V = std::numeric_limits<double>::infinity();
+
51  }
+
52 
+
53  z.g *= -1;
+
54 
+
55  }
+
56 
+
57  protected:
+
58 
+
59  M& _model;
+
60 
+
61  std::ostream* _err_stream;
+
62 
+
63  void _write_error_msg(std::ostream* error_msgs,
+
64  const std::exception& e) {
+
65 
+
66  if (!error_msgs) return;
+
67 
+
68  *error_msgs << std::endl
+
69  << "Informational Message: The current Metropolis proposal is about to be "
+
70  << "rejected becuase of the following issue:"
+
71  << std::endl
+
72  << e.what() << std::endl
+
73  << "If this warning occurs sporadically, such as for highly constrained "
+
74  << "variable types like covariance matrices, then the sampler is fine,"
+
75  << std::endl
+
76  << "but if this warning occurs often then your model may be either severely "
+
77  << "ill-conditioned or misspecified."
+
78  << std::endl;
+
79 
+
80  }
+
81 
+
82  };
+
83 
+
84  } // mcmc
+
85 
+
86 } // stan
+
87 
+
88 
+
89 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/base__hmc_8hpp.html b/doc/api/html/base__hmc_8hpp.html new file mode 100644 index 00000000000..4b224cf9414 --- /dev/null +++ b/doc/api/html/base__hmc_8hpp.html @@ -0,0 +1,134 @@ + + + + + +Stan: src/stan/mcmc/hmc/base_hmc.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
base_hmc.hpp File Reference
+
+
+
#include <math.h>
+#include <stdexcept>
+#include <boost/math/special_functions/fpclassify.hpp>
+#include <boost/random/variate_generator.hpp>
+#include <boost/random/uniform_01.hpp>
+#include <stan/mcmc/base_mcmc.hpp>
+#include <stan/mcmc/hmc/hamiltonians/ps_point.hpp>
+
+

Go to the source code of this file.

+ + + + +

+Classes

class  stan::mcmc::base_hmc< M, P, H, I, BaseRNG >
 
+ + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::mcmc
 Markov chain Monte Carlo samplers.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/base__hmc_8hpp_source.html b/doc/api/html/base__hmc_8hpp_source.html new file mode 100644 index 00000000000..e4cb180501e --- /dev/null +++ b/doc/api/html/base__hmc_8hpp_source.html @@ -0,0 +1,259 @@ + + + + + +Stan: src/stan/mcmc/hmc/base_hmc.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
base_hmc.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MCMC__BASE__HMC__BETA__
+
2 #define __STAN__MCMC__BASE__HMC__BETA__
+
3 
+
4 #include <math.h>
+
5 #include <stdexcept>
+
6 
+
7 #include <boost/math/special_functions/fpclassify.hpp>
+
8 #include <boost/random/variate_generator.hpp>
+
9 #include <boost/random/uniform_01.hpp>
+
10 
+
11 #include <stan/mcmc/base_mcmc.hpp>
+ +
13 
+
14 namespace stan {
+
15 
+
16  namespace mcmc {
+
17 
+
18  template <class M, class P, template<class, class> class H,
+
19  template<class, class> class I, class BaseRNG>
+
20  class base_hmc: public base_mcmc {
+
21 
+
22  public:
+
23 
+
24  base_hmc(M &m, BaseRNG& rng, std::ostream* o, std::ostream* e):
+
25  base_mcmc(o, e),
+
26  _z(m.num_params_r()),
+
27  _integrator(this->_out_stream),
+
28  _hamiltonian(m, this->_err_stream),
+
29  _rand_int(rng),
+ +
31  _nom_epsilon(0.1),
+ +
33  _epsilon_jitter(0.0)
+
34  {};
+
35 
+
36  void write_sampler_state(std::ostream* o) {
+
37  if(!o) return;
+
38  *o << "# Step size = " << get_nominal_stepsize() << std::endl;
+
39  _z.write_metric(o);
+
40  }
+
41 
+
42  void get_sampler_diagnostic_names(std::vector<std::string>& model_names,
+
43  std::vector<std::string>& names) {
+
44  _z.get_param_names(model_names, names);
+
45  };
+
46 
+
47  void get_sampler_diagnostics(std::vector<double>& values) {
+
48  _z.get_params(values);
+
49  };
+
50 
+
51  void seed(const Eigen::VectorXd& q) {
+
52  _z.q = q;
+
53  }
+
54 
+
55  void init_stepsize() {
+
56 
+
57  ps_point z_init(this->_z);
+
58 
+
59  this->_hamiltonian.sample_p(this->_z, this->_rand_int);
+
60  this->_hamiltonian.init(this->_z);
+
61 
+
62  double H0 = this->_hamiltonian.H(this->_z); // Guaranteed to be finite if randomly initialized
+
63 
+
64  this->_integrator.evolve(this->_z, this->_hamiltonian, this->_nom_epsilon);
+
65 
+
66  double h = this->_hamiltonian.H(this->_z);
+
67  if (boost::math::isnan(h)) h = std::numeric_limits<double>::infinity();
+
68 
+
69  double delta_H = H0 - h;
+
70 
+
71  int direction = delta_H > std::log(0.8) ? 1 : -1;
+
72 
+
73  while (1) {
+
74 
+
75  this->_z.ps_point::operator=(z_init);
+
76 
+
77  this->_hamiltonian.sample_p(this->_z, this->_rand_int);
+
78  this->_hamiltonian.init(this->_z);
+
79 
+
80  double H0 = this->_hamiltonian.H(this->_z);
+
81 
+
82  this->_integrator.evolve(this->_z, this->_hamiltonian, this->_nom_epsilon);
+
83 
+
84  double h = this->_hamiltonian.H(this->_z);
+
85  if (boost::math::isnan(h)) h = std::numeric_limits<double>::infinity();
+
86 
+
87  double delta_H = H0 - h;
+
88 
+
89  if ((direction == 1) && !(delta_H > std::log(0.8)))
+
90  break;
+
91  else if ((direction == -1) && !(delta_H < std::log(0.8)))
+
92  break;
+
93  else
+
94  this->_nom_epsilon = ( (direction == 1)
+
95  ? 2.0 * this->_nom_epsilon
+
96  : 0.5 * this->_nom_epsilon );
+
97 
+
98  if (this->_nom_epsilon > 1e7)
+
99  throw std::runtime_error("Posterior is improper. Please check your model.");
+
100  if (this->_nom_epsilon == 0)
+
101  throw std::runtime_error("No acceptably small step size could be found. Perhaps the posterior is not continuous?");
+
102 
+
103  }
+
104 
+
105  this->_z.ps_point::operator=(z_init);
+
106 
+
107  }
+
108 
+
109  P& z() { return _z; }
+
110 
+
111  virtual void set_nominal_stepsize(const double e) {
+
112  if(e > 0) _nom_epsilon = e;
+
113  }
+
114 
+
115  double get_nominal_stepsize() { return this->_nom_epsilon; }
+
116 
+
117  double get_current_stepsize() { return this->_epsilon; }
+
118 
+
119  virtual void set_stepsize_jitter(const double j) {
+
120  if(j > 0 && j < 1) _epsilon_jitter = j;
+
121  }
+
122 
+
123  double get_stepsize_jitter() { return this->_epsilon_jitter; }
+
124 
+ +
126  this->_epsilon = this->_nom_epsilon;
+
127  if(this->_epsilon_jitter)
+
128  this->_epsilon *= ( 1.0 + this->_epsilon_jitter * (2.0 * this->_rand_uniform() - 1.0) );
+
129  }
+
130 
+
131  protected:
+
132 
+
133  P _z;
+
134  I<H<M, BaseRNG>, P> _integrator;
+
135  H<M, BaseRNG> _hamiltonian;
+
136 
+
137  BaseRNG& _rand_int;
+
138 
+
139  // Uniform(0, 1) RNG
+
140  boost::uniform_01<BaseRNG&> _rand_uniform;
+
141 
+
142  double _nom_epsilon;
+
143  double _epsilon;
+ +
145 
+
146  };
+
147 
+
148  } // mcmc
+
149 
+
150 } // stan
+
151 
+
152 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/base__integrator_8hpp.html b/doc/api/html/base__integrator_8hpp.html new file mode 100644 index 00000000000..5f6197e0441 --- /dev/null +++ b/doc/api/html/base__integrator_8hpp.html @@ -0,0 +1,128 @@ + + + + + +Stan: src/stan/mcmc/hmc/integrators/base_integrator.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
base_integrator.hpp File Reference
+
+
+
#include <ostream>
+
+

Go to the source code of this file.

+ + + + +

+Classes

class  stan::mcmc::base_integrator< H, P >
 
+ + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::mcmc
 Markov chain Monte Carlo samplers.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/base__integrator_8hpp_source.html b/doc/api/html/base__integrator_8hpp_source.html new file mode 100644 index 00000000000..d2cfdc4450c --- /dev/null +++ b/doc/api/html/base__integrator_8hpp_source.html @@ -0,0 +1,137 @@ + + + + + +Stan: src/stan/mcmc/hmc/integrators/base_integrator.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
base_integrator.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MCMC__BASE__INTEGRATOR__BETA__
+
2 #define __STAN__MCMC__BASE__INTEGRATOR__BETA__
+
3 
+
4 #include <ostream>
+
5 
+
6 namespace stan {
+
7 
+
8  namespace mcmc {
+
9 
+
10  template <typename H, typename P>
+ +
12 
+
13  public:
+
14 
+
15  base_integrator(std::ostream* o): _out_stream(o) {};
+
16 
+
17  virtual void evolve(P& z, H& hamiltonian, const double epsilon) = 0;
+
18 
+
19  protected:
+
20 
+
21  std::ostream* _out_stream;
+
22 
+
23  };
+
24 
+
25  } // mcmc
+
26 
+
27 } // stan
+
28 
+
29 
+
30 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/base__leapfrog_8hpp.html b/doc/api/html/base__leapfrog_8hpp.html new file mode 100644 index 00000000000..a7ecffcb97c --- /dev/null +++ b/doc/api/html/base__leapfrog_8hpp.html @@ -0,0 +1,130 @@ + + + + + +Stan: src/stan/mcmc/hmc/integrators/base_leapfrog.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
base_leapfrog.hpp File Reference
+
+
+
#include <iostream>
+#include <iomanip>
+#include <stan/mcmc/hmc/integrators/base_integrator.hpp>
+
+

Go to the source code of this file.

+ + + + +

+Classes

class  stan::mcmc::base_leapfrog< H, P >
 
+ + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::mcmc
 Markov chain Monte Carlo samplers.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/base__leapfrog_8hpp_source.html b/doc/api/html/base__leapfrog_8hpp_source.html new file mode 100644 index 00000000000..37901c9d87f --- /dev/null +++ b/doc/api/html/base__leapfrog_8hpp_source.html @@ -0,0 +1,229 @@ + + + + + +Stan: src/stan/mcmc/hmc/integrators/base_leapfrog.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
base_leapfrog.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MCMC__BASE__LEAPFROG__BETA__
+
2 #define __STAN__MCMC__BASE__LEAPFROG__BETA__
+
3 
+
4 #include <iostream>
+
5 #include <iomanip>
+ +
7 
+
8 namespace stan {
+
9 
+
10  namespace mcmc {
+
11 
+
12  template <typename H, typename P>
+
13  class base_leapfrog: public base_integrator<H, P> {
+
14 
+
15  public:
+
16 
+
17  base_leapfrog(std::ostream* o): base_integrator<H, P>(o) {};
+
18 
+
19  void evolve(P& z, H& hamiltonian, const double epsilon) {
+
20 
+
21  begin_update_p(z, hamiltonian, 0.5 * epsilon);
+
22 
+
23  update_q(z, hamiltonian, epsilon);
+
24  hamiltonian.update(z);
+
25 
+
26  end_update_p(z, hamiltonian, 0.5 * epsilon);
+
27 
+
28  }
+
29 
+
30  void verbose_evolve(P& z, H& hamiltonian, const double epsilon) {
+
31 
+
32  this->_out_stream->precision(6);
+
33  int width = 14;
+
34  int nColumn = 4;
+
35 
+
36  if (this->_out_stream) {
+
37 
+
38  *(this->_out_stream) << "Verbose Hamiltonian Evolution, Step Size = " << epsilon << ":" << std::endl;
+
39  *(this->_out_stream) << " " << std::setw(nColumn * width) << std::setfill('-')
+
40  << "" << std::setfill(' ') << std::endl;
+
41  *(this->_out_stream) << " "
+
42  << std::setw(width) << std::left << "Poisson"
+
43  << std::setw(width) << std::left << "Initial"
+
44  << std::setw(width) << std::left << "Current"
+
45  << std::setw(width) << std::left << "DeltaH"
+
46  << std::endl;
+
47  *(this->_out_stream) << " "
+
48  << std::setw(width) << std::left << "Operator"
+
49  << std::setw(width) << std::left << "Hamiltonian"
+
50  << std::setw(width) << std::left << "Hamiltonian"
+
51  << std::setw(width) << std::left << "/ Stepsize^{2}"
+
52  << std::endl;
+
53  *(this->_out_stream) << " " << std::setw(nColumn * width) << std::setfill('-')
+
54  << "" << std::setfill(' ') << std::endl;
+
55 
+
56  }
+
57 
+
58  double H0 = hamiltonian.H(z);
+
59 
+
60  begin_update_p(z, hamiltonian, 0.5 * epsilon);
+
61 
+
62  double H1 = hamiltonian.H(z);
+
63 
+
64  if (this->_out_stream) {
+
65 
+
66  *(this->_out_stream) << " "
+
67  << std::setw(width) << std::left << "hat{V}/2"
+
68  << std::setw(width) << std::left << H0
+
69  << std::setw(width) << std::left << H1
+
70  << std::setw(width) << std::left << (H1 - H0) / (epsilon * epsilon)
+
71  << std::endl;
+
72 
+
73  }
+
74 
+
75  update_q(z, hamiltonian, epsilon);
+
76  hamiltonian.update(z);
+
77 
+
78  double H2 = hamiltonian.H(z);
+
79 
+
80  if (this->_out_stream) {
+
81 
+
82  *(this->_out_stream) << " "
+
83  << std::setw(width) << std::left << "hat{T}"
+
84  << std::setw(width) << std::left << H0
+
85  << std::setw(width) << std::left << H2
+
86  << std::setw(width) << std::left << (H2 - H0) / (epsilon * epsilon)
+
87  << std::endl;
+
88 
+
89  }
+
90 
+
91  end_update_p(z, hamiltonian, 0.5 * epsilon);
+
92 
+
93  double H3 = hamiltonian.H(z);
+
94 
+
95  if (this->_out_stream) {
+
96 
+
97  *(this->_out_stream) << " "
+
98  << std::setw(width) << std::left << "hat{V}/2"
+
99  << std::setw(width) << std::left << H0
+
100  << std::setw(width) << std::left << H3
+
101  << std::setw(width) << std::left << (H3 - H0) / (epsilon * epsilon)
+
102  << std::endl;
+
103 
+
104  *(this->_out_stream) << " " << std::setw(nColumn * width) << std::setfill('-')
+
105  << "" << std::setfill(' ') << std::endl;
+
106 
+
107  }
+
108 
+
109  }
+
110 
+
111  virtual void begin_update_p(P& z, H& hamiltonian, double epsilon) = 0;
+
112  virtual void update_q(P& z, H& hamiltonian, double epsilon) = 0;
+
113  virtual void end_update_p(P& z, H& hamiltonian, double epsilon) = 0;
+
114 
+
115  };
+
116 
+
117  } // mcmc
+
118 
+
119 } // stan
+
120 
+
121 
+
122 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/base__mcmc_8hpp.html b/doc/api/html/base__mcmc_8hpp.html new file mode 100644 index 00000000000..59fff1d70ba --- /dev/null +++ b/doc/api/html/base__mcmc_8hpp.html @@ -0,0 +1,130 @@ + + + + + +Stan: src/stan/mcmc/base_mcmc.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
base_mcmc.hpp File Reference
+
+
+
#include <ostream>
+#include <string>
+#include <stan/mcmc/sample.hpp>
+
+

Go to the source code of this file.

+ + + + +

+Classes

class  stan::mcmc::base_mcmc
 
+ + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::mcmc
 Markov chain Monte Carlo samplers.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/base__mcmc_8hpp_source.html b/doc/api/html/base__mcmc_8hpp_source.html new file mode 100644 index 00000000000..9b2ab0ce327 --- /dev/null +++ b/doc/api/html/base__mcmc_8hpp_source.html @@ -0,0 +1,161 @@ + + + + + +Stan: src/stan/mcmc/base_mcmc.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
base_mcmc.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MCMC__BASE_MCMC__HPP__
+
2 #define __STAN__MCMC__BASE_MCMC__HPP__
+
3 
+
4 #include <ostream>
+
5 #include <string>
+
6 
+
7 #include <stan/mcmc/sample.hpp>
+
8 
+
9 namespace stan {
+
10 
+
11  namespace mcmc {
+
12 
+
13  class base_mcmc {
+
14 
+
15  public:
+
16 
+
17  base_mcmc(std::ostream* o, std::ostream* e): _out_stream(o), _err_stream(e) {};
+
18 
+
19  virtual ~base_mcmc() {};
+
20 
+
21  virtual sample transition(sample& init_sample) = 0;
+
22 
+
23  std::string name() { return _name; }
+
24 
+
25  virtual void write_sampler_param_names(std::ostream& o) {};
+
26 
+
27  virtual void write_sampler_params(std::ostream& o) {};
+
28 
+
29  virtual void get_sampler_param_names(std::vector<std::string>& names) {};
+
30 
+
31  virtual void get_sampler_params(std::vector<double>& values) {};
+
32 
+
33  virtual void write_sampler_state(std::ostream* o) {};
+
34 
+
35  virtual void get_sampler_diagnostic_names(std::vector<std::string>& model_names,
+
36  std::vector<std::string>& names) {};
+
37 
+
38  virtual void get_sampler_diagnostics(std::vector<double>& values) {};
+
39 
+
40  protected:
+
41 
+
42  std::string _name;
+
43 
+
44  std::ostream* _out_stream;
+
45  std::ostream* _err_stream;
+
46 
+
47  };
+
48 
+
49  } // mcmc
+
50 
+
51 } // stan
+
52 
+
53 #endif
+
54 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/base__nuts_8hpp.html b/doc/api/html/base__nuts_8hpp.html new file mode 100644 index 00000000000..1eaa83b8e4d --- /dev/null +++ b/doc/api/html/base__nuts_8hpp.html @@ -0,0 +1,134 @@ + + + + + +Stan: src/stan/mcmc/hmc/nuts/base_nuts.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
base_nuts.hpp File Reference
+
+
+
#include <math.h>
+#include <boost/math/special_functions/fpclassify.hpp>
+#include <stan/math/functions/min.hpp>
+#include <stan/mcmc/hmc/base_hmc.hpp>
+#include <stan/mcmc/hmc/hamiltonians/ps_point.hpp>
+
+

Go to the source code of this file.

+ + + + + + +

+Classes

struct  stan::mcmc::nuts_util
 
class  stan::mcmc::base_nuts< M, P, H, I, BaseRNG >
 
+ + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::mcmc
 Markov chain Monte Carlo samplers.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/base__nuts_8hpp_source.html b/doc/api/html/base__nuts_8hpp_source.html new file mode 100644 index 00000000000..6503d771a57 --- /dev/null +++ b/doc/api/html/base__nuts_8hpp_source.html @@ -0,0 +1,368 @@ + + + + + +Stan: src/stan/mcmc/hmc/nuts/base_nuts.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
base_nuts.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MCMC__BASE__NUTS__BETA__
+
2 #define __STAN__MCMC__BASE__NUTS__BETA__
+
3 
+
4 #include <math.h>
+
5 #include <boost/math/special_functions/fpclassify.hpp>
+ + + +
9 
+
10 namespace stan {
+
11 
+
12  namespace mcmc {
+
13 
+
14  struct nuts_util
+
15  {
+
16  // Constants through each recursion
+
17  double log_u;
+
18  double H0;
+
19  int sign;
+
20 
+
21  // Aggregators through each recursion
+
22  int n_tree;
+
23  double sum_prob;
+
24  bool criterion;
+
25 
+
26  };
+
27 
+
28  // The No-U-Turn Sampler (NUTS).
+
29 
+
30  template <class M, class P, template<class, class> class H,
+
31  template<class, class> class I, class BaseRNG>
+
32  class base_nuts: public base_hmc<M, P, H, I, BaseRNG>
+
33  {
+
34 
+
35  public:
+
36 
+
37  base_nuts(M &m, BaseRNG& rng, std::ostream* o, std::ostream* e):
+
38  base_hmc<M, P, H, I, BaseRNG>(m, rng, o, e),
+ +
40  {};
+
41 
+
42  ~base_nuts() {};
+
43 
+
44  void set_max_depth(const int d) {
+
45  if(d > 0)
+
46  _max_depth = d;
+
47  }
+
48 
+
49  void set_max_delta(const double d) {
+
50  _max_delta = d;
+
51  }
+
52 
+
53  int get_max_depth() { return this->_max_depth; }
+
54  double get_max_delta() { return this->_max_delta; }
+
55 
+
56  sample transition(sample& init_sample) {
+
57 
+
58  // Initialize the algorithm
+
59  this->sample_stepsize();
+
60 
+
61  nuts_util util;
+
62 
+
63  this->seed(init_sample.cont_params());
+
64 
+
65  this->_hamiltonian.sample_p(this->_z, this->_rand_int);
+
66  this->_hamiltonian.init(this->_z);
+
67 
+
68  ps_point z_plus(this->_z);
+
69  ps_point z_minus(z_plus);
+
70 
+
71  ps_point z_sample(z_plus);
+
72  ps_point z_propose(z_plus);
+
73 
+
74  int n_cont = init_sample.cont_params().size();
+
75 
+
76  Eigen::VectorXd rho_init = this->_z.p;
+
77  Eigen::VectorXd rho_plus(n_cont); rho_plus.setZero();
+
78  Eigen::VectorXd rho_minus(n_cont); rho_minus.setZero();
+
79 
+
80  util.H0 = this->_hamiltonian.H(this->_z);
+
81 
+
82  // Sample the slice variable
+
83  util.log_u = std::log(this->_rand_uniform());
+
84 
+
85  // Build a balanced binary tree until the NUTS criterion fails
+
86  util.criterion = true;
+
87  int n_valid = 0;
+
88 
+
89  this->_depth = 0;
+
90  this->_n_divergent = 0;
+
91 
+
92  util.n_tree = 0;
+
93  util.sum_prob = 0;
+
94 
+
95  while (util.criterion && (this->_depth <= this->_max_depth) ) {
+
96 
+
97  // Randomly sample a direction in time
+
98  ps_point* z = 0;
+
99  Eigen::VectorXd* rho = 0;
+
100 
+
101  if (this->_rand_uniform() > 0.5) {
+
102  z = &z_plus;
+
103  rho = &rho_plus;
+
104  util.sign = 1;
+
105  }
+
106  else {
+
107  z = &z_minus;
+
108  rho = &rho_minus;
+
109  util.sign = -1;
+
110  }
+
111 
+
112  // And build a new subtree in that direction
+
113  this->_z.ps_point::operator=(*z);
+
114 
+
115  int n_valid_subtree = build_tree(_depth, *rho, 0, z_propose, util);
+
116  ++(this->_depth);
+
117 
+
118  *z = this->_z;
+
119 
+
120  // Metropolis-Hastings sample the fresh subtree
+
121  if (!util.criterion)
+
122  break;
+
123 
+
124  double subtree_prob = 0;
+
125 
+
126  if (n_valid) {
+
127  subtree_prob = static_cast<double>(n_valid_subtree) /
+
128  static_cast<double>(n_valid);
+
129  } else {
+
130  subtree_prob = n_valid_subtree ? 1 : 0;
+
131  }
+
132 
+
133  if (this->_rand_uniform() < subtree_prob)
+
134  z_sample = z_propose;
+
135 
+
136  n_valid += n_valid_subtree;
+
137 
+
138  // Check validity of completed tree
+
139  this->_z.ps_point::operator=(z_plus);
+
140  Eigen::VectorXd delta_rho = rho_minus + rho_init + rho_plus;
+
141 
+
142  util.criterion = compute_criterion(z_minus, this->_z, delta_rho);
+
143 
+
144  }
+
145 
+
146  this->_n_leapfrog = util.n_tree;
+
147 
+
148  double accept_prob = util.sum_prob / static_cast<double>(util.n_tree);
+
149 
+
150  this->_z.ps_point::operator=(z_sample);
+
151  return sample(this->_z.q, - this->_z.V, accept_prob);
+
152 
+
153  }
+
154 
+
155  void write_sampler_param_names(std::ostream& o) {
+
156  o << "stepsize__,treedepth__,n_leapfrog__,n_divergent__,";
+
157  }
+
158 
+
159  void write_sampler_params(std::ostream& o) {
+
160  o << this->_epsilon << "," << this->_depth << ","
+
161  << this->_n_leapfrog << "," << this->_n_divergent << ",";
+
162  }
+
163 
+
164  void get_sampler_param_names(std::vector<std::string>& names) {
+
165  names.push_back("stepsize__");
+
166  names.push_back("treedepth__");
+
167  names.push_back("n_leapfrog__");
+
168  names.push_back("n_divergent__");
+
169  }
+
170 
+
171  void get_sampler_params(std::vector<double>& values) {
+
172  values.push_back(this->_epsilon);
+
173  values.push_back(this->_depth);
+
174  values.push_back(this->_n_leapfrog);
+
175  values.push_back(this->_n_divergent);
+
176  }
+
177 
+
178  virtual bool compute_criterion(ps_point& start, P& finish, Eigen::VectorXd& rho) = 0;
+
179 
+
180  // Returns number of valid points in the completed subtree
+
181  int build_tree(int depth, Eigen::VectorXd& rho,
+
182  ps_point* z_init_parent, ps_point& z_propose,
+
183  nuts_util& util)
+
184  {
+
185 
+
186  // Base case
+
187  if (depth == 0)
+
188  {
+
189 
+
190  this->_integrator.evolve(this->_z, this->_hamiltonian,
+
191  util.sign * this->_epsilon);
+
192 
+
193  rho += this->_z.p;
+
194 
+
195  if (z_init_parent) *z_init_parent = this->_z;
+
196  z_propose = this->_z;
+
197 
+
198  double h = this->_hamiltonian.H(this->_z);
+
199  if (boost::math::isnan(h)) h = std::numeric_limits<double>::infinity();
+
200 
+
201  util.criterion = util.log_u + (h - util.H0) < this->_max_delta;
+
202  if (!util.criterion) ++(this->_n_divergent);
+
203 
+
204  util.sum_prob += stan::math::min(1, std::exp(util.H0 - h));
+
205  util.n_tree += 1;
+
206 
+
207  return (util.log_u + (h - util.H0) < 0);
+
208 
+
209  }
+
210  // General recursion
+
211  else
+
212  {
+
213 
+
214  Eigen::VectorXd left_subtree_rho(rho.size()); left_subtree_rho.setZero();
+
215  ps_point z_init(this->_z);
+
216 
+
217  int n1 = build_tree(depth - 1, left_subtree_rho, &z_init, z_propose, util);
+
218 
+
219  if (z_init_parent) *z_init_parent = z_init;
+
220 
+
221  if (!util.criterion) return 0;
+
222 
+
223  Eigen::VectorXd right_subtree_rho(rho.size()); right_subtree_rho.setZero();
+
224  ps_point z_propose_right(z_init);
+
225 
+
226  int n2 = build_tree(depth - 1, right_subtree_rho, 0, z_propose_right, util);
+
227 
+
228  double accept_prob = static_cast<double>(n2) /
+
229  static_cast<double>(n1 + n2);
+
230 
+
231  if ( util.criterion && (this->_rand_uniform() < accept_prob) )
+
232  z_propose = z_propose_right;
+
233 
+
234  Eigen::VectorXd& subtree_rho = left_subtree_rho;
+
235  subtree_rho += right_subtree_rho;
+
236 
+
237  rho += subtree_rho;
+
238 
+
239  util.criterion &= compute_criterion(z_init, this->_z, subtree_rho);
+
240 
+
241  return n1 + n2;
+
242 
+
243  }
+
244 
+
245  }
+
246 
+
247  int _depth;
+ +
249  double _max_delta;
+
250 
+ + +
253 
+
254  };
+
255 
+
256  } // mcmc
+
257 
+
258 } // stan
+
259 
+
260 
+
261 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/base__static__hmc_8hpp.html b/doc/api/html/base__static__hmc_8hpp.html new file mode 100644 index 00000000000..ff0be61a09f --- /dev/null +++ b/doc/api/html/base__static__hmc_8hpp.html @@ -0,0 +1,131 @@ + + + + + +Stan: src/stan/mcmc/hmc/static/base_static_hmc.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
base_static_hmc.hpp File Reference
+
+
+
#include <math.h>
+#include <boost/math/special_functions/fpclassify.hpp>
+#include <stan/mcmc/hmc/base_hmc.hpp>
+#include <stan/mcmc/hmc/hamiltonians/ps_point.hpp>
+
+

Go to the source code of this file.

+ + + + +

+Classes

class  stan::mcmc::base_static_hmc< M, P, H, I, BaseRNG >
 
+ + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::mcmc
 Markov chain Monte Carlo samplers.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/base__static__hmc_8hpp_source.html b/doc/api/html/base__static__hmc_8hpp_source.html new file mode 100644 index 00000000000..c8adab720f2 --- /dev/null +++ b/doc/api/html/base__static__hmc_8hpp_source.html @@ -0,0 +1,230 @@ + + + + + +Stan: src/stan/mcmc/hmc/static/base_static_hmc.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
base_static_hmc.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MCMC__BASE__STATIC__HMC__BETA__
+
2 #define __STAN__MCMC__BASE__STATIC__HMC__BETA__
+
3 
+
4 #include <math.h>
+
5 #include <boost/math/special_functions/fpclassify.hpp>
+ + +
8 
+
9 namespace stan {
+
10 
+
11  namespace mcmc {
+
12 
+
13  // Hamiltonian Monte Carlo
+
14  // with static integration time
+
15 
+
16  template <class M, class P, template<class, class> class H,
+
17  template<class, class> class I, class BaseRNG>
+
18  class base_static_hmc: public base_hmc<M, P, H, I, BaseRNG> {
+
19 
+
20  public:
+
21 
+
22  base_static_hmc(M &m, BaseRNG& rng, std::ostream* o, std::ostream* e):
+
23  base_hmc<M, P, H, I, BaseRNG>(m, rng, o, e), T_(1)
+
24  { _update_L(); }
+
25 
+ +
27 
+
28  sample transition(sample& init_sample) {
+
29 
+
30  this->sample_stepsize();
+
31 
+
32  this->seed(init_sample.cont_params());
+
33 
+
34  this->_hamiltonian.sample_p(this->_z, this->_rand_int);
+
35  this->_hamiltonian.init(this->_z);
+
36 
+
37  ps_point z_init(this->_z);
+
38 
+
39  double H0 = this->_hamiltonian.H(this->_z);
+
40 
+
41  for (int i = 0; i < L_; ++i) {
+
42  this->_integrator.evolve(this->_z, this->_hamiltonian, this->_epsilon);
+
43  }
+
44 
+
45  double h = this->_hamiltonian.H(this->_z);
+
46  if (boost::math::isnan(h)) h = std::numeric_limits<double>::infinity();
+
47 
+
48  double acceptProb = std::exp(H0 - h);
+
49 
+
50  if (acceptProb < 1 && this->_rand_uniform() > acceptProb) {
+
51  this->_z.ps_point::operator=(z_init);
+
52  }
+
53 
+
54  acceptProb = acceptProb > 1 ? 1 : acceptProb;
+
55 
+
56  return sample(this->_z.q, - this->_hamiltonian.V(this->_z), acceptProb);
+
57 
+
58  }
+
59 
+
60  void write_sampler_param_names(std::ostream& o) {
+
61  o << "stepsize__,int_time__,";
+
62  }
+
63 
+
64  void write_sampler_params(std::ostream& o) {
+
65  o << this->_epsilon << "," << this->T_ << ",";
+
66  }
+
67 
+
68  void get_sampler_param_names(std::vector<std::string>& names) {
+
69  names.push_back("stepsize__");
+
70  names.push_back("int_time__");
+
71  }
+
72 
+
73  void get_sampler_params(std::vector<double>& values) {
+
74  values.push_back(this->_epsilon);
+
75  values.push_back(this->T_);
+
76  }
+
77 
+
78  void set_nominal_stepsize_and_T(const double e, const double t) {
+
79  if(e > 0 && t > 0) {
+
80  this->_nom_epsilon = e; T_ = t; _update_L();
+
81  }
+
82  }
+
83 
+
84  void set_nominal_stepsize_and_L(const double e, const int l) {
+
85  if(e > 0 && l > 0) {
+
86  this->_nom_epsilon = e; L_ = l; T_ = this->_nom_epsilon * L_;
+
87  }
+
88  }
+
89 
+
90  void set_T(const double t) {
+
91  if(t > 0) {
+
92  T_ = t; _update_L();
+
93  }
+
94 
+
95  }
+
96 
+
97  void set_nominal_stepsize(const double e) {
+
98  if(e > 0) {
+
99  this->_nom_epsilon = e; _update_L();
+
100  }
+
101  }
+
102 
+
103  double get_T() { return this->T_; }
+
104  int get_L() { return this->L_; }
+
105 
+
106  protected:
+
107 
+
108  double T_;
+
109  int L_;
+
110 
+
111  void _update_L() {
+
112  L_ = static_cast<int>(T_ / this->_nom_epsilon);
+
113  L_ = L_ < 1 ? 1 : L_;
+
114  }
+
115 
+
116  };
+
117 
+
118  } // mcmc
+
119 
+
120 } // stan
+
121 
+
122 
+
123 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/bc_s.png b/doc/api/html/bc_s.png new file mode 100644 index 0000000000000000000000000000000000000000..224b29aa9847d5a4b3902efd602b7ddf7d33e6c2 GIT binary patch literal 676 zcmV;V0$crwP)y__>=_9%My z{n931IS})GlGUF8K#6VIbs%684A^L3@%PlP2>_sk`UWPq@f;rU*V%rPy_ekbhXT&s z(GN{DxFv}*vZp`F>S!r||M`I*nOwwKX+BC~3P5N3-)Y{65c;ywYiAh-1*hZcToLHK ztpl1xomJ+Yb}K(cfbJr2=GNOnT!UFA7Vy~fBz8?J>XHsbZoDad^8PxfSa0GDgENZS zuLCEqzb*xWX2CG*b&5IiO#NzrW*;`VC9455M`o1NBh+(k8~`XCEEoC1Ybwf;vr4K3 zg|EB<07?SOqHp9DhLpS&bzgo70I+ghB_#)K7H%AMU3v}xuyQq9&Bm~++VYhF09a+U zl7>n7Jjm$K#b*FONz~fj;I->Bf;ule1prFN9FovcDGBkpg>)O*-}eLnC{6oZHZ$o% zXKW$;0_{8hxHQ>l;_*HATI(`7t#^{$(zLe}h*mqwOc*nRY9=?Sx4OOeVIfI|0V(V2 zBrW#G7Ss9wvzr@>H*`r>zE z+e8bOBgqIgldUJlG(YUDviMB`9+DH8n-s9SXRLyJHO1!=wY^79WYZMTa(wiZ!zP66 zA~!21vmF3H2{ngD;+`6j#~6j;$*f*G_2ZD1E;9(yaw7d-QnSCpK(cR1zU3qU0000< KMNUMnLSTYoA~SLT literal 0 HcmV?d00001 diff --git a/doc/api/html/bdwn.png b/doc/api/html/bdwn.png new file mode 100644 index 0000000000000000000000000000000000000000..940a0b950443a0bb1b216ac03c45b8a16c955452 GIT binary patch literal 147 zcmeAS@N?(olHy`uVBq!ia0vp^>_E)H!3HEvS)PKZC{Gv1kP61Pb5HX&C2wk~_T + + + + +Stan: src/stan/prob/distributions/univariate/discrete/bernoulli.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
bernoulli.hpp File Reference
+
+
+
#include <boost/random/bernoulli_distribution.hpp>
+#include <boost/random/variate_generator.hpp>
+#include <stan/agrad/partials_vari.hpp>
+#include <stan/math/error_handling.hpp>
+#include <stan/math/constants.hpp>
+#include <stan/math/functions/inv_logit.hpp>
+#include <stan/math/functions/log1m.hpp>
+#include <stan/math/functions/value_of.hpp>
+#include <stan/meta/traits.hpp>
+#include <stan/prob/traits.hpp>
+#include <stan/prob/constants.hpp>
+
+

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::prob
 Templated probability distributions.
 
+ + + + + + + + + + + + + + + + + + + + + + + + + +

+Functions

template<bool propto, typename T_n , typename T_prob >
return_type< T_prob >::type stan::prob::bernoulli_log (const T_n &n, const T_prob &theta)
 
template<typename T_y , typename T_prob >
return_type< T_prob >::type stan::prob::bernoulli_log (const T_y &n, const T_prob &theta)
 
template<bool propto, typename T_n , typename T_prob >
return_type< T_prob >::type stan::prob::bernoulli_logit_log (const T_n &n, const T_prob &theta)
 
template<typename T_n , typename T_prob >
return_type< T_prob >::type stan::prob::bernoulli_logit_log (const T_n &n, const T_prob &theta)
 
template<typename T_n , typename T_prob >
return_type< T_prob >::type stan::prob::bernoulli_cdf (const T_n &n, const T_prob &theta)
 
template<typename T_n , typename T_prob >
return_type< T_prob >::type stan::prob::bernoulli_cdf_log (const T_n &n, const T_prob &theta)
 
template<typename T_n , typename T_prob >
return_type< T_prob >::type stan::prob::bernoulli_ccdf_log (const T_n &n, const T_prob &theta)
 
template<class RNG >
int stan::prob::bernoulli_rng (const double theta, RNG &rng)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/bernoulli_8hpp_source.html b/doc/api/html/bernoulli_8hpp_source.html new file mode 100644 index 00000000000..788584402b5 --- /dev/null +++ b/doc/api/html/bernoulli_8hpp_source.html @@ -0,0 +1,539 @@ + + + + + +Stan: src/stan/prob/distributions/univariate/discrete/bernoulli.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
bernoulli.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__PROB__DISTRIBUTIONS__UNIVARIATE__DISCRETE__BERNOULLI_HPP__
+
2 #define __STAN__PROB__DISTRIBUTIONS__UNIVARIATE__DISCRETE__BERNOULLI_HPP__
+
3 
+
4 #include <boost/random/bernoulli_distribution.hpp>
+
5 #include <boost/random/variate_generator.hpp>
+
6 
+ + + + + + +
13 #include <stan/meta/traits.hpp>
+
14 #include <stan/prob/traits.hpp>
+
15 #include <stan/prob/constants.hpp>
+
16 
+
17 namespace stan {
+
18 
+
19  namespace prob {
+
20 
+
21  // Bernoulli(n|theta) [0 <= n <= 1; 0 <= theta <= 1]
+
22  // FIXME: documentation
+
23  template <bool propto, typename T_n, typename T_prob>
+
24  typename return_type<T_prob>::type
+
25  bernoulli_log(const T_n& n,
+
26  const T_prob& theta) {
+
27  static const char* function = "stan::prob::bernoulli_log(%1%)";
+
28 
+ + +
31  using stan::math::log1m;
+ + + +
35 
+
36  // check if any vectors are zero length
+
37  if (!(stan::length(n)
+
38  && stan::length(theta)))
+
39  return 0.0;
+
40 
+
41  // set up return value accumulator
+
42  double logp(0.0);
+
43 
+
44  // validate args (here done over var, which should be OK)
+
45  if (!check_bounded(function, n, 0, 1, "n", &logp))
+
46  return logp;
+
47  if (!check_finite(function, theta, "Probability parameter", &logp))
+
48  return logp;
+
49  if (!check_bounded(function, theta, 0.0, 1.0,
+
50  "Probability parameter", &logp))
+
51  return logp;
+
52  if (!(check_consistent_sizes(function,
+
53  n,theta,
+
54  "Random variable","Probability parameter",
+
55  &logp)))
+
56  return logp;
+
57 
+
58  // check if no variables are involved and prop-to
+ +
60  return 0.0;
+
61 
+
62  // set up template expressions wrapping scalars into vector views
+
63  VectorView<const T_n> n_vec(n);
+
64  VectorView<const T_prob> theta_vec(theta);
+
65  size_t N = max_size(n, theta);
+
66  agrad::OperandsAndPartials<T_prob> operands_and_partials(theta);
+
67 
+
68  if (length(theta) == 1) {
+
69  size_t sum = 0;
+
70  for (size_t n = 0; n < N; n++) {
+
71  sum += value_of(n_vec[n]);
+
72  }
+
73  const double theta_dbl = value_of(theta_vec[0]);
+
74  // avoid nans when sum == N or sum == 0
+
75  if (sum == N) {
+
76  logp += N * log(theta_dbl);
+ +
78  operands_and_partials.d_x1[0] += N / theta_dbl;
+
79  } else if (sum == 0) {
+
80  logp += N * log1m(theta_dbl);
+ +
82  operands_and_partials.d_x1[0] += N / (theta_dbl - 1);
+
83  } else {
+
84  const double log_theta = log(theta_dbl);
+
85  const double log1m_theta = log1m(theta_dbl);
+
86 
+
87  logp += sum * log_theta;
+
88  logp += (N - sum) * log1m_theta;
+
89 
+
90  // gradient
+ +
92  operands_and_partials.d_x1[0] += sum / theta_dbl;
+
93  operands_and_partials.d_x1[0] += (N - sum) / (theta_dbl - 1);
+
94  }
+
95  }
+
96  } else {
+
97  for (size_t n = 0; n < N; n++) {
+
98  // pull out values of arguments
+
99  const int n_int = value_of(n_vec[n]);
+
100  const double theta_dbl = value_of(theta_vec[n]);
+
101 
+
102  if (n_int == 1)
+
103  logp += log(theta_dbl);
+
104  else
+
105  logp += log1m(theta_dbl);
+
106 
+
107  // gradient
+ +
109  if (n_int == 1)
+
110  operands_and_partials.d_x1[n] += 1.0 / theta_dbl;
+
111  else
+
112  operands_and_partials.d_x1[n] += 1.0 / (theta_dbl - 1);
+
113  }
+
114  }
+
115  }
+
116  return operands_and_partials.to_var(logp);
+
117  }
+
118 
+
119  template <typename T_y, typename T_prob>
+
120  inline
+ +
122  bernoulli_log(const T_y& n,
+
123  const T_prob& theta) {
+
124  return bernoulli_log<false>(n,theta);
+
125  }
+
126 
+
127 
+
128  // Bernoulli(n|inv_logit(theta)) [0 <= n <= 1; -inf <= theta <= inf]
+
129  // FIXME: documentation
+
130  template <bool propto, typename T_n, typename T_prob>
+ +
132  bernoulli_logit_log(const T_n& n, const T_prob& theta) {
+
133  static const char* function = "stan::prob::bernoulli_logit_log(%1%)";
+
134 
+ + + +
138  using stan::math::value_of;
+ + +
141  using stan::math::log1p;
+
142  using stan::math::inv_logit;
+
143 
+
144  // check if any vectors are zero length
+
145  if (!(stan::length(n)
+
146  && stan::length(theta)))
+
147  return 0.0;
+
148 
+
149  // set up return value accumulator
+
150  double logp(0.0);
+
151 
+
152  // validate args (here done over var, which should be OK)
+
153  if (!check_bounded(function, n, 0, 1, "n", &logp))
+
154  return logp;
+
155  if (!check_not_nan(function, theta, "Logit transformed probability parameter",
+
156  &logp))
+
157  return logp;
+
158  if (!(check_consistent_sizes(function,
+
159  n,theta,
+
160  "Random variable","Probability parameter",
+
161  &logp)))
+
162  return logp;
+
163 
+
164  // check if no variables are involved and prop-to
+ +
166  return 0.0;
+
167 
+
168  // set up template expressions wrapping scalars into vector views
+
169  VectorView<const T_n> n_vec(n);
+
170  VectorView<const T_prob> theta_vec(theta);
+
171  size_t N = max_size(n, theta);
+
172  agrad::OperandsAndPartials<T_prob> operands_and_partials(theta);
+
173 
+
174  for (size_t n = 0; n < N; n++) {
+
175  // pull out values of arguments
+
176  const int n_int = value_of(n_vec[n]);
+
177  const double theta_dbl = value_of(theta_vec[n]);
+
178 
+
179  // reusable subexpression values
+
180  const int sign = 2*n_int-1;
+
181  const double ntheta = sign * theta_dbl;
+
182  const double exp_m_ntheta = exp(-ntheta);
+
183 
+
184  // Handle extreme values gracefully using Taylor approximations.
+
185  const static double cutoff = 20.0;
+
186  if (ntheta > cutoff)
+
187  logp -= exp_m_ntheta;
+
188  else if (ntheta < -cutoff)
+
189  logp += ntheta;
+
190  else
+
191  logp -= log1p(exp_m_ntheta);
+
192 
+
193  // gradients
+ +
195  const static double cutoff = 20.0;
+
196  if (ntheta > cutoff)
+
197  operands_and_partials.d_x1[n] -= exp_m_ntheta;
+
198  else if (ntheta < -cutoff)
+
199  operands_and_partials.d_x1[n] += sign;
+
200  else
+
201  operands_and_partials.d_x1[n] += sign * exp_m_ntheta / (exp_m_ntheta + 1);
+
202  }
+
203  }
+
204  return operands_and_partials.to_var(logp);
+
205  }
+
206 
+
207  template <typename T_n,
+
208  typename T_prob>
+
209  inline
+ +
211  bernoulli_logit_log(const T_n& n,
+
212  const T_prob& theta) {
+
213  return bernoulli_logit_log<false>(n,theta);
+
214  }
+
215 
+
216  // Bernoulli CDF
+
217  template <typename T_n, typename T_prob>
+ +
219  bernoulli_cdf(const T_n& n, const T_prob& theta) {
+
220  static const char* function = "stan::prob::bernoulli_cdf(%1%)";
+
221 
+ + + + +
226 
+
227  // Ensure non-zero argument lenghts
+
228  if (!(stan::length(n) && stan::length(theta)))
+
229  return 1.0;
+
230 
+
231  double P(1.0);
+
232 
+
233  // Validate arguments
+
234  if (!check_finite(function, theta, "Probability parameter", &P))
+
235  return P;
+
236  if (!check_bounded(function, theta, 0.0, 1.0,
+
237  "Probability parameter", &P))
+
238  return P;
+
239  if (!(check_consistent_sizes(function,
+
240  n, theta,
+
241  "Random variable","Probability parameter",
+
242  &P)))
+
243  return P;
+
244 
+
245  // set up template expressions wrapping scalars into vector views
+
246  VectorView<const T_n> n_vec(n);
+
247  VectorView<const T_prob> theta_vec(theta);
+
248  size_t size = max_size(n, theta);
+
249 
+
250  // Compute vectorized CDF and gradient
+
251  using stan::math::value_of;
+
252  agrad::OperandsAndPartials<T_prob> operands_and_partials(theta);
+
253 
+
254  // Explicit return for extreme values
+
255  // The gradients are technically ill-defined, but treated as zero
+
256  for (size_t i = 0; i < stan::length(n); i++) {
+
257  if (value_of(n_vec[i]) < 0)
+
258  return operands_and_partials.to_var(0.0);
+
259  }
+
260 
+
261  for (size_t i = 0; i < size; i++) {
+
262 
+
263  // Explicit results for extreme values
+
264  // The gradients are technically ill-defined, but treated as zero
+
265  if (value_of(n_vec[i]) >= 1) continue;
+
266  else {
+
267  const double Pi = 1 - value_of(theta_vec[i]);
+
268 
+
269  P *= Pi;
+
270 
+ +
272  operands_and_partials.d_x1[i] += - 1 / Pi;
+
273  }
+
274  }
+
275 
+ +
277  for(size_t i = 0; i < stan::length(theta); ++i) operands_and_partials.d_x1[i] *= P;
+
278  }
+
279  return operands_and_partials.to_var(P);
+
280  }
+
281 
+
282  template <typename T_n, typename T_prob>
+ +
284  bernoulli_cdf_log(const T_n& n, const T_prob& theta) {
+
285  static const char* function = "stan::prob::bernoulli_cdf_log(%1%)";
+
286 
+ + + + +
291 
+
292  // Ensure non-zero argument lenghts
+
293  if (!(stan::length(n) && stan::length(theta)))
+
294  return 0.0;
+
295 
+
296  double P(0.0);
+
297 
+
298  // Validate arguments
+
299  if (!check_finite(function, theta, "Probability parameter", &P))
+
300  return P;
+
301  if (!check_bounded(function, theta, 0.0, 1.0,
+
302  "Probability parameter", &P))
+
303  return P;
+
304  if (!(check_consistent_sizes(function,
+
305  n, theta,
+
306  "Random variable","Probability parameter",
+
307  &P)))
+
308  return P;
+
309 
+
310  // set up template expressions wrapping scalars into vector views
+
311  VectorView<const T_n> n_vec(n);
+
312  VectorView<const T_prob> theta_vec(theta);
+
313  size_t size = max_size(n, theta);
+
314 
+
315  // Compute vectorized cdf_log and gradient
+
316  using stan::math::value_of;
+
317  agrad::OperandsAndPartials<T_prob> operands_and_partials(theta);
+
318 
+
319  // Explicit return for extreme values
+
320  // The gradients are technically ill-defined, but treated as zero
+
321  for (size_t i = 0; i < stan::length(n); i++) {
+
322  if (value_of(n_vec[i]) < 0)
+
323  return operands_and_partials.to_var(stan::math::negative_infinity());
+
324  }
+
325 
+
326  for (size_t i = 0; i < size; i++) {
+
327 
+
328  // Explicit results for extreme values
+
329  // The gradients are technically ill-defined, but treated as zero
+
330  if (value_of(n_vec[i]) >= 1) continue;
+
331  else {
+
332  const double Pi = 1 - value_of(theta_vec[i]);
+
333 
+
334  P += log(Pi);
+
335 
+ +
337  operands_and_partials.d_x1[i] -= 1 / Pi;
+
338  }
+
339  }
+
340 
+
341  return operands_and_partials.to_var(P);
+
342  }
+
343 
+
344  template <typename T_n, typename T_prob>
+ +
346  bernoulli_ccdf_log(const T_n& n, const T_prob& theta) {
+
347  static const char* function = "stan::prob::bernoulli_ccdf_log(%1%)";
+
348 
+ + + + +
353 
+
354  // Ensure non-zero argument lenghts
+
355  if (!(stan::length(n) && stan::length(theta)))
+
356  return 0.0;
+
357 
+
358  double P(0.0);
+
359 
+
360  // Validate arguments
+
361  if (!check_finite(function, theta, "Probability parameter", &P))
+
362  return P;
+
363  if (!check_bounded(function, theta, 0.0, 1.0,
+
364  "Probability parameter", &P))
+
365  return P;
+
366  if (!(check_consistent_sizes(function,
+
367  n, theta,
+
368  "Random variable","Probability parameter",
+
369  &P)))
+
370  return P;
+
371 
+
372  // set up template expressions wrapping scalars into vector views
+
373  VectorView<const T_n> n_vec(n);
+
374  VectorView<const T_prob> theta_vec(theta);
+
375  size_t size = max_size(n, theta);
+
376 
+
377  // Compute vectorized cdf_log and gradient
+
378  using stan::math::value_of;
+
379  agrad::OperandsAndPartials<T_prob> operands_and_partials(theta);
+
380 
+
381  // Explicit return for extreme values
+
382  // The gradients are technically ill-defined, but treated as zero
+
383  for (size_t i = 0; i < stan::length(n); i++) {
+
384  if (value_of(n_vec[i]) < 0)
+
385  return operands_and_partials.to_var(0.0);
+
386  }
+
387 
+
388  for (size_t i = 0; i < size; i++) {
+
389 
+
390  // Explicit results for extreme values
+
391  // The gradients are technically ill-defined, but treated as zero
+
392  if (value_of(n_vec[i]) >= 1)
+
393  return operands_and_partials.to_var(stan::math::negative_infinity());
+
394  else {
+
395  const double Pi = value_of(theta_vec[i]);
+
396 
+
397  P += log(Pi);
+
398 
+ +
400  operands_and_partials.d_x1[i] += 1 / Pi;
+
401  }
+
402  }
+
403 
+
404  return operands_and_partials.to_var(P);
+
405  }
+
406 
+
407 
+
408  template <class RNG>
+
409  inline int
+
410  bernoulli_rng(const double theta,
+
411  RNG& rng) {
+
412  using boost::variate_generator;
+
413  using boost::bernoulli_distribution;
+
414 
+
415  static const char* function = "stan::prob::bernoulli_rng(%1%)";
+
416 
+ + +
419 
+
420  if (!check_finite(function, theta, "Probability parameter"))
+
421  return 0;
+
422  if (!check_bounded(function, theta, 0.0, 1.0,
+
423  "Probability parameter"))
+
424  return 0;
+
425 
+
426  variate_generator<RNG&, bernoulli_distribution<> >
+
427  bernoulli_rng(rng, bernoulli_distribution<>(theta));
+
428  return bernoulli_rng();
+
429  }
+
430  }
+
431 }
+
432 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/beta_8hpp.html b/doc/api/html/beta_8hpp.html new file mode 100644 index 00000000000..6ae55d1361f --- /dev/null +++ b/doc/api/html/beta_8hpp.html @@ -0,0 +1,162 @@ + + + + + +Stan: src/stan/prob/distributions/univariate/continuous/beta.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
beta.hpp File Reference
+
+
+
#include <boost/math/special_functions/gamma.hpp>
+#include <boost/random/gamma_distribution.hpp>
+#include <boost/random/variate_generator.hpp>
+#include <stan/agrad/partials_vari.hpp>
+#include <stan/math/error_handling.hpp>
+#include <stan/math/functions/log1m.hpp>
+#include <stan/math/functions/multiply_log.hpp>
+#include <stan/math/functions/value_of.hpp>
+#include <stan/meta/traits.hpp>
+#include <stan/prob/constants.hpp>
+#include <stan/prob/traits.hpp>
+#include <stan/prob/internal_math.hpp>
+
+

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::prob
 Templated probability distributions.
 
+ + + + + + + + + + + + + + + + + + + + + +

+Functions

template<bool propto, typename T_y , typename T_scale_succ , typename T_scale_fail >
return_type< T_y, T_scale_succ,
+T_scale_fail >::type 
stan::prob::beta_log (const T_y &y, const T_scale_succ &alpha, const T_scale_fail &beta)
 The log of the beta density for the specified scalar(s) given the specified sample size(s).
 
template<typename T_y , typename T_scale_succ , typename T_scale_fail >
return_type< T_y, T_scale_succ,
+T_scale_fail >::type 
stan::prob::beta_log (const T_y &y, const T_scale_succ &alpha, const T_scale_fail &beta)
 
template<typename T_y , typename T_scale_succ , typename T_scale_fail >
return_type< T_y, T_scale_succ,
+T_scale_fail >::type 
stan::prob::beta_cdf (const T_y &y, const T_scale_succ &alpha, const T_scale_fail &beta)
 Calculates the beta cumulative distribution function for the given variate and scale variables.
 
template<typename T_y , typename T_scale_succ , typename T_scale_fail >
return_type< T_y, T_scale_succ,
+T_scale_fail >::type 
stan::prob::beta_cdf_log (const T_y &y, const T_scale_succ &alpha, const T_scale_fail &beta)
 
template<typename T_y , typename T_scale_succ , typename T_scale_fail >
return_type< T_y, T_scale_succ,
+T_scale_fail >::type 
stan::prob::beta_ccdf_log (const T_y &y, const T_scale_succ &alpha, const T_scale_fail &beta)
 
template<class RNG >
double stan::prob::beta_rng (const double alpha, const double beta, RNG &rng)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/beta_8hpp_source.html b/doc/api/html/beta_8hpp_source.html new file mode 100644 index 00000000000..ab3a5150cb3 --- /dev/null +++ b/doc/api/html/beta_8hpp_source.html @@ -0,0 +1,743 @@ + + + + + +Stan: src/stan/prob/distributions/univariate/continuous/beta.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
beta.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__PROB__DISTRIBUTIONS__UNIVARIATE__CONTINUOUS__BETA_HPP__
+
2 #define __STAN__PROB__DISTRIBUTIONS__UNIVARIATE__CONTINUOUS__BETA_HPP__
+
3 
+
4 #include <boost/math/special_functions/gamma.hpp>
+
5 #include <boost/random/gamma_distribution.hpp>
+
6 #include <boost/random/variate_generator.hpp>
+
7 
+ + + + + +
13 #include <stan/meta/traits.hpp>
+
14 #include <stan/prob/constants.hpp>
+
15 #include <stan/prob/traits.hpp>
+ +
17 
+
18 namespace stan {
+
19 
+
20  namespace prob {
+
21 
+
43  template <bool propto,
+
44  typename T_y, typename T_scale_succ, typename T_scale_fail>
+
45  typename return_type<T_y,T_scale_succ,T_scale_fail>::type
+
46  beta_log(const T_y& y,
+
47  const T_scale_succ& alpha, const T_scale_fail& beta) {
+
48  static const char* function = "stan::prob::beta_log(%1%)";
+
49 
+ +
51  using boost::math::lgamma;
+ +
53  using stan::is_vector;
+ + + + + +
59  using stan::math::log1m;
+ + + + +
64 
+
65  // check if any vectors are zero length
+
66  if (!(stan::length(y)
+
67  && stan::length(alpha)
+
68  && stan::length(beta)))
+
69  return 0.0;
+
70 
+
71  // set up return value accumulator
+
72  double logp(0.0);
+
73 
+
74  // validate args (here done over var, which should be OK)
+
75  if (!check_finite(function, alpha, "First shape parameter", &logp))
+
76  return logp;
+
77  if (!check_positive(function, alpha, "First shape parameter", &logp))
+
78  return logp;
+
79  if (!check_finite(function, beta, "Second shape parameter", &logp))
+
80  return logp;
+
81  if (!check_positive(function, beta, "Second shape parameter", &logp))
+
82  return logp;
+
83  if (!check_not_nan(function, y, "Random variable", &logp))
+
84  return logp;
+
85  if (!(check_consistent_sizes(function,
+
86  y,alpha,beta,
+
87  "Random variable","First shape parameter",
+
88  "Second shape parameter",
+
89  &logp)))
+
90  return logp;
+
91  if (!check_nonnegative(function, y, "Random variable", &logp))
+
92  return logp;
+
93  if (!check_less_or_equal(function, y, 1,"Random variable", &logp))
+
94  return logp;
+
95 
+
96  // check if no variables are involved and prop-to
+ +
98  return 0.0;
+
99 
+
100  VectorView<const T_y> y_vec(y);
+
101  VectorView<const T_scale_succ> alpha_vec(alpha);
+
102  VectorView<const T_scale_fail> beta_vec(beta);
+
103  size_t N = max_size(y, alpha, beta);
+
104 
+
105  for (size_t n = 0; n < N; n++) {
+
106  const double y_dbl = value_of(y_vec[n]);
+
107  if (y_dbl < 0 || y_dbl > 1)
+
108  return LOG_ZERO;
+
109  }
+
110 
+
111  // set up template expressions wrapping scalars into vector views
+ +
113  operands_and_partials(y, alpha, beta);
+
114 
+ +
116  is_vector<T_y>::value> log_y(length(y));
+ +
118  is_vector<T_y>::value> log1m_y(length(y));
+
119 
+
120  for (size_t n = 0; n < length(y); n++) {
+ +
122  log_y[n] = log(value_of(y_vec[n]));
+ +
124  log1m_y[n] = log1m(value_of(y_vec[n]));
+
125  }
+
126 
+ +
128  is_vector<T_scale_succ>::value> lgamma_alpha(length(alpha));
+ +
130  is_vector<T_scale_succ>::value> digamma_alpha(length(alpha));
+
131  for (size_t n = 0; n < length(alpha); n++) {
+ +
133  lgamma_alpha[n] = lgamma(value_of(alpha_vec[n]));
+ +
135  digamma_alpha[n] = digamma(value_of(alpha_vec[n]));
+
136  }
+
137 
+ +
139  is_vector<T_scale_fail>::value> lgamma_beta(length(beta));
+ +
141  is_vector<T_scale_fail>::value> digamma_beta(length(beta));
+
142 
+
143  for (size_t n = 0; n < length(beta); n++) {
+ +
145  lgamma_beta[n] = lgamma(value_of(beta_vec[n]));
+ +
147  digamma_beta[n] = digamma(value_of(beta_vec[n]));
+
148  }
+
149 
+ + + +
153  lgamma_alpha_beta(max_size(alpha,beta));
+
154 
+ + + + +
159  digamma_alpha_beta(max_size(alpha,beta));
+
160 
+
161  for (size_t n = 0; n < max_size(alpha,beta); n++) {
+
162  const double alpha_beta = value_of(alpha_vec[n])
+
163  + value_of(beta_vec[n]);
+ +
165  lgamma_alpha_beta[n] = lgamma(alpha_beta);
+ + +
168  digamma_alpha_beta[n] = digamma(alpha_beta);
+
169  }
+
170 
+
171  for (size_t n = 0; n < N; n++) {
+
172  // pull out values of arguments
+
173  const double y_dbl = value_of(y_vec[n]);
+
174  const double alpha_dbl = value_of(alpha_vec[n]);
+
175  const double beta_dbl = value_of(beta_vec[n]);
+
176 
+
177  // log probability
+ +
179  logp += lgamma_alpha_beta[n];
+ +
181  logp -= lgamma_alpha[n];
+ +
183  logp -= lgamma_beta[n];
+ +
185  logp += (alpha_dbl-1.0) * log_y[n];
+ +
187  logp += (beta_dbl-1.0) * log1m_y[n];
+
188 
+
189  // gradients
+ +
191  operands_and_partials.d_x1[n] += (alpha_dbl-1)/y_dbl
+
192  + (beta_dbl-1)/(y_dbl-1);
+ +
194  operands_and_partials.d_x2[n]
+
195  += log_y[n] + digamma_alpha_beta[n] - digamma_alpha[n];
+ +
197  operands_and_partials.d_x3[n]
+
198  += log1m_y[n] + digamma_alpha_beta[n] - digamma_beta[n];
+
199  }
+
200  return operands_and_partials.to_var(logp);
+
201  }
+
202 
+
203  template <typename T_y, typename T_scale_succ, typename T_scale_fail>
+ +
205  beta_log(const T_y& y, const T_scale_succ& alpha,
+
206  const T_scale_fail& beta) {
+
207  return beta_log<false>(y,alpha,beta);
+
208  }
+
209 
+
222  template <typename T_y, typename T_scale_succ, typename T_scale_fail>
+ +
224  beta_cdf(const T_y& y, const T_scale_succ& alpha,
+
225  const T_scale_fail& beta) {
+
226 
+
227  // Size checks
+
228  if ( !( stan::length(y) && stan::length(alpha)
+
229  && stan::length(beta) ) )
+
230  return 1.0;
+
231 
+
232  // Error checks
+
233  static const char* function = "stan::prob::beta_cdf(%1%)";
+
234 
+ + + +
238  using boost::math::tools::promote_args;
+ +
240  using stan::math::value_of;
+ + +
243 
+
244  double P(1.0);
+
245 
+
246  if (!check_finite(function, alpha, "First shape parameter", &P))
+
247  return P;
+
248  if (!check_positive(function, alpha, "First shape parameter", &P))
+
249  return P;
+
250  if (!check_finite(function, beta, "Second shape parameter", &P))
+
251  return P;
+
252  if (!check_positive(function, beta, "Second shape parameter", &P))
+
253  return P;
+
254  if (!check_not_nan(function, y, "Random variable", &P))
+
255  return P;
+
256  if (!(check_consistent_sizes(function, y, alpha, beta,
+
257  "Random variable", "Shape parameter",
+
258  "Scale Parameter", &P)))
+
259  return P;
+
260  if (!check_nonnegative(function, y, "Random variable", &P))
+
261  return P;
+
262  if (!check_less_or_equal(function, y, 1,"Random variable", &P))
+
263  return P;
+
264 
+
265  // Wrap arguments in vectors
+
266  VectorView<const T_y> y_vec(y);
+
267  VectorView<const T_scale_succ> alpha_vec(alpha);
+
268  VectorView<const T_scale_fail> beta_vec(beta);
+
269  size_t N = max_size(y, alpha, beta);
+
270 
+ +
272  operands_and_partials(y, alpha, beta);
+
273 
+
274  // Explicit return for extreme values
+
275  // The gradients are technically ill-defined, but treated as zero
+
276  for (size_t i = 0; i < stan::length(y); i++) {
+
277  if (value_of(y_vec[i]) <= 0)
+
278  return operands_and_partials.to_var(0.0);
+
279  }
+
280 
+
281  // Compute CDF and its gradients
+
282  using boost::math::ibeta;
+
283  using boost::math::ibeta_derivative;
+
284  using boost::math::digamma;
+
285 
+
286  // Cache a few expensive function calls if alpha or beta is a parameter
+ + + +
290  digamma_alpha_vec(max_size(alpha, beta));
+
291 
+ + + +
295  digamma_beta_vec(max_size(alpha, beta));
+
296 
+ + + +
300  digamma_sum_vec(max_size(alpha, beta));
+
301 
+ + + +
305  betafunc_vec(max_size(alpha, beta));
+
306 
+ + +
309 
+
310  for (size_t i = 0; i < N; i++) {
+
311 
+
312  const double alpha_dbl = value_of(alpha_vec[i]);
+
313  const double beta_dbl = value_of(beta_vec[i]);
+
314 
+
315  digamma_alpha_vec[i] = digamma(alpha_dbl);
+
316  digamma_beta_vec[i] = digamma(beta_dbl);
+
317  digamma_sum_vec[i] = digamma(alpha_dbl + beta_dbl);
+
318  betafunc_vec[i] = boost::math::beta(alpha_dbl, beta_dbl);
+
319 
+
320  }
+
321 
+
322  }
+
323 
+
324  // Compute vectorized CDF and gradient
+
325  for (size_t n = 0; n < N; n++) {
+
326 
+
327  // Explicit results for extreme values
+
328  // The gradients are technically ill-defined, but treated as zero
+
329  if (value_of(y_vec[n]) >= 1.0) continue;
+
330 
+
331  // Pull out values
+
332  const double y_dbl = value_of(y_vec[n]);
+
333  const double alpha_dbl = value_of(alpha_vec[n]);
+
334  const double beta_dbl = value_of(beta_vec[n]);
+
335 
+
336  // Compute
+
337  const double Pn = ibeta(alpha_dbl, beta_dbl, y_dbl);
+
338 
+
339  P *= Pn;
+
340 
+ +
342  operands_and_partials.d_x1[n] += ibeta_derivative(alpha_dbl, beta_dbl,
+
343  y_dbl) / Pn;
+
344 
+
345  double g1 = 0;
+
346  double g2 = 0;
+
347 
+ + +
350  stan::math::gradRegIncBeta(g1, g2, alpha_dbl, beta_dbl, y_dbl,
+
351  digamma_alpha_vec[n],
+
352  digamma_beta_vec[n], digamma_sum_vec[n],
+
353  betafunc_vec[n]);
+
354  }
+
355 
+ +
357  operands_and_partials.d_x2[n] += g1 / Pn;
+ +
359  operands_and_partials.d_x3[n] += g2 / Pn;
+
360  }
+
361 
+ +
363  for(size_t n = 0; n < stan::length(y); ++n)
+
364  operands_and_partials.d_x1[n] *= P;
+
365  }
+ +
367  for(size_t n = 0; n < stan::length(alpha); ++n)
+
368  operands_and_partials.d_x2[n] *= P;
+
369  }
+ +
371  for(size_t n = 0; n < stan::length(beta); ++n)
+
372  operands_and_partials.d_x3[n] *= P;
+
373  }
+
374 
+
375  return operands_and_partials.to_var(P);
+
376  }
+
377 
+
378  template <typename T_y, typename T_scale_succ, typename T_scale_fail>
+ +
380  beta_cdf_log(const T_y& y, const T_scale_succ& alpha,
+
381  const T_scale_fail& beta) {
+
382 
+
383  // Size checks
+
384  if ( !( stan::length(y) && stan::length(alpha)
+
385  && stan::length(beta) ) )
+
386  return 0.0;
+
387 
+
388  // Error checks
+
389  static const char* function = "stan::prob::beta_cdf(%1%)";
+
390 
+ + + + + +
396  using boost::math::tools::promote_args;
+ +
398  using stan::math::value_of;
+
399 
+
400  double cdf_log(0.0);
+
401 
+
402  if (!check_finite(function, alpha, "First shape parameter", &cdf_log))
+
403  return cdf_log;
+
404  if (!check_positive(function, alpha, "First shape parameter", &cdf_log))
+
405  return cdf_log;
+
406  if (!check_finite(function, beta, "Second shape parameter", &cdf_log))
+
407  return cdf_log;
+
408  if (!check_positive(function, beta, "Second shape parameter", &cdf_log))
+
409  return cdf_log;
+
410  if (!check_not_nan(function, y, "Random variable", &cdf_log))
+
411  return cdf_log;
+
412  if (!check_nonnegative(function, y, "Random variable", &cdf_log))
+
413  return cdf_log;
+
414  if (!check_less_or_equal(function, y, 1,"Random variable", &cdf_log))
+
415  return cdf_log;
+
416  if (!(check_consistent_sizes(function, y, alpha, beta,
+
417  "Random variable", "Shape parameter",
+
418  "Scale Parameter", &cdf_log)))
+
419  return cdf_log;
+
420 
+
421  // Wrap arguments in vectors
+
422  VectorView<const T_y> y_vec(y);
+
423  VectorView<const T_scale_succ> alpha_vec(alpha);
+
424  VectorView<const T_scale_fail> beta_vec(beta);
+
425  size_t N = max_size(y, alpha, beta);
+
426 
+ +
428  operands_and_partials(y, alpha, beta);
+
429 
+
430  // Compute CDF and its gradients
+
431  using boost::math::ibeta;
+
432  using boost::math::ibeta_derivative;
+
433  using boost::math::digamma;
+
434 
+
435  // Cache a few expensive function calls if alpha or beta is a parameter
+ + + +
439  digamma_alpha_vec(max_size(alpha, beta));
+
440 
+ + + +
444  digamma_beta_vec(max_size(alpha, beta));
+
445 
+ + + +
449  digamma_sum_vec(max_size(alpha, beta));
+
450 
+ + + +
454  betafunc_vec(max_size(alpha, beta));
+
455 
+ + +
458 
+
459  for (size_t i = 0; i < N; i++) {
+
460 
+
461  const double alpha_dbl = value_of(alpha_vec[i]);
+
462  const double beta_dbl = value_of(beta_vec[i]);
+
463 
+
464  digamma_alpha_vec[i] = digamma(alpha_dbl);
+
465  digamma_beta_vec[i] = digamma(beta_dbl);
+
466  digamma_sum_vec[i] = digamma(alpha_dbl + beta_dbl);
+
467  betafunc_vec[i] = boost::math::beta(alpha_dbl, beta_dbl);
+
468  }
+
469  }
+
470 
+
471  // Compute vectorized CDFLog and gradient
+
472  for (size_t n = 0; n < N; n++) {
+
473 
+
474  // Pull out values
+
475  const double y_dbl = value_of(y_vec[n]);
+
476  const double alpha_dbl = value_of(alpha_vec[n]);
+
477  const double beta_dbl = value_of(beta_vec[n]);
+
478 
+
479  // Compute
+
480  const double Pn = ibeta(alpha_dbl, beta_dbl, y_dbl);
+
481 
+
482  cdf_log += log(Pn);
+
483 
+ +
485  operands_and_partials.d_x1[n] +=
+
486  ibeta_derivative(alpha_dbl, beta_dbl, y_dbl) / Pn;
+
487 
+
488  double g1 = 0;
+
489  double g2 = 0;
+
490 
+ + +
493  stan::math::gradRegIncBeta(g1, g2, alpha_dbl, beta_dbl, y_dbl,
+
494  digamma_alpha_vec[n],
+
495  digamma_beta_vec[n], digamma_sum_vec[n],
+
496  betafunc_vec[n]);
+
497  }
+ +
499  operands_and_partials.d_x2[n] += g1 / Pn;
+ +
501  operands_and_partials.d_x3[n] += g2 / Pn;
+
502  }
+
503 
+
504  return operands_and_partials.to_var(cdf_log);
+
505  }
+
506 
+
507  template <typename T_y, typename T_scale_succ, typename T_scale_fail>
+ +
509  beta_ccdf_log(const T_y& y, const T_scale_succ& alpha,
+
510  const T_scale_fail& beta) {
+
511 
+
512  // Size checks
+
513  if ( !( stan::length(y) && stan::length(alpha)
+
514  && stan::length(beta) ) )
+
515  return 0.0;
+
516 
+
517  // Error checks
+
518  static const char* function = "stan::prob::beta_cdf(%1%)";
+
519 
+ + + + + +
525  using boost::math::tools::promote_args;
+ +
527  using stan::math::value_of;
+
528 
+
529  double ccdf_log(0.0);
+
530 
+
531  if (!check_finite(function, alpha, "First shape parameter", &ccdf_log))
+
532  return ccdf_log;
+
533  if (!check_positive(function, alpha, "First shape parameter", &ccdf_log))
+
534  return ccdf_log;
+
535  if (!check_finite(function, beta, "Second shape parameter", &ccdf_log))
+
536  return ccdf_log;
+
537  if (!check_positive(function, beta, "Second shape parameter", &ccdf_log))
+
538  return ccdf_log;
+
539  if (!check_not_nan(function, y, "Random variable", &ccdf_log))
+
540  return ccdf_log;
+
541  if (!check_nonnegative(function, y, "Random variable", &ccdf_log))
+
542  return ccdf_log;
+
543  if (!check_less_or_equal(function, y, 1,"Random variable", &ccdf_log))
+
544  return ccdf_log;
+
545  if (!(check_consistent_sizes(function, y, alpha, beta,
+
546  "Random variable", "Shape parameter",
+
547  "Scale Parameter", &ccdf_log)))
+
548  return ccdf_log;
+
549 
+
550  // Wrap arguments in vectors
+
551  VectorView<const T_y> y_vec(y);
+
552  VectorView<const T_scale_succ> alpha_vec(alpha);
+
553  VectorView<const T_scale_fail> beta_vec(beta);
+
554  size_t N = max_size(y, alpha, beta);
+
555 
+ +
557  operands_and_partials(y, alpha, beta);
+
558 
+
559  // Compute CDF and its gradients
+
560  using boost::math::ibeta;
+
561  using boost::math::ibeta_derivative;
+
562  using boost::math::digamma;
+
563 
+
564  // Cache a few expensive function calls if alpha or beta is a parameter
+ + + +
568  digamma_alpha_vec(max_size(alpha, beta));
+ + + +
572  digamma_beta_vec(max_size(alpha, beta));
+ + + +
576  digamma_sum_vec(max_size(alpha, beta));
+ + + +
580  betafunc_vec(max_size(alpha, beta));
+
581 
+ + +
584 
+
585  for (size_t i = 0; i < N; i++) {
+
586 
+
587  const double alpha_dbl = value_of(alpha_vec[i]);
+
588  const double beta_dbl = value_of(beta_vec[i]);
+
589 
+
590  digamma_alpha_vec[i] = digamma(alpha_dbl);
+
591  digamma_beta_vec[i] = digamma(beta_dbl);
+
592  digamma_sum_vec[i] = digamma(alpha_dbl + beta_dbl);
+
593  betafunc_vec[i] = boost::math::beta(alpha_dbl, beta_dbl);
+
594  }
+
595  }
+
596 
+
597  // Compute vectorized CDFLog and gradient
+
598  for (size_t n = 0; n < N; n++) {
+
599 
+
600  // Pull out values
+
601  const double y_dbl = value_of(y_vec[n]);
+
602  const double alpha_dbl = value_of(alpha_vec[n]);
+
603  const double beta_dbl = value_of(beta_vec[n]);
+
604 
+
605  // Compute
+
606  const double Pn = 1.0 - ibeta(alpha_dbl, beta_dbl, y_dbl);
+
607 
+
608  ccdf_log += log(Pn);
+
609 
+ +
611  operands_and_partials.d_x1[n] -=
+
612  ibeta_derivative(alpha_dbl, beta_dbl, y_dbl) / Pn;
+
613 
+
614  double g1 = 0;
+
615  double g2 = 0;
+
616 
+ + +
619  stan::math::gradRegIncBeta(g1, g2, alpha_dbl, beta_dbl, y_dbl,
+
620  digamma_alpha_vec[n],
+
621  digamma_beta_vec[n], digamma_sum_vec[n],
+
622  betafunc_vec[n]);
+
623  }
+ +
625  operands_and_partials.d_x2[n] -= g1 / Pn;
+ +
627  operands_and_partials.d_x3[n] -= g2 / Pn;
+
628  }
+
629 
+
630  return operands_and_partials.to_var(ccdf_log);
+
631  }
+
632 
+
633  template <class RNG>
+
634  inline double
+
635  beta_rng(const double alpha,
+
636  const double beta,
+
637  RNG& rng) {
+
638  using boost::variate_generator;
+
639  using boost::random::gamma_distribution;
+
640  // Error checks
+
641  static const char* function = "stan::prob::beta_rng(%1%)";
+
642 
+ + + + + +
648 
+
649  if (!check_finite(function, alpha, "First shape parameter"))
+
650  return 0;
+
651  if (!check_positive(function, alpha, "First shape parameter"))
+
652  return 0;
+
653  if (!check_finite(function, beta, "Second shape parameter"))
+
654  return 0;
+
655  if (!check_positive(function, beta, "Second shape parameter"))
+
656  return 0;
+
657 
+
658  variate_generator<RNG&, gamma_distribution<> >
+
659  rng_gamma_alpha(rng, gamma_distribution<>(alpha, 1.0));
+
660  variate_generator<RNG&, gamma_distribution<> >
+
661  rng_gamma_beta(rng, gamma_distribution<>(beta, 1.0));
+
662  double a = rng_gamma_alpha();
+
663  double b = rng_gamma_beta();
+
664  return a / (a + b);
+
665  }
+
666 
+
667  }
+
668 }
+
669 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/beta__binomial_8hpp.html b/doc/api/html/beta__binomial_8hpp.html new file mode 100644 index 00000000000..d8e2f98cf4c --- /dev/null +++ b/doc/api/html/beta__binomial_8hpp.html @@ -0,0 +1,160 @@ + + + + + +Stan: src/stan/prob/distributions/univariate/discrete/beta_binomial.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
beta_binomial.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::prob
 Templated probability distributions.
 
+ + + + + + + + + + + + + + + + + + + +

+Functions

template<bool propto, typename T_n , typename T_N , typename T_size1 , typename T_size2 >
return_type< T_size1, T_size2 >
+::type 
stan::prob::beta_binomial_log (const T_n &n, const T_N &N, const T_size1 &alpha, const T_size2 &beta)
 
template<typename T_n , typename T_N , typename T_size1 , typename T_size2 >
return_type< T_size1, T_size2 >
+::type 
stan::prob::beta_binomial_log (const T_n &n, const T_N &N, const T_size1 &alpha, const T_size2 &beta)
 
template<typename T_n , typename T_N , typename T_size1 , typename T_size2 >
return_type< T_size1, T_size2 >
+::type 
stan::prob::beta_binomial_cdf (const T_n &n, const T_N &N, const T_size1 &alpha, const T_size2 &beta)
 
template<typename T_n , typename T_N , typename T_size1 , typename T_size2 >
return_type< T_size1, T_size2 >
+::type 
stan::prob::beta_binomial_cdf_log (const T_n &n, const T_N &N, const T_size1 &alpha, const T_size2 &beta)
 
template<typename T_n , typename T_N , typename T_size1 , typename T_size2 >
return_type< T_size1, T_size2 >
+::type 
stan::prob::beta_binomial_ccdf_log (const T_n &n, const T_N &N, const T_size1 &alpha, const T_size2 &beta)
 
template<class RNG >
int stan::prob::beta_binomial_rng (const int N, const double alpha, const double beta, RNG &rng)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/beta__binomial_8hpp_source.html b/doc/api/html/beta__binomial_8hpp_source.html new file mode 100644 index 00000000000..0780f16298a --- /dev/null +++ b/doc/api/html/beta__binomial_8hpp_source.html @@ -0,0 +1,708 @@ + + + + + +Stan: src/stan/prob/distributions/univariate/discrete/beta_binomial.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
beta_binomial.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__PROB__DISTRIBUTIONS__UNIVARIATE__DISCRETE__BETA_BINOMIAL_HPP__
+
2 #define __STAN__PROB__DISTRIBUTIONS__UNIVARIATE__DISCRETE__BETA_BINOMIAL_HPP__
+
3 
+ + +
6 
+ + + + + +
12 #include <stan/meta/traits.hpp>
+
13 #include <stan/prob/traits.hpp>
+
14 #include <stan/prob/constants.hpp>
+ +
16 
+ +
18 
+
19 namespace stan {
+
20 
+
21  namespace prob {
+
22 
+
23  // BetaBinomial(n|alpha,beta) [alpha > 0; beta > 0; n >= 0]
+
24  template <bool propto,
+
25  typename T_n, typename T_N,
+
26  typename T_size1, typename T_size2>
+
27  typename return_type<T_size1,T_size2>::type
+
28  beta_binomial_log(const T_n& n,
+
29  const T_N& N,
+
30  const T_size1& alpha,
+
31  const T_size2& beta) {
+
32  static const char* function = "stan::prob::beta_binomial_log(%1%)";
+
33 
+ + + + + + +
40 
+
41  // check if any vectors are zero length
+
42  if (!(stan::length(n)
+
43  && stan::length(N)
+
44  && stan::length(alpha)
+
45  && stan::length(beta)))
+
46  return 0.0;
+
47 
+
48  double logp(0.0);
+
49  if (!check_nonnegative(function, N, "Population size parameter", &logp))
+
50  return logp;
+
51  if (!check_finite(function, alpha, "First prior sample size parameter", &logp))
+
52  return logp;
+
53  if (!check_positive(function, alpha, "First prior sample size parameter", &logp))
+
54  return logp;
+
55  if (!check_finite(function, beta, "Second prior sample size parameter", &logp))
+
56  return logp;
+
57  if (!check_positive(function, beta, "Second prior sample size parameter", &logp))
+
58  return logp;
+
59  if (!(check_consistent_sizes(function,
+
60  n,N,alpha,beta,
+
61  "Successes variable",
+
62  "Population size parameter",
+
63  "First prior sample size parameter",
+
64  "Second prior sample size parameter",
+
65  &logp)))
+
66  return logp;
+
67 
+
68  // check if no variables are involved and prop-to
+ +
70  return 0.0;
+
71 
+
72  VectorView<const T_n> n_vec(n);
+
73  VectorView<const T_N> N_vec(N);
+
74  VectorView<const T_size1> alpha_vec(alpha);
+
75  VectorView<const T_size2> beta_vec(beta);
+
76  size_t size = max_size(n, N, alpha, beta);
+
77 
+
78  for (size_t i = 0; i < size; i++) {
+
79  if (n_vec[i] < 0 || n_vec[i] > N_vec[i])
+
80  return LOG_ZERO;
+
81  }
+
82 
+
83  using stan::math::lbeta;
+ + +
86 
+ + +
89  normalizing_constant(max_size(N,n));
+
90  for (size_t i = 0; i < max_size(N,n); i++)
+ +
92  normalizing_constant[i]
+
93  = binomial_coefficient_log(N_vec[i],n_vec[i]);
+
94 
+ + + +
98  lbeta_numerator(size);
+
99  for (size_t i = 0; i < size; i++)
+ +
101  lbeta_numerator[i] = lbeta(n_vec[i] + value_of(alpha_vec[i]),
+
102  N_vec[i] - n_vec[i]
+
103  + value_of(beta_vec[i]));
+ + +
106  lbeta_denominator(max_size(alpha,beta));
+
107 for (size_t i = 0; i < max_size(alpha,beta); i++)
+ +
109  lbeta_denominator[i] = lbeta(value_of(alpha_vec[i]),
+
110  value_of(beta_vec[i]));
+
111 
+ + +
114  digamma_n_plus_alpha(max_size(n,alpha));
+
115  for (size_t i = 0; i < max_size(n,alpha); i++)
+ +
117  digamma_n_plus_alpha[i]
+
118  = digamma(n_vec[i] + value_of(alpha_vec[i]));
+
119 
+ + + + + +
125  digamma_N_plus_alpha_plus_beta(max_size(N,alpha,beta));
+
126  for (size_t i = 0; i < max_size(N,alpha,beta); i++)
+ + +
129  digamma_N_plus_alpha_plus_beta[i]
+
130  = digamma(N_vec[i] + value_of(alpha_vec[i]) + value_of(beta_vec[i]));
+
131 
+ + + + +
136  digamma_alpha_plus_beta(max_size(alpha,beta));
+
137  for (size_t i = 0; i < max_size(alpha,beta); i++)
+ + +
140  digamma_alpha_plus_beta[i]
+
141  = digamma(value_of(alpha_vec[i]) + value_of(beta_vec[i]));
+
142 
+ + +
145  digamma_alpha(length(alpha));
+
146  for (size_t i = 0; i < length(alpha); i++)
+ +
148  digamma_alpha[i] = digamma(value_of(alpha_vec[i]));
+
149 
+ + +
152  digamma_beta(length(beta));
+
153  for (size_t i = 0; i < length(beta); i++)
+ +
155  digamma_beta[i] = digamma(value_of(beta_vec[i]));
+
156 
+ +
158  operands_and_partials(n,N,alpha,beta);
+
159  for (size_t i = 0; i < size; i++) {
+ +
161  logp += normalizing_constant[i];
+ +
163  logp += lbeta_numerator[i]
+
164  - lbeta_denominator[i];
+
165 
+ +
167  operands_and_partials.d_x3[i]
+
168  += digamma_n_plus_alpha[i]
+
169  - digamma_N_plus_alpha_plus_beta[i]
+
170  + digamma_alpha_plus_beta[i]
+
171  - digamma_alpha[i];
+ +
173  operands_and_partials.d_x4[i]
+
174  += digamma(value_of(N_vec[i]-n_vec[i]+beta_vec[i]))
+
175  - digamma_N_plus_alpha_plus_beta[i]
+
176  + digamma_alpha_plus_beta[i]
+
177  - digamma_beta[i];
+
178  }
+
179  return operands_and_partials.to_var(logp);
+
180  }
+
181 
+
182  template <typename T_n,
+
183  typename T_N,
+
184  typename T_size1,
+
185  typename T_size2>
+ +
187  beta_binomial_log(const T_n& n, const T_N& N,
+
188  const T_size1& alpha, const T_size2& beta) {
+
189  return beta_binomial_log<false>(n,N,alpha,beta);
+
190  }
+
191 
+
192  // Beta-Binomial CDF
+
193  template <typename T_n, typename T_N,
+
194  typename T_size1, typename T_size2>
+ +
196  beta_binomial_cdf(const T_n& n, const T_N& N, const T_size1& alpha,
+
197  const T_size2& beta) {
+
198 
+
199  static const char* function = "stan::prob::beta_binomial_cdf(%1%)";
+
200 
+ + + +
204  using stan::math::value_of;
+ + +
207 
+
208  // Ensure non-zero argument lengths
+
209  if (!(stan::length(n) && stan::length(N) && stan::length(alpha)
+
210  && stan::length(beta)))
+
211  return 1.0;
+
212 
+
213  double P(1.0);
+
214 
+
215  // Validate arguments
+
216  if (!check_nonnegative(function, N, "Population size parameter", &P))
+
217  return P;
+
218 
+
219  if (!check_finite(function, alpha, "First prior sample size parameter", &P))
+
220  return P;
+
221 
+
222  if (!check_positive(function, alpha, "First prior sample size parameter", &P))
+
223  return P;
+
224 
+
225  if (!check_finite(function, beta, "Second prior sample size parameter", &P))
+
226  return P;
+
227 
+
228  if (!check_positive(function, beta, "Second prior sample size parameter", &P))
+
229  return P;
+
230 
+
231  if (!(check_consistent_sizes(function,
+
232  n, N, alpha, beta,
+
233  "Successes variable",
+
234  "Population size parameter",
+
235  "First prior sample size parameter",
+
236  "Second prior sample size parameter",
+
237  &P)))
+
238  return P;
+
239 
+
240  // Wrap arguments in vector views
+
241  VectorView<const T_n> n_vec(n);
+
242  VectorView<const T_N> N_vec(N);
+
243  VectorView<const T_size1> alpha_vec(alpha);
+
244  VectorView<const T_size2> beta_vec(beta);
+
245  size_t size = max_size(n, N, alpha, beta);
+
246 
+
247  // Compute vectorized CDF and gradient
+
248  using boost::math::lgamma;
+
249  using boost::math::digamma;
+
250 
+ +
252  operands_and_partials(alpha, beta);
+
253 
+
254  // Explicit return for extreme values
+
255  // The gradients are technically ill-defined, but treated as zero
+
256  for (size_t i = 0; i < stan::length(n); i++) {
+
257  if (value_of(n_vec[i]) <= 0)
+
258  return operands_and_partials.to_var(0.0);
+
259  }
+
260 
+
261  for (size_t i = 0; i < size; i++) {
+
262  // Explicit results for extreme values
+
263  // The gradients are technically ill-defined, but treated as zero
+
264  if (value_of(n_vec[i]) >= value_of(N_vec[i])) {
+
265  continue;
+
266  }
+
267 
+
268  const double n_dbl = value_of(n_vec[i]);
+
269  const double N_dbl = value_of(N_vec[i]);
+
270  const double alpha_dbl = value_of(alpha_vec[i]);
+
271  const double beta_dbl = value_of(beta_vec[i]);
+
272 
+
273  const double mu = alpha_dbl + n_dbl + 1;
+
274  const double nu = beta_dbl + N_dbl - n_dbl - 1;
+
275 
+
276  const double F = stan::math::F32(1, mu, -N_dbl + n_dbl + 1, n_dbl + 2,
+
277  1 - nu, 1);
+
278 
+
279  double C = lgamma(nu) - lgamma(N_dbl - n_dbl);
+
280  C += lgamma(mu) - lgamma(n_dbl + 2);
+
281  C += lgamma(N_dbl + 2) - lgamma(N_dbl + alpha_dbl + beta_dbl);
+
282  C = std::exp(C);
+
283 
+
284  C *= F / boost::math::beta(alpha_dbl, beta_dbl);
+
285  C /= N_dbl + 1;
+
286 
+
287  const double Pi = 1 - C;
+
288 
+
289  P *= Pi;
+
290 
+
291  double dF[6];
+
292  double digammaOne = 0;
+
293  double digammaTwo = 0;
+
294 
+ + +
297  digammaOne = digamma(mu + nu);
+
298  digammaTwo = digamma(alpha_dbl + beta_dbl);
+
299  stan::math::gradF32(dF, 1, mu, -N_dbl + n_dbl + 1, n_dbl + 2,
+
300  1 - nu, 1);
+
301  }
+ +
303  const double g
+
304  = - C * (digamma(mu) - digammaOne + dF[1] / F
+
305  - digamma(alpha_dbl) + digammaTwo);
+
306  operands_and_partials.d_x1[i]
+
307  += g / Pi;
+
308  }
+ +
310  const double g
+
311  = - C * (digamma(nu) - digammaOne - dF[4] / F - digamma(beta_dbl)
+
312  + digammaTwo);
+
313  operands_and_partials.d_x2[i]
+
314  += g / Pi;
+
315  }
+
316  }
+
317 
+ +
319  for(size_t i = 0; i < stan::length(alpha); ++i)
+
320  operands_and_partials.d_x1[i] *= P;
+ +
322  for(size_t i = 0; i < stan::length(beta); ++i)
+
323  operands_and_partials.d_x2[i] *= P;
+
324 
+
325  return operands_and_partials.to_var(P);
+
326  }
+
327 
+
328  template <typename T_n, typename T_N,
+
329  typename T_size1, typename T_size2>
+ +
331  beta_binomial_cdf_log(const T_n& n, const T_N& N, const T_size1& alpha,
+
332  const T_size2& beta) {
+
333 
+
334  static const char* function = "stan::prob::beta_binomial_cdf_log(%1%)";
+
335 
+ + + +
339  using stan::math::value_of;
+ + +
342 
+
343  // Ensure non-zero argument lengths
+
344  if (!(stan::length(n) && stan::length(N) && stan::length(alpha)
+
345  && stan::length(beta)))
+
346  return 0.0;
+
347 
+
348  double P(0.0);
+
349 
+
350  // Validate arguments
+
351  if (!check_nonnegative(function, N, "Population size parameter", &P))
+
352  return P;
+
353  if (!check_finite(function, alpha, "First prior sample size parameter", &P))
+
354  return P;
+
355  if (!check_positive(function, alpha, "First prior sample size parameter", &P))
+
356  return P;
+
357  if (!check_finite(function, beta, "Second prior sample size parameter", &P))
+
358  return P;
+
359  if (!check_positive(function, beta, "Second prior sample size parameter", &P))
+
360  return P;
+
361  if (!(check_consistent_sizes(function,
+
362  n, N, alpha, beta,
+
363  "Successes variable",
+
364  "Population size parameter",
+
365  "First prior sample size parameter",
+
366  "Second prior sample size parameter",
+
367  &P)))
+
368  return P;
+
369 
+
370  // Wrap arguments in vector views
+
371  VectorView<const T_n> n_vec(n);
+
372  VectorView<const T_N> N_vec(N);
+
373  VectorView<const T_size1> alpha_vec(alpha);
+
374  VectorView<const T_size2> beta_vec(beta);
+
375  size_t size = max_size(n, N, alpha, beta);
+
376 
+
377  // Compute vectorized cdf_log and gradient
+
378  using boost::math::lgamma;
+
379  using boost::math::digamma;
+
380 
+ +
382  operands_and_partials(alpha, beta);
+
383 
+
384  // Explicit return for extreme values
+
385  // The gradients are technically ill-defined, but treated as neg infinity
+
386  for (size_t i = 0; i < stan::length(n); i++) {
+
387  if (value_of(n_vec[i]) <= 0)
+
388  return operands_and_partials.to_var(stan::math::negative_infinity());
+
389  }
+
390 
+
391  for (size_t i = 0; i < size; i++) {
+
392  // Explicit results for extreme values
+
393  // The gradients are technically ill-defined, but treated as zero
+
394  if (value_of(n_vec[i]) >= value_of(N_vec[i])) {
+
395  continue;
+
396  }
+
397 
+
398  const double n_dbl = value_of(n_vec[i]);
+
399  const double N_dbl = value_of(N_vec[i]);
+
400  const double alpha_dbl = value_of(alpha_vec[i]);
+
401  const double beta_dbl = value_of(beta_vec[i]);
+
402 
+
403  const double mu = alpha_dbl + n_dbl + 1;
+
404  const double nu = beta_dbl + N_dbl - n_dbl - 1;
+
405 
+
406  const double F = stan::math::F32(1, mu, -N_dbl + n_dbl + 1, n_dbl + 2,
+
407  1 - nu, 1);
+
408 
+
409  double C = lgamma(nu) - lgamma(N_dbl - n_dbl);
+
410  C += lgamma(mu) - lgamma(n_dbl + 2);
+
411  C += lgamma(N_dbl + 2) - lgamma(N_dbl + alpha_dbl + beta_dbl);
+
412  C = std::exp(C);
+
413 
+
414  C *= F / boost::math::beta(alpha_dbl, beta_dbl);
+
415  C /= N_dbl + 1;
+
416 
+
417  const double Pi = 1 - C;
+
418 
+
419  P += log(Pi);
+
420 
+
421  double dF[6];
+
422  double digammaOne = 0;
+
423  double digammaTwo = 0;
+
424 
+ + +
427  digammaOne = digamma(mu + nu);
+
428  digammaTwo = digamma(alpha_dbl + beta_dbl);
+
429  stan::math::gradF32(dF, 1, mu, -N_dbl + n_dbl + 1, n_dbl + 2,
+
430  1 - nu, 1);
+
431  }
+ +
433  const double g
+
434  = - C * (digamma(mu) - digammaOne + dF[1] / F
+
435  - digamma(alpha_dbl) + digammaTwo);
+
436  operands_and_partials.d_x1[i] += g / Pi;
+
437  }
+ +
439  const double g
+
440  = - C * (digamma(nu) - digammaOne - dF[4] / F - digamma(beta_dbl)
+
441  + digammaTwo);
+
442  operands_and_partials.d_x2[i] += g / Pi;
+
443  }
+
444  }
+
445 
+
446  return operands_and_partials.to_var(P);
+
447  }
+
448 
+
449  template <typename T_n, typename T_N,
+
450  typename T_size1, typename T_size2>
+ +
452  beta_binomial_ccdf_log(const T_n& n, const T_N& N, const T_size1& alpha,
+
453  const T_size2& beta) {
+
454 
+
455  static const char* function = "stan::prob::beta_binomial_ccdf_log(%1%)";
+
456 
+ + + +
460  using stan::math::value_of;
+ + +
463 
+
464  // Ensure non-zero argument lengths
+
465  if (!(stan::length(n) && stan::length(N) && stan::length(alpha)
+
466  && stan::length(beta)))
+
467  return 0.0;
+
468 
+
469  double P(0.0);
+
470 
+
471  // Validate arguments
+
472  if (!check_nonnegative(function, N, "Population size parameter", &P))
+
473  return P;
+
474  if (!check_finite(function, alpha, "First prior sample size parameter", &P))
+
475  return P;
+
476  if (!check_positive(function, alpha, "First prior sample size parameter", &P))
+
477  return P;
+
478  if (!check_finite(function, beta, "Second prior sample size parameter", &P))
+
479  return P;
+
480  if (!check_positive(function, beta, "Second prior sample size parameter", &P))
+
481  return P;
+
482  if (!(check_consistent_sizes(function,
+
483  n, N, alpha, beta,
+
484  "Successes variable",
+
485  "Population size parameter",
+
486  "First prior sample size parameter",
+
487  "Second prior sample size parameter",
+
488  &P)))
+
489  return P;
+
490 
+
491  // Wrap arguments in vector views
+
492  VectorView<const T_n> n_vec(n);
+
493  VectorView<const T_N> N_vec(N);
+
494  VectorView<const T_size1> alpha_vec(alpha);
+
495  VectorView<const T_size2> beta_vec(beta);
+
496  size_t size = max_size(n, N, alpha, beta);
+
497 
+
498  // Compute vectorized cdf_log and gradient
+
499  using boost::math::lgamma;
+
500  using boost::math::digamma;
+
501 
+ +
503  operands_and_partials(alpha, beta);
+
504 
+
505  // Explicit return for extreme values
+
506  // The gradients are technically ill-defined, but treated as neg infinity
+
507  for (size_t i = 0; i < stan::length(n); i++) {
+
508  if (value_of(n_vec[i]) <= 0)
+
509  return operands_and_partials.to_var(0.0);
+
510  }
+
511 
+
512  for (size_t i = 0; i < size; i++) {
+
513  // Explicit results for extreme values
+
514  // The gradients are technically ill-defined, but treated as zero
+
515  if (value_of(n_vec[i]) >= value_of(N_vec[i])) {
+
516  return operands_and_partials.to_var(stan::math::negative_infinity());
+
517  }
+
518 
+
519  const double n_dbl = value_of(n_vec[i]);
+
520  const double N_dbl = value_of(N_vec[i]);
+
521  const double alpha_dbl = value_of(alpha_vec[i]);
+
522  const double beta_dbl = value_of(beta_vec[i]);
+
523 
+
524  const double mu = alpha_dbl + n_dbl + 1;
+
525  const double nu = beta_dbl + N_dbl - n_dbl - 1;
+
526 
+
527  const double F = stan::math::F32(1, mu, -N_dbl + n_dbl + 1, n_dbl + 2,
+
528  1 - nu, 1);
+
529 
+
530  double C = lgamma(nu) - lgamma(N_dbl - n_dbl);
+
531  C += lgamma(mu) - lgamma(n_dbl + 2);
+
532  C += lgamma(N_dbl + 2) - lgamma(N_dbl + alpha_dbl + beta_dbl);
+
533  C = std::exp(C);
+
534 
+
535  C *= F / boost::math::beta(alpha_dbl, beta_dbl);
+
536  C /= N_dbl + 1;
+
537 
+
538  const double Pi = C;
+
539 
+
540  P += log(Pi);
+
541 
+
542  double dF[6];
+
543  double digammaOne = 0;
+
544  double digammaTwo = 0;
+
545 
+ + +
548  digammaOne = digamma(mu + nu);
+
549  digammaTwo = digamma(alpha_dbl + beta_dbl);
+
550  stan::math::gradF32(dF, 1, mu, -N_dbl + n_dbl + 1, n_dbl + 2,
+
551  1 - nu, 1);
+
552  }
+ +
554  const double g
+
555  = - C * (digamma(mu) - digammaOne + dF[1] / F
+
556  - digamma(alpha_dbl) + digammaTwo);
+
557  operands_and_partials.d_x1[i] -= g / Pi;
+
558  }
+ +
560  const double g
+
561  = - C * (digamma(nu) - digammaOne - dF[4] / F - digamma(beta_dbl)
+
562  + digammaTwo);
+
563  operands_and_partials.d_x2[i] -= g / Pi;
+
564  }
+
565  }
+
566 
+
567  return operands_and_partials.to_var(P);
+
568  }
+
569 
+
570  template <class RNG>
+
571  inline int
+
572  beta_binomial_rng(const int N,
+
573  const double alpha,
+
574  const double beta,
+
575  RNG& rng) {
+
576 
+
577  static const char* function = "stan::prob::beta_binomial_rng(%1%)";
+
578 
+ + + +
582 
+
583  if (!check_nonnegative(function, N, "Population size parameter"))
+
584  return 0;
+
585  if (!check_finite(function, alpha, "First prior sample size parameter"))
+
586  return 0;
+
587  if (!check_positive(function, alpha, "First prior sample size parameter"))
+
588  return 0;
+
589  if (!check_finite(function, beta, "Second prior sample size parameter"))
+
590  return 0;
+
591  if (!check_positive(function, beta, "Second prior sample size parameter"))
+
592  return 0;
+
593 
+
594  double a = stan::prob::beta_rng(alpha, beta, rng);
+
595  while(a > 1 || a < 0)
+
596  a = stan::prob::beta_rng(alpha, beta, rng);
+
597  return stan::prob::binomial_rng(N, a, rng);
+
598  }
+
599 }
+
600  }
+
601 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/bfgs_8hpp.html b/doc/api/html/bfgs_8hpp.html new file mode 100644 index 00000000000..c910dc07f16 --- /dev/null +++ b/doc/api/html/bfgs_8hpp.html @@ -0,0 +1,145 @@ + + + + + +Stan: src/stan/optimization/bfgs.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
bfgs.hpp File Reference
+
+
+
#include <cmath>
+#include <cstdlib>
+#include <string>
+#include <boost/math/special_functions/fpclassify.hpp>
+#include <stan/math/matrix/Eigen.hpp>
+#include <stan/model/util.hpp>
+
+

Go to the source code of this file.

+ + + + + + + + + + +

+Classes

class  stan::optimization::BFGSMinimizer< FunctorType, Scalar, DimAtCompile, LineSearchMethod >
 
struct  stan::optimization::BFGSMinimizer< FunctorType, Scalar, DimAtCompile, LineSearchMethod >::BFGSOptions
 
class  stan::optimization::ModelAdaptor< M >
 
class  stan::optimization::BFGSLineSearch< M >
 
+ + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::optimization
 
+ + + + +

+Functions

template<typename M >
double stan::optimization::lp_no_jacobian (const M &model, std::vector< double > &params_r, std::vector< int > &params_i, std::ostream *o=0)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/bfgs_8hpp_source.html b/doc/api/html/bfgs_8hpp_source.html new file mode 100644 index 00000000000..fdc2cc9f7a8 --- /dev/null +++ b/doc/api/html/bfgs_8hpp_source.html @@ -0,0 +1,706 @@ + + + + + +Stan: src/stan/optimization/bfgs.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
bfgs.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__OPTIMIZATION__BFGS_HPP__
+
2 #define __STAN__OPTIMIZATION__BFGS_HPP__
+
3 
+
4 #include <cmath>
+
5 #include <cstdlib>
+
6 #include <string>
+
7 
+
8 #include <boost/math/special_functions/fpclassify.hpp>
+
9 
+ +
11 #include <stan/model/util.hpp>
+
12 
+
13 namespace stan {
+
14  namespace optimization {
+
15  namespace {
+
16  template<typename FunctorType, typename Scalar, typename XType>
+
17  int BTLineSearch(FunctorType &func,
+
18  Scalar &alpha,
+
19  XType &x1, Scalar &f1, XType &gradx1,
+
20  const XType &p,
+
21  const XType &x0, const Scalar &f0, const XType &gradx0,
+
22  const Scalar &rho, const Scalar &c,
+
23  const Scalar &minAlpha)
+
24  {
+
25  const Scalar cdfdp(c*gradx0.dot(p));
+
26  int ret;
+
27 
+
28  while (1) {
+
29  x1 = x0 + alpha*p;
+
30  ret = func(x1,f1);
+
31  if (ret!=0 && f1 <= f0 + alpha*cdfdp)
+
32  break;
+
33  else
+
34  alpha *= rho;
+
35 
+
36  if (alpha < minAlpha)
+
37  return 1;
+
38  }
+
39  func.df(x1,gradx1);
+
40  return 0;
+
41  }
+
42 
+
43  template<typename Scalar>
+
44  Scalar CubicInterp(const Scalar &df0,
+
45  const Scalar &x1, const Scalar &f1, const Scalar &df1,
+
46  const Scalar &loX, const Scalar &hiX)
+
47  {
+
48  const Scalar c3((-12*f1 + 6*x1*(df0 + df1))/(x1*x1*x1));
+
49  const Scalar c2(-(4*df0 + 2*df1)/x1 + 6*f1/(x1*x1));
+
50  const Scalar &c1(df0);
+
51 
+
52  const Scalar t_s = std::sqrt(c2*c2 - 2.0*c1*c3);
+
53  const Scalar s1 = - (c2 + t_s)/c3;
+
54  const Scalar s2 = - (c2 - t_s)/c3;
+
55 
+
56  Scalar tmpF;
+
57  Scalar minF, minX;
+
58 
+
59  // Check value at lower bound
+
60  minF = loX*(loX*(loX*c3/3.0 + c2)/2.0 + c1);
+
61  minX = loX;
+
62 
+
63  // Check value at upper bound
+
64  tmpF = hiX*(hiX*(hiX*c3/3.0 + c2)/2.0 + c1);
+
65  if (tmpF < minF) {
+
66  minF = tmpF;
+
67  minX = hiX;
+
68  }
+
69 
+
70  // Check value of first root
+
71  if (loX < s1 && s1 < hiX) {
+
72  tmpF = s1*(s1*(s1*c3/3.0 + c2)/2.0 + c1);
+
73  if (tmpF < minF) {
+
74  minF = tmpF;
+
75  minX = s1;
+
76  }
+
77  }
+
78 
+
79  // Check value of second root
+
80  if (loX < s2 && s2 < hiX) {
+
81  tmpF = s2*(s2*(s2*c3/3.0 + c2)/2.0 + c1);
+
82  if (tmpF < minF) {
+
83  minF = tmpF;
+
84  minX = s2;
+
85  }
+
86  }
+
87 
+
88  return minX;
+
89  }
+
90  template<typename Scalar>
+
91  Scalar CubicInterp(const Scalar &x0, const Scalar &f0, const Scalar &df0,
+
92  const Scalar &x1, const Scalar &f1, const Scalar &df1,
+
93  const Scalar &loX, const Scalar &hiX)
+
94  {
+
95  return x0 + CubicInterp(df0,x1-x0,f1-f0,df1,loX-x0,hiX-x0);
+
96  }
+
97 
+
98  template<typename FunctorType, typename Scalar, typename XType>
+
99  int WolfLSZoom(Scalar &alpha, XType &newX, Scalar &newF, XType &newDF,
+
100  FunctorType &func,
+
101  const XType &x, const Scalar &f, const Scalar &dfp,
+
102  const Scalar &c1dfp, const Scalar &c2dfp, const XType &p,
+
103  Scalar alo, Scalar aloF, Scalar aloDFp,
+
104  Scalar ahi, Scalar ahiF, Scalar ahiDFp,
+
105  const Scalar &min_range)
+
106  {
+
107  Scalar d1, d2, newDFp;
+
108  int itNum(0);
+
109 
+
110  while (1) {
+
111  itNum++;
+
112 
+
113  if (std::fabs(alo-ahi) < min_range)
+
114  return 1;
+
115 
+
116  if (itNum%5 == 0) {
+
117  alpha = 0.5*(alo+ahi);
+
118  }
+
119  else {
+
120  // Perform cubic interpolation to determine next point to try
+
121  d1 = aloDFp + ahiDFp - 3*(aloF-ahiF)/(alo-ahi);
+
122  d2 = std::sqrt(d1*d1 - aloDFp*ahiDFp);
+
123  if (ahi < alo)
+
124  d2 = -d2;
+
125  alpha = ahi - (ahi - alo)*(ahiDFp + d2 - d1)/(ahiDFp - aloDFp + 2*d2);
+
126  if (!boost::math::isfinite(alpha) ||
+
127  alpha < std::min(alo,ahi)+0.01*std::fabs(alo-ahi) ||
+
128  alpha > std::max(alo,ahi)-0.01*std::fabs(alo-ahi))
+
129  alpha = 0.5*(alo+ahi);
+
130  }
+
131 
+
132  newX = x + alpha*p;
+
133  while (func(newX,newF,newDF)) {
+
134  alpha = 0.5*(alpha+std::min(alo,ahi));
+
135  if (std::fabs(std::min(alo,ahi)-alpha) < min_range)
+
136  return 1;
+
137  newX = x + alpha*p;
+
138  }
+
139  newDFp = newDF.dot(p);
+
140  if (newF > (f + alpha*c1dfp) || newF >= aloF) {
+
141  ahi = alpha;
+
142  ahiF = newF;
+
143  ahiDFp = newDFp;
+
144  }
+
145  else {
+
146  if (std::fabs(newDFp) <= -c2dfp)
+
147  break;
+
148  if (newDFp*(ahi-alo) >= 0) {
+
149  ahi = alo;
+
150  ahiF = aloF;
+
151  ahiDFp = aloDFp;
+
152  }
+
153  alo = alpha;
+
154  aloF = newF;
+
155  aloDFp = newDFp;
+
156  }
+
157  }
+
158  return 0;
+
159  }
+
160 
+
161  template<typename FunctorType, typename Scalar, typename XType>
+
162  int WolfeLineSearch(FunctorType &func,
+
163  Scalar &alpha,
+
164  XType &x1, Scalar &f1, XType &gradx1,
+
165  const XType &p,
+
166  const XType &x0, const Scalar &f0, const XType &gradx0,
+
167  const Scalar &c1, const Scalar &c2,
+
168  const Scalar &minAlpha)
+
169  {
+
170  const Scalar dfp(gradx0.dot(p));
+
171  const Scalar c1dfp(c1*dfp);
+
172  const Scalar c2dfp(c2*dfp);
+
173 
+
174  Scalar alpha0(minAlpha);
+
175  Scalar alpha1(alpha);
+
176 
+
177  Scalar prevF(f0);
+
178  XType prevDF(gradx0);
+
179  Scalar prevDFp(dfp);
+
180  Scalar newDFp;
+
181 
+
182  int retCode = 0, nits = 0, ret;
+
183 
+
184  while (1) {
+
185  x1.noalias() = x0 + alpha1*p;
+
186  ret = func(x1,f1,gradx1);
+
187  if (ret!=0) {
+
188  alpha1 = 0.5*(alpha0+alpha1);
+
189  continue;
+
190  }
+
191  newDFp = gradx1.dot(p);
+
192  if ((f1 > f0 + alpha*c1dfp) || (f1 >= prevF && nits > 0)) {
+
193  retCode = WolfLSZoom(alpha, x1, f1, gradx1,
+
194  func,
+
195  x0, f0, dfp,
+
196  c1dfp, c2dfp, p,
+
197  alpha0, prevF, prevDFp,
+
198  alpha1, f1, newDFp,
+
199  1e-16);
+
200  break;
+
201  }
+
202  if (std::fabs(newDFp) <= -c2dfp) {
+
203  alpha = alpha1;
+
204  break;
+
205  }
+
206  if (newDFp >= 0) {
+
207  retCode = WolfLSZoom(alpha, x1, f1, gradx1,
+
208  func,
+
209  x0, f0, dfp,
+
210  c1dfp, c2dfp, p,
+
211  alpha1, f1, newDFp,
+
212  alpha0, prevF, prevDFp,
+
213  1e-16);
+
214  break;
+
215  }
+
216 
+
217  alpha0 = alpha1;
+
218  prevF = f1;
+
219  std::swap(prevDF,gradx1);
+
220  prevDFp = newDFp;
+
221 
+
222 // alpha1 = std::min(2.0*alpha0,maxAlpha);
+
223  alpha1 *= 10.0;
+
224 
+
225  nits++;
+
226  }
+
227  return retCode;
+
228  }
+
229 
+
230  }
+
231  template<typename FunctorType, typename Scalar = double,
+
232  int DimAtCompile = Eigen::Dynamic,
+
233  int LineSearchMethod = 1>
+ +
235  public:
+
236  typedef Eigen::Matrix<Scalar,DimAtCompile,1> VectorT;
+
237  typedef Eigen::Matrix<Scalar,DimAtCompile,DimAtCompile> HessianT;
+
238 
+
239  protected:
+
240  FunctorType &_func;
+ +
242  Scalar _fk, _fk_1, _alphak_1;
+
243  Scalar _alpha, _alpha0;
+
244  Eigen::LDLT< HessianT > _ldlt;
+
245  size_t _itNum;
+
246  std::string _note;
+
247 
+
248  public:
+
249  const Scalar &curr_f() const { return _fk; }
+
250  const VectorT &curr_x() const { return _xk; }
+
251  const VectorT &curr_g() const { return _gk; }
+
252  const VectorT &curr_s() const { return _sk; }
+
253 
+
254  const Scalar &prev_f() const { return _fk_1; }
+
255  const VectorT &prev_x() const { return _xk_1; }
+
256  const VectorT &prev_g() const { return _gk_1; }
+
257  const VectorT &prev_s() const { return _sk_1; }
+
258  Scalar prev_step_size() const { return _sk_1.norm()*_alphak_1; }
+
259 
+
260  const Scalar &alpha0() const { return _alpha0; }
+
261  const Scalar &alpha() const { return _alpha; }
+
262  const size_t iter_num() const { return _itNum; }
+
263 
+
264  const std::string &note() const { return _note; }
+
265 
+
266  std::string get_code_string(int retCode) {
+
267  switch(retCode) {
+
268  case 0:
+
269  return std::string("Successful step completed");
+
270  case 1:
+
271  return std::string("Convergence detected: change in objective function was below tolerance");
+
272  case 2:
+
273  return std::string("Convergence detected: gradient norm is below tolerance");
+
274  case 3:
+
275  return std::string("Convergence detected: parameter change was below tolerance");
+
276  case 4:
+
277  return std::string("Maximum number of iterations hit, may not be at an optima");
+
278  case -1:
+
279  return std::string("Line search failed to achieve a sufficient decrease, no more progress can be made");
+
280  default:
+
281  return std::string("Unknown termination code");
+
282  }
+
283  }
+
284 
+
285  struct BFGSOptions {
+ +
287  maxIts = 10000;
+
288  rho = 0.75;
+
289  c1 = 1e-4;
+
290  c2 = 0.9;
+
291  minAlpha = 1e-12;
+
292  alpha0 = 1e-3;
+
293  tolX = 1e-8;
+
294  tolF = 1e-8;
+
295  tolGrad = 1e-8;
+
296  }
+
297  size_t maxIts;
+
298  Scalar rho;
+
299  Scalar c1;
+
300  Scalar c2;
+
301  Scalar alpha0;
+
302  Scalar minAlpha;
+
303  Scalar tolX;
+
304  Scalar tolF;
+
305  Scalar tolGrad;
+
306  } _opts;
+
307 
+
308 
+
309  BFGSMinimizer(FunctorType &f) : _func(f) { }
+
310 
+
311  void initialize(const VectorT &x0) {
+
312  int ret;
+
313  _xk = x0;
+
314  ret = _func(_xk,_fk,_gk);
+
315  if (ret) {
+
316  throw std::runtime_error("Error evaluating initial BFGS point.");
+
317  }
+
318 
+
319  _itNum = 0;
+
320  _note = "";
+
321  }
+
322 
+
323  int step() {
+
324  Scalar gradNorm, thetak, skyk, skBksk;
+
325  VectorT sk, yk, Bksk, rk;
+
326  int retCode;
+
327  int resetB(0);
+
328 
+
329  _itNum++;
+
330 
+
331  if (_itNum == 1) {
+
332  resetB = 1;
+
333  _note = "";
+
334  }
+
335  else if (!(_ldlt.info() == Eigen::Success && _ldlt.isPositive() && (_ldlt.vectorD().array() > 0).all())) {
+
336  resetB = 1;
+
337  _note = "LDLT failed, BFGS reset; ";
+
338  }
+
339  else {
+
340  resetB = 0;
+
341  _note = "";
+
342  }
+
343 
+
344  while (true) {
+
345  if (resetB) {
+
346  // Reset the Hessian approximation
+
347  _sk = -_gk;
+
348  }
+
349  else {
+
350  _sk = -_ldlt.solve(_gk);
+
351  }
+
352 
+
353  if (_itNum > 1 && resetB != 2) {
+
354  _alpha0 = _alpha = std::min(1.0,
+
355  1.01*CubicInterp(_gk_1.dot(_sk_1),
+
356  _alphak_1, _fk - _fk_1, _gk.dot(_sk_1),
+
357  _opts.minAlpha, 1.0));
+
358 // _alpha0 = _alpha = std::min(1.0, 1.01*(2*(_fk - _fk_1)/_gk_1.dot(_sk_1)));
+
359  }
+
360  else {
+ +
362  }
+
363 
+
364  if (LineSearchMethod == 0) {
+
365  retCode = BTLineSearch(_func, _alpha, _xk_1, _fk_1, _gk_1,
+
366  _sk, _xk, _fk, _gk, _opts.rho,
+ +
368  }
+
369  else if (LineSearchMethod == 1) {
+
370  retCode = WolfeLineSearch(_func, _alpha, _xk_1, _fk_1, _gk_1,
+
371  _sk, _xk, _fk, _gk,
+
372  _opts.c1, _opts.c2,
+
373  _opts.minAlpha);
+
374  }
+
375  if (retCode) {
+
376  if (resetB) {
+
377  // Line-search failed and nothing left to try
+
378  retCode = -1;
+
379  return retCode;
+
380  }
+
381  else {
+
382  // Line-search failed, try ditching the Hessian approximation
+
383  resetB = 2;
+
384  _note += "LS failed, BFGS reset; ";
+
385  continue;
+
386  }
+
387  }
+
388  else {
+
389  break;
+
390  }
+
391  }
+
392  std::swap(_fk,_fk_1);
+
393  _xk.swap(_xk_1);
+
394  _gk.swap(_gk_1);
+
395  _sk.swap(_sk_1);
+
396 
+
397  gradNorm = _gk.norm();
+
398  sk.noalias() = _xk - _xk_1;
+
399  // Check for convergence
+
400  if (std::fabs(_fk - _fk_1) < _opts.tolF) {
+
401  retCode = 1; // Objective function improvement wasn't sufficient
+
402  }
+
403  else if (gradNorm < _opts.tolGrad) {
+
404  retCode = 2; // Gradient norm was below threshold
+
405  }
+
406  else if (sk.norm() < _opts.tolX) {
+
407  retCode = 3; // Change in x was too small
+
408  }
+
409  else if (_itNum >= _opts.maxIts) {
+
410  retCode = 4; // Max number of iterations hit
+
411  }
+
412  else {
+
413  retCode = 0; // Step was successful more progress to be made
+
414  }
+
415 
+
416  yk.noalias() = _gk - _gk_1;
+
417  skyk = yk.dot(sk);
+
418  if (resetB) {
+
419  Scalar B0fact = yk.squaredNorm()/skyk;
+
420  _ldlt.compute(B0fact*HessianT::Identity(_xk.size(),_xk.size()));
+
421  Bksk.noalias() = B0fact*sk;
+
422  _sk_1 = -_gk_1/B0fact;
+
423  _alphak_1 = B0fact*_alpha;
+
424  }
+
425  else {
+
426  Bksk = _ldlt.transpositionsP().transpose()*(_ldlt.matrixL()*(_ldlt.vectorD().asDiagonal()*(_ldlt.matrixU()*(_ldlt.transpositionsP()*sk))));
+
427  _alphak_1 = _alpha;
+
428  }
+
429  skBksk = sk.dot(Bksk);
+
430  if (skyk >= 0.2*skBksk) {
+
431  // Full update
+
432  thetak = 1;
+
433  rk = yk;
+
434  }
+
435  else {
+
436  // Damped update (Procedure 18.2)
+
437  thetak = 0.8*skBksk/(skBksk - skyk);
+
438  rk.noalias() = thetak*yk + (1.0 - thetak)*Bksk;
+
439  _note += "Damped BFGS update";
+
440  }
+
441  _ldlt.rankUpdate(rk,1.0/sk.dot(rk));
+
442  _ldlt.rankUpdate(Bksk,-1.0/skBksk);
+
443 
+
444  return retCode;
+
445  }
+
446 
+
447  int minimize(VectorT &x0) {
+
448  int retcode;
+
449  initialize(x0);
+
450  while (!(retcode = step()));
+
451  x0 = _xk;
+
452  return retcode;
+
453  }
+
454  };
+
455 
+
456 
+
457 
+
458  template <typename M>
+
459  double lp_no_jacobian(const M& model,
+
460  std::vector<double>& params_r,
+
461  std::vector<int>& params_i,
+
462  std::ostream* o = 0) {
+
463  // FIXME: is this supposed to return the log probability from the model?
+
464  return 0;
+
465  }
+
466 
+
467  template <class M>
+
468  class ModelAdaptor {
+
469  private:
+
470  M& _model;
+
471  std::vector<int> _params_i;
+
472  std::ostream* _msgs;
+
473  std::vector<double> _x, _g;
+
474  size_t _fevals;
+
475 
+
476  public:
+
477  ModelAdaptor(M& model,
+
478  const std::vector<int>& params_i,
+
479  std::ostream* msgs)
+
480  : _model(model), _params_i(params_i), _msgs(msgs), _fevals(0) {}
+
481 
+
482  size_t fevals() const { return _fevals; }
+
483  int operator()(const Eigen::Matrix<double,Eigen::Dynamic,1> &x,
+
484  double &f) {
+
485  _x.resize(x.size());
+ +
487  i < x.size(); i++)
+
488  _x[i] = x[i];
+
489 
+
490  try {
+
491  f = - _model.template log_prob<false,false>(_x,_params_i,
+
492  _msgs);
+
493  } catch (const std::exception& e) {
+
494  if (_msgs)
+
495  (*_msgs) << e.what() << std::endl;
+
496  return 1;
+
497  }
+
498 
+
499  if (boost::math::isfinite(f))
+
500  return 0;
+
501  else {
+
502  if (_msgs)
+
503  *_msgs << "Error evaluating model log probability: "
+
504  "Non-finite function evaluation." << std::endl;
+
505  return 2;
+
506  }
+
507  }
+
508  int operator()(const Eigen::Matrix<double,Eigen::Dynamic,1> &x,
+
509  double &f, Eigen::Matrix<double,Eigen::Dynamic,1> &g) {
+
510  _x.resize(x.size());
+ +
512  i < x.size(); i++)
+
513  _x[i] = x[i];
+
514 
+
515  _fevals++;
+
516 
+
517  try {
+
518  f = - stan::model::log_prob_grad<true,false>(_model,
+
519  _x, _params_i,
+
520  _g, _msgs);
+
521  } catch (const std::exception& e) {
+
522  if (_msgs)
+
523  (*_msgs) << e.what() << std::endl;
+
524  return 1;
+
525  }
+
526 
+
527  g.resize(_g.size());
+
528  for (size_t i = 0; i < _g.size(); i++) {
+
529  if (!boost::math::isfinite(_g[i])) {
+
530  if (_msgs)
+
531  *_msgs << "Error evaluating model log probability: "
+
532  "Non-finite gradient." << std::endl;
+
533  return 3;
+
534  }
+
535  g[i] = -_g[i];
+
536  }
+
537 
+
538  if (boost::math::isfinite(f))
+
539  return 0;
+
540  else {
+
541  if (_msgs)
+
542  *_msgs << "Error evaluating model log probability: "
+
543  "Non-finite function evaluation."
+
544  << std::endl;
+
545  return 2;
+
546  }
+
547  }
+
548  int df(const Eigen::Matrix<double,Eigen::Dynamic,1> &x,
+
549  Eigen::Matrix<double,Eigen::Dynamic,1> &g) {
+
550  double f;
+
551  return (*this)(x,f,g);
+
552  }
+
553  };
+
554 
+
555  template <typename M>
+
556  class BFGSLineSearch : public BFGSMinimizer<ModelAdaptor<M> > {
+
557  private:
+
558  ModelAdaptor<M> _adaptor;
+
559  public:
+ +
561  typedef typename vector_t::size_type idx_t;
+
562 
+
563  BFGSLineSearch(M& model,
+
564  const std::vector<double>& params_r,
+
565  const std::vector<int>& params_i,
+
566  std::ostream* msgs = 0)
+
567  : BFGSMinimizer<ModelAdaptor<M> >(_adaptor),
+
568  _adaptor(model,params_i,msgs)
+
569  {
+
570 
+
571  Eigen::Matrix<double,Eigen::Dynamic,1> x;
+
572  x.resize(params_r.size());
+
573  for (size_t i = 0; i < params_r.size(); i++)
+
574  x[i] = params_r[i];
+
575  this->initialize(x);
+
576  }
+
577 
+
578  size_t grad_evals() { return _adaptor.fevals(); }
+
579  double logp() { return -(this->curr_f()); }
+
580  double grad_norm() { return this->curr_g().norm(); }
+
581  void grad(std::vector<double>& g) {
+
582  const vector_t &cg(this->curr_g());
+
583  g.resize(cg.size());
+
584  for (idx_t i = 0; i < cg.size(); i++)
+
585  g[i] = -cg[i];
+
586  }
+
587  void params_r(std::vector<double>& x) {
+
588  const vector_t &cx(this->curr_x());
+
589  x.resize(cx.size());
+
590  for (idx_t i = 0; i < cx.size(); i++)
+
591  x[i] = cx[i];
+
592  }
+
593  };
+
594 
+
595  }
+
596 
+
597 }
+
598 
+
599 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/binomial_8hpp.html b/doc/api/html/binomial_8hpp.html new file mode 100644 index 00000000000..4ed9ba8d002 --- /dev/null +++ b/doc/api/html/binomial_8hpp.html @@ -0,0 +1,163 @@ + + + + + +Stan: src/stan/prob/distributions/univariate/discrete/binomial.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
binomial.hpp File Reference
+
+
+
#include <boost/random/binomial_distribution.hpp>
+#include <boost/random/variate_generator.hpp>
+#include <stan/agrad/partials_vari.hpp>
+#include <stan/math/error_handling.hpp>
+#include <stan/math/constants.hpp>
+#include <stan/math/functions/inv_logit.hpp>
+#include <stan/math/functions/log1m.hpp>
+#include <stan/math/functions/log_inv_logit.hpp>
+#include <stan/math/functions/multiply_log.hpp>
+#include <stan/math/functions/value_of.hpp>
+#include <stan/meta/traits.hpp>
+#include <stan/prob/traits.hpp>
+#include <stan/prob/constants.hpp>
+#include <stan/math/functions/binomial_coefficient_log.hpp>
+
+

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::prob
 Templated probability distributions.
 
+ + + + + + + + + + + + + + + + + + + + + + + + + +

+Functions

template<bool propto, typename T_n , typename T_N , typename T_prob >
return_type< T_prob >::type stan::prob::binomial_log (const T_n &n, const T_N &N, const T_prob &theta)
 
template<typename T_n , typename T_N , typename T_prob >
return_type< T_prob >::type stan::prob::binomial_log (const T_n &n, const T_N &N, const T_prob &theta)
 
template<bool propto, typename T_n , typename T_N , typename T_prob >
return_type< T_prob >::type stan::prob::binomial_logit_log (const T_n &n, const T_N &N, const T_prob &alpha)
 
template<typename T_n , typename T_N , typename T_prob >
return_type< T_prob >::type stan::prob::binomial_logit_log (const T_n &n, const T_N &N, const T_prob &alpha)
 
template<typename T_n , typename T_N , typename T_prob >
return_type< T_prob >::type stan::prob::binomial_cdf (const T_n &n, const T_N &N, const T_prob &theta)
 
template<typename T_n , typename T_N , typename T_prob >
return_type< T_prob >::type stan::prob::binomial_cdf_log (const T_n &n, const T_N &N, const T_prob &theta)
 
template<typename T_n , typename T_N , typename T_prob >
return_type< T_prob >::type stan::prob::binomial_ccdf_log (const T_n &n, const T_N &N, const T_prob &theta)
 
template<class RNG >
int stan::prob::binomial_rng (const int N, const double theta, RNG &rng)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/binomial_8hpp_source.html b/doc/api/html/binomial_8hpp_source.html new file mode 100644 index 00000000000..dd689b53cbe --- /dev/null +++ b/doc/api/html/binomial_8hpp_source.html @@ -0,0 +1,631 @@ + + + + + +Stan: src/stan/prob/distributions/univariate/discrete/binomial.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
binomial.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__PROB__DISTRIBUTIONS__UNIVARIATE__DISCRETE__BINOMIAL_HPP__
+
2 #define __STAN__PROB__DISTRIBUTIONS__UNIVARIATE__DISCRETE__BINOMIAL_HPP__
+
3 
+
4 #include <boost/random/binomial_distribution.hpp>
+
5 #include <boost/random/variate_generator.hpp>
+
6 
+ + + + + + + + +
15 #include <stan/meta/traits.hpp>
+
16 #include <stan/prob/traits.hpp>
+
17 #include <stan/prob/constants.hpp>
+
18 
+ +
20 
+
21 namespace stan {
+
22 
+
23  namespace prob {
+
24 
+
25  // Binomial(n|N,theta) [N >= 0; 0 <= n <= N; 0 <= theta <= 1]
+
26  template <bool propto,
+
27  typename T_n,
+
28  typename T_N,
+
29  typename T_prob>
+
30  typename return_type<T_prob>::type
+
31  binomial_log(const T_n& n,
+
32  const T_N& N,
+
33  const T_prob& theta) {
+
34 
+
35  static const char* function = "stan::prob::binomial_log(%1%)";
+
36 
+ + + + + + +
43 
+
44  // check if any vectors are zero length
+
45  if (!(stan::length(n)
+
46  && stan::length(N)
+
47  && stan::length(theta)))
+
48  return 0.0;
+
49 
+
50  double logp = 0;
+
51  if (!check_bounded(function, n, 0, N,
+
52  "Successes variable",
+
53  &logp))
+
54  return logp;
+
55  if (!check_nonnegative(function, N,
+
56  "Population size parameter",
+
57  &logp))
+
58  return logp;
+
59  if (!check_finite(function, theta,
+
60  "Probability parameter",
+
61  &logp))
+
62  return logp;
+
63  if (!check_bounded(function, theta, 0.0, 1.0,
+
64  "Probability parameter",
+
65  &logp))
+
66  return logp;
+
67  if (!(check_consistent_sizes(function,
+
68  n,N,theta,
+
69  "Successes variable",
+
70  "Population size parameter",
+
71  "Probability parameter",
+
72  &logp)))
+
73  return logp;
+
74 
+
75 
+
76  // check if no variables are involved and prop-to
+ +
78  return 0.0;
+
79 
+
80  // set up template expressions wrapping scalars into vector views
+
81  VectorView<const T_n> n_vec(n);
+
82  VectorView<const T_N> N_vec(N);
+
83  VectorView<const T_prob> theta_vec(theta);
+
84  size_t size = max_size(n, N, theta);
+
85 
+
86  agrad::OperandsAndPartials<T_prob> operands_and_partials(theta);
+
87 
+ + +
90  using stan::math::log1m;
+
91 
+ +
93  for (size_t i = 0; i < size; ++i)
+
94  logp += binomial_coefficient_log(N_vec[i],n_vec[i]);
+
95 
+ +
97  for (size_t i = 0; i < length(theta); ++i)
+
98  log1m_theta[i] = log1m(value_of(theta_vec[i]));
+
99 
+
100  // no test for include_summand because return if not live
+
101  for (size_t i = 0; i < size; ++i)
+
102  logp += multiply_log(n_vec[i],value_of(theta_vec[i]))
+
103  + (N_vec[i] - n_vec[i]) * log1m_theta[i];
+
104 
+
105  if (length(theta) == 1) {
+
106  double temp1 = 0;
+
107  double temp2 = 0;
+
108  for (size_t i = 0; i < size; ++i) {
+
109  temp1 += n_vec[i];
+
110  temp2 += N_vec[i] - n_vec[i];
+
111  }
+ +
113  operands_and_partials.d_x1[0]
+
114  += temp1 / value_of(theta_vec[0])
+
115  - temp2 / (1.0 - value_of(theta_vec[0]));
+
116  }
+
117  } else {
+ +
119  for (size_t i = 0; i < size; ++i)
+
120  operands_and_partials.d_x1[i]
+
121  += n_vec[i] / value_of(theta_vec[i])
+
122  - (N_vec[i] - n_vec[i]) / (1.0 - value_of(theta_vec[i]));
+
123  }
+
124  }
+
125 
+
126  return operands_and_partials.to_var(logp);
+
127  }
+
128 
+
129  template <typename T_n,
+
130  typename T_N,
+
131  typename T_prob>
+
132  inline
+ +
134  binomial_log(const T_n& n,
+
135  const T_N& N,
+
136  const T_prob& theta) {
+
137  return binomial_log<false>(n,N,theta);
+
138  }
+
139 
+
140  // BinomialLogit(n|N,alpha) [N >= 0; 0 <= n <= N]
+
141  // BinomialLogit(n|N,alpha) = Binomial(n|N,inv_logit(alpha))
+
142  template <bool propto,
+
143  typename T_n,
+
144  typename T_N,
+
145  typename T_prob>
+ +
147  binomial_logit_log(const T_n& n,
+
148  const T_N& N,
+
149  const T_prob& alpha) {
+
150 
+
151  static const char* function = "stan::prob::binomial_logit_log(%1%)";
+
152 
+ + + +
156  using stan::math::value_of;
+ + +
159 
+
160  // check if any vectors are zero length
+
161  if (!(stan::length(n)
+
162  && stan::length(N)
+
163  && stan::length(alpha)))
+
164  return 0.0;
+
165 
+
166  double logp = 0;
+
167  if (!check_bounded(function, n, 0, N,
+
168  "Successes variable",
+
169  &logp))
+
170  return logp;
+
171  if (!check_nonnegative(function, N,
+
172  "Population size parameter",
+
173  &logp))
+
174  return logp;
+
175  if (!check_finite(function, alpha,
+
176  "Probability parameter",
+
177  &logp))
+
178  return logp;
+
179  if (!(check_consistent_sizes(function,
+
180  n,N,alpha,
+
181  "Successes variable",
+
182  "Population size parameter",
+
183  "Probability parameter",
+
184  &logp)))
+
185  return logp;
+
186 
+
187  // check if no variables are involved and prop-to
+ +
189  return 0.0;
+
190 
+
191  // set up template expressions wrapping scalars into vector views
+
192  VectorView<const T_n> n_vec(n);
+
193  VectorView<const T_N> N_vec(N);
+
194  VectorView<const T_prob> alpha_vec(alpha);
+
195  size_t size = max_size(n, N, alpha);
+
196 
+
197  agrad::OperandsAndPartials<T_prob> operands_and_partials(alpha);
+
198 
+ + +
201  using stan::math::inv_logit;
+
202 
+ +
204  for (size_t i = 0; i < size; ++i)
+
205  logp += binomial_coefficient_log(N_vec[i],n_vec[i]);
+
206 
+
207  DoubleVectorView<true,is_vector<T_prob>::value> log_inv_logit_alpha(length(alpha));
+
208  for (size_t i = 0; i < length(alpha); ++i)
+
209  log_inv_logit_alpha[i] = log_inv_logit(value_of(alpha_vec[i]));
+
210 
+
211  DoubleVectorView<true,is_vector<T_prob>::value> log_inv_logit_neg_alpha(length(alpha));
+
212  for (size_t i = 0; i < length(alpha); ++i)
+
213  log_inv_logit_neg_alpha[i] = log_inv_logit(-value_of(alpha_vec[i]));
+
214 
+
215  for (size_t i = 0; i < size; ++i)
+
216  logp += n_vec[i] * log_inv_logit_alpha[i]
+
217  + (N_vec[i] - n_vec[i]) * log_inv_logit_neg_alpha[i];
+
218 
+
219  if (length(alpha) == 1) {
+
220  double temp1 = 0;
+
221  double temp2 = 0;
+
222  for (size_t i = 0; i < size; ++i) {
+
223  temp1 += n_vec[i];
+
224  temp2 += N_vec[i] - n_vec[i];
+
225  }
+ +
227  operands_and_partials.d_x1[0]
+
228  += temp1 * inv_logit(-value_of(alpha_vec[0]))
+
229  - temp2 * inv_logit(value_of(alpha_vec[0]));
+
230  }
+
231  } else {
+ +
233  for (size_t i = 0; i < size; ++i)
+
234  operands_and_partials.d_x1[i]
+
235  += n_vec[i] * inv_logit(-value_of(alpha_vec[i]))
+
236  - (N_vec[i] - n_vec[i]) * inv_logit(value_of(alpha_vec[i]));
+
237  }
+
238  }
+
239 
+
240  return operands_and_partials.to_var(logp);
+
241  }
+
242 
+
243  template <typename T_n,
+
244  typename T_N,
+
245  typename T_prob>
+
246  inline
+ +
248  binomial_logit_log(const T_n& n,
+
249  const T_N& N,
+
250  const T_prob& alpha) {
+
251  return binomial_logit_log<false>(n,N,alpha);
+
252  }
+
253 
+
254 
+
255  // Binomial CDF
+
256  template <typename T_n, typename T_N, typename T_prob>
+ +
258  binomial_cdf(const T_n& n, const T_N& N, const T_prob& theta) {
+
259 
+
260  static const char* function = "stan::prob::binomial_cdf(%1%)";
+
261 
+ + + +
265  using stan::math::value_of;
+ + +
268 
+
269  // Ensure non-zero arguments lenghts
+
270  if (!(stan::length(n) && stan::length(N) && stan::length(theta)))
+
271  return 1.0;
+
272 
+
273  double P(1.0);
+
274 
+
275  // Validate arguments
+
276  if (!check_nonnegative(function, N, "Population size parameter", &P))
+
277  return P;
+
278 
+
279  if (!check_finite(function, theta, "Probability parameter", &P))
+
280  return P;
+
281 
+
282  if (!check_bounded(function, theta, 0.0, 1.0,
+
283  "Probability parameter", &P))
+
284  return P;
+
285 
+
286  if (!(check_consistent_sizes(function, n, N, theta,
+
287  "Successes variable", "Population size parameter", "Probability parameter",
+
288  &P)))
+
289  return P;
+
290 
+
291  // Wrap arguments in vector views
+
292  VectorView<const T_n> n_vec(n);
+
293  VectorView<const T_N> N_vec(N);
+
294  VectorView<const T_prob> theta_vec(theta);
+
295  size_t size = max_size(n, N, theta);
+
296 
+
297  // Compute vectorized CDF and gradient
+
298  using stan::math::value_of;
+
299  using boost::math::ibeta;
+
300  using boost::math::ibeta_derivative;
+
301 
+
302  agrad::OperandsAndPartials<T_prob> operands_and_partials(theta);
+
303 
+
304  // Explicit return for extreme values
+
305  // The gradients are technically ill-defined, but treated as zero
+
306  for (size_t i = 0; i < stan::length(n); i++) {
+
307  if (value_of(n_vec[i]) < 0)
+
308  return operands_and_partials.to_var(0.0);
+
309  }
+
310 
+
311  for (size_t i = 0; i < size; i++) {
+
312 
+
313  // Explicit results for extreme values
+
314  // The gradients are technically ill-defined, but treated as zero
+
315  if (value_of(n_vec[i]) >= value_of(N_vec[i])) {
+
316  continue;
+
317  }
+
318 
+
319  const double n_dbl = value_of(n_vec[i]);
+
320  const double N_dbl = value_of(N_vec[i]);
+
321  const double theta_dbl = value_of(theta_vec[i]);
+
322 
+
323  const double Pi = ibeta(N_dbl - n_dbl, n_dbl + 1, 1 - theta_dbl);
+
324 
+
325  P *= Pi;
+
326 
+ +
328  operands_and_partials.d_x1[i]
+
329  += - ibeta_derivative(N_dbl - n_dbl, n_dbl + 1, 1 - theta_dbl) / Pi;
+
330 
+
331 
+
332  }
+
333 
+ +
335  for(size_t i = 0; i < stan::length(theta); ++i) operands_and_partials.d_x1[i] *= P;
+
336  }
+
337 
+
338  return operands_and_partials.to_var(P);
+
339 
+
340  }
+
341 
+
342  template <typename T_n, typename T_N, typename T_prob>
+ +
344  binomial_cdf_log(const T_n& n, const T_N& N, const T_prob& theta) {
+
345 
+
346  static const char* function = "stan::prob::binomial_cdf_log(%1%)";
+
347 
+ + + +
351  using stan::math::value_of;
+ + +
354 
+
355  // Ensure non-zero arguments lenghts
+
356  if (!(stan::length(n) && stan::length(N) && stan::length(theta)))
+
357  return 0.0;
+
358 
+
359  double P(0.0);
+
360 
+
361  // Validate arguments
+
362  if (!check_nonnegative(function, N, "Population size parameter", &P))
+
363  return P;
+
364  if (!check_finite(function, theta, "Probability parameter", &P))
+
365  return P;
+
366  if (!check_bounded(function, theta, 0.0, 1.0,
+
367  "Probability parameter", &P))
+
368  return P;
+
369  if (!(check_consistent_sizes(function, n, N, theta,
+
370  "Successes variable", "Population size parameter", "Probability parameter",
+
371  &P)))
+
372  return P;
+
373 
+
374  // Wrap arguments in vector views
+
375  VectorView<const T_n> n_vec(n);
+
376  VectorView<const T_N> N_vec(N);
+
377  VectorView<const T_prob> theta_vec(theta);
+
378  size_t size = max_size(n, N, theta);
+
379 
+
380  // Compute vectorized cdf_log and gradient
+
381  using stan::math::value_of;
+
382  using boost::math::ibeta;
+
383  using boost::math::ibeta_derivative;
+
384 
+
385  agrad::OperandsAndPartials<T_prob> operands_and_partials(theta);
+
386 
+
387  // Explicit return for extreme values
+
388  // The gradients are technically ill-defined, but treated as negative infinity
+
389  for (size_t i = 0; i < stan::length(n); i++) {
+
390  if (value_of(n_vec[i]) < 0)
+
391  return operands_and_partials.to_var(stan::math::negative_infinity());
+
392  }
+
393 
+
394  for (size_t i = 0; i < size; i++) {
+
395  // Explicit results for extreme values
+
396  // The gradients are technically ill-defined, but treated as zero
+
397  if (value_of(n_vec[i]) >= value_of(N_vec[i])) {
+
398  continue;
+
399  }
+
400  const double n_dbl = value_of(n_vec[i]);
+
401  const double N_dbl = value_of(N_vec[i]);
+
402  const double theta_dbl = value_of(theta_vec[i]);
+
403  const double Pi = ibeta(N_dbl - n_dbl, n_dbl + 1, 1 - theta_dbl);
+
404 
+
405  P += log(Pi);
+
406 
+ +
408  operands_and_partials.d_x1[i]
+
409  += - ibeta_derivative(N_dbl - n_dbl, n_dbl + 1, 1 - theta_dbl) / Pi;
+
410  }
+
411 
+
412  return operands_and_partials.to_var(P);
+
413  }
+
414 
+
415  template <typename T_n, typename T_N, typename T_prob>
+ +
417  binomial_ccdf_log(const T_n& n, const T_N& N, const T_prob& theta) {
+
418 
+
419  static const char* function = "stan::prob::binomial_ccdf_log(%1%)";
+
420 
+ + + +
424  using stan::math::value_of;
+ + +
427 
+
428  // Ensure non-zero arguments lenghts
+
429  if (!(stan::length(n) && stan::length(N) && stan::length(theta)))
+
430  return 0.0;
+
431 
+
432  double P(0.0);
+
433 
+
434  // Validate arguments
+
435  if (!check_nonnegative(function, N, "Population size parameter", &P))
+
436  return P;
+
437  if (!check_finite(function, theta, "Probability parameter", &P))
+
438  return P;
+
439  if (!check_bounded(function, theta, 0.0, 1.0,
+
440  "Probability parameter", &P))
+
441  return P;
+
442  if (!(check_consistent_sizes(function, n, N, theta,
+
443  "Successes variable", "Population size parameter", "Probability parameter",
+
444  &P)))
+
445  return P;
+
446 
+
447  // Wrap arguments in vector views
+
448  VectorView<const T_n> n_vec(n);
+
449  VectorView<const T_N> N_vec(N);
+
450  VectorView<const T_prob> theta_vec(theta);
+
451  size_t size = max_size(n, N, theta);
+
452 
+
453  // Compute vectorized cdf_log and gradient
+
454  using stan::math::value_of;
+
455  using boost::math::ibeta;
+
456  using boost::math::ibeta_derivative;
+
457 
+
458  agrad::OperandsAndPartials<T_prob> operands_and_partials(theta);
+
459 
+
460  // Explicit return for extreme values
+
461  // The gradients are technically ill-defined, but treated as negative infinity
+
462  for (size_t i = 0; i < stan::length(n); i++) {
+
463  if (value_of(n_vec[i]) < 0)
+
464  return operands_and_partials.to_var(0.0);
+
465  }
+
466 
+
467  for (size_t i = 0; i < size; i++) {
+
468  // Explicit results for extreme values
+
469  // The gradients are technically ill-defined, but treated as zero
+
470  if (value_of(n_vec[i]) >= value_of(N_vec[i])) {
+
471  return operands_and_partials.to_var(stan::math::negative_infinity());
+
472  }
+
473  const double n_dbl = value_of(n_vec[i]);
+
474  const double N_dbl = value_of(N_vec[i]);
+
475  const double theta_dbl = value_of(theta_vec[i]);
+
476  const double Pi = 1.0 - ibeta(N_dbl - n_dbl, n_dbl + 1, 1 - theta_dbl);
+
477 
+
478  P += log(Pi);
+
479 
+ +
481  operands_and_partials.d_x1[i]
+
482  += ibeta_derivative(N_dbl - n_dbl, n_dbl + 1, 1 - theta_dbl) / Pi;
+
483  }
+
484 
+
485  return operands_and_partials.to_var(P);
+
486  }
+
487 
+
488 
+
489  template <class RNG>
+
490  inline int
+
491  binomial_rng(const int N,
+
492  const double theta,
+
493  RNG& rng) {
+
494  using boost::variate_generator;
+
495  using boost::binomial_distribution;
+
496 
+
497  static const char* function = "stan::prob::binomial_rng(%1%)";
+
498 
+ + + + +
503 
+
504  if (!check_nonnegative(function, N,
+
505  "Population size parameter"))
+
506  return 0;
+
507  if (!check_finite(function, theta,
+
508  "Probability parameter"))
+
509  return 0;
+
510  if (!check_less_or_equal(function, theta, 1.0,
+
511  "Probability parameter"))
+
512  return 0;
+
513  if (!check_greater_or_equal(function, theta, 0.0,
+
514  "Probability parameter"))
+
515  return 0;
+
516 
+
517  variate_generator<RNG&, binomial_distribution<> >
+
518  binomial_rng(rng, binomial_distribution<>(N, theta));
+
519  return binomial_rng();
+
520  }
+
521 
+
522  }
+
523 }
+
524 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/block_8hpp.html b/doc/api/html/block_8hpp.html new file mode 100644 index 00000000000..8b7a3e28a24 --- /dev/null +++ b/doc/api/html/block_8hpp.html @@ -0,0 +1,133 @@ + + + + + +Stan: src/stan/math/matrix/block.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
block.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::math
 Matrices and templated mathematical functions.
 
+ + + + + +

+Functions

template<typename T >
Eigen::Matrix< T,
+Eigen::Dynamic, Eigen::Dynamic > 
stan::math::block (const Eigen::Matrix< T, Eigen::Dynamic, Eigen::Dynamic > &m, size_t i, size_t j, size_t nrows, size_t ncols)
 Return a nrows x ncols submatrix starting at (i-1,j-1).
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/block_8hpp_source.html b/doc/api/html/block_8hpp_source.html new file mode 100644 index 00000000000..1a5ee033afb --- /dev/null +++ b/doc/api/html/block_8hpp_source.html @@ -0,0 +1,136 @@ + + + + + +Stan: src/stan/math/matrix/block.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
block.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MATH__MATRIX__BLOCK_HPP__
+
2 #define __STAN__MATH__MATRIX__BLOCK_HPP__
+
3 
+ + + +
7 
+
8 namespace stan {
+
9  namespace math {
+
10 
+
20  template <typename T>
+
21  inline
+
22  Eigen::Matrix<T,Eigen::Dynamic,Eigen::Dynamic>
+
23  block(const Eigen::Matrix<T,Eigen::Dynamic,Eigen::Dynamic>& m,
+
24  size_t i, size_t j, size_t nrows, size_t ncols) {
+
25  validate_row_index(m,i,"block");
+
26  validate_row_index(m,i+nrows-1,"block");
+
27  validate_column_index(m,j,"block");
+
28  validate_column_index(m,j+ncols-1,"block");
+
29  return m.block(i - 1,j - 1,nrows,ncols);
+
30  }
+
31 
+
32 
+
33 
+
34 
+
35 
+
36  }
+
37 }
+
38 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/boost_8dox.html b/doc/api/html/boost_8dox.html new file mode 100644 index 00000000000..f17068f7ccc --- /dev/null +++ b/doc/api/html/boost_8dox.html @@ -0,0 +1,115 @@ + + + + + +Stan: src/doxygen/boost.dox File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ +
+
+ +
+
src/doxygen/boost.dox File Reference
+
+
+ + + + + + + + +

+Namespaces

namespace  boost
 Reimplementing boost functionality.
 
namespace  boost::math
 Reimplmeneting boost functionality for stan::agrad::var and and bugs in classification of integer types.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/boost__fpclassify_8hpp.html b/doc/api/html/boost__fpclassify_8hpp.html new file mode 100644 index 00000000000..1a97769bb77 --- /dev/null +++ b/doc/api/html/boost__fpclassify_8hpp.html @@ -0,0 +1,147 @@ + + + + + +Stan: src/stan/agrad/rev/boost_fpclassify.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
boost_fpclassify.hpp File Reference
+
+
+
#include <boost/math/special_functions/fpclassify.hpp>
+#include <stan/agrad/rev.hpp>
+
+

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  boost
 Reimplementing boost functionality.
 
namespace  boost::math
 Reimplmeneting boost functionality for stan::agrad::var and and bugs in classification of integer types.
 
+ + + + + + + + + + + + + + + + + + + + + +

+Functions

template<>
int boost::math::fpclassify (const stan::agrad::var &v)
 Categorizes the given stan::agrad::var value.
 
template<>
bool boost::math::isfinite (const stan::agrad::var &v)
 Checks if the given number has finite value.
 
template<>
bool boost::math::isinf (const stan::agrad::var &v)
 Checks if the given number is infinite.
 
template<>
bool boost::math::isnan (const stan::agrad::var &v)
 Checks if the given number is NaN.
 
template<>
bool boost::math::isnormal (const stan::agrad::var &v)
 Checks if the given number is normal.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/boost__fpclassify_8hpp_source.html b/doc/api/html/boost__fpclassify_8hpp_source.html new file mode 100644 index 00000000000..4f7235a74dc --- /dev/null +++ b/doc/api/html/boost__fpclassify_8hpp_source.html @@ -0,0 +1,151 @@ + + + + + +Stan: src/stan/agrad/rev/boost_fpclassify.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
boost_fpclassify.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__REV__BOOST_FPCLASSIFY_HPP__
+
2 #define __STAN__AGRAD__REV__BOOST_FPCLASSIFY_HPP__
+
3 
+
4 #include <boost/math/special_functions/fpclassify.hpp>
+
5 #include <stan/agrad/rev.hpp>
+
6 
+
7 namespace boost {
+
8 
+
9  namespace math {
+
10 
+
22  template <>
+
23  inline
+
24  int fpclassify(const stan::agrad::var& v) {
+
25  return (boost::math::fpclassify)(v.val());
+
26  }
+
27 
+
37  template <>
+
38  inline
+
39  bool isfinite(const stan::agrad::var& v) {
+
40  return (boost::math::isfinite)(v.val());
+
41  }
+
42 
+
52  template <>
+
53  inline
+
54  bool isinf(const stan::agrad::var& v) {
+
55  return (boost::math::isinf)(v.val());
+
56  }
+
57 
+
67  template <>
+
68  inline
+
69  bool isnan(const stan::agrad::var& v) {
+
70  return (boost::math::isnan)(v.val());
+
71  }
+
72 
+
82  template <>
+
83  inline
+
84  bool isnormal(const stan::agrad::var& v) {
+
85  return (boost::math::isnormal)(v.val());
+
86  }
+
87 
+
88  }
+
89 }
+
90 #endif
+
91 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/calculate__chain_8hpp.html b/doc/api/html/calculate__chain_8hpp.html new file mode 100644 index 00000000000..349ca1f4772 --- /dev/null +++ b/doc/api/html/calculate__chain_8hpp.html @@ -0,0 +1,128 @@ + + + + + +Stan: src/stan/agrad/rev/calculate_chain.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
calculate_chain.hpp File Reference
+
+
+
#include <valarray>
+
+

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+ + + +

+Functions

double stan::agrad::calculate_chain (const double &x, const double &val)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/calculate__chain_8hpp_source.html b/doc/api/html/calculate__chain_8hpp_source.html new file mode 100644 index 00000000000..e9b9a1a95b8 --- /dev/null +++ b/doc/api/html/calculate__chain_8hpp_source.html @@ -0,0 +1,120 @@ + + + + + +Stan: src/stan/agrad/rev/calculate_chain.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
calculate_chain.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__REV__CALCULATE_CHAIN_HPP__
+
2 #define __STAN__AGRAD__REV__CALCULATE_CHAIN_HPP__
+
3 
+
4 #include <valarray>
+
5 
+
6 namespace stan {
+
7  namespace agrad {
+
8  inline double calculate_chain(const double& x, const double& val) {
+
9  return std::exp(x - val); // works out to inv_logit(x)
+
10  }
+
11  }
+
12 }
+
13 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/categorical_8hpp.html b/doc/api/html/categorical_8hpp.html new file mode 100644 index 00000000000..e2496f3ca90 --- /dev/null +++ b/doc/api/html/categorical_8hpp.html @@ -0,0 +1,152 @@ + + + + + +Stan: src/stan/prob/distributions/multivariate/discrete/categorical.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
categorical.hpp File Reference
+
+
+
#include <boost/random/uniform_01.hpp>
+#include <boost/random/variate_generator.hpp>
+#include <stan/math/error_handling.hpp>
+#include <stan/math/matrix_error_handling.hpp>
+#include <stan/math/functions/value_of.hpp>
+#include <stan/math/matrix/sum.hpp>
+#include <stan/prob/constants.hpp>
+#include <stan/prob/traits.hpp>
+
+

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::prob
 Templated probability distributions.
 
+ + + + + + + + + + + + + + + + +

+Functions

template<bool propto, typename T_prob >
boost::math::tools::promote_args
+< T_prob >::type 
stan::prob::categorical_log (int n, const Eigen::Matrix< T_prob, Eigen::Dynamic, 1 > &theta)
 
template<typename T_prob >
boost::math::tools::promote_args
+< T_prob >::type 
stan::prob::categorical_log (const typename Eigen::Matrix< T_prob, Eigen::Dynamic, 1 >::size_type n, const Eigen::Matrix< T_prob, Eigen::Dynamic, 1 > &theta)
 
template<bool propto, typename T_prob >
boost::math::tools::promote_args
+< T_prob >::type 
stan::prob::categorical_log (const std::vector< int > &ns, const Eigen::Matrix< T_prob, Eigen::Dynamic, 1 > &theta)
 
template<typename T_prob >
boost::math::tools::promote_args
+< T_prob >::type 
stan::prob::categorical_log (const std::vector< int > &ns, const Eigen::Matrix< T_prob, Eigen::Dynamic, 1 > &theta)
 
template<class RNG >
int stan::prob::categorical_rng (const Eigen::Matrix< double, Eigen::Dynamic, 1 > &theta, RNG &rng)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/categorical_8hpp_source.html b/doc/api/html/categorical_8hpp_source.html new file mode 100644 index 00000000000..191be94bc07 --- /dev/null +++ b/doc/api/html/categorical_8hpp_source.html @@ -0,0 +1,272 @@ + + + + + +Stan: src/stan/prob/distributions/multivariate/discrete/categorical.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
categorical.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__PROB__DISTRIBUTIONS__MULTIVARIATE__DISCRETE__CATEGORICAL_HPP__
+
2 #define __STAN__PROB__DISTRIBUTIONS__MULTIVARIATE__DISCRETE__CATEGORICAL_HPP__
+
3 
+
4 #include <boost/random/uniform_01.hpp>
+
5 #include <boost/random/variate_generator.hpp>
+
6 
+ + + +
10 #include <stan/math/matrix/sum.hpp>
+
11 #include <stan/prob/constants.hpp>
+
12 #include <stan/prob/traits.hpp>
+
13 
+
14 namespace stan {
+
15 
+
16  namespace prob {
+
17 
+
18  // Categorical(n|theta) [0 < n <= N; 0 <= theta[n] <= 1; SUM theta = 1]
+
19  template <bool propto,
+
20  typename T_prob>
+
21  typename boost::math::tools::promote_args<T_prob>::type
+ +
23  const Eigen::Matrix<T_prob,Eigen::Dynamic,1>& theta) {
+
24  static const char* function = "stan::prob::categorical_log(%1%)";
+
25 
+ + +
28  using boost::math::tools::promote_args;
+ +
30 
+
31  int lb = 1;
+
32 
+
33  double lp = 0.0;
+
34  if (!check_bounded(function, n, lb, theta.size(),
+
35  "Number of categories",
+
36  &lp))
+
37  return lp;
+
38 
+ +
40  Eigen::Matrix<double,Eigen::Dynamic,1> theta_dbl(theta.size());
+
41  for (int i = 0; i < theta_dbl.size(); ++i)
+
42  theta_dbl(i) = value_of(theta(i));
+
43  if (!check_simplex(function, theta,
+
44  "Probabilities parameter",
+
45  &lp))
+
46  return lp;
+
47  } else {
+
48  if (!check_simplex(function, theta,
+
49  "Probabilities parameter",
+
50  &lp))
+
51  return lp;
+
52  }
+
53 
+ +
55  return log(theta(n-1));
+
56  return 0.0;
+
57  }
+
58 
+
59  template <typename T_prob>
+
60  inline
+
61  typename boost::math::tools::promote_args<T_prob>::type
+ +
63  const Eigen::Matrix<T_prob,Eigen::Dynamic,1>& theta) {
+
64  return categorical_log<false>(n,theta);
+
65  }
+
66 
+
67 
+
68  // Categorical(n|theta) [0 < n <= N; 0 <= theta[n] <= 1; SUM theta = 1]
+
69  template <bool propto,
+
70  typename T_prob>
+
71  typename boost::math::tools::promote_args<T_prob>::type
+
72  categorical_log(const std::vector<int>& ns,
+
73  const Eigen::Matrix<T_prob,Eigen::Dynamic,1>& theta) {
+
74  static const char* function = "stan::prob::categorical_log(%1%)";
+
75 
+
76  using boost::math::tools::promote_args;
+ + +
79  using stan::math::sum;
+ +
81 
+
82  int lb = 1;
+
83 
+
84  double lp = 0.0;
+
85  for (size_t i = 0; i < ns.size(); ++i)
+
86  if (!check_bounded(function, ns[i], lb, theta.size(),
+
87  "element of outcome array",
+
88  &lp))
+
89  return lp;
+
90 
+ +
92  Eigen::Matrix<double,Eigen::Dynamic,1> theta_dbl(theta.size());
+
93  for (int i = 0; i < theta_dbl.size(); ++i)
+
94  theta_dbl(i) = value_of(theta(i));
+
95  if (!check_simplex(function, theta,
+
96  "Probabilities parameter",
+
97  &lp))
+
98  return lp;
+
99  } else {
+
100  if (!check_simplex(function, theta,
+
101  "Probabilities parameter",
+
102  &lp))
+
103  return lp;
+
104  }
+
105 
+ +
107  return 0.0;
+
108 
+
109  if (ns.size() == 0)
+
110  return 0.0;
+
111 
+
112  Eigen::Matrix<T_prob,Eigen::Dynamic,1> log_theta(theta.size());
+
113  for (int i = 0; i < theta.size(); ++i)
+
114  log_theta(i) = log(theta(i));
+
115 
+
116  Eigen::Matrix<typename boost::math::tools::promote_args<T_prob>::type,
+
117  Eigen::Dynamic,1> log_theta_ns(ns.size());
+
118  for (size_t i = 0; i < ns.size(); ++i)
+
119  log_theta_ns(i) = log_theta(ns[i] - 1);
+
120 
+
121  return sum(log_theta_ns);
+
122  }
+
123 
+
124 
+
125  template <typename T_prob>
+
126  inline
+
127  typename boost::math::tools::promote_args<T_prob>::type
+
128  categorical_log(const std::vector<int>& ns,
+
129  const Eigen::Matrix<T_prob,Eigen::Dynamic,1>& theta) {
+
130  return categorical_log<false>(ns,theta);
+
131  }
+
132 
+
133  template <class RNG>
+
134  inline int
+
135  categorical_rng(const Eigen::Matrix<double,Eigen::Dynamic,1>& theta,
+
136  RNG& rng) {
+
137  using boost::variate_generator;
+
138  using boost::uniform_01;
+ +
140 
+
141  static const char* function = "stan::prob::categorical_rng(%1%)";
+
142 
+
143  check_simplex(function, theta,
+
144  "Probabilities parameter");
+
145 
+
146  variate_generator<RNG&, uniform_01<> >
+
147  uniform01_rng(rng, uniform_01<>());
+
148 
+
149  Eigen::VectorXd index(theta.rows());
+
150  index.setZero();
+
151 
+
152  for(int i = 0; i < theta.rows(); i++) {
+
153  for(int j = i; j < theta.rows(); j++)
+
154  index(j) += theta(i,0);
+
155  }
+
156 
+
157  double c = uniform01_rng();
+
158  int b = 0;
+
159  while(c > index(b,0))
+
160  b++;
+
161  return b + 1;
+
162  }
+
163  }
+
164 }
+
165 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/categorical__argument_8hpp.html b/doc/api/html/categorical__argument_8hpp.html new file mode 100644 index 00000000000..5d1afa23d67 --- /dev/null +++ b/doc/api/html/categorical__argument_8hpp.html @@ -0,0 +1,129 @@ + + + + + +Stan: src/stan/gm/arguments/categorical_argument.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
categorical_argument.hpp File Reference
+
+
+
#include <vector>
+#include <stan/gm/arguments/argument.hpp>
+
+

Go to the source code of this file.

+ + + + +

+Classes

class  stan::gm::categorical_argument
 
+ + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::gm
 Directed graphical model compiler.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/categorical__argument_8hpp_source.html b/doc/api/html/categorical__argument_8hpp_source.html new file mode 100644 index 00000000000..a04eaf69d81 --- /dev/null +++ b/doc/api/html/categorical__argument_8hpp_source.html @@ -0,0 +1,268 @@ + + + + + +Stan: src/stan/gm/arguments/categorical_argument.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
categorical_argument.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__GM__ARGUMENTS__CATEGORY__ARGUMENT__BETA__
+
2 #define __STAN__GM__ARGUMENTS__CATEGORY__ARGUMENT__BETA__
+
3 
+
4 #include <vector>
+ +
6 
+
7 namespace stan {
+
8 
+
9  namespace gm {
+
10 
+ +
12 
+
13  public:
+
14 
+ +
16  for (std::vector<argument*>::iterator it = _subarguments.begin();
+
17  it != _subarguments.end(); ++it) {
+
18  delete *it;
+
19  }
+
20 
+
21  _subarguments.clear();
+
22  }
+
23 
+
24  void print(std::ostream* s, const int depth, const std::string prefix) {
+
25  if (!s)
+
26  return;
+
27  std::string indent(compute_indent(depth), ' ');
+
28  *s << prefix << indent << _name << std::endl;
+
29 
+
30  for (std::vector<argument*>::iterator it = _subarguments.begin();
+
31  it != _subarguments.end(); ++it)
+
32  (*it)->print(s, depth + 1, prefix);
+
33  }
+
34 
+
35  void print_help(std::ostream* s, const int depth, const bool recurse) {
+
36 
+
37  if (!s)
+
38  return;
+
39 
+
40  std::string indent(indent_width * depth, ' ');
+
41  std::string subindent(indent_width, ' ');
+
42 
+
43  *s << indent << _name << std::endl;
+
44  *s << indent << subindent << _description << std::endl;
+
45  if (_subarguments.size() > 0) {
+
46  *s << indent << subindent << "Valid subarguments:";
+
47 
+
48  std::vector<argument*>::iterator it = _subarguments.begin();
+
49  *s << " " << (*it)->name();
+
50  ++it;
+
51 
+
52  for (; it != _subarguments.end(); ++it)
+
53  *s << ", " << (*it)->name();
+
54  *s << std::endl << std::endl;
+
55 
+
56  if (recurse) {
+
57  for (std::vector<argument*>::iterator it = _subarguments.begin();
+
58  it != _subarguments.end(); ++it)
+
59  (*it)->print_help(s, depth + 1, true);
+
60  }
+
61  }
+
62  else {
+
63  *s << std::endl;
+
64  }
+
65 
+
66  }
+
67 
+
68  bool parse_args(std::vector<std::string>& args, std::ostream* out,
+
69  std::ostream* err, bool& help_flag) {
+
70 
+
71  bool good_arg = true;
+
72  bool valid_arg = true;
+
73 
+
74  while(good_arg) {
+
75  if (args.size() == 0)
+
76  return valid_arg;
+
77 
+
78  good_arg = false;
+
79 
+
80  std::string cat_name = args.back();
+
81 
+
82  if (cat_name == "help") {
+
83  print_help(out, 0, false);
+
84  help_flag |= true;
+
85  args.clear();
+
86  return true;
+
87  } else if (cat_name == "help-all") {
+
88  print_help(out, 0, true);
+
89  help_flag |= true;
+
90  args.clear();
+
91  return true;
+
92  }
+
93 
+
94  std::string val_name;
+
95  std::string val;
+
96  split_arg(cat_name, val_name, val);
+
97 
+
98  if (_subarguments.size() == 0)
+
99  valid_arg = true;
+
100  for (std::vector<argument*>::iterator it = _subarguments.begin();
+
101  it != _subarguments.end(); ++it) {
+
102  if ( (*it)->name() == cat_name) {
+
103  args.pop_back();
+
104  valid_arg &= (*it)->parse_args(args, out, err, help_flag);
+
105  good_arg = true;
+
106  break;
+
107  } else if ( (*it)->name() == val_name ) {
+
108  valid_arg &= (*it)->parse_args(args, out, err, help_flag);
+
109  good_arg = true;
+
110  break;
+
111  } else {
+
112  good_arg = false;
+
113  }
+
114  }
+
115  }
+
116  return valid_arg;
+
117  };
+
118 
+
119  virtual void probe_args(argument* base_arg, std::stringstream& s) {
+
120  for (std::vector<argument*>::iterator it = _subarguments.begin();
+
121  it != _subarguments.end(); ++it) {
+
122  (*it)->probe_args(base_arg, s);
+
123  }
+
124  }
+
125 
+
126  void find_arg(std::string name,
+
127  std::string prefix,
+
128  std::vector<std::string>& valid_paths) {
+
129 
+
130  argument::find_arg(name, prefix, valid_paths);
+
131 
+
132  prefix += _name + " ";
+
133  for (std::vector<argument*>::iterator it = _subarguments.begin();
+
134  it != _subarguments.end(); ++it)
+
135  (*it)->find_arg(name, prefix, valid_paths);
+
136 
+
137  }
+
138 
+
139  std::vector<argument*>& subarguments() {
+
140  return _subarguments;
+
141  }
+
142 
+
143  argument* arg(const std::string name) {
+
144  for (std::vector<argument*>::iterator it = _subarguments.begin();
+
145  it != _subarguments.end(); ++it)
+
146  if ( name == (*it)->name() )
+
147  return (*it);
+
148  return 0;
+
149  }
+
150 
+
151  protected:
+
152 
+
153  std::vector<argument*> _subarguments;
+
154 
+
155  };
+
156 
+
157  } // gm
+
158 
+
159 } // stan
+
160 
+
161 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/categorical__logit_8hpp.html b/doc/api/html/categorical__logit_8hpp.html new file mode 100644 index 00000000000..61d9e851c70 --- /dev/null +++ b/doc/api/html/categorical__logit_8hpp.html @@ -0,0 +1,149 @@ + + + + + +Stan: src/stan/prob/distributions/multivariate/discrete/categorical_logit.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
categorical_logit.hpp File Reference
+
+
+
#include <vector>
+#include <boost/math/tools/promotion.hpp>
+#include <stan/math/error_handling.hpp>
+#include <stan/math/matrix/log_softmax.hpp>
+#include <stan/math/functions/log_sum_exp.hpp>
+#include <stan/math/matrix/log_sum_exp.hpp>
+#include <stan/math/matrix/sum.hpp>
+#include <stan/prob/traits.hpp>
+
+

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::prob
 Templated probability distributions.
 
+ + + + + + + + + + + + + +

+Functions

template<bool propto, typename T_prob >
boost::math::tools::promote_args
+< T_prob >::type 
stan::prob::categorical_logit_log (int n, const Eigen::Matrix< T_prob, Eigen::Dynamic, 1 > &beta)
 
template<typename T_prob >
boost::math::tools::promote_args
+< T_prob >::type 
stan::prob::categorical_logit_log (int n, const Eigen::Matrix< T_prob, Eigen::Dynamic, 1 > &beta)
 
template<bool propto, typename T_prob >
boost::math::tools::promote_args
+< T_prob >::type 
stan::prob::categorical_logit_log (const std::vector< int > &ns, const Eigen::Matrix< T_prob, Eigen::Dynamic, 1 > &beta)
 
template<typename T_prob >
boost::math::tools::promote_args
+< T_prob >::type 
stan::prob::categorical_logit_log (const std::vector< int > &ns, const Eigen::Matrix< T_prob, Eigen::Dynamic, 1 > &beta)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/categorical__logit_8hpp_source.html b/doc/api/html/categorical__logit_8hpp_source.html new file mode 100644 index 00000000000..777d63317ac --- /dev/null +++ b/doc/api/html/categorical__logit_8hpp_source.html @@ -0,0 +1,210 @@ + + + + + +Stan: src/stan/prob/distributions/multivariate/discrete/categorical_logit.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
categorical_logit.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__PROB__DISTRIBUTIONS__MULTIVARIATE__DISCRETE__CATEGORICAL_LOGIT_LOG_HPP__
+
2 #define __STAN__PROB__DISTRIBUTIONS__MULTIVARIATE__DISCRETE__CATEGORICAL_LOGIT_LOG_HPP__
+
3 
+
4 #include <vector>
+
5 #include <boost/math/tools/promotion.hpp>
+ + + + +
10 #include <stan/math/matrix/sum.hpp>
+
11 #include <stan/prob/traits.hpp>
+
12 
+
13 namespace stan {
+
14 
+
15  namespace prob {
+
16 
+
17  // CategoricalLog(n|theta) [0 < n <= N, theta unconstrained], no checking
+
18  template <bool propto,
+
19  typename T_prob>
+
20  typename boost::math::tools::promote_args<T_prob>::type
+ +
22  const Eigen::Matrix<T_prob,Eigen::Dynamic,1>& beta) {
+
23  static const char* function = "stan::prob::categorical_logit_log(%1%)";
+
24 
+ + + +
28 
+
29  double lp = 0.0;
+
30  if (!check_bounded(function, n, 1, beta.size(),
+
31  "categorical outcome out of support",
+
32  &lp))
+
33  return lp;
+
34 
+
35  if (!check_finite(function, beta, "log odds parameter", &lp))
+
36  return lp;
+
37 
+ +
39  return 0.0;
+
40 
+
41  // FIXME: wasteful vs. creating term (n-1) if not vectorized
+
42  return beta(n-1) - log_sum_exp(beta); // == log_softmax(beta)(n-1);
+
43  }
+
44 
+
45  template <typename T_prob>
+
46  inline
+
47  typename boost::math::tools::promote_args<T_prob>::type
+ +
49  const Eigen::Matrix<T_prob,Eigen::Dynamic,1>& beta) {
+
50  return categorical_logit_log<false>(n,beta);
+
51  }
+
52 
+
53  template <bool propto,
+
54  typename T_prob>
+
55  typename boost::math::tools::promote_args<T_prob>::type
+
56  categorical_logit_log(const std::vector<int>& ns,
+
57  const Eigen::Matrix<T_prob,Eigen::Dynamic,1>& beta) {
+
58  static const char* function = "stan::prob::categorical_logit_log(%1%)";
+
59 
+ + + +
63  using stan::math::sum;
+
64 
+
65  double lp = 0.0;
+
66  for (size_t k = 0; k < ns.size(); ++k)
+
67  if (!check_bounded(function, ns[k], 1, beta.size(),
+
68  "categorical outcome out of support",
+
69  &lp))
+
70  return lp;
+
71 
+
72  if (!check_finite(function, beta, "log odds parameter", &lp))
+
73  return lp;
+
74 
+ +
76  return 0.0;
+
77 
+
78  if (ns.size() == 0)
+
79  return 0.0;
+
80 
+
81  Eigen::Matrix<T_prob,Eigen::Dynamic,1> log_softmax_beta
+
82  = log_softmax(beta);
+
83 
+
84  // FIXME: replace with more efficient sum()
+
85  Eigen::Matrix<typename boost::math::tools::promote_args<T_prob>::type,
+
86  Eigen::Dynamic,1> results(ns.size());
+
87  for (size_t i = 0; i < ns.size(); ++i)
+
88  results[i] = log_softmax_beta(ns[i] - 1);
+
89  return sum(results);
+
90  }
+
91 
+
92  template <typename T_prob>
+
93  inline
+
94  typename boost::math::tools::promote_args<T_prob>::type
+
95  categorical_logit_log(const std::vector<int>& ns,
+
96  const Eigen::Matrix<T_prob,Eigen::Dynamic,1>& beta) {
+
97  return categorical_logit_log<false>(ns,beta);
+
98  }
+
99 
+
100 
+
101  }
+
102 }
+
103 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/cauchy_8hpp.html b/doc/api/html/cauchy_8hpp.html new file mode 100644 index 00000000000..69b6f03a376 --- /dev/null +++ b/doc/api/html/cauchy_8hpp.html @@ -0,0 +1,159 @@ + + + + + +Stan: src/stan/prob/distributions/univariate/continuous/cauchy.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
cauchy.hpp File Reference
+
+
+
#include <boost/random/cauchy_distribution.hpp>
+#include <boost/random/variate_generator.hpp>
+#include <stan/agrad/partials_vari.hpp>
+#include <stan/prob/traits.hpp>
+#include <stan/math/error_handling.hpp>
+#include <stan/math/constants.hpp>
+#include <stan/math/functions/square.hpp>
+#include <stan/math/functions/value_of.hpp>
+#include <stan/prob/constants.hpp>
+
+

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::prob
 Templated probability distributions.
 
+ + + + + + + + + + + + + + + + + + + + + +

+Functions

template<bool propto, typename T_y , typename T_loc , typename T_scale >
return_type< T_y, T_loc,
+T_scale >::type 
stan::prob::cauchy_log (const T_y &y, const T_loc &mu, const T_scale &sigma)
 The log of the Cauchy density for the specified scalar(s) given the specified location parameter(s) and scale parameter(s).
 
template<typename T_y , typename T_loc , typename T_scale >
return_type< T_y, T_loc,
+T_scale >::type 
stan::prob::cauchy_log (const T_y &y, const T_loc &mu, const T_scale &sigma)
 
template<typename T_y , typename T_loc , typename T_scale >
return_type< T_y, T_loc,
+T_scale >::type 
stan::prob::cauchy_cdf (const T_y &y, const T_loc &mu, const T_scale &sigma)
 Calculates the cauchy cumulative distribution function for the given variate, location, and scale.
 
template<typename T_y , typename T_loc , typename T_scale >
return_type< T_y, T_loc,
+T_scale >::type 
stan::prob::cauchy_cdf_log (const T_y &y, const T_loc &mu, const T_scale &sigma)
 
template<typename T_y , typename T_loc , typename T_scale >
return_type< T_y, T_loc,
+T_scale >::type 
stan::prob::cauchy_ccdf_log (const T_y &y, const T_loc &mu, const T_scale &sigma)
 
template<class RNG >
double stan::prob::cauchy_rng (const double mu, const double sigma, RNG &rng)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/cauchy_8hpp_source.html b/doc/api/html/cauchy_8hpp_source.html new file mode 100644 index 00000000000..1b43066a2ea --- /dev/null +++ b/doc/api/html/cauchy_8hpp_source.html @@ -0,0 +1,508 @@ + + + + + +Stan: src/stan/prob/distributions/univariate/continuous/cauchy.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
cauchy.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__PROB__DISTRIBUTIONS__UNIVARIATE__CAUCHY_HPP__
+
2 #define __STAN__PROB__DISTRIBUTIONS__UNIVARIATE__CAUCHY_HPP__
+
3 
+
4 #include <boost/random/cauchy_distribution.hpp>
+
5 #include <boost/random/variate_generator.hpp>
+
6 
+ +
8 #include <stan/prob/traits.hpp>
+ +
10 #include <stan/math/constants.hpp>
+ + +
13 #include <stan/prob/constants.hpp>
+
14 
+
15 namespace stan {
+
16 
+
17  namespace prob {
+
18 
+
37  template <bool propto,
+
38  typename T_y, typename T_loc, typename T_scale>
+
39  typename return_type<T_y,T_loc,T_scale>::type
+
40  cauchy_log(const T_y& y, const T_loc& mu, const T_scale& sigma) {
+
41  static const char* function = "stan::prob::cauchy_log(%1%)";
+
42 
+ + + + + + +
49 
+
50  // check if any vectors are zero length
+
51  if (!(stan::length(y)
+
52  && stan::length(mu)
+
53  && stan::length(sigma)))
+
54  return 0.0;
+
55 
+
56  // set up return value accumulator
+
57  double logp(0.0);
+
58 
+
59  // validate args (here done over var, which should be OK)
+
60  if (!check_not_nan(function, y, "Random variable", &logp))
+
61  return logp;
+
62  if (!check_finite(function, mu, "Location parameter", &logp))
+
63  return logp;
+
64  if (!check_positive(function, sigma, "Scale parameter", &logp))
+
65  return logp;
+
66  if (!check_finite(function, sigma, "Scale parameter", &logp))
+
67  return logp;
+
68  if (!(check_consistent_sizes(function,
+
69  y,mu,sigma,
+
70  "Random variable","Location parameter",
+
71  "Scale parameter",
+
72  &logp)))
+
73  return logp;
+
74 
+
75  // check if no variables are involved and prop-to
+ +
77  return 0.0;
+
78 
+
79  using stan::math::log1p;
+
80  using stan::math::square;
+
81 
+
82  // set up template expressions wrapping scalars into vector views
+
83  VectorView<const T_y> y_vec(y);
+
84  VectorView<const T_loc> mu_vec(mu);
+
85  VectorView<const T_scale> sigma_vec(sigma);
+
86  size_t N = max_size(y, mu, sigma);
+
87 
+ + + +
91  is_vector<T_scale>::value> log_sigma(length(sigma));
+
92  for (size_t i = 0; i < length(sigma); i++) {
+
93  const double sigma_dbl = value_of(sigma_vec[i]);
+
94  inv_sigma[i] = 1.0 / sigma_dbl;
+
95  sigma_squared[i] = sigma_dbl * sigma_dbl;
+ +
97  log_sigma[i] = log(sigma_dbl);
+
98  }
+
99  }
+
100 
+
101  agrad::OperandsAndPartials<T_y, T_loc, T_scale> operands_and_partials(y, mu, sigma);
+
102 
+
103  for (size_t n = 0; n < N; n++) {
+
104  // pull out values of arguments
+
105  const double y_dbl = value_of(y_vec[n]);
+
106  const double mu_dbl = value_of(mu_vec[n]);
+
107 
+
108  // reusable subexpression values
+
109  const double y_minus_mu
+
110  = y_dbl - mu_dbl;
+
111  const double y_minus_mu_squared
+
112  = y_minus_mu * y_minus_mu;
+
113  const double y_minus_mu_over_sigma
+
114  = y_minus_mu * inv_sigma[n];
+
115  const double y_minus_mu_over_sigma_squared
+
116  = y_minus_mu_over_sigma * y_minus_mu_over_sigma;
+
117 
+
118  // log probability
+ +
120  logp += NEG_LOG_PI;
+ +
122  logp -= log_sigma[n];
+ +
124  logp -= log1p(y_minus_mu_over_sigma_squared);
+
125 
+
126  // gradients
+ +
128  operands_and_partials.d_x1[n] -= 2 * y_minus_mu / (sigma_squared[n] + y_minus_mu_squared);
+ +
130  operands_and_partials.d_x2[n] += 2 * y_minus_mu / (sigma_squared[n] + y_minus_mu_squared);
+ +
132  operands_and_partials.d_x3[n] += (y_minus_mu_squared - sigma_squared[n]) * inv_sigma[n] / (sigma_squared[n] + y_minus_mu_squared);
+
133  }
+
134  return operands_and_partials.to_var(logp);
+
135  }
+
136 
+
137  template <typename T_y, typename T_loc, typename T_scale>
+
138  inline
+ +
140  cauchy_log(const T_y& y, const T_loc& mu, const T_scale& sigma) {
+
141  return cauchy_log<false>(y,mu,sigma);
+
142  }
+
143 
+
144 
+
160  template <typename T_y, typename T_loc, typename T_scale>
+ +
162  cauchy_cdf(const T_y& y, const T_loc& mu, const T_scale& sigma) {
+
163 
+
164  // Size checks
+
165  if ( !( stan::length(y) && stan::length(mu)
+
166  && stan::length(sigma) ) )
+
167  return 1.0;
+
168 
+
169  static const char* function = "stan::prob::cauchy_cdf(%1%)";
+
170 
+ + + + +
175  using boost::math::tools::promote_args;
+
176  using stan::math::value_of;
+
177 
+
178  double P(1.0);
+
179 
+
180  if(!check_not_nan(function, y, "Random variable", &P))
+
181  return P;
+
182  if(!check_finite(function, mu, "Location parameter", &P))
+
183  return P;
+
184  if(!check_finite(function, sigma, "Scale parameter", &P))
+
185  return P;
+
186  if(!check_positive(function, sigma, "Scale parameter", &P))
+
187  return P;
+
188  if (!(check_consistent_sizes(function, y, mu, sigma,
+
189  "Random variable", "Location parameter",
+
190  "Scale Parameter",
+
191  &P)))
+
192  return P;
+
193 
+
194  // Wrap arguments in vectors
+
195  VectorView<const T_y> y_vec(y);
+
196  VectorView<const T_loc> mu_vec(mu);
+
197  VectorView<const T_scale> sigma_vec(sigma);
+
198  size_t N = max_size(y, mu, sigma);
+
199 
+ +
201  operands_and_partials(y, mu, sigma);
+
202 
+
203  // Explicit return for extreme values
+
204  // The gradients are technically ill-defined, but treated as zero
+
205  for (size_t i = 0; i < stan::length(y); i++) {
+
206  if (value_of(y_vec[i]) == -std::numeric_limits<double>::infinity())
+
207  return operands_and_partials.to_var(0.0);
+
208  }
+
209 
+
210  // Compute CDF and its gradients
+
211  using std::atan;
+
212  using stan::math::pi;
+
213 
+
214  // Compute vectorized CDF and gradient
+
215  for (size_t n = 0; n < N; n++) {
+
216 
+
217  // Explicit results for extreme values
+
218  // The gradients are technically ill-defined, but treated as zero
+
219  if (value_of(y_vec[n]) == std::numeric_limits<double>::infinity()) {
+
220  continue;
+
221  }
+
222 
+
223  // Pull out values
+
224  const double y_dbl = value_of(y_vec[n]);
+
225  const double mu_dbl = value_of(mu_vec[n]);
+
226  const double sigma_inv_dbl = 1.0 / value_of(sigma_vec[n]);
+
227 
+
228  const double z = (y_dbl - mu_dbl) * sigma_inv_dbl;
+
229 
+
230  // Compute
+
231  const double Pn = atan(z) / pi() + 0.5;
+
232 
+
233  P *= Pn;
+
234 
+ +
236  operands_and_partials.d_x1[n]
+
237  += sigma_inv_dbl / (pi() * (1.0 + z * z) * Pn);
+ +
239  operands_and_partials.d_x2[n]
+
240  += - sigma_inv_dbl / (pi() * (1.0 + z * z) * Pn);
+ +
242  operands_and_partials.d_x3[n]
+
243  += - z * sigma_inv_dbl / (pi() * (1.0 + z * z) * Pn);
+
244 
+
245  }
+
246 
+ +
248  for(size_t n = 0; n < stan::length(y); ++n)
+
249  operands_and_partials.d_x1[n] *= P;
+
250  }
+ +
252  for(size_t n = 0; n < stan::length(mu); ++n)
+
253  operands_and_partials.d_x2[n] *= P;
+
254  }
+ +
256  for(size_t n = 0; n < stan::length(sigma); ++n)
+
257  operands_and_partials.d_x3[n] *= P;
+
258  }
+
259 
+
260  return operands_and_partials.to_var(P);
+
261  }
+
262 
+
263  template <typename T_y, typename T_loc, typename T_scale>
+ +
265  cauchy_cdf_log(const T_y& y, const T_loc& mu, const T_scale& sigma) {
+
266 
+
267  // Size checks
+
268  if ( !( stan::length(y) && stan::length(mu)
+
269  && stan::length(sigma) ) )
+
270  return 0.0;
+
271 
+
272  static const char* function = "stan::prob::cauchy_cdf(%1%)";
+
273 
+ + + + +
278  using boost::math::tools::promote_args;
+
279  using stan::math::value_of;
+
280 
+
281  double cdf_log(0.0);
+
282 
+
283  if(!check_not_nan(function, y, "Random variable", &cdf_log))
+
284  return cdf_log;
+
285  if(!check_finite(function, mu, "Location parameter", &cdf_log))
+
286  return cdf_log;
+
287  if(!check_finite(function, sigma, "Scale parameter", &cdf_log))
+
288  return cdf_log;
+
289  if(!check_positive(function, sigma, "Scale parameter", &cdf_log))
+
290  return cdf_log;
+
291  if (!(check_consistent_sizes(function, y, mu, sigma,
+
292  "Random variable", "Location parameter",
+
293  "Scale Parameter", &cdf_log)))
+
294  return cdf_log;
+
295 
+
296  // Wrap arguments in vectors
+
297  VectorView<const T_y> y_vec(y);
+
298  VectorView<const T_loc> mu_vec(mu);
+
299  VectorView<const T_scale> sigma_vec(sigma);
+
300  size_t N = max_size(y, mu, sigma);
+
301 
+ +
303  operands_and_partials(y, mu, sigma);
+
304 
+
305  // Compute CDFLog and its gradients
+
306  using std::atan;
+
307  using stan::math::pi;
+
308 
+
309  // Compute vectorized CDF and gradient
+
310  for (size_t n = 0; n < N; n++) {
+
311 
+
312  // Pull out values
+
313  const double y_dbl = value_of(y_vec[n]);
+
314  const double mu_dbl = value_of(mu_vec[n]);
+
315  const double sigma_inv_dbl = 1.0 / value_of(sigma_vec[n]);
+
316  const double sigma_dbl = value_of(sigma_vec[n]);
+
317 
+
318  const double z = (y_dbl - mu_dbl) * sigma_inv_dbl;
+
319 
+
320  // Compute
+
321  const double Pn = atan(z) / pi() + 0.5;
+
322  cdf_log += log(Pn);
+
323 
+
324  const double rep_deriv = 1.0 / (pi() * Pn
+
325  * (z * z * sigma_dbl + sigma_dbl));
+ +
327  operands_and_partials.d_x1[n] += rep_deriv;
+ +
329  operands_and_partials.d_x2[n] -= rep_deriv;
+ +
331  operands_and_partials.d_x3[n] -= rep_deriv * z;
+
332  }
+
333  return operands_and_partials.to_var(cdf_log);
+
334  }
+
335 
+
336  template <typename T_y, typename T_loc, typename T_scale>
+ +
338  cauchy_ccdf_log(const T_y& y, const T_loc& mu, const T_scale& sigma) {
+
339 
+
340  // Size checks
+
341  if ( !( stan::length(y) && stan::length(mu)
+
342  && stan::length(sigma) ) )
+
343  return 0.0;
+
344 
+
345  static const char* function = "stan::prob::cauchy_cdf(%1%)";
+
346 
+ + + + +
351  using boost::math::tools::promote_args;
+
352  using stan::math::value_of;
+
353 
+
354  double ccdf_log(0.0);
+
355 
+
356  if(!check_not_nan(function, y, "Random variable", &ccdf_log))
+
357  return ccdf_log;
+
358  if(!check_finite(function, mu, "Location parameter", &ccdf_log))
+
359  return ccdf_log;
+
360  if(!check_finite(function, sigma, "Scale parameter", &ccdf_log))
+
361  return ccdf_log;
+
362  if(!check_positive(function, sigma, "Scale parameter", &ccdf_log))
+
363  return ccdf_log;
+
364  if (!(check_consistent_sizes(function, y, mu, sigma,
+
365  "Random variable", "Location parameter",
+
366  "Scale Parameter", &ccdf_log)))
+
367  return ccdf_log;
+
368 
+
369  // Wrap arguments in vectors
+
370  VectorView<const T_y> y_vec(y);
+
371  VectorView<const T_loc> mu_vec(mu);
+
372  VectorView<const T_scale> sigma_vec(sigma);
+
373  size_t N = max_size(y, mu, sigma);
+
374 
+ +
376  operands_and_partials(y, mu, sigma);
+
377 
+
378  // Compute CDFLog and its gradients
+
379  using std::atan;
+
380  using stan::math::pi;
+
381 
+
382  // Compute vectorized CDF and gradient
+
383  for (size_t n = 0; n < N; n++) {
+
384 
+
385  // Pull out values
+
386  const double y_dbl = value_of(y_vec[n]);
+
387  const double mu_dbl = value_of(mu_vec[n]);
+
388  const double sigma_inv_dbl = 1.0 / value_of(sigma_vec[n]);
+
389  const double sigma_dbl = value_of(sigma_vec[n]);
+
390  const double z = (y_dbl - mu_dbl) * sigma_inv_dbl;
+
391 
+
392  // Compute
+
393  const double Pn = 0.5 - atan(z) / pi();
+
394  ccdf_log += log(Pn);
+
395 
+
396  const double rep_deriv = 1.0 / (Pn * pi()
+
397  * (z * z * sigma_dbl + sigma_dbl));
+ +
399  operands_and_partials.d_x1[n] -= rep_deriv;
+ +
401  operands_and_partials.d_x2[n] += rep_deriv;
+ +
403  operands_and_partials.d_x3[n] += rep_deriv * z;
+
404  }
+
405  return operands_and_partials.to_var(ccdf_log);
+
406  }
+
407 
+
408  template <class RNG>
+
409  inline double
+
410  cauchy_rng(const double mu,
+
411  const double sigma,
+
412  RNG& rng) {
+
413  using boost::variate_generator;
+
414  using boost::random::cauchy_distribution;
+
415 
+
416  static const char* function = "stan::prob::cauchy_rng(%1%)";
+
417 
+ + +
420 
+
421  if (!check_finite(function, mu, "Location parameter"))
+
422  return 0;
+
423  if (!check_positive(function, sigma, "Scale parameter"))
+
424  return 0;
+
425  if (!check_finite(function, sigma, "Scale parameter"))
+
426  return 0;
+
427 
+
428  variate_generator<RNG&, cauchy_distribution<> >
+
429  cauchy_rng(rng, cauchy_distribution<>(mu, sigma));
+
430  return cauchy_rng();
+
431  }
+
432  }
+
433 }
+
434 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/chainable_8hpp.html b/doc/api/html/chainable_8hpp.html new file mode 100644 index 00000000000..7787d3a8ed3 --- /dev/null +++ b/doc/api/html/chainable_8hpp.html @@ -0,0 +1,140 @@ + + + + + +Stan: src/stan/agrad/rev/chainable.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
chainable.hpp File Reference
+
+
+
#include <vector>
+#include <stan/agrad/rev/var_stack.hpp>
+
+

Go to the source code of this file.

+ + + + + +

+Classes

class  stan::agrad::chainable
 Abstract base class for variable implementations that handles memory management and applying the chain rule. More...
 
+ + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+ + + + + + + +

+Functions

static void stan::agrad::set_zero_all_adjoints ()
 Reset all adjoint values in the stack to zero.
 
static void stan::agrad::grad (chainable *vi)
 Compute the gradient for all variables starting from the specified root variable implementation.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/chainable_8hpp_source.html b/doc/api/html/chainable_8hpp_source.html new file mode 100644 index 00000000000..d8058aaf155 --- /dev/null +++ b/doc/api/html/chainable_8hpp_source.html @@ -0,0 +1,165 @@ + + + + + +Stan: src/stan/agrad/rev/chainable.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
chainable.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__REV__CHAINABLE_HPP__
+
2 #define __STAN__AGRAD__REV__CHAINABLE_HPP__
+
3 
+
4 #include <vector>
+ +
6 
+
7 namespace stan {
+
8  namespace agrad {
+
9 
+
14  class chainable {
+
15 
+
16  public:
+
17 
+
22  chainable() { }
+
23 
+
28  virtual ~chainable() {
+
29  // handled automatically
+
30  }
+
31 
+
37  virtual void chain() {
+
38  }
+
39 
+
44  virtual void init_dependent() {
+
45  }
+
46 
+
51  virtual void set_zero_adjoint() {
+
52  }
+
53 
+
63  static inline void* operator new(size_t nbytes) {
+
64  return memalloc_.alloc(nbytes);
+
65  }
+
66 
+
77  static inline void operator delete(void* /* ignore arg */) {
+
78  /* no op */
+
79  }
+
80  };
+
81 
+
82 
+
83 
+
87  static void set_zero_all_adjoints() {
+
88  for (size_t i = 0; i < var_stack_.size(); ++i)
+
89  var_stack_[i]->set_zero_adjoint();
+
90  for (size_t i = 0; i < var_nochain_stack_.size(); ++i)
+
91  var_nochain_stack_[i]->set_zero_adjoint();
+
92  }
+
93 
+
106  static void grad(chainable* vi) {
+
107  std::vector<chainable*>::reverse_iterator it;
+
108 
+
109  vi->init_dependent();
+
110  // propagate derivates for vars
+
111  for (it = var_stack_.rbegin(); it < var_stack_.rend(); ++it)
+
112  (*it)->chain();
+
113  }
+
114 
+
115  }
+
116 }
+
117 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/chains_8hpp.html b/doc/api/html/chains_8hpp.html new file mode 100644 index 00000000000..791a4fddd67 --- /dev/null +++ b/doc/api/html/chains_8hpp.html @@ -0,0 +1,154 @@ + + + + + +Stan: src/stan/mcmc/chains.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
chains.hpp File Reference
+
+
+
#include <algorithm>
+#include <cmath>
+#include <iostream>
+#include <map>
+#include <stdexcept>
+#include <string>
+#include <sstream>
+#include <utility>
+#include <vector>
+#include <fstream>
+#include <cstdlib>
+#include <boost/accumulators/accumulators.hpp>
+#include <boost/accumulators/statistics/stats.hpp>
+#include <boost/accumulators/statistics/mean.hpp>
+#include <boost/accumulators/statistics/tail_quantile.hpp>
+#include <boost/accumulators/statistics/p_square_quantile.hpp>
+#include <boost/accumulators/statistics/variance.hpp>
+#include <boost/accumulators/statistics/covariance.hpp>
+#include <boost/accumulators/statistics/variates/covariate.hpp>
+#include <boost/random/uniform_int_distribution.hpp>
+#include <boost/random/additive_combine.hpp>
+#include <stan/math/matrix.hpp>
+#include <stan/math/matrix/variance.hpp>
+#include <stan/prob/autocorrelation.hpp>
+#include <stan/prob/autocovariance.hpp>
+#include <stan/io/stan_csv_reader.hpp>
+
+

Go to the source code of this file.

+ + + + + +

+Classes

class  stan::mcmc::chains< RNG >
 An mcmc::chains object stores parameter names and dimensionalities along with samples from multiple chains. More...
 
+ + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::mcmc
 Markov chain Monte Carlo samplers.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/chains_8hpp_source.html b/doc/api/html/chains_8hpp_source.html new file mode 100644 index 00000000000..0c7ff1f8bc3 --- /dev/null +++ b/doc/api/html/chains_8hpp_source.html @@ -0,0 +1,702 @@ + + + + + +Stan: src/stan/mcmc/chains.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
chains.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MCMC__CHAINS_HPP__
+
2 #define __STAN__MCMC__CHAINS_HPP__
+
3 
+
4 #include <algorithm>
+
5 #include <cmath>
+
6 #include <iostream>
+
7 #include <map>
+
8 #include <stdexcept>
+
9 #include <string>
+
10 #include <sstream>
+
11 #include <utility>
+
12 #include <vector>
+
13 #include <fstream>
+
14 #include <cstdlib>
+
15 
+
16 #include <boost/accumulators/accumulators.hpp>
+
17 #include <boost/accumulators/statistics/stats.hpp>
+
18 #include <boost/accumulators/statistics/mean.hpp>
+
19 #include <boost/accumulators/statistics/tail_quantile.hpp>
+
20 #include <boost/accumulators/statistics/p_square_quantile.hpp>
+
21 #include <boost/accumulators/statistics/variance.hpp>
+
22 #include <boost/accumulators/statistics/covariance.hpp>
+
23 #include <boost/accumulators/statistics/variates/covariate.hpp>
+
24 
+
25 
+
26 #include <boost/random/uniform_int_distribution.hpp>
+
27 #include <boost/random/additive_combine.hpp>
+
28 
+
29 #include <stan/math/matrix.hpp>
+ + + +
33 
+ +
35 
+
36 namespace stan {
+
37 
+
38  namespace mcmc {
+
39 
+
54  template <typename RNG = boost::random::ecuyer1988>
+
55  class chains {
+
56  private:
+
57  Eigen::Matrix<std::string, Eigen::Dynamic, 1> param_names_;
+
58  Eigen::Matrix<Eigen::MatrixXd, Eigen::Dynamic, 1> samples_;
+
59  Eigen::VectorXi warmup_;
+
60 
+
61  double mean(const Eigen::VectorXd& x) {
+
62  return (x.array() / x.size()).sum();
+
63  }
+
64 
+
65  double variance(const Eigen::VectorXd& x) {
+
66  double m = mean(x);
+
67  return ((x.array() - m) / std::sqrt((x.size() - 1.0))).square().sum();
+
68  }
+
69 
+
70  double sd(const Eigen::VectorXd& x) {
+
71  return std::sqrt(variance(x));
+
72  }
+
73 
+
74 
+
75  double covariance(const Eigen::VectorXd& x, const Eigen::VectorXd& y) {
+
76  if (x.rows() != y.rows())
+
77  std::cerr << "warning: covariance of different length chains";
+
78  using boost::accumulators::accumulator_set;
+
79  using boost::accumulators::stats;
+ +
81  using boost::accumulators::tag::covariance;
+
82  using boost::accumulators::tag::covariate1;
+
83 
+
84  accumulator_set<double, stats<covariance<double, covariate1> > > acc;
+
85 
+
86  int M = std::min(x.size(), y.size());
+
87  for (int i = 0; i < M; i++)
+
88  acc(x(i), boost::accumulators::covariate1=y(i));
+
89 
+
90  return boost::accumulators::covariance(acc) * M / (M-1);
+
91  }
+
92 
+
93  double correlation(const Eigen::VectorXd& x, const Eigen::VectorXd& y) {
+
94  if (x.rows() != y.rows())
+
95  std::cerr << "warning: covariance of different length chains";
+
96  using boost::accumulators::accumulator_set;
+
97  using boost::accumulators::stats;
+ +
99  using boost::accumulators::tag::covariance;
+
100  using boost::accumulators::tag::covariate1;
+
101 
+
102  accumulator_set<double, stats<variance, covariance<double, covariate1> > > acc_xy;
+
103  accumulator_set<double, stats<variance> > acc_y;
+
104 
+
105  int M = std::min(x.size(), y.size());
+
106  for (int i = 0; i < M; i++) {
+
107  acc_xy(x(i), boost::accumulators::covariate1=y(i));
+
108  acc_y(y(i));
+
109  }
+
110 
+
111  double cov = boost::accumulators::covariance(acc_xy);
+
112  if (cov > -1e-8 && cov < 1e-8)
+
113  return cov;
+ +
115  }
+
116 
+
117  double quantile(const Eigen::VectorXd& x, const double prob) {
+
118  using boost::accumulators::accumulator_set;
+
119  using boost::accumulators::left;
+
120  using boost::accumulators::quantile_probability;
+
121  using boost::accumulators::right;
+
122  using boost::accumulators::stats;
+ +
124  using boost::accumulators::tag::tail_quantile;
+
125  double M = x.rows();
+
126  //size_t cache_size = std::min(prob, 1-prob)*M + 2;
+
127  size_t cache_size = M;
+
128 
+
129  if (prob < 0.5) {
+
130  accumulator_set<double, stats<tail_quantile<left> > >
+
131  acc(tail<left>::cache_size = cache_size);
+
132  for (int i = 0; i < M; i++)
+
133  acc(x(i));
+
134  return boost::accumulators::quantile(acc, quantile_probability=prob);
+
135  }
+
136  accumulator_set<double, stats<tail_quantile<right> > >
+
137  acc(tail<right>::cache_size = cache_size);
+
138  for (int i = 0; i < M; i++)
+
139  acc(x(i));
+
140  return boost::accumulators::quantile(acc, quantile_probability=prob);
+
141  }
+
142 
+
143  Eigen::VectorXd quantiles(const Eigen::VectorXd& x, const Eigen::VectorXd& probs) {
+
144  using boost::accumulators::accumulator_set;
+
145  using boost::accumulators::left;
+
146  using boost::accumulators::quantile_probability;
+
147  using boost::accumulators::right;
+
148  using boost::accumulators::stats;
+ +
150  using boost::accumulators::tag::tail_quantile;
+
151  double M = x.rows();
+
152 
+
153  //size_t cache_size = M/2 + 2;
+
154  size_t cache_size = M;
+
155 
+
156  accumulator_set<double, stats<tail_quantile<left> > >
+
157  acc_left(tail<left>::cache_size = cache_size);
+
158  accumulator_set<double, stats<tail_quantile<right> > >
+
159  acc_right(tail<right>::cache_size = cache_size);
+
160 
+
161  for (int i = 0; i < M; i++) {
+
162  acc_left(x(i));
+
163  acc_right(x(i));
+
164  }
+
165 
+
166  Eigen::VectorXd q(probs.size());
+
167  for (int i = 0; i < probs.size(); i++) {
+
168  if (probs(i) < 0.5)
+
169  q(i) = boost::accumulators::quantile(acc_left, quantile_probability=probs(i));
+
170  else
+
171  q(i) = boost::accumulators::quantile(acc_right, quantile_probability=probs(i));
+
172  }
+
173  return q;
+
174  }
+
175 
+
176  Eigen::VectorXd autocorrelation(const Eigen::VectorXd& x) {
+
177  std::vector<double> ac;
+
178  std::vector<double> sample(x.size());
+
179  for (int i = 0; i < x.size(); i++)
+
180  sample[i] = x(i);
+ +
182 
+
183  Eigen::VectorXd ac2(ac.size());
+
184  for (std::vector<double>::size_type i = 0; i < ac.size(); i++)
+
185  ac2(i) = ac[i];
+
186  return ac2;
+
187  }
+
188 
+
189  Eigen::VectorXd autocovariance(const Eigen::VectorXd& x) {
+
190  std::vector<double> ac;
+
191  std::vector<double> sample(x.size());
+
192  for (int i = 0; i < x.size(); i++)
+
193  sample[i] = x(i);
+ +
195 
+
196  Eigen::VectorXd ac2(ac.size());
+
197  for (std::vector<double>::size_type i = 0; i < ac.size(); i++)
+
198  ac2(i) = ac[i];
+
199  return ac2;
+
200  }
+
201 
+
217  double effective_sample_size(const Eigen::Matrix<Eigen::VectorXd, Eigen::Dynamic, 1> &samples) {
+
218  int chains = samples.size();
+
219 
+
220  // need to generalize to each jagged samples per chain
+
221  int n_samples = samples(0).size();
+
222  for (int chain = 1; chain < chains; chain++) {
+
223  n_samples = std::min(n_samples, int(samples(chain).size()));
+
224  }
+
225 
+
226  Eigen::Matrix<Eigen::VectorXd, Eigen::Dynamic, 1> acov(chains);
+
227  for (int chain = 0; chain < chains; chain++) {
+
228  acov(chain) = autocovariance(samples(chain));
+
229  }
+
230 
+
231  Eigen::VectorXd chain_mean(chains);
+
232  Eigen::VectorXd chain_var(chains);
+
233  for (int chain = 0; chain < chains; chain++) {
+
234  double n_kept_samples = num_kept_samples(chain);
+
235  chain_mean(chain) = mean(samples(chain));
+
236  chain_var(chain) = acov(chain)(0)*n_kept_samples/(n_kept_samples-1);
+
237  }
+
238 
+
239  double mean_var = mean(chain_var);
+
240  double var_plus = mean_var*(n_samples-1)/n_samples;
+
241  if (chains > 1)
+
242  var_plus += variance(chain_mean);
+
243  Eigen::VectorXd rho_hat_t(n_samples);
+
244  rho_hat_t.setZero();
+
245  double rho_hat = 0;
+
246  int max_t = 0;
+
247  for (int t = 1; (t < n_samples && rho_hat >= 0); t++) {
+
248  Eigen::VectorXd acov_t(chains);
+
249  for (int chain = 0; chain < chains; chain++) {
+
250  acov_t(chain) = acov(chain)(t);
+
251  }
+
252  rho_hat = 1 - (mean_var - mean(acov_t)) / var_plus;
+
253  if (rho_hat >= 0)
+
254  rho_hat_t(t) = rho_hat;
+
255  max_t = t;
+
256  }
+
257  double ess = chains * n_samples;
+
258  if (max_t > 1) {
+
259  ess /= 1 + 2 * rho_hat_t.sum();
+
260  }
+
261  return ess;
+
262  }
+
263 
+
277  double split_potential_scale_reduction(const Eigen::Matrix<Eigen::VectorXd, Eigen::Dynamic, 1> &samples) {
+
278  int chains = samples.size();
+
279  int n_samples = samples(0).size();
+
280  for (int chain = 1; chain < chains; chain++) {
+
281  n_samples = std::min(n_samples, int(samples(chain).size()));
+
282  }
+
283  if (n_samples % 2 == 1)
+
284  n_samples--;
+
285  int n = n_samples / 2;
+
286 
+
287  Eigen::VectorXd split_chain_mean(2*chains);
+
288  Eigen::VectorXd split_chain_var(2*chains);
+
289 
+
290  for (int chain = 0; chain < chains; chain++) {
+
291  split_chain_mean(2*chain) = mean(samples(chain).topRows(n));
+
292  split_chain_mean(2*chain+1) = mean(samples(chain).bottomRows(n));
+
293 
+
294  split_chain_var(2*chain) = variance(samples(chain).topRows(n));
+
295  split_chain_var(2*chain+1) = variance(samples(chain).bottomRows(n));
+
296  }
+
297 
+
298 
+
299  double var_between = n * variance(split_chain_mean);
+
300  double var_within = mean(split_chain_var);
+
301 
+
302  // rewrote [(n-1)*W/n + B/n]/W as (n-1+ B/W)/n
+
303  return sqrt((var_between/var_within + n-1)/n);
+
304  }
+
305 
+
306  public:
+
307  chains(const Eigen::Matrix<std::string, Eigen::Dynamic, 1>& param_names)
+
308  : param_names_(param_names) { }
+
309 
+
310  chains(const stan::io::stan_csv& stan_csv)
+
311  : param_names_(stan_csv.header) {
+
312  if (stan_csv.samples.rows() > 0)
+
313  add(stan_csv);
+
314  }
+
315 
+
316  inline const int num_chains() {
+
317  return samples_.size();
+
318  }
+
319 
+
320  inline const int num_params() {
+
321  return param_names_.size();
+
322  }
+
323 
+
324  const Eigen::Matrix<std::string, Eigen::Dynamic, 1>& param_names() {
+
325  return param_names_;
+
326  }
+
327 
+
328  const std::string& param_name(int j) {
+
329  return param_names_(j);
+
330  }
+
331 
+
332  const int index(const std::string& name) {
+
333  int index = -1;
+
334  for (int i = 0; i < param_names_.size(); i++)
+
335  if (param_names_(i) == name)
+
336  return i;
+
337  return index;
+
338  }
+
339 
+
340  void set_warmup(const int chain, const int warmup) {
+
341  warmup_(chain) = warmup;
+
342  }
+
343 
+
344  void set_warmup(const int warmup) {
+
345  warmup_.setConstant(warmup);
+
346  }
+
347 
+
348  const Eigen::VectorXi& warmup() {
+
349  return warmup_;
+
350  }
+
351 
+
352  const int warmup(const int chain) {
+
353  return warmup_(chain);
+
354  }
+
355 
+
356  const int num_samples(const int chain) {
+
357  return samples_(chain).rows();
+
358  }
+
359 
+
360  const int num_samples() {
+
361  int n = 0;
+
362  for (int chain = 0; chain < num_chains(); chain++)
+
363  n += num_samples(chain);
+
364  return n;
+
365  }
+
366 
+
367  const int num_kept_samples(const int chain) {
+
368  return num_samples(chain) - warmup(chain);
+
369  }
+
370 
+
371  const int num_kept_samples() {
+
372  int n = 0;
+
373  for (int chain = 0; chain < num_chains(); chain++)
+
374  n += num_kept_samples(chain);
+
375  return n;
+
376  }
+
377 
+
378  void add(const int chain,
+
379  const Eigen::MatrixXd& sample) {
+
380  if (sample.cols() != num_params())
+
381  throw std::invalid_argument("add(chain,sample): number of columns in sample does not match chains");
+
382  if (num_chains() == 0 || chain >= num_chains()) {
+
383  int n = num_chains();
+
384 
+
385  // Need this block for Windows. conservativeResize does not keep the references.
+
386  Eigen::Matrix<Eigen::MatrixXd, Eigen::Dynamic, 1> samples_copy(num_chains());
+
387  Eigen::VectorXi warmup_copy(num_chains());
+
388  for (int i = 0; i < n; i++) {
+
389  samples_copy(i) = samples_(i);
+
390  warmup_copy(i) = warmup_(i);
+
391  }
+
392 
+
393  samples_.resize(chain+1);
+
394  warmup_.resize(chain+1);
+
395  for (int i = 0; i < n; i++) {
+
396  samples_(i) = samples_copy(i);
+
397  warmup_(i) = warmup_copy(i);
+
398  }
+
399  for (int i = n; i < chain+1; i++) {
+
400  samples_(i) = Eigen::MatrixXd(0, num_params());
+
401  warmup_(i) = 0;
+
402  }
+
403  }
+
404  int row = samples_(chain).rows();
+
405  Eigen::MatrixXd new_samples(row+sample.rows(), num_params());
+
406  new_samples << samples_(chain), sample;
+
407  samples_(chain) = new_samples;
+
408  }
+
409 
+
410  void add(const Eigen::MatrixXd& sample) {
+
411  if (sample.rows() == 0)
+
412  return;
+
413  if (sample.cols() != num_params())
+
414  throw std::invalid_argument("add(sample): number of columns in sample does not match chains");
+
415  add(num_chains(), sample);
+
416  }
+
417 
+
418  void add(const stan::io::stan_csv& stan_csv) {
+
419  if (stan_csv.header.size() != num_params())
+
420  throw std::invalid_argument("add(stan_csv): number of columns in sample does not match chains");
+
421  if (!param_names_.cwiseEqual(stan_csv.header).all()) {
+
422  throw std::invalid_argument("add(stan_csv): header does not match chain's header");
+
423  }
+
424  add(stan_csv.samples);
+
425  if (stan_csv.metadata.save_warmup)
+
426  set_warmup(num_chains()-1, stan_csv.metadata.num_warmup);
+
427  }
+
428 
+
429  Eigen::VectorXd samples(const int chain, const int index) {
+
430  return samples_(chain).col(index).bottomRows(num_kept_samples(chain));
+
431  }
+
432 
+
433  Eigen::VectorXd samples(const int index) {
+
434  Eigen::VectorXd s(num_kept_samples());
+
435  int start = 0;
+
436  for (int chain = 0; chain < num_chains(); chain++) {
+
437  int n = num_kept_samples(chain);
+
438  s.middleRows(start,n) = samples_(chain).col(index).bottomRows(n);
+
439  start += n;
+
440  }
+
441  return s;
+
442  }
+
443 
+
444  Eigen::VectorXd samples(const int chain, const std::string& name) {
+
445  return samples(chain,index(name));
+
446  }
+
447 
+
448  Eigen::VectorXd samples(const std::string& name) {
+
449  return samples(index(name));
+
450  }
+
451 
+
452  double mean(const int chain, const int index) {
+
453  return mean(samples(chain,index));
+
454  }
+
455 
+
456  double mean(const int index) {
+
457  return mean(samples(index));
+
458  }
+
459 
+
460  double mean(const int chain, const std::string& name) {
+
461  return mean(chain, index(name));
+
462  }
+
463 
+
464  double mean(const std::string& name) {
+
465  return mean(index(name));
+
466  }
+
467 
+
468  double sd(const int chain, const int index) {
+
469  return sd(samples(chain,index));
+
470  }
+
471 
+
472  double sd(const int index) {
+
473  return sd(samples(index));
+
474  }
+
475 
+
476  double sd(const int chain, const std::string& name) {
+
477  return sd(chain, index(name));
+
478  }
+
479 
+
480  double sd(const std::string& name) {
+
481  return sd(index(name));
+
482  }
+
483 
+
484  double variance(const int chain, const int index) {
+
485  return variance(samples(chain,index));
+
486  }
+
487 
+
488  double variance(const int index) {
+
489  return variance(samples(index));
+
490  }
+
491 
+
492  double variance(const int chain, const std::string& name) {
+
493  return variance(chain, index(name));
+
494  }
+
495 
+
496  double variance(const std::string& name) {
+
497  return variance(index(name));
+
498  }
+
499 
+
500  double covariance(const int chain, const int index1, const int index2) {
+
501  return covariance(samples(chain,index1), samples(chain,index2));
+
502  }
+
503 
+
504  double covariance(const int index1, const int index2) {
+
505  return covariance(samples(index1), samples(index2));
+
506  }
+
507 
+
508  double covariance(const int chain, const std::string& name1, const std::string& name2) {
+
509  return covariance(chain, index(name1), index(name2));
+
510  }
+
511 
+
512  double covariance(const std::string& name1, const std::string& name2) {
+
513  return covariance(index(name1), index(name2));
+
514  }
+
515 
+
516  double correlation(const int chain, const int index1, const int index2) {
+
517  return correlation(samples(chain,index1),samples(chain,index2));
+
518  }
+
519 
+
520  double correlation(const int index1, const int index2) {
+
521  return correlation(samples(index1),samples(index2));
+
522  }
+
523 
+
524  double correlation(const int chain, const std::string& name1, const std::string& name2) {
+
525  return correlation(chain, index(name1), index(name2));
+
526  }
+
527 
+
528  double correlation(const std::string& name1, const std::string& name2) {
+
529  return correlation(index(name1), index(name2));
+
530  }
+
531 
+
532  double quantile(const int chain, const int index, const double prob) {
+
533  return quantile(samples(chain,index), prob);
+
534  }
+
535 
+
536  double quantile(const int index, const double prob) {
+
537  return quantile(samples(index), prob);
+
538  }
+
539 
+
540  double quantile(const int chain, const std::string& name, const double prob) {
+
541  return quantile(chain, index(name), prob);
+
542  }
+
543 
+
544  double quantile(const std::string& name, const double prob) {
+
545  return quantile(index(name), prob);
+
546  }
+
547 
+
548  Eigen::VectorXd quantiles(const int chain, const int index, const Eigen::VectorXd& probs) {
+
549  return quantiles(samples(chain,index), probs);
+
550  }
+
551 
+
552  Eigen::VectorXd quantiles(const int index, const Eigen::VectorXd& probs) {
+
553  return quantiles(samples(index), probs);
+
554  }
+
555 
+
556  Eigen::VectorXd quantiles(const int chain,
+
557  const std::string& name, const Eigen::VectorXd& probs) {
+
558  return quantiles(chain, index(name), probs);
+
559  }
+
560 
+
561  Eigen::VectorXd quantiles(const std::string& name, const Eigen::VectorXd& probs) {
+
562  return quantiles(index(name), probs);
+
563  }
+
564 
+
565  Eigen::Vector2d central_interval(const int chain, const int index, const double prob) {
+
566  double low_prob = (1-prob)/2;
+
567  double high_prob = 1-low_prob;
+
568 
+
569  Eigen::Vector2d interval;
+
570  interval << quantile(chain,index,low_prob), quantile(chain,index,high_prob);
+
571  return interval;
+
572  }
+
573 
+
574  Eigen::Vector2d central_interval(const int index, const double prob) {
+
575  double low_prob = (1-prob)/2;
+
576  double high_prob = 1-low_prob;
+
577 
+
578  Eigen::Vector2d interval;
+
579  interval << quantile(index,low_prob), quantile(index,high_prob);
+
580  return interval;
+
581  }
+
582 
+
583  Eigen::Vector2d central_interval(const int chain,
+
584  const std::string& name, const double prob) {
+
585  return central_interval(chain, index(name), prob);
+
586  }
+
587 
+
588  Eigen::Vector2d central_interval(const std::string& name, const double prob) {
+
589  return central_interval(index(name), prob);
+
590  }
+
591 
+
592  Eigen::VectorXd autocorrelation(const int chain, const int index) {
+
593  return autocorrelation(samples(chain, index));
+
594  }
+
595 
+
596  Eigen::VectorXd autocorrelation(const int chain, const std::string& name) {
+
597  return autocorrelation(chain, index(name));
+
598  }
+
599 
+
600  Eigen::VectorXd autocovariance(const int chain, const int index) {
+
601  return autocovariance(samples(chain,index));
+
602  }
+
603 
+
604  Eigen::VectorXd autocovariance(const int chain, const std::string& name) {
+
605  return autocovariance(chain, index(name));
+
606  }
+
607 
+
608  // FIXME: reimplement using autocorrelation.
+
609  double effective_sample_size(const int index) {
+
610  Eigen::Matrix<Eigen::VectorXd, Eigen::Dynamic, 1> samples(num_chains());
+
611  for (int chain = 0; chain < num_chains(); chain++) {
+
612  samples(chain) = this->samples(chain, index);
+
613  }
+
614  return effective_sample_size(samples);
+
615  }
+
616 
+
617  double effective_sample_size(const std::string& name) {
+
618  return effective_sample_size(index(name));
+
619  }
+
620 
+ +
622  Eigen::Matrix<Eigen::VectorXd, Eigen::Dynamic, 1> samples(num_chains());
+
623  for (int chain = 0; chain < num_chains(); chain++) {
+
624  samples(chain) = this->samples(chain, index);
+
625  }
+
626  return split_potential_scale_reduction(samples);
+
627  }
+
628 
+
629  double split_potential_scale_reduction(const std::string& name) {
+
630  return split_potential_scale_reduction(index(name));
+
631  }
+
632  };
+
633 
+
634  }
+
635 }
+
636 
+
637 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/check__bounded_8hpp.html b/doc/api/html/check__bounded_8hpp.html new file mode 100644 index 00000000000..055644107a9 --- /dev/null +++ b/doc/api/html/check__bounded_8hpp.html @@ -0,0 +1,133 @@ + + + + + +Stan: src/stan/math/error_handling/check_bounded.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
check_bounded.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::math
 Matrices and templated mathematical functions.
 
+ + + + + + + +

+Functions

template<typename T_y , typename T_low , typename T_high , typename T_result >
bool stan::math::check_bounded (const char *function, const T_y &y, const T_low &low, const T_high &high, const char *name, T_result *result)
 
template<typename T_y , typename T_low , typename T_high >
bool stan::math::check_bounded (const char *function, const T_y &y, const T_low &low, const T_high &high, const char *name)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/check__bounded_8hpp_source.html b/doc/api/html/check__bounded_8hpp_source.html new file mode 100644 index 00000000000..e9a0c427fdb --- /dev/null +++ b/doc/api/html/check__bounded_8hpp_source.html @@ -0,0 +1,197 @@ + + + + + +Stan: src/stan/math/error_handling/check_bounded.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
check_bounded.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MATH__ERROR_HANDLING__CHECK_BOUNDED_HPP__
+
2 #define __STAN__MATH__ERROR_HANDLING__CHECK_BOUNDED_HPP__
+
3 
+ + +
6 
+
7 namespace stan {
+
8  namespace math {
+
9 
+
10  namespace {
+
11  template <typename T_y,
+
12  typename T_low,
+
13  typename T_high,
+
14  typename T_result,
+
15  bool is_vec>
+
16  struct bounded {
+
17  static bool check(const char* function,
+
18  const T_y& y,
+
19  const T_low& low,
+
20  const T_high& high,
+
21  const char* name,
+
22  T_result* result) {
+
23  using stan::length;
+
24  using stan::max_size;
+
25  VectorView<const T_low> low_vec(low);
+
26  VectorView<const T_high> high_vec(high);
+
27  for (size_t n = 0; n < max_size(low, high); n++) {
+
28  if (!(low_vec[n] <= y && y <= high_vec[n]))
+
29  return dom_err(function,y,name," is %1%, but must be between ",
+
30  std::pair<typename scalar_type<T_low>::type,
+
31  typename scalar_type<T_high>::type>(low_vec[n],
+
32  high_vec[n]),
+
33  result);
+
34  }
+
35  return true;
+
36  }
+
37  };
+
38 
+
39  template <typename T_y,
+
40  typename T_low,
+
41  typename T_high,
+
42  typename T_result>
+
43  struct bounded<T_y, T_low, T_high, T_result, true> {
+
44  static bool check(const char* function,
+
45  const T_y& y,
+
46  const T_low& low,
+
47  const T_high& high,
+
48  const char* name,
+
49  T_result* result) {
+
50  using stan::length;
+
51  using stan::get;
+
52  VectorView<const T_low> low_vec(low);
+
53  VectorView<const T_high> high_vec(high);
+
54  for (size_t n = 0; n < length(y); n++) {
+
55  if (!(low_vec[n] <= get(y,n) && get(y,n) <= high_vec[n]))
+
56  return dom_err_vec(n,function,y,name,
+
57  " is %1%, but must be between ",
+
58  std::pair<typename scalar_type<T_low>::type,
+
59  typename scalar_type<T_high>::type>(low_vec[n],
+
60  high_vec[n]),
+
61  result);
+
62  }
+
63  return true;
+
64  }
+
65  };
+
66  }
+
67  template <typename T_y, typename T_low, typename T_high, typename T_result>
+
68  inline bool check_bounded(const char* function,
+
69  const T_y& y,
+
70  const T_low& low,
+
71  const T_high& high,
+
72  const char* name,
+
73  T_result* result) {
+
74  return bounded<T_y,T_low,T_high,T_result,
+ +
76  ::check(function,y,low,high,name,result);
+
77  }
+
78  template <typename T_y, typename T_low, typename T_high>
+
79  inline bool check_bounded(const char* function,
+
80  const T_y& y,
+
81  const T_low& low,
+
82  const T_high& high,
+
83  const char* name) {
+
84  return check_bounded<T_y,T_low,T_high,typename scalar_type<T_y>::type *>
+
85  (function,y,low,high,name,0);
+
86  }
+
87 
+
88  }
+
89 }
+
90 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/check__cholesky__factor_8hpp.html b/doc/api/html/check__cholesky__factor_8hpp.html new file mode 100644 index 00000000000..e84c9c605f8 --- /dev/null +++ b/doc/api/html/check__cholesky__factor_8hpp.html @@ -0,0 +1,143 @@ + + + + + +Stan: src/stan/math/error_handling/matrix/check_cholesky_factor.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
check_cholesky_factor.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::math
 Matrices and templated mathematical functions.
 
+ + + + + + + + + + + + + + + +

+Functions

template<typename T_y , typename T_result >
bool stan::math::check_cholesky_factor (const char *function, const Eigen::Matrix< T_y, Eigen::Dynamic, Eigen::Dynamic > &y, const char *name, T_result *result)
 Return true if the specified matrix is a valid Cholesky factor.
 
template<typename T >
bool stan::math::check_cholesky_factor (const char *function, const Eigen::Matrix< T, Eigen::Dynamic, Eigen::Dynamic > &y, const char *name, T *result=0)
 
template<typename T_y , typename T_result >
bool stan::math::check_cholesky_factor (const char *function, const Eigen::Matrix< T_y, Eigen::Dynamic, Eigen::Dynamic > &y, T_result *result)
 Return true if the specified matrix is a valid Cholesky factor (lower triangular, positive diagonal).
 
template<typename T >
bool stan::math::check_cholesky_factor (const char *function, const Eigen::Matrix< T, Eigen::Dynamic, Eigen::Dynamic > &y, T *result=0)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/check__cholesky__factor_8hpp_source.html b/doc/api/html/check__cholesky__factor_8hpp_source.html new file mode 100644 index 00000000000..8daa64d189f --- /dev/null +++ b/doc/api/html/check__cholesky__factor_8hpp_source.html @@ -0,0 +1,167 @@ + + + + + +Stan: src/stan/math/error_handling/matrix/check_cholesky_factor.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
check_cholesky_factor.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MATH__ERROR_HANDLING__MATRIX__CHECK_CHOLESKY_FACTOR_HPP__
+
2 #define __STAN__MATH__ERROR_HANDLING__MATRIX__CHECK_CHOLESKY_FACTOR_HPP__
+
3 
+ + + + +
8 
+
9 
+
10 namespace stan {
+
11 
+
12  namespace math {
+
13 
+
29  template <typename T_y, typename T_result>
+
30  inline bool check_cholesky_factor(const char* function,
+
31  const Eigen::Matrix<T_y,Eigen::Dynamic,Eigen::Dynamic>& y,
+
32  const char* name,
+
33  T_result* result) {
+
34  if (!check_less_or_equal(function,y.cols(),y.rows(),
+
35  "columns and rows of Cholesky factor",
+
36  result))
+
37  return false;
+
38  if (!check_positive(function, y.cols(), "columns of Cholesky factor",
+
39  result))
+
40  return false;
+
41  // FIXME: should report row i
+
42  if (!check_lower_triangular(function, y, name, result))
+
43  return false;
+
44  for (int i = 0; i < y.cols(); ++i)
+
45  if (!check_positive(function, y(i,i), name, result))
+
46  return false;
+
47  return true;
+
48  }
+
49 
+
50  template <typename T>
+
51  inline bool check_cholesky_factor(const char* function,
+
52  const Eigen::Matrix<T,Eigen::Dynamic,Eigen::Dynamic>& y,
+
53  const char* name,
+
54  T* result = 0) {
+
55  return check_cholesky_factor<T,T>(function,y,name,result);
+
56  }
+
57 
+
58 
+
70  template <typename T_y, typename T_result>
+
71  inline bool check_cholesky_factor(const char* function,
+
72  const Eigen::Matrix<T_y,Eigen::Dynamic,Eigen::Dynamic>& y,
+
73  T_result* result) {
+
74  return check_cholesky_factor(function,y,"(internal variable)",result);
+
75  }
+
76 
+
77  template <typename T>
+
78  inline bool check_cholesky_factor(const char* function,
+
79  const Eigen::Matrix<T,Eigen::Dynamic,Eigen::Dynamic>& y,
+
80  T* result = 0) {
+
81  return check_cholesky_factor<T,T>(function,y,result);
+
82  }
+
83 
+
84  }
+
85 }
+
86 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/check__consistent__size_8hpp.html b/doc/api/html/check__consistent__size_8hpp.html new file mode 100644 index 00000000000..1bc6af71204 --- /dev/null +++ b/doc/api/html/check__consistent__size_8hpp.html @@ -0,0 +1,130 @@ + + + + + +Stan: src/stan/math/error_handling/check_consistent_size.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
check_consistent_size.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::math
 Matrices and templated mathematical functions.
 
+ + + + +

+Functions

template<typename T , typename T_result >
bool stan::math::check_consistent_size (size_t max_size, const char *function, const T &x, const char *name, T_result *result)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/check__consistent__size_8hpp_source.html b/doc/api/html/check__consistent__size_8hpp_source.html new file mode 100644 index 00000000000..a5abf1a8fc5 --- /dev/null +++ b/doc/api/html/check__consistent__size_8hpp_source.html @@ -0,0 +1,135 @@ + + + + + +Stan: src/stan/math/error_handling/check_consistent_size.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
check_consistent_size.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MATH__ERROR_HANDLING__CHECK_CONSISTENT_SIZE_HPP__
+
2 #define __STAN__MATH__ERROR_HANDLING__CHECK_CONSISTENT_SIZE_HPP__
+
3 
+ +
5 #include <stan/meta/traits.hpp>
+
6 
+
7 namespace stan {
+
8  namespace math {
+
9 
+
10  template <typename T, typename T_result>
+
11  inline bool check_consistent_size(size_t max_size,
+
12  const char* function,
+
13  const T& x,
+
14  const char* name,
+
15  T_result* result) {
+
16  size_t x_size = stan::size_of(x);
+
17  if (is_vector<T>::value && x_size == max_size)
+
18  return true;
+
19  if (!is_vector<T>::value && x_size == 1)
+
20  return true;
+
21  return dom_err(function,x_size,name,
+
22  " (max size) is %1%, but must be consistent, 1 or max=",max_size,
+
23  result);
+
24  }
+
25 
+
26  }
+
27 }
+
28 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/check__consistent__sizes_8hpp.html b/doc/api/html/check__consistent__sizes_8hpp.html new file mode 100644 index 00000000000..e1ef789daef --- /dev/null +++ b/doc/api/html/check__consistent__sizes_8hpp.html @@ -0,0 +1,137 @@ + + + + + +Stan: src/stan/math/error_handling/check_consistent_sizes.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
check_consistent_sizes.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::math
 Matrices and templated mathematical functions.
 
+ + + + + + + + + + +

+Functions

template<typename T1 , typename T2 , typename T_result >
bool stan::math::check_consistent_sizes (const char *function, const T1 &x1, const T2 &x2, const char *name1, const char *name2, T_result *result)
 
template<typename T1 , typename T2 , typename T3 , typename T_result >
bool stan::math::check_consistent_sizes (const char *function, const T1 &x1, const T2 &x2, const T3 &x3, const char *name1, const char *name2, const char *name3, T_result *result)
 
template<typename T1 , typename T2 , typename T3 , typename T4 , typename T_result >
bool stan::math::check_consistent_sizes (const char *function, const T1 &x1, const T2 &x2, const T3 &x3, const T4 &x4, const char *name1, const char *name2, const char *name3, const char *name4, T_result *result)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/check__consistent__sizes_8hpp_source.html b/doc/api/html/check__consistent__sizes_8hpp_source.html new file mode 100644 index 00000000000..688de20f4c1 --- /dev/null +++ b/doc/api/html/check__consistent__sizes_8hpp_source.html @@ -0,0 +1,168 @@ + + + + + +Stan: src/stan/math/error_handling/check_consistent_sizes.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
check_consistent_sizes.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MATH__ERROR_HANDLING__CHECK_CONSISTENT_SIZES_HPP__
+
2 #define __STAN__MATH__ERROR_HANDLING__CHECK_CONSISTENT_SIZES_HPP__
+
3 
+ + +
6 #include <stan/meta/traits.hpp>
+
7 
+
8 namespace stan {
+
9  namespace math {
+
10 
+
11  template <typename T1, typename T2, typename T_result>
+
12  inline bool check_consistent_sizes(const char* function,
+
13  const T1& x1,
+
14  const T2& x2,
+
15  const char* name1,
+
16  const char* name2,
+
17  T_result* result) {
+
18  size_t max_size = std::max(size_of(x1),
+
19  size_of(x2));
+
20  return check_consistent_size(max_size,function,x1,name1,result)
+
21  && check_consistent_size(max_size,function,x2,name2,result);
+
22  }
+
23 
+
24  template <typename T1, typename T2, typename T3, typename T_result>
+
25  inline bool check_consistent_sizes(const char* function,
+
26  const T1& x1,
+
27  const T2& x2,
+
28  const T3& x3,
+
29  const char* name1,
+
30  const char* name2,
+
31  const char* name3,
+
32  T_result* result) {
+
33  size_t max_size = std::max(size_of(x1),
+
34  std::max(size_of(x2),size_of(x3)));
+
35  return check_consistent_size(max_size,function,x1,name1,result)
+
36  && check_consistent_size(max_size,function,x2,name2,result)
+
37  && check_consistent_size(max_size,function,x3,name3,result);
+
38  }
+
39  template <typename T1, typename T2, typename T3, typename T4, typename T_result>
+
40  inline bool check_consistent_sizes(const char* function,
+
41  const T1& x1,
+
42  const T2& x2,
+
43  const T3& x3,
+
44  const T4& x4,
+
45  const char* name1,
+
46  const char* name2,
+
47  const char* name3,
+
48  const char* name4,
+
49  T_result* result) {
+
50  size_t max_size = std::max(size_of(x1),
+
51  std::max(size_of(x2),
+
52  std::max(size_of(x3), size_of(x4))));
+
53  return check_consistent_size(max_size,function,x1,name1,result)
+
54  && check_consistent_size(max_size,function,x2,name2,result)
+
55  && check_consistent_size(max_size,function,x3,name3,result)
+
56  && check_consistent_size(max_size,function,x4,name4,result);
+
57  }
+
58 
+
59  }
+
60 }
+
61 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/check__corr__matrix_8hpp.html b/doc/api/html/check__corr__matrix_8hpp.html new file mode 100644 index 00000000000..7d53c715460 --- /dev/null +++ b/doc/api/html/check__corr__matrix_8hpp.html @@ -0,0 +1,139 @@ + + + + + +Stan: src/stan/math/error_handling/matrix/check_corr_matrix.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
check_corr_matrix.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::math
 Matrices and templated mathematical functions.
 
+ + + + + + + + +

+Functions

template<typename T_y , typename T_result >
bool stan::math::check_corr_matrix (const char *function, const Eigen::Matrix< T_y, Eigen::Dynamic, Eigen::Dynamic > &y, const char *name, T_result *result)
 Return true if the specified matrix is a valid correlation matrix.
 
template<typename T >
bool stan::math::check_corr_matrix (const char *function, const Eigen::Matrix< T, Eigen::Dynamic, Eigen::Dynamic > &y, const char *name, T *result=0)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/check__corr__matrix_8hpp_source.html b/doc/api/html/check__corr__matrix_8hpp_source.html new file mode 100644 index 00000000000..e7b4d98b720 --- /dev/null +++ b/doc/api/html/check__corr__matrix_8hpp_source.html @@ -0,0 +1,163 @@ + + + + + +Stan: src/stan/math/error_handling/matrix/check_corr_matrix.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
check_corr_matrix.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MATH__ERROR_HANDLING__MATRIX__CHECK_CORR_MATRIX_HPP__
+
2 #define __STAN__MATH__ERROR_HANDLING__MATRIX__CHECK_CORR_MATRIX_HPP__
+
3 
+
4 #include <sstream>
+ + + + + + +
11 
+
12 namespace stan {
+
13  namespace math {
+
14 
+
30  // FIXME: update warnings
+
31  template <typename T_y, typename T_result>
+
32  inline bool check_corr_matrix(const char* function,
+
33  const Eigen::Matrix<T_y,Eigen::Dynamic,Eigen::Dynamic>& y,
+
34  const char* name,
+
35  T_result* result) {
+
36  if (!check_size_match(function,
+
37  y.rows(), "Rows of correlation matrix",
+
38  y.cols(), "columns of correlation matrix",
+
39  result))
+
40  return false;
+
41  if (!check_positive(function, y.rows(), "rows", result))
+
42  return false;
+
43  if (!check_symmetric(function, y, "y", result))
+
44  return false;
+ +
46  k = 0; k < y.rows(); ++k) {
+
47  if (fabs(y(k,k) - 1.0) > CONSTRAINT_TOLERANCE) {
+
48  std::ostringstream message;
+
49  message << name << " is not a valid correlation matrix. "
+
50  << name << "(" << k << "," << k
+
51  << ") is %1%, but should be near 1.0";
+
52  std::string msg(message.str());
+
53  return dom_err(function,y(k,k),name,msg.c_str(),"",result);
+
54  }
+
55  }
+
56  if (!check_pos_definite(function, y, "y", result))
+
57  return false;
+
58  return true;
+
59  }
+
60 
+
61  template <typename T>
+
62  inline bool check_corr_matrix(const char* function,
+
63  const Eigen::Matrix<T,Eigen::Dynamic,Eigen::Dynamic>& y,
+
64  const char* name,
+
65  T* result = 0) {
+
66  return check_corr_matrix<T,T>(function,y,name,result);
+
67  }
+
68 
+
69  }
+
70 }
+
71 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/check__cov__matrix_8hpp.html b/doc/api/html/check__cov__matrix_8hpp.html new file mode 100644 index 00000000000..7adb5342cbb --- /dev/null +++ b/doc/api/html/check__cov__matrix_8hpp.html @@ -0,0 +1,145 @@ + + + + + +Stan: src/stan/math/error_handling/matrix/check_cov_matrix.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
check_cov_matrix.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::math
 Matrices and templated mathematical functions.
 
+ + + + + + + + + + + + + + + +

+Functions

template<typename T_y , typename T_result >
bool stan::math::check_cov_matrix (const char *function, const Eigen::Matrix< T_y, Eigen::Dynamic, Eigen::Dynamic > &y, const char *name, T_result *result)
 Return true if the specified matrix is a valid covariance matrix.
 
template<typename T >
bool stan::math::check_cov_matrix (const char *function, const Eigen::Matrix< T, Eigen::Dynamic, Eigen::Dynamic > &y, const char *name, T *result=0)
 
template<typename T_covar , typename T_result >
bool stan::math::check_cov_matrix (const char *function, const Eigen::Matrix< T_covar, Eigen::Dynamic, Eigen::Dynamic > &Sigma, T_result *result)
 Return true if the specified matrix is a valid covariance matrix.
 
template<typename T >
bool stan::math::check_cov_matrix (const char *function, const Eigen::Matrix< T, Eigen::Dynamic, Eigen::Dynamic > &Sigma, T *result=0)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/check__cov__matrix_8hpp_source.html b/doc/api/html/check__cov__matrix_8hpp_source.html new file mode 100644 index 00000000000..762588556a7 --- /dev/null +++ b/doc/api/html/check__cov__matrix_8hpp_source.html @@ -0,0 +1,177 @@ + + + + + +Stan: src/stan/math/error_handling/matrix/check_cov_matrix.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
check_cov_matrix.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MATH__ERROR_HANDLING__MATRIX__CHECK_COV_MATRIX_HPP__
+
2 #define __STAN__MATH__ERROR_HANDLING__MATRIX__CHECK_COV_MATRIX_HPP__
+
3 
+
4 #include <sstream>
+ + + + + +
10 
+
11 
+
12 namespace stan {
+
13  namespace math {
+
14 
+
27  // FIXME: update warnings
+
28  template <typename T_y, typename T_result>
+
29  inline bool check_cov_matrix(const char* function,
+
30  const Eigen::Matrix<T_y,Eigen::Dynamic,Eigen::Dynamic>& y,
+
31  const char* name,
+
32  T_result* result) {
+
33  if (!check_size_match(function,
+
34  y.rows(), "Rows of covariance matrix",
+
35  y.cols(), "columns of covariance matrix",
+
36  result))
+
37  return false;
+
38  if (!check_positive(function, y.rows(), "rows", result))
+
39  return false;
+
40  if (!check_symmetric(function, y, name, result))
+
41  return false;
+
42  if (!check_pos_definite(function, y, name, result))
+
43  return false;
+
44  return true;
+
45  }
+
46 
+
47  template <typename T>
+
48  inline bool check_cov_matrix(const char* function,
+
49  const Eigen::Matrix<T,Eigen::Dynamic,Eigen::Dynamic>& y,
+
50  const char* name,
+
51  T* result = 0) {
+
52  return check_cov_matrix<T,T>(function,y,name,result);
+
53  }
+
54 
+
55 
+
56  // FIXME: this looks redundant
+
68  // FIXME: update warnings
+
69  template <typename T_covar, typename T_result>
+
70  inline bool check_cov_matrix(const char* function,
+
71  const Eigen::Matrix<T_covar,Eigen::Dynamic,Eigen::Dynamic>& Sigma,
+
72  T_result* result) {
+
73  if (!check_size_match(function,
+
74  Sigma.rows(), "Rows of covariance matrix",
+
75  Sigma.cols(), "columns of covariance matrix",
+
76  result))
+
77  return false;
+
78  if (!check_positive(function, Sigma.rows(), "rows", result))
+
79  return false;
+
80  if (!check_symmetric(function, Sigma, "Sigma", result))
+
81  return false;
+
82  return true;
+
83  }
+
84  template <typename T>
+
85  inline bool check_cov_matrix(const char* function,
+
86  const Eigen::Matrix<T,Eigen::Dynamic,Eigen::Dynamic>& Sigma,
+
87  T* result = 0) {
+
88  return check_cov_matrix<T,T>(function,Sigma,result);
+
89  }
+
90 
+
91  }
+
92 }
+
93 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/check__finite_8hpp.html b/doc/api/html/check__finite_8hpp.html new file mode 100644 index 00000000000..a211579142d --- /dev/null +++ b/doc/api/html/check__finite_8hpp.html @@ -0,0 +1,134 @@ + + + + + +Stan: src/stan/math/error_handling/check_finite.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
check_finite.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::math
 Matrices and templated mathematical functions.
 
+ + + + + + + + +

+Functions

template<typename T_y , typename T_result >
bool stan::math::check_finite (const char *function, const T_y &y, const char *name, T_result *result)
 Checks if the variable y is finite.
 
template<typename T >
bool stan::math::check_finite (const char *function, const T &y, const char *name)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/check__finite_8hpp_source.html b/doc/api/html/check__finite_8hpp_source.html new file mode 100644 index 00000000000..df4550f136f --- /dev/null +++ b/doc/api/html/check__finite_8hpp_source.html @@ -0,0 +1,171 @@ + + + + + +Stan: src/stan/math/error_handling/check_finite.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
check_finite.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MATH__ERROR_HANDLING__CHECK_FINITE_HPP__
+
2 #define __STAN__MATH__ERROR_HANDLING__CHECK_FINITE_HPP__
+
3 
+ + +
6 
+
7 namespace stan {
+
8  namespace math {
+
9 
+
10  namespace {
+
11  template <typename T_y,
+
12  typename T_result,
+
13  bool is_vec>
+
14  struct finite {
+
15  static bool check(const char* function,
+
16  const T_y& y,
+
17  const char* name,
+
18  T_result* result) {
+
19  if (!(boost::math::isfinite)(y))
+
20  return dom_err(function,y,name,
+
21  " is %1%, but must be finite!","",
+
22  result);
+
23  return true;
+
24  }
+
25  };
+
26 
+
27  template <typename T_y, typename T_result>
+
28  struct finite<T_y, T_result, true> {
+
29  static bool check(const char* function,
+
30  const T_y& y,
+
31  const char* name,
+
32  T_result* result) {
+
33  using stan::length;
+
34  for (size_t n = 0; n < length(y); n++) {
+
35  if (!(boost::math::isfinite)(stan::get(y,n)))
+
36  return dom_err_vec(n,function,y,name,
+
37  " is %1%, but must be finite!","",
+
38  result);
+
39  }
+
40  return true;
+
41  }
+
42  };
+
43  }
+
44 
+
48  template <typename T_y, typename T_result>
+
49  inline bool check_finite(const char* function,
+
50  const T_y& y,
+
51  const char* name,
+
52  T_result* result) {
+
53  return finite<T_y,T_result,is_vector_like<T_y>::value>
+
54  ::check(function, y, name, result);
+
55  }
+
56 
+
57  template <typename T>
+
58  inline bool check_finite(const char* function,
+
59  const T& y,
+
60  const char* name) {
+
61  return check_finite<T,typename scalar_type<T>::type *>
+
62  (function,y,name,0);
+
63  }
+
64 
+
65  }
+
66 }
+
67 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/check__greater_8hpp.html b/doc/api/html/check__greater_8hpp.html new file mode 100644 index 00000000000..b1a69937c1e --- /dev/null +++ b/doc/api/html/check__greater_8hpp.html @@ -0,0 +1,133 @@ + + + + + +Stan: src/stan/math/error_handling/check_greater.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
check_greater.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::math
 Matrices and templated mathematical functions.
 
+ + + + + + + +

+Functions

template<typename T_y , typename T_low , typename T_result >
bool stan::math::check_greater (const char *function, const T_y &y, const T_low &low, const char *name, T_result *result)
 
template<typename T_y , typename T_low >
bool stan::math::check_greater (const char *function, const T_y &y, const T_low &low, const char *name)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/check__greater_8hpp_source.html b/doc/api/html/check__greater_8hpp_source.html new file mode 100644 index 00000000000..27194726bd8 --- /dev/null +++ b/doc/api/html/check__greater_8hpp_source.html @@ -0,0 +1,182 @@ + + + + + +Stan: src/stan/math/error_handling/check_greater.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
check_greater.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MATH__ERROR_HANDLING__CHECK_GREATER_HPP__
+
2 #define __STAN__MATH__ERROR_HANDLING__CHECK_GREATER_HPP__
+
3 
+ + +
6 
+
7 namespace stan {
+
8  namespace math {
+
9 
+
10  namespace {
+
11  template <typename T_y,
+
12  typename T_low,
+
13  typename T_result,
+
14  bool is_vec>
+
15  struct greater {
+
16  static bool check(const char* function,
+
17  const T_y& y,
+
18  const T_low& low,
+
19  const char* name,
+
20  T_result* result) {
+
21  using stan::length;
+
22  VectorView<const T_low> low_vec(low);
+
23  for (size_t n = 0; n < length(low); n++) {
+
24  if (!(y > low_vec[n]))
+
25  return dom_err(function,y,name,
+
26  " is %1%, but must be greater than ",
+
27  low_vec[n],result);
+
28  }
+
29  return true;
+
30  }
+
31  };
+
32 
+
33  template <typename T_y,
+
34  typename T_low,
+
35  typename T_result>
+
36  struct greater<T_y, T_low, T_result, true> {
+
37  static bool check(const char* function,
+
38  const T_y& y,
+
39  const T_low& low,
+
40  const char* name,
+
41  T_result* result) {
+
42  using stan::length;
+
43  VectorView<const T_low> low_vec(low);
+
44  for (size_t n = 0; n < length(y); n++) {
+
45  if (!(stan::get(y,n) > low_vec[n])) {
+
46  return dom_err_vec(n,function,y,name,
+
47  " is %1%, but must be greater than ",
+
48  low_vec[n],result);
+
49  }
+
50  }
+
51  return true;
+
52  }
+
53  };
+
54  }
+
55  template <typename T_y, typename T_low, typename T_result>
+
56  inline bool check_greater(const char* function,
+
57  const T_y& y,
+
58  const T_low& low,
+
59  const char* name,
+
60  T_result* result) {
+
61  return greater<T_y,T_low,T_result,is_vector_like<T_y>::value>
+
62  ::check(function,y,low,name,result);
+
63  }
+
64  template <typename T_y, typename T_low>
+
65  inline bool check_greater(const char* function,
+
66  const T_y& y,
+
67  const T_low& low,
+
68  const char* name) {
+
69  return check_greater<T_y,T_low,typename scalar_type<T_y>::type *>
+
70  (function,y,low,name,0);
+
71  }
+
72 
+
73  }
+
74 }
+
75 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/check__greater__or__equal_8hpp.html b/doc/api/html/check__greater__or__equal_8hpp.html new file mode 100644 index 00000000000..bd557b7e666 --- /dev/null +++ b/doc/api/html/check__greater__or__equal_8hpp.html @@ -0,0 +1,133 @@ + + + + + +Stan: src/stan/math/error_handling/check_greater_or_equal.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
check_greater_or_equal.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::math
 Matrices and templated mathematical functions.
 
+ + + + + + + +

+Functions

template<typename T_y , typename T_low , typename T_result >
bool stan::math::check_greater_or_equal (const char *function, const T_y &y, const T_low &low, const char *name, T_result *result)
 
template<typename T_y , typename T_low >
bool stan::math::check_greater_or_equal (const char *function, const T_y &y, const T_low &low, const char *name)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/check__greater__or__equal_8hpp_source.html b/doc/api/html/check__greater__or__equal_8hpp_source.html new file mode 100644 index 00000000000..4ee7f60005e --- /dev/null +++ b/doc/api/html/check__greater__or__equal_8hpp_source.html @@ -0,0 +1,182 @@ + + + + + +Stan: src/stan/math/error_handling/check_greater_or_equal.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
check_greater_or_equal.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MATH__ERROR_HANDLING__CHECK_GREATER_OR_EQUAL_HPP__
+
2 #define __STAN__MATH__ERROR_HANDLING__CHECK_GREATER_OR_EQUAL_HPP__
+
3 
+ + +
6 
+
7 namespace stan {
+
8  namespace math {
+
9 
+
10  namespace {
+
11  template <typename T_y,
+
12  typename T_low,
+
13  typename T_result,
+
14  bool is_vec>
+
15  struct greater_or_equal {
+
16  static bool check(const char* function,
+
17  const T_y& y,
+
18  const T_low& low,
+
19  const char* name,
+
20  T_result* result) {
+
21  using stan::length;
+
22  VectorView<const T_low> low_vec(low);
+
23  for (size_t n = 0; n < length(low); n++) {
+
24  if (!(y >= low_vec[n]))
+
25  return dom_err(function,y,name,
+
26  " is %1%, but must be greater than ",
+
27  low_vec[n],result);
+
28  }
+
29  return true;
+
30  }
+
31  };
+
32 
+
33  template <typename T_y,
+
34  typename T_low,
+
35  typename T_result>
+
36  struct greater_or_equal<T_y, T_low, T_result, true> {
+
37  static bool check(const char* function,
+
38  const T_y& y,
+
39  const T_low& low,
+
40  const char* name,
+
41  T_result* result) {
+
42  using stan::length;
+
43  using stan::get;
+
44  VectorView<const T_low> low_vec(low);
+
45  for (size_t n = 0; n < length(y); n++) {
+
46  if (!(get(y,n) >= low_vec[n]))
+
47  return dom_err_vec(n,function,y,name,
+
48  " is %1%, but must be greater than or equal to ",
+
49  low_vec[n],result);
+
50  }
+
51  return true;
+
52  }
+
53  };
+
54  }
+
55  template <typename T_y, typename T_low, typename T_result>
+
56  inline bool check_greater_or_equal(const char* function,
+
57  const T_y& y,
+
58  const T_low& low,
+
59  const char* name,
+
60  T_result* result) {
+
61  return greater_or_equal<T_y,T_low,T_result,is_vector_like<T_y>::value>
+
62  ::check(function,y,low,name,result);
+
63  }
+
64  template <typename T_y, typename T_low>
+
65  inline bool check_greater_or_equal(const char* function,
+
66  const T_y& y,
+
67  const T_low& low,
+
68  const char* name) {
+
69  return check_greater_or_equal<T_y,T_low,typename scalar_type<T_y>::type *>
+
70  (function,y,low,name,0);
+
71  }
+
72 
+
73  }
+
74 }
+
75 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/check__ldlt__factor_8hpp.html b/doc/api/html/check__ldlt__factor_8hpp.html new file mode 100644 index 00000000000..180bf64d1e7 --- /dev/null +++ b/doc/api/html/check__ldlt__factor_8hpp.html @@ -0,0 +1,136 @@ + + + + + +Stan: src/stan/math/error_handling/matrix/check_ldlt_factor.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
check_ldlt_factor.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::math
 Matrices and templated mathematical functions.
 
+ + + + + + + + +

+Functions

template<typename T , int R, int C, typename T_result >
bool stan::math::check_ldlt_factor (const char *function, stan::math::LDLT_factor< T, R, C > &A, const char *name, T_result *result)
 Return true if the underlying matrix is positive definite.
 
template<typename T , int R, int C>
bool stan::math::check_ldlt_factor (const char *function, stan::math::LDLT_factor< T, R, C > &A, const char *name, T *result=0)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/check__ldlt__factor_8hpp_source.html b/doc/api/html/check__ldlt__factor_8hpp_source.html new file mode 100644 index 00000000000..2f864654877 --- /dev/null +++ b/doc/api/html/check__ldlt__factor_8hpp_source.html @@ -0,0 +1,146 @@ + + + + + +Stan: src/stan/math/error_handling/matrix/check_ldlt_factor.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
check_ldlt_factor.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MATH__ERROR_HANDLING__MATRIX__CHECK_LDLT_FACTOR_HPP__
+
2 #define __STAN__MATH__ERROR_HANDLING__MATRIX__CHECK_LDLT_FACTOR_HPP__
+
3 
+
4 #include <sstream>
+ + + +
8 
+
9 namespace stan {
+
10  namespace math {
+
11 
+
22  template <typename T, int R, int C, typename T_result>
+
23  inline bool check_ldlt_factor(const char* function,
+
24  stan::math::LDLT_factor<T,R,C> &A,
+
25  const char* name,
+
26  T_result* result) {
+
27  if (!A.success()) {
+
28  std::ostringstream message;
+
29  message << "underlying matrix is not positive definite. "
+
30  << name << "last conditional variance is %1%.";
+
31  std::string msg(message.str());
+
32  const double too_small = A.vectorD().tail(1)(0);
+
33  return dom_err(function,too_small,name,msg.c_str(),"",result);
+
34  }
+
35 
+
36  return true;
+
37  }
+
38 
+
39  template <typename T, int R, int C>
+
40  inline bool check_ldlt_factor(const char* function,
+
41  stan::math::LDLT_factor<T,R,C> &A,
+
42  const char* name,
+
43  T* result = 0) {
+
44  return check_ldlt_factor<T,R,C,T>(function,A,name,result);
+
45  }
+
46 
+
47  }
+
48 }
+
49 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/check__less_8hpp.html b/doc/api/html/check__less_8hpp.html new file mode 100644 index 00000000000..464d70dc17e --- /dev/null +++ b/doc/api/html/check__less_8hpp.html @@ -0,0 +1,133 @@ + + + + + +Stan: src/stan/math/error_handling/check_less.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
check_less.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::math
 Matrices and templated mathematical functions.
 
+ + + + + + + +

+Functions

template<typename T_y , typename T_high , typename T_result >
bool stan::math::check_less (const char *function, const T_y &y, const T_high &high, const char *name, T_result *result)
 
template<typename T_y , typename T_high >
bool stan::math::check_less (const char *function, const T_y &y, const T_high &high, const char *name)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/check__less_8hpp_source.html b/doc/api/html/check__less_8hpp_source.html new file mode 100644 index 00000000000..f73874d651c --- /dev/null +++ b/doc/api/html/check__less_8hpp_source.html @@ -0,0 +1,181 @@ + + + + + +Stan: src/stan/math/error_handling/check_less.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
check_less.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MATH__ERROR_HANDLING__CHECK_LESS_HPP__
+
2 #define __STAN__MATH__ERROR_HANDLING__CHECK_LESS_HPP__
+
3 
+ + +
6 
+
7 namespace stan {
+
8  namespace math {
+
9 
+
10  namespace {
+
11  template <typename T_y,
+
12  typename T_high,
+
13  typename T_result,
+
14  bool is_vec>
+
15  struct less {
+
16  static bool check(const char* function,
+
17  const T_y& y,
+
18  const T_high& high,
+
19  const char* name,
+
20  T_result* result) {
+
21  using stan::length;
+
22  VectorView<const T_high> high_vec(high);
+
23  for (size_t n = 0; n < length(high); n++) {
+
24  if (!(y < high_vec[n]))
+
25  return dom_err(function,y,name,
+
26  " is %1%, but must be less than ",
+
27  high_vec[n],result);
+
28  }
+
29  return true;
+
30  }
+
31  };
+
32 
+
33  template <typename T_y,
+
34  typename T_high,
+
35  typename T_result>
+
36  struct less<T_y, T_high, T_result, true> {
+
37  static bool check(const char* function,
+
38  const T_y& y,
+
39  const T_high& high,
+
40  const char* name,
+
41  T_result* result) {
+
42  using stan::length;
+
43  VectorView<const T_high> high_vec(high);
+
44  for (size_t n = 0; n < length(y); n++) {
+
45  if (!(stan::get(y,n) < high_vec[n]))
+
46  return dom_err_vec(n,function,y,name,
+
47  " is %1%, but must be less than ",
+
48  high_vec[n],result);
+
49  }
+
50  return true;
+
51  }
+
52  };
+
53  }
+
54  template <typename T_y, typename T_high, typename T_result>
+
55  inline bool check_less(const char* function,
+
56  const T_y& y,
+
57  const T_high& high,
+
58  const char* name,
+
59  T_result* result) {
+
60  return less<T_y,T_high,T_result,is_vector_like<T_y>::value>
+
61  ::check(function,y,high,name,result);
+
62  }
+
63  template <typename T_y, typename T_high>
+
64  inline bool check_less(const char* function,
+
65  const T_y& y,
+
66  const T_high& high,
+
67  const char* name) {
+
68  return check_less<T_y,T_high,typename scalar_type<T_y>::type *>
+
69  (function,y,high,name,0);
+
70  }
+
71 
+
72  }
+
73 }
+
74 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/check__less__or__equal_8hpp.html b/doc/api/html/check__less__or__equal_8hpp.html new file mode 100644 index 00000000000..cfac95a06cf --- /dev/null +++ b/doc/api/html/check__less__or__equal_8hpp.html @@ -0,0 +1,133 @@ + + + + + +Stan: src/stan/math/error_handling/check_less_or_equal.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
check_less_or_equal.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::math
 Matrices and templated mathematical functions.
 
+ + + + + + + +

+Functions

template<typename T_y , typename T_high , typename T_result >
bool stan::math::check_less_or_equal (const char *function, const T_y &y, const T_high &high, const char *name, T_result *result)
 
template<typename T_y , typename T_high >
bool stan::math::check_less_or_equal (const char *function, const T_y &y, const T_high &high, const char *name)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/check__less__or__equal_8hpp_source.html b/doc/api/html/check__less__or__equal_8hpp_source.html new file mode 100644 index 00000000000..154b79c0b75 --- /dev/null +++ b/doc/api/html/check__less__or__equal_8hpp_source.html @@ -0,0 +1,176 @@ + + + + + +Stan: src/stan/math/error_handling/check_less_or_equal.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
check_less_or_equal.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MATH__ERROR_HANDLING__CHECK_LESS_OR_EQUAL_HPP__
+
2 #define __STAN__MATH__ERROR_HANDLING__CHECK_LESS_OR_EQUAL_HPP__
+
3 
+ + +
6 
+
7 namespace stan {
+
8  namespace math {
+
9 
+
10  namespace {
+
11  template <typename T_y, typename T_high, typename T_result, bool is_vec>
+
12  struct less_or_equal {
+
13  static bool check(const char* function,
+
14  const T_y& y,
+
15  const T_high& high,
+
16  const char* name,
+
17  T_result* result) {
+
18  using stan::length;
+
19  VectorView<const T_high> high_vec(high);
+
20  for (size_t n = 0; n < length(high); n++) {
+
21  if (!(y <= high_vec[n]))
+
22  return dom_err(function,y,name,
+
23  " is %1%, but must be less than or equal to ",
+
24  high_vec[n],result);
+
25  }
+
26  return true;
+
27  }
+
28  };
+
29 
+
30  template <typename T_y, typename T_high, typename T_result>
+
31  struct less_or_equal<T_y, T_high, T_result, true> {
+
32  static bool check(const char* function,
+
33  const T_y& y,
+
34  const T_high& high,
+
35  const char* name,
+
36  T_result* result) {
+
37  using stan::length;
+
38  VectorView<const T_high> high_vec(high);
+
39  for (size_t n = 0; n < length(y); n++) {
+
40  if (!(stan::get(y,n) <= high_vec[n]))
+
41  return dom_err_vec(n,function,y,name,
+
42  " is %1%, but must be less than or equal to ",
+
43  high_vec[n],result);
+
44  }
+
45  return true;
+
46  }
+
47  };
+
48  }
+
49  template <typename T_y, typename T_high, typename T_result>
+
50  inline bool check_less_or_equal(const char* function,
+
51  const T_y& y,
+
52  const T_high& high,
+
53  const char* name,
+
54  T_result* result) {
+
55  return less_or_equal<T_y,T_high,T_result,is_vector_like<T_y>::value>
+
56  ::check(function,y,high,name,result);
+
57  }
+
58  template <typename T_y, typename T_high>
+
59  inline bool check_less_or_equal(const char* function,
+
60  const T_y& y,
+
61  const T_high& high,
+
62  const char* name) {
+
63  return check_less_or_equal<T_y,T_high,typename scalar_type<T_y>::type *>
+
64  (function,y,high,name,0);
+
65  }
+
66 
+
67  }
+
68 }
+
69 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/check__lower__triangular_8hpp.html b/doc/api/html/check__lower__triangular_8hpp.html new file mode 100644 index 00000000000..e4f15b191fe --- /dev/null +++ b/doc/api/html/check__lower__triangular_8hpp.html @@ -0,0 +1,136 @@ + + + + + +Stan: src/stan/math/error_handling/matrix/check_lower_triangular.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
check_lower_triangular.hpp File Reference
+
+
+
#include <sstream>
+#include <boost/type_traits/common_type.hpp>
+#include <stan/math/error_handling/dom_err.hpp>
+#include <stan/math/matrix/Eigen.hpp>
+
+

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::math
 Matrices and templated mathematical functions.
 
+ + + + + + + + +

+Functions

template<typename T_y , typename T_result >
bool stan::math::check_lower_triangular (const char *function, const Eigen::Matrix< T_y, Eigen::Dynamic, Eigen::Dynamic > &y, const char *name, T_result *result)
 Return true if the specified matrix is lower triangular.
 
template<typename T >
bool stan::math::check_lower_triangular (const char *function, const Eigen::Matrix< T, Eigen::Dynamic, Eigen::Dynamic > &y, const char *name, T *result=0)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/check__lower__triangular_8hpp_source.html b/doc/api/html/check__lower__triangular_8hpp_source.html new file mode 100644 index 00000000000..66890109b95 --- /dev/null +++ b/doc/api/html/check__lower__triangular_8hpp_source.html @@ -0,0 +1,150 @@ + + + + + +Stan: src/stan/math/error_handling/matrix/check_lower_triangular.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
check_lower_triangular.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MATH__ERROR_HANDLING__MATRIX__CHECK_LOWER_TRIANGULAR_HPP__
+
2 #define __STAN__MATH__ERROR_HANDLING__MATRIX__CHECK_LOWER_TRIANGULAR_HPP__
+
3 
+
4 #include <sstream>
+
5 #include <boost/type_traits/common_type.hpp>
+ + +
8 
+
9 namespace stan {
+
10 
+
11  namespace math {
+
12 
+
25  template <typename T_y, typename T_result>
+
26  inline bool check_lower_triangular(const char* function,
+
27  const Eigen::Matrix<T_y,Eigen::Dynamic,Eigen::Dynamic>& y,
+
28  const char* name,
+
29  T_result* result) {
+
30  for (int n = 1; n < y.cols(); ++n) {
+
31  for (int m = 0; m < n && m < y.rows(); ++m) {
+
32  if (y(m,n) != 0) {
+
33  std::stringstream msg;
+
34  msg << name << " is not lower triangular;"
+
35  << " " << name << "[" << m << "," << n << "]="
+
36  << "%1%";
+
37  std::string msg_string(msg.str());
+
38  return dom_err(function,y(m,n),"",msg_string.c_str(),"",result);
+
39  }
+
40  }
+
41  }
+
42  return true;
+
43  }
+
44 
+
45  template <typename T>
+
46  inline bool check_lower_triangular(const char* function,
+
47  const Eigen::Matrix<T,Eigen::Dynamic,Eigen::Dynamic>& y,
+
48  const char* name,
+
49  T* result = 0) {
+
50  return check_lower_triangular<T,T>(function,y,name,result);
+
51  }
+
52 
+
53  }
+
54 }
+
55 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/check__nonnegative_8hpp.html b/doc/api/html/check__nonnegative_8hpp.html new file mode 100644 index 00000000000..601a8c54825 --- /dev/null +++ b/doc/api/html/check__nonnegative_8hpp.html @@ -0,0 +1,133 @@ + + + + + +Stan: src/stan/math/error_handling/check_nonnegative.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
check_nonnegative.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::math
 Matrices and templated mathematical functions.
 
+ + + + + + + +

+Functions

template<typename T_y , typename T_result >
bool stan::math::check_nonnegative (const char *function, const T_y &y, const char *name, T_result *result)
 
template<typename T_y >
bool stan::math::check_nonnegative (const char *function, const T_y &y, const char *name)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/check__nonnegative_8hpp_source.html b/doc/api/html/check__nonnegative_8hpp_source.html new file mode 100644 index 00000000000..417c4d0a1a4 --- /dev/null +++ b/doc/api/html/check__nonnegative_8hpp_source.html @@ -0,0 +1,170 @@ + + + + + +Stan: src/stan/math/error_handling/check_nonnegative.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
check_nonnegative.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MATH__ERROR_HANDLING__CHECK_NONNEGATIVE_HPP__
+
2 #define __STAN__MATH__ERROR_HANDLING__CHECK_NONNEGATIVE_HPP__
+
3 
+ + +
6 
+
7 namespace stan {
+
8  namespace math {
+
9 
+
10  namespace {
+
11  template <typename T_y, typename T_result, bool is_vec>
+
12  struct nonnegative {
+
13  static bool check(const char* function,
+
14  const T_y& y,
+
15  const char* name,
+
16  T_result* result) {
+
17  // have to use not is_unsigned. is_signed will be false
+
18  // floating point types that have no unsigned versions.
+
19  if (!boost::is_unsigned<T_y>::value && !(y >= 0))
+
20  return dom_err(function,y,name,
+
21  " is %1%, but must be >= 0!","",
+
22  result);
+
23  return true;
+
24  }
+
25  };
+
26 
+
27  template <typename T_y, typename T_result>
+
28  struct nonnegative<T_y, T_result, true> {
+
29  static bool check(const char* function,
+
30  const T_y& y,
+
31  const char* name,
+
32  T_result* result) {
+
33  using stan::length;
+
34  for (size_t n = 0; n < length(y); n++) {
+
35  if (!boost::is_unsigned<typename T_y::value_type>::value
+
36  && !(stan::get(y,n) >= 0))
+
37  return dom_err_vec(n,function,y,name,
+
38  " is %1%, but must be >= 0!","",
+
39  result);
+
40  }
+
41  return true;
+
42  }
+
43  };
+
44  }
+
45  template <typename T_y, typename T_result>
+
46  inline bool check_nonnegative(const char* function,
+
47  const T_y& y,
+
48  const char* name,
+
49  T_result* result) {
+
50  return nonnegative<T_y,T_result,is_vector_like<T_y>::value>
+
51  ::check(function, y, name, result);
+
52  }
+
53  template <typename T_y>
+
54  inline bool check_nonnegative(const char* function,
+
55  const T_y& y,
+
56  const char* name) {
+
57  return check_nonnegative<T_y,typename scalar_type<T_y>::type *>
+
58  (function,y,name,0);
+
59  }
+
60 
+
61  }
+
62 }
+
63 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/check__not__nan_8hpp.html b/doc/api/html/check__not__nan_8hpp.html new file mode 100644 index 00000000000..49057aa22f7 --- /dev/null +++ b/doc/api/html/check__not__nan_8hpp.html @@ -0,0 +1,134 @@ + + + + + +Stan: src/stan/math/error_handling/check_not_nan.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
check_not_nan.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::math
 Matrices and templated mathematical functions.
 
+ + + + + + + + +

+Functions

template<typename T_y , typename T_result >
bool stan::math::check_not_nan (const char *function, const T_y &y, const char *name, T_result *result=0)
 Checks if the variable y is nan.
 
template<typename T >
bool stan::math::check_not_nan (const char *function, const T &y, const char *name)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/check__not__nan_8hpp_source.html b/doc/api/html/check__not__nan_8hpp_source.html new file mode 100644 index 00000000000..00b447ecde4 --- /dev/null +++ b/doc/api/html/check__not__nan_8hpp_source.html @@ -0,0 +1,170 @@ + + + + + +Stan: src/stan/math/error_handling/check_not_nan.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
check_not_nan.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MATH__ERROR_HANDLING__CHECK_NOT_NAN_HPP__
+
2 #define __STAN__MATH__ERROR_HANDLING__CHECK_NOT_NAN_HPP__
+
3 
+ + +
6 
+
7 namespace stan {
+
8  namespace math {
+
9 
+
10  namespace {
+
11  template <typename T_y, typename T_result, bool is_vec>
+
12  struct not_nan {
+
13  static bool check(const char* function,
+
14  const T_y& y,
+
15  const char* name,
+
16  T_result* result) {
+
17  if ((boost::math::isnan)(y))
+
18  return dom_err(function,y,name,
+
19  " is %1%, but must not be nan!","",
+
20  result);
+
21  return true;
+
22  }
+
23  };
+
24 
+
25  template <typename T_y, typename T_result>
+
26  struct not_nan<T_y, T_result, true> {
+
27  static bool check(const char* function,
+
28  const T_y& y,
+
29  const char* name,
+
30  T_result* result) {
+
31  // using stan::length;
+
32  for (size_t n = 0; n < stan::length(y); n++) {
+
33  if ((boost::math::isnan)(stan::get(y,n)))
+
34  return dom_err_vec(n,function,y,name,
+
35  " is %1%, but must not be nan!","",
+
36  result);
+
37  }
+
38  return true;
+
39  }
+
40  };
+
41  }
+
42 
+
53  template <typename T_y, typename T_result>
+
54  inline bool check_not_nan(const char* function,
+
55  const T_y& y,
+
56  const char* name,
+
57  T_result* result = 0) {
+
58  return not_nan<T_y,T_result,is_vector_like<T_y>::value>
+
59  ::check(function, y, name, result);
+
60  }
+
61 
+
62  // need this sig to infer types for result from type of y
+
63  template <typename T>
+
64  inline bool check_not_nan(const char* function,
+
65  const T& y,
+
66  const char* name) {
+
67  return check_not_nan<T, typename scalar_type<T>::type *>
+
68  (function,y,name,0);
+
69  }
+
70 
+
71  }
+
72 }
+
73 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/check__ordered_8hpp.html b/doc/api/html/check__ordered_8hpp.html new file mode 100644 index 00000000000..37a3a0a2950 --- /dev/null +++ b/doc/api/html/check__ordered_8hpp.html @@ -0,0 +1,135 @@ + + + + + +Stan: src/stan/math/error_handling/matrix/check_ordered.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
check_ordered.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::math
 Matrices and templated mathematical functions.
 
+ + + + + + + + +

+Functions

template<typename T_y , typename T_result >
bool stan::math::check_ordered (const char *function, const Eigen::Matrix< T_y, Eigen::Dynamic, 1 > &y, const char *name, T_result *result)
 Return true if the specified vector is sorted into increasing order.
 
template<typename T >
bool stan::math::check_ordered (const char *function, const Eigen::Matrix< T, Eigen::Dynamic, 1 > &y, const char *name, T *result=0)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/check__ordered_8hpp_source.html b/doc/api/html/check__ordered_8hpp_source.html new file mode 100644 index 00000000000..d08ef380043 --- /dev/null +++ b/doc/api/html/check__ordered_8hpp_source.html @@ -0,0 +1,153 @@ + + + + + +Stan: src/stan/math/error_handling/matrix/check_ordered.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
check_ordered.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MATH__ERROR_HANDLING__MATRIX__CHECK_ORDERED_HPP__
+
2 #define __STAN__MATH__ERROR_HANDLING__MATRIX__CHECK_ORDERED_HPP__
+
3 
+
4 #include <sstream>
+ + +
7 
+
8 namespace stan {
+
9  namespace math {
+
10 
+
24  template <typename T_y, typename T_result>
+
25  bool check_ordered(const char* function,
+
26  const Eigen::Matrix<T_y,Eigen::Dynamic,1>& y,
+
27  const char* name,
+
28  T_result* result) {
+
29  typedef typename Eigen::Matrix<T_y,Eigen::Dynamic,1>::size_type size_t;
+
30  if (y.size() == 0) {
+
31  return true;
+
32  }
+
33  for (size_t n = 1; n < y.size(); n++) {
+
34  if (!(y[n] > y[n-1])) {
+
35  std::ostringstream stream;
+
36  stream << name << " is not a valid ordered vector."
+
37  << " The element at " << n
+
38  << " is %1%, but should be greater than the previous element, "
+
39  << y[n-1];
+
40  std::string msg(stream.str());
+
41  return dom_err(function,y[n],name,
+
42  msg.c_str(),"",
+
43  result);
+
44  return false;
+
45  }
+
46  }
+
47  return true;
+
48  }
+
49  template <typename T>
+
50  bool check_ordered(const char* function,
+
51  const Eigen::Matrix<T,Eigen::Dynamic,1>& y,
+
52  const char* name,
+
53  T* result = 0) {
+
54  return check_ordered<T,T>(function,y,name,result);
+
55  }
+
56 
+
57  }
+
58 }
+
59 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/check__pos__semidefinite_8hpp.html b/doc/api/html/check__pos__semidefinite_8hpp.html new file mode 100644 index 00000000000..dfe25889e7c --- /dev/null +++ b/doc/api/html/check__pos__semidefinite_8hpp.html @@ -0,0 +1,136 @@ + + + + + +Stan: src/stan/math/error_handling/matrix/check_pos_semidefinite.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
check_pos_semidefinite.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::math
 Matrices and templated mathematical functions.
 
+ + + + + + + + +

+Functions

template<typename T_y , typename T_result >
bool stan::math::check_pos_semidefinite (const char *function, const Eigen::Matrix< T_y, Eigen::Dynamic, Eigen::Dynamic > &y, const char *name, T_result *result)
 Return true if the specified matrix is positive definite.
 
template<typename T >
bool stan::math::check_pos_semidefinite (const char *function, const Eigen::Matrix< T, Eigen::Dynamic, Eigen::Dynamic > &y, const char *name, T *result=0)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/check__pos__semidefinite_8hpp_source.html b/doc/api/html/check__pos__semidefinite_8hpp_source.html new file mode 100644 index 00000000000..da37444f3cc --- /dev/null +++ b/doc/api/html/check__pos__semidefinite_8hpp_source.html @@ -0,0 +1,157 @@ + + + + + +Stan: src/stan/math/error_handling/matrix/check_pos_semidefinite.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
check_pos_semidefinite.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MATH__ERROR_HANDLING__MATRIX__CHECK_POS_SEMIDEFINITE_HPP__
+
2 #define __STAN__MATH__ERROR_HANDLING__MATRIX__CHECK_POS_SEMIDEFINITE_HPP__
+
3 
+
4 #include <sstream>
+ + + +
8 
+
9 namespace stan {
+
10  namespace math {
+
11 
+
24  // FIXME: update warnings (message has (0,0) item)
+
25  template <typename T_y, typename T_result>
+
26  inline bool check_pos_semidefinite(const char* function,
+
27  const Eigen::Matrix<T_y,Eigen::Dynamic,Eigen::Dynamic>& y,
+
28  const char* name,
+
29  T_result* result) {
+
30  typedef
+ +
32  size_type;
+
33  if (y.rows() == 1 && y(0,0) < 0.0) {
+
34  std::ostringstream message;
+
35  message << name << " is not positive semi-definite. "
+
36  << name << "(0,0) is %1%.";
+
37  std::string msg(message.str());
+
38  return dom_err(function,y(0,0),name,msg.c_str(),"",result);
+
39  }
+
40  Eigen::LDLT< Eigen::Matrix<T_y,Eigen::Dynamic,Eigen::Dynamic> > cholesky
+
41  = y.ldlt();
+
42  if(cholesky.info() != Eigen::Success || (cholesky.vectorD().array() < 0.0).any()) {
+
43  std::ostringstream message;
+
44  message << name << " is not positive semi-definite. "
+
45  << name << "(0,0) is %1%.";
+
46  std::string msg(message.str());
+
47  return dom_err(function,y(0,0),name,msg.c_str(),"",result);
+
48  }
+
49  return true;
+
50  }
+
51 
+
52  template <typename T>
+
53  inline bool check_pos_semidefinite(const char* function,
+
54  const Eigen::Matrix<T,Eigen::Dynamic,Eigen::Dynamic>& y,
+
55  const char* name,
+
56  T* result = 0) {
+
57  return check_pos_semidefinite<T,T>(function,y,name,result);
+
58  }
+
59 
+
60  }
+
61 }
+
62 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/check__positive_8hpp.html b/doc/api/html/check__positive_8hpp.html new file mode 100644 index 00000000000..c5388ec8c54 --- /dev/null +++ b/doc/api/html/check__positive_8hpp.html @@ -0,0 +1,135 @@ + + + + + +Stan: src/stan/math/error_handling/check_positive.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
check_positive.hpp File Reference
+
+
+
#include <boost/type_traits/is_unsigned.hpp>
+#include <stan/meta/traits.hpp>
+#include <stan/math/error_handling/dom_err.hpp>
+#include <stan/math/error_handling/dom_err_vec.hpp>
+
+

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::math
 Matrices and templated mathematical functions.
 
+ + + + + + + +

+Functions

template<typename T_y , typename T_result >
bool stan::math::check_positive (const char *function, const T_y &y, const char *name, T_result *result)
 
template<typename T >
bool stan::math::check_positive (const char *function, const T &x, const char *name)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/check__positive_8hpp_source.html b/doc/api/html/check__positive_8hpp_source.html new file mode 100644 index 00000000000..d454efecb6c --- /dev/null +++ b/doc/api/html/check__positive_8hpp_source.html @@ -0,0 +1,172 @@ + + + + + +Stan: src/stan/math/error_handling/check_positive.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
check_positive.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MATH__ERROR_HANDLING__CHECK_POSITIVE_HPP__
+
2 #define __STAN__MATH__ERROR_HANDLING__CHECK_POSITIVE_HPP__
+
3 
+
4 #include <boost/type_traits/is_unsigned.hpp>
+
5 #include <stan/meta/traits.hpp>
+ + +
8 
+
9 namespace stan {
+
10  namespace math {
+
11 
+
12  namespace {
+
13  template <typename T_y, typename T_result, bool is_vec>
+
14  struct positive {
+
15  static bool check(const char* function,
+
16  const T_y& y,
+
17  const char* name,
+
18  T_result* result) {
+
19  // have to use not is_unsigned. is_signed will be false
+
20  // floating point types that have no unsigned versions.
+
21  if (!boost::is_unsigned<T_y>::value && !(y > 0))
+
22  return dom_err(function,y,name,
+
23  " is %1%, but must be > 0!","",
+
24  result);
+
25  return true;
+
26  }
+
27  };
+
28 
+
29  template <typename T_y, typename T_result>
+
30  struct positive<T_y, T_result, true> {
+
31  static bool check(const char* function,
+
32  const T_y& y,
+
33  const char* name,
+
34  T_result* result) {
+
35  using stan::length;
+
36  for (size_t n = 0; n < length(y); n++) {
+
37  if (!boost::is_unsigned<typename T_y::value_type>::value
+
38  && !(stan::get(y,n) > 0))
+
39  return dom_err_vec(n,function,y,name,
+
40  " is %1%, but must be > 0!","",
+
41  result);
+
42  }
+
43  return true;
+
44  }
+
45  };
+
46  }
+
47  template <typename T_y, typename T_result>
+
48  inline bool check_positive(const char* function,
+
49  const T_y& y,
+
50  const char* name,
+
51  T_result* result) {
+
52  return positive<T_y,T_result,is_vector_like<T_y>::value>
+
53  ::check(function, y, name, result);
+
54  }
+
55  template <typename T>
+
56  inline bool check_positive(const char* function,
+
57  const T& x,
+
58  const char* name) {
+
59  return check_positive<T,typename scalar_type<T>::type *>
+
60  (function,x,name,0);
+
61  }
+
62 
+
63  }
+
64 }
+
65 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/check__positive__ordered_8hpp.html b/doc/api/html/check__positive__ordered_8hpp.html new file mode 100644 index 00000000000..83120f99cd2 --- /dev/null +++ b/doc/api/html/check__positive__ordered_8hpp.html @@ -0,0 +1,135 @@ + + + + + +Stan: src/stan/math/error_handling/matrix/check_positive_ordered.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
check_positive_ordered.hpp File Reference
+
+
+
#include <sstream>
+#include <stan/math/error_handling/dom_err.hpp>
+#include <stan/math/matrix/Eigen.hpp>
+
+

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::math
 Matrices and templated mathematical functions.
 
+ + + + + + + + +

+Functions

template<typename T_y , typename T_result >
bool stan::math::check_positive_ordered (const char *function, const Eigen::Matrix< T_y, Eigen::Dynamic, 1 > &y, const char *name, T_result *result)
 Return true if the specified vector contains only non-negative values and is sorted into increasing order.
 
template<typename T >
bool stan::math::check_positive_ordered (const char *function, const Eigen::Matrix< T, Eigen::Dynamic, 1 > &y, const char *name, T *result=0)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/check__positive__ordered_8hpp_source.html b/doc/api/html/check__positive__ordered_8hpp_source.html new file mode 100644 index 00000000000..a53824896b3 --- /dev/null +++ b/doc/api/html/check__positive__ordered_8hpp_source.html @@ -0,0 +1,162 @@ + + + + + +Stan: src/stan/math/error_handling/matrix/check_positive_ordered.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
check_positive_ordered.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MATH__ERROR_HANDLING__MATRIX__CHECK_POSITIVE_ORDERED_HPP__
+
2 #define __STAN__MATH__ERROR_HANDLING__MATRIX__CHECK_POSITIVE_ORDERED_HPP__
+
3 
+
4 #include <sstream>
+ + +
7 
+
8 namespace stan {
+
9  namespace math {
+
10 
+
24  template <typename T_y, typename T_result>
+
25  bool check_positive_ordered(const char* function,
+
26  const Eigen::Matrix<T_y,Eigen::Dynamic,1>& y,
+
27  const char* name,
+
28  T_result* result) {
+ +
30  typedef typename Eigen::Matrix<T_y,Eigen::Dynamic,1>::size_type size_t;
+
31  if (y.size() == 0) {
+
32  return true;
+
33  }
+
34  if (y[0] < 0) {
+
35  std::ostringstream stream;
+
36  stream << name << " is not a valid positive_ordered vector."
+
37  << " The element at 0 is %1%, but should be postive.";
+
38  std::string msg(stream.str());
+
39  return dom_err(function,y[0],name,
+
40  msg.c_str(),"",
+
41  result);
+
42  }
+
43  for (size_t n = 1; n < y.size(); n++) {
+
44  if (!(y[n] > y[n-1])) {
+
45  std::ostringstream stream;
+
46  stream << name << " is not a valid ordered vector."
+
47  << " The element at " << n
+
48  << " is %1%, but should be greater than the previous element, "
+
49  << y[n-1];
+
50  std::string msg(stream.str());
+
51  return dom_err(function,y[n],name,
+
52  msg.c_str(),"",
+
53  result);
+
54  }
+
55  }
+
56  return true;
+
57  }
+
58  template <typename T>
+
59  bool check_positive_ordered(const char* function,
+
60  const Eigen::Matrix<T,Eigen::Dynamic,1>& y,
+
61  const char* name,
+
62  T* result = 0) {
+
63  return check_positive_ordered<T,T>(function,y,name,result);
+
64  }
+
65 
+
66  }
+
67 }
+
68 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/check__range_8hpp.html b/doc/api/html/check__range_8hpp.html new file mode 100644 index 00000000000..ad3171fceef --- /dev/null +++ b/doc/api/html/check__range_8hpp.html @@ -0,0 +1,129 @@ + + + + + +Stan: src/stan/math/matrix/check_range.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
check_range.hpp File Reference
+
+
+
#include <sstream>
+#include <stdexcept>
+
+

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::math
 Matrices and templated mathematical functions.
 
+ + + +

+Functions

void stan::math::check_range (size_t max, size_t i, const char *msg, size_t idx)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/check__range_8hpp_source.html b/doc/api/html/check__range_8hpp_source.html new file mode 100644 index 00000000000..52d2fd01fd0 --- /dev/null +++ b/doc/api/html/check__range_8hpp_source.html @@ -0,0 +1,148 @@ + + + + + +Stan: src/stan/math/matrix/check_range.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
check_range.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MATH__MATRIX__CHECK_RANGE_HPP__
+
2 #define __STAN__MATH__MATRIX__CHECK_RANGE_HPP__
+
3 
+
4 #include <sstream>
+
5 #include <stdexcept>
+
6 
+
7 namespace stan {
+
8  namespace math {
+
9 
+
10  namespace {
+
11 
+
12  void raise_range_error(size_t max,
+
13  size_t i,
+
14  const char* msg,
+
15  size_t idx) {
+
16  std::stringstream s;
+
17  s << "INDEX OPERATOR [] OUT OF BOUNDS"
+
18  << "; index=" << i
+
19  << "; lower bound=1"
+
20  << "; upper bound=" << max
+
21  << "; index position=" << idx
+
22  << "; " << msg
+
23  << std::endl;
+
24  throw std::out_of_range(s.str());
+
25  }
+
26 
+
27  }
+
28 
+
29  inline
+
30  void check_range(size_t max,
+
31  size_t i,
+
32  const char* msg,
+
33  size_t idx) {
+
34  if (i < 1 || i > max)
+
35  raise_range_error(max,i,msg,idx);
+
36  }
+
37 
+
38 
+
39  }
+
40 }
+
41 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/check__simplex_8hpp.html b/doc/api/html/check__simplex_8hpp.html new file mode 100644 index 00000000000..0a60fe53e97 --- /dev/null +++ b/doc/api/html/check__simplex_8hpp.html @@ -0,0 +1,136 @@ + + + + + +Stan: src/stan/math/error_handling/matrix/check_simplex.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
check_simplex.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::math
 Matrices and templated mathematical functions.
 
+ + + + + + + + +

+Functions

template<typename T_prob , typename T_result >
bool stan::math::check_simplex (const char *function, const Eigen::Matrix< T_prob, Eigen::Dynamic, 1 > &theta, const char *name, T_result *result)
 Return true if the specified vector is simplex.
 
template<typename T >
bool stan::math::check_simplex (const char *function, const Eigen::Matrix< T, Eigen::Dynamic, 1 > &theta, const char *name, T *result=0)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/check__simplex_8hpp_source.html b/doc/api/html/check__simplex_8hpp_source.html new file mode 100644 index 00000000000..0d4bf8f7aac --- /dev/null +++ b/doc/api/html/check__simplex_8hpp_source.html @@ -0,0 +1,169 @@ + + + + + +Stan: src/stan/math/error_handling/matrix/check_simplex.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
check_simplex.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MATH__ERROR_HANDLING__MATRIX__CHECK_SIMPLEX_HPP__
+
2 #define __STAN__MATH__ERROR_HANDLING__MATRIX__CHECK_SIMPLEX_HPP__
+
3 
+
4 #include <sstream>
+ + + +
8 
+
9 namespace stan {
+
10  namespace math {
+
11 
+
26  template <typename T_prob, typename T_result>
+
27  bool check_simplex(const char* function,
+
28  const Eigen::Matrix<T_prob,Eigen::Dynamic,1>& theta,
+
29  const char* name,
+
30  T_result* result) {
+ + +
33  if (theta.size() == 0) {
+
34  std::string message(name);
+
35  message += " is not a valid simplex. %1% elements in the vector.";
+
36  return dom_err(function,0,name,
+
37  message.c_str(),"",
+
38  result);
+
39  }
+
40  if (fabs(1.0 - theta.sum()) > CONSTRAINT_TOLERANCE) {
+
41  std::stringstream msg;
+
42  T_prob sum = theta.sum();
+
43  msg << "in function check_simplex(%1%), ";
+
44  msg << name << " is not a valid simplex.";
+
45  msg << " The sum of the elements should be 1, but is " << sum;
+
46  std::string tmp(msg.str());
+
47  return dom_err(function,sum,name,
+
48  tmp.c_str(),"",
+
49  result);
+
50  }
+
51  for (size_t n = 0; n < theta.size(); n++) {
+
52  if (!(theta[n] >= 0)) {
+
53  std::ostringstream stream;
+
54  stream << name << " is not a valid simplex."
+
55  << " The element at " << n
+
56  << " is %1%, but should be greater than or equal to 0";
+
57  std::string tmp(stream.str());
+
58  return dom_err(function,theta[n],name,
+
59  tmp.c_str(),"",
+
60  result);
+
61  }
+
62  }
+
63  return true;
+
64  }
+
65 
+
66  template <typename T>
+
67  inline bool check_simplex(const char* function,
+
68  const Eigen::Matrix<T,Eigen::Dynamic,1>& theta,
+
69  const char* name,
+
70  T* result = 0) {
+
71  return check_simplex<T,T>(function,theta,name,result);
+
72  }
+
73 
+
74  }
+
75 }
+
76 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/check__size__match_8hpp.html b/doc/api/html/check__size__match_8hpp.html new file mode 100644 index 00000000000..ec2721a3d0e --- /dev/null +++ b/doc/api/html/check__size__match_8hpp.html @@ -0,0 +1,134 @@ + + + + + +Stan: src/stan/math/error_handling/matrix/check_size_match.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
check_size_match.hpp File Reference
+
+
+
#include <sstream>
+#include <boost/type_traits/common_type.hpp>
+#include <stan/math/error_handling/dom_err.hpp>
+
+

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::math
 Matrices and templated mathematical functions.
 
+ + + + + + + +

+Functions

template<typename T_size1 , typename T_size2 , typename T_result >
bool stan::math::check_size_match (const char *function, T_size1 i, const char *name_i, T_size2 j, const char *name_j, T_result *result)
 
template<typename T_size1 , typename T_size2 >
bool stan::math::check_size_match (const char *function, T_size1 i, const char *name_i, T_size2 j, const char *name_j, T_size1 *result=0)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/check__size__match_8hpp_source.html b/doc/api/html/check__size__match_8hpp_source.html new file mode 100644 index 00000000000..13001a41be7 --- /dev/null +++ b/doc/api/html/check__size__match_8hpp_source.html @@ -0,0 +1,153 @@ + + + + + +Stan: src/stan/math/error_handling/matrix/check_size_match.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
check_size_match.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MATH__ERROR_HANDLING__MATRIX__CHECK_SIZE_MATCH_HPP__
+
2 #define __STAN__MATH__ERROR_HANDLING__MATRIX__CHECK_SIZE_MATCH_HPP__
+
3 
+
4 #include <sstream>
+
5 #include <boost/type_traits/common_type.hpp>
+ +
7 
+
8 namespace stan {
+
9  namespace math {
+
10 
+
11  // FIXME: update warnings
+
12  template <typename T_size1, typename T_size2, typename T_result>
+
13  inline bool check_size_match(const char* function,
+
14  T_size1 i,
+
15  const char* name_i,
+
16  T_size2 j,
+
17  const char* name_j,
+
18  T_result* result) {
+
19  typedef typename boost::common_type<T_size1,T_size2>::type common_type;
+
20  if (static_cast<common_type>(i) != static_cast<common_type>(j)) {
+
21  std::ostringstream msg;
+
22  msg << name_i << " (%1%) and "
+
23  << name_j << " (" << j << ") must match in size";
+
24  std::string tmp(msg.str());
+
25  return dom_err(function,i,name_i,
+
26  tmp.c_str(),"",
+
27  result);
+
28  }
+
29  return true;
+
30  }
+
31 
+
32  template <typename T_size1, typename T_size2>
+
33  inline
+
34  bool check_size_match(const char* function,
+
35  T_size1 i, const char* name_i,
+
36  T_size2 j, const char* name_j,
+
37  T_size1* result = 0) {
+
38  return check_size_match<T_size1,T_size2,T_size1>(function,
+
39  i,name_i,
+
40  j,name_j,
+
41  result);
+
42  }
+
43 
+
44  }
+
45 }
+
46 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/check__spsd__matrix_8hpp.html b/doc/api/html/check__spsd__matrix_8hpp.html new file mode 100644 index 00000000000..052ec1a582f --- /dev/null +++ b/doc/api/html/check__spsd__matrix_8hpp.html @@ -0,0 +1,138 @@ + + + + + +Stan: src/stan/math/error_handling/matrix/check_spsd_matrix.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
check_spsd_matrix.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::math
 Matrices and templated mathematical functions.
 
+ + + + + + + + +

+Functions

template<typename T_y , typename T_result >
bool stan::math::check_spsd_matrix (const char *function, const Eigen::Matrix< T_y, Eigen::Dynamic, Eigen::Dynamic > &y, const char *name, T_result *result)
 Return true if the specified matrix is a square, symmetric, and positive semi-definite.
 
template<typename T >
bool stan::math::check_spsd_matrix (const char *function, const Eigen::Matrix< T, Eigen::Dynamic, Eigen::Dynamic > &y, const char *name, T *result=0)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/check__spsd__matrix_8hpp_source.html b/doc/api/html/check__spsd__matrix_8hpp_source.html new file mode 100644 index 00000000000..ad105d3fc91 --- /dev/null +++ b/doc/api/html/check__spsd__matrix_8hpp_source.html @@ -0,0 +1,149 @@ + + + + + +Stan: src/stan/math/error_handling/matrix/check_spsd_matrix.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
check_spsd_matrix.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MATH__ERROR_HANDLING__MATRIX__CHECK_SPSD_MATRIX_HPP__
+
2 #define __STAN__MATH__ERROR_HANDLING__MATRIX__CHECK_SPSD_MATRIX_HPP__
+
3 
+
4 #include <sstream>
+ + + + + +
10 
+
11 
+
12 namespace stan {
+
13  namespace math {
+
14 
+
27  // FIXME: update warnings
+
28  template <typename T_y, typename T_result>
+
29  inline bool check_spsd_matrix(const char* function,
+
30  const Eigen::Matrix<T_y,Eigen::Dynamic,Eigen::Dynamic>& y,
+
31  const char* name,
+
32  T_result* result) {
+
33  if (!check_square(function, y, name, result))
+
34  return false;
+
35  if (!check_positive(function, y.rows(), "rows", result))
+
36  return false;
+
37  if (!check_symmetric(function, y, name, result))
+
38  return false;
+
39  if (!check_pos_semidefinite(function, y, name, result))
+
40  return false;
+
41  return true;
+
42  }
+
43 
+
44  template <typename T>
+
45  inline bool check_spsd_matrix(const char* function,
+
46  const Eigen::Matrix<T,Eigen::Dynamic,Eigen::Dynamic>& y,
+
47  const char* name,
+
48  T* result = 0) {
+
49  return check_spsd_matrix<T,T>(function,y,name,result);
+
50  }
+
51 
+
52  }
+
53 }
+
54 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/check__square_8hpp.html b/doc/api/html/check__square_8hpp.html new file mode 100644 index 00000000000..a4fc301f1fa --- /dev/null +++ b/doc/api/html/check__square_8hpp.html @@ -0,0 +1,138 @@ + + + + + +Stan: src/stan/math/error_handling/matrix/check_square.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
check_square.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::math
 Matrices and templated mathematical functions.
 
+ + + + + + + + +

+Functions

template<typename T_y , typename T_result >
bool stan::math::check_square (const char *function, const Eigen::Matrix< T_y, Eigen::Dynamic, Eigen::Dynamic > &y, const char *name, T_result *result)
 Return true if the specified matrix is square.
 
template<typename T >
bool stan::math::check_square (const char *function, const Eigen::Matrix< T, Eigen::Dynamic, Eigen::Dynamic > &y, const char *name, T *result=0)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/check__square_8hpp_source.html b/doc/api/html/check__square_8hpp_source.html new file mode 100644 index 00000000000..5ef7f87286a --- /dev/null +++ b/doc/api/html/check__square_8hpp_source.html @@ -0,0 +1,144 @@ + + + + + +Stan: src/stan/math/error_handling/matrix/check_square.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
check_square.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MATH__ERROR_HANDLING__MATRIX__CHECK_SQUARE_HPP__
+
2 #define __STAN__MATH__ERROR_HANDLING__MATRIX__CHECK_SQUARE_HPP__
+
3 
+
4 #include <sstream>
+ + + + + +
10 
+
11 
+
12 namespace stan {
+
13  namespace math {
+
14 
+
25  template <typename T_y, typename T_result>
+
26  inline bool check_square(const char* function,
+
27  const Eigen::Matrix<T_y,Eigen::Dynamic,Eigen::Dynamic>& y,
+
28  const char* name,
+
29  T_result* result) {
+
30  if (!check_size_match(function,
+
31  y.rows(), "Rows of matrix",
+
32  y.cols(), "columns of matrix",
+
33  result))
+
34  return false;
+
35  return true;
+
36  }
+
37 
+
38  template <typename T>
+
39  inline bool check_square(const char* function,
+
40  const Eigen::Matrix<T,Eigen::Dynamic,Eigen::Dynamic>& y,
+
41  const char* name,
+
42  T* result = 0) {
+
43  return check_square<T,T>(function,y,name,result);
+
44  }
+
45  }
+
46 }
+
47 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/check__symmetric_8hpp.html b/doc/api/html/check__symmetric_8hpp.html new file mode 100644 index 00000000000..513acdf40d6 --- /dev/null +++ b/doc/api/html/check__symmetric_8hpp.html @@ -0,0 +1,137 @@ + + + + + +Stan: src/stan/math/error_handling/matrix/check_symmetric.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
check_symmetric.hpp File Reference
+
+
+
#include <sstream>
+#include <boost/type_traits/common_type.hpp>
+#include <stan/math/error_handling/dom_err.hpp>
+#include <stan/math/matrix/Eigen.hpp>
+#include <stan/math/error_handling/matrix/constraint_tolerance.hpp>
+
+

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::math
 Matrices and templated mathematical functions.
 
+ + + + + + + + +

+Functions

template<typename T_y , typename T_result >
bool stan::math::check_symmetric (const char *function, const Eigen::Matrix< T_y, Eigen::Dynamic, Eigen::Dynamic > &y, const char *name, T_result *result)
 Return true if the specified matrix is symmetric.
 
template<typename T >
bool stan::math::check_symmetric (const char *function, const Eigen::Matrix< T, Eigen::Dynamic, Eigen::Dynamic > &y, const char *name, T *result=0)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/check__symmetric_8hpp_source.html b/doc/api/html/check__symmetric_8hpp_source.html new file mode 100644 index 00000000000..67d24b2f033 --- /dev/null +++ b/doc/api/html/check__symmetric_8hpp_source.html @@ -0,0 +1,159 @@ + + + + + +Stan: src/stan/math/error_handling/matrix/check_symmetric.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
check_symmetric.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MATH__ERROR_HANDLING__MATRIX__CHECK_SYMMETRIC_HPP__
+
2 #define __STAN__MATH__ERROR_HANDLING__MATRIX__CHECK_SYMMETRIC_HPP__
+
3 
+
4 #include <sstream>
+
5 #include <boost/type_traits/common_type.hpp>
+ + + +
9 
+
10 namespace stan {
+
11  namespace math {
+
12 
+
25  template <typename T_y, typename T_result>
+
26  inline bool check_symmetric(const char* function,
+
27  const Eigen::Matrix<T_y,Eigen::Dynamic,Eigen::Dynamic>& y,
+
28  const char* name,
+
29  T_result* result) {
+
30  typedef
+ +
32  size_type;
+
33  size_type k = y.rows();
+
34  if (k == 1)
+
35  return true;
+
36  for (size_type m = 0; m < k; ++m) {
+
37  for (size_type n = m + 1; n < k; ++n) {
+
38  if (fabs(y(m,n) - y(n,m)) > CONSTRAINT_TOLERANCE) {
+
39  std::ostringstream message;
+
40  message << name << " is not symmetric. "
+
41  << name << "[" << m << "," << n << "] is %1%, but "
+
42  << name << "[" << n << "," << m
+
43  << "] element is " << y(n,m);
+
44  std::string msg(message.str());
+
45  return dom_err(function,y(m,n),name,
+
46  msg.c_str(),"",
+
47  result);
+
48  }
+
49  }
+
50  }
+
51  return true;
+
52  }
+
53 
+
54  template <typename T>
+
55  inline bool check_symmetric(const char* function,
+
56  const Eigen::Matrix<T,Eigen::Dynamic,Eigen::Dynamic>& y,
+
57  const char* name,
+
58  T* result = 0) {
+
59  return check_symmetric<T,T>(function,y,name,result);
+
60  }
+
61 
+
62  }
+
63 }
+
64 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/check__unit__vector_8hpp.html b/doc/api/html/check__unit__vector_8hpp.html new file mode 100644 index 00000000000..af05725eb7d --- /dev/null +++ b/doc/api/html/check__unit__vector_8hpp.html @@ -0,0 +1,136 @@ + + + + + +Stan: src/stan/math/error_handling/matrix/check_unit_vector.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
check_unit_vector.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::math
 Matrices and templated mathematical functions.
 
+ + + + + + + + +

+Functions

template<typename T_prob , typename T_result >
bool stan::math::check_unit_vector (const char *function, const Eigen::Matrix< T_prob, Eigen::Dynamic, 1 > &theta, const char *name, T_result *result)
 Return true if the specified vector is unit vector.
 
template<typename T >
bool stan::math::check_unit_vector (const char *function, const Eigen::Matrix< T, Eigen::Dynamic, 1 > &theta, const char *name, T *result=0)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/check__unit__vector_8hpp_source.html b/doc/api/html/check__unit__vector_8hpp_source.html new file mode 100644 index 00000000000..60d6ba96b5f --- /dev/null +++ b/doc/api/html/check__unit__vector_8hpp_source.html @@ -0,0 +1,156 @@ + + + + + +Stan: src/stan/math/error_handling/matrix/check_unit_vector.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
check_unit_vector.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MATH__ERROR_HANDLING__MATRIX__CHECK_UNIT_VECTOR_HPP__
+
2 #define __STAN__MATH__ERROR_HANDLING__MATRIX__CHECK_UNIT_VECTOR_HPP__
+
3 
+
4 #include <sstream>
+ + + +
8 
+
9 namespace stan {
+
10  namespace math {
+
11 
+
24  template <typename T_prob, typename T_result>
+
25  bool check_unit_vector(const char* function,
+
26  const Eigen::Matrix<T_prob,Eigen::Dynamic,1>& theta,
+
27  const char* name,
+
28  T_result* result) {
+ +
30  if (theta.size() == 0) {
+
31  std::string message(name);
+
32  message += " is not a valid unit vector. %1% elements in the vector.";
+
33  return dom_err(function,0,name,
+
34  message.c_str(),"",
+
35  result);
+
36  }
+
37  T_prob ssq = theta.squaredNorm();
+
38  if (fabs(1.0 - ssq) > CONSTRAINT_TOLERANCE) {
+
39  std::stringstream msg;
+
40  msg << "in function check_unit_vector(%1%), ";
+
41  msg << name << " is not a valid unit vector.";
+
42  msg << " The sum of the squares of the elements should be 1, but is " << ssq;
+
43  std::string tmp(msg.str());
+
44  return dom_err(function,ssq,name,
+
45  tmp.c_str(),"",
+
46  result);
+
47  }
+
48  return true;
+
49  }
+
50 
+
51  template <typename T>
+
52  inline bool check_unit_vector(const char* function,
+
53  const Eigen::Matrix<T,Eigen::Dynamic,1>& theta,
+
54  const char* name,
+
55  T* result = 0) {
+
56  return check_unit_vector<T,T>(function,theta,name,result);
+
57  }
+
58 
+
59  }
+
60 }
+
61 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/chi__square_8hpp.html b/doc/api/html/chi__square_8hpp.html new file mode 100644 index 00000000000..d5d5a5e1979 --- /dev/null +++ b/doc/api/html/chi__square_8hpp.html @@ -0,0 +1,156 @@ + + + + + +Stan: src/stan/prob/distributions/univariate/continuous/chi_square.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
chi_square.hpp File Reference
+
+
+
#include <boost/random/chi_squared_distribution.hpp>
+#include <boost/random/variate_generator.hpp>
+#include <stan/agrad/partials_vari.hpp>
+#include <stan/math/error_handling.hpp>
+#include <stan/math/constants.hpp>
+#include <stan/math/functions/multiply_log.hpp>
+#include <stan/math/functions/value_of.hpp>
+#include <stan/meta/traits.hpp>
+#include <stan/prob/constants.hpp>
+#include <stan/prob/traits.hpp>
+#include <stan/prob/internal_math.hpp>
+
+

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::prob
 Templated probability distributions.
 
+ + + + + + + + + + + + + + + + + + + + + +

+Functions

template<bool propto, typename T_y , typename T_dof >
return_type< T_y, T_dof >::type stan::prob::chi_square_log (const T_y &y, const T_dof &nu)
 The log of a chi-squared density for y with the specified degrees of freedom parameter.
 
template<typename T_y , typename T_dof >
return_type< T_y, T_dof >::type stan::prob::chi_square_log (const T_y &y, const T_dof &nu)
 
template<typename T_y , typename T_dof >
return_type< T_y, T_dof >::type stan::prob::chi_square_cdf (const T_y &y, const T_dof &nu)
 Calculates the chi square cumulative distribution function for the given variate and degrees of freedom.
 
template<typename T_y , typename T_dof >
return_type< T_y, T_dof >::type stan::prob::chi_square_cdf_log (const T_y &y, const T_dof &nu)
 
template<typename T_y , typename T_dof >
return_type< T_y, T_dof >::type stan::prob::chi_square_ccdf_log (const T_y &y, const T_dof &nu)
 
template<class RNG >
double stan::prob::chi_square_rng (const double nu, RNG &rng)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/chi__square_8hpp_source.html b/doc/api/html/chi__square_8hpp_source.html new file mode 100644 index 00000000000..2400e9f7888 --- /dev/null +++ b/doc/api/html/chi__square_8hpp_source.html @@ -0,0 +1,570 @@ + + + + + +Stan: src/stan/prob/distributions/univariate/continuous/chi_square.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
chi_square.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__PROB__DISTRIBUTIONS__UNIVARIATE__CONTINUOUS__CHI_SQUARE_HPP__
+
2 #define __STAN__PROB__DISTRIBUTIONS__UNIVARIATE__CONTINUOUS__CHI_SQUARE_HPP__
+
3 
+
4 #include <boost/random/chi_squared_distribution.hpp>
+
5 #include <boost/random/variate_generator.hpp>
+
6 
+ + + + + +
12 #include <stan/meta/traits.hpp>
+
13 #include <stan/prob/constants.hpp>
+
14 #include <stan/prob/traits.hpp>
+ +
16 
+
17 namespace stan {
+
18 
+
19  namespace prob {
+
20 
+
40  template <bool propto,
+
41  typename T_y, typename T_dof>
+
42  typename return_type<T_y,T_dof>::type
+
43  chi_square_log(const T_y& y, const T_dof& nu) {
+
44  static const char* function = "stan::prob::chi_square_log(%1%)";
+
45 
+
46  // check if any vectors are zero length
+
47  if (!(stan::length(y)
+
48  && stan::length(nu)))
+
49  return 0.0;
+
50 
+ + + + + + +
57 
+
58  double logp(0.0);
+
59  if (!check_not_nan(function, y, "Random variable", &logp))
+
60  return logp;
+
61  if (!check_nonnegative(function, y, "Random variable", &logp))
+
62  return logp;
+
63  if (!check_finite(function, nu, "Degrees of freedom parameter", &logp))
+
64  return logp;
+
65  if (!check_positive(function, nu, "Degrees of freedom parameter", &logp))
+
66  return logp;
+
67  if (!(check_consistent_sizes(function,
+
68  y,nu,
+
69  "Random variable","Degrees of freedom parameter",
+
70  &logp)))
+
71  return logp;
+
72 
+
73 
+
74  // set up template expressions wrapping scalars into vector views
+
75  VectorView<const T_y> y_vec(y);
+
76  VectorView<const T_dof> nu_vec(nu);
+
77  size_t N = max_size(y, nu);
+
78 
+
79  for (size_t n = 0; n < length(y); n++)
+
80  if (value_of(y_vec[n]) < 0)
+
81  return LOG_ZERO;
+
82 
+
83  // check if no variables are involved and prop-to
+ +
85  return 0.0;
+
86 
+ +
88  using boost::math::lgamma;
+ +
90 
+ +
92  is_vector<T_y>::value> log_y(length(y));
+
93  for (size_t i = 0; i < length(y); i++)
+ +
95  log_y[i] = log(value_of(y_vec[i]));
+
96 
+ +
98  is_vector<T_y>::value> inv_y(length(y));
+
99  for (size_t i = 0; i < length(y); i++)
+ +
101  inv_y[i] = 1.0 / value_of(y_vec[i]);
+
102 
+ +
104  is_vector<T_dof>::value> lgamma_half_nu(length(nu));
+ +
106  is_vector<T_dof>::value> digamma_half_nu_over_two(length(nu));
+
107 
+
108  for (size_t i = 0; i < length(nu); i++) {
+
109  double half_nu = 0.5 * value_of(nu_vec[i]);
+ +
111  lgamma_half_nu[i] = lgamma(half_nu);
+ +
113  digamma_half_nu_over_two[i] = digamma(half_nu) * 0.5;
+
114  }
+
115 
+
116 
+
117  agrad::OperandsAndPartials<T_y,T_dof> operands_and_partials(y, nu);
+
118 
+
119  for (size_t n = 0; n < N; n++) {
+
120  const double y_dbl = value_of(y_vec[n]);
+
121  const double half_y = 0.5 * y_dbl;
+
122  const double nu_dbl = value_of(nu_vec[n]);
+
123  const double half_nu = 0.5 * nu_dbl;
+ +
125  logp += nu_dbl * NEG_LOG_TWO_OVER_TWO - lgamma_half_nu[n];
+ +
127  logp += (half_nu-1.0) * log_y[n];
+ +
129  logp -= half_y;
+
130 
+ +
132  operands_and_partials.d_x1[n] += (half_nu-1.0)*inv_y[n] - 0.5;
+
133  }
+ +
135  operands_and_partials.d_x2[n]
+
136  += NEG_LOG_TWO_OVER_TWO - digamma_half_nu_over_two[n] + log_y[n]*0.5;
+
137  }
+
138  }
+
139  return operands_and_partials.to_var(logp);
+
140  }
+
141 
+
142  template <typename T_y, typename T_dof>
+
143  inline
+ +
145  chi_square_log(const T_y& y, const T_dof& nu) {
+
146  return chi_square_log<false>(y,nu);
+
147  }
+
148 
+
158  template <typename T_y, typename T_dof>
+ +
160  chi_square_cdf(const T_y& y, const T_dof& nu) {
+
161  static const char* function = "stan::prob::chi_square_cdf(%1%)";
+
162 
+ + + + + +
168  using stan::math::value_of;
+
169 
+
170  double cdf(1.0);
+
171 
+
172  // Size checks
+
173  if (!(stan::length(y) && stan::length(nu)))
+
174  return cdf;
+
175 
+
176  if (!check_not_nan(function, y, "Random variable", &cdf))
+
177  return cdf;
+
178  if (!check_nonnegative(function, y, "Random variable", &cdf))
+
179  return cdf;
+
180  if (!check_finite(function, nu, "Degrees of freedom parameter", &cdf))
+
181  return cdf;
+
182  if (!check_positive(function, nu, "Degrees of freedom parameter", &cdf))
+
183  return cdf;
+
184  if (!(check_consistent_sizes(function,
+
185  y,nu,
+
186  "Random variable","Degrees of freedom parameter",
+
187  &cdf)))
+
188  return cdf;
+
189 
+
190  // Wrap arguments in vectors
+
191  VectorView<const T_y> y_vec(y);
+
192  VectorView<const T_dof> nu_vec(nu);
+
193  size_t N = max_size(y, nu);
+
194 
+ +
196  operands_and_partials(y, nu);
+
197 
+
198  // Explicit return for extreme values
+
199  // The gradients are technically ill-defined, but treated as zero
+
200  for (size_t i = 0; i < stan::length(y); i++) {
+
201  if (value_of(y_vec[i]) == 0)
+
202  return operands_and_partials.to_var(0.0);
+
203  }
+
204 
+
205  // Compute CDF and its gradients
+
206  using boost::math::gamma_p_derivative;
+
207  using boost::math::gamma_p;
+
208  using boost::math::digamma;
+
209  using boost::math::tgamma;
+
210 
+
211  // Cache a few expensive function calls if nu is a parameter
+ + +
214  gamma_vec(stan::length(nu));
+ + +
217  digamma_vec(stan::length(nu));
+
218 
+ +
220  for (size_t i = 0; i < stan::length(nu); i++) {
+
221  const double alpha_dbl = value_of(nu_vec[i]) * 0.5;
+
222  gamma_vec[i] = tgamma(alpha_dbl);
+
223  digamma_vec[i] = digamma(alpha_dbl);
+
224  }
+
225  }
+
226 
+
227  // Compute vectorized CDF and gradient
+
228  for (size_t n = 0; n < N; n++) {
+
229  // Explicit results for extreme values
+
230  // The gradients are technically ill-defined, but treated as zero
+
231  if (value_of(y_vec[n]) == std::numeric_limits<double>::infinity())
+
232  continue;
+
233 
+
234  // Pull out values
+
235  const double y_dbl = value_of(y_vec[n]);
+
236  const double alpha_dbl = value_of(nu_vec[n]) * 0.5;
+
237  const double beta_dbl = 0.5;
+
238 
+
239  // Compute
+
240  const double Pn = gamma_p(alpha_dbl, beta_dbl * y_dbl);
+
241 
+
242  cdf *= Pn;
+
243 
+ +
245  operands_and_partials.d_x1[n]
+
246  += beta_dbl * gamma_p_derivative(alpha_dbl, beta_dbl * y_dbl)
+
247  / Pn;
+ +
249  operands_and_partials.d_x2[n]
+
250  -= 0.5 * stan::math::gradRegIncGamma(alpha_dbl, beta_dbl
+
251  * y_dbl, gamma_vec[n],
+
252  digamma_vec[n]) / Pn;
+
253  }
+
254 
+ +
256  for (size_t n = 0; n < stan::length(y); ++n)
+
257  operands_and_partials.d_x1[n] *= cdf;
+ +
259  for (size_t n = 0; n < stan::length(nu); ++n)
+
260  operands_and_partials.d_x2[n] *= cdf;
+
261 
+
262  return operands_and_partials.to_var(cdf);
+
263  }
+
264 
+
265  template <typename T_y, typename T_dof>
+ +
267  chi_square_cdf_log(const T_y& y, const T_dof& nu) {
+
268  static const char* function = "stan::prob::chi_square_cdf_log(%1%)";
+
269 
+ + + + + +
275  using stan::math::value_of;
+
276 
+
277  double cdf_log(0.0);
+
278 
+
279  // Size checks
+
280  if (!(stan::length(y) && stan::length(nu)))
+
281  return cdf_log;
+
282 
+
283  if (!check_not_nan(function, y, "Random variable", &cdf_log))
+
284  return cdf_log;
+
285  if (!check_nonnegative(function, y, "Random variable", &cdf_log))
+
286  return cdf_log;
+
287  if (!check_finite(function, nu, "Degrees of freedom parameter", &cdf_log))
+
288  return cdf_log;
+
289  if (!check_positive(function, nu, "Degrees of freedom parameter", &cdf_log))
+
290  return cdf_log;
+
291  if (!(check_consistent_sizes(function,
+
292  y,nu,
+
293  "Random variable","Degrees of freedom parameter",
+
294  &cdf_log)))
+
295  return cdf_log;
+
296 
+
297  // Wrap arguments in vectors
+
298  VectorView<const T_y> y_vec(y);
+
299  VectorView<const T_dof> nu_vec(nu);
+
300  size_t N = max_size(y, nu);
+
301 
+ +
303  operands_and_partials(y, nu);
+
304 
+
305  // Explicit return for extreme values
+
306  // The gradients are technically ill-defined, but treated as zero
+
307  for (size_t i = 0; i < stan::length(y); i++) {
+
308  if (value_of(y_vec[i]) == 0)
+
309  return operands_and_partials.to_var(stan::math::negative_infinity());
+
310  }
+
311 
+
312  // Compute cdf_log and its gradients
+
313  using boost::math::gamma_p_derivative;
+
314  using boost::math::gamma_p;
+
315  using boost::math::digamma;
+
316  using boost::math::tgamma;
+
317 
+
318  // Cache a few expensive function calls if nu is a parameter
+ + +
321  gamma_vec(stan::length(nu));
+ + +
324  digamma_vec(stan::length(nu));
+
325 
+ +
327  for (size_t i = 0; i < stan::length(nu); i++) {
+
328  const double alpha_dbl = value_of(nu_vec[i]) * 0.5;
+
329  gamma_vec[i] = tgamma(alpha_dbl);
+
330  digamma_vec[i] = digamma(alpha_dbl);
+
331  }
+
332  }
+
333 
+
334  // Compute vectorized cdf_log and gradient
+
335  for (size_t n = 0; n < N; n++) {
+
336  // Explicit results for extreme values
+
337  // The gradients are technically ill-defined, but treated as zero
+
338  if (value_of(y_vec[n]) == std::numeric_limits<double>::infinity())
+
339  return operands_and_partials.to_var(0.0);
+
340 
+
341  // Pull out values
+
342  const double y_dbl = value_of(y_vec[n]);
+
343  const double alpha_dbl = value_of(nu_vec[n]) * 0.5;
+
344  const double beta_dbl = 0.5;
+
345 
+
346  // Compute
+
347  const double Pn = gamma_p(alpha_dbl, beta_dbl * y_dbl);
+
348 
+
349  cdf_log += log(Pn);
+
350 
+ +
352  operands_and_partials.d_x1[n]
+
353  += beta_dbl * gamma_p_derivative(alpha_dbl, beta_dbl * y_dbl)
+
354  / Pn;
+ +
356  operands_and_partials.d_x2[n]
+
357  -= 0.5 * stan::math::gradRegIncGamma(alpha_dbl, beta_dbl
+
358  * y_dbl, gamma_vec[n],
+
359  digamma_vec[n]) / Pn;
+
360  }
+
361 
+
362  return operands_and_partials.to_var(cdf_log);
+
363  }
+
364 
+
365  template <typename T_y, typename T_dof>
+ +
367  chi_square_ccdf_log(const T_y& y, const T_dof& nu) {
+
368  static const char* function = "stan::prob::chi_square_ccdf_log(%1%)";
+
369 
+ + + + + +
375  using stan::math::value_of;
+
376 
+
377  double ccdf_log(0.0);
+
378 
+
379  // Size checks
+
380  if (!(stan::length(y) && stan::length(nu)))
+
381  return ccdf_log;
+
382 
+
383  if (!check_not_nan(function, y, "Random variable", &ccdf_log))
+
384  return ccdf_log;
+
385  if (!check_nonnegative(function, y, "Random variable", &ccdf_log))
+
386  return ccdf_log;
+
387  if (!check_finite(function, nu, "Degrees of freedom parameter", &ccdf_log))
+
388  return ccdf_log;
+
389  if (!check_positive(function, nu, "Degrees of freedom parameter", &ccdf_log))
+
390  return ccdf_log;
+
391  if (!(check_consistent_sizes(function,
+
392  y,nu,
+
393  "Random variable","Degrees of freedom parameter",
+
394  &ccdf_log)))
+
395  return ccdf_log;
+
396 
+
397  // Wrap arguments in vectors
+
398  VectorView<const T_y> y_vec(y);
+
399  VectorView<const T_dof> nu_vec(nu);
+
400  size_t N = max_size(y, nu);
+
401 
+ +
403  operands_and_partials(y, nu);
+
404 
+
405  // Explicit return for extreme values
+
406  // The gradients are technically ill-defined, but treated as zero
+
407  for (size_t i = 0; i < stan::length(y); i++) {
+
408  if (value_of(y_vec[i]) == 0)
+
409  return operands_and_partials.to_var(0.0);
+
410  }
+
411 
+
412  // Compute ccdf_log and its gradients
+
413  using boost::math::gamma_p_derivative;
+
414  using boost::math::gamma_p;
+
415  using boost::math::digamma;
+
416  using boost::math::tgamma;
+
417 
+
418  // Cache a few expensive function calls if nu is a parameter
+ + +
421  gamma_vec(stan::length(nu));
+ + +
424  digamma_vec(stan::length(nu));
+
425 
+ +
427  for (size_t i = 0; i < stan::length(nu); i++) {
+
428  const double alpha_dbl = value_of(nu_vec[i]) * 0.5;
+
429  gamma_vec[i] = tgamma(alpha_dbl);
+
430  digamma_vec[i] = digamma(alpha_dbl);
+
431  }
+
432  }
+
433 
+
434  // Compute vectorized ccdf_log and gradient
+
435  for (size_t n = 0; n < N; n++) {
+
436  // Explicit results for extreme values
+
437  // The gradients are technically ill-defined, but treated as zero
+
438  if (value_of(y_vec[n]) == std::numeric_limits<double>::infinity())
+
439  return operands_and_partials.to_var(stan::math::negative_infinity());
+
440 
+
441  // Pull out values
+
442  const double y_dbl = value_of(y_vec[n]);
+
443  const double alpha_dbl = value_of(nu_vec[n]) * 0.5;
+
444  const double beta_dbl = 0.5;
+
445 
+
446  // Compute
+
447  const double Pn = 1.0 - gamma_p(alpha_dbl, beta_dbl * y_dbl);
+
448 
+
449  ccdf_log += log(Pn);
+
450 
+ +
452  operands_and_partials.d_x1[n]
+
453  -= beta_dbl * gamma_p_derivative(alpha_dbl, beta_dbl * y_dbl)
+
454  / Pn;
+ +
456  operands_and_partials.d_x2[n]
+
457  += 0.5 * stan::math::gradRegIncGamma(alpha_dbl, beta_dbl
+
458  * y_dbl, gamma_vec[n],
+
459  digamma_vec[n]) / Pn;
+
460  }
+
461 
+
462  return operands_and_partials.to_var(ccdf_log);
+
463  }
+
464 
+
465  template <class RNG>
+
466  inline double
+
467  chi_square_rng(const double nu,
+
468  RNG& rng) {
+
469  using boost::variate_generator;
+
470  using boost::random::chi_squared_distribution;
+
471 
+
472  static const char* function = "stan::prob::chi_square_rng(%1%)";
+
473 
+ + +
476 
+
477  if (!check_finite(function, nu, "Degrees of freedom parameter"))
+
478  return 0;
+
479  if (!check_positive(function, nu, "Degrees of freedom parameter"))
+
480  return 0;
+
481 
+
482 
+
483  variate_generator<RNG&, chi_squared_distribution<> >
+
484  chi_square_rng(rng, chi_squared_distribution<>(nu));
+
485  return chi_square_rng();
+
486  }
+
487  }
+
488 }
+
489 
+
490 #endif
+
491 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/cholesky__decompose_8hpp.html b/doc/api/html/cholesky__decompose_8hpp.html new file mode 100644 index 00000000000..622a557c47d --- /dev/null +++ b/doc/api/html/cholesky__decompose_8hpp.html @@ -0,0 +1,132 @@ + + + + + +Stan: src/stan/math/matrix/cholesky_decompose.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
cholesky_decompose.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::math
 Matrices and templated mathematical functions.
 
+ + + + + +

+Functions

template<typename T >
Eigen::Matrix< T,
+Eigen::Dynamic, Eigen::Dynamic > 
stan::math::cholesky_decompose (const Eigen::Matrix< T, Eigen::Dynamic, Eigen::Dynamic > &m)
 Return the lower-triangular Cholesky factor (i.e., matrix square root) of the specified square, symmetric matrix.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/cholesky__decompose_8hpp_source.html b/doc/api/html/cholesky__decompose_8hpp_source.html new file mode 100644 index 00000000000..7f578d31ef5 --- /dev/null +++ b/doc/api/html/cholesky__decompose_8hpp_source.html @@ -0,0 +1,128 @@ + + + + + +Stan: src/stan/math/matrix/cholesky_decompose.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
cholesky_decompose.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MATH__MATRIX__CHOLESKY_DECOMPOSE_HPP__
+
2 #define __STAN__MATH__MATRIX__CHOLESKY_DECOMPOSE_HPP__
+
3 
+ + +
6 
+
7 namespace stan {
+
8  namespace math {
+
9 
+
20  template <typename T>
+
21  Eigen::Matrix<T,Eigen::Dynamic,Eigen::Dynamic>
+
22  cholesky_decompose(const Eigen::Matrix<T,Eigen::Dynamic,Eigen::Dynamic>& m) {
+
23  validate_symmetric(m,"cholesky decomposition");
+
24  Eigen::LLT<Eigen::Matrix<T,Eigen::Dynamic,Eigen::Dynamic> >llt(m.rows());
+
25  llt.compute(m);
+
26  return llt.matrixL();
+
27  }
+
28 
+
29  }
+
30 }
+
31 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/chunk__alloc_8hpp.html b/doc/api/html/chunk__alloc_8hpp.html new file mode 100644 index 00000000000..cad748e609b --- /dev/null +++ b/doc/api/html/chunk__alloc_8hpp.html @@ -0,0 +1,155 @@ + + + + + +Stan: src/stan/memory/chunk_alloc.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
chunk_alloc.hpp File Reference
+
+
+
#include <cstdlib>
+#include <cstddef>
+#include <sstream>
+#include <stdexcept>
+#include <stdint.h>
+#include <vector>
+#include <stan/memory/stack_alloc.hpp>
+
+

Go to the source code of this file.

+ + + + +

+Classes

class  stan::memory::chunk_alloc< T, Tnchunks_per_block >
 
+ + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::memory
 (Expert) Allocate, free, and manage underlying system memory.
 
+ + + +

+Macros

#define DEFAULT_INITIAL_NCHUNKS   (1 << 8)
 
+

Macro Definition Documentation

+ +
+
+ + + + +
#define DEFAULT_INITIAL_NCHUNKS   (1 << 8)
+
+ +

Definition at line 12 of file chunk_alloc.hpp.

+ +
+
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/chunk__alloc_8hpp_source.html b/doc/api/html/chunk__alloc_8hpp_source.html new file mode 100644 index 00000000000..80973692dcf --- /dev/null +++ b/doc/api/html/chunk__alloc_8hpp_source.html @@ -0,0 +1,181 @@ + + + + + +Stan: src/stan/memory/chunk_alloc.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
chunk_alloc.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MEMORY__CHUNK_ALLOC_HPP__
+
2 #define __STAN__MEMORY__CHUNK_ALLOC_HPP__
+
3 
+
4 #include <cstdlib>
+
5 #include <cstddef>
+
6 #include <sstream>
+
7 #include <stdexcept>
+
8 #include <stdint.h> // FIXME: replace with cstddef?
+
9 #include <vector>
+ +
11 
+
12 #define DEFAULT_INITIAL_NCHUNKS (1 << 8)
+
13 
+
14 namespace stan {
+
15  namespace memory {
+
18  template<typename T, size_t Tnchunks_per_block = DEFAULT_INITIAL_NCHUNKS>
+
19  class chunk_alloc {
+
20  private:
+
21  std::vector<char*> blocks_; // storage for blocks, may be bigger than cur_block_
+
22  size_t cur_block_; // index into blocks_ for next alloc
+
23  size_t used_; // index into blocks_[cur_block_] for next alloc
+
24  public:
+
25 
+
26 
+ +
35  blocks_(1, eight_byte_aligned_malloc(sizeof(T)*Tnchunks_per_block)),
+
36  used_(0)
+
37  {
+
38  if (!blocks_[0])
+
39  throw std::bad_alloc(); // no msg allowed in bad_alloc ctor
+
40  }
+
41 
+ +
49  // free ALL blocks
+
50  for (size_t i = 0; i < blocks_.size(); ++i)
+
51  if (blocks_[i])
+
52  free(blocks_[i]);
+
53  }
+
54 
+
61  inline void* alloc() {
+
62  char *result;
+
63  if (unlikely(used_ >= Tnchunks_per_block)) {
+
64  used_ = 0;
+
65  cur_block_++;
+
66  }
+
67  if (unlikely(cur_block_ >= blocks_.size())) {
+
68  result = eight_byte_aligned_malloc(Tnchunks_per_block*sizeof(T));
+
69  if (!result)
+
70  throw std::bad_alloc(); // no msg allowed in bad_alloc ctor
+
71  blocks_.push_back(result);
+
72  }
+
73  result = blocks_[cur_block_] + sizeof(T)*used_;
+
74  ++used_;
+
75 
+
76  return (void*)result;
+
77  }
+
78 
+
85  inline void recover_all() {
+
86  cur_block_ = 0;
+
87  used_ = 0;
+
88  }
+
89 
+
95  inline void free_all() {
+
96  // frees all BUT the first (index 0) block
+
97  for (size_t i = 1; i < blocks_.size(); ++i)
+
98  if (blocks_[i])
+
99  free(blocks_[i]);
+
100  blocks_.resize(1);
+
101  recover_all();
+
102  }
+
103  };
+
104  }
+
105 }
+
106 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/class_l_d_l_t__factor.html b/doc/api/html/class_l_d_l_t__factor.html new file mode 100644 index 00000000000..0f07db8336e --- /dev/null +++ b/doc/api/html/class_l_d_l_t__factor.html @@ -0,0 +1,116 @@ + + + + + +Stan: LDLT_factor< T, R, C > Class Template Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ +
+
+
+
LDLT_factor< T, R, C > Class Template Reference
+
+
+ +

#include <LDLT_factor.hpp>

+

Detailed Description

+

template<typename T, int R, int C>
+class LDLT_factor< T, R, C >

+ + +

Definition at line 16 of file LDLT_factor.hpp.

+

The documentation for this class was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classes.html b/doc/api/html/classes.html new file mode 100644 index 00000000000..684b82d9b38 --- /dev/null +++ b/doc/api/html/classes.html @@ -0,0 +1,214 @@ + + + + + +Stan: Class Index + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + +
+ + + + +
+ +
+ +
+
+
Class Index
+
+
+
A | B | C | D | E | F | G | I | L | M | N | O | P | R | S | T | U | V | W
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
  A  
+
base_integrator (stan::mcmc)   increment_log_prob_statement (stan::gm)   prob_grad (stan::model)   statement_grammar (stan::gm)   
base_leapfrog (stan::mcmc)   index_op (stan::gm)   program (stan::gm)   statement_grammar   
accumulator (stan::math)   base_mcmc (stan::mcmc)   init_local_var_visgen (stan::gm)   program_grammar (stan::gm)   statement_visgen (stan::gm)   
adapt_dense_e_nuts (stan::mcmc)   base_nuts (stan::mcmc)   int_literal (stan::gm)   promoter (stan::math)   statements (stan::gm)   
adapt_dense_e_static_hmc (stan::mcmc)   base_static_hmc (stan::mcmc)   int_var_decl (stan::gm)   promoter< Eigen::Matrix< F, R, C >, Eigen::Matrix< T, R, C > > (stan::math)   stepsize_adaptation (stan::mcmc)   
adapt_diag_e_nuts (stan::mcmc)   base_var_decl (stan::gm)   is_constant (stan)   promoter< Eigen::Matrix< T, R, C >, Eigen::Matrix< T, R, C > > (stan::math)   stepsize_adapter (stan::mcmc)   
adapt_diag_e_static_hmc (stan::mcmc)   BFGSLineSearch (stan::optimization)   is_constant_struct (stan)   promoter< std::vector< F >, std::vector< T > > (stan::math)   stepsize_covar_adapter (stan::mcmc)   
adapt_unit_e_nuts (stan::mcmc)   BFGSMinimizer (stan::optimization)   is_constant_struct< Eigen::Block< T > > (stan)   promoter< std::vector< T >, std::vector< T > > (stan::math)   stepsize_var_adapter (stan::mcmc)   
adapt_unit_e_static_hmc (stan::mcmc)   BFGSMinimizer::BFGSOptions (stan::optimization)   is_constant_struct< Eigen::Matrix< T, R, C > > (stan)   promoter< T, T > (stan::math)   store_type (stan::math)   
add_conditional_body (stan::gm)   binary_op (stan::gm)   is_constant_struct< std::vector< T > > (stan)   ps_point (stan::mcmc)   store_type< double > (stan::math)   
add_conditional_condition (stan::gm)   binary_op_expr (stan::gm)   is_fvar (stan)   
  R  
+
store_type< int > (stan::math)   
add_expression_dimss (stan::gm)   
  C  
+
is_fvar< stan::agrad::fvar< T > > (stan)   stored_gradient_vari (stan::agrad)   
add_loop_identifier (stan::gm)   is_nil_op (stan::gm)   range (stan::gm)   subtraction_expr (stan::gm)   
add_while_body (stan::gm)   categorical_argument (stan::gm)   is_var (stan)   reader (stan::io)   
  T  
+
add_while_condition (stan::gm)   chainable (stan::agrad)   is_var< stan::agrad::var > (stan)   remove_loop_identifier (stan::gm)   
addition_expr (stan::gm)   chainable_alloc (stan::agrad)   is_var_or_arithmetic (stan)   logical_negate_expr::result (stan::gm)   term_grammar (stan::gm)   
arg_adapt (stan::gm)   chains (stan::mcmc)   is_vector (stan)   set_var_type::result (stan::gm)   term_grammar   
arg_adapt_delta (stan::gm)   cholesky_factor_var_decl (stan::gm)   is_vector< const T > (stan)   set_fun_type::result (stan::gm)   term_grammar   
arg_adapt_engaged (stan::gm)   chunk_alloc (stan::memory)   is_vector< Eigen::Matrix< T, 1, Eigen::Dynamic > > (stan)   validate_expr_type::result (stan::gm)   transpose_expr (stan::gm)   
arg_adapt_gamma (stan::gm)   cmd_line (stan::io)   is_vector< Eigen::Matrix< T, Eigen::Dynamic, 1 > > (stan)   validate_allow_sample::result (stan::gm)   type_name (stan::gm)   
arg_adapt_init_buffer (stan::gm)   common_type (stan::math)   is_vector< std::vector< T > > (stan)   add_expression_dimss::result (stan::gm)   type_name< bool > (stan::gm)   
arg_adapt_kappa (stan::gm)   common_type< Eigen::Matrix< T1, R, C >, Eigen::Matrix< T2, R, C > > (stan::math)   is_vector_like (stan)   transpose_expr::result (stan::gm)   type_name< double > (stan::gm)   
arg_adapt_t0 (stan::gm)   common_type< std::vector< T1 >, std::vector< T2 > > (stan::math)   is_vector_like< const T > (stan)   negate_expr::result (stan::gm)   type_name< int > (stan::gm)   
arg_adapt_term_buffer (stan::gm)   conditional_statement (stan::gm)   is_vector_like< Eigen::Matrix< T, Eigen::Dynamic, Eigen::Dynamic > > (stan)   elt_division_expr::result (stan::gm)   type_name< std::string > (stan::gm)   
arg_adapt_window (stan::gm)   constrained_param_names_visgen (stan::gm)   is_vector_like< T * > (stan)   elt_multiplication_expr::result (stan::gm)   type_name< unsigned int > (stan::gm)   
arg_bfgs (stan::gm)   contains_fvar (stan)   
  L  
+
left_division_expr::result (stan::gm)   
  U  
+
arg_data (stan::gm)   contains_nonparam_var (stan::gm)   multiplication_expr::result (stan::gm)   
arg_data_file (stan::gm)   contains_var (stan::gm)   LDLT_alloc (stan::agrad)   validate_assignment::result (stan::gm)   unary_op (stan::gm)   
arg_dense_e (stan::gm)   corr_matrix_var_decl (stan::gm)   LDLT_factor   validate_sample::result (stan::gm)   unconstrained_param_names_visgen (stan::gm)   
arg_diag_e (stan::gm)   cov_matrix_var_decl (stan::gm)   LDLT_factor< double, R, C > (stan::math)   addition_expr::result (stan::gm)   unit_e_metric (stan::mcmc)   
arg_diagnose (stan::gm)   covar_adaptation (stan::mcmc)   LDLT_factor< stan::agrad::var, R, C > (stan::math)   subtraction_expr::result (stan::gm)   unit_e_nuts (stan::mcmc)   
arg_diagnostic_file (stan::gm)   csv_writer (stan::io)   left_division_expr (stan::gm)   validate_expr_type2::result (stan::gm)   unit_e_point (stan::mcmc)   
arg_engine (stan::gm)   
  D  
+
list_argument (stan::gm)   set_fun_type_named::result (stan::gm)   unit_e_static_hmc (stan::mcmc)   
arg_fail (stan::gm)   local_var_decl_visgen (stan::gm)   add_loop_identifier::result (stan::gm)   unit_vector_var_decl (stan::gm)   
arg_fixed_param (stan::gm)   dense_e_metric (stan::mcmc)   logical_negate_expr (stan::gm)   unscope_locals::result (stan::gm)   unscope_locals (stan::gm)   
arg_hmc (stan::gm)   dense_e_nuts (stan::mcmc)   
  M  
+
add_conditional_body::result (stan::gm)   unvalued_argument (stan::gm)   
arg_id (stan::gm)   dense_e_point (stan::mcmc)   add_conditional_condition::result (stan::gm)   
  V  
+
arg_init (stan::gm)   dense_e_static_hmc (stan::mcmc)   matrix_var_decl (stan::gm)   binary_op_expr::result (stan::gm)   
arg_init_alpha (stan::gm)   diag_e_metric (stan::mcmc)   mcmc_writer (stan::io)   add_while_condition::result (stan::gm)   validate_allow_sample (stan::gm)   
arg_int_time (stan::gm)   diag_e_nuts (stan::mcmc)   member_var_decl_visgen (stan::gm)   set_fun_type2::result (stan::gm)   validate_assignment (stan::gm)   
arg_iter (stan::gm)   diag_e_point (stan::mcmc)   model_functional (stan::model)   division_expr::result (stan::gm)   validate_expr_type (stan::gm)   
arg_max_depth (stan::gm)   diag_e_static_hmc (stan::mcmc)   ModelAdaptor (stan::optimization)   validate_int_expr2::result (stan::gm)   validate_expr_type2 (stan::gm)   
arg_method (stan::gm)   distribution (stan::gm)   multiplication_expr (stan::gm)   expression_as_statement::result (stan::gm)   validate_int_expr2 (stan::gm)   
arg_metric (stan::gm)   division_expr (stan::gm)   
  N  
+
add_while_body::result (stan::gm)   validate_int_expr3 (stan::gm)   
arg_nesterov (stan::gm)   dot_product_store_type   validate_int_expr3::result (stan::gm)   validate_sample (stan::gm)   
arg_newton (stan::gm)   double_literal (stan::gm)   name_vis (stan::gm)   remove_loop_identifier::result (stan::gm)   validate_transformed_params_visgen (stan::gm)   
arg_num_samples (stan::gm)   double_var_decl (stan::gm)   negate_expr (stan::gm)   return_type (stan)   validate_var_decl_visgen (stan::gm)   
arg_num_warmup (stan::gm)   DoubleVectorView (stan)   NesterovGradient (stan::optimization)   row_vector_var_decl (stan::gm)   valued_argument (stan::gm)   
arg_nuts (stan::gm)   DoubleVectorView< true, false > (stan)   nil (stan::gm)   
  S  
+
var (stan::agrad)   
arg_optimize (stan::gm)   DoubleVectorView< true, true > (stan)   no_op_statement (stan::gm)   var_adaptation (stan::mcmc)   
arg_optimize_algo (stan::gm)   dump (stan::io)   numeric_limits< stan::agrad::fvar< T > > (std)   sample (stan::mcmc)   var_context (stan::io)   
arg_output (stan::gm)   dump_member_var_visgen (stan::gm)   numeric_limits< stan::agrad::var > (std)   sample (stan::gm)   var_decl (stan::gm)   
arg_output_file (stan::gm)   dump_reader (stan::io)   NumTraits< stan::agrad::var > (Eigen)   scalar_product_traits< double, stan::agrad::var > (Eigen::internal)   var_decls_grammar (stan::gm)   
arg_random (stan::gm)   dump_writer (stan::io)   nuts_util (stan::mcmc)   scalar_product_traits< stan::agrad::var, double > (Eigen::internal)   var_resizing_visgen (stan::gm)   
arg_refresh (stan::gm)   
  E  
+
  O  
+
scalar_type (stan)   var_size_validating_visgen (stan::gm)   
arg_rwm (stan::gm)   scalar_type< Eigen::Matrix< T, Eigen::Dynamic, Eigen::Dynamic > > (stan)   vari (stan::agrad)   
arg_sample (stan::gm)   elt_division_expr (stan::gm)   op_ddv_vari (stan::agrad)   scalar_type< T * > (stan)   variable (stan::gm)   
arg_sample_algo (stan::gm)   elt_multiplication_expr (stan::gm)   op_dv_vari (stan::agrad)   seq_view (stan::math)   variable_dims (stan::gm)   
arg_save_iterations (stan::gm)   error_codes (stan::gm)   op_dvd_vari (stan::agrad)   seq_view< double, std::vector< int > > (stan::math)   variable_map (stan::gm)   
arg_save_warmup (stan::gm)   expl_leapfrog (stan::mcmc)   op_dvv_vari (stan::agrad)   seq_view< T, Eigen::Matrix< S, 1, Eigen::Dynamic > > (stan::math)   vector_var_decl (stan::gm)   
arg_seed (stan::gm)   expr_type (stan::gm)   op_matrix_vari (stan::agrad)   seq_view< T, Eigen::Matrix< S, Eigen::Dynamic, 1 > > (stan::math)   VectorView (stan)   
arg_static (stan::gm)   expression (stan::gm)   op_v_vari (stan::agrad)   seq_view< T, Eigen::Matrix< S, Eigen::Dynamic, Eigen::Dynamic > > (stan::math)   VectorView< const double, false, false > (stan)   
arg_stepsize (stan::gm)   expression_as_statement (stan::gm)   op_vd_vari (stan::agrad)   seq_view< T, std::vector< S > > (stan::math)   VectorView< const T, is_array, throw_if_accessed > (stan)   
arg_stepsize_jitter (stan::gm)   expression_grammar   op_vdd_vari (stan::agrad)   seq_view< T, std::vector< std::vector< T > > > (stan::math)   visgen (stan::gm)   
arg_test (stan::gm)   expression_grammar (stan::gm)   op_vdv_vari (stan::agrad)   seq_view< T, std::vector< T > > (stan::math)   
  W  
+
arg_test_grad_eps (stan::gm)   expression_type_vis (stan::gm)   op_vector_vari (stan::agrad)   set_fun_type (stan::gm)   
arg_test_grad_err (stan::gm)   expression_visgen (stan::gm)   op_vv_vari (stan::agrad)   set_fun_type2 (stan::gm)   welford_covar_estimator (stan::prob)   
arg_test_gradient (stan::gm)   
  F  
+
op_vvd_vari (stan::agrad)   set_fun_type_named (stan::gm)   welford_var_estimator (stan::prob)   
arg_thin (stan::gm)   op_vvv_vari (stan::agrad)   set_param_ranges_visgen (stan::gm)   while_statement (stan::gm)   
arg_tolerance (stan::gm)   fixed_param_sampler (stan::mcmc)   OperandsAndPartials (stan::agrad)   set_var_type (stan::gm)   whitespace_grammar (stan::gm)   
arg_unit_e (stan::gm)   for_statement (stan::gm)   ordered_var_decl (stan::gm)   significant_decimals_default_impl< stan::agrad::var, false > (Eigen::internal)   windowed_adaptation (stan::mcmc)   
argument (stan::gm)   fun (stan::gm)   
  P  
+
simplex_var_decl (stan::gm)   write_array_vars_visgen (stan::gm)   
argument_parser (stan::gm)   function_signatures (stan::gm)   singleton_argument (stan::gm)   write_array_visgen (stan::gm)   
argument_probe (stan::gm)   fvar (stan::agrad)   partials_vari (stan::agrad)   size_of_helper (stan)   write_csv_header_visgen (stan::gm)   
array_builder (stan::math)   
  G  
+
pass_type (stan::math)   size_of_helper< T, true > (stan)   write_csv_vars_visgen (stan::gm)   
array_literal (stan::gm)   pass_type< double > (stan::math)   stack_alloc (stan::memory)   write_csv_visgen (stan::gm)   
assignment (stan::gm)   general_matrix_matrix_product< Index, stan::agrad::var, LhsStorageOrder, ConjugateLhs, stan::agrad::var, RhsStorageOrder, ConjugateRhs, ColMajor > (Eigen::internal)   pass_type< int > (stan::math)   stan_csv (stan::io)   write_dims_visgen (stan::gm)   
  B  
+
general_matrix_vector_product< Index, stan::agrad::var, ColMajor, ConjugateLhs, stan::agrad::var, ConjugateRhs > (Eigen::internal)   positive_ordered_var_decl (stan::gm)   stan_csv_adaptation (stan::io)   write_param_names_visgen (stan::gm)   
general_matrix_vector_product< Index, stan::agrad::var, RowMajor, ConjugateLhs, stan::agrad::var, ConjugateRhs > (Eigen::internal)   precomp_v_vari (stan::agrad)   stan_csv_metadata (stan::io)   writer (stan::io)   
base_adaptation (stan::mcmc)   generate_init_vars_visgen (stan::gm)   precomputed_gradients_vari (stan::agrad)   stan_csv_reader (stan::io)   
base_adapter (stan::mcmc)   generate_init_visgen (stan::gm)   print_statement (stan::gm)   stan_csv_timing (stan::io)   
base_hamiltonian (stan::mcmc)   generate_local_var_init_nan_visgen (stan::gm)   printable (stan::gm)   statement (stan::gm)   
base_hmc (stan::mcmc)   
  I  
+
printable_visgen (stan::gm)   statement_2_grammar (stan::gm)   
include_summand (stan::prob)   
+
A | B | C | D | E | F | G | I | L | M | N | O | P | R | S | T | U | V | W
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1_double_vector_view-members.html b/doc/api/html/classstan_1_1_double_vector_view-members.html new file mode 100644 index 00000000000..60f42833b24 --- /dev/null +++ b/doc/api/html/classstan_1_1_double_vector_view-members.html @@ -0,0 +1,114 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::DoubleVectorView< used, is_vec > Member List
+
+
+ +

This is the complete list of members for stan::DoubleVectorView< used, is_vec >, including all inherited members.

+ + + +
DoubleVectorView(size_t)stan::DoubleVectorView< used, is_vec >inline
operator[](size_t)stan::DoubleVectorView< used, is_vec >inline
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1_double_vector_view.html b/doc/api/html/classstan_1_1_double_vector_view.html new file mode 100644 index 00000000000..2b6b8f376c5 --- /dev/null +++ b/doc/api/html/classstan_1_1_double_vector_view.html @@ -0,0 +1,199 @@ + + + + + +Stan: stan::DoubleVectorView< used, is_vec > Class Template Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::DoubleVectorView< used, is_vec > Class Template Reference
+
+
+ +

DoubleVectorView allocates double values to be used as intermediate values. + More...

+ +

#include <traits.hpp>

+ + + + + + +

+Public Member Functions

 DoubleVectorView (size_t)
 
double & operator[] (size_t)
 
+

Detailed Description

+

template<bool used, bool is_vec>
+class stan::DoubleVectorView< used, is_vec >

+ +

DoubleVectorView allocates double values to be used as intermediate values.

+

There are 2 template parameters:

+
    +
  • used: boolean variable indicating whether this instance is used. If this is false, there is no storage allocated and operator[] throws.
  • +
  • is_vec: boolean variable indicating whether this instance should allocate a vector, if it is used. If this is false, the instance will only allocate a single double value. If this is true, it will allocate the number requested.
  • +
+

These values are mutable.

+ +

Definition at line 336 of file traits.hpp.

+

Constructor & Destructor Documentation

+ +
+
+
+template<bool used, bool is_vec>
+ + + + + +
+ + + + + + + + +
stan::DoubleVectorView< used, is_vec >::DoubleVectorView (size_t )
+
+inline
+
+ +

Definition at line 338 of file traits.hpp.

+ +
+
+

Member Function Documentation

+ +
+
+
+template<bool used, bool is_vec>
+ + + + + +
+ + + + + + + + +
double& stan::DoubleVectorView< used, is_vec >::operator[] (size_t )
+
+inline
+
+ +

Definition at line 339 of file traits.hpp.

+ +
+
+
The documentation for this class was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1_double_vector_view_3_01true_00_01false_01_4-members.html b/doc/api/html/classstan_1_1_double_vector_view_3_01true_00_01false_01_4-members.html new file mode 100644 index 00000000000..f00da13057c --- /dev/null +++ b/doc/api/html/classstan_1_1_double_vector_view_3_01true_00_01false_01_4-members.html @@ -0,0 +1,114 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::DoubleVectorView< true, false > Member List
+
+
+ +

This is the complete list of members for stan::DoubleVectorView< true, false >, including all inherited members.

+ + + +
DoubleVectorView(size_t)stan::DoubleVectorView< true, false >inline
operator[](size_t)stan::DoubleVectorView< true, false >inline
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1_double_vector_view_3_01true_00_01false_01_4.html b/doc/api/html/classstan_1_1_double_vector_view_3_01true_00_01false_01_4.html new file mode 100644 index 00000000000..07f6390ae02 --- /dev/null +++ b/doc/api/html/classstan_1_1_double_vector_view_3_01true_00_01false_01_4.html @@ -0,0 +1,185 @@ + + + + + +Stan: stan::DoubleVectorView< true, false > Class Template Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::DoubleVectorView< true, false > Class Template Reference
+
+
+ +

#include <traits.hpp>

+ + + + + + +

+Public Member Functions

 DoubleVectorView (size_t)
 
double & operator[] (size_t)
 
+

Detailed Description

+

template<>
+class stan::DoubleVectorView< true, false >

+ + +

Definition at line 345 of file traits.hpp.

+

Constructor & Destructor Documentation

+ +
+
+ + + + + +
+ + + + + + + + +
stan::DoubleVectorView< true, false >::DoubleVectorView (size_t )
+
+inline
+
+ +

Definition at line 349 of file traits.hpp.

+ +
+
+

Member Function Documentation

+ +
+
+ + + + + +
+ + + + + + + + +
double& stan::DoubleVectorView< true, false >::operator[] (size_t )
+
+inline
+
+ +

Definition at line 350 of file traits.hpp.

+ +
+
+
The documentation for this class was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1_double_vector_view_3_01true_00_01true_01_4-members.html b/doc/api/html/classstan_1_1_double_vector_view_3_01true_00_01true_01_4-members.html new file mode 100644 index 00000000000..150ace3555b --- /dev/null +++ b/doc/api/html/classstan_1_1_double_vector_view_3_01true_00_01true_01_4-members.html @@ -0,0 +1,114 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::DoubleVectorView< true, true > Member List
+
+
+ +

This is the complete list of members for stan::DoubleVectorView< true, true >, including all inherited members.

+ + + +
DoubleVectorView(size_t n)stan::DoubleVectorView< true, true >inline
operator[](size_t i)stan::DoubleVectorView< true, true >inline
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1_double_vector_view_3_01true_00_01true_01_4.html b/doc/api/html/classstan_1_1_double_vector_view_3_01true_00_01true_01_4.html new file mode 100644 index 00000000000..2cb4064c338 --- /dev/null +++ b/doc/api/html/classstan_1_1_double_vector_view_3_01true_00_01true_01_4.html @@ -0,0 +1,185 @@ + + + + + +Stan: stan::DoubleVectorView< true, true > Class Template Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::DoubleVectorView< true, true > Class Template Reference
+
+
+ +

#include <traits.hpp>

+ + + + + + +

+Public Member Functions

 DoubleVectorView (size_t n)
 
double & operator[] (size_t i)
 
+

Detailed Description

+

template<>
+class stan::DoubleVectorView< true, true >

+ + +

Definition at line 356 of file traits.hpp.

+

Constructor & Destructor Documentation

+ +
+
+ + + + + +
+ + + + + + + + +
stan::DoubleVectorView< true, true >::DoubleVectorView (size_t n)
+
+inline
+
+ +

Definition at line 360 of file traits.hpp.

+ +
+
+

Member Function Documentation

+ +
+
+ + + + + +
+ + + + + + + + +
double& stan::DoubleVectorView< true, true >::operator[] (size_t i)
+
+inline
+
+ +

Definition at line 361 of file traits.hpp.

+ +
+
+
The documentation for this class was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1_vector_view-members.html b/doc/api/html/classstan_1_1_vector_view-members.html new file mode 100644 index 00000000000..6b719f28f6b --- /dev/null +++ b/doc/api/html/classstan_1_1_vector_view-members.html @@ -0,0 +1,118 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::VectorView< T, is_array, throw_if_accessed > Member List
+
+ +
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1_vector_view.html b/doc/api/html/classstan_1_1_vector_view.html new file mode 100644 index 00000000000..52f34432a79 --- /dev/null +++ b/doc/api/html/classstan_1_1_vector_view.html @@ -0,0 +1,319 @@ + + + + + +Stan: stan::VectorView< T, is_array, throw_if_accessed > Class Template Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::VectorView< T, is_array, throw_if_accessed > Class Template Reference
+
+
+ +

VectorView is a template metaprogram that takes its argument and allows it to be used like a vector. + More...

+ +

#include <traits.hpp>

+ + + + +

+Public Types

typedef scalar_type< T >::type scalar_t
 
+ + + + + + + + + + + + +

+Public Member Functions

 VectorView (scalar_t &c)
 
 VectorView (std::vector< scalar_t > &v)
 
template<int R, int C>
 VectorView (Eigen::Matrix< scalar_t, R, C > &m)
 
 VectorView (scalar_t *x)
 
scalar_toperator[] (int i)
 
+

Detailed Description

+

template<typename T, bool is_array = stan::is_vector_like<T>::value, bool throw_if_accessed = false>
+class stan::VectorView< T, is_array, throw_if_accessed >

+ +

VectorView is a template metaprogram that takes its argument and allows it to be used like a vector.

+

There are three template parameters

+
    +
  • T: Type of the thing to be wrapped. For example, double, var, vector<double>, etc.
  • +
  • is_array: Boolean variable indicating whether the underlying type is an array.
  • +
  • throw_if_accessed: Boolean variable indicating whether this instance should not be used and should throw if operator[] is used.
  • +
+

For a scalar value, it broadcasts the single value when using operator[].

+

For a vector, operator[] looks into the value passed in. Note: this is not safe. It is possible to read past the size of an array.

+

Uses: Read arguments to prob functions as vectors, even if scalars, so they can be read by common code (and scalars automatically broadcast up to behave like vectors) : VectorView of immutable const array of double* (no allocation)

+

Build up derivatives into common storage : VectorView of mutable shared array (no allocation because allocated on auto-diff arena memory)

+ +

Definition at line 253 of file traits.hpp.

+

Member Typedef Documentation

+ +
+
+
+template<typename T, bool is_array = stan::is_vector_like<T>::value, bool throw_if_accessed = false>
+ + + + +
typedef scalar_type<T>::type stan::VectorView< T, is_array, throw_if_accessed >::scalar_t
+
+ +

Definition at line 255 of file traits.hpp.

+ +
+
+

Constructor & Destructor Documentation

+ +
+
+
+template<typename T, bool is_array = stan::is_vector_like<T>::value, bool throw_if_accessed = false>
+ + + + + +
+ + + + + + + + +
stan::VectorView< T, is_array, throw_if_accessed >::VectorView (scalar_tc)
+
+inline
+
+ +

Definition at line 257 of file traits.hpp.

+ +
+
+ +
+
+
+template<typename T, bool is_array = stan::is_vector_like<T>::value, bool throw_if_accessed = false>
+ + + + + +
+ + + + + + + + +
stan::VectorView< T, is_array, throw_if_accessed >::VectorView (std::vector< scalar_t > & v)
+
+inline
+
+ +

Definition at line 259 of file traits.hpp.

+ +
+
+ +
+
+
+template<typename T, bool is_array = stan::is_vector_like<T>::value, bool throw_if_accessed = false>
+
+template<int R, int C>
+ + + + + +
+ + + + + + + + +
stan::VectorView< T, is_array, throw_if_accessed >::VectorView (Eigen::Matrix< scalar_t, R, C > & m)
+
+inline
+
+ +

Definition at line 262 of file traits.hpp.

+ +
+
+ +
+
+
+template<typename T, bool is_array = stan::is_vector_like<T>::value, bool throw_if_accessed = false>
+ + + + + +
+ + + + + + + + +
stan::VectorView< T, is_array, throw_if_accessed >::VectorView (scalar_tx)
+
+inline
+
+ +

Definition at line 264 of file traits.hpp.

+ +
+
+

Member Function Documentation

+ +
+
+
+template<typename T, bool is_array = stan::is_vector_like<T>::value, bool throw_if_accessed = false>
+ + + + + +
+ + + + + + + + +
scalar_t& stan::VectorView< T, is_array, throw_if_accessed >::operator[] (int i)
+
+inline
+
+ +

Definition at line 266 of file traits.hpp.

+ +
+
+
The documentation for this class was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1_vector_view_3_01const_01_t_00_01is__array_00_01throw__if__accessed_01_4-members.html b/doc/api/html/classstan_1_1_vector_view_3_01const_01_t_00_01is__array_00_01throw__if__accessed_01_4-members.html new file mode 100644 index 00000000000..8213972ec2e --- /dev/null +++ b/doc/api/html/classstan_1_1_vector_view_3_01const_01_t_00_01is__array_00_01throw__if__accessed_01_4-members.html @@ -0,0 +1,118 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::VectorView< const T, is_array, throw_if_accessed > Member List
+
+ +
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1_vector_view_3_01const_01_t_00_01is__array_00_01throw__if__accessed_01_4.html b/doc/api/html/classstan_1_1_vector_view_3_01const_01_t_00_01is__array_00_01throw__if__accessed_01_4.html new file mode 100644 index 00000000000..c78ffe4cb20 --- /dev/null +++ b/doc/api/html/classstan_1_1_vector_view_3_01const_01_t_00_01is__array_00_01throw__if__accessed_01_4.html @@ -0,0 +1,309 @@ + + + + + +Stan: stan::VectorView< const T, is_array, throw_if_accessed > Class Template Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::VectorView< const T, is_array, throw_if_accessed > Class Template Reference
+
+
+ +

VectorView that has const correctness. + More...

+ +

#include <traits.hpp>

+ + + + +

+Public Types

typedef scalar_type< T >::type scalar_t
 
+ + + + + + + + + + + + +

+Public Member Functions

 VectorView (const scalar_t &c)
 
 VectorView (const scalar_t *x)
 
 VectorView (const std::vector< scalar_t > &v)
 
template<int R, int C>
 VectorView (const Eigen::Matrix< scalar_t, R, C > &m)
 
const scalar_toperator[] (int i) const
 
+

Detailed Description

+

template<typename T, bool is_array, bool throw_if_accessed>
+class stan::VectorView< const T, is_array, throw_if_accessed >

+ +

VectorView that has const correctness.

+ +

Definition at line 283 of file traits.hpp.

+

Member Typedef Documentation

+ +
+
+
+template<typename T , bool is_array, bool throw_if_accessed>
+ + + + +
typedef scalar_type<T>::type stan::VectorView< const T, is_array, throw_if_accessed >::scalar_t
+
+ +

Definition at line 285 of file traits.hpp.

+ +
+
+

Constructor & Destructor Documentation

+ +
+
+
+template<typename T , bool is_array, bool throw_if_accessed>
+ + + + + +
+ + + + + + + + +
stan::VectorView< const T, is_array, throw_if_accessed >::VectorView (const scalar_tc)
+
+inline
+
+ +

Definition at line 287 of file traits.hpp.

+ +
+
+ +
+
+
+template<typename T , bool is_array, bool throw_if_accessed>
+ + + + + +
+ + + + + + + + +
stan::VectorView< const T, is_array, throw_if_accessed >::VectorView (const scalar_tx)
+
+inline
+
+ +

Definition at line 289 of file traits.hpp.

+ +
+
+ +
+
+
+template<typename T , bool is_array, bool throw_if_accessed>
+ + + + + +
+ + + + + + + + +
stan::VectorView< const T, is_array, throw_if_accessed >::VectorView (const std::vector< scalar_t > & v)
+
+inline
+
+ +

Definition at line 291 of file traits.hpp.

+ +
+
+ +
+
+
+template<typename T , bool is_array, bool throw_if_accessed>
+
+template<int R, int C>
+ + + + + +
+ + + + + + + + +
stan::VectorView< const T, is_array, throw_if_accessed >::VectorView (const Eigen::Matrix< scalar_t, R, C > & m)
+
+inline
+
+ +

Definition at line 294 of file traits.hpp.

+ +
+
+

Member Function Documentation

+ +
+
+
+template<typename T , bool is_array, bool throw_if_accessed>
+ + + + + +
+ + + + + + + + +
const scalar_t& stan::VectorView< const T, is_array, throw_if_accessed >::operator[] (int i) const
+
+inline
+
+ +

Definition at line 296 of file traits.hpp.

+ +
+
+
The documentation for this class was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1_vector_view_3_01const_01double_00_01false_00_01false_01_4-members.html b/doc/api/html/classstan_1_1_vector_view_3_01const_01double_00_01false_00_01false_01_4-members.html new file mode 100644 index 00000000000..b6925971979 --- /dev/null +++ b/doc/api/html/classstan_1_1_vector_view_3_01const_01double_00_01false_00_01false_01_4-members.html @@ -0,0 +1,114 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::VectorView< const double, false, false > Member List
+
+
+ +

This is the complete list of members for stan::VectorView< const double, false, false >, including all inherited members.

+ + + +
operator[](int) const stan::VectorView< const double, false, false >inline
VectorView(double x)stan::VectorView< const double, false, false >inline
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1_vector_view_3_01const_01double_00_01false_00_01false_01_4.html b/doc/api/html/classstan_1_1_vector_view_3_01const_01double_00_01false_00_01false_01_4.html new file mode 100644 index 00000000000..f01d201aa21 --- /dev/null +++ b/doc/api/html/classstan_1_1_vector_view_3_01const_01double_00_01false_00_01false_01_4.html @@ -0,0 +1,185 @@ + + + + + +Stan: stan::VectorView< const double, false, false > Class Template Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::VectorView< const double, false, false > Class Template Reference
+
+
+ +

#include <traits.hpp>

+ + + + + + +

+Public Member Functions

 VectorView (double x)
 
double operator[] (int) const
 
+

Detailed Description

+

template<>
+class stan::VectorView< const double, false, false >

+ + +

Definition at line 310 of file traits.hpp.

+

Constructor & Destructor Documentation

+ +
+
+ + + + + +
+ + + + + + + + +
stan::VectorView< const double, false, false >::VectorView (double x)
+
+inline
+
+ +

Definition at line 312 of file traits.hpp.

+ +
+
+

Member Function Documentation

+ +
+
+ + + + + +
+ + + + + + + + +
double stan::VectorView< const double, false, false >::operator[] (int ) const
+
+inline
+
+ +

Definition at line 313 of file traits.hpp.

+ +
+
+
The documentation for this class was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1agrad_1_1_l_d_l_t__alloc-members.html b/doc/api/html/classstan_1_1agrad_1_1_l_d_l_t__alloc-members.html new file mode 100644 index 00000000000..2fa0909bc78 --- /dev/null +++ b/doc/api/html/classstan_1_1agrad_1_1_l_d_l_t__alloc-members.html @@ -0,0 +1,121 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::agrad::LDLT_alloc< R, C > Member List
+
+ +
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1agrad_1_1_l_d_l_t__alloc.html b/doc/api/html/classstan_1_1agrad_1_1_l_d_l_t__alloc.html new file mode 100644 index 00000000000..8b6bab65e11 --- /dev/null +++ b/doc/api/html/classstan_1_1agrad_1_1_l_d_l_t__alloc.html @@ -0,0 +1,333 @@ + + + + + +Stan: stan::agrad::LDLT_alloc< R, C > Class Template Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::agrad::LDLT_alloc< R, C > Class Template Reference
+
+
+ +

This object stores the actual (double typed) LDLT factorization of an Eigen::Matrix<var> along with pointers to its vari's which allow the *_ldlt functions to save memory. + More...

+ +

#include <LDLT_alloc.hpp>

+
+Inheritance diagram for stan::agrad::LDLT_alloc< R, C >:
+
+
+ + +stan::agrad::chainable_alloc + +
+ + + + + + + + + + + + + + + + + +

+Public Member Functions

 LDLT_alloc ()
 
 LDLT_alloc (const Eigen::Matrix< var, R, C > &A)
 
void compute (const Eigen::Matrix< var, R, C > &A)
 Compute the LDLT factorization and store pointers to the vari's of the matrix entries to be used when chain() is called elsewhere.
 
double log_abs_det () const
 Compute the log(abs(det(A))). This is just a convenience function.
 
- Public Member Functions inherited from stan::agrad::chainable_alloc
 chainable_alloc ()
 
virtual ~chainable_alloc ()
 
+ + + + + + + +

+Public Attributes

size_t N_
 
Eigen::LDLT< Eigen::Matrix
+< double, R, C > > 
_ldlt
 
Eigen::Matrix< vari *, R, C > _variA
 
+

Detailed Description

+

template<int R, int C>
+class stan::agrad::LDLT_alloc< R, C >

+ +

This object stores the actual (double typed) LDLT factorization of an Eigen::Matrix<var> along with pointers to its vari's which allow the *_ldlt functions to save memory.

+

It is derived from a chainable_alloc object so that it is allocated on the stack but does not have a chain() function called.

+

This class should only be instantiated as part of an LDLT_factor object and is only used in *_ldlt functions.

+ +

Definition at line 20 of file LDLT_alloc.hpp.

+

Constructor & Destructor Documentation

+ +
+
+
+template<int R, int C>
+ + + + + +
+ + + + + + + +
stan::agrad::LDLT_alloc< R, C >::LDLT_alloc ()
+
+inline
+
+ +

Definition at line 22 of file LDLT_alloc.hpp.

+ +
+
+ +
+
+
+template<int R, int C>
+ + + + + +
+ + + + + + + + +
stan::agrad::LDLT_alloc< R, C >::LDLT_alloc (const Eigen::Matrix< var, R, C > & A)
+
+inline
+
+ +

Definition at line 23 of file LDLT_alloc.hpp.

+ +
+
+

Member Function Documentation

+ +
+
+
+template<int R, int C>
+ + + + + +
+ + + + + + + + +
void stan::agrad::LDLT_alloc< R, C >::compute (const Eigen::Matrix< var, R, C > & A)
+
+inline
+
+ +

Compute the LDLT factorization and store pointers to the vari's of the matrix entries to be used when chain() is called elsewhere.

+ +

Definition at line 32 of file LDLT_alloc.hpp.

+ +
+
+ +
+
+
+template<int R, int C>
+ + + + + +
+ + + + + + + +
double stan::agrad::LDLT_alloc< R, C >::log_abs_det () const
+
+inline
+
+ +

Compute the log(abs(det(A))). This is just a convenience function.

+ +

Definition at line 49 of file LDLT_alloc.hpp.

+ +
+
+

Member Data Documentation

+ +
+
+
+template<int R, int C>
+ + + + +
Eigen::LDLT<Eigen::Matrix<double,R,C> > stan::agrad::LDLT_alloc< R, C >::_ldlt
+
+ +

Definition at line 54 of file LDLT_alloc.hpp.

+ +
+
+ +
+
+
+template<int R, int C>
+ + + + +
Eigen::Matrix<vari*,R,C> stan::agrad::LDLT_alloc< R, C >::_variA
+
+ +

Definition at line 55 of file LDLT_alloc.hpp.

+ +
+
+ +
+
+
+template<int R, int C>
+ + + + +
size_t stan::agrad::LDLT_alloc< R, C >::N_
+
+ +

Definition at line 53 of file LDLT_alloc.hpp.

+ +
+
+
The documentation for this class was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1agrad_1_1_l_d_l_t__alloc.png b/doc/api/html/classstan_1_1agrad_1_1_l_d_l_t__alloc.png new file mode 100644 index 0000000000000000000000000000000000000000..e39d9811e7e91638f0cbee13978e259fb47f28bf GIT binary patch literal 768 zcmeAS@N?(olHy`uVBq!ia0vp^hk!VMgBeKHOpNjdQW60^A+G=b{|7Q(y!l$%e`o@b z1;z&s9ANFdBM;I+9eOkK zulS-%X0t!fFwET%W<2Y&Z<&;~S@EXU2a{qfrK7h^zwFbw!(r;e&I>jko>>{YClqnL z7B1R0=Mi&Dshjbqm~Pjtb?qCbA3Bt_r8!`3+2wbyA85DS)zW$Il$-T_Z*Rf%SOf9W zETf}r&yH;_TXN~it&X?ml~*LotS(jm``M@BIse6_>CTh>tJuVi{S8D|mCE6ZdWZDs~-;nJ$^XfFAhwTN2=0qN6G`5w0ZBtuS72NvZ+l%d+j?8y{s?n=cx!?Ce zDRc1&nF>X%+|8E#l9#J*DK-^u(a*kG+m1`rKdBma7|G3ZnC56%*=D*Hq6nFM2&G{*}$4FvZZPg$3fTbaJLIkKg82 zvHo|U`>rbSJxfc)&$!N=)f1h$aj$hy<|%`nOV`#Ot5fiCKjkN1vSiaN#yNiVbL;;m z*X?+q+48E3v1Zjbcd3N%<9yFI6(n*qe1BD<$oMCki=_b=#trwR1cSU@Ui`(pC|%=# UOX6~CU~*;fboFyt=akR{02K3QwEzGB literal 0 HcmV?d00001 diff --git a/doc/api/html/classstan_1_1agrad_1_1chainable-members.html b/doc/api/html/classstan_1_1agrad_1_1chainable-members.html new file mode 100644 index 00000000000..f13c1dbbff9 --- /dev/null +++ b/doc/api/html/classstan_1_1agrad_1_1chainable-members.html @@ -0,0 +1,119 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::agrad::chainable Member List
+
+
+ +

This is the complete list of members for stan::agrad::chainable, including all inherited members.

+ + + + + + + + +
chain()stan::agrad::chainableinlinevirtual
chainable()stan::agrad::chainableinline
init_dependent()stan::agrad::chainableinlinevirtual
operator delete(void *)stan::agrad::chainableinlinestatic
operator new(size_t nbytes)stan::agrad::chainableinlinestatic
set_zero_adjoint()stan::agrad::chainableinlinevirtual
~chainable()stan::agrad::chainableinlinevirtual
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1agrad_1_1chainable.html b/doc/api/html/classstan_1_1agrad_1_1chainable.html new file mode 100644 index 00000000000..2041f72632d --- /dev/null +++ b/doc/api/html/classstan_1_1agrad_1_1chainable.html @@ -0,0 +1,400 @@ + + + + + +Stan: stan::agrad::chainable Class Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::agrad::chainable Class Reference
+
+
+ +

Abstract base class for variable implementations that handles memory management and applying the chain rule. + More...

+ +

#include <chainable.hpp>

+
+Inheritance diagram for stan::agrad::chainable:
+
+
+ + +stan::agrad::vari +stan::agrad::op_ddv_vari +stan::agrad::op_ddv_vari +stan::agrad::op_dv_vari +stan::agrad::op_dv_vari +stan::agrad::op_dvd_vari +stan::agrad::op_dvd_vari +stan::agrad::op_dvv_vari +stan::agrad::op_dvv_vari +stan::agrad::op_matrix_vari +stan::agrad::op_v_vari +stan::agrad::op_v_vari +stan::agrad::op_vd_vari +stan::agrad::op_vd_vari +stan::agrad::op_vdd_vari +stan::agrad::op_vdd_vari +stan::agrad::op_vdv_vari +stan::agrad::op_vdv_vari +stan::agrad::op_vector_vari +stan::agrad::op_vv_vari +stan::agrad::op_vv_vari +stan::agrad::op_vvd_vari +stan::agrad::op_vvd_vari +stan::agrad::op_vvv_vari +stan::agrad::op_vvv_vari +stan::agrad::partials_vari +stan::agrad::precomputed_gradients_vari +stan::agrad::stored_gradient_vari + +
+ + + + + + + + + + + + + + + + + +

+Public Member Functions

 chainable ()
 Construct a chainable object.
 
virtual ~chainable ()
 Chainables are not destructible and should go on the function call stack or be allocated with operator new.
 
virtual void chain ()
 Apply the chain rule to this variable based on the variables on which it depends.
 
virtual void init_dependent ()
 Initialize this chainable's adjoint value to make it the dependent variable in a gradient calculation.
 
virtual void set_zero_adjoint ()
 Set the value of the adjoint for this chainable to its initial value.
 
+ + + + + + + +

+Static Public Member Functions

static void * operator new (size_t nbytes)
 Allocate memory from the underlying memory pool.
 
static void operator delete (void *)
 Delete a pointer from the underlying memory pool.
 
+

Detailed Description

+

Abstract base class for variable implementations that handles memory management and applying the chain rule.

+ +

Definition at line 14 of file chainable.hpp.

+

Constructor & Destructor Documentation

+ +
+
+ + + + + +
+ + + + + + + +
stan::agrad::chainable::chainable ()
+
+inline
+
+ +

Construct a chainable object.

+

The implementation in this abstract base class is a no-op.

+ +

Definition at line 22 of file chainable.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
virtual stan::agrad::chainable::~chainable ()
+
+inlinevirtual
+
+ +

Chainables are not destructible and should go on the function call stack or be allocated with operator new.

+ +

Definition at line 28 of file chainable.hpp.

+ +
+
+

Member Function Documentation

+ +
+
+ + + + + +
+ + + + + + + +
virtual void stan::agrad::chainable::chain ()
+
+inlinevirtual
+
+ +

Apply the chain rule to this variable based on the variables on which it depends.

+

The base implementation in this class is a no-op.

+ +

Reimplemented in stan::agrad::vari, stan::agrad::precomputed_gradients_vari, stan::agrad::stored_gradient_vari, and stan::agrad::partials_vari.

+ +

Definition at line 37 of file chainable.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
virtual void stan::agrad::chainable::init_dependent ()
+
+inlinevirtual
+
+ +

Initialize this chainable's adjoint value to make it the dependent variable in a gradient calculation.

+ +

Reimplemented in stan::agrad::vari.

+ +

Definition at line 44 of file chainable.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
static void stan::agrad::chainable::operator delete (void * )
+
+inlinestatic
+
+ +

Delete a pointer from the underlying memory pool.

+

This no-op implementation enables a subclass to throw exceptions in its constructor. An exception thrown in the constructor of a subclass will result in an error being raised, which is in turn caught and calls delete().

+

See the discussion of "plugging the memory leak" in: http://www.parashift.com/c++-faq/memory-pools.html

+ +

Definition at line 77 of file chainable.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
static void* stan::agrad::chainable::operator new (size_t nbytes)
+
+inlinestatic
+
+ +

Allocate memory from the underlying memory pool.

+

This memory is is managed by the gradient program and will be recovered as a whole. Classes should not be allocated with this operator if they have non-trivial destructors.

+
Parameters
+ + +
nbytesNumber of bytes to allocate.
+
+
+
Returns
Pointer to allocated bytes.
+ +

Definition at line 63 of file chainable.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
virtual void stan::agrad::chainable::set_zero_adjoint ()
+
+inlinevirtual
+
+ +

Set the value of the adjoint for this chainable to its initial value.

+ +

Reimplemented in stan::agrad::vari.

+ +

Definition at line 51 of file chainable.hpp.

+ +
+
+
The documentation for this class was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1agrad_1_1chainable.png b/doc/api/html/classstan_1_1agrad_1_1chainable.png new file mode 100644 index 0000000000000000000000000000000000000000..6512d6b1a396d4fec9d015460325077989854461 GIT binary patch literal 13283 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 QA_ua4tH)=hp9ZD;FCK_B;{X5v literal 0 HcmV?d00001 diff --git a/doc/api/html/classstan_1_1agrad_1_1chainable__alloc-members.html b/doc/api/html/classstan_1_1agrad_1_1chainable__alloc-members.html new file mode 100644 index 00000000000..426fb1818f9 --- /dev/null +++ b/doc/api/html/classstan_1_1agrad_1_1chainable__alloc-members.html @@ -0,0 +1,114 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::agrad::chainable_alloc Member List
+
+
+ +

This is the complete list of members for stan::agrad::chainable_alloc, including all inherited members.

+ + + +
chainable_alloc()stan::agrad::chainable_allocinline
~chainable_alloc()stan::agrad::chainable_allocinlinevirtual
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1agrad_1_1chainable__alloc.html b/doc/api/html/classstan_1_1agrad_1_1chainable__alloc.html new file mode 100644 index 00000000000..4a1599fde8c --- /dev/null +++ b/doc/api/html/classstan_1_1agrad_1_1chainable__alloc.html @@ -0,0 +1,193 @@ + + + + + +Stan: stan::agrad::chainable_alloc Class Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::agrad::chainable_alloc Class Reference
+
+
+ +

A chainable_alloc is an object which is constructed and destructed normally but the memory lifespan is managed along with the arena allocator for the gradient calculation. + More...

+ +

#include <var_stack.hpp>

+
+Inheritance diagram for stan::agrad::chainable_alloc:
+
+
+ + +stan::agrad::LDLT_alloc< R, C > + +
+ + + + + + +

+Public Member Functions

 chainable_alloc ()
 
virtual ~chainable_alloc ()
 
+

Detailed Description

+

A chainable_alloc is an object which is constructed and destructed normally but the memory lifespan is managed along with the arena allocator for the gradient calculation.

+

A chainable_alloc should never be created on the stack, only with a new call.

+ +

Definition at line 26 of file var_stack.hpp.

+

Constructor & Destructor Documentation

+ +
+
+ + + + + +
+ + + + + + + +
stan::agrad::chainable_alloc::chainable_alloc ()
+
+inline
+
+ +

Definition at line 28 of file var_stack.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
virtual stan::agrad::chainable_alloc::~chainable_alloc ()
+
+inlinevirtual
+
+ +

Definition at line 31 of file var_stack.hpp.

+ +
+
+
The documentation for this class was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1agrad_1_1chainable__alloc.png b/doc/api/html/classstan_1_1agrad_1_1chainable__alloc.png new file mode 100644 index 0000000000000000000000000000000000000000..c39da4d5540a29d58d8d38917c4cebe848f1976b GIT binary patch literal 769 zcmeAS@N?(olHy`uVBq!ia0vp^hk!VMgBeKHOpNjdQW60^A+G=b{|7Q(y!l$%e`o@b z1;z&s9ANFdBM;uXp2spK_UtoA1z|X6Bk3cJD=5ra#fTQE{~YuutcXPOZhA7i>Hl+OBc0T(ZGV@%dDd z_X;}7vyA<>O04>t&JnH2Gw&jsQ|T?=`_~Wl3z)4oxYv3s>;2x|f~&Cx;$QEk9AaB` zY;(zyjGbmlzkMrT_w@FCk*wdN%viH{|Hnl8-VM{j8a`LWzxtNQY*K2+?Hi*DcxpCR{M7{($31=QcY;enbe`-&mEYF=+pkxuZrA%6cwF!r zmu6bxd%Y`>5&Hi7b9z5SeqY^J@=dQ|d8zmr*IIMQ?U&xvS_N(4^2yBfp1)C^;y(ORNdFx8ufsHzIZZxUHu0GtV;#u#_ p>^KP+iXK7vwt_|HeqQ^@Q{WRm~@ literal 0 HcmV?d00001 diff --git a/doc/api/html/classstan_1_1agrad_1_1op__ddv__vari-members.html b/doc/api/html/classstan_1_1agrad_1_1op__ddv__vari-members.html new file mode 100644 index 00000000000..e32d994ddfd --- /dev/null +++ b/doc/api/html/classstan_1_1agrad_1_1op__ddv__vari-members.html @@ -0,0 +1,131 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::agrad::op_ddv_vari Member List
+
+
+ +

This is the complete list of members for stan::agrad::op_ddv_vari, including all inherited members.

+ + + + + + + + + + + + + + + + + + + + +
ad_stan::agrad::op_ddv_variprotected
adj_stan::agrad::vari
bd_stan::agrad::op_ddv_variprotected
chain()stan::agrad::variinlinevirtual
chainable()stan::agrad::chainableinline
cvi_stan::agrad::op_ddv_variprotected
free_memory()stan::agrad::variinlinestatic
init_dependent()stan::agrad::variinlinevirtual
op_ddv_vari(double f, double a, double b, vari *cvi)stan::agrad::op_ddv_variinline
operator delete(void *)stan::agrad::chainableinlinestatic
operator new(size_t nbytes)stan::agrad::variinlinestatic
recover_memory()stan::agrad::variinlinestatic
set_zero_adjoint()stan::agrad::variinlinevirtual
val_stan::agrad::vari
vari(const double x)stan::agrad::variinline
vari(const double x)stan::agrad::variinline
vari(const double x, bool stacked)stan::agrad::variinline
~chainable()stan::agrad::chainableinlinevirtual
~vari()stan::agrad::variinlinevirtual
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1agrad_1_1op__ddv__vari.html b/doc/api/html/classstan_1_1agrad_1_1op__ddv__vari.html new file mode 100644 index 00000000000..a9534874f02 --- /dev/null +++ b/doc/api/html/classstan_1_1agrad_1_1op__ddv__vari.html @@ -0,0 +1,312 @@ + + + + + +Stan: stan::agrad::op_ddv_vari Class Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::agrad::op_ddv_vari Class Reference
+
+
+ +

#include <ddv_vari.hpp>

+
+Inheritance diagram for stan::agrad::op_ddv_vari:
+
+
+ + +stan::agrad::vari +stan::agrad::vari +stan::agrad::chainable +stan::agrad::chainable + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 op_ddv_vari (double f, double a, double b, vari *cvi)
 
- Public Member Functions inherited from stan::agrad::vari
 vari (const double x)
 Construct a variable implementation from a value.
 
virtual void chain ()
 Apply the chain rule to this variable based on the variables on which it depends.
 
 vari (const double x)
 Construct a variable implementation from a value.
 
 vari (const double x, bool stacked)
 
virtual ~vari ()
 Throw an illegal argument exception.
 
virtual void init_dependent ()
 Initialize the adjoint for this (dependent) variable to 1.
 
virtual void set_zero_adjoint ()
 Set the adjoint value of this variable to 0.
 
- Public Member Functions inherited from stan::agrad::chainable
 chainable ()
 Construct a chainable object.
 
virtual ~chainable ()
 Chainables are not destructible and should go on the function call stack or be allocated with operator new.
 
+ + + + + + + +

+Protected Attributes

double ad_
 
double bd_
 
varicvi_
 
+ + + + + + + + + + + + + + + + + + +

+Additional Inherited Members

- Static Public Member Functions inherited from stan::agrad::vari
static void * operator new (size_t nbytes)
 Allocate memory from the underlying memory pool.
 
static void recover_memory ()
 Recover memory used for all variables for reuse.
 
static void free_memory ()
 Return all memory used for gradients back to the system.
 
- Public Attributes inherited from stan::agrad::vari
const double val_
 The value of this variable.
 
double adj_
 The adjoint of this variable, which is the partial derivative of this variable with respect to the root variable.
 
+

Detailed Description

+
+

Definition at line 9 of file ddv_vari.hpp.

+

Constructor & Destructor Documentation

+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
stan::agrad::op_ddv_vari::op_ddv_vari (double f,
double a,
double b,
varicvi 
)
+
+inline
+
+ +

Definition at line 15 of file ddv_vari.hpp.

+ +
+
+

Member Data Documentation

+ +
+
+ + + + + +
+ + + + +
double stan::agrad::op_ddv_vari::ad_
+
+protected
+
+ +

Definition at line 11 of file ddv_vari.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + +
double stan::agrad::op_ddv_vari::bd_
+
+protected
+
+ +

Definition at line 12 of file ddv_vari.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + +
vari* stan::agrad::op_ddv_vari::cvi_
+
+protected
+
+ +

Definition at line 13 of file ddv_vari.hpp.

+ +
+
+
The documentation for this class was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1agrad_1_1op__ddv__vari.png b/doc/api/html/classstan_1_1agrad_1_1op__ddv__vari.png new file mode 100644 index 0000000000000000000000000000000000000000..c87ce0fe4098fc3527ac596653904c7731df710a GIT binary patch literal 1326 zcmeAS@N?(olHy`uVBq!ia0y~yV6*_TJ2;quq>BvuOdur@;1lBd|Nnm=^TnI5rTvE{ z09jys;J^Xa&O7ozE=Ng_UoZnu5eQs86=KA|z_QoV#WAFU@$KB#lQ!81u+8?H`n~?7 z{Ct@wOHSzMeY|^fQ>mm=MUL?k{iRca6npAHq{!7*GrEG;_K7T)QaHMj&7*J?W6+$e z2K7f$R~PH(&yrui><#zr?YD%(9S__;wbW{{S>Y;UzOL+Bjc0#ci!1vt;eU_+*7tvR zHkrtp#aPL#<#Mi_@z}O-D@)9iUGew!@4B63T*>>t^s=tEzg}$b4VnM*c4RTFD?S_c z^3^QQ+!gxmzSn-_EDBZBSl8DOJ=Z|z{8iJ>w>GRPFX~k`OMf>j^Cp+|+9>A(UpJTU zYp->7I3d@%rZNR!r|~owgO*)_tqYw7yWbZt}dsaMnBTTI$TD%$9$A zm6tDNzBV<}C}-P;-+yxhJKnD{Wr-tn7O|9sf>ySL$>U%+1l`~1+W{F5GqFfXyV%Ao0I>d+O;d!b8v>6BkHIzS|Y zMYpuW*(*{8M;T?Fm#w}Nvz9Sf=0M@Ch|<}sO%uA9IVR3#c4!b`7f?9L$l_7Rz!)S$ zRqlS(byI@0mi%jQ-Dy-w-dBNfv0Ka^1{R95>`|NkN?T8S`LC|p zLSO4z<9%Drch~o*zh{42U7r^z#eDCje<^e5{33@tp^W84f9sb&ym~im_Q~uY>vzB3 zv_Y`rJF_zuve)eX@Sj`B$eCCpSM0xT?$7xm)dl^<0BBk3-j0uFY@kO}ree z-o0Dr!N1Mr#g_i{^W0)LOwI0mWz3h$cb&!N7st(WroWe}EzPvAb-Rgsh&gy3> zCT=(HoqcVSiB0Nn_KOiV`$OyPAJnO@c((%6SDEK%zf)#B z|HEJDft{8NL_}5I_SI$!OFsZg4>_$o?m#|EloQ)Xclkv$DU{{N$>mjR{brrT-V~5xL@5a?8F`u$!}HR zcSX$4eOj!{>io`af;QRX^?xX)&&UjpY;0tuFrmq^tUGYVlFV7$4M-IbhzA hJ!=^-PJ(~(Z&k0k^D~ + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::agrad::op_dv_vari Member List
+
+
+ +

This is the complete list of members for stan::agrad::op_dv_vari, including all inherited members.

+ + + + + + + + + + + + + + + + + + + +
ad_stan::agrad::op_dv_variprotected
adj_stan::agrad::vari
bvi_stan::agrad::op_dv_variprotected
chain()stan::agrad::variinlinevirtual
chainable()stan::agrad::chainableinline
free_memory()stan::agrad::variinlinestatic
init_dependent()stan::agrad::variinlinevirtual
op_dv_vari(double f, double a, vari *bvi)stan::agrad::op_dv_variinline
operator delete(void *)stan::agrad::chainableinlinestatic
operator new(size_t nbytes)stan::agrad::variinlinestatic
recover_memory()stan::agrad::variinlinestatic
set_zero_adjoint()stan::agrad::variinlinevirtual
val_stan::agrad::vari
vari(const double x)stan::agrad::variinline
vari(const double x)stan::agrad::variinline
vari(const double x, bool stacked)stan::agrad::variinline
~chainable()stan::agrad::chainableinlinevirtual
~vari()stan::agrad::variinlinevirtual
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1agrad_1_1op__dv__vari.html b/doc/api/html/classstan_1_1agrad_1_1op__dv__vari.html new file mode 100644 index 00000000000..5d774799f34 --- /dev/null +++ b/doc/api/html/classstan_1_1agrad_1_1op__dv__vari.html @@ -0,0 +1,282 @@ + + + + + +Stan: stan::agrad::op_dv_vari Class Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::agrad::op_dv_vari Class Reference
+
+
+ +

#include <dv_vari.hpp>

+
+Inheritance diagram for stan::agrad::op_dv_vari:
+
+
+ + +stan::agrad::vari +stan::agrad::vari +stan::agrad::chainable +stan::agrad::chainable + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 op_dv_vari (double f, double a, vari *bvi)
 
- Public Member Functions inherited from stan::agrad::vari
 vari (const double x)
 Construct a variable implementation from a value.
 
virtual void chain ()
 Apply the chain rule to this variable based on the variables on which it depends.
 
 vari (const double x)
 Construct a variable implementation from a value.
 
 vari (const double x, bool stacked)
 
virtual ~vari ()
 Throw an illegal argument exception.
 
virtual void init_dependent ()
 Initialize the adjoint for this (dependent) variable to 1.
 
virtual void set_zero_adjoint ()
 Set the adjoint value of this variable to 0.
 
- Public Member Functions inherited from stan::agrad::chainable
 chainable ()
 Construct a chainable object.
 
virtual ~chainable ()
 Chainables are not destructible and should go on the function call stack or be allocated with operator new.
 
+ + + + + +

+Protected Attributes

double ad_
 
varibvi_
 
+ + + + + + + + + + + + + + + + + + +

+Additional Inherited Members

- Static Public Member Functions inherited from stan::agrad::vari
static void * operator new (size_t nbytes)
 Allocate memory from the underlying memory pool.
 
static void recover_memory ()
 Recover memory used for all variables for reuse.
 
static void free_memory ()
 Return all memory used for gradients back to the system.
 
- Public Attributes inherited from stan::agrad::vari
const double val_
 The value of this variable.
 
double adj_
 The adjoint of this variable, which is the partial derivative of this variable with respect to the root variable.
 
+

Detailed Description

+
+

Definition at line 9 of file dv_vari.hpp.

+

Constructor & Destructor Documentation

+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
stan::agrad::op_dv_vari::op_dv_vari (double f,
double a,
varibvi 
)
+
+inline
+
+ +

Definition at line 14 of file dv_vari.hpp.

+ +
+
+

Member Data Documentation

+ +
+
+ + + + + +
+ + + + +
double stan::agrad::op_dv_vari::ad_
+
+protected
+
+ +

Definition at line 11 of file dv_vari.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + +
vari* stan::agrad::op_dv_vari::bvi_
+
+protected
+
+ +

Definition at line 12 of file dv_vari.hpp.

+ +
+
+
The documentation for this class was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1agrad_1_1op__dv__vari.png b/doc/api/html/classstan_1_1agrad_1_1op__dv__vari.png new file mode 100644 index 0000000000000000000000000000000000000000..2853fd9e60c68a8d3d4ac5d3554e8b5d78861f41 GIT binary patch literal 1314 zcmeAS@N?(olHy`uVBq!ia0y~yVAKM#J2;quWV(Bp50H`w@CkAK|NlRb`Qpvj(*8pe zfGjXRaNq!I=N)+Sh~+e?fI`P z&u2cl;ZmPu@8`FX)B0vJ)Y_9nJFw|h@3&5nGpaC5QfLz@e4Ij1lEtn$1uE_Suuq&GL7y=L3=R{eM8 z>9S4ljY~D9!%DvHQVngDf72lEAGU3$N^H>fWhz@AyV6f|C(l>a z+27oJeqENgXVyvX*srfo)?Iiu=}Yt;Ge*^y+c84NGt^77)Mc60(kWI<3pkY>rk70D z31PJ8NnXEhm$%p|2AO3xb9cSci(J8E(3vWGKq-VVqD70LJAgGoa211&lW2qM3Z@Ml zp$uXRxhRl)Bp)y}$jkO(;U-+s$nAbr!Snp57fala&kOqcEJdC}#q;}*HCmp#j<>E# z-1Tn5e&6z$h$#G)V*Gkx>H?Lyk5>J1+2r2%Z~xJ6@EA;tUDdvJ=PaKC{VKaTN?zZ1 zvnuq_qB#E3`>r^vt~?h0^L+BVl6XT?RsgdzS*3H_r7Hp zpG_(`x!Bs{lJF1VfJu6pv)){F2z8r|7AhaWi!7?xB zIW;_cX&z%ek1fi$4$Oa=|KF-1jl{V9!5+eU*x(C`!}5}8x~NHGpWD^`rnvb}V#;KN zfhlF5<5h#d#&7b2EC1c#KNr93``3urQ|(iiuT!4J{L?r6TDQ*hKSH6W*YEthEHWxK z`qb@>Yf8#qz5R9bN6^)?H_UwxJYD>uY{u;0`qtCVvBZdXv;AJjxx=^XvA=fK>oe9o z)fuYuSNz`oRO$Y*R~9$lS)Hix4Lv)3UFdVZF0~V0M>lNVx@y{n>HEr<)TXjqSQ?9VU1EJ&}-uu7xudsU4#o+#}EmHjLqQib&2i|@S-}UO_ t`kr-674oQw{NmPCi4tvn3>nAj|7w;?EMJn=4J^ + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::agrad::op_dvd_vari Member List
+
+
+ +

This is the complete list of members for stan::agrad::op_dvd_vari, including all inherited members.

+ + + + + + + + + + + + + + + + + + + + +
ad_stan::agrad::op_dvd_variprotected
adj_stan::agrad::vari
bvi_stan::agrad::op_dvd_variprotected
cd_stan::agrad::op_dvd_variprotected
chain()stan::agrad::variinlinevirtual
chainable()stan::agrad::chainableinline
free_memory()stan::agrad::variinlinestatic
init_dependent()stan::agrad::variinlinevirtual
op_dvd_vari(double f, double a, vari *bvi, double c)stan::agrad::op_dvd_variinline
operator delete(void *)stan::agrad::chainableinlinestatic
operator new(size_t nbytes)stan::agrad::variinlinestatic
recover_memory()stan::agrad::variinlinestatic
set_zero_adjoint()stan::agrad::variinlinevirtual
val_stan::agrad::vari
vari(const double x)stan::agrad::variinline
vari(const double x)stan::agrad::variinline
vari(const double x, bool stacked)stan::agrad::variinline
~chainable()stan::agrad::chainableinlinevirtual
~vari()stan::agrad::variinlinevirtual
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1agrad_1_1op__dvd__vari.html b/doc/api/html/classstan_1_1agrad_1_1op__dvd__vari.html new file mode 100644 index 00000000000..1078f5aa635 --- /dev/null +++ b/doc/api/html/classstan_1_1agrad_1_1op__dvd__vari.html @@ -0,0 +1,312 @@ + + + + + +Stan: stan::agrad::op_dvd_vari Class Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::agrad::op_dvd_vari Class Reference
+
+
+ +

#include <dvd_vari.hpp>

+
+Inheritance diagram for stan::agrad::op_dvd_vari:
+
+
+ + +stan::agrad::vari +stan::agrad::vari +stan::agrad::chainable +stan::agrad::chainable + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 op_dvd_vari (double f, double a, vari *bvi, double c)
 
- Public Member Functions inherited from stan::agrad::vari
 vari (const double x)
 Construct a variable implementation from a value.
 
virtual void chain ()
 Apply the chain rule to this variable based on the variables on which it depends.
 
 vari (const double x)
 Construct a variable implementation from a value.
 
 vari (const double x, bool stacked)
 
virtual ~vari ()
 Throw an illegal argument exception.
 
virtual void init_dependent ()
 Initialize the adjoint for this (dependent) variable to 1.
 
virtual void set_zero_adjoint ()
 Set the adjoint value of this variable to 0.
 
- Public Member Functions inherited from stan::agrad::chainable
 chainable ()
 Construct a chainable object.
 
virtual ~chainable ()
 Chainables are not destructible and should go on the function call stack or be allocated with operator new.
 
+ + + + + + + +

+Protected Attributes

double ad_
 
varibvi_
 
double cd_
 
+ + + + + + + + + + + + + + + + + + +

+Additional Inherited Members

- Static Public Member Functions inherited from stan::agrad::vari
static void * operator new (size_t nbytes)
 Allocate memory from the underlying memory pool.
 
static void recover_memory ()
 Recover memory used for all variables for reuse.
 
static void free_memory ()
 Return all memory used for gradients back to the system.
 
- Public Attributes inherited from stan::agrad::vari
const double val_
 The value of this variable.
 
double adj_
 The adjoint of this variable, which is the partial derivative of this variable with respect to the root variable.
 
+

Detailed Description

+
+

Definition at line 9 of file dvd_vari.hpp.

+

Constructor & Destructor Documentation

+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
stan::agrad::op_dvd_vari::op_dvd_vari (double f,
double a,
varibvi,
double c 
)
+
+inline
+
+ +

Definition at line 15 of file dvd_vari.hpp.

+ +
+
+

Member Data Documentation

+ +
+
+ + + + + +
+ + + + +
double stan::agrad::op_dvd_vari::ad_
+
+protected
+
+ +

Definition at line 11 of file dvd_vari.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + +
vari* stan::agrad::op_dvd_vari::bvi_
+
+protected
+
+ +

Definition at line 12 of file dvd_vari.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + +
double stan::agrad::op_dvd_vari::cd_
+
+protected
+
+ +

Definition at line 13 of file dvd_vari.hpp.

+ +
+
+
The documentation for this class was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1agrad_1_1op__dvd__vari.png b/doc/api/html/classstan_1_1agrad_1_1op__dvd__vari.png new file mode 100644 index 0000000000000000000000000000000000000000..c1ceca0511a24cda2c5b79bdec182fd644f1fefe GIT binary patch literal 1331 zcmeAS@N?(olHy`uVBq!ia0y~yV6*_TJ2;quq>BvuOdur@;1lBd|Nnm=^TnI5rTvE{ z09jys;J^Xa&O7ozE=Ng_UoZnu5eQs86=KA|z;ejb#WAFU@$KBVlQvliu+8?H`n~?- zabMpcrVSRjx+v&NR3rz4aJw=lF{@tb?6G_o$x4xd5OhU z2L2jB=%Mae3{#q-s z+WT|nbky}SC3WM=59MCt{x@Y^yn7Hj;oxHKgGyyUekNJO8vS?^5-+P##h&FxV%c2CC0w` zHS3-|2~%HR+;a88t0|{zGc&T;cx>HnM4m%eqlz0?7*?bBaj_*8{bvtG?W3Y@v#~m34rX>~)44Qlj4qeO~ z6CP2O`$xBM>6A+fZ`pOQN2Gq&>yZ9WZx-womJ|Kn*f9U((qBFO-NCiT_U(9A^((Jx zcifwA`BHmockbg)F3sesNS1h|zRK=N!w!GeJ14*XpLz@)g?D#__)9;UdvldM_m26m z_pL}*U*Dwv>g$%9)2mj!5^FzFtM)*9uEDy;q3cp}Ga7p{KQEkov{vWAzs=>vmgno| z`K`TiDs=I$4(Hj2)0yOITXLR9{R!H9Y0vz7%I}gH<6pNVn$N16X_&a*+;?_ZtknEX zhnq9B=G|YlU%p_!a7g*h-4k9h@@-x9N^d#4jpB9f{Xp(H(eKk5(*G>@o3^A%Onv>1 zau%DF!Xf@o{)C0vP6Wo20#dZC-Vx-L**_CR@;7YW!LY>#6gvkB^`;*?yH(2ID5K1C zsnxlV*i$SjW*{P-V)Uka-)8v3`0rFL(;P2SqxQr0Bc-v|O*tHHZ;>=S%E;nT$iNsR zj^u?6F Yd0%sFVdQ&MBb@0Q2r_N&o-= literal 0 HcmV?d00001 diff --git a/doc/api/html/classstan_1_1agrad_1_1op__dvv__vari-members.html b/doc/api/html/classstan_1_1agrad_1_1op__dvv__vari-members.html new file mode 100644 index 00000000000..9abd1c760ad --- /dev/null +++ b/doc/api/html/classstan_1_1agrad_1_1op__dvv__vari-members.html @@ -0,0 +1,131 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::agrad::op_dvv_vari Member List
+
+
+ +

This is the complete list of members for stan::agrad::op_dvv_vari, including all inherited members.

+ + + + + + + + + + + + + + + + + + + + +
ad_stan::agrad::op_dvv_variprotected
adj_stan::agrad::vari
bvi_stan::agrad::op_dvv_variprotected
chain()stan::agrad::variinlinevirtual
chainable()stan::agrad::chainableinline
cvi_stan::agrad::op_dvv_variprotected
free_memory()stan::agrad::variinlinestatic
init_dependent()stan::agrad::variinlinevirtual
op_dvv_vari(double f, double a, vari *bvi, vari *cvi)stan::agrad::op_dvv_variinline
operator delete(void *)stan::agrad::chainableinlinestatic
operator new(size_t nbytes)stan::agrad::variinlinestatic
recover_memory()stan::agrad::variinlinestatic
set_zero_adjoint()stan::agrad::variinlinevirtual
val_stan::agrad::vari
vari(const double x)stan::agrad::variinline
vari(const double x)stan::agrad::variinline
vari(const double x, bool stacked)stan::agrad::variinline
~chainable()stan::agrad::chainableinlinevirtual
~vari()stan::agrad::variinlinevirtual
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1agrad_1_1op__dvv__vari.html b/doc/api/html/classstan_1_1agrad_1_1op__dvv__vari.html new file mode 100644 index 00000000000..ec5afcd4f56 --- /dev/null +++ b/doc/api/html/classstan_1_1agrad_1_1op__dvv__vari.html @@ -0,0 +1,312 @@ + + + + + +Stan: stan::agrad::op_dvv_vari Class Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::agrad::op_dvv_vari Class Reference
+
+
+ +

#include <dvv_vari.hpp>

+
+Inheritance diagram for stan::agrad::op_dvv_vari:
+
+
+ + +stan::agrad::vari +stan::agrad::vari +stan::agrad::chainable +stan::agrad::chainable + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 op_dvv_vari (double f, double a, vari *bvi, vari *cvi)
 
- Public Member Functions inherited from stan::agrad::vari
 vari (const double x)
 Construct a variable implementation from a value.
 
virtual void chain ()
 Apply the chain rule to this variable based on the variables on which it depends.
 
 vari (const double x)
 Construct a variable implementation from a value.
 
 vari (const double x, bool stacked)
 
virtual ~vari ()
 Throw an illegal argument exception.
 
virtual void init_dependent ()
 Initialize the adjoint for this (dependent) variable to 1.
 
virtual void set_zero_adjoint ()
 Set the adjoint value of this variable to 0.
 
- Public Member Functions inherited from stan::agrad::chainable
 chainable ()
 Construct a chainable object.
 
virtual ~chainable ()
 Chainables are not destructible and should go on the function call stack or be allocated with operator new.
 
+ + + + + + + +

+Protected Attributes

double ad_
 
varibvi_
 
varicvi_
 
+ + + + + + + + + + + + + + + + + + +

+Additional Inherited Members

- Static Public Member Functions inherited from stan::agrad::vari
static void * operator new (size_t nbytes)
 Allocate memory from the underlying memory pool.
 
static void recover_memory ()
 Recover memory used for all variables for reuse.
 
static void free_memory ()
 Return all memory used for gradients back to the system.
 
- Public Attributes inherited from stan::agrad::vari
const double val_
 The value of this variable.
 
double adj_
 The adjoint of this variable, which is the partial derivative of this variable with respect to the root variable.
 
+

Detailed Description

+
+

Definition at line 9 of file dvv_vari.hpp.

+

Constructor & Destructor Documentation

+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
stan::agrad::op_dvv_vari::op_dvv_vari (double f,
double a,
varibvi,
varicvi 
)
+
+inline
+
+ +

Definition at line 15 of file dvv_vari.hpp.

+ +
+
+

Member Data Documentation

+ +
+
+ + + + + +
+ + + + +
double stan::agrad::op_dvv_vari::ad_
+
+protected
+
+ +

Definition at line 11 of file dvv_vari.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + +
vari* stan::agrad::op_dvv_vari::bvi_
+
+protected
+
+ +

Definition at line 12 of file dvv_vari.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + +
vari* stan::agrad::op_dvv_vari::cvi_
+
+protected
+
+ +

Definition at line 13 of file dvv_vari.hpp.

+ +
+
+
The documentation for this class was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1agrad_1_1op__dvv__vari.png b/doc/api/html/classstan_1_1agrad_1_1op__dvv__vari.png new file mode 100644 index 0000000000000000000000000000000000000000..f2a274c736ef6c393be1e6985c521b2a170a6f6f GIT binary patch literal 1326 zcmeAS@N?(olHy`uVBq!ia0y~yV6*_TJ2;quq>BvuOdur@;1lBd|Nnm=^TnI5rTvE{ z09jys;J^Xa&O7ozE=Ng_UoZnu5eQs86=KA|z_QoV#WAFU@$KB#MVovC*k<3;djEft zy`5!>rG}AWVXd)d^y3XW{BQYwPY?3S6nM5DM0RBrUwITVTlwfpHjlzpj6rj<8bp>$ zJ!stF_f_Zh<8^`oVK59HOo_TOE9hW&l~ukRmk z>YguBR?wW76ukCbJ_}*pz+g@H<%Dz0$?M+|3Z;UbH_MKv@ zON#wMXTN%#cvULiXNxAw(XE07>xGv+-D#N~IeXey$90uQ-kotaUK{;zL1;9`j@obQ z#6Ns$S{>8hmdlsBEauwPUtdd#Gn5}(R8FzKe*OGDoww|_&X-;^eizI5-8%73@3OO* zcGWj#Kl9CwUDc*5_HW1jwOk)#x3)Ii_6x90N&mVk?&#&PP}?WRnc0fou8Fy-{d3-q zcut9*j@z}vzk2Q4`KV4gVS{i;{e<`1SH0q&^eBXRiN#e0O+QnIu3+8^-P%j1d|Pp3 zYLHhoL(Ea$1*uWIGafOVE8cCIx9)0#Cf@^_+BMtGZj~}P%Gh$^ETe)$7c<9%M+{6$ zEE*Uz`KZY~a9=3gOOy9f-GN27WVTvdeTEc?3cxt62#i@?H7#9T*0&<;jx^Ig_35vS z@9Ft{l|24vSKTjQ9O{?-pTU1`|CjfVH#Qk zUH@|b!(Fd0Ro#$ye=4jt`oQCu`0ib^YD8-SVYNmacI4@h>dlGf+ znAi=;F!@~(cWyJu*;kiOFaG1{dS4DMs}VSR^mX*t@62-LO|KN)#e-}Qt^`Hdrv~vSRZl_O zt&i$d9*Ek%*dVzw?&wkNcj`=WS2$OR7uBv_73TqrrwK^WroV1V(5=Owzlii`nA*+iN>^hA}U*X!!hP<1Mr6SqDVe1(eL$iHN5IZ_9RX!q>H3|o9>3kJ(LGyv^YILgT4QOLk(=NqH({-dY*GTHWJJ05J2S6TP^|I26F z_thYxYNgyZn^GA=nHhGgvhPbimrDDmQ+U`nwETwS-&y~p-xbH+vi_R=@9B@VJM`=2 zZ>&0e{LrIi-Or`(O#5c@M)Z4l%-$b%n?jfGyLs>7BC~HV(r$b%lktzXnAsKFU;pgc zhP>15Zd!VR+n;ToU-;WiOnb4GZrfYi$8s7o`)jIJ_uYQFM@X&p@wFdYou)0#y3ri_ zb>@!Bb^N)Z4bE{Abw_>wM?W&N);%z-QndGcO@r$BzQ2>T-~BxMtc$tA7%lnFS6KIY g*E(AUy{GnOpKGp!$9=sBEZi78UHx3vIVCg!0QU)CdH?_b literal 0 HcmV?d00001 diff --git a/doc/api/html/classstan_1_1agrad_1_1op__matrix__vari-members.html b/doc/api/html/classstan_1_1agrad_1_1op__matrix__vari-members.html new file mode 100644 index 00000000000..74494120b8d --- /dev/null +++ b/doc/api/html/classstan_1_1agrad_1_1op__matrix__vari-members.html @@ -0,0 +1,132 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::agrad::op_matrix_vari Member List
+
+
+ +

This is the complete list of members for stan::agrad::op_matrix_vari, including all inherited members.

+ + + + + + + + + + + + + + + + + + + + + +
adj_stan::agrad::vari
chain()stan::agrad::variinlinevirtual
chainable()stan::agrad::chainableinline
free_memory()stan::agrad::variinlinestatic
init_dependent()stan::agrad::variinlinevirtual
op_matrix_vari(double f, const Eigen::Matrix< stan::agrad::var, R, C > &vs)stan::agrad::op_matrix_variinline
operator delete(void *)stan::agrad::chainableinlinestatic
operator new(size_t nbytes)stan::agrad::variinlinestatic
operator[](size_t n) const stan::agrad::op_matrix_variinline
recover_memory()stan::agrad::variinlinestatic
set_zero_adjoint()stan::agrad::variinlinevirtual
size()stan::agrad::op_matrix_variinline
size_stan::agrad::op_matrix_variprotected
val_stan::agrad::vari
vari(const double x)stan::agrad::variinline
vari(const double x)stan::agrad::variinline
vari(const double x, bool stacked)stan::agrad::variinline
vis_stan::agrad::op_matrix_variprotected
~chainable()stan::agrad::chainableinlinevirtual
~vari()stan::agrad::variinlinevirtual
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1agrad_1_1op__matrix__vari.html b/doc/api/html/classstan_1_1agrad_1_1op__matrix__vari.html new file mode 100644 index 00000000000..19ce1a70184 --- /dev/null +++ b/doc/api/html/classstan_1_1agrad_1_1op__matrix__vari.html @@ -0,0 +1,333 @@ + + + + + +Stan: stan::agrad::op_matrix_vari Class Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::agrad::op_matrix_vari Class Reference
+
+
+ +

#include <matrix_vari.hpp>

+
+Inheritance diagram for stan::agrad::op_matrix_vari:
+
+
+ + +stan::agrad::vari +stan::agrad::chainable + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

template<int R, int C>
 op_matrix_vari (double f, const Eigen::Matrix< stan::agrad::var, R, C > &vs)
 
varioperator[] (size_t n) const
 
size_t size ()
 
- Public Member Functions inherited from stan::agrad::vari
 vari (const double x)
 Construct a variable implementation from a value.
 
virtual void chain ()
 Apply the chain rule to this variable based on the variables on which it depends.
 
 vari (const double x)
 Construct a variable implementation from a value.
 
 vari (const double x, bool stacked)
 
virtual ~vari ()
 Throw an illegal argument exception.
 
virtual void init_dependent ()
 Initialize the adjoint for this (dependent) variable to 1.
 
virtual void set_zero_adjoint ()
 Set the adjoint value of this variable to 0.
 
- Public Member Functions inherited from stan::agrad::chainable
 chainable ()
 Construct a chainable object.
 
virtual ~chainable ()
 Chainables are not destructible and should go on the function call stack or be allocated with operator new.
 
+ + + + + +

+Protected Attributes

const size_t size_
 
vari ** vis_
 
+ + + + + + + + + + + + + + + + + + +

+Additional Inherited Members

- Static Public Member Functions inherited from stan::agrad::vari
static void * operator new (size_t nbytes)
 Allocate memory from the underlying memory pool.
 
static void recover_memory ()
 Recover memory used for all variables for reuse.
 
static void free_memory ()
 Return all memory used for gradients back to the system.
 
- Public Attributes inherited from stan::agrad::vari
const double val_
 The value of this variable.
 
double adj_
 The adjoint of this variable, which is the partial derivative of this variable with respect to the root variable.
 
+

Detailed Description

+
+

Definition at line 11 of file matrix_vari.hpp.

+

Constructor & Destructor Documentation

+ +
+
+
+template<int R, int C>
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
stan::agrad::op_matrix_vari::op_matrix_vari (double f,
const Eigen::Matrix< stan::agrad::var, R, C > & vs 
)
+
+inline
+
+ +

Definition at line 17 of file matrix_vari.hpp.

+ +
+
+

Member Function Documentation

+ +
+
+ + + + + +
+ + + + + + + + +
vari* stan::agrad::op_matrix_vari::operator[] (size_t n) const
+
+inline
+
+ +

Definition at line 25 of file matrix_vari.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
size_t stan::agrad::op_matrix_vari::size ()
+
+inline
+
+ +

Definition at line 28 of file matrix_vari.hpp.

+ +
+
+

Member Data Documentation

+ +
+
+ + + + + +
+ + + + +
const size_t stan::agrad::op_matrix_vari::size_
+
+protected
+
+ +

Definition at line 13 of file matrix_vari.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + +
vari** stan::agrad::op_matrix_vari::vis_
+
+protected
+
+ +

Definition at line 14 of file matrix_vari.hpp.

+ +
+
+
The documentation for this class was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1agrad_1_1op__matrix__vari.png b/doc/api/html/classstan_1_1agrad_1_1op__matrix__vari.png new file mode 100644 index 0000000000000000000000000000000000000000..98eb0ee5528e78692e9d9fe47f22257bc5332879 GIT binary patch literal 985 zcmeAS@N?(olHy`uVBq!ia0vp^i-EX+3lnR3vHkGvF}x?UNae0n`4koFcN(5$aaL@eR^Inl)XMET(-`jj z_kQ1`D+vWW!HYNCS*G`_{`BdeiMyVc*RJr>_C0-BK;z@3b`{e%7UyE0YHNBd+;wXG zl~VaznN}$|&%A?9?@JDDUsx-u{n2jis-(*o1%6!EsCnSRzTT;a_7=t%nN|CpPThUu zcl9#;Kc#=s$iEW3 z|LM~|26sR2w%c;z+>>z4z)ANCE_}4i+BvC7WYy|FUVODH{7#{L-uN_<}o{5w_ZnLC2>h_p9uEcKPd$w>NwOL|28M zxh}K%u0j6QQ;P4eED63|#XI%x#PF{|e~$gs@La!9zHQQ#!iA4Nc1~O(9Anx4vtZg1 z@0~lYO)9Yj#W2YEJ|NHJGpu{cSWsMd;N!;~`=9Vz_;qcc{)g55{&j}%2Ux=ZGk|`& z%Q|yBd?vt<*9#4SgO+zk496E_2*( zR#f`bdDCAPR)2UVy*gm>we_22kC&aF@@dcd(tDMs&DW-$T6}$LoO9@{9qVuVU8~Bs z();^vUO&Tn%epU2F^4pdC$4Ai(fK@ay8QvW_n*(5eLT_de}x?5KL%(5nU|i$p?GK3 be}*&vonA`4dAA;z4;egN{an^LB{Ts5fPw3_ literal 0 HcmV?d00001 diff --git a/doc/api/html/classstan_1_1agrad_1_1op__v__vari-members.html b/doc/api/html/classstan_1_1agrad_1_1op__v__vari-members.html new file mode 100644 index 00000000000..672e36cd4fe --- /dev/null +++ b/doc/api/html/classstan_1_1agrad_1_1op__v__vari-members.html @@ -0,0 +1,129 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::agrad::op_v_vari Member List
+
+
+ +

This is the complete list of members for stan::agrad::op_v_vari, including all inherited members.

+ + + + + + + + + + + + + + + + + + +
adj_stan::agrad::vari
avi_stan::agrad::op_v_variprotected
chain()stan::agrad::variinlinevirtual
chainable()stan::agrad::chainableinline
free_memory()stan::agrad::variinlinestatic
init_dependent()stan::agrad::variinlinevirtual
op_v_vari(double f, vari *avi)stan::agrad::op_v_variinline
operator delete(void *)stan::agrad::chainableinlinestatic
operator new(size_t nbytes)stan::agrad::variinlinestatic
recover_memory()stan::agrad::variinlinestatic
set_zero_adjoint()stan::agrad::variinlinevirtual
val_stan::agrad::vari
vari(const double x)stan::agrad::variinline
vari(const double x)stan::agrad::variinline
vari(const double x, bool stacked)stan::agrad::variinline
~chainable()stan::agrad::chainableinlinevirtual
~vari()stan::agrad::variinlinevirtual
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1agrad_1_1op__v__vari.html b/doc/api/html/classstan_1_1agrad_1_1op__v__vari.html new file mode 100644 index 00000000000..88682f04ab6 --- /dev/null +++ b/doc/api/html/classstan_1_1agrad_1_1op__v__vari.html @@ -0,0 +1,252 @@ + + + + + +Stan: stan::agrad::op_v_vari Class Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::agrad::op_v_vari Class Reference
+
+
+ +

#include <v_vari.hpp>

+
+Inheritance diagram for stan::agrad::op_v_vari:
+
+
+ + +stan::agrad::vari +stan::agrad::vari +stan::agrad::chainable +stan::agrad::chainable + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 op_v_vari (double f, vari *avi)
 
- Public Member Functions inherited from stan::agrad::vari
 vari (const double x)
 Construct a variable implementation from a value.
 
virtual void chain ()
 Apply the chain rule to this variable based on the variables on which it depends.
 
 vari (const double x)
 Construct a variable implementation from a value.
 
 vari (const double x, bool stacked)
 
virtual ~vari ()
 Throw an illegal argument exception.
 
virtual void init_dependent ()
 Initialize the adjoint for this (dependent) variable to 1.
 
virtual void set_zero_adjoint ()
 Set the adjoint value of this variable to 0.
 
- Public Member Functions inherited from stan::agrad::chainable
 chainable ()
 Construct a chainable object.
 
virtual ~chainable ()
 Chainables are not destructible and should go on the function call stack or be allocated with operator new.
 
+ + + +

+Protected Attributes

variavi_
 
+ + + + + + + + + + + + + + + + + + +

+Additional Inherited Members

- Static Public Member Functions inherited from stan::agrad::vari
static void * operator new (size_t nbytes)
 Allocate memory from the underlying memory pool.
 
static void recover_memory ()
 Recover memory used for all variables for reuse.
 
static void free_memory ()
 Return all memory used for gradients back to the system.
 
- Public Attributes inherited from stan::agrad::vari
const double val_
 The value of this variable.
 
double adj_
 The adjoint of this variable, which is the partial derivative of this variable with respect to the root variable.
 
+

Detailed Description

+
+

Definition at line 9 of file v_vari.hpp.

+

Constructor & Destructor Documentation

+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
stan::agrad::op_v_vari::op_v_vari (double f,
variavi 
)
+
+inline
+
+ +

Definition at line 13 of file v_vari.hpp.

+ +
+
+

Member Data Documentation

+ +
+
+ + + + + +
+ + + + +
vari* stan::agrad::op_v_vari::avi_
+
+protected
+
+ +

Definition at line 11 of file v_vari.hpp.

+ +
+
+
The documentation for this class was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1agrad_1_1op__v__vari.png b/doc/api/html/classstan_1_1agrad_1_1op__v__vari.png new file mode 100644 index 0000000000000000000000000000000000000000..ea13d652338d1c28e9b870056c0b772ea2f2986b GIT binary patch literal 1293 zcmeAS@N?(olHy`uVBq!ia0y~yV3Yx}J2;quB-5%T#z0CUz$e7@|Ns9$=8HF9OZyK^ z0J6aNz<~p-opt~N|rEH$AhggK}$ z%RxImpmxf)MPENYn-;uqWqXmGlP~eXqJ^7qxv}nOJGfzo$k=U7!8=_m?rz ztJ=>_Kj%LCP|W=If+v4gEU`TKwCSbkKV{if*Z<`1ag65DyW4X^R{rGAnk8B%SM7fl zn47z9`{7mZV(w-H?}$FvuDrIYB5#fFq|)5H6Vjg31b3IqO+R?)$i+>+GL~e0&yLRj zt3ONS;)b&;&+1x<#k)Mq_dQ>psjS*v zD5b7{WQw|{<{-v9K;(+7X-=4N|)FX6ttvT(txY1L2m*al5`a)0mh>p%KS zR>XbY{?UHx(y|*OFLtJW{pS%r>Ccwr(%ovWR^8)U&39|zD(!cZKR@#budaA^02Fgs z_vR*kUAg?}9{WpE@8)k8%zoK?Ys2&!in=di>~f| z#Vn)p{Dz1BU!TX**8ehbFFm(#;=H$sSCuUaB3H^eo(kke3WhmPrv!QNhZK2fE@fw! z_l)I&_+J+eCOU@-nlJ= zKU*)>x5jSPdb#&kch9N6JU9OFokURd6sF~7zQ2@RR3}q=bd!{Q*fKNiyqTA_Z886x zJvZ3=;&h$WJ0EX1j=8$*>lVpv+RxJ;UU7eXHC{P=cgvy3@IOI*r?~eC(&)Rg~$Ih9RQCpX0Mf~1!YwG5hzow_T9;lV`{J(3mKla=+ zPPPrHFMBhu-<4zBQd9dpX8yhZyNem(+)xwz7tM5uwuS5reGlyy&n*m5nQ_ekSavaZ My85}Sb4q9e0Mk%cNB{r; literal 0 HcmV?d00001 diff --git a/doc/api/html/classstan_1_1agrad_1_1op__vd__vari-members.html b/doc/api/html/classstan_1_1agrad_1_1op__vd__vari-members.html new file mode 100644 index 00000000000..4bb6b4c143b --- /dev/null +++ b/doc/api/html/classstan_1_1agrad_1_1op__vd__vari-members.html @@ -0,0 +1,130 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::agrad::op_vd_vari Member List
+
+
+ +

This is the complete list of members for stan::agrad::op_vd_vari, including all inherited members.

+ + + + + + + + + + + + + + + + + + + +
adj_stan::agrad::vari
avi_stan::agrad::op_vd_variprotected
bd_stan::agrad::op_vd_variprotected
chain()stan::agrad::variinlinevirtual
chainable()stan::agrad::chainableinline
free_memory()stan::agrad::variinlinestatic
init_dependent()stan::agrad::variinlinevirtual
op_vd_vari(double f, vari *avi, double b)stan::agrad::op_vd_variinline
operator delete(void *)stan::agrad::chainableinlinestatic
operator new(size_t nbytes)stan::agrad::variinlinestatic
recover_memory()stan::agrad::variinlinestatic
set_zero_adjoint()stan::agrad::variinlinevirtual
val_stan::agrad::vari
vari(const double x)stan::agrad::variinline
vari(const double x)stan::agrad::variinline
vari(const double x, bool stacked)stan::agrad::variinline
~chainable()stan::agrad::chainableinlinevirtual
~vari()stan::agrad::variinlinevirtual
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1agrad_1_1op__vd__vari.html b/doc/api/html/classstan_1_1agrad_1_1op__vd__vari.html new file mode 100644 index 00000000000..9d0484f7982 --- /dev/null +++ b/doc/api/html/classstan_1_1agrad_1_1op__vd__vari.html @@ -0,0 +1,282 @@ + + + + + +Stan: stan::agrad::op_vd_vari Class Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::agrad::op_vd_vari Class Reference
+
+
+ +

#include <vd_vari.hpp>

+
+Inheritance diagram for stan::agrad::op_vd_vari:
+
+
+ + +stan::agrad::vari +stan::agrad::vari +stan::agrad::chainable +stan::agrad::chainable + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 op_vd_vari (double f, vari *avi, double b)
 
- Public Member Functions inherited from stan::agrad::vari
 vari (const double x)
 Construct a variable implementation from a value.
 
virtual void chain ()
 Apply the chain rule to this variable based on the variables on which it depends.
 
 vari (const double x)
 Construct a variable implementation from a value.
 
 vari (const double x, bool stacked)
 
virtual ~vari ()
 Throw an illegal argument exception.
 
virtual void init_dependent ()
 Initialize the adjoint for this (dependent) variable to 1.
 
virtual void set_zero_adjoint ()
 Set the adjoint value of this variable to 0.
 
- Public Member Functions inherited from stan::agrad::chainable
 chainable ()
 Construct a chainable object.
 
virtual ~chainable ()
 Chainables are not destructible and should go on the function call stack or be allocated with operator new.
 
+ + + + + +

+Protected Attributes

variavi_
 
double bd_
 
+ + + + + + + + + + + + + + + + + + +

+Additional Inherited Members

- Static Public Member Functions inherited from stan::agrad::vari
static void * operator new (size_t nbytes)
 Allocate memory from the underlying memory pool.
 
static void recover_memory ()
 Recover memory used for all variables for reuse.
 
static void free_memory ()
 Return all memory used for gradients back to the system.
 
- Public Attributes inherited from stan::agrad::vari
const double val_
 The value of this variable.
 
double adj_
 The adjoint of this variable, which is the partial derivative of this variable with respect to the root variable.
 
+

Detailed Description

+
+

Definition at line 9 of file vd_vari.hpp.

+

Constructor & Destructor Documentation

+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
stan::agrad::op_vd_vari::op_vd_vari (double f,
variavi,
double b 
)
+
+inline
+
+ +

Definition at line 14 of file vd_vari.hpp.

+ +
+
+

Member Data Documentation

+ +
+
+ + + + + +
+ + + + +
vari* stan::agrad::op_vd_vari::avi_
+
+protected
+
+ +

Definition at line 11 of file vd_vari.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + +
double stan::agrad::op_vd_vari::bd_
+
+protected
+
+ +

Definition at line 12 of file vd_vari.hpp.

+ +
+
+
The documentation for this class was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1agrad_1_1op__vd__vari.png b/doc/api/html/classstan_1_1agrad_1_1op__vd__vari.png new file mode 100644 index 0000000000000000000000000000000000000000..99cc44ad79e9df46e82d894e662d13eb8bd2ef46 GIT binary patch literal 1315 zcmeAS@N?(olHy`uVBq!ia0y~yVAKM#J2;quWV(Bp50H`w@CkAK|NlRb`Qpvj(*8pe zfGjXRaNq!I=N)+yRxixLRW5cUKPYUaaD-(60NHOE4@sQ z^sVyy8u)7RwfpANWw@=k?^^!q?#Vbok5X6TRUzRnp{0L2^6Fk6kNnpb*cGM?n-U5+_Lk@F1e^{(jH~`t~dC<{B60u^smbA#(A-;?@h|N{p>ND(OdP;nTN}a z-W!)@8s=QR`gmH1Xx#?peYQ7uoekw*86EspC(qB}s&k$B&E`h4>i$=qe`2n_SFiqZ zGcwre<}7ER|Xm9_ppZyDhRmMXqA%DA>8>)vBE-E4dV$<}VKnKdb5;%HUWO$<8rx6@$|ftp)+0jLRw}YH~ly zuh3dLWm<+sWMFRlQmw0HNX`Vgx?{zw5c#L~JiqtZE_rqIBf9*Q@Me5!1yN^t3rSc-Cze-GA z7p(RmdXg;5uXi_&hOR!cy2>`^<5Ia*QNrP0f2FkN+L^voyRggb+xK%Do-W)RvRC!y z!ACo9uRg7QaiwT=V^+xb4*l2b{l8u4+903tH9&0X(-h0dtI?BKZ`Is!c-C&dTY!>dFrP zTUf=GUUv27$#WUSS0`IkGOe2Df|`twu+(Y$tFGlrBKEek5C3hpiBo)9Tx767`^Fkj6XL2c^l7OAVq4l z9;sij>h-R5sti&~H|C&emS6nJ-SM#cU0Dk`pU{Vm^MNYuOFl=(@B25KKW_h*_m4O3 z+9DG+*J`7bg?M{6&-6b6q4D;0RlI5oK)LMk`gLB_%h#>-d4BDv=i~I1tM=wTd-mt_ zwxza=$B%|K*Ir|pqjvP$^0iry&)nv@z18U4+PjY`Ci(|&ottAWt5e|@dbWLC=x@F- z-vE8b-Pu>Kw5;CxYWI(w!UcD3J!`k~l>WB9l6{SLcj8w*3;pKPvLAL^%>5TBEbw5$ zfe*{;-pU7Vy(!AL?F_H6-mTNl)vgbIe+}RD>fib^>zFEJ(fsMV`qi#=*&Gd*f3W}g XST6DT#H(^(iN@gR>gTe~DWM4fVlrCi literal 0 HcmV?d00001 diff --git a/doc/api/html/classstan_1_1agrad_1_1op__vdd__vari-members.html b/doc/api/html/classstan_1_1agrad_1_1op__vdd__vari-members.html new file mode 100644 index 00000000000..9a03d4803b6 --- /dev/null +++ b/doc/api/html/classstan_1_1agrad_1_1op__vdd__vari-members.html @@ -0,0 +1,131 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::agrad::op_vdd_vari Member List
+
+
+ +

This is the complete list of members for stan::agrad::op_vdd_vari, including all inherited members.

+ + + + + + + + + + + + + + + + + + + + +
adj_stan::agrad::vari
avi_stan::agrad::op_vdd_variprotected
bd_stan::agrad::op_vdd_variprotected
cd_stan::agrad::op_vdd_variprotected
chain()stan::agrad::variinlinevirtual
chainable()stan::agrad::chainableinline
free_memory()stan::agrad::variinlinestatic
init_dependent()stan::agrad::variinlinevirtual
op_vdd_vari(double f, vari *avi, double b, double c)stan::agrad::op_vdd_variinline
operator delete(void *)stan::agrad::chainableinlinestatic
operator new(size_t nbytes)stan::agrad::variinlinestatic
recover_memory()stan::agrad::variinlinestatic
set_zero_adjoint()stan::agrad::variinlinevirtual
val_stan::agrad::vari
vari(const double x)stan::agrad::variinline
vari(const double x)stan::agrad::variinline
vari(const double x, bool stacked)stan::agrad::variinline
~chainable()stan::agrad::chainableinlinevirtual
~vari()stan::agrad::variinlinevirtual
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1agrad_1_1op__vdd__vari.html b/doc/api/html/classstan_1_1agrad_1_1op__vdd__vari.html new file mode 100644 index 00000000000..7889346b1fc --- /dev/null +++ b/doc/api/html/classstan_1_1agrad_1_1op__vdd__vari.html @@ -0,0 +1,312 @@ + + + + + +Stan: stan::agrad::op_vdd_vari Class Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::agrad::op_vdd_vari Class Reference
+
+
+ +

#include <vdd_vari.hpp>

+
+Inheritance diagram for stan::agrad::op_vdd_vari:
+
+
+ + +stan::agrad::vari +stan::agrad::vari +stan::agrad::chainable +stan::agrad::chainable + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 op_vdd_vari (double f, vari *avi, double b, double c)
 
- Public Member Functions inherited from stan::agrad::vari
 vari (const double x)
 Construct a variable implementation from a value.
 
virtual void chain ()
 Apply the chain rule to this variable based on the variables on which it depends.
 
 vari (const double x)
 Construct a variable implementation from a value.
 
 vari (const double x, bool stacked)
 
virtual ~vari ()
 Throw an illegal argument exception.
 
virtual void init_dependent ()
 Initialize the adjoint for this (dependent) variable to 1.
 
virtual void set_zero_adjoint ()
 Set the adjoint value of this variable to 0.
 
- Public Member Functions inherited from stan::agrad::chainable
 chainable ()
 Construct a chainable object.
 
virtual ~chainable ()
 Chainables are not destructible and should go on the function call stack or be allocated with operator new.
 
+ + + + + + + +

+Protected Attributes

variavi_
 
double bd_
 
double cd_
 
+ + + + + + + + + + + + + + + + + + +

+Additional Inherited Members

- Static Public Member Functions inherited from stan::agrad::vari
static void * operator new (size_t nbytes)
 Allocate memory from the underlying memory pool.
 
static void recover_memory ()
 Recover memory used for all variables for reuse.
 
static void free_memory ()
 Return all memory used for gradients back to the system.
 
- Public Attributes inherited from stan::agrad::vari
const double val_
 The value of this variable.
 
double adj_
 The adjoint of this variable, which is the partial derivative of this variable with respect to the root variable.
 
+

Detailed Description

+
+

Definition at line 9 of file vdd_vari.hpp.

+

Constructor & Destructor Documentation

+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
stan::agrad::op_vdd_vari::op_vdd_vari (double f,
variavi,
double b,
double c 
)
+
+inline
+
+ +

Definition at line 15 of file vdd_vari.hpp.

+ +
+
+

Member Data Documentation

+ +
+
+ + + + + +
+ + + + +
vari* stan::agrad::op_vdd_vari::avi_
+
+protected
+
+ +

Definition at line 11 of file vdd_vari.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + +
double stan::agrad::op_vdd_vari::bd_
+
+protected
+
+ +

Definition at line 12 of file vdd_vari.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + +
double stan::agrad::op_vdd_vari::cd_
+
+protected
+
+ +

Definition at line 13 of file vdd_vari.hpp.

+ +
+
+
The documentation for this class was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1agrad_1_1op__vdd__vari.png b/doc/api/html/classstan_1_1agrad_1_1op__vdd__vari.png new file mode 100644 index 0000000000000000000000000000000000000000..c2051b81fea3b1ad2da2ef44538f7275a9032f9d GIT binary patch literal 1331 zcmeAS@N?(olHy`uVBq!ia0y~yV6*_TJ2;quq>BvuOdur@;1lBd|Nnm=^TnI5rTvE{ z09jys;J^Xa&O7ozE=Ng_UoZnu5eQs86=KA|z;ejb#WAFU@$KBVMVq_?*k<3;djEeC zzq=h1cbAVx%zd9zW>&ioByT?aZ|RgEsg|GXLFA%aGTw!&&Q5$3!o0-dDubq;L_2 z5jK6=#x^JgClnSbu%tQ}!YVLRWo_pg7r>6UKX<>e1cN?#saI9qb}=Xl}kJ_mBw zUDdiPvw4N@*Q#4dz3ct9XtEsLDp;^yc-hmPmT9rGr+sx?S9$E+%=WZZ(GM4dMsw__ z{dSGJqV}NH^~IU97oOF;URwIIYM12}!4EG4H_deJiMzVG;?}BF?SCo`IINpHb#;~M zec|ugjLPOEyNg2CKbful&YX$O+VLy<&$`vC{wY91Wdbyi_U;Js%It3ik^Bv-cQ9`8 zSL&BPq+I@PpyN2z=yi8(P{Q{OF$WhpB!uu63S6A3Qy7KJ9yoPjn#os%_%CiEazFj`wQ5}8Y zx>e$x-e=avsxpu`yBu6rBXIWU>*%lFndQoxUMaeZ2iYE685U~$o_gAeFpM;v8FLY}!o$@WB14J_H=#q9gy#*Xk z&&#s!#6TkNS48gYY}14;W{!!onTd$12W7kO-eP;e{~^3i{lL;C77YxVd!;?O{Ep1VceaoB9kbgPdi-rs9OvXiiN9j|w-%jR$J{>i^(d(EBg-i#8!5{|*s)z4*}Q$iB}$JA@j literal 0 HcmV?d00001 diff --git a/doc/api/html/classstan_1_1agrad_1_1op__vdv__vari-members.html b/doc/api/html/classstan_1_1agrad_1_1op__vdv__vari-members.html new file mode 100644 index 00000000000..ea6cc9da003 --- /dev/null +++ b/doc/api/html/classstan_1_1agrad_1_1op__vdv__vari-members.html @@ -0,0 +1,131 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::agrad::op_vdv_vari Member List
+
+
+ +

This is the complete list of members for stan::agrad::op_vdv_vari, including all inherited members.

+ + + + + + + + + + + + + + + + + + + + +
adj_stan::agrad::vari
avi_stan::agrad::op_vdv_variprotected
bd_stan::agrad::op_vdv_variprotected
chain()stan::agrad::variinlinevirtual
chainable()stan::agrad::chainableinline
cvi_stan::agrad::op_vdv_variprotected
free_memory()stan::agrad::variinlinestatic
init_dependent()stan::agrad::variinlinevirtual
op_vdv_vari(double f, vari *avi, double b, vari *cvi)stan::agrad::op_vdv_variinline
operator delete(void *)stan::agrad::chainableinlinestatic
operator new(size_t nbytes)stan::agrad::variinlinestatic
recover_memory()stan::agrad::variinlinestatic
set_zero_adjoint()stan::agrad::variinlinevirtual
val_stan::agrad::vari
vari(const double x)stan::agrad::variinline
vari(const double x)stan::agrad::variinline
vari(const double x, bool stacked)stan::agrad::variinline
~chainable()stan::agrad::chainableinlinevirtual
~vari()stan::agrad::variinlinevirtual
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1agrad_1_1op__vdv__vari.html b/doc/api/html/classstan_1_1agrad_1_1op__vdv__vari.html new file mode 100644 index 00000000000..4f823918631 --- /dev/null +++ b/doc/api/html/classstan_1_1agrad_1_1op__vdv__vari.html @@ -0,0 +1,312 @@ + + + + + +Stan: stan::agrad::op_vdv_vari Class Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::agrad::op_vdv_vari Class Reference
+
+
+ +

#include <vdv_vari.hpp>

+
+Inheritance diagram for stan::agrad::op_vdv_vari:
+
+
+ + +stan::agrad::vari +stan::agrad::vari +stan::agrad::chainable +stan::agrad::chainable + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 op_vdv_vari (double f, vari *avi, double b, vari *cvi)
 
- Public Member Functions inherited from stan::agrad::vari
 vari (const double x)
 Construct a variable implementation from a value.
 
virtual void chain ()
 Apply the chain rule to this variable based on the variables on which it depends.
 
 vari (const double x)
 Construct a variable implementation from a value.
 
 vari (const double x, bool stacked)
 
virtual ~vari ()
 Throw an illegal argument exception.
 
virtual void init_dependent ()
 Initialize the adjoint for this (dependent) variable to 1.
 
virtual void set_zero_adjoint ()
 Set the adjoint value of this variable to 0.
 
- Public Member Functions inherited from stan::agrad::chainable
 chainable ()
 Construct a chainable object.
 
virtual ~chainable ()
 Chainables are not destructible and should go on the function call stack or be allocated with operator new.
 
+ + + + + + + +

+Protected Attributes

variavi_
 
double bd_
 
varicvi_
 
+ + + + + + + + + + + + + + + + + + +

+Additional Inherited Members

- Static Public Member Functions inherited from stan::agrad::vari
static void * operator new (size_t nbytes)
 Allocate memory from the underlying memory pool.
 
static void recover_memory ()
 Recover memory used for all variables for reuse.
 
static void free_memory ()
 Return all memory used for gradients back to the system.
 
- Public Attributes inherited from stan::agrad::vari
const double val_
 The value of this variable.
 
double adj_
 The adjoint of this variable, which is the partial derivative of this variable with respect to the root variable.
 
+

Detailed Description

+
+

Definition at line 9 of file vdv_vari.hpp.

+

Constructor & Destructor Documentation

+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
stan::agrad::op_vdv_vari::op_vdv_vari (double f,
variavi,
double b,
varicvi 
)
+
+inline
+
+ +

Definition at line 15 of file vdv_vari.hpp.

+ +
+
+

Member Data Documentation

+ +
+
+ + + + + +
+ + + + +
vari* stan::agrad::op_vdv_vari::avi_
+
+protected
+
+ +

Definition at line 11 of file vdv_vari.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + +
double stan::agrad::op_vdv_vari::bd_
+
+protected
+
+ +

Definition at line 12 of file vdv_vari.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + +
vari* stan::agrad::op_vdv_vari::cvi_
+
+protected
+
+ +

Definition at line 13 of file vdv_vari.hpp.

+ +
+
+
The documentation for this class was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1agrad_1_1op__vdv__vari.png b/doc/api/html/classstan_1_1agrad_1_1op__vdv__vari.png new file mode 100644 index 0000000000000000000000000000000000000000..85ed7e762df897a4ac4c852c3d9207b6f58342fd GIT binary patch literal 1333 zcmeAS@N?(olHy`uVBq!ia0y~yV6*_TJ2;quq>BvuOdur@;1lBd|Nnm=^TnI5rTvE{ z09jys;J^Xa&O7ozE=Ng_UoZnu5eQs86=KA|z;eXX#WAFU@$KBVMVq_?*k<3;djEeC zzq?&aYln|V%zd9zW=1+6F1*=Lueo#zTjD=$Ah~db+3}z`S;b2%t}Q^ck^0NF{8?#C~N_hFMM@x3BlfQ8`{%_*<`p@TnyZyI) zx7z!3;^l>xuPrmUy1aOg+PbL?q3eD>e4M^xO(z;~V`m4id;RLu=aRw<*e`w6;RpWuNrW%X zES%LZcWqha#Z}(jiK{#9*X4&Q?pw7@px`#=s`fW$;;yc)xV36k`=5#f4(sO5TwSGl zU--K=qcVSqb#dtWC$o*;nKQ9jJAP&VS+{!CKLwlv2)ls7QATQVe?&j> z(p>6zi$5Y{cCx15R!d-HHi#^jQaHMj&7*J?W1PtKmGhq7baYp@(SFCvcz?3@SIK_Ob7}(%hWJ zxrwJ^#k;Gc4?He^|E?s?Zl2%T8>d4T{}Np;*8ZKv<~P^P^INNex-V^-U*~q`Hq*Xq zoR70i>}P5|++cRLJ1lnAy-kn1GxXx_ui7vFVTW)CzvZq8uQ>g-u6m_7oqdnOb!~r- zuPoQQeot%&x4DpL7__&mJN=G7%bpd&A^J~#g@x{&fD{IxAc>37T)O4B6NqF#5PF9p zYT4BWO}+;<+oK;pi{hQ}h~eDj<5{<3K=J6%5hKIEw8Wx;L6c9xp^KSg!XvEQ?YG}v zGh?W4*k3fCVfrNOYH*wIN4GHcdMPi{1+!c?AJpXW!=!NG9)0;Qrw$bQbaBu7+kB+- zZ$B`qPNQVEs|$q>2Wo5f*B;*4W?VmQ$HQfE+sncuuD5;Kk{@`>xv2WEIN{sS&pZ^LdyuIzu zr4vowN3Pa + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::agrad::op_vector_vari Member List
+
+
+ +

This is the complete list of members for stan::agrad::op_vector_vari, including all inherited members.

+ + + + + + + + + + + + + + + + + + + + + +
adj_stan::agrad::vari
chain()stan::agrad::variinlinevirtual
chainable()stan::agrad::chainableinline
free_memory()stan::agrad::variinlinestatic
init_dependent()stan::agrad::variinlinevirtual
op_vector_vari(double f, const std::vector< stan::agrad::var > &vs)stan::agrad::op_vector_variinline
operator delete(void *)stan::agrad::chainableinlinestatic
operator new(size_t nbytes)stan::agrad::variinlinestatic
operator[](size_t n) const stan::agrad::op_vector_variinline
recover_memory()stan::agrad::variinlinestatic
set_zero_adjoint()stan::agrad::variinlinevirtual
size()stan::agrad::op_vector_variinline
size_stan::agrad::op_vector_variprotected
val_stan::agrad::vari
vari(const double x)stan::agrad::variinline
vari(const double x)stan::agrad::variinline
vari(const double x, bool stacked)stan::agrad::variinline
vis_stan::agrad::op_vector_variprotected
~chainable()stan::agrad::chainableinlinevirtual
~vari()stan::agrad::variinlinevirtual
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1agrad_1_1op__vector__vari.html b/doc/api/html/classstan_1_1agrad_1_1op__vector__vari.html new file mode 100644 index 00000000000..678e048f9ff --- /dev/null +++ b/doc/api/html/classstan_1_1agrad_1_1op__vector__vari.html @@ -0,0 +1,330 @@ + + + + + +Stan: stan::agrad::op_vector_vari Class Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::agrad::op_vector_vari Class Reference
+
+
+ +

#include <vector_vari.hpp>

+
+Inheritance diagram for stan::agrad::op_vector_vari:
+
+
+ + +stan::agrad::vari +stan::agrad::chainable + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 op_vector_vari (double f, const std::vector< stan::agrad::var > &vs)
 
varioperator[] (size_t n) const
 
size_t size ()
 
- Public Member Functions inherited from stan::agrad::vari
 vari (const double x)
 Construct a variable implementation from a value.
 
virtual void chain ()
 Apply the chain rule to this variable based on the variables on which it depends.
 
 vari (const double x)
 Construct a variable implementation from a value.
 
 vari (const double x, bool stacked)
 
virtual ~vari ()
 Throw an illegal argument exception.
 
virtual void init_dependent ()
 Initialize the adjoint for this (dependent) variable to 1.
 
virtual void set_zero_adjoint ()
 Set the adjoint value of this variable to 0.
 
- Public Member Functions inherited from stan::agrad::chainable
 chainable ()
 Construct a chainable object.
 
virtual ~chainable ()
 Chainables are not destructible and should go on the function call stack or be allocated with operator new.
 
+ + + + + +

+Protected Attributes

const size_t size_
 
vari ** vis_
 
+ + + + + + + + + + + + + + + + + + +

+Additional Inherited Members

- Static Public Member Functions inherited from stan::agrad::vari
static void * operator new (size_t nbytes)
 Allocate memory from the underlying memory pool.
 
static void recover_memory ()
 Recover memory used for all variables for reuse.
 
static void free_memory ()
 Return all memory used for gradients back to the system.
 
- Public Attributes inherited from stan::agrad::vari
const double val_
 The value of this variable.
 
double adj_
 The adjoint of this variable, which is the partial derivative of this variable with respect to the root variable.
 
+

Detailed Description

+
+

Definition at line 11 of file vector_vari.hpp.

+

Constructor & Destructor Documentation

+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
stan::agrad::op_vector_vari::op_vector_vari (double f,
const std::vector< stan::agrad::var > & vs 
)
+
+inline
+
+ +

Definition at line 16 of file vector_vari.hpp.

+ +
+
+

Member Function Documentation

+ +
+
+ + + + + +
+ + + + + + + + +
vari* stan::agrad::op_vector_vari::operator[] (size_t n) const
+
+inline
+
+ +

Definition at line 23 of file vector_vari.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
size_t stan::agrad::op_vector_vari::size ()
+
+inline
+
+ +

Definition at line 26 of file vector_vari.hpp.

+ +
+
+

Member Data Documentation

+ +
+
+ + + + + +
+ + + + +
const size_t stan::agrad::op_vector_vari::size_
+
+protected
+
+ +

Definition at line 13 of file vector_vari.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + +
vari** stan::agrad::op_vector_vari::vis_
+
+protected
+
+ +

Definition at line 14 of file vector_vari.hpp.

+ +
+
+
The documentation for this class was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1agrad_1_1op__vector__vari.png b/doc/api/html/classstan_1_1agrad_1_1op__vector__vari.png new file mode 100644 index 0000000000000000000000000000000000000000..260a6481405b520730120de50a0e0b18871b7c12 GIT binary patch literal 979 zcmeAS@N?(olHy`uVBq!ia0vp^%Ye9pgBeIheMkUN5&=FTuK)l42Qpv0`C8h4XabN0 z#s>}@VC}pk59D%`1o;Is02P72)l(rx3=GUko-U3d6^w7^zMiyNL4a*`|EfLzmE{*F z?0A`Fbn~iJaH@Kt#DeLJ-}DWSRn&G&Dk+T#p0uXG*K<=+ys^in$XkA2tIbom-uQog zJ!?|P$C+s}ezks0mP-8>CH;K*OXICu7aHl7pUsa|IR05;(v=NME&HdYW5Z*slo;fd4xZm#-u zPB1Gw^!)vdyrreScPEs_Ok$I{H#_<4^;y>!ZoD7ydGg*!nZBPN%qHuwSJ}SIUE#4h zYmQ#4+J}Rl)0ZgkDc$UK$(U0 z0CCyguyyS_yE^+mJNqY8G-(1(8kUE(QlgE z^YNE}>dRMfvpvr$c&6WcT~csh|FtPgm}Rc>T+T`SJLB2B{nw8DO#S7Po15`x(Y7-P)3p9sebDk4ctc_~-JFk7jEtGJ{n!+lyV#tG+gQ z9kJ@0!rGi)eb3yUp4!SeNy=@O?xZiw@86%@n6}l&b;TX4`&V@Mj@MLh_m-52FW&TG zeSn=#X8Zbs`gdnf+R}eeRnwDq*(~*G?vwlycF%fwZ<+x@%BGIz9k7fPA!n4nwyvx}3=H1zkf3D7t zY+1D>EC1Qi`*&vF<=wCxl8PSdLQ_$;|F2zdyC?tK73MbU^@Z8r)ehLPU)ukn{_T{s zaOH-1rJk1p8E!m%ex-PIWzMbralQ@v4?mdK II;Vst0BPyvs{jB1 literal 0 HcmV?d00001 diff --git a/doc/api/html/classstan_1_1agrad_1_1op__vv__vari-members.html b/doc/api/html/classstan_1_1agrad_1_1op__vv__vari-members.html new file mode 100644 index 00000000000..c2cbb6576e0 --- /dev/null +++ b/doc/api/html/classstan_1_1agrad_1_1op__vv__vari-members.html @@ -0,0 +1,130 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::agrad::op_vv_vari Member List
+
+
+ +

This is the complete list of members for stan::agrad::op_vv_vari, including all inherited members.

+ + + + + + + + + + + + + + + + + + + +
adj_stan::agrad::vari
avi_stan::agrad::op_vv_variprotected
bvi_stan::agrad::op_vv_variprotected
chain()stan::agrad::variinlinevirtual
chainable()stan::agrad::chainableinline
free_memory()stan::agrad::variinlinestatic
init_dependent()stan::agrad::variinlinevirtual
op_vv_vari(double f, vari *avi, vari *bvi)stan::agrad::op_vv_variinline
operator delete(void *)stan::agrad::chainableinlinestatic
operator new(size_t nbytes)stan::agrad::variinlinestatic
recover_memory()stan::agrad::variinlinestatic
set_zero_adjoint()stan::agrad::variinlinevirtual
val_stan::agrad::vari
vari(const double x)stan::agrad::variinline
vari(const double x)stan::agrad::variinline
vari(const double x, bool stacked)stan::agrad::variinline
~chainable()stan::agrad::chainableinlinevirtual
~vari()stan::agrad::variinlinevirtual
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1agrad_1_1op__vv__vari.html b/doc/api/html/classstan_1_1agrad_1_1op__vv__vari.html new file mode 100644 index 00000000000..9ce51d85906 --- /dev/null +++ b/doc/api/html/classstan_1_1agrad_1_1op__vv__vari.html @@ -0,0 +1,282 @@ + + + + + +Stan: stan::agrad::op_vv_vari Class Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::agrad::op_vv_vari Class Reference
+
+
+ +

#include <vv_vari.hpp>

+
+Inheritance diagram for stan::agrad::op_vv_vari:
+
+
+ + +stan::agrad::vari +stan::agrad::vari +stan::agrad::chainable +stan::agrad::chainable + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 op_vv_vari (double f, vari *avi, vari *bvi)
 
- Public Member Functions inherited from stan::agrad::vari
 vari (const double x)
 Construct a variable implementation from a value.
 
virtual void chain ()
 Apply the chain rule to this variable based on the variables on which it depends.
 
 vari (const double x)
 Construct a variable implementation from a value.
 
 vari (const double x, bool stacked)
 
virtual ~vari ()
 Throw an illegal argument exception.
 
virtual void init_dependent ()
 Initialize the adjoint for this (dependent) variable to 1.
 
virtual void set_zero_adjoint ()
 Set the adjoint value of this variable to 0.
 
- Public Member Functions inherited from stan::agrad::chainable
 chainable ()
 Construct a chainable object.
 
virtual ~chainable ()
 Chainables are not destructible and should go on the function call stack or be allocated with operator new.
 
+ + + + + +

+Protected Attributes

variavi_
 
varibvi_
 
+ + + + + + + + + + + + + + + + + + +

+Additional Inherited Members

- Static Public Member Functions inherited from stan::agrad::vari
static void * operator new (size_t nbytes)
 Allocate memory from the underlying memory pool.
 
static void recover_memory ()
 Recover memory used for all variables for reuse.
 
static void free_memory ()
 Return all memory used for gradients back to the system.
 
- Public Attributes inherited from stan::agrad::vari
const double val_
 The value of this variable.
 
double adj_
 The adjoint of this variable, which is the partial derivative of this variable with respect to the root variable.
 
+

Detailed Description

+
+

Definition at line 9 of file vv_vari.hpp.

+

Constructor & Destructor Documentation

+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
stan::agrad::op_vv_vari::op_vv_vari (double f,
variavi,
varibvi 
)
+
+inline
+
+ +

Definition at line 14 of file vv_vari.hpp.

+ +
+
+

Member Data Documentation

+ +
+
+ + + + + +
+ + + + +
vari* stan::agrad::op_vv_vari::avi_
+
+protected
+
+ +

Definition at line 11 of file vv_vari.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + +
vari* stan::agrad::op_vv_vari::bvi_
+
+protected
+
+ +

Definition at line 12 of file vv_vari.hpp.

+ +
+
+
The documentation for this class was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1agrad_1_1op__vv__vari.png b/doc/api/html/classstan_1_1agrad_1_1op__vv__vari.png new file mode 100644 index 0000000000000000000000000000000000000000..c73771d76ac9dde6d030e8d972046cc4cfdc7cae GIT binary patch literal 1309 zcmeAS@N?(olHy`uVBq!ia0y~yVAKM#J2;quWV(Bp50H`w@CkAK|NlRb`Qpvj(*8pe zfGjXRaNq!I=N)+61na7Y5J6)SDf4SgUCrLU!B)^P5Px6;yKB6#Uz#P098-1 zg+JP=w|Vulv(L|Cx#cDkS2<79b-w+~hUx0s z;^%i+pSBKdl;gcEdn?h}~Zht|fm0yv}i@RH2O-lJ~7H>A8)c&U5 z?Cq0t=dbj>xna@j>AEYm{v@#Pv5CC-Y*LBW-C2{abhQfyO!E7AH$|WA)?3?2S0>C~ z{p)Ya`hR7i(OyB`_g<`u_y5*xHhszcM|(LnJolr7jMG$=NS{?fUMrQ2LN%9O5oGX{ zVBEE2cgjMp1Bo)#rB`D&1+YFac>3~6X!%Je(FRYQ*9>AnIi(QBh!!n|?f}*V!Bq@8 zKpEE+OdB{tDUtl&unHK7oqdy4JzurQOa;azauk9bYO#vVvubL(x~=uMNvrtPcPmU# zv3(R3I_XP?aOmNZyNT7a-xVREaEt2hjWV;?y)G%PTcth8mix@!cqy{`Yv z`#Q)r=j7ECrnpIOR4(jI-n=@jv%AVx=XVhQ)Fo2!SD#OwyY1(#CA%F`b6>u1PW-tr zY?Yp8*`^A)Z(0Amc_wM~F}kpor^|SJi$xdFjSg-jgJA_vI+u?%&`B zjkVWCJJ)DOZ+yt|Cuh@SU^E2JyX!b9?!f#8VDw#1dCz9`+fd~ttJJEjd2im{&%0-@ zvXWJI_o~uOV!3*ry%{!)sw)LSX&4j$En1$NI6^0-7_RivT-tXcWa*S3cLtM0mKT%W zO={I*XfJ$o6%tQ}rz{T+zpKg}%AmG!4Kv}WDwH|y$M|FOpSR1IGu%jw$$E#Y20YIG z3?*LaH&GM9qwJ8s8X2>fN3RnCCX#)QR}KCe=i~?f{I*ecPwmWm)00az<-_J$ZLXPe z^sUlo)%`A4|CoGF-{rYFySUPJ+SEQj(~!HpwU=4u*mLFY-nrBE=Dw6@&D~o08{W@q zc)jF?eNtGmJhlxrjo%d}YppR$L0j~2*Vb2! zEw1;){STyO->&--dTYr1YFUf#2g>4ywz!oRq6RiZ>&A4A5m`j*~ufz>q&E& + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::agrad::op_vvd_vari Member List
+
+
+ +

This is the complete list of members for stan::agrad::op_vvd_vari, including all inherited members.

+ + + + + + + + + + + + + + + + + + + + +
adj_stan::agrad::vari
avi_stan::agrad::op_vvd_variprotected
bvi_stan::agrad::op_vvd_variprotected
cd_stan::agrad::op_vvd_variprotected
chain()stan::agrad::variinlinevirtual
chainable()stan::agrad::chainableinline
free_memory()stan::agrad::variinlinestatic
init_dependent()stan::agrad::variinlinevirtual
op_vvd_vari(double f, vari *avi, vari *bvi, double c)stan::agrad::op_vvd_variinline
operator delete(void *)stan::agrad::chainableinlinestatic
operator new(size_t nbytes)stan::agrad::variinlinestatic
recover_memory()stan::agrad::variinlinestatic
set_zero_adjoint()stan::agrad::variinlinevirtual
val_stan::agrad::vari
vari(const double x)stan::agrad::variinline
vari(const double x)stan::agrad::variinline
vari(const double x, bool stacked)stan::agrad::variinline
~chainable()stan::agrad::chainableinlinevirtual
~vari()stan::agrad::variinlinevirtual
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1agrad_1_1op__vvd__vari.html b/doc/api/html/classstan_1_1agrad_1_1op__vvd__vari.html new file mode 100644 index 00000000000..462d88f28d1 --- /dev/null +++ b/doc/api/html/classstan_1_1agrad_1_1op__vvd__vari.html @@ -0,0 +1,312 @@ + + + + + +Stan: stan::agrad::op_vvd_vari Class Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::agrad::op_vvd_vari Class Reference
+
+
+ +

#include <vvd_vari.hpp>

+
+Inheritance diagram for stan::agrad::op_vvd_vari:
+
+
+ + +stan::agrad::vari +stan::agrad::vari +stan::agrad::chainable +stan::agrad::chainable + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 op_vvd_vari (double f, vari *avi, vari *bvi, double c)
 
- Public Member Functions inherited from stan::agrad::vari
 vari (const double x)
 Construct a variable implementation from a value.
 
virtual void chain ()
 Apply the chain rule to this variable based on the variables on which it depends.
 
 vari (const double x)
 Construct a variable implementation from a value.
 
 vari (const double x, bool stacked)
 
virtual ~vari ()
 Throw an illegal argument exception.
 
virtual void init_dependent ()
 Initialize the adjoint for this (dependent) variable to 1.
 
virtual void set_zero_adjoint ()
 Set the adjoint value of this variable to 0.
 
- Public Member Functions inherited from stan::agrad::chainable
 chainable ()
 Construct a chainable object.
 
virtual ~chainable ()
 Chainables are not destructible and should go on the function call stack or be allocated with operator new.
 
+ + + + + + + +

+Protected Attributes

variavi_
 
varibvi_
 
double cd_
 
+ + + + + + + + + + + + + + + + + + +

+Additional Inherited Members

- Static Public Member Functions inherited from stan::agrad::vari
static void * operator new (size_t nbytes)
 Allocate memory from the underlying memory pool.
 
static void recover_memory ()
 Recover memory used for all variables for reuse.
 
static void free_memory ()
 Return all memory used for gradients back to the system.
 
- Public Attributes inherited from stan::agrad::vari
const double val_
 The value of this variable.
 
double adj_
 The adjoint of this variable, which is the partial derivative of this variable with respect to the root variable.
 
+

Detailed Description

+
+

Definition at line 9 of file vvd_vari.hpp.

+

Constructor & Destructor Documentation

+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
stan::agrad::op_vvd_vari::op_vvd_vari (double f,
variavi,
varibvi,
double c 
)
+
+inline
+
+ +

Definition at line 15 of file vvd_vari.hpp.

+ +
+
+

Member Data Documentation

+ +
+
+ + + + + +
+ + + + +
vari* stan::agrad::op_vvd_vari::avi_
+
+protected
+
+ +

Definition at line 11 of file vvd_vari.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + +
vari* stan::agrad::op_vvd_vari::bvi_
+
+protected
+
+ +

Definition at line 12 of file vvd_vari.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + +
double stan::agrad::op_vvd_vari::cd_
+
+protected
+
+ +

Definition at line 13 of file vvd_vari.hpp.

+ +
+
+
The documentation for this class was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1agrad_1_1op__vvd__vari.png b/doc/api/html/classstan_1_1agrad_1_1op__vvd__vari.png new file mode 100644 index 0000000000000000000000000000000000000000..5fe818414ab788804843fcc184e7397b01ed9996 GIT binary patch literal 1328 zcmeAS@N?(olHy`uVBq!ia0y~yV6*_TJ2;quq>BvuOdur@;1lBd|Nnm=^TnI5rTvE{ z09jys;J^Xa&O7ozE=Ng_UoZnu5eQs86=KA|z_Q=d#WAFU@$KBVMVq_?*k<3;djEeC zzq=h1cbAVx%zd9z*DQ2CTzL29-_j{TQY}B%gUCgt1iKO|JUVr?VmM&*Z=#w zVvU||yYF(p`(~{x?P4FB7OrJkQ*_r~KK^j-*62OU{h_rqrGX47M?Uw!)e<+BTJ2NtWQ*k8YXexKf3_FLymFG_u1*YJC;!8^Ch z&rIgqzVZFMEOffq;V|L)JNH*P)r130+9n*re{<&ERpB4Egog6}{MgVKV{IJ%)oY*n zyKpAAx(jd5gzlY`e{RQp4v9A`SLL7lUc2g7Gg8P*00z{TM_!ssZN zox+xBpAeYax76b5GmpYmj6rj<8bp>$DI8tNRuKq_$aHnt*bi%Vn6uRQ>s?LX6FcXX zao^F>zfX7nT)Y3~-(&L1%{^**O?W^7udflmJ+INZbvdz6GQP+=&-H_a7Q?hZ# zc2=9X>hk5EKRthWrE71D>8gHOj>V*Kcy*oUot66K43PM;~n zSABU;=GCQ{Q)R^$?X0L>{jcu8W4{2~CokMqsasrKwW>Wv?n6_|`ae#q)OUp4>1WyV zh+Wo9`ReK&703R%9O$-k{OYtWKlCcMCu%snI65`Rt6Jv>h-8R4%DW&H96RTVcbn#| zyV{`1_rRuh&9<{!r3{WTwwyT2sNm4W%rW5+1Je?V1_n(&Y}|s~ck^+RKPp)J@YH)%R$x$#$-^+NSY#?k?@TT}PBx z%4@FMw&UfapN!j=+Vb-sd3$EZ( + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::agrad::op_vvv_vari Member List
+
+
+ +

This is the complete list of members for stan::agrad::op_vvv_vari, including all inherited members.

+ + + + + + + + + + + + + + + + + + + + +
adj_stan::agrad::vari
avi_stan::agrad::op_vvv_variprotected
bvi_stan::agrad::op_vvv_variprotected
chain()stan::agrad::variinlinevirtual
chainable()stan::agrad::chainableinline
cvi_stan::agrad::op_vvv_variprotected
free_memory()stan::agrad::variinlinestatic
init_dependent()stan::agrad::variinlinevirtual
op_vvv_vari(double f, vari *avi, vari *bvi, vari *cvi)stan::agrad::op_vvv_variinline
operator delete(void *)stan::agrad::chainableinlinestatic
operator new(size_t nbytes)stan::agrad::variinlinestatic
recover_memory()stan::agrad::variinlinestatic
set_zero_adjoint()stan::agrad::variinlinevirtual
val_stan::agrad::vari
vari(const double x)stan::agrad::variinline
vari(const double x)stan::agrad::variinline
vari(const double x, bool stacked)stan::agrad::variinline
~chainable()stan::agrad::chainableinlinevirtual
~vari()stan::agrad::variinlinevirtual
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1agrad_1_1op__vvv__vari.html b/doc/api/html/classstan_1_1agrad_1_1op__vvv__vari.html new file mode 100644 index 00000000000..5cb5918fc5e --- /dev/null +++ b/doc/api/html/classstan_1_1agrad_1_1op__vvv__vari.html @@ -0,0 +1,312 @@ + + + + + +Stan: stan::agrad::op_vvv_vari Class Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::agrad::op_vvv_vari Class Reference
+
+
+ +

#include <vvv_vari.hpp>

+
+Inheritance diagram for stan::agrad::op_vvv_vari:
+
+
+ + +stan::agrad::vari +stan::agrad::vari +stan::agrad::chainable +stan::agrad::chainable + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 op_vvv_vari (double f, vari *avi, vari *bvi, vari *cvi)
 
- Public Member Functions inherited from stan::agrad::vari
 vari (const double x)
 Construct a variable implementation from a value.
 
virtual void chain ()
 Apply the chain rule to this variable based on the variables on which it depends.
 
 vari (const double x)
 Construct a variable implementation from a value.
 
 vari (const double x, bool stacked)
 
virtual ~vari ()
 Throw an illegal argument exception.
 
virtual void init_dependent ()
 Initialize the adjoint for this (dependent) variable to 1.
 
virtual void set_zero_adjoint ()
 Set the adjoint value of this variable to 0.
 
- Public Member Functions inherited from stan::agrad::chainable
 chainable ()
 Construct a chainable object.
 
virtual ~chainable ()
 Chainables are not destructible and should go on the function call stack or be allocated with operator new.
 
+ + + + + + + +

+Protected Attributes

variavi_
 
varibvi_
 
varicvi_
 
+ + + + + + + + + + + + + + + + + + +

+Additional Inherited Members

- Static Public Member Functions inherited from stan::agrad::vari
static void * operator new (size_t nbytes)
 Allocate memory from the underlying memory pool.
 
static void recover_memory ()
 Recover memory used for all variables for reuse.
 
static void free_memory ()
 Return all memory used for gradients back to the system.
 
- Public Attributes inherited from stan::agrad::vari
const double val_
 The value of this variable.
 
double adj_
 The adjoint of this variable, which is the partial derivative of this variable with respect to the root variable.
 
+

Detailed Description

+
+

Definition at line 9 of file vvv_vari.hpp.

+

Constructor & Destructor Documentation

+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
stan::agrad::op_vvv_vari::op_vvv_vari (double f,
variavi,
varibvi,
varicvi 
)
+
+inline
+
+ +

Definition at line 15 of file vvv_vari.hpp.

+ +
+
+

Member Data Documentation

+ +
+
+ + + + + +
+ + + + +
vari* stan::agrad::op_vvv_vari::avi_
+
+protected
+
+ +

Definition at line 11 of file vvv_vari.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + +
vari* stan::agrad::op_vvv_vari::bvi_
+
+protected
+
+ +

Definition at line 12 of file vvv_vari.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + +
vari* stan::agrad::op_vvv_vari::cvi_
+
+protected
+
+ +

Definition at line 13 of file vvv_vari.hpp.

+ +
+
+
The documentation for this class was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1agrad_1_1op__vvv__vari.png b/doc/api/html/classstan_1_1agrad_1_1op__vvv__vari.png new file mode 100644 index 0000000000000000000000000000000000000000..a1450f77aee0c30c97686bbcd1cfe1480f26d703 GIT binary patch literal 1316 zcmeAS@N?(olHy`uVBq!ia0y~yV6*_TJ2;quq>BvuOdur@;1lBd|Nnm=^TnI5rTvE{ z09jys;J^Xa&O7ozE=Ng_UoZnu5eQs86=KA|z_QuX#WAFU@$KBVMVq_?*k<3;djEeC zzq=h1x8Tf#nEO7bu36}ucHVvX-_j{TQY}B%gUCg;L^- zu|`j~-FLa)eY4h;c4t4%*%8JRw)5Tc{`C(x-O`P_Tz|Nv^yTbebLFz*_Uh|qHr$R` z9lFahJ#hA`uN#g^#rtm2WI4K3uwcFLvZp&O(_?2(`|7x^^2ob0&c;{Q7F<}R%W}uA z`ZepGeF;-v?@pZUJX`a6Y3a|Z9hO@JKfDm!H2?MM^!VxDnBP9%^+NLdx`y9#4c@t3 zer7V?_Kol7Wueo>4u^5q-?_iasU|#E@xeCX5dNEydsl^j+z=YdUs-v;Vcp!RtE*J) zg}-YvD%-y(d%7y_B!Bpwd={RvrdQlQD_5`DH$h~%l)}-KY#xQH7=z|yHN?eeF5Pn6 z2}H6V2))A)wd`txCf@^_?a_~)Me)vf#BlEN@hqSx8G~gUI_}6YFfFlYV9?}KaOh&@ znDB_I+&{X7OQ&2?c+0M{>g-05<+o&@5jX)FpZ;C1L(YGCv1Bpl`L1f`1K*zn)gHNh zbfw*+h?wjC_s{14J^D`m^TFTK|JB-rO@G!!_|CC#dooc{6&B3m%cQO3EO=% z`&a&syx3Lky&u=*T;0xUbMEWb72=b_4~BoOy79={Hl(ya_|ZM#4>SE{T>GeYeV5s` z1Lrn8UD$neukM47o6E~B_3P*Pt-WzNbn!3QisrGx_?%Zaw zyUzJI&*Z;R@S()~S>|hZnb@WtXTKP;XJ2T&{ewdF6>>!-idTi_WQAUJ*5j{mT$f%4 zfQ)OKL!?FFW$5$=AxWe@u6@lt2;!b>ByQ)eNEgbgl2=dD8Zv~P34XbxBZt(%d z&VkCj?Z?h;l`=TWIA?kP)onY&n3q{J2<)_EVDTtqU<{IRXb@o+P&mqnjhnaq_S#&A ze+>0c?HKh`v8%yt!jI@jyVkvyVp))Ts|T23kdw%V%tua@`g>0nZUS2Vp!rDYU;Dd% zu1$ZBh^T3YR|T_QlYgE3Ip*-0`Koz4Rvwit+fd{CpZ9y@^lyH(ad)Qg=g+zNFgdmG z^3l({dEV7>^WqCnAN@XYt<~4F-}u6}Zge+4T=vxG?e>2w`h0Ew&7AFgciMfa$b!xt zv(DEYdn+Bew#PNoH0Nv2>ew|?dyMS&haP`h6vsLFP~zt~bP0l+XkK4L)D{ literal 0 HcmV?d00001 diff --git a/doc/api/html/classstan_1_1agrad_1_1partials__vari-members.html b/doc/api/html/classstan_1_1agrad_1_1partials__vari-members.html new file mode 100644 index 00000000000..85e3dca5d22 --- /dev/null +++ b/doc/api/html/classstan_1_1agrad_1_1partials__vari-members.html @@ -0,0 +1,128 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::agrad::partials_vari Member List
+
+
+ +

This is the complete list of members for stan::agrad::partials_vari, including all inherited members.

+ + + + + + + + + + + + + + + + + +
adj_stan::agrad::vari
chain()stan::agrad::partials_variinlinevirtual
chainable()stan::agrad::chainableinline
free_memory()stan::agrad::variinlinestatic
init_dependent()stan::agrad::variinlinevirtual
operator delete(void *)stan::agrad::chainableinlinestatic
operator new(size_t nbytes)stan::agrad::variinlinestatic
partials_vari(double value, size_t N, vari **operands, double *partials)stan::agrad::partials_variinline
recover_memory()stan::agrad::variinlinestatic
set_zero_adjoint()stan::agrad::variinlinevirtual
val_stan::agrad::vari
vari(const double x)stan::agrad::variinline
vari(const double x)stan::agrad::variinline
vari(const double x, bool stacked)stan::agrad::variinline
~chainable()stan::agrad::chainableinlinevirtual
~vari()stan::agrad::variinlinevirtual
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1agrad_1_1partials__vari.html b/doc/api/html/classstan_1_1agrad_1_1partials__vari.html new file mode 100644 index 00000000000..9deee315a30 --- /dev/null +++ b/doc/api/html/classstan_1_1agrad_1_1partials__vari.html @@ -0,0 +1,264 @@ + + + + + +Stan: stan::agrad::partials_vari Class Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::agrad::partials_vari Class Reference
+
+
+ +

#include <partials_vari.hpp>

+
+Inheritance diagram for stan::agrad::partials_vari:
+
+
+ + +stan::agrad::vari +stan::agrad::chainable + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 partials_vari (double value, size_t N, vari **operands, double *partials)
 
void chain ()
 Apply the chain rule to this variable based on the variables on which it depends.
 
- Public Member Functions inherited from stan::agrad::vari
 vari (const double x)
 Construct a variable implementation from a value.
 
 vari (const double x)
 Construct a variable implementation from a value.
 
 vari (const double x, bool stacked)
 
virtual ~vari ()
 Throw an illegal argument exception.
 
virtual void init_dependent ()
 Initialize the adjoint for this (dependent) variable to 1.
 
virtual void set_zero_adjoint ()
 Set the adjoint value of this variable to 0.
 
- Public Member Functions inherited from stan::agrad::chainable
 chainable ()
 Construct a chainable object.
 
virtual ~chainable ()
 Chainables are not destructible and should go on the function call stack or be allocated with operator new.
 
+ + + + + + + + + + + + + + + + + + +

+Additional Inherited Members

- Static Public Member Functions inherited from stan::agrad::vari
static void * operator new (size_t nbytes)
 Allocate memory from the underlying memory pool.
 
static void recover_memory ()
 Recover memory used for all variables for reuse.
 
static void free_memory ()
 Return all memory used for gradients back to the system.
 
- Public Attributes inherited from stan::agrad::vari
const double val_
 The value of this variable.
 
double adj_
 The adjoint of this variable, which is the partial derivative of this variable with respect to the root variable.
 
+

Detailed Description

+
+

Definition at line 11 of file partials_vari.hpp.

+

Constructor & Destructor Documentation

+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
stan::agrad::partials_vari::partials_vari (double value,
size_t N,
vari ** operands,
double * partials 
)
+
+inline
+
+ +

Definition at line 17 of file partials_vari.hpp.

+ +
+
+

Member Function Documentation

+ +
+
+ + + + + +
+ + + + + + + +
void stan::agrad::partials_vari::chain ()
+
+inlinevirtual
+
+ +

Apply the chain rule to this variable based on the variables on which it depends.

+

The base implementation in this class is a no-op.

+ +

Reimplemented from stan::agrad::vari.

+ +

Definition at line 24 of file partials_vari.hpp.

+ +
+
+
The documentation for this class was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1agrad_1_1partials__vari.png b/doc/api/html/classstan_1_1agrad_1_1partials__vari.png new file mode 100644 index 0000000000000000000000000000000000000000..78719cc743cafc8cc9ee0cbe91a4a77d1772f60a GIT binary patch literal 972 zcmeAS@N?(olHy`uVBq!ia0vp^(}1{xgBeH~F+Z{fQW60^A+G=b{|7Q(y!l$%e`o@b z1;z&s9ANFdBM;UDUwzk0G3uHA zOKO@*=&m+VvHctFPm6qg-fqV}o$n^sW_fM5G2LI+p1Hq-@Yf6ENi*eH+i1nwW;^CW>wye@x73H_^tIuQ_;N8vzM0T@`#r$ zQi=R>@uZrkS#6W4$1at-EBiNHRgazY?#ldMtEVlApPKABDfDyFQHjSTOgp^!8-ALo zUwdq*dVNj=_tl=5$w@!`ST>yA$grkJhheo0_W`ZrOdC$&&u6j-KE7`mKSVX84SMW`)@+8r-d-B#L-Q2R>tZ7q6yQX>hs|$B4F7H(J zT>rJ%*=v&2-KNwZHJ-Z`RBxJk&eL<3d;RbAQIqy*9-pML`q|Mg!(%U53Z~03e9rV+ zb3EB=o#jTcRgyc^j((cUkuW`(G2&?iLztylLuems!c^Sc|BPWAif7cB4&*?Ca24BY zTX2{gNXdCIYnNVJbitm)BSAU&sf3Ye_a3h{VP8!vVPd8 zmsq-6SVKR1MSA!0&0Gl!vTs(&zTUox^@A)lNUnZn;Zbb4`GtSl6We9}jT4=KS&zZf L)z4*}Q$iB}H+0NO literal 0 HcmV?d00001 diff --git a/doc/api/html/classstan_1_1agrad_1_1precomp__v__vari-members.html b/doc/api/html/classstan_1_1agrad_1_1precomp__v__vari-members.html new file mode 100644 index 00000000000..39d3f93e33e --- /dev/null +++ b/doc/api/html/classstan_1_1agrad_1_1precomp__v__vari-members.html @@ -0,0 +1,116 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::agrad::precomp_v_vari Member List
+
+
+ +

This is the complete list of members for stan::agrad::precomp_v_vari, including all inherited members.

+ + + + + +
avi_ (defined in stan::agrad::op_v_vari)stan::agrad::op_v_variprotectedstatic
chain()stan::agrad::precomp_v_variinline
da_stan::agrad::precomp_v_variprotected
precomp_v_vari(double val, vari *avi, double da)stan::agrad::precomp_v_variinline
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1agrad_1_1precomp__v__vari.html b/doc/api/html/classstan_1_1agrad_1_1precomp__v__vari.html new file mode 100644 index 00000000000..336956bb8ee --- /dev/null +++ b/doc/api/html/classstan_1_1agrad_1_1precomp__v__vari.html @@ -0,0 +1,234 @@ + + + + + +Stan: stan::agrad::precomp_v_vari Class Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::agrad::precomp_v_vari Class Reference
+
+
+ +

#include <precomp_v_vari.hpp>

+ +

Inherits stan::agrad::op_v_vari.

+ + + + + + +

+Public Member Functions

 precomp_v_vari (double val, vari *avi, double da)
 
void chain ()
 
+ + + +

+Protected Attributes

double da_
 
+ + + + +

+Additional Inherited Members

- Static Protected Attributes inherited from stan::agrad::op_v_vari
vari *   avi_
 
+

Detailed Description

+
+

Definition at line 11 of file precomp_v_vari.hpp.

+

Constructor & Destructor Documentation

+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
stan::agrad::precomp_v_vari::precomp_v_vari (double val,
variavi,
double da 
)
+
+inline
+
+ +

Definition at line 15 of file precomp_v_vari.hpp.

+ +
+
+

Member Function Documentation

+ +
+
+ + + + + +
+ + + + + + + +
void stan::agrad::precomp_v_vari::chain ()
+
+inline
+
+ +

Definition at line 19 of file precomp_v_vari.hpp.

+ +
+
+

Member Data Documentation

+ +
+
+ + + + + +
+ + + + +
double stan::agrad::precomp_v_vari::da_
+
+protected
+
+ +

Definition at line 13 of file precomp_v_vari.hpp.

+ +
+
+
The documentation for this class was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1agrad_1_1precomputed__gradients__vari-members.html b/doc/api/html/classstan_1_1agrad_1_1precomputed__gradients__vari-members.html new file mode 100644 index 00000000000..3bd4e1d864c --- /dev/null +++ b/doc/api/html/classstan_1_1agrad_1_1precomputed__gradients__vari-members.html @@ -0,0 +1,130 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::agrad::precomputed_gradients_vari Member List
+
+
+ +

This is the complete list of members for stan::agrad::precomputed_gradients_vari, including all inherited members.

+ + + + + + + + + + + + + + + + + + + +
adj_stan::agrad::vari
chain()stan::agrad::precomputed_gradients_variinlinevirtual
chainable()stan::agrad::chainableinline
free_memory()stan::agrad::variinlinestatic
gradients_stan::agrad::precomputed_gradients_variprotected
init_dependent()stan::agrad::variinlinevirtual
operator delete(void *)stan::agrad::chainableinlinestatic
operator new(size_t nbytes)stan::agrad::variinlinestatic
precomputed_gradients_vari(const double val, std::vector< vari * > &varis, const std::vector< double > &gradients)stan::agrad::precomputed_gradients_variinline
recover_memory()stan::agrad::variinlinestatic
set_zero_adjoint()stan::agrad::variinlinevirtual
val_stan::agrad::vari
vari(const double x)stan::agrad::variinline
vari(const double x)stan::agrad::variinline
vari(const double x, bool stacked)stan::agrad::variinline
varis_stan::agrad::precomputed_gradients_variprotected
~chainable()stan::agrad::chainableinlinevirtual
~vari()stan::agrad::variinlinevirtual
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1agrad_1_1precomputed__gradients__vari.html b/doc/api/html/classstan_1_1agrad_1_1precomputed__gradients__vari.html new file mode 100644 index 00000000000..ae814bc6e16 --- /dev/null +++ b/doc/api/html/classstan_1_1agrad_1_1precomputed__gradients__vari.html @@ -0,0 +1,335 @@ + + + + + +Stan: stan::agrad::precomputed_gradients_vari Class Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::agrad::precomputed_gradients_vari Class Reference
+
+
+ +

This is a var implementation class that takes precomputed gradient values. + More...

+ +

#include <precomputed_gradients.hpp>

+
+Inheritance diagram for stan::agrad::precomputed_gradients_vari:
+
+
+ + +stan::agrad::vari +stan::agrad::chainable + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 precomputed_gradients_vari (const double val, std::vector< vari * > &varis, const std::vector< double > &gradients)
 Constructs a precomputed_gradients_vari.
 
void chain ()
 Implements the chain rule for this variable.
 
- Public Member Functions inherited from stan::agrad::vari
 vari (const double x)
 Construct a variable implementation from a value.
 
 vari (const double x)
 Construct a variable implementation from a value.
 
 vari (const double x, bool stacked)
 
virtual ~vari ()
 Throw an illegal argument exception.
 
virtual void init_dependent ()
 Initialize the adjoint for this (dependent) variable to 1.
 
virtual void set_zero_adjoint ()
 Set the adjoint value of this variable to 0.
 
- Public Member Functions inherited from stan::agrad::chainable
 chainable ()
 Construct a chainable object.
 
virtual ~chainable ()
 Chainables are not destructible and should go on the function call stack or be allocated with operator new.
 
+ + + + + +

+Protected Attributes

std::vector< vari * > varis_
 
std::vector< double > gradients_
 
+ + + + + + + + + + + + + + + + + + +

+Additional Inherited Members

- Static Public Member Functions inherited from stan::agrad::vari
static void * operator new (size_t nbytes)
 Allocate memory from the underlying memory pool.
 
static void recover_memory ()
 Recover memory used for all variables for reuse.
 
static void free_memory ()
 Return all memory used for gradients back to the system.
 
- Public Attributes inherited from stan::agrad::vari
const double val_
 The value of this variable.
 
double adj_
 The adjoint of this variable, which is the partial derivative of this variable with respect to the root variable.
 
+

Detailed Description

+

This is a var implementation class that takes precomputed gradient values.

+

Stan users should use function precomputed_gradients directly.

+ +

Definition at line 20 of file precomputed_gradients.hpp.

+

Constructor & Destructor Documentation

+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
stan::agrad::precomputed_gradients_vari::precomputed_gradients_vari (const double val,
std::vector< vari * > & varis,
const std::vector< double > & gradients 
)
+
+inline
+
+ +

Constructs a precomputed_gradients_vari.

+

The the value, pointers to the varis, and gradient values need to be provided.

+

Note: this class is slow since it

+
Parameters
+ + + + +
valThe value of the variable.
varisVector of pointers to the varis of independent variables of this class.
gradientsVector of gradients with respect to the independent variables. These must be indexed in the same order as varis.
+
+
+
Exceptions
+ + +
std::invalid_argumentif the sizes don't match
+
+
+ +

Definition at line 41 of file precomputed_gradients.hpp.

+ +
+
+

Member Function Documentation

+ +
+
+ + + + + +
+ + + + + + + +
void stan::agrad::precomputed_gradients_vari::chain ()
+
+inlinevirtual
+
+ +

Implements the chain rule for this variable.

+

Each of the independent variables' adjoints are updated with the appropriate gradient value.

+ +

Reimplemented from stan::agrad::vari.

+ +

Definition at line 58 of file precomputed_gradients.hpp.

+ +
+
+

Member Data Documentation

+ +
+
+ + + + + +
+ + + + +
std::vector<double> stan::agrad::precomputed_gradients_vari::gradients_
+
+protected
+
+ +

Definition at line 23 of file precomputed_gradients.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + +
std::vector<vari *> stan::agrad::precomputed_gradients_vari::varis_
+
+protected
+
+ +

Definition at line 22 of file precomputed_gradients.hpp.

+ +
+
+
The documentation for this class was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1agrad_1_1precomputed__gradients__vari.png b/doc/api/html/classstan_1_1agrad_1_1precomputed__gradients__vari.png new file mode 100644 index 0000000000000000000000000000000000000000..c619846ac07845bf13720034fabb479a69fc7f37 GIT binary patch literal 1116 zcmeAS@N?(olHy`uVBq!ia0vp^AAz`ogBeINTKqKvQW60^A+G=b{|7Q(y!l$%e`o@b z1;z&s9ANFdBM;{#ASaE6ayF z?tJOFX!Z_+&@w&dzAZhEFQ$N*+<=(C- zOP=glxltwc&aoT5-UY9ZZ&~m&TXxQWpZSSvc$Qv%wDM!TXvfDH&Xevvobz$dh5{X@ zN#1=wvLiDjZ&_}gb#acqXMW)=i`6@_Og(juozC>!o7TDNfNsy`pw(fMk0*8hJ6JMC=qN^pn!`e{qjcRVoF@|^zR_p$WV0h87}VXm&(#HISu%P#opq!RHn z5tDu$>rq{qua^9NuRLeN`VR~eT@QQY`!7yuH=ftR9xQkMMwO|<`x%A~_ld^`(m&k$ zz3_ndC5IUsRlfF0dI#PA)3$N)l5k6_mup)lU3ug$;e9DJCg;tv*4q)y={=l2|M9lMZIzxHwPyc1 z3NKB5_HDLA>$}}2mWJ+aP3q^mo4|YTf31$^@tQYJwLMwqoA0Z+tn!j|--hGf{L_}K z|1fvev?ck8ptuJm0%OVQ_kTSYYFgP31n{K)spwf|Gv}j<&5TbK$F8krtUBJq2n+$w4{`WWA9IU_WE4<3me~qHg&&9_WB+su;G@ch1V*mcx zhmXb+QX-S=7aD}MC2dlj)~goYy(A9t;qzTRiQ){oriTbE@5CZv>4kgGoS zb(8e<+unh5qtZ{Vwi0uyeXAq(`pbn1>H1SUDzDys9h!cmS4aMOYS8T;FY>0F2DQ(s zj=B5%v8`U2h>U1;dW!0|7=f7s$bLMm??}z1v$qoBJ hcxKPs;yjgqj2Cw%ov5_+cL5d!44$rjF6*2UngAEJG4=oe literal 0 HcmV?d00001 diff --git a/doc/api/html/classstan_1_1agrad_1_1stored__gradient__vari-members.html b/doc/api/html/classstan_1_1agrad_1_1stored__gradient__vari-members.html new file mode 100644 index 00000000000..d17ef469714 --- /dev/null +++ b/doc/api/html/classstan_1_1agrad_1_1stored__gradient__vari-members.html @@ -0,0 +1,131 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::agrad::stored_gradient_vari Member List
+
+
+ +

This is the complete list of members for stan::agrad::stored_gradient_vari, including all inherited members.

+ + + + + + + + + + + + + + + + + + + + +
adj_stan::agrad::vari
chain()stan::agrad::stored_gradient_variinlinevirtual
chainable()stan::agrad::chainableinline
dtrs_stan::agrad::stored_gradient_variprotected
free_memory()stan::agrad::variinlinestatic
init_dependent()stan::agrad::variinlinevirtual
operator delete(void *)stan::agrad::chainableinlinestatic
operator new(size_t nbytes)stan::agrad::variinlinestatic
partials_stan::agrad::stored_gradient_variprotected
recover_memory()stan::agrad::variinlinestatic
set_zero_adjoint()stan::agrad::variinlinevirtual
size_stan::agrad::stored_gradient_variprotected
stored_gradient_vari(double value, size_t size, vari **dtrs, double *partials)stan::agrad::stored_gradient_variinline
val_stan::agrad::vari
vari(const double x)stan::agrad::variinline
vari(const double x)stan::agrad::variinline
vari(const double x, bool stacked)stan::agrad::variinline
~chainable()stan::agrad::chainableinlinevirtual
~vari()stan::agrad::variinlinevirtual
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1agrad_1_1stored__gradient__vari.html b/doc/api/html/classstan_1_1agrad_1_1stored__gradient__vari.html new file mode 100644 index 00000000000..d2cd06ebd2a --- /dev/null +++ b/doc/api/html/classstan_1_1agrad_1_1stored__gradient__vari.html @@ -0,0 +1,357 @@ + + + + + +Stan: stan::agrad::stored_gradient_vari Class Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::agrad::stored_gradient_vari Class Reference
+
+
+ +

A var implementation that stores the daughter variable implementation pointers and the partial derivative with respect to the result explicitly in arrays constructed on the auto-diff memory stack. + More...

+ +

#include <stored_gradient_vari.hpp>

+
+Inheritance diagram for stan::agrad::stored_gradient_vari:
+
+
+ + +stan::agrad::vari +stan::agrad::chainable + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 stored_gradient_vari (double value, size_t size, vari **dtrs, double *partials)
 Construct a stored gradient vari with the specified value, size, daughter varis, and partial derivatives.
 
void chain ()
 Propagate derivatives through this vari with partial derivatives given for the daughter vari by the stored partials.
 
- Public Member Functions inherited from stan::agrad::vari
 vari (const double x)
 Construct a variable implementation from a value.
 
 vari (const double x)
 Construct a variable implementation from a value.
 
 vari (const double x, bool stacked)
 
virtual ~vari ()
 Throw an illegal argument exception.
 
virtual void init_dependent ()
 Initialize the adjoint for this (dependent) variable to 1.
 
virtual void set_zero_adjoint ()
 Set the adjoint value of this variable to 0.
 
- Public Member Functions inherited from stan::agrad::chainable
 chainable ()
 Construct a chainable object.
 
virtual ~chainable ()
 Chainables are not destructible and should go on the function call stack or be allocated with operator new.
 
+ + + + + + + +

+Protected Attributes

size_t size_
 
vari ** dtrs_
 
double * partials_
 
+ + + + + + + + + + + + + + + + + + +

+Additional Inherited Members

- Static Public Member Functions inherited from stan::agrad::vari
static void * operator new (size_t nbytes)
 Allocate memory from the underlying memory pool.
 
static void recover_memory ()
 Recover memory used for all variables for reuse.
 
static void free_memory ()
 Return all memory used for gradients back to the system.
 
- Public Attributes inherited from stan::agrad::vari
const double val_
 The value of this variable.
 
double adj_
 The adjoint of this variable, which is the partial derivative of this variable with respect to the root variable.
 
+

Detailed Description

+

A var implementation that stores the daughter variable implementation pointers and the partial derivative with respect to the result explicitly in arrays constructed on the auto-diff memory stack.

+

Like a simplified version of OperandsAndPartials.

+ +

Definition at line 18 of file stored_gradient_vari.hpp.

+

Constructor & Destructor Documentation

+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
stan::agrad::stored_gradient_vari::stored_gradient_vari (double value,
size_t size,
vari ** dtrs,
double * partials 
)
+
+inline
+
+ +

Construct a stored gradient vari with the specified value, size, daughter varis, and partial derivatives.

+
Parameters
+ + + + + +
[in]valueValue of vari
[in]sizeNumber of daughters
[in]dtrsArray of pointers to daughters
[in]partialsPartial derivatives of value with respect to daughters.
+
+
+ +

Definition at line 38 of file stored_gradient_vari.hpp.

+ +
+
+

Member Function Documentation

+ +
+
+ + + + + +
+ + + + + + + +
void stan::agrad::stored_gradient_vari::chain ()
+
+inlinevirtual
+
+ +

Propagate derivatives through this vari with partial derivatives given for the daughter vari by the stored partials.

+ +

Reimplemented from stan::agrad::vari.

+ +

Definition at line 52 of file stored_gradient_vari.hpp.

+ +
+
+

Member Data Documentation

+ +
+
+ + + + + +
+ + + + +
vari** stan::agrad::stored_gradient_vari::dtrs_
+
+protected
+
+ +

Definition at line 23 of file stored_gradient_vari.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + +
double* stan::agrad::stored_gradient_vari::partials_
+
+protected
+
+ +

Definition at line 24 of file stored_gradient_vari.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + +
size_t stan::agrad::stored_gradient_vari::size_
+
+protected
+
+ +

Definition at line 22 of file stored_gradient_vari.hpp.

+ +
+
+
The documentation for this class was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1agrad_1_1stored__gradient__vari.png b/doc/api/html/classstan_1_1agrad_1_1stored__gradient__vari.png new file mode 100644 index 0000000000000000000000000000000000000000..7f80b01ef065bad2376b0eee4ccb8d38b9980aa5 GIT binary patch literal 1049 zcmeAS@N?(olHy`uVBq!ia0vp^M}fG5gBeIBDBLdqQW60^A+G=b{|7Q(y!l$%e`o@b z1;z&s9ANFdBM;CT*GiYtg6jU?a9N z->=WbCWRENbd@;W_B4A=%CF5le)h-STZFZL+ESAF>ncl-&D9A@&gX2Mq1HXWa$?X4 zyO;YbKUr-l%A9=h?DQr2Z#HPmD>HT$^Zsb1`+Dl40O1{H7FC=%%af|J^|*Mq>f-3i zyi>ipTa(ML_Xg;#-xT4U-8O4dYRsg4#TD^ibnp4E;rTlK{`MUO@hQK{tjboIo^iie z~xxU!T+Pyme@yd6&xHE@Rzo+b>20Yu_9Vg}Wfy}<+G%4qUb+>|N_0N)v3!9$l zsJvuo*FCgj#)g_+@7e!!nlJZ%wC=mQ&^29&?`$V9co&P=zxINM*VNJ#e%(g@_bz_+ z^3jr;L0V^(;+Ch{zY6iZb#T3v)>r4`z+*|;rI$V}wBHz!+5P7no2RI4x0L6tlbOF4 zO4qBf^awgSRc!x`os+gS zd(U^Rnd^CJYYZ@iN^J8KJ%Jwg+;lL*kmqngIfLFa)`Due#E(_Bj*kV!79U|YnV0x5 zU8F&jV5lGmT8?6iKpsEigJ-btoO)Do>8nLwrQ%ojbNZe;-u-BSC3i!Uu6I>*Py4&` zyOrzy@}yipzj1zm%xdSmQm;E-PhFO=t;u3W&Ar2yw|?C`gL{clp<`(d-|~$*A`5;U z`8g~5{^r_MA%C@WUOk%XdN18O@9yTxJ$}(yEDIK`*&es@$NKDxJNLa=@#Vm+$nJ=o zhPbHXi)QbL%FJ726tMNb&7JKp?sxv%9JBkVulv^W^;>Z?4Q(e)9JN*{DmOnzg)R>=#>2oo2kM%wJmnw9Suq zcJD*$Ov-6A(q+cpE*!`Y&^m!CRwB`Cs3;UQ1+M(&mAgV>+(A}Tx Y+4cb!415IQf%%xh)78&qol`;+0OiW;I{*Lx literal 0 HcmV?d00001 diff --git a/doc/api/html/classstan_1_1agrad_1_1var-members.html b/doc/api/html/classstan_1_1agrad_1_1var-members.html new file mode 100644 index 00000000000..dc10fb3955f --- /dev/null +++ b/doc/api/html/classstan_1_1agrad_1_1var-members.html @@ -0,0 +1,170 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::agrad::var Member List
+
+
+ +

This is the complete list of members for stan::agrad::var, including all inherited members.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
adj() const stan::agrad::varinline
grad(std::vector< var > &x, std::vector< double > &g)stan::agrad::varinline
grad()stan::agrad::varinline
grad(std::vector< var > &x, std::vector< double > &g)stan::agrad::varinline
grad()stan::agrad::varinline
is_uninitialized()stan::agrad::varinline
operator*()stan::agrad::varinline
operator*=(const var &b)stan::agrad::varinline
operator*=(const double &b)stan::agrad::varinline
operator*=(const var &b)stan::agrad::varinline
operator*=(const double b)stan::agrad::varinline
operator+=(const var &b)stan::agrad::varinline
operator+=(const double &b)stan::agrad::varinline
operator+=(const var &b)stan::agrad::varinline
operator+=(const double b)stan::agrad::varinline
operator-=(const var &b)stan::agrad::varinline
operator-=(const double &b)stan::agrad::varinline
operator-=(const var &b)stan::agrad::varinline
operator-=(const double b)stan::agrad::varinline
operator->()stan::agrad::varinline
operator/=(const var &b)stan::agrad::varinline
operator/=(const double &b)stan::agrad::varinline
operator/=(const var &b)stan::agrad::varinline
operator/=(const double b)stan::agrad::varinline
operator<<(std::ostream &os, const var &v)stan::agrad::varfriend
Scalar typedefstan::agrad::var
Scalar typedefstan::agrad::var
val() const stan::agrad::varinline
val() const stan::agrad::varinline
var(vari *vi)stan::agrad::varinlineexplicit
var()stan::agrad::varinline
var(bool b)stan::agrad::varinline
var(char c)stan::agrad::varinline
var(short n)stan::agrad::varinline
var(unsigned short n)stan::agrad::varinline
var(int n)stan::agrad::varinline
var(unsigned int n)stan::agrad::varinline
var(long int n)stan::agrad::varinline
var(unsigned long int n)stan::agrad::varinline
var(float x)stan::agrad::varinline
var(double x)stan::agrad::varinline
var(long double x)stan::agrad::varinline
var(vari *vi)stan::agrad::varinlineexplicit
var()stan::agrad::varinline
var(bool b)stan::agrad::varinline
var(char c)stan::agrad::varinline
var(short n)stan::agrad::varinline
var(unsigned short n)stan::agrad::varinline
var(int n)stan::agrad::varinline
var(unsigned int n)stan::agrad::varinline
var(long int n)stan::agrad::varinline
var(unsigned long int n)stan::agrad::varinline
var(unsigned long long n)stan::agrad::varinline
var(long long n)stan::agrad::varinline
var(float x)stan::agrad::varinline
var(double x)stan::agrad::varinline
var(long double x)stan::agrad::varinline
vi_stan::agrad::var
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1agrad_1_1var.html b/doc/api/html/classstan_1_1agrad_1_1var.html new file mode 100644 index 00000000000..6ee24e05118 --- /dev/null +++ b/doc/api/html/classstan_1_1agrad_1_1var.html @@ -0,0 +1,2247 @@ + + + + + +Stan: stan::agrad::var Class Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::agrad::var Class Reference
+
+
+ +

Independent (input) and dependent (output) variables for gradients. + More...

+ +

#include <agrad_thread_safe.hpp>

+ + + + + + +

+Public Types

typedef double Scalar
 
typedef double Scalar
 
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 var (vari *vi)
 Construct a variable from a pointer to a variable implementation.
 
 var ()
 Construct a variable for later assignment.
 
 var (bool b)
 Construct a variable by static casting the specified value to double.
 
 var (char c)
 Construct a variable by static casting the specified value to double.
 
 var (short n)
 Construct a variable by static casting the specified value to double.
 
 var (unsigned short n)
 Construct a variable by static casting the specified value to double.
 
 var (int n)
 Construct a variable by static casting the specified value to double.
 
 var (unsigned int n)
 Construct a variable by static casting the specified value to double.
 
 var (long int n)
 Construct a variable by static casting the specified value to double.
 
 var (unsigned long int n)
 Construct a variable by static casting the specified value to double.
 
 var (float x)
 Construct a variable by static casting the specified value to double.
 
 var (double x)
 Construct a variable with the specified value.
 
 var (long double x)
 Construct a variable by static casting the specified value to double.
 
double val () const
 Return the value of this variable.
 
void grad (std::vector< var > &x, std::vector< double > &g)
 Compute the gradient of this dependent variable with respect to the specified vector of independent variables, assigning the gradients componentwise to the specified vector of gradients.
 
void grad ()
 Compute gradients of this dependent variable with respect to all variables on which it depends.
 
varoperator+= (const var &b)
 The compound add/assignment operator for variables (C++).
 
varoperator+= (const double &b)
 The compound add/assignment operator for scalars (C++).
 
varoperator-= (const var &b)
 The compound subtract/assignment operator for variables (C++).
 
varoperator-= (const double &b)
 The compound subtract/assignment operator for scalars (C++).
 
varoperator*= (const var &b)
 The compound multiply/assignment operator for variables (C++).
 
varoperator*= (const double &b)
 The compound multiply/assignment operator for scalars (C++).
 
varoperator/= (const var &b)
 The compound divide/assignment operator for variables (C++).
 
varoperator/= (const double &b)
 The compound divide/assignment operator for scalars (C++).
 
bool is_uninitialized ()
 Return true if this variable has been declared, but not been defined.
 
 var (vari *vi)
 Construct a variable from a pointer to a variable implementation.
 
 var ()
 Construct a variable for later assignment.
 
 var (bool b)
 Construct a variable by static casting the specified value to double.
 
 var (char c)
 Construct a variable by static casting the specified value to double.
 
 var (short n)
 Construct a variable by static casting the specified value to double.
 
 var (unsigned short n)
 Construct a variable by static casting the specified value to double.
 
 var (int n)
 Construct a variable by static casting the specified value to double.
 
 var (unsigned int n)
 Construct a variable by static casting the specified value to double.
 
 var (long int n)
 Construct a variable by static casting the specified value to double.
 
 var (unsigned long int n)
 Construct a variable by static casting the specified value to double.
 
 var (unsigned long long n)
 Construct a variable by static casting the specified value to double.
 
 var (long long n)
 Construct a variable by static casting the specified value to double.
 
 var (float x)
 Construct a variable by static casting the specified value to double.
 
 var (double x)
 Construct a variable with the specified value.
 
 var (long double x)
 Construct a variable by static casting the specified value to double.
 
double val () const
 Return the value of this variable.
 
double adj () const
 Return the derivative of the root expression with respect to this expression.
 
void grad (std::vector< var > &x, std::vector< double > &g)
 Compute the gradient of this (dependent) variable with respect to the specified vector of (independent) variables, assigning the specified vector to the gradient.
 
void grad ()
 Compute gradients of this dependent variable with respect to all variables on which it depends.
 
varioperator* ()
 Return a reference to underlying implementation of this variable.
 
varioperator-> ()
 Return a pointer to the underlying implementation of this variable.
 
varoperator+= (const var &b)
 The compound add/assignment operator for variables (C++).
 
varoperator+= (const double b)
 The compound add/assignment operator for scalars (C++).
 
varoperator-= (const var &b)
 The compound subtract/assignment operator for variables (C++).
 
varoperator-= (const double b)
 The compound subtract/assignment operator for scalars (C++).
 
varoperator*= (const var &b)
 The compound multiply/assignment operator for variables (C++).
 
varoperator*= (const double b)
 The compound multiply/assignment operator for scalars (C++).
 
varoperator/= (const var &b)
 The compound divide/assignment operator for variables (C++).
 
varoperator/= (const double b)
 The compound divide/assignment operator for scalars (C++).
 
+ + + + +

+Public Attributes

varivi_
 Pointer to the implementation of this variable.
 
+ + + + +

+Friends

std::ostream & operator<< (std::ostream &os, const var &v)
 Write the value of this auto-dif variable and its adjoint to the specified output stream.
 
+

Detailed Description

+

Independent (input) and dependent (output) variables for gradients.

+

An agrad::var is constructed with a double and used like any other scalar. Arithmetical functions like negation, addition, and subtraction, as well as a range of mathematical functions like exponentiation and powers are overridden to operate on agrad::var values objects.

+

This class acts as a smart pointer, with resources managed by an agenda-based memory manager scoped to a single gradient calculation.

+

An agrad::var is constructed with a double and used like any other scalar. Arithmetical functions like negation, addition, and subtraction, as well as a range of mathematical functions like exponentiation and powers are overridden to operate on agrad::var values objects.

+ +

Definition at line 701 of file agrad_thread_safe.hpp.

+

Member Typedef Documentation

+ +
+
+ + + + +
typedef double stan::agrad::var::Scalar
+
+ +

Definition at line 32 of file var.hpp.

+ +
+
+ +
+
+ + + + +
typedef double stan::agrad::var::Scalar
+
+ +

Definition at line 704 of file agrad_thread_safe.hpp.

+ +
+
+

Constructor & Destructor Documentation

+ +
+
+ + + + + +
+ + + + + + + + +
stan::agrad::var::var (varivi)
+
+inlineexplicit
+
+ +

Construct a variable from a pointer to a variable implementation.

+
Parameters
+ + +
viVariable implementation.
+
+
+ +

Definition at line 720 of file agrad_thread_safe.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
stan::agrad::var::var ()
+
+inline
+
+ +

Construct a variable for later assignment.

+

This is implemented as a no-op, leaving the underlying implementation dangling. Before an assignment, the behavior is thus undefined just as for a basic double.

+ +

Definition at line 731 of file agrad_thread_safe.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
stan::agrad::var::var (bool b)
+
+inline
+
+ +

Construct a variable by static casting the specified value to double.

+
Parameters
+ + +
bValue.
+
+
+ +

Definition at line 741 of file agrad_thread_safe.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
stan::agrad::var::var (char c)
+
+inline
+
+ +

Construct a variable by static casting the specified value to double.

+
Parameters
+ + +
cValue.
+
+
+ +

Definition at line 751 of file agrad_thread_safe.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
stan::agrad::var::var (short n)
+
+inline
+
+ +

Construct a variable by static casting the specified value to double.

+
Parameters
+ + +
nValue.
+
+
+ +

Definition at line 761 of file agrad_thread_safe.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
stan::agrad::var::var (unsigned short n)
+
+inline
+
+ +

Construct a variable by static casting the specified value to double.

+
Parameters
+ + +
nValue.
+
+
+ +

Definition at line 771 of file agrad_thread_safe.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
stan::agrad::var::var (int n)
+
+inline
+
+ +

Construct a variable by static casting the specified value to double.

+
Parameters
+ + +
nValue.
+
+
+ +

Definition at line 781 of file agrad_thread_safe.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
stan::agrad::var::var (unsigned int n)
+
+inline
+
+ +

Construct a variable by static casting the specified value to double.

+
Parameters
+ + +
nValue.
+
+
+ +

Definition at line 791 of file agrad_thread_safe.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
stan::agrad::var::var (long int n)
+
+inline
+
+ +

Construct a variable by static casting the specified value to double.

+
Parameters
+ + +
nValue.
+
+
+ +

Definition at line 801 of file agrad_thread_safe.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
stan::agrad::var::var (unsigned long int n)
+
+inline
+
+ +

Construct a variable by static casting the specified value to double.

+
Parameters
+ + +
nValue.
+
+
+ +

Definition at line 811 of file agrad_thread_safe.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
stan::agrad::var::var (float x)
+
+inline
+
+ +

Construct a variable by static casting the specified value to double.

+
Parameters
+ + +
xValue.
+
+
+ +

Definition at line 821 of file agrad_thread_safe.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
stan::agrad::var::var (double x)
+
+inline
+
+ +

Construct a variable with the specified value.

+
Parameters
+ + +
xValue of the variable.
+
+
+ +

Definition at line 830 of file agrad_thread_safe.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
stan::agrad::var::var (long double x)
+
+inline
+
+ +

Construct a variable by static casting the specified value to double.

+
Parameters
+ + +
xValue.
+
+
+ +

Definition at line 840 of file agrad_thread_safe.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
stan::agrad::var::var (varivi)
+
+inlineexplicit
+
+ +

Construct a variable from a pointer to a variable implementation.

+
Parameters
+ + +
viVariable implementation.
+
+
+ +

Definition at line 61 of file var.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
stan::agrad::var::var ()
+
+inline
+
+ +

Construct a variable for later assignment.

+

This is implemented as a no-op, leaving the underlying implementation dangling. Before an assignment, the behavior is thus undefined just as for a basic double.

+ +

Definition at line 72 of file var.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
stan::agrad::var::var (bool b)
+
+inline
+
+ +

Construct a variable by static casting the specified value to double.

+
Parameters
+ + +
bValue.
+
+
+ +

Definition at line 82 of file var.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
stan::agrad::var::var (char c)
+
+inline
+
+ +

Construct a variable by static casting the specified value to double.

+
Parameters
+ + +
cValue.
+
+
+ +

Definition at line 92 of file var.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
stan::agrad::var::var (short n)
+
+inline
+
+ +

Construct a variable by static casting the specified value to double.

+
Parameters
+ + +
nValue.
+
+
+ +

Definition at line 102 of file var.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
stan::agrad::var::var (unsigned short n)
+
+inline
+
+ +

Construct a variable by static casting the specified value to double.

+
Parameters
+ + +
nValue.
+
+
+ +

Definition at line 112 of file var.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
stan::agrad::var::var (int n)
+
+inline
+
+ +

Construct a variable by static casting the specified value to double.

+
Parameters
+ + +
nValue.
+
+
+ +

Definition at line 122 of file var.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
stan::agrad::var::var (unsigned int n)
+
+inline
+
+ +

Construct a variable by static casting the specified value to double.

+
Parameters
+ + +
nValue.
+
+
+ +

Definition at line 132 of file var.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
stan::agrad::var::var (long int n)
+
+inline
+
+ +

Construct a variable by static casting the specified value to double.

+
Parameters
+ + +
nValue.
+
+
+ +

Definition at line 142 of file var.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
stan::agrad::var::var (unsigned long int n)
+
+inline
+
+ +

Construct a variable by static casting the specified value to double.

+
Parameters
+ + +
nValue.
+
+
+ +

Definition at line 152 of file var.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
stan::agrad::var::var (unsigned long long n)
+
+inline
+
+ +

Construct a variable by static casting the specified value to double.

+
Parameters
+ + +
nValue.
+
+
+ +

Definition at line 162 of file var.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
stan::agrad::var::var (long long n)
+
+inline
+
+ +

Construct a variable by static casting the specified value to double.

+
Parameters
+ + +
nValue.
+
+
+ +

Definition at line 172 of file var.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
stan::agrad::var::var (float x)
+
+inline
+
+ +

Construct a variable by static casting the specified value to double.

+
Parameters
+ + +
xValue.
+
+
+ +

Definition at line 182 of file var.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
stan::agrad::var::var (double x)
+
+inline
+
+ +

Construct a variable with the specified value.

+
Parameters
+ + +
xValue of the variable.
+
+
+ +

Definition at line 191 of file var.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
stan::agrad::var::var (long double x)
+
+inline
+
+ +

Construct a variable by static casting the specified value to double.

+
Parameters
+ + +
xValue.
+
+
+ +

Definition at line 201 of file var.hpp.

+ +
+
+

Member Function Documentation

+ +
+
+ + + + + +
+ + + + + + + +
double stan::agrad::var::adj () const
+
+inline
+
+ +

Return the derivative of the root expression with respect to this expression.

+

This method only works after one of the grad() methods has been called.

+
Returns
Adjoint value for this variable.
+ +

Definition at line 222 of file var.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
void stan::agrad::var::grad (std::vector< var > & x,
std::vector< double > & g 
)
+
+inline
+
+ +

Compute the gradient of this (dependent) variable with respect to the specified vector of (independent) variables, assigning the specified vector to the gradient.

+

After the computation of the gradient and value, memory is recovered.

+
Parameters
+ + + +
xVector of independent variables.
gGradient vector of partial derivatives of this variable with respect to x.
+
+
+ +

Definition at line 238 of file var.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
void stan::agrad::var::grad ()
+
+inline
+
+ +

Compute gradients of this dependent variable with respect to all variables on which it depends.

+

Memory is recovered, but not freed after this operation, calling recover_memory(); see free_all() to release resources back to the system rather than saving them for reuse).

+

Until the next creation of a stan::agrad::var instance, the gradient values will be available from an instance x of stan::agrad::var via x.adj(). It may be slightly more efficient to do this without the intermediate creation and population of two vectors as done in the two-argument form grad(std::vector<var>&, std::vector<double>&).

+ +

Definition at line 263 of file var.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
void stan::agrad::var::grad (std::vector< var > & x,
std::vector< double > & g 
)
+
+inline
+
+ +

Compute the gradient of this dependent variable with respect to the specified vector of independent variables, assigning the gradients componentwise to the specified vector of gradients.

+

After the computation of the gradient and value, memory is recovered.

+
Parameters
+ + + +
xVector of independent variables.
gGradient vector of partial derivatives of this variable with respect to x.
+
+
+ +

Definition at line 865 of file agrad_thread_safe.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
void stan::agrad::var::grad ()
+
+inline
+
+ +

Compute gradients of this dependent variable with respect to all variables on which it depends.

+

Memory is recovered, but not freed after this operation, calling vari::recover_memory(); see vari::free_all() to release resources back to the system rather than saving them for reuse).

+

Until the next creation of a stan::agrad::var instance, the gradient values will be available from an instance x of stan::agrad::var via x.vi_->adj_. It may be slightly more efficient to do this without the intermediate creation and population of two vectors as done in the two-argument form grad(std::vector<var>&, std::vector<double>&).

+ +

Definition at line 890 of file agrad_thread_safe.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
bool stan::agrad::var::is_uninitialized ()
+
+inline
+
+ +

Return true if this variable has been declared, but not been defined.

+

Any attempt to use an undefined variable's value or adjoint will result in a segmentation fault.

+
Returns
true if this variable does not yet have a defined variable.
+ +

Definition at line 52 of file var.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
vari& stan::agrad::var::operator* ()
+
+inline
+
+ +

Return a reference to underlying implementation of this variable.

+

If x is of type var, then applying this operator, *x, has the same behavior as *(x.vi_).

+

Warning: The returned reference does not track changes to this variable.

+
Returns
variable
+ +

Definition at line 282 of file var.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
var& stan::agrad::var::operator*= (const varb)
+
+inline
+
+ +

The compound multiply/assignment operator for variables (C++).

+

If this variable is a and the argument is the variable b, then (a *= b) behaves exactly the same way as (a = a * b). Note that the result is an assignable lvalue.

+
Parameters
+ + +
bThe variable to multiply this variable by.
+
+
+
Returns
The result of multiplying this variable by the specified variable.
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
var & stan::agrad::var::operator*= (const double b)
+
+inline
+
+ +

The compound multiply/assignment operator for scalars (C++).

+

If this variable is a and the argument is the scalar b, then (a *= b) behaves exactly the same way as (a = a * b). Note that the result is an assignable lvalue.

+
Parameters
+ + +
bThe scalar to multiply this variable by.
+
+
+
Returns
The result of multplying this variable by the specified variable.
+ +

Definition at line 15 of file operator_multiply_equal.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
var & stan::agrad::var::operator*= (const varb)
+
+inline
+
+ +

The compound multiply/assignment operator for variables (C++).

+

If this variable is a and the argument is the variable b, then (a *= b) behaves exactly the same way as (a = a * b). Note that the result is an assignable lvalue.

+
Parameters
+ + +
bThe variable to multiply this variable by.
+
+
+
Returns
The result of multiplying this variable by the specified variable.
+ +

Definition at line 970 of file agrad_thread_safe.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
var& stan::agrad::var::operator*= (const double & b)
+
+inline
+
+ +

The compound multiply/assignment operator for scalars (C++).

+

If this variable is a and the argument is the scalar b, then (a *= b) behaves exactly the same way as (a = a * b). Note that the result is an assignable lvalue.

+
Parameters
+ + +
bThe scalar to multiply this variable by.
+
+
+
Returns
The result of multplying this variable by the specified variable.
+ +

Definition at line 986 of file agrad_thread_safe.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
var& stan::agrad::var::operator+= (const varb)
+
+inline
+
+ +

The compound add/assignment operator for variables (C++).

+

If this variable is a and the argument is the variable b, then (a += b) behaves exactly the same way as (a = a + b), creating an intermediate variable representing (a + b).

+
Parameters
+ + +
bThe variable to add to this variable.
+
+
+
Returns
The result of adding the specified variable to this variable.
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
var & stan::agrad::var::operator+= (const double b)
+
+inline
+
+ +

The compound add/assignment operator for scalars (C++).

+

If this variable is a and the argument is the scalar b, then (a += b) behaves exactly the same way as (a = a + b). Note that the result is an assignable lvalue.

+
Parameters
+ + +
bThe scalar to add to this variable.
+
+
+
Returns
The result of adding the specified variable to this variable.
+ +

Definition at line 15 of file operator_plus_equal.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
var & stan::agrad::var::operator+= (const varb)
+
+inline
+
+ +

The compound add/assignment operator for variables (C++).

+

If this variable is a and the argument is the variable b, then (a += b) behaves exactly the same way as (a = a + b), creating an intermediate variable representing (a + b).

+
Parameters
+ + +
bThe variable to add to this variable.
+
+
+
Returns
The result of adding the specified variable to this variable.
+ +

Definition at line 907 of file agrad_thread_safe.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
var& stan::agrad::var::operator+= (const double & b)
+
+inline
+
+ +

The compound add/assignment operator for scalars (C++).

+

If this variable is a and the argument is the scalar b, then (a += b) behaves exactly the same way as (a = a + b). Note that the result is an assignable lvalue.

+
Parameters
+ + +
bThe scalar to add to this variable.
+
+
+
Returns
The result of adding the specified variable to this variable.
+ +

Definition at line 922 of file agrad_thread_safe.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
var& stan::agrad::var::operator-= (const varb)
+
+inline
+
+ +

The compound subtract/assignment operator for variables (C++).

+

If this variable is a and the argument is the variable b, then (a -= b) behaves exactly the same way as (a = a - b). Note that the result is an assignable lvalue.

+
Parameters
+ + +
bThe variable to subtract from this variable.
+
+
+
Returns
The result of subtracting the specified variable from this variable.
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
var & stan::agrad::var::operator-= (const double b)
+
+inline
+
+ +

The compound subtract/assignment operator for scalars (C++).

+

If this variable is a and the argument is the scalar b, then (a -= b) behaves exactly the same way as (a = a - b). Note that the result is an assignable lvalue.

+
Parameters
+ + +
bThe scalar to subtract from this variable.
+
+
+
Returns
The result of subtracting the specified variable from this variable.
+ +

Definition at line 15 of file operator_minus_equal.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
var & stan::agrad::var::operator-= (const varb)
+
+inline
+
+ +

The compound subtract/assignment operator for variables (C++).

+

If this variable is a and the argument is the variable b, then (a -= b) behaves exactly the same way as (a = a - b). Note that the result is an assignable lvalue.

+
Parameters
+ + +
bThe variable to subtract from this variable.
+
+
+
Returns
The result of subtracting the specified variable from this variable.
+ +

Definition at line 938 of file agrad_thread_safe.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
var& stan::agrad::var::operator-= (const double & b)
+
+inline
+
+ +

The compound subtract/assignment operator for scalars (C++).

+

If this variable is a and the argument is the scalar b, then (a -= b) behaves exactly the same way as (a = a - b). Note that the result is an assignable lvalue.

+
Parameters
+ + +
bThe scalar to subtract from this variable.
+
+
+
Returns
The result of subtracting the specified variable from this variable.
+ +

Definition at line 954 of file agrad_thread_safe.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
vari* stan::agrad::var::operator-> ()
+
+inline
+
+ +

Return a pointer to the underlying implementation of this variable.

+

If x is of type var, then applying this operator, x->, behaves the same way as x.vi_->.

+

Warning: The returned result does not track changes to this variable.

+ +

Definition at line 296 of file var.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
var& stan::agrad::var::operator/= (const varb)
+
+inline
+
+ +

The compound divide/assignment operator for variables (C++).

+

If this variable is a and the argument is the variable b, then (a /= b) behaves exactly the same way as (a = a / b). Note that the result is an assignable lvalue.

+
Parameters
+ + +
bThe variable to divide this variable by.
+
+
+
Returns
The result of dividing this variable by the specified variable.
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
var & stan::agrad::var::operator/= (const double b)
+
+inline
+
+ +

The compound divide/assignment operator for scalars (C++).

+

If this variable is a and the argument is the scalar b, then (a /= b) behaves exactly the same way as (a = a / b). Note that the result is an assignable lvalue.

+
Parameters
+ + +
bThe scalar to divide this variable by.
+
+
+
Returns
The result of dividing this variable by the specified variable.
+ +

Definition at line 15 of file operator_divide_equal.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
var & stan::agrad::var::operator/= (const varb)
+
+inline
+
+ +

The compound divide/assignment operator for variables (C++).

+

If this variable is a and the argument is the variable b, then (a /= b) behaves exactly the same way as (a = a / b). Note that the result is an assignable lvalue.

+
Parameters
+ + +
bThe variable to divide this variable by.
+
+
+
Returns
The result of dividing this variable by the specified variable.
+ +

Definition at line 1001 of file agrad_thread_safe.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
var& stan::agrad::var::operator/= (const double & b)
+
+inline
+
+ +

The compound divide/assignment operator for scalars (C++).

+

If this variable is a and the argument is the scalar b, then (a /= b) behaves exactly the same way as (a = a / b). Note that the result is an assignable lvalue.

+
Parameters
+ + +
bThe scalar to divide this variable by.
+
+
+
Returns
The result of dividing this variable by the specified variable.
+ +

Definition at line 1017 of file agrad_thread_safe.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
double stan::agrad::var::val () const
+
+inline
+
+ +

Return the value of this variable.

+
Returns
The value of this variable.
+ +

Definition at line 210 of file var.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
double stan::agrad::var::val () const
+
+inline
+
+ +

Return the value of this variable.

+
Returns
The value of this variable.
+ +

Definition at line 849 of file agrad_thread_safe.hpp.

+ +
+
+

Friends And Related Function Documentation

+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
std::ostream& operator<< (std::ostream & os,
const varv 
)
+
+friend
+
+ +

Write the value of this auto-dif variable and its adjoint to the specified output stream.

+
Parameters
+ + + +
osOutput stream to which to write.
vVariable to write.
+
+
+
Returns
Reference to the specified output stream.
+ +

Definition at line 411 of file var.hpp.

+ +
+
+

Member Data Documentation

+ +
+
+ + + + +
vari * stan::agrad::var::vi_
+
+ +

Pointer to the implementation of this variable.

+

This value should not be modified, but may be accessed in var operators to construct vari instances.

+ +

Definition at line 713 of file agrad_thread_safe.hpp.

+ +
+
+
The documentation for this class was generated from the following files: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1agrad_1_1vari-members.html b/doc/api/html/classstan_1_1agrad_1_1vari-members.html new file mode 100644 index 00000000000..23aa24d285b --- /dev/null +++ b/doc/api/html/classstan_1_1agrad_1_1vari-members.html @@ -0,0 +1,129 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::agrad::vari Member List
+
+
+ +

This is the complete list of members for stan::agrad::vari, including all inherited members.

+ + + + + + + + + + + + + + + + + + +
adj_stan::agrad::vari
chain()stan::agrad::variinlinevirtual
chainable()stan::agrad::chainableinline
free_memory()stan::agrad::variinlinestatic
init_dependent()stan::agrad::variinlinevirtual
operator delete(void *)stan::agrad::chainableinlinestatic
operator new(size_t nbytes)stan::agrad::variinlinestatic
operator<<(std::ostream &os, const vari *v)stan::agrad::varifriend
recover_memory()stan::agrad::variinlinestatic
set_zero_adjoint()stan::agrad::variinlinevirtual
val_stan::agrad::vari
var classstan::agrad::varifriend
vari(const double x)stan::agrad::variinline
vari(const double x)stan::agrad::variinline
vari(const double x, bool stacked)stan::agrad::variinline
~chainable()stan::agrad::chainableinlinevirtual
~vari()stan::agrad::variinlinevirtual
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1agrad_1_1vari.html b/doc/api/html/classstan_1_1agrad_1_1vari.html new file mode 100644 index 00000000000..708b53ed49f --- /dev/null +++ b/doc/api/html/classstan_1_1agrad_1_1vari.html @@ -0,0 +1,661 @@ + + + + + +Stan: stan::agrad::vari Class Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+ +
+ +

The variable implementation base class. + More...

+ +

#include <agrad_thread_safe.hpp>

+
+Inheritance diagram for stan::agrad::vari:
+
+
+ + +stan::agrad::chainable +stan::agrad::op_ddv_vari +stan::agrad::op_ddv_vari +stan::agrad::op_dv_vari +stan::agrad::op_dv_vari +stan::agrad::op_dvd_vari +stan::agrad::op_dvd_vari +stan::agrad::op_dvv_vari +stan::agrad::op_dvv_vari +stan::agrad::op_matrix_vari +stan::agrad::op_v_vari +stan::agrad::op_v_vari +stan::agrad::op_vd_vari +stan::agrad::op_vd_vari +stan::agrad::op_vdd_vari +stan::agrad::op_vdd_vari +stan::agrad::op_vdv_vari +stan::agrad::op_vdv_vari +stan::agrad::op_vector_vari +stan::agrad::op_vv_vari +stan::agrad::op_vv_vari +stan::agrad::op_vvd_vari +stan::agrad::op_vvd_vari +stan::agrad::op_vvv_vari +stan::agrad::op_vvv_vari +stan::agrad::partials_vari +stan::agrad::precomputed_gradients_vari +stan::agrad::stored_gradient_vari + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 vari (const double x)
 Construct a variable implementation from a value.
 
virtual void chain ()
 Apply the chain rule to this variable based on the variables on which it depends.
 
 vari (const double x)
 Construct a variable implementation from a value.
 
 vari (const double x, bool stacked)
 
virtual ~vari ()
 Throw an illegal argument exception.
 
virtual void init_dependent ()
 Initialize the adjoint for this (dependent) variable to 1.
 
virtual void set_zero_adjoint ()
 Set the adjoint value of this variable to 0.
 
- Public Member Functions inherited from stan::agrad::chainable
 chainable ()
 Construct a chainable object.
 
virtual ~chainable ()
 Chainables are not destructible and should go on the function call stack or be allocated with operator new.
 
+ + + + + + + + + + + + + + + + + +

+Static Public Member Functions

static void * operator new (size_t nbytes)
 Allocate memory from the underlying memory pool.
 
static void recover_memory ()
 Recover memory used for all variables for reuse.
 
static void free_memory ()
 Return all memory used for gradients back to the system.
 
- Static Public Member Functions inherited from stan::agrad::chainable
static void * operator new (size_t nbytes)
 Allocate memory from the underlying memory pool.
 
static void operator delete (void *)
 Delete a pointer from the underlying memory pool.
 
+ + + + + + + +

+Public Attributes

const double val_
 The value of this variable.
 
double adj_
 The adjoint of this variable, which is the partial derivative of this variable with respect to the root variable.
 
+ + + + + + +

+Friends

class var
 
std::ostream & operator<< (std::ostream &os, const vari *v)
 Insertion operator for vari.
 
+

Detailed Description

+

The variable implementation base class.

+

A variable implementation is constructed with a constant value. It also stores the adjoint for storing the partial derivative with respect to the root of the derivative tree.

+

The chain() method applies the chain rule. Concrete extensions of this class will represent base variables or the result of operations such as addition or subtraction. These extended classes will store operand variables and propagate derivative information via an implementation of chain().

+ +

Definition at line 53 of file agrad_thread_safe.hpp.

+

Constructor & Destructor Documentation

+ +
+
+ + + + + +
+ + + + + + + + +
stan::agrad::vari::vari (const double x)
+
+inline
+
+ +

Construct a variable implementation from a value.

+

The adjoint is initialized to zero.

+

All constructed variables are added to the stack. Variables should be constructed before variables on which they depend to insure proper partial derivative propagation. During derivative propagation, the chain() method of each variable will be called in the reverse order of construction.

+
Parameters
+ + +
xValue of the constructed variable.
+
+
+ +

Definition at line 82 of file agrad_thread_safe.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
stan::agrad::vari::vari (const double x)
+
+inline
+
+ +

Construct a variable implementation from a value.

+

The adjoint is initialized to zero.

+

All constructed variables are added to the stack. Variables should be constructed before variables on which they depend to insure proper partial derivative propagation. During derivative propagation, the chain() method of each variable will be called in the reverse order of construction.

+
Parameters
+ + +
xValue of the constructed variable.
+
+
+ +

Definition at line 57 of file vari.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
stan::agrad::vari::vari (const double x,
bool stacked 
)
+
+inline
+
+ +

Definition at line 63 of file vari.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
virtual stan::agrad::vari::~vari ()
+
+inlinevirtual
+
+ +

Throw an illegal argument exception.

+

Warning: Destructors should never called for agrad objects.

+
Exceptions
+ + +
Logicexception always.
+
+
+ +

Definition at line 79 of file vari.hpp.

+ +
+
+

Member Function Documentation

+ +
+
+ + + + + +
+ + + + + + + +
virtual void stan::agrad::vari::chain ()
+
+inlinevirtual
+
+ +

Apply the chain rule to this variable based on the variables on which it depends.

+

The base implementation in this class is a no-op.

+ +

Reimplemented from stan::agrad::chainable.

+ +

Reimplemented in stan::agrad::precomputed_gradients_vari, stan::agrad::stored_gradient_vari, and stan::agrad::partials_vari.

+ +

Definition at line 93 of file agrad_thread_safe.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
static void stan::agrad::vari::free_memory ()
+
+inlinestatic
+
+ +

Return all memory used for gradients back to the system.

+ +

Definition at line 123 of file agrad_thread_safe.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
virtual void stan::agrad::vari::init_dependent ()
+
+inlinevirtual
+
+ +

Initialize the adjoint for this (dependent) variable to 1.

+

This operation is applied to the dependent variable before propagating derivatives.

+ +

Reimplemented from stan::agrad::chainable.

+ +

Definition at line 88 of file vari.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
static void* stan::agrad::vari::operator new (size_t nbytes)
+
+inlinestatic
+
+ +

Allocate memory from the underlying memory pool.

+

This memory is is managed by the gradient program and will be recovered as a whole. Classes should not be allocated with this operator if they have non-trivial destructors.

+
Parameters
+ + +
nbytesNumber of bytes to allocate.
+
+
+
Returns
Pointer to allocated bytes.
+ +

Definition at line 105 of file agrad_thread_safe.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
static void stan::agrad::vari::recover_memory ()
+
+inlinestatic
+
+ +

Recover memory used for all variables for reuse.

+ +

Definition at line 114 of file agrad_thread_safe.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
virtual void stan::agrad::vari::set_zero_adjoint ()
+
+inlinevirtual
+
+ +

Set the adjoint value of this variable to 0.

+ +

Reimplemented from stan::agrad::chainable.

+ +

Definition at line 95 of file vari.hpp.

+ +
+
+

Friends And Related Function Documentation

+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
std::ostream& operator<< (std::ostream & os,
const variv 
)
+
+friend
+
+ +

Insertion operator for vari.

+

Prints the current value and the adjoint value.

+
Parameters
+ + + +
os[in,out] ostream to modify
v[in] vari object to print.
+
+
+
Returns
The modified ostream.
+ +

Definition at line 108 of file vari.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + +
var
+
+friend
+
+ +

Definition at line 55 of file agrad_thread_safe.hpp.

+ +
+
+

Member Data Documentation

+ +
+
+ + + + +
double stan::agrad::vari::adj_
+
+ +

The adjoint of this variable, which is the partial derivative of this variable with respect to the root variable.

+ +

Definition at line 68 of file agrad_thread_safe.hpp.

+ +
+
+ +
+
+ + + + +
const double stan::agrad::vari::val_
+
+ +

The value of this variable.

+ +

Definition at line 62 of file agrad_thread_safe.hpp.

+ +
+
+
The documentation for this class was generated from the following files: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1agrad_1_1vari.png b/doc/api/html/classstan_1_1agrad_1_1vari.png new file mode 100644 index 0000000000000000000000000000000000000000..88c037cbe69e8a12b56cfccac3185ebb6b06f01a GIT binary patch literal 13279 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 literal 0 HcmV?d00001 diff --git a/doc/api/html/classstan_1_1gm_1_1arg__adapt-members.html b/doc/api/html/classstan_1_1gm_1_1arg__adapt-members.html new file mode 100644 index 00000000000..d98fc0d298f --- /dev/null +++ b/doc/api/html/classstan_1_1gm_1_1arg__adapt-members.html @@ -0,0 +1,133 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::gm::arg_adapt Member List
+
+
+ +

This is the complete list of members for stan::gm::arg_adapt, including all inherited members.

+ + + + + + + + + + + + + + + + + + + + + + +
_descriptionstan::gm::argumentprotected
_namestan::gm::argumentprotected
_subargumentsstan::gm::categorical_argumentprotected
arg(const std::string name)stan::gm::categorical_argumentinlinevirtual
arg_adapt()stan::gm::arg_adaptinline
argument()stan::gm::argumentinline
argument(const std::string name)stan::gm::argumentinline
compute_indent(const int depth)stan::gm::argumentinline
description() const stan::gm::argumentinline
find_arg(std::string name, std::string prefix, std::vector< std::string > &valid_paths)stan::gm::categorical_argumentinlinevirtual
help_widthstan::gm::argumentprotected
indent_widthstan::gm::argumentprotected
name() const stan::gm::argumentinline
parse_args(std::vector< std::string > &args, std::ostream *out, std::ostream *err, bool &help_flag)stan::gm::categorical_argumentinlinevirtual
print(std::ostream *s, const int depth, const std::string prefix)stan::gm::categorical_argumentinlinevirtual
print_help(std::ostream *s, const int depth, const bool recurse)stan::gm::categorical_argumentinlinevirtual
probe_args(argument *base_arg, std::stringstream &s)stan::gm::categorical_argumentinlinevirtual
split_arg(const std::string &arg, std::string &name, std::string &value)stan::gm::argumentinlinestatic
subarguments()stan::gm::categorical_argumentinline
~argument()stan::gm::argumentinlinevirtual
~categorical_argument()stan::gm::categorical_argumentinlinevirtual
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1gm_1_1arg__adapt.html b/doc/api/html/classstan_1_1gm_1_1arg__adapt.html new file mode 100644 index 00000000000..de2bb82e611 --- /dev/null +++ b/doc/api/html/classstan_1_1gm_1_1arg__adapt.html @@ -0,0 +1,201 @@ + + + + + +Stan: stan::gm::arg_adapt Class Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::gm::arg_adapt Class Reference
+
+
+ +

#include <arg_adapt.hpp>

+
+Inheritance diagram for stan::gm::arg_adapt:
+
+
+ + +stan::gm::categorical_argument +stan::gm::argument + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 arg_adapt ()
 
- Public Member Functions inherited from stan::gm::categorical_argument
virtual ~categorical_argument ()
 
void print (std::ostream *s, const int depth, const std::string prefix)
 
void print_help (std::ostream *s, const int depth, const bool recurse)
 
bool parse_args (std::vector< std::string > &args, std::ostream *out, std::ostream *err, bool &help_flag)
 
virtual void probe_args (argument *base_arg, std::stringstream &s)
 
void find_arg (std::string name, std::string prefix, std::vector< std::string > &valid_paths)
 
std::vector< argument * > & subarguments ()
 
argumentarg (const std::string name)
 
- Public Member Functions inherited from stan::gm::argument
 argument ()
 
 argument (const std::string name)
 
virtual ~argument ()
 
std::string name () const
 
std::string description () const
 
int compute_indent (const int depth)
 
+ + + + + + + +

+Additional Inherited Members

- Static Public Member Functions inherited from stan::gm::argument
static void split_arg (const std::string &arg, std::string &name, std::string &value)
 
- Protected Attributes inherited from stan::gm::categorical_argument
std::vector< argument * > _subarguments
 
+

Detailed Description

+
+

Definition at line 19 of file arg_adapt.hpp.

+

Constructor & Destructor Documentation

+ +
+
+ + + + + +
+ + + + + + + +
stan::gm::arg_adapt::arg_adapt ()
+
+inline
+
+ +

Definition at line 23 of file arg_adapt.hpp.

+ +
+
+
The documentation for this class was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1gm_1_1arg__adapt.png b/doc/api/html/classstan_1_1gm_1_1arg__adapt.png new file mode 100644 index 0000000000000000000000000000000000000000..1d77e10e3357c7e9983d635f94222b1c3b24ec4c GIT binary patch literal 1020 zcmeAS@N?(olHy`uVBq!ia0vp^JAt@^gBeKngzicMQW60^A+G=b{|7Q(y!l$%e`o@b z1;z&s9ANFdBM;IF_RuPm>GoN#9V)VgM{E49s`yX(DYDx&t9Q-9w2gZwmo}=% z7GJFSYb(9hDyQY_rZ&3*V;xWR9WlC31^WvSHZ(D_TeV<`BQ{7Xx`uv@9 zUY88_uljuM&XvD)OJ@|7ub*~_Dem~{vw8e!vbnQQ#3j7d{klx$<&5b23y(+U*GS$; z%ky%dWG3V8aVhg%^|Ryp6S>z*dRjfWmNiku9Oj8sqw|)}1sQ)x@i!<+Ui{R(F^lZ`-@AP>p zFVkyccFp`#tE67+X>=!Z-m-}y`j`K_K5zAN&P@HYFJ7PCwTf@gqG|b`t%Ub(Kb`$~ z)}bZYQ@ws<*|D3Ro|IyjdOvly*}<{}YxIu&zIawS=WtIGFz^ax}dUk{#)PMS&?;Dv!9h7{A}O;EW1bYN5;OJ+pQN?n^zpV6Lwmye)@;n ztu=MeW-opJdXKSr>HhQ|`_6sOda-t=?sx91L45fy*6V z_7AFO7=ft@4|m&=DVHWpU|>^$D%6{Gzkc>?+4IYOa6b!XuKo6}s8TN{?A+b0F}K29 z&nEtUZ)D8B&3c+-!}&R8^XGQm%yC)-Oo2!1fGIG0S!%ykdO3^5ldhk?g3Y4#dQRVU zEC1DjcNgz49N=6RdivAtc_#Cfzn^(4_w2U0--@- + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::gm::arg_adapt_delta Member List
+
+
+ +

This is the complete list of members for stan::gm::arg_adapt_delta, including all inherited members.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
_bad_valuestan::gm::singleton_argument< T >protected
_constrainedstan::gm::singleton_argument< T >protected
_defaultstan::gm::valued_argumentprotected
_default_valuestan::gm::singleton_argument< T >protected
_descriptionstan::gm::argumentprotected
_good_valuestan::gm::singleton_argument< T >protected
_namestan::gm::argumentprotected
_validitystan::gm::singleton_argument< T >protected
_valuestan::gm::singleton_argument< T >protected
_value_typestan::gm::valued_argumentprotected
arg(const std::string name)stan::gm::argumentinlinevirtual
arg_adapt_delta()stan::gm::arg_adapt_deltainline
argument()stan::gm::argumentinline
argument(const std::string name)stan::gm::argumentinline
compute_indent(const int depth)stan::gm::argumentinline
description() const stan::gm::argumentinline
find_arg(std::string name, std::string prefix, std::vector< std::string > &valid_paths)stan::gm::singleton_argument< T >inlinevirtual
help_widthstan::gm::argumentprotected
indent_widthstan::gm::argumentprotected
is_default()stan::gm::singleton_argument< T >inlinevirtual
is_valid(double value)stan::gm::arg_adapt_deltainline
stan::gm::singleton_argument::is_valid(T value)stan::gm::singleton_argument< T >inlineprotectedvirtual
name() const stan::gm::argumentinline
parse_args(std::vector< std::string > &args, std::ostream *out, std::ostream *err, bool &help_flag)stan::gm::singleton_argument< T >inlinevirtual
print(std::ostream *s, const int depth, const std::string prefix)stan::gm::valued_argumentinlinevirtual
print_help(std::ostream *s, const int depth, const bool recurse=false)stan::gm::valued_argumentinlinevirtual
print_valid()stan::gm::singleton_argument< T >inlinevirtual
print_value()stan::gm::singleton_argument< T >inlinevirtual
probe_args(argument *base_arg, std::stringstream &s)stan::gm::singleton_argument< T >inlinevirtual
set_value(const T &value)stan::gm::singleton_argument< T >inline
singleton_argument()stan::gm::singleton_argument< T >inline
singleton_argument(const std::string name)stan::gm::singleton_argument< T >inline
split_arg(const std::string &arg, std::string &name, std::string &value)stan::gm::argumentinlinestatic
value()stan::gm::singleton_argument< T >inline
~argument()stan::gm::argumentinlinevirtual
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1gm_1_1arg__adapt__delta.html b/doc/api/html/classstan_1_1gm_1_1arg__adapt__delta.html new file mode 100644 index 00000000000..2229df6da76 --- /dev/null +++ b/doc/api/html/classstan_1_1gm_1_1arg__adapt__delta.html @@ -0,0 +1,255 @@ + + + + + +Stan: stan::gm::arg_adapt_delta Class Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::gm::arg_adapt_delta Class Reference
+
+
+ +

#include <arg_adapt_delta.hpp>

+
+Inheritance diagram for stan::gm::arg_adapt_delta:
+
+
+ + +stan::gm::singleton_argument< T > +stan::gm::valued_argument +stan::gm::argument + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 arg_adapt_delta ()
 
bool is_valid (double value)
 
- Public Member Functions inherited from stan::gm::singleton_argument< T >
 singleton_argument ()
 
 singleton_argument (const std::string name)
 
bool parse_args (std::vector< std::string > &args, std::ostream *out, std::ostream *err, bool &help_flag)
 
virtual void probe_args (argument *base_arg, std::stringstream &s)
 
void find_arg (std::string name, std::string prefix, std::vector< std::string > &valid_paths)
 
value ()
 
bool set_value (const T &value)
 
std::string print_value ()
 
std::string print_valid ()
 
bool is_default ()
 
- Public Member Functions inherited from stan::gm::valued_argument
virtual void print (std::ostream *s, const int depth, const std::string prefix)
 
virtual void print_help (std::ostream *s, const int depth, const bool recurse=false)
 
- Public Member Functions inherited from stan::gm::argument
 argument ()
 
 argument (const std::string name)
 
virtual ~argument ()
 
std::string name () const
 
std::string description () const
 
virtual argumentarg (const std::string name)
 
int compute_indent (const int depth)
 
+ + + + + + + + + + + + + + + + + + + + +

+Additional Inherited Members

- Static Public Member Functions inherited from stan::gm::argument
static void split_arg (const std::string &arg, std::string &name, std::string &value)
 
- Protected Member Functions inherited from stan::gm::singleton_argument< T >
virtual bool is_valid (T value)
 
- Protected Attributes inherited from stan::gm::singleton_argument< T >
std::string _validity
 
_value
 
_default_value
 
bool _constrained
 
_good_value
 
_bad_value
 
+

Detailed Description

+
+

Definition at line 10 of file arg_adapt_delta.hpp.

+

Constructor & Destructor Documentation

+ +
+
+ + + + + +
+ + + + + + + +
stan::gm::arg_adapt_delta::arg_adapt_delta ()
+
+inline
+
+ +

Definition at line 14 of file arg_adapt_delta.hpp.

+ +
+
+

Member Function Documentation

+ +
+
+ + + + + +
+ + + + + + + + +
bool stan::gm::arg_adapt_delta::is_valid (double value)
+
+inline
+
+ +

Definition at line 26 of file arg_adapt_delta.hpp.

+ +
+
+
The documentation for this class was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1gm_1_1arg__adapt__delta.png b/doc/api/html/classstan_1_1gm_1_1arg__adapt__delta.png new file mode 100644 index 0000000000000000000000000000000000000000..3f8013e7339e57be97ad13343b83c8b5c8987e59 GIT binary patch literal 1508 zcmb_cX;4!K5DriTQAEdbDpEQe3L$a@1cWGZh$2Rk2XaI%xf10t1QJ0aSfSWb6a=|26bR9VK7Cahs!}MS#E|NlFK&P3ZpfcETP1&+^`3-jV!({Du8F$rsh4C zTd3L@AyEn&AdN{7tbYRl1fe~|SV1Cw<^w?Y_SsDv7iOC8z3A>;?z80QR^(8*FNk3S z7OEN?W^<=HC>+X#HgvKot^DAQ6Rbf&;00~QikxN@Vow42b&gfrnUl_g@sg90?TDj- zM;^Ry`vKi#C!jNZjb8Vlep@&8l7DSIlfo1!rF;x9!?I(O94PGLi*v?t@as86xd_`D zw}rk3{V}9s)6c6KSd^fV2#_*`;i*gLZ-x+@2Keq=La!Ci&57neQHKvn!cq;>04cQ* z#Gg$7prJ?1Ep6u3a;2ou4ek0z61TjbJd6>__4iozCnfX%G%KPFHG7(Mh)aH{)@T)st(jm=!uk7qeH}Joc6S zv;L_nyv-~#JbG%R1U=#@Na=%WBM80=K9E()adNUp?Rz=7OAFb-IQvT7B)j$ zA{5!zxDk291j0`9wP~!NtUtyTcZ4!uge?_!Jq8=wl-%#)d1W6ESezyX!tBQ%yMIXU zCk&4Gk=2~QU^-2V#rYc7ih|0R;DDPiP@T;YnQuO{9k%LZd(kG!U6M%P*6Tu?Xj7JI z)uPH~wBCP^`Y+alPHSb{Qq{r+FxEFX%Sh(pUy23UQ6Rxae&!elH8BB#+SDNAu*2mq ziF)E?KOL$+H(=%Wd1-%=D1XDy6%9Qu`4uA}BO!456e4mq4-raXMZCRd?{&>n$C@(+ zmbZV0V`aD4+%eo?j@UzhN9-PJw{@sS(!%QnlsXrCptJ6WnbN(E$^M1v>EW1bv4bU1 zFKfh+5^yn9%o~rV$RB@C^+I|G&ehp*8$|C`vB&_|n^GmvB1NB8P`1`SQ#l*+)Wq(J zW_3n!HO|aGXb8%mWXIN{J5iUL^f{v0DYPcT$b>|iize`K!%6-ctHXhbkT!_1~#lG|kAgfla> zgNGaO+KA+INxb`}stvE4uHgkUQGdf?t0n&v>ZSIUB?b`=lFMRi7V)Cft-)<)5; zj3=Sp@#Q4NQyt>(<4Zz0^2Th1;*Xs~_25h)S;>)wVz=BnU+lBMdlckT@SHlZNq|J~ xAz?m!Qtq=N>v-@*l*jttAbwEO|Ec4PT1V+GPYr*}UzWXOn1`#E3(Gk;{SQLt?1BIQ literal 0 HcmV?d00001 diff --git a/doc/api/html/classstan_1_1gm_1_1arg__adapt__engaged-members.html b/doc/api/html/classstan_1_1gm_1_1arg__adapt__engaged-members.html new file mode 100644 index 00000000000..4ee2b7a6a01 --- /dev/null +++ b/doc/api/html/classstan_1_1gm_1_1arg__adapt__engaged-members.html @@ -0,0 +1,146 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::gm::arg_adapt_engaged Member List
+
+
+ +

This is the complete list of members for stan::gm::arg_adapt_engaged, including all inherited members.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
_bad_valuestan::gm::singleton_argument< T >protected
_constrainedstan::gm::singleton_argument< T >protected
_defaultstan::gm::valued_argumentprotected
_default_valuestan::gm::singleton_argument< T >protected
_descriptionstan::gm::argumentprotected
_good_valuestan::gm::singleton_argument< T >protected
_namestan::gm::argumentprotected
_validitystan::gm::singleton_argument< T >protected
_valuestan::gm::singleton_argument< T >protected
_value_typestan::gm::valued_argumentprotected
arg(const std::string name)stan::gm::argumentinlinevirtual
arg_adapt_engaged()stan::gm::arg_adapt_engagedinline
argument()stan::gm::argumentinline
argument(const std::string name)stan::gm::argumentinline
compute_indent(const int depth)stan::gm::argumentinline
description() const stan::gm::argumentinline
find_arg(std::string name, std::string prefix, std::vector< std::string > &valid_paths)stan::gm::singleton_argument< T >inlinevirtual
help_widthstan::gm::argumentprotected
indent_widthstan::gm::argumentprotected
is_default()stan::gm::singleton_argument< T >inlinevirtual
is_valid(T value)stan::gm::singleton_argument< T >inlineprotectedvirtual
name() const stan::gm::argumentinline
parse_args(std::vector< std::string > &args, std::ostream *out, std::ostream *err, bool &help_flag)stan::gm::singleton_argument< T >inlinevirtual
print(std::ostream *s, const int depth, const std::string prefix)stan::gm::valued_argumentinlinevirtual
print_help(std::ostream *s, const int depth, const bool recurse=false)stan::gm::valued_argumentinlinevirtual
print_valid()stan::gm::singleton_argument< T >inlinevirtual
print_value()stan::gm::singleton_argument< T >inlinevirtual
probe_args(argument *base_arg, std::stringstream &s)stan::gm::singleton_argument< T >inlinevirtual
set_value(const T &value)stan::gm::singleton_argument< T >inline
singleton_argument()stan::gm::singleton_argument< T >inline
singleton_argument(const std::string name)stan::gm::singleton_argument< T >inline
split_arg(const std::string &arg, std::string &name, std::string &value)stan::gm::argumentinlinestatic
value()stan::gm::singleton_argument< T >inline
~argument()stan::gm::argumentinlinevirtual
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1gm_1_1arg__adapt__engaged.html b/doc/api/html/classstan_1_1gm_1_1arg__adapt__engaged.html new file mode 100644 index 00000000000..15473828010 --- /dev/null +++ b/doc/api/html/classstan_1_1gm_1_1arg__adapt__engaged.html @@ -0,0 +1,226 @@ + + + + + +Stan: stan::gm::arg_adapt_engaged Class Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::gm::arg_adapt_engaged Class Reference
+
+
+ +

#include <arg_adapt_engaged.hpp>

+
+Inheritance diagram for stan::gm::arg_adapt_engaged:
+
+
+ + +stan::gm::singleton_argument< T > +stan::gm::valued_argument +stan::gm::argument + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 arg_adapt_engaged ()
 
- Public Member Functions inherited from stan::gm::singleton_argument< T >
 singleton_argument ()
 
 singleton_argument (const std::string name)
 
bool parse_args (std::vector< std::string > &args, std::ostream *out, std::ostream *err, bool &help_flag)
 
virtual void probe_args (argument *base_arg, std::stringstream &s)
 
void find_arg (std::string name, std::string prefix, std::vector< std::string > &valid_paths)
 
value ()
 
bool set_value (const T &value)
 
std::string print_value ()
 
std::string print_valid ()
 
bool is_default ()
 
- Public Member Functions inherited from stan::gm::valued_argument
virtual void print (std::ostream *s, const int depth, const std::string prefix)
 
virtual void print_help (std::ostream *s, const int depth, const bool recurse=false)
 
- Public Member Functions inherited from stan::gm::argument
 argument ()
 
 argument (const std::string name)
 
virtual ~argument ()
 
std::string name () const
 
std::string description () const
 
virtual argumentarg (const std::string name)
 
int compute_indent (const int depth)
 
+ + + + + + + + + + + + + + + + + + + + +

+Additional Inherited Members

- Static Public Member Functions inherited from stan::gm::argument
static void split_arg (const std::string &arg, std::string &name, std::string &value)
 
- Protected Member Functions inherited from stan::gm::singleton_argument< T >
virtual bool is_valid (T value)
 
- Protected Attributes inherited from stan::gm::singleton_argument< T >
std::string _validity
 
_value
 
_default_value
 
bool _constrained
 
_good_value
 
_bad_value
 
+

Detailed Description

+
+

Definition at line 10 of file arg_adapt_engaged.hpp.

+

Constructor & Destructor Documentation

+ +
+
+ + + + + +
+ + + + + + + +
stan::gm::arg_adapt_engaged::arg_adapt_engaged ()
+
+inline
+
+ +

Definition at line 14 of file arg_adapt_engaged.hpp.

+ +
+
+
The documentation for this class was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1gm_1_1arg__adapt__engaged.png b/doc/api/html/classstan_1_1gm_1_1arg__adapt__engaged.png new file mode 100644 index 0000000000000000000000000000000000000000..3ec2467268d35876b0a175f9e47049530b6270ed GIT binary patch literal 1500 zcma)6eKga19R5jWc|W*_kSogDl;m9}@{+e@wxwnyC7EkhjIkSG<*Fo6UWZ!qGMC-! zb&}Uz)lzcJ)SX|+M9v6HavZe#bMHO=?S9Ysd_OPe`RDUIpYvn~BE6LrbQJ&qQ1&_I z5d>uriXONu^q;)FfrgS!pg+b_DwRUz%-k|Lx9>Jo{S!SsJ#yKgA=JVXf{73|N0O7QzIqi^c&@cQeO z!YZdSLXMckIwXd1+?HP_^i#9YRs;&d)v_XLH@kwo7Sj`|)6unrPq z3V|2R#c34`pI_)zCR7dcm<-nV%sc18UX!HX%I@$4Yufxv<^(oDO}=O}k78bWsSm}eUO?GIz!*dkg ztBPfYSh#Cc7u~9uo%6g=L@1xsiQ6_(t0EuBaN2bQS{pdT;>wKFd~X0U)Z8y%w+rk9 z6POrG7P=l~*sIJMuXR`^rV)mnz}%+lwlk|Pm%CF(dn@uJ8rITbTcg<`(|W{{!NLiV znM9ZEQd~Dbvj^lHY5o8a7g2IFJCiz&5@x^I@Gt3U7{nxz4TvwV&S;9BHDZnP?MbI- zis5I1uk*1<%Rab4AF>M3zve<;<8p{6Nfk(L>!V#aLiBsz4?~qRBUY~pSJojpank=!JEY;HszqKW*M98 zB3w?f+UGAO$%CznwdKQgzUQh*y>#8S5ac|V&r0!aYwxgtICdmE2y{0|7|}q`)O3I7 zF&vSt#I`7{P;C8Q+kpA?p^vI2Qd+jxp!HQMy~qw%ATU6{WXaZ`zBk}_8_|YXa8@jf zTRU2#QjKHSKnHm+w(3{?(-ibu^LWgckeSCS)g?2hX?o=h?&oA-*MD@cbbYIcjjDTt z;*E_su7>RGxAFn>btM%jrcS32fVDyz*5>t`5V#gygqbvab_%$ z=(xDB02Z7@$EJjeDfA$H9^Zz255*j-io|I7Sv*{7IN>JIx5m8C1WOuA2-+&<#GM5{2VT) zzA#>s7!@CuaN8-!ijw4Wb2nX)#(9FrK@s?Gs+Bd|iI#v~8?}}l;V`_FHh-U3aE5pG z{M`mrSqVk{S%Okq`DM*ygP-mhD!wiAAC4fwqx&v*MK@+Y`khs z?~*&_tk?^Da6;^h#u;#xk2KH^nw5i&lXaxhe@z6wvP>UqkF + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::gm::arg_adapt_gamma Member List
+
+
+ +

This is the complete list of members for stan::gm::arg_adapt_gamma, including all inherited members.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
_bad_valuestan::gm::singleton_argument< T >protected
_constrainedstan::gm::singleton_argument< T >protected
_defaultstan::gm::valued_argumentprotected
_default_valuestan::gm::singleton_argument< T >protected
_descriptionstan::gm::argumentprotected
_good_valuestan::gm::singleton_argument< T >protected
_namestan::gm::argumentprotected
_validitystan::gm::singleton_argument< T >protected
_valuestan::gm::singleton_argument< T >protected
_value_typestan::gm::valued_argumentprotected
arg(const std::string name)stan::gm::argumentinlinevirtual
arg_adapt_gamma()stan::gm::arg_adapt_gammainline
argument()stan::gm::argumentinline
argument(const std::string name)stan::gm::argumentinline
compute_indent(const int depth)stan::gm::argumentinline
description() const stan::gm::argumentinline
find_arg(std::string name, std::string prefix, std::vector< std::string > &valid_paths)stan::gm::singleton_argument< T >inlinevirtual
help_widthstan::gm::argumentprotected
indent_widthstan::gm::argumentprotected
is_default()stan::gm::singleton_argument< T >inlinevirtual
is_valid(double value)stan::gm::arg_adapt_gammainline
stan::gm::singleton_argument::is_valid(T value)stan::gm::singleton_argument< T >inlineprotectedvirtual
name() const stan::gm::argumentinline
parse_args(std::vector< std::string > &args, std::ostream *out, std::ostream *err, bool &help_flag)stan::gm::singleton_argument< T >inlinevirtual
print(std::ostream *s, const int depth, const std::string prefix)stan::gm::valued_argumentinlinevirtual
print_help(std::ostream *s, const int depth, const bool recurse=false)stan::gm::valued_argumentinlinevirtual
print_valid()stan::gm::singleton_argument< T >inlinevirtual
print_value()stan::gm::singleton_argument< T >inlinevirtual
probe_args(argument *base_arg, std::stringstream &s)stan::gm::singleton_argument< T >inlinevirtual
set_value(const T &value)stan::gm::singleton_argument< T >inline
singleton_argument()stan::gm::singleton_argument< T >inline
singleton_argument(const std::string name)stan::gm::singleton_argument< T >inline
split_arg(const std::string &arg, std::string &name, std::string &value)stan::gm::argumentinlinestatic
value()stan::gm::singleton_argument< T >inline
~argument()stan::gm::argumentinlinevirtual
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1gm_1_1arg__adapt__gamma.html b/doc/api/html/classstan_1_1gm_1_1arg__adapt__gamma.html new file mode 100644 index 00000000000..5a5b6b95428 --- /dev/null +++ b/doc/api/html/classstan_1_1gm_1_1arg__adapt__gamma.html @@ -0,0 +1,255 @@ + + + + + +Stan: stan::gm::arg_adapt_gamma Class Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::gm::arg_adapt_gamma Class Reference
+
+
+ +

#include <arg_adapt_gamma.hpp>

+
+Inheritance diagram for stan::gm::arg_adapt_gamma:
+
+
+ + +stan::gm::singleton_argument< T > +stan::gm::valued_argument +stan::gm::argument + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 arg_adapt_gamma ()
 
bool is_valid (double value)
 
- Public Member Functions inherited from stan::gm::singleton_argument< T >
 singleton_argument ()
 
 singleton_argument (const std::string name)
 
bool parse_args (std::vector< std::string > &args, std::ostream *out, std::ostream *err, bool &help_flag)
 
virtual void probe_args (argument *base_arg, std::stringstream &s)
 
void find_arg (std::string name, std::string prefix, std::vector< std::string > &valid_paths)
 
value ()
 
bool set_value (const T &value)
 
std::string print_value ()
 
std::string print_valid ()
 
bool is_default ()
 
- Public Member Functions inherited from stan::gm::valued_argument
virtual void print (std::ostream *s, const int depth, const std::string prefix)
 
virtual void print_help (std::ostream *s, const int depth, const bool recurse=false)
 
- Public Member Functions inherited from stan::gm::argument
 argument ()
 
 argument (const std::string name)
 
virtual ~argument ()
 
std::string name () const
 
std::string description () const
 
virtual argumentarg (const std::string name)
 
int compute_indent (const int depth)
 
+ + + + + + + + + + + + + + + + + + + + +

+Additional Inherited Members

- Static Public Member Functions inherited from stan::gm::argument
static void split_arg (const std::string &arg, std::string &name, std::string &value)
 
- Protected Member Functions inherited from stan::gm::singleton_argument< T >
virtual bool is_valid (T value)
 
- Protected Attributes inherited from stan::gm::singleton_argument< T >
std::string _validity
 
_value
 
_default_value
 
bool _constrained
 
_good_value
 
_bad_value
 
+

Detailed Description

+
+

Definition at line 10 of file arg_adapt_gamma.hpp.

+

Constructor & Destructor Documentation

+ +
+
+ + + + + +
+ + + + + + + +
stan::gm::arg_adapt_gamma::arg_adapt_gamma ()
+
+inline
+
+ +

Definition at line 14 of file arg_adapt_gamma.hpp.

+ +
+
+

Member Function Documentation

+ +
+
+ + + + + +
+ + + + + + + + +
bool stan::gm::arg_adapt_gamma::is_valid (double value)
+
+inline
+
+ +

Definition at line 26 of file arg_adapt_gamma.hpp.

+ +
+
+
The documentation for this class was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1gm_1_1arg__adapt__gamma.png b/doc/api/html/classstan_1_1gm_1_1arg__adapt__gamma.png new file mode 100644 index 0000000000000000000000000000000000000000..738d4c59b7e336dc9f769c7ab86488283d037ec0 GIT binary patch literal 1527 zcma)6doPgcrvA*8N zAkw0*0(M~cLm;qpch^JMM49QL>05MTHAuk|xVQxX(CP_T|+P3U@ zNCH^j;2cLJ)Cx-knsJ6VN+$*_bqeX`vRKEFU7!J1J$pHtoCo*Zi)8GiC%*_))IDe< zpt*oG6Za`vQ!}}xRhiblaLV&O#&{K=H~VW83)A^*X!>KPgP?`RslhlQ z!MiH4;7K!;gg7XD9ru+hu{copl&;chaX^MMb6)mzT0AzYo=hC@X)bs&D$Jo&b0CZV z2iR|spGBnyYYS5kv0$4M_F~gS;g#tos>9dH*yP<^!*wg?lNmt1cnR0qd@L_&Nq-Y> zv|b9DT24AsQgvD!e6wEJBkV{U_s_AIafi>l?o3ePJAn_|UOqg;+{d5h@poTfx<1{W`TPRXZ!jX;UPq9+h5`Q@DyhX~j$0zK{6DBTdWi9w!v$4NTbneA~Ct z(#0n*+jus{uCS5=TrEWId1vckj!eNN*p#!)N&o}&MSBrS%;R6dujSruWEZJZ;)^Cr z%ia>wut8&&q>HNl3;#zoTmaCL>1z152Q{qw+K(e{V|QUlH4|9VS4vH} zV@9KPTsBmXtB~07YQmVK!ryKGxkhkF@P*+^E%xYnzARCAOm<)GpDdMwS&!BRQb|ha x1xS11eGXJNCKM{W8oc>2@?NEE(Z{|?c^`3OxT07MDgDwAca*m)!}-MJzX3-u_4@z- literal 0 HcmV?d00001 diff --git a/doc/api/html/classstan_1_1gm_1_1arg__adapt__init__buffer-members.html b/doc/api/html/classstan_1_1gm_1_1arg__adapt__init__buffer-members.html new file mode 100644 index 00000000000..9efd1b74c6a --- /dev/null +++ b/doc/api/html/classstan_1_1gm_1_1arg__adapt__init__buffer-members.html @@ -0,0 +1,146 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::gm::arg_adapt_init_buffer Member List
+
+
+ +

This is the complete list of members for stan::gm::arg_adapt_init_buffer, including all inherited members.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
_bad_valuestan::gm::singleton_argument< T >protected
_constrainedstan::gm::singleton_argument< T >protected
_defaultstan::gm::valued_argumentprotected
_default_valuestan::gm::singleton_argument< T >protected
_descriptionstan::gm::argumentprotected
_good_valuestan::gm::singleton_argument< T >protected
_namestan::gm::argumentprotected
_validitystan::gm::singleton_argument< T >protected
_valuestan::gm::singleton_argument< T >protected
_value_typestan::gm::valued_argumentprotected
arg(const std::string name)stan::gm::argumentinlinevirtual
arg_adapt_init_buffer()stan::gm::arg_adapt_init_bufferinline
argument()stan::gm::argumentinline
argument(const std::string name)stan::gm::argumentinline
compute_indent(const int depth)stan::gm::argumentinline
description() const stan::gm::argumentinline
find_arg(std::string name, std::string prefix, std::vector< std::string > &valid_paths)stan::gm::singleton_argument< T >inlinevirtual
help_widthstan::gm::argumentprotected
indent_widthstan::gm::argumentprotected
is_default()stan::gm::singleton_argument< T >inlinevirtual
is_valid(T value)stan::gm::singleton_argument< T >inlineprotectedvirtual
name() const stan::gm::argumentinline
parse_args(std::vector< std::string > &args, std::ostream *out, std::ostream *err, bool &help_flag)stan::gm::singleton_argument< T >inlinevirtual
print(std::ostream *s, const int depth, const std::string prefix)stan::gm::valued_argumentinlinevirtual
print_help(std::ostream *s, const int depth, const bool recurse=false)stan::gm::valued_argumentinlinevirtual
print_valid()stan::gm::singleton_argument< T >inlinevirtual
print_value()stan::gm::singleton_argument< T >inlinevirtual
probe_args(argument *base_arg, std::stringstream &s)stan::gm::singleton_argument< T >inlinevirtual
set_value(const T &value)stan::gm::singleton_argument< T >inline
singleton_argument()stan::gm::singleton_argument< T >inline
singleton_argument(const std::string name)stan::gm::singleton_argument< T >inline
split_arg(const std::string &arg, std::string &name, std::string &value)stan::gm::argumentinlinestatic
value()stan::gm::singleton_argument< T >inline
~argument()stan::gm::argumentinlinevirtual
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1gm_1_1arg__adapt__init__buffer.html b/doc/api/html/classstan_1_1gm_1_1arg__adapt__init__buffer.html new file mode 100644 index 00000000000..ff5f49f6e1c --- /dev/null +++ b/doc/api/html/classstan_1_1gm_1_1arg__adapt__init__buffer.html @@ -0,0 +1,226 @@ + + + + + +Stan: stan::gm::arg_adapt_init_buffer Class Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::gm::arg_adapt_init_buffer Class Reference
+
+
+ +

#include <arg_adapt_init_buffer.hpp>

+
+Inheritance diagram for stan::gm::arg_adapt_init_buffer:
+
+
+ + +stan::gm::singleton_argument< T > +stan::gm::valued_argument +stan::gm::argument + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 arg_adapt_init_buffer ()
 
- Public Member Functions inherited from stan::gm::singleton_argument< T >
 singleton_argument ()
 
 singleton_argument (const std::string name)
 
bool parse_args (std::vector< std::string > &args, std::ostream *out, std::ostream *err, bool &help_flag)
 
virtual void probe_args (argument *base_arg, std::stringstream &s)
 
void find_arg (std::string name, std::string prefix, std::vector< std::string > &valid_paths)
 
value ()
 
bool set_value (const T &value)
 
std::string print_value ()
 
std::string print_valid ()
 
bool is_default ()
 
- Public Member Functions inherited from stan::gm::valued_argument
virtual void print (std::ostream *s, const int depth, const std::string prefix)
 
virtual void print_help (std::ostream *s, const int depth, const bool recurse=false)
 
- Public Member Functions inherited from stan::gm::argument
 argument ()
 
 argument (const std::string name)
 
virtual ~argument ()
 
std::string name () const
 
std::string description () const
 
virtual argumentarg (const std::string name)
 
int compute_indent (const int depth)
 
+ + + + + + + + + + + + + + + + + + + + +

+Additional Inherited Members

- Static Public Member Functions inherited from stan::gm::argument
static void split_arg (const std::string &arg, std::string &name, std::string &value)
 
- Protected Member Functions inherited from stan::gm::singleton_argument< T >
virtual bool is_valid (T value)
 
- Protected Attributes inherited from stan::gm::singleton_argument< T >
std::string _validity
 
_value
 
_default_value
 
bool _constrained
 
_good_value
 
_bad_value
 
+

Detailed Description

+
+

Definition at line 10 of file arg_adapt_init_buffer.hpp.

+

Constructor & Destructor Documentation

+ +
+
+ + + + + +
+ + + + + + + +
stan::gm::arg_adapt_init_buffer::arg_adapt_init_buffer ()
+
+inline
+
+ +

Definition at line 14 of file arg_adapt_init_buffer.hpp.

+ +
+
+
The documentation for this class was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1gm_1_1arg__adapt__init__buffer.png b/doc/api/html/classstan_1_1gm_1_1arg__adapt__init__buffer.png new file mode 100644 index 0000000000000000000000000000000000000000..27f740a39b0b0c233d8f75884d25cdec96175de4 GIT binary patch literal 1667 zcmcgtYc$kp82_7*``An=v~%44My1V;8ES|TQ#1c^$)yX2#gN_9G8keR9EYsjO~_rO z8ZqQHBG+t+a$71Uv2Ai|SeF?L!~XSQKkV+8{j%>l@B4e+bAHcx&iOs>?|I|T*-%h& zYH|Popdc#Q9snd{;kZo(37;BR?*bT9&RIF0+TPxV!|Bh0pp=eOIQp{N+S+!-zf*^= zG7Nhg2LLARtl@4)0|1ahL*$c=Arkz2e!y}$S~Bk5;nm0&l{C$EEwHD06C{4`g133u zg+LvN%n0liuGmRc;bd7rv{eTfRn(V81=N?t1J)l(z(GP^ZG?4A#3nmq+;I7#gJ=!6 zzcS;F$ANN!bVE;}2F|wG$tt?2dh~Ky-Q*~Nk?iFo9ksEki56@c^|&M;qxviS$LS6V z^b%6AN%y{EO<`1;Zzxquas#g#Serxv(fy$eEbW^%=9X?~v9{9Evo-G+#^RJ81zJpD zyy0N6-F3B0@HFZT*E3dn!7wy;w{O6^_wz-Ie z&J(%b5wg+Uh|Ex~-iW@6$JM9$mk`-%3KKWSb?j2SYFhaQjfae^gQ<)jrz;A(6`PPQ ziyK@|B5#WNa;kBr%6HbNV{kT=JiW?-^~LK_75peC49rJ=`XaLOc&@H7TGKB^PkH|e z!M2kw>ntwj*;NZ0c|9*_#V#zd=weO0E#o8FQN73F zkZR22PN6Dre3GK}S-6@+2l~YA_<_n@6R7d86*bmsxX6jhx1be5238A*#-fQ+*QSm@ zq%>z|EBccTGF|omG+Ofn@mQ8yvjXVH(^1Ds<4$b_NgAi z^nPZdfp(H5!o80-9|sOP=Dx0E^MALk*yLoljt+J$l=275P=uQol zj;GLqp&|1zY>efjVD|8sXrqkZqPUT4QO|mRVO|igy~;!+gqUQqn91Zo6Qic8P8HVe zhhIT4PAge@Qe)ZAf-%}?y#yoA`95Y`=e(3}@&zz0s<#9`Fg%|hFTPUinNQkdG8I5? zx0snYW7di>jkT^Hc?|G2Y_xpBEv`d}OJt&_&ZFM-`s|^DcEYaeNRu2wb2H|ZHcm}b zIOo88UdH2=Bvpl)+>mJENmMNa`iV-jw(WJJDk|fQDYRUX#80Fj1ytHtaGpHskD-NF z<4~+<9eIt(QSP7Jp^eK0ZNc8s=lyRjwm$=pr*tsvgF9?dcG`|RixR;3E^hoK`Hskv z4@*+LnRoTJ*vepDsQQH!Mw25A;{@XJ^avelGPkmA!i2 z!KFKMX|P$psIcam(ePd}udhJ|v_+Gc7W3kQr`}TH z?#7x?+geIfQo{>Hq&WoyXO!KVFg;FY5Y3mEWT7Gl?c`NCn?cwsNrgX(d1oKk_|NDD@A(n*VBnMhsn zqhJD6i=JT8SE4K5DMF*G%OSST?@Toz_ywcNYcIn?QW;dE%?U(pi?$vj)i;lpJi0}xBvhE literal 0 HcmV?d00001 diff --git a/doc/api/html/classstan_1_1gm_1_1arg__adapt__kappa-members.html b/doc/api/html/classstan_1_1gm_1_1arg__adapt__kappa-members.html new file mode 100644 index 00000000000..fa9cb2d2326 --- /dev/null +++ b/doc/api/html/classstan_1_1gm_1_1arg__adapt__kappa-members.html @@ -0,0 +1,147 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::gm::arg_adapt_kappa Member List
+
+
+ +

This is the complete list of members for stan::gm::arg_adapt_kappa, including all inherited members.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
_bad_valuestan::gm::singleton_argument< T >protected
_constrainedstan::gm::singleton_argument< T >protected
_defaultstan::gm::valued_argumentprotected
_default_valuestan::gm::singleton_argument< T >protected
_descriptionstan::gm::argumentprotected
_good_valuestan::gm::singleton_argument< T >protected
_namestan::gm::argumentprotected
_validitystan::gm::singleton_argument< T >protected
_valuestan::gm::singleton_argument< T >protected
_value_typestan::gm::valued_argumentprotected
arg(const std::string name)stan::gm::argumentinlinevirtual
arg_adapt_kappa()stan::gm::arg_adapt_kappainline
argument()stan::gm::argumentinline
argument(const std::string name)stan::gm::argumentinline
compute_indent(const int depth)stan::gm::argumentinline
description() const stan::gm::argumentinline
find_arg(std::string name, std::string prefix, std::vector< std::string > &valid_paths)stan::gm::singleton_argument< T >inlinevirtual
help_widthstan::gm::argumentprotected
indent_widthstan::gm::argumentprotected
is_default()stan::gm::singleton_argument< T >inlinevirtual
is_valid(double value)stan::gm::arg_adapt_kappainline
stan::gm::singleton_argument::is_valid(T value)stan::gm::singleton_argument< T >inlineprotectedvirtual
name() const stan::gm::argumentinline
parse_args(std::vector< std::string > &args, std::ostream *out, std::ostream *err, bool &help_flag)stan::gm::singleton_argument< T >inlinevirtual
print(std::ostream *s, const int depth, const std::string prefix)stan::gm::valued_argumentinlinevirtual
print_help(std::ostream *s, const int depth, const bool recurse=false)stan::gm::valued_argumentinlinevirtual
print_valid()stan::gm::singleton_argument< T >inlinevirtual
print_value()stan::gm::singleton_argument< T >inlinevirtual
probe_args(argument *base_arg, std::stringstream &s)stan::gm::singleton_argument< T >inlinevirtual
set_value(const T &value)stan::gm::singleton_argument< T >inline
singleton_argument()stan::gm::singleton_argument< T >inline
singleton_argument(const std::string name)stan::gm::singleton_argument< T >inline
split_arg(const std::string &arg, std::string &name, std::string &value)stan::gm::argumentinlinestatic
value()stan::gm::singleton_argument< T >inline
~argument()stan::gm::argumentinlinevirtual
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1gm_1_1arg__adapt__kappa.html b/doc/api/html/classstan_1_1gm_1_1arg__adapt__kappa.html new file mode 100644 index 00000000000..7e71e646bb1 --- /dev/null +++ b/doc/api/html/classstan_1_1gm_1_1arg__adapt__kappa.html @@ -0,0 +1,255 @@ + + + + + +Stan: stan::gm::arg_adapt_kappa Class Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::gm::arg_adapt_kappa Class Reference
+
+
+ +

#include <arg_adapt_kappa.hpp>

+
+Inheritance diagram for stan::gm::arg_adapt_kappa:
+
+
+ + +stan::gm::singleton_argument< T > +stan::gm::valued_argument +stan::gm::argument + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 arg_adapt_kappa ()
 
bool is_valid (double value)
 
- Public Member Functions inherited from stan::gm::singleton_argument< T >
 singleton_argument ()
 
 singleton_argument (const std::string name)
 
bool parse_args (std::vector< std::string > &args, std::ostream *out, std::ostream *err, bool &help_flag)
 
virtual void probe_args (argument *base_arg, std::stringstream &s)
 
void find_arg (std::string name, std::string prefix, std::vector< std::string > &valid_paths)
 
value ()
 
bool set_value (const T &value)
 
std::string print_value ()
 
std::string print_valid ()
 
bool is_default ()
 
- Public Member Functions inherited from stan::gm::valued_argument
virtual void print (std::ostream *s, const int depth, const std::string prefix)
 
virtual void print_help (std::ostream *s, const int depth, const bool recurse=false)
 
- Public Member Functions inherited from stan::gm::argument
 argument ()
 
 argument (const std::string name)
 
virtual ~argument ()
 
std::string name () const
 
std::string description () const
 
virtual argumentarg (const std::string name)
 
int compute_indent (const int depth)
 
+ + + + + + + + + + + + + + + + + + + + +

+Additional Inherited Members

- Static Public Member Functions inherited from stan::gm::argument
static void split_arg (const std::string &arg, std::string &name, std::string &value)
 
- Protected Member Functions inherited from stan::gm::singleton_argument< T >
virtual bool is_valid (T value)
 
- Protected Attributes inherited from stan::gm::singleton_argument< T >
std::string _validity
 
_value
 
_default_value
 
bool _constrained
 
_good_value
 
_bad_value
 
+

Detailed Description

+
+

Definition at line 10 of file arg_adapt_kappa.hpp.

+

Constructor & Destructor Documentation

+ +
+
+ + + + + +
+ + + + + + + +
stan::gm::arg_adapt_kappa::arg_adapt_kappa ()
+
+inline
+
+ +

Definition at line 14 of file arg_adapt_kappa.hpp.

+ +
+
+

Member Function Documentation

+ +
+
+ + + + + +
+ + + + + + + + +
bool stan::gm::arg_adapt_kappa::is_valid (double value)
+
+inline
+
+ +

Definition at line 26 of file arg_adapt_kappa.hpp.

+ +
+
+
The documentation for this class was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1gm_1_1arg__adapt__kappa.png b/doc/api/html/classstan_1_1gm_1_1arg__adapt__kappa.png new file mode 100644 index 0000000000000000000000000000000000000000..fd019ac334b935aa279f7f07892dadbc0aae7014 GIT binary patch literal 1518 zcma)6do|cG)x!-&5IrrRi?&otqH_64xR&4`j z0{{SOb|TYL7DNY^8t;VgczC5(kRqjB}b4hP9yRyxb!C-|) z1!^)y7^4y&1`q1Pc!PXGySp0XE50`74bB}FHKZF2eQb@9>7|(Ki}j&>^{Da_dD`Q`zEIa(;E2eIyHaQJ67gfop z=4MKS?nuQ4cSP^)(0+SB#jpiaoCN0|w$4ZA35*dKnh>;f*XVUjnbZ8H0ebPEd|gP`a+l zhO7{r!rRb+@!pzGc#5+K`CmcoZ+@E05I8?ZVXgfo5P1`2ODJiurH%E@5babR6ha4!1wN)PVo%#4ACs8%W=h+>&;&a;) z!SOD+p!Q5VpYUCFyfIGdMh$Vza`UO%ixk&I@}N-Z?-~y%5!9N^V9yKUoO&9?UDBZ> zBKELrOAWQhAmNcC{k3P#>vd)?#2``sGTE?nqfOK+tX8%2U_31itDo06C#ovuz7!m zT|yAq3#rP^Zv_{936x4XaYkj6Kl6K^*vH+J$DSnBJgj{ox}>UID~nx^i?4g`_AuVM z$eK!G%5cAs%BhoB&iP$gSZURAGx3(Z0X8?_HP}3gQh{rc4Y{U>RC}xRE*OR$r$wrg zUb@x=6aIQl=Lg4~Ba`n78xTvv>XvHe`S?;Han_lRXK><5E7G-OqyXclnC*D4FDDbW zk?+8P3Qo`m6UHsKQ@Qs_ctV^s!c^-a3^^a6pJbw*_cVzic*PJ=2tS zowS^pAfPy_5Co}nZrzh*$Dr~EQ&bK;YkN9|vK3C&X8P601J8tN!x%5yIlAEHB#k)D zC5P9iQ_Eps>RV;-l`W~YrLqX44)83#>L#otZ#9&pk)?!ndIQSg`h{Fh7{_OXzWwagZF8dgeS zMv%%(th9j&oNQT{<51RxT`+(RP?)b%KTnasp#>72FWTOKWWyCU?S`?u4EYxPXRWiI z + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::gm::arg_adapt_t0 Member List
+
+
+ +

This is the complete list of members for stan::gm::arg_adapt_t0, including all inherited members.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
_bad_valuestan::gm::singleton_argument< T >protected
_constrainedstan::gm::singleton_argument< T >protected
_defaultstan::gm::valued_argumentprotected
_default_valuestan::gm::singleton_argument< T >protected
_descriptionstan::gm::argumentprotected
_good_valuestan::gm::singleton_argument< T >protected
_namestan::gm::argumentprotected
_validitystan::gm::singleton_argument< T >protected
_valuestan::gm::singleton_argument< T >protected
_value_typestan::gm::valued_argumentprotected
arg(const std::string name)stan::gm::argumentinlinevirtual
arg_adapt_t0()stan::gm::arg_adapt_t0inline
argument()stan::gm::argumentinline
argument(const std::string name)stan::gm::argumentinline
compute_indent(const int depth)stan::gm::argumentinline
description() const stan::gm::argumentinline
find_arg(std::string name, std::string prefix, std::vector< std::string > &valid_paths)stan::gm::singleton_argument< T >inlinevirtual
help_widthstan::gm::argumentprotected
indent_widthstan::gm::argumentprotected
is_default()stan::gm::singleton_argument< T >inlinevirtual
is_valid(double value)stan::gm::arg_adapt_t0inline
stan::gm::singleton_argument::is_valid(T value)stan::gm::singleton_argument< T >inlineprotectedvirtual
name() const stan::gm::argumentinline
parse_args(std::vector< std::string > &args, std::ostream *out, std::ostream *err, bool &help_flag)stan::gm::singleton_argument< T >inlinevirtual
print(std::ostream *s, const int depth, const std::string prefix)stan::gm::valued_argumentinlinevirtual
print_help(std::ostream *s, const int depth, const bool recurse=false)stan::gm::valued_argumentinlinevirtual
print_valid()stan::gm::singleton_argument< T >inlinevirtual
print_value()stan::gm::singleton_argument< T >inlinevirtual
probe_args(argument *base_arg, std::stringstream &s)stan::gm::singleton_argument< T >inlinevirtual
set_value(const T &value)stan::gm::singleton_argument< T >inline
singleton_argument()stan::gm::singleton_argument< T >inline
singleton_argument(const std::string name)stan::gm::singleton_argument< T >inline
split_arg(const std::string &arg, std::string &name, std::string &value)stan::gm::argumentinlinestatic
value()stan::gm::singleton_argument< T >inline
~argument()stan::gm::argumentinlinevirtual
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1gm_1_1arg__adapt__t0.html b/doc/api/html/classstan_1_1gm_1_1arg__adapt__t0.html new file mode 100644 index 00000000000..770ced7cacf --- /dev/null +++ b/doc/api/html/classstan_1_1gm_1_1arg__adapt__t0.html @@ -0,0 +1,255 @@ + + + + + +Stan: stan::gm::arg_adapt_t0 Class Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::gm::arg_adapt_t0 Class Reference
+
+
+ +

#include <arg_adapt_t0.hpp>

+
+Inheritance diagram for stan::gm::arg_adapt_t0:
+
+
+ + +stan::gm::singleton_argument< T > +stan::gm::valued_argument +stan::gm::argument + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 arg_adapt_t0 ()
 
bool is_valid (double value)
 
- Public Member Functions inherited from stan::gm::singleton_argument< T >
 singleton_argument ()
 
 singleton_argument (const std::string name)
 
bool parse_args (std::vector< std::string > &args, std::ostream *out, std::ostream *err, bool &help_flag)
 
virtual void probe_args (argument *base_arg, std::stringstream &s)
 
void find_arg (std::string name, std::string prefix, std::vector< std::string > &valid_paths)
 
value ()
 
bool set_value (const T &value)
 
std::string print_value ()
 
std::string print_valid ()
 
bool is_default ()
 
- Public Member Functions inherited from stan::gm::valued_argument
virtual void print (std::ostream *s, const int depth, const std::string prefix)
 
virtual void print_help (std::ostream *s, const int depth, const bool recurse=false)
 
- Public Member Functions inherited from stan::gm::argument
 argument ()
 
 argument (const std::string name)
 
virtual ~argument ()
 
std::string name () const
 
std::string description () const
 
virtual argumentarg (const std::string name)
 
int compute_indent (const int depth)
 
+ + + + + + + + + + + + + + + + + + + + +

+Additional Inherited Members

- Static Public Member Functions inherited from stan::gm::argument
static void split_arg (const std::string &arg, std::string &name, std::string &value)
 
- Protected Member Functions inherited from stan::gm::singleton_argument< T >
virtual bool is_valid (T value)
 
- Protected Attributes inherited from stan::gm::singleton_argument< T >
std::string _validity
 
_value
 
_default_value
 
bool _constrained
 
_good_value
 
_bad_value
 
+

Detailed Description

+
+

Definition at line 10 of file arg_adapt_t0.hpp.

+

Constructor & Destructor Documentation

+ +
+
+ + + + + +
+ + + + + + + +
stan::gm::arg_adapt_t0::arg_adapt_t0 ()
+
+inline
+
+ +

Definition at line 14 of file arg_adapt_t0.hpp.

+ +
+
+

Member Function Documentation

+ +
+
+ + + + + +
+ + + + + + + + +
bool stan::gm::arg_adapt_t0::is_valid (double value)
+
+inline
+
+ +

Definition at line 26 of file arg_adapt_t0.hpp.

+ +
+
+
The documentation for this class was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1gm_1_1arg__adapt__t0.png b/doc/api/html/classstan_1_1gm_1_1arg__adapt__t0.png new file mode 100644 index 0000000000000000000000000000000000000000..62bf225fa9b7f12b706b5dca86a7d9fc9b6767ea GIT binary patch literal 1488 zcmaKsdoWvh6vr>BY+GelZEaL^YS)`8iK1jt&mvNCDfMWVw&J~ri1A3bx>hS5^(yO4 zRjx@4%C^EbrKK$OnlP<+wDG8`BGYavOSqfvjDL2v`8gtXBCV?K}zFyrQmoN2_n?ud8OJ zhb<2KrIi^Hvv_q;H*^M?%>9kDS84|riD_juTlGzGJqn{Q;5X?K1uszLN`?aWk=G?{ES(CZN;+-8?w8oWrpErq< zF_;kg#q}x9Be_v8dyx`rn*|AkmLsF-MUNZGiS6*M0d3;^$_MtAcnwL;glAIk(Llu3 z6YRj0LlGn%$Y!lUz``~UfNRj)8768vg}Bk!@zA&7m9?oI6$8>H!Xe<^I8o+YJwvw0 z*+*WF-gtn3@>HwAlpENQ{v}AwXRUQv*Z456H$nlZPg8==D?u%-Rw6hV(!hXR<6hgO zyIz~cTh&X;^OdiU=uVpBpPS?qmZQ|oUVgkp+;;S-wJ+X5w zq}2x+BgP2=CO>oa+I_i`%p^m2VyJzfA?3N@Jjm6Y6FWl7fhd6kmuwE&I?YG6X{Kmb zz~zP%5kt8PK6NyU-9-a4iuVu*prC0o2nf?+05TyDUiYO(+Cr4cfIvggfJs-}lvc?viGO01qh zj7}qhL-)lI$R;KUrKa%emPPO}zH#9jwKr70(58~=QSmfB$TQcUeBnd@COkgJ-*a$Z zP%a&bcD`+K$yNVR88iQxM)kX*$hIMa*VI;5YhO?3IJ&yADsW`j?1{wJH+HZp+%->f zP1N);ed5_Nl_cXelYz$?ETpzt^>@N?+XU?3i55fw3Ke@;#JFz{t~Uu{o86`JfY}v1 z?)n`W~nhc4<90+ zKjZq({+8CanJO?1Ajs`Cb~93T5(1n8O(Z)TEd{dO9K@sJH~Hl2(;$M5MRKwf(v*)l zp>RL&^>;HzBO9w9t-gpmmHRM?|K}A+7ks?c<}HpXRwwJshPyY``jh%EPyB);`(=^% zi#FMMBBKs}N^t^8+iaIETQ#)a0Gr0UW9bDFksL&o`QBH_4v$OUUa3ARtc`dth=F!v z=eVu30kqX-zka3E@_waN-2#sL#i|o8+{0|O7N~O)mh3yBrQpVwe!3sO;SP{3(k!<# zfXKR88+G}(T;+9`Ka9@-9_Ej#nR2}Lc0@l + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::gm::arg_adapt_term_buffer Member List
+
+
+ +

This is the complete list of members for stan::gm::arg_adapt_term_buffer, including all inherited members.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
_bad_valuestan::gm::singleton_argument< T >protected
_constrainedstan::gm::singleton_argument< T >protected
_defaultstan::gm::valued_argumentprotected
_default_valuestan::gm::singleton_argument< T >protected
_descriptionstan::gm::argumentprotected
_good_valuestan::gm::singleton_argument< T >protected
_namestan::gm::argumentprotected
_validitystan::gm::singleton_argument< T >protected
_valuestan::gm::singleton_argument< T >protected
_value_typestan::gm::valued_argumentprotected
arg(const std::string name)stan::gm::argumentinlinevirtual
arg_adapt_term_buffer()stan::gm::arg_adapt_term_bufferinline
argument()stan::gm::argumentinline
argument(const std::string name)stan::gm::argumentinline
compute_indent(const int depth)stan::gm::argumentinline
description() const stan::gm::argumentinline
find_arg(std::string name, std::string prefix, std::vector< std::string > &valid_paths)stan::gm::singleton_argument< T >inlinevirtual
help_widthstan::gm::argumentprotected
indent_widthstan::gm::argumentprotected
is_default()stan::gm::singleton_argument< T >inlinevirtual
is_valid(T value)stan::gm::singleton_argument< T >inlineprotectedvirtual
name() const stan::gm::argumentinline
parse_args(std::vector< std::string > &args, std::ostream *out, std::ostream *err, bool &help_flag)stan::gm::singleton_argument< T >inlinevirtual
print(std::ostream *s, const int depth, const std::string prefix)stan::gm::valued_argumentinlinevirtual
print_help(std::ostream *s, const int depth, const bool recurse=false)stan::gm::valued_argumentinlinevirtual
print_valid()stan::gm::singleton_argument< T >inlinevirtual
print_value()stan::gm::singleton_argument< T >inlinevirtual
probe_args(argument *base_arg, std::stringstream &s)stan::gm::singleton_argument< T >inlinevirtual
set_value(const T &value)stan::gm::singleton_argument< T >inline
singleton_argument()stan::gm::singleton_argument< T >inline
singleton_argument(const std::string name)stan::gm::singleton_argument< T >inline
split_arg(const std::string &arg, std::string &name, std::string &value)stan::gm::argumentinlinestatic
value()stan::gm::singleton_argument< T >inline
~argument()stan::gm::argumentinlinevirtual
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1gm_1_1arg__adapt__term__buffer.html b/doc/api/html/classstan_1_1gm_1_1arg__adapt__term__buffer.html new file mode 100644 index 00000000000..9382ea9c81e --- /dev/null +++ b/doc/api/html/classstan_1_1gm_1_1arg__adapt__term__buffer.html @@ -0,0 +1,226 @@ + + + + + +Stan: stan::gm::arg_adapt_term_buffer Class Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::gm::arg_adapt_term_buffer Class Reference
+
+
+ +

#include <arg_adapt_term_buffer.hpp>

+
+Inheritance diagram for stan::gm::arg_adapt_term_buffer:
+
+
+ + +stan::gm::singleton_argument< T > +stan::gm::valued_argument +stan::gm::argument + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 arg_adapt_term_buffer ()
 
- Public Member Functions inherited from stan::gm::singleton_argument< T >
 singleton_argument ()
 
 singleton_argument (const std::string name)
 
bool parse_args (std::vector< std::string > &args, std::ostream *out, std::ostream *err, bool &help_flag)
 
virtual void probe_args (argument *base_arg, std::stringstream &s)
 
void find_arg (std::string name, std::string prefix, std::vector< std::string > &valid_paths)
 
value ()
 
bool set_value (const T &value)
 
std::string print_value ()
 
std::string print_valid ()
 
bool is_default ()
 
- Public Member Functions inherited from stan::gm::valued_argument
virtual void print (std::ostream *s, const int depth, const std::string prefix)
 
virtual void print_help (std::ostream *s, const int depth, const bool recurse=false)
 
- Public Member Functions inherited from stan::gm::argument
 argument ()
 
 argument (const std::string name)
 
virtual ~argument ()
 
std::string name () const
 
std::string description () const
 
virtual argumentarg (const std::string name)
 
int compute_indent (const int depth)
 
+ + + + + + + + + + + + + + + + + + + + +

+Additional Inherited Members

- Static Public Member Functions inherited from stan::gm::argument
static void split_arg (const std::string &arg, std::string &name, std::string &value)
 
- Protected Member Functions inherited from stan::gm::singleton_argument< T >
virtual bool is_valid (T value)
 
- Protected Attributes inherited from stan::gm::singleton_argument< T >
std::string _validity
 
_value
 
_default_value
 
bool _constrained
 
_good_value
 
_bad_value
 
+

Detailed Description

+
+

Definition at line 10 of file arg_adapt_term_buffer.hpp.

+

Constructor & Destructor Documentation

+ +
+
+ + + + + +
+ + + + + + + +
stan::gm::arg_adapt_term_buffer::arg_adapt_term_buffer ()
+
+inline
+
+ +

Definition at line 14 of file arg_adapt_term_buffer.hpp.

+ +
+
+
The documentation for this class was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1gm_1_1arg__adapt__term__buffer.png b/doc/api/html/classstan_1_1gm_1_1arg__adapt__term__buffer.png new file mode 100644 index 0000000000000000000000000000000000000000..bdf156ba9161f5f968af20c83b7dc35c89f53217 GIT binary patch literal 1676 zcmbW2X;hL~7{_0CAEp%GMS<*DlILsT*#1Alo%^@6qkAF!}Mjo%-nPC{Xh4d=iU$h=l-6{4D=@~ z);HD%0AMi;;e!DHrH8~qU2SAtjg2Zm1QX~N>N__#hlGP8V+m;w*hutk3WdV?%(1V}bni#?Ym?cIU7xWH#D@C( zE6)HO%^({}q^LONgG;g-;HBupo1c-jK3oIW2(ex&E4FzjC6 zy+V8cU|J6=^3uakz1A)@_qJQkSI6K!Mw_V8ZG8q_#bgJt8tZ zvz9ZqC&s&P3?g3}O~<%*_p%nFg$c7SmB5B^+0Ok=;Lgpk} z+jKI1VN&^wRgLz0$y?A*3&QDf0S*=|=r|@>1ABjRhHvk%O!^C_&t<=M`(-U6%Oef2 z7IsfTzb(NW_(}>7!|{6ng4T#7&^F{2cE%C(za@?~K(E8fH_<{-$C3Ob z&GFSkTIl)j-Ip{RG+XjMWyc3&bfj_pabi23%m|YwzL;JyaOO)}k^LSI!BR>ezt7Ol z_p+7q3sk|xKJeq)l*tuPm|<0m=dJ$QLn)5uiPa#^5hJvxXX8CN;S3qB-tIhB2dtML zcUz!)p$BzvR9zFXscQgwKHx#^T$ivaJT@U4ubAMjq}*|}ffmIPe#H5_Jxj%&bQId( zUl%|HgL|RfYn%te3!e1p<7bMys*fmRYa}^xe4VvgxpR+41;e11H4dc~-zD5A(fu<+ z+Gqwe(@AN72hr3(cgmDG;|iP**SK{mRVICaxjLCtOk5~5xxc~G=QAlzM<_k4@c?mD z3(D1abD$iYscizEu44ipp4lQkx6gZ^k&KQ1!|v~O5veSLV))}m3!$SuY)d2Vv4+y*Iw6xpYbGhhSA2;>r=CK-xl~Q zaXE&Od*i{NtCAB2>G(yMn>gmFV_{dxKeQEf*56T(XJ~Ke#0xZng^V|mNuYgxLMs$m zN?Bt^3ayrro5@BUm;U?x;f!3oc}ZzCvH7Ctv1QbAS=}o3hHhccD>115@@Fcx z{#}V{yw~Lo9h0u{C!BPQ95M}V^~<_mg>**dB`>UMQZ2vz*ybx+WEIu2J*?l0yV zTZ?D+jK>k6c6HY>bLK1EI%1(BWLHm0vW~F2wQAa>@X2sR7mHGaGM{P;v}whAGm;ux1zN=i74xbl_7$~A4U!md5k7nnT;{Re(r*ZM zHSB_?;u$a}7L5{R2O(80)l1QcE#<$l^u4&>pkqpXi!*{phDt2qanT1Qq@v4F>UEgEc!Yg;pAV!cc+A>*1oQ| zW+8H#@=6vAk9gex^GCUt^RhC_Y@_!oJ)|8cV{#Kcsl!&K7W*!`pXtuU*sIG9&^dTd zMtDCxvS+2zrn97nV9LFyJ+i=z!{+@?pFLGUngp43^5~Nrf11jK`i}S1 LfBda2hkpGV_W=;B literal 0 HcmV?d00001 diff --git a/doc/api/html/classstan_1_1gm_1_1arg__adapt__window-members.html b/doc/api/html/classstan_1_1gm_1_1arg__adapt__window-members.html new file mode 100644 index 00000000000..9e58cdc4879 --- /dev/null +++ b/doc/api/html/classstan_1_1gm_1_1arg__adapt__window-members.html @@ -0,0 +1,146 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::gm::arg_adapt_window Member List
+
+
+ +

This is the complete list of members for stan::gm::arg_adapt_window, including all inherited members.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
_bad_valuestan::gm::singleton_argument< T >protected
_constrainedstan::gm::singleton_argument< T >protected
_defaultstan::gm::valued_argumentprotected
_default_valuestan::gm::singleton_argument< T >protected
_descriptionstan::gm::argumentprotected
_good_valuestan::gm::singleton_argument< T >protected
_namestan::gm::argumentprotected
_validitystan::gm::singleton_argument< T >protected
_valuestan::gm::singleton_argument< T >protected
_value_typestan::gm::valued_argumentprotected
arg(const std::string name)stan::gm::argumentinlinevirtual
arg_adapt_window()stan::gm::arg_adapt_windowinline
argument()stan::gm::argumentinline
argument(const std::string name)stan::gm::argumentinline
compute_indent(const int depth)stan::gm::argumentinline
description() const stan::gm::argumentinline
find_arg(std::string name, std::string prefix, std::vector< std::string > &valid_paths)stan::gm::singleton_argument< T >inlinevirtual
help_widthstan::gm::argumentprotected
indent_widthstan::gm::argumentprotected
is_default()stan::gm::singleton_argument< T >inlinevirtual
is_valid(T value)stan::gm::singleton_argument< T >inlineprotectedvirtual
name() const stan::gm::argumentinline
parse_args(std::vector< std::string > &args, std::ostream *out, std::ostream *err, bool &help_flag)stan::gm::singleton_argument< T >inlinevirtual
print(std::ostream *s, const int depth, const std::string prefix)stan::gm::valued_argumentinlinevirtual
print_help(std::ostream *s, const int depth, const bool recurse=false)stan::gm::valued_argumentinlinevirtual
print_valid()stan::gm::singleton_argument< T >inlinevirtual
print_value()stan::gm::singleton_argument< T >inlinevirtual
probe_args(argument *base_arg, std::stringstream &s)stan::gm::singleton_argument< T >inlinevirtual
set_value(const T &value)stan::gm::singleton_argument< T >inline
singleton_argument()stan::gm::singleton_argument< T >inline
singleton_argument(const std::string name)stan::gm::singleton_argument< T >inline
split_arg(const std::string &arg, std::string &name, std::string &value)stan::gm::argumentinlinestatic
value()stan::gm::singleton_argument< T >inline
~argument()stan::gm::argumentinlinevirtual
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1gm_1_1arg__adapt__window.html b/doc/api/html/classstan_1_1gm_1_1arg__adapt__window.html new file mode 100644 index 00000000000..9ff579f605c --- /dev/null +++ b/doc/api/html/classstan_1_1gm_1_1arg__adapt__window.html @@ -0,0 +1,226 @@ + + + + + +Stan: stan::gm::arg_adapt_window Class Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::gm::arg_adapt_window Class Reference
+
+
+ +

#include <arg_adapt_window.hpp>

+
+Inheritance diagram for stan::gm::arg_adapt_window:
+
+
+ + +stan::gm::singleton_argument< T > +stan::gm::valued_argument +stan::gm::argument + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 arg_adapt_window ()
 
- Public Member Functions inherited from stan::gm::singleton_argument< T >
 singleton_argument ()
 
 singleton_argument (const std::string name)
 
bool parse_args (std::vector< std::string > &args, std::ostream *out, std::ostream *err, bool &help_flag)
 
virtual void probe_args (argument *base_arg, std::stringstream &s)
 
void find_arg (std::string name, std::string prefix, std::vector< std::string > &valid_paths)
 
value ()
 
bool set_value (const T &value)
 
std::string print_value ()
 
std::string print_valid ()
 
bool is_default ()
 
- Public Member Functions inherited from stan::gm::valued_argument
virtual void print (std::ostream *s, const int depth, const std::string prefix)
 
virtual void print_help (std::ostream *s, const int depth, const bool recurse=false)
 
- Public Member Functions inherited from stan::gm::argument
 argument ()
 
 argument (const std::string name)
 
virtual ~argument ()
 
std::string name () const
 
std::string description () const
 
virtual argumentarg (const std::string name)
 
int compute_indent (const int depth)
 
+ + + + + + + + + + + + + + + + + + + + +

+Additional Inherited Members

- Static Public Member Functions inherited from stan::gm::argument
static void split_arg (const std::string &arg, std::string &name, std::string &value)
 
- Protected Member Functions inherited from stan::gm::singleton_argument< T >
virtual bool is_valid (T value)
 
- Protected Attributes inherited from stan::gm::singleton_argument< T >
std::string _validity
 
_value
 
_default_value
 
bool _constrained
 
_good_value
 
_bad_value
 
+

Detailed Description

+
+

Definition at line 10 of file arg_adapt_window.hpp.

+

Constructor & Destructor Documentation

+ +
+
+ + + + + +
+ + + + + + + +
stan::gm::arg_adapt_window::arg_adapt_window ()
+
+inline
+
+ +

Definition at line 14 of file arg_adapt_window.hpp.

+ +
+
+
The documentation for this class was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1gm_1_1arg__adapt__window.png b/doc/api/html/classstan_1_1gm_1_1arg__adapt__window.png new file mode 100644 index 0000000000000000000000000000000000000000..0bca64d806d0976dc3fd5dc8469d22aeba11f777 GIT binary patch literal 1635 zcmc&#X;4#F6n;UGO|T6hpezbc#e%3bC~FXmB~L@N2+B}t3Wf?rWQ}Ykgo;ZLNeKIz z3Mm2_izvtA&8Yd%tsMzH?^Ix$}LOdIImE zt+_=L003RX!eDp;=Y2$}RKnrZ%p!@_Mu($Mo6F^@QiW#l zRXxTFe-eO6YiqFE+ZF&+=OK)ncN}82L=YvtgTxda@p-MxOm27FcZtsC&%YzSzeo~j zTzyfq{xSOp_FyTx8aS{s0C|W3<*%nNppmNMVXf#U=ur-)VBT6VoV_@Ei$q@PA>3S) zJr_PARiy0a+ZvC5!MVgMPVmL0u!8Eu=7P?!;KJgr2O7ZevL`t5QTwT|P?v(*(_q#R zx}l*j+{xsrl}`AQ4K;q!AGw>)tjaGRj-z1^jx-rYqT29G$->8gUZaN0bZ?uFa*^** zIa}C1IO*P4*KsTm718W;0J~QC*1B;%?R2EVO07Yhj5jyYr<9n{fCizGe7vW~c)XM5 z0i2no73)w4=d$)`Z0iDXD%e8ofZuKZ+hCHAz#tZ3fVm*Oo!hHIR03ew-EE9>_ktTw zWr1)41i^D)FmP=kxT7Ey!XCBN$f9QxkuVW1^$)~1v6+>1rxI5xRrvX-5U`eh=%p&C z$&EI}w>X+|HHvt4VE4jQZIUNdNcMXd`&_Oc-4b8WXJ?(|cdc>mK*aUzvW{JQA0x<; zJZ#UaRJkU&N6S~5VdZeaFyQ*cX=^G@Yr~)EgdH#HiE*4rBmcC3P6YLW!`2&!wuuV*5@_RYBHLRnfI;|+l^ZabipgPEW(X`o^ct`Z8R7+B7C#U5m|MC zWszgBP=lY0P%R_B5cyWiWc9;6Q8$HYii=j(xk@{unPTu`q&;PF3FdMF|F^+=d6WV2p61=` z32HEq$W)IB?;MFecz+lIz~n3IxtUA-?-`aS!(X*l+8HDzDhBv+B@G#zJ9eO2u!4$HDPC1XC!RtdOsB z^*xZP3EI)uz(8(a4)nmkUxl=Hdstf7QL$ubEOvHG93inJ;u6N>O2?kJ4s3URrl9a9w1i=7Tp3W}kys{%pYKTs z?_9~4uG(r;1lLPEjzyzQTrT_9IoJcMQvCMNM~62->C?R0C%J8o!vgw1!6$B)5^rqz^-~*w4%_m?{AV5zL_K&+h476k~RO@L@ z`CzM=MIS(=?1MosNatT=^I!Be*Nn~fN^?o_2D?h_VR2zKKZ$X{oGRWgG1oE8EVAjI zIL@H!Ekq*wRh{D%D>{1Sy$_}H`hMZco?cN`=yRc=g^kP8v^<%t!M66&DTv P2mo{hkGbpq-A{i3GT;bZ literal 0 HcmV?d00001 diff --git a/doc/api/html/classstan_1_1gm_1_1arg__bfgs-members.html b/doc/api/html/classstan_1_1gm_1_1arg__bfgs-members.html new file mode 100644 index 00000000000..c34c7dd33bd --- /dev/null +++ b/doc/api/html/classstan_1_1gm_1_1arg__bfgs-members.html @@ -0,0 +1,133 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::gm::arg_bfgs Member List
+
+
+ +

This is the complete list of members for stan::gm::arg_bfgs, including all inherited members.

+ + + + + + + + + + + + + + + + + + + + + + +
_descriptionstan::gm::argumentprotected
_namestan::gm::argumentprotected
_subargumentsstan::gm::categorical_argumentprotected
arg(const std::string name)stan::gm::categorical_argumentinlinevirtual
arg_bfgs()stan::gm::arg_bfgsinline
argument()stan::gm::argumentinline
argument(const std::string name)stan::gm::argumentinline
compute_indent(const int depth)stan::gm::argumentinline
description() const stan::gm::argumentinline
find_arg(std::string name, std::string prefix, std::vector< std::string > &valid_paths)stan::gm::categorical_argumentinlinevirtual
help_widthstan::gm::argumentprotected
indent_widthstan::gm::argumentprotected
name() const stan::gm::argumentinline
parse_args(std::vector< std::string > &args, std::ostream *out, std::ostream *err, bool &help_flag)stan::gm::categorical_argumentinlinevirtual
print(std::ostream *s, const int depth, const std::string prefix)stan::gm::categorical_argumentinlinevirtual
print_help(std::ostream *s, const int depth, const bool recurse)stan::gm::categorical_argumentinlinevirtual
probe_args(argument *base_arg, std::stringstream &s)stan::gm::categorical_argumentinlinevirtual
split_arg(const std::string &arg, std::string &name, std::string &value)stan::gm::argumentinlinestatic
subarguments()stan::gm::categorical_argumentinline
~argument()stan::gm::argumentinlinevirtual
~categorical_argument()stan::gm::categorical_argumentinlinevirtual
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1gm_1_1arg__bfgs.html b/doc/api/html/classstan_1_1gm_1_1arg__bfgs.html new file mode 100644 index 00000000000..2257989ea03 --- /dev/null +++ b/doc/api/html/classstan_1_1gm_1_1arg__bfgs.html @@ -0,0 +1,201 @@ + + + + + +Stan: stan::gm::arg_bfgs Class Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::gm::arg_bfgs Class Reference
+
+
+ +

#include <arg_bfgs.hpp>

+
+Inheritance diagram for stan::gm::arg_bfgs:
+
+
+ + +stan::gm::categorical_argument +stan::gm::argument + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 arg_bfgs ()
 
- Public Member Functions inherited from stan::gm::categorical_argument
virtual ~categorical_argument ()
 
void print (std::ostream *s, const int depth, const std::string prefix)
 
void print_help (std::ostream *s, const int depth, const bool recurse)
 
bool parse_args (std::vector< std::string > &args, std::ostream *out, std::ostream *err, bool &help_flag)
 
virtual void probe_args (argument *base_arg, std::stringstream &s)
 
void find_arg (std::string name, std::string prefix, std::vector< std::string > &valid_paths)
 
std::vector< argument * > & subarguments ()
 
argumentarg (const std::string name)
 
- Public Member Functions inherited from stan::gm::argument
 argument ()
 
 argument (const std::string name)
 
virtual ~argument ()
 
std::string name () const
 
std::string description () const
 
int compute_indent (const int depth)
 
+ + + + + + + +

+Additional Inherited Members

- Static Public Member Functions inherited from stan::gm::argument
static void split_arg (const std::string &arg, std::string &name, std::string &value)
 
- Protected Attributes inherited from stan::gm::categorical_argument
std::vector< argument * > _subarguments
 
+

Detailed Description

+
+

Definition at line 13 of file arg_bfgs.hpp.

+

Constructor & Destructor Documentation

+ +
+
+ + + + + +
+ + + + + + + +
stan::gm::arg_bfgs::arg_bfgs ()
+
+inline
+
+ +

Definition at line 17 of file arg_bfgs.hpp.

+ +
+
+
The documentation for this class was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1gm_1_1arg__bfgs.png b/doc/api/html/classstan_1_1gm_1_1arg__bfgs.png new file mode 100644 index 0000000000000000000000000000000000000000..d79317443f50e83145b8f6439970d8b32d83995d GIT binary patch literal 1015 zcmeAS@N?(olHy`uVBq!ia0vp^JAt@^gBeKngzicMQW60^A+G=b{|7Q(y!l$%e`o@b z1;z&s9ANFdBM;9$<|bHQAb#3ICt3go*zEo`8eVcuA-!|VA?G4|iRRvEfIkWctg~ze^HIjGI z^1R$9g~_;kT*`cB{rU0q6Rp>KRAdXXw|Y#HPSo?<*RoUP=O>f%md^zle@OB-C`w-Y z^HCzSHsbU09}8YRp5>m;_(AOqV-069L;N9`1Je!IKd9p4Moca~=j=3X2_t8*=OoiNhv!n+t|7X?X`Kn91&37VX`w8-MjzHMtJYmQ(G$T9?H3{ zHTA>M8osPclTz$b?|v_O%l5i)Qf$xm#j}-j4)-+eot(PxT#aQ{+WoT9$(iSK-Pa|G z-W7EapS9%M=6#vby6@w^&Z_jS_*Q&)0wMv3glkscL?+xLtSpx6;7xhPD-cdfaD) zr}zDz^z%)~nKWUcv&(PneLMYx)U6rsbyy49RzG`|UYC6}Q90*Q)UO}k{2Pj6)&mpa z(+PZMpPvYRX1`|IwYN`ZsxL^t{%85sPZ#f8`Md1r{Z*fXbeF15soU@-U;d2Mu9Dfk z_mb4=qI4O4%dFoj{qbn_Q@!HoqYSq1!w-CUAEo7Ryf^*cONNp+ZZgZ6BHpbPW6+2C iVrkjRDM3=*{~4Zec`c4CS1SbOQU*^~KbLh*2~7Yco%Y)R literal 0 HcmV?d00001 diff --git a/doc/api/html/classstan_1_1gm_1_1arg__data-members.html b/doc/api/html/classstan_1_1gm_1_1arg__data-members.html new file mode 100644 index 00000000000..b5b633e067f --- /dev/null +++ b/doc/api/html/classstan_1_1gm_1_1arg__data-members.html @@ -0,0 +1,133 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::gm::arg_data Member List
+
+
+ +

This is the complete list of members for stan::gm::arg_data, including all inherited members.

+ + + + + + + + + + + + + + + + + + + + + + +
_descriptionstan::gm::argumentprotected
_namestan::gm::argumentprotected
_subargumentsstan::gm::categorical_argumentprotected
arg(const std::string name)stan::gm::categorical_argumentinlinevirtual
arg_data()stan::gm::arg_datainline
argument()stan::gm::argumentinline
argument(const std::string name)stan::gm::argumentinline
compute_indent(const int depth)stan::gm::argumentinline
description() const stan::gm::argumentinline
find_arg(std::string name, std::string prefix, std::vector< std::string > &valid_paths)stan::gm::categorical_argumentinlinevirtual
help_widthstan::gm::argumentprotected
indent_widthstan::gm::argumentprotected
name() const stan::gm::argumentinline
parse_args(std::vector< std::string > &args, std::ostream *out, std::ostream *err, bool &help_flag)stan::gm::categorical_argumentinlinevirtual
print(std::ostream *s, const int depth, const std::string prefix)stan::gm::categorical_argumentinlinevirtual
print_help(std::ostream *s, const int depth, const bool recurse)stan::gm::categorical_argumentinlinevirtual
probe_args(argument *base_arg, std::stringstream &s)stan::gm::categorical_argumentinlinevirtual
split_arg(const std::string &arg, std::string &name, std::string &value)stan::gm::argumentinlinestatic
subarguments()stan::gm::categorical_argumentinline
~argument()stan::gm::argumentinlinevirtual
~categorical_argument()stan::gm::categorical_argumentinlinevirtual
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1gm_1_1arg__data.html b/doc/api/html/classstan_1_1gm_1_1arg__data.html new file mode 100644 index 00000000000..bcd7592ce07 --- /dev/null +++ b/doc/api/html/classstan_1_1gm_1_1arg__data.html @@ -0,0 +1,201 @@ + + + + + +Stan: stan::gm::arg_data Class Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::gm::arg_data Class Reference
+
+
+ +

#include <arg_data.hpp>

+
+Inheritance diagram for stan::gm::arg_data:
+
+
+ + +stan::gm::categorical_argument +stan::gm::argument + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 arg_data ()
 
- Public Member Functions inherited from stan::gm::categorical_argument
virtual ~categorical_argument ()
 
void print (std::ostream *s, const int depth, const std::string prefix)
 
void print_help (std::ostream *s, const int depth, const bool recurse)
 
bool parse_args (std::vector< std::string > &args, std::ostream *out, std::ostream *err, bool &help_flag)
 
virtual void probe_args (argument *base_arg, std::stringstream &s)
 
void find_arg (std::string name, std::string prefix, std::vector< std::string > &valid_paths)
 
std::vector< argument * > & subarguments ()
 
argumentarg (const std::string name)
 
- Public Member Functions inherited from stan::gm::argument
 argument ()
 
 argument (const std::string name)
 
virtual ~argument ()
 
std::string name () const
 
std::string description () const
 
int compute_indent (const int depth)
 
+ + + + + + + +

+Additional Inherited Members

- Static Public Member Functions inherited from stan::gm::argument
static void split_arg (const std::string &arg, std::string &name, std::string &value)
 
- Protected Attributes inherited from stan::gm::categorical_argument
std::vector< argument * > _subarguments
 
+

Detailed Description

+
+

Definition at line 12 of file arg_data.hpp.

+

Constructor & Destructor Documentation

+ +
+
+ + + + + +
+ + + + + + + +
stan::gm::arg_data::arg_data ()
+
+inline
+
+ +

Definition at line 16 of file arg_data.hpp.

+ +
+
+
The documentation for this class was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1gm_1_1arg__data.png b/doc/api/html/classstan_1_1gm_1_1arg__data.png new file mode 100644 index 0000000000000000000000000000000000000000..ce97d963b9f3ebc9c997b258849b7c8d3c43cd0f GIT binary patch literal 1001 zcmeAS@N?(olHy`uVBq!ia0vp^JAt@^gBeKngzicMQW60^A+G=b{|7Q(y!l$%e`o@b z1;z&s9ANFdBM;4LqPOuvtM?NE^|JX+&pePm$fzL%P>2OxsjD$;@$5 z-_DGCb?5z7^GPQfuT7TSAvtY{aLl@Cn_BO_t2K#NvY$2k=)N+i@7rEZuAHWs-h6v-&Ei_&o7`*mF14GYB3u00`isTuUj63V zXMA6JTxxsF;c0cYwz}?*(9RFDCN5#lTPx;Sq8cHmv{1ATcTN ztbBjq)ppbQN7zH#a7Z)INy$QuF3l`LUxm>fdYTI!(G)toy6o z_LZ7nPY3eY(C#Qa%WeyeV2?Zy2`cBU88|LaeG{v_|)rNq-q>tnCjY-69EpSxFx ztDwpIS$D8uw2w#0{G{)j@+X>Jc~c}A)5 + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::gm::arg_data_file Member List
+
+
+ +

This is the complete list of members for stan::gm::arg_data_file, including all inherited members.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
_bad_valuestan::gm::singleton_argument< T >protected
_constrainedstan::gm::singleton_argument< T >protected
_defaultstan::gm::valued_argumentprotected
_default_valuestan::gm::singleton_argument< T >protected
_descriptionstan::gm::argumentprotected
_good_valuestan::gm::singleton_argument< T >protected
_namestan::gm::argumentprotected
_validitystan::gm::singleton_argument< T >protected
_valuestan::gm::singleton_argument< T >protected
_value_typestan::gm::valued_argumentprotected
arg(const std::string name)stan::gm::argumentinlinevirtual
arg_data_file()stan::gm::arg_data_fileinline
argument()stan::gm::argumentinline
argument(const std::string name)stan::gm::argumentinline
compute_indent(const int depth)stan::gm::argumentinline
description() const stan::gm::argumentinline
find_arg(std::string name, std::string prefix, std::vector< std::string > &valid_paths)stan::gm::singleton_argument< T >inlinevirtual
help_widthstan::gm::argumentprotected
indent_widthstan::gm::argumentprotected
is_default()stan::gm::singleton_argument< T >inlinevirtual
is_valid(T value)stan::gm::singleton_argument< T >inlineprotectedvirtual
name() const stan::gm::argumentinline
parse_args(std::vector< std::string > &args, std::ostream *out, std::ostream *err, bool &help_flag)stan::gm::singleton_argument< T >inlinevirtual
print(std::ostream *s, const int depth, const std::string prefix)stan::gm::valued_argumentinlinevirtual
print_help(std::ostream *s, const int depth, const bool recurse=false)stan::gm::valued_argumentinlinevirtual
print_valid()stan::gm::singleton_argument< T >inlinevirtual
print_value()stan::gm::singleton_argument< T >inlinevirtual
probe_args(argument *base_arg, std::stringstream &s)stan::gm::singleton_argument< T >inlinevirtual
set_value(const T &value)stan::gm::singleton_argument< T >inline
singleton_argument()stan::gm::singleton_argument< T >inline
singleton_argument(const std::string name)stan::gm::singleton_argument< T >inline
split_arg(const std::string &arg, std::string &name, std::string &value)stan::gm::argumentinlinestatic
value()stan::gm::singleton_argument< T >inline
~argument()stan::gm::argumentinlinevirtual
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1gm_1_1arg__data__file.html b/doc/api/html/classstan_1_1gm_1_1arg__data__file.html new file mode 100644 index 00000000000..31d7cccac76 --- /dev/null +++ b/doc/api/html/classstan_1_1gm_1_1arg__data__file.html @@ -0,0 +1,226 @@ + + + + + +Stan: stan::gm::arg_data_file Class Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::gm::arg_data_file Class Reference
+
+
+ +

#include <arg_data_file.hpp>

+
+Inheritance diagram for stan::gm::arg_data_file:
+
+
+ + +stan::gm::singleton_argument< T > +stan::gm::valued_argument +stan::gm::argument + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 arg_data_file ()
 
- Public Member Functions inherited from stan::gm::singleton_argument< T >
 singleton_argument ()
 
 singleton_argument (const std::string name)
 
bool parse_args (std::vector< std::string > &args, std::ostream *out, std::ostream *err, bool &help_flag)
 
virtual void probe_args (argument *base_arg, std::stringstream &s)
 
void find_arg (std::string name, std::string prefix, std::vector< std::string > &valid_paths)
 
value ()
 
bool set_value (const T &value)
 
std::string print_value ()
 
std::string print_valid ()
 
bool is_default ()
 
- Public Member Functions inherited from stan::gm::valued_argument
virtual void print (std::ostream *s, const int depth, const std::string prefix)
 
virtual void print_help (std::ostream *s, const int depth, const bool recurse=false)
 
- Public Member Functions inherited from stan::gm::argument
 argument ()
 
 argument (const std::string name)
 
virtual ~argument ()
 
std::string name () const
 
std::string description () const
 
virtual argumentarg (const std::string name)
 
int compute_indent (const int depth)
 
+ + + + + + + + + + + + + + + + + + + + +

+Additional Inherited Members

- Static Public Member Functions inherited from stan::gm::argument
static void split_arg (const std::string &arg, std::string &name, std::string &value)
 
- Protected Member Functions inherited from stan::gm::singleton_argument< T >
virtual bool is_valid (T value)
 
- Protected Attributes inherited from stan::gm::singleton_argument< T >
std::string _validity
 
_value
 
_default_value
 
bool _constrained
 
_good_value
 
_bad_value
 
+

Detailed Description

+
+

Definition at line 10 of file arg_data_file.hpp.

+

Constructor & Destructor Documentation

+ +
+
+ + + + + +
+ + + + + + + +
stan::gm::arg_data_file::arg_data_file ()
+
+inline
+
+ +

Definition at line 14 of file arg_data_file.hpp.

+ +
+
+
The documentation for this class was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1gm_1_1arg__data__file.png b/doc/api/html/classstan_1_1gm_1_1arg__data__file.png new file mode 100644 index 0000000000000000000000000000000000000000..33718f127f6b336a1555633e50fdceaeaf53b0f5 GIT binary patch literal 1429 zcmaJ>do#auCbyAsjd2~7%V0Dlo07row5Q#3_Uz?7=l$OIJKyvE^E}V@rk+N-Zd27# z1pr_hh;qirD_@>m6(#wZJ8_{=UNldi@NkjIWb$@avP_{jX2`oglFQ|8P8I6PuPTuk zv^yXNeF{Ol#{mG?3X|vzjZLqIX;JOH6a)&09u!#s0g^ zJs~FliHIHPt7d`{WVP18YzBqJUg^YY;SomIVwqc4qJKV)RCwBM{}1~YZWxJSZ)Uu6 zrv0z0<8S38BRng<6-w(_hsa+rv|?Xl;Q`<2f6_`@`U5Bg;^YX_PUb#E|(DP8l!ca?LZ5l2CXaeJgO7*DT5 zF&u?142dmNb5i$uF@2|oAH2T909x!*8t*bwk9|V zH*<9s6#dkr6)KYJfT57`B@h3_$q^$mV@5r|C`a#nt&svSW~y9c+}S zYA1W9d!KL%J3M+Kq-Q7dII!!GY0W!{8Hnt2pSOhpn*5?hVai-aUuDyPDhpr@54HUQu z7Aoss-p$>L7}G9+PGW}oaL{TAoWkJ{w4e}~N9tL1ab!dPc%sK)Lg%B%#88`GTg$4~ zq8398kmj9CpEYfzij;rQ_do0= z;N&XlZ8r*5`J~x6f)Pk>H9|dij5`%{*9Yqx!efxBb)r&yBJ=u-T3bSSIiD)%)U884c4N6A2Vx~r zcuQWG1iEP@?!Wzku={bfXjGfn{b)jMWX7B1w;cOmbnFlhF3uoAEjVmDv`|1qNCQxe zb7rN( zyZNT|c^1^7*Ukf#oc(!K1{F`A--kI13+GZGi!}rGgX~jUZ|1UyVV)(~sB0$$ zPxR`^34=m1%d26oaPG;Cnvd_4aY?K0P|&$PHX-tCh)&JUf?_y-y!aDrL`tFM)@{l! zEREOa0cDF%uLk=RulG?NRT40?LPL|i$683o@~>bz3#rh|5LvINSQ;d4K`Mv0#pGN1 zq5%s68F}j3@^=ox4wL%|u$6(@d-PZ9)`~vkRHX7^`NZe%9?A<;(O(< + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::gm::arg_dense_e Member List
+
+
+ +

This is the complete list of members for stan::gm::arg_dense_e, including all inherited members.

+ + + + + + + + + + + + + + + + + + + + + + +
_descriptionstan::gm::argumentprotected
_is_presentstan::gm::unvalued_argumentprotected
_namestan::gm::argumentprotected
arg(const std::string name)stan::gm::argumentinlinevirtual
arg_dense_e()stan::gm::arg_dense_einline
argument()stan::gm::argumentinline
argument(const std::string name)stan::gm::argumentinline
compute_indent(const int depth)stan::gm::argumentinline
description() const stan::gm::argumentinline
find_arg(std::string name, std::string prefix, std::vector< std::string > &valid_paths)stan::gm::argumentinlinevirtual
help_widthstan::gm::argumentprotected
indent_widthstan::gm::argumentprotected
is_present()stan::gm::unvalued_argumentinline
name() const stan::gm::argumentinline
parse_args(std::vector< std::string > &args, std::ostream *out, std::ostream *err, bool &help_flag)stan::gm::unvalued_argumentinlinevirtual
print(std::ostream *s, const int depth, const std::string prefix)stan::gm::unvalued_argumentinlinevirtual
print_help(std::ostream *s, const int depth, const bool recurse=false)stan::gm::unvalued_argumentinlinevirtual
probe_args(argument *base_arg, std::stringstream &s)stan::gm::argumentinlinevirtual
split_arg(const std::string &arg, std::string &name, std::string &value)stan::gm::argumentinlinestatic
unvalued_argument()stan::gm::unvalued_argumentinline
~argument()stan::gm::argumentinlinevirtual
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1gm_1_1arg__dense__e.html b/doc/api/html/classstan_1_1gm_1_1arg__dense__e.html new file mode 100644 index 00000000000..136805bd50a --- /dev/null +++ b/doc/api/html/classstan_1_1gm_1_1arg__dense__e.html @@ -0,0 +1,201 @@ + + + + + +Stan: stan::gm::arg_dense_e Class Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::gm::arg_dense_e Class Reference
+
+
+ +

#include <arg_dense_e.hpp>

+
+Inheritance diagram for stan::gm::arg_dense_e:
+
+
+ + +stan::gm::unvalued_argument +stan::gm::argument + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 arg_dense_e ()
 
- Public Member Functions inherited from stan::gm::unvalued_argument
 unvalued_argument ()
 
void print (std::ostream *s, const int depth, const std::string prefix)
 
void print_help (std::ostream *s, const int depth, const bool recurse=false)
 
bool parse_args (std::vector< std::string > &args, std::ostream *out, std::ostream *err, bool &help_flag)
 
bool is_present ()
 
- Public Member Functions inherited from stan::gm::argument
 argument ()
 
 argument (const std::string name)
 
virtual ~argument ()
 
std::string name () const
 
std::string description () const
 
virtual void probe_args (argument *base_arg, std::stringstream &s)
 
virtual void find_arg (std::string name, std::string prefix, std::vector< std::string > &valid_paths)
 
virtual argumentarg (const std::string name)
 
int compute_indent (const int depth)
 
+ + + + + + + +

+Additional Inherited Members

- Static Public Member Functions inherited from stan::gm::argument
static void split_arg (const std::string &arg, std::string &name, std::string &value)
 
- Protected Attributes inherited from stan::gm::unvalued_argument
bool _is_present
 
+

Detailed Description

+
+

Definition at line 10 of file arg_dense_e.hpp.

+

Constructor & Destructor Documentation

+ +
+
+ + + + + +
+ + + + + + + +
stan::gm::arg_dense_e::arg_dense_e ()
+
+inline
+
+ +

Definition at line 14 of file arg_dense_e.hpp.

+ +
+
+
The documentation for this class was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1gm_1_1arg__dense__e.png b/doc/api/html/classstan_1_1gm_1_1arg__dense__e.png new file mode 100644 index 0000000000000000000000000000000000000000..8dc6a23792d99e7bbdef044e5507a2d0a5cf5950 GIT binary patch literal 1001 zcmeAS@N?(olHy`uVBq!ia0vp^>wvg}gBeJAsw;d4QW60^A+G=b{|7Q(y!l$%e`o@b z1;z&s9ANFdBM;}3fn z?=8FVd9iQZS)J{9C3TT)ua_9UX%;Q^w7O_}N40Ky(xfw?6T&8?Mf&z`KAO)rsbtmd z9dC?B3eyP6YT)nuK+rntg+=cI4Ci#86u>RK9pz|hg*$aGA zJudlO7n@Y#?w|5~*WvrWc_%F4whiH#^hKI0#`9Cq1FuQb)$YtGmUCl}t77a~ys;pD z{lbdlhvsIuKa%A!w_{LA&qxw$j-HA(f-xbQ{Qnq{mq^1s&5~|RtLvCE-$#!SN7HHU7}%0Li^0Wdb`WMZ7DO~v25D* z#j5Ln&yBsdj(6UYf4lVBiny|ug|Sy3+O}9W@BKczeJ^>|vdXNz80EA5>hJwo{aaH! zZ@tR9oonE%<6dVy4xFG?vHH-fjMt*e=PuN4 zYqw%PuyUQP{QskWM85x-ZQA|w$(*OBWj1;r?%!Ok{6*HQ!TihQB!(ZUFu!cQx@5{F bhF|QO*WJ3WFg_Cp=1T@oS3j3^P6 + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::gm::arg_diag_e Member List
+
+
+ +

This is the complete list of members for stan::gm::arg_diag_e, including all inherited members.

+ + + + + + + + + + + + + + + + + + + + + + +
_descriptionstan::gm::argumentprotected
_is_presentstan::gm::unvalued_argumentprotected
_namestan::gm::argumentprotected
arg(const std::string name)stan::gm::argumentinlinevirtual
arg_diag_e()stan::gm::arg_diag_einline
argument()stan::gm::argumentinline
argument(const std::string name)stan::gm::argumentinline
compute_indent(const int depth)stan::gm::argumentinline
description() const stan::gm::argumentinline
find_arg(std::string name, std::string prefix, std::vector< std::string > &valid_paths)stan::gm::argumentinlinevirtual
help_widthstan::gm::argumentprotected
indent_widthstan::gm::argumentprotected
is_present()stan::gm::unvalued_argumentinline
name() const stan::gm::argumentinline
parse_args(std::vector< std::string > &args, std::ostream *out, std::ostream *err, bool &help_flag)stan::gm::unvalued_argumentinlinevirtual
print(std::ostream *s, const int depth, const std::string prefix)stan::gm::unvalued_argumentinlinevirtual
print_help(std::ostream *s, const int depth, const bool recurse=false)stan::gm::unvalued_argumentinlinevirtual
probe_args(argument *base_arg, std::stringstream &s)stan::gm::argumentinlinevirtual
split_arg(const std::string &arg, std::string &name, std::string &value)stan::gm::argumentinlinestatic
unvalued_argument()stan::gm::unvalued_argumentinline
~argument()stan::gm::argumentinlinevirtual
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1gm_1_1arg__diag__e.html b/doc/api/html/classstan_1_1gm_1_1arg__diag__e.html new file mode 100644 index 00000000000..79655a65643 --- /dev/null +++ b/doc/api/html/classstan_1_1gm_1_1arg__diag__e.html @@ -0,0 +1,201 @@ + + + + + +Stan: stan::gm::arg_diag_e Class Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::gm::arg_diag_e Class Reference
+
+
+ +

#include <arg_diag_e.hpp>

+
+Inheritance diagram for stan::gm::arg_diag_e:
+
+
+ + +stan::gm::unvalued_argument +stan::gm::argument + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 arg_diag_e ()
 
- Public Member Functions inherited from stan::gm::unvalued_argument
 unvalued_argument ()
 
void print (std::ostream *s, const int depth, const std::string prefix)
 
void print_help (std::ostream *s, const int depth, const bool recurse=false)
 
bool parse_args (std::vector< std::string > &args, std::ostream *out, std::ostream *err, bool &help_flag)
 
bool is_present ()
 
- Public Member Functions inherited from stan::gm::argument
 argument ()
 
 argument (const std::string name)
 
virtual ~argument ()
 
std::string name () const
 
std::string description () const
 
virtual void probe_args (argument *base_arg, std::stringstream &s)
 
virtual void find_arg (std::string name, std::string prefix, std::vector< std::string > &valid_paths)
 
virtual argumentarg (const std::string name)
 
int compute_indent (const int depth)
 
+ + + + + + + +

+Additional Inherited Members

- Static Public Member Functions inherited from stan::gm::argument
static void split_arg (const std::string &arg, std::string &name, std::string &value)
 
- Protected Attributes inherited from stan::gm::unvalued_argument
bool _is_present
 
+

Detailed Description

+
+

Definition at line 10 of file arg_diag_e.hpp.

+

Constructor & Destructor Documentation

+ +
+
+ + + + + +
+ + + + + + + +
stan::gm::arg_diag_e::arg_diag_e ()
+
+inline
+
+ +

Definition at line 14 of file arg_diag_e.hpp.

+ +
+
+
The documentation for this class was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1gm_1_1arg__diag__e.png b/doc/api/html/classstan_1_1gm_1_1arg__diag__e.png new file mode 100644 index 0000000000000000000000000000000000000000..c79a1cf977b4538c06b7cbdde5a8ebefc3e6ee4c GIT binary patch literal 996 zcmeAS@N?(olHy`uVBq!ia0vp^>wvg}gBeJAsw;d4QW60^A+G=b{|7Q(y!l$%e`o@b z1;z&s9ANFdBM;w(|nrG4Duy6l^&3#W^ zDw`Q}KECu*cG^yp#h>L*e=y5rx}BmLGs$nq^4(AJ-_20@tm(Ddv-ghE*`(F+;vSbY zx0k+tofWe!F*$RZ=^JML!;?zRNgoX`TYYnR@LknUA=g!^zpeOc_Qc2B^VY@NvDVt2 z%l~XBE8n$j+V9o`uOH=I3uPYsoU>*77WEwI+-L{=g4aB^Cj*V;|GO&o{;QeG{x+;z z$>V8NAgkzEUXfJ3-ulnp`wX7D9xP0nu;ji%iR#Jj3sY6})$YzImSbb!k7IajFzwxI z(<$#Gc1?ckv9I~1TROuB{@?4U|;e}zirAt`Ibq~WjxSNAOMkqxBTDqAg{*`OcJe7Jv)~FexU5T((c4J z@m&n|PlC#`O5@k=jM?{SHmkS1&h%}Q^H=6Bk9nMZChym)#C0Xp-@LZ%s{IX2Z|=bK z_L}$1FEz)_AH!#tuZ^B;qL=$Gt6;}w(-j~0=J>zR^N)|a?+Z+CG218S%KZ*0kLS6* zi}S|i&iC*24shmQf9H4oN>TXt@a*j(&M$eqON!mA56ueR|7(6}o8RLfTZ|dz6z%;} zbeJLU)5LdQZ%0ReHDCTBN$S9-oA2&bR6iFq*PXA;)^Hz|j<%Ui3i4w9z&~xSTWzZE SR9|40WbkzLb6Mw<&;$VHxa~>+ literal 0 HcmV?d00001 diff --git a/doc/api/html/classstan_1_1gm_1_1arg__diagnose-members.html b/doc/api/html/classstan_1_1gm_1_1arg__diagnose-members.html new file mode 100644 index 00000000000..1285c9a3c65 --- /dev/null +++ b/doc/api/html/classstan_1_1gm_1_1arg__diagnose-members.html @@ -0,0 +1,133 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::gm::arg_diagnose Member List
+
+
+ +

This is the complete list of members for stan::gm::arg_diagnose, including all inherited members.

+ + + + + + + + + + + + + + + + + + + + + + +
_descriptionstan::gm::argumentprotected
_namestan::gm::argumentprotected
_subargumentsstan::gm::categorical_argumentprotected
arg(const std::string name)stan::gm::categorical_argumentinlinevirtual
arg_diagnose()stan::gm::arg_diagnoseinline
argument()stan::gm::argumentinline
argument(const std::string name)stan::gm::argumentinline
compute_indent(const int depth)stan::gm::argumentinline
description() const stan::gm::argumentinline
find_arg(std::string name, std::string prefix, std::vector< std::string > &valid_paths)stan::gm::categorical_argumentinlinevirtual
help_widthstan::gm::argumentprotected
indent_widthstan::gm::argumentprotected
name() const stan::gm::argumentinline
parse_args(std::vector< std::string > &args, std::ostream *out, std::ostream *err, bool &help_flag)stan::gm::categorical_argumentinlinevirtual
print(std::ostream *s, const int depth, const std::string prefix)stan::gm::categorical_argumentinlinevirtual
print_help(std::ostream *s, const int depth, const bool recurse)stan::gm::categorical_argumentinlinevirtual
probe_args(argument *base_arg, std::stringstream &s)stan::gm::categorical_argumentinlinevirtual
split_arg(const std::string &arg, std::string &name, std::string &value)stan::gm::argumentinlinestatic
subarguments()stan::gm::categorical_argumentinline
~argument()stan::gm::argumentinlinevirtual
~categorical_argument()stan::gm::categorical_argumentinlinevirtual
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1gm_1_1arg__diagnose.html b/doc/api/html/classstan_1_1gm_1_1arg__diagnose.html new file mode 100644 index 00000000000..3d5115d0b58 --- /dev/null +++ b/doc/api/html/classstan_1_1gm_1_1arg__diagnose.html @@ -0,0 +1,201 @@ + + + + + +Stan: stan::gm::arg_diagnose Class Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::gm::arg_diagnose Class Reference
+
+
+ +

#include <arg_diagnose.hpp>

+
+Inheritance diagram for stan::gm::arg_diagnose:
+
+
+ + +stan::gm::categorical_argument +stan::gm::argument + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 arg_diagnose ()
 
- Public Member Functions inherited from stan::gm::categorical_argument
virtual ~categorical_argument ()
 
void print (std::ostream *s, const int depth, const std::string prefix)
 
void print_help (std::ostream *s, const int depth, const bool recurse)
 
bool parse_args (std::vector< std::string > &args, std::ostream *out, std::ostream *err, bool &help_flag)
 
virtual void probe_args (argument *base_arg, std::stringstream &s)
 
void find_arg (std::string name, std::string prefix, std::vector< std::string > &valid_paths)
 
std::vector< argument * > & subarguments ()
 
argumentarg (const std::string name)
 
- Public Member Functions inherited from stan::gm::argument
 argument ()
 
 argument (const std::string name)
 
virtual ~argument ()
 
std::string name () const
 
std::string description () const
 
int compute_indent (const int depth)
 
+ + + + + + + +

+Additional Inherited Members

- Static Public Member Functions inherited from stan::gm::argument
static void split_arg (const std::string &arg, std::string &name, std::string &value)
 
- Protected Attributes inherited from stan::gm::categorical_argument
std::vector< argument * > _subarguments
 
+

Detailed Description

+
+

Definition at line 12 of file arg_diagnose.hpp.

+

Constructor & Destructor Documentation

+ +
+
+ + + + + +
+ + + + + + + +
stan::gm::arg_diagnose::arg_diagnose ()
+
+inline
+
+ +

Definition at line 16 of file arg_diagnose.hpp.

+ +
+
+
The documentation for this class was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1gm_1_1arg__diagnose.png b/doc/api/html/classstan_1_1gm_1_1arg__diagnose.png new file mode 100644 index 0000000000000000000000000000000000000000..4fc7cf092a9067a58e41169a721d2ef42868966e GIT binary patch literal 1040 zcmeAS@N?(olHy`uVBq!ia0vp^JAt@^gBeKngzicMQW60^A+G=b{|7Q(y!l$%e`o@b z1;z&s9ANFdBM;;<^9W*Ejz=E2Ta! zdzu{c^z+uZn)sP^T^G;yXIAXYU^<;*88a#Bj^X@iT4Mf_ex5Gdd_`(!%dC^%{H}3M zy7Fw<&tEp&Yg2D<%+6#jeUKJ0Nv~jc)F&~q-Q`(!uJdNiPT61P^nKgQGd7;9Zrm=e z4xMzXCiMB#ohyI;^)h_=E>3qRYfWGH&Rw=MPG{V7`NlN;-ljWKRJK-rk-Zi7_2Be_ z$kzCla|acv??wB_`7w^8P$^?mQ+f)U;1Pi_rGSX`2Fx@{YhUwC(qr=Q?uw<{AC;A zz0;pgu8BOP6R!32!_^utt!1hw|2*AOysN13t;4*zz26si>*^ftY1%v4G%$5vp6kZE znRm}@`CXHoW1M5vCX>Ad!?*Qwm+>~9QEnp*}DmI6ZoGQ?V3|l{OBKza(YSQn-JbyIry0^zA!|#jg zEk0Lm^|-X(1?2lgJd#=daX4L*Gy8qteEWM3 zUH@DO{_Os4U3!pWXr|WGrYNMFkfue^wZ`+|5A5HX7ueM3awF^ZiJx75qPTeS*}A8y#bOP$x74@PP0{_# za^=kt`MTI#hw|5ZjLb{-XV)z~_gcDQ(YfdD=5xPl?(oRvPrGRTEZXw5uJ>zAu1`Df zF%_Jex}2-vME~^v$NroWp1bSo!OCoP28#!)ZS(CehPhZX9RJc ctM((iLcG`GFP~T!0kbcIr>mdKI;Vst06EtLE&u=k literal 0 HcmV?d00001 diff --git a/doc/api/html/classstan_1_1gm_1_1arg__diagnostic__file-members.html b/doc/api/html/classstan_1_1gm_1_1arg__diagnostic__file-members.html new file mode 100644 index 00000000000..a9d862b9227 --- /dev/null +++ b/doc/api/html/classstan_1_1gm_1_1arg__diagnostic__file-members.html @@ -0,0 +1,146 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::gm::arg_diagnostic_file Member List
+
+
+ +

This is the complete list of members for stan::gm::arg_diagnostic_file, including all inherited members.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
_bad_valuestan::gm::singleton_argument< T >protected
_constrainedstan::gm::singleton_argument< T >protected
_defaultstan::gm::valued_argumentprotected
_default_valuestan::gm::singleton_argument< T >protected
_descriptionstan::gm::argumentprotected
_good_valuestan::gm::singleton_argument< T >protected
_namestan::gm::argumentprotected
_validitystan::gm::singleton_argument< T >protected
_valuestan::gm::singleton_argument< T >protected
_value_typestan::gm::valued_argumentprotected
arg(const std::string name)stan::gm::argumentinlinevirtual
arg_diagnostic_file()stan::gm::arg_diagnostic_fileinline
argument()stan::gm::argumentinline
argument(const std::string name)stan::gm::argumentinline
compute_indent(const int depth)stan::gm::argumentinline
description() const stan::gm::argumentinline
find_arg(std::string name, std::string prefix, std::vector< std::string > &valid_paths)stan::gm::singleton_argument< T >inlinevirtual
help_widthstan::gm::argumentprotected
indent_widthstan::gm::argumentprotected
is_default()stan::gm::singleton_argument< T >inlinevirtual
is_valid(T value)stan::gm::singleton_argument< T >inlineprotectedvirtual
name() const stan::gm::argumentinline
parse_args(std::vector< std::string > &args, std::ostream *out, std::ostream *err, bool &help_flag)stan::gm::singleton_argument< T >inlinevirtual
print(std::ostream *s, const int depth, const std::string prefix)stan::gm::valued_argumentinlinevirtual
print_help(std::ostream *s, const int depth, const bool recurse=false)stan::gm::valued_argumentinlinevirtual
print_valid()stan::gm::singleton_argument< T >inlinevirtual
print_value()stan::gm::singleton_argument< T >inlinevirtual
probe_args(argument *base_arg, std::stringstream &s)stan::gm::singleton_argument< T >inlinevirtual
set_value(const T &value)stan::gm::singleton_argument< T >inline
singleton_argument()stan::gm::singleton_argument< T >inline
singleton_argument(const std::string name)stan::gm::singleton_argument< T >inline
split_arg(const std::string &arg, std::string &name, std::string &value)stan::gm::argumentinlinestatic
value()stan::gm::singleton_argument< T >inline
~argument()stan::gm::argumentinlinevirtual
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1gm_1_1arg__diagnostic__file.html b/doc/api/html/classstan_1_1gm_1_1arg__diagnostic__file.html new file mode 100644 index 00000000000..6273243d744 --- /dev/null +++ b/doc/api/html/classstan_1_1gm_1_1arg__diagnostic__file.html @@ -0,0 +1,226 @@ + + + + + +Stan: stan::gm::arg_diagnostic_file Class Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::gm::arg_diagnostic_file Class Reference
+
+
+ +

#include <arg_diagnostic_file.hpp>

+
+Inheritance diagram for stan::gm::arg_diagnostic_file:
+
+
+ + +stan::gm::singleton_argument< T > +stan::gm::valued_argument +stan::gm::argument + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 arg_diagnostic_file ()
 
- Public Member Functions inherited from stan::gm::singleton_argument< T >
 singleton_argument ()
 
 singleton_argument (const std::string name)
 
bool parse_args (std::vector< std::string > &args, std::ostream *out, std::ostream *err, bool &help_flag)
 
virtual void probe_args (argument *base_arg, std::stringstream &s)
 
void find_arg (std::string name, std::string prefix, std::vector< std::string > &valid_paths)
 
value ()
 
bool set_value (const T &value)
 
std::string print_value ()
 
std::string print_valid ()
 
bool is_default ()
 
- Public Member Functions inherited from stan::gm::valued_argument
virtual void print (std::ostream *s, const int depth, const std::string prefix)
 
virtual void print_help (std::ostream *s, const int depth, const bool recurse=false)
 
- Public Member Functions inherited from stan::gm::argument
 argument ()
 
 argument (const std::string name)
 
virtual ~argument ()
 
std::string name () const
 
std::string description () const
 
virtual argumentarg (const std::string name)
 
int compute_indent (const int depth)
 
+ + + + + + + + + + + + + + + + + + + + +

+Additional Inherited Members

- Static Public Member Functions inherited from stan::gm::argument
static void split_arg (const std::string &arg, std::string &name, std::string &value)
 
- Protected Member Functions inherited from stan::gm::singleton_argument< T >
virtual bool is_valid (T value)
 
- Protected Attributes inherited from stan::gm::singleton_argument< T >
std::string _validity
 
_value
 
_default_value
 
bool _constrained
 
_good_value
 
_bad_value
 
+

Detailed Description

+
+

Definition at line 10 of file arg_diagnostic_file.hpp.

+

Constructor & Destructor Documentation

+ +
+
+ + + + + +
+ + + + + + + +
stan::gm::arg_diagnostic_file::arg_diagnostic_file ()
+
+inline
+
+ +

Definition at line 14 of file arg_diagnostic_file.hpp.

+ +
+
+
The documentation for this class was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1gm_1_1arg__diagnostic__file.png b/doc/api/html/classstan_1_1gm_1_1arg__diagnostic__file.png new file mode 100644 index 0000000000000000000000000000000000000000..01ccad3a49f58858b705e7799ec2ab46cbad7198 GIT binary patch literal 1468 zcma)+doa{n9Ke6BM@C%St2}zC7TMT}kXUBBWPf(sY9o|gl1(L>*UsjVSGuANZ8Ltk z9=)hpiIQurwd|FTy+-!o_CeC9JJ^AN#H zPsdCL002D@>p_IG5Dvb!Iy@H*gf+p*9YD<$L8UEvG3LuKo@_pRbuI-vlqU zV~K<#0DS1nkhb~Q0e~hB^uYLBP#Z5AshUO_cp4WV`&8E}EfKnZ;73^vi5HPLbjcZi zMsnsZ0mj^0Y*2d@(esRic)oE{tp>Pg>Qu$WU8pg7nG?p9_$4jG+b0{9O59_n7OQk@ zZj?rXdquVoXX>sCrmVQDue889TJI53M&+a-Nc|N!vZkk(Y{2_Y+0jldYL>-_&YaBO zY&ayHP8x0{LCBs>6Dz%kCO8_P9xsm7=PlN3cp78|omG95`TZWDTmB?gj$g-C9^?(l z#MAsy%?d?#nKfuUFXAQ3bAkd1eRS5^LPW%#?A(&E1;8UbA zkWjli1ufU)Z=CocSpT1G=*st)!UEF}Z|)tReZBA*1AQo850fez+1{AQ%Xe>kX-T|% z-`uy&dbr6tQshIiJx+Mb>^jj$>F}#IC>aGw{>M;D(+#(+$oGSqk?cY|vu=IeV5Y60 zR*98h4W|XABb}oX({w5g9E}dSX1jf`P*}e=OJ|HvwYNFUMfvhxd`dbWOQ?;N`J*G4 zO?kcbUFR)W!arBUwLVJ^j@_g|KhEKbP}rdvsY4zim(~o)XY+#ei)Yil*W^_?Dg50Y z#|O-$b~7#^q=^?MlOuhxL}A#7TV&5hkQtkG<`<`v%b2q!31wE|By>J=j1iI?h#a-L!RxWyfg8qLQ-J{G0z5(yzq%7VupLSD3ps zCbod^9$4k|?kB{ESpkyMzuysjMYPhHxrOjegu83p>2Z)Vx8B3*b$~NoGj1DMD)9=~ zyVBT*SUP2r6rl-zdbtnx2%D#gcgrzHzg(b12gjum7_+uaM|&WK?* zl?^ExPdMs8wnRM~lwHFtm6`UW)m%OhW&cEqpv$_e+&VZ$;pO8me!DlxteGgrNw1#D zr0QQ1^(OZ%u7lW@YV&(vSzyn;7vW|;E!WrQzge#03LJ5xU1s5EM{WgMfKo!$!D7~~ z@kYCd^FnrbIl3jw{xnyRrT$R1k2E>pYzcA;xi(aibx>VK2j^VQX7H>tW0cgbAmYTE ztrV1m;~-JU*#-{9JY>SUHwqBX9lt?pkyr>!T7dpJS3v88In;7;eST_SG4fd}V{kxW zlH&RA8vlpofm_lIv{Hec8ehe4NfjD<-eM6bV**iF7iPtsrnaZV7;2+(T{8w~b0s-` z!G;{h5ww3yD6+y%5k(5g(->(ija&?99;&BZOvz)T!p8$bsSgr~$q-?<)uH-5KA@4% zX;j0RPXE}JI?xltvSfRU9m#&%&%7Hu_qviQK1doqao}mZn3650v#O*);WrXcEWMOG z9rG`1tJ4SKTy_BHj!8&R`pTUI*)Ns)E{c-CpBsv84%Ed9jlDj;aESlEk)3?+ndy}_uo*_}Q4+P4#_9l|K}RfdWL r?a1t + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::gm::arg_engine Member List
+
+
+ +

This is the complete list of members for stan::gm::arg_engine, including all inherited members.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
_cursorstan::gm::list_argumentprotected
_defaultstan::gm::valued_argumentprotected
_default_cursorstan::gm::list_argumentprotected
_descriptionstan::gm::argumentprotected
_namestan::gm::argumentprotected
_value_typestan::gm::valued_argumentprotected
_valuesstan::gm::list_argumentprotected
arg(std::string name)stan::gm::list_argumentinlinevirtual
arg_engine()stan::gm::arg_engineinline
argument()stan::gm::argumentinline
argument(const std::string name)stan::gm::argumentinline
compute_indent(const int depth)stan::gm::argumentinline
description() const stan::gm::argumentinline
find_arg(std::string name, std::string prefix, std::vector< std::string > &valid_paths)stan::gm::list_argumentinlinevirtual
help_widthstan::gm::argumentprotected
indent_widthstan::gm::argumentprotected
is_default()stan::gm::list_argumentinlinevirtual
list_argument()stan::gm::list_argumentinline
name() const stan::gm::argumentinline
parse_args(std::vector< std::string > &args, std::ostream *out, std::ostream *err, bool &help_flag)stan::gm::list_argumentinlinevirtual
print(std::ostream *s, int depth, const std::string prefix)stan::gm::list_argumentinlinevirtual
print_help(std::ostream *s, int depth, bool recurse)stan::gm::list_argumentinlinevirtual
print_valid()stan::gm::list_argumentinlinevirtual
print_value()stan::gm::list_argumentinlinevirtual
probe_args(argument *base_arg, std::stringstream &s)stan::gm::list_argumentinlinevirtual
split_arg(const std::string &arg, std::string &name, std::string &value)stan::gm::argumentinlinestatic
valid_value(std::string name)stan::gm::list_argumentinline
value()stan::gm::list_argumentinline
values()stan::gm::list_argumentinline
~argument()stan::gm::argumentinlinevirtual
~list_argument()stan::gm::list_argumentinline
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1gm_1_1arg__engine.html b/doc/api/html/classstan_1_1gm_1_1arg__engine.html new file mode 100644 index 00000000000..4a2c0acf3e7 --- /dev/null +++ b/doc/api/html/classstan_1_1gm_1_1arg__engine.html @@ -0,0 +1,205 @@ + + + + + +Stan: stan::gm::arg_engine Class Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::gm::arg_engine Class Reference
+
+
+ +

#include <arg_engine.hpp>

+
+Inheritance diagram for stan::gm::arg_engine:
+
+
+ + +stan::gm::list_argument +stan::gm::valued_argument +stan::gm::argument + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 arg_engine ()
 
- Public Member Functions inherited from stan::gm::list_argument
 list_argument ()
 
 ~list_argument ()
 
void print (std::ostream *s, int depth, const std::string prefix)
 
void print_help (std::ostream *s, int depth, bool recurse)
 
bool parse_args (std::vector< std::string > &args, std::ostream *out, std::ostream *err, bool &help_flag)
 
virtual void probe_args (argument *base_arg, std::stringstream &s)
 
void find_arg (std::string name, std::string prefix, std::vector< std::string > &valid_paths)
 
bool valid_value (std::string name)
 
argumentarg (std::string name)
 
std::vector< argument * > & values ()
 
std::string value ()
 
std::string print_value ()
 
std::string print_valid ()
 
bool is_default ()
 
+ + + + + + + + + + + +

+Additional Inherited Members

- Static Public Member Functions inherited from stan::gm::argument
static void split_arg (const std::string &arg, std::string &name, std::string &value)
 
- Protected Attributes inherited from stan::gm::list_argument
int _cursor
 
int _default_cursor
 
std::vector< argument * > _values
 
+

Detailed Description

+
+

Definition at line 13 of file arg_engine.hpp.

+

Constructor & Destructor Documentation

+ +
+
+ + + + + +
+ + + + + + + +
stan::gm::arg_engine::arg_engine ()
+
+inline
+
+ +

Definition at line 17 of file arg_engine.hpp.

+ +
+
+
The documentation for this class was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1gm_1_1arg__engine.png b/doc/api/html/classstan_1_1gm_1_1arg__engine.png new file mode 100644 index 0000000000000000000000000000000000000000..95f412d66ef20eedb164d6b71eafbbe1e5b04cff GIT binary patch literal 1298 zcmeAS@N?(olHy`uVBq!ia0vp^3xN0l2Q!e|@^pqPkdg@S332`Z|38rV;?396{zDUh zEHFNB-~emq9eE&^qa?^Lm;tB=1g@S6F=Aj~S?KBF7*fIbcJAxG#RfcX{`)*?|GUSX zQZ*0qczrG}EV+}}IKjGIWm$cv;jx*DUYGXlSfCPF;OM!@Kt)33>~+l_hlEfc8ZHN;A`Rq|pLH8b!HC>Ujmwdkz-sBkMoX_@pIZ(%4 z+Z!BV)tmP3xf=ForRu%expyBvRVdA0vO9J6H>O~5^>WWw$$wRM{&$hGUnF)gYp?3d zBeg9mu}QNI&dz@m0AwY`CVBn}j0u>e1M)-!OL9+P62rbz%n4~};x#sE=5t~TKF+>f zQ04eOi9uSABjF$`qs|V623B#F4G)?a#9{;vG;uRU6gV<)BP3hzt4k#J7&}i{QdtNL zl?P3eQWgsGO!^{uH>7&+e-8tlawjX@^VhxWe$;H5drC;V+Nn6%|CH*s+1UxJLPB-j z?;YO!KrCbl>q@I{yWDpcHC#8Z$`77qpQHUSW{u#P&rxUGBKMwJ;}pkX<~>KnI{%ul zz3#`24#`coABk{ga-9?HTj70BYyD-Fz27AS-slzD9-MS&<~^Qk{`%h&lq24rTy^pS$(l(@l3= z^Oqc1)Lp#$+a++4d;0OB{>kO>yZk@h6U({fFv)L?_5PW?6Ky=RD(l&*NFW1voK_cf68cJyqVihZnE?_y&XT!=34AsP;S`3i!ZeyCB;MUg?SWP zW-2nA>4qjs^CtUD`>@~gTugU9M-}{JvfV%N_e;qLm%RDQ|Ay2B1)u%J9CqDeQ@6B! z`lF=}0uyWZ@p>$g}(e~h~W03{^EEzkqCSA|JDbC~IeKkAWnBzin4Zm5_)p>8Y%DyG6`@L25 z-tG!+?N!(IPJH)l-@EdUme#6FB|rX5e`5E(>L~-;51$WNzNb1$zt2y5Zg< + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::gm::arg_fail Member List
+
+
+ +

This is the complete list of members for stan::gm::arg_fail, including all inherited members.

+ + + + + + + + + + + + + + + + + + + + + + +
_descriptionstan::gm::argumentprotected
_is_presentstan::gm::unvalued_argumentprotected
_namestan::gm::argumentprotected
arg(const std::string name)stan::gm::argumentinlinevirtual
arg_fail()stan::gm::arg_failinline
argument()stan::gm::argumentinline
argument(const std::string name)stan::gm::argumentinline
compute_indent(const int depth)stan::gm::argumentinline
description() const stan::gm::argumentinline
find_arg(std::string name, std::string prefix, std::vector< std::string > &valid_paths)stan::gm::argumentinlinevirtual
help_widthstan::gm::argumentprotected
indent_widthstan::gm::argumentprotected
is_present()stan::gm::unvalued_argumentinline
name() const stan::gm::argumentinline
parse_args(std::vector< std::string > &args, std::ostream *out, std::ostream *err, bool &help_flag)stan::gm::unvalued_argumentinlinevirtual
print(std::ostream *s, const int depth, const std::string prefix)stan::gm::unvalued_argumentinlinevirtual
print_help(std::ostream *s, const int depth, const bool recurse=false)stan::gm::unvalued_argumentinlinevirtual
probe_args(argument *base_arg, std::stringstream &s)stan::gm::argumentinlinevirtual
split_arg(const std::string &arg, std::string &name, std::string &value)stan::gm::argumentinlinestatic
unvalued_argument()stan::gm::unvalued_argumentinline
~argument()stan::gm::argumentinlinevirtual
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1gm_1_1arg__fail.html b/doc/api/html/classstan_1_1gm_1_1arg__fail.html new file mode 100644 index 00000000000..fabd432c956 --- /dev/null +++ b/doc/api/html/classstan_1_1gm_1_1arg__fail.html @@ -0,0 +1,201 @@ + + + + + +Stan: stan::gm::arg_fail Class Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::gm::arg_fail Class Reference
+
+
+ +

#include <arg_fail.hpp>

+
+Inheritance diagram for stan::gm::arg_fail:
+
+
+ + +stan::gm::unvalued_argument +stan::gm::argument + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 arg_fail ()
 
- Public Member Functions inherited from stan::gm::unvalued_argument
 unvalued_argument ()
 
void print (std::ostream *s, const int depth, const std::string prefix)
 
void print_help (std::ostream *s, const int depth, const bool recurse=false)
 
bool parse_args (std::vector< std::string > &args, std::ostream *out, std::ostream *err, bool &help_flag)
 
bool is_present ()
 
- Public Member Functions inherited from stan::gm::argument
 argument ()
 
 argument (const std::string name)
 
virtual ~argument ()
 
std::string name () const
 
std::string description () const
 
virtual void probe_args (argument *base_arg, std::stringstream &s)
 
virtual void find_arg (std::string name, std::string prefix, std::vector< std::string > &valid_paths)
 
virtual argumentarg (const std::string name)
 
int compute_indent (const int depth)
 
+ + + + + + + +

+Additional Inherited Members

- Static Public Member Functions inherited from stan::gm::argument
static void split_arg (const std::string &arg, std::string &name, std::string &value)
 
- Protected Attributes inherited from stan::gm::unvalued_argument
bool _is_present
 
+

Detailed Description

+
+

Definition at line 10 of file arg_fail.hpp.

+

Constructor & Destructor Documentation

+ +
+
+ + + + + +
+ + + + + + + +
stan::gm::arg_fail::arg_fail ()
+
+inline
+
+ +

Definition at line 14 of file arg_fail.hpp.

+ +
+
+
The documentation for this class was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1gm_1_1arg__fail.png b/doc/api/html/classstan_1_1gm_1_1arg__fail.png new file mode 100644 index 0000000000000000000000000000000000000000..53818ac2af0f44f4f9035fd62a68e8cd71a6be5a GIT binary patch literal 974 zcmeAS@N?(olHy`uVBq!ia0vp^>wvg}gBeJAsw;d4QW60^A+G=b{|7Q(y!l$%e`o@b z1;z&s9ANFdBM;++19?MKOJs=cTsAcen1H zRC0>HxO{PT(N7COAFlttMpu|^=1;EktUeT#9naLqw(Zn~c`lRuDqn=Zty-Dh^^JL# znz2ge@vj`7yABKQu8w{9{x6%yC02gbW|hCJAosVdQ>iq3`E1T-1BQwZOcL!IOXAlr ztT}#ZZjSpWSs!yP<_7tN+z(t|FjWZdVu)+eYY@l7efQ_27eqP(*y<_pjZ`<;3*k;boUKIJ)^oCpc-OqXXZ|r8hz5DaVOZnZ~PqCk` zw5XlVbNck}&b-RryI;21{;oK^A~@Fg{eu;N;k-lJf={zlAKJEdZk~PZ&e|0`*_;+p$-0Jj7vK9ITD?Za z`_i=C2j9PZ*S}TeZ^O?&Us(U1eqdf+zPm-m_L%s=_v*l~EOrW?w1*?s^Hb8LvzE^j z89qEX&98-tl6e`IFdRr=HqwogM9!wD*ha-nEy+&q^&kR(Mf2 zG5f{4NFFoq_Pi(cMdn!E?<%_`k|nU^GX05czh Mr>mdKI;Vst0Mq>9=l}o! literal 0 HcmV?d00001 diff --git a/doc/api/html/classstan_1_1gm_1_1arg__fixed__param-members.html b/doc/api/html/classstan_1_1gm_1_1arg__fixed__param-members.html new file mode 100644 index 00000000000..8f21d54f713 --- /dev/null +++ b/doc/api/html/classstan_1_1gm_1_1arg__fixed__param-members.html @@ -0,0 +1,133 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::gm::arg_fixed_param Member List
+
+
+ +

This is the complete list of members for stan::gm::arg_fixed_param, including all inherited members.

+ + + + + + + + + + + + + + + + + + + + + + +
_descriptionstan::gm::argumentprotected
_is_presentstan::gm::unvalued_argumentprotected
_namestan::gm::argumentprotected
arg(const std::string name)stan::gm::argumentinlinevirtual
arg_fixed_param()stan::gm::arg_fixed_paraminline
argument()stan::gm::argumentinline
argument(const std::string name)stan::gm::argumentinline
compute_indent(const int depth)stan::gm::argumentinline
description() const stan::gm::argumentinline
find_arg(std::string name, std::string prefix, std::vector< std::string > &valid_paths)stan::gm::argumentinlinevirtual
help_widthstan::gm::argumentprotected
indent_widthstan::gm::argumentprotected
is_present()stan::gm::unvalued_argumentinline
name() const stan::gm::argumentinline
parse_args(std::vector< std::string > &args, std::ostream *out, std::ostream *err, bool &help_flag)stan::gm::unvalued_argumentinlinevirtual
print(std::ostream *s, const int depth, const std::string prefix)stan::gm::unvalued_argumentinlinevirtual
print_help(std::ostream *s, const int depth, const bool recurse=false)stan::gm::unvalued_argumentinlinevirtual
probe_args(argument *base_arg, std::stringstream &s)stan::gm::argumentinlinevirtual
split_arg(const std::string &arg, std::string &name, std::string &value)stan::gm::argumentinlinestatic
unvalued_argument()stan::gm::unvalued_argumentinline
~argument()stan::gm::argumentinlinevirtual
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1gm_1_1arg__fixed__param.html b/doc/api/html/classstan_1_1gm_1_1arg__fixed__param.html new file mode 100644 index 00000000000..ca29a1a84aa --- /dev/null +++ b/doc/api/html/classstan_1_1gm_1_1arg__fixed__param.html @@ -0,0 +1,201 @@ + + + + + +Stan: stan::gm::arg_fixed_param Class Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::gm::arg_fixed_param Class Reference
+
+
+ +

#include <arg_fixed_param.hpp>

+
+Inheritance diagram for stan::gm::arg_fixed_param:
+
+
+ + +stan::gm::unvalued_argument +stan::gm::argument + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 arg_fixed_param ()
 
- Public Member Functions inherited from stan::gm::unvalued_argument
 unvalued_argument ()
 
void print (std::ostream *s, const int depth, const std::string prefix)
 
void print_help (std::ostream *s, const int depth, const bool recurse=false)
 
bool parse_args (std::vector< std::string > &args, std::ostream *out, std::ostream *err, bool &help_flag)
 
bool is_present ()
 
- Public Member Functions inherited from stan::gm::argument
 argument ()
 
 argument (const std::string name)
 
virtual ~argument ()
 
std::string name () const
 
std::string description () const
 
virtual void probe_args (argument *base_arg, std::stringstream &s)
 
virtual void find_arg (std::string name, std::string prefix, std::vector< std::string > &valid_paths)
 
virtual argumentarg (const std::string name)
 
int compute_indent (const int depth)
 
+ + + + + + + +

+Additional Inherited Members

- Static Public Member Functions inherited from stan::gm::argument
static void split_arg (const std::string &arg, std::string &name, std::string &value)
 
- Protected Attributes inherited from stan::gm::unvalued_argument
bool _is_present
 
+

Detailed Description

+
+

Definition at line 10 of file arg_fixed_param.hpp.

+

Constructor & Destructor Documentation

+ +
+
+ + + + + +
+ + + + + + + +
stan::gm::arg_fixed_param::arg_fixed_param ()
+
+inline
+
+ +

Definition at line 14 of file arg_fixed_param.hpp.

+ +
+
+
The documentation for this class was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1gm_1_1arg__fixed__param.png b/doc/api/html/classstan_1_1gm_1_1arg__fixed__param.png new file mode 100644 index 0000000000000000000000000000000000000000..88f6ebcc7044b1524a162a2b0868a39b93d0312b GIT binary patch literal 1029 zcmeAS@N?(olHy`uVBq!ia0vp^>wvg}gBeJAsw;d4QW60^A+G=b{|7Q(y!l$%e`o@b z1;z&s9ANFdBM;8?EY1I{wvG- zA9$8jGka@UckrwtYhfK1W#*sWJ%;C)11F^&ELAZY{Y`(Ij{^|#LR?Cry98~mmnR(;u0y-Ty+G-<*tZSA#cszuznR@;9qZC06E z6uo`Vx>Kpyc{;Q6L~9?ci=1?>a)U(C##L5xUoATkd{^z}?&#c*3C4F7Rwjqs{kBqN z?x)jRZ@)CluG}LqOZ88=nDe~@_iKarZ@$~GcB>teTjTAM8_v2+@~eCq{zhRPY< z-#^bhRjzmUXqnpmlO=ys7&aU(Wn5Db%b*=2et_#b>xM&kxPSj0m3V9;pqeQb6Fv#3 z$#c`9%e<4mupM@(pI}=)H_Ti|H*vS_`Tg=wAD*9FvO0LlwLkGmf3KN65m8Od`oor2 zIomL+UnZ_3IN++T$Jwc$*S&O``1bg|MDxpQ^Cz#ps(;ezZqVmdX1TJnKfSBD^{&0Y z`sqQN_PgcXiM5scFZ!@ou}75!PSY-n~#rI_%quU2iX61_#~F z{IjKZ&%Y^pyX|CiNc{C~#rKES24%OGwSQeZHScciUkeM#Q-TIki)9S2hP?m3YHyi} zchLE}PrjFYza2HH?qK=^YyBNZD=rxGq;lBH>-y-m=k->l) zs;F?m?`txA+di$oeEXH$(#pVc%@gM%=j7WnhPtc@+jrId`?S^T(!D0{%jdk^wf^O8 zk;(^u_mu6@RC8bUkTWDaENb)A6S`ZbH3r0n_U*FRE%JH~ds+3}Puo_xJbqZc(QMDg z6;}L8yVgB+>=SdATRiLa%Dk>US7cSzC~Xr-ePF%ocX|0z>4tfae=P2pSG}uw>9r1C zwR`=SPfzhJ*;_XM)jEB>+zV+FUZp4mtdrTf?_})Tck_5uUFCko8 z%emKO9nM#UJg;RnNa;1W8hc;;0ONH*hn+d4jQ>=j-rOi_rPyM?_@7bnhug8!#?6|* PJj>we>gTe~DWM4fMgsO~ literal 0 HcmV?d00001 diff --git a/doc/api/html/classstan_1_1gm_1_1arg__hmc-members.html b/doc/api/html/classstan_1_1gm_1_1arg__hmc-members.html new file mode 100644 index 00000000000..8fd290fe57a --- /dev/null +++ b/doc/api/html/classstan_1_1gm_1_1arg__hmc-members.html @@ -0,0 +1,133 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::gm::arg_hmc Member List
+
+
+ +

This is the complete list of members for stan::gm::arg_hmc, including all inherited members.

+ + + + + + + + + + + + + + + + + + + + + + +
_descriptionstan::gm::argumentprotected
_namestan::gm::argumentprotected
_subargumentsstan::gm::categorical_argumentprotected
arg(const std::string name)stan::gm::categorical_argumentinlinevirtual
arg_hmc()stan::gm::arg_hmcinline
argument()stan::gm::argumentinline
argument(const std::string name)stan::gm::argumentinline
compute_indent(const int depth)stan::gm::argumentinline
description() const stan::gm::argumentinline
find_arg(std::string name, std::string prefix, std::vector< std::string > &valid_paths)stan::gm::categorical_argumentinlinevirtual
help_widthstan::gm::argumentprotected
indent_widthstan::gm::argumentprotected
name() const stan::gm::argumentinline
parse_args(std::vector< std::string > &args, std::ostream *out, std::ostream *err, bool &help_flag)stan::gm::categorical_argumentinlinevirtual
print(std::ostream *s, const int depth, const std::string prefix)stan::gm::categorical_argumentinlinevirtual
print_help(std::ostream *s, const int depth, const bool recurse)stan::gm::categorical_argumentinlinevirtual
probe_args(argument *base_arg, std::stringstream &s)stan::gm::categorical_argumentinlinevirtual
split_arg(const std::string &arg, std::string &name, std::string &value)stan::gm::argumentinlinestatic
subarguments()stan::gm::categorical_argumentinline
~argument()stan::gm::argumentinlinevirtual
~categorical_argument()stan::gm::categorical_argumentinlinevirtual
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1gm_1_1arg__hmc.html b/doc/api/html/classstan_1_1gm_1_1arg__hmc.html new file mode 100644 index 00000000000..6f7bddecdbf --- /dev/null +++ b/doc/api/html/classstan_1_1gm_1_1arg__hmc.html @@ -0,0 +1,201 @@ + + + + + +Stan: stan::gm::arg_hmc Class Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::gm::arg_hmc Class Reference
+
+
+ +

#include <arg_hmc.hpp>

+
+Inheritance diagram for stan::gm::arg_hmc:
+
+
+ + +stan::gm::categorical_argument +stan::gm::argument + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 arg_hmc ()
 
- Public Member Functions inherited from stan::gm::categorical_argument
virtual ~categorical_argument ()
 
void print (std::ostream *s, const int depth, const std::string prefix)
 
void print_help (std::ostream *s, const int depth, const bool recurse)
 
bool parse_args (std::vector< std::string > &args, std::ostream *out, std::ostream *err, bool &help_flag)
 
virtual void probe_args (argument *base_arg, std::stringstream &s)
 
void find_arg (std::string name, std::string prefix, std::vector< std::string > &valid_paths)
 
std::vector< argument * > & subarguments ()
 
argumentarg (const std::string name)
 
- Public Member Functions inherited from stan::gm::argument
 argument ()
 
 argument (const std::string name)
 
virtual ~argument ()
 
std::string name () const
 
std::string description () const
 
int compute_indent (const int depth)
 
+ + + + + + + +

+Additional Inherited Members

- Static Public Member Functions inherited from stan::gm::argument
static void split_arg (const std::string &arg, std::string &name, std::string &value)
 
- Protected Attributes inherited from stan::gm::categorical_argument
std::vector< argument * > _subarguments
 
+

Detailed Description

+
+

Definition at line 15 of file arg_hmc.hpp.

+

Constructor & Destructor Documentation

+ +
+
+ + + + + +
+ + + + + + + +
stan::gm::arg_hmc::arg_hmc ()
+
+inline
+
+ +

Definition at line 19 of file arg_hmc.hpp.

+ +
+
+
The documentation for this class was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1gm_1_1arg__hmc.png b/doc/api/html/classstan_1_1gm_1_1arg__hmc.png new file mode 100644 index 0000000000000000000000000000000000000000..8b89c05de733a84e45c958e6e3c20d27b9c5546f GIT binary patch literal 993 zcmeAS@N?(olHy`uVBq!ia0vp^JAt@^gBeKngzicMQW60^A+G=b{|7Q(y!l$%e`o@b z1;z&s9ANFdBM;C(>%p7D?WysAH9Noc;@k-&#Rom_#q~>wS zQ2gxa_mP=TAG+F8P2lhaPx9FuTod5~?x(3TSM z`FL{3*Tl2xA04kAH~oH(DWP{Z^NmN(7`E-OY|zc)OX$YO-Jo_%qP<1KlNl5^-Lt(X z>CUa3uw?#5>(bKCpIzLZO}bLBymE${(>|Z?&+VT+`+TlwrQ37;)G)aji{tK3tMvVH zP3!X`OV`Qk!n__Ht>Ij?jCJMDC8hDFuX0{v&MY&!*SBul2EJ^OTk4wJrO#5eSMB-w z>g<`a`}a4j5sNc}bbyJ4qahwn|Br*8AVI3q4;R%7hvtGn)U-mN+y{496t znos4N_rp*Bo40=1zV+ac)II#YbYG}*{@L3_`vY`eepr?lptgnGxc}MY`*VKp+n(dP zeeY6}iEB$j?Y;O*U&>}(U4QYC9nPYC=ps4@!7K`;A`R8z1tZg9upa~pnzY) zso0{Z$iUM9je|c2{w#CGg9Zd7ya29yC)-V+WX0S=c(P#Ty{0*c>LOVudhzpW{`Vx z;ZLETubkL&+dv7Y(QVE5>lt^Ku~&Of}bG9|P^9sER3)QKbcBY# + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::gm::arg_id Member List
+
+
+ +

This is the complete list of members for stan::gm::arg_id, including all inherited members.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
_bad_valuestan::gm::singleton_argument< T >protected
_constrainedstan::gm::singleton_argument< T >protected
_defaultstan::gm::valued_argumentprotected
_default_valuestan::gm::singleton_argument< T >protected
_descriptionstan::gm::argumentprotected
_good_valuestan::gm::singleton_argument< T >protected
_namestan::gm::argumentprotected
_validitystan::gm::singleton_argument< T >protected
_valuestan::gm::singleton_argument< T >protected
_value_typestan::gm::valued_argumentprotected
arg(const std::string name)stan::gm::argumentinlinevirtual
arg_id()stan::gm::arg_idinline
argument()stan::gm::argumentinline
argument(const std::string name)stan::gm::argumentinline
compute_indent(const int depth)stan::gm::argumentinline
description() const stan::gm::argumentinline
find_arg(std::string name, std::string prefix, std::vector< std::string > &valid_paths)stan::gm::singleton_argument< T >inlinevirtual
help_widthstan::gm::argumentprotected
indent_widthstan::gm::argumentprotected
is_default()stan::gm::singleton_argument< T >inlinevirtual
is_valid(int value)stan::gm::arg_idinline
stan::gm::singleton_argument::is_valid(T value)stan::gm::singleton_argument< T >inlineprotectedvirtual
name() const stan::gm::argumentinline
parse_args(std::vector< std::string > &args, std::ostream *out, std::ostream *err, bool &help_flag)stan::gm::singleton_argument< T >inlinevirtual
print(std::ostream *s, const int depth, const std::string prefix)stan::gm::valued_argumentinlinevirtual
print_help(std::ostream *s, const int depth, const bool recurse=false)stan::gm::valued_argumentinlinevirtual
print_valid()stan::gm::singleton_argument< T >inlinevirtual
print_value()stan::gm::singleton_argument< T >inlinevirtual
probe_args(argument *base_arg, std::stringstream &s)stan::gm::singleton_argument< T >inlinevirtual
set_value(const T &value)stan::gm::singleton_argument< T >inline
singleton_argument()stan::gm::singleton_argument< T >inline
singleton_argument(const std::string name)stan::gm::singleton_argument< T >inline
split_arg(const std::string &arg, std::string &name, std::string &value)stan::gm::argumentinlinestatic
value()stan::gm::singleton_argument< T >inline
~argument()stan::gm::argumentinlinevirtual
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1gm_1_1arg__id.html b/doc/api/html/classstan_1_1gm_1_1arg__id.html new file mode 100644 index 00000000000..c884f793d87 --- /dev/null +++ b/doc/api/html/classstan_1_1gm_1_1arg__id.html @@ -0,0 +1,255 @@ + + + + + +Stan: stan::gm::arg_id Class Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::gm::arg_id Class Reference
+
+
+ +

#include <arg_id.hpp>

+
+Inheritance diagram for stan::gm::arg_id:
+
+
+ + +stan::gm::singleton_argument< T > +stan::gm::valued_argument +stan::gm::argument + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 arg_id ()
 
bool is_valid (int value)
 
- Public Member Functions inherited from stan::gm::singleton_argument< T >
 singleton_argument ()
 
 singleton_argument (const std::string name)
 
bool parse_args (std::vector< std::string > &args, std::ostream *out, std::ostream *err, bool &help_flag)
 
virtual void probe_args (argument *base_arg, std::stringstream &s)
 
void find_arg (std::string name, std::string prefix, std::vector< std::string > &valid_paths)
 
value ()
 
bool set_value (const T &value)
 
std::string print_value ()
 
std::string print_valid ()
 
bool is_default ()
 
- Public Member Functions inherited from stan::gm::valued_argument
virtual void print (std::ostream *s, const int depth, const std::string prefix)
 
virtual void print_help (std::ostream *s, const int depth, const bool recurse=false)
 
- Public Member Functions inherited from stan::gm::argument
 argument ()
 
 argument (const std::string name)
 
virtual ~argument ()
 
std::string name () const
 
std::string description () const
 
virtual argumentarg (const std::string name)
 
int compute_indent (const int depth)
 
+ + + + + + + + + + + + + + + + + + + + +

+Additional Inherited Members

- Static Public Member Functions inherited from stan::gm::argument
static void split_arg (const std::string &arg, std::string &name, std::string &value)
 
- Protected Member Functions inherited from stan::gm::singleton_argument< T >
virtual bool is_valid (T value)
 
- Protected Attributes inherited from stan::gm::singleton_argument< T >
std::string _validity
 
_value
 
_default_value
 
bool _constrained
 
_good_value
 
_bad_value
 
+

Detailed Description

+
+

Definition at line 10 of file arg_id.hpp.

+

Constructor & Destructor Documentation

+ +
+
+ + + + + +
+ + + + + + + +
stan::gm::arg_id::arg_id ()
+
+inline
+
+ +

Definition at line 14 of file arg_id.hpp.

+ +
+
+

Member Function Documentation

+ +
+
+ + + + + +
+ + + + + + + + +
bool stan::gm::arg_id::is_valid (int value)
+
+inline
+
+ +

Definition at line 26 of file arg_id.hpp.

+ +
+
+
The documentation for this class was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1gm_1_1arg__id.png b/doc/api/html/classstan_1_1gm_1_1arg__id.png new file mode 100644 index 0000000000000000000000000000000000000000..eda6aa52dec42f38d5fe10f41565a6c2ceadeae1 GIT binary patch literal 1397 zcmcJPZBUX~6vrReEHW)!Z9>t_CTMH7317F=wl+5(d2BOLXpO{jGnITPLDbZ;9D6g& z6)OvS83i>#A4{bObzwAh7D5Ge2|=w0-_TrhP1KU5rv0$f%zoQDbM853?!6z*`Ty>@ z6dV*_ZRuzU0Dv`w+Z|%^a+8S>=BB+mF-2=~$l#v{{zjwG6poC~(DR#rHANpyEEZc_ z(yTS5h~$udU3Y7q}WDMg(7cvktV|`_`#r zyjB*GY314cXA$yFl|;mvBVOHM zym476;YK=a_A26}8hT>y__icTR1 zLY+s*9o!&99OY(Dy0tR=kt9%&5#ErGrd-gfGDqDPa`Ai%45cM$1vGzgGLx;9PPOPm znJW!_a3Lov`=4q&99ofD9Pln@nK;-g=C3qHx#ul8+Vh4Y4ZNcVs+O$B`!IP+WN))Je1k9wmcyI-^b5AeqkhSyvX#lNkl`YXHcySV!J?h>f=#~`xpD)Pam!6|R~R-)^^pbp7do?}NjzfACSgB@l22<$RCx?DhTexHhpjn@ ziloda?v14eM2}SWEN8!lc{@uu_seGU#z;_~_C2i!NgU?(ac7>a?8G~7!Re;Yk&9}d z3g@K=x?fmfH>)+|f-dH3rH=E*WmaKyog=gU#j8_j$TwU-LRadjf;doJkAW)EzM740 z!sawgpqvL%naOv2o5_Q8X4LYnOte~1fL2Aj=eo5O0EXqO&XgcKMy8N^DcjgktZUg6 zW4qEUto^eN{zrqwF;9@%U>gj@ z{ZVY!-t#kF{8OLMyuQO2(YK{q@rE9D7w!~I)y7J_xyyhNb2rp z`mP359i~z>aO1()mt_{=L!|xoL_U5o*E`DVoKN6uCJ&YWkgLL4OdyJ1QWbQ6En!l4 zwEdRHHz{Oao)QNj!zD z-MdatDwa{kCxk;zycikbm(K13OD8coDN6oh7#E->|BU7jAn2k9SWirTy&md& zq0zmOuTEAs(FbCSxh6gC_f89rD;EwS={4>U*IOAFGMCu{F;ljQ^ytwnv;Rkp9Gm7~ z8(?YkCk-FBkCYRkNZ8-wX!4$VDHytFY)~ll*a+Jbzd0#*jb_Rco?h$le2f9lcJ5=X zJNpuRVX`IMuCH9(`(8tgR-D=$_y+EAKI sp2zLx`eAd!rcb|D#`5_Q5oxt(&f1h&M9TM8m}VpZ`3LQW{SIgU4JMnhA^-pY literal 0 HcmV?d00001 diff --git a/doc/api/html/classstan_1_1gm_1_1arg__init-members.html b/doc/api/html/classstan_1_1gm_1_1arg__init-members.html new file mode 100644 index 00000000000..9e78b29f3ca --- /dev/null +++ b/doc/api/html/classstan_1_1gm_1_1arg__init-members.html @@ -0,0 +1,146 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::gm::arg_init Member List
+
+
+ +

This is the complete list of members for stan::gm::arg_init, including all inherited members.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
_bad_valuestan::gm::singleton_argument< T >protected
_constrainedstan::gm::singleton_argument< T >protected
_defaultstan::gm::valued_argumentprotected
_default_valuestan::gm::singleton_argument< T >protected
_descriptionstan::gm::argumentprotected
_good_valuestan::gm::singleton_argument< T >protected
_namestan::gm::argumentprotected
_validitystan::gm::singleton_argument< T >protected
_valuestan::gm::singleton_argument< T >protected
_value_typestan::gm::valued_argumentprotected
arg(const std::string name)stan::gm::argumentinlinevirtual
arg_init()stan::gm::arg_initinline
argument()stan::gm::argumentinline
argument(const std::string name)stan::gm::argumentinline
compute_indent(const int depth)stan::gm::argumentinline
description() const stan::gm::argumentinline
find_arg(std::string name, std::string prefix, std::vector< std::string > &valid_paths)stan::gm::singleton_argument< T >inlinevirtual
help_widthstan::gm::argumentprotected
indent_widthstan::gm::argumentprotected
is_default()stan::gm::singleton_argument< T >inlinevirtual
is_valid(T value)stan::gm::singleton_argument< T >inlineprotectedvirtual
name() const stan::gm::argumentinline
parse_args(std::vector< std::string > &args, std::ostream *out, std::ostream *err, bool &help_flag)stan::gm::singleton_argument< T >inlinevirtual
print(std::ostream *s, const int depth, const std::string prefix)stan::gm::valued_argumentinlinevirtual
print_help(std::ostream *s, const int depth, const bool recurse=false)stan::gm::valued_argumentinlinevirtual
print_valid()stan::gm::singleton_argument< T >inlinevirtual
print_value()stan::gm::singleton_argument< T >inlinevirtual
probe_args(argument *base_arg, std::stringstream &s)stan::gm::singleton_argument< T >inlinevirtual
set_value(const T &value)stan::gm::singleton_argument< T >inline
singleton_argument()stan::gm::singleton_argument< T >inline
singleton_argument(const std::string name)stan::gm::singleton_argument< T >inline
split_arg(const std::string &arg, std::string &name, std::string &value)stan::gm::argumentinlinestatic
value()stan::gm::singleton_argument< T >inline
~argument()stan::gm::argumentinlinevirtual
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1gm_1_1arg__init.html b/doc/api/html/classstan_1_1gm_1_1arg__init.html new file mode 100644 index 00000000000..752f050412b --- /dev/null +++ b/doc/api/html/classstan_1_1gm_1_1arg__init.html @@ -0,0 +1,226 @@ + + + + + +Stan: stan::gm::arg_init Class Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::gm::arg_init Class Reference
+
+
+ +

#include <arg_init.hpp>

+
+Inheritance diagram for stan::gm::arg_init:
+
+
+ + +stan::gm::singleton_argument< T > +stan::gm::valued_argument +stan::gm::argument + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 arg_init ()
 
- Public Member Functions inherited from stan::gm::singleton_argument< T >
 singleton_argument ()
 
 singleton_argument (const std::string name)
 
bool parse_args (std::vector< std::string > &args, std::ostream *out, std::ostream *err, bool &help_flag)
 
virtual void probe_args (argument *base_arg, std::stringstream &s)
 
void find_arg (std::string name, std::string prefix, std::vector< std::string > &valid_paths)
 
value ()
 
bool set_value (const T &value)
 
std::string print_value ()
 
std::string print_valid ()
 
bool is_default ()
 
- Public Member Functions inherited from stan::gm::valued_argument
virtual void print (std::ostream *s, const int depth, const std::string prefix)
 
virtual void print_help (std::ostream *s, const int depth, const bool recurse=false)
 
- Public Member Functions inherited from stan::gm::argument
 argument ()
 
 argument (const std::string name)
 
virtual ~argument ()
 
std::string name () const
 
std::string description () const
 
virtual argumentarg (const std::string name)
 
int compute_indent (const int depth)
 
+ + + + + + + + + + + + + + + + + + + + +

+Additional Inherited Members

- Static Public Member Functions inherited from stan::gm::argument
static void split_arg (const std::string &arg, std::string &name, std::string &value)
 
- Protected Member Functions inherited from stan::gm::singleton_argument< T >
virtual bool is_valid (T value)
 
- Protected Attributes inherited from stan::gm::singleton_argument< T >
std::string _validity
 
_value
 
_default_value
 
bool _constrained
 
_good_value
 
_bad_value
 
+

Detailed Description

+
+

Definition at line 10 of file arg_init.hpp.

+

Constructor & Destructor Documentation

+ +
+
+ + + + + +
+ + + + + + + +
stan::gm::arg_init::arg_init ()
+
+inline
+
+ +

Definition at line 14 of file arg_init.hpp.

+ +
+
+
The documentation for this class was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1gm_1_1arg__init.png b/doc/api/html/classstan_1_1gm_1_1arg__init.png new file mode 100644 index 0000000000000000000000000000000000000000..fa6405c0c8aabd469522208894ab1affed847105 GIT binary patch literal 1390 zcmeAS@N?(olHy`uVBq!ia0vp^r-AqY2Q!eI`zZYokdg@S332`Z|38rV;?396{zDUh zEHFNB-~emq9eE&^qa?^Lm;tB=1g@S6F=Aj~`RnQ87*fIbcJA#>kJs?A&F){d=fCp* z&fc>JRX!@lEk1i~%I(Nz#|sJ%rb#5ruq;yHZQSiK$@Y%xq&I~JRXr}{&gpok_wZ(L zMEv=><@5i1{F+)Py7Y4WvqxW(LpSnFTjhNz&u{0Mx#EX8gT5~LsCW2`>Gf5ik8kOk zPgue{r}SiG08feTI+0arthq;hH>$`!tm#{tsh9R+@#&b)i@inP@PDt%*RtQq;>o+W zbme}pON@1!vv{$2Ta;m;NRzY>HcHANh$p06IH5hVv~9bc^KY3 zXEfko-f1KE_yo_BPa%?SX)5CO#~E}U=`nmO5ND{~!QEhchxLHmJEjEwa>fnqyBTgA zj%9fB5JmcdfZ;I<4i`@;CXmTHx>ar__j^xRQd~0opVhtp3%x7M_+G!3%=&dwK0f|g z_|4lcSrxLF>Fu?US(4h=j#FSyk6)rXs@ec@jOmb~(Gj;PW*{%PL=^|-e9BU;;K zd?xLxDLu&@eWuWI!m`PWPDxKsb6D-4F0|{c>dMo7GSNmU^H0x_b!{$9+AcUPNxaQGy9ebr_BAR zTDJG;_2zWjg+a|vpP#jy#=j=+N{xcqX9Z7F@%MkZ!&_Ch#&DM(Os!V&yrj2`_wJdG ztp)ZG)6bhvSCM^Gw4>Wn%`>e)+;dYqD4ERD1BM10!}re&5-p7}a{YxVY(C>mb zNU_##U#Z}KbaiFb)TNjIPv7Oe)+j(fO3UYC(c(?*o9>ng+U-7L*tNoO)x0ZjFGWxI zbou9M>9rCkb7E?9sxlreU3q&=?Z3?>CrgVqtom$Ja8so|kLQ;E*)w8WY;(G1x2_f2 zIXl_A?oF{~(HhzFQj6bD+V)O;dX|W9R~~=!*?aZ(e@jo_K6yvvy<4gtSufUle=hyM zYft3eKO1K!&z^E?YVz9SY1h9Ny*W_l$vN4tH}n70#OmmMXE%P6(LT2zw@;KkY<>H# zy9bMXCfRLzzsaI>>7N&Jx1MjZZBtqKG<)s6*1h^$RBBV7@5;&7_RP8&?j7`VPL_(N z^tb0TRBj%NRXHj5PRa9I#jYa~k0luHoM%oD00zFzv5Ar=o~|_NIpd*M*T)!f1S19G zN#F+*oj4K&I2fECK+}9o>CcNkPYllQKX=UJ5z~|B@;hwKf4=^7O5A!6*A+iE_^$K4iGT&fVCA5*+GYIn$0hQ6Ycs?VJbFKpdmzwPSs z?cV>Uo}MHW{OnE1%xtNW%;Gn@y&0l>cI15XethZV|6_}9>i@Spe#z48xaN~ry8EX+ zo19zSH+4DNfxx^y-}kfsE4*&L^U7|<1*v2HSmWgo;X**+|XW#QKw gC7d|^zy8B+(p9Nb`J~euSU56xy85}Sb4q9e0Oe<+0ssI2 literal 0 HcmV?d00001 diff --git a/doc/api/html/classstan_1_1gm_1_1arg__init__alpha-members.html b/doc/api/html/classstan_1_1gm_1_1arg__init__alpha-members.html new file mode 100644 index 00000000000..213987b61b0 --- /dev/null +++ b/doc/api/html/classstan_1_1gm_1_1arg__init__alpha-members.html @@ -0,0 +1,147 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::gm::arg_init_alpha Member List
+
+
+ +

This is the complete list of members for stan::gm::arg_init_alpha, including all inherited members.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
_bad_valuestan::gm::singleton_argument< T >protected
_constrainedstan::gm::singleton_argument< T >protected
_defaultstan::gm::valued_argumentprotected
_default_valuestan::gm::singleton_argument< T >protected
_descriptionstan::gm::argumentprotected
_good_valuestan::gm::singleton_argument< T >protected
_namestan::gm::argumentprotected
_validitystan::gm::singleton_argument< T >protected
_valuestan::gm::singleton_argument< T >protected
_value_typestan::gm::valued_argumentprotected
arg(const std::string name)stan::gm::argumentinlinevirtual
arg_init_alpha()stan::gm::arg_init_alphainline
argument()stan::gm::argumentinline
argument(const std::string name)stan::gm::argumentinline
compute_indent(const int depth)stan::gm::argumentinline
description() const stan::gm::argumentinline
find_arg(std::string name, std::string prefix, std::vector< std::string > &valid_paths)stan::gm::singleton_argument< T >inlinevirtual
help_widthstan::gm::argumentprotected
indent_widthstan::gm::argumentprotected
is_default()stan::gm::singleton_argument< T >inlinevirtual
is_valid(double value)stan::gm::arg_init_alphainline
stan::gm::singleton_argument::is_valid(T value)stan::gm::singleton_argument< T >inlineprotectedvirtual
name() const stan::gm::argumentinline
parse_args(std::vector< std::string > &args, std::ostream *out, std::ostream *err, bool &help_flag)stan::gm::singleton_argument< T >inlinevirtual
print(std::ostream *s, const int depth, const std::string prefix)stan::gm::valued_argumentinlinevirtual
print_help(std::ostream *s, const int depth, const bool recurse=false)stan::gm::valued_argumentinlinevirtual
print_valid()stan::gm::singleton_argument< T >inlinevirtual
print_value()stan::gm::singleton_argument< T >inlinevirtual
probe_args(argument *base_arg, std::stringstream &s)stan::gm::singleton_argument< T >inlinevirtual
set_value(const T &value)stan::gm::singleton_argument< T >inline
singleton_argument()stan::gm::singleton_argument< T >inline
singleton_argument(const std::string name)stan::gm::singleton_argument< T >inline
split_arg(const std::string &arg, std::string &name, std::string &value)stan::gm::argumentinlinestatic
value()stan::gm::singleton_argument< T >inline
~argument()stan::gm::argumentinlinevirtual
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1gm_1_1arg__init__alpha.html b/doc/api/html/classstan_1_1gm_1_1arg__init__alpha.html new file mode 100644 index 00000000000..6c402c6a63b --- /dev/null +++ b/doc/api/html/classstan_1_1gm_1_1arg__init__alpha.html @@ -0,0 +1,255 @@ + + + + + +Stan: stan::gm::arg_init_alpha Class Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::gm::arg_init_alpha Class Reference
+
+
+ +

#include <arg_init_alpha.hpp>

+
+Inheritance diagram for stan::gm::arg_init_alpha:
+
+
+ + +stan::gm::singleton_argument< T > +stan::gm::valued_argument +stan::gm::argument + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 arg_init_alpha ()
 
bool is_valid (double value)
 
- Public Member Functions inherited from stan::gm::singleton_argument< T >
 singleton_argument ()
 
 singleton_argument (const std::string name)
 
bool parse_args (std::vector< std::string > &args, std::ostream *out, std::ostream *err, bool &help_flag)
 
virtual void probe_args (argument *base_arg, std::stringstream &s)
 
void find_arg (std::string name, std::string prefix, std::vector< std::string > &valid_paths)
 
value ()
 
bool set_value (const T &value)
 
std::string print_value ()
 
std::string print_valid ()
 
bool is_default ()
 
- Public Member Functions inherited from stan::gm::valued_argument
virtual void print (std::ostream *s, const int depth, const std::string prefix)
 
virtual void print_help (std::ostream *s, const int depth, const bool recurse=false)
 
- Public Member Functions inherited from stan::gm::argument
 argument ()
 
 argument (const std::string name)
 
virtual ~argument ()
 
std::string name () const
 
std::string description () const
 
virtual argumentarg (const std::string name)
 
int compute_indent (const int depth)
 
+ + + + + + + + + + + + + + + + + + + + +

+Additional Inherited Members

- Static Public Member Functions inherited from stan::gm::argument
static void split_arg (const std::string &arg, std::string &name, std::string &value)
 
- Protected Member Functions inherited from stan::gm::singleton_argument< T >
virtual bool is_valid (T value)
 
- Protected Attributes inherited from stan::gm::singleton_argument< T >
std::string _validity
 
_value
 
_default_value
 
bool _constrained
 
_good_value
 
_bad_value
 
+

Detailed Description

+
+

Definition at line 10 of file arg_init_alpha.hpp.

+

Constructor & Destructor Documentation

+ +
+
+ + + + + +
+ + + + + + + +
stan::gm::arg_init_alpha::arg_init_alpha ()
+
+inline
+
+ +

Definition at line 14 of file arg_init_alpha.hpp.

+ +
+
+

Member Function Documentation

+ +
+
+ + + + + +
+ + + + + + + + +
bool stan::gm::arg_init_alpha::is_valid (double value)
+
+inline
+
+ +

Definition at line 26 of file arg_init_alpha.hpp.

+ +
+
+
The documentation for this class was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1gm_1_1arg__init__alpha.png b/doc/api/html/classstan_1_1gm_1_1arg__init__alpha.png new file mode 100644 index 0000000000000000000000000000000000000000..9658fe9aaae8cb98c508a21c5704767afd8de02f GIT binary patch literal 1507 zcmai!do=Q9sO-B=1S`*jXiJcG|Q3)7i88J?DP!z31Hfz32P6_uO<>XM4nE)y*&% z41sa5JucA#iLhm*B{!NPuPsq3uE(%;VzF3a&ddp8s86m*tiOfLX3M0%R+qT4&s60G3CzK`N(#%8xSgq*m2D`yLq7nnws(Yg1j zTTjjgsaN&D(i5o3WP*6)5FHNHMq2&B1mg=MN*rzySAx;!^PVRejqlf@tQjcv-oSAT zy~3EQ2R*B@q8$T~h6%TSKUr5_SP)ngEv&pK*ra=$@WAWcL1j`Jt}*rg80aOG%MXA1 z(1E*Z4ybus06iDho$-A96%uHrGmM8Gc?dTWO&OO$Vq+VP&%~ZgN|Nrf{rpU8mb@Hh zn16>J%NQ$6nXWC3zwmw@fYf|lmRs_d)aijOxR{RjO5pTo5!lwYPHc2V_mqVBLE_@C zzaRh&sCkg1C+7rPSa}WOm#RUpYIY38Vn5!gd5Egu8|Yb5$UriG281>A15zR7j14c3 zc*;~|GB>*-3EN9i&HF6FzY9pb?yr)D@^cMO`BuTg4FQ(a@q~i2Ad(C~I#1BC5?2jegt zmp8Xo6^;pI&oFdbG;n3);*Oo!8fIWeB55S^Og)bvlvNLV8~jDhU9Hh~z~477CY27k zL)D|6F9rr1(WT8zDa&@A99j*~6ADlxma3IN9KxjDw9PA{-sHBx`f{BWemdN_@_!gsaewJXQe)~`wHUSQ= zqW%Zaek(X96I7?y>3yhjZ^inF<)}l^1!M)sCK{S0FtODS>YGbv(KHmv z=TIX4uX);RlgjG*DrHxc+vg02!g8V1>BkDQSff`m!Cw*uxL|(|**u`*eD|QOjVSjp z!=+&*M;^7(ZM;yw)`iVM_-sXW4ST3DO29zYFDv3LkV@M%rxydFiCAo0zF&jsRr#8< z!Wuv)WE2nGm|?N-Ra5rl#F4 zqlb_tmwO>|3K3@8J7qauLD z##9=*3s0Y2cGHC7OxscbaqTP!N=6(A9cLbrklhGN>P3_y_-?Huw8(IK;c5QWP#X{} zE&bB|f5!j&Zn2d&?MX%LhSghsOC(_rtU5T}{6b{h#ObiR){^(#GjG2e-(DdiJX;hV zII0l%=<&P#t?koNEVI*LW|uI}1913)jT_Ep^kVJPtMr|VESGGHFmb`A#ytQlu=^*C z{(&Rvy1jS7?&Qe@?#>KMPqVisxty|yX6=!BGyW8wm9g#cpN>%7Bod6Cu{MHBo}#`O zc=N-kJHnFd4m}DZX(yNakUh3QnJmvBC6cg7Ao7CQn>M5bz;^}wyv$|w`!r8X#K4^! zvgOPtm*#9vwMu10PWj3VkHz#Er?m#95nU;*oGCN%eol2plBbZZCidOB?hhoZSA1I; grqh>yw4Pj(SN)h#K%7urmuzGh#?IN6Y3+C6F9Emc9RL6T literal 0 HcmV?d00001 diff --git a/doc/api/html/classstan_1_1gm_1_1arg__int__time-members.html b/doc/api/html/classstan_1_1gm_1_1arg__int__time-members.html new file mode 100644 index 00000000000..2f77e1f570e --- /dev/null +++ b/doc/api/html/classstan_1_1gm_1_1arg__int__time-members.html @@ -0,0 +1,147 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::gm::arg_int_time Member List
+
+
+ +

This is the complete list of members for stan::gm::arg_int_time, including all inherited members.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
_bad_valuestan::gm::singleton_argument< T >protected
_constrainedstan::gm::singleton_argument< T >protected
_defaultstan::gm::valued_argumentprotected
_default_valuestan::gm::singleton_argument< T >protected
_descriptionstan::gm::argumentprotected
_good_valuestan::gm::singleton_argument< T >protected
_namestan::gm::argumentprotected
_validitystan::gm::singleton_argument< T >protected
_valuestan::gm::singleton_argument< T >protected
_value_typestan::gm::valued_argumentprotected
arg(const std::string name)stan::gm::argumentinlinevirtual
arg_int_time()stan::gm::arg_int_timeinline
argument()stan::gm::argumentinline
argument(const std::string name)stan::gm::argumentinline
compute_indent(const int depth)stan::gm::argumentinline
description() const stan::gm::argumentinline
find_arg(std::string name, std::string prefix, std::vector< std::string > &valid_paths)stan::gm::singleton_argument< T >inlinevirtual
help_widthstan::gm::argumentprotected
indent_widthstan::gm::argumentprotected
is_default()stan::gm::singleton_argument< T >inlinevirtual
is_valid(double value)stan::gm::arg_int_timeinline
stan::gm::singleton_argument::is_valid(T value)stan::gm::singleton_argument< T >inlineprotectedvirtual
name() const stan::gm::argumentinline
parse_args(std::vector< std::string > &args, std::ostream *out, std::ostream *err, bool &help_flag)stan::gm::singleton_argument< T >inlinevirtual
print(std::ostream *s, const int depth, const std::string prefix)stan::gm::valued_argumentinlinevirtual
print_help(std::ostream *s, const int depth, const bool recurse=false)stan::gm::valued_argumentinlinevirtual
print_valid()stan::gm::singleton_argument< T >inlinevirtual
print_value()stan::gm::singleton_argument< T >inlinevirtual
probe_args(argument *base_arg, std::stringstream &s)stan::gm::singleton_argument< T >inlinevirtual
set_value(const T &value)stan::gm::singleton_argument< T >inline
singleton_argument()stan::gm::singleton_argument< T >inline
singleton_argument(const std::string name)stan::gm::singleton_argument< T >inline
split_arg(const std::string &arg, std::string &name, std::string &value)stan::gm::argumentinlinestatic
value()stan::gm::singleton_argument< T >inline
~argument()stan::gm::argumentinlinevirtual
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1gm_1_1arg__int__time.html b/doc/api/html/classstan_1_1gm_1_1arg__int__time.html new file mode 100644 index 00000000000..98bf5c6eab4 --- /dev/null +++ b/doc/api/html/classstan_1_1gm_1_1arg__int__time.html @@ -0,0 +1,255 @@ + + + + + +Stan: stan::gm::arg_int_time Class Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::gm::arg_int_time Class Reference
+
+
+ +

#include <arg_int_time.hpp>

+
+Inheritance diagram for stan::gm::arg_int_time:
+
+
+ + +stan::gm::singleton_argument< T > +stan::gm::valued_argument +stan::gm::argument + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 arg_int_time ()
 
bool is_valid (double value)
 
- Public Member Functions inherited from stan::gm::singleton_argument< T >
 singleton_argument ()
 
 singleton_argument (const std::string name)
 
bool parse_args (std::vector< std::string > &args, std::ostream *out, std::ostream *err, bool &help_flag)
 
virtual void probe_args (argument *base_arg, std::stringstream &s)
 
void find_arg (std::string name, std::string prefix, std::vector< std::string > &valid_paths)
 
value ()
 
bool set_value (const T &value)
 
std::string print_value ()
 
std::string print_valid ()
 
bool is_default ()
 
- Public Member Functions inherited from stan::gm::valued_argument
virtual void print (std::ostream *s, const int depth, const std::string prefix)
 
virtual void print_help (std::ostream *s, const int depth, const bool recurse=false)
 
- Public Member Functions inherited from stan::gm::argument
 argument ()
 
 argument (const std::string name)
 
virtual ~argument ()
 
std::string name () const
 
std::string description () const
 
virtual argumentarg (const std::string name)
 
int compute_indent (const int depth)
 
+ + + + + + + + + + + + + + + + + + + + +

+Additional Inherited Members

- Static Public Member Functions inherited from stan::gm::argument
static void split_arg (const std::string &arg, std::string &name, std::string &value)
 
- Protected Member Functions inherited from stan::gm::singleton_argument< T >
virtual bool is_valid (T value)
 
- Protected Attributes inherited from stan::gm::singleton_argument< T >
std::string _validity
 
_value
 
_default_value
 
bool _constrained
 
_good_value
 
_bad_value
 
+

Detailed Description

+
+

Definition at line 10 of file arg_int_time.hpp.

+

Constructor & Destructor Documentation

+ +
+
+ + + + + +
+ + + + + + + +
stan::gm::arg_int_time::arg_int_time ()
+
+inline
+
+ +

Definition at line 14 of file arg_int_time.hpp.

+ +
+
+

Member Function Documentation

+ +
+
+ + + + + +
+ + + + + + + + +
bool stan::gm::arg_int_time::is_valid (double value)
+
+inline
+
+ +

Definition at line 26 of file arg_int_time.hpp.

+ +
+
+
The documentation for this class was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1gm_1_1arg__int__time.png b/doc/api/html/classstan_1_1gm_1_1arg__int__time.png new file mode 100644 index 0000000000000000000000000000000000000000..c00910ac40d45114a81972f7e21cab6b28c1635b GIT binary patch literal 1482 zcmcK4|2NZn90%~p-A!uTZugdOb#HaKT+!`VCmMw!#W?nv*?gJ4tge~H)wp)ECO6cQ zu1FW79bx;-w&HFvWpk@5u~zaS-!eKzA4Hfk%$?4;e?ULn_c@RE>-9e8{nPu)^I{0r zA7yTBjzAz#0f!ER8Y^t1G&42Mo@tiO#$pu`2pn8qUN*L)<2pv}-&c*@M@ppiz)^~$ zE*vGrd^pm@=ttkg-CxB6d#qQC2<#zAqR(syzCT#*kXPC3DQZ?PPLBkgYc2IMyx9`$ z%E?T<&8vr-OL#pa*D1w+)qT!=e(bb6dWT0LoU|G;ExG04dZ+C;Gtz2f|1LO_(+v9W zi8rylmakIdpvGYwwDskHOVilB8X6znXYdA?(+ zoPsVY)m9{n27&Y{$xSAE<|!URMOV%D`_2~v9H?5ZVXTE-pFI~wE;C3X_;y;t#@n#M z0l-IWGkPuVVML{@L9ohfl<2xE@I>O+K-iSv{)S4b*)1H7fIMyc zgay<)DI7fcw|gPF1m|`Hy1R6wulNV7o5OK8KXN5G(c0|AwI}GlB)X?D4TAn z2jxxa+d`$CFl;}4<8$!$_A${$m1 z;r3kNM&Y+~a%D6|)aKNr$4g&ba(@m)>(oQI_@(@eprt2B40hQIqM3AM1pU;BU+4

Yjr|YmvlItO8Y&9UO^$Pp{>pN_($QPTe z(U|}4v_EczEy42*PIdH>0$Y;3uUsE#t@$AfnDmF#cQAddW0WR+60L5y>Vq3Cv0WEm z6@I*T>%&EJP1F_s+~#$uvw~}n#onjd7%M@7AKCo~LCp5ukQB(UyN9K8kl)q?q{NfO zg3f_88dD2b&C$Hf&8dQ(yNe-=(REWMt6M|s*<_*pO|6KC{BRZb{$rZpA*#eMkHi2f zuh8oNF{iRB)jO&Tnt#xNoG8P`u&eG_EIn#6F>kEYGo?BH?`nFgJx%xg^ZulcAs*>P q(54~ex~Y`^9`6k>?XV;I>AB`hoU>YS*kNPvA_5L#4~TtY&i@Pj1M6S_ literal 0 HcmV?d00001 diff --git a/doc/api/html/classstan_1_1gm_1_1arg__iter-members.html b/doc/api/html/classstan_1_1gm_1_1arg__iter-members.html new file mode 100644 index 00000000000..ec09c80a1c2 --- /dev/null +++ b/doc/api/html/classstan_1_1gm_1_1arg__iter-members.html @@ -0,0 +1,147 @@ + + + + + +Stan: Member List + + + + + + + + + +

+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::gm::arg_iter Member List
+
+
+ +

This is the complete list of members for stan::gm::arg_iter, including all inherited members.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
_bad_valuestan::gm::singleton_argument< T >protected
_constrainedstan::gm::singleton_argument< T >protected
_defaultstan::gm::valued_argumentprotected
_default_valuestan::gm::singleton_argument< T >protected
_descriptionstan::gm::argumentprotected
_good_valuestan::gm::singleton_argument< T >protected
_namestan::gm::argumentprotected
_validitystan::gm::singleton_argument< T >protected
_valuestan::gm::singleton_argument< T >protected
_value_typestan::gm::valued_argumentprotected
arg(const std::string name)stan::gm::argumentinlinevirtual
arg_iter()stan::gm::arg_iterinline
argument()stan::gm::argumentinline
argument(const std::string name)stan::gm::argumentinline
compute_indent(const int depth)stan::gm::argumentinline
description() const stan::gm::argumentinline
find_arg(std::string name, std::string prefix, std::vector< std::string > &valid_paths)stan::gm::singleton_argument< T >inlinevirtual
help_widthstan::gm::argumentprotected
indent_widthstan::gm::argumentprotected
is_default()stan::gm::singleton_argument< T >inlinevirtual
is_valid(int value)stan::gm::arg_iterinline
stan::gm::singleton_argument::is_valid(T value)stan::gm::singleton_argument< T >inlineprotectedvirtual
name() const stan::gm::argumentinline
parse_args(std::vector< std::string > &args, std::ostream *out, std::ostream *err, bool &help_flag)stan::gm::singleton_argument< T >inlinevirtual
print(std::ostream *s, const int depth, const std::string prefix)stan::gm::valued_argumentinlinevirtual
print_help(std::ostream *s, const int depth, const bool recurse=false)stan::gm::valued_argumentinlinevirtual
print_valid()stan::gm::singleton_argument< T >inlinevirtual
print_value()stan::gm::singleton_argument< T >inlinevirtual
probe_args(argument *base_arg, std::stringstream &s)stan::gm::singleton_argument< T >inlinevirtual
set_value(const T &value)stan::gm::singleton_argument< T >inline
singleton_argument()stan::gm::singleton_argument< T >inline
singleton_argument(const std::string name)stan::gm::singleton_argument< T >inline
split_arg(const std::string &arg, std::string &name, std::string &value)stan::gm::argumentinlinestatic
value()stan::gm::singleton_argument< T >inline
~argument()stan::gm::argumentinlinevirtual
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1gm_1_1arg__iter.html b/doc/api/html/classstan_1_1gm_1_1arg__iter.html new file mode 100644 index 00000000000..f0668c3c4a2 --- /dev/null +++ b/doc/api/html/classstan_1_1gm_1_1arg__iter.html @@ -0,0 +1,255 @@ + + + + + +Stan: stan::gm::arg_iter Class Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::gm::arg_iter Class Reference
+
+
+ +

#include <arg_iter.hpp>

+
+Inheritance diagram for stan::gm::arg_iter:
+
+
+ + +stan::gm::singleton_argument< T > +stan::gm::valued_argument +stan::gm::argument + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 arg_iter ()
 
bool is_valid (int value)
 
- Public Member Functions inherited from stan::gm::singleton_argument< T >
 singleton_argument ()
 
 singleton_argument (const std::string name)
 
bool parse_args (std::vector< std::string > &args, std::ostream *out, std::ostream *err, bool &help_flag)
 
virtual void probe_args (argument *base_arg, std::stringstream &s)
 
void find_arg (std::string name, std::string prefix, std::vector< std::string > &valid_paths)
 
value ()
 
bool set_value (const T &value)
 
std::string print_value ()
 
std::string print_valid ()
 
bool is_default ()
 
- Public Member Functions inherited from stan::gm::valued_argument
virtual void print (std::ostream *s, const int depth, const std::string prefix)
 
virtual void print_help (std::ostream *s, const int depth, const bool recurse=false)
 
- Public Member Functions inherited from stan::gm::argument
 argument ()
 
 argument (const std::string name)
 
virtual ~argument ()
 
std::string name () const
 
std::string description () const
 
virtual argumentarg (const std::string name)
 
int compute_indent (const int depth)
 
+ + + + + + + + + + + + + + + + + + + + +

+Additional Inherited Members

- Static Public Member Functions inherited from stan::gm::argument
static void split_arg (const std::string &arg, std::string &name, std::string &value)
 
- Protected Member Functions inherited from stan::gm::singleton_argument< T >
virtual bool is_valid (T value)
 
- Protected Attributes inherited from stan::gm::singleton_argument< T >
std::string _validity
 
_value
 
_default_value
 
bool _constrained
 
_good_value
 
_bad_value
 
+

Detailed Description

+
+

Definition at line 10 of file arg_iter.hpp.

+

Constructor & Destructor Documentation

+ +
+
+ + + + + +
+ + + + + + + +
stan::gm::arg_iter::arg_iter ()
+
+inline
+
+ +

Definition at line 14 of file arg_iter.hpp.

+ +
+
+

Member Function Documentation

+ +
+
+ + + + + +
+ + + + + + + + +
bool stan::gm::arg_iter::is_valid (int value)
+
+inline
+
+ +

Definition at line 26 of file arg_iter.hpp.

+ +
+
+
The documentation for this class was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1gm_1_1arg__iter.png b/doc/api/html/classstan_1_1gm_1_1arg__iter.png new file mode 100644 index 0000000000000000000000000000000000000000..636dc83ff06afd401fc797fb2933b23cda6af372 GIT binary patch literal 1418 zcmeAS@N?(olHy`uVBq!ia0vp^7lHTy2Q!ddn^*Q2NJ#|vgt-3y{~ySF@#br3|Dg#$ z78oBmaDcV*jy#adQ4-`A%m7pb0#{Fk7%?!gN_x6DhEy=Vo%?#zVl4qTarw~7|L%5b zaXUILt~mMbVM*w;YPSW6iI@MV9+TMJq~R(1&}~wRwD}~J+cCymlfIaqb1h$Na@Qa} zLhkUJ_4X@2-ZZk?w0-^mp7qm@ElQTld8Ow$zu;O%jMKIi3ZnZnuYOJnKEE{EaEFNx zv&u_jJ&C1zPE6aqN6)1zQL^;-)ojmS6TBnMb1S#q&hI@oFTb}d!G1l@+T7Z75tYy_ z`vPxjdCo7qZMmwatN7}<9gi$#p4_!kWp7{UzEztPbn-thy7p?vm0hl3lk6Vfs#Won zezX3W_w<|LJzXMGmWckgRe33L|EJsU>5oso4xUu@BkG#xrTGtFzTt5*Ja$8v!TurR z1<|{bwsLzlOVdp_N|#-kKk>R1!|NS_4Y_wX4w&V!BuJYxZRnL|ym73TA?L9h!?r?Y zhTEvp7VbTUWvqddtPb_6oHWZ*@!V#aA)@k9=Ip}q!lzH~?7r%8+tCOp{rp*&< z;Cbs&N8qn3H|w6CUb*blt{jQb(@|@rqA$wmc}B~e-esBIC)xXR5^scArEKE6uh&*c zl)I;9yuHG>IPKch`2j%@mw&mXu2#wY_!AtGp-ZxMZn#?<(#9S1@3+%6-_W$1e=FO7 z0eUoZWzyw_pXc4ydb_R_H5EOZWv-HW^x$ugNoG3=wt57eeOhq6=US@wB)*SU@2=Lx zbClmUzqR+h%1ev#mfiD8C#7(LlF5#VDmT*%x(tuaWB9?z->~k*xfdT__^z~G?6|^s z>A#*m*BB#?;|xhG0e!$Ssb`~h$D}KQpnxq@_T1!~3JhH1Fy~9%!WUICeMMiq<+>Jgcw&Ty(na)XFovER*{rQzOIIXLVjQlbU^BN_6##$=edQSUjDYSj{W# zHd}hvuPaLfCxl%5`IjJl*dt9*Im7^qhBSnIeGf&mD(@1RlnYGaaV|E(Am88 z*9+s{e~*_iU2o*6WqHjz=%2MIFt#j!k?}>JMoFDRv4oXzfig66%zo`={`Q2xvw0qA zJ$c*9`UnMWUUai#!EhRva` zc9xv&eO1;V9Ao0ObCPa)Wo(DY;i6e?49|DWDZM<+Z}z@ylW%v-PTgYkE7)i>C31Vd zNW(0vOGlLoUqgxnlUsJ~K*fr$mvNc8oe~QZYk8WxsxEY`_tMY$oB0xE|Gf}D<4?BR z@14f+iN&T2I~w2DF8-T(PwUg{HOxOOp;`NEkexHfLjHfuDJ3mdK II;Vst0HEuiJpcdz literal 0 HcmV?d00001 diff --git a/doc/api/html/classstan_1_1gm_1_1arg__max__depth-members.html b/doc/api/html/classstan_1_1gm_1_1arg__max__depth-members.html new file mode 100644 index 00000000000..9fa25c58b3b --- /dev/null +++ b/doc/api/html/classstan_1_1gm_1_1arg__max__depth-members.html @@ -0,0 +1,147 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::gm::arg_max_depth Member List
+
+
+ +

This is the complete list of members for stan::gm::arg_max_depth, including all inherited members.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
_bad_valuestan::gm::singleton_argument< T >protected
_constrainedstan::gm::singleton_argument< T >protected
_defaultstan::gm::valued_argumentprotected
_default_valuestan::gm::singleton_argument< T >protected
_descriptionstan::gm::argumentprotected
_good_valuestan::gm::singleton_argument< T >protected
_namestan::gm::argumentprotected
_validitystan::gm::singleton_argument< T >protected
_valuestan::gm::singleton_argument< T >protected
_value_typestan::gm::valued_argumentprotected
arg(const std::string name)stan::gm::argumentinlinevirtual
arg_max_depth()stan::gm::arg_max_depthinline
argument()stan::gm::argumentinline
argument(const std::string name)stan::gm::argumentinline
compute_indent(const int depth)stan::gm::argumentinline
description() const stan::gm::argumentinline
find_arg(std::string name, std::string prefix, std::vector< std::string > &valid_paths)stan::gm::singleton_argument< T >inlinevirtual
help_widthstan::gm::argumentprotected
indent_widthstan::gm::argumentprotected
is_default()stan::gm::singleton_argument< T >inlinevirtual
is_valid(int value)stan::gm::arg_max_depthinline
stan::gm::singleton_argument::is_valid(T value)stan::gm::singleton_argument< T >inlineprotectedvirtual
name() const stan::gm::argumentinline
parse_args(std::vector< std::string > &args, std::ostream *out, std::ostream *err, bool &help_flag)stan::gm::singleton_argument< T >inlinevirtual
print(std::ostream *s, const int depth, const std::string prefix)stan::gm::valued_argumentinlinevirtual
print_help(std::ostream *s, const int depth, const bool recurse=false)stan::gm::valued_argumentinlinevirtual
print_valid()stan::gm::singleton_argument< T >inlinevirtual
print_value()stan::gm::singleton_argument< T >inlinevirtual
probe_args(argument *base_arg, std::stringstream &s)stan::gm::singleton_argument< T >inlinevirtual
set_value(const T &value)stan::gm::singleton_argument< T >inline
singleton_argument()stan::gm::singleton_argument< T >inline
singleton_argument(const std::string name)stan::gm::singleton_argument< T >inline
split_arg(const std::string &arg, std::string &name, std::string &value)stan::gm::argumentinlinestatic
value()stan::gm::singleton_argument< T >inline
~argument()stan::gm::argumentinlinevirtual
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1gm_1_1arg__max__depth.html b/doc/api/html/classstan_1_1gm_1_1arg__max__depth.html new file mode 100644 index 00000000000..29166489592 --- /dev/null +++ b/doc/api/html/classstan_1_1gm_1_1arg__max__depth.html @@ -0,0 +1,255 @@ + + + + + +Stan: stan::gm::arg_max_depth Class Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::gm::arg_max_depth Class Reference
+
+
+ +

#include <arg_max_depth.hpp>

+
+Inheritance diagram for stan::gm::arg_max_depth:
+
+
+ + +stan::gm::singleton_argument< T > +stan::gm::valued_argument +stan::gm::argument + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 arg_max_depth ()
 
bool is_valid (int value)
 
- Public Member Functions inherited from stan::gm::singleton_argument< T >
 singleton_argument ()
 
 singleton_argument (const std::string name)
 
bool parse_args (std::vector< std::string > &args, std::ostream *out, std::ostream *err, bool &help_flag)
 
virtual void probe_args (argument *base_arg, std::stringstream &s)
 
void find_arg (std::string name, std::string prefix, std::vector< std::string > &valid_paths)
 
value ()
 
bool set_value (const T &value)
 
std::string print_value ()
 
std::string print_valid ()
 
bool is_default ()
 
- Public Member Functions inherited from stan::gm::valued_argument
virtual void print (std::ostream *s, const int depth, const std::string prefix)
 
virtual void print_help (std::ostream *s, const int depth, const bool recurse=false)
 
- Public Member Functions inherited from stan::gm::argument
 argument ()
 
 argument (const std::string name)
 
virtual ~argument ()
 
std::string name () const
 
std::string description () const
 
virtual argumentarg (const std::string name)
 
int compute_indent (const int depth)
 
+ + + + + + + + + + + + + + + + + + + + +

+Additional Inherited Members

- Static Public Member Functions inherited from stan::gm::argument
static void split_arg (const std::string &arg, std::string &name, std::string &value)
 
- Protected Member Functions inherited from stan::gm::singleton_argument< T >
virtual bool is_valid (T value)
 
- Protected Attributes inherited from stan::gm::singleton_argument< T >
std::string _validity
 
_value
 
_default_value
 
bool _constrained
 
_good_value
 
_bad_value
 
+

Detailed Description

+
+

Definition at line 10 of file arg_max_depth.hpp.

+

Constructor & Destructor Documentation

+ +
+
+ + + + + +
+ + + + + + + +
stan::gm::arg_max_depth::arg_max_depth ()
+
+inline
+
+ +

Definition at line 14 of file arg_max_depth.hpp.

+ +
+
+

Member Function Documentation

+ +
+
+ + + + + +
+ + + + + + + + +
bool stan::gm::arg_max_depth::is_valid (int value)
+
+inline
+
+ +

Definition at line 26 of file arg_max_depth.hpp.

+ +
+
+
The documentation for this class was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1gm_1_1arg__max__depth.png b/doc/api/html/classstan_1_1gm_1_1arg__max__depth.png new file mode 100644 index 0000000000000000000000000000000000000000..954cc51f41ed71e95fd15549aecbc5efdf780d64 GIT binary patch literal 1458 zcmcgsX;6|082+p*bF$THO>xvMAv>1V4ay^3w^l#=K+P+&$jq|xN>lL21Ity*UDW(k z%zM4iK&(4;_t$yL-$$wj;H$TebVr$0M8vp@Hpd9QhoAJ07Ro9p9^GcrUN z0svqHdARxMyjZ6^gXKEQib)*TIWr&60C%lcs|#OF&m|P_ujrz`mB-`h=MGuxQUkJ| zw?Ck3`XthxfL#EfzYlWT7m%zsQ>B8(x35`QQNZZb+E^b*(+jP1@ZME_pV3qGY+`e` z@te|0l9eGFY2;=G!LfV~I89yc3pZSkL#LRPjM3jp<}rB`t^f9n$jKVU?8ln+WG2=~ zb(}zgQnHz#dIJMO3DbI8YgL0b#YB4W)-I-BX7FD*>^S#@XIcF-C&p5LLO zp{@rm)ryDS)fTRvSK0p%d)V3>1sQd@ukyt1&h>37pmRM4a97&^BUvUFV)+I< z`_L7m6?V(sc$w+F-$Dh_{#hPH=yq)ggAkWLZO$r0E>1S+u!51izXlkTeiki7bmPd*noMsUOd*rdU#> zm>kqqq-ET1&Cv;W6m#VATE>=DVBhUMOpza%Ly(v#*)e@(B#^`nu)OQ8zy%Rqu)8$h z#bIUx|H$&SS52GZ@u?}PVNs~5%kn3_C&NS~(80Yoo0N}o2!5LMO)47kG*OeVB6U-A zX@BC+XiJ&vs-)odffV1~#%C=#$Qg&lPsqkPqv3&fiERtic{vSP^_((PF-Nf(63oAx zO0|WQi*9WTx4dCzlm7=@`nPx;F*rLLNB3i)!TuE~4*Vq$4tviP-~Z`EF@5m1#`Em! z4E)4_z7PJT3T^k@V50P5ikQYn9h(X$@L3?1%dIqqC$Tuj30oaWM^#s$?IFsL;c#h> zNI_?t*XG{)delkYQO96|r#2EiF!~mazYklwAx2pvf8K?>trOB(*<3_$Q&hnfUV_iv5xorG#fv3x6o}O*qWnN|;bY zz?a;X&}cbfW~<6ndMRl*aOE3nslw*M@@iZ=R+Q~sW0%5BQ^kLywEU$pWDy6dh=%8Q sYEvNfV~+vP==16KB{tEEC1xL1#cWPr=eyXz&^=fHa`$#?-G4muFZ3nI5C8xG literal 0 HcmV?d00001 diff --git a/doc/api/html/classstan_1_1gm_1_1arg__method-members.html b/doc/api/html/classstan_1_1gm_1_1arg__method-members.html new file mode 100644 index 00000000000..734d7dec2e6 --- /dev/null +++ b/doc/api/html/classstan_1_1gm_1_1arg__method-members.html @@ -0,0 +1,143 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::gm::arg_method Member List
+
+
+ +

This is the complete list of members for stan::gm::arg_method, including all inherited members.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
_cursorstan::gm::list_argumentprotected
_defaultstan::gm::valued_argumentprotected
_default_cursorstan::gm::list_argumentprotected
_descriptionstan::gm::argumentprotected
_namestan::gm::argumentprotected
_value_typestan::gm::valued_argumentprotected
_valuesstan::gm::list_argumentprotected
arg(std::string name)stan::gm::list_argumentinlinevirtual
arg_method()stan::gm::arg_methodinline
argument()stan::gm::argumentinline
argument(const std::string name)stan::gm::argumentinline
compute_indent(const int depth)stan::gm::argumentinline
description() const stan::gm::argumentinline
find_arg(std::string name, std::string prefix, std::vector< std::string > &valid_paths)stan::gm::list_argumentinlinevirtual
help_widthstan::gm::argumentprotected
indent_widthstan::gm::argumentprotected
is_default()stan::gm::list_argumentinlinevirtual
list_argument()stan::gm::list_argumentinline
name() const stan::gm::argumentinline
parse_args(std::vector< std::string > &args, std::ostream *out, std::ostream *err, bool &help_flag)stan::gm::list_argumentinlinevirtual
print(std::ostream *s, int depth, const std::string prefix)stan::gm::list_argumentinlinevirtual
print_help(std::ostream *s, int depth, bool recurse)stan::gm::list_argumentinlinevirtual
print_valid()stan::gm::list_argumentinlinevirtual
print_value()stan::gm::list_argumentinlinevirtual
probe_args(argument *base_arg, std::stringstream &s)stan::gm::list_argumentinlinevirtual
split_arg(const std::string &arg, std::string &name, std::string &value)stan::gm::argumentinlinestatic
valid_value(std::string name)stan::gm::list_argumentinline
value()stan::gm::list_argumentinline
values()stan::gm::list_argumentinline
~argument()stan::gm::argumentinlinevirtual
~list_argument()stan::gm::list_argumentinline
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1gm_1_1arg__method.html b/doc/api/html/classstan_1_1gm_1_1arg__method.html new file mode 100644 index 00000000000..0add6b5d27b --- /dev/null +++ b/doc/api/html/classstan_1_1gm_1_1arg__method.html @@ -0,0 +1,205 @@ + + + + + +Stan: stan::gm::arg_method Class Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::gm::arg_method Class Reference
+
+
+ +

#include <arg_method.hpp>

+
+Inheritance diagram for stan::gm::arg_method:
+
+
+ + +stan::gm::list_argument +stan::gm::valued_argument +stan::gm::argument + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 arg_method ()
 
- Public Member Functions inherited from stan::gm::list_argument
 list_argument ()
 
 ~list_argument ()
 
void print (std::ostream *s, int depth, const std::string prefix)
 
void print_help (std::ostream *s, int depth, bool recurse)
 
bool parse_args (std::vector< std::string > &args, std::ostream *out, std::ostream *err, bool &help_flag)
 
virtual void probe_args (argument *base_arg, std::stringstream &s)
 
void find_arg (std::string name, std::string prefix, std::vector< std::string > &valid_paths)
 
bool valid_value (std::string name)
 
argumentarg (std::string name)
 
std::vector< argument * > & values ()
 
std::string value ()
 
std::string print_value ()
 
std::string print_valid ()
 
bool is_default ()
 
+ + + + + + + + + + + +

+Additional Inherited Members

- Static Public Member Functions inherited from stan::gm::argument
static void split_arg (const std::string &arg, std::string &name, std::string &value)
 
- Protected Attributes inherited from stan::gm::list_argument
int _cursor
 
int _default_cursor
 
std::vector< argument * > _values
 
+

Detailed Description

+
+

Definition at line 14 of file arg_method.hpp.

+

Constructor & Destructor Documentation

+ +
+
+ + + + + +
+ + + + + + + +
stan::gm::arg_method::arg_method ()
+
+inline
+
+ +

Definition at line 18 of file arg_method.hpp.

+ +
+
+
The documentation for this class was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1gm_1_1arg__method.png b/doc/api/html/classstan_1_1gm_1_1arg__method.png new file mode 100644 index 0000000000000000000000000000000000000000..6dc596022076a7d9d2043c1fb8a80ce152050072 GIT binary patch literal 1291 zcmeAS@N?(olHy`uVBq!ia0vp^3xN0l2Q!e|@^pqPkdg@S332`Z|38rV;?396{zDUh zEHFNB-~emq9eE&^qa?^Lm;tB=1g@S6F=Aj~ndRx?7*fIbcJAw<&pJG8)7xj>`L9~P zj$c8hrsL{9`MFugW^dW1a;@P+e9^heloOLo^b|Eb<(vX0+1wHGne-)jPWbaVuP`%mL9F8`OlGgi*5aoY_kJx^Obmg!w-Ju0TxwKn#~Dtl*4zQc8$#q(9M zZiM*3p13^oINw=`@;}O=C-LpreB^b@jGY#uF-rcdvy<+rz1;g{X2PT`i_M$g27A8x z{8H`?r&;x;{d>-a{aL9RH#_&q>|WP|CB}Qabv*68IJ_pc3rtbrpPX>clAq_m_D@U_GcU5nuRqA^ zEl}QmVEKcXS=<8d3AyM zjW;KkUA|SQ_dOw6&-2@^xJO&-PuVu$pGZ<0}M6V z`VA8$V?TVAx>Hbc@MM0@;fJh?yBTY61{hjs{+kDkhJK#NNyk)KR8KmCA}9Hvif8%E zChtG)os-U7_55phFdfJ!4L7Lu_4qmC(zEry3g+osXWq6qP4AxjKd#B!YjR%uhL!0} z-s@IQTkVLPrJ?WK6pLL>yqnAXBX^l`gXr;iqg$1RkNG#+U?tT zdSb+rb$l}fu209GNbq$GxLYFdl=l(N)BGnE;xLVRek?P-gfaGJ+=>m z7-Fm!?X78hG?@cRyQ}`ia<&JByY$}QCLX)I-yG;vF&S1*@_mAzsJmG^@Z_~aM z?f#f`Nryc@`+wDHz8SAeI5g8SyeI3oNhBmNwqExHmRt;;u6{1-oD!M + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::gm::arg_metric Member List
+
+
+ +

This is the complete list of members for stan::gm::arg_metric, including all inherited members.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
_cursorstan::gm::list_argumentprotected
_defaultstan::gm::valued_argumentprotected
_default_cursorstan::gm::list_argumentprotected
_descriptionstan::gm::argumentprotected
_namestan::gm::argumentprotected
_value_typestan::gm::valued_argumentprotected
_valuesstan::gm::list_argumentprotected
arg(std::string name)stan::gm::list_argumentinlinevirtual
arg_metric()stan::gm::arg_metricinline
argument()stan::gm::argumentinline
argument(const std::string name)stan::gm::argumentinline
compute_indent(const int depth)stan::gm::argumentinline
description() const stan::gm::argumentinline
find_arg(std::string name, std::string prefix, std::vector< std::string > &valid_paths)stan::gm::list_argumentinlinevirtual
help_widthstan::gm::argumentprotected
indent_widthstan::gm::argumentprotected
is_default()stan::gm::list_argumentinlinevirtual
list_argument()stan::gm::list_argumentinline
name() const stan::gm::argumentinline
parse_args(std::vector< std::string > &args, std::ostream *out, std::ostream *err, bool &help_flag)stan::gm::list_argumentinlinevirtual
print(std::ostream *s, int depth, const std::string prefix)stan::gm::list_argumentinlinevirtual
print_help(std::ostream *s, int depth, bool recurse)stan::gm::list_argumentinlinevirtual
print_valid()stan::gm::list_argumentinlinevirtual
print_value()stan::gm::list_argumentinlinevirtual
probe_args(argument *base_arg, std::stringstream &s)stan::gm::list_argumentinlinevirtual
split_arg(const std::string &arg, std::string &name, std::string &value)stan::gm::argumentinlinestatic
valid_value(std::string name)stan::gm::list_argumentinline
value()stan::gm::list_argumentinline
values()stan::gm::list_argumentinline
~argument()stan::gm::argumentinlinevirtual
~list_argument()stan::gm::list_argumentinline
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1gm_1_1arg__metric.html b/doc/api/html/classstan_1_1gm_1_1arg__metric.html new file mode 100644 index 00000000000..6bcaed33dbd --- /dev/null +++ b/doc/api/html/classstan_1_1gm_1_1arg__metric.html @@ -0,0 +1,205 @@ + + + + + +Stan: stan::gm::arg_metric Class Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::gm::arg_metric Class Reference
+
+
+ +

#include <arg_metric.hpp>

+
+Inheritance diagram for stan::gm::arg_metric:
+
+
+ + +stan::gm::list_argument +stan::gm::valued_argument +stan::gm::argument + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 arg_metric ()
 
- Public Member Functions inherited from stan::gm::list_argument
 list_argument ()
 
 ~list_argument ()
 
void print (std::ostream *s, int depth, const std::string prefix)
 
void print_help (std::ostream *s, int depth, bool recurse)
 
bool parse_args (std::vector< std::string > &args, std::ostream *out, std::ostream *err, bool &help_flag)
 
virtual void probe_args (argument *base_arg, std::stringstream &s)
 
void find_arg (std::string name, std::string prefix, std::vector< std::string > &valid_paths)
 
bool valid_value (std::string name)
 
argumentarg (std::string name)
 
std::vector< argument * > & values ()
 
std::string value ()
 
std::string print_value ()
 
std::string print_valid ()
 
bool is_default ()
 
+ + + + + + + + + + + +

+Additional Inherited Members

- Static Public Member Functions inherited from stan::gm::argument
static void split_arg (const std::string &arg, std::string &name, std::string &value)
 
- Protected Attributes inherited from stan::gm::list_argument
int _cursor
 
int _default_cursor
 
std::vector< argument * > _values
 
+

Detailed Description

+
+

Definition at line 14 of file arg_metric.hpp.

+

Constructor & Destructor Documentation

+ +
+
+ + + + + +
+ + + + + + + +
stan::gm::arg_metric::arg_metric ()
+
+inline
+
+ +

Definition at line 18 of file arg_metric.hpp.

+ +
+
+
The documentation for this class was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1gm_1_1arg__metric.png b/doc/api/html/classstan_1_1gm_1_1arg__metric.png new file mode 100644 index 0000000000000000000000000000000000000000..38d6dec45dbca35cd4fdea628b94f8c3bda2007c GIT binary patch literal 1293 zcmeAS@N?(olHy`uVBq!ia0vp^3xN0l2Q!e|@^pqPkdg@S332`Z|38rV;?396{zDUh zEHFNB-~emq9eE&^qa?^Lm;tB=1g@S6F=Aj~nd9l=7*fIbcJAv*kF|K%X7{h!^IuuM zU%x@7rgN(0>1(S_%{_BtQUkLZAtr5bh~2ambTglw{tzM9-I?eFMR3D(UlK`Dz!4YDrYbGekr}l^HSeEo?FW& zU3q@lc89P@^``xM(zO3w6Iy@P?EQx_f!oqg^KP%(d*IU1qp_2IRn&W~>-TuB_)5^^ zwXSD=jJwAr&2^G{ERyqGJuXS!Q=PUXUX?}lq%()tq;^k(=X2QE9<1KO;FeZ$@OpN^ z;ft*5`#18oi}&cUeGqJ7kaH3^;LO2P!QsfjugLL0k%iHwMWLZxfaQY#Lh{FVmf~}j zDJLeG=qYM=$~gs0vU$TYS;cno>{si*i*qh}>8B-s`7<LFBi8q#+g1cSPQIQw>0b36fj4>^=O%c*oC^xC<<$l18Q+$? zG_gMSRBp@DNmt^od++(?KXbP3!EbJvyD!bpKJ=~h!qKg<)uFEoFYLMVH(u!YL^aRq zchh#O|F}0{Qb~8^^X=}h+Mni~dr-&WS@gki=WlNv&-w;|DJuLRpQ;_4Q!FRZu>KR1 z#LSDV@#_!rx{J^GbIeR8&S00s0e3>-1`X7Q_l3`(CoG*ADlhed3p)R61O^qC2JKh> zp#x;x74@+f4zgRe1sIldp0A#}eY2<;bKj z^@2^4o+tuS-(i&*#pjrrKZM3HC>!s3@Y;08!xv4H@84)U%;`RShr5tAhT!f zO2&c%SB3Jk3xKg=Bf8~iOcT3)t)K4>utB2 z#q2&T{AQhLQTFwFJbCU-nJd#{c?wRIJ`?A=xV-84>mcQ4^DJg7HW + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::gm::arg_nesterov Member List
+
+
+ +

This is the complete list of members for stan::gm::arg_nesterov, including all inherited members.

+ + + + + + + + + + + + + + + + + + + + + + +
_descriptionstan::gm::argumentprotected
_namestan::gm::argumentprotected
_subargumentsstan::gm::categorical_argumentprotected
arg(const std::string name)stan::gm::categorical_argumentinlinevirtual
arg_nesterov()stan::gm::arg_nesterovinline
argument()stan::gm::argumentinline
argument(const std::string name)stan::gm::argumentinline
compute_indent(const int depth)stan::gm::argumentinline
description() const stan::gm::argumentinline
find_arg(std::string name, std::string prefix, std::vector< std::string > &valid_paths)stan::gm::categorical_argumentinlinevirtual
help_widthstan::gm::argumentprotected
indent_widthstan::gm::argumentprotected
name() const stan::gm::argumentinline
parse_args(std::vector< std::string > &args, std::ostream *out, std::ostream *err, bool &help_flag)stan::gm::categorical_argumentinlinevirtual
print(std::ostream *s, const int depth, const std::string prefix)stan::gm::categorical_argumentinlinevirtual
print_help(std::ostream *s, const int depth, const bool recurse)stan::gm::categorical_argumentinlinevirtual
probe_args(argument *base_arg, std::stringstream &s)stan::gm::categorical_argumentinlinevirtual
split_arg(const std::string &arg, std::string &name, std::string &value)stan::gm::argumentinlinestatic
subarguments()stan::gm::categorical_argumentinline
~argument()stan::gm::argumentinlinevirtual
~categorical_argument()stan::gm::categorical_argumentinlinevirtual
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1gm_1_1arg__nesterov.html b/doc/api/html/classstan_1_1gm_1_1arg__nesterov.html new file mode 100644 index 00000000000..68d58eeaaff --- /dev/null +++ b/doc/api/html/classstan_1_1gm_1_1arg__nesterov.html @@ -0,0 +1,201 @@ + + + + + +Stan: stan::gm::arg_nesterov Class Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::gm::arg_nesterov Class Reference
+
+
+ +

#include <arg_nesterov.hpp>

+
+Inheritance diagram for stan::gm::arg_nesterov:
+
+
+ + +stan::gm::categorical_argument +stan::gm::argument + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 arg_nesterov ()
 
- Public Member Functions inherited from stan::gm::categorical_argument
virtual ~categorical_argument ()
 
void print (std::ostream *s, const int depth, const std::string prefix)
 
void print_help (std::ostream *s, const int depth, const bool recurse)
 
bool parse_args (std::vector< std::string > &args, std::ostream *out, std::ostream *err, bool &help_flag)
 
virtual void probe_args (argument *base_arg, std::stringstream &s)
 
void find_arg (std::string name, std::string prefix, std::vector< std::string > &valid_paths)
 
std::vector< argument * > & subarguments ()
 
argumentarg (const std::string name)
 
- Public Member Functions inherited from stan::gm::argument
 argument ()
 
 argument (const std::string name)
 
virtual ~argument ()
 
std::string name () const
 
std::string description () const
 
int compute_indent (const int depth)
 
+ + + + + + + +

+Additional Inherited Members

- Static Public Member Functions inherited from stan::gm::argument
static void split_arg (const std::string &arg, std::string &name, std::string &value)
 
- Protected Attributes inherited from stan::gm::categorical_argument
std::vector< argument * > _subarguments
 
+

Detailed Description

+
+

Definition at line 12 of file arg_nesterov.hpp.

+

Constructor & Destructor Documentation

+ +
+
+ + + + + +
+ + + + + + + +
stan::gm::arg_nesterov::arg_nesterov ()
+
+inline
+
+ +

Definition at line 16 of file arg_nesterov.hpp.

+ +
+
+
The documentation for this class was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1gm_1_1arg__nesterov.png b/doc/api/html/classstan_1_1gm_1_1arg__nesterov.png new file mode 100644 index 0000000000000000000000000000000000000000..9ceb18a0a152d6e33662a70a5b414a97fbe90a7a GIT binary patch literal 1030 zcmeAS@N?(olHy`uVBq!ia0vp^JAt@^gBeKngzicMQW60^A+G=b{|7Q(y!l$%e`o@b z1;z&s9ANFdBM;lMlJ2QdvmdlCyla|l*6upDmTXw4a6nZx4$?4k9DxUU_f4%uH_}S#l z>{F=`Pd}&c{JGCKZq>!}(+hXpF=_mo61+oYZsGBom{n0Wp3jVLo(=L&;WRz@&2t)y zr`7XiKR;E6MWx>0n7yUTtiV*qQ+!9P?q#vC-Q^i}ZgR6`pR6l$+P>}O2^-I>8@Gz9 z!zZ2lx$2yBaq#!sQka%;sri;%+cce+X0%bDJj9(sN@=~+@F`L6z-j`{uaW8S8}er`&c+US4fPwpAx zi_x2F)bzb)Jk46FSz{>QylRWe%=0GiZDRKxs7g3BuV?$>)w*jA_cYZ`N?mlU=4Myc z-Kw(5ncs8W*CmPG6>$)rwdB|4x{PSu&+Dts?@`(F-_kTb>CAzJKeO&VYss^Hz*-!w zyZY;F*6*vIR-6xC`MdPqjM=;H8{Jv|d9Bnf)9p{|7Dp{RY+c%{dQk3+QIy|4%kR1Q zH@mj&P0dt_J{|fuqiRL;`+)UzwWgnERbFmXec6zGaei|6e&f7##f9f@tEyzqufAA+ zW>1{%q%Z$nU?ITs%<}miWd{4ltQS=8&e|WhcU5_|T}Sz)Gz7{?p5ArW%-CeHpZ0@zj-N zZ_k}9ZkSu;Co$c!cA4?#i*z`SYDUeuDY4<$}L?7S;^nei^@o=g(AMkh=Bx+bge+{!2`jT9-b)M~v)RLEGzWI?%w^nw4{IcZ!Y-X9ldH)tq zKN$Y(xokom>zQ_e2a5Y{e=eSTymkI+v4;Pg(3BMv73QV+^{D-{sa_XWKku~zW?BYM LS3j3^P6 + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::gm::arg_newton Member List
+
+
+ +

This is the complete list of members for stan::gm::arg_newton, including all inherited members.

+ + + + + + + + + + + + + + + + + + + + + + +
_descriptionstan::gm::argumentprotected
_namestan::gm::argumentprotected
_subargumentsstan::gm::categorical_argumentprotected
arg(const std::string name)stan::gm::categorical_argumentinlinevirtual
arg_newton()stan::gm::arg_newtoninline
argument()stan::gm::argumentinline
argument(const std::string name)stan::gm::argumentinline
compute_indent(const int depth)stan::gm::argumentinline
description() const stan::gm::argumentinline
find_arg(std::string name, std::string prefix, std::vector< std::string > &valid_paths)stan::gm::categorical_argumentinlinevirtual
help_widthstan::gm::argumentprotected
indent_widthstan::gm::argumentprotected
name() const stan::gm::argumentinline
parse_args(std::vector< std::string > &args, std::ostream *out, std::ostream *err, bool &help_flag)stan::gm::categorical_argumentinlinevirtual
print(std::ostream *s, const int depth, const std::string prefix)stan::gm::categorical_argumentinlinevirtual
print_help(std::ostream *s, const int depth, const bool recurse)stan::gm::categorical_argumentinlinevirtual
probe_args(argument *base_arg, std::stringstream &s)stan::gm::categorical_argumentinlinevirtual
split_arg(const std::string &arg, std::string &name, std::string &value)stan::gm::argumentinlinestatic
subarguments()stan::gm::categorical_argumentinline
~argument()stan::gm::argumentinlinevirtual
~categorical_argument()stan::gm::categorical_argumentinlinevirtual
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1gm_1_1arg__newton.html b/doc/api/html/classstan_1_1gm_1_1arg__newton.html new file mode 100644 index 00000000000..2e23d35799b --- /dev/null +++ b/doc/api/html/classstan_1_1gm_1_1arg__newton.html @@ -0,0 +1,201 @@ + + + + + +Stan: stan::gm::arg_newton Class Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::gm::arg_newton Class Reference
+
+
+ +

#include <arg_newton.hpp>

+
+Inheritance diagram for stan::gm::arg_newton:
+
+
+ + +stan::gm::categorical_argument +stan::gm::argument + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 arg_newton ()
 
- Public Member Functions inherited from stan::gm::categorical_argument
virtual ~categorical_argument ()
 
void print (std::ostream *s, const int depth, const std::string prefix)
 
void print_help (std::ostream *s, const int depth, const bool recurse)
 
bool parse_args (std::vector< std::string > &args, std::ostream *out, std::ostream *err, bool &help_flag)
 
virtual void probe_args (argument *base_arg, std::stringstream &s)
 
void find_arg (std::string name, std::string prefix, std::vector< std::string > &valid_paths)
 
std::vector< argument * > & subarguments ()
 
argumentarg (const std::string name)
 
- Public Member Functions inherited from stan::gm::argument
 argument ()
 
 argument (const std::string name)
 
virtual ~argument ()
 
std::string name () const
 
std::string description () const
 
int compute_indent (const int depth)
 
+ + + + + + + +

+Additional Inherited Members

- Static Public Member Functions inherited from stan::gm::argument
static void split_arg (const std::string &arg, std::string &name, std::string &value)
 
- Protected Attributes inherited from stan::gm::categorical_argument
std::vector< argument * > _subarguments
 
+

Detailed Description

+
+

Definition at line 10 of file arg_newton.hpp.

+

Constructor & Destructor Documentation

+ +
+
+ + + + + +
+ + + + + + + +
stan::gm::arg_newton::arg_newton ()
+
+inline
+
+ +

Definition at line 14 of file arg_newton.hpp.

+ +
+
+
The documentation for this class was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1gm_1_1arg__newton.png b/doc/api/html/classstan_1_1gm_1_1arg__newton.png new file mode 100644 index 0000000000000000000000000000000000000000..d400e9159ae783738eaa58e0a0934d3407c4d3c5 GIT binary patch literal 1015 zcmeAS@N?(olHy`uVBq!ia0vp^JAt@^gBeKngzicMQW60^A+G=b{|7Q(y!l$%e`o@b z1;z&s9ANFdBM;q_her^icS}|dk|EB1rUMYOJYTNyT)I2U( znx8%WJ~H#^L$@6>!!EMtwW+>j+P+#fH*srq`!nw+3o9qT$yP7PpWSz+c}d@1+x+)l zmn`?M`h0HB%HMyzGEd#z6BWcgqd$CaRkgwAjJq!1n2PgH@~e72xB10q8~^p-^n=OI zd|!H8YWvLLx$8`Eb=^OqogZgSTp}#DR?O4r@LAQ9V&>CTqSZc2B+CdktpCU)F)8tE z{QAJF?WXgOu!qWDzf;ZKV4BC5&^?>^#-nEp+jdws=;GrZma_6vLdXut8J~lT|_L{~P{~)2#XQ|q&N?*S@ zd#3EZ-HFhgMZ1|^I5mgVZ{xokcKX-qd&cL5@BN=MYx<0|2N!B4Z?|4p&0leF&)R8c zf8A}Gzxrv#dGlcV>y_#EuKb<%@VV9f)eHNdT>u(^itt>&5TpHJqWtGyrn zZPD#}L9l`g42I?v*BZT0MyRQuF3j`LVO5dhaUtx2V)Ui~GW# z9=Bf1^VjTxV$V%Sfk8a&q|Gr2ca{g)dl=eMB0gWw4*8mRR{f*n)#Ik$?=dCx5*f6h zfZw3nBGA^tV4whvgQCNKcK26U|K6WxXL`Q;zW?;^OR}zAioCqE&iBb5-}kZV`adUq zzB9jkGxM9GlQofxbf#R>nV+)#mbsVZqI<2T3hlX@nPm#E?)fusYM5MJ%j`_kTARjy zn@{p>IR7at1{Z@xc!e*VQDsc2yT_9y1K v=fn2ZtOumb**6?L%b0WWu2ze{u}A#eB3=iBABQLcb18$TtDnm{r-UW|lD7cD literal 0 HcmV?d00001 diff --git a/doc/api/html/classstan_1_1gm_1_1arg__num__samples-members.html b/doc/api/html/classstan_1_1gm_1_1arg__num__samples-members.html new file mode 100644 index 00000000000..1fd740b49d4 --- /dev/null +++ b/doc/api/html/classstan_1_1gm_1_1arg__num__samples-members.html @@ -0,0 +1,147 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::gm::arg_num_samples Member List
+
+
+ +

This is the complete list of members for stan::gm::arg_num_samples, including all inherited members.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
_bad_valuestan::gm::singleton_argument< T >protected
_constrainedstan::gm::singleton_argument< T >protected
_defaultstan::gm::valued_argumentprotected
_default_valuestan::gm::singleton_argument< T >protected
_descriptionstan::gm::argumentprotected
_good_valuestan::gm::singleton_argument< T >protected
_namestan::gm::argumentprotected
_validitystan::gm::singleton_argument< T >protected
_valuestan::gm::singleton_argument< T >protected
_value_typestan::gm::valued_argumentprotected
arg(const std::string name)stan::gm::argumentinlinevirtual
arg_num_samples()stan::gm::arg_num_samplesinline
argument()stan::gm::argumentinline
argument(const std::string name)stan::gm::argumentinline
compute_indent(const int depth)stan::gm::argumentinline
description() const stan::gm::argumentinline
find_arg(std::string name, std::string prefix, std::vector< std::string > &valid_paths)stan::gm::singleton_argument< T >inlinevirtual
help_widthstan::gm::argumentprotected
indent_widthstan::gm::argumentprotected
is_default()stan::gm::singleton_argument< T >inlinevirtual
is_valid(int value)stan::gm::arg_num_samplesinline
stan::gm::singleton_argument::is_valid(T value)stan::gm::singleton_argument< T >inlineprotectedvirtual
name() const stan::gm::argumentinline
parse_args(std::vector< std::string > &args, std::ostream *out, std::ostream *err, bool &help_flag)stan::gm::singleton_argument< T >inlinevirtual
print(std::ostream *s, const int depth, const std::string prefix)stan::gm::valued_argumentinlinevirtual
print_help(std::ostream *s, const int depth, const bool recurse=false)stan::gm::valued_argumentinlinevirtual
print_valid()stan::gm::singleton_argument< T >inlinevirtual
print_value()stan::gm::singleton_argument< T >inlinevirtual
probe_args(argument *base_arg, std::stringstream &s)stan::gm::singleton_argument< T >inlinevirtual
set_value(const T &value)stan::gm::singleton_argument< T >inline
singleton_argument()stan::gm::singleton_argument< T >inline
singleton_argument(const std::string name)stan::gm::singleton_argument< T >inline
split_arg(const std::string &arg, std::string &name, std::string &value)stan::gm::argumentinlinestatic
value()stan::gm::singleton_argument< T >inline
~argument()stan::gm::argumentinlinevirtual
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1gm_1_1arg__num__samples.html b/doc/api/html/classstan_1_1gm_1_1arg__num__samples.html new file mode 100644 index 00000000000..ddce0f39ad2 --- /dev/null +++ b/doc/api/html/classstan_1_1gm_1_1arg__num__samples.html @@ -0,0 +1,255 @@ + + + + + +Stan: stan::gm::arg_num_samples Class Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::gm::arg_num_samples Class Reference
+
+
+ +

#include <arg_num_samples.hpp>

+
+Inheritance diagram for stan::gm::arg_num_samples:
+
+
+ + +stan::gm::singleton_argument< T > +stan::gm::valued_argument +stan::gm::argument + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 arg_num_samples ()
 
bool is_valid (int value)
 
- Public Member Functions inherited from stan::gm::singleton_argument< T >
 singleton_argument ()
 
 singleton_argument (const std::string name)
 
bool parse_args (std::vector< std::string > &args, std::ostream *out, std::ostream *err, bool &help_flag)
 
virtual void probe_args (argument *base_arg, std::stringstream &s)
 
void find_arg (std::string name, std::string prefix, std::vector< std::string > &valid_paths)
 
value ()
 
bool set_value (const T &value)
 
std::string print_value ()
 
std::string print_valid ()
 
bool is_default ()
 
- Public Member Functions inherited from stan::gm::valued_argument
virtual void print (std::ostream *s, const int depth, const std::string prefix)
 
virtual void print_help (std::ostream *s, const int depth, const bool recurse=false)
 
- Public Member Functions inherited from stan::gm::argument
 argument ()
 
 argument (const std::string name)
 
virtual ~argument ()
 
std::string name () const
 
std::string description () const
 
virtual argumentarg (const std::string name)
 
int compute_indent (const int depth)
 
+ + + + + + + + + + + + + + + + + + + + +

+Additional Inherited Members

- Static Public Member Functions inherited from stan::gm::argument
static void split_arg (const std::string &arg, std::string &name, std::string &value)
 
- Protected Member Functions inherited from stan::gm::singleton_argument< T >
virtual bool is_valid (T value)
 
- Protected Attributes inherited from stan::gm::singleton_argument< T >
std::string _validity
 
_value
 
_default_value
 
bool _constrained
 
_good_value
 
_bad_value
 
+

Detailed Description

+
+

Definition at line 10 of file arg_num_samples.hpp.

+

Constructor & Destructor Documentation

+ +
+
+ + + + + +
+ + + + + + + +
stan::gm::arg_num_samples::arg_num_samples ()
+
+inline
+
+ +

Definition at line 14 of file arg_num_samples.hpp.

+ +
+
+

Member Function Documentation

+ +
+
+ + + + + +
+ + + + + + + + +
bool stan::gm::arg_num_samples::is_valid (int value)
+
+inline
+
+ +

Definition at line 26 of file arg_num_samples.hpp.

+ +
+
+
The documentation for this class was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1gm_1_1arg__num__samples.png b/doc/api/html/classstan_1_1gm_1_1arg__num__samples.png new file mode 100644 index 0000000000000000000000000000000000000000..87dcd0718a3366c0faafeb3707fcca6dc8a7afde GIT binary patch literal 1460 zcmaJ>2~g5$6#sjzW~rt%-jtzfNyjsr+ zycq8b?ZX0FHC5GY@t}u0`Q=D&6rC-gGmm(ucgL&bWieD zlL>*A-p2FCqGQ3}g-oa@qBH-PegNK-;NeEK)LYM>Gd~T&t&n=JPa$E#JGK5rP|3D1 zD7q!`Ai9A)Y0#^6O@7+DRnGZY42mfTaU9W}OgZG4KlD6U{|<3Ng=HD0cu5y7UkB>S zz3K&lkXaNUYXtQryhFp6{oLXAcA&7h1R4qr}bALaMg8<{jcB3 zK~9&xFZXX7jYc{sv?~X>ZL2>OA2X1dU$Hh&*#QL+Cwv~BTUD%V;PSop!Ju3{aF zS){u*Dts}Sb9`ys)xa=BJAu~XMg4d)0YXHvy9pl6xK}esLXT2qcXtM{vVV^GXmEH> z@`b`EO(z9jNs*8D-EjkgVg95bgRXXX=pcH0<_YHj+B&ZXXFi^5jJA5_*KuQI)25Y@ zKfawkvj zeBb|~`5oA-xTjjP7!6p^fe8nyYzWk=1%n0-+~5#WwsN>_7Tp+kzuf!+oJuFH=vs#w zpk}6YK8U8)-+SuZ_Q~~?h~G=cZ-~5|w!#q>>h%SA> zMT%XBn;#RTDV%o(S@hiKF6b!VHwhY)x{5uFmMZ@Z zSBE>_kZ>-wIgzFQ31gz(47JlcHgBPgR~}`&U;v z`OC%6DVkexsPzwDqOX(+T-O;=kIj*4P#8Bh)qkcSfU{g=aI5Jvn zSJ%yD@HMlG+k*XHrY^?YgY4u{Jm8lO_QPv)3n1`amOX^eUljYB(N(}&^Tzf|CFWS> zt<@})(@-Ah$WyAQEmSvr+gzpF^+16JhzrehEYqVz1fI18VI=-4W`(wxu!D~<`z%H} zV)F=-+_wDt#wr^@hJKPMh?;=cUMA^jR-ZQPqdn4x1lAluiA?0)U|q9`-U?#9Ci%{% yrQuDFGFGjD;&;EHfcc0&w>~OVZGST2(+>Y-?;TCH?{7Q_67w literal 0 HcmV?d00001 diff --git a/doc/api/html/classstan_1_1gm_1_1arg__num__warmup-members.html b/doc/api/html/classstan_1_1gm_1_1arg__num__warmup-members.html new file mode 100644 index 00000000000..78b939d7ef2 --- /dev/null +++ b/doc/api/html/classstan_1_1gm_1_1arg__num__warmup-members.html @@ -0,0 +1,147 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::gm::arg_num_warmup Member List
+
+
+ +

This is the complete list of members for stan::gm::arg_num_warmup, including all inherited members.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
_bad_valuestan::gm::singleton_argument< T >protected
_constrainedstan::gm::singleton_argument< T >protected
_defaultstan::gm::valued_argumentprotected
_default_valuestan::gm::singleton_argument< T >protected
_descriptionstan::gm::argumentprotected
_good_valuestan::gm::singleton_argument< T >protected
_namestan::gm::argumentprotected
_validitystan::gm::singleton_argument< T >protected
_valuestan::gm::singleton_argument< T >protected
_value_typestan::gm::valued_argumentprotected
arg(const std::string name)stan::gm::argumentinlinevirtual
arg_num_warmup()stan::gm::arg_num_warmupinline
argument()stan::gm::argumentinline
argument(const std::string name)stan::gm::argumentinline
compute_indent(const int depth)stan::gm::argumentinline
description() const stan::gm::argumentinline
find_arg(std::string name, std::string prefix, std::vector< std::string > &valid_paths)stan::gm::singleton_argument< T >inlinevirtual
help_widthstan::gm::argumentprotected
indent_widthstan::gm::argumentprotected
is_default()stan::gm::singleton_argument< T >inlinevirtual
is_valid(int value)stan::gm::arg_num_warmupinline
stan::gm::singleton_argument::is_valid(T value)stan::gm::singleton_argument< T >inlineprotectedvirtual
name() const stan::gm::argumentinline
parse_args(std::vector< std::string > &args, std::ostream *out, std::ostream *err, bool &help_flag)stan::gm::singleton_argument< T >inlinevirtual
print(std::ostream *s, const int depth, const std::string prefix)stan::gm::valued_argumentinlinevirtual
print_help(std::ostream *s, const int depth, const bool recurse=false)stan::gm::valued_argumentinlinevirtual
print_valid()stan::gm::singleton_argument< T >inlinevirtual
print_value()stan::gm::singleton_argument< T >inlinevirtual
probe_args(argument *base_arg, std::stringstream &s)stan::gm::singleton_argument< T >inlinevirtual
set_value(const T &value)stan::gm::singleton_argument< T >inline
singleton_argument()stan::gm::singleton_argument< T >inline
singleton_argument(const std::string name)stan::gm::singleton_argument< T >inline
split_arg(const std::string &arg, std::string &name, std::string &value)stan::gm::argumentinlinestatic
value()stan::gm::singleton_argument< T >inline
~argument()stan::gm::argumentinlinevirtual
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1gm_1_1arg__num__warmup.html b/doc/api/html/classstan_1_1gm_1_1arg__num__warmup.html new file mode 100644 index 00000000000..a1067ed4129 --- /dev/null +++ b/doc/api/html/classstan_1_1gm_1_1arg__num__warmup.html @@ -0,0 +1,255 @@ + + + + + +Stan: stan::gm::arg_num_warmup Class Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::gm::arg_num_warmup Class Reference
+
+
+ +

#include <arg_num_warmup.hpp>

+
+Inheritance diagram for stan::gm::arg_num_warmup:
+
+
+ + +stan::gm::singleton_argument< T > +stan::gm::valued_argument +stan::gm::argument + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 arg_num_warmup ()
 
bool is_valid (int value)
 
- Public Member Functions inherited from stan::gm::singleton_argument< T >
 singleton_argument ()
 
 singleton_argument (const std::string name)
 
bool parse_args (std::vector< std::string > &args, std::ostream *out, std::ostream *err, bool &help_flag)
 
virtual void probe_args (argument *base_arg, std::stringstream &s)
 
void find_arg (std::string name, std::string prefix, std::vector< std::string > &valid_paths)
 
value ()
 
bool set_value (const T &value)
 
std::string print_value ()
 
std::string print_valid ()
 
bool is_default ()
 
- Public Member Functions inherited from stan::gm::valued_argument
virtual void print (std::ostream *s, const int depth, const std::string prefix)
 
virtual void print_help (std::ostream *s, const int depth, const bool recurse=false)
 
- Public Member Functions inherited from stan::gm::argument
 argument ()
 
 argument (const std::string name)
 
virtual ~argument ()
 
std::string name () const
 
std::string description () const
 
virtual argumentarg (const std::string name)
 
int compute_indent (const int depth)
 
+ + + + + + + + + + + + + + + + + + + + +

+Additional Inherited Members

- Static Public Member Functions inherited from stan::gm::argument
static void split_arg (const std::string &arg, std::string &name, std::string &value)
 
- Protected Member Functions inherited from stan::gm::singleton_argument< T >
virtual bool is_valid (T value)
 
- Protected Attributes inherited from stan::gm::singleton_argument< T >
std::string _validity
 
_value
 
_default_value
 
bool _constrained
 
_good_value
 
_bad_value
 
+

Detailed Description

+
+

Definition at line 10 of file arg_num_warmup.hpp.

+

Constructor & Destructor Documentation

+ +
+
+ + + + + +
+ + + + + + + +
stan::gm::arg_num_warmup::arg_num_warmup ()
+
+inline
+
+ +

Definition at line 14 of file arg_num_warmup.hpp.

+ +
+
+

Member Function Documentation

+ +
+
+ + + + + +
+ + + + + + + + +
bool stan::gm::arg_num_warmup::is_valid (int value)
+
+inline
+
+ +

Definition at line 26 of file arg_num_warmup.hpp.

+ +
+
+
The documentation for this class was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1gm_1_1arg__num__warmup.png b/doc/api/html/classstan_1_1gm_1_1arg__num__warmup.png new file mode 100644 index 0000000000000000000000000000000000000000..efde5471f3ed6b8eec57594c7aefb651c892e441 GIT binary patch literal 1453 zcmcJPX;4#F6vv+;>wtjNiYVCDCj!-qEGh=57z{kXs1U0tvMEc52_l9iCF4?rYRRZ? zSPBG?KA;c*ErAqb5@N6l3W0!um;gZ#)C7>0oha$EYbZ%0XtF#UKscb)YSHrb_$>8?=q6hIZPB3UboxA$-aTP z*0IY`7k)z;HA4M~5o{LSZBP*AWD6;gY|Cqc$d7v0BAo3-DD2_8=?`yS*LoRqQ>$j7aGyGbFA4yh3t_vy9Xtmq8R@FW}L zx0Y9*tmto_!y-*%Sj0hgx5SuFq@T$KU1xeLzsf1=TabCiWwGee&c--QQyX{Gmm5#Q zu$K181afT6u>_2IS1?3lkmhfJ)>CONVcd2>B%%B^IFS;Hg$IW*q?vc;)25fQ%eJO% zSA%cvn&IG=g^n<&48Xa)a$f^9i%i1pGMu>sxF9QW>>8^8qC2uj4e%^*0Qzb`nQne5 zUSuHL9kFVt&~fF|LCX~jwpl>hKd*;8{sjv{VZD`*m)@jkn~oIhFPm`H+%wmB_v+8KZmLEau zgh!Rz8uH^Y%!)6AMunB@d!wcK*C~n6-rXAA}u zIjW*h@zde%;z28EIeg)vT2r}`HFq?JH7hKhMD~Wjpq%VT3p1Gi#g#@=LfxsJ z=99Eu2;M64g;6vp;WoQhOrMoQ#~N1{|8@@dt0LB~W&OeZ-`O)_K8dlul>DDW{|=nz zBX%>@4Tkl;$O7ATe`rTy77X$q)k2F?I2TCXvx+8bp>Bp)3j#^YmB{Rh?s|R&cfKTW zA;_tDyicPf4K(DMJo|x@7BZZJ9$qwMOrG7pI^kk zBdW->9dx>^K2E-D&tg1r$h|2wQ`wb6_7r#dPqtykWYhbdNnKR05kkyB!OmA%0lf`~ zJaUFHHk^r*+R4i%EXnw}Gka`WE=yjdPv&xW`N38+(z9#<7pJctfcjNxN`m;zDH2=3 z;8&C8j*y=zeEf~J>$lRADPxMH*jt^`7J=9#xk< zKDal&{%aQc9mE<8J{gf(ePWxuAw8{U9u%!ZSPmr%n&_Bii`_I_4kegXz4K zSFOb&Z_>0)b-8_q=sn?{@AC5aFF0M&*?TUbu?5fJHQ{#%RvsIsED*QQYqVr`r<1B7 zMscw!BIa>Moghkf6tGatn4S|FA}}?&G07~7$v0H)Xz^mJ-o^#1aO)TW#qCYWqS)Hh z2bHU*h=`B52J64?sT=a1^ZAkDPD_t0+2oztTLV5@!gmB)bd?UUOVC9D$de{=Z9sWU zm76|A%%!k7GCkQmb+%e3rFD926Te-2A-S~08S*%!e!pp7=Hv29bivvB(5rwx)5bw) oC?KyIVtkzVXv~QqKcew6V2;qiy2$ + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::gm::arg_nuts Member List
+
+
+ +

This is the complete list of members for stan::gm::arg_nuts, including all inherited members.

+ + + + + + + + + + + + + + + + + + + + + + +
_descriptionstan::gm::argumentprotected
_namestan::gm::argumentprotected
_subargumentsstan::gm::categorical_argumentprotected
arg(const std::string name)stan::gm::categorical_argumentinlinevirtual
arg_nuts()stan::gm::arg_nutsinline
argument()stan::gm::argumentinline
argument(const std::string name)stan::gm::argumentinline
compute_indent(const int depth)stan::gm::argumentinline
description() const stan::gm::argumentinline
find_arg(std::string name, std::string prefix, std::vector< std::string > &valid_paths)stan::gm::categorical_argumentinlinevirtual
help_widthstan::gm::argumentprotected
indent_widthstan::gm::argumentprotected
name() const stan::gm::argumentinline
parse_args(std::vector< std::string > &args, std::ostream *out, std::ostream *err, bool &help_flag)stan::gm::categorical_argumentinlinevirtual
print(std::ostream *s, const int depth, const std::string prefix)stan::gm::categorical_argumentinlinevirtual
print_help(std::ostream *s, const int depth, const bool recurse)stan::gm::categorical_argumentinlinevirtual
probe_args(argument *base_arg, std::stringstream &s)stan::gm::categorical_argumentinlinevirtual
split_arg(const std::string &arg, std::string &name, std::string &value)stan::gm::argumentinlinestatic
subarguments()stan::gm::categorical_argumentinline
~argument()stan::gm::argumentinlinevirtual
~categorical_argument()stan::gm::categorical_argumentinlinevirtual
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1gm_1_1arg__nuts.html b/doc/api/html/classstan_1_1gm_1_1arg__nuts.html new file mode 100644 index 00000000000..82fd99b9c59 --- /dev/null +++ b/doc/api/html/classstan_1_1gm_1_1arg__nuts.html @@ -0,0 +1,201 @@ + + + + + +Stan: stan::gm::arg_nuts Class Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::gm::arg_nuts Class Reference
+
+
+ +

#include <arg_nuts.hpp>

+
+Inheritance diagram for stan::gm::arg_nuts:
+
+
+ + +stan::gm::categorical_argument +stan::gm::argument + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 arg_nuts ()
 
- Public Member Functions inherited from stan::gm::categorical_argument
virtual ~categorical_argument ()
 
void print (std::ostream *s, const int depth, const std::string prefix)
 
void print_help (std::ostream *s, const int depth, const bool recurse)
 
bool parse_args (std::vector< std::string > &args, std::ostream *out, std::ostream *err, bool &help_flag)
 
virtual void probe_args (argument *base_arg, std::stringstream &s)
 
void find_arg (std::string name, std::string prefix, std::vector< std::string > &valid_paths)
 
std::vector< argument * > & subarguments ()
 
argumentarg (const std::string name)
 
- Public Member Functions inherited from stan::gm::argument
 argument ()
 
 argument (const std::string name)
 
virtual ~argument ()
 
std::string name () const
 
std::string description () const
 
int compute_indent (const int depth)
 
+ + + + + + + +

+Additional Inherited Members

- Static Public Member Functions inherited from stan::gm::argument
static void split_arg (const std::string &arg, std::string &name, std::string &value)
 
- Protected Attributes inherited from stan::gm::categorical_argument
std::vector< argument * > _subarguments
 
+

Detailed Description

+
+

Definition at line 12 of file arg_nuts.hpp.

+

Constructor & Destructor Documentation

+ +
+
+ + + + + +
+ + + + + + + +
stan::gm::arg_nuts::arg_nuts ()
+
+inline
+
+ +

Definition at line 16 of file arg_nuts.hpp.

+ +
+
+
The documentation for this class was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1gm_1_1arg__nuts.png b/doc/api/html/classstan_1_1gm_1_1arg__nuts.png new file mode 100644 index 0000000000000000000000000000000000000000..b964b1ec130e22bd8b347ac2892ca1eaa85989b6 GIT binary patch literal 1000 zcmeAS@N?(olHy`uVBq!ia0vp^JAt@^gBeKngzicMQW60^A+G=b{|7Q(y!l$%e`o@b z1;z&s9ANFdBM;hBp8s2BueZLuRJyi)X4`9D;T!&8hg38Bjh|f(y8Fn}XnxZ7iCGg(uc+Ks&*Yr6 z<-F(TZ`EZ{r8hWcZ|SRikQ6bAuV7cyDY3HM+cWK4^JdLHnP{@i2L^yh!S&oBF2n!c-K@q2yU)qHyv+udJgBfQt_ zboHlQEs^WOwH}_W;d*sxQi@&bz4Il1nNBxOitV|+c(?AG!#z#4lguuj*^}$KJdc0ti2Y0=_}b+SJ(Ha$r;ZtP4K++AmYpK8(-h|OnxnM=krgYNnhp`U$jq?TQBDM z%UAol+}r&vy~;dTWB&&dtX`j4-81q|e)?4k14ZK}8%%!v(JV89=kG$lw% zNa#QVG!9PlKih8e>Zj*_(a-6^wO{`iRjQWX3~tw*{;xFfx}oh3mHKBh^O$9xO!@gF z^BI*)&uWbKZ;vuN3ruvgzL(xp+q3_i_tq)*jFy)5C-JAr=H5-a7VUFu z?_Sn~$$xjQi+*cW9DS6bIP10EaHdUrn8&ed+oUnRz%e@N!QbOZJeOUqUQ{n7oO Zp?QthbV+vKXTWU9;OXk;vd$@?2>{4w?`{A9 literal 0 HcmV?d00001 diff --git a/doc/api/html/classstan_1_1gm_1_1arg__optimize-members.html b/doc/api/html/classstan_1_1gm_1_1arg__optimize-members.html new file mode 100644 index 00000000000..2922dc21111 --- /dev/null +++ b/doc/api/html/classstan_1_1gm_1_1arg__optimize-members.html @@ -0,0 +1,133 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::gm::arg_optimize Member List
+
+
+ +

This is the complete list of members for stan::gm::arg_optimize, including all inherited members.

+ + + + + + + + + + + + + + + + + + + + + + +
_descriptionstan::gm::argumentprotected
_namestan::gm::argumentprotected
_subargumentsstan::gm::categorical_argumentprotected
arg(const std::string name)stan::gm::categorical_argumentinlinevirtual
arg_optimize()stan::gm::arg_optimizeinline
argument()stan::gm::argumentinline
argument(const std::string name)stan::gm::argumentinline
compute_indent(const int depth)stan::gm::argumentinline
description() const stan::gm::argumentinline
find_arg(std::string name, std::string prefix, std::vector< std::string > &valid_paths)stan::gm::categorical_argumentinlinevirtual
help_widthstan::gm::argumentprotected
indent_widthstan::gm::argumentprotected
name() const stan::gm::argumentinline
parse_args(std::vector< std::string > &args, std::ostream *out, std::ostream *err, bool &help_flag)stan::gm::categorical_argumentinlinevirtual
print(std::ostream *s, const int depth, const std::string prefix)stan::gm::categorical_argumentinlinevirtual
print_help(std::ostream *s, const int depth, const bool recurse)stan::gm::categorical_argumentinlinevirtual
probe_args(argument *base_arg, std::stringstream &s)stan::gm::categorical_argumentinlinevirtual
split_arg(const std::string &arg, std::string &name, std::string &value)stan::gm::argumentinlinestatic
subarguments()stan::gm::categorical_argumentinline
~argument()stan::gm::argumentinlinevirtual
~categorical_argument()stan::gm::categorical_argumentinlinevirtual
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1gm_1_1arg__optimize.html b/doc/api/html/classstan_1_1gm_1_1arg__optimize.html new file mode 100644 index 00000000000..82d117f3ca0 --- /dev/null +++ b/doc/api/html/classstan_1_1gm_1_1arg__optimize.html @@ -0,0 +1,201 @@ + + + + + +Stan: stan::gm::arg_optimize Class Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::gm::arg_optimize Class Reference
+
+
+ +

#include <arg_optimize.hpp>

+
+Inheritance diagram for stan::gm::arg_optimize:
+
+
+ + +stan::gm::categorical_argument +stan::gm::argument + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 arg_optimize ()
 
- Public Member Functions inherited from stan::gm::categorical_argument
virtual ~categorical_argument ()
 
void print (std::ostream *s, const int depth, const std::string prefix)
 
void print_help (std::ostream *s, const int depth, const bool recurse)
 
bool parse_args (std::vector< std::string > &args, std::ostream *out, std::ostream *err, bool &help_flag)
 
virtual void probe_args (argument *base_arg, std::stringstream &s)
 
void find_arg (std::string name, std::string prefix, std::vector< std::string > &valid_paths)
 
std::vector< argument * > & subarguments ()
 
argumentarg (const std::string name)
 
- Public Member Functions inherited from stan::gm::argument
 argument ()
 
 argument (const std::string name)
 
virtual ~argument ()
 
std::string name () const
 
std::string description () const
 
int compute_indent (const int depth)
 
+ + + + + + + +

+Additional Inherited Members

- Static Public Member Functions inherited from stan::gm::argument
static void split_arg (const std::string &arg, std::string &name, std::string &value)
 
- Protected Attributes inherited from stan::gm::categorical_argument
std::vector< argument * > _subarguments
 
+

Detailed Description

+
+

Definition at line 14 of file arg_optimize.hpp.

+

Constructor & Destructor Documentation

+ +
+
+ + + + + +
+ + + + + + + +
stan::gm::arg_optimize::arg_optimize ()
+
+inline
+
+ +

Definition at line 18 of file arg_optimize.hpp.

+ +
+
+
The documentation for this class was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1gm_1_1arg__optimize.png b/doc/api/html/classstan_1_1gm_1_1arg__optimize.png new file mode 100644 index 0000000000000000000000000000000000000000..f38590088be7cbfb11778ccf3c4d2cdc7b4e3205 GIT binary patch literal 1025 zcmeAS@N?(olHy`uVBq!ia0vp^JAt@^gBeKngzicMQW60^A+G=b{|7Q(y!l$%e`o@b z1;z&s9ANFdBM;mRMK?%>ZENOZtd-V7X8HibK0i$b1z&pt2N@EWaUh7MXAnu6%@V!;l2A?zTy0|s&-2S9}(vsx7+IG41RgX_U zF#Ei$L?!chVT;P#XZvjJ>pEj9&U##8+#c4gGV|fHNh#eRpLAFD7@p%eaJ_=T=j4`W z{m0k5x;#t&(d1R{H&OPQ#uon|wO40OhlRYp zw%L5<+kJZ{uD;<~&U&GhZRNgi{CC4nzYgDrTf-@KDTG(?}-n8TghL&5dC@E9sLk*t34~Fr?h-acy_Vo)9m8= z-=_tZ+>Z7VmedXZy7)`L^m_}#{{G5&X8Cy?v-c(TbFS-;ud7RsiFy8H-gj@0OV#UK z{~LU++3ImA{tzq##6AO4jbOw2j|?*=WuBGqkG#6vH2#Qs==|$t75Uw3yY~N;Dg&F$?EK5uCOfZKpYmNu1DF(b4CgHN(o-$j zvoQV4X_voS^e4xj6ULr>q*jK9ExX-*6(xnx|VU``AcAaW$<+M Kb6Mw<&;$S$j{#`_ literal 0 HcmV?d00001 diff --git a/doc/api/html/classstan_1_1gm_1_1arg__optimize__algo-members.html b/doc/api/html/classstan_1_1gm_1_1arg__optimize__algo-members.html new file mode 100644 index 00000000000..6ce76b601d7 --- /dev/null +++ b/doc/api/html/classstan_1_1gm_1_1arg__optimize__algo-members.html @@ -0,0 +1,143 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::gm::arg_optimize_algo Member List
+
+
+ +

This is the complete list of members for stan::gm::arg_optimize_algo, including all inherited members.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
_cursorstan::gm::list_argumentprotected
_defaultstan::gm::valued_argumentprotected
_default_cursorstan::gm::list_argumentprotected
_descriptionstan::gm::argumentprotected
_namestan::gm::argumentprotected
_value_typestan::gm::valued_argumentprotected
_valuesstan::gm::list_argumentprotected
arg(std::string name)stan::gm::list_argumentinlinevirtual
arg_optimize_algo()stan::gm::arg_optimize_algoinline
argument()stan::gm::argumentinline
argument(const std::string name)stan::gm::argumentinline
compute_indent(const int depth)stan::gm::argumentinline
description() const stan::gm::argumentinline
find_arg(std::string name, std::string prefix, std::vector< std::string > &valid_paths)stan::gm::list_argumentinlinevirtual
help_widthstan::gm::argumentprotected
indent_widthstan::gm::argumentprotected
is_default()stan::gm::list_argumentinlinevirtual
list_argument()stan::gm::list_argumentinline
name() const stan::gm::argumentinline
parse_args(std::vector< std::string > &args, std::ostream *out, std::ostream *err, bool &help_flag)stan::gm::list_argumentinlinevirtual
print(std::ostream *s, int depth, const std::string prefix)stan::gm::list_argumentinlinevirtual
print_help(std::ostream *s, int depth, bool recurse)stan::gm::list_argumentinlinevirtual
print_valid()stan::gm::list_argumentinlinevirtual
print_value()stan::gm::list_argumentinlinevirtual
probe_args(argument *base_arg, std::stringstream &s)stan::gm::list_argumentinlinevirtual
split_arg(const std::string &arg, std::string &name, std::string &value)stan::gm::argumentinlinestatic
valid_value(std::string name)stan::gm::list_argumentinline
value()stan::gm::list_argumentinline
values()stan::gm::list_argumentinline
~argument()stan::gm::argumentinlinevirtual
~list_argument()stan::gm::list_argumentinline
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1gm_1_1arg__optimize__algo.html b/doc/api/html/classstan_1_1gm_1_1arg__optimize__algo.html new file mode 100644 index 00000000000..3b34d98a730 --- /dev/null +++ b/doc/api/html/classstan_1_1gm_1_1arg__optimize__algo.html @@ -0,0 +1,205 @@ + + + + + +Stan: stan::gm::arg_optimize_algo Class Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::gm::arg_optimize_algo Class Reference
+
+
+ +

#include <arg_optimize_algo.hpp>

+
+Inheritance diagram for stan::gm::arg_optimize_algo:
+
+
+ + +stan::gm::list_argument +stan::gm::valued_argument +stan::gm::argument + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 arg_optimize_algo ()
 
- Public Member Functions inherited from stan::gm::list_argument
 list_argument ()
 
 ~list_argument ()
 
void print (std::ostream *s, int depth, const std::string prefix)
 
void print_help (std::ostream *s, int depth, bool recurse)
 
bool parse_args (std::vector< std::string > &args, std::ostream *out, std::ostream *err, bool &help_flag)
 
virtual void probe_args (argument *base_arg, std::stringstream &s)
 
void find_arg (std::string name, std::string prefix, std::vector< std::string > &valid_paths)
 
bool valid_value (std::string name)
 
argumentarg (std::string name)
 
std::vector< argument * > & values ()
 
std::string value ()
 
std::string print_value ()
 
std::string print_valid ()
 
bool is_default ()
 
+ + + + + + + + + + + +

+Additional Inherited Members

- Static Public Member Functions inherited from stan::gm::argument
static void split_arg (const std::string &arg, std::string &name, std::string &value)
 
- Protected Attributes inherited from stan::gm::list_argument
int _cursor
 
int _default_cursor
 
std::vector< argument * > _values
 
+

Detailed Description

+
+

Definition at line 14 of file arg_optimize_algo.hpp.

+

Constructor & Destructor Documentation

+ +
+
+ + + + + +
+ + + + + + + +
stan::gm::arg_optimize_algo::arg_optimize_algo ()
+
+inline
+
+ +

Definition at line 18 of file arg_optimize_algo.hpp.

+ +
+
+
The documentation for this class was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1gm_1_1arg__optimize__algo.png b/doc/api/html/classstan_1_1gm_1_1arg__optimize__algo.png new file mode 100644 index 0000000000000000000000000000000000000000..b5c59835b0da46dc524886bc3787dcda72155fce GIT binary patch literal 1342 zcma)+dr*>D7{)Q(ysT;I?%0;aw0$_G7&EzQSlX1bg{V`Aql@e0B~2tPMM@BpY2ECy zhJ6(dikNrNQCKgnU?}RCA)pP0hNii?h=xq2sA-D(xx3SU&Fq8-Ry;B~(%?b7;paLd~GI`&zU!k|N2OWj8}3WHfFu>q$D8D@rJJvilRyS<22`)unWoX@~Kf9vHkq!Rk9}x)Jhr2%nHuhXnZ+f#yH4plF&!w&t;ieNDzuLB` zlY@qZmli`k(^s+YC@JX2_1gnMQNlw^bRM$QMMD%=gU!7NIW^ez*R;_WoaVb;S1FO; zHBsy2;wwT^S|S>=pI8`sWNa{VqIl8>?SD;(R4<%8y{r*nXPQ^HBmD9@<` zR(C=+x}!Oi{_B=fj+4|t%hBqWER<&=>_GdMj9c->V@#(Q>k0peZ69~CVSYIXru~=Y zdK(+9V`RPn(mX*cTsw(GL2a0S{n5HX_o^vk+iTZu3q`k3EAeBQcc8F>EhhQau8L?Nlw$HcsyFMi8I-S@*L(aPV1 z$&=dxRfy;88rJxVJc=j3=8RptxzZ|m zC3FVhPgZT^GpR6CmxDA{Xfb~PX$Db&!M`j&UU#STuP)~!W~V=2PiZ_@QD@tUFx3ZO z)#_ks%R2Hro+^pw+^DKz*oq*YSGgkk8asQ4i@3I)X>;VTi)4RUh;IwmhJbi@v4N(D zuK_&6Jv}k)4EMh0;$X=|QNM{O`|S;(ezV2@+t5(5$1de~yLfUDAiU2`5xF$D-AEwa z%4o`@qv)M!S9(}FmEU8aTb-qeD9jQEYg(E|2T47;s=eN{sKqCwz*zMZ*<(e8V-+~% z1Krgfz9qcdCEBc5jWHKU-W^%SDR85K&DwI&99#mXE2?R5K`XF<{u~ma0MeU$Djz4yP!ZE-b4$sggxz5o+?p8tk5Pb)ZNkI{>JH^MGgHK0Lfub-%KsB$EmYFH!qZXSu6x7z9^8?65zpx*{Vlj>PG13w_j3ZJEP zkw=p+T1Vy14b_0d$wDRHBV43zY$xMh+ZeW~n?C?P;i%rAu(;@O2506TTizwPg68zE zR*l@znu_Lra(SY4$3;tm=6TwLtr)VX?gPt+ig!L4O}}KJ1sSulY4zp7M{VTeb1NAr znxMB}dR(8%^zWbY+I4~3Zb)gxCynMYMQpyuzEoMGOf$PtR|&J5!7zLZiipGE&J$O5 j{byEdJbSqE(*j)iO + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::gm::arg_output Member List
+
+
+ +

This is the complete list of members for stan::gm::arg_output, including all inherited members.

+ + + + + + + + + + + + + + + + + + + + + + +
_descriptionstan::gm::argumentprotected
_namestan::gm::argumentprotected
_subargumentsstan::gm::categorical_argumentprotected
arg(const std::string name)stan::gm::categorical_argumentinlinevirtual
arg_output()stan::gm::arg_outputinline
argument()stan::gm::argumentinline
argument(const std::string name)stan::gm::argumentinline
compute_indent(const int depth)stan::gm::argumentinline
description() const stan::gm::argumentinline
find_arg(std::string name, std::string prefix, std::vector< std::string > &valid_paths)stan::gm::categorical_argumentinlinevirtual
help_widthstan::gm::argumentprotected
indent_widthstan::gm::argumentprotected
name() const stan::gm::argumentinline
parse_args(std::vector< std::string > &args, std::ostream *out, std::ostream *err, bool &help_flag)stan::gm::categorical_argumentinlinevirtual
print(std::ostream *s, const int depth, const std::string prefix)stan::gm::categorical_argumentinlinevirtual
print_help(std::ostream *s, const int depth, const bool recurse)stan::gm::categorical_argumentinlinevirtual
probe_args(argument *base_arg, std::stringstream &s)stan::gm::categorical_argumentinlinevirtual
split_arg(const std::string &arg, std::string &name, std::string &value)stan::gm::argumentinlinestatic
subarguments()stan::gm::categorical_argumentinline
~argument()stan::gm::argumentinlinevirtual
~categorical_argument()stan::gm::categorical_argumentinlinevirtual
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1gm_1_1arg__output.html b/doc/api/html/classstan_1_1gm_1_1arg__output.html new file mode 100644 index 00000000000..416bfdbe046 --- /dev/null +++ b/doc/api/html/classstan_1_1gm_1_1arg__output.html @@ -0,0 +1,201 @@ + + + + + +Stan: stan::gm::arg_output Class Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::gm::arg_output Class Reference
+
+
+ +

#include <arg_output.hpp>

+
+Inheritance diagram for stan::gm::arg_output:
+
+
+ + +stan::gm::categorical_argument +stan::gm::argument + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 arg_output ()
 
- Public Member Functions inherited from stan::gm::categorical_argument
virtual ~categorical_argument ()
 
void print (std::ostream *s, const int depth, const std::string prefix)
 
void print_help (std::ostream *s, const int depth, const bool recurse)
 
bool parse_args (std::vector< std::string > &args, std::ostream *out, std::ostream *err, bool &help_flag)
 
virtual void probe_args (argument *base_arg, std::stringstream &s)
 
void find_arg (std::string name, std::string prefix, std::vector< std::string > &valid_paths)
 
std::vector< argument * > & subarguments ()
 
argumentarg (const std::string name)
 
- Public Member Functions inherited from stan::gm::argument
 argument ()
 
 argument (const std::string name)
 
virtual ~argument ()
 
std::string name () const
 
std::string description () const
 
int compute_indent (const int depth)
 
+ + + + + + + +

+Additional Inherited Members

- Static Public Member Functions inherited from stan::gm::argument
static void split_arg (const std::string &arg, std::string &name, std::string &value)
 
- Protected Attributes inherited from stan::gm::categorical_argument
std::vector< argument * > _subarguments
 
+

Detailed Description

+
+

Definition at line 14 of file arg_output.hpp.

+

Constructor & Destructor Documentation

+ +
+
+ + + + + +
+ + + + + + + +
stan::gm::arg_output::arg_output ()
+
+inline
+
+ +

Definition at line 18 of file arg_output.hpp.

+ +
+
+
The documentation for this class was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1gm_1_1arg__output.png b/doc/api/html/classstan_1_1gm_1_1arg__output.png new file mode 100644 index 0000000000000000000000000000000000000000..326c5c6e0720fbfecd140373c2c4b409087dcf8f GIT binary patch literal 1014 zcmeAS@N?(olHy`uVBq!ia0vp^JAt@^gBeKngzicMQW60^A+G=b{|7Q(y!l$%e`o@b z1;z&s9ANFdBM;-8QL*$)@9CaRbpikVcyS?u}gY2LizbH+>`O!F9mjn@8r zYqt8=mS^Q3J+D4D?Z3zLz;_1o520ra`&uj;^b`3Wc;n-4Py<@j8-WB_n=yuS~GdjZ{Kl6W&(b8{FfHMF&DM7XPTS=^wCr3v zE%cw_!{1pq?|;5}<$I~!jM=;H8`Z==k2d{s?as8{ty!Aw+e@0w4$7Ueit^uQ`8_%R zX4kg8OHC)PEs3?);xBzE`|9fY^XF{R?Mf0nZ#|6p^7+Qs_dVT}e(!$HaGG?lSoc@E z@%iv>mA~^jfFY}TM)lY?+m+f;Ekm=g+8 zqyRrKYf8{8A)x~;(5N_V`gy(0)2xfdk^dTg?ya|rs^4kztW%G zW1G%BzGlEsa3J#Y(UmiF)l_!*Z>+w#{e;vlp}p5KUf zUvu_2V*|5ZsQ1l7o1EL9c|Tb{J74{#vHyV+`ZLzQsxdGx-JiKH^7&m!ga3>&1skKh z@*~qq`;++7WOMJPt=_(8+0}cO*ckYJ+_3&qF>`Lme2bbRcft%0c)Y#x^a|78=hx5p x@3Hx&Tz6jPz-$Bd52|MvYgVq+S~}&~Bm3j)y!QO`TnftJ44$rjF6*2UngG;j|BnCw literal 0 HcmV?d00001 diff --git a/doc/api/html/classstan_1_1gm_1_1arg__output__file-members.html b/doc/api/html/classstan_1_1gm_1_1arg__output__file-members.html new file mode 100644 index 00000000000..c31439e78e5 --- /dev/null +++ b/doc/api/html/classstan_1_1gm_1_1arg__output__file-members.html @@ -0,0 +1,146 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::gm::arg_output_file Member List
+
+
+ +

This is the complete list of members for stan::gm::arg_output_file, including all inherited members.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
_bad_valuestan::gm::singleton_argument< T >protected
_constrainedstan::gm::singleton_argument< T >protected
_defaultstan::gm::valued_argumentprotected
_default_valuestan::gm::singleton_argument< T >protected
_descriptionstan::gm::argumentprotected
_good_valuestan::gm::singleton_argument< T >protected
_namestan::gm::argumentprotected
_validitystan::gm::singleton_argument< T >protected
_valuestan::gm::singleton_argument< T >protected
_value_typestan::gm::valued_argumentprotected
arg(const std::string name)stan::gm::argumentinlinevirtual
arg_output_file()stan::gm::arg_output_fileinline
argument()stan::gm::argumentinline
argument(const std::string name)stan::gm::argumentinline
compute_indent(const int depth)stan::gm::argumentinline
description() const stan::gm::argumentinline
find_arg(std::string name, std::string prefix, std::vector< std::string > &valid_paths)stan::gm::singleton_argument< T >inlinevirtual
help_widthstan::gm::argumentprotected
indent_widthstan::gm::argumentprotected
is_default()stan::gm::singleton_argument< T >inlinevirtual
is_valid(T value)stan::gm::singleton_argument< T >inlineprotectedvirtual
name() const stan::gm::argumentinline
parse_args(std::vector< std::string > &args, std::ostream *out, std::ostream *err, bool &help_flag)stan::gm::singleton_argument< T >inlinevirtual
print(std::ostream *s, const int depth, const std::string prefix)stan::gm::valued_argumentinlinevirtual
print_help(std::ostream *s, const int depth, const bool recurse=false)stan::gm::valued_argumentinlinevirtual
print_valid()stan::gm::singleton_argument< T >inlinevirtual
print_value()stan::gm::singleton_argument< T >inlinevirtual
probe_args(argument *base_arg, std::stringstream &s)stan::gm::singleton_argument< T >inlinevirtual
set_value(const T &value)stan::gm::singleton_argument< T >inline
singleton_argument()stan::gm::singleton_argument< T >inline
singleton_argument(const std::string name)stan::gm::singleton_argument< T >inline
split_arg(const std::string &arg, std::string &name, std::string &value)stan::gm::argumentinlinestatic
value()stan::gm::singleton_argument< T >inline
~argument()stan::gm::argumentinlinevirtual
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1gm_1_1arg__output__file.html b/doc/api/html/classstan_1_1gm_1_1arg__output__file.html new file mode 100644 index 00000000000..cdc01138876 --- /dev/null +++ b/doc/api/html/classstan_1_1gm_1_1arg__output__file.html @@ -0,0 +1,226 @@ + + + + + +Stan: stan::gm::arg_output_file Class Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::gm::arg_output_file Class Reference
+
+
+ +

#include <arg_output_file.hpp>

+
+Inheritance diagram for stan::gm::arg_output_file:
+
+
+ + +stan::gm::singleton_argument< T > +stan::gm::valued_argument +stan::gm::argument + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 arg_output_file ()
 
- Public Member Functions inherited from stan::gm::singleton_argument< T >
 singleton_argument ()
 
 singleton_argument (const std::string name)
 
bool parse_args (std::vector< std::string > &args, std::ostream *out, std::ostream *err, bool &help_flag)
 
virtual void probe_args (argument *base_arg, std::stringstream &s)
 
void find_arg (std::string name, std::string prefix, std::vector< std::string > &valid_paths)
 
value ()
 
bool set_value (const T &value)
 
std::string print_value ()
 
std::string print_valid ()
 
bool is_default ()
 
- Public Member Functions inherited from stan::gm::valued_argument
virtual void print (std::ostream *s, const int depth, const std::string prefix)
 
virtual void print_help (std::ostream *s, const int depth, const bool recurse=false)
 
- Public Member Functions inherited from stan::gm::argument
 argument ()
 
 argument (const std::string name)
 
virtual ~argument ()
 
std::string name () const
 
std::string description () const
 
virtual argumentarg (const std::string name)
 
int compute_indent (const int depth)
 
+ + + + + + + + + + + + + + + + + + + + +

+Additional Inherited Members

- Static Public Member Functions inherited from stan::gm::argument
static void split_arg (const std::string &arg, std::string &name, std::string &value)
 
- Protected Member Functions inherited from stan::gm::singleton_argument< T >
virtual bool is_valid (T value)
 
- Protected Attributes inherited from stan::gm::singleton_argument< T >
std::string _validity
 
_value
 
_default_value
 
bool _constrained
 
_good_value
 
_bad_value
 
+

Detailed Description

+
+

Definition at line 10 of file arg_output_file.hpp.

+

Constructor & Destructor Documentation

+ +
+
+ + + + + +
+ + + + + + + +
stan::gm::arg_output_file::arg_output_file ()
+
+inline
+
+ +

Definition at line 14 of file arg_output_file.hpp.

+ +
+
+
The documentation for this class was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1gm_1_1arg__output__file.png b/doc/api/html/classstan_1_1gm_1_1arg__output__file.png new file mode 100644 index 0000000000000000000000000000000000000000..14b6112758285e1b6d33601d5d51eb633a904413 GIT binary patch literal 1427 zcma)+ZB)`{6u|$=bf|T3&5kb-Y6tXW@waB>XquUz{)f3jEL|v?sZA|k(3mf2S>b%c z#FES`Gn^@AQZo?pWtx&2>I??vTUlbhkxq>=lToKWY#(;^oO7Rh@45GWcz(~lH*=r2 z$7(|hLjV9)L!Nk&R(ENo84lClC8OajT4lD+i%igHG+OiJ^kPC@%XzK!QJR~Z^)d%7 zwJtoKbj8N;>*|4x&s%yp&`(6*;M1v`tG%Eus=8rd()q zOS~#SeWDCAvCXpnQHg1*0cnvl2ev-iF0b-^{silIo@10U$+}x=_VP!{MzX~4NmlV; zNZ2xtEBv+o(z5_|y|RY5b{e5hjkZ%$(m9M_p_Gc5&>iWw&n4ESExq+Uwho3XWERWY zv0|U-w{^cc)h4Z#)1qV-I7Z9LVHcFx9;|pJA{*F3>zI+AeF>?xpjbX=YkD2Mezq7{ zz-bbHc!X*L^!gIza8B$hAhib;WUL>T=+vHX{xFne?jD9VbrA!bM?v6qj46;TFgoQt zsMm~A=>{R_I<*-hK+zfiOh5Za`01Lh?cc)jkcBQiAD#Sx)$<(Uc}~yE9q&)vPwT~a z<+d(e-qW!1BCp4Oo;y85i0C!pxZ@sB-c$+PtI7(UD<)ae;E_<~!3AT^B;@9o1d9J^ zEVT_}P#@UwkzOnzQuyK=Rw+PwK8E&>PN)}9E!Ytna;86GBBn|DES|yQg>@va1JiCM2A-;&0R3Pqwm1Y?bedvwG5Cmk+#GFH^M?N< z`EStRS0OoPc3)N zdK28A%<$Yl=+Gg0Pq_u5plqNu=&pK1z0y85gFar!KViVKNSf+Pac%;m4>+bxD-|~7 z-eZ1Ky#9m+q^OokYT@`iuhVqaHeg4Te#y+W;k`S=Sun2LZAdkWvw=icM4NXBNsaM{ z5?VjXjU|oqR1bDdhDqWo*_@^<*GXh=mhrhrYD$h)$@EHMp zx1&W~4h#1)`lkACI-FcYc5nBIm36HNVa_j0O-y8@M-;OL`tY3xT6_qx{Ze#`dzjf0t1U7}V<<$Ca)%!qx zGN^O3z77PwOu6^5lj8$~@5&WK+3lu>ym+Q$Z>Jk$_dCvI+QKmI-nK(MJW8*B^Q)2& zK!g-4D(C8wry9Frb*mjc(v0|o=uNuQbLSFpDtZ&+dV)^v=}&{ryL!?3>}=Y&i=};H U0gW^6q1~VWMDWJf> + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::gm::arg_random Member List
+
+
+ +

This is the complete list of members for stan::gm::arg_random, including all inherited members.

+ + + + + + + + + + + + + + + + + + + + + + +
_descriptionstan::gm::argumentprotected
_namestan::gm::argumentprotected
_subargumentsstan::gm::categorical_argumentprotected
arg(const std::string name)stan::gm::categorical_argumentinlinevirtual
arg_random()stan::gm::arg_randominline
argument()stan::gm::argumentinline
argument(const std::string name)stan::gm::argumentinline
compute_indent(const int depth)stan::gm::argumentinline
description() const stan::gm::argumentinline
find_arg(std::string name, std::string prefix, std::vector< std::string > &valid_paths)stan::gm::categorical_argumentinlinevirtual
help_widthstan::gm::argumentprotected
indent_widthstan::gm::argumentprotected
name() const stan::gm::argumentinline
parse_args(std::vector< std::string > &args, std::ostream *out, std::ostream *err, bool &help_flag)stan::gm::categorical_argumentinlinevirtual
print(std::ostream *s, const int depth, const std::string prefix)stan::gm::categorical_argumentinlinevirtual
print_help(std::ostream *s, const int depth, const bool recurse)stan::gm::categorical_argumentinlinevirtual
probe_args(argument *base_arg, std::stringstream &s)stan::gm::categorical_argumentinlinevirtual
split_arg(const std::string &arg, std::string &name, std::string &value)stan::gm::argumentinlinestatic
subarguments()stan::gm::categorical_argumentinline
~argument()stan::gm::argumentinlinevirtual
~categorical_argument()stan::gm::categorical_argumentinlinevirtual
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1gm_1_1arg__random.html b/doc/api/html/classstan_1_1gm_1_1arg__random.html new file mode 100644 index 00000000000..bde65d72d6d --- /dev/null +++ b/doc/api/html/classstan_1_1gm_1_1arg__random.html @@ -0,0 +1,201 @@ + + + + + +Stan: stan::gm::arg_random Class Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::gm::arg_random Class Reference
+
+
+ +

#include <arg_random.hpp>

+
+Inheritance diagram for stan::gm::arg_random:
+
+
+ + +stan::gm::categorical_argument +stan::gm::argument + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 arg_random ()
 
- Public Member Functions inherited from stan::gm::categorical_argument
virtual ~categorical_argument ()
 
void print (std::ostream *s, const int depth, const std::string prefix)
 
void print_help (std::ostream *s, const int depth, const bool recurse)
 
bool parse_args (std::vector< std::string > &args, std::ostream *out, std::ostream *err, bool &help_flag)
 
virtual void probe_args (argument *base_arg, std::stringstream &s)
 
void find_arg (std::string name, std::string prefix, std::vector< std::string > &valid_paths)
 
std::vector< argument * > & subarguments ()
 
argumentarg (const std::string name)
 
- Public Member Functions inherited from stan::gm::argument
 argument ()
 
 argument (const std::string name)
 
virtual ~argument ()
 
std::string name () const
 
std::string description () const
 
int compute_indent (const int depth)
 
+ + + + + + + +

+Additional Inherited Members

- Static Public Member Functions inherited from stan::gm::argument
static void split_arg (const std::string &arg, std::string &name, std::string &value)
 
- Protected Attributes inherited from stan::gm::categorical_argument
std::vector< argument * > _subarguments
 
+

Detailed Description

+
+

Definition at line 12 of file arg_random.hpp.

+

Constructor & Destructor Documentation

+ +
+
+ + + + + +
+ + + + + + + +
stan::gm::arg_random::arg_random ()
+
+inline
+
+ +

Definition at line 16 of file arg_random.hpp.

+ +
+
+
The documentation for this class was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1gm_1_1arg__random.png b/doc/api/html/classstan_1_1gm_1_1arg__random.png new file mode 100644 index 0000000000000000000000000000000000000000..f75b960dd6faa475a7ce96dc53a96095ea6650a7 GIT binary patch literal 1012 zcmeAS@N?(olHy`uVBq!ia0vp^JAt@^gBeKngzicMQW60^A+G=b{|7Q(y!l$%e`o@b z1;z&s9ANFdBM;Ku{-V6j@fIs+&sXb%l9~bS>~*^7SBm+DrZzrPB)mY62ES?y5}#cznlN7Kg*nF zKK1mTQ=hh$+ErikzPjsA#BA^7oNLriKb%x@O!RZ<%B+tnGyS(!d*)75y~4Atd=u}4 zCB=HP^3QL+q;=Nq2G8mY=JKPryyycqf6O9d5rWFNGDml0I{e{n=`8ASv z((;1bCzZ`{_Xslo{`Tij? zmKyp``eJOycenIkouYcNr_r6vdC#VW=oSA*1k??;scovSzGlm&FX~T=RMYpK@ic3x z%)XiH9j|Tx2HCvtrm=eu>{IMNckKAZt76v@-45P6X%?8gFV}Tzp6zbQ%od9A-dxKUtC_Dm|9g%3 zm)d#e&(z-c^W1;_Gmvku>Gqd(iqW4Qp1qnNoxq=#sjGf}&hKs8WL$6G+9W!0@zYgR zQ}SP3vc9r9?t9-G<9w|RDzyvrt1QdDT0eedHMjbno}%abonn6vPyBmR$+KQKQO|Q< z%TAS_Mzj4doAh!VxL(1)b8^G8{^KiN9iDamQS++)Y`Lwh2WA_ve^5Qc2n;NS_(L)W zrsLx#_pp+RnQ^nc_HNDe=e;{m{&p^&{M`N7H_khAb$6;fvD%=U3k + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::gm::arg_refresh Member List
+
+
+ +

This is the complete list of members for stan::gm::arg_refresh, including all inherited members.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
_bad_valuestan::gm::singleton_argument< T >protected
_constrainedstan::gm::singleton_argument< T >protected
_defaultstan::gm::valued_argumentprotected
_default_valuestan::gm::singleton_argument< T >protected
_descriptionstan::gm::argumentprotected
_good_valuestan::gm::singleton_argument< T >protected
_namestan::gm::argumentprotected
_validitystan::gm::singleton_argument< T >protected
_valuestan::gm::singleton_argument< T >protected
_value_typestan::gm::valued_argumentprotected
arg(const std::string name)stan::gm::argumentinlinevirtual
arg_refresh()stan::gm::arg_refreshinline
argument()stan::gm::argumentinline
argument(const std::string name)stan::gm::argumentinline
compute_indent(const int depth)stan::gm::argumentinline
description() const stan::gm::argumentinline
find_arg(std::string name, std::string prefix, std::vector< std::string > &valid_paths)stan::gm::singleton_argument< T >inlinevirtual
help_widthstan::gm::argumentprotected
indent_widthstan::gm::argumentprotected
is_default()stan::gm::singleton_argument< T >inlinevirtual
is_valid(int value)stan::gm::arg_refreshinline
stan::gm::singleton_argument::is_valid(T value)stan::gm::singleton_argument< T >inlineprotectedvirtual
name() const stan::gm::argumentinline
parse_args(std::vector< std::string > &args, std::ostream *out, std::ostream *err, bool &help_flag)stan::gm::singleton_argument< T >inlinevirtual
print(std::ostream *s, const int depth, const std::string prefix)stan::gm::valued_argumentinlinevirtual
print_help(std::ostream *s, const int depth, const bool recurse=false)stan::gm::valued_argumentinlinevirtual
print_valid()stan::gm::singleton_argument< T >inlinevirtual
print_value()stan::gm::singleton_argument< T >inlinevirtual
probe_args(argument *base_arg, std::stringstream &s)stan::gm::singleton_argument< T >inlinevirtual
set_value(const T &value)stan::gm::singleton_argument< T >inline
singleton_argument()stan::gm::singleton_argument< T >inline
singleton_argument(const std::string name)stan::gm::singleton_argument< T >inline
split_arg(const std::string &arg, std::string &name, std::string &value)stan::gm::argumentinlinestatic
value()stan::gm::singleton_argument< T >inline
~argument()stan::gm::argumentinlinevirtual
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1gm_1_1arg__refresh.html b/doc/api/html/classstan_1_1gm_1_1arg__refresh.html new file mode 100644 index 00000000000..dd2fc14a821 --- /dev/null +++ b/doc/api/html/classstan_1_1gm_1_1arg__refresh.html @@ -0,0 +1,255 @@ + + + + + +Stan: stan::gm::arg_refresh Class Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::gm::arg_refresh Class Reference
+
+
+ +

#include <arg_refresh.hpp>

+
+Inheritance diagram for stan::gm::arg_refresh:
+
+
+ + +stan::gm::singleton_argument< T > +stan::gm::valued_argument +stan::gm::argument + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 arg_refresh ()
 
bool is_valid (int value)
 
- Public Member Functions inherited from stan::gm::singleton_argument< T >
 singleton_argument ()
 
 singleton_argument (const std::string name)
 
bool parse_args (std::vector< std::string > &args, std::ostream *out, std::ostream *err, bool &help_flag)
 
virtual void probe_args (argument *base_arg, std::stringstream &s)
 
void find_arg (std::string name, std::string prefix, std::vector< std::string > &valid_paths)
 
value ()
 
bool set_value (const T &value)
 
std::string print_value ()
 
std::string print_valid ()
 
bool is_default ()
 
- Public Member Functions inherited from stan::gm::valued_argument
virtual void print (std::ostream *s, const int depth, const std::string prefix)
 
virtual void print_help (std::ostream *s, const int depth, const bool recurse=false)
 
- Public Member Functions inherited from stan::gm::argument
 argument ()
 
 argument (const std::string name)
 
virtual ~argument ()
 
std::string name () const
 
std::string description () const
 
virtual argumentarg (const std::string name)
 
int compute_indent (const int depth)
 
+ + + + + + + + + + + + + + + + + + + + +

+Additional Inherited Members

- Static Public Member Functions inherited from stan::gm::argument
static void split_arg (const std::string &arg, std::string &name, std::string &value)
 
- Protected Member Functions inherited from stan::gm::singleton_argument< T >
virtual bool is_valid (T value)
 
- Protected Attributes inherited from stan::gm::singleton_argument< T >
std::string _validity
 
_value
 
_default_value
 
bool _constrained
 
_good_value
 
_bad_value
 
+

Detailed Description

+
+

Definition at line 10 of file arg_refresh.hpp.

+

Constructor & Destructor Documentation

+ +
+
+ + + + + +
+ + + + + + + +
stan::gm::arg_refresh::arg_refresh ()
+
+inline
+
+ +

Definition at line 14 of file arg_refresh.hpp.

+ +
+
+

Member Function Documentation

+ +
+
+ + + + + +
+ + + + + + + + +
bool stan::gm::arg_refresh::is_valid (int value)
+
+inline
+
+ +

Definition at line 26 of file arg_refresh.hpp.

+ +
+
+
The documentation for this class was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1gm_1_1arg__refresh.png b/doc/api/html/classstan_1_1gm_1_1arg__refresh.png new file mode 100644 index 0000000000000000000000000000000000000000..c85a695a150abf58425bd9abd3cd44a85850775a GIT binary patch literal 1448 zcma)+X;4#F6vv;mSc+oNqLKtkg;-gFC?tRsP>@8PLAC^t%1!|zB#0r15fG{3C`o`< z*;2)^i7XL9QG|pw!T=Qn3I?8Rih~49*bx*grqQV%I{o6AIro3=-1F&o{`XwAH7rBbOXr>2(~nax?M>SIbI67{Pi2CAz@ zytg|EP&Ivs{tmJw0I1u5E>7gc4Kp_t(0x;F{LbG5^-3dyZ@u=0VP%%VS zlFVX%o2`xuh}5uw(8Ho^^q|av_dOUq{!_e7N6WGC%gZ?S`?rsB-f&lat~0%bd(8Si|c5u4*7j#1#if}Gi=Sg6OS+?MW)9`5$2DDfl z5E6+&Wh*3}c!I<;ecEGnIM)9bLLJmBoKv3yP>w=EcCnCy1oFb>?c z+f{Za!drn0ppTlGffWnSlF{IgdOb2?-k={#U~UYeI44~Db~i4uITr01a4}kc{z2d# z@Io32gs3B~P>dC#Rd?JK`1=w{;<-60zK&glz0r%t=JzEM3Kc-vI02}RGXjQ1TT`hc z8WL;Tmmw${wLjRX4Nu$HK+J!i$B_SH#rMkMN5|Kt*gaE@7`yFiUgN4crkt5*h)l@| zcXZX~rb$h%Ymsdty8rgwj*!gyXwX%u17V#EeVfpwWnv!Wn zSS9UL1iBX^1Sju>OWmR$$T9euI`m8&4K_b7yU|-8d~J)uFxCiDUWoKrcg#jG%^1xk zbqcwMu}RFUWL~W=w34{~k))vdltX0;oqT1J_i9oodn)d=<47j z#(~o1-(~#4vUD`n_M8FOww{Q1;;`6O7@mW+qK^GBN`?sij zK^vRd=ttHxG+0exrK!wRMBFRVJ_c1|FBWp<8?(_qNzbP!cxz1(^>{F8xZOio4?nKB z_j*Cumq78^D8~~on*`00Ii4%TE@Ea1J_38hH0-NVX5Uz6zEg+CWCg7%EFx-7a1U|& zYTl011=0RqeIVRo-$_226U5o z;o^1eR~HrPXv#X#2^tPByn{tu-Me^La^W@-k{BX|B7i{HTq=Fk8wrlCCqwLcd;dCYo}Ep4WNDY%2WC zz&RdO0P%BMd^5)z1LvCd$%7&wGF_O%UldD0D8aT#fqoS%`Gl*06~>A~11Zf~A;#%e zwW9*ed2w_%Zr6vhdD-rL@Lhw@l4AvdZ zTP%D%2{&BW8q&DA?{59Vz-_t0aC=VgnI&ps>fs<9caj@v-;;G{f$wkOE1npt3c85< zYelK|-56#kYcbNesBVX!p-&A&jay?aE2-yGjrPveR=sS!=7{5-m_<$;nozbL0w%>- z2zlVy7@gGIqEoA-cZcVJ_WEQFk|z&fum$wj@$h<^F*W@U2hfzFV(O(e(~b)-0^SbLml6-ImN5E?711c)Pt@6esg~kMPnE1;RPB! VX}H_boTgf<0El;Y5juyY{R1#%x}N|5 literal 0 HcmV?d00001 diff --git a/doc/api/html/classstan_1_1gm_1_1arg__rwm-members.html b/doc/api/html/classstan_1_1gm_1_1arg__rwm-members.html new file mode 100644 index 00000000000..6c71f1cbbfe --- /dev/null +++ b/doc/api/html/classstan_1_1gm_1_1arg__rwm-members.html @@ -0,0 +1,133 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::gm::arg_rwm Member List
+
+
+ +

This is the complete list of members for stan::gm::arg_rwm, including all inherited members.

+ + + + + + + + + + + + + + + + + + + + + + +
_descriptionstan::gm::argumentprotected
_namestan::gm::argumentprotected
_subargumentsstan::gm::categorical_argumentprotected
arg(const std::string name)stan::gm::categorical_argumentinlinevirtual
arg_rwm()stan::gm::arg_rwminline
argument()stan::gm::argumentinline
argument(const std::string name)stan::gm::argumentinline
compute_indent(const int depth)stan::gm::argumentinline
description() const stan::gm::argumentinline
find_arg(std::string name, std::string prefix, std::vector< std::string > &valid_paths)stan::gm::categorical_argumentinlinevirtual
help_widthstan::gm::argumentprotected
indent_widthstan::gm::argumentprotected
name() const stan::gm::argumentinline
parse_args(std::vector< std::string > &args, std::ostream *out, std::ostream *err, bool &help_flag)stan::gm::categorical_argumentinlinevirtual
print(std::ostream *s, const int depth, const std::string prefix)stan::gm::categorical_argumentinlinevirtual
print_help(std::ostream *s, const int depth, const bool recurse)stan::gm::categorical_argumentinlinevirtual
probe_args(argument *base_arg, std::stringstream &s)stan::gm::categorical_argumentinlinevirtual
split_arg(const std::string &arg, std::string &name, std::string &value)stan::gm::argumentinlinestatic
subarguments()stan::gm::categorical_argumentinline
~argument()stan::gm::argumentinlinevirtual
~categorical_argument()stan::gm::categorical_argumentinlinevirtual
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1gm_1_1arg__rwm.html b/doc/api/html/classstan_1_1gm_1_1arg__rwm.html new file mode 100644 index 00000000000..328b63b7b50 --- /dev/null +++ b/doc/api/html/classstan_1_1gm_1_1arg__rwm.html @@ -0,0 +1,201 @@ + + + + + +Stan: stan::gm::arg_rwm Class Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::gm::arg_rwm Class Reference
+
+
+ +

#include <arg_rwm.hpp>

+
+Inheritance diagram for stan::gm::arg_rwm:
+
+
+ + +stan::gm::categorical_argument +stan::gm::argument + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 arg_rwm ()
 
- Public Member Functions inherited from stan::gm::categorical_argument
virtual ~categorical_argument ()
 
void print (std::ostream *s, const int depth, const std::string prefix)
 
void print_help (std::ostream *s, const int depth, const bool recurse)
 
bool parse_args (std::vector< std::string > &args, std::ostream *out, std::ostream *err, bool &help_flag)
 
virtual void probe_args (argument *base_arg, std::stringstream &s)
 
void find_arg (std::string name, std::string prefix, std::vector< std::string > &valid_paths)
 
std::vector< argument * > & subarguments ()
 
argumentarg (const std::string name)
 
- Public Member Functions inherited from stan::gm::argument
 argument ()
 
 argument (const std::string name)
 
virtual ~argument ()
 
std::string name () const
 
std::string description () const
 
int compute_indent (const int depth)
 
+ + + + + + + +

+Additional Inherited Members

- Static Public Member Functions inherited from stan::gm::argument
static void split_arg (const std::string &arg, std::string &name, std::string &value)
 
- Protected Attributes inherited from stan::gm::categorical_argument
std::vector< argument * > _subarguments
 
+

Detailed Description

+
+

Definition at line 10 of file arg_rwm.hpp.

+

Constructor & Destructor Documentation

+ +
+
+ + + + + +
+ + + + + + + +
stan::gm::arg_rwm::arg_rwm ()
+
+inline
+
+ +

Definition at line 14 of file arg_rwm.hpp.

+ +
+
+
The documentation for this class was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1gm_1_1arg__rwm.png b/doc/api/html/classstan_1_1gm_1_1arg__rwm.png new file mode 100644 index 0000000000000000000000000000000000000000..9f7f4e90cba69cb3878a9ff75d3339343fa55023 GIT binary patch literal 994 zcmeAS@N?(olHy`uVBq!ia0vp^JAt@^gBeKngzicMQW60^A+G=b{|7Q(y!l$%e`o@b z1;z&s9ANFdBM;mP1qa3H+_lmyBX)BLuad>tl4x|X{+0`fXO-UQ+y{Z zDbAa|7XC^Oc+iSdi z^Q4k<>tF3LG%wvBuet2b-PNkw8(w}~Rlc1+O>*t*6LASIb)PO%c{#`Z{=(ra$kFX?IZ@M6|P74t(elWI7NJwK(I$hRfF5Nufgk?F;x zytDD^cyT$HktE|O#}wipD*ciYtEmUo>lT|Q`*!<&8(kh&u6~a z8@lZ1X|c53QJU@RpA`p8ou=~n0g z^<8GWoxezQ_KRf_rWX^S3V$~Kl;3%^{%B3kqWAyi>%V`ZRsC+m&!GK!r|h<| zKYz0)U@}|58Qss7ANL&1aa!~%Ww&c`ug=2R*0E=%n>2XeF^yln^pe(Lw;M~Y)_Clw zeDQs?s(hl|kzioTt2fVI{q&9vqi$N3?#KLD`H(c1o%d?b%<>h}?nIwr-gc+ic8}4n zZN1yJTg+mXDcpChc(-l(y%0l(! + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::gm::arg_sample Member List
+
+
+ +

This is the complete list of members for stan::gm::arg_sample, including all inherited members.

+ + + + + + + + + + + + + + + + + + + + + + +
_descriptionstan::gm::argumentprotected
_namestan::gm::argumentprotected
_subargumentsstan::gm::categorical_argumentprotected
arg(const std::string name)stan::gm::categorical_argumentinlinevirtual
arg_sample()stan::gm::arg_sampleinline
argument()stan::gm::argumentinline
argument(const std::string name)stan::gm::argumentinline
compute_indent(const int depth)stan::gm::argumentinline
description() const stan::gm::argumentinline
find_arg(std::string name, std::string prefix, std::vector< std::string > &valid_paths)stan::gm::categorical_argumentinlinevirtual
help_widthstan::gm::argumentprotected
indent_widthstan::gm::argumentprotected
name() const stan::gm::argumentinline
parse_args(std::vector< std::string > &args, std::ostream *out, std::ostream *err, bool &help_flag)stan::gm::categorical_argumentinlinevirtual
print(std::ostream *s, const int depth, const std::string prefix)stan::gm::categorical_argumentinlinevirtual
print_help(std::ostream *s, const int depth, const bool recurse)stan::gm::categorical_argumentinlinevirtual
probe_args(argument *base_arg, std::stringstream &s)stan::gm::categorical_argumentinlinevirtual
split_arg(const std::string &arg, std::string &name, std::string &value)stan::gm::argumentinlinestatic
subarguments()stan::gm::categorical_argumentinline
~argument()stan::gm::argumentinlinevirtual
~categorical_argument()stan::gm::categorical_argumentinlinevirtual
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1gm_1_1arg__sample.html b/doc/api/html/classstan_1_1gm_1_1arg__sample.html new file mode 100644 index 00000000000..9389257363a --- /dev/null +++ b/doc/api/html/classstan_1_1gm_1_1arg__sample.html @@ -0,0 +1,201 @@ + + + + + +Stan: stan::gm::arg_sample Class Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::gm::arg_sample Class Reference
+
+
+ +

#include <arg_sample.hpp>

+
+Inheritance diagram for stan::gm::arg_sample:
+
+
+ + +stan::gm::categorical_argument +stan::gm::argument + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 arg_sample ()
 
- Public Member Functions inherited from stan::gm::categorical_argument
virtual ~categorical_argument ()
 
void print (std::ostream *s, const int depth, const std::string prefix)
 
void print_help (std::ostream *s, const int depth, const bool recurse)
 
bool parse_args (std::vector< std::string > &args, std::ostream *out, std::ostream *err, bool &help_flag)
 
virtual void probe_args (argument *base_arg, std::stringstream &s)
 
void find_arg (std::string name, std::string prefix, std::vector< std::string > &valid_paths)
 
std::vector< argument * > & subarguments ()
 
argumentarg (const std::string name)
 
- Public Member Functions inherited from stan::gm::argument
 argument ()
 
 argument (const std::string name)
 
virtual ~argument ()
 
std::string name () const
 
std::string description () const
 
int compute_indent (const int depth)
 
+ + + + + + + +

+Additional Inherited Members

- Static Public Member Functions inherited from stan::gm::argument
static void split_arg (const std::string &arg, std::string &name, std::string &value)
 
- Protected Attributes inherited from stan::gm::categorical_argument
std::vector< argument * > _subarguments
 
+

Detailed Description

+
+

Definition at line 17 of file arg_sample.hpp.

+

Constructor & Destructor Documentation

+ +
+
+ + + + + +
+ + + + + + + +
stan::gm::arg_sample::arg_sample ()
+
+inline
+
+ +

Definition at line 21 of file arg_sample.hpp.

+ +
+
+
The documentation for this class was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1gm_1_1arg__sample.png b/doc/api/html/classstan_1_1gm_1_1arg__sample.png new file mode 100644 index 0000000000000000000000000000000000000000..53203e1853a1f170d499cc251c5ba01f39fa82ce GIT binary patch literal 1018 zcmeAS@N?(olHy`uVBq!ia0vp^JAt@^gBeKngzicMQW60^A+G=b{|7Q(y!l$%e`o@b z1;z&s9ANFdBM;iT^QNEP=Pda-BPX$`oKZbF-C(*({JYuep1-87um10U=5mPn z)ypQQ|D^Bzv1ikqSr>mEH;U1pbzoZr=kz7U?`G%+n@(0gDRcCl>Q=XF0h4pyr}$1- zQk*wy{rk-qR~>e{vBdOC%A^n?tk_9+?_9f>z2ZhO2&UcsBXRf>)1c9lyu)z;_1o520ra`&uj;^b`3Wc;n-4P<=k9y+y~98Dy^a z4DU($b1Nq;nO`_#*UlfmJLdp{?StoMlinp&v(}xjzt(+T`}9i5x%F!zOB4F4{ziTB z`4TsEXT{t@KG(ITez;o0nRRJWN?*|T&~l-@XNiE>^4XVz`zg2en_1b&J>p9QY`<=ZmVO)^0Z{_W^7xqf;Nyyus zYFuyr@OPeN-Lu(OzSrKHIeXuIipgp z@@aAJ#XNtR3&KKRa^*S8evSjzD;RiAZg|#ze8sE7v-}@5uju1%X<27%mvAhk8f3US|=Psw;ztW#^zIfR+(ct*KZ03r?=YQ=n-tN0A{ol6p zXM=u5ZJ)9?)iZP1M()jh>vo^rz4xd}U1~m~#gje9B9GK|-=95y|K00#wOhXZJM`z! z?Y$rV{XZh}fS;q7A^woef$6)Vmrl79@rRkO(d&qaz%4moMrH7H^>bP0l+XkK7R?Kn literal 0 HcmV?d00001 diff --git a/doc/api/html/classstan_1_1gm_1_1arg__sample__algo-members.html b/doc/api/html/classstan_1_1gm_1_1arg__sample__algo-members.html new file mode 100644 index 00000000000..f518fa92df5 --- /dev/null +++ b/doc/api/html/classstan_1_1gm_1_1arg__sample__algo-members.html @@ -0,0 +1,143 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::gm::arg_sample_algo Member List
+
+
+ +

This is the complete list of members for stan::gm::arg_sample_algo, including all inherited members.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
_cursorstan::gm::list_argumentprotected
_defaultstan::gm::valued_argumentprotected
_default_cursorstan::gm::list_argumentprotected
_descriptionstan::gm::argumentprotected
_namestan::gm::argumentprotected
_value_typestan::gm::valued_argumentprotected
_valuesstan::gm::list_argumentprotected
arg(std::string name)stan::gm::list_argumentinlinevirtual
arg_sample_algo()stan::gm::arg_sample_algoinline
argument()stan::gm::argumentinline
argument(const std::string name)stan::gm::argumentinline
compute_indent(const int depth)stan::gm::argumentinline
description() const stan::gm::argumentinline
find_arg(std::string name, std::string prefix, std::vector< std::string > &valid_paths)stan::gm::list_argumentinlinevirtual
help_widthstan::gm::argumentprotected
indent_widthstan::gm::argumentprotected
is_default()stan::gm::list_argumentinlinevirtual
list_argument()stan::gm::list_argumentinline
name() const stan::gm::argumentinline
parse_args(std::vector< std::string > &args, std::ostream *out, std::ostream *err, bool &help_flag)stan::gm::list_argumentinlinevirtual
print(std::ostream *s, int depth, const std::string prefix)stan::gm::list_argumentinlinevirtual
print_help(std::ostream *s, int depth, bool recurse)stan::gm::list_argumentinlinevirtual
print_valid()stan::gm::list_argumentinlinevirtual
print_value()stan::gm::list_argumentinlinevirtual
probe_args(argument *base_arg, std::stringstream &s)stan::gm::list_argumentinlinevirtual
split_arg(const std::string &arg, std::string &name, std::string &value)stan::gm::argumentinlinestatic
valid_value(std::string name)stan::gm::list_argumentinline
value()stan::gm::list_argumentinline
values()stan::gm::list_argumentinline
~argument()stan::gm::argumentinlinevirtual
~list_argument()stan::gm::list_argumentinline
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1gm_1_1arg__sample__algo.html b/doc/api/html/classstan_1_1gm_1_1arg__sample__algo.html new file mode 100644 index 00000000000..53a93dbdc22 --- /dev/null +++ b/doc/api/html/classstan_1_1gm_1_1arg__sample__algo.html @@ -0,0 +1,205 @@ + + + + + +Stan: stan::gm::arg_sample_algo Class Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::gm::arg_sample_algo Class Reference
+
+
+ +

#include <arg_sample_algo.hpp>

+
+Inheritance diagram for stan::gm::arg_sample_algo:
+
+
+ + +stan::gm::list_argument +stan::gm::valued_argument +stan::gm::argument + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 arg_sample_algo ()
 
- Public Member Functions inherited from stan::gm::list_argument
 list_argument ()
 
 ~list_argument ()
 
void print (std::ostream *s, int depth, const std::string prefix)
 
void print_help (std::ostream *s, int depth, bool recurse)
 
bool parse_args (std::vector< std::string > &args, std::ostream *out, std::ostream *err, bool &help_flag)
 
virtual void probe_args (argument *base_arg, std::stringstream &s)
 
void find_arg (std::string name, std::string prefix, std::vector< std::string > &valid_paths)
 
bool valid_value (std::string name)
 
argumentarg (std::string name)
 
std::vector< argument * > & values ()
 
std::string value ()
 
std::string print_value ()
 
std::string print_valid ()
 
bool is_default ()
 
+ + + + + + + + + + + +

+Additional Inherited Members

- Static Public Member Functions inherited from stan::gm::argument
static void split_arg (const std::string &arg, std::string &name, std::string &value)
 
- Protected Attributes inherited from stan::gm::list_argument
int _cursor
 
int _default_cursor
 
std::vector< argument * > _values
 
+

Detailed Description

+
+

Definition at line 13 of file arg_sample_algo.hpp.

+

Constructor & Destructor Documentation

+ +
+
+ + + + + +
+ + + + + + + +
stan::gm::arg_sample_algo::arg_sample_algo ()
+
+inline
+
+ +

Definition at line 17 of file arg_sample_algo.hpp.

+ +
+
+
The documentation for this class was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1gm_1_1arg__sample__algo.png b/doc/api/html/classstan_1_1gm_1_1arg__sample__algo.png new file mode 100644 index 0000000000000000000000000000000000000000..a69ab0fe87380d5191c6637e0a2b1268f1ccf22e GIT binary patch literal 1323 zcmeAS@N?(olHy`uVBq!ia0vp^3xN0l2Q!e|@^pqPkdg@S332`Z|38rV;?396{zDUh zEHFNB-~emq9eE&^qa?^Lm;tB=1g@S6F=Aj~+2!ft7*fIbcJAxEFIqgV;?kM-{!jFu z#l3w(i{$qE3s;C_1Lt-KS z%Z)72@s%I5Q>#TbzqY?!619fsbi(ePDqp`a>~Pij#t~#%){*=^XQq$#b14gJkD&PT z4LdoGzRTS8Xw@CAt!>LQJ$GI3==|OyvU3OP9i4o})d|ACi$iq0s8)m7e? zJkN_wD$x#RlYe(Zk=t|Eg}(+WnO zNnd8}TKBDDKZk*iv7+s?uV1H%?+@GNE}3-o-36aFewIhfc1kVt2)$DD{H_gio?C15 zgjE}l+a8)K9pnFH-!h*13t6>0{shWS>IHH|9$a0?d zp6~vr&OQwI?v}Ot%KY7jKkj<*=+3&mD}GvO*ya71exzWjXVB`41<4K1+omj0T&uo+ zPtbiH^BD)rxIK+t^cFl;ownq^BPixA7pO#TVK^r7_z2UFu)Pdv*WNU&zy73UGqYYz zv9KTii&&n7$;?az-+>lvv#GP+Rfk#vNaC_#o<1vra z4`g+J1SYt93=cv(-y27)_tH9kK{AJ7wQ*(HPL?(Oi}oI=j$WI-lc)T$^vR8&aI^h> z+kam{uN0qOih4q6&=H?H-G~7GNU`9B|paJ^jJA*SvVwxZW zFi%24+qB_-)3>bte}D9uV)Ev!w=S%&(G`)qUAo2ol(xyy75ZyxA9if1e5)8f_2A^# zt{|P|8=@zOWIfhB&R3W-U3YTkz0JK_s^{7izj{^M^;F2ff4ku;f!tWHtyj4M`t%{4`&JUSUJg5|dC + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::gm::arg_save_iterations Member List
+
+
+ +

This is the complete list of members for stan::gm::arg_save_iterations, including all inherited members.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
_bad_valuestan::gm::singleton_argument< T >protected
_constrainedstan::gm::singleton_argument< T >protected
_defaultstan::gm::valued_argumentprotected
_default_valuestan::gm::singleton_argument< T >protected
_descriptionstan::gm::argumentprotected
_good_valuestan::gm::singleton_argument< T >protected
_namestan::gm::argumentprotected
_validitystan::gm::singleton_argument< T >protected
_valuestan::gm::singleton_argument< T >protected
_value_typestan::gm::valued_argumentprotected
arg(const std::string name)stan::gm::argumentinlinevirtual
arg_save_iterations()stan::gm::arg_save_iterationsinline
argument()stan::gm::argumentinline
argument(const std::string name)stan::gm::argumentinline
compute_indent(const int depth)stan::gm::argumentinline
description() const stan::gm::argumentinline
find_arg(std::string name, std::string prefix, std::vector< std::string > &valid_paths)stan::gm::singleton_argument< T >inlinevirtual
help_widthstan::gm::argumentprotected
indent_widthstan::gm::argumentprotected
is_default()stan::gm::singleton_argument< T >inlinevirtual
is_valid(T value)stan::gm::singleton_argument< T >inlineprotectedvirtual
name() const stan::gm::argumentinline
parse_args(std::vector< std::string > &args, std::ostream *out, std::ostream *err, bool &help_flag)stan::gm::singleton_argument< T >inlinevirtual
print(std::ostream *s, const int depth, const std::string prefix)stan::gm::valued_argumentinlinevirtual
print_help(std::ostream *s, const int depth, const bool recurse=false)stan::gm::valued_argumentinlinevirtual
print_valid()stan::gm::singleton_argument< T >inlinevirtual
print_value()stan::gm::singleton_argument< T >inlinevirtual
probe_args(argument *base_arg, std::stringstream &s)stan::gm::singleton_argument< T >inlinevirtual
set_value(const T &value)stan::gm::singleton_argument< T >inline
singleton_argument()stan::gm::singleton_argument< T >inline
singleton_argument(const std::string name)stan::gm::singleton_argument< T >inline
split_arg(const std::string &arg, std::string &name, std::string &value)stan::gm::argumentinlinestatic
value()stan::gm::singleton_argument< T >inline
~argument()stan::gm::argumentinlinevirtual
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1gm_1_1arg__save__iterations.html b/doc/api/html/classstan_1_1gm_1_1arg__save__iterations.html new file mode 100644 index 00000000000..024837103c4 --- /dev/null +++ b/doc/api/html/classstan_1_1gm_1_1arg__save__iterations.html @@ -0,0 +1,226 @@ + + + + + +Stan: stan::gm::arg_save_iterations Class Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::gm::arg_save_iterations Class Reference
+
+
+ +

#include <arg_save_iterations.hpp>

+
+Inheritance diagram for stan::gm::arg_save_iterations:
+
+
+ + +stan::gm::singleton_argument< T > +stan::gm::valued_argument +stan::gm::argument + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 arg_save_iterations ()
 
- Public Member Functions inherited from stan::gm::singleton_argument< T >
 singleton_argument ()
 
 singleton_argument (const std::string name)
 
bool parse_args (std::vector< std::string > &args, std::ostream *out, std::ostream *err, bool &help_flag)
 
virtual void probe_args (argument *base_arg, std::stringstream &s)
 
void find_arg (std::string name, std::string prefix, std::vector< std::string > &valid_paths)
 
value ()
 
bool set_value (const T &value)
 
std::string print_value ()
 
std::string print_valid ()
 
bool is_default ()
 
- Public Member Functions inherited from stan::gm::valued_argument
virtual void print (std::ostream *s, const int depth, const std::string prefix)
 
virtual void print_help (std::ostream *s, const int depth, const bool recurse=false)
 
- Public Member Functions inherited from stan::gm::argument
 argument ()
 
 argument (const std::string name)
 
virtual ~argument ()
 
std::string name () const
 
std::string description () const
 
virtual argumentarg (const std::string name)
 
int compute_indent (const int depth)
 
+ + + + + + + + + + + + + + + + + + + + +

+Additional Inherited Members

- Static Public Member Functions inherited from stan::gm::argument
static void split_arg (const std::string &arg, std::string &name, std::string &value)
 
- Protected Member Functions inherited from stan::gm::singleton_argument< T >
virtual bool is_valid (T value)
 
- Protected Attributes inherited from stan::gm::singleton_argument< T >
std::string _validity
 
_value
 
_default_value
 
bool _constrained
 
_good_value
 
_bad_value
 
+

Detailed Description

+
+

Definition at line 10 of file arg_save_iterations.hpp.

+

Constructor & Destructor Documentation

+ +
+
+ + + + + +
+ + + + + + + +
stan::gm::arg_save_iterations::arg_save_iterations ()
+
+inline
+
+ +

Definition at line 14 of file arg_save_iterations.hpp.

+ +
+
+
The documentation for this class was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1gm_1_1arg__save__iterations.png b/doc/api/html/classstan_1_1gm_1_1arg__save__iterations.png new file mode 100644 index 0000000000000000000000000000000000000000..91ecc045a7f25ebe6e6302f2f0bc182ae90ce17b GIT binary patch literal 1507 zcmaJ>do+}382_vY9ZD`)mr6z>YX-H;4yvtad@hq_FiaCtw#H@DjKNflQX#i78mduL zGvr!f;uCh3T)&iqacL&yGUQS!+BT)x(b@fD&tBehp7(j4_kEw=InVEX&M(CahtMx@r}A^gWxp^aeRm|IkCHXnWHszX@~#q>_T^!M;9kuALgJLkuQ z_on?+-Jh9HO_Di0BB9LMRm@$H!tI2uZ^>y zJ5Dh$So;$FUlvagJnx=vIT3DlgVCfwazcT4tLl+6?xjjy=^xO^VlwHltStY3C~6 zO@@{H9?Aek37~%h1Ekg(C%BNcM4SG8{o1tE0DIm7JiLsoy-e9>MGHMgqmqVA_Td?j zbladVs;p+qZ!<{y9S0^3V3tz9FJQ7&Wozb}iETgN^@MpCMlN3&*V(0`OHeJY>$#dE zxRfekbxTsVehwyeOayVF+L=(^s+I#5#QsO5sG+Pd-&&36Xn`Y{qxBIap+N?Yin|>w zs(UX{bHB3(3YB)L2x?f!@j8nCFMi-5_qi@{xdNo|N9!Q|aM5kR_}yXV_@^#YdNfpi>)eL$h{9W?)==)MKzmYh8vF7z!b!CNxPC5-f`K zNtr;A)sV&YR3?2g!y9yHi5Pk9<_<2>mj~vd4AHSEo1A8=r6IC@2N-a(Wa~4}yxN<5|44J1?qk25@zf{ z9LMs@P4Z<@^GV)fV?1rFDx{ISFHmkBmm3gL5Kz5f(*h@Ue%pDX_|(X~M??mff6<4k zMe@+$PrJ?d6|TlNIyGWzY-yjPw+LdO?d>bkYX04B6sWCiz zbuU;2)NHUHs1AswJE~_HJ)l4xO$5r&#fV1fm!_Ta34Dg&>B8b|n0b=H_k{10^tn`C zj*I_nmsjQk63TpvO;75_VkHriH~8-ykTq4?IGr;QcZl4<`tx#B4Q8)71%?6?XSa57 z7Ou}zwt%h2F<@mf402pHLk5S9brS-|m251{;O*;`CFxf7P5!5v;*uZcft&G zzxU5J#Pgl??&gK1u&K~|Wik!%6YK~vhbV97gVlA3YyDQxp9sUQ7i4%ZEu6H{RvQni zQcEzwwabPi!tl)%7r50B15b@i+82MWsE5{(oK2%Y$spt4OXR8ibh5VTlLyb(r4%UJ z14~mnHdSBgqSa0`DM`Ltl?+pu76YJsZ}=SVJ1UmK+!*tb=T3q2%N(c#g{VOBuYKU) z`I*owFdYX&PC4Rt_p4V7PA + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::gm::arg_save_warmup Member List
+
+
+ +

This is the complete list of members for stan::gm::arg_save_warmup, including all inherited members.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
_bad_valuestan::gm::singleton_argument< T >protected
_constrainedstan::gm::singleton_argument< T >protected
_defaultstan::gm::valued_argumentprotected
_default_valuestan::gm::singleton_argument< T >protected
_descriptionstan::gm::argumentprotected
_good_valuestan::gm::singleton_argument< T >protected
_namestan::gm::argumentprotected
_validitystan::gm::singleton_argument< T >protected
_valuestan::gm::singleton_argument< T >protected
_value_typestan::gm::valued_argumentprotected
arg(const std::string name)stan::gm::argumentinlinevirtual
arg_save_warmup()stan::gm::arg_save_warmupinline
argument()stan::gm::argumentinline
argument(const std::string name)stan::gm::argumentinline
compute_indent(const int depth)stan::gm::argumentinline
description() const stan::gm::argumentinline
find_arg(std::string name, std::string prefix, std::vector< std::string > &valid_paths)stan::gm::singleton_argument< T >inlinevirtual
help_widthstan::gm::argumentprotected
indent_widthstan::gm::argumentprotected
is_default()stan::gm::singleton_argument< T >inlinevirtual
is_valid(T value)stan::gm::singleton_argument< T >inlineprotectedvirtual
name() const stan::gm::argumentinline
parse_args(std::vector< std::string > &args, std::ostream *out, std::ostream *err, bool &help_flag)stan::gm::singleton_argument< T >inlinevirtual
print(std::ostream *s, const int depth, const std::string prefix)stan::gm::valued_argumentinlinevirtual
print_help(std::ostream *s, const int depth, const bool recurse=false)stan::gm::valued_argumentinlinevirtual
print_valid()stan::gm::singleton_argument< T >inlinevirtual
print_value()stan::gm::singleton_argument< T >inlinevirtual
probe_args(argument *base_arg, std::stringstream &s)stan::gm::singleton_argument< T >inlinevirtual
set_value(const T &value)stan::gm::singleton_argument< T >inline
singleton_argument()stan::gm::singleton_argument< T >inline
singleton_argument(const std::string name)stan::gm::singleton_argument< T >inline
split_arg(const std::string &arg, std::string &name, std::string &value)stan::gm::argumentinlinestatic
value()stan::gm::singleton_argument< T >inline
~argument()stan::gm::argumentinlinevirtual
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1gm_1_1arg__save__warmup.html b/doc/api/html/classstan_1_1gm_1_1arg__save__warmup.html new file mode 100644 index 00000000000..2aa3e5f57a0 --- /dev/null +++ b/doc/api/html/classstan_1_1gm_1_1arg__save__warmup.html @@ -0,0 +1,226 @@ + + + + + +Stan: stan::gm::arg_save_warmup Class Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::gm::arg_save_warmup Class Reference
+
+
+ +

#include <arg_save_warmup.hpp>

+
+Inheritance diagram for stan::gm::arg_save_warmup:
+
+
+ + +stan::gm::singleton_argument< T > +stan::gm::valued_argument +stan::gm::argument + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 arg_save_warmup ()
 
- Public Member Functions inherited from stan::gm::singleton_argument< T >
 singleton_argument ()
 
 singleton_argument (const std::string name)
 
bool parse_args (std::vector< std::string > &args, std::ostream *out, std::ostream *err, bool &help_flag)
 
virtual void probe_args (argument *base_arg, std::stringstream &s)
 
void find_arg (std::string name, std::string prefix, std::vector< std::string > &valid_paths)
 
value ()
 
bool set_value (const T &value)
 
std::string print_value ()
 
std::string print_valid ()
 
bool is_default ()
 
- Public Member Functions inherited from stan::gm::valued_argument
virtual void print (std::ostream *s, const int depth, const std::string prefix)
 
virtual void print_help (std::ostream *s, const int depth, const bool recurse=false)
 
- Public Member Functions inherited from stan::gm::argument
 argument ()
 
 argument (const std::string name)
 
virtual ~argument ()
 
std::string name () const
 
std::string description () const
 
virtual argumentarg (const std::string name)
 
int compute_indent (const int depth)
 
+ + + + + + + + + + + + + + + + + + + + +

+Additional Inherited Members

- Static Public Member Functions inherited from stan::gm::argument
static void split_arg (const std::string &arg, std::string &name, std::string &value)
 
- Protected Member Functions inherited from stan::gm::singleton_argument< T >
virtual bool is_valid (T value)
 
- Protected Attributes inherited from stan::gm::singleton_argument< T >
std::string _validity
 
_value
 
_default_value
 
bool _constrained
 
_good_value
 
_bad_value
 
+

Detailed Description

+
+

Definition at line 10 of file arg_save_warmup.hpp.

+

Constructor & Destructor Documentation

+ +
+
+ + + + + +
+ + + + + + + +
stan::gm::arg_save_warmup::arg_save_warmup ()
+
+inline
+
+ +

Definition at line 14 of file arg_save_warmup.hpp.

+ +
+
+
The documentation for this class was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1gm_1_1arg__save__warmup.png b/doc/api/html/classstan_1_1gm_1_1arg__save__warmup.png new file mode 100644 index 0000000000000000000000000000000000000000..3da22b68884787e262216f30111f6b62e043578a GIT binary patch literal 1479 zcma)6X;71A5KhDhil{?HDn*czKsnVSrW~Rm3SYt{r-?9Opr{Z8`h^e#L@HRT7zrPO zV0+A%7Dntb$Y3Rt0{^|6c*>`v6-F<#M`@DO_&&NY& zlffn!45kBky8ElWKy7R-4fTD3_BlZ9zV`D9JgQQu)ZrVMf}GP%Q%C<8o6SaC5g4me ztwevH0GPUH^$d0eeh-5of&q8ez-0Jb=_J@_z3tf6t#(Wmb|uz5Y#Y@(cHDNnC)vxY zJ|R3z1(AC0x)qe~+voti_v8SOM;r|cEkvg29uy(z*rIzr(zAHZ{Ar>xrZ9eHcD`)! z-Pj2-<0*y$EV&qWc31C{V*SZ_KSv2q_BIjiTMC35Jb6xOmd&W^xW%Owu!73^$@~3U3n<52RfF<}nFMWJ@o7e&g|8EUGfhFW*&{>dDhoPIR(XR?-(P z6_o2MWAPZ?A*2Y|X=-8)7!``Zo^yV%^juB${cF}AlQ+kr8w8>QwZcB|xD7l_7lavY zbb#e#8D@C6ZDE_5XintPG~Rl0;K@i4%=zEX6Gm#RKn}FuY!!KxGfuMzLb5z4Z-noV zK_Q&;h~hgHiUZHnS7NCIoB3`ZRr%&KMmJnf{<=8XIAuV;8gtrKh?>pH2ItqG>QZ;$ z`Wv>lwM=QUO6w=}`!Pw{WSJ^Ua+PbR}qT9BphOBtb%q)1TW zcZ%JrSk}VU1u$a--H3|j3;LqgXq@qbaz-TuBv-3T_g5{DF^)jrQqHFVV{jiz*&vHcCTrC;u|)^#M*#ct^hcMPy-}#1hb}78nkA<&{e; zr6=zB@{-6al4Ewo&hf5;BQN{@uu5g#$}D{z*E*_Y)jS)2q-t=aP(~A4vz`>ygdv-l2~Y4kZ~mLu<8)JYrf3VvmUMK)`v zH7V>-Zc9aUSJLU zb_as#Alsp&N7sE@Z_T!il)l=)S24h#ZC{N)fKOx*LB33rI65S7TG!tfBVRZ4d(|^X z!*zXAF?icq((yR?XfB_}GxS}Ir#uXz8ADFmf}7aGSTV;-K4=v~*r&@UR|}#iKJ1cp z?P8H;PWA5aOdX>rhZxq=M4`-{;>ie^#SNwV*`Upf^M@YQnkdrHLD-Cd+E^1dHB|c( zT_6<^T&Uzx*!^?Dsp09O8|%(6A4OzjD + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::gm::arg_seed Member List
+
+
+ +

This is the complete list of members for stan::gm::arg_seed, including all inherited members.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
_bad_valuestan::gm::singleton_argument< T >protected
_constrainedstan::gm::singleton_argument< T >protected
_defaultstan::gm::valued_argumentprotected
_default_valuestan::gm::singleton_argument< T >protected
_descriptionstan::gm::argumentprotected
_good_valuestan::gm::singleton_argument< T >protected
_namestan::gm::argumentprotected
_validitystan::gm::singleton_argument< T >protected
_valuestan::gm::singleton_argument< T >protected
_value_typestan::gm::valued_argumentprotected
arg(const std::string name)stan::gm::argumentinlinevirtual
arg_seed()stan::gm::arg_seedinline
argument()stan::gm::argumentinline
argument(const std::string name)stan::gm::argumentinline
compute_indent(const int depth)stan::gm::argumentinline
description() const stan::gm::argumentinline
find_arg(std::string name, std::string prefix, std::vector< std::string > &valid_paths)stan::gm::singleton_argument< T >inlinevirtual
help_widthstan::gm::argumentprotected
indent_widthstan::gm::argumentprotected
is_default()stan::gm::singleton_argument< T >inlinevirtual
is_valid(T value)stan::gm::singleton_argument< T >inlineprotectedvirtual
name() const stan::gm::argumentinline
parse_args(std::vector< std::string > &args, std::ostream *out, std::ostream *err, bool &help_flag)stan::gm::singleton_argument< T >inlinevirtual
print(std::ostream *s, const int depth, const std::string prefix)stan::gm::valued_argumentinlinevirtual
print_help(std::ostream *s, const int depth, const bool recurse=false)stan::gm::valued_argumentinlinevirtual
print_valid()stan::gm::singleton_argument< T >inlinevirtual
print_value()stan::gm::singleton_argument< T >inlinevirtual
probe_args(argument *base_arg, std::stringstream &s)stan::gm::singleton_argument< T >inlinevirtual
set_value(const T &value)stan::gm::singleton_argument< T >inline
singleton_argument()stan::gm::singleton_argument< T >inline
singleton_argument(const std::string name)stan::gm::singleton_argument< T >inline
split_arg(const std::string &arg, std::string &name, std::string &value)stan::gm::argumentinlinestatic
value()stan::gm::singleton_argument< T >inline
~argument()stan::gm::argumentinlinevirtual
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1gm_1_1arg__seed.html b/doc/api/html/classstan_1_1gm_1_1arg__seed.html new file mode 100644 index 00000000000..4f6abbf1598 --- /dev/null +++ b/doc/api/html/classstan_1_1gm_1_1arg__seed.html @@ -0,0 +1,226 @@ + + + + + +Stan: stan::gm::arg_seed Class Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::gm::arg_seed Class Reference
+
+
+ +

#include <arg_seed.hpp>

+
+Inheritance diagram for stan::gm::arg_seed:
+
+
+ + +stan::gm::singleton_argument< T > +stan::gm::valued_argument +stan::gm::argument + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 arg_seed ()
 
- Public Member Functions inherited from stan::gm::singleton_argument< T >
 singleton_argument ()
 
 singleton_argument (const std::string name)
 
bool parse_args (std::vector< std::string > &args, std::ostream *out, std::ostream *err, bool &help_flag)
 
virtual void probe_args (argument *base_arg, std::stringstream &s)
 
void find_arg (std::string name, std::string prefix, std::vector< std::string > &valid_paths)
 
value ()
 
bool set_value (const T &value)
 
std::string print_value ()
 
std::string print_valid ()
 
bool is_default ()
 
- Public Member Functions inherited from stan::gm::valued_argument
virtual void print (std::ostream *s, const int depth, const std::string prefix)
 
virtual void print_help (std::ostream *s, const int depth, const bool recurse=false)
 
- Public Member Functions inherited from stan::gm::argument
 argument ()
 
 argument (const std::string name)
 
virtual ~argument ()
 
std::string name () const
 
std::string description () const
 
virtual argumentarg (const std::string name)
 
int compute_indent (const int depth)
 
+ + + + + + + + + + + + + + + + + + + + +

+Additional Inherited Members

- Static Public Member Functions inherited from stan::gm::argument
static void split_arg (const std::string &arg, std::string &name, std::string &value)
 
- Protected Member Functions inherited from stan::gm::singleton_argument< T >
virtual bool is_valid (T value)
 
- Protected Attributes inherited from stan::gm::singleton_argument< T >
std::string _validity
 
_value
 
_default_value
 
bool _constrained
 
_good_value
 
_bad_value
 
+

Detailed Description

+
+

Definition at line 10 of file arg_seed.hpp.

+

Constructor & Destructor Documentation

+ +
+
+ + + + + +
+ + + + + + + +
stan::gm::arg_seed::arg_seed ()
+
+inline
+
+ +

Definition at line 14 of file arg_seed.hpp.

+ +
+
+
The documentation for this class was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1gm_1_1arg__seed.png b/doc/api/html/classstan_1_1gm_1_1arg__seed.png new file mode 100644 index 0000000000000000000000000000000000000000..96ed5af1eba4836d3a6df682f850fe5d1d3cf9de GIT binary patch literal 1562 zcmbW1c~Fx_7{n+qFb+cm08mb>>t!XytL{$!8{$pV)#>n|_4ReJoSa^ay4IK~R$pg*eZ4ewKu3I( zjU>9b0pg;K@w)Y}830HZ!I+;9p9A>}Uc~%vWvQfs-81Viun$6>$o5|`>Tii=@7;m& z^ysXg`=$I%;AXTtur=L8PPYYelE78dFyQ0139Kd65zg?w?iZtYtG4D%>rC$K7KhOF z-t;&hdTGs8TmT(Ul<_VV*;@-vI95h>j$g^;Zw zS3s8qzd~QqNNII6oNP2h$2F`uv8RnjZIIHZ1~@8J>cji%P@AH!5-upOCwVO7@ZIAG!nvj;4lX@0nm+yV-g`A|0je7h8`Kt z8)qtc{j-45TjHq`KCbbj zv9#D@I>Yyc*zwz}46jzFm{e9f>Me>+u%}sVAabxLty0moLcphbDtt=rXjef{Gc3E) zT2*4R^&=ij5b7o)osPyG<;R@(iD2B4P^DI&G#@k}II@TOTkj$=aF@i&i~Bc}DDib= z_CN|=Nk-~dtWO*Q(4I3w{Kym8?V~i;hT$Kb0nat)CrRRJg^|FDT3#XyY|ygpwq?E{ z@kuD|=o%g3KoXbtY!ENrq--xn$!u%*zs$dylb}H*1(he|@1~@{*;1)u%Rp!^Bwye0 zlv}30e+$BkCwW1zH-{&nO-CVtmi+Bt>BQ;JPoP%UW0}pJ!f##})~uo{8ONGzYfia+ zPz~j))+vje+k5uUot(J;am3_q)p4|!o+(W?xyZKLVlw8Qv`5t1l>JNdqol&KIc-{g zx#1AurhBwv8b(p`Pcv#%-@OaDhj4j5+%gZ#`OxAD-a9@=;X9cc)&MWPZa@ed&T+G& zg{H_4k-;9`v@U&9k0Df=eb@IT+L0$UIWY@3Lqi|-fR0FsIw(C5%yMD^DRFVkqCt*| z=-K5Vt6KfDLca;ho$gm@=g(V_FrvB=?{4+ z6vzg|##uF@xD}D9>|J~e z8I(DCg$1DCuj(`GLuS?wN2LyZIGG{%? zl9_yZ>Z3rwTUG2*tM-41(7$GFBsy)^9o4v{A{^Z&%tRba)vv+injtkL51^mIp0Lm3 zT$zq*Gx)^NmWQO z;>V55F1%M5zEyaTo{%qYO5Yj{Nl;95_(B$;`^k*>$0dEk@ A + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::gm::arg_static Member List
+
+
+ +

This is the complete list of members for stan::gm::arg_static, including all inherited members.

+ + + + + + + + + + + + + + + + + + + + + + +
_descriptionstan::gm::argumentprotected
_namestan::gm::argumentprotected
_subargumentsstan::gm::categorical_argumentprotected
arg(const std::string name)stan::gm::categorical_argumentinlinevirtual
arg_static()stan::gm::arg_staticinline
argument()stan::gm::argumentinline
argument(const std::string name)stan::gm::argumentinline
compute_indent(const int depth)stan::gm::argumentinline
description() const stan::gm::argumentinline
find_arg(std::string name, std::string prefix, std::vector< std::string > &valid_paths)stan::gm::categorical_argumentinlinevirtual
help_widthstan::gm::argumentprotected
indent_widthstan::gm::argumentprotected
name() const stan::gm::argumentinline
parse_args(std::vector< std::string > &args, std::ostream *out, std::ostream *err, bool &help_flag)stan::gm::categorical_argumentinlinevirtual
print(std::ostream *s, const int depth, const std::string prefix)stan::gm::categorical_argumentinlinevirtual
print_help(std::ostream *s, const int depth, const bool recurse)stan::gm::categorical_argumentinlinevirtual
probe_args(argument *base_arg, std::stringstream &s)stan::gm::categorical_argumentinlinevirtual
split_arg(const std::string &arg, std::string &name, std::string &value)stan::gm::argumentinlinestatic
subarguments()stan::gm::categorical_argumentinline
~argument()stan::gm::argumentinlinevirtual
~categorical_argument()stan::gm::categorical_argumentinlinevirtual
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1gm_1_1arg__static.html b/doc/api/html/classstan_1_1gm_1_1arg__static.html new file mode 100644 index 00000000000..c525f5dbd16 --- /dev/null +++ b/doc/api/html/classstan_1_1gm_1_1arg__static.html @@ -0,0 +1,201 @@ + + + + + +Stan: stan::gm::arg_static Class Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::gm::arg_static Class Reference
+
+
+ +

#include <arg_static.hpp>

+
+Inheritance diagram for stan::gm::arg_static:
+
+
+ + +stan::gm::categorical_argument +stan::gm::argument + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 arg_static ()
 
- Public Member Functions inherited from stan::gm::categorical_argument
virtual ~categorical_argument ()
 
void print (std::ostream *s, const int depth, const std::string prefix)
 
void print_help (std::ostream *s, const int depth, const bool recurse)
 
bool parse_args (std::vector< std::string > &args, std::ostream *out, std::ostream *err, bool &help_flag)
 
virtual void probe_args (argument *base_arg, std::stringstream &s)
 
void find_arg (std::string name, std::string prefix, std::vector< std::string > &valid_paths)
 
std::vector< argument * > & subarguments ()
 
argumentarg (const std::string name)
 
- Public Member Functions inherited from stan::gm::argument
 argument ()
 
 argument (const std::string name)
 
virtual ~argument ()
 
std::string name () const
 
std::string description () const
 
int compute_indent (const int depth)
 
+ + + + + + + +

+Additional Inherited Members

- Static Public Member Functions inherited from stan::gm::argument
static void split_arg (const std::string &arg, std::string &name, std::string &value)
 
- Protected Attributes inherited from stan::gm::categorical_argument
std::vector< argument * > _subarguments
 
+

Detailed Description

+
+

Definition at line 12 of file arg_static.hpp.

+

Constructor & Destructor Documentation

+ +
+
+ + + + + +
+ + + + + + + +
stan::gm::arg_static::arg_static ()
+
+inline
+
+ +

Definition at line 16 of file arg_static.hpp.

+ +
+
+
The documentation for this class was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1gm_1_1arg__static.png b/doc/api/html/classstan_1_1gm_1_1arg__static.png new file mode 100644 index 0000000000000000000000000000000000000000..5a9967c68df5a036cabb3bbf1228cac55247fd8b GIT binary patch literal 1002 zcmeAS@N?(olHy`uVBq!ia0vp^JAt@^gBeKngzicMQW60^A+G=b{|7Q(y!l$%e`o@b z1;z&s9ANFdBM;oWEp6ip{p@tm*+-s6^OL?$ic-#AF*9d<%3KA{ z<1r@j@6#8Dw)bwBdF=vwUYqJmmg%dP<|J;emOnfFME^6jo7d-E*qi$+Wu8juo3}e{ zwLOpjS#{33IQaYTsY$2q?v3)|o*}=!tn_!nwTs(2->_c07o_hssc+|3*{VISdi9%c zpYeU^ajESwho{xq+UmMLLOVaqnz)2HZ>^YTk@6YUlhX~RtHi5)o>MF**s%U1gT$o7 zv-16cSKCeJA7Kxbziv~--C&-`_rQAw^ADkC4EtIv8}#vU4@?7^B(zC|*8>zdiF%&< zN}hR6sylXkH7nZ#2*Yk8*1)x#xq|F+MonHR}-_Qjv%xuNXOR$O17IbUH!B)eErPpoago1pJn$*{>a#O^0w{5YVnFgcfwAm z{mnc0{pzR6^X9?#uUDq$y{bF^p?2>3s~4h+qu+_IT57Xrsq`A*H_egmuP5iv`@L`b z8`sl@?&!1a)ZqMrjlfE<-U;LbWeV?)3y5geqzg1OU+FoB& zZ}GWitH-5yC0YdUlprY~p#u%jcsL#UIeLAuuUYNxSwG*;V2*j%^z(}2{ImOI<{8gk z>0Pbc{w+38d?W7-wd&I6Li`0MDnB1xIYU=XWtRWO>YM8)nr>O&r#7>b-QvllpR;zv zrzs~a+q%cMZ0i;Mu+y*S%`=HtDnC;`srF(`b#wn2;R~P5Zhk*g?seJXT~2KJ-}8LSqst&~=~wdk^n+<7$G`vl$~EIZL*41v>bf<>lRucR sVm&a?fc=B&8OEBGy;@7B9D8JM$>+7IPI$#kV8&$dboFyt=akR{0N9cA)c^nh literal 0 HcmV?d00001 diff --git a/doc/api/html/classstan_1_1gm_1_1arg__stepsize-members.html b/doc/api/html/classstan_1_1gm_1_1arg__stepsize-members.html new file mode 100644 index 00000000000..c0a9a6f9e20 --- /dev/null +++ b/doc/api/html/classstan_1_1gm_1_1arg__stepsize-members.html @@ -0,0 +1,147 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::gm::arg_stepsize Member List
+
+
+ +

This is the complete list of members for stan::gm::arg_stepsize, including all inherited members.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
_bad_valuestan::gm::singleton_argument< T >protected
_constrainedstan::gm::singleton_argument< T >protected
_defaultstan::gm::valued_argumentprotected
_default_valuestan::gm::singleton_argument< T >protected
_descriptionstan::gm::argumentprotected
_good_valuestan::gm::singleton_argument< T >protected
_namestan::gm::argumentprotected
_validitystan::gm::singleton_argument< T >protected
_valuestan::gm::singleton_argument< T >protected
_value_typestan::gm::valued_argumentprotected
arg(const std::string name)stan::gm::argumentinlinevirtual
arg_stepsize()stan::gm::arg_stepsizeinline
argument()stan::gm::argumentinline
argument(const std::string name)stan::gm::argumentinline
compute_indent(const int depth)stan::gm::argumentinline
description() const stan::gm::argumentinline
find_arg(std::string name, std::string prefix, std::vector< std::string > &valid_paths)stan::gm::singleton_argument< T >inlinevirtual
help_widthstan::gm::argumentprotected
indent_widthstan::gm::argumentprotected
is_default()stan::gm::singleton_argument< T >inlinevirtual
is_valid(double value)stan::gm::arg_stepsizeinline
stan::gm::singleton_argument::is_valid(T value)stan::gm::singleton_argument< T >inlineprotectedvirtual
name() const stan::gm::argumentinline
parse_args(std::vector< std::string > &args, std::ostream *out, std::ostream *err, bool &help_flag)stan::gm::singleton_argument< T >inlinevirtual
print(std::ostream *s, const int depth, const std::string prefix)stan::gm::valued_argumentinlinevirtual
print_help(std::ostream *s, const int depth, const bool recurse=false)stan::gm::valued_argumentinlinevirtual
print_valid()stan::gm::singleton_argument< T >inlinevirtual
print_value()stan::gm::singleton_argument< T >inlinevirtual
probe_args(argument *base_arg, std::stringstream &s)stan::gm::singleton_argument< T >inlinevirtual
set_value(const T &value)stan::gm::singleton_argument< T >inline
singleton_argument()stan::gm::singleton_argument< T >inline
singleton_argument(const std::string name)stan::gm::singleton_argument< T >inline
split_arg(const std::string &arg, std::string &name, std::string &value)stan::gm::argumentinlinestatic
value()stan::gm::singleton_argument< T >inline
~argument()stan::gm::argumentinlinevirtual
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1gm_1_1arg__stepsize.html b/doc/api/html/classstan_1_1gm_1_1arg__stepsize.html new file mode 100644 index 00000000000..51152b15378 --- /dev/null +++ b/doc/api/html/classstan_1_1gm_1_1arg__stepsize.html @@ -0,0 +1,255 @@ + + + + + +Stan: stan::gm::arg_stepsize Class Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::gm::arg_stepsize Class Reference
+
+
+ +

#include <arg_stepsize.hpp>

+
+Inheritance diagram for stan::gm::arg_stepsize:
+
+
+ + +stan::gm::singleton_argument< T > +stan::gm::valued_argument +stan::gm::argument + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 arg_stepsize ()
 
bool is_valid (double value)
 
- Public Member Functions inherited from stan::gm::singleton_argument< T >
 singleton_argument ()
 
 singleton_argument (const std::string name)
 
bool parse_args (std::vector< std::string > &args, std::ostream *out, std::ostream *err, bool &help_flag)
 
virtual void probe_args (argument *base_arg, std::stringstream &s)
 
void find_arg (std::string name, std::string prefix, std::vector< std::string > &valid_paths)
 
value ()
 
bool set_value (const T &value)
 
std::string print_value ()
 
std::string print_valid ()
 
bool is_default ()
 
- Public Member Functions inherited from stan::gm::valued_argument
virtual void print (std::ostream *s, const int depth, const std::string prefix)
 
virtual void print_help (std::ostream *s, const int depth, const bool recurse=false)
 
- Public Member Functions inherited from stan::gm::argument
 argument ()
 
 argument (const std::string name)
 
virtual ~argument ()
 
std::string name () const
 
std::string description () const
 
virtual argumentarg (const std::string name)
 
int compute_indent (const int depth)
 
+ + + + + + + + + + + + + + + + + + + + +

+Additional Inherited Members

- Static Public Member Functions inherited from stan::gm::argument
static void split_arg (const std::string &arg, std::string &name, std::string &value)
 
- Protected Member Functions inherited from stan::gm::singleton_argument< T >
virtual bool is_valid (T value)
 
- Protected Attributes inherited from stan::gm::singleton_argument< T >
std::string _validity
 
_value
 
_default_value
 
bool _constrained
 
_good_value
 
_bad_value
 
+

Detailed Description

+
+

Definition at line 10 of file arg_stepsize.hpp.

+

Constructor & Destructor Documentation

+ +
+
+ + + + + +
+ + + + + + + +
stan::gm::arg_stepsize::arg_stepsize ()
+
+inline
+
+ +

Definition at line 14 of file arg_stepsize.hpp.

+ +
+
+

Member Function Documentation

+ +
+
+ + + + + +
+ + + + + + + + +
bool stan::gm::arg_stepsize::is_valid (double value)
+
+inline
+
+ +

Definition at line 26 of file arg_stepsize.hpp.

+ +
+
+
The documentation for this class was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1gm_1_1arg__stepsize.png b/doc/api/html/classstan_1_1gm_1_1arg__stepsize.png new file mode 100644 index 0000000000000000000000000000000000000000..a1a8963940014b9e7293f8a5065ad30ea641fd94 GIT binary patch literal 1481 zcmcJPeN@tC6vsj5dsNF)z7(f9=Sod2=L@!sG~Y-;R1n{=I+i4cD^nCg%jGQRTQk#U ziJCd_$HY)UQxnR{X#$%4vdFh|sbN@Rh-J!f=lIX|$Nt)L&VBBE&bjy8bH2~LpKL6~ z7iMT~2!TLgC_k@YjhAUmsIRTL-P1Pg(l}FW0M1*jR%^oPx60&#`eV(Fu5WOv{c1wV6S1|15{7T`r&8?pU`?UKp};nL$9 zh#C;J^)s9)yh!b-_4|-IpmCInh#!8HTspeEQ(Z_76#=%<1z2~9Dn+RrR4ettfzOAa z>=ktq9+XZ40Pi#bo^|wu*7?yX-9BA8Ya~I`!mpycQXcXwz>y57tctDm)Q6zM%HtSf zw-Ps3xU||Fpd{hXYlWLP6$!k4q$ zPDX3}hsE%Ol_9ghIL8g+nd6=}nleot_Unp&X<)tSIo%?Q9|?h%_;1oLh41OK<~o7P zMv)RL7?MVk`R@iT+v{3!=!S!FOz-vGm*L>oqv0tNW)uv;{l1>gzN@2qK<`H{i^Qq1PHa+voJ91^|-L`OW%1po@%%AcYm~b^hEOgKW zzg5pCI5qd)X?|odAi?NGN615;R$nzKKq;-u83cR^VlEqJcgJbyCtxNPpkMN>x28^e zAwXxstSoYS5;zsLZC0igy3Aga;Qtpnh@}gv!qDONjE(4Ikx#|lfMTZ;EHg)Lvj>Q}<1e zM$1@dE8`?LmlbJl@k!yeU}|Gn1$KUc)5X^%~w&ga-Za zf_dVP0tHFQT1ZzsoTSm9fiKSmI9rb;a@`*BWvNTGPaQn1d9ywLJ z#u~JD44)wiQS9M}%4v>d?|TIe@jL@xp7_@CV}H$uhIjQc`!3ud49ENPHOp79lex(4 z14wQy?3Y%Rv0dCCGM(XsQWEn`Zp)D9)urYD5nEHhqo!HkLKf2!Ae6p*nfzI9{P#f0 zKxov~U^(2hV*h_k|G(Cw!%yF$2@0*ySt~@;(cfH=8c;>%>P#CUP0Sh*;E;!3r+zZH z`oJ6+Ggp-UU+%kOMyvBl<1eHZ5)=dp{-k6gmFGH`g8G`c0cyT + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::gm::arg_stepsize_jitter Member List
+
+
+ +

This is the complete list of members for stan::gm::arg_stepsize_jitter, including all inherited members.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
_bad_valuestan::gm::singleton_argument< T >protected
_constrainedstan::gm::singleton_argument< T >protected
_defaultstan::gm::valued_argumentprotected
_default_valuestan::gm::singleton_argument< T >protected
_descriptionstan::gm::argumentprotected
_good_valuestan::gm::singleton_argument< T >protected
_namestan::gm::argumentprotected
_validitystan::gm::singleton_argument< T >protected
_valuestan::gm::singleton_argument< T >protected
_value_typestan::gm::valued_argumentprotected
arg(const std::string name)stan::gm::argumentinlinevirtual
arg_stepsize_jitter()stan::gm::arg_stepsize_jitterinline
argument()stan::gm::argumentinline
argument(const std::string name)stan::gm::argumentinline
compute_indent(const int depth)stan::gm::argumentinline
description() const stan::gm::argumentinline
find_arg(std::string name, std::string prefix, std::vector< std::string > &valid_paths)stan::gm::singleton_argument< T >inlinevirtual
help_widthstan::gm::argumentprotected
indent_widthstan::gm::argumentprotected
is_default()stan::gm::singleton_argument< T >inlinevirtual
is_valid(double value)stan::gm::arg_stepsize_jitterinline
stan::gm::singleton_argument::is_valid(T value)stan::gm::singleton_argument< T >inlineprotectedvirtual
name() const stan::gm::argumentinline
parse_args(std::vector< std::string > &args, std::ostream *out, std::ostream *err, bool &help_flag)stan::gm::singleton_argument< T >inlinevirtual
print(std::ostream *s, const int depth, const std::string prefix)stan::gm::valued_argumentinlinevirtual
print_help(std::ostream *s, const int depth, const bool recurse=false)stan::gm::valued_argumentinlinevirtual
print_valid()stan::gm::singleton_argument< T >inlinevirtual
print_value()stan::gm::singleton_argument< T >inlinevirtual
probe_args(argument *base_arg, std::stringstream &s)stan::gm::singleton_argument< T >inlinevirtual
set_value(const T &value)stan::gm::singleton_argument< T >inline
singleton_argument()stan::gm::singleton_argument< T >inline
singleton_argument(const std::string name)stan::gm::singleton_argument< T >inline
split_arg(const std::string &arg, std::string &name, std::string &value)stan::gm::argumentinlinestatic
value()stan::gm::singleton_argument< T >inline
~argument()stan::gm::argumentinlinevirtual
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1gm_1_1arg__stepsize__jitter.html b/doc/api/html/classstan_1_1gm_1_1arg__stepsize__jitter.html new file mode 100644 index 00000000000..f3769f1d09b --- /dev/null +++ b/doc/api/html/classstan_1_1gm_1_1arg__stepsize__jitter.html @@ -0,0 +1,255 @@ + + + + + +Stan: stan::gm::arg_stepsize_jitter Class Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::gm::arg_stepsize_jitter Class Reference
+
+
+ +

#include <arg_stepsize_jitter.hpp>

+
+Inheritance diagram for stan::gm::arg_stepsize_jitter:
+
+
+ + +stan::gm::singleton_argument< T > +stan::gm::valued_argument +stan::gm::argument + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 arg_stepsize_jitter ()
 
bool is_valid (double value)
 
- Public Member Functions inherited from stan::gm::singleton_argument< T >
 singleton_argument ()
 
 singleton_argument (const std::string name)
 
bool parse_args (std::vector< std::string > &args, std::ostream *out, std::ostream *err, bool &help_flag)
 
virtual void probe_args (argument *base_arg, std::stringstream &s)
 
void find_arg (std::string name, std::string prefix, std::vector< std::string > &valid_paths)
 
value ()
 
bool set_value (const T &value)
 
std::string print_value ()
 
std::string print_valid ()
 
bool is_default ()
 
- Public Member Functions inherited from stan::gm::valued_argument
virtual void print (std::ostream *s, const int depth, const std::string prefix)
 
virtual void print_help (std::ostream *s, const int depth, const bool recurse=false)
 
- Public Member Functions inherited from stan::gm::argument
 argument ()
 
 argument (const std::string name)
 
virtual ~argument ()
 
std::string name () const
 
std::string description () const
 
virtual argumentarg (const std::string name)
 
int compute_indent (const int depth)
 
+ + + + + + + + + + + + + + + + + + + + +

+Additional Inherited Members

- Static Public Member Functions inherited from stan::gm::argument
static void split_arg (const std::string &arg, std::string &name, std::string &value)
 
- Protected Member Functions inherited from stan::gm::singleton_argument< T >
virtual bool is_valid (T value)
 
- Protected Attributes inherited from stan::gm::singleton_argument< T >
std::string _validity
 
_value
 
_default_value
 
bool _constrained
 
_good_value
 
_bad_value
 
+

Detailed Description

+
+

Definition at line 10 of file arg_stepsize_jitter.hpp.

+

Constructor & Destructor Documentation

+ +
+
+ + + + + +
+ + + + + + + +
stan::gm::arg_stepsize_jitter::arg_stepsize_jitter ()
+
+inline
+
+ +

Definition at line 14 of file arg_stepsize_jitter.hpp.

+ +
+
+

Member Function Documentation

+ +
+
+ + + + + +
+ + + + + + + + +
bool stan::gm::arg_stepsize_jitter::is_valid (double value)
+
+inline
+
+ +

Definition at line 26 of file arg_stepsize_jitter.hpp.

+ +
+
+
The documentation for this class was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1gm_1_1arg__stepsize__jitter.png b/doc/api/html/classstan_1_1gm_1_1arg__stepsize__jitter.png new file mode 100644 index 0000000000000000000000000000000000000000..6d0f2b082c6280cfb1d637f936b9c15198524089 GIT binary patch literal 1527 zcmcIkdo+{@6dz4u)ii0B#F^BJA`BA~X;4JogZaEiI@M|n(lACcZBMOQ6syEw+C0Bu zDnnt4FOtd`^7!(|%+9iuiIAO`!OYI?+5YLD{cGahg<_xUZPS+6RENUCfZ!(^oZW1gG!}R1>a9e>DjHU1MH``B17O(Vfr9>>bN(@t?* zFZ~Wmj}*@4fN$J_ftt(@q>GY)hOMc=0KvCm$Hs|1LQO|EZT?+XiYM1mu^HRFhj*TG z-!4KL$0cGCy=qYf82{+n5VtND-pfWgZod?189??lpUcNarw`R#qKPH7k{uC2(5c*< zmDAwftTeDdeaRt?LNzL`T2miI4W8$NhO>E$dZIuioE{ZK4z(PH9{4+^dKScsGAB3` zj!@r@A(oj|o`vYY0Wc=ALMF`qgsu7ku5KEYYQo(z1-DrtZ`pE3Zru_9fy!bo7-m2Q z>hT}JHmh|$h}oqP#4sBJzpdFkkW88>uW7)S4m(&mGn0UG!|y>veGi}(bC47HGHlVCYzSw0=Z?-4E>Oev&bTFZ zvd&OhRx49U;xah?AUW*xTt2DfQx^lEUqL(G0F7^@^NDn!H-MgdZ`;0}xxtq%$m6F< zE^_6pYi(pQ1pb)!Wd#5KkhNfTY8L#aCq{Mf^GoVt!R#EKx@rUI*!lr zMwT0Q7x!|ql@$;ADs5f|)umWJ4>u{>RXRU9iz_b4xfHr-z?Gk<~qR#nCVFiF?;vAlS#&&B!9*R;k$g<_vR3&aD?ef@U zbPSHM9NQi!?~_AYX!xfXdaHru1gZ&Gz) zhnlDDDaXzsS%Ksr%lUj<2|WNu`J`Az@7@6JIb;UFYX*Oc}yyjBou{&RgGH; zT*d?z@OB)e)>U8jcp{RshJDN^BzaFJ>z(daLKps_p9nr+dq#){{2p_>jFoMxvVyZ)3a->o*3Qt? + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::gm::arg_test Member List
+
+
+ +

This is the complete list of members for stan::gm::arg_test, including all inherited members.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
_cursorstan::gm::list_argumentprotected
_defaultstan::gm::valued_argumentprotected
_default_cursorstan::gm::list_argumentprotected
_descriptionstan::gm::argumentprotected
_namestan::gm::argumentprotected
_value_typestan::gm::valued_argumentprotected
_valuesstan::gm::list_argumentprotected
arg(std::string name)stan::gm::list_argumentinlinevirtual
arg_test()stan::gm::arg_testinline
argument()stan::gm::argumentinline
argument(const std::string name)stan::gm::argumentinline
compute_indent(const int depth)stan::gm::argumentinline
description() const stan::gm::argumentinline
find_arg(std::string name, std::string prefix, std::vector< std::string > &valid_paths)stan::gm::list_argumentinlinevirtual
help_widthstan::gm::argumentprotected
indent_widthstan::gm::argumentprotected
is_default()stan::gm::list_argumentinlinevirtual
list_argument()stan::gm::list_argumentinline
name() const stan::gm::argumentinline
parse_args(std::vector< std::string > &args, std::ostream *out, std::ostream *err, bool &help_flag)stan::gm::list_argumentinlinevirtual
print(std::ostream *s, int depth, const std::string prefix)stan::gm::list_argumentinlinevirtual
print_help(std::ostream *s, int depth, bool recurse)stan::gm::list_argumentinlinevirtual
print_valid()stan::gm::list_argumentinlinevirtual
print_value()stan::gm::list_argumentinlinevirtual
probe_args(argument *base_arg, std::stringstream &s)stan::gm::list_argumentinlinevirtual
split_arg(const std::string &arg, std::string &name, std::string &value)stan::gm::argumentinlinestatic
valid_value(std::string name)stan::gm::list_argumentinline
value()stan::gm::list_argumentinline
values()stan::gm::list_argumentinline
~argument()stan::gm::argumentinlinevirtual
~list_argument()stan::gm::list_argumentinline
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1gm_1_1arg__test.html b/doc/api/html/classstan_1_1gm_1_1arg__test.html new file mode 100644 index 00000000000..a2d1b0d93a0 --- /dev/null +++ b/doc/api/html/classstan_1_1gm_1_1arg__test.html @@ -0,0 +1,205 @@ + + + + + +Stan: stan::gm::arg_test Class Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::gm::arg_test Class Reference
+
+
+ +

#include <arg_test.hpp>

+
+Inheritance diagram for stan::gm::arg_test:
+
+
+ + +stan::gm::list_argument +stan::gm::valued_argument +stan::gm::argument + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 arg_test ()
 
- Public Member Functions inherited from stan::gm::list_argument
 list_argument ()
 
 ~list_argument ()
 
void print (std::ostream *s, int depth, const std::string prefix)
 
void print_help (std::ostream *s, int depth, bool recurse)
 
bool parse_args (std::vector< std::string > &args, std::ostream *out, std::ostream *err, bool &help_flag)
 
virtual void probe_args (argument *base_arg, std::stringstream &s)
 
void find_arg (std::string name, std::string prefix, std::vector< std::string > &valid_paths)
 
bool valid_value (std::string name)
 
argumentarg (std::string name)
 
std::vector< argument * > & values ()
 
std::string value ()
 
std::string print_value ()
 
std::string print_valid ()
 
bool is_default ()
 
+ + + + + + + + + + + +

+Additional Inherited Members

- Static Public Member Functions inherited from stan::gm::argument
static void split_arg (const std::string &arg, std::string &name, std::string &value)
 
- Protected Attributes inherited from stan::gm::list_argument
int _cursor
 
int _default_cursor
 
std::vector< argument * > _values
 
+

Detailed Description

+
+

Definition at line 12 of file arg_test.hpp.

+

Constructor & Destructor Documentation

+ +
+
+ + + + + +
+ + + + + + + +
stan::gm::arg_test::arg_test ()
+
+inline
+
+ +

Definition at line 16 of file arg_test.hpp.

+ +
+
+
The documentation for this class was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1gm_1_1arg__test.png b/doc/api/html/classstan_1_1gm_1_1arg__test.png new file mode 100644 index 0000000000000000000000000000000000000000..0029759cc979037ff7a8e2f161082304cbad1aca GIT binary patch literal 1282 zcmeAS@N?(olHy`uVBq!ia0vp^3xN0l2Q!e|@^pqPkdg@S332`Z|38rV;?396{zDUh zEHFNB-~emq9eE&^qa?^Lm;tB=1g@S6F=Aj~nds@_7*fIbcJAv*kF|K%X7{h!^Iuv1 z_^}w7oXHxS+wTTWwVrvyV~b$YKcVCvW9KPLDhnMwH$7;Yl#=LS;Bl$HaPHsr;ym6J zC*-|1eO+x+V|UYT)$Z5*Z_Da#@T{4<^x>o{kKGDRN1PR0^2|%<_np)fxmzsT52-p# z`gMnUno`K-=eK*qg~JMEeiTJd@{`akjGB<8tH-*1;`An8qwL9F;(mDiW(nrJ z()HB8(?4N}w~uy3@iD&M2}`uss7_lVf0R}AWD~d7q*hmhV-o6Y4_4bSq@|S|Jf2*1 z_$I6P{++zb#lPsWZFtzkAQmHVpoyC)qQH@XTaP2*AS9h3S?JF<8-_~2;Stg+KI%=)k+`XMSZF4x}yymD{ z=U?Nk*Zdf_!0_N&i%^HSrt3VvS9l*(TX$Jy?{^7-H`8{+CU`!adXHnH2!y}flhs;~Lg(_{Z9OZ1s| zS{cpC^ZBqNTg@3SURgtVvzFX0$`m+82&4ce8YqLu4CZ2PT?{iHF ziJg1lJ!hSm#>!o8tcQyoKOGm^RyVc%b=B4GZT~e4f8Y4}KDU4`^U!O}R~NJo>TWwF z225y|-)?4kSrE!SY47LjdAB*_o!_&ZE}E`#c1e57*Yjo5bZ$PWifle?C#O+Z_4U=- z_pIItnjhyT7$2_KE3R1>vO$x?mG+s&ARnZ~duz`FSf z9ExXn7!%^4=~P1O&!uXa%XgOjRcD#L`9)>avi@`r(ao|UFBjXz6o31rvHH@KEey+f zIP!wk8*`nQu1-}cJ85LZuUj0F`H8Nq#&DJ&JgXo4b-UkxZm&7Ry#srinBCv1$HnU!9_WYWGbcL+Cyqp~f6P3& W3EJWO-W|XKi^0>?&t;ucLK6UxCr^|B literal 0 HcmV?d00001 diff --git a/doc/api/html/classstan_1_1gm_1_1arg__test__grad__eps-members.html b/doc/api/html/classstan_1_1gm_1_1arg__test__grad__eps-members.html new file mode 100644 index 00000000000..5befc2178f4 --- /dev/null +++ b/doc/api/html/classstan_1_1gm_1_1arg__test__grad__eps-members.html @@ -0,0 +1,147 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::gm::arg_test_grad_eps Member List
+
+
+ +

This is the complete list of members for stan::gm::arg_test_grad_eps, including all inherited members.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
_bad_valuestan::gm::singleton_argument< T >protected
_constrainedstan::gm::singleton_argument< T >protected
_defaultstan::gm::valued_argumentprotected
_default_valuestan::gm::singleton_argument< T >protected
_descriptionstan::gm::argumentprotected
_good_valuestan::gm::singleton_argument< T >protected
_namestan::gm::argumentprotected
_validitystan::gm::singleton_argument< T >protected
_valuestan::gm::singleton_argument< T >protected
_value_typestan::gm::valued_argumentprotected
arg(const std::string name)stan::gm::argumentinlinevirtual
arg_test_grad_eps()stan::gm::arg_test_grad_epsinline
argument()stan::gm::argumentinline
argument(const std::string name)stan::gm::argumentinline
compute_indent(const int depth)stan::gm::argumentinline
description() const stan::gm::argumentinline
find_arg(std::string name, std::string prefix, std::vector< std::string > &valid_paths)stan::gm::singleton_argument< T >inlinevirtual
help_widthstan::gm::argumentprotected
indent_widthstan::gm::argumentprotected
is_default()stan::gm::singleton_argument< T >inlinevirtual
is_valid(double value)stan::gm::arg_test_grad_epsinline
stan::gm::singleton_argument::is_valid(T value)stan::gm::singleton_argument< T >inlineprotectedvirtual
name() const stan::gm::argumentinline
parse_args(std::vector< std::string > &args, std::ostream *out, std::ostream *err, bool &help_flag)stan::gm::singleton_argument< T >inlinevirtual
print(std::ostream *s, const int depth, const std::string prefix)stan::gm::valued_argumentinlinevirtual
print_help(std::ostream *s, const int depth, const bool recurse=false)stan::gm::valued_argumentinlinevirtual
print_valid()stan::gm::singleton_argument< T >inlinevirtual
print_value()stan::gm::singleton_argument< T >inlinevirtual
probe_args(argument *base_arg, std::stringstream &s)stan::gm::singleton_argument< T >inlinevirtual
set_value(const T &value)stan::gm::singleton_argument< T >inline
singleton_argument()stan::gm::singleton_argument< T >inline
singleton_argument(const std::string name)stan::gm::singleton_argument< T >inline
split_arg(const std::string &arg, std::string &name, std::string &value)stan::gm::argumentinlinestatic
value()stan::gm::singleton_argument< T >inline
~argument()stan::gm::argumentinlinevirtual
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1gm_1_1arg__test__grad__eps.html b/doc/api/html/classstan_1_1gm_1_1arg__test__grad__eps.html new file mode 100644 index 00000000000..f1da54340cd --- /dev/null +++ b/doc/api/html/classstan_1_1gm_1_1arg__test__grad__eps.html @@ -0,0 +1,255 @@ + + + + + +Stan: stan::gm::arg_test_grad_eps Class Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::gm::arg_test_grad_eps Class Reference
+
+
+ +

#include <arg_test_grad_eps.hpp>

+
+Inheritance diagram for stan::gm::arg_test_grad_eps:
+
+
+ + +stan::gm::singleton_argument< T > +stan::gm::valued_argument +stan::gm::argument + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 arg_test_grad_eps ()
 
bool is_valid (double value)
 
- Public Member Functions inherited from stan::gm::singleton_argument< T >
 singleton_argument ()
 
 singleton_argument (const std::string name)
 
bool parse_args (std::vector< std::string > &args, std::ostream *out, std::ostream *err, bool &help_flag)
 
virtual void probe_args (argument *base_arg, std::stringstream &s)
 
void find_arg (std::string name, std::string prefix, std::vector< std::string > &valid_paths)
 
value ()
 
bool set_value (const T &value)
 
std::string print_value ()
 
std::string print_valid ()
 
bool is_default ()
 
- Public Member Functions inherited from stan::gm::valued_argument
virtual void print (std::ostream *s, const int depth, const std::string prefix)
 
virtual void print_help (std::ostream *s, const int depth, const bool recurse=false)
 
- Public Member Functions inherited from stan::gm::argument
 argument ()
 
 argument (const std::string name)
 
virtual ~argument ()
 
std::string name () const
 
std::string description () const
 
virtual argumentarg (const std::string name)
 
int compute_indent (const int depth)
 
+ + + + + + + + + + + + + + + + + + + + +

+Additional Inherited Members

- Static Public Member Functions inherited from stan::gm::argument
static void split_arg (const std::string &arg, std::string &name, std::string &value)
 
- Protected Member Functions inherited from stan::gm::singleton_argument< T >
virtual bool is_valid (T value)
 
- Protected Attributes inherited from stan::gm::singleton_argument< T >
std::string _validity
 
_value
 
_default_value
 
bool _constrained
 
_good_value
 
_bad_value
 
+

Detailed Description

+
+

Definition at line 10 of file arg_test_grad_eps.hpp.

+

Constructor & Destructor Documentation

+ +
+
+ + + + + +
+ + + + + + + +
stan::gm::arg_test_grad_eps::arg_test_grad_eps ()
+
+inline
+
+ +

Definition at line 14 of file arg_test_grad_eps.hpp.

+ +
+
+

Member Function Documentation

+ +
+
+ + + + + +
+ + + + + + + + +
bool stan::gm::arg_test_grad_eps::is_valid (double value)
+
+inline
+
+ +

Definition at line 26 of file arg_test_grad_eps.hpp.

+ +
+
+
The documentation for this class was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1gm_1_1arg__test__grad__eps.png b/doc/api/html/classstan_1_1gm_1_1arg__test__grad__eps.png new file mode 100644 index 0000000000000000000000000000000000000000..d9b86efc996eccd0d6f205f76b8e83d27f8b2bfc GIT binary patch literal 1523 zcmai!doa{%7{`BZCDX=q=(4#SCkbU&tXA43xnFm)`&&_49Ew(w5G~8fnM%&)RtPzA z_uJY|?yb^FE=3gm+;W@Hw!5yeC}q!Trhm?v=Dah{`#kT=_j%u$&-=dL1frWgLJ6q^ z006?#!Ny&hh0@?D%1LKDLwT<>Z6msnZ6y+kwEQ?J4o`ZPEUmr=kH=F;7}Sz36~o-! zNPtwdHsF_JV*pUN>}X>}j+B|YBTB6>Pyw>54Q3>*yLSXLmsl@q)|ZyQ;_wc&8LbwH zxSUNN$$@!gP`VunG-R!i6^7e3JRTaqB;_sorntp`z>?E1!_4Y;%J zm6ml7qmv5j^o{5{2kv-Sf_(dD71i|^I5N7^-<0IqF-`xZYriRFQW4y>%%Ty$X|SzlZj^8jlR)ZDobOe^ zVvay;f?cg#sEOQ%z9Q2f@AFzcKXzGYX6uySY@$2_COs-1AZ#`KHQ)kbkNVav= zfvAMWq~U}w>Mr7q86f{&!bQCk{?%7X+pf^6haDp(H12Qmz&D~dN4h)>g&0Cxx#A#C zyKPZZknWg;S9;Iz)CL%qcf(Q<&OH}RgFt*^_IIA=QpJMn%AGVMDj=F+5_fd~JJo9z zE~T1!0PgYOEms_gtFWW#L29eWt@Tq+uzKPxAcW}YZ4Bizn zEi6*z3N5f#>kh_&5(8JT3bV!m2i9>!5HPxe1B7{+a7zKQmrnkxxT=;?IACCO=+aMM z{*-ofGDpNU&m-NBD~7y~Yo{2)d307&^5+J0ei_PhL#64|V$KX3(*4SSXD3yQ--Wh{ z{Lg(oBM6@B?v?nCJoHcxFdUdYe+{dA-Tzt(VrYKCh4J3Dy%QeKBCqJ@JI3qw{tbof zv*HI%Jb(k$lbT5io@w zs}+&pF-w78cP%EaWy-Pyx$C?|zp5{_DtH)lrKIpBaY7Y~G*(;J;`{w%Y>jt{dVeCt z`sD!U^!<#B;o95?iV3`+cNWo)V@E-Plp&|lCl%(ZscHVT*^bR)r+`yCskCv{0x`7Rn0k6M^V*Yz(SWSeG*h zi*FLsM90yl^)aRnVgvp!N5!$OYrlGpB>|R_H2{_^l$qwG_TstH<|<9NXCBSZ4NKeWg8P(S7;HhpO<(4VBKwq1DWJ_6;9t1U(=hlu zffwBEDwJ|cUGDPdPI7oao%(t%MMkFjQT=2#xqD1L*<||pQ5JI?d2IjAQ`VB(!b}#h tLw%|C?aWA-?AMSV-jOMcRn%7Ph$S>9c9FfeGNld;ING||a1MK4{s%b!>@olV literal 0 HcmV?d00001 diff --git a/doc/api/html/classstan_1_1gm_1_1arg__test__grad__err-members.html b/doc/api/html/classstan_1_1gm_1_1arg__test__grad__err-members.html new file mode 100644 index 00000000000..5e81ba30411 --- /dev/null +++ b/doc/api/html/classstan_1_1gm_1_1arg__test__grad__err-members.html @@ -0,0 +1,147 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::gm::arg_test_grad_err Member List
+
+
+ +

This is the complete list of members for stan::gm::arg_test_grad_err, including all inherited members.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
_bad_valuestan::gm::singleton_argument< T >protected
_constrainedstan::gm::singleton_argument< T >protected
_defaultstan::gm::valued_argumentprotected
_default_valuestan::gm::singleton_argument< T >protected
_descriptionstan::gm::argumentprotected
_good_valuestan::gm::singleton_argument< T >protected
_namestan::gm::argumentprotected
_validitystan::gm::singleton_argument< T >protected
_valuestan::gm::singleton_argument< T >protected
_value_typestan::gm::valued_argumentprotected
arg(const std::string name)stan::gm::argumentinlinevirtual
arg_test_grad_err()stan::gm::arg_test_grad_errinline
argument()stan::gm::argumentinline
argument(const std::string name)stan::gm::argumentinline
compute_indent(const int depth)stan::gm::argumentinline
description() const stan::gm::argumentinline
find_arg(std::string name, std::string prefix, std::vector< std::string > &valid_paths)stan::gm::singleton_argument< T >inlinevirtual
help_widthstan::gm::argumentprotected
indent_widthstan::gm::argumentprotected
is_default()stan::gm::singleton_argument< T >inlinevirtual
is_valid(double value)stan::gm::arg_test_grad_errinline
stan::gm::singleton_argument::is_valid(T value)stan::gm::singleton_argument< T >inlineprotectedvirtual
name() const stan::gm::argumentinline
parse_args(std::vector< std::string > &args, std::ostream *out, std::ostream *err, bool &help_flag)stan::gm::singleton_argument< T >inlinevirtual
print(std::ostream *s, const int depth, const std::string prefix)stan::gm::valued_argumentinlinevirtual
print_help(std::ostream *s, const int depth, const bool recurse=false)stan::gm::valued_argumentinlinevirtual
print_valid()stan::gm::singleton_argument< T >inlinevirtual
print_value()stan::gm::singleton_argument< T >inlinevirtual
probe_args(argument *base_arg, std::stringstream &s)stan::gm::singleton_argument< T >inlinevirtual
set_value(const T &value)stan::gm::singleton_argument< T >inline
singleton_argument()stan::gm::singleton_argument< T >inline
singleton_argument(const std::string name)stan::gm::singleton_argument< T >inline
split_arg(const std::string &arg, std::string &name, std::string &value)stan::gm::argumentinlinestatic
value()stan::gm::singleton_argument< T >inline
~argument()stan::gm::argumentinlinevirtual
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1gm_1_1arg__test__grad__err.html b/doc/api/html/classstan_1_1gm_1_1arg__test__grad__err.html new file mode 100644 index 00000000000..52ebb58f1b6 --- /dev/null +++ b/doc/api/html/classstan_1_1gm_1_1arg__test__grad__err.html @@ -0,0 +1,255 @@ + + + + + +Stan: stan::gm::arg_test_grad_err Class Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::gm::arg_test_grad_err Class Reference
+
+
+ +

#include <arg_test_grad_err.hpp>

+
+Inheritance diagram for stan::gm::arg_test_grad_err:
+
+
+ + +stan::gm::singleton_argument< T > +stan::gm::valued_argument +stan::gm::argument + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 arg_test_grad_err ()
 
bool is_valid (double value)
 
- Public Member Functions inherited from stan::gm::singleton_argument< T >
 singleton_argument ()
 
 singleton_argument (const std::string name)
 
bool parse_args (std::vector< std::string > &args, std::ostream *out, std::ostream *err, bool &help_flag)
 
virtual void probe_args (argument *base_arg, std::stringstream &s)
 
void find_arg (std::string name, std::string prefix, std::vector< std::string > &valid_paths)
 
value ()
 
bool set_value (const T &value)
 
std::string print_value ()
 
std::string print_valid ()
 
bool is_default ()
 
- Public Member Functions inherited from stan::gm::valued_argument
virtual void print (std::ostream *s, const int depth, const std::string prefix)
 
virtual void print_help (std::ostream *s, const int depth, const bool recurse=false)
 
- Public Member Functions inherited from stan::gm::argument
 argument ()
 
 argument (const std::string name)
 
virtual ~argument ()
 
std::string name () const
 
std::string description () const
 
virtual argumentarg (const std::string name)
 
int compute_indent (const int depth)
 
+ + + + + + + + + + + + + + + + + + + + +

+Additional Inherited Members

- Static Public Member Functions inherited from stan::gm::argument
static void split_arg (const std::string &arg, std::string &name, std::string &value)
 
- Protected Member Functions inherited from stan::gm::singleton_argument< T >
virtual bool is_valid (T value)
 
- Protected Attributes inherited from stan::gm::singleton_argument< T >
std::string _validity
 
_value
 
_default_value
 
bool _constrained
 
_good_value
 
_bad_value
 
+

Detailed Description

+
+

Definition at line 10 of file arg_test_grad_err.hpp.

+

Constructor & Destructor Documentation

+ +
+
+ + + + + +
+ + + + + + + +
stan::gm::arg_test_grad_err::arg_test_grad_err ()
+
+inline
+
+ +

Definition at line 14 of file arg_test_grad_err.hpp.

+ +
+
+

Member Function Documentation

+ +
+
+ + + + + +
+ + + + + + + + +
bool stan::gm::arg_test_grad_err::is_valid (double value)
+
+inline
+
+ +

Definition at line 26 of file arg_test_grad_err.hpp.

+ +
+
+
The documentation for this class was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1gm_1_1arg__test__grad__err.png b/doc/api/html/classstan_1_1gm_1_1arg__test__grad__err.png new file mode 100644 index 0000000000000000000000000000000000000000..0a9b3b1cc2a29d0132270da8d1ea93072a430b5d GIT binary patch literal 1519 zcmcK4|3A}t902ekk?Qp2m>kwsxUlKej<8et)-*Hw60;UPJVbMnFLN_YB0W;0FPD{+ zhetWvN9HV}quHvn%hz1(qa%hKJ7YFx3bC7e+#k>{_kKK{@7L?~c)WjlzuvF+WgIqm zvxTh%1OnNNJ{o{GM5Tem+{Cb>axC2p!3KvR2I}>CL;Cl$j$ZQonj!m_L?SW0JP0$C z=IMAW0b)3`w!jXe2LxiuLI)fsGK^IBrfxiT*#f!S=%UuYbiT_llKr;lv>3II)Yxxj zldwZ7-t=PMyiq>QvH+kZt|_lBBZ{RP{_rR1ye6Bk9T?_!Hm|s`{oo%c3-b%FR%Qny z)4TH7L!{w}P2lo?0Ca-$!{Y^!%pU5MXH`ochjb=bJQeSzy$ypFw*7Loc}!WabS^KI zj5)_Eo2B!Ig=R-c zLgX5GcqpK*KR7?l0KO^!l-85BKHW`In5K%V+3ImtCp0bA4u`TagMU3^nQX5(8Ys)2 zsBclGog|3DIPjfkQrNEL)}`)r{j_AIFu&Jl=T@t)24R&UlogWrY$rU;^S!T9UmP#?Qx!u~$e5=ipC@oWM&@wN%p3 zXnxp3S~qVLOQb>xp#LB(ROk;YAW+jL_^tDYBXYXhM|-d_pg4pJGzJ++NpzdS%8d|K z#l}Oh`3KBj)5iu%lwbq&Z87nIu}MQP*SI0*^JQN*wCwvBoGK4TN@A}GLGoIqw3l-u z>;xe3J7ZO7i=RRP0H(RoNUBfOVupR{GTAmaYNqMaq)N|I%UmrRtdg?5q?GmJ`~Mn~ z&gfDnzF*u`s-UHG10VJZ&^N8$J^{{ri{>Pb)paNIuOH+P4;jQtk%lUd}jb z9z6E8zL6hK?~>Nb*;a_$Ds)W^cBI)j9!$F@A@hdHDgl0pi)Jp9D+OP$`m*jGK@ zpsrIQekZ;)B?>3b)KNrS`N#TRpd$5LL=)i%oF6NaePSkFQ`Xpp#ejO`|1}Nx5T4~x z2xp-jnOD3Tza2m;yZ!_9j|+oWUn%Z z4gr7SYAHpnI!xRp=-d*x&S5xyp#uiUvu3zhb_u3$KYXl}8|AD?1J}vE%o47IbuUr7 z#KYm#wTt&^x!cK7Jt}qAMDNi=LaRLvx;H-x(!Qy3g2pufl8YU7%pGECp7@Rgvg})u zp3c|y&6|RAUPdxZ#d{tAX+sL9g9cz0n({Xpy2V|^2<>+J^Qaz7%y~b|e-B)GVwDiW bOIbA$MP7LUMTxf>erE_e5F5Zh5_91n?EU(I literal 0 HcmV?d00001 diff --git a/doc/api/html/classstan_1_1gm_1_1arg__test__gradient-members.html b/doc/api/html/classstan_1_1gm_1_1arg__test__gradient-members.html new file mode 100644 index 00000000000..78101344da3 --- /dev/null +++ b/doc/api/html/classstan_1_1gm_1_1arg__test__gradient-members.html @@ -0,0 +1,133 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::gm::arg_test_gradient Member List
+
+
+ +

This is the complete list of members for stan::gm::arg_test_gradient, including all inherited members.

+ + + + + + + + + + + + + + + + + + + + + + +
_descriptionstan::gm::argumentprotected
_namestan::gm::argumentprotected
_subargumentsstan::gm::categorical_argumentprotected
arg(const std::string name)stan::gm::categorical_argumentinlinevirtual
arg_test_gradient()stan::gm::arg_test_gradientinline
argument()stan::gm::argumentinline
argument(const std::string name)stan::gm::argumentinline
compute_indent(const int depth)stan::gm::argumentinline
description() const stan::gm::argumentinline
find_arg(std::string name, std::string prefix, std::vector< std::string > &valid_paths)stan::gm::categorical_argumentinlinevirtual
help_widthstan::gm::argumentprotected
indent_widthstan::gm::argumentprotected
name() const stan::gm::argumentinline
parse_args(std::vector< std::string > &args, std::ostream *out, std::ostream *err, bool &help_flag)stan::gm::categorical_argumentinlinevirtual
print(std::ostream *s, const int depth, const std::string prefix)stan::gm::categorical_argumentinlinevirtual
print_help(std::ostream *s, const int depth, const bool recurse)stan::gm::categorical_argumentinlinevirtual
probe_args(argument *base_arg, std::stringstream &s)stan::gm::categorical_argumentinlinevirtual
split_arg(const std::string &arg, std::string &name, std::string &value)stan::gm::argumentinlinestatic
subarguments()stan::gm::categorical_argumentinline
~argument()stan::gm::argumentinlinevirtual
~categorical_argument()stan::gm::categorical_argumentinlinevirtual
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1gm_1_1arg__test__gradient.html b/doc/api/html/classstan_1_1gm_1_1arg__test__gradient.html new file mode 100644 index 00000000000..ff3294ad86b --- /dev/null +++ b/doc/api/html/classstan_1_1gm_1_1arg__test__gradient.html @@ -0,0 +1,201 @@ + + + + + +Stan: stan::gm::arg_test_gradient Class Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::gm::arg_test_gradient Class Reference
+
+
+ +

#include <arg_test_gradient.hpp>

+
+Inheritance diagram for stan::gm::arg_test_gradient:
+
+
+ + +stan::gm::categorical_argument +stan::gm::argument + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 arg_test_gradient ()
 
- Public Member Functions inherited from stan::gm::categorical_argument
virtual ~categorical_argument ()
 
void print (std::ostream *s, const int depth, const std::string prefix)
 
void print_help (std::ostream *s, const int depth, const bool recurse)
 
bool parse_args (std::vector< std::string > &args, std::ostream *out, std::ostream *err, bool &help_flag)
 
virtual void probe_args (argument *base_arg, std::stringstream &s)
 
void find_arg (std::string name, std::string prefix, std::vector< std::string > &valid_paths)
 
std::vector< argument * > & subarguments ()
 
argumentarg (const std::string name)
 
- Public Member Functions inherited from stan::gm::argument
 argument ()
 
 argument (const std::string name)
 
virtual ~argument ()
 
std::string name () const
 
std::string description () const
 
int compute_indent (const int depth)
 
+ + + + + + + +

+Additional Inherited Members

- Static Public Member Functions inherited from stan::gm::argument
static void split_arg (const std::string &arg, std::string &name, std::string &value)
 
- Protected Attributes inherited from stan::gm::categorical_argument
std::vector< argument * > _subarguments
 
+

Detailed Description

+
+

Definition at line 12 of file arg_test_gradient.hpp.

+

Constructor & Destructor Documentation

+ +
+
+ + + + + +
+ + + + + + + +
stan::gm::arg_test_gradient::arg_test_gradient ()
+
+inline
+
+ +

Definition at line 16 of file arg_test_gradient.hpp.

+ +
+
+
The documentation for this class was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1gm_1_1arg__test__gradient.png b/doc/api/html/classstan_1_1gm_1_1arg__test__gradient.png new file mode 100644 index 0000000000000000000000000000000000000000..9d0cbe7f95622983f0029c4abf0d88a12fb0c576 GIT binary patch literal 1069 zcmeAS@N?(olHy`uVBq!ia0vp^JAt@^gBeKngzicMQW60^A+G=b{|7Q(y!l$%e`o@b z1;z&s9ANFdBM;Y9u@;Z3`0dc2|NZU! zdUy~0xHkEkWLC)0vT}#%tYV+EFPr!}cX>`?3z^_OX?;`7q?)gDY&w?WeuWy(n?*;HI4_u`fA)PFm$PPsP~iE?20IdGO<$@*o+N zmr?vDPyb%CVOu71&K<3-ZM!o)cP%`AbyEKZtG&UWj((bQhvoNH>08#zj6bQY419m) z?JAYn*Zr^dD4LhvUoR5;?%mZ%(FdMaUA_7C=$*9JYL|@fRGr?Y>ACA#`2L00BlrI> z{2{edQ`Ym=%Ue#9@?KY`*Zmc&{4jIk67JfqQ7R{W9rZl-aTR%fy6R)+d)Z_WL!GaF zgQBU<&)23}zcxHE{;}Z2<4NxMj32@#F#pgx!B`{ugaN3YA)eK;VSSU#fpAB@2dfp> zKZK%4H|$-OIjc=%vI_4Ch3P8stUFbHu2S@$^u>7Yu6JVpZ6*ruRFSNmY;)E)v--^I z`Sz(F_inOTb@P1xqpiL*Yp%t2&)@jY^(V{ypcy5mL1y|-x&xn1Q!y^OV;VCz!G7Xi z-GcQqG;XSe|!%;&a$-sJok0sT=OT(-c`38FTJ;Vp>t96JN{Lw z@%QfVb~W#var;f#=d*kBtG&D%8&u}LnD_Ph zt*iHY+AH(sRnB&r)c5twul9N0SG!L7rv~!4)(O><;l@8rd@pw}{V?6j&~|0Rll9kE zyf{4R{DbC2{oZnWSr0^G4Mkjm{LM>qsiG^BL;zIRRnDK&w_R!5$zv`3CdbOJUfr_c zV(zD%k^6qv)a~ijTD^4gGxxudHy&NxyNxUO&@7MD=d&g~zP2)ZIWT#Z_f9arrhIvA zWY^QQsE1Pxd{x(!-CWLh&y#mXp-bGofYzfs|>$Y!E|CoONLiYUKf%X3`R`}(umRNB0R{QmC z&KVom#kezBT;e~sr~mVrM>Ay)_}Q-(YxoZfuB+Gf26<)b{AK5j^Oh`r^w + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::gm::arg_thin Member List
+
+
+ +

This is the complete list of members for stan::gm::arg_thin, including all inherited members.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
_bad_valuestan::gm::singleton_argument< T >protected
_constrainedstan::gm::singleton_argument< T >protected
_defaultstan::gm::valued_argumentprotected
_default_valuestan::gm::singleton_argument< T >protected
_descriptionstan::gm::argumentprotected
_good_valuestan::gm::singleton_argument< T >protected
_namestan::gm::argumentprotected
_validitystan::gm::singleton_argument< T >protected
_valuestan::gm::singleton_argument< T >protected
_value_typestan::gm::valued_argumentprotected
arg(const std::string name)stan::gm::argumentinlinevirtual
arg_thin()stan::gm::arg_thininline
argument()stan::gm::argumentinline
argument(const std::string name)stan::gm::argumentinline
compute_indent(const int depth)stan::gm::argumentinline
description() const stan::gm::argumentinline
find_arg(std::string name, std::string prefix, std::vector< std::string > &valid_paths)stan::gm::singleton_argument< T >inlinevirtual
help_widthstan::gm::argumentprotected
indent_widthstan::gm::argumentprotected
is_default()stan::gm::singleton_argument< T >inlinevirtual
is_valid(int value)stan::gm::arg_thininline
stan::gm::singleton_argument::is_valid(T value)stan::gm::singleton_argument< T >inlineprotectedvirtual
name() const stan::gm::argumentinline
parse_args(std::vector< std::string > &args, std::ostream *out, std::ostream *err, bool &help_flag)stan::gm::singleton_argument< T >inlinevirtual
print(std::ostream *s, const int depth, const std::string prefix)stan::gm::valued_argumentinlinevirtual
print_help(std::ostream *s, const int depth, const bool recurse=false)stan::gm::valued_argumentinlinevirtual
print_valid()stan::gm::singleton_argument< T >inlinevirtual
print_value()stan::gm::singleton_argument< T >inlinevirtual
probe_args(argument *base_arg, std::stringstream &s)stan::gm::singleton_argument< T >inlinevirtual
set_value(const T &value)stan::gm::singleton_argument< T >inline
singleton_argument()stan::gm::singleton_argument< T >inline
singleton_argument(const std::string name)stan::gm::singleton_argument< T >inline
split_arg(const std::string &arg, std::string &name, std::string &value)stan::gm::argumentinlinestatic
value()stan::gm::singleton_argument< T >inline
~argument()stan::gm::argumentinlinevirtual
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1gm_1_1arg__thin.html b/doc/api/html/classstan_1_1gm_1_1arg__thin.html new file mode 100644 index 00000000000..853e28e17df --- /dev/null +++ b/doc/api/html/classstan_1_1gm_1_1arg__thin.html @@ -0,0 +1,255 @@ + + + + + +Stan: stan::gm::arg_thin Class Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::gm::arg_thin Class Reference
+
+
+ +

#include <arg_thin.hpp>

+
+Inheritance diagram for stan::gm::arg_thin:
+
+
+ + +stan::gm::singleton_argument< T > +stan::gm::valued_argument +stan::gm::argument + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 arg_thin ()
 
bool is_valid (int value)
 
- Public Member Functions inherited from stan::gm::singleton_argument< T >
 singleton_argument ()
 
 singleton_argument (const std::string name)
 
bool parse_args (std::vector< std::string > &args, std::ostream *out, std::ostream *err, bool &help_flag)
 
virtual void probe_args (argument *base_arg, std::stringstream &s)
 
void find_arg (std::string name, std::string prefix, std::vector< std::string > &valid_paths)
 
value ()
 
bool set_value (const T &value)
 
std::string print_value ()
 
std::string print_valid ()
 
bool is_default ()
 
- Public Member Functions inherited from stan::gm::valued_argument
virtual void print (std::ostream *s, const int depth, const std::string prefix)
 
virtual void print_help (std::ostream *s, const int depth, const bool recurse=false)
 
- Public Member Functions inherited from stan::gm::argument
 argument ()
 
 argument (const std::string name)
 
virtual ~argument ()
 
std::string name () const
 
std::string description () const
 
virtual argumentarg (const std::string name)
 
int compute_indent (const int depth)
 
+ + + + + + + + + + + + + + + + + + + + +

+Additional Inherited Members

- Static Public Member Functions inherited from stan::gm::argument
static void split_arg (const std::string &arg, std::string &name, std::string &value)
 
- Protected Member Functions inherited from stan::gm::singleton_argument< T >
virtual bool is_valid (T value)
 
- Protected Attributes inherited from stan::gm::singleton_argument< T >
std::string _validity
 
_value
 
_default_value
 
bool _constrained
 
_good_value
 
_bad_value
 
+

Detailed Description

+
+

Definition at line 10 of file arg_thin.hpp.

+

Constructor & Destructor Documentation

+ +
+
+ + + + + +
+ + + + + + + +
stan::gm::arg_thin::arg_thin ()
+
+inline
+
+ +

Definition at line 14 of file arg_thin.hpp.

+ +
+
+

Member Function Documentation

+ +
+
+ + + + + +
+ + + + + + + + +
bool stan::gm::arg_thin::is_valid (int value)
+
+inline
+
+ +

Definition at line 26 of file arg_thin.hpp.

+ +
+
+
The documentation for this class was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1gm_1_1arg__thin.png b/doc/api/html/classstan_1_1gm_1_1arg__thin.png new file mode 100644 index 0000000000000000000000000000000000000000..28d11347e4ba1b1c61e5f3fe49f67191e0b7e2f6 GIT binary patch literal 1411 zcmaKsc{G%39LHZuTqSWhWExAoN+Zg?UCJ_JCUKBywOyh##y+8>Qe4SsdJ8whIGWKM zG?YC|4P_?gj-AnPsmryEC6S44{04_75cEkytT zlyF!VZ#Z|u&QaI^M^?mzF*s>@9`Ql1udl=9)a(b+?G_4LeRU3pBX@IH2OcWKd3ziM z;HEFu-|k}y0CK807e}82nYjWnREFAy(a^ysuDd#9J@9>bF37Z(+S^zO*~=@s zMv&doh~cYdpyf)|82E}?0{go1{x_ln$`ppM{-=9O4^GUl)T@@HsaGT8Z|hH^BSQQ{ z?}O?JwT$cwweZc!Y}4i15BI$&eO;GaNo63L%j@t8_9-Y!=Hhv6M+S-^a~*LEp5!=4 z%R#e*(Pbp+Be;qE2@7qt4iMxTS5;`@_Zr~rIxb;*PA5$w3j(qt{R^SE7Gb3aB;EM^ zG@+&$Cfqx~M|Ew$*(ASv%p|WT3UjwB@bK97MAnAKSqPayE*S_P!vM9>yMUp3m8-;I z1&(FJ#z2IX>|^rZrmsrUO}It6hkFiv;lw3_ZI&A36p-y2KgAsT+(~Xx+Zi5kl(V|W zN?N@y;E#N>utQ6_O6__%KgaTnywz*+ZAiHc2PVd?FNmg#FRZ4Jq%mlo^2N1~kN67H zUz@?{bVJN4UgMLWG4p=uR7_ysK0?(@I6A%_L`EBl2lAhWR*$=x1P+Z~zELAQNB7#hBvE*AY5|RI>q}|x)TlJZ-zQ3h+h{ z#WLbfM;0H=(y-7Fgj#`Nyw)#d>!WM1-u$^JN#;t38)R&vBME&TdE?Wdoh^F-oVG1g zh(9O>+f*Y!983#WDLA7RoViQpo#Br_T97rJ7i?bqHgk7T^F6NF`&06P$bS(0Kfntr z!I{pE_ZZir;GM|`97NQj>*6Y&ARwJ46?bUG{2HwzY7`5ho<%NK>mgE0EMVB9-(mNz zF4QcD%C_{~%F%w9kmzaSY-3E?Z@;FL-K|=Zj%3W--5oHw#akLD6_St5&i?LaVQFT* z*t4meV1&qcC^C57x})-x6H;HfO+a=X>Kk`+w0kih{dB6KD7v&NLhuU#gC3|U69p}k zb0(OWew2tYr%Ch(395)kRi#8+y&(G7?$ znhFOwujyXAK56L|aIh%j1fNZL*3OTl)->7V5Wv*1oia@vC3*-etd+0$gIZzrOg~C8 z+%WM}ycj<+Xiv{4wZ_!(vauGA7|2nKY(i?|$=uqc-}=qy#mtj*OK}HTwkzn>x%ezC z`iw7$oELjWU+m2~Evs%=y18Y={P^?A0oIj269;5=#A>f1Vz2P0lBhz%aH;$|y=N;~ u9l5I~?*z2jULECqd)KdL&MN3-HeadDN_x`iF-wPkOaO=Wa4B~RO!*5))u`(L literal 0 HcmV?d00001 diff --git a/doc/api/html/classstan_1_1gm_1_1arg__tolerance-members.html b/doc/api/html/classstan_1_1gm_1_1arg__tolerance-members.html new file mode 100644 index 00000000000..48361d69182 --- /dev/null +++ b/doc/api/html/classstan_1_1gm_1_1arg__tolerance-members.html @@ -0,0 +1,147 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::gm::arg_tolerance Member List
+
+
+ +

This is the complete list of members for stan::gm::arg_tolerance, including all inherited members.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
_bad_valuestan::gm::singleton_argument< T >protected
_constrainedstan::gm::singleton_argument< T >protected
_defaultstan::gm::valued_argumentprotected
_default_valuestan::gm::singleton_argument< T >protected
_descriptionstan::gm::argumentprotected
_good_valuestan::gm::singleton_argument< T >protected
_namestan::gm::argumentprotected
_validitystan::gm::singleton_argument< T >protected
_valuestan::gm::singleton_argument< T >protected
_value_typestan::gm::valued_argumentprotected
arg(const std::string name)stan::gm::argumentinlinevirtual
arg_tolerance(const char *name, const char *desc, const char *def_str, double def)stan::gm::arg_toleranceinline
argument()stan::gm::argumentinline
argument(const std::string name)stan::gm::argumentinline
compute_indent(const int depth)stan::gm::argumentinline
description() const stan::gm::argumentinline
find_arg(std::string name, std::string prefix, std::vector< std::string > &valid_paths)stan::gm::singleton_argument< T >inlinevirtual
help_widthstan::gm::argumentprotected
indent_widthstan::gm::argumentprotected
is_default()stan::gm::singleton_argument< T >inlinevirtual
is_valid(double value)stan::gm::arg_toleranceinline
stan::gm::singleton_argument::is_valid(T value)stan::gm::singleton_argument< T >inlineprotectedvirtual
name() const stan::gm::argumentinline
parse_args(std::vector< std::string > &args, std::ostream *out, std::ostream *err, bool &help_flag)stan::gm::singleton_argument< T >inlinevirtual
print(std::ostream *s, const int depth, const std::string prefix)stan::gm::valued_argumentinlinevirtual
print_help(std::ostream *s, const int depth, const bool recurse=false)stan::gm::valued_argumentinlinevirtual
print_valid()stan::gm::singleton_argument< T >inlinevirtual
print_value()stan::gm::singleton_argument< T >inlinevirtual
probe_args(argument *base_arg, std::stringstream &s)stan::gm::singleton_argument< T >inlinevirtual
set_value(const T &value)stan::gm::singleton_argument< T >inline
singleton_argument()stan::gm::singleton_argument< T >inline
singleton_argument(const std::string name)stan::gm::singleton_argument< T >inline
split_arg(const std::string &arg, std::string &name, std::string &value)stan::gm::argumentinlinestatic
value()stan::gm::singleton_argument< T >inline
~argument()stan::gm::argumentinlinevirtual
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1gm_1_1arg__tolerance.html b/doc/api/html/classstan_1_1gm_1_1arg__tolerance.html new file mode 100644 index 00000000000..1ce84b37fb8 --- /dev/null +++ b/doc/api/html/classstan_1_1gm_1_1arg__tolerance.html @@ -0,0 +1,278 @@ + + + + + +Stan: stan::gm::arg_tolerance Class Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::gm::arg_tolerance Class Reference
+
+
+ +

#include <arg_tolerance.hpp>

+
+Inheritance diagram for stan::gm::arg_tolerance:
+
+
+ + +stan::gm::singleton_argument< T > +stan::gm::valued_argument +stan::gm::argument + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 arg_tolerance (const char *name, const char *desc, const char *def_str, double def)
 
bool is_valid (double value)
 
- Public Member Functions inherited from stan::gm::singleton_argument< T >
 singleton_argument ()
 
 singleton_argument (const std::string name)
 
bool parse_args (std::vector< std::string > &args, std::ostream *out, std::ostream *err, bool &help_flag)
 
virtual void probe_args (argument *base_arg, std::stringstream &s)
 
void find_arg (std::string name, std::string prefix, std::vector< std::string > &valid_paths)
 
value ()
 
bool set_value (const T &value)
 
std::string print_value ()
 
std::string print_valid ()
 
bool is_default ()
 
- Public Member Functions inherited from stan::gm::valued_argument
virtual void print (std::ostream *s, const int depth, const std::string prefix)
 
virtual void print_help (std::ostream *s, const int depth, const bool recurse=false)
 
- Public Member Functions inherited from stan::gm::argument
 argument ()
 
 argument (const std::string name)
 
virtual ~argument ()
 
std::string name () const
 
std::string description () const
 
virtual argumentarg (const std::string name)
 
int compute_indent (const int depth)
 
+ + + + + + + + + + + + + + + + + + + + +

+Additional Inherited Members

- Static Public Member Functions inherited from stan::gm::argument
static void split_arg (const std::string &arg, std::string &name, std::string &value)
 
- Protected Member Functions inherited from stan::gm::singleton_argument< T >
virtual bool is_valid (T value)
 
- Protected Attributes inherited from stan::gm::singleton_argument< T >
std::string _validity
 
_value
 
_default_value
 
bool _constrained
 
_good_value
 
_bad_value
 
+

Detailed Description

+
+

Definition at line 10 of file arg_tolerance.hpp.

+

Constructor & Destructor Documentation

+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
stan::gm::arg_tolerance::arg_tolerance (const char * name,
const char * desc,
const char * def_str,
double def 
)
+
+inline
+
+ +

Definition at line 14 of file arg_tolerance.hpp.

+ +
+
+

Member Function Documentation

+ +
+
+ + + + + +
+ + + + + + + + +
bool stan::gm::arg_tolerance::is_valid (double value)
+
+inline
+
+ +

Definition at line 26 of file arg_tolerance.hpp.

+ +
+
+
The documentation for this class was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1gm_1_1arg__tolerance.png b/doc/api/html/classstan_1_1gm_1_1arg__tolerance.png new file mode 100644 index 0000000000000000000000000000000000000000..4f0afac7588d300d43a4ad6b94adc2d3aea875f7 GIT binary patch literal 1490 zcmchXeKga19LKjxYfO z8%5Ok%|nGevvQ;?4@Z7v4b>W2=yz$DxVyhPr~mK$=YGz4eczw&Iq!eI@ALV7vVFYW z*6Ew*V=$O?9_}s_R8=Svy_M)mVj0+?V(fDqaMfzHXge{fW^$ffL%VNCBodu$xjA~( zOQd-FVo=l9f;#~_3`Qr+!{soLjGfB=m|JDN0V8~5{Ym@GY8xY6aPu`gH57`i67TJ` zTYGWq<*H2`ph{C<^vzKy=1PQ_RPp5g1n=YlInj@m$+1ML z-G>(CplRR;h`+R)|FF7t!#r?3;6W{<41^CXbOx6LIn9l?o7#EHU)B(Doq^=%qCmeQ zWppro-efl}S)&gzkop8ro!;?sX}WO93v%5rj!TvwQL|cFA-ym#gKGaF~v zzOyNgUcxlPj|nw(Tj2Pt*xurHLKpqk@jkUo6LTQo5k_(23Ln-3n?6Xp6Y$4|jwf%m zz1|Jx*gkvB_uX^LFOnO&40YCqlkK_GQ)KgmpD}mJm>ssQoi&xV9y%4z8h`*yov<>A~mx_ znwuSQxz|&foli?g$hh6wVh^#{`%S}&C^$hV@h=_TRtQzhTO%pNyfO)tbTG-iCGiG( zatS28&r>~0hX#nTOtBGcMW*q$Zr%nGg`WDk?V;?1rpTWsC=eOe*MwQapR znARSh0)xeq%|Q+EQ*LUyEGNbdI+=l$Spe98|3Hho=PosNO@ZzaTmj)LBb4P{YCv0> zx+>FJLaPw<_hb`?*-y^IKedQ$Q0gw&g|naG!c>tL5DnRBv&179FtyytjaTh>7}NJB zbCBotG8{j?R~Q+AG+`yaO%)ASPjNzCH0re`_eVDtHO$*_u*l|5JCHnv71+Tu0IN`^ zKa-9@HdpfRD#~P3@}aKBkY87=SRb*!EfaI;50a8V^J(;#T)a;et-5vPz3~nq9i4tr z47u9|3FwmQHzk&iF2(7ru9GTCLP$rk^p?U!hxW0TGfKmih;4{J+%c45b i&FNj5U3dE(wAh8k94;=2VS_GUjEAeYOU04UOaB10$K%NW literal 0 HcmV?d00001 diff --git a/doc/api/html/classstan_1_1gm_1_1arg__unit__e-members.html b/doc/api/html/classstan_1_1gm_1_1arg__unit__e-members.html new file mode 100644 index 00000000000..ed94a731e75 --- /dev/null +++ b/doc/api/html/classstan_1_1gm_1_1arg__unit__e-members.html @@ -0,0 +1,133 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::gm::arg_unit_e Member List
+
+
+ +

This is the complete list of members for stan::gm::arg_unit_e, including all inherited members.

+ + + + + + + + + + + + + + + + + + + + + + +
_descriptionstan::gm::argumentprotected
_is_presentstan::gm::unvalued_argumentprotected
_namestan::gm::argumentprotected
arg(const std::string name)stan::gm::argumentinlinevirtual
arg_unit_e()stan::gm::arg_unit_einline
argument()stan::gm::argumentinline
argument(const std::string name)stan::gm::argumentinline
compute_indent(const int depth)stan::gm::argumentinline
description() const stan::gm::argumentinline
find_arg(std::string name, std::string prefix, std::vector< std::string > &valid_paths)stan::gm::argumentinlinevirtual
help_widthstan::gm::argumentprotected
indent_widthstan::gm::argumentprotected
is_present()stan::gm::unvalued_argumentinline
name() const stan::gm::argumentinline
parse_args(std::vector< std::string > &args, std::ostream *out, std::ostream *err, bool &help_flag)stan::gm::unvalued_argumentinlinevirtual
print(std::ostream *s, const int depth, const std::string prefix)stan::gm::unvalued_argumentinlinevirtual
print_help(std::ostream *s, const int depth, const bool recurse=false)stan::gm::unvalued_argumentinlinevirtual
probe_args(argument *base_arg, std::stringstream &s)stan::gm::argumentinlinevirtual
split_arg(const std::string &arg, std::string &name, std::string &value)stan::gm::argumentinlinestatic
unvalued_argument()stan::gm::unvalued_argumentinline
~argument()stan::gm::argumentinlinevirtual
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1gm_1_1arg__unit__e.html b/doc/api/html/classstan_1_1gm_1_1arg__unit__e.html new file mode 100644 index 00000000000..b60682f22d4 --- /dev/null +++ b/doc/api/html/classstan_1_1gm_1_1arg__unit__e.html @@ -0,0 +1,201 @@ + + + + + +Stan: stan::gm::arg_unit_e Class Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::gm::arg_unit_e Class Reference
+
+
+ +

#include <arg_unit_e.hpp>

+
+Inheritance diagram for stan::gm::arg_unit_e:
+
+
+ + +stan::gm::unvalued_argument +stan::gm::argument + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 arg_unit_e ()
 
- Public Member Functions inherited from stan::gm::unvalued_argument
 unvalued_argument ()
 
void print (std::ostream *s, const int depth, const std::string prefix)
 
void print_help (std::ostream *s, const int depth, const bool recurse=false)
 
bool parse_args (std::vector< std::string > &args, std::ostream *out, std::ostream *err, bool &help_flag)
 
bool is_present ()
 
- Public Member Functions inherited from stan::gm::argument
 argument ()
 
 argument (const std::string name)
 
virtual ~argument ()
 
std::string name () const
 
std::string description () const
 
virtual void probe_args (argument *base_arg, std::stringstream &s)
 
virtual void find_arg (std::string name, std::string prefix, std::vector< std::string > &valid_paths)
 
virtual argumentarg (const std::string name)
 
int compute_indent (const int depth)
 
+ + + + + + + +

+Additional Inherited Members

- Static Public Member Functions inherited from stan::gm::argument
static void split_arg (const std::string &arg, std::string &name, std::string &value)
 
- Protected Attributes inherited from stan::gm::unvalued_argument
bool _is_present
 
+

Detailed Description

+
+

Definition at line 10 of file arg_unit_e.hpp.

+

Constructor & Destructor Documentation

+ +
+
+ + + + + +
+ + + + + + + +
stan::gm::arg_unit_e::arg_unit_e ()
+
+inline
+
+ +

Definition at line 14 of file arg_unit_e.hpp.

+ +
+
+
The documentation for this class was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1gm_1_1arg__unit__e.png b/doc/api/html/classstan_1_1gm_1_1arg__unit__e.png new file mode 100644 index 0000000000000000000000000000000000000000..7ea7f545255ccb79451c829fe086f61db2f27a24 GIT binary patch literal 996 zcmeAS@N?(olHy`uVBq!ia0vp^>wvg}gBeJAsw;d4QW60^A+G=b{|7Q(y!l$%e`o@b z1;z&s9ANFdBM;Cdfovn#Eg){!BKA&^EQO9$!z^+M8Twi!i5}*G<&9i8+_V52IXD>@x z8Mo}p`t_xsEREx5UA!*;xnQnIW9}v)Jx}#7FVFp)ZLM~)rt4DDCbw$=n{T{Y&#m%u zO5WYCrKWnNHzH=G^4>mhcZ15@&yI#u&Srgk8B*S7bJg_ZJKHRG>7r$`RdOwE#ae57 zF0YB)Egc(t`gm)C*N^h9g)$GWTW02G`bWs-Mjr@Fc+2zE6KL%0x~uE*OZ_kJbG#nX zrt)@2--IP{?{3_E&3FI1w1TJjoe-W$U!+^ssZ z7(Bb054+f(h?~Z@diJu3A^Mm9yw09mbMDM^v!gaq|I9c4NoDuyGJR_V@so2)uG{8+JN9nz&3kkEWB-*^t*-en zr~P#K(G7d{q40*qNd%+tGT8u&P=JUhHS^k&4Gk8!(BSI@3r z_q*iz3I5X4N)6jfWKE-auJ7W!acS#rhUGPZyQS|oTisc4>sIc)3CV_2&KVpx|M#us z>cy?$GtO-|X3qZg+Bt>-uk*eP?;f=8x}Lw`+x2qwmnmEaK3%@McVFOkt^=axBFqQ! kVTot!@g-9(G5lecXmQKFs%`fLm?arJUHx3vIVCg!0Msq=3;+NC literal 0 HcmV?d00001 diff --git a/doc/api/html/classstan_1_1gm_1_1argument-members.html b/doc/api/html/classstan_1_1gm_1_1argument-members.html new file mode 100644 index 00000000000..dfef656ced7 --- /dev/null +++ b/doc/api/html/classstan_1_1gm_1_1argument-members.html @@ -0,0 +1,129 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::gm::argument Member List
+
+
+ +

This is the complete list of members for stan::gm::argument, including all inherited members.

+ + + + + + + + + + + + + + + + + + +
_descriptionstan::gm::argumentprotected
_namestan::gm::argumentprotected
arg(const std::string name)stan::gm::argumentinlinevirtual
argument()stan::gm::argumentinline
argument(const std::string name)stan::gm::argumentinline
compute_indent(const int depth)stan::gm::argumentinline
description() const stan::gm::argumentinline
find_arg(std::string name, std::string prefix, std::vector< std::string > &valid_paths)stan::gm::argumentinlinevirtual
help_widthstan::gm::argumentprotected
indent_widthstan::gm::argumentprotected
name() const stan::gm::argumentinline
parse_args(std::vector< std::string > &args, std::ostream *out, std::ostream *err, bool &help_flag)stan::gm::argumentinlinevirtual
print(std::ostream *s, const int depth, const std::string prefix)=0stan::gm::argumentpure virtual
print_help(std::ostream *s, const int depth, const bool recurse)=0stan::gm::argumentpure virtual
probe_args(argument *base_arg, std::stringstream &s)stan::gm::argumentinlinevirtual
split_arg(const std::string &arg, std::string &name, std::string &value)stan::gm::argumentinlinestatic
~argument()stan::gm::argumentinlinevirtual
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1gm_1_1argument.html b/doc/api/html/classstan_1_1gm_1_1argument.html new file mode 100644 index 00000000000..8faa24523a1 --- /dev/null +++ b/doc/api/html/classstan_1_1gm_1_1argument.html @@ -0,0 +1,728 @@ + + + + + +Stan: stan::gm::argument Class Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::gm::argument Class Referenceabstract
+
+
+ +

#include <argument.hpp>

+
+Inheritance diagram for stan::gm::argument:
+
+
+ + +stan::gm::categorical_argument +stan::gm::unvalued_argument +stan::gm::valued_argument +stan::gm::arg_adapt +stan::gm::arg_bfgs +stan::gm::arg_data +stan::gm::arg_diagnose +stan::gm::arg_hmc +stan::gm::arg_nesterov +stan::gm::arg_newton +stan::gm::arg_nuts +stan::gm::arg_optimize +stan::gm::arg_output +stan::gm::arg_random +stan::gm::arg_rwm +stan::gm::arg_sample +stan::gm::arg_static +stan::gm::arg_test_gradient +stan::gm::arg_dense_e +stan::gm::arg_diag_e +stan::gm::arg_fail +stan::gm::arg_fixed_param +stan::gm::arg_unit_e +stan::gm::list_argument +stan::gm::singleton_argument< T > + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 argument ()
 
 argument (const std::string name)
 
virtual ~argument ()
 
std::string name () const
 
std::string description () const
 
virtual void print (std::ostream *s, const int depth, const std::string prefix)=0
 
virtual void print_help (std::ostream *s, const int depth, const bool recurse)=0
 
virtual bool parse_args (std::vector< std::string > &args, std::ostream *out, std::ostream *err, bool &help_flag)
 
virtual void probe_args (argument *base_arg, std::stringstream &s)
 
virtual void find_arg (std::string name, std::string prefix, std::vector< std::string > &valid_paths)
 
virtual argumentarg (const std::string name)
 
int compute_indent (const int depth)
 
+ + + +

+Static Public Member Functions

static void split_arg (const std::string &arg, std::string &name, std::string &value)
 
+ + + + + + + + + +

+Protected Attributes

std::string _name
 
std::string _description
 
int indent_width
 
int help_width
 
+

Detailed Description

+
+

Definition at line 12 of file argument.hpp.

+

Constructor & Destructor Documentation

+ +
+
+ + + + + +
+ + + + + + + +
stan::gm::argument::argument ()
+
+inline
+
+ +

Definition at line 15 of file argument.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
stan::gm::argument::argument (const std::string name)
+
+inline
+
+ +

Definition at line 19 of file argument.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
virtual stan::gm::argument::~argument ()
+
+inlinevirtual
+
+ +

Definition at line 24 of file argument.hpp.

+ +
+
+

Member Function Documentation

+ +
+
+ + + + + +
+ + + + + + + + +
virtual argument* stan::gm::argument::arg (const std::string name)
+
+inlinevirtual
+
+ +

Reimplemented in stan::gm::list_argument, and stan::gm::categorical_argument.

+ +

Definition at line 67 of file argument.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
int stan::gm::argument::compute_indent (const int depth)
+
+inline
+
+ +

Definition at line 71 of file argument.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
std::string stan::gm::argument::description () const
+
+inline
+
+ +

Definition at line 30 of file argument.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
virtual void stan::gm::argument::find_arg (std::string name,
std::string prefix,
std::vector< std::string > & valid_paths 
)
+
+inlinevirtual
+
+ +

Reimplemented in stan::gm::categorical_argument, stan::gm::list_argument, and stan::gm::singleton_argument< T >.

+ +

Definition at line 46 of file argument.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
std::string stan::gm::argument::name () const
+
+inline
+
+ +

Definition at line 26 of file argument.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
virtual bool stan::gm::argument::parse_args (std::vector< std::string > & args,
std::ostream * out,
std::ostream * err,
bool & help_flag 
)
+
+inlinevirtual
+
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
virtual void stan::gm::argument::print (std::ostream * s,
const int depth,
const std::string prefix 
)
+
+pure virtual
+
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
virtual void stan::gm::argument::print_help (std::ostream * s,
const int depth,
const bool recurse 
)
+
+pure virtual
+
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
virtual void stan::gm::argument::probe_args (argumentbase_arg,
std::stringstream & s 
)
+
+inlinevirtual
+
+ +

Reimplemented in stan::gm::categorical_argument, stan::gm::list_argument, and stan::gm::singleton_argument< T >.

+ +

Definition at line 44 of file argument.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
static void stan::gm::argument::split_arg (const std::string & arg,
std::string & name,
std::string & value 
)
+
+inlinestatic
+
+ +

Definition at line 54 of file argument.hpp.

+ +
+
+

Member Data Documentation

+ +
+
+ + + + + +
+ + + + +
std::string stan::gm::argument::_description
+
+protected
+
+ +

Definition at line 77 of file argument.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + +
std::string stan::gm::argument::_name
+
+protected
+
+ +

Definition at line 76 of file argument.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + +
int stan::gm::argument::help_width
+
+protected
+
+ +

Definition at line 80 of file argument.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + +
int stan::gm::argument::indent_width
+
+protected
+
+ +

Definition at line 79 of file argument.hpp.

+ +
+
+
The documentation for this class was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1gm_1_1argument.png b/doc/api/html/classstan_1_1gm_1_1argument.png new file mode 100644 index 0000000000000000000000000000000000000000..5b4e9ea304e1f3388d853e416d28dfd3f76c5a7b GIT binary patch literal 13621 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 + + + + +Stan: Member List + + + + + + + + + +

+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::gm::argument_parser Member List
+
+
+ +

This is the complete list of members for stan::gm::argument_parser, including all inherited members.

+ + + + + + + + + + + +
_argumentsstan::gm::argument_parserprotected
_help_flagstan::gm::argument_parserprotected
_method_flagstan::gm::argument_parserprotected
arg(std::string name)stan::gm::argument_parserinline
argument_parser(std::vector< argument * > &valid_args)stan::gm::argument_parserinline
help_printed()stan::gm::argument_parserinline
parse_args(int argc, const char *argv[], std::ostream *out=0, std::ostream *err=0)stan::gm::argument_parserinline
print(std::ostream *s, const std::string prefix="")stan::gm::argument_parserinline
print_help(std::ostream *s, bool recurse)stan::gm::argument_parserinline
print_usage(std::ostream *s, const char *executable)stan::gm::argument_parserinline
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1gm_1_1argument__parser.html b/doc/api/html/classstan_1_1gm_1_1argument__parser.html new file mode 100644 index 00000000000..ee0beabf34c --- /dev/null +++ b/doc/api/html/classstan_1_1gm_1_1argument__parser.html @@ -0,0 +1,450 @@ + + + + + +Stan: stan::gm::argument_parser Class Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::gm::argument_parser Class Reference
+
+
+ +

#include <argument_parser.hpp>

+ + + + + + + + + + + + + + + + +

+Public Member Functions

 argument_parser (std::vector< argument * > &valid_args)
 
int parse_args (int argc, const char *argv[], std::ostream *out=0, std::ostream *err=0)
 
void print (std::ostream *s, const std::string prefix="")
 
void print_help (std::ostream *s, bool recurse)
 
void print_usage (std::ostream *s, const char *executable)
 
argumentarg (std::string name)
 
bool help_printed ()
 
+ + + + + + + +

+Protected Attributes

std::vector< argument * > & _arguments
 
bool _help_flag
 
bool _method_flag
 
+

Detailed Description

+
+

Definition at line 17 of file argument_parser.hpp.

+

Constructor & Destructor Documentation

+ +
+
+ + + + + +
+ + + + + + + + +
stan::gm::argument_parser::argument_parser (std::vector< argument * > & valid_args)
+
+inline
+
+ +

Definition at line 21 of file argument_parser.hpp.

+ +
+
+

Member Function Documentation

+ +
+
+ + + + + +
+ + + + + + + + +
argument* stan::gm::argument_parser::arg (std::string name)
+
+inline
+
+ +

Definition at line 207 of file argument_parser.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
bool stan::gm::argument_parser::help_printed ()
+
+inline
+
+ +

Definition at line 215 of file argument_parser.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
int stan::gm::argument_parser::parse_args (int argc,
const char * argv[],
std::ostream * out = 0,
std::ostream * err = 0 
)
+
+inline
+
+ +

Definition at line 28 of file argument_parser.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
void stan::gm::argument_parser::print (std::ostream * s,
const std::string prefix = "" 
)
+
+inline
+
+ +

Definition at line 138 of file argument_parser.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
void stan::gm::argument_parser::print_help (std::ostream * s,
bool recurse 
)
+
+inline
+
+ +

Definition at line 148 of file argument_parser.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
void stan::gm::argument_parser::print_usage (std::ostream * s,
const char * executable 
)
+
+inline
+
+ +

Definition at line 157 of file argument_parser.hpp.

+ +
+
+

Member Data Documentation

+ +
+
+ + + + + +
+ + + + +
std::vector<argument*>& stan::gm::argument_parser::_arguments
+
+protected
+
+ +

Definition at line 221 of file argument_parser.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + +
bool stan::gm::argument_parser::_help_flag
+
+protected
+
+ +

Definition at line 227 of file argument_parser.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + +
bool stan::gm::argument_parser::_method_flag
+
+protected
+
+ +

Definition at line 228 of file argument_parser.hpp.

+ +
+
+
The documentation for this class was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1gm_1_1argument__probe-members.html b/doc/api/html/classstan_1_1gm_1_1argument__probe-members.html new file mode 100644 index 00000000000..a10db467544 --- /dev/null +++ b/doc/api/html/classstan_1_1gm_1_1argument__probe-members.html @@ -0,0 +1,115 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::gm::argument_probe Member List
+
+
+ +

This is the complete list of members for stan::gm::argument_probe, including all inherited members.

+ + + + +
_argumentsstan::gm::argument_probeprotected
argument_probe(std::vector< argument * > &valid_args)stan::gm::argument_probeinline
probe_args(std::stringstream &s)stan::gm::argument_probeinline
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1gm_1_1argument__probe.html b/doc/api/html/classstan_1_1gm_1_1argument__probe.html new file mode 100644 index 00000000000..6c77590ce87 --- /dev/null +++ b/doc/api/html/classstan_1_1gm_1_1argument__probe.html @@ -0,0 +1,211 @@ + + + + + +Stan: stan::gm::argument_probe Class Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::gm::argument_probe Class Reference
+
+
+ +

#include <argument_probe.hpp>

+ + + + + + +

+Public Member Functions

 argument_probe (std::vector< argument * > &valid_args)
 
void probe_args (std::stringstream &s)
 
+ + + +

+Protected Attributes

std::vector< argument * > & _arguments
 
+

Detailed Description

+
+

Definition at line 14 of file argument_probe.hpp.

+

Constructor & Destructor Documentation

+ +
+
+ + + + + +
+ + + + + + + + +
stan::gm::argument_probe::argument_probe (std::vector< argument * > & valid_args)
+
+inline
+
+ +

Definition at line 18 of file argument_probe.hpp.

+ +
+
+

Member Function Documentation

+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::argument_probe::probe_args (std::stringstream & s)
+
+inline
+
+ +

Definition at line 21 of file argument_probe.hpp.

+ +
+
+

Member Data Documentation

+ +
+
+ + + + + +
+ + + + +
std::vector<argument*>& stan::gm::argument_probe::_arguments
+
+protected
+
+ +

Definition at line 31 of file argument_probe.hpp.

+ +
+
+
The documentation for this class was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1gm_1_1categorical__argument-members.html b/doc/api/html/classstan_1_1gm_1_1categorical__argument-members.html new file mode 100644 index 00000000000..f4ac5ec3ee7 --- /dev/null +++ b/doc/api/html/classstan_1_1gm_1_1categorical__argument-members.html @@ -0,0 +1,132 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::gm::categorical_argument Member List
+
+
+ +

This is the complete list of members for stan::gm::categorical_argument, including all inherited members.

+ + + + + + + + + + + + + + + + + + + + + +
_descriptionstan::gm::argumentprotected
_namestan::gm::argumentprotected
_subargumentsstan::gm::categorical_argumentprotected
arg(const std::string name)stan::gm::categorical_argumentinlinevirtual
argument()stan::gm::argumentinline
argument(const std::string name)stan::gm::argumentinline
compute_indent(const int depth)stan::gm::argumentinline
description() const stan::gm::argumentinline
find_arg(std::string name, std::string prefix, std::vector< std::string > &valid_paths)stan::gm::categorical_argumentinlinevirtual
help_widthstan::gm::argumentprotected
indent_widthstan::gm::argumentprotected
name() const stan::gm::argumentinline
parse_args(std::vector< std::string > &args, std::ostream *out, std::ostream *err, bool &help_flag)stan::gm::categorical_argumentinlinevirtual
print(std::ostream *s, const int depth, const std::string prefix)stan::gm::categorical_argumentinlinevirtual
print_help(std::ostream *s, const int depth, const bool recurse)stan::gm::categorical_argumentinlinevirtual
probe_args(argument *base_arg, std::stringstream &s)stan::gm::categorical_argumentinlinevirtual
split_arg(const std::string &arg, std::string &name, std::string &value)stan::gm::argumentinlinestatic
subarguments()stan::gm::categorical_argumentinline
~argument()stan::gm::argumentinlinevirtual
~categorical_argument()stan::gm::categorical_argumentinlinevirtual
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1gm_1_1categorical__argument.html b/doc/api/html/classstan_1_1gm_1_1categorical__argument.html new file mode 100644 index 00000000000..84f5e85d91d --- /dev/null +++ b/doc/api/html/classstan_1_1gm_1_1categorical__argument.html @@ -0,0 +1,521 @@ + + + + + +Stan: stan::gm::categorical_argument Class Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::gm::categorical_argument Class Reference
+
+
+ +

#include <categorical_argument.hpp>

+
+Inheritance diagram for stan::gm::categorical_argument:
+
+
+ + +stan::gm::argument +stan::gm::arg_adapt +stan::gm::arg_bfgs +stan::gm::arg_data +stan::gm::arg_diagnose +stan::gm::arg_hmc +stan::gm::arg_nesterov +stan::gm::arg_newton +stan::gm::arg_nuts +stan::gm::arg_optimize +stan::gm::arg_output +stan::gm::arg_random +stan::gm::arg_rwm +stan::gm::arg_sample +stan::gm::arg_static +stan::gm::arg_test_gradient + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

virtual ~categorical_argument ()
 
void print (std::ostream *s, const int depth, const std::string prefix)
 
void print_help (std::ostream *s, const int depth, const bool recurse)
 
bool parse_args (std::vector< std::string > &args, std::ostream *out, std::ostream *err, bool &help_flag)
 
virtual void probe_args (argument *base_arg, std::stringstream &s)
 
void find_arg (std::string name, std::string prefix, std::vector< std::string > &valid_paths)
 
std::vector< argument * > & subarguments ()
 
argumentarg (const std::string name)
 
- Public Member Functions inherited from stan::gm::argument
 argument ()
 
 argument (const std::string name)
 
virtual ~argument ()
 
std::string name () const
 
std::string description () const
 
int compute_indent (const int depth)
 
+ + + + + + + + + + + + +

+Protected Attributes

std::vector< argument * > _subarguments
 
- Protected Attributes inherited from stan::gm::argument
std::string _name
 
std::string _description
 
int indent_width
 
int help_width
 
+ + + + +

+Additional Inherited Members

- Static Public Member Functions inherited from stan::gm::argument
static void split_arg (const std::string &arg, std::string &name, std::string &value)
 
+

Detailed Description

+
+

Definition at line 11 of file categorical_argument.hpp.

+

Constructor & Destructor Documentation

+ +
+
+ + + + + +
+ + + + + + + +
virtual stan::gm::categorical_argument::~categorical_argument ()
+
+inlinevirtual
+
+ +

Definition at line 15 of file categorical_argument.hpp.

+ +
+
+

Member Function Documentation

+ +
+
+ + + + + +
+ + + + + + + + +
argument* stan::gm::categorical_argument::arg (const std::string name)
+
+inlinevirtual
+
+ +

Reimplemented from stan::gm::argument.

+ +

Definition at line 143 of file categorical_argument.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
void stan::gm::categorical_argument::find_arg (std::string name,
std::string prefix,
std::vector< std::string > & valid_paths 
)
+
+inlinevirtual
+
+ +

Reimplemented from stan::gm::argument.

+ +

Definition at line 126 of file categorical_argument.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
bool stan::gm::categorical_argument::parse_args (std::vector< std::string > & args,
std::ostream * out,
std::ostream * err,
bool & help_flag 
)
+
+inlinevirtual
+
+ +

Reimplemented from stan::gm::argument.

+ +

Definition at line 68 of file categorical_argument.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
void stan::gm::categorical_argument::print (std::ostream * s,
const int depth,
const std::string prefix 
)
+
+inlinevirtual
+
+ +

Implements stan::gm::argument.

+ +

Definition at line 24 of file categorical_argument.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
void stan::gm::categorical_argument::print_help (std::ostream * s,
const int depth,
const bool recurse 
)
+
+inlinevirtual
+
+ +

Implements stan::gm::argument.

+ +

Definition at line 35 of file categorical_argument.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
virtual void stan::gm::categorical_argument::probe_args (argumentbase_arg,
std::stringstream & s 
)
+
+inlinevirtual
+
+ +

Reimplemented from stan::gm::argument.

+ +

Definition at line 119 of file categorical_argument.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
std::vector<argument*>& stan::gm::categorical_argument::subarguments ()
+
+inline
+
+ +

Definition at line 139 of file categorical_argument.hpp.

+ +
+
+

Member Data Documentation

+ +
+
+ + + + + +
+ + + + +
std::vector<argument*> stan::gm::categorical_argument::_subarguments
+
+protected
+
+ +

Definition at line 153 of file categorical_argument.hpp.

+ +
+
+
The documentation for this class was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1gm_1_1categorical__argument.png b/doc/api/html/classstan_1_1gm_1_1categorical__argument.png new file mode 100644 index 0000000000000000000000000000000000000000..7214143dcc044f09e2fafc22ca1a7f14ddfd9f05 GIT binary patch literal 6971 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 literal 0 HcmV?d00001 diff --git a/doc/api/html/classstan_1_1gm_1_1function__signatures-members.html b/doc/api/html/classstan_1_1gm_1_1function__signatures-members.html new file mode 100644 index 00000000000..4acb46046a9 --- /dev/null +++ b/doc/api/html/classstan_1_1gm_1_1function__signatures-members.html @@ -0,0 +1,130 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::gm::function_signatures Member List
+
+
+ +

This is the complete list of members for stan::gm::function_signatures, including all inherited members.

+ + + + + + + + + + + + + + + + + + + +
add(const std::string &name, const expr_type &result_type, const std::vector< expr_type > &arg_types)stan::gm::function_signatures
add(const std::string &name, const expr_type &result_type)stan::gm::function_signatures
add(const std::string &name, const expr_type &result_type, const expr_type &arg_type)stan::gm::function_signatures
add(const std::string &name, const expr_type &result_type, const expr_type &arg_type1, const expr_type &arg_type2)stan::gm::function_signatures
add(const std::string &name, const expr_type &result_type, const expr_type &arg_type1, const expr_type &arg_type2, const expr_type &arg_type3)stan::gm::function_signatures
add(const std::string &name, const expr_type &result_type, const expr_type &arg_type1, const expr_type &arg_type2, const expr_type &arg_type3, const expr_type &arg_type4)stan::gm::function_signatures
add(const std::string &name, const expr_type &result_type, const expr_type &arg_type1, const expr_type &arg_type2, const expr_type &arg_type3, const expr_type &arg_type4, const expr_type &arg_type5)stan::gm::function_signatures
add(const std::string &name, const expr_type &result_type, const expr_type &arg_type1, const expr_type &arg_type2, const expr_type &arg_type3, const expr_type &arg_type4, const expr_type &arg_type5, const expr_type &arg_type6)stan::gm::function_signatures
add(const std::string &name, const expr_type &result_type, const expr_type &arg_type1, const expr_type &arg_type2, const expr_type &arg_type3, const expr_type &arg_type4, const expr_type &arg_type5, const expr_type &arg_type6, const expr_type &arg_type7)stan::gm::function_signatures
add_binary(const ::std::string &name)stan::gm::function_signatures
add_nullary(const ::std::string &name)stan::gm::function_signatures
add_quaternary(const ::std::string &name)stan::gm::function_signatures
add_ternary(const ::std::string &name)stan::gm::function_signatures
add_unary(const ::std::string &name)stan::gm::function_signatures
get_result_type(const std::string &name, const std::vector< expr_type > &args, std::ostream &error_msgs)stan::gm::function_signatures
instance()stan::gm::function_signaturesstatic
key_set() const stan::gm::function_signatures
num_promotions(const std::vector< expr_type > &call_args, const std::vector< expr_type > &sig_args)stan::gm::function_signatures
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1gm_1_1function__signatures.html b/doc/api/html/classstan_1_1gm_1_1function__signatures.html new file mode 100644 index 00000000000..f622083a070 --- /dev/null +++ b/doc/api/html/classstan_1_1gm_1_1function__signatures.html @@ -0,0 +1,786 @@ + + + + + +Stan: stan::gm::function_signatures Class Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::gm::function_signatures Class Reference
+
+
+ +

#include <ast.hpp>

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

void add (const std::string &name, const expr_type &result_type, const std::vector< expr_type > &arg_types)
 
void add (const std::string &name, const expr_type &result_type)
 
void add (const std::string &name, const expr_type &result_type, const expr_type &arg_type)
 
void add (const std::string &name, const expr_type &result_type, const expr_type &arg_type1, const expr_type &arg_type2)
 
void add (const std::string &name, const expr_type &result_type, const expr_type &arg_type1, const expr_type &arg_type2, const expr_type &arg_type3)
 
void add (const std::string &name, const expr_type &result_type, const expr_type &arg_type1, const expr_type &arg_type2, const expr_type &arg_type3, const expr_type &arg_type4)
 
void add (const std::string &name, const expr_type &result_type, const expr_type &arg_type1, const expr_type &arg_type2, const expr_type &arg_type3, const expr_type &arg_type4, const expr_type &arg_type5)
 
void add (const std::string &name, const expr_type &result_type, const expr_type &arg_type1, const expr_type &arg_type2, const expr_type &arg_type3, const expr_type &arg_type4, const expr_type &arg_type5, const expr_type &arg_type6)
 
void add (const std::string &name, const expr_type &result_type, const expr_type &arg_type1, const expr_type &arg_type2, const expr_type &arg_type3, const expr_type &arg_type4, const expr_type &arg_type5, const expr_type &arg_type6, const expr_type &arg_type7)
 
void add_nullary (const ::std::string &name)
 
void add_unary (const ::std::string &name)
 
void add_binary (const ::std::string &name)
 
void add_ternary (const ::std::string &name)
 
void add_quaternary (const ::std::string &name)
 
int num_promotions (const std::vector< expr_type > &call_args, const std::vector< expr_type > &sig_args)
 
expr_type get_result_type (const std::string &name, const std::vector< expr_type > &args, std::ostream &error_msgs)
 
std::set< std::string > key_set () const
 
+ + + +

+Static Public Member Functions

static function_signaturesinstance ()
 
+

Detailed Description

+
+

Definition at line 94 of file ast.hpp.

+

Member Function Documentation

+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
void stan::gm::function_signatures::add (const std::string & name,
const expr_typeresult_type,
const std::vector< expr_type > & arg_types 
)
+
+ +

Definition at line 118 of file ast_def.cpp.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
void stan::gm::function_signatures::add (const std::string & name,
const expr_typeresult_type 
)
+
+ +

Definition at line 124 of file ast_def.cpp.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
void stan::gm::function_signatures::add (const std::string & name,
const expr_typeresult_type,
const expr_typearg_type 
)
+
+ +

Definition at line 129 of file ast_def.cpp.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
void stan::gm::function_signatures::add (const std::string & name,
const expr_typeresult_type,
const expr_typearg_type1,
const expr_typearg_type2 
)
+
+ +

Definition at line 136 of file ast_def.cpp.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
void stan::gm::function_signatures::add (const std::string & name,
const expr_typeresult_type,
const expr_typearg_type1,
const expr_typearg_type2,
const expr_typearg_type3 
)
+
+ +

Definition at line 145 of file ast_def.cpp.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
void stan::gm::function_signatures::add (const std::string & name,
const expr_typeresult_type,
const expr_typearg_type1,
const expr_typearg_type2,
const expr_typearg_type3,
const expr_typearg_type4 
)
+
+ +

Definition at line 156 of file ast_def.cpp.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
void stan::gm::function_signatures::add (const std::string & name,
const expr_typeresult_type,
const expr_typearg_type1,
const expr_typearg_type2,
const expr_typearg_type3,
const expr_typearg_type4,
const expr_typearg_type5 
)
+
+ +

Definition at line 169 of file ast_def.cpp.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
void stan::gm::function_signatures::add (const std::string & name,
const expr_typeresult_type,
const expr_typearg_type1,
const expr_typearg_type2,
const expr_typearg_type3,
const expr_typearg_type4,
const expr_typearg_type5,
const expr_typearg_type6 
)
+
+ +

Definition at line 184 of file ast_def.cpp.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
void stan::gm::function_signatures::add (const std::string & name,
const expr_typeresult_type,
const expr_typearg_type1,
const expr_typearg_type2,
const expr_typearg_type3,
const expr_typearg_type4,
const expr_typearg_type5,
const expr_typearg_type6,
const expr_typearg_type7 
)
+
+ +

Definition at line 201 of file ast_def.cpp.

+ +
+
+ +
+
+ + + + + + + + +
void stan::gm::function_signatures::add_binary (const ::std::string & name)
+
+ +

Definition at line 226 of file ast_def.cpp.

+ +
+
+ +
+
+ + + + + + + + +
void stan::gm::function_signatures::add_nullary (const ::std::string & name)
+
+ +

Definition at line 220 of file ast_def.cpp.

+ +
+
+ +
+
+ + + + + + + + +
void stan::gm::function_signatures::add_quaternary (const ::std::string & name)
+
+ +

Definition at line 232 of file ast_def.cpp.

+ +
+
+ +
+
+ + + + + + + + +
void stan::gm::function_signatures::add_ternary (const ::std::string & name)
+
+ +

Definition at line 229 of file ast_def.cpp.

+ +
+
+ +
+
+ + + + + + + + +
void stan::gm::function_signatures::add_unary (const ::std::string & name)
+
+ +

Definition at line 223 of file ast_def.cpp.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
expr_type stan::gm::function_signatures::get_result_type (const std::string & name,
const std::vector< expr_type > & args,
std::ostream & error_msgs 
)
+
+ +

Definition at line 254 of file ast_def.cpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
function_signatures & stan::gm::function_signatures::instance ()
+
+static
+
+ +

Definition at line 112 of file ast_def.cpp.

+ +
+
+ +
+
+ + + + + + + +
std::set< std::string > stan::gm::function_signatures::key_set () const
+
+ +

Definition at line 305 of file ast_def.cpp.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
int stan::gm::function_signatures::num_promotions (const std::vector< expr_type > & call_args,
const std::vector< expr_type > & sig_args 
)
+
+ +

Definition at line 235 of file ast_def.cpp.

+ +
+
+
The documentation for this class was generated from the following files: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1gm_1_1list__argument-members.html b/doc/api/html/classstan_1_1gm_1_1list__argument-members.html new file mode 100644 index 00000000000..d9234aa5ce4 --- /dev/null +++ b/doc/api/html/classstan_1_1gm_1_1list__argument-members.html @@ -0,0 +1,142 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::gm::list_argument Member List
+
+
+ +

This is the complete list of members for stan::gm::list_argument, including all inherited members.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
_cursorstan::gm::list_argumentprotected
_defaultstan::gm::valued_argumentprotected
_default_cursorstan::gm::list_argumentprotected
_descriptionstan::gm::argumentprotected
_namestan::gm::argumentprotected
_value_typestan::gm::valued_argumentprotected
_valuesstan::gm::list_argumentprotected
arg(std::string name)stan::gm::list_argumentinlinevirtual
argument()stan::gm::argumentinline
argument(const std::string name)stan::gm::argumentinline
compute_indent(const int depth)stan::gm::argumentinline
description() const stan::gm::argumentinline
find_arg(std::string name, std::string prefix, std::vector< std::string > &valid_paths)stan::gm::list_argumentinlinevirtual
help_widthstan::gm::argumentprotected
indent_widthstan::gm::argumentprotected
is_default()stan::gm::list_argumentinlinevirtual
list_argument()stan::gm::list_argumentinline
name() const stan::gm::argumentinline
parse_args(std::vector< std::string > &args, std::ostream *out, std::ostream *err, bool &help_flag)stan::gm::list_argumentinlinevirtual
print(std::ostream *s, int depth, const std::string prefix)stan::gm::list_argumentinlinevirtual
print_help(std::ostream *s, int depth, bool recurse)stan::gm::list_argumentinlinevirtual
print_valid()stan::gm::list_argumentinlinevirtual
print_value()stan::gm::list_argumentinlinevirtual
probe_args(argument *base_arg, std::stringstream &s)stan::gm::list_argumentinlinevirtual
split_arg(const std::string &arg, std::string &name, std::string &value)stan::gm::argumentinlinestatic
valid_value(std::string name)stan::gm::list_argumentinline
value()stan::gm::list_argumentinline
values()stan::gm::list_argumentinline
~argument()stan::gm::argumentinlinevirtual
~list_argument()stan::gm::list_argumentinline
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1gm_1_1list__argument.html b/doc/api/html/classstan_1_1gm_1_1list__argument.html new file mode 100644 index 00000000000..6cd98ffa21e --- /dev/null +++ b/doc/api/html/classstan_1_1gm_1_1list__argument.html @@ -0,0 +1,722 @@ + + + + + +Stan: stan::gm::list_argument Class Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::gm::list_argument Class Reference
+
+
+ +

#include <list_argument.hpp>

+
+Inheritance diagram for stan::gm::list_argument:
+
+
+ + +stan::gm::valued_argument +stan::gm::argument +stan::gm::arg_engine +stan::gm::arg_method +stan::gm::arg_metric +stan::gm::arg_optimize_algo +stan::gm::arg_sample_algo +stan::gm::arg_test + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 list_argument ()
 
 ~list_argument ()
 
void print (std::ostream *s, int depth, const std::string prefix)
 
void print_help (std::ostream *s, int depth, bool recurse)
 
bool parse_args (std::vector< std::string > &args, std::ostream *out, std::ostream *err, bool &help_flag)
 
virtual void probe_args (argument *base_arg, std::stringstream &s)
 
void find_arg (std::string name, std::string prefix, std::vector< std::string > &valid_paths)
 
bool valid_value (std::string name)
 
argumentarg (std::string name)
 
std::vector< argument * > & values ()
 
std::string value ()
 
std::string print_value ()
 
std::string print_valid ()
 
bool is_default ()
 
+ + + + + + + + + + + + + + + + + + + + + +

+Protected Attributes

int _cursor
 
int _default_cursor
 
std::vector< argument * > _values
 
- Protected Attributes inherited from stan::gm::valued_argument
std::string _default
 
std::string _value_type
 
- Protected Attributes inherited from stan::gm::argument
std::string _name
 
std::string _description
 
int indent_width
 
int help_width
 
+ + + + +

+Additional Inherited Members

- Static Public Member Functions inherited from stan::gm::argument
static void split_arg (const std::string &arg, std::string &name, std::string &value)
 
+

Detailed Description

+
+

Definition at line 12 of file list_argument.hpp.

+

Constructor & Destructor Documentation

+ +
+
+ + + + + +
+ + + + + + + +
stan::gm::list_argument::list_argument ()
+
+inline
+
+ +

Definition at line 16 of file list_argument.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
stan::gm::list_argument::~list_argument ()
+
+inline
+
+ +

Definition at line 20 of file list_argument.hpp.

+ +
+
+

Member Function Documentation

+ +
+
+ + + + + +
+ + + + + + + + +
argument* stan::gm::list_argument::arg (std::string name)
+
+inlinevirtual
+
+ +

Reimplemented from stan::gm::argument.

+ +

Definition at line 151 of file list_argument.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
void stan::gm::list_argument::find_arg (std::string name,
std::string prefix,
std::vector< std::string > & valid_paths 
)
+
+inlinevirtual
+
+ +

Reimplemented from stan::gm::argument.

+ +

Definition at line 126 of file list_argument.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
bool stan::gm::list_argument::is_default ()
+
+inlinevirtual
+
+ +

Implements stan::gm::valued_argument.

+ +

Definition at line 178 of file list_argument.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
bool stan::gm::list_argument::parse_args (std::vector< std::string > & args,
std::ostream * out,
std::ostream * err,
bool & help_flag 
)
+
+inlinevirtual
+
+ +

Reimplemented from stan::gm::argument.

+ +

Definition at line 48 of file list_argument.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
void stan::gm::list_argument::print (std::ostream * s,
int depth,
const std::string prefix 
)
+
+inlinevirtual
+
+ +

Reimplemented from stan::gm::valued_argument.

+ +

Definition at line 31 of file list_argument.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
void stan::gm::list_argument::print_help (std::ostream * s,
int depth,
bool recurse 
)
+
+inlinevirtual
+
+ +

Reimplemented from stan::gm::valued_argument.

+ +

Definition at line 36 of file list_argument.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
std::string stan::gm::list_argument::print_valid ()
+
+inlinevirtual
+
+ +

Implements stan::gm::valued_argument.

+ +

Definition at line 164 of file list_argument.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
std::string stan::gm::list_argument::print_value ()
+
+inlinevirtual
+
+ +

Implements stan::gm::valued_argument.

+ +

Definition at line 162 of file list_argument.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
virtual void stan::gm::list_argument::probe_args (argumentbase_arg,
std::stringstream & s 
)
+
+inlinevirtual
+
+ +

Reimplemented from stan::gm::argument.

+ +

Definition at line 103 of file list_argument.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
bool stan::gm::list_argument::valid_value (std::string name)
+
+inline
+
+ +

Definition at line 143 of file list_argument.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
std::string stan::gm::list_argument::value ()
+
+inline
+
+ +

Definition at line 160 of file list_argument.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
std::vector<argument*>& stan::gm::list_argument::values ()
+
+inline
+
+ +

Definition at line 158 of file list_argument.hpp.

+ +
+
+

Member Data Documentation

+ +
+
+ + + + + +
+ + + + +
int stan::gm::list_argument::_cursor
+
+protected
+
+ +

Definition at line 182 of file list_argument.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + +
int stan::gm::list_argument::_default_cursor
+
+protected
+
+ +

Definition at line 183 of file list_argument.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + +
std::vector<argument*> stan::gm::list_argument::_values
+
+protected
+
+ +

Definition at line 185 of file list_argument.hpp.

+ +
+
+
The documentation for this class was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1gm_1_1list__argument.png b/doc/api/html/classstan_1_1gm_1_1list__argument.png new file mode 100644 index 0000000000000000000000000000000000000000..93802d081e535816abe1767907194f4d39e46e50 GIT binary patch literal 3141 zcmd5;eOQv`8h4V)EQ?Mxt(>q%>1M*}SXw$ouXY?YL)Y><&9$~=Db6xQ6o%PY)3Rvl z773lR6*&}Bri>IZ79+yOD)A#g{0!$83MndId*9b{&b8~>**W{`oWpg!ywCkS@AEwO zegA&WbI;pOPRkHLyB!V#{y)2a*bcnBV%~b^4Tr-4G)E_9 zbITO zE2bQbv~{#fZ0tszsjT+o?g%yd#JlFPG{1Rlufc4g`m9~Mwyc4`pr*i{b9Z;mK;a_p z3~zwP#JnbSbzZynEgsFu#pNy(69*gt&I?@HJ>;N`dPUHH}YMja{usVpXXj z{sOj?j}&_o*jSz`#?#`>LYsF$-`6`2^xP?B^=;-3@qZ?WDC5s;DMhqd{<6n1KR>TgE^hwA z;Uhs}QL7_u$E@t!p~ld#C?AV;erUG6{3Y(aHyKe&t5nf0qLqcS`P8F(7@-ew9~T$X zDC^)HP9Z~Mp8XWP5DBGh@gV9wf#n;u*yj>jxfHL?C6ZCr4Ndq>Dvv`Mp0n8OY&RDd z7som`KR>@O;=!e!o(>LN4dgci^z#dKvJYgv4_T>0PVVkopf%;tCOJ?ygxdeC+wr-L zB6jE_A|md1SGhPm-L*%=466MXzd3dAcz1+gNnVO<158M1* z(X#{$buaxOF69Mi%WMTMSd3xMDYDweI;9ugXtzek4*F^EjF!h6L2heyAubS1Lw_!u znWww}Cx#bU3t8EeyEhS@+woC)-J+80C1cI>i6qG~Z1*IL-$Nk&Zoq52`jP4Z2E zVVOkFC#z~?$nGLh)-yUSJ1MJbYq>h%7zlEL9v8gR5OtZ*?hZ;U1qY-TDR zBMYj6BE;3ZNXW^)^0+p^QsowG1LitzKqd1#1er8jY~ici-QDf}D`S8x)PqQMOlE($ z3GlWP@<1R6g{%(968-SpKPBMTQ2q|W|DA5fD=peAv+_)Faq%|$@&{f2uFP10YQf@k z<}}HQ-7r7Z2|Bpq+jP{4hwUH*=Z~A2nPz)?xVY70@gL-?HElD7>I3J7^h5oo&sEPx zqPB8&0xH%|2rWRf%aw7>{NOOPrBfBcyC5CYUkw&lKT2PR=so}vYdVN^s$YM7-(%ht z>o>G2F|Rw6F3G54b_iSV?1j|gw(f*MIj)Sd4A$6lQ7Kzkp0~Hoq7ZRNNMFQrH+!dE zZ%c!haCvi@vf>PAb<~2^Nk5-(GO~RBt!hL+c zDaGshh{VrhSx>_ML+AFtX#j=Pb)}1S27xLkIZL4h4&A2JBU6`$kpfL8pqWh?^!n=~ zTjYKoCFtG+MKmKeDT@Kb@+RZ_9~nw>lVI?!q}<8wpxl@yqN0yyo#waYt}5fst45F& zAzwFgs|)Sx^XkKTwU^9e@$8vVE5SMaE5k>k4u6H63VR8k`ViQRxbQGVf7;zd2|>6PmQUpDVhq<{od=96 zo_KVKu-kL~usUl@vlX$kZtjM|P((uuXA4j(>hc$kFhX;J5U%!-Jh}0^AboRycx6eZ zf16gtOddF!1Y9GMb!)hqXaBi3+oqUujr+571;OLzFXvnu$g0(DjxkR7UO=1DnyqKsmO=3rS%X4tRtQw z!hIN7P5;qLrOMYu)fk;ld)_})mAxC2H_Zh>Y8Ls1RV8AWXeAIAK!ovG_WAtH^_1os ze9m~DYKxq^^A)q~spX1+8eRXC|t)V + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::gm::singleton_argument< T > Member List
+
+
+ +

This is the complete list of members for stan::gm::singleton_argument< T >, including all inherited members.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
_bad_valuestan::gm::singleton_argument< T >protected
_constrainedstan::gm::singleton_argument< T >protected
_defaultstan::gm::valued_argumentprotected
_default_valuestan::gm::singleton_argument< T >protected
_descriptionstan::gm::argumentprotected
_good_valuestan::gm::singleton_argument< T >protected
_namestan::gm::argumentprotected
_validitystan::gm::singleton_argument< T >protected
_valuestan::gm::singleton_argument< T >protected
_value_typestan::gm::valued_argumentprotected
arg(const std::string name)stan::gm::argumentinlinevirtual
argument()stan::gm::argumentinline
argument(const std::string name)stan::gm::argumentinline
compute_indent(const int depth)stan::gm::argumentinline
description() const stan::gm::argumentinline
find_arg(std::string name, std::string prefix, std::vector< std::string > &valid_paths)stan::gm::singleton_argument< T >inlinevirtual
help_widthstan::gm::argumentprotected
indent_widthstan::gm::argumentprotected
is_default()stan::gm::singleton_argument< T >inlinevirtual
is_valid(T value)stan::gm::singleton_argument< T >inlineprotectedvirtual
name() const stan::gm::argumentinline
parse_args(std::vector< std::string > &args, std::ostream *out, std::ostream *err, bool &help_flag)stan::gm::singleton_argument< T >inlinevirtual
print(std::ostream *s, const int depth, const std::string prefix)stan::gm::valued_argumentinlinevirtual
print_help(std::ostream *s, const int depth, const bool recurse=false)stan::gm::valued_argumentinlinevirtual
print_valid()stan::gm::singleton_argument< T >inlinevirtual
print_value()stan::gm::singleton_argument< T >inlinevirtual
probe_args(argument *base_arg, std::stringstream &s)stan::gm::singleton_argument< T >inlinevirtual
set_value(const T &value)stan::gm::singleton_argument< T >inline
singleton_argument()stan::gm::singleton_argument< T >inline
singleton_argument(const std::string name)stan::gm::singleton_argument< T >inline
split_arg(const std::string &arg, std::string &name, std::string &value)stan::gm::argumentinlinestatic
value()stan::gm::singleton_argument< T >inline
~argument()stan::gm::argumentinlinevirtual
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1gm_1_1singleton__argument.html b/doc/api/html/classstan_1_1gm_1_1singleton__argument.html new file mode 100644 index 00000000000..d9287aa7bd6 --- /dev/null +++ b/doc/api/html/classstan_1_1gm_1_1singleton__argument.html @@ -0,0 +1,758 @@ + + + + + +Stan: stan::gm::singleton_argument< T > Class Template Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::gm::singleton_argument< T > Class Template Reference
+
+
+ +

#include <singleton_argument.hpp>

+
+Inheritance diagram for stan::gm::singleton_argument< T >:
+
+
+ + +stan::gm::valued_argument +stan::gm::argument +stan::gm::arg_adapt_delta +stan::gm::arg_adapt_engaged +stan::gm::arg_adapt_gamma +stan::gm::arg_adapt_init_buffer +stan::gm::arg_adapt_kappa +stan::gm::arg_adapt_t0 +stan::gm::arg_adapt_term_buffer +stan::gm::arg_adapt_window +stan::gm::arg_data_file +stan::gm::arg_diagnostic_file +stan::gm::arg_id +stan::gm::arg_init +stan::gm::arg_init_alpha +stan::gm::arg_int_time +stan::gm::arg_iter +stan::gm::arg_max_depth +stan::gm::arg_num_samples +stan::gm::arg_num_warmup +stan::gm::arg_output_file +stan::gm::arg_refresh +stan::gm::arg_save_iterations +stan::gm::arg_save_warmup +stan::gm::arg_seed +stan::gm::arg_stepsize +stan::gm::arg_stepsize_jitter +stan::gm::arg_test_grad_eps +stan::gm::arg_test_grad_err +stan::gm::arg_thin +stan::gm::arg_tolerance + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 singleton_argument ()
 
 singleton_argument (const std::string name)
 
bool parse_args (std::vector< std::string > &args, std::ostream *out, std::ostream *err, bool &help_flag)
 
virtual void probe_args (argument *base_arg, std::stringstream &s)
 
void find_arg (std::string name, std::string prefix, std::vector< std::string > &valid_paths)
 
value ()
 
bool set_value (const T &value)
 
std::string print_value ()
 
std::string print_valid ()
 
bool is_default ()
 
- Public Member Functions inherited from stan::gm::valued_argument
virtual void print (std::ostream *s, const int depth, const std::string prefix)
 
virtual void print_help (std::ostream *s, const int depth, const bool recurse=false)
 
- Public Member Functions inherited from stan::gm::argument
 argument ()
 
 argument (const std::string name)
 
virtual ~argument ()
 
std::string name () const
 
std::string description () const
 
virtual argumentarg (const std::string name)
 
int compute_indent (const int depth)
 
+ + + +

+Protected Member Functions

virtual bool is_valid (T value)
 
+ + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Protected Attributes

std::string _validity
 
_value
 
_default_value
 
bool _constrained
 
_good_value
 
_bad_value
 
- Protected Attributes inherited from stan::gm::valued_argument
std::string _default
 
std::string _value_type
 
- Protected Attributes inherited from stan::gm::argument
std::string _name
 
std::string _description
 
int indent_width
 
int help_width
 
+ + + + +

+Additional Inherited Members

- Static Public Member Functions inherited from stan::gm::argument
static void split_arg (const std::string &arg, std::string &name, std::string &value)
 
+

Detailed Description

+

template<typename T>
+class stan::gm::singleton_argument< T >

+ + +

Definition at line 44 of file singleton_argument.hpp.

+

Constructor & Destructor Documentation

+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + +
stan::gm::singleton_argument< T >::singleton_argument ()
+
+inline
+
+ +

Definition at line 48 of file singleton_argument.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + +
stan::gm::singleton_argument< T >::singleton_argument (const std::string name)
+
+inline
+
+ +

Definition at line 54 of file singleton_argument.hpp.

+ +
+
+

Member Function Documentation

+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
void stan::gm::singleton_argument< T >::find_arg (std::string name,
std::string prefix,
std::vector< std::string > & valid_paths 
)
+
+inlinevirtual
+
+ +

Reimplemented from stan::gm::argument.

+ +

Definition at line 116 of file singleton_argument.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + +
bool stan::gm::singleton_argument< T >::is_default ()
+
+inlinevirtual
+
+ +

Implements stan::gm::valued_argument.

+ +

Definition at line 144 of file singleton_argument.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + +
virtual bool stan::gm::singleton_argument< T >::is_valid (value)
+
+inlineprotectedvirtual
+
+ +

Definition at line 152 of file singleton_argument.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
bool stan::gm::singleton_argument< T >::parse_args (std::vector< std::string > & args,
std::ostream * out,
std::ostream * err,
bool & help_flag 
)
+
+inlinevirtual
+
+ +

Reimplemented from stan::gm::argument.

+ +

Definition at line 59 of file singleton_argument.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + +
std::string stan::gm::singleton_argument< T >::print_valid ()
+
+inlinevirtual
+
+ +

Implements stan::gm::valued_argument.

+ +

Definition at line 140 of file singleton_argument.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + +
std::string stan::gm::singleton_argument< T >::print_value ()
+
+inlinevirtual
+
+ +

Implements stan::gm::valued_argument.

+ +

Definition at line 136 of file singleton_argument.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
virtual void stan::gm::singleton_argument< T >::probe_args (argumentbase_arg,
std::stringstream & s 
)
+
+inlinevirtual
+
+ +

Reimplemented from stan::gm::argument.

+ +

Definition at line 98 of file singleton_argument.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + +
bool stan::gm::singleton_argument< T >::set_value (const T & value)
+
+inline
+
+ +

Definition at line 126 of file singleton_argument.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + +
T stan::gm::singleton_argument< T >::value ()
+
+inline
+
+ +

Definition at line 124 of file singleton_argument.hpp.

+ +
+
+

Member Data Documentation

+ +
+
+
+template<typename T >
+ + + + + +
+ + + + +
T stan::gm::singleton_argument< T >::_bad_value
+
+protected
+
+ +

Definition at line 160 of file singleton_argument.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + +
bool stan::gm::singleton_argument< T >::_constrained
+
+protected
+
+ +

Definition at line 157 of file singleton_argument.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + +
T stan::gm::singleton_argument< T >::_default_value
+
+protected
+
+ +

Definition at line 155 of file singleton_argument.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + +
T stan::gm::singleton_argument< T >::_good_value
+
+protected
+
+ +

Definition at line 159 of file singleton_argument.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + +
std::string stan::gm::singleton_argument< T >::_validity
+
+protected
+
+ +

Definition at line 151 of file singleton_argument.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + +
T stan::gm::singleton_argument< T >::_value
+
+protected
+
+ +

Definition at line 154 of file singleton_argument.hpp.

+ +
+
+
The documentation for this class was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1gm_1_1singleton__argument.png b/doc/api/html/classstan_1_1gm_1_1singleton__argument.png new file mode 100644 index 0000000000000000000000000000000000000000..3857a3ad7e0cc74309cff158b9aee09800c75911 GIT binary patch literal 14438 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 + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::gm::unvalued_argument Member List
+
+
+ +

This is the complete list of members for stan::gm::unvalued_argument, including all inherited members.

+ + + + + + + + + + + + + + + + + + + + + +
_descriptionstan::gm::argumentprotected
_is_presentstan::gm::unvalued_argumentprotected
_namestan::gm::argumentprotected
arg(const std::string name)stan::gm::argumentinlinevirtual
argument()stan::gm::argumentinline
argument(const std::string name)stan::gm::argumentinline
compute_indent(const int depth)stan::gm::argumentinline
description() const stan::gm::argumentinline
find_arg(std::string name, std::string prefix, std::vector< std::string > &valid_paths)stan::gm::argumentinlinevirtual
help_widthstan::gm::argumentprotected
indent_widthstan::gm::argumentprotected
is_present()stan::gm::unvalued_argumentinline
name() const stan::gm::argumentinline
parse_args(std::vector< std::string > &args, std::ostream *out, std::ostream *err, bool &help_flag)stan::gm::unvalued_argumentinlinevirtual
print(std::ostream *s, const int depth, const std::string prefix)stan::gm::unvalued_argumentinlinevirtual
print_help(std::ostream *s, const int depth, const bool recurse=false)stan::gm::unvalued_argumentinlinevirtual
probe_args(argument *base_arg, std::stringstream &s)stan::gm::argumentinlinevirtual
split_arg(const std::string &arg, std::string &name, std::string &value)stan::gm::argumentinlinestatic
unvalued_argument()stan::gm::unvalued_argumentinline
~argument()stan::gm::argumentinlinevirtual
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1gm_1_1unvalued__argument.html b/doc/api/html/classstan_1_1gm_1_1unvalued__argument.html new file mode 100644 index 00000000000..6aaf5a40e33 --- /dev/null +++ b/doc/api/html/classstan_1_1gm_1_1unvalued__argument.html @@ -0,0 +1,401 @@ + + + + + +Stan: stan::gm::unvalued_argument Class Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::gm::unvalued_argument Class Reference
+
+
+ +

#include <unvalued_argument.hpp>

+
+Inheritance diagram for stan::gm::unvalued_argument:
+
+
+ + +stan::gm::argument +stan::gm::arg_dense_e +stan::gm::arg_diag_e +stan::gm::arg_fail +stan::gm::arg_fixed_param +stan::gm::arg_unit_e + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 unvalued_argument ()
 
void print (std::ostream *s, const int depth, const std::string prefix)
 
void print_help (std::ostream *s, const int depth, const bool recurse=false)
 
bool parse_args (std::vector< std::string > &args, std::ostream *out, std::ostream *err, bool &help_flag)
 
bool is_present ()
 
- Public Member Functions inherited from stan::gm::argument
 argument ()
 
 argument (const std::string name)
 
virtual ~argument ()
 
std::string name () const
 
std::string description () const
 
virtual void probe_args (argument *base_arg, std::stringstream &s)
 
virtual void find_arg (std::string name, std::string prefix, std::vector< std::string > &valid_paths)
 
virtual argumentarg (const std::string name)
 
int compute_indent (const int depth)
 
+ + + + + + + + + + + + +

+Protected Attributes

bool _is_present
 
- Protected Attributes inherited from stan::gm::argument
std::string _name
 
std::string _description
 
int indent_width
 
int help_width
 
+ + + + +

+Additional Inherited Members

- Static Public Member Functions inherited from stan::gm::argument
static void split_arg (const std::string &arg, std::string &name, std::string &value)
 
+

Detailed Description

+
+

Definition at line 12 of file unvalued_argument.hpp.

+

Constructor & Destructor Documentation

+ +
+
+ + + + + +
+ + + + + + + +
stan::gm::unvalued_argument::unvalued_argument ()
+
+inline
+
+ +

Definition at line 16 of file unvalued_argument.hpp.

+ +
+
+

Member Function Documentation

+ +
+
+ + + + + +
+ + + + + + + +
bool stan::gm::unvalued_argument::is_present ()
+
+inline
+
+ +

Definition at line 50 of file unvalued_argument.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
bool stan::gm::unvalued_argument::parse_args (std::vector< std::string > & args,
std::ostream * out,
std::ostream * err,
bool & help_flag 
)
+
+inlinevirtual
+
+ +

Reimplemented from stan::gm::argument.

+ +

Definition at line 34 of file unvalued_argument.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
void stan::gm::unvalued_argument::print (std::ostream * s,
const int depth,
const std::string prefix 
)
+
+inlinevirtual
+
+ +

Implements stan::gm::argument.

+ +

Definition at line 19 of file unvalued_argument.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
void stan::gm::unvalued_argument::print_help (std::ostream * s,
const int depth,
const bool recurse = false 
)
+
+inlinevirtual
+
+ +

Implements stan::gm::argument.

+ +

Definition at line 21 of file unvalued_argument.hpp.

+ +
+
+

Member Data Documentation

+ +
+
+ + + + + +
+ + + + +
bool stan::gm::unvalued_argument::_is_present
+
+protected
+
+ +

Definition at line 55 of file unvalued_argument.hpp.

+ +
+
+
The documentation for this class was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1gm_1_1unvalued__argument.png b/doc/api/html/classstan_1_1gm_1_1unvalued__argument.png new file mode 100644 index 0000000000000000000000000000000000000000..89e6c19f86225189f4d0a1e5e17c6abf7b4bb866 GIT binary patch literal 2253 zcmcguYgAKL76zqjGE@|+6@&=5M5to{L4-g+lnMxzAdhRhD1lL15Xxf(2rqd!wgaV> zn^u%`0wJv^kDCHgNJ+vYl!td^Ai@~JI|&dW7ziN*4G1A~!?Lsd(fK)Z*E;*`bN0UH z?EUTUoO_Ee;{r^KEsPBe3`_zqUI;TV*bO53*Qniyr2pV&hjiwbKaTLz>2!#?u=J8d z?*0zZc3M|g*E_{i*2oZ*9)=4yK%DfC@ShPb$W&C|h4T?vh6>SQ*@N~&?+o!`_egZ# zhmf)jhkYY#=#@hL!ypvV{=VO~Zx`-$r_$$7Mn<``PDmbZ3!1Lb-U~pXZv2J#)va6A zZ>eQ)69bwUcpyFyfLg~DA2Tv?WqtsPLO$X2zp(e@`V^MymeClO#uw01()%Se)_- zzz=$}m+kq?*{q4@v9npp{{l+L3~K;rMlxB)-N}FpoIPV-$kvoP+c2&f2T~CevOgYI zjV=~)gYEuS|9dzGVF>adSGC+wGu}+)U_sfD21wosJ3vs`PF5XUY=)@nXYb@tfO&2f zWhi-}#asatw)(K|VSLY>3*SKrN$_`7sL9iL*x1-iH|;huGHSW2w_GavXcc8>XmT7h zH63~uVo|C`-(HXYllT1ps1R?}>QJ3lY3q<5;+tY*t_y{hF2w zv%qjQvR>!#V`UT=?w{@tpKzD4roQmd5^v7f@hEZj9l=tM^fH7vqtp-A0^N%Ge0XCt z27cexewcA8_}Ae{B`ePhfv}MjJ;S{@N`x(vuJlXSrJAR6s{U6QlM=Qt5p6$+K)xa@ zd_O-0pW_LZR^!i8bA@+B#2k11t7kr38^`SZR7_*k=$|l@Fm)vAQ&bi^JdsOLmp(BaP&Ay9aj{ zJU}5ey~Z=KK!bbbJeH#SfV4TCqK+R(NVBxGf?!H-n-w8f*9&7 z-6-)pt|7Ci@=J(e*rdGQRqwilaGU=qc`QU;$p4(GcYRfg>7LgcNIml|e7);tAo^;W z-oUw<_K#S-tJW5L%+?!3=11}*8cWPto}|%BMA>E?1?`^6H#RWfG|HS6A@NVkZUdy zHYRv`@D~s1{8Jj8$jrhaf@e;wEmT=9kW5%aeP}40N!mM1=JW^+eTxb zsxkSj7dWWFn!yE5!^^3!Uu0+XR7&D%1PgLyk#vq{sa%Vn5N>!m=De54&?`^elZ24MC| zNGYMBDYQf}i!S2zt9TpY&umJo@8Ee=n7!Un@O4aodyZ5GSw5ASLGJ+*r8!cT95F zmR4+aZz~mzx9%PqG$u}6yKTQX(|CyDXxEeN4VKs6!w$B;4=)n7h&1E|-@N|iVR4Ya zLUuAgf$ILj_Mkgbi*G5jtlvyWCXck1Ph-oc`K?oXWF?s7mI0*#fxS6)7IQ+1qh&@1 zkDfkrB6dyAK0No#J5S}B60udg^5{4h4Ks@#C!^hKmsxXKXIQ}et+>s5Kt@D7Dcmvm<&E)kJ&KXubT+e?v#Fp8>XY5EFYLD2E&$PoZ= z7dvj(HPz!aoob!GXz_~X`Nfe6r8i}RLCkG`St-tf3jjb}b|xy0DskNAH6@wCLKzp5 zkK7?O;zew~Don$v?`pPpIVnLhccuim43I{H1X~%ZK`==xBGNYsn9D-O7fkGO`#=nc zPNnJ`2b+KGYCX8AUDb!^2MSL6A;nc1SO>X(Fsu>fIF3&WM}HU jzSEyErAA#x((R+c;=HB#?bFD=he4np?m~m_UvK{#=%{u| literal 0 HcmV?d00001 diff --git a/doc/api/html/classstan_1_1gm_1_1valued__argument-members.html b/doc/api/html/classstan_1_1gm_1_1valued__argument-members.html new file mode 100644 index 00000000000..7205e3f465a --- /dev/null +++ b/doc/api/html/classstan_1_1gm_1_1valued__argument-members.html @@ -0,0 +1,134 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::gm::valued_argument Member List
+
+
+ +

This is the complete list of members for stan::gm::valued_argument, including all inherited members.

+ + + + + + + + + + + + + + + + + + + + + + + +
_defaultstan::gm::valued_argumentprotected
_descriptionstan::gm::argumentprotected
_namestan::gm::argumentprotected
_value_typestan::gm::valued_argumentprotected
arg(const std::string name)stan::gm::argumentinlinevirtual
argument()stan::gm::argumentinline
argument(const std::string name)stan::gm::argumentinline
compute_indent(const int depth)stan::gm::argumentinline
description() const stan::gm::argumentinline
find_arg(std::string name, std::string prefix, std::vector< std::string > &valid_paths)stan::gm::argumentinlinevirtual
help_widthstan::gm::argumentprotected
indent_widthstan::gm::argumentprotected
is_default()=0stan::gm::valued_argumentpure virtual
name() const stan::gm::argumentinline
parse_args(std::vector< std::string > &args, std::ostream *out, std::ostream *err, bool &help_flag)stan::gm::argumentinlinevirtual
print(std::ostream *s, const int depth, const std::string prefix)stan::gm::valued_argumentinlinevirtual
print_help(std::ostream *s, const int depth, const bool recurse=false)stan::gm::valued_argumentinlinevirtual
print_valid()=0stan::gm::valued_argumentpure virtual
print_value()=0stan::gm::valued_argumentpure virtual
probe_args(argument *base_arg, std::stringstream &s)stan::gm::argumentinlinevirtual
split_arg(const std::string &arg, std::string &name, std::string &value)stan::gm::argumentinlinestatic
~argument()stan::gm::argumentinlinevirtual
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1gm_1_1valued__argument.html b/doc/api/html/classstan_1_1gm_1_1valued__argument.html new file mode 100644 index 00000000000..e3e6d3c281c --- /dev/null +++ b/doc/api/html/classstan_1_1gm_1_1valued__argument.html @@ -0,0 +1,437 @@ + + + + + +Stan: stan::gm::valued_argument Class Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::gm::valued_argument Class Referenceabstract
+
+
+ +

#include <valued_argument.hpp>

+
+Inheritance diagram for stan::gm::valued_argument:
+
+
+ + +stan::gm::argument +stan::gm::list_argument +stan::gm::singleton_argument< T > +stan::gm::arg_engine +stan::gm::arg_method +stan::gm::arg_metric +stan::gm::arg_optimize_algo +stan::gm::arg_sample_algo +stan::gm::arg_test +stan::gm::arg_adapt_delta +stan::gm::arg_adapt_engaged +stan::gm::arg_adapt_gamma +stan::gm::arg_adapt_init_buffer +stan::gm::arg_adapt_kappa +stan::gm::arg_adapt_t0 +stan::gm::arg_adapt_term_buffer +stan::gm::arg_adapt_window +stan::gm::arg_data_file +stan::gm::arg_diagnostic_file +stan::gm::arg_id +stan::gm::arg_init +stan::gm::arg_init_alpha +stan::gm::arg_int_time +stan::gm::arg_iter +stan::gm::arg_max_depth +stan::gm::arg_num_samples +stan::gm::arg_num_warmup +stan::gm::arg_output_file +stan::gm::arg_refresh +stan::gm::arg_save_iterations +stan::gm::arg_save_warmup +stan::gm::arg_seed +stan::gm::arg_stepsize +stan::gm::arg_stepsize_jitter +stan::gm::arg_test_grad_eps +stan::gm::arg_test_grad_err +stan::gm::arg_thin +stan::gm::arg_tolerance + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

virtual void print (std::ostream *s, const int depth, const std::string prefix)
 
virtual void print_help (std::ostream *s, const int depth, const bool recurse=false)
 
virtual std::string print_value ()=0
 
virtual std::string print_valid ()=0
 
virtual bool is_default ()=0
 
- Public Member Functions inherited from stan::gm::argument
 argument ()
 
 argument (const std::string name)
 
virtual ~argument ()
 
std::string name () const
 
std::string description () const
 
virtual bool parse_args (std::vector< std::string > &args, std::ostream *out, std::ostream *err, bool &help_flag)
 
virtual void probe_args (argument *base_arg, std::stringstream &s)
 
virtual void find_arg (std::string name, std::string prefix, std::vector< std::string > &valid_paths)
 
virtual argumentarg (const std::string name)
 
int compute_indent (const int depth)
 
+ + + + + + + + + + + + + + +

+Protected Attributes

std::string _default
 
std::string _value_type
 
- Protected Attributes inherited from stan::gm::argument
std::string _name
 
std::string _description
 
int indent_width
 
int help_width
 
+ + + + +

+Additional Inherited Members

- Static Public Member Functions inherited from stan::gm::argument
static void split_arg (const std::string &arg, std::string &name, std::string &value)
 
+

Detailed Description

+
+

Definition at line 10 of file valued_argument.hpp.

+

Member Function Documentation

+ +
+
+ + + + + +
+ + + + + + + +
virtual bool stan::gm::valued_argument::is_default ()
+
+pure virtual
+
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
virtual void stan::gm::valued_argument::print (std::ostream * s,
const int depth,
const std::string prefix 
)
+
+inlinevirtual
+
+ +

Implements stan::gm::argument.

+ +

Reimplemented in stan::gm::list_argument.

+ +

Definition at line 14 of file valued_argument.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
virtual void stan::gm::valued_argument::print_help (std::ostream * s,
const int depth,
const bool recurse = false 
)
+
+inlinevirtual
+
+ +

Implements stan::gm::argument.

+ +

Reimplemented in stan::gm::list_argument.

+ +

Definition at line 26 of file valued_argument.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
virtual std::string stan::gm::valued_argument::print_valid ()
+
+pure virtual
+
+
+ +
+
+ + + + + +
+ + + + + + + +
virtual std::string stan::gm::valued_argument::print_value ()
+
+pure virtual
+
+
+

Member Data Documentation

+ +
+
+ + + + + +
+ + + + +
std::string stan::gm::valued_argument::_default
+
+protected
+
+ +

Definition at line 47 of file valued_argument.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + +
std::string stan::gm::valued_argument::_value_type
+
+protected
+
+ +

Definition at line 48 of file valued_argument.hpp.

+ +
+
+
The documentation for this class was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1gm_1_1valued__argument.png b/doc/api/html/classstan_1_1gm_1_1valued__argument.png new file mode 100644 index 0000000000000000000000000000000000000000..50dd13b6ba954f149d031ce3f0ed65ff669f4f56 GIT binary patch literal 20770 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 Kr@}uTKK(y0Zvlw_ literal 0 HcmV?d00001 diff --git a/doc/api/html/classstan_1_1io_1_1cmd__line-members.html b/doc/api/html/classstan_1_1io_1_1cmd__line-members.html new file mode 100644 index 00000000000..579ab5914b6 --- /dev/null +++ b/doc/api/html/classstan_1_1io_1_1cmd__line-members.html @@ -0,0 +1,120 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::io::cmd_line Member List
+
+
+ +

This is the complete list of members for stan::io::cmd_line, including all inherited members.

+ + + + + + + + + +
bare(size_t n, T &x) const stan::io::cmd_lineinline
bare_size() const stan::io::cmd_lineinline
cmd_line(int argc, const char *argv[])stan::io::cmd_lineinline
command()stan::io::cmd_lineinline
has_flag(const std::string &flag) const stan::io::cmd_lineinline
has_key(const std::string &key) const stan::io::cmd_lineinline
print(std::ostream &out) const stan::io::cmd_lineinline
val(const std::string &key, T &x) const stan::io::cmd_lineinline
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1io_1_1cmd__line.html b/doc/api/html/classstan_1_1io_1_1cmd__line.html new file mode 100644 index 00000000000..4997f1eb5ae --- /dev/null +++ b/doc/api/html/classstan_1_1io_1_1cmd__line.html @@ -0,0 +1,478 @@ + + + + + +Stan: stan::io::cmd_line Class Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::io::cmd_line Class Reference
+
+
+ +

Parses and stores command-line arguments. + More...

+ +

#include <cmd_line.hpp>

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 cmd_line (int argc, const char *argv[])
 Construct a command-line argument object from the specified command-line arguments.
 
std::string command ()
 Returns the name of the command itself.
 
bool has_key (const std::string &key) const
 Return true if the specified key is defined.
 
template<typename T >
bool val (const std::string &key, T &x) const
 Returns the value for the key provided.
 
bool has_flag (const std::string &flag) const
 Return true if the specified flag is defined.
 
size_t bare_size () const
 Return the number of bare arguments.
 
template<typename T >
bool bare (size_t n, T &x) const
 Returns the bare argument.
 
void print (std::ostream &out) const
 Print a human readable parsed form of the command-line arguments to the specified output stream.
 
+

Detailed Description

+

Parses and stores command-line arguments.

+

Command-line arguments are organized into four types.

+

Command: The first argument (at index 0) is just the command itself. There method command() retrieves the command.

+

Key/Value: The second type of argument is a key-value pair, which must be in the form –key=val. Two hyphens are used to separate arguments from negated numbers. The method has_key(const std::string&) indicates if there is a key and val(const std::string&,T&) writes its value into a reference (whose type is templated; any type understand by the output operator >> is acceptable.

+

Flag: Flags are specified as –flag. The method has_flag(const std::string&) tests if a flag is present.

+

Bare Argument: Bare arguments are any arguments that are not prefixed with two hyphens (). The method bare_size() returns the number of bare arguments and they are retrieved with the generic method bare(const std::string&,T&).

+ +

Definition at line 113 of file cmd_line.hpp.

+

Constructor & Destructor Documentation

+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
stan::io::cmd_line::cmd_line (int argc,
const char * argv[] 
)
+
+inline
+
+ +

Construct a command-line argument object from the specified command-line arguments.

+
Parameters
+ + + +
argcNumber of arguments.
argvArgument strings.
+
+
+ +

Definition at line 142 of file cmd_line.hpp.

+ +
+
+

Member Function Documentation

+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
bool stan::io::cmd_line::bare (size_t n,
T & x 
) const
+
+inline
+
+ +

Returns the bare argument.

+

If the specified index is valid for bare arguments, write the bare argument at the specified index into the specified reference, and otherwise return false without modifying the reference.

+
Parameters
+ + + +
[in]nBare argument position.
[out]xReference to result.
+
+
+
Returns
true if there were enough bare arguments.
+
Template Parameters
+ + +
TType of value returned.
+
+
+ +

Definition at line 230 of file cmd_line.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
size_t stan::io::cmd_line::bare_size () const
+
+inline
+
+ +

Return the number of bare arguments.

+
Returns
Number of bare arguments.
+ +

Definition at line 212 of file cmd_line.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
std::string stan::io::cmd_line::command ()
+
+inline
+
+ +

Returns the name of the command itself.

+

The command is always supplied as the first argument (at index 0).

+
Returns
Name of command.
+ +

Definition at line 155 of file cmd_line.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
bool stan::io::cmd_line::has_flag (const std::string & flag) const
+
+inline
+
+ +

Return true if the specified flag is defined.

+
Parameters
+ + +
flagFlag to test.
+
+
+
Returns
true if flag is defined.
+ +

Definition at line 203 of file cmd_line.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
bool stan::io::cmd_line::has_key (const std::string & key) const
+
+inline
+
+ +

Return true if the specified key is defined.

+
Parameters
+ + +
keyKey to test.
+
+
+
Returns
true if it has a value.
+ +

Definition at line 165 of file cmd_line.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::io::cmd_line::print (std::ostream & out) const
+
+inline
+
+ +

Print a human readable parsed form of the command-line arguments to the specified output stream.

+
Parameters
+ + +
[out]outOutput stream.
+
+
+ +

Definition at line 245 of file cmd_line.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
bool stan::io::cmd_line::val (const std::string & key,
T & x 
) const
+
+inline
+
+ +

Returns the value for the key provided.

+

If the specified key is defined, write the value of the key into the specified reference and return true, otherwise do not modify the reference and return false.

+

The conversions defined by std::ostream are used to convert the base string value to the specified type. Thus this method will work as long as operator>>() is defined for the specified type.

+
Parameters
+ + + +
[in]keyKey whose value is returned.
[out]xReference to value.
+
+
+
Returns
False if the key is not found, and true if it is found.
+
Template Parameters
+ + +
Typeof value.
+
+
+ +

Definition at line 189 of file cmd_line.hpp.

+ +
+
+
The documentation for this class was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1io_1_1csv__writer-members.html b/doc/api/html/classstan_1_1io_1_1csv__writer-members.html new file mode 100644 index 00000000000..43a8042aa1c --- /dev/null +++ b/doc/api/html/classstan_1_1io_1_1csv__writer-members.html @@ -0,0 +1,121 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::io::csv_writer Member List
+
+
+ +

This is the complete list of members for stan::io::csv_writer, including all inherited members.

+ + + + + + + + + + +
comma()stan::io::csv_writerinline
csv_writer(std::ostream &o)stan::io::csv_writerinline
newline()stan::io::csv_writerinline
write(int n)stan::io::csv_writerinline
write(double x)stan::io::csv_writerinline
write(const Eigen::Matrix< double, R, C > &m)stan::io::csv_writerinline
write(const std::string &s)stan::io::csv_writerinline
write_col_major(const Eigen::Matrix< double, R, C > &m)stan::io::csv_writerinline
write_row_major(const Eigen::Matrix< double, R, C > &m)stan::io::csv_writerinline
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1io_1_1csv__writer.html b/doc/api/html/classstan_1_1io_1_1csv__writer.html new file mode 100644 index 00000000000..00899e6c445 --- /dev/null +++ b/doc/api/html/classstan_1_1io_1_1csv__writer.html @@ -0,0 +1,457 @@ + + + + + +Stan: stan::io::csv_writer Class Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::io::csv_writer Class Reference
+
+
+ +

Writes Stan variables in comma-separated-value format to an output stream. + More...

+ +

#include <csv_writer.hpp>

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

void comma ()
 Write a comma.
 
 csv_writer (std::ostream &o)
 Construct a CSV writer that writes to the specified output stream.
 
void newline ()
 Write a newline character.
 
void write (int n)
 Write a value.
 
void write (double x)
 Write a value.
 
template<int R, int C>
void write_row_major (const Eigen::Matrix< double, R, C > &m)
 Write a value.
 
template<int R, int C>
void write_col_major (const Eigen::Matrix< double, R, C > &m)
 Write a value in column-major order.
 
template<int R, int C>
void write (const Eigen::Matrix< double, R, C > &m)
 
void write (const std::string &s)
 Write a value.
 
+

Detailed Description

+

Writes Stan variables in comma-separated-value format to an output stream.

+

All output is written to the same line and separated by commas. Use the newline() method to advance to the next line of CSV output.

+ +

Definition at line 21 of file csv_writer.hpp.

+

Constructor & Destructor Documentation

+ +
+
+ + + + + +
+ + + + + + + + +
stan::io::csv_writer::csv_writer (std::ostream & o)
+
+inline
+
+ +

Construct a CSV writer that writes to the specified output stream.

+
Parameters
+ + +
oOutput stream on which to write.
+
+
+ +

Definition at line 49 of file csv_writer.hpp.

+ +
+
+

Member Function Documentation

+ +
+
+ + + + + +
+ + + + + + + +
void stan::io::csv_writer::comma ()
+
+inline
+
+ +

Write a comma.

+

On the first call do nothing, subsequently write a comma.

+ +

Definition at line 34 of file csv_writer.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
void stan::io::csv_writer::newline ()
+
+inline
+
+ +

Write a newline character.

+

End a line of output and start a new line. This method needs to be called rather than writing a newline to the output stream because it resets the comma flag.

+ +

Definition at line 61 of file csv_writer.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::io::csv_writer::write (int n)
+
+inline
+
+ +

Write a value.

+

Write the specified integer to the output stream on the current line.

+
Parameters
+ + +
nInteger to write.
+
+
+ +

Definition at line 74 of file csv_writer.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::io::csv_writer::write (double x)
+
+inline
+
+ +

Write a value.

+

Write the specified double to the output stream on the current line.

+
Parameters
+ + +
xDouble to write.
+
+
+ +

Definition at line 87 of file csv_writer.hpp.

+ +
+
+ +
+
+
+template<int R, int C>
+ + + + + +
+ + + + + + + + +
void stan::io::csv_writer::write (const Eigen::Matrix< double, R, C > & m)
+
+inline
+
+ +

Definition at line 125 of file csv_writer.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::io::csv_writer::write (const std::string & s)
+
+inline
+
+ +

Write a value.

+

Write the specified string to the output stream with quotes around it and quotes inside escaped to double quotes.

+
Parameters
+ + +
sString to write.
+
+
+ +

Definition at line 138 of file csv_writer.hpp.

+ +
+
+ +
+
+
+template<int R, int C>
+ + + + + +
+ + + + + + + + +
void stan::io::csv_writer::write_col_major (const Eigen::Matrix< double, R, C > & m)
+
+inline
+
+ +

Write a value in column-major order.

+

Write the specified matrix to the output stream in column-major order.

+
Parameters
+ + +
mMatrix of doubles to write.
+
+
+ +

Definition at line 117 of file csv_writer.hpp.

+ +
+
+ +
+
+
+template<int R, int C>
+ + + + + +
+ + + + + + + + +
void stan::io::csv_writer::write_row_major (const Eigen::Matrix< double, R, C > & m)
+
+inline
+
+ +

Write a value.

+

Write the specified matrix to the output stream in row-major order.

+
Parameters
+ + +
mMatrix to write.
+
+
+ +

Definition at line 101 of file csv_writer.hpp.

+ +
+
+
The documentation for this class was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1io_1_1dump-members.html b/doc/api/html/classstan_1_1io_1_1dump-members.html new file mode 100644 index 00000000000..d456ce8707d --- /dev/null +++ b/doc/api/html/classstan_1_1io_1_1dump-members.html @@ -0,0 +1,133 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::io::dump Member List
+
+
+ +

This is the complete list of members for stan::io::dump, including all inherited members.

+ + + + + + + + + + + + + + + + + + + + + + +
add_vec(std::stringstream &msg, const std::vector< size_t > &dims) const stan::io::var_contextinline
contains_i(const std::string &name) const stan::io::dumpinlinevirtual
contains_r(const std::string &name) const stan::io::dumpinlinevirtual
dims_i(const std::string &name) const stan::io::dumpinlinevirtual
dims_r(const std::string &name) const stan::io::dumpinlinevirtual
dump(std::istream &in)stan::io::dumpinline
names_i(std::vector< std::string > &names) const stan::io::dumpinlinevirtual
names_r(std::vector< std::string > &names) const stan::io::dumpinlinevirtual
remove(const std::string &name)stan::io::dumpinline
to_vec()stan::io::var_contextinlinestatic
to_vec(size_t n1)stan::io::var_contextinlinestatic
to_vec(size_t n1, size_t n2)stan::io::var_contextinlinestatic
to_vec(size_t n1, size_t n2, size_t n3)stan::io::var_contextinlinestatic
to_vec(size_t n1, size_t n2, size_t n3, size_t n4)stan::io::var_contextinlinestatic
to_vec(size_t n1, size_t n2, size_t n3, size_t n4, size_t n5)stan::io::var_contextinlinestatic
to_vec(size_t n1, size_t n2, size_t n3, size_t n4, size_t n5, size_t n6)stan::io::var_contextinlinestatic
to_vec(size_t n1, size_t n2, size_t n3, size_t n4, size_t n5, size_t n6, size_t n7)stan::io::var_contextinlinestatic
to_vec(size_t n1, size_t n2, size_t n3, size_t n4, size_t n5, size_t n6, size_t n7, size_t n8)stan::io::var_contextinlinestatic
validate_dims(const std::string &stage, const std::string &name, const std::string &base_type, const std::vector< size_t > &dims_declared) const stan::io::var_contextinline
vals_i(const std::string &name) const stan::io::dumpinlinevirtual
vals_r(const std::string &name) const stan::io::dumpinlinevirtual
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1io_1_1dump.html b/doc/api/html/classstan_1_1io_1_1dump.html new file mode 100644 index 00000000000..75bdf2ee319 --- /dev/null +++ b/doc/api/html/classstan_1_1io_1_1dump.html @@ -0,0 +1,565 @@ + + + + + +Stan: stan::io::dump Class Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::io::dump Class Reference
+
+
+ +

Represents named arrays with dimensions. + More...

+ +

#include <dump.hpp>

+
+Inheritance diagram for stan::io::dump:
+
+
+ + +stan::io::var_context + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 dump (std::istream &in)
 Construct a dump object from the specified input stream.
 
bool contains_r (const std::string &name) const
 Return true if this dump contains the specified variable name is defined.
 
bool contains_i (const std::string &name) const
 Return true if this dump contains an integer valued array with the specified name.
 
std::vector< double > vals_r (const std::string &name) const
 Return the double values for the variable with the specified name or null.
 
std::vector< size_t > dims_r (const std::string &name) const
 Return the dimensions for the double variable with the specified name.
 
std::vector< int > vals_i (const std::string &name) const
 Return the integer values for the variable with the specified name.
 
std::vector< size_t > dims_i (const std::string &name) const
 Return the dimensions for the integer variable with the specified name.
 
virtual void names_r (std::vector< std::string > &names) const
 Return a list of the names of the floating point variables in the dump.
 
virtual void names_i (std::vector< std::string > &names) const
 Return a list of the names of the integer variables in the dump.
 
bool remove (const std::string &name)
 Remove variable from the object.
 
- Public Member Functions inherited from stan::io::var_context
void add_vec (std::stringstream &msg, const std::vector< size_t > &dims) const
 
void validate_dims (const std::string &stage, const std::string &name, const std::string &base_type, const std::vector< size_t > &dims_declared) const
 
+ + + + + + + + + + + + + + + + + + + + +

+Additional Inherited Members

- Static Public Member Functions inherited from stan::io::var_context
static std::vector< size_t > to_vec ()
 
static std::vector< size_t > to_vec (size_t n1)
 
static std::vector< size_t > to_vec (size_t n1, size_t n2)
 
static std::vector< size_t > to_vec (size_t n1, size_t n2, size_t n3)
 
static std::vector< size_t > to_vec (size_t n1, size_t n2, size_t n3, size_t n4)
 
static std::vector< size_t > to_vec (size_t n1, size_t n2, size_t n3, size_t n4, size_t n5)
 
static std::vector< size_t > to_vec (size_t n1, size_t n2, size_t n3, size_t n4, size_t n5, size_t n6)
 
static std::vector< size_t > to_vec (size_t n1, size_t n2, size_t n3, size_t n4, size_t n5, size_t n6, size_t n7)
 
static std::vector< size_t > to_vec (size_t n1, size_t n2, size_t n3, size_t n4, size_t n5, size_t n6, size_t n7, size_t n8)
 
+

Detailed Description

+

Represents named arrays with dimensions.

+

A dump object represents a dump of named arrays with dimensions. The arrays may have any dimensionality. The values for an array are typed to double or int.

+

See dump_reader for more information on the format.

+

Dump objects are created from reading dump files from an input stream.

+

The dimensions and values of variables may be accessed by name.

+ +

Definition at line 843 of file dump.hpp.

+

Constructor & Destructor Documentation

+ +
+
+ + + + + +
+ + + + + + + + +
stan::io::dump::dump (std::istream & in)
+
+inline
+
+ +

Construct a dump object from the specified input stream.

+

Warning: This method does not close the input stream.

+
Parameters
+ + +
inInput stream from which to read.
+
+
+ +

Definition at line 875 of file dump.hpp.

+ +
+
+

Member Function Documentation

+ +
+
+ + + + + +
+ + + + + + + + +
bool stan::io::dump::contains_i (const std::string & name) const
+
+inlinevirtual
+
+ +

Return true if this dump contains an integer valued array with the specified name.

+
Parameters
+ + +
nameVariable name to test.
+
+
+
Returns
true if the variable name has an integer array value.
+ +

Implements stan::io::var_context.

+ +

Definition at line 913 of file dump.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
bool stan::io::dump::contains_r (const std::string & name) const
+
+inlinevirtual
+
+ +

Return true if this dump contains the specified variable name is defined.

+

This method returns true even if the values are all integers.

+
Parameters
+ + +
nameVariable name to test.
+
+
+
Returns
true if the variable exists.
+ +

Implements stan::io::var_context.

+ +

Definition at line 901 of file dump.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
std::vector<size_t> stan::io::dump::dims_i (const std::string & name) const
+
+inlinevirtual
+
+ +

Return the dimensions for the integer variable with the specified name.

+
Parameters
+ + +
nameName of variable.
+
+
+
Returns
Dimensions of variable.
+ +

Implements stan::io::var_context.

+ +

Definition at line 975 of file dump.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
std::vector<size_t> stan::io::dump::dims_r (const std::string & name) const
+
+inlinevirtual
+
+ +

Return the dimensions for the double variable with the specified name.

+
Parameters
+ + +
nameName of variable.
+
+
+
Returns
Dimensions of variable.
+ +

Implements stan::io::var_context.

+ +

Definition at line 945 of file dump.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
virtual void stan::io::dump::names_i (std::vector< std::string > & names) const
+
+inlinevirtual
+
+ +

Return a list of the names of the integer variables in the dump.

+
Parameters
+ + +
namesVector to store the list of names in.
+
+
+ +

Implements stan::io::var_context.

+ +

Definition at line 1004 of file dump.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
virtual void stan::io::dump::names_r (std::vector< std::string > & names) const
+
+inlinevirtual
+
+ +

Return a list of the names of the floating point variables in the dump.

+
Parameters
+ + +
namesVector to store the list of names in.
+
+
+ +

Implements stan::io::var_context.

+ +

Definition at line 988 of file dump.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
bool stan::io::dump::remove (const std::string & name)
+
+inline
+
+ +

Remove variable from the object.

+
Parameters
+ + +
nameName of the variable to remove.
+
+
+
Returns
If variable is removed returns true, else returns false.
+ +

Definition at line 1021 of file dump.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
std::vector<int> stan::io::dump::vals_i (const std::string & name) const
+
+inlinevirtual
+
+ +

Return the integer values for the variable with the specified name.

+
Parameters
+ + +
nameName of variable.
+
+
+
Returns
Values.
+ +

Implements stan::io::var_context.

+ +

Definition at line 961 of file dump.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
std::vector<double> stan::io::dump::vals_r (const std::string & name) const
+
+inlinevirtual
+
+ +

Return the double values for the variable with the specified name or null.

+
Parameters
+ + +
nameName of variable.
+
+
+
Returns
Values of variable.
+ +

Implements stan::io::var_context.

+ +

Definition at line 924 of file dump.hpp.

+ +
+
+
The documentation for this class was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1io_1_1dump.png b/doc/api/html/classstan_1_1io_1_1dump.png new file mode 100644 index 0000000000000000000000000000000000000000..1d2ee422bf589bae7bacf71a953dab3f07766cf6 GIT binary patch literal 531 zcmV+u0_^>XP)vTJkN^MxkN^Mxkifve1&Q1r00008bW%=J0RR90|NsC0)yh;d0004^NklT#Y#ThbJcjw{RfA`@8&}^DTc@(iC8=4<)EvIB=b1b|#Y(m| znX0+hZk5MLWU97h*J`-DXJZ%YYr6KXh;^BVH7|vH#x7OP<$Hx)LJ!#|^}J$xy|C}? z;QYKV*?HT?>|K)O*Sa&eHP0Qn?8|*w%C%ri=;{t_`nTH0wWoFh$7(f$sHbAVtntd{T;u^8nq3Q7^PY|m*K>6g&uU(Z8_nJq zH;jF7u$S!84+hn4o_DT!?(;cty`FL?Ij+8(-RpCJPj#8RvjJk&*#NO>%r-M?qaU|5 V8XA$0o`(Pc002ovPDHLkV1j-H1110f literal 0 HcmV?d00001 diff --git a/doc/api/html/classstan_1_1io_1_1dump__reader-members.html b/doc/api/html/classstan_1_1io_1_1dump__reader-members.html new file mode 100644 index 00000000000..f5de48a29a3 --- /dev/null +++ b/doc/api/html/classstan_1_1io_1_1dump__reader-members.html @@ -0,0 +1,121 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::io::dump_reader Member List
+
+ +
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1io_1_1dump__reader.html b/doc/api/html/classstan_1_1io_1_1dump__reader.html new file mode 100644 index 00000000000..3caf876ee49 --- /dev/null +++ b/doc/api/html/classstan_1_1io_1_1dump__reader.html @@ -0,0 +1,428 @@ + + + + + +Stan: stan::io::dump_reader Class Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::io::dump_reader Class Reference
+
+
+ +

Reads data from S-plus dump format. + More...

+ +

#include <dump.hpp>

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 dump_reader ()
 Construct a reader for standard input.
 
 dump_reader (std::istream &in)
 Construct a reader for the specified input stream.
 
 ~dump_reader ()
 Destroy this reader.
 
std::string name ()
 Return the name of the most recently read variable.
 
std::vector< size_t > dims ()
 Return the dimensions of the most recently read variable.
 
bool is_int ()
 Checks if the last item read is integer.
 
std::vector< int > int_values ()
 Returns the integer values from the last item if the last item read was an integer and the empty vector otherwise.
 
std::vector< double > double_values ()
 Returns the floating point values from the last item if the last item read contained floating point values and the empty vector otherwise.
 
bool next ()
 Read the next value from the input stream, returning true if successful and false if no further input may be read.
 
+

Detailed Description

+

Reads data from S-plus dump format.

+

A dump_reader parses data from the S-plus dump format, a human-readable ASCII representation of arbitrarily dimensioned arrays of integers and arrays of floating point values.

+

Stan's dump reader is limited to reading integers, scalars and arrays of arbitrary dimensionality of integers and scalars. It is able to read from a file consisting of a sequence of dumped variables.

+

There cannot be any NA (i.e., undefined) values, because these cannot be represented as double values.

+

The dump reader class follows a standard scanner pattern. The method next() is called to scan the next input. The type, dimensions, and values of the input is then available through method calls. Here, the type is either double or integer, and the values are the name of the variable and its array of values. If there is a single value, the dimension array is empty. For a list, the dimension array contains a single entry for the number of values. For an array, the dimensions are the dimensions of the array.

+

Reads are performed in an "S-compatible" mode whereby a string such as "1" or "-127" denotes and integer, whereas a string such as "1." or "0.9e-5" represents a floating point value.

+

For dumping, arrays are indexed in last-index major fashion, which corresponds to column-major order for matrices represented as two-dimensional arrays. As a result, the first indices change fastest. For instance, if there is an three-dimensional array x with dimensions [2,2,2], then there are 8 values, provided in the order

+

[0,0,0], [1,0,0], [0,1,0], [1,1,0], [0,0,1], [1,0,1], [0,1,1], [1,1,1].

+

definitions ::= definition+

+

definition ::= name ("->" | '=') value optional_semicolon

+

name ::= char* | ''' char* ''' | '"' char* '"'

+

value ::= value<int> | value<double>

+

value<T> ::= T | seq<T> | 'struct' '(' seq<T> ',' ".Dim" '=' seq<int> ')'

+

seq<int> ::= int ':' int | cseq<int>

+

seq<double> ::= cseq<double>

+

cseq<T> ::= 'c' '(' T % ',' ')'

+ +

Definition at line 428 of file dump.hpp.

+

Constructor & Destructor Documentation

+ +
+
+ + + + + +
+ + + + + + + +
stan::io::dump_reader::dump_reader ()
+
+inline
+
+ +

Construct a reader for standard input.

+ +

Definition at line 735 of file dump.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
stan::io::dump_reader::dump_reader (std::istream & in)
+
+inline
+
+ +

Construct a reader for the specified input stream.

+
Parameters
+ + +
inInput stream reference from which to read.
+
+
+ +

Definition at line 742 of file dump.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
stan::io::dump_reader::~dump_reader ()
+
+inline
+
+ +

Destroy this reader.

+ +

Definition at line 747 of file dump.hpp.

+ +
+
+

Member Function Documentation

+ +
+
+ + + + + +
+ + + + + + + +
std::vector<size_t> stan::io::dump_reader::dims ()
+
+inline
+
+ +

Return the dimensions of the most recently read variable.

+
Returns
Last dimensions.
+ +

Definition at line 765 of file dump.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
std::vector<double> stan::io::dump_reader::double_values ()
+
+inline
+
+ +

Returns the floating point values from the last item if the last item read contained floating point values and the empty vector otherwise.

+
Returns
Floating point values of last item.
+ +

Definition at line 797 of file dump.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
std::vector<int> stan::io::dump_reader::int_values ()
+
+inline
+
+ +

Returns the integer values from the last item if the last item read was an integer and the empty vector otherwise.

+
Returns
Integer values of last item.
+ +

Definition at line 786 of file dump.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
bool stan::io::dump_reader::is_int ()
+
+inline
+
+ +

Checks if the last item read is integer.

+

Return true if the value(s) in the most recently read item are integer values and false if they are floating point.

+ +

Definition at line 776 of file dump.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
std::string stan::io::dump_reader::name ()
+
+inline
+
+ +

Return the name of the most recently read variable.

+
Returns
Name of most recently read variable.
+ +

Definition at line 755 of file dump.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
bool stan::io::dump_reader::next ()
+
+inline
+
+ +

Read the next value from the input stream, returning true if successful and false if no further input may be read.

+
Returns
Return true if a fresh variable was read.
+ +

Definition at line 808 of file dump.hpp.

+ +
+
+
The documentation for this class was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1io_1_1dump__writer-members.html b/doc/api/html/classstan_1_1io_1_1dump__writer-members.html new file mode 100644 index 00000000000..23fea39557b --- /dev/null +++ b/doc/api/html/classstan_1_1io_1_1dump__writer-members.html @@ -0,0 +1,119 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::io::dump_writer Member List
+
+
+ +

This is the complete list of members for stan::io::dump_writer, including all inherited members.

+ + + + + + + + +
dump_list(std::string name, std::vector< T > xs)stan::io::dump_writerinline
dump_structure(std::string, std::vector< size_t > dims, std::vector< T > xs)stan::io::dump_writerinline
dump_var(std::string name, T x)stan::io::dump_writerinline
dump_writer()stan::io::dump_writerinline
dump_writer(std::ostream &out)stan::io::dump_writerinline
write(const std::string &name, const T &x)stan::io::dump_writerinline
~dump_writer()stan::io::dump_writerinline
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1io_1_1dump__writer.html b/doc/api/html/classstan_1_1io_1_1dump__writer.html new file mode 100644 index 00000000000..d48a957832a --- /dev/null +++ b/doc/api/html/classstan_1_1io_1_1dump__writer.html @@ -0,0 +1,466 @@ + + + + + +Stan: stan::io::dump_writer Class Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::io::dump_writer Class Reference
+
+
+ +

Writes data into the S-plus dump format. + More...

+ +

#include <dump.hpp>

+ + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 dump_writer ()
 Construct a dump writer writing to standard output.
 
 dump_writer (std::ostream &out)
 Construct a dump writer writing to the specified output stream.
 
 ~dump_writer ()
 Destroy this writer.
 
template<typename T >
void write (const std::string &name, const T &x)
 Write a variable with the specified name and value.
 
template<typename T >
void dump_structure (std::string, std::vector< size_t > dims, std::vector< T > xs)
 Write a structure variable with the specified name, dimensions, and integer or double values.
 
template<typename T >
void dump_list (std::string name, std::vector< T > xs)
 Write a list variable with the specified name and integer or double values.
 
template<typename T >
void dump_var (std::string name, T x)
 Write a list variable with the specified name and integer or double values.
 
+

Detailed Description

+

Writes data into the S-plus dump format.

+

A dump_writer writes data into the S-plus dump format, a human-readable ASCII representation of arbitrarily dimensioned arrays of integers and arrays of floating point values.

+ +

Definition at line 37 of file dump.hpp.

+

Constructor & Destructor Documentation

+ +
+
+ + + + + +
+ + + + + + + +
stan::io::dump_writer::dump_writer ()
+
+inline
+
+ +

Construct a dump writer writing to standard output.

+ +

Definition at line 266 of file dump.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
stan::io::dump_writer::dump_writer (std::ostream & out)
+
+inline
+
+ +

Construct a dump writer writing to the specified output stream.

+
Parameters
+ + +
outOutput stream for writing.
+
+
+ +

Definition at line 274 of file dump.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
stan::io::dump_writer::~dump_writer ()
+
+inline
+
+ +

Destroy this writer.

+ +

Definition at line 279 of file dump.hpp.

+ +
+
+

Member Function Documentation

+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
void stan::io::dump_writer::dump_list (std::string name,
std::vector< T > xs 
)
+
+inline
+
+ +

Write a list variable with the specified name and integer or double values.

+
Parameters
+ + + +
nameName of variable.
xsValues of variable.
+
+
+
Template Parameters
+ + +
Tdouble or int.
+
+
+ +

Definition at line 334 of file dump.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
void stan::io::dump_writer::dump_structure (std::string ,
std::vector< size_t > dims,
std::vector< T > xs 
)
+
+inline
+
+ +

Write a structure variable with the specified name, dimensions, and integer or double values.

+

name Name of variable.

+
Parameters
+ + + +
dimsDimensions of variable.
xsValues of variable in last-index major format.
+
+
+
Template Parameters
+ + +
Tdouble or int.
+
+
+ +

Definition at line 316 of file dump.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
void stan::io::dump_writer::dump_var (std::string name,
x 
)
+
+inline
+
+ +

Write a list variable with the specified name and integer or double values.

+
Parameters
+ + + +
nameName of variable.
xValue of variable.
+
+
+
Template Parameters
+ + +
Tdouble or int.
+
+
+ +

Definition at line 349 of file dump.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
void stan::io::dump_writer::write (const std::string & name,
const T & x 
)
+
+inline
+
+ +

Write a variable with the specified name and value.

+

This method will work for basic types consisting of doubles and integers, Eigen types for vectors, row vectors and matrices. If this method works for a type, it will work for a standard vector of that type.

+

Information concerning final type organization into Eigen vectors, row vectors and matrices is lost.

+

All data is written in final-index dominant ordering.

+
Parameters
+ + + +
nameName of variable to write.
xValue of variable.
+
+
+
Template Parameters
+ + +
Typeof variable being written.
+
+
+ +

Definition at line 300 of file dump.hpp.

+ +
+
+
The documentation for this class was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1io_1_1mcmc__writer-members.html b/doc/api/html/classstan_1_1io_1_1mcmc__writer-members.html new file mode 100644 index 00000000000..61113cc50fd --- /dev/null +++ b/doc/api/html/classstan_1_1io_1_1mcmc__writer-members.html @@ -0,0 +1,121 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::io::mcmc_writer< M > Member List
+
+
+ +

This is the complete list of members for stan::io::mcmc_writer< M >, including all inherited members.

+ + + + + + + + + + +
mcmc_writer(std::ostream *sample_stream, std::ostream *diagnostic_stream, std::ostream *msg_stream=0)stan::io::mcmc_writer< M >inline
print_adapt_finish(stan::mcmc::base_mcmc *sampler, std::ostream *stream)stan::io::mcmc_writer< M >inline
print_adapt_finish(stan::mcmc::base_mcmc *sampler)stan::io::mcmc_writer< M >inline
print_diagnostic_names(stan::mcmc::sample sample, stan::mcmc::base_mcmc *sampler, M &model)stan::io::mcmc_writer< M >inline
print_diagnostic_params(stan::mcmc::sample &sample, stan::mcmc::base_mcmc *sampler)stan::io::mcmc_writer< M >inline
print_sample_names(stan::mcmc::sample &sample, stan::mcmc::base_mcmc *sampler, M &model)stan::io::mcmc_writer< M >inline
print_sample_params(RNG &rng, stan::mcmc::sample &sample, stan::mcmc::base_mcmc &sampler, M &model)stan::io::mcmc_writer< M >inline
print_timing(double warmDeltaT, double sampleDeltaT, std::ostream *stream, const std::string &prefix="")stan::io::mcmc_writer< M >inline
print_timing(double warmDeltaT, double sampleDeltaT)stan::io::mcmc_writer< M >inline
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1io_1_1mcmc__writer.html b/doc/api/html/classstan_1_1io_1_1mcmc__writer.html new file mode 100644 index 00000000000..cc1fad375e8 --- /dev/null +++ b/doc/api/html/classstan_1_1io_1_1mcmc__writer.html @@ -0,0 +1,524 @@ + + + + + +Stan: stan::io::mcmc_writer< M > Class Template Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::io::mcmc_writer< M > Class Template Reference
+
+
+ +

#include <mcmc_writer.hpp>

+ + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 mcmc_writer (std::ostream *sample_stream, std::ostream *diagnostic_stream, std::ostream *msg_stream=0)
 
void print_sample_names (stan::mcmc::sample &sample, stan::mcmc::base_mcmc *sampler, M &model)
 
template<class RNG >
void print_sample_params (RNG &rng, stan::mcmc::sample &sample, stan::mcmc::base_mcmc &sampler, M &model)
 
void print_adapt_finish (stan::mcmc::base_mcmc *sampler, std::ostream *stream)
 
void print_adapt_finish (stan::mcmc::base_mcmc *sampler)
 
void print_diagnostic_names (stan::mcmc::sample sample, stan::mcmc::base_mcmc *sampler, M &model)
 
void print_diagnostic_params (stan::mcmc::sample &sample, stan::mcmc::base_mcmc *sampler)
 
void print_timing (double warmDeltaT, double sampleDeltaT, std::ostream *stream, const std::string &prefix="")
 
void print_timing (double warmDeltaT, double sampleDeltaT)
 
+

Detailed Description

+

template<class M>
+class stan::io::mcmc_writer< M >

+ + +

Definition at line 18 of file mcmc_writer.hpp.

+

Constructor & Destructor Documentation

+ +
+
+
+template<class M>
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
stan::io::mcmc_writer< M >::mcmc_writer (std::ostream * sample_stream,
std::ostream * diagnostic_stream,
std::ostream * msg_stream = 0 
)
+
+inline
+
+ +

Definition at line 22 of file mcmc_writer.hpp.

+ +
+
+

Member Function Documentation

+ +
+
+
+template<class M>
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
void stan::io::mcmc_writer< M >::print_adapt_finish (stan::mcmc::base_mcmcsampler,
std::ostream * stream 
)
+
+inline
+
+ +

Definition at line 82 of file mcmc_writer.hpp.

+ +
+
+ +
+
+
+template<class M>
+ + + + + +
+ + + + + + + + +
void stan::io::mcmc_writer< M >::print_adapt_finish (stan::mcmc::base_mcmcsampler)
+
+inline
+
+ +

Definition at line 91 of file mcmc_writer.hpp.

+ +
+
+ +
+
+
+template<class M>
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
void stan::io::mcmc_writer< M >::print_diagnostic_names (stan::mcmc::sample sample,
stan::mcmc::base_mcmcsampler,
M & model 
)
+
+inline
+
+ +

Definition at line 96 of file mcmc_writer.hpp.

+ +
+
+ +
+
+
+template<class M>
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
void stan::io::mcmc_writer< M >::print_diagnostic_params (stan::mcmc::samplesample,
stan::mcmc::base_mcmcsampler 
)
+
+inline
+
+ +

Definition at line 120 of file mcmc_writer.hpp.

+ +
+
+ +
+
+
+template<class M>
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
void stan::io::mcmc_writer< M >::print_sample_names (stan::mcmc::samplesample,
stan::mcmc::base_mcmcsampler,
M & model 
)
+
+inline
+
+ +

Definition at line 30 of file mcmc_writer.hpp.

+ +
+
+ +
+
+
+template<class M>
+
+template<class RNG >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
void stan::io::mcmc_writer< M >::print_sample_params (RNG & rng,
stan::mcmc::samplesample,
stan::mcmc::base_mcmcsampler,
M & model 
)
+
+inline
+
+ +

Definition at line 51 of file mcmc_writer.hpp.

+ +
+
+ +
+
+
+template<class M>
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
void stan::io::mcmc_writer< M >::print_timing (double warmDeltaT,
double sampleDeltaT,
std::ostream * stream,
const std::string & prefix = "" 
)
+
+inline
+
+ +

Definition at line 139 of file mcmc_writer.hpp.

+ +
+
+ +
+
+
+template<class M>
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
void stan::io::mcmc_writer< M >::print_timing (double warmDeltaT,
double sampleDeltaT 
)
+
+inline
+
+ +

Definition at line 156 of file mcmc_writer.hpp.

+ +
+
+
The documentation for this class was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1io_1_1reader-members.html b/doc/api/html/classstan_1_1io_1_1reader-members.html new file mode 100644 index 00000000000..f3543cd668d --- /dev/null +++ b/doc/api/html/classstan_1_1io_1_1reader-members.html @@ -0,0 +1,213 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::io::reader< T > Member List
+
+
+ +

This is the complete list of members for stan::io::reader< T >, including all inherited members.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
available()stan::io::reader< T >inline
available_i()stan::io::reader< T >inline
cholesky_factor(size_t M, size_t N)stan::io::reader< T >inline
cholesky_factor_constrain(size_t M, size_t N)stan::io::reader< T >inline
cholesky_factor_constrain(size_t M, size_t N, T &lp)stan::io::reader< T >inline
corr()stan::io::reader< T >inline
corr_constrain()stan::io::reader< T >inline
corr_constrain(T &lp)stan::io::reader< T >inline
corr_matrix(size_t k)stan::io::reader< T >inline
corr_matrix_constrain(size_t k)stan::io::reader< T >inline
corr_matrix_constrain(size_t k, T &lp)stan::io::reader< T >inline
cov_matrix(size_t k)stan::io::reader< T >inline
cov_matrix_constrain(size_t k)stan::io::reader< T >inline
cov_matrix_constrain(size_t k, T &lp)stan::io::reader< T >inline
integer()stan::io::reader< T >inline
integer_constrain()stan::io::reader< T >inline
integer_constrain(T &)stan::io::reader< T >inline
integer_lb(int lb)stan::io::reader< T >inline
integer_lb_constrain(int lb)stan::io::reader< T >inline
integer_lb_constrain(int lb, T &)stan::io::reader< T >inline
integer_lub(int lb, int ub)stan::io::reader< T >inline
integer_lub_constrain(int lb, int ub)stan::io::reader< T >inline
integer_lub_constrain(int lb, int ub, T &)stan::io::reader< T >inline
integer_ub(int ub)stan::io::reader< T >inline
integer_ub_constrain(int ub)stan::io::reader< T >inline
integer_ub_constrain(int ub, T &)stan::io::reader< T >inline
map_matrix_t typedefstan::io::reader< T >
map_row_vector_t typedefstan::io::reader< T >
map_vector_t typedefstan::io::reader< T >
matrix(size_t m, size_t n)stan::io::reader< T >inline
matrix_constrain(size_t m, size_t n)stan::io::reader< T >inline
matrix_constrain(size_t m, size_t n, T &)stan::io::reader< T >inline
matrix_lb(const TL lb, size_t m, size_t n)stan::io::reader< T >inline
matrix_lb_constrain(const TL lb, size_t m, size_t n)stan::io::reader< T >inline
matrix_lb_constrain(const TL lb, size_t m, size_t n, T &lp)stan::io::reader< T >inline
matrix_lub(const TL lb, const TU ub, size_t m, size_t n)stan::io::reader< T >inline
matrix_lub_constrain(const TL lb, const TU ub, size_t m, size_t n)stan::io::reader< T >inline
matrix_lub_constrain(const TL lb, const TU ub, size_t m, size_t n, T &lp)stan::io::reader< T >inline
matrix_t typedefstan::io::reader< T >
matrix_ub(const TU ub, size_t m, size_t n)stan::io::reader< T >inline
matrix_ub_constrain(const TU ub, size_t m, size_t n)stan::io::reader< T >inline
matrix_ub_constrain(const TU ub, size_t m, size_t n, T &lp)stan::io::reader< T >inline
ordered(size_t k)stan::io::reader< T >inline
ordered_constrain(size_t k)stan::io::reader< T >inline
ordered_constrain(size_t k, T &lp)stan::io::reader< T >inline
positive_ordered(size_t k)stan::io::reader< T >inline
positive_ordered_constrain(size_t k)stan::io::reader< T >inline
positive_ordered_constrain(size_t k, T &lp)stan::io::reader< T >inline
prob()stan::io::reader< T >inline
prob_constrain()stan::io::reader< T >inline
prob_constrain(T &lp)stan::io::reader< T >inline
reader(std::vector< T > &data_r, std::vector< int > &data_i)stan::io::reader< T >inline
row_vector(size_t m)stan::io::reader< T >inline
row_vector_constrain(size_t m)stan::io::reader< T >inline
row_vector_constrain(size_t m, T &)stan::io::reader< T >inline
row_vector_lb(const TL lb, size_t m)stan::io::reader< T >inline
row_vector_lb_constrain(const TL lb, size_t m)stan::io::reader< T >inline
row_vector_lb_constrain(const TL lb, size_t m, T &lp)stan::io::reader< T >inline
row_vector_lub(const TL lb, const TU ub, size_t m)stan::io::reader< T >inline
row_vector_lub_constrain(const TL lb, const TU ub, size_t m)stan::io::reader< T >inline
row_vector_lub_constrain(const TL lb, const TU ub, size_t m, T &lp)stan::io::reader< T >inline
row_vector_t typedefstan::io::reader< T >
row_vector_ub(const TU ub, size_t m)stan::io::reader< T >inline
row_vector_ub_constrain(const TU ub, size_t m)stan::io::reader< T >inline
row_vector_ub_constrain(const TU ub, size_t m, T &lp)stan::io::reader< T >inline
scalar()stan::io::reader< T >inline
scalar_constrain()stan::io::reader< T >inline
scalar_constrain(T &)stan::io::reader< T >inline
scalar_lb(const TL lb)stan::io::reader< T >inline
scalar_lb_constrain(const TL lb)stan::io::reader< T >inline
scalar_lb_constrain(const TL lb, T &lp)stan::io::reader< T >inline
scalar_lub(const TL lb, const TU ub)stan::io::reader< T >inline
scalar_lub_constrain(const TL lb, const TU ub)stan::io::reader< T >inline
scalar_lub_constrain(TL lb, TU ub, T &lp)stan::io::reader< T >inline
scalar_pos()stan::io::reader< T >inline
scalar_pos_constrain()stan::io::reader< T >inline
scalar_pos_constrain(T &lp)stan::io::reader< T >inline
scalar_ub(TU ub)stan::io::reader< T >inline
scalar_ub_constrain(const TU ub)stan::io::reader< T >inline
scalar_ub_constrain(const TU ub, T &lp)stan::io::reader< T >inline
simplex(size_t k)stan::io::reader< T >inline
simplex_constrain(size_t k)stan::io::reader< T >inline
simplex_constrain(size_t k, T &lp)stan::io::reader< T >inline
std_vector(size_t m)stan::io::reader< T >inline
unit_vector(size_t k)stan::io::reader< T >inline
unit_vector_constrain(size_t k)stan::io::reader< T >inline
unit_vector_constrain(size_t k, T &lp)stan::io::reader< T >inline
vector(size_t m)stan::io::reader< T >inline
vector_constrain(size_t m)stan::io::reader< T >inline
vector_constrain(size_t m, T &)stan::io::reader< T >inline
vector_lb(const TL lb, size_t m)stan::io::reader< T >inline
vector_lb_constrain(const TL lb, size_t m)stan::io::reader< T >inline
vector_lb_constrain(const TL lb, size_t m, T &lp)stan::io::reader< T >inline
vector_lub(const TL lb, const TU ub, size_t m)stan::io::reader< T >inline
vector_lub_constrain(const TL lb, const TU ub, size_t m)stan::io::reader< T >inline
vector_lub_constrain(const TL lb, const TU ub, size_t m, T &lp)stan::io::reader< T >inline
vector_t typedefstan::io::reader< T >
vector_ub(const TU ub, size_t m)stan::io::reader< T >inline
vector_ub_constrain(const TU ub, size_t m)stan::io::reader< T >inline
vector_ub_constrain(const TU ub, size_t m, T &lp)stan::io::reader< T >inline
~reader()stan::io::reader< T >inline
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1io_1_1reader.html b/doc/api/html/classstan_1_1io_1_1reader.html new file mode 100644 index 00000000000..571a7c39fec --- /dev/null +++ b/doc/api/html/classstan_1_1io_1_1reader.html @@ -0,0 +1,4761 @@ + + + + + +Stan: stan::io::reader< T > Class Template Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::io::reader< T > Class Template Reference
+
+
+ +

A stream-based reader for integer, scalar, vector, matrix and array data types, with Jacobian calculations. + More...

+ +

#include <reader.hpp>

+ + + + + + + + + + + + + + +

+Public Types

typedef Eigen::Matrix< T,
+Eigen::Dynamic, Eigen::Dynamic > 
matrix_t
 
typedef Eigen::Matrix< T,
+Eigen::Dynamic, 1 > 
vector_t
 
typedef Eigen::Matrix< T,
+1, Eigen::Dynamic > 
row_vector_t
 
typedef Eigen::Map< matrix_tmap_matrix_t
 
typedef Eigen::Map< vector_tmap_vector_t
 
typedef Eigen::Map< row_vector_tmap_row_vector_t
 
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 reader (std::vector< T > &data_r, std::vector< int > &data_i)
 Construct a variable reader using the specified vectors as the source of scalar and integer values for data.
 
 ~reader ()
 Destroy this variable reader.
 
size_t available ()
 Return the number of scalars remaining to be read.
 
size_t available_i ()
 Return the number of integers remaining to be read.
 
int integer ()
 Return the next integer in the integer sequence.
 
int integer_constrain ()
 Return the next integer in the integer sequence.
 
int integer_constrain (T &)
 Return the next integer in the integer sequence.
 
scalar ()
 Return the next scalar in the sequence.
 
scalar_constrain ()
 Return the next scalar.
 
scalar_constrain (T &)
 Return the next scalar in the sequence, incrementing the specified reference with the log absolute Jacobian determinant.
 
std::vector< T > std_vector (size_t m)
 Return a standard library vector of the specified dimensionality made up of the next scalars.
 
vector_t vector (size_t m)
 Return a column vector of specified dimensionality made up of the next scalars.
 
vector_t vector_constrain (size_t m)
 Return a column vector of specified dimensionality made up of the next scalars.
 
vector_t vector_constrain (size_t m, T &)
 Return a column vector of specified dimensionality made up of the next scalars.
 
row_vector_t row_vector (size_t m)
 Return a row vector of specified dimensionality made up of the next scalars.
 
row_vector_t row_vector_constrain (size_t m)
 Return a row vector of specified dimensionality made up of the next scalars.
 
row_vector_t row_vector_constrain (size_t m, T &)
 Return a row vector of specified dimensionality made up of the next scalars.
 
matrix_t matrix (size_t m, size_t n)
 Return a matrix of the specified dimensionality made up of the next scalars arranged in column-major order.
 
matrix_t matrix_constrain (size_t m, size_t n)
 Return a matrix of the specified dimensionality made up of the next scalars arranged in column-major order.
 
matrix_t matrix_constrain (size_t m, size_t n, T &)
 Return a matrix of the specified dimensionality made up of the next scalars arranged in column-major order.
 
int integer_lb (int lb)
 Return the next integer, checking that it is greater than or equal to the specified lower bound.
 
int integer_lb_constrain (int lb)
 Return the next integer, checking that it is greater than or equal to the specified lower bound.
 
int integer_lb_constrain (int lb, T &)
 Return the next integer, checking that it is greater than or equal to the specified lower bound.
 
int integer_ub (int ub)
 Return the next integer, checking that it is less than or equal to the specified upper bound.
 
int integer_ub_constrain (int ub)
 Return the next integer, checking that it is less than or equal to the specified upper bound.
 
int integer_ub_constrain (int ub, T &)
 Return the next integer, checking that it is less than or equal to the specified upper bound.
 
int integer_lub (int lb, int ub)
 Return the next integer, checking that it is less than or equal to the specified upper bound.
 
int integer_lub_constrain (int lb, int ub)
 Return the next integer, checking that it is less than or equal to the specified upper bound.
 
int integer_lub_constrain (int lb, int ub, T &)
 Return the next integer, checking that it is less than or equal to the specified upper bound.
 
scalar_pos ()
 Return the next scalar, checking that it is positive.
 
scalar_pos_constrain ()
 Return the next scalar, transformed to be positive.
 
scalar_pos_constrain (T &lp)
 Return the next scalar transformed to be positive, incrementing the specified reference with the log absolute determinant of the Jacobian.
 
template<typename TL >
scalar_lb (const TL lb)
 Return the next scalar, checking that it is greater than or equal to the specified lower bound.
 
template<typename TL >
scalar_lb_constrain (const TL lb)
 Return the next scalar transformed to have the specified lower bound.
 
template<typename TL >
scalar_lb_constrain (const TL lb, T &lp)
 Return the next scalar transformed to have the specified lower bound, incrementing the specified reference with the log of the absolute Jacobian determinant of the transform.
 
template<typename TU >
scalar_ub (TU ub)
 Return the next scalar, checking that it is less than or equal to the specified upper bound.
 
template<typename TU >
scalar_ub_constrain (const TU ub)
 Return the next scalar transformed to have the specified upper bound.
 
template<typename TU >
scalar_ub_constrain (const TU ub, T &lp)
 Return the next scalar transformed to have the specified upper bound, incrementing the specified reference with the log of the absolute Jacobian determinant of the transform.
 
template<typename TL , typename TU >
scalar_lub (const TL lb, const TU ub)
 Return the next scalar, checking that it is between the specified lower and upper bound.
 
template<typename TL , typename TU >
scalar_lub_constrain (const TL lb, const TU ub)
 Return the next scalar transformed to be between the specified lower and upper bounds.
 
template<typename TL , typename TU >
scalar_lub_constrain (TL lb, TU ub, T &lp)
 Return the next scalar transformed to be between the the specified lower and upper bounds.
 
prob ()
 Return the next scalar, checking that it is a valid value for a probability, between 0 (inclusive) and 1 (inclusive).
 
prob_constrain ()
 Return the next scalar transformed to be a probability between 0 and 1.
 
prob_constrain (T &lp)
 Return the next scalar transformed to be a probability between 0 and 1, incrementing the specified reference with the log of the absolute Jacobian determinant.
 
corr ()
 Return the next scalar, checking that it is a valid value for a correlation, between -1 (inclusive) and 1 (inclusive).
 
corr_constrain ()
 Return the next scalar transformed to be a correlation between -1 and 1.
 
corr_constrain (T &lp)
 Return the next scalar transformed to be a (partial) correlation between -1 and 1, incrementing the specified reference with the log of the absolute Jacobian determinant.
 
vector_t unit_vector (size_t k)
 Return a unit_vector of the specified size made up of the next scalars.
 
Eigen::Matrix< T,
+Eigen::Dynamic, 1 > 
unit_vector_constrain (size_t k)
 Return the next unit_vector transformed vector of the specified length.
 
vector_t unit_vector_constrain (size_t k, T &lp)
 Return the next unit_vector of the specified size (using one fewer unconstrained scalars), incrementing the specified reference with the log absolute Jacobian determinant.
 
vector_t simplex (size_t k)
 Return a simplex of the specified size made up of the next scalars.
 
Eigen::Matrix< T,
+Eigen::Dynamic, 1 > 
simplex_constrain (size_t k)
 Return the next simplex transformed vector of the specified length.
 
vector_t simplex_constrain (size_t k, T &lp)
 Return the next simplex of the specified size (using one fewer unconstrained scalars), incrementing the specified reference with the log absolute Jacobian determinant.
 
vector_t ordered (size_t k)
 Return the next vector of specified size containing values in ascending order.
 
vector_t ordered_constrain (size_t k)
 Return the next ordered vector of the specified length.
 
vector_t ordered_constrain (size_t k, T &lp)
 Return the next ordered vector of the specified size, incrementing the specified reference with the log absolute Jacobian of the determinant.
 
vector_t positive_ordered (size_t k)
 Return the next vector of specified size containing positive values in ascending order.
 
vector_t positive_ordered_constrain (size_t k)
 Return the next positive ordered vector of the specified length.
 
vector_t positive_ordered_constrain (size_t k, T &lp)
 Return the next positive_ordered vector of the specified size, incrementing the specified reference with the log absolute Jacobian of the determinant.
 
matrix_t cholesky_factor (size_t M, size_t N)
 Return the next Cholesky factor with the specified dimensionality, reading it directly without transforms.
 
matrix_t cholesky_factor_constrain (size_t M, size_t N)
 Return the next Cholesky factor with the specified dimensionality, reading from an unconstrained vector of the appropriate size.
 
matrix_t cholesky_factor_constrain (size_t M, size_t N, T &lp)
 Return the next Cholesky factor with the specified dimensionality, reading from an unconstrained vector of the appropriate size, and increment the log probability reference with the log Jacobian adjustment for the transform.
 
matrix_t cov_matrix (size_t k)
 Return the next covariance matrix with the specified dimensionality.
 
matrix_t cov_matrix_constrain (size_t k)
 Return the next covariance matrix of the specified dimensionality.
 
matrix_t cov_matrix_constrain (size_t k, T &lp)
 Return the next covariance matrix of the specified dimensionality, incrementing the specified reference with the log absolute Jacobian determinant.
 
matrix_t corr_matrix (size_t k)
 Returns the next correlation matrix of the specified dimensionality.
 
matrix_t corr_matrix_constrain (size_t k)
 Return the next correlation matrix of the specified dimensionality.
 
matrix_t corr_matrix_constrain (size_t k, T &lp)
 Return the next correlation matrix of the specified dimensionality, incrementing the specified reference with the log absolute Jacobian determinant.
 
template<typename TL >
vector_t vector_lb (const TL lb, size_t m)
 
template<typename TL >
vector_t vector_lb_constrain (const TL lb, size_t m)
 
template<typename TL >
vector_t vector_lb_constrain (const TL lb, size_t m, T &lp)
 
template<typename TL >
row_vector_t row_vector_lb (const TL lb, size_t m)
 
template<typename TL >
row_vector_t row_vector_lb_constrain (const TL lb, size_t m)
 
template<typename TL >
row_vector_t row_vector_lb_constrain (const TL lb, size_t m, T &lp)
 
template<typename TL >
matrix_t matrix_lb (const TL lb, size_t m, size_t n)
 
template<typename TL >
matrix_t matrix_lb_constrain (const TL lb, size_t m, size_t n)
 
template<typename TL >
matrix_t matrix_lb_constrain (const TL lb, size_t m, size_t n, T &lp)
 
template<typename TU >
vector_t vector_ub (const TU ub, size_t m)
 
template<typename TU >
vector_t vector_ub_constrain (const TU ub, size_t m)
 
template<typename TU >
vector_t vector_ub_constrain (const TU ub, size_t m, T &lp)
 
template<typename TU >
row_vector_t row_vector_ub (const TU ub, size_t m)
 
template<typename TU >
row_vector_t row_vector_ub_constrain (const TU ub, size_t m)
 
template<typename TU >
row_vector_t row_vector_ub_constrain (const TU ub, size_t m, T &lp)
 
template<typename TU >
matrix_t matrix_ub (const TU ub, size_t m, size_t n)
 
template<typename TU >
matrix_t matrix_ub_constrain (const TU ub, size_t m, size_t n)
 
template<typename TU >
matrix_t matrix_ub_constrain (const TU ub, size_t m, size_t n, T &lp)
 
template<typename TL , typename TU >
vector_t vector_lub (const TL lb, const TU ub, size_t m)
 
template<typename TL , typename TU >
vector_t vector_lub_constrain (const TL lb, const TU ub, size_t m)
 
template<typename TL , typename TU >
vector_t vector_lub_constrain (const TL lb, const TU ub, size_t m, T &lp)
 
template<typename TL , typename TU >
row_vector_t row_vector_lub (const TL lb, const TU ub, size_t m)
 
template<typename TL , typename TU >
row_vector_t row_vector_lub_constrain (const TL lb, const TU ub, size_t m)
 
template<typename TL , typename TU >
row_vector_t row_vector_lub_constrain (const TL lb, const TU ub, size_t m, T &lp)
 
template<typename TL , typename TU >
matrix_t matrix_lub (const TL lb, const TU ub, size_t m, size_t n)
 
template<typename TL , typename TU >
matrix_t matrix_lub_constrain (const TL lb, const TU ub, size_t m, size_t n)
 
template<typename TL , typename TU >
matrix_t matrix_lub_constrain (const TL lb, const TU ub, size_t m, size_t n, T &lp)
 
+

Detailed Description

+

template<typename T>
+class stan::io::reader< T >

+ +

A stream-based reader for integer, scalar, vector, matrix and array data types, with Jacobian calculations.

+

The template parameter T represents the type of scalars and the values in vectors and matrices. The only requirement on the template type T is that a double can be copied into it, as in

+

T t = 0.0;

+

This includes double itself and the reverse-mode algorithmic differentiation class stan::agrad::var.

+

For transformed values, the scalar type parameter T must support the transforming operations, such as exp(x) for positive-bounded variables. It must also support equality and inequality tests with double values.

+
Template Parameters
+ + +
TBasic scalar type.
+
+
+ +

Definition at line 34 of file reader.hpp.

+

Member Typedef Documentation

+ +
+
+
+template<typename T >
+ + + + +
typedef Eigen::Map<matrix_t> stan::io::reader< T >::map_matrix_t
+
+ +

Definition at line 67 of file reader.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + +
typedef Eigen::Map<row_vector_t> stan::io::reader< T >::map_row_vector_t
+
+ +

Definition at line 69 of file reader.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + +
typedef Eigen::Map<vector_t> stan::io::reader< T >::map_vector_t
+
+ +

Definition at line 68 of file reader.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + +
typedef Eigen::Matrix<T,Eigen::Dynamic,Eigen::Dynamic> stan::io::reader< T >::matrix_t
+
+ +

Definition at line 63 of file reader.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + +
typedef Eigen::Matrix<T,1,Eigen::Dynamic> stan::io::reader< T >::row_vector_t
+
+ +

Definition at line 65 of file reader.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + +
typedef Eigen::Matrix<T,Eigen::Dynamic,1> stan::io::reader< T >::vector_t
+
+ +

Definition at line 64 of file reader.hpp.

+ +
+
+

Constructor & Destructor Documentation

+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
stan::io::reader< T >::reader (std::vector< T > & data_r,
std::vector< int > & data_i 
)
+
+inline
+
+ +

Construct a variable reader using the specified vectors as the source of scalar and integer values for data.

+

This class holds a reference to the specified data vectors.

+

Attempting to read beyond the end of the data or integer value sequences raises a runtime exception.

+
Parameters
+ + + +
data_rSequence of scalar values.
data_iSequence of integer values.
+
+
+ +

Definition at line 83 of file reader.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + +
stan::io::reader< T >::~reader ()
+
+inline
+
+ +

Destroy this variable reader.

+ +

Definition at line 94 of file reader.hpp.

+ +
+
+

Member Function Documentation

+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + +
size_t stan::io::reader< T >::available ()
+
+inline
+
+ +

Return the number of scalars remaining to be read.

+
Returns
Number of scalars left to read.
+ +

Definition at line 101 of file reader.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + +
size_t stan::io::reader< T >::available_i ()
+
+inline
+
+ +

Return the number of integers remaining to be read.

+
Returns
Number of integers left to read.
+ +

Definition at line 110 of file reader.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
matrix_t stan::io::reader< T >::cholesky_factor (size_t M,
size_t N 
)
+
+inline
+
+ +

Return the next Cholesky factor with the specified dimensionality, reading it directly without transforms.

+
Parameters
+ + + +
MRows of Cholesky factor
NColumns of Cholesky factor
+
+
+
Returns
Next Cholesky factor.
+
Exceptions
+ + +
std::domain_errorif the matrix is not a valid Cholesky factor.
+
+
+ +

Definition at line 945 of file reader.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
matrix_t stan::io::reader< T >::cholesky_factor_constrain (size_t M,
size_t N 
)
+
+inline
+
+ +

Return the next Cholesky factor with the specified dimensionality, reading from an unconstrained vector of the appropriate size.

+
Parameters
+ + + +
MRows of Cholesky factor
NColumns of Cholesky factor
+
+
+
Returns
Next Cholesky factor.
+
Exceptions
+ + +
std::domain_errorif the matrix is not a valid Cholesky factor.
+
+
+ +

Definition at line 962 of file reader.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
matrix_t stan::io::reader< T >::cholesky_factor_constrain (size_t M,
size_t N,
T & lp 
)
+
+inline
+
+ +

Return the next Cholesky factor with the specified dimensionality, reading from an unconstrained vector of the appropriate size, and increment the log probability reference with the log Jacobian adjustment for the transform.

+
Parameters
+ + + + +
MRows of Cholesky factor
NColumns of Cholesky factor
[in,out]lplog probability
+
+
+
Returns
Next Cholesky factor.
+
Exceptions
+ + +
std::domain_errorif the matrix is not a valid Cholesky factor.
+
+
+ +

Definition at line 980 of file reader.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + +
T stan::io::reader< T >::corr ()
+
+inline
+
+ +

Return the next scalar, checking that it is a valid value for a correlation, between -1 (inclusive) and 1 (inclusive).

+

See stan::math::check_bounded(T).

+
Returns
Next correlation value.
+
Exceptions
+ + +
std::runtime_errorif the value is not valid for a correlation
+
+
+ +

Definition at line 720 of file reader.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + +
T stan::io::reader< T >::corr_constrain ()
+
+inline
+
+ +

Return the next scalar transformed to be a correlation between -1 and 1.

+

See stan::prob::corr_constrain(T).

+
Returns
The next scalar transformed to a correlation.
+ +

Definition at line 734 of file reader.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + +
T stan::io::reader< T >::corr_constrain (T & lp)
+
+inline
+
+ +

Return the next scalar transformed to be a (partial) correlation between -1 and 1, incrementing the specified reference with the log of the absolute Jacobian determinant.

+

See stan::prob::corr_constrain(T,T&).

+
Parameters
+ + +
lpThe reference to the variable holding the log probability to increment.
+
+
+
Returns
The next scalar transformed to a correlation.
+ +

Definition at line 749 of file reader.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + +
matrix_t stan::io::reader< T >::corr_matrix (size_t k)
+
+inline
+
+ +

Returns the next correlation matrix of the specified dimensionality.

+

See stan::math::check_corr_matrix(Matrix).

+
Parameters
+ + +
kDimensionality of correlation matrix.
+
+
+
Returns
Next correlation matrix of the specified dimensionality.
+
Exceptions
+ + +
std::runtime_errorif the matrix is not a correlation matrix
+
+
+ +

Definition at line 1041 of file reader.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + +
matrix_t stan::io::reader< T >::corr_matrix_constrain (size_t k)
+
+inline
+
+ +

Return the next correlation matrix of the specified dimensionality.

+

See stan::prob::corr_matrix_constrain(Matrix).

+
Parameters
+ + +
kDimensionality of correlation matrix.
+
+
+
Returns
Next correlation matrix of the specified dimensionality.
+ +

Definition at line 1055 of file reader.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
matrix_t stan::io::reader< T >::corr_matrix_constrain (size_t k,
T & lp 
)
+
+inline
+
+ +

Return the next correlation matrix of the specified dimensionality, incrementing the specified reference with the log absolute Jacobian determinant.

+

See stan::prob::corr_matrix_constrain(Matrix,T&).

+
Parameters
+ + + +
kDimensionality of the (square) correlation matrix.
lpLog probability reference to increment.
+
+
+
Returns
The next correlation matrix of the specified dimensionality.
+ +

Definition at line 1070 of file reader.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + +
matrix_t stan::io::reader< T >::cov_matrix (size_t k)
+
+inline
+
+ +

Return the next covariance matrix with the specified dimensionality.

+

See stan::math::check_cov_matrix(Matrix).

+
Parameters
+ + +
kDimensionality of covariance matrix.
+
+
+
Returns
Next covariance matrix of the specified dimensionality.
+
Exceptions
+ + +
std::runtime_errorif the matrix is not a valid covariance matrix
+
+
+ +

Definition at line 996 of file reader.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + +
matrix_t stan::io::reader< T >::cov_matrix_constrain (size_t k)
+
+inline
+
+ +

Return the next covariance matrix of the specified dimensionality.

+

See stan::prob::cov_matrix_constrain(Matrix).

+
Parameters
+ + +
kDimensionality of covariance matrix.
+
+
+
Returns
Next covariance matrix of the specified dimensionality.
+ +

Definition at line 1010 of file reader.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
matrix_t stan::io::reader< T >::cov_matrix_constrain (size_t k,
T & lp 
)
+
+inline
+
+ +

Return the next covariance matrix of the specified dimensionality, incrementing the specified reference with the log absolute Jacobian determinant.

+

See stan::prob::cov_matrix_constrain(Matrix,T&).

+
Parameters
+ + + +
kDimensionality of the (square) covariance matrix.
lpLog probability reference to increment.
+
+
+
Returns
The next covariance matrix of the specified dimensionality.
+ +

Definition at line 1026 of file reader.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + +
int stan::io::reader< T >::integer ()
+
+inline
+
+ +

Return the next integer in the integer sequence.

+
Returns
Next integer value.
+ +

Definition at line 119 of file reader.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + +
int stan::io::reader< T >::integer_constrain ()
+
+inline
+
+ +

Return the next integer in the integer sequence.

+

This form is a convenience method to make compiling easier; its behavior is the same as int()

+
Returns
Next integer value.
+ +

Definition at line 133 of file reader.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + +
int stan::io::reader< T >::integer_constrain (T & )
+
+inline
+
+ +

Return the next integer in the integer sequence.

+

This form is a convenience method to make compiling easier; its behavior is the same as integer()

+
Returns
Next integer value.
+ +

Definition at line 144 of file reader.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + +
int stan::io::reader< T >::integer_lb (int lb)
+
+inline
+
+ +

Return the next integer, checking that it is greater than or equal to the specified lower bound.

+
Parameters
+ + +
lbLower bound.
+
+
+
Returns
Next integer read.
+
Exceptions
+ + +
std::runtime_errorIf the next integer read is not greater than or equal to the lower bound.
+
+
+ +

Definition at line 331 of file reader.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + +
int stan::io::reader< T >::integer_lb_constrain (int lb)
+
+inline
+
+ +

Return the next integer, checking that it is greater than or equal to the specified lower bound.

+
Parameters
+ + +
lbLower bound.
+
+
+
Returns
Next integer read.
+
Exceptions
+ + +
std::runtime_errorIf the next integer read is not greater than or equal to the lower bound.
+
+
+ +

Definition at line 347 of file reader.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
int stan::io::reader< T >::integer_lb_constrain (int lb,
T &  
)
+
+inline
+
+ +

Return the next integer, checking that it is greater than or equal to the specified lower bound.

+
Parameters
+ + +
lbLower bound. lp Log probability (ignored because no Jacobian)
+
+
+
Returns
Next integer read.
+
Exceptions
+ + +
std::runtime_errorIf the next integer read is not greater than or equal to the lower bound.
+
+
+ +

Definition at line 360 of file reader.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
int stan::io::reader< T >::integer_lub (int lb,
int ub 
)
+
+inline
+
+ +

Return the next integer, checking that it is less than or equal to the specified upper bound.

+

Even if the upper bounds and lower bounds are not consistent, the next integer value will be consumed.

+
Parameters
+ + + +
lbLower bound.
ubUpper bound.
+
+
+
Returns
Next integer read.
+
Exceptions
+ + +
std::runtime_errorIf the next integer read is not less than or equal to the upper bound.
+
+
+ +

Definition at line 419 of file reader.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
int stan::io::reader< T >::integer_lub_constrain (int lb,
int ub 
)
+
+inline
+
+ +

Return the next integer, checking that it is less than or equal to the specified upper bound.

+
Parameters
+ + + +
lbLower bound.
ubUpper bound.
+
+
+
Returns
Next integer read.
+
Exceptions
+ + +
std::runtime_errorIf the next integer read is not less than or equal to the upper bound.
+
+
+ +

Definition at line 443 of file reader.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
int stan::io::reader< T >::integer_lub_constrain (int lb,
int ub,
T &  
)
+
+inline
+
+ +

Return the next integer, checking that it is less than or equal to the specified upper bound.

+
Parameters
+ + + +
lbLower bound.
ubUpper bound. lp Log probability (ignored because no Jacobian)
+
+
+
Returns
Next integer read.
+
Exceptions
+ + +
std::runtime_errorIf the next integer read is not less than or equal to the upper bound.
+
+
+ +

Definition at line 457 of file reader.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + +
int stan::io::reader< T >::integer_ub (int ub)
+
+inline
+
+ +

Return the next integer, checking that it is less than or equal to the specified upper bound.

+
Parameters
+ + +
ubUpper bound.
+
+
+
Returns
Next integer read.
+
Exceptions
+ + +
std::runtime_errorIf the next integer read is not less than or equal to the upper bound.
+
+
+ +

Definition at line 374 of file reader.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + +
int stan::io::reader< T >::integer_ub_constrain (int ub)
+
+inline
+
+ +

Return the next integer, checking that it is less than or equal to the specified upper bound.

+
Parameters
+ + +
ubUpper bound.
+
+
+
Returns
Next integer read.
+
Exceptions
+ + +
std::runtime_errorIf the next integer read is not less than or equal to the upper bound.
+
+
+ +

Definition at line 390 of file reader.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
int stan::io::reader< T >::integer_ub_constrain (int ub,
T &  
)
+
+inline
+
+ +

Return the next integer, checking that it is less than or equal to the specified upper bound.

+
Parameters
+ + +
ubUpper bound. lp Log probability (ignored because no Jacobian)
+
+
+
Returns
Next integer read.
+
Exceptions
+ + +
std::runtime_errorIf the next integer read is not less than or equal to the upper bound.
+
+
+ +

Definition at line 403 of file reader.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
matrix_t stan::io::reader< T >::matrix (size_t m,
size_t n 
)
+
+inline
+
+ +

Return a matrix of the specified dimensionality made up of the next scalars arranged in column-major order.

+

Row-major reading means that if a matrix of m=2 rows and n=3 columns is reada and the next scalar values are 1,2,3,4,5,6, the result is

+
 
+a = 1 4
+    2 5
+    3 6
Parameters
+ + + +
mNumber of rows.
nNumber of columns.
+
+
+
Returns
Eigen::Matrix made up of the next scalars.
+ +

Definition at line 287 of file reader.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
matrix_t stan::io::reader< T >::matrix_constrain (size_t m,
size_t n 
)
+
+inline
+
+ +

Return a matrix of the specified dimensionality made up of the next scalars arranged in column-major order.

+

The constraint is a no-op. See matrix(size_t, size_t) for more information.

+
Parameters
+ + + +
mNumber of rows.
nNumber of columns.
+
+
+
Returns
Matrix made up of the next scalars.
+ +

Definition at line 301 of file reader.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
matrix_t stan::io::reader< T >::matrix_constrain (size_t m,
size_t n,
T &  
)
+
+inline
+
+ +

Return a matrix of the specified dimensionality made up of the next scalars arranged in column-major order.

+

The constraint is a no-op, hence the log probability is not incremented. See matrix(size_t, size_t) for more information.

+
Parameters
+ + + +
mNumber of rows.
nNumber of columns. lp Log probability to increment.
+
+
+
Returns
Matrix made up of the next scalars.
+ +

Definition at line 317 of file reader.hpp.

+ +
+
+ +
+
+
+template<typename T >
+
+template<typename TL >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
matrix_t stan::io::reader< T >::matrix_lb (const TL lb,
size_t m,
size_t n 
)
+
+inline
+
+ +

Definition at line 1120 of file reader.hpp.

+ +
+
+ +
+
+
+template<typename T >
+
+template<typename TL >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
matrix_t stan::io::reader< T >::matrix_lb_constrain (const TL lb,
size_t m,
size_t n 
)
+
+inline
+
+ +

Definition at line 1128 of file reader.hpp.

+ +
+
+ +
+
+
+template<typename T >
+
+template<typename TL >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
matrix_t stan::io::reader< T >::matrix_lb_constrain (const TL lb,
size_t m,
size_t n,
T & lp 
)
+
+inline
+
+ +

Definition at line 1136 of file reader.hpp.

+ +
+
+ +
+
+
+template<typename T >
+
+template<typename TL , typename TU >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
matrix_t stan::io::reader< T >::matrix_lub (const TL lb,
const TU ub,
size_t m,
size_t n 
)
+
+inline
+
+ +

Definition at line 1259 of file reader.hpp.

+ +
+
+ +
+
+
+template<typename T >
+
+template<typename TL , typename TU >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
matrix_t stan::io::reader< T >::matrix_lub_constrain (const TL lb,
const TU ub,
size_t m,
size_t n 
)
+
+inline
+
+ +

Definition at line 1267 of file reader.hpp.

+ +
+
+ +
+
+
+template<typename T >
+
+template<typename TL , typename TU >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
matrix_t stan::io::reader< T >::matrix_lub_constrain (const TL lb,
const TU ub,
size_t m,
size_t n,
T & lp 
)
+
+inline
+
+ +

Definition at line 1275 of file reader.hpp.

+ +
+
+ +
+
+
+template<typename T >
+
+template<typename TU >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
matrix_t stan::io::reader< T >::matrix_ub (const TU ub,
size_t m,
size_t n 
)
+
+inline
+
+ +

Definition at line 1189 of file reader.hpp.

+ +
+
+ +
+
+
+template<typename T >
+
+template<typename TU >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
matrix_t stan::io::reader< T >::matrix_ub_constrain (const TU ub,
size_t m,
size_t n 
)
+
+inline
+
+ +

Definition at line 1197 of file reader.hpp.

+ +
+
+ +
+
+
+template<typename T >
+
+template<typename TU >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
matrix_t stan::io::reader< T >::matrix_ub_constrain (const TU ub,
size_t m,
size_t n,
T & lp 
)
+
+inline
+
+ +

Definition at line 1205 of file reader.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + +
vector_t stan::io::reader< T >::ordered (size_t k)
+
+inline
+
+ +

Return the next vector of specified size containing values in ascending order.

+

See stan::math::check_ordered(T) for behavior on failure.

+
Parameters
+ + +
kSize of returned vector.
+
+
+
Returns
Vector of positive values in ascending order.
+ +

Definition at line 857 of file reader.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + +
vector_t stan::io::reader< T >::ordered_constrain (size_t k)
+
+inline
+
+ +

Return the next ordered vector of the specified length.

+

See stan::prob::ordered_constrain(Matrix).

+
Parameters
+ + +
kLength of returned vector.
+
+
+
Returns
Next ordered vector of the specified length.
+ +

Definition at line 872 of file reader.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
vector_t stan::io::reader< T >::ordered_constrain (size_t k,
T & lp 
)
+
+inline
+
+ +

Return the next ordered vector of the specified size, incrementing the specified reference with the log absolute Jacobian of the determinant.

+

See stan::prob::ordered_constrain(Matrix,T&).

+
Parameters
+ + + +
kSize of vector.
lpLog probability reference to increment.
+
+
+
Returns
Next ordered vector of the specified size.
+ +

Definition at line 887 of file reader.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + +
vector_t stan::io::reader< T >::positive_ordered (size_t k)
+
+inline
+
+ +

Return the next vector of specified size containing positive values in ascending order.

+

See stan::math::check_positive_ordered(T) for behavior on failure.

+
Parameters
+ + +
kSize of returned vector.
+
+
+
Returns
Vector of positive values in ascending order.
+ +

Definition at line 901 of file reader.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + +
vector_t stan::io::reader< T >::positive_ordered_constrain (size_t k)
+
+inline
+
+ +

Return the next positive ordered vector of the specified length.

+

See stan::prob::positive_ordered_constrain(Matrix).

+
Parameters
+ + +
kLength of returned vector.
+
+
+
Returns
Next positive_ordered vector of the specified length.
+ +

Definition at line 916 of file reader.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
vector_t stan::io::reader< T >::positive_ordered_constrain (size_t k,
T & lp 
)
+
+inline
+
+ +

Return the next positive_ordered vector of the specified size, incrementing the specified reference with the log absolute Jacobian of the determinant.

+

See stan::prob::positive_ordered_constrain(Matrix,T&).

+
Parameters
+ + + +
kSize of vector.
lpLog probability reference to increment.
+
+
+
Returns
Next positive_ordered vector of the specified size.
+ +

Definition at line 931 of file reader.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + +
T stan::io::reader< T >::prob ()
+
+inline
+
+ +

Return the next scalar, checking that it is a valid value for a probability, between 0 (inclusive) and 1 (inclusive).

+

See stan::math::check_bounded(T).

+
Returns
Next probability value.
+ +

Definition at line 674 of file reader.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + +
T stan::io::reader< T >::prob_constrain ()
+
+inline
+
+ +

Return the next scalar transformed to be a probability between 0 and 1.

+

See stan::prob::prob_constrain(T).

+
Returns
The next scalar transformed to a probability.
+ +

Definition at line 688 of file reader.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + +
T stan::io::reader< T >::prob_constrain (T & lp)
+
+inline
+
+ +

Return the next scalar transformed to be a probability between 0 and 1, incrementing the specified reference with the log of the absolute Jacobian determinant.

+

See stan::prob::prob_constrain(T).

+
Parameters
+ + +
lpReference to log probability variable to increment.
+
+
+
Returns
The next scalar transformed to a probability.
+ +

Definition at line 702 of file reader.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + +
row_vector_t stan::io::reader< T >::row_vector (size_t m)
+
+inline
+
+ +

Return a row vector of specified dimensionality made up of the next scalars.

+
Parameters
+ + +
mNumber of rows in the vector to read.
+
+
+
Returns
Column vector made up of the next scalars.
+ +

Definition at line 242 of file reader.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + +
row_vector_t stan::io::reader< T >::row_vector_constrain (size_t m)
+
+inline
+
+ +

Return a row vector of specified dimensionality made up of the next scalars.

+

The constraint is a no-op.

+
Parameters
+ + +
mNumber of rows in the vector to read.
+
+
+
Returns
Column vector made up of the next scalars.
+ +

Definition at line 253 of file reader.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
row_vector_t stan::io::reader< T >::row_vector_constrain (size_t m,
T &  
)
+
+inline
+
+ +

Return a row vector of specified dimensionality made up of the next scalars.

+

The constraint is a no-op, so the log probability is not incremented.

+
Parameters
+ + +
mNumber of rows in the vector to read. lp Log probability to increment.
+
+
+
Returns
Column vector made up of the next scalars.
+ +

Definition at line 266 of file reader.hpp.

+ +
+
+ +
+
+
+template<typename T >
+
+template<typename TL >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
row_vector_t stan::io::reader< T >::row_vector_lb (const TL lb,
size_t m 
)
+
+inline
+
+ +

Definition at line 1098 of file reader.hpp.

+ +
+
+ +
+
+
+template<typename T >
+
+template<typename TL >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
row_vector_t stan::io::reader< T >::row_vector_lb_constrain (const TL lb,
size_t m 
)
+
+inline
+
+ +

Definition at line 1105 of file reader.hpp.

+ +
+
+ +
+
+
+template<typename T >
+
+template<typename TL >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
row_vector_t stan::io::reader< T >::row_vector_lb_constrain (const TL lb,
size_t m,
T & lp 
)
+
+inline
+
+ +

Definition at line 1112 of file reader.hpp.

+ +
+
+ +
+
+
+template<typename T >
+
+template<typename TL , typename TU >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
row_vector_t stan::io::reader< T >::row_vector_lub (const TL lb,
const TU ub,
size_t m 
)
+
+inline
+
+ +

Definition at line 1237 of file reader.hpp.

+ +
+
+ +
+
+
+template<typename T >
+
+template<typename TL , typename TU >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
row_vector_t stan::io::reader< T >::row_vector_lub_constrain (const TL lb,
const TU ub,
size_t m 
)
+
+inline
+
+ +

Definition at line 1244 of file reader.hpp.

+ +
+
+ +
+
+
+template<typename T >
+
+template<typename TL , typename TU >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
row_vector_t stan::io::reader< T >::row_vector_lub_constrain (const TL lb,
const TU ub,
size_t m,
T & lp 
)
+
+inline
+
+ +

Definition at line 1251 of file reader.hpp.

+ +
+
+ +
+
+
+template<typename T >
+
+template<typename TU >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
row_vector_t stan::io::reader< T >::row_vector_ub (const TU ub,
size_t m 
)
+
+inline
+
+ +

Definition at line 1167 of file reader.hpp.

+ +
+
+ +
+
+
+template<typename T >
+
+template<typename TU >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
row_vector_t stan::io::reader< T >::row_vector_ub_constrain (const TU ub,
size_t m 
)
+
+inline
+
+ +

Definition at line 1174 of file reader.hpp.

+ +
+
+ +
+
+
+template<typename T >
+
+template<typename TU >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
row_vector_t stan::io::reader< T >::row_vector_ub_constrain (const TU ub,
size_t m,
T & lp 
)
+
+inline
+
+ +

Definition at line 1181 of file reader.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + +
T stan::io::reader< T >::scalar ()
+
+inline
+
+ +

Return the next scalar in the sequence.

+
Returns
Next scalar value.
+ +

Definition at line 155 of file reader.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + +
T stan::io::reader< T >::scalar_constrain ()
+
+inline
+
+ +

Return the next scalar.

+

For arbitrary scalars, constraint is a no-op.

+
Returns
Next scalar.
+ +

Definition at line 167 of file reader.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + +
T stan::io::reader< T >::scalar_constrain (T & )
+
+inline
+
+ +

Return the next scalar in the sequence, incrementing the specified reference with the log absolute Jacobian determinant.

+

With no transformation, the Jacobian increment is a no-op.

+

See scalar_constrain().

+

log_prob Reference to log probability variable to increment.

+
Returns
Next scalar.
+ +

Definition at line 182 of file reader.hpp.

+ +
+
+ +
+
+
+template<typename T >
+
+template<typename TL >
+ + + + + +
+ + + + + + + + +
T stan::io::reader< T >::scalar_lb (const TL lb)
+
+inline
+
+ +

Return the next scalar, checking that it is greater than or equal to the specified lower bound.

+

See stan::math::check_greater_or_equal(T,double).

+
Parameters
+ + +
lbLower bound.
+
+
+
Returns
Next scalar value.
+
Template Parameters
+ + +
TLType of lower bound.
+
+
+
Exceptions
+ + +
std::runtime_errorif the scalar is less than the specified lower bound
+
+
+ +

Definition at line 517 of file reader.hpp.

+ +
+
+ +
+
+
+template<typename T >
+
+template<typename TL >
+ + + + + +
+ + + + + + + + +
T stan::io::reader< T >::scalar_lb_constrain (const TL lb)
+
+inline
+
+ +

Return the next scalar transformed to have the specified lower bound.

+

See stan::prob::lb_constrain(T,double).

+
Template Parameters
+ + +
TLType of lower bound.
+
+
+
Parameters
+ + +
lbLower bound on values.
+
+
+
Returns
Next scalar transformed to have the specified lower bound.
+ +

Definition at line 536 of file reader.hpp.

+ +
+
+ +
+
+
+template<typename T >
+
+template<typename TL >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
T stan::io::reader< T >::scalar_lb_constrain (const TL lb,
T & lp 
)
+
+inline
+
+ +

Return the next scalar transformed to have the specified lower bound, incrementing the specified reference with the log of the absolute Jacobian determinant of the transform.

+

See stan::prob::lb_constrain(T,double,T&).

+
Template Parameters
+ + +
TLType of lower bound.
+
+
+
Parameters
+ + + +
lbLower bound on result.
lpReference to log probability variable to increment.
+
+
+ +

Definition at line 552 of file reader.hpp.

+ +
+
+ +
+
+
+template<typename T >
+
+template<typename TL , typename TU >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
T stan::io::reader< T >::scalar_lub (const TL lb,
const TU ub 
)
+
+inline
+
+ +

Return the next scalar, checking that it is between the specified lower and upper bound.

+

See stan::math::check_bounded(T,double,double).

+
Template Parameters
+ + + +
TLType of lower bound.
TUType of upper bound.
+
+
+
Parameters
+ + + +
lbLower bound.
ubUpper bound.
+
+
+
Returns
Next scalar value.
+
Exceptions
+ + +
std::runtime_errorif the scalar is not between the specified lower and upper bounds.
+
+
+ +

Definition at line 624 of file reader.hpp.

+ +
+
+ +
+
+
+template<typename T >
+
+template<typename TL , typename TU >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
T stan::io::reader< T >::scalar_lub_constrain (const TL lb,
const TU ub 
)
+
+inline
+
+ +

Return the next scalar transformed to be between the specified lower and upper bounds.

+

See stan::prob::lub_constrain(T,double,double).

+
Template Parameters
+ + + +
TLType of lower bound.
TUType of upper bound.
+
+
+
Parameters
+ + + +
lbLower bound.
ubUpper bound.
+
+
+
Returns
Next scalar transformed to fall between the specified bounds.
+ +

Definition at line 644 of file reader.hpp.

+ +
+
+ +
+
+
+template<typename T >
+
+template<typename TL , typename TU >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
T stan::io::reader< T >::scalar_lub_constrain (TL lb,
TU ub,
T & lp 
)
+
+inline
+
+ +

Return the next scalar transformed to be between the the specified lower and upper bounds.

+

See stan::prob::lub_constrain(T,double,double,T&).

+
Parameters
+ + + + +
lbLower bound.
ubUpper bound.
lpReference to log probability variable to increment.
+
+
+
Template Parameters
+ + + + +
TType of scalar.
TLType of lower bound.
TUType of upper bound.
+
+
+ +

Definition at line 662 of file reader.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + +
T stan::io::reader< T >::scalar_pos ()
+
+inline
+
+ +

Return the next scalar, checking that it is positive.

+

See stan::math::check_positive(T).

+
Returns
Next positive scalar.
+
Exceptions
+ + +
std::runtime_errorif x is not positive
+
+
+ +

Definition at line 472 of file reader.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + +
T stan::io::reader< T >::scalar_pos_constrain ()
+
+inline
+
+ +

Return the next scalar, transformed to be positive.

+

See stan::prob::positive_constrain(T).

+
Returns
The next scalar transformed to be positive.
+ +

Definition at line 486 of file reader.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + +
T stan::io::reader< T >::scalar_pos_constrain (T & lp)
+
+inline
+
+ +

Return the next scalar transformed to be positive, incrementing the specified reference with the log absolute determinant of the Jacobian.

+

See stan::prob::positive_constrain(T,T&).

+
Parameters
+ + +
lpReference to log probability variable to increment.
+
+
+
Returns
The next scalar transformed to be positive.
+ +

Definition at line 500 of file reader.hpp.

+ +
+
+ +
+
+
+template<typename T >
+
+template<typename TU >
+ + + + + +
+ + + + + + + + +
T stan::io::reader< T >::scalar_ub (TU ub)
+
+inline
+
+ +

Return the next scalar, checking that it is less than or equal to the specified upper bound.

+

See stan::math::check_less_or_equal(T,double).

+
Template Parameters
+ + +
TUType of upper bound.
+
+
+
Parameters
+ + +
ubUpper bound.
+
+
+
Returns
Next scalar value.
+
Exceptions
+ + +
std::runtime_errorif the scalar is greater than the specified upper bound
+
+
+ +

Definition at line 571 of file reader.hpp.

+ +
+
+ +
+
+
+template<typename T >
+
+template<typename TU >
+ + + + + +
+ + + + + + + + +
T stan::io::reader< T >::scalar_ub_constrain (const TU ub)
+
+inline
+
+ +

Return the next scalar transformed to have the specified upper bound.

+

See stan::prob::ub_constrain(T,double).

+
Template Parameters
+ + +
TUType of upper bound.
+
+
+
Parameters
+ + +
ubUpper bound on values.
+
+
+
Returns
Next scalar transformed to have the specified upper bound.
+ +

Definition at line 589 of file reader.hpp.

+ +
+
+ +
+
+
+template<typename T >
+
+template<typename TU >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
T stan::io::reader< T >::scalar_ub_constrain (const TU ub,
T & lp 
)
+
+inline
+
+ +

Return the next scalar transformed to have the specified upper bound, incrementing the specified reference with the log of the absolute Jacobian determinant of the transform.

+

See stan::prob::ub_constrain(T,double,T&).

+
Template Parameters
+ + +
TUType of upper bound.
+
+
+
Parameters
+ + + +
ubUpper bound on result.
lpReference to log probability variable to increment.
+
+
+ +

Definition at line 605 of file reader.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + +
vector_t stan::io::reader< T >::simplex (size_t k)
+
+inline
+
+ +

Return a simplex of the specified size made up of the next scalars.

+

See stan::math::check_simplex.

+
Parameters
+ + +
kSize of returned simplex.
+
+
+
Returns
Simplex read from the specified size number of scalars.
+
Exceptions
+ + +
std::runtime_errorif the k values is not a simplex.
+
+
+ +

Definition at line 810 of file reader.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + +
Eigen::Matrix<T,Eigen::Dynamic,1> stan::io::reader< T >::simplex_constrain (size_t k)
+
+inline
+
+ +

Return the next simplex transformed vector of the specified length.

+

This operation consumes one less than the specified length number of scalars.

+

See stan::prob::simplex_constrain(Eigen::Matrix).

+
Parameters
+ + +
kNumber of dimensions in resulting simplex.
+
+
+
Returns
Simplex derived from next k-1 scalars.
+ +

Definition at line 827 of file reader.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
vector_t stan::io::reader< T >::simplex_constrain (size_t k,
T & lp 
)
+
+inline
+
+ +

Return the next simplex of the specified size (using one fewer unconstrained scalars), incrementing the specified reference with the log absolute Jacobian determinant.

+

See stan::prob::simplex_constrain(Eigen::Matrix,T&).

+
Parameters
+ + + +
kSize of simplex.
lpLog probability to increment with log absolute Jacobian determinant.
+
+
+
Returns
The next simplex of the specified size.
+ +

Definition at line 843 of file reader.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + +
std::vector<T> stan::io::reader< T >::std_vector (size_t m)
+
+inline
+
+ +

Return a standard library vector of the specified dimensionality made up of the next scalars.

+
Parameters
+ + +
mSize of vector.
+
+
+
Returns
Vector made up of the next scalars.
+ +

Definition at line 194 of file reader.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + +
vector_t stan::io::reader< T >::unit_vector (size_t k)
+
+inline
+
+ +

Return a unit_vector of the specified size made up of the next scalars.

+

See stan::math::check_unit_vector.

+
Parameters
+ + +
kSize of returned unit_vector.
+
+
+
Returns
Simplex read from the specified size number of scalars.
+
Exceptions
+ + +
std::runtime_errorif the k values is not a unit_vector.
+
+
+ +

Definition at line 763 of file reader.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + +
Eigen::Matrix<T,Eigen::Dynamic,1> stan::io::reader< T >::unit_vector_constrain (size_t k)
+
+inline
+
+ +

Return the next unit_vector transformed vector of the specified length.

+

This operation consumes one less than the specified length number of scalars.

+

See stan::prob::unit_vector_constrain(Eigen::Matrix).

+
Parameters
+ + +
kNumber of dimensions in resulting unit_vector.
+
+
+
Returns
Simplex derived from next k-1 scalars.
+ +

Definition at line 780 of file reader.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
vector_t stan::io::reader< T >::unit_vector_constrain (size_t k,
T & lp 
)
+
+inline
+
+ +

Return the next unit_vector of the specified size (using one fewer unconstrained scalars), incrementing the specified reference with the log absolute Jacobian determinant.

+

See stan::prob::unit_vector_constrain(Eigen::Matrix,T&).

+
Parameters
+ + + +
kSize of unit_vector.
lpLog probability to increment with log absolute Jacobian determinant.
+
+
+
Returns
The next unit_vector of the specified size.
+ +

Definition at line 796 of file reader.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + +
vector_t stan::io::reader< T >::vector (size_t m)
+
+inline
+
+ +

Return a column vector of specified dimensionality made up of the next scalars.

+
Parameters
+ + +
mNumber of rows in the vector to read.
+
+
+
Returns
Column vector made up of the next scalars.
+ +

Definition at line 208 of file reader.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + +
vector_t stan::io::reader< T >::vector_constrain (size_t m)
+
+inline
+
+ +

Return a column vector of specified dimensionality made up of the next scalars.

+

The constraint is a no-op.

+
Parameters
+ + +
mNumber of rows in the vector to read.
+
+
+
Returns
Column vector made up of the next scalars.
+ +

Definition at line 218 of file reader.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
vector_t stan::io::reader< T >::vector_constrain (size_t m,
T &  
)
+
+inline
+
+ +

Return a column vector of specified dimensionality made up of the next scalars.

+

The constraint and hence Jacobian are no-ops.

+
Parameters
+ + +
mNumber of rows in the vector to read. lp Log probability to increment.
+
+
+
Returns
Column vector made up of the next scalars.
+ +

Definition at line 229 of file reader.hpp.

+ +
+
+ +
+
+
+template<typename T >
+
+template<typename TL >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
vector_t stan::io::reader< T >::vector_lb (const TL lb,
size_t m 
)
+
+inline
+
+ +

Definition at line 1076 of file reader.hpp.

+ +
+
+ +
+
+
+template<typename T >
+
+template<typename TL >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
vector_t stan::io::reader< T >::vector_lb_constrain (const TL lb,
size_t m 
)
+
+inline
+
+ +

Definition at line 1083 of file reader.hpp.

+ +
+
+ +
+
+
+template<typename T >
+
+template<typename TL >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
vector_t stan::io::reader< T >::vector_lb_constrain (const TL lb,
size_t m,
T & lp 
)
+
+inline
+
+ +

Definition at line 1090 of file reader.hpp.

+ +
+
+ +
+
+
+template<typename T >
+
+template<typename TL , typename TU >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
vector_t stan::io::reader< T >::vector_lub (const TL lb,
const TU ub,
size_t m 
)
+
+inline
+
+ +

Definition at line 1215 of file reader.hpp.

+ +
+
+ +
+
+
+template<typename T >
+
+template<typename TL , typename TU >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
vector_t stan::io::reader< T >::vector_lub_constrain (const TL lb,
const TU ub,
size_t m 
)
+
+inline
+
+ +

Definition at line 1222 of file reader.hpp.

+ +
+
+ +
+
+
+template<typename T >
+
+template<typename TL , typename TU >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
vector_t stan::io::reader< T >::vector_lub_constrain (const TL lb,
const TU ub,
size_t m,
T & lp 
)
+
+inline
+
+ +

Definition at line 1229 of file reader.hpp.

+ +
+
+ +
+
+
+template<typename T >
+
+template<typename TU >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
vector_t stan::io::reader< T >::vector_ub (const TU ub,
size_t m 
)
+
+inline
+
+ +

Definition at line 1145 of file reader.hpp.

+ +
+
+ +
+
+
+template<typename T >
+
+template<typename TU >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
vector_t stan::io::reader< T >::vector_ub_constrain (const TU ub,
size_t m 
)
+
+inline
+
+ +

Definition at line 1152 of file reader.hpp.

+ +
+
+ +
+
+
+template<typename T >
+
+template<typename TU >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
vector_t stan::io::reader< T >::vector_ub_constrain (const TU ub,
size_t m,
T & lp 
)
+
+inline
+
+ +

Definition at line 1159 of file reader.hpp.

+ +
+
+
The documentation for this class was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1io_1_1stan__csv__reader-members.html b/doc/api/html/classstan_1_1io_1_1stan__csv__reader-members.html new file mode 100644 index 00000000000..c65e8f5b3a9 --- /dev/null +++ b/doc/api/html/classstan_1_1io_1_1stan__csv__reader-members.html @@ -0,0 +1,119 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::io::stan_csv_reader Member List
+
+
+ +

This is the complete list of members for stan::io::stan_csv_reader, including all inherited members.

+ + + + + + + + +
parse(std::istream &in)stan::io::stan_csv_readerinlinestatic
read_adaptation(std::istream &in, stan_csv_adaptation &adaptation)stan::io::stan_csv_readerinlinestatic
read_header(std::istream &in, Eigen::Matrix< std::string, Eigen::Dynamic, 1 > &header)stan::io::stan_csv_readerinlinestatic
read_metadata(std::istream &in, stan_csv_metadata &metadata)stan::io::stan_csv_readerinlinestatic
read_samples(std::istream &in, Eigen::MatrixXd &samples, stan_csv_timing &timing)stan::io::stan_csv_readerinlinestatic
stan_csv_reader()stan::io::stan_csv_readerinline
~stan_csv_reader()stan::io::stan_csv_readerinline
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1io_1_1stan__csv__reader.html b/doc/api/html/classstan_1_1io_1_1stan__csv__reader.html new file mode 100644 index 00000000000..aecef33db44 --- /dev/null +++ b/doc/api/html/classstan_1_1io_1_1stan__csv__reader.html @@ -0,0 +1,377 @@ + + + + + +Stan: stan::io::stan_csv_reader Class Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::io::stan_csv_reader Class Reference
+
+
+ +

Reads from a Stan output csv file. + More...

+ +

#include <stan_csv_reader.hpp>

+ + + + + + +

+Public Member Functions

 stan_csv_reader ()
 
 ~stan_csv_reader ()
 
+ + + + + + + + + + + + +

+Static Public Member Functions

static bool read_metadata (std::istream &in, stan_csv_metadata &metadata)
 
static bool read_header (std::istream &in, Eigen::Matrix< std::string, Eigen::Dynamic, 1 > &header)
 
static bool read_adaptation (std::istream &in, stan_csv_adaptation &adaptation)
 
static bool read_samples (std::istream &in, Eigen::MatrixXd &samples, stan_csv_timing &timing)
 
static stan_csv parse (std::istream &in)
 Parses the file.
 
+

Detailed Description

+

Reads from a Stan output csv file.

+ +

Definition at line 71 of file stan_csv_reader.hpp.

+

Constructor & Destructor Documentation

+ +
+
+ + + + + +
+ + + + + + + +
stan::io::stan_csv_reader::stan_csv_reader ()
+
+inline
+
+ +

Definition at line 75 of file stan_csv_reader.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
stan::io::stan_csv_reader::~stan_csv_reader ()
+
+inline
+
+ +

Definition at line 76 of file stan_csv_reader.hpp.

+ +
+
+

Member Function Documentation

+ +
+
+ + + + + +
+ + + + + + + + +
static stan_csv stan::io::stan_csv_reader::parse (std::istream & in)
+
+inlinestatic
+
+ +

Parses the file.

+ +

Definition at line 319 of file stan_csv_reader.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
static bool stan::io::stan_csv_reader::read_adaptation (std::istream & in,
stan_csv_adaptationadaptation 
)
+
+inlinestatic
+
+ +

Definition at line 183 of file stan_csv_reader.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
static bool stan::io::stan_csv_reader::read_header (std::istream & in,
Eigen::Matrix< std::string, Eigen::Dynamic, 1 > & header 
)
+
+inlinestatic
+
+ +

Definition at line 155 of file stan_csv_reader.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
static bool stan::io::stan_csv_reader::read_metadata (std::istream & in,
stan_csv_metadatametadata 
)
+
+inlinestatic
+
+ +

Definition at line 78 of file stan_csv_reader.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
static bool stan::io::stan_csv_reader::read_samples (std::istream & in,
Eigen::MatrixXd & samples,
stan_csv_timingtiming 
)
+
+inlinestatic
+
+ +

Definition at line 242 of file stan_csv_reader.hpp.

+ +
+
+
The documentation for this class was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1io_1_1var__context-members.html b/doc/api/html/classstan_1_1io_1_1var__context-members.html new file mode 100644 index 00000000000..17f66f92e35 --- /dev/null +++ b/doc/api/html/classstan_1_1io_1_1var__context-members.html @@ -0,0 +1,131 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::io::var_context Member List
+
+
+ +

This is the complete list of members for stan::io::var_context, including all inherited members.

+ + + + + + + + + + + + + + + + + + + + +
add_vec(std::stringstream &msg, const std::vector< size_t > &dims) const stan::io::var_contextinline
contains_i(const std::string &name) const =0stan::io::var_contextpure virtual
contains_r(const std::string &name) const =0stan::io::var_contextpure virtual
dims_i(const std::string &name) const =0stan::io::var_contextpure virtual
dims_r(const std::string &name) const =0stan::io::var_contextpure virtual
names_i(std::vector< std::string > &names) const =0stan::io::var_contextpure virtual
names_r(std::vector< std::string > &names) const =0stan::io::var_contextpure virtual
to_vec()stan::io::var_contextinlinestatic
to_vec(size_t n1)stan::io::var_contextinlinestatic
to_vec(size_t n1, size_t n2)stan::io::var_contextinlinestatic
to_vec(size_t n1, size_t n2, size_t n3)stan::io::var_contextinlinestatic
to_vec(size_t n1, size_t n2, size_t n3, size_t n4)stan::io::var_contextinlinestatic
to_vec(size_t n1, size_t n2, size_t n3, size_t n4, size_t n5)stan::io::var_contextinlinestatic
to_vec(size_t n1, size_t n2, size_t n3, size_t n4, size_t n5, size_t n6)stan::io::var_contextinlinestatic
to_vec(size_t n1, size_t n2, size_t n3, size_t n4, size_t n5, size_t n6, size_t n7)stan::io::var_contextinlinestatic
to_vec(size_t n1, size_t n2, size_t n3, size_t n4, size_t n5, size_t n6, size_t n7, size_t n8)stan::io::var_contextinlinestatic
validate_dims(const std::string &stage, const std::string &name, const std::string &base_type, const std::vector< size_t > &dims_declared) const stan::io::var_contextinline
vals_i(const std::string &name) const =0stan::io::var_contextpure virtual
vals_r(const std::string &name) const =0stan::io::var_contextpure virtual
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1io_1_1var__context.html b/doc/api/html/classstan_1_1io_1_1var__context.html new file mode 100644 index 00000000000..1f5fbe55f87 --- /dev/null +++ b/doc/api/html/classstan_1_1io_1_1var__context.html @@ -0,0 +1,987 @@ + + + + + +Stan: stan::io::var_context Class Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::io::var_context Class Referenceabstract
+
+
+ +

A var_reader reads array variables of integer and floating point type by name and dimension. + More...

+ +

#include <var_context.hpp>

+
+Inheritance diagram for stan::io::var_context:
+
+
+ + +stan::io::dump + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

virtual bool contains_r (const std::string &name) const =0
 Return true if the specified variable name is defined.
 
virtual std::vector< double > vals_r (const std::string &name) const =0
 Return the floating point values for the variable of the specified variable name in last-index-major order.
 
virtual std::vector< size_t > dims_r (const std::string &name) const =0
 Return the dimensions for the specified floating point variable.
 
virtual bool contains_i (const std::string &name) const =0
 Return true if the specified variable name has integer values.
 
virtual std::vector< int > vals_i (const std::string &name) const =0
 Return the integer values for the variable of the specified name in last-index-major order or the empty sequence if the variable is not defined.
 
virtual std::vector< size_t > dims_i (const std::string &name) const =0
 Return the dimensions of the specified floating point variable.
 
virtual void names_r (std::vector< std::string > &names) const =0
 Return a list of the names of the floating point variables in the context.
 
virtual void names_i (std::vector< std::string > &names) const =0
 Return a list of the names of the integer variables in the context.
 
void add_vec (std::stringstream &msg, const std::vector< size_t > &dims) const
 
void validate_dims (const std::string &stage, const std::string &name, const std::string &base_type, const std::vector< size_t > &dims_declared) const
 
+ + + + + + + + + + + + + + + + + + + +

+Static Public Member Functions

static std::vector< size_t > to_vec ()
 
static std::vector< size_t > to_vec (size_t n1)
 
static std::vector< size_t > to_vec (size_t n1, size_t n2)
 
static std::vector< size_t > to_vec (size_t n1, size_t n2, size_t n3)
 
static std::vector< size_t > to_vec (size_t n1, size_t n2, size_t n3, size_t n4)
 
static std::vector< size_t > to_vec (size_t n1, size_t n2, size_t n3, size_t n4, size_t n5)
 
static std::vector< size_t > to_vec (size_t n1, size_t n2, size_t n3, size_t n4, size_t n5, size_t n6)
 
static std::vector< size_t > to_vec (size_t n1, size_t n2, size_t n3, size_t n4, size_t n5, size_t n6, size_t n7)
 
static std::vector< size_t > to_vec (size_t n1, size_t n2, size_t n3, size_t n4, size_t n5, size_t n6, size_t n7, size_t n8)
 
+

Detailed Description

+

A var_reader reads array variables of integer and floating point type by name and dimension.

+

An array's dimensionality is described by a sequence of (unsigned) integers. For instance, (7, 2, 3) picks out a 7 by 2 by 3 array. The empty dimensionality sequence () is used for scalars.

+

Multidimensional arrays are stored in column-major order, meaning the first index changes the most quickly.

+

If a variable has integer variables, it should return those integer values cast to floating point values when accessed through the floating-point methods.

+ +

Definition at line 29 of file var_context.hpp.

+

Member Function Documentation

+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
void stan::io::var_context::add_vec (std::stringstream & msg,
const std::vector< size_t > & dims 
) const
+
+inline
+
+ +

Definition at line 113 of file var_context.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
virtual bool stan::io::var_context::contains_i (const std::string & name) const
+
+pure virtual
+
+ +

Return true if the specified variable name has integer values.

+
Parameters
+ + +
nameName of variable.
+
+
+
Returns
true if an integer variable of the specified name is defined.
+ +

Implemented in stan::io::dump.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
virtual bool stan::io::var_context::contains_r (const std::string & name) const
+
+pure virtual
+
+ +

Return true if the specified variable name is defined.

+

This method should return true even if the values are all integers.

+
Parameters
+ + +
nameName of variable.
+
+
+
Returns
true if the variable exists with real values.
+ +

Implemented in stan::io::dump.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
virtual std::vector<size_t> stan::io::var_context::dims_i (const std::string & name) const
+
+pure virtual
+
+ +

Return the dimensions of the specified floating point variable.

+

If the variable doesn't exist (or if it is a scalar), the return result should be the empty vector.

+
Parameters
+ + +
nameName of variable.
+
+
+
Returns
Sequence of dimensions for the variable.
+ +

Implemented in stan::io::dump.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
virtual std::vector<size_t> stan::io::var_context::dims_r (const std::string & name) const
+
+pure virtual
+
+ +

Return the dimensions for the specified floating point variable.

+

If the variable doesn't exist or if it is a scalar, the return result should be the empty vector.

+
Parameters
+ + +
nameName of variable.
+
+
+
Returns
Sequence of dimensions for the variable.
+ +

Implemented in stan::io::dump.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
virtual void stan::io::var_context::names_i (std::vector< std::string > & names) const
+
+pure virtual
+
+ +

Return a list of the names of the integer variables in the context.

+
Parameters
+ + +
namesVector to store the list of names in.
+
+
+ +

Implemented in stan::io::dump.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
virtual void stan::io::var_context::names_r (std::vector< std::string > & names) const
+
+pure virtual
+
+ +

Return a list of the names of the floating point variables in the context.

+
Parameters
+ + +
namesVector to store the list of names in.
+
+
+ +

Implemented in stan::io::dump.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
static std::vector<size_t> stan::io::var_context::to_vec ()
+
+inlinestatic
+
+ +

Definition at line 178 of file var_context.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
static std::vector<size_t> stan::io::var_context::to_vec (size_t n1)
+
+inlinestatic
+
+ +

Definition at line 181 of file var_context.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
static std::vector<size_t> stan::io::var_context::to_vec (size_t n1,
size_t n2 
)
+
+inlinestatic
+
+ +

Definition at line 186 of file var_context.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
static std::vector<size_t> stan::io::var_context::to_vec (size_t n1,
size_t n2,
size_t n3 
)
+
+inlinestatic
+
+ +

Definition at line 192 of file var_context.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
static std::vector<size_t> stan::io::var_context::to_vec (size_t n1,
size_t n2,
size_t n3,
size_t n4 
)
+
+inlinestatic
+
+ +

Definition at line 200 of file var_context.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
static std::vector<size_t> stan::io::var_context::to_vec (size_t n1,
size_t n2,
size_t n3,
size_t n4,
size_t n5 
)
+
+inlinestatic
+
+ +

Definition at line 209 of file var_context.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
static std::vector<size_t> stan::io::var_context::to_vec (size_t n1,
size_t n2,
size_t n3,
size_t n4,
size_t n5,
size_t n6 
)
+
+inlinestatic
+
+ +

Definition at line 220 of file var_context.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
static std::vector<size_t> stan::io::var_context::to_vec (size_t n1,
size_t n2,
size_t n3,
size_t n4,
size_t n5,
size_t n6,
size_t n7 
)
+
+inlinestatic
+
+ +

Definition at line 232 of file var_context.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
static std::vector<size_t> stan::io::var_context::to_vec (size_t n1,
size_t n2,
size_t n3,
size_t n4,
size_t n5,
size_t n6,
size_t n7,
size_t n8 
)
+
+inlinestatic
+
+ +

Definition at line 246 of file var_context.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
void stan::io::var_context::validate_dims (const std::string & stage,
const std::string & name,
const std::string & base_type,
const std::vector< size_t > & dims_declared 
) const
+
+inline
+
+ +

Definition at line 123 of file var_context.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
virtual std::vector<int> stan::io::var_context::vals_i (const std::string & name) const
+
+pure virtual
+
+ +

Return the integer values for the variable of the specified name in last-index-major order or the empty sequence if the variable is not defined.

+
Parameters
+ + +
nameName of variable.
+
+
+
Returns
Sequence of integer values.
+ +

Implemented in stan::io::dump.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
virtual std::vector<double> stan::io::var_context::vals_r (const std::string & name) const
+
+pure virtual
+
+ +

Return the floating point values for the variable of the specified variable name in last-index-major order.

+

This method should cast integers to floating point values if the values of the named variable are all integers.

+

If there is no variable of the specified name, the empty vector is returned.

+
Parameters
+ + +
nameName of variable.
+
+
+
Returns
Sequence of values for the named variable.
+ +

Implemented in stan::io::dump.

+ +
+
+
The documentation for this class was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1io_1_1var__context.png b/doc/api/html/classstan_1_1io_1_1var__context.png new file mode 100644 index 0000000000000000000000000000000000000000..3566cf75bff5145e40f55e6ca0da5c00056cf02a GIT binary patch literal 534 zcmeAS@N?(olHy`uVBq!ia0vp^)j%A;!3-q%ihk_?QW60^A+G=b{|7Q(y!l$%e`o@b z1;z&s9ANFdBM;G5m@|46G-W$!*qd&KH_^v!Au`<{EtO6a(F{D!@WDaGp#YrS?f*fcd~ey{Gk$lK?O zE$@DR*HJn1>YU{+`;wPu8rGKIIJxzd-O1;ow_hLI*WbJO^S+ehxz}&DE8JdRn>x+1 zUv%f&(`S8N-r8`ow7k8`>b&ao*EUz5?f)=;*1i)A<)-^o8FEc;FywyS^&%}TmgPf? zu!DMOihry(|vw=}6djsRGEbO>$t$ + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::io::writer< T > Member List
+
+
+ +

This is the complete list of members for stan::io::writer< T >, including all inherited members.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
array_vec_t typedefstan::io::writer< T >
cholesky_factor_unconstrain(matrix_t &y)stan::io::writer< T >inline
CONSTRAINT_TOLERANCEstan::io::writer< T >
corr_matrix_unconstrain(matrix_t &y)stan::io::writer< T >inline
corr_unconstrain(T &y)stan::io::writer< T >inline
cov_matrix_unconstrain(matrix_t &y)stan::io::writer< T >inline
data_i()stan::io::writer< T >inline
data_r()stan::io::writer< T >inline
integer(int n)stan::io::writer< T >inline
matrix_lb_unconstrain(double lb, matrix_t &y)stan::io::writer< T >inline
matrix_lub_unconstrain(double lb, double ub, matrix_t &y)stan::io::writer< T >inline
matrix_t typedefstan::io::writer< T >
matrix_ub_unconstrain(double ub, matrix_t &y)stan::io::writer< T >inline
matrix_unconstrain(const matrix_t &y)stan::io::writer< T >inline
ordered_unconstrain(vector_t &y)stan::io::writer< T >inline
positive_ordered_unconstrain(vector_t &y)stan::io::writer< T >inline
prob_unconstrain(T &y)stan::io::writer< T >inline
row_vector_lb_unconstrain(double lb, row_vector_t &y)stan::io::writer< T >inline
row_vector_lub_unconstrain(double lb, double ub, row_vector_t &y)stan::io::writer< T >inline
row_vector_t typedefstan::io::writer< T >
row_vector_ub_unconstrain(double ub, row_vector_t &y)stan::io::writer< T >inline
row_vector_unconstrain(const vector_t &y)stan::io::writer< T >inline
scalar_lb_unconstrain(double lb, T &y)stan::io::writer< T >inline
scalar_lub_unconstrain(double lb, double ub, T &y)stan::io::writer< T >inline
scalar_pos_unconstrain(T &y)stan::io::writer< T >inline
scalar_ub_unconstrain(double ub, T &y)stan::io::writer< T >inline
scalar_unconstrain(T &y)stan::io::writer< T >inline
simplex_unconstrain(vector_t &y)stan::io::writer< T >inline
unit_vector_unconstrain(vector_t &y)stan::io::writer< T >inline
vector_lb_unconstrain(double lb, vector_t &y)stan::io::writer< T >inline
vector_lub_unconstrain(double lb, double ub, vector_t &y)stan::io::writer< T >inline
vector_t typedefstan::io::writer< T >
vector_ub_unconstrain(double ub, vector_t &y)stan::io::writer< T >inline
vector_unconstrain(const vector_t &y)stan::io::writer< T >inline
writer(std::vector< T > &data_r, std::vector< int > &data_i)stan::io::writer< T >inline
~writer()stan::io::writer< T >inline
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1io_1_1writer.html b/doc/api/html/classstan_1_1io_1_1writer.html new file mode 100644 index 00000000000..aa9015bb61d --- /dev/null +++ b/doc/api/html/classstan_1_1io_1_1writer.html @@ -0,0 +1,1616 @@ + + + + + +Stan: stan::io::writer< T > Class Template Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::io::writer< T > Class Template Reference
+
+
+ +

A stream-based writer for integer, scalar, vector, matrix and array data types, which transforms from constrained to a sequence of constrained variables. + More...

+ +

#include <writer.hpp>

+ + + + + + + + + + +

+Public Types

typedef Eigen::Matrix< T,
+Eigen::Dynamic, Eigen::Dynamic > 
matrix_t
 
typedef Eigen::Matrix< T,
+Eigen::Dynamic, 1 > 
vector_t
 
typedef Eigen::Matrix< T,
+1, Eigen::Dynamic > 
row_vector_t
 
typedef Eigen::Array< T,
+Eigen::Dynamic, 1 > 
array_vec_t
 
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 writer (std::vector< T > &data_r, std::vector< int > &data_i)
 Construct a writer that writes to the specified scalar and integer vectors.
 
 ~writer ()
 Destroy this writer.
 
std::vector< T > & data_r ()
 Return a reference to the underlying vector of real values that have been written.
 
std::vector< int > & data_i ()
 Return a reference to the underlying vector of integer values that have been written.
 
void integer (int n)
 Write the specified integer to the sequence of integer values.
 
void scalar_unconstrain (T &y)
 Write the unconstrained value corresponding to the specified scalar.
 
void scalar_pos_unconstrain (T &y)
 Write the unconstrained value corresponding to the specified positive-constrained scalar.
 
void scalar_lb_unconstrain (double lb, T &y)
 Return the unconstrained version of the specified input, which is constrained to be above the specified lower bound.
 
void scalar_ub_unconstrain (double ub, T &y)
 Write the unconstrained value corresponding to the specified lower-bounded value.
 
void scalar_lub_unconstrain (double lb, double ub, T &y)
 Write the unconstrained value corresponding to the specified value with the specified bounds.
 
void corr_unconstrain (T &y)
 Write the unconstrained value corresponding to the specified correlation-constrained variable.
 
void prob_unconstrain (T &y)
 Write the unconstrained value corresponding to the specified probability value.
 
void ordered_unconstrain (vector_t &y)
 Write the unconstrained vector that corresponds to the specified ascendingly ordered vector.
 
void positive_ordered_unconstrain (vector_t &y)
 Write the unconstrained vector that corresponds to the specified postiive ascendingly ordered vector.
 
void vector_unconstrain (const vector_t &y)
 Write the specified unconstrained vector.
 
void row_vector_unconstrain (const vector_t &y)
 Write the specified unconstrained vector.
 
void matrix_unconstrain (const matrix_t &y)
 Write the specified unconstrained matrix.
 
void vector_lb_unconstrain (double lb, vector_t &y)
 
void row_vector_lb_unconstrain (double lb, row_vector_t &y)
 
void matrix_lb_unconstrain (double lb, matrix_t &y)
 
void vector_ub_unconstrain (double ub, vector_t &y)
 
void row_vector_ub_unconstrain (double ub, row_vector_t &y)
 
void matrix_ub_unconstrain (double ub, matrix_t &y)
 
void vector_lub_unconstrain (double lb, double ub, vector_t &y)
 
void row_vector_lub_unconstrain (double lb, double ub, row_vector_t &y)
 
void matrix_lub_unconstrain (double lb, double ub, matrix_t &y)
 
void unit_vector_unconstrain (vector_t &y)
 Write the unconstrained vector corresponding to the specified unit_vector value.
 
void simplex_unconstrain (vector_t &y)
 Write the unconstrained vector corresponding to the specified simplex value.
 
void cholesky_factor_unconstrain (matrix_t &y)
 Writes the unconstrained Cholesky factor corresponding to the specified constrained matrix.
 
void cov_matrix_unconstrain (matrix_t &y)
 Writes the unconstrained covariance matrix corresponding to the specified constrained correlation matrix.
 
void corr_matrix_unconstrain (matrix_t &y)
 Writes the unconstrained correlation matrix corresponding to the specified constrained correlation matrix.
 
+ + + + +

+Public Attributes

const double CONSTRAINT_TOLERANCE
 This is the tolerance for checking arithmetic bounds in rank and in simplexes.
 
+

Detailed Description

+

template<typename T>
+class stan::io::writer< T >

+ +

A stream-based writer for integer, scalar, vector, matrix and array data types, which transforms from constrained to a sequence of constrained variables.

+

This class converts constrained values to unconstrained values with mappings that invert those defined in stan::io::reader to convert unconstrained values to constrained values.

+
Template Parameters
+ + +
TBasic scalar type.
+
+
+ +

Definition at line 24 of file writer.hpp.

+

Member Typedef Documentation

+ +
+
+
+template<typename T >
+ + + + +
typedef Eigen::Array<T,Eigen::Dynamic,1> stan::io::writer< T >::array_vec_t
+
+ +

Definition at line 34 of file writer.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + +
typedef Eigen::Matrix<T,Eigen::Dynamic,Eigen::Dynamic> stan::io::writer< T >::matrix_t
+
+ +

Definition at line 30 of file writer.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + +
typedef Eigen::Matrix<T,1,Eigen::Dynamic> stan::io::writer< T >::row_vector_t
+
+ +

Definition at line 32 of file writer.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + +
typedef Eigen::Matrix<T,Eigen::Dynamic,1> stan::io::writer< T >::vector_t
+
+ +

Definition at line 31 of file writer.hpp.

+ +
+
+

Constructor & Destructor Documentation

+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
stan::io::writer< T >::writer (std::vector< T > & data_r,
std::vector< int > & data_i 
)
+
+inline
+
+ +

Construct a writer that writes to the specified scalar and integer vectors.

+
Parameters
+ + + +
data_rScalar values.
data_iInteger values.
+
+
+ +

Definition at line 49 of file writer.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + +
stan::io::writer< T >::~writer ()
+
+inline
+
+ +

Destroy this writer.

+ +

Definition at line 61 of file writer.hpp.

+ +
+
+

Member Function Documentation

+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + +
void stan::io::writer< T >::cholesky_factor_unconstrain (matrix_ty)
+
+inline
+
+ +

Writes the unconstrained Cholesky factor corresponding to the specified constrained matrix.

+

The unconstraining operation is the inverse of the constraining operation in cov_matrix_constrain(Matrix<T,Dynamic,Dynamic).

+
Parameters
+ + +
yConstrained covariance matrix.
+
+
+
Exceptions
+ + +
std::runtime_errorif y has no elements or if it is not square
+
+
+ +

Definition at line 375 of file writer.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + +
void stan::io::writer< T >::corr_matrix_unconstrain (matrix_ty)
+
+inline
+
+ +

Writes the unconstrained correlation matrix corresponding to the specified constrained correlation matrix.

+

The unconstraining operation is the inverse of the constraining operation in corr_matrix_constrain(Matrix<T,Dynamic,Dynamic).

+
Parameters
+ + +
yConstrained correlation matrix.
+
+
+
Exceptions
+ + + +
std::runtime_errorif the correlation matrix has no elements or is not a square matrix.
std::runtime_errorif the correlation matrix cannot be factorized by factor_cov_matrix() or if the sds returned by factor_cov_matrix() on log scale are unconstrained.
+
+
+ +

Definition at line 427 of file writer.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + +
void stan::io::writer< T >::corr_unconstrain (T & y)
+
+inline
+
+ +

Write the unconstrained value corresponding to the specified correlation-constrained variable.

+

The unconstraining transform is atanh(y), which reverses the transfrom in corr_constrain().

+
Parameters
+ + +
yCorrelation value.
+
+
+
Exceptions
+ + +
std::runtime_errorif y is not between -1.0 and 1.0
+
+
+ +

Definition at line 176 of file writer.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + +
void stan::io::writer< T >::cov_matrix_unconstrain (matrix_ty)
+
+inline
+
+ +

Writes the unconstrained covariance matrix corresponding to the specified constrained correlation matrix.

+

The unconstraining operation is the inverse of the constraining operation in cov_matrix_constrain(Matrix<T,Dynamic,Dynamic).

+
Parameters
+ + +
yConstrained covariance matrix.
+
+
+
Exceptions
+ + +
std::runtime_errorif y has no elements or if it is not square
+
+
+ +

Definition at line 395 of file writer.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + +
std::vector<int>& stan::io::writer< T >::data_i ()
+
+inline
+
+ +

Return a reference to the underlying vector of integer values that have been written.

+
Returns
Values that have been written.
+ +

Definition at line 80 of file writer.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + +
std::vector<T>& stan::io::writer< T >::data_r ()
+
+inline
+
+ +

Return a reference to the underlying vector of real values that have been written.

+
Returns
Values that have been written.
+ +

Definition at line 69 of file writer.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + +
void stan::io::writer< T >::integer (int n)
+
+inline
+
+ +

Write the specified integer to the sequence of integer values.

+
Parameters
+ + +
nInteger to write.
+
+
+ +

Definition at line 89 of file writer.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
void stan::io::writer< T >::matrix_lb_unconstrain (double lb,
matrix_ty 
)
+
+inline
+
+ +

Definition at line 284 of file writer.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
void stan::io::writer< T >::matrix_lub_unconstrain (double lb,
double ub,
matrix_ty 
)
+
+inline
+
+ +

Definition at line 313 of file writer.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
void stan::io::writer< T >::matrix_ub_unconstrain (double ub,
matrix_ty 
)
+
+inline
+
+ +

Definition at line 298 of file writer.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + +
void stan::io::writer< T >::matrix_unconstrain (const matrix_ty)
+
+inline
+
+ +

Write the specified unconstrained matrix.

+
Parameters
+ + +
yMatrix to write.
+
+
+ +

Definition at line 270 of file writer.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + +
void stan::io::writer< T >::ordered_unconstrain (vector_ty)
+
+inline
+
+ +

Write the unconstrained vector that corresponds to the specified ascendingly ordered vector.

+

The unconstraining transform is defined for input vector y to produce an output vector x of the same size, defined by x[0] = log(y[0]) and by x[k] = log(y[k] - y[k-1]) for k > 0. This unconstraining transform inverts the constraining transform specified in ordered_constrain(size_t).

+
Parameters
+ + +
yAscendingly ordered vector.
+
+
+
Returns
Unconstrained vector corresponding to the specified vector.
+
Exceptions
+ + +
std::runtime_errorif vector is not in ascending order.
+
+
+ +

Definition at line 210 of file writer.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + +
void stan::io::writer< T >::positive_ordered_unconstrain (vector_ty)
+
+inline
+
+ +

Write the unconstrained vector that corresponds to the specified postiive ascendingly ordered vector.

+

The unconstraining transform is defined for input vector y to produce an output vector x of the same size, defined by x[0] = log(y[0]) and by x[k] = log(y[k] - y[k-1]) for k > 0. This unconstraining transform inverts the constraining transform specified in positive_ordered_constrain(size_t).

+
Parameters
+ + +
yPositive ascendingly ordered vector.
+
+
+
Returns
Unconstrained vector corresponding to the specified vector.
+
Exceptions
+ + +
std::runtime_errorif vector is not in ascending order.
+
+
+ +

Definition at line 234 of file writer.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + +
void stan::io::writer< T >::prob_unconstrain (T & y)
+
+inline
+
+ +

Write the unconstrained value corresponding to the specified probability value.

+

The unconstraining transform is logit(y), which inverts the constraining transform defined in prob_constrain().

+
Parameters
+ + +
yProbability value.
+
+
+
Exceptions
+ + +
std::runtime_errorif y is not between 0.0 and 1.0
+
+
+ +

Definition at line 191 of file writer.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
void stan::io::writer< T >::row_vector_lb_unconstrain (double lb,
row_vector_ty 
)
+
+inline
+
+ +

Definition at line 280 of file writer.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
void stan::io::writer< T >::row_vector_lub_unconstrain (double lb,
double ub,
row_vector_ty 
)
+
+inline
+
+ +

Definition at line 309 of file writer.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
void stan::io::writer< T >::row_vector_ub_unconstrain (double ub,
row_vector_ty 
)
+
+inline
+
+ +

Definition at line 294 of file writer.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + +
void stan::io::writer< T >::row_vector_unconstrain (const vector_ty)
+
+inline
+
+ +

Write the specified unconstrained vector.

+
Parameters
+ + +
yVector to write.
+
+
+ +

Definition at line 260 of file writer.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
void stan::io::writer< T >::scalar_lb_unconstrain (double lb,
T & y 
)
+
+inline
+
+ +

Return the unconstrained version of the specified input, which is constrained to be above the specified lower bound.

+

The unconstraining transform is log(y - lb), which inverts the constraining transform defined in reader::scalar_lb_constrain(double),

+
Parameters
+ + + +
lbLower bound.
yLower-bounded value.
+
+
+
Exceptions
+ + +
std::runtime_errorif y is lower than the lower bound provided.
+
+
+ +

Definition at line 132 of file writer.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
void stan::io::writer< T >::scalar_lub_unconstrain (double lb,
double ub,
T & y 
)
+
+inline
+
+ +

Write the unconstrained value corresponding to the specified value with the specified bounds.

+

The unconstraining transform is given by reader::logit((y-L)/(U-L)), which inverts the constraining transform defined in scalar_lub_constrain(double,double).

+
Parameters
+ + + + +
lbLower bound.
ubUpper bound.
yBounded value.
+
+
+
Exceptions
+ + +
std::runtime_errorif y is not between the lower and upper bounds
+
+
+ +

Definition at line 162 of file writer.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + +
void stan::io::writer< T >::scalar_pos_unconstrain (T & y)
+
+inline
+
+ +

Write the unconstrained value corresponding to the specified positive-constrained scalar.

+

The transformation applied is log(y), which is the inverse of constraining transform specified in reader::scalar_pos_constrain().

+

This method will fail if the argument is not non-negative.

+
Parameters
+ + +
yThe positive value.
+
+
+
Exceptions
+ + +
std::runtime_errorif y is negative.
+
+
+ +

Definition at line 115 of file writer.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
void stan::io::writer< T >::scalar_ub_unconstrain (double ub,
T & y 
)
+
+inline
+
+ +

Write the unconstrained value corresponding to the specified lower-bounded value.

+

The unconstraining transform is log(ub - y), which reverses the constraining transform defined in reader::scalar_ub_constrain(double).

+
Parameters
+ + + +
ubUpper bound.
yConstrained value.
+
+
+
Exceptions
+ + +
std::runtime_errorif y is higher than the upper bound provided.
+
+
+ +

Definition at line 146 of file writer.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + +
void stan::io::writer< T >::scalar_unconstrain (T & y)
+
+inline
+
+ +

Write the unconstrained value corresponding to the specified scalar.

+

Here, the unconstrain operation is a no-op, which matches reader::scalar_constrain().

+
Parameters
+ + +
yThe value.
+
+
+ +

Definition at line 100 of file writer.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + +
void stan::io::writer< T >::simplex_unconstrain (vector_ty)
+
+inline
+
+ +

Write the unconstrained vector corresponding to the specified simplex value.

+

If the specified constrained simplex is of size K, the returned unconstrained vector is of size K-1.

+

The transform takes y = y[1],...,y[K] and produces the unconstrained vector. This inverts the constraining transform of simplex_constrain(size_t).

+
Parameters
+ + +
ySimplex constrained value.
+
+
+
Returns
Unconstrained value.
+
Exceptions
+ + +
std::runtime_errorif the vector is not a simplex.
+
+
+ +

Definition at line 357 of file writer.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + +
void stan::io::writer< T >::unit_vector_unconstrain (vector_ty)
+
+inline
+
+ +

Write the unconstrained vector corresponding to the specified unit_vector value.

+

If the specified constrained unit_vector is of size K, the returned unconstrained vector is of size K-1.

+

The transform takes y = y[1],...,y[K] and produces the unconstrained vector. This inverts the constraining transform of unit_vector_constrain(size_t).

+
Parameters
+ + +
ySimplex constrained value.
+
+
+
Returns
Unconstrained value.
+
Exceptions
+ + +
std::runtime_errorif the vector is not a unit_vector.
+
+
+ +

Definition at line 335 of file writer.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
void stan::io::writer< T >::vector_lb_unconstrain (double lb,
vector_ty 
)
+
+inline
+
+ +

Definition at line 276 of file writer.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
void stan::io::writer< T >::vector_lub_unconstrain (double lb,
double ub,
vector_ty 
)
+
+inline
+
+ +

Definition at line 305 of file writer.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
void stan::io::writer< T >::vector_ub_unconstrain (double ub,
vector_ty 
)
+
+inline
+
+ +

Definition at line 290 of file writer.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + +
void stan::io::writer< T >::vector_unconstrain (const vector_ty)
+
+inline
+
+ +

Write the specified unconstrained vector.

+
Parameters
+ + +
yVector to write.
+
+
+ +

Definition at line 250 of file writer.hpp.

+ +
+
+

Member Data Documentation

+ +
+
+
+template<typename T >
+ + + + +
const double stan::io::writer< T >::CONSTRAINT_TOLERANCE
+
+ +

This is the tolerance for checking arithmetic bounds in rank and in simplexes.

+

The current value is 1E-8.

+ +

Definition at line 40 of file writer.hpp.

+ +
+
+
The documentation for this class was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1math_1_1_l_d_l_t__factor_3_01double_00_01_r_00_01_c_01_4-members.html b/doc/api/html/classstan_1_1math_1_1_l_d_l_t__factor_3_01double_00_01_r_00_01_c_01_4-members.html new file mode 100644 index 00000000000..fd93ef70631 --- /dev/null +++ b/doc/api/html/classstan_1_1math_1_1_l_d_l_t__factor_3_01double_00_01_r_00_01_c_01_4-members.html @@ -0,0 +1,126 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::math::LDLT_factor< double, R, C > Member List
+
+ +
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1math_1_1_l_d_l_t__factor_3_01double_00_01_r_00_01_c_01_4.html b/doc/api/html/classstan_1_1math_1_1_l_d_l_t__factor_3_01double_00_01_r_00_01_c_01_4.html new file mode 100644 index 00000000000..39c9780a696 --- /dev/null +++ b/doc/api/html/classstan_1_1math_1_1_l_d_l_t__factor_3_01double_00_01_r_00_01_c_01_4.html @@ -0,0 +1,543 @@ + + + + + +Stan: stan::math::LDLT_factor< double, R, C > Class Template Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::math::LDLT_factor< double, R, C > Class Template Reference
+
+
+ +

LDLT_factor is a thin wrapper on Eigen::LDLT to allow for reusing factorizations and efficient autodiff of things like log determinants and solutions to linear systems. + More...

+ +

#include <LDLT_factor.hpp>

+ + + + +

+Public Types

typedef size_t size_type
 
+ + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 LDLT_factor ()
 
 LDLT_factor (const Eigen::Matrix< double, R, C > &A)
 
void compute (const Eigen::Matrix< double, R, C > &A)
 
bool success () const
 
double log_abs_det () const
 
void inverse (Eigen::Matrix< double, R, C > &invA) const
 
template<typename Rhs >
const
+Eigen::internal::solve_retval
+< Eigen::LDLT< Eigen::Matrix
+< double, R, C > >, Rhs > 
solve (const Eigen::MatrixBase< Rhs > &b) const
 
Eigen::Matrix< double, R, C > solveRight (const Eigen::Matrix< double, R, C > &B) const
 
Eigen::VectorXd vectorD () const
 
size_t rows () const
 
size_t cols () const
 
+ + + + + +

+Public Attributes

size_t N_
 
boost::shared_ptr< Eigen::LDLT
+< Eigen::Matrix< double, R, C > > > 
_ldltP
 
+

Detailed Description

+

template<int R, int C>
+class stan::math::LDLT_factor< double, R, C >

+ +

LDLT_factor is a thin wrapper on Eigen::LDLT to allow for reusing factorizations and efficient autodiff of things like log determinants and solutions to linear systems.

+

After the constructor and/or compute() is called users of LDLT_factor are responsible for calling success() to check whether the factorization has succeeded. Use of an LDLT_factor object (e.g., in mdivide_left_ldlt) is undefined if success() is false.

+

It's usage pattern is:

+
Eigen::Matrix<T,R,C> A1, A2;
+
+
LDLT_factor<T,R,C> ldlt_A1(A1);
+ +
ldlt_A2.compute(A2);
+

Now, the caller should check that ldlt_A1.success() and ldlt_A2.success() are true or abort accordingly. Alternatively, call check_ldlt_factor().

+

Note that ldlt_A1 and ldlt_A2 are completely equivalent. They simply demonstrate two different ways to construct the factorization.

+

Now, the caller can use the LDLT_factor objects as needed. For instance

+
x1 = mdivide_left_ldlt(ldlt_A1,b1);
+
x2 = mdivide_right_ldlt(b2,ldlt_A2);
+
+
d1 = log_determinant_ldlt(ldlt_A1);
+
d2 = log_determinant_ldlt(ldlt_A2);
+
+

Definition at line 56 of file LDLT_factor.hpp.

+

Member Typedef Documentation

+ +
+
+
+template<int R, int C>
+ + + + +
typedef size_t stan::math::LDLT_factor< double, R, C >::size_type
+
+ +

Definition at line 107 of file LDLT_factor.hpp.

+ +
+
+

Constructor & Destructor Documentation

+ +
+
+
+template<int R, int C>
+ + + + + +
+ + + + + + + +
stan::math::LDLT_factor< double, R, C >::LDLT_factor ()
+
+inline
+
+ +

Definition at line 58 of file LDLT_factor.hpp.

+ +
+
+ +
+
+
+template<int R, int C>
+ + + + + +
+ + + + + + + + +
stan::math::LDLT_factor< double, R, C >::LDLT_factor (const Eigen::Matrix< double, R, C > & A)
+
+inline
+
+ +

Definition at line 61 of file LDLT_factor.hpp.

+ +
+
+

Member Function Documentation

+ +
+
+
+template<int R, int C>
+ + + + + +
+ + + + + + + +
size_t stan::math::LDLT_factor< double, R, C >::cols () const
+
+inline
+
+ +

Definition at line 105 of file LDLT_factor.hpp.

+ +
+
+ +
+
+
+template<int R, int C>
+ + + + + +
+ + + + + + + + +
void stan::math::LDLT_factor< double, R, C >::compute (const Eigen::Matrix< double, R, C > & A)
+
+inline
+
+ +

Definition at line 67 of file LDLT_factor.hpp.

+ +
+
+ +
+
+
+template<int R, int C>
+ + + + + +
+ + + + + + + + +
void stan::math::LDLT_factor< double, R, C >::inverse (Eigen::Matrix< double, R, C > & invA) const
+
+inline
+
+ +

Definition at line 85 of file LDLT_factor.hpp.

+ +
+
+ +
+
+
+template<int R, int C>
+ + + + + +
+ + + + + + + +
double stan::math::LDLT_factor< double, R, C >::log_abs_det () const
+
+inline
+
+ +

Definition at line 81 of file LDLT_factor.hpp.

+ +
+
+ +
+
+
+template<int R, int C>
+ + + + + +
+ + + + + + + +
size_t stan::math::LDLT_factor< double, R, C >::rows () const
+
+inline
+
+ +

Definition at line 104 of file LDLT_factor.hpp.

+ +
+
+ +
+
+
+template<int R, int C>
+
+template<typename Rhs >
+ + + + + +
+ + + + + + + + +
const Eigen::internal::solve_retval<Eigen::LDLT< Eigen::Matrix<double,R,C> >, Rhs> stan::math::LDLT_factor< double, R, C >::solve (const Eigen::MatrixBase< Rhs > & b) const
+
+inline
+
+ +

Definition at line 92 of file LDLT_factor.hpp.

+ +
+
+ +
+
+
+template<int R, int C>
+ + + + + +
+ + + + + + + + +
Eigen::Matrix<double,R,C> stan::math::LDLT_factor< double, R, C >::solveRight (const Eigen::Matrix< double, R, C > & B) const
+
+inline
+
+ +

Definition at line 96 of file LDLT_factor.hpp.

+ +
+
+ +
+
+
+template<int R, int C>
+ + + + + +
+ + + + + + + +
bool stan::math::LDLT_factor< double, R, C >::success () const
+
+inline
+
+ +

Definition at line 73 of file LDLT_factor.hpp.

+ +
+
+ +
+
+
+template<int R, int C>
+ + + + + +
+ + + + + + + +
Eigen::VectorXd stan::math::LDLT_factor< double, R, C >::vectorD () const
+
+inline
+
+ +

Definition at line 100 of file LDLT_factor.hpp.

+ +
+
+

Member Data Documentation

+ +
+
+
+template<int R, int C>
+ + + + +
boost::shared_ptr< Eigen::LDLT< Eigen::Matrix<double,R,C> > > stan::math::LDLT_factor< double, R, C >::_ldltP
+
+ +

Definition at line 110 of file LDLT_factor.hpp.

+ +
+
+ +
+
+
+template<int R, int C>
+ + + + +
size_t stan::math::LDLT_factor< double, R, C >::N_
+
+ +

Definition at line 109 of file LDLT_factor.hpp.

+ +
+
+
The documentation for this class was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1math_1_1_l_d_l_t__factor_3_01stan_1_1agrad_1_1var_00_01_r_00_01_c_01_4-members.html b/doc/api/html/classstan_1_1math_1_1_l_d_l_t__factor_3_01stan_1_1agrad_1_1var_00_01_r_00_01_c_01_4-members.html new file mode 100644 index 00000000000..3ae3a08a13a --- /dev/null +++ b/doc/api/html/classstan_1_1math_1_1_l_d_l_t__factor_3_01stan_1_1agrad_1_1var_00_01_r_00_01_c_01_4-members.html @@ -0,0 +1,122 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::math::LDLT_factor< stan::agrad::var, R, C > Member List
+
+ +
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1math_1_1_l_d_l_t__factor_3_01stan_1_1agrad_1_1var_00_01_r_00_01_c_01_4.html b/doc/api/html/classstan_1_1math_1_1_l_d_l_t__factor_3_01stan_1_1agrad_1_1var_00_01_r_00_01_c_01_4.html new file mode 100644 index 00000000000..b06dd2389dd --- /dev/null +++ b/doc/api/html/classstan_1_1math_1_1_l_d_l_t__factor_3_01stan_1_1agrad_1_1var_00_01_r_00_01_c_01_4.html @@ -0,0 +1,472 @@ + + + + + +Stan: stan::math::LDLT_factor< stan::agrad::var, R, C > Class Template Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::math::LDLT_factor< stan::agrad::var, R, C > Class Template Reference
+
+
+ +

A template specialization of src/stan/math/matrix/LDLT_factor.hpp for stan::agrad::var which can be used with all the *_ldlt functions. + More...

+ +

#include <LDLT_factor.hpp>

+ + + + +

+Public Types

typedef size_t size_type
 
+ + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 LDLT_factor ()
 Default constructor.
 
 LDLT_factor (const Eigen::Matrix< stan::agrad::var, R, C > &A)
 
void compute (const Eigen::Matrix< stan::agrad::var, R, C > &A)
 Use the LDLT_factor object to factorize a new matrix.
 
template<typename Rhs >
const
+Eigen::internal::solve_retval
+< Eigen::LDLT< Eigen::Matrix
+< double, R, C > >, Rhs > 
solve (const Eigen::MatrixBase< Rhs > &b) const
 Compute the actual numerical result of inv(A)*b.
 
bool success () const
 Determine whether the most recent factorization succeeded.
 
Eigen::VectorXd vectorD () const
 The entries of the diagonal matrix D.
 
size_t rows () const
 
size_t cols () const
 
+ + + + +

+Public Attributes

stan::agrad::LDLT_alloc< R, C > * _alloc
 The LDLT_alloc object actually contains the factorization but is derived from the chainable_alloc class so that it is allocated on the vari stack.
 
+

Detailed Description

+

template<int R, int C>
+class stan::math::LDLT_factor< stan::agrad::var, R, C >

+ +

A template specialization of src/stan/math/matrix/LDLT_factor.hpp for stan::agrad::var which can be used with all the *_ldlt functions.

+

The usage pattern is:

+
Eigen::Matrix<T,R,C> A1, A2;
+
+
LDLT_factor<T,R,C> ldlt_A1(A1);
+ +
ldlt_A2.compute(A2);
+

Now, the caller should check that ldlt_A1.success() and ldlt_A2.success() are true or abort accordingly. Alternatively, call check_ldlt_factor(). The behaviour of using an LDLT_factor without success() returning true is undefined.

+

Note that ldlt_A1 and ldlt_A2 are completely equivalent. They simply demonstrate two different ways to construct the factorization.

+

Now, the caller can use the LDLT_factor objects as needed. For instance

+
x1 = mdivide_left_ldlt(ldlt_A1,b1);
+
x2 = mdivide_right_ldlt(b2,ldlt_A2);
+
+
d1 = log_determinant_ldlt(ldlt_A1);
+
d2 = log_determinant_ldlt(ldlt_A2);
+
+

Definition at line 45 of file LDLT_factor.hpp.

+

Member Typedef Documentation

+ +
+
+
+template<int R, int C>
+ + + + +
typedef size_t stan::math::LDLT_factor< stan::agrad::var, R, C >::size_type
+
+ +

Definition at line 117 of file LDLT_factor.hpp.

+ +
+
+

Constructor & Destructor Documentation

+ +
+
+
+template<int R, int C>
+ + + + + +
+ + + + + + + +
stan::math::LDLT_factor< stan::agrad::var, R, C >::LDLT_factor ()
+
+inline
+
+ +

Default constructor.

+

The caller MUST call compute() after this. Any calls which use the LDLT_factor without calling compute() run the risk of crashing Stan from within Eigen.

+ +

Definition at line 52 of file LDLT_factor.hpp.

+ +
+
+ +
+
+
+template<int R, int C>
+ + + + + +
+ + + + + + + + +
stan::math::LDLT_factor< stan::agrad::var, R, C >::LDLT_factor (const Eigen::Matrix< stan::agrad::var, R, C > & A)
+
+inline
+
+ +

Definition at line 54 of file LDLT_factor.hpp.

+ +
+
+

Member Function Documentation

+ +
+
+
+template<int R, int C>
+ + + + + +
+ + + + + + + +
size_t stan::math::LDLT_factor< stan::agrad::var, R, C >::cols () const
+
+inline
+
+ +

Definition at line 115 of file LDLT_factor.hpp.

+ +
+
+ +
+
+
+template<int R, int C>
+ + + + + +
+ + + + + + + + +
void stan::math::LDLT_factor< stan::agrad::var, R, C >::compute (const Eigen::Matrix< stan::agrad::var, R, C > & A)
+
+inline
+
+ +

Use the LDLT_factor object to factorize a new matrix.

+

After calling this function, the user should call success() to check that the factorization was successful. If the factorization is not successful, the LDLT_factor is not valid and other functions should not be used.

+
Parameters
+ + +
AA symmetric positive definite matrix to factorize
+
+
+ +

Definition at line 67 of file LDLT_factor.hpp.

+ +
+
+ +
+
+
+template<int R, int C>
+ + + + + +
+ + + + + + + +
size_t stan::math::LDLT_factor< stan::agrad::var, R, C >::rows () const
+
+inline
+
+ +

Definition at line 114 of file LDLT_factor.hpp.

+ +
+
+ +
+
+
+template<int R, int C>
+
+template<typename Rhs >
+ + + + + +
+ + + + + + + + +
const Eigen::internal::solve_retval<Eigen::LDLT< Eigen::Matrix<double,R,C> >, Rhs> stan::math::LDLT_factor< stan::agrad::var, R, C >::solve (const Eigen::MatrixBase< Rhs > & b) const
+
+inline
+
+ +

Compute the actual numerical result of inv(A)*b.

+

Note that this isn't meant to handle any of the autodiff. This is a convenience function for the actual implementations in mdivide_left_ldlt.

+

Precondition: success() must return true. If success() returns false, this function runs the risk of crashing Stan from within Eigen.

+
Parameters
+ + +
bThe right handside. Note that this is templated such that Eigen's expression-templating magic can work properly here.
+
+
+ +

Definition at line 85 of file LDLT_factor.hpp.

+ +
+
+ +
+
+
+template<int R, int C>
+ + + + + +
+ + + + + + + +
bool stan::math::LDLT_factor< stan::agrad::var, R, C >::success () const
+
+inline
+
+ +

Determine whether the most recent factorization succeeded.

+

This should always be called after the object is constructed (with a matrix) or after compute() is called.

+ +

Definition at line 94 of file LDLT_factor.hpp.

+ +
+
+ +
+
+
+template<int R, int C>
+ + + + + +
+ + + + + + + +
Eigen::VectorXd stan::math::LDLT_factor< stan::agrad::var, R, C >::vectorD () const
+
+inline
+
+ +

The entries of the diagonal matrix D.

+

They should be strictly positive for a positive definite matrix.

+

Precondition: success() must return true. If success() returns false, this function runs the risk of crashing Stan from within Eigen.

+ +

Definition at line 110 of file LDLT_factor.hpp.

+ +
+
+

Member Data Documentation

+ +
+
+
+template<int R, int C>
+ + + + +
stan::agrad::LDLT_alloc<R,C>* stan::math::LDLT_factor< stan::agrad::var, R, C >::_alloc
+
+ +

The LDLT_alloc object actually contains the factorization but is derived from the chainable_alloc class so that it is allocated on the vari stack.

+

This ensures that it's lifespan is longer than the LDLT_factor object which created it. This is needed because the factorization is required during the chain() calls which happen after an LDLT_factor object will most likely have been destroyed.

+ +

Definition at line 127 of file LDLT_factor.hpp.

+ +
+
+
The documentation for this class was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1math_1_1accumulator-members.html b/doc/api/html/classstan_1_1math_1_1accumulator-members.html new file mode 100644 index 00000000000..d2705687a9e --- /dev/null +++ b/doc/api/html/classstan_1_1math_1_1accumulator-members.html @@ -0,0 +1,119 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::math::accumulator< T > Member List
+
+
+ +

This is the complete list of members for stan::math::accumulator< T >, including all inherited members.

+ + + + + + + + +
accumulator()stan::math::accumulator< T >inline
add(S x)stan::math::accumulator< T >inline
add(const S &x)stan::math::accumulator< T >inline
add(const Eigen::Matrix< S, R, C > &m)stan::math::accumulator< T >inline
add(const std::vector< S > &xs)stan::math::accumulator< T >inline
sum()stan::math::accumulator< T >inline
~accumulator()stan::math::accumulator< T >inline
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1math_1_1accumulator.html b/doc/api/html/classstan_1_1math_1_1accumulator.html new file mode 100644 index 00000000000..a652844b9dc --- /dev/null +++ b/doc/api/html/classstan_1_1math_1_1accumulator.html @@ -0,0 +1,442 @@ + + + + + +Stan: stan::math::accumulator< T > Class Template Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::math::accumulator< T > Class Template Reference
+
+
+ +

Class to accumulate values and eventually return their sum. + More...

+ +

#include <accumulator.hpp>

+ + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 accumulator ()
 Construct an accumulator.
 
 ~accumulator ()
 Destroy an accumulator.
 
template<typename S >
boost::enable_if
+< boost::is_arithmetic< S >
+, void >::type 
add (S x)
 Add the specified arithmetic type value to the buffer after static casting it to the class type T.
 
template<typename S >
boost::disable_if
+< boost::is_arithmetic< S >
+, typename boost::enable_if
+< boost::is_same< S, T >, void >
+::type >::type 
add (const S &x)
 Add the specified non-arithmetic value to the buffer.
 
template<typename S , int R, int C>
void add (const Eigen::Matrix< S, R, C > &m)
 Add each entry in the specified matrix, vector, or row vector of values to the buffer.
 
template<typename S >
void add (const std::vector< S > &xs)
 Recursively add each entry in the specified standard vector to the buffer.
 
sum ()
 Return the sum of the accumulated values.
 
+

Detailed Description

+

template<typename T>
+class stan::math::accumulator< T >

+ +

Class to accumulate values and eventually return their sum.

+

If no values are ever added, the return value is 0.

+

This class is useful for speeding up auto-diff of long sums because it uses the sum() operation (either from stan::math or one defined by argument-dependent lookup.

+
Template Parameters
+ + +
TType of scalar added
+
+
+ +

Definition at line 25 of file accumulator.hpp.

+

Constructor & Destructor Documentation

+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + +
stan::math::accumulator< T >::accumulator ()
+
+inline
+
+ +

Construct an accumulator.

+ +

Definition at line 33 of file accumulator.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + +
stan::math::accumulator< T >::~accumulator ()
+
+inline
+
+ +

Destroy an accumulator.

+ +

Definition at line 40 of file accumulator.hpp.

+ +
+
+

Member Function Documentation

+ +
+
+
+template<typename T >
+
+template<typename S >
+ + + + + +
+ + + + + + + + +
boost::enable_if<boost::is_arithmetic<S>, void>::type stan::math::accumulator< T >::add (x)
+
+inline
+
+ +

Add the specified arithmetic type value to the buffer after static casting it to the class type T.

+

See the Boost doc for boost::is_arithmetic for information on what counts as an arithmetic type.

+
Template Parameters
+ + +
SType of argument
+
+
+
Parameters
+ + +
xValue to add
+
+
+ +

Definition at line 54 of file accumulator.hpp.

+ +
+
+ +
+
+
+template<typename T >
+
+template<typename S >
+ + + + + +
+ + + + + + + + +
boost::disable_if<boost::is_arithmetic<S>, typename boost::enable_if<boost::is_same<S,T>, void>::type >::type stan::math::accumulator< T >::add (const S & x)
+
+inline
+
+ +

Add the specified non-arithmetic value to the buffer.

+

This function is disabled if the type S is arithmetic or if it's not the same as T.

+

See the Boost doc for boost::is_arithmetic for information on what counts as an arithmetic type.

+
Template Parameters
+ + +
SType of argument
+
+
+
Parameters
+ + +
xValue to add
+
+
+ +

Definition at line 74 of file accumulator.hpp.

+ +
+
+ +
+
+
+template<typename T >
+
+template<typename S , int R, int C>
+ + + + + +
+ + + + + + + + +
void stan::math::accumulator< T >::add (const Eigen::Matrix< S, R, C > & m)
+
+inline
+
+ +

Add each entry in the specified matrix, vector, or row vector of values to the buffer.

+
Template Parameters
+ + + + +
Stype of values in matrix
Rnumber of rows in matrix
Cnumber of columns in matrix
+
+
+
Parameters
+ + +
mMatrix of values to add
+
+
+ +

Definition at line 88 of file accumulator.hpp.

+ +
+
+ +
+
+
+template<typename T >
+
+template<typename S >
+ + + + + +
+ + + + + + + + +
void stan::math::accumulator< T >::add (const std::vector< S > & xs)
+
+inline
+
+ +

Recursively add each entry in the specified standard vector to the buffer.

+

This will allow vectors of primitives, auto-diff variables to be added; if the vector entries are collections, their elements are recursively added.

+
Template Parameters
+ + +
SType of value to recursively add.
+
+
+
Parameters
+ + +
xsVector of entries to add
+
+
+ +

Definition at line 103 of file accumulator.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + +
T stan::math::accumulator< T >::sum ()
+
+inline
+
+ +

Return the sum of the accumulated values.

+
Returns
Sum of accumulated values.
+ +

Definition at line 113 of file accumulator.hpp.

+ +
+
+
The documentation for this class was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1math_1_1seq__view-members.html b/doc/api/html/classstan_1_1math_1_1seq__view-members.html new file mode 100644 index 00000000000..45e14ad224a --- /dev/null +++ b/doc/api/html/classstan_1_1math_1_1seq__view-members.html @@ -0,0 +1,115 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::math::seq_view< T, S > Member List
+
+
+ +

This is the complete list of members for stan::math::seq_view< T, S >, including all inherited members.

+ + + + +
operator[](int n) const stan::math::seq_view< T, S >inline
seq_view(typename pass_type< S >::type x)stan::math::seq_view< T, S >inline
size() const stan::math::seq_view< T, S >inline
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1math_1_1seq__view.html b/doc/api/html/classstan_1_1math_1_1seq__view.html new file mode 100644 index 00000000000..63c528307f0 --- /dev/null +++ b/doc/api/html/classstan_1_1math_1_1seq__view.html @@ -0,0 +1,218 @@ + + + + + +Stan: stan::math::seq_view< T, S > Class Template Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::math::seq_view< T, S > Class Template Reference
+
+
+ +

#include <seq_view.hpp>

+ + + + + + + + +

+Public Member Functions

 seq_view (typename pass_type< S >::type x)
 
pass_type< T >::type operator[] (int n) const
 
int size () const
 
+

Detailed Description

+

template<typename T, typename S>
+class stan::math::seq_view< T, S >

+ + +

Definition at line 43 of file seq_view.hpp.

+

Constructor & Destructor Documentation

+ +
+
+
+template<typename T , typename S >
+ + + + + +
+ + + + + + + + +
stan::math::seq_view< T, S >::seq_view (typename pass_type< S >::type x)
+
+inline
+
+ +

Definition at line 47 of file seq_view.hpp.

+ +
+
+

Member Function Documentation

+ +
+
+
+template<typename T , typename S >
+ + + + + +
+ + + + + + + + +
pass_type<T>::type stan::math::seq_view< T, S >::operator[] (int n) const
+
+inline
+
+ +

Definition at line 51 of file seq_view.hpp.

+ +
+
+ +
+
+
+template<typename T , typename S >
+ + + + + +
+ + + + + + + +
int stan::math::seq_view< T, S >::size () const
+
+inline
+
+ +

Definition at line 54 of file seq_view.hpp.

+ +
+
+
The documentation for this class was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1math_1_1seq__view_3_01_t_00_01_eigen_1_1_matrix_3_01_s_00_011_00_01_eigen_1_1_dynamic_01_4_01_4-members.html b/doc/api/html/classstan_1_1math_1_1seq__view_3_01_t_00_01_eigen_1_1_matrix_3_01_s_00_011_00_01_eigen_1_1_dynamic_01_4_01_4-members.html new file mode 100644 index 00000000000..aece289e650 --- /dev/null +++ b/doc/api/html/classstan_1_1math_1_1seq__view_3_01_t_00_01_eigen_1_1_matrix_3_01_s_00_011_00_01_eigen_1_1_dynamic_01_4_01_4-members.html @@ -0,0 +1,115 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::math::seq_view< T, Eigen::Matrix< S, 1, Eigen::Dynamic > > Member List
+
+
+ +

This is the complete list of members for stan::math::seq_view< T, Eigen::Matrix< S, 1, Eigen::Dynamic > >, including all inherited members.

+ + + + +
operator[](int n) const stan::math::seq_view< T, Eigen::Matrix< S, 1, Eigen::Dynamic > >inline
seq_view(typename pass_type< Eigen::Matrix< S, 1, Eigen::Dynamic > >::type x)stan::math::seq_view< T, Eigen::Matrix< S, 1, Eigen::Dynamic > >inline
size() const stan::math::seq_view< T, Eigen::Matrix< S, 1, Eigen::Dynamic > >inline
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1math_1_1seq__view_3_01_t_00_01_eigen_1_1_matrix_3_01_s_00_011_00_01_eigen_1_1_dynamic_01_4_01_4.html b/doc/api/html/classstan_1_1math_1_1seq__view_3_01_t_00_01_eigen_1_1_matrix_3_01_s_00_011_00_01_eigen_1_1_dynamic_01_4_01_4.html new file mode 100644 index 00000000000..21686dce9a9 --- /dev/null +++ b/doc/api/html/classstan_1_1math_1_1seq__view_3_01_t_00_01_eigen_1_1_matrix_3_01_s_00_011_00_01_eigen_1_1_dynamic_01_4_01_4.html @@ -0,0 +1,218 @@ + + + + + +Stan: stan::math::seq_view< T, Eigen::Matrix< S, 1, Eigen::Dynamic > > Class Template Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::math::seq_view< T, Eigen::Matrix< S, 1, Eigen::Dynamic > > Class Template Reference
+
+
+ +

#include <seq_view.hpp>

+ + + + + + + + +

+Public Member Functions

 seq_view (typename pass_type< Eigen::Matrix< S, 1, Eigen::Dynamic > >::type x)
 
pass_type< T >::type operator[] (int n) const
 
int size () const
 
+

Detailed Description

+

template<typename T, typename S>
+class stan::math::seq_view< T, Eigen::Matrix< S, 1, Eigen::Dynamic > >

+ + +

Definition at line 78 of file seq_view.hpp.

+

Constructor & Destructor Documentation

+ +
+
+
+template<typename T , typename S >
+ + + + + +
+ + + + + + + + +
stan::math::seq_view< T, Eigen::Matrix< S, 1, Eigen::Dynamic > >::seq_view (typename pass_type< Eigen::Matrix< S, 1, Eigen::Dynamic > >::type x)
+
+inline
+
+ +

Definition at line 82 of file seq_view.hpp.

+ +
+
+

Member Function Documentation

+ +
+
+
+template<typename T , typename S >
+ + + + + +
+ + + + + + + + +
pass_type<T>::type stan::math::seq_view< T, Eigen::Matrix< S, 1, Eigen::Dynamic > >::operator[] (int n) const
+
+inline
+
+ +

Definition at line 86 of file seq_view.hpp.

+ +
+
+ +
+
+
+template<typename T , typename S >
+ + + + + +
+ + + + + + + +
int stan::math::seq_view< T, Eigen::Matrix< S, 1, Eigen::Dynamic > >::size () const
+
+inline
+
+ +

Definition at line 89 of file seq_view.hpp.

+ +
+
+
The documentation for this class was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1math_1_1seq__view_3_01_t_00_01_eigen_1_1_matrix_3_01_s_00_01_eigen_1_1_dynamic_00_011_01_4_01_4-members.html b/doc/api/html/classstan_1_1math_1_1seq__view_3_01_t_00_01_eigen_1_1_matrix_3_01_s_00_01_eigen_1_1_dynamic_00_011_01_4_01_4-members.html new file mode 100644 index 00000000000..ba3bdfeb83f --- /dev/null +++ b/doc/api/html/classstan_1_1math_1_1seq__view_3_01_t_00_01_eigen_1_1_matrix_3_01_s_00_01_eigen_1_1_dynamic_00_011_01_4_01_4-members.html @@ -0,0 +1,115 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::math::seq_view< T, Eigen::Matrix< S, Eigen::Dynamic, 1 > > Member List
+
+
+ +

This is the complete list of members for stan::math::seq_view< T, Eigen::Matrix< S, Eigen::Dynamic, 1 > >, including all inherited members.

+ + + + +
operator[](int n) const stan::math::seq_view< T, Eigen::Matrix< S, Eigen::Dynamic, 1 > >inline
seq_view(typename pass_type< Eigen::Matrix< S, Eigen::Dynamic, 1 > >::type x)stan::math::seq_view< T, Eigen::Matrix< S, Eigen::Dynamic, 1 > >inline
size() const stan::math::seq_view< T, Eigen::Matrix< S, Eigen::Dynamic, 1 > >inline
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1math_1_1seq__view_3_01_t_00_01_eigen_1_1_matrix_3_01_s_00_01_eigen_1_1_dynamic_00_011_01_4_01_4.html b/doc/api/html/classstan_1_1math_1_1seq__view_3_01_t_00_01_eigen_1_1_matrix_3_01_s_00_01_eigen_1_1_dynamic_00_011_01_4_01_4.html new file mode 100644 index 00000000000..b473442845b --- /dev/null +++ b/doc/api/html/classstan_1_1math_1_1seq__view_3_01_t_00_01_eigen_1_1_matrix_3_01_s_00_01_eigen_1_1_dynamic_00_011_01_4_01_4.html @@ -0,0 +1,218 @@ + + + + + +Stan: stan::math::seq_view< T, Eigen::Matrix< S, Eigen::Dynamic, 1 > > Class Template Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::math::seq_view< T, Eigen::Matrix< S, Eigen::Dynamic, 1 > > Class Template Reference
+
+
+ +

#include <seq_view.hpp>

+ + + + + + + + +

+Public Member Functions

 seq_view (typename pass_type< Eigen::Matrix< S, Eigen::Dynamic, 1 > >::type x)
 
pass_type< T >::type operator[] (int n) const
 
int size () const
 
+

Detailed Description

+

template<typename T, typename S>
+class stan::math::seq_view< T, Eigen::Matrix< S, Eigen::Dynamic, 1 > >

+ + +

Definition at line 60 of file seq_view.hpp.

+

Constructor & Destructor Documentation

+ +
+
+
+template<typename T , typename S >
+ + + + + +
+ + + + + + + + +
stan::math::seq_view< T, Eigen::Matrix< S, Eigen::Dynamic, 1 > >::seq_view (typename pass_type< Eigen::Matrix< S, Eigen::Dynamic, 1 > >::type x)
+
+inline
+
+ +

Definition at line 64 of file seq_view.hpp.

+ +
+
+

Member Function Documentation

+ +
+
+
+template<typename T , typename S >
+ + + + + +
+ + + + + + + + +
pass_type<T>::type stan::math::seq_view< T, Eigen::Matrix< S, Eigen::Dynamic, 1 > >::operator[] (int n) const
+
+inline
+
+ +

Definition at line 68 of file seq_view.hpp.

+ +
+
+ +
+
+
+template<typename T , typename S >
+ + + + + +
+ + + + + + + +
int stan::math::seq_view< T, Eigen::Matrix< S, Eigen::Dynamic, 1 > >::size () const
+
+inline
+
+ +

Definition at line 71 of file seq_view.hpp.

+ +
+
+
The documentation for this class was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1math_1_1seq__view_3_01_t_00_01_eigen_1_1_matrix_3_01_s_00_01_eigen_1_1_dynamic_00_01_eigen_1_1_dynamic_01_4_01_4.html b/doc/api/html/classstan_1_1math_1_1seq__view_3_01_t_00_01_eigen_1_1_matrix_3_01_s_00_01_eigen_1_1_dynamic_00_01_eigen_1_1_dynamic_01_4_01_4.html new file mode 100644 index 00000000000..d6f0e16e064 --- /dev/null +++ b/doc/api/html/classstan_1_1math_1_1seq__view_3_01_t_00_01_eigen_1_1_matrix_3_01_s_00_01_eigen_1_1_dynamic_00_01_eigen_1_1_dynamic_01_4_01_4.html @@ -0,0 +1,218 @@ + + + + + +Stan: stan::math::seq_view< T, Eigen::Matrix< S, Eigen::Dynamic, Eigen::Dynamic > > Class Template Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::math::seq_view< T, Eigen::Matrix< S, Eigen::Dynamic, Eigen::Dynamic > > Class Template Reference
+
+
+ +

#include <seq_view.hpp>

+ + + + + + + + +

+Public Member Functions

 seq_view (typename pass_type< Eigen::Matrix< S, Eigen::Dynamic, Eigen::Dynamic > >::type x)
 
pass_type< T >::type operator[] (int n) const
 
int size () const
 
+

Detailed Description

+

template<typename T, typename S>
+class stan::math::seq_view< T, Eigen::Matrix< S, Eigen::Dynamic, Eigen::Dynamic > >

+ + +

Definition at line 98 of file seq_view.hpp.

+

Constructor & Destructor Documentation

+ +
+
+
+template<typename T , typename S >
+ + + + + +
+ + + + + + + + +
stan::math::seq_view< T, Eigen::Matrix< S, Eigen::Dynamic, Eigen::Dynamic > >::seq_view (typename pass_type< Eigen::Matrix< S, Eigen::Dynamic, Eigen::Dynamic > >::type x)
+
+inline
+
+ +

Definition at line 102 of file seq_view.hpp.

+ +
+
+

Member Function Documentation

+ +
+
+
+template<typename T , typename S >
+ + + + + +
+ + + + + + + + +
pass_type<T>::type stan::math::seq_view< T, Eigen::Matrix< S, Eigen::Dynamic, Eigen::Dynamic > >::operator[] (int n) const
+
+inline
+
+ +

Definition at line 106 of file seq_view.hpp.

+ +
+
+ +
+
+
+template<typename T , typename S >
+ + + + + +
+ + + + + + + +
int stan::math::seq_view< T, Eigen::Matrix< S, Eigen::Dynamic, Eigen::Dynamic > >::size () const
+
+inline
+
+ +

Definition at line 109 of file seq_view.hpp.

+ +
+
+
The documentation for this class was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1math_1_1seq__view_3_01_t_00_01_eigen_1_1_matrix_3_01_s_00_01_eigen_1_1_dynamic_00_085212abef8028c93e19b6c8ba8c0204d.html b/doc/api/html/classstan_1_1math_1_1seq__view_3_01_t_00_01_eigen_1_1_matrix_3_01_s_00_01_eigen_1_1_dynamic_00_085212abef8028c93e19b6c8ba8c0204d.html new file mode 100644 index 00000000000..ab28fe99a5b --- /dev/null +++ b/doc/api/html/classstan_1_1math_1_1seq__view_3_01_t_00_01_eigen_1_1_matrix_3_01_s_00_01_eigen_1_1_dynamic_00_085212abef8028c93e19b6c8ba8c0204d.html @@ -0,0 +1,115 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::math::seq_view< T, Eigen::Matrix< S, Eigen::Dynamic, Eigen::Dynamic > > Member List
+
+ +
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1math_1_1seq__view_3_01_t_00_01std_1_1vector_3_01_s_01_4_01_4-members.html b/doc/api/html/classstan_1_1math_1_1seq__view_3_01_t_00_01std_1_1vector_3_01_s_01_4_01_4-members.html new file mode 100644 index 00000000000..bc6a13f0741 --- /dev/null +++ b/doc/api/html/classstan_1_1math_1_1seq__view_3_01_t_00_01std_1_1vector_3_01_s_01_4_01_4-members.html @@ -0,0 +1,115 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::math::seq_view< T, std::vector< S > > Member List
+
+
+ +

This is the complete list of members for stan::math::seq_view< T, std::vector< S > >, including all inherited members.

+ + + + +
operator[](int n) const stan::math::seq_view< T, std::vector< S > >inline
seq_view(typename pass_type< std::vector< S > >::type x)stan::math::seq_view< T, std::vector< S > >inline
size() const stan::math::seq_view< T, std::vector< S > >inline
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1math_1_1seq__view_3_01_t_00_01std_1_1vector_3_01_s_01_4_01_4.html b/doc/api/html/classstan_1_1math_1_1seq__view_3_01_t_00_01std_1_1vector_3_01_s_01_4_01_4.html new file mode 100644 index 00000000000..78362a3ba73 --- /dev/null +++ b/doc/api/html/classstan_1_1math_1_1seq__view_3_01_t_00_01std_1_1vector_3_01_s_01_4_01_4.html @@ -0,0 +1,218 @@ + + + + + +Stan: stan::math::seq_view< T, std::vector< S > > Class Template Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::math::seq_view< T, std::vector< S > > Class Template Reference
+
+
+ +

#include <seq_view.hpp>

+ + + + + + + + +

+Public Member Functions

 seq_view (typename pass_type< std::vector< S > >::type x)
 
pass_type< T >::type operator[] (int n) const
 
int size () const
 
+

Detailed Description

+

template<typename T, typename S>
+class stan::math::seq_view< T, std::vector< S > >

+ + +

Definition at line 116 of file seq_view.hpp.

+

Constructor & Destructor Documentation

+ +
+
+
+template<typename T , typename S >
+ + + + + +
+ + + + + + + + +
stan::math::seq_view< T, std::vector< S > >::seq_view (typename pass_type< std::vector< S > >::type x)
+
+inline
+
+ +

Definition at line 121 of file seq_view.hpp.

+ +
+
+

Member Function Documentation

+ +
+
+
+template<typename T , typename S >
+ + + + + +
+ + + + + + + + +
pass_type<T>::type stan::math::seq_view< T, std::vector< S > >::operator[] (int n) const
+
+inline
+
+ +

Definition at line 126 of file seq_view.hpp.

+ +
+
+ +
+
+
+template<typename T , typename S >
+ + + + + +
+ + + + + + + +
int stan::math::seq_view< T, std::vector< S > >::size () const
+
+inline
+
+ +

Definition at line 129 of file seq_view.hpp.

+ +
+
+
The documentation for this class was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1math_1_1seq__view_3_01_t_00_01std_1_1vector_3_01_t_01_4_01_4-members.html b/doc/api/html/classstan_1_1math_1_1seq__view_3_01_t_00_01std_1_1vector_3_01_t_01_4_01_4-members.html new file mode 100644 index 00000000000..481868ea832 --- /dev/null +++ b/doc/api/html/classstan_1_1math_1_1seq__view_3_01_t_00_01std_1_1vector_3_01_t_01_4_01_4-members.html @@ -0,0 +1,115 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::math::seq_view< T, std::vector< T > > Member List
+
+
+ +

This is the complete list of members for stan::math::seq_view< T, std::vector< T > >, including all inherited members.

+ + + + +
operator[](int n) const stan::math::seq_view< T, std::vector< T > >inline
seq_view(typename pass_type< std::vector< T > >::type x)stan::math::seq_view< T, std::vector< T > >inline
size() const stan::math::seq_view< T, std::vector< T > >inline
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1math_1_1seq__view_3_01_t_00_01std_1_1vector_3_01_t_01_4_01_4.html b/doc/api/html/classstan_1_1math_1_1seq__view_3_01_t_00_01std_1_1vector_3_01_t_01_4_01_4.html new file mode 100644 index 00000000000..9c654604235 --- /dev/null +++ b/doc/api/html/classstan_1_1math_1_1seq__view_3_01_t_00_01std_1_1vector_3_01_t_01_4_01_4.html @@ -0,0 +1,218 @@ + + + + + +Stan: stan::math::seq_view< T, std::vector< T > > Class Template Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::math::seq_view< T, std::vector< T > > Class Template Reference
+
+
+ +

#include <seq_view.hpp>

+ + + + + + + + +

+Public Member Functions

 seq_view (typename pass_type< std::vector< T > >::type x)
 
pass_type< T >::type operator[] (int n) const
 
int size () const
 
+

Detailed Description

+

template<typename T>
+class stan::math::seq_view< T, std::vector< T > >

+ + +

Definition at line 137 of file seq_view.hpp.

+

Constructor & Destructor Documentation

+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + +
stan::math::seq_view< T, std::vector< T > >::seq_view (typename pass_type< std::vector< T > >::type x)
+
+inline
+
+ +

Definition at line 141 of file seq_view.hpp.

+ +
+
+

Member Function Documentation

+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + +
pass_type<T>::type stan::math::seq_view< T, std::vector< T > >::operator[] (int n) const
+
+inline
+
+ +

Definition at line 145 of file seq_view.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + +
int stan::math::seq_view< T, std::vector< T > >::size () const
+
+inline
+
+ +

Definition at line 148 of file seq_view.hpp.

+ +
+
+
The documentation for this class was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1math_1_1seq__view_3_01_t_00_01std_1_1vector_3_01std_1_1vector_3_01_t_01_4_01_4_01_4-members.html b/doc/api/html/classstan_1_1math_1_1seq__view_3_01_t_00_01std_1_1vector_3_01std_1_1vector_3_01_t_01_4_01_4_01_4-members.html new file mode 100644 index 00000000000..5e28fa18da3 --- /dev/null +++ b/doc/api/html/classstan_1_1math_1_1seq__view_3_01_t_00_01std_1_1vector_3_01std_1_1vector_3_01_t_01_4_01_4_01_4-members.html @@ -0,0 +1,115 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::math::seq_view< T, std::vector< std::vector< T > > > Member List
+
+
+ +

This is the complete list of members for stan::math::seq_view< T, std::vector< std::vector< T > > >, including all inherited members.

+ + + + +
operator[](int n) const stan::math::seq_view< T, std::vector< std::vector< T > > >inline
seq_view(typename pass_type< std::vector< std::vector< T > > >::type x)stan::math::seq_view< T, std::vector< std::vector< T > > >inline
size() const stan::math::seq_view< T, std::vector< std::vector< T > > >inline
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1math_1_1seq__view_3_01_t_00_01std_1_1vector_3_01std_1_1vector_3_01_t_01_4_01_4_01_4.html b/doc/api/html/classstan_1_1math_1_1seq__view_3_01_t_00_01std_1_1vector_3_01std_1_1vector_3_01_t_01_4_01_4_01_4.html new file mode 100644 index 00000000000..d8f69b27903 --- /dev/null +++ b/doc/api/html/classstan_1_1math_1_1seq__view_3_01_t_00_01std_1_1vector_3_01std_1_1vector_3_01_t_01_4_01_4_01_4.html @@ -0,0 +1,218 @@ + + + + + +Stan: stan::math::seq_view< T, std::vector< std::vector< T > > > Class Template Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::math::seq_view< T, std::vector< std::vector< T > > > Class Template Reference
+
+
+ +

#include <seq_view.hpp>

+ + + + + + + + +

+Public Member Functions

 seq_view (typename pass_type< std::vector< std::vector< T > > >::type x)
 
pass_type< T >::type operator[] (int n) const
 
int size () const
 
+

Detailed Description

+

template<typename T>
+class stan::math::seq_view< T, std::vector< std::vector< T > > >

+ + +

Definition at line 156 of file seq_view.hpp.

+

Constructor & Destructor Documentation

+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + +
stan::math::seq_view< T, std::vector< std::vector< T > > >::seq_view (typename pass_type< std::vector< std::vector< T > > >::type x)
+
+inline
+
+ +

Definition at line 161 of file seq_view.hpp.

+ +
+
+

Member Function Documentation

+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + +
pass_type<T>::type stan::math::seq_view< T, std::vector< std::vector< T > > >::operator[] (int n) const
+
+inline
+
+ +

Definition at line 165 of file seq_view.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + +
int stan::math::seq_view< T, std::vector< std::vector< T > > >::size () const
+
+inline
+
+ +

Definition at line 168 of file seq_view.hpp.

+ +
+
+
The documentation for this class was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1math_1_1seq__view_3_01double_00_01std_1_1vector_3_01int_01_4_01_4-members.html b/doc/api/html/classstan_1_1math_1_1seq__view_3_01double_00_01std_1_1vector_3_01int_01_4_01_4-members.html new file mode 100644 index 00000000000..016e250b2e0 --- /dev/null +++ b/doc/api/html/classstan_1_1math_1_1seq__view_3_01double_00_01std_1_1vector_3_01int_01_4_01_4-members.html @@ -0,0 +1,115 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::math::seq_view< double, std::vector< int > > Member List
+
+
+ +

This is the complete list of members for stan::math::seq_view< double, std::vector< int > >, including all inherited members.

+ + + + +
operator[](int n) const stan::math::seq_view< double, std::vector< int > >inline
seq_view(pass_type< std::vector< int > >::type x)stan::math::seq_view< double, std::vector< int > >inline
size() const stan::math::seq_view< double, std::vector< int > >inline
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1math_1_1seq__view_3_01double_00_01std_1_1vector_3_01int_01_4_01_4.html b/doc/api/html/classstan_1_1math_1_1seq__view_3_01double_00_01std_1_1vector_3_01int_01_4_01_4.html new file mode 100644 index 00000000000..646e415af73 --- /dev/null +++ b/doc/api/html/classstan_1_1math_1_1seq__view_3_01double_00_01std_1_1vector_3_01int_01_4_01_4.html @@ -0,0 +1,212 @@ + + + + + +Stan: stan::math::seq_view< double, std::vector< int > > Class Template Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::math::seq_view< double, std::vector< int > > Class Template Reference
+
+
+ +

#include <seq_view.hpp>

+ + + + + + + + +

+Public Member Functions

 seq_view (pass_type< std::vector< int > >::type x)
 
pass_type< double >::type operator[] (int n) const
 
int size () const
 
+

Detailed Description

+

template<>
+class stan::math::seq_view< double, std::vector< int > >

+ + +

Definition at line 174 of file seq_view.hpp.

+

Constructor & Destructor Documentation

+ +
+
+ + + + + +
+ + + + + + + + +
stan::math::seq_view< double, std::vector< int > >::seq_view (pass_type< std::vector< int > >::type x)
+
+inline
+
+ +

Definition at line 178 of file seq_view.hpp.

+ +
+
+

Member Function Documentation

+ +
+
+ + + + + +
+ + + + + + + + +
pass_type<double>::type stan::math::seq_view< double, std::vector< int > >::operator[] (int n) const
+
+inline
+
+ +

Definition at line 181 of file seq_view.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
int stan::math::seq_view< double, std::vector< int > >::size () const
+
+inline
+
+ +

Definition at line 184 of file seq_view.hpp.

+ +
+
+
The documentation for this class was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1mcmc_1_1adapt__dense__e__nuts-members.html b/doc/api/html/classstan_1_1mcmc_1_1adapt__dense__e__nuts-members.html new file mode 100644 index 00000000000..070d13be7f8 --- /dev/null +++ b/doc/api/html/classstan_1_1mcmc_1_1adapt__dense__e__nuts-members.html @@ -0,0 +1,171 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::mcmc::adapt_dense_e_nuts< M, BaseRNG > Member List
+
+
+ +

This is the complete list of members for stan::mcmc::adapt_dense_e_nuts< M, BaseRNG >, including all inherited members.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
_adapt_flagstan::mcmc::base_adapterprotected
_covar_adaptationstan::mcmc::stepsize_covar_adapterprotected
_depthstan::mcmc::base_nuts< M, dense_e_point, dense_e_metric, expl_leapfrog, BaseRNG >
_epsilonstan::mcmc::base_hmc< M, dense_e_point, dense_e_metric, expl_leapfrog, BaseRNG >protected
_epsilon_jitterstan::mcmc::base_hmc< M, dense_e_point, dense_e_metric, expl_leapfrog, BaseRNG >protected
_err_streamstan::mcmc::base_mcmcprotected
_hamiltonianstan::mcmc::base_hmc< M, dense_e_point, dense_e_metric, expl_leapfrog, BaseRNG >protected
_integratorstan::mcmc::base_hmc< M, dense_e_point, dense_e_metric, expl_leapfrog, BaseRNG >protected
_max_deltastan::mcmc::base_nuts< M, dense_e_point, dense_e_metric, expl_leapfrog, BaseRNG >
_max_depthstan::mcmc::base_nuts< M, dense_e_point, dense_e_metric, expl_leapfrog, BaseRNG >
_n_divergentstan::mcmc::base_nuts< M, dense_e_point, dense_e_metric, expl_leapfrog, BaseRNG >
_n_leapfrogstan::mcmc::base_nuts< M, dense_e_point, dense_e_metric, expl_leapfrog, BaseRNG >
_namestan::mcmc::base_mcmcprotected
_nom_epsilonstan::mcmc::base_hmc< M, dense_e_point, dense_e_metric, expl_leapfrog, BaseRNG >protected
_out_streamstan::mcmc::base_mcmcprotected
_rand_intstan::mcmc::base_hmc< M, dense_e_point, dense_e_metric, expl_leapfrog, BaseRNG >protected
_rand_uniformstan::mcmc::base_hmc< M, dense_e_point, dense_e_metric, expl_leapfrog, BaseRNG >protected
_stepsize_adaptationstan::mcmc::stepsize_covar_adapterprotected
_zstan::mcmc::base_hmc< M, dense_e_point, dense_e_metric, expl_leapfrog, BaseRNG >protected
adapt_dense_e_nuts(M &m, BaseRNG &rng, std::ostream *o=&std::cout, std::ostream *e=0)stan::mcmc::adapt_dense_e_nuts< M, BaseRNG >inline
adapting()stan::mcmc::base_adapterinline
base_adapter()stan::mcmc::base_adapterinline
base_hmc(M &m, BaseRNG &rng, std::ostream *o, std::ostream *e)stan::mcmc::base_hmc< M, dense_e_point, dense_e_metric, expl_leapfrog, BaseRNG >inline
base_mcmc(std::ostream *o, std::ostream *e)stan::mcmc::base_mcmcinline
base_nuts(M &m, BaseRNG &rng, std::ostream *o, std::ostream *e)stan::mcmc::base_nuts< M, dense_e_point, dense_e_metric, expl_leapfrog, BaseRNG >inline
build_tree(int depth, Eigen::VectorXd &rho, ps_point *z_init_parent, ps_point &z_propose, nuts_util &util)stan::mcmc::base_nuts< M, dense_e_point, dense_e_metric, expl_leapfrog, BaseRNG >inline
compute_criterion(ps_point &start, dense_e_point &finish, Eigen::VectorXd &rho)stan::mcmc::dense_e_nuts< M, BaseRNG >inlinevirtual
dense_e_nuts(M &m, BaseRNG &rng, std::ostream *o=&std::cout, std::ostream *e=0)stan::mcmc::dense_e_nuts< M, BaseRNG >inline
disengage_adaptation()stan::mcmc::adapt_dense_e_nuts< M, BaseRNG >inlinevirtual
engage_adaptation()stan::mcmc::base_adapterinlinevirtual
get_covar_adaptation()stan::mcmc::stepsize_covar_adapterinline
get_current_stepsize()stan::mcmc::base_hmc< M, dense_e_point, dense_e_metric, expl_leapfrog, BaseRNG >inline
get_max_delta()stan::mcmc::base_nuts< M, dense_e_point, dense_e_metric, expl_leapfrog, BaseRNG >inline
get_max_depth()stan::mcmc::base_nuts< M, dense_e_point, dense_e_metric, expl_leapfrog, BaseRNG >inline
get_nominal_stepsize()stan::mcmc::base_hmc< M, dense_e_point, dense_e_metric, expl_leapfrog, BaseRNG >inline
get_sampler_diagnostic_names(std::vector< std::string > &model_names, std::vector< std::string > &names)stan::mcmc::base_hmc< M, dense_e_point, dense_e_metric, expl_leapfrog, BaseRNG >inlinevirtual
get_sampler_diagnostics(std::vector< double > &values)stan::mcmc::base_hmc< M, dense_e_point, dense_e_metric, expl_leapfrog, BaseRNG >inlinevirtual
get_sampler_param_names(std::vector< std::string > &names)stan::mcmc::base_nuts< M, dense_e_point, dense_e_metric, expl_leapfrog, BaseRNG >inlinevirtual
get_sampler_params(std::vector< double > &values)stan::mcmc::base_nuts< M, dense_e_point, dense_e_metric, expl_leapfrog, BaseRNG >inlinevirtual
get_stepsize_adaptation()stan::mcmc::stepsize_covar_adapterinline
get_stepsize_jitter()stan::mcmc::base_hmc< M, dense_e_point, dense_e_metric, expl_leapfrog, BaseRNG >inline
init_stepsize()stan::mcmc::base_hmc< M, dense_e_point, dense_e_metric, expl_leapfrog, BaseRNG >inline
name()stan::mcmc::base_mcmcinline
sample_stepsize()stan::mcmc::base_hmc< M, dense_e_point, dense_e_metric, expl_leapfrog, BaseRNG >inline
seed(const Eigen::VectorXd &q)stan::mcmc::base_hmc< M, dense_e_point, dense_e_metric, expl_leapfrog, BaseRNG >inline
set_max_delta(const double d)stan::mcmc::base_nuts< M, dense_e_point, dense_e_metric, expl_leapfrog, BaseRNG >inline
set_max_depth(const int d)stan::mcmc::base_nuts< M, dense_e_point, dense_e_metric, expl_leapfrog, BaseRNG >inline
set_nominal_stepsize(const double e)stan::mcmc::base_hmc< M, dense_e_point, dense_e_metric, expl_leapfrog, BaseRNG >inlinevirtual
set_stepsize_jitter(const double j)stan::mcmc::base_hmc< M, dense_e_point, dense_e_metric, expl_leapfrog, BaseRNG >inlinevirtual
set_window_params(unsigned int num_warmup, unsigned int init_buffer, unsigned int term_buffer, unsigned int base_window, std::ostream *e=0)stan::mcmc::stepsize_covar_adapterinline
stepsize_covar_adapter(int n)stan::mcmc::stepsize_covar_adapterinline
transition(sample &init_sample)stan::mcmc::adapt_dense_e_nuts< M, BaseRNG >inlinevirtual
write_sampler_param_names(std::ostream &o)stan::mcmc::base_nuts< M, dense_e_point, dense_e_metric, expl_leapfrog, BaseRNG >inlinevirtual
write_sampler_params(std::ostream &o)stan::mcmc::base_nuts< M, dense_e_point, dense_e_metric, expl_leapfrog, BaseRNG >inlinevirtual
write_sampler_state(std::ostream *o)stan::mcmc::base_hmc< M, dense_e_point, dense_e_metric, expl_leapfrog, BaseRNG >inlinevirtual
z()stan::mcmc::base_hmc< M, dense_e_point, dense_e_metric, expl_leapfrog, BaseRNG >inline
~adapt_dense_e_nuts()stan::mcmc::adapt_dense_e_nuts< M, BaseRNG >inline
~base_mcmc()stan::mcmc::base_mcmcinlinevirtual
~base_nuts()stan::mcmc::base_nuts< M, dense_e_point, dense_e_metric, expl_leapfrog, BaseRNG >inline
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1mcmc_1_1adapt__dense__e__nuts.html b/doc/api/html/classstan_1_1mcmc_1_1adapt__dense__e__nuts.html new file mode 100644 index 00000000000..2c4bce6bbdd --- /dev/null +++ b/doc/api/html/classstan_1_1mcmc_1_1adapt__dense__e__nuts.html @@ -0,0 +1,404 @@ + + + + + +Stan: stan::mcmc::adapt_dense_e_nuts< M, BaseRNG > Class Template Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::mcmc::adapt_dense_e_nuts< M, BaseRNG > Class Template Reference
+
+
+ +

#include <adapt_dense_e_nuts.hpp>

+
+Inheritance diagram for stan::mcmc::adapt_dense_e_nuts< M, BaseRNG >:
+
+
+ + +stan::mcmc::dense_e_nuts< M, BaseRNG > +stan::mcmc::stepsize_covar_adapter +stan::mcmc::base_nuts< M, dense_e_point, dense_e_metric, expl_leapfrog, BaseRNG > +stan::mcmc::base_adapter +stan::mcmc::base_hmc< M, dense_e_point, dense_e_metric, expl_leapfrog, BaseRNG > +stan::mcmc::base_mcmc + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 adapt_dense_e_nuts (M &m, BaseRNG &rng, std::ostream *o=&std::cout, std::ostream *e=0)
 
 ~adapt_dense_e_nuts ()
 
sample transition (sample &init_sample)
 
void disengage_adaptation ()
 
- Public Member Functions inherited from stan::mcmc::dense_e_nuts< M, BaseRNG >
 dense_e_nuts (M &m, BaseRNG &rng, std::ostream *o=&std::cout, std::ostream *e=0)
 
bool compute_criterion (ps_point &start, dense_e_point &finish, Eigen::VectorXd &rho)
 
- Public Member Functions inherited from stan::mcmc::base_nuts< M, dense_e_point, dense_e_metric, expl_leapfrog, BaseRNG >
 base_nuts (M &m, BaseRNG &rng, std::ostream *o, std::ostream *e)
 
 ~base_nuts ()
 
void set_max_depth (const int d)
 
void set_max_delta (const double d)
 
int get_max_depth ()
 
double get_max_delta ()
 
sample transition (sample &init_sample)
 
void write_sampler_param_names (std::ostream &o)
 
void write_sampler_params (std::ostream &o)
 
void get_sampler_param_names (std::vector< std::string > &names)
 
void get_sampler_params (std::vector< double > &values)
 
int build_tree (int depth, Eigen::VectorXd &rho, ps_point *z_init_parent, ps_point &z_propose, nuts_util &util)
 
- Public Member Functions inherited from stan::mcmc::base_hmc< M, dense_e_point, dense_e_metric, expl_leapfrog, BaseRNG >
 base_hmc (M &m, BaseRNG &rng, std::ostream *o, std::ostream *e)
 
void write_sampler_state (std::ostream *o)
 
void get_sampler_diagnostic_names (std::vector< std::string > &model_names, std::vector< std::string > &names)
 
void get_sampler_diagnostics (std::vector< double > &values)
 
void seed (const Eigen::VectorXd &q)
 
void init_stepsize ()
 
dense_e_pointz ()
 
virtual void set_nominal_stepsize (const double e)
 
double get_nominal_stepsize ()
 
double get_current_stepsize ()
 
virtual void set_stepsize_jitter (const double j)
 
double get_stepsize_jitter ()
 
void sample_stepsize ()
 
- Public Member Functions inherited from stan::mcmc::base_mcmc
 base_mcmc (std::ostream *o, std::ostream *e)
 
virtual ~base_mcmc ()
 
std::string name ()
 
- Public Member Functions inherited from stan::mcmc::stepsize_covar_adapter
 stepsize_covar_adapter (int n)
 
stepsize_adaptationget_stepsize_adaptation ()
 
covar_adaptationget_covar_adaptation ()
 
void set_window_params (unsigned int num_warmup, unsigned int init_buffer, unsigned int term_buffer, unsigned int base_window, std::ostream *e=0)
 
- Public Member Functions inherited from stan::mcmc::base_adapter
 base_adapter ()
 
virtual void engage_adaptation ()
 
bool adapting ()
 
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Additional Inherited Members

- Public Attributes inherited from stan::mcmc::base_nuts< M, dense_e_point, dense_e_metric, expl_leapfrog, BaseRNG >
int _depth
 
int _max_depth
 
double _max_delta
 
int _n_leapfrog
 
int _n_divergent
 
- Protected Attributes inherited from stan::mcmc::base_hmc< M, dense_e_point, dense_e_metric, expl_leapfrog, BaseRNG >
dense_e_point _z
 
expl_leapfrog< dense_e_metric
+< M, BaseRNG >, dense_e_point
_integrator
 
dense_e_metric< M, BaseRNG > _hamiltonian
 
BaseRNG & _rand_int
 
boost::uniform_01< BaseRNG & > _rand_uniform
 
double _nom_epsilon
 
double _epsilon
 
double _epsilon_jitter
 
- Protected Attributes inherited from stan::mcmc::stepsize_covar_adapter
stepsize_adaptation _stepsize_adaptation
 
covar_adaptation _covar_adaptation
 
+

Detailed Description

+

template<typename M, class BaseRNG>
+class stan::mcmc::adapt_dense_e_nuts< M, BaseRNG >

+ + +

Definition at line 16 of file adapt_dense_e_nuts.hpp.

+

Constructor & Destructor Documentation

+ +
+
+
+template<typename M , class BaseRNG >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
stan::mcmc::adapt_dense_e_nuts< M, BaseRNG >::adapt_dense_e_nuts (M & m,
BaseRNG & rng,
std::ostream * o = &std::cout,
std::ostream * e = 0 
)
+
+inline
+
+ +

Definition at line 21 of file adapt_dense_e_nuts.hpp.

+ +
+
+ +
+
+
+template<typename M , class BaseRNG >
+ + + + + +
+ + + + + + + +
stan::mcmc::adapt_dense_e_nuts< M, BaseRNG >::~adapt_dense_e_nuts ()
+
+inline
+
+ +

Definition at line 27 of file adapt_dense_e_nuts.hpp.

+ +
+
+

Member Function Documentation

+ +
+
+
+template<typename M , class BaseRNG >
+ + + + + +
+ + + + + + + +
void stan::mcmc::adapt_dense_e_nuts< M, BaseRNG >::disengage_adaptation ()
+
+inlinevirtual
+
+ +

Reimplemented from stan::mcmc::base_adapter.

+ +

Definition at line 52 of file adapt_dense_e_nuts.hpp.

+ +
+
+ +
+
+
+template<typename M , class BaseRNG >
+ + + + + +
+ + + + + + + + +
sample stan::mcmc::adapt_dense_e_nuts< M, BaseRNG >::transition (sampleinit_sample)
+
+inlinevirtual
+
+ +

Implements stan::mcmc::base_mcmc.

+ +

Definition at line 29 of file adapt_dense_e_nuts.hpp.

+ +
+
+
The documentation for this class was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1mcmc_1_1adapt__dense__e__nuts.png b/doc/api/html/classstan_1_1mcmc_1_1adapt__dense__e__nuts.png new file mode 100644 index 0000000000000000000000000000000000000000..4d06280d3c2ce1df3d9a7107c142c8cf2edf05cc GIT binary patch literal 4606 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 Y0;}G_Dz$-+H6Zk9$M3371^wy&0M0pHX#fBK literal 0 HcmV?d00001 diff --git a/doc/api/html/classstan_1_1mcmc_1_1adapt__dense__e__static__hmc-members.html b/doc/api/html/classstan_1_1mcmc_1_1adapt__dense__e__static__hmc-members.html new file mode 100644 index 00000000000..2792d87cec9 --- /dev/null +++ b/doc/api/html/classstan_1_1mcmc_1_1adapt__dense__e__static__hmc-members.html @@ -0,0 +1,168 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::mcmc::adapt_dense_e_static_hmc< M, BaseRNG > Member List
+
+
+ +

This is the complete list of members for stan::mcmc::adapt_dense_e_static_hmc< M, BaseRNG >, including all inherited members.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
_adapt_flagstan::mcmc::base_adapterprotected
_covar_adaptationstan::mcmc::stepsize_covar_adapterprotected
_epsilonstan::mcmc::base_hmc< M, dense_e_point, dense_e_metric, expl_leapfrog, BaseRNG >protected
_epsilon_jitterstan::mcmc::base_hmc< M, dense_e_point, dense_e_metric, expl_leapfrog, BaseRNG >protected
_err_streamstan::mcmc::base_mcmcprotected
_hamiltonianstan::mcmc::base_hmc< M, dense_e_point, dense_e_metric, expl_leapfrog, BaseRNG >protected
_integratorstan::mcmc::base_hmc< M, dense_e_point, dense_e_metric, expl_leapfrog, BaseRNG >protected
_namestan::mcmc::base_mcmcprotected
_nom_epsilonstan::mcmc::base_hmc< M, dense_e_point, dense_e_metric, expl_leapfrog, BaseRNG >protected
_out_streamstan::mcmc::base_mcmcprotected
_rand_intstan::mcmc::base_hmc< M, dense_e_point, dense_e_metric, expl_leapfrog, BaseRNG >protected
_rand_uniformstan::mcmc::base_hmc< M, dense_e_point, dense_e_metric, expl_leapfrog, BaseRNG >protected
_stepsize_adaptationstan::mcmc::stepsize_covar_adapterprotected
_update_L()stan::mcmc::base_static_hmc< M, dense_e_point, dense_e_metric, expl_leapfrog, BaseRNG >inlineprotected
_zstan::mcmc::base_hmc< M, dense_e_point, dense_e_metric, expl_leapfrog, BaseRNG >protected
adapt_dense_e_static_hmc(M &m, BaseRNG &rng, std::ostream *o=&std::cout, std::ostream *e=0)stan::mcmc::adapt_dense_e_static_hmc< M, BaseRNG >inline
adapting()stan::mcmc::base_adapterinline
base_adapter()stan::mcmc::base_adapterinline
base_hmc(M &m, BaseRNG &rng, std::ostream *o, std::ostream *e)stan::mcmc::base_hmc< M, dense_e_point, dense_e_metric, expl_leapfrog, BaseRNG >inline
base_mcmc(std::ostream *o, std::ostream *e)stan::mcmc::base_mcmcinline
base_static_hmc(M &m, BaseRNG &rng, std::ostream *o, std::ostream *e)stan::mcmc::base_static_hmc< M, dense_e_point, dense_e_metric, expl_leapfrog, BaseRNG >inline
dense_e_static_hmc(M &m, BaseRNG &rng, std::ostream *o=&std::cout, std::ostream *e=0)stan::mcmc::dense_e_static_hmc< M, BaseRNG >inline
disengage_adaptation()stan::mcmc::adapt_dense_e_static_hmc< M, BaseRNG >inlinevirtual
engage_adaptation()stan::mcmc::base_adapterinlinevirtual
get_covar_adaptation()stan::mcmc::stepsize_covar_adapterinline
get_current_stepsize()stan::mcmc::base_hmc< M, dense_e_point, dense_e_metric, expl_leapfrog, BaseRNG >inline
get_L()stan::mcmc::base_static_hmc< M, dense_e_point, dense_e_metric, expl_leapfrog, BaseRNG >inline
get_nominal_stepsize()stan::mcmc::base_hmc< M, dense_e_point, dense_e_metric, expl_leapfrog, BaseRNG >inline
get_sampler_diagnostic_names(std::vector< std::string > &model_names, std::vector< std::string > &names)stan::mcmc::base_hmc< M, dense_e_point, dense_e_metric, expl_leapfrog, BaseRNG >inlinevirtual
get_sampler_diagnostics(std::vector< double > &values)stan::mcmc::base_hmc< M, dense_e_point, dense_e_metric, expl_leapfrog, BaseRNG >inlinevirtual
get_sampler_param_names(std::vector< std::string > &names)stan::mcmc::base_static_hmc< M, dense_e_point, dense_e_metric, expl_leapfrog, BaseRNG >inlinevirtual
get_sampler_params(std::vector< double > &values)stan::mcmc::base_static_hmc< M, dense_e_point, dense_e_metric, expl_leapfrog, BaseRNG >inlinevirtual
get_stepsize_adaptation()stan::mcmc::stepsize_covar_adapterinline
get_stepsize_jitter()stan::mcmc::base_hmc< M, dense_e_point, dense_e_metric, expl_leapfrog, BaseRNG >inline
get_T()stan::mcmc::base_static_hmc< M, dense_e_point, dense_e_metric, expl_leapfrog, BaseRNG >inline
init_stepsize()stan::mcmc::base_hmc< M, dense_e_point, dense_e_metric, expl_leapfrog, BaseRNG >inline
L_stan::mcmc::base_static_hmc< M, dense_e_point, dense_e_metric, expl_leapfrog, BaseRNG >protected
name()stan::mcmc::base_mcmcinline
sample_stepsize()stan::mcmc::base_hmc< M, dense_e_point, dense_e_metric, expl_leapfrog, BaseRNG >inline
seed(const Eigen::VectorXd &q)stan::mcmc::base_hmc< M, dense_e_point, dense_e_metric, expl_leapfrog, BaseRNG >inline
set_nominal_stepsize(const double e)stan::mcmc::base_static_hmc< M, dense_e_point, dense_e_metric, expl_leapfrog, BaseRNG >inlinevirtual
set_nominal_stepsize_and_L(const double e, const int l)stan::mcmc::base_static_hmc< M, dense_e_point, dense_e_metric, expl_leapfrog, BaseRNG >inline
set_nominal_stepsize_and_T(const double e, const double t)stan::mcmc::base_static_hmc< M, dense_e_point, dense_e_metric, expl_leapfrog, BaseRNG >inline
set_stepsize_jitter(const double j)stan::mcmc::base_hmc< M, dense_e_point, dense_e_metric, expl_leapfrog, BaseRNG >inlinevirtual
set_T(const double t)stan::mcmc::base_static_hmc< M, dense_e_point, dense_e_metric, expl_leapfrog, BaseRNG >inline
set_window_params(unsigned int num_warmup, unsigned int init_buffer, unsigned int term_buffer, unsigned int base_window, std::ostream *e=0)stan::mcmc::stepsize_covar_adapterinline
stepsize_covar_adapter(int n)stan::mcmc::stepsize_covar_adapterinline
T_stan::mcmc::base_static_hmc< M, dense_e_point, dense_e_metric, expl_leapfrog, BaseRNG >protected
transition(sample &init_sample)stan::mcmc::adapt_dense_e_static_hmc< M, BaseRNG >inlinevirtual
write_sampler_param_names(std::ostream &o)stan::mcmc::base_static_hmc< M, dense_e_point, dense_e_metric, expl_leapfrog, BaseRNG >inlinevirtual
write_sampler_params(std::ostream &o)stan::mcmc::base_static_hmc< M, dense_e_point, dense_e_metric, expl_leapfrog, BaseRNG >inlinevirtual
write_sampler_state(std::ostream *o)stan::mcmc::base_hmc< M, dense_e_point, dense_e_metric, expl_leapfrog, BaseRNG >inlinevirtual
z()stan::mcmc::base_hmc< M, dense_e_point, dense_e_metric, expl_leapfrog, BaseRNG >inline
~adapt_dense_e_static_hmc()stan::mcmc::adapt_dense_e_static_hmc< M, BaseRNG >inline
~base_mcmc()stan::mcmc::base_mcmcinlinevirtual
~base_static_hmc()stan::mcmc::base_static_hmc< M, dense_e_point, dense_e_metric, expl_leapfrog, BaseRNG >inline
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1mcmc_1_1adapt__dense__e__static__hmc.html b/doc/api/html/classstan_1_1mcmc_1_1adapt__dense__e__static__hmc.html new file mode 100644 index 00000000000..b01b8778990 --- /dev/null +++ b/doc/api/html/classstan_1_1mcmc_1_1adapt__dense__e__static__hmc.html @@ -0,0 +1,381 @@ + + + + + +Stan: stan::mcmc::adapt_dense_e_static_hmc< M, BaseRNG > Class Template Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::mcmc::adapt_dense_e_static_hmc< M, BaseRNG > Class Template Reference
+
+
+ +

#include <adapt_dense_e_static_hmc.hpp>

+
+Inheritance diagram for stan::mcmc::adapt_dense_e_static_hmc< M, BaseRNG >:
+
+
+ + +stan::mcmc::dense_e_static_hmc< M, BaseRNG > +stan::mcmc::stepsize_covar_adapter +stan::mcmc::base_static_hmc< M, dense_e_point, dense_e_metric, expl_leapfrog, BaseRNG > +stan::mcmc::base_adapter +stan::mcmc::base_hmc< M, dense_e_point, dense_e_metric, expl_leapfrog, BaseRNG > +stan::mcmc::base_mcmc + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 adapt_dense_e_static_hmc (M &m, BaseRNG &rng, std::ostream *o=&std::cout, std::ostream *e=0)
 
 ~adapt_dense_e_static_hmc ()
 
sample transition (sample &init_sample)
 
void disengage_adaptation ()
 
- Public Member Functions inherited from stan::mcmc::dense_e_static_hmc< M, BaseRNG >
 dense_e_static_hmc (M &m, BaseRNG &rng, std::ostream *o=&std::cout, std::ostream *e=0)
 
- Public Member Functions inherited from stan::mcmc::base_static_hmc< M, dense_e_point, dense_e_metric, expl_leapfrog, BaseRNG >
 base_static_hmc (M &m, BaseRNG &rng, std::ostream *o, std::ostream *e)
 
 ~base_static_hmc ()
 
sample transition (sample &init_sample)
 
void write_sampler_param_names (std::ostream &o)
 
void write_sampler_params (std::ostream &o)
 
void get_sampler_param_names (std::vector< std::string > &names)
 
void get_sampler_params (std::vector< double > &values)
 
void set_nominal_stepsize_and_T (const double e, const double t)
 
void set_nominal_stepsize_and_L (const double e, const int l)
 
void set_T (const double t)
 
void set_nominal_stepsize (const double e)
 
double get_T ()
 
int get_L ()
 
- Public Member Functions inherited from stan::mcmc::base_hmc< M, dense_e_point, dense_e_metric, expl_leapfrog, BaseRNG >
 base_hmc (M &m, BaseRNG &rng, std::ostream *o, std::ostream *e)
 
void write_sampler_state (std::ostream *o)
 
void get_sampler_diagnostic_names (std::vector< std::string > &model_names, std::vector< std::string > &names)
 
void get_sampler_diagnostics (std::vector< double > &values)
 
void seed (const Eigen::VectorXd &q)
 
void init_stepsize ()
 
dense_e_pointz ()
 
double get_nominal_stepsize ()
 
double get_current_stepsize ()
 
virtual void set_stepsize_jitter (const double j)
 
double get_stepsize_jitter ()
 
void sample_stepsize ()
 
- Public Member Functions inherited from stan::mcmc::base_mcmc
 base_mcmc (std::ostream *o, std::ostream *e)
 
virtual ~base_mcmc ()
 
std::string name ()
 
- Public Member Functions inherited from stan::mcmc::stepsize_covar_adapter
 stepsize_covar_adapter (int n)
 
stepsize_adaptationget_stepsize_adaptation ()
 
covar_adaptationget_covar_adaptation ()
 
void set_window_params (unsigned int num_warmup, unsigned int init_buffer, unsigned int term_buffer, unsigned int base_window, std::ostream *e=0)
 
- Public Member Functions inherited from stan::mcmc::base_adapter
 base_adapter ()
 
virtual void engage_adaptation ()
 
bool adapting ()
 
+ + + + + + + + + + + + + + +

+Additional Inherited Members

- Protected Member Functions inherited from stan::mcmc::base_static_hmc< M, dense_e_point, dense_e_metric, expl_leapfrog, BaseRNG >
void _update_L ()
 
- Protected Attributes inherited from stan::mcmc::base_static_hmc< M, dense_e_point, dense_e_metric, expl_leapfrog, BaseRNG >
double T_
 
int L_
 
- Protected Attributes inherited from stan::mcmc::stepsize_covar_adapter
stepsize_adaptation _stepsize_adaptation
 
covar_adaptation _covar_adaptation
 
+

Detailed Description

+

template<typename M, class BaseRNG>
+class stan::mcmc::adapt_dense_e_static_hmc< M, BaseRNG >

+ + +

Definition at line 17 of file adapt_dense_e_static_hmc.hpp.

+

Constructor & Destructor Documentation

+ +
+
+
+template<typename M , class BaseRNG >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
stan::mcmc::adapt_dense_e_static_hmc< M, BaseRNG >::adapt_dense_e_static_hmc (M & m,
BaseRNG & rng,
std::ostream * o = &std::cout,
std::ostream * e = 0 
)
+
+inline
+
+ +

Definition at line 22 of file adapt_dense_e_static_hmc.hpp.

+ +
+
+ +
+
+
+template<typename M , class BaseRNG >
+ + + + + +
+ + + + + + + +
stan::mcmc::adapt_dense_e_static_hmc< M, BaseRNG >::~adapt_dense_e_static_hmc ()
+
+inline
+
+ +

Definition at line 28 of file adapt_dense_e_static_hmc.hpp.

+ +
+
+

Member Function Documentation

+ +
+
+
+template<typename M , class BaseRNG >
+ + + + + +
+ + + + + + + +
void stan::mcmc::adapt_dense_e_static_hmc< M, BaseRNG >::disengage_adaptation ()
+
+inlinevirtual
+
+ +

Reimplemented from stan::mcmc::base_adapter.

+ +

Definition at line 55 of file adapt_dense_e_static_hmc.hpp.

+ +
+
+ +
+
+
+template<typename M , class BaseRNG >
+ + + + + +
+ + + + + + + + +
sample stan::mcmc::adapt_dense_e_static_hmc< M, BaseRNG >::transition (sampleinit_sample)
+
+inlinevirtual
+
+ +

Implements stan::mcmc::base_mcmc.

+ +

Definition at line 30 of file adapt_dense_e_static_hmc.hpp.

+ +
+
+
The documentation for this class was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1mcmc_1_1adapt__dense__e__static__hmc.png b/doc/api/html/classstan_1_1mcmc_1_1adapt__dense__e__static__hmc.png new file mode 100644 index 0000000000000000000000000000000000000000..4e0f2d6bc46ed98893270c79d5a491f20e51ef19 GIT binary patch literal 5169 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 + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::mcmc::adapt_diag_e_nuts< M, BaseRNG > Member List
+
+
+ +

This is the complete list of members for stan::mcmc::adapt_diag_e_nuts< M, BaseRNG >, including all inherited members.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
_adapt_flagstan::mcmc::base_adapterprotected
_depthstan::mcmc::base_nuts< M, diag_e_point, diag_e_metric, expl_leapfrog, BaseRNG >
_epsilonstan::mcmc::base_hmc< M, diag_e_point, diag_e_metric, expl_leapfrog, BaseRNG >protected
_epsilon_jitterstan::mcmc::base_hmc< M, diag_e_point, diag_e_metric, expl_leapfrog, BaseRNG >protected
_err_streamstan::mcmc::base_mcmcprotected
_hamiltonianstan::mcmc::base_hmc< M, diag_e_point, diag_e_metric, expl_leapfrog, BaseRNG >protected
_integratorstan::mcmc::base_hmc< M, diag_e_point, diag_e_metric, expl_leapfrog, BaseRNG >protected
_max_deltastan::mcmc::base_nuts< M, diag_e_point, diag_e_metric, expl_leapfrog, BaseRNG >
_max_depthstan::mcmc::base_nuts< M, diag_e_point, diag_e_metric, expl_leapfrog, BaseRNG >
_n_divergentstan::mcmc::base_nuts< M, diag_e_point, diag_e_metric, expl_leapfrog, BaseRNG >
_n_leapfrogstan::mcmc::base_nuts< M, diag_e_point, diag_e_metric, expl_leapfrog, BaseRNG >
_namestan::mcmc::base_mcmcprotected
_nom_epsilonstan::mcmc::base_hmc< M, diag_e_point, diag_e_metric, expl_leapfrog, BaseRNG >protected
_out_streamstan::mcmc::base_mcmcprotected
_rand_intstan::mcmc::base_hmc< M, diag_e_point, diag_e_metric, expl_leapfrog, BaseRNG >protected
_rand_uniformstan::mcmc::base_hmc< M, diag_e_point, diag_e_metric, expl_leapfrog, BaseRNG >protected
_stepsize_adaptationstan::mcmc::stepsize_var_adapterprotected
_var_adaptationstan::mcmc::stepsize_var_adapterprotected
_zstan::mcmc::base_hmc< M, diag_e_point, diag_e_metric, expl_leapfrog, BaseRNG >protected
adapt_diag_e_nuts(M &m, BaseRNG &rng, std::ostream *o=&std::cout, std::ostream *e=0)stan::mcmc::adapt_diag_e_nuts< M, BaseRNG >inline
adapting()stan::mcmc::base_adapterinline
base_adapter()stan::mcmc::base_adapterinline
base_hmc(M &m, BaseRNG &rng, std::ostream *o, std::ostream *e)stan::mcmc::base_hmc< M, diag_e_point, diag_e_metric, expl_leapfrog, BaseRNG >inline
base_mcmc(std::ostream *o, std::ostream *e)stan::mcmc::base_mcmcinline
base_nuts(M &m, BaseRNG &rng, std::ostream *o, std::ostream *e)stan::mcmc::base_nuts< M, diag_e_point, diag_e_metric, expl_leapfrog, BaseRNG >inline
build_tree(int depth, Eigen::VectorXd &rho, ps_point *z_init_parent, ps_point &z_propose, nuts_util &util)stan::mcmc::base_nuts< M, diag_e_point, diag_e_metric, expl_leapfrog, BaseRNG >inline
compute_criterion(ps_point &start, diag_e_point &finish, Eigen::VectorXd &rho)stan::mcmc::diag_e_nuts< M, BaseRNG >inlinevirtual
diag_e_nuts(M &m, BaseRNG &rng, std::ostream *o=&std::cout, std::ostream *e=0)stan::mcmc::diag_e_nuts< M, BaseRNG >inline
disengage_adaptation()stan::mcmc::adapt_diag_e_nuts< M, BaseRNG >inlinevirtual
engage_adaptation()stan::mcmc::base_adapterinlinevirtual
get_current_stepsize()stan::mcmc::base_hmc< M, diag_e_point, diag_e_metric, expl_leapfrog, BaseRNG >inline
get_max_delta()stan::mcmc::base_nuts< M, diag_e_point, diag_e_metric, expl_leapfrog, BaseRNG >inline
get_max_depth()stan::mcmc::base_nuts< M, diag_e_point, diag_e_metric, expl_leapfrog, BaseRNG >inline
get_nominal_stepsize()stan::mcmc::base_hmc< M, diag_e_point, diag_e_metric, expl_leapfrog, BaseRNG >inline
get_sampler_diagnostic_names(std::vector< std::string > &model_names, std::vector< std::string > &names)stan::mcmc::base_hmc< M, diag_e_point, diag_e_metric, expl_leapfrog, BaseRNG >inlinevirtual
get_sampler_diagnostics(std::vector< double > &values)stan::mcmc::base_hmc< M, diag_e_point, diag_e_metric, expl_leapfrog, BaseRNG >inlinevirtual
get_sampler_param_names(std::vector< std::string > &names)stan::mcmc::base_nuts< M, diag_e_point, diag_e_metric, expl_leapfrog, BaseRNG >inlinevirtual
get_sampler_params(std::vector< double > &values)stan::mcmc::base_nuts< M, diag_e_point, diag_e_metric, expl_leapfrog, BaseRNG >inlinevirtual
get_stepsize_adaptation()stan::mcmc::stepsize_var_adapterinline
get_stepsize_jitter()stan::mcmc::base_hmc< M, diag_e_point, diag_e_metric, expl_leapfrog, BaseRNG >inline
get_var_adaptation()stan::mcmc::stepsize_var_adapterinline
init_stepsize()stan::mcmc::base_hmc< M, diag_e_point, diag_e_metric, expl_leapfrog, BaseRNG >inline
name()stan::mcmc::base_mcmcinline
sample_stepsize()stan::mcmc::base_hmc< M, diag_e_point, diag_e_metric, expl_leapfrog, BaseRNG >inline
seed(const Eigen::VectorXd &q)stan::mcmc::base_hmc< M, diag_e_point, diag_e_metric, expl_leapfrog, BaseRNG >inline
set_max_delta(const double d)stan::mcmc::base_nuts< M, diag_e_point, diag_e_metric, expl_leapfrog, BaseRNG >inline
set_max_depth(const int d)stan::mcmc::base_nuts< M, diag_e_point, diag_e_metric, expl_leapfrog, BaseRNG >inline
set_nominal_stepsize(const double e)stan::mcmc::base_hmc< M, diag_e_point, diag_e_metric, expl_leapfrog, BaseRNG >inlinevirtual
set_stepsize_jitter(const double j)stan::mcmc::base_hmc< M, diag_e_point, diag_e_metric, expl_leapfrog, BaseRNG >inlinevirtual
set_window_params(unsigned int num_warmup, unsigned int init_buffer, unsigned int term_buffer, unsigned int base_window, std::ostream *e=0)stan::mcmc::stepsize_var_adapterinline
stepsize_var_adapter(int n)stan::mcmc::stepsize_var_adapterinline
transition(sample &init_sample)stan::mcmc::adapt_diag_e_nuts< M, BaseRNG >inlinevirtual
write_sampler_param_names(std::ostream &o)stan::mcmc::base_nuts< M, diag_e_point, diag_e_metric, expl_leapfrog, BaseRNG >inlinevirtual
write_sampler_params(std::ostream &o)stan::mcmc::base_nuts< M, diag_e_point, diag_e_metric, expl_leapfrog, BaseRNG >inlinevirtual
write_sampler_state(std::ostream *o)stan::mcmc::base_hmc< M, diag_e_point, diag_e_metric, expl_leapfrog, BaseRNG >inlinevirtual
z()stan::mcmc::base_hmc< M, diag_e_point, diag_e_metric, expl_leapfrog, BaseRNG >inline
~adapt_diag_e_nuts()stan::mcmc::adapt_diag_e_nuts< M, BaseRNG >inline
~base_mcmc()stan::mcmc::base_mcmcinlinevirtual
~base_nuts()stan::mcmc::base_nuts< M, diag_e_point, diag_e_metric, expl_leapfrog, BaseRNG >inline
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1mcmc_1_1adapt__diag__e__nuts.html b/doc/api/html/classstan_1_1mcmc_1_1adapt__diag__e__nuts.html new file mode 100644 index 00000000000..316ca29858e --- /dev/null +++ b/doc/api/html/classstan_1_1mcmc_1_1adapt__diag__e__nuts.html @@ -0,0 +1,404 @@ + + + + + +Stan: stan::mcmc::adapt_diag_e_nuts< M, BaseRNG > Class Template Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::mcmc::adapt_diag_e_nuts< M, BaseRNG > Class Template Reference
+
+
+ +

#include <adapt_diag_e_nuts.hpp>

+
+Inheritance diagram for stan::mcmc::adapt_diag_e_nuts< M, BaseRNG >:
+
+
+ + +stan::mcmc::diag_e_nuts< M, BaseRNG > +stan::mcmc::stepsize_var_adapter +stan::mcmc::base_nuts< M, diag_e_point, diag_e_metric, expl_leapfrog, BaseRNG > +stan::mcmc::base_adapter +stan::mcmc::base_hmc< M, diag_e_point, diag_e_metric, expl_leapfrog, BaseRNG > +stan::mcmc::base_mcmc + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 adapt_diag_e_nuts (M &m, BaseRNG &rng, std::ostream *o=&std::cout, std::ostream *e=0)
 
 ~adapt_diag_e_nuts ()
 
sample transition (sample &init_sample)
 
void disengage_adaptation ()
 
- Public Member Functions inherited from stan::mcmc::diag_e_nuts< M, BaseRNG >
 diag_e_nuts (M &m, BaseRNG &rng, std::ostream *o=&std::cout, std::ostream *e=0)
 
bool compute_criterion (ps_point &start, diag_e_point &finish, Eigen::VectorXd &rho)
 
- Public Member Functions inherited from stan::mcmc::base_nuts< M, diag_e_point, diag_e_metric, expl_leapfrog, BaseRNG >
 base_nuts (M &m, BaseRNG &rng, std::ostream *o, std::ostream *e)
 
 ~base_nuts ()
 
void set_max_depth (const int d)
 
void set_max_delta (const double d)
 
int get_max_depth ()
 
double get_max_delta ()
 
sample transition (sample &init_sample)
 
void write_sampler_param_names (std::ostream &o)
 
void write_sampler_params (std::ostream &o)
 
void get_sampler_param_names (std::vector< std::string > &names)
 
void get_sampler_params (std::vector< double > &values)
 
int build_tree (int depth, Eigen::VectorXd &rho, ps_point *z_init_parent, ps_point &z_propose, nuts_util &util)
 
- Public Member Functions inherited from stan::mcmc::base_hmc< M, diag_e_point, diag_e_metric, expl_leapfrog, BaseRNG >
 base_hmc (M &m, BaseRNG &rng, std::ostream *o, std::ostream *e)
 
void write_sampler_state (std::ostream *o)
 
void get_sampler_diagnostic_names (std::vector< std::string > &model_names, std::vector< std::string > &names)
 
void get_sampler_diagnostics (std::vector< double > &values)
 
void seed (const Eigen::VectorXd &q)
 
void init_stepsize ()
 
diag_e_pointz ()
 
virtual void set_nominal_stepsize (const double e)
 
double get_nominal_stepsize ()
 
double get_current_stepsize ()
 
virtual void set_stepsize_jitter (const double j)
 
double get_stepsize_jitter ()
 
void sample_stepsize ()
 
- Public Member Functions inherited from stan::mcmc::base_mcmc
 base_mcmc (std::ostream *o, std::ostream *e)
 
virtual ~base_mcmc ()
 
std::string name ()
 
- Public Member Functions inherited from stan::mcmc::stepsize_var_adapter
 stepsize_var_adapter (int n)
 
stepsize_adaptationget_stepsize_adaptation ()
 
var_adaptationget_var_adaptation ()
 
void set_window_params (unsigned int num_warmup, unsigned int init_buffer, unsigned int term_buffer, unsigned int base_window, std::ostream *e=0)
 
- Public Member Functions inherited from stan::mcmc::base_adapter
 base_adapter ()
 
virtual void engage_adaptation ()
 
bool adapting ()
 
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Additional Inherited Members

- Public Attributes inherited from stan::mcmc::base_nuts< M, diag_e_point, diag_e_metric, expl_leapfrog, BaseRNG >
int _depth
 
int _max_depth
 
double _max_delta
 
int _n_leapfrog
 
int _n_divergent
 
- Protected Attributes inherited from stan::mcmc::base_hmc< M, diag_e_point, diag_e_metric, expl_leapfrog, BaseRNG >
diag_e_point _z
 
expl_leapfrog< diag_e_metric
+< M, BaseRNG >, diag_e_point
_integrator
 
diag_e_metric< M, BaseRNG > _hamiltonian
 
BaseRNG & _rand_int
 
boost::uniform_01< BaseRNG & > _rand_uniform
 
double _nom_epsilon
 
double _epsilon
 
double _epsilon_jitter
 
- Protected Attributes inherited from stan::mcmc::stepsize_var_adapter
stepsize_adaptation _stepsize_adaptation
 
var_adaptation _var_adaptation
 
+

Detailed Description

+

template<typename M, class BaseRNG>
+class stan::mcmc::adapt_diag_e_nuts< M, BaseRNG >

+ + +

Definition at line 16 of file adapt_diag_e_nuts.hpp.

+

Constructor & Destructor Documentation

+ +
+
+
+template<typename M , class BaseRNG >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
stan::mcmc::adapt_diag_e_nuts< M, BaseRNG >::adapt_diag_e_nuts (M & m,
BaseRNG & rng,
std::ostream * o = &std::cout,
std::ostream * e = 0 
)
+
+inline
+
+ +

Definition at line 21 of file adapt_diag_e_nuts.hpp.

+ +
+
+ +
+
+
+template<typename M , class BaseRNG >
+ + + + + +
+ + + + + + + +
stan::mcmc::adapt_diag_e_nuts< M, BaseRNG >::~adapt_diag_e_nuts ()
+
+inline
+
+ +

Definition at line 27 of file adapt_diag_e_nuts.hpp.

+ +
+
+

Member Function Documentation

+ +
+
+
+template<typename M , class BaseRNG >
+ + + + + +
+ + + + + + + +
void stan::mcmc::adapt_diag_e_nuts< M, BaseRNG >::disengage_adaptation ()
+
+inlinevirtual
+
+ +

Reimplemented from stan::mcmc::base_adapter.

+ +

Definition at line 52 of file adapt_diag_e_nuts.hpp.

+ +
+
+ +
+
+
+template<typename M , class BaseRNG >
+ + + + + +
+ + + + + + + + +
sample stan::mcmc::adapt_diag_e_nuts< M, BaseRNG >::transition (sampleinit_sample)
+
+inlinevirtual
+
+ +

Implements stan::mcmc::base_mcmc.

+ +

Definition at line 29 of file adapt_diag_e_nuts.hpp.

+ +
+
+
The documentation for this class was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1mcmc_1_1adapt__diag__e__nuts.png b/doc/api/html/classstan_1_1mcmc_1_1adapt__diag__e__nuts.png new file mode 100644 index 0000000000000000000000000000000000000000..b6f208e1b80d68d6f1b5e36384bc0844295127d3 GIT binary patch literal 4595 zcmdT|d05iv_E%dhE1j7vn=)-ia;-E+#WkGFytv_(W~OF~=ANLEB2eR`S(b&{m~38|;5rw+j3=2+$&ck8K{VK8`Y(4D3$Li4wA&+yHwY zKdr5;Yckl{;BZ~Mm%FzDI7#06U;3CTD181M{Lr^P=N0EiW)rKdH#&|PU){gFl9e(9 zS&f1x+l^eSi3z1D2CTgkE;V=S^KtDnOHfreQS~OM!+XtlLpL5~6hoxm$o3OCYmR;*R5)7uSIUl_M7W7mXn2$%v& zBWXNMsU%M?2g4n7pdjEFv$E^Y%_eYrep~&UL>|=K7}v6rEY2@Ve7-ax6$%;V_Naz@ zv3n6DN!K}MTV_~}4g3mZ$@0_b?^p$i1;YqJyd!u7!z& zr+oJRzapM#=H?Ba?I$abR!dj77X;4w_wL0AG>hQKC{c28L3m@nhb64DWt&c>D~;lx zK&;-ZY~BOaO1Gv-Aq+(!ty3!G+myM0HlgbRk6hJ`yAtYzrxamU@30ikhVz~l@Wn1* zA7{3Fscj1MoKtz?8ryEn3R`76JqVFUI(P1q^Hm?#MBsM;vx5m8Ur;w;9(2sZ>of+8 zu%;)(5A%cbtEiLo(dO=m$UdtRjBFV zYuw$L^<6Y0^yZ53w6>$;L52wd1rt}54#XDiJ480qEAXVa-bNZy>CnoeMn=YXiOO%!HX_zdc@EP z2Gr2#YibN>=>?Qc;59n}Ml|Du5uKvM0)RHDU;sxJjd~#4FLxn1(+FZdh#VuC zS_01rshuaInIHHXc&-!^yy7|8Lg(#!s>eOB{9qQNjP#pK^Q63_8IGkRiG;?0MfgNf=c&fAFEsfM;R)AcKal8s-Gt zNDXWRFX0Cp;I3)+C6O;tSu1F5RJDI`aK!W%x2-5fz%tLBmpFV@_xMS22rKg82EOaE zb1Sox^j$FPm|GDy=yYUIjr7p`<;7Eh+M)a7%_GG)=GNZp&JEUb`1Qf zw`H$ZNK$%xCI30b2yX$0rML-7aAry)sCrSI~4gPn?BjqcZlFWRd70Lik_ z>LUr?+M`bfKU?u9gT8kS#-?PC|DfE9WoEpJwSx<8)S-E@u@G>r>lL4Pdh{VArP37Pg_P;mg6lCchqDyHgS!1zbej*p~pz-H;3Bqa_b z6iJNK$X!dN7XYFOT=lVRb?3F`rS7pXII=Z`kCaKo-BXi!Vn782{Se@y$AG=%Gq8L6 zR%v99&q|KABHUAgd4N(-jvK)aV9(-+SIRL8zRUy~jLR=sT0|A#vc&?=i7Rwm?{FOM)$bvW)XdL3d%C15-g`t` zup?Zn`gN`F(S_msk*-nq=0=|G)8wbkMsr%_TP&^2pPK@;Y`3DYTrpY&6|k3@8xxKo z=#}PTl1An`V_mxpI_r(*bz7yek2A=FR{GeRGYn_By&D)%8^pa@q9gVIvfv;1cPijuOxysa6nVUS49gh{tv@fFvcaq&i z7q2R-0i)ZqxGNs5N#4PK#UXpC6Vw_Yts+nCr-IsyDJ%)y;6?}wxhZzXFH4}uLwPUp z#^}CjkV-<9=#3o?6xh~tVnLQQAWcAjb-)04ogT=sxgnmm0bqt*f$Qft=)hOZpcFqM zcMNK~d;WE%wN_(&=;#KPHqSRT+UVG$=IFV=pOg`Cy8u0<(Ir!~nXOUcO5@%}?4TJ) zFT>>xxfq!*neH+j zylHOsX(s;#mS;!RErw)0hOKxl&)yRb+H^n|B~FUjqKsz%noD}F(x;EgEoh6*Fltc{wT*hlfZ z0n8a8iOODUx4jrbM}T$=z6%=Gc%l3$boeFZNtesBqFHX|rSe8nI3;0_ zEE_G7++%mDFueo0CC^q;EAdJceEDbB4|e${(}wPxgGUvzbdzRJMmShRR)<0u#4)uO zSa|Q;ggK1-R=hGPxv^VBfNCmM7BB zn1<1I)yBNp(2T|nl;WEZd^-IrKu}L6;<5{h8Z@a)z&$ga5mg>N^wgI(Tg$2Lfk+10 z3Y*D_GVBWRAdjg3{d_IedEn%@XF_$XrtS0E7*%jXoHyWxDkW8_oILTaj+dQf&BU;% zruQ{QQ8qxrrCIN~d}{RiDr@PEWEqx%zx`RvSELO8jK{UySjz?MI$z-?pyD<5Rg)8hLIx}WpuvbrLWq(y%Y9R{|J>pD|PFO_>Z755!CkP$PTcg3Cc{kQ}P7i$x0$yqv*=ry^za z7szx0!3N$UcOyrF?9=+-tS>Ku`m`VaS@g>hUihu@lefw%W4BYl z7=8sDwOkxKe^Kdh=^sE>Xm0koAF}HYsBdhI{L!f2L=|L-i!aSKI^NanxGmTyr;*R^ zxwd=!i9~)?|Hd-^t~v;8SMtFYcR@*ID$6iV|MrFJ`jpZOO4dJug`UdPWx@^>{o6Xu zG5@KeX(Hab_)6b&{EVjl2~ET49$0SJwoGU1_XzHnYs(0#Qtza+wtIIRWIiP!Ccmli zH{TPFp)|s374d^4d6_|u zj2f8nk_6wx*r5^<=VoztbMuvv!O2VIE=1;m88&N6EuWOsoaAyeI#OoOm%qZw9yMz) zW?)bJ;y}sr9g5LV{x*ixVhntdESh7|R#B=@4vMlJ;Qn*#)VK#;YgKs)xuH{u8b^Zz zI_gr{8z?U<)go-(?WCZMNfH{f<&szfW2kPTLLaf8*bbwuSd-24hToyB8=rT81GM|WPcnsapBHdHN21_RWPL=sa66Vl1Dl3Ze9952dV literal 0 HcmV?d00001 diff --git a/doc/api/html/classstan_1_1mcmc_1_1adapt__diag__e__static__hmc-members.html b/doc/api/html/classstan_1_1mcmc_1_1adapt__diag__e__static__hmc-members.html new file mode 100644 index 00000000000..d6fa68027b1 --- /dev/null +++ b/doc/api/html/classstan_1_1mcmc_1_1adapt__diag__e__static__hmc-members.html @@ -0,0 +1,168 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::mcmc::adapt_diag_e_static_hmc< M, BaseRNG > Member List
+
+
+ +

This is the complete list of members for stan::mcmc::adapt_diag_e_static_hmc< M, BaseRNG >, including all inherited members.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
_adapt_flagstan::mcmc::base_adapterprotected
_epsilonstan::mcmc::base_hmc< M, diag_e_point, diag_e_metric, expl_leapfrog, BaseRNG >protected
_epsilon_jitterstan::mcmc::base_hmc< M, diag_e_point, diag_e_metric, expl_leapfrog, BaseRNG >protected
_err_streamstan::mcmc::base_mcmcprotected
_hamiltonianstan::mcmc::base_hmc< M, diag_e_point, diag_e_metric, expl_leapfrog, BaseRNG >protected
_integratorstan::mcmc::base_hmc< M, diag_e_point, diag_e_metric, expl_leapfrog, BaseRNG >protected
_namestan::mcmc::base_mcmcprotected
_nom_epsilonstan::mcmc::base_hmc< M, diag_e_point, diag_e_metric, expl_leapfrog, BaseRNG >protected
_out_streamstan::mcmc::base_mcmcprotected
_rand_intstan::mcmc::base_hmc< M, diag_e_point, diag_e_metric, expl_leapfrog, BaseRNG >protected
_rand_uniformstan::mcmc::base_hmc< M, diag_e_point, diag_e_metric, expl_leapfrog, BaseRNG >protected
_stepsize_adaptationstan::mcmc::stepsize_var_adapterprotected
_update_L()stan::mcmc::base_static_hmc< M, diag_e_point, diag_e_metric, expl_leapfrog, BaseRNG >inlineprotected
_var_adaptationstan::mcmc::stepsize_var_adapterprotected
_zstan::mcmc::base_hmc< M, diag_e_point, diag_e_metric, expl_leapfrog, BaseRNG >protected
adapt_diag_e_static_hmc(M &m, BaseRNG &rng, std::ostream *o=&std::cout, std::ostream *e=0)stan::mcmc::adapt_diag_e_static_hmc< M, BaseRNG >inline
adapting()stan::mcmc::base_adapterinline
base_adapter()stan::mcmc::base_adapterinline
base_hmc(M &m, BaseRNG &rng, std::ostream *o, std::ostream *e)stan::mcmc::base_hmc< M, diag_e_point, diag_e_metric, expl_leapfrog, BaseRNG >inline
base_mcmc(std::ostream *o, std::ostream *e)stan::mcmc::base_mcmcinline
base_static_hmc(M &m, BaseRNG &rng, std::ostream *o, std::ostream *e)stan::mcmc::base_static_hmc< M, diag_e_point, diag_e_metric, expl_leapfrog, BaseRNG >inline
diag_e_static_hmc(M &m, BaseRNG &rng, std::ostream *o=&std::cout, std::ostream *e=0)stan::mcmc::diag_e_static_hmc< M, BaseRNG >inline
disengage_adaptation()stan::mcmc::adapt_diag_e_static_hmc< M, BaseRNG >inlinevirtual
engage_adaptation()stan::mcmc::base_adapterinlinevirtual
get_current_stepsize()stan::mcmc::base_hmc< M, diag_e_point, diag_e_metric, expl_leapfrog, BaseRNG >inline
get_L()stan::mcmc::base_static_hmc< M, diag_e_point, diag_e_metric, expl_leapfrog, BaseRNG >inline
get_nominal_stepsize()stan::mcmc::base_hmc< M, diag_e_point, diag_e_metric, expl_leapfrog, BaseRNG >inline
get_sampler_diagnostic_names(std::vector< std::string > &model_names, std::vector< std::string > &names)stan::mcmc::base_hmc< M, diag_e_point, diag_e_metric, expl_leapfrog, BaseRNG >inlinevirtual
get_sampler_diagnostics(std::vector< double > &values)stan::mcmc::base_hmc< M, diag_e_point, diag_e_metric, expl_leapfrog, BaseRNG >inlinevirtual
get_sampler_param_names(std::vector< std::string > &names)stan::mcmc::base_static_hmc< M, diag_e_point, diag_e_metric, expl_leapfrog, BaseRNG >inlinevirtual
get_sampler_params(std::vector< double > &values)stan::mcmc::base_static_hmc< M, diag_e_point, diag_e_metric, expl_leapfrog, BaseRNG >inlinevirtual
get_stepsize_adaptation()stan::mcmc::stepsize_var_adapterinline
get_stepsize_jitter()stan::mcmc::base_hmc< M, diag_e_point, diag_e_metric, expl_leapfrog, BaseRNG >inline
get_T()stan::mcmc::base_static_hmc< M, diag_e_point, diag_e_metric, expl_leapfrog, BaseRNG >inline
get_var_adaptation()stan::mcmc::stepsize_var_adapterinline
init_stepsize()stan::mcmc::base_hmc< M, diag_e_point, diag_e_metric, expl_leapfrog, BaseRNG >inline
L_stan::mcmc::base_static_hmc< M, diag_e_point, diag_e_metric, expl_leapfrog, BaseRNG >protected
name()stan::mcmc::base_mcmcinline
sample_stepsize()stan::mcmc::base_hmc< M, diag_e_point, diag_e_metric, expl_leapfrog, BaseRNG >inline
seed(const Eigen::VectorXd &q)stan::mcmc::base_hmc< M, diag_e_point, diag_e_metric, expl_leapfrog, BaseRNG >inline
set_nominal_stepsize(const double e)stan::mcmc::base_static_hmc< M, diag_e_point, diag_e_metric, expl_leapfrog, BaseRNG >inlinevirtual
set_nominal_stepsize_and_L(const double e, const int l)stan::mcmc::base_static_hmc< M, diag_e_point, diag_e_metric, expl_leapfrog, BaseRNG >inline
set_nominal_stepsize_and_T(const double e, const double t)stan::mcmc::base_static_hmc< M, diag_e_point, diag_e_metric, expl_leapfrog, BaseRNG >inline
set_stepsize_jitter(const double j)stan::mcmc::base_hmc< M, diag_e_point, diag_e_metric, expl_leapfrog, BaseRNG >inlinevirtual
set_T(const double t)stan::mcmc::base_static_hmc< M, diag_e_point, diag_e_metric, expl_leapfrog, BaseRNG >inline
set_window_params(unsigned int num_warmup, unsigned int init_buffer, unsigned int term_buffer, unsigned int base_window, std::ostream *e=0)stan::mcmc::stepsize_var_adapterinline
stepsize_var_adapter(int n)stan::mcmc::stepsize_var_adapterinline
T_stan::mcmc::base_static_hmc< M, diag_e_point, diag_e_metric, expl_leapfrog, BaseRNG >protected
transition(sample &init_sample)stan::mcmc::adapt_diag_e_static_hmc< M, BaseRNG >inlinevirtual
write_sampler_param_names(std::ostream &o)stan::mcmc::base_static_hmc< M, diag_e_point, diag_e_metric, expl_leapfrog, BaseRNG >inlinevirtual
write_sampler_params(std::ostream &o)stan::mcmc::base_static_hmc< M, diag_e_point, diag_e_metric, expl_leapfrog, BaseRNG >inlinevirtual
write_sampler_state(std::ostream *o)stan::mcmc::base_hmc< M, diag_e_point, diag_e_metric, expl_leapfrog, BaseRNG >inlinevirtual
z()stan::mcmc::base_hmc< M, diag_e_point, diag_e_metric, expl_leapfrog, BaseRNG >inline
~adapt_diag_e_static_hmc()stan::mcmc::adapt_diag_e_static_hmc< M, BaseRNG >inline
~base_mcmc()stan::mcmc::base_mcmcinlinevirtual
~base_static_hmc()stan::mcmc::base_static_hmc< M, diag_e_point, diag_e_metric, expl_leapfrog, BaseRNG >inline
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1mcmc_1_1adapt__diag__e__static__hmc.html b/doc/api/html/classstan_1_1mcmc_1_1adapt__diag__e__static__hmc.html new file mode 100644 index 00000000000..772b9ea0b2d --- /dev/null +++ b/doc/api/html/classstan_1_1mcmc_1_1adapt__diag__e__static__hmc.html @@ -0,0 +1,381 @@ + + + + + +Stan: stan::mcmc::adapt_diag_e_static_hmc< M, BaseRNG > Class Template Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::mcmc::adapt_diag_e_static_hmc< M, BaseRNG > Class Template Reference
+
+
+ +

#include <adapt_diag_e_static_hmc.hpp>

+
+Inheritance diagram for stan::mcmc::adapt_diag_e_static_hmc< M, BaseRNG >:
+
+
+ + +stan::mcmc::diag_e_static_hmc< M, BaseRNG > +stan::mcmc::stepsize_var_adapter +stan::mcmc::base_static_hmc< M, diag_e_point, diag_e_metric, expl_leapfrog, BaseRNG > +stan::mcmc::base_adapter +stan::mcmc::base_hmc< M, diag_e_point, diag_e_metric, expl_leapfrog, BaseRNG > +stan::mcmc::base_mcmc + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 adapt_diag_e_static_hmc (M &m, BaseRNG &rng, std::ostream *o=&std::cout, std::ostream *e=0)
 
 ~adapt_diag_e_static_hmc ()
 
sample transition (sample &init_sample)
 
void disengage_adaptation ()
 
- Public Member Functions inherited from stan::mcmc::diag_e_static_hmc< M, BaseRNG >
 diag_e_static_hmc (M &m, BaseRNG &rng, std::ostream *o=&std::cout, std::ostream *e=0)
 
- Public Member Functions inherited from stan::mcmc::base_static_hmc< M, diag_e_point, diag_e_metric, expl_leapfrog, BaseRNG >
 base_static_hmc (M &m, BaseRNG &rng, std::ostream *o, std::ostream *e)
 
 ~base_static_hmc ()
 
sample transition (sample &init_sample)
 
void write_sampler_param_names (std::ostream &o)
 
void write_sampler_params (std::ostream &o)
 
void get_sampler_param_names (std::vector< std::string > &names)
 
void get_sampler_params (std::vector< double > &values)
 
void set_nominal_stepsize_and_T (const double e, const double t)
 
void set_nominal_stepsize_and_L (const double e, const int l)
 
void set_T (const double t)
 
void set_nominal_stepsize (const double e)
 
double get_T ()
 
int get_L ()
 
- Public Member Functions inherited from stan::mcmc::base_hmc< M, diag_e_point, diag_e_metric, expl_leapfrog, BaseRNG >
 base_hmc (M &m, BaseRNG &rng, std::ostream *o, std::ostream *e)
 
void write_sampler_state (std::ostream *o)
 
void get_sampler_diagnostic_names (std::vector< std::string > &model_names, std::vector< std::string > &names)
 
void get_sampler_diagnostics (std::vector< double > &values)
 
void seed (const Eigen::VectorXd &q)
 
void init_stepsize ()
 
diag_e_pointz ()
 
double get_nominal_stepsize ()
 
double get_current_stepsize ()
 
virtual void set_stepsize_jitter (const double j)
 
double get_stepsize_jitter ()
 
void sample_stepsize ()
 
- Public Member Functions inherited from stan::mcmc::base_mcmc
 base_mcmc (std::ostream *o, std::ostream *e)
 
virtual ~base_mcmc ()
 
std::string name ()
 
- Public Member Functions inherited from stan::mcmc::stepsize_var_adapter
 stepsize_var_adapter (int n)
 
stepsize_adaptationget_stepsize_adaptation ()
 
var_adaptationget_var_adaptation ()
 
void set_window_params (unsigned int num_warmup, unsigned int init_buffer, unsigned int term_buffer, unsigned int base_window, std::ostream *e=0)
 
- Public Member Functions inherited from stan::mcmc::base_adapter
 base_adapter ()
 
virtual void engage_adaptation ()
 
bool adapting ()
 
+ + + + + + + + + + + + + + +

+Additional Inherited Members

- Protected Member Functions inherited from stan::mcmc::base_static_hmc< M, diag_e_point, diag_e_metric, expl_leapfrog, BaseRNG >
void _update_L ()
 
- Protected Attributes inherited from stan::mcmc::base_static_hmc< M, diag_e_point, diag_e_metric, expl_leapfrog, BaseRNG >
double T_
 
int L_
 
- Protected Attributes inherited from stan::mcmc::stepsize_var_adapter
stepsize_adaptation _stepsize_adaptation
 
var_adaptation _var_adaptation
 
+

Detailed Description

+

template<typename M, class BaseRNG>
+class stan::mcmc::adapt_diag_e_static_hmc< M, BaseRNG >

+ + +

Definition at line 17 of file adapt_diag_e_static_hmc.hpp.

+

Constructor & Destructor Documentation

+ +
+
+
+template<typename M , class BaseRNG >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
stan::mcmc::adapt_diag_e_static_hmc< M, BaseRNG >::adapt_diag_e_static_hmc (M & m,
BaseRNG & rng,
std::ostream * o = &std::cout,
std::ostream * e = 0 
)
+
+inline
+
+ +

Definition at line 22 of file adapt_diag_e_static_hmc.hpp.

+ +
+
+ +
+
+
+template<typename M , class BaseRNG >
+ + + + + +
+ + + + + + + +
stan::mcmc::adapt_diag_e_static_hmc< M, BaseRNG >::~adapt_diag_e_static_hmc ()
+
+inline
+
+ +

Definition at line 28 of file adapt_diag_e_static_hmc.hpp.

+ +
+
+

Member Function Documentation

+ +
+
+
+template<typename M , class BaseRNG >
+ + + + + +
+ + + + + + + +
void stan::mcmc::adapt_diag_e_static_hmc< M, BaseRNG >::disengage_adaptation ()
+
+inlinevirtual
+
+ +

Reimplemented from stan::mcmc::base_adapter.

+ +

Definition at line 55 of file adapt_diag_e_static_hmc.hpp.

+ +
+
+ +
+
+
+template<typename M , class BaseRNG >
+ + + + + +
+ + + + + + + + +
sample stan::mcmc::adapt_diag_e_static_hmc< M, BaseRNG >::transition (sampleinit_sample)
+
+inlinevirtual
+
+ +

Implements stan::mcmc::base_mcmc.

+ +

Definition at line 30 of file adapt_diag_e_static_hmc.hpp.

+ +
+
+
The documentation for this class was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1mcmc_1_1adapt__diag__e__static__hmc.png b/doc/api/html/classstan_1_1mcmc_1_1adapt__diag__e__static__hmc.png new file mode 100644 index 0000000000000000000000000000000000000000..98383b21402718819022a61513eb4e8a4f542bbd GIT binary patch literal 4868 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 literal 0 HcmV?d00001 diff --git a/doc/api/html/classstan_1_1mcmc_1_1adapt__unit__e__nuts-members.html b/doc/api/html/classstan_1_1mcmc_1_1adapt__unit__e__nuts-members.html new file mode 100644 index 00000000000..f50363930a6 --- /dev/null +++ b/doc/api/html/classstan_1_1mcmc_1_1adapt__unit__e__nuts-members.html @@ -0,0 +1,168 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::mcmc::adapt_unit_e_nuts< M, BaseRNG > Member List
+
+
+ +

This is the complete list of members for stan::mcmc::adapt_unit_e_nuts< M, BaseRNG >, including all inherited members.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
_adapt_flagstan::mcmc::base_adapterprotected
_depthstan::mcmc::base_nuts< M, unit_e_point, unit_e_metric, expl_leapfrog, BaseRNG >
_epsilonstan::mcmc::base_hmc< M, unit_e_point, unit_e_metric, expl_leapfrog, BaseRNG >protected
_epsilon_jitterstan::mcmc::base_hmc< M, unit_e_point, unit_e_metric, expl_leapfrog, BaseRNG >protected
_err_streamstan::mcmc::base_mcmcprotected
_hamiltonianstan::mcmc::base_hmc< M, unit_e_point, unit_e_metric, expl_leapfrog, BaseRNG >protected
_integratorstan::mcmc::base_hmc< M, unit_e_point, unit_e_metric, expl_leapfrog, BaseRNG >protected
_max_deltastan::mcmc::base_nuts< M, unit_e_point, unit_e_metric, expl_leapfrog, BaseRNG >
_max_depthstan::mcmc::base_nuts< M, unit_e_point, unit_e_metric, expl_leapfrog, BaseRNG >
_n_divergentstan::mcmc::base_nuts< M, unit_e_point, unit_e_metric, expl_leapfrog, BaseRNG >
_n_leapfrogstan::mcmc::base_nuts< M, unit_e_point, unit_e_metric, expl_leapfrog, BaseRNG >
_namestan::mcmc::base_mcmcprotected
_nom_epsilonstan::mcmc::base_hmc< M, unit_e_point, unit_e_metric, expl_leapfrog, BaseRNG >protected
_out_streamstan::mcmc::base_mcmcprotected
_rand_intstan::mcmc::base_hmc< M, unit_e_point, unit_e_metric, expl_leapfrog, BaseRNG >protected
_rand_uniformstan::mcmc::base_hmc< M, unit_e_point, unit_e_metric, expl_leapfrog, BaseRNG >protected
_stepsize_adaptationstan::mcmc::stepsize_adapterprotected
_zstan::mcmc::base_hmc< M, unit_e_point, unit_e_metric, expl_leapfrog, BaseRNG >protected
adapt_unit_e_nuts(M &m, BaseRNG &rng, std::ostream *o=&std::cout, std::ostream *e=0)stan::mcmc::adapt_unit_e_nuts< M, BaseRNG >inline
adapting()stan::mcmc::base_adapterinline
base_adapter()stan::mcmc::base_adapterinline
base_hmc(M &m, BaseRNG &rng, std::ostream *o, std::ostream *e)stan::mcmc::base_hmc< M, unit_e_point, unit_e_metric, expl_leapfrog, BaseRNG >inline
base_mcmc(std::ostream *o, std::ostream *e)stan::mcmc::base_mcmcinline
base_nuts(M &m, BaseRNG &rng, std::ostream *o, std::ostream *e)stan::mcmc::base_nuts< M, unit_e_point, unit_e_metric, expl_leapfrog, BaseRNG >inline
build_tree(int depth, Eigen::VectorXd &rho, ps_point *z_init_parent, ps_point &z_propose, nuts_util &util)stan::mcmc::base_nuts< M, unit_e_point, unit_e_metric, expl_leapfrog, BaseRNG >inline
compute_criterion(ps_point &start, unit_e_point &finish, Eigen::VectorXd &rho)stan::mcmc::unit_e_nuts< M, BaseRNG >inlinevirtual
disengage_adaptation()stan::mcmc::adapt_unit_e_nuts< M, BaseRNG >inlinevirtual
engage_adaptation()stan::mcmc::base_adapterinlinevirtual
get_current_stepsize()stan::mcmc::base_hmc< M, unit_e_point, unit_e_metric, expl_leapfrog, BaseRNG >inline
get_max_delta()stan::mcmc::base_nuts< M, unit_e_point, unit_e_metric, expl_leapfrog, BaseRNG >inline
get_max_depth()stan::mcmc::base_nuts< M, unit_e_point, unit_e_metric, expl_leapfrog, BaseRNG >inline
get_nominal_stepsize()stan::mcmc::base_hmc< M, unit_e_point, unit_e_metric, expl_leapfrog, BaseRNG >inline
get_sampler_diagnostic_names(std::vector< std::string > &model_names, std::vector< std::string > &names)stan::mcmc::base_hmc< M, unit_e_point, unit_e_metric, expl_leapfrog, BaseRNG >inlinevirtual
get_sampler_diagnostics(std::vector< double > &values)stan::mcmc::base_hmc< M, unit_e_point, unit_e_metric, expl_leapfrog, BaseRNG >inlinevirtual
get_sampler_param_names(std::vector< std::string > &names)stan::mcmc::base_nuts< M, unit_e_point, unit_e_metric, expl_leapfrog, BaseRNG >inlinevirtual
get_sampler_params(std::vector< double > &values)stan::mcmc::base_nuts< M, unit_e_point, unit_e_metric, expl_leapfrog, BaseRNG >inlinevirtual
get_stepsize_adaptation()stan::mcmc::stepsize_adapterinline
get_stepsize_jitter()stan::mcmc::base_hmc< M, unit_e_point, unit_e_metric, expl_leapfrog, BaseRNG >inline
init_stepsize()stan::mcmc::base_hmc< M, unit_e_point, unit_e_metric, expl_leapfrog, BaseRNG >inline
name()stan::mcmc::base_mcmcinline
sample_stepsize()stan::mcmc::base_hmc< M, unit_e_point, unit_e_metric, expl_leapfrog, BaseRNG >inline
seed(const Eigen::VectorXd &q)stan::mcmc::base_hmc< M, unit_e_point, unit_e_metric, expl_leapfrog, BaseRNG >inline
set_max_delta(const double d)stan::mcmc::base_nuts< M, unit_e_point, unit_e_metric, expl_leapfrog, BaseRNG >inline
set_max_depth(const int d)stan::mcmc::base_nuts< M, unit_e_point, unit_e_metric, expl_leapfrog, BaseRNG >inline
set_nominal_stepsize(const double e)stan::mcmc::base_hmc< M, unit_e_point, unit_e_metric, expl_leapfrog, BaseRNG >inlinevirtual
set_stepsize_jitter(const double j)stan::mcmc::base_hmc< M, unit_e_point, unit_e_metric, expl_leapfrog, BaseRNG >inlinevirtual
stepsize_adapter()stan::mcmc::stepsize_adapterinline
transition(sample &init_sample)stan::mcmc::adapt_unit_e_nuts< M, BaseRNG >inlinevirtual
unit_e_nuts(M &m, BaseRNG &rng, std::ostream *o=&std::cout, std::ostream *e=0)stan::mcmc::unit_e_nuts< M, BaseRNG >inline
write_sampler_param_names(std::ostream &o)stan::mcmc::base_nuts< M, unit_e_point, unit_e_metric, expl_leapfrog, BaseRNG >inlinevirtual
write_sampler_params(std::ostream &o)stan::mcmc::base_nuts< M, unit_e_point, unit_e_metric, expl_leapfrog, BaseRNG >inlinevirtual
write_sampler_state(std::ostream *o)stan::mcmc::base_hmc< M, unit_e_point, unit_e_metric, expl_leapfrog, BaseRNG >inlinevirtual
z()stan::mcmc::base_hmc< M, unit_e_point, unit_e_metric, expl_leapfrog, BaseRNG >inline
~adapt_unit_e_nuts()stan::mcmc::adapt_unit_e_nuts< M, BaseRNG >inline
~base_mcmc()stan::mcmc::base_mcmcinlinevirtual
~base_nuts()stan::mcmc::base_nuts< M, unit_e_point, unit_e_metric, expl_leapfrog, BaseRNG >inline
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1mcmc_1_1adapt__unit__e__nuts.html b/doc/api/html/classstan_1_1mcmc_1_1adapt__unit__e__nuts.html new file mode 100644 index 00000000000..5c4a31a5774 --- /dev/null +++ b/doc/api/html/classstan_1_1mcmc_1_1adapt__unit__e__nuts.html @@ -0,0 +1,398 @@ + + + + + +Stan: stan::mcmc::adapt_unit_e_nuts< M, BaseRNG > Class Template Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::mcmc::adapt_unit_e_nuts< M, BaseRNG > Class Template Reference
+
+
+ +

#include <adapt_unit_e_nuts.hpp>

+
+Inheritance diagram for stan::mcmc::adapt_unit_e_nuts< M, BaseRNG >:
+
+
+ + +stan::mcmc::unit_e_nuts< M, BaseRNG > +stan::mcmc::stepsize_adapter +stan::mcmc::base_nuts< M, unit_e_point, unit_e_metric, expl_leapfrog, BaseRNG > +stan::mcmc::base_adapter +stan::mcmc::base_hmc< M, unit_e_point, unit_e_metric, expl_leapfrog, BaseRNG > +stan::mcmc::base_mcmc + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 adapt_unit_e_nuts (M &m, BaseRNG &rng, std::ostream *o=&std::cout, std::ostream *e=0)
 
 ~adapt_unit_e_nuts ()
 
sample transition (sample &init_sample)
 
void disengage_adaptation ()
 
- Public Member Functions inherited from stan::mcmc::unit_e_nuts< M, BaseRNG >
 unit_e_nuts (M &m, BaseRNG &rng, std::ostream *o=&std::cout, std::ostream *e=0)
 
bool compute_criterion (ps_point &start, unit_e_point &finish, Eigen::VectorXd &rho)
 
- Public Member Functions inherited from stan::mcmc::base_nuts< M, unit_e_point, unit_e_metric, expl_leapfrog, BaseRNG >
 base_nuts (M &m, BaseRNG &rng, std::ostream *o, std::ostream *e)
 
 ~base_nuts ()
 
void set_max_depth (const int d)
 
void set_max_delta (const double d)
 
int get_max_depth ()
 
double get_max_delta ()
 
sample transition (sample &init_sample)
 
void write_sampler_param_names (std::ostream &o)
 
void write_sampler_params (std::ostream &o)
 
void get_sampler_param_names (std::vector< std::string > &names)
 
void get_sampler_params (std::vector< double > &values)
 
int build_tree (int depth, Eigen::VectorXd &rho, ps_point *z_init_parent, ps_point &z_propose, nuts_util &util)
 
- Public Member Functions inherited from stan::mcmc::base_hmc< M, unit_e_point, unit_e_metric, expl_leapfrog, BaseRNG >
 base_hmc (M &m, BaseRNG &rng, std::ostream *o, std::ostream *e)
 
void write_sampler_state (std::ostream *o)
 
void get_sampler_diagnostic_names (std::vector< std::string > &model_names, std::vector< std::string > &names)
 
void get_sampler_diagnostics (std::vector< double > &values)
 
void seed (const Eigen::VectorXd &q)
 
void init_stepsize ()
 
unit_e_pointz ()
 
virtual void set_nominal_stepsize (const double e)
 
double get_nominal_stepsize ()
 
double get_current_stepsize ()
 
virtual void set_stepsize_jitter (const double j)
 
double get_stepsize_jitter ()
 
void sample_stepsize ()
 
- Public Member Functions inherited from stan::mcmc::base_mcmc
 base_mcmc (std::ostream *o, std::ostream *e)
 
virtual ~base_mcmc ()
 
std::string name ()
 
- Public Member Functions inherited from stan::mcmc::stepsize_adapter
 stepsize_adapter ()
 
stepsize_adaptationget_stepsize_adaptation ()
 
- Public Member Functions inherited from stan::mcmc::base_adapter
 base_adapter ()
 
virtual void engage_adaptation ()
 
bool adapting ()
 
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Additional Inherited Members

- Public Attributes inherited from stan::mcmc::base_nuts< M, unit_e_point, unit_e_metric, expl_leapfrog, BaseRNG >
int _depth
 
int _max_depth
 
double _max_delta
 
int _n_leapfrog
 
int _n_divergent
 
- Protected Attributes inherited from stan::mcmc::base_hmc< M, unit_e_point, unit_e_metric, expl_leapfrog, BaseRNG >
unit_e_point _z
 
expl_leapfrog< unit_e_metric
+< M, BaseRNG >, unit_e_point
_integrator
 
unit_e_metric< M, BaseRNG > _hamiltonian
 
BaseRNG & _rand_int
 
boost::uniform_01< BaseRNG & > _rand_uniform
 
double _nom_epsilon
 
double _epsilon
 
double _epsilon_jitter
 
- Protected Attributes inherited from stan::mcmc::stepsize_adapter
stepsize_adaptation _stepsize_adaptation
 
+

Detailed Description

+

template<typename M, class BaseRNG>
+class stan::mcmc::adapt_unit_e_nuts< M, BaseRNG >

+ + +

Definition at line 16 of file adapt_unit_e_nuts.hpp.

+

Constructor & Destructor Documentation

+ +
+
+
+template<typename M , class BaseRNG >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
stan::mcmc::adapt_unit_e_nuts< M, BaseRNG >::adapt_unit_e_nuts (M & m,
BaseRNG & rng,
std::ostream * o = &std::cout,
std::ostream * e = 0 
)
+
+inline
+
+ +

Definition at line 21 of file adapt_unit_e_nuts.hpp.

+ +
+
+ +
+
+
+template<typename M , class BaseRNG >
+ + + + + +
+ + + + + + + +
stan::mcmc::adapt_unit_e_nuts< M, BaseRNG >::~adapt_unit_e_nuts ()
+
+inline
+
+ +

Definition at line 25 of file adapt_unit_e_nuts.hpp.

+ +
+
+

Member Function Documentation

+ +
+
+
+template<typename M , class BaseRNG >
+ + + + + +
+ + + + + + + +
void stan::mcmc::adapt_unit_e_nuts< M, BaseRNG >::disengage_adaptation ()
+
+inlinevirtual
+
+ +

Reimplemented from stan::mcmc::base_adapter.

+ +

Definition at line 38 of file adapt_unit_e_nuts.hpp.

+ +
+
+ +
+
+
+template<typename M , class BaseRNG >
+ + + + + +
+ + + + + + + + +
sample stan::mcmc::adapt_unit_e_nuts< M, BaseRNG >::transition (sampleinit_sample)
+
+inlinevirtual
+
+ +

Implements stan::mcmc::base_mcmc.

+ +

Definition at line 27 of file adapt_unit_e_nuts.hpp.

+ +
+
+
The documentation for this class was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1mcmc_1_1adapt__unit__e__nuts.png b/doc/api/html/classstan_1_1mcmc_1_1adapt__unit__e__nuts.png new file mode 100644 index 0000000000000000000000000000000000000000..243b8b38ad915fbd778cbc75fac2dd7f78cc9def GIT binary patch literal 4491 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 F^DlyH$>jh5 literal 0 HcmV?d00001 diff --git a/doc/api/html/classstan_1_1mcmc_1_1adapt__unit__e__static__hmc-members.html b/doc/api/html/classstan_1_1mcmc_1_1adapt__unit__e__static__hmc-members.html new file mode 100644 index 00000000000..5066078692d --- /dev/null +++ b/doc/api/html/classstan_1_1mcmc_1_1adapt__unit__e__static__hmc-members.html @@ -0,0 +1,165 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::mcmc::adapt_unit_e_static_hmc< M, BaseRNG > Member List
+
+
+ +

This is the complete list of members for stan::mcmc::adapt_unit_e_static_hmc< M, BaseRNG >, including all inherited members.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
_adapt_flagstan::mcmc::base_adapterprotected
_epsilonstan::mcmc::base_hmc< M, unit_e_point, unit_e_metric, expl_leapfrog, BaseRNG >protected
_epsilon_jitterstan::mcmc::base_hmc< M, unit_e_point, unit_e_metric, expl_leapfrog, BaseRNG >protected
_err_streamstan::mcmc::base_mcmcprotected
_hamiltonianstan::mcmc::base_hmc< M, unit_e_point, unit_e_metric, expl_leapfrog, BaseRNG >protected
_integratorstan::mcmc::base_hmc< M, unit_e_point, unit_e_metric, expl_leapfrog, BaseRNG >protected
_namestan::mcmc::base_mcmcprotected
_nom_epsilonstan::mcmc::base_hmc< M, unit_e_point, unit_e_metric, expl_leapfrog, BaseRNG >protected
_out_streamstan::mcmc::base_mcmcprotected
_rand_intstan::mcmc::base_hmc< M, unit_e_point, unit_e_metric, expl_leapfrog, BaseRNG >protected
_rand_uniformstan::mcmc::base_hmc< M, unit_e_point, unit_e_metric, expl_leapfrog, BaseRNG >protected
_stepsize_adaptationstan::mcmc::stepsize_adapterprotected
_update_L()stan::mcmc::base_static_hmc< M, unit_e_point, unit_e_metric, expl_leapfrog, BaseRNG >inlineprotected
_zstan::mcmc::base_hmc< M, unit_e_point, unit_e_metric, expl_leapfrog, BaseRNG >protected
adapt_unit_e_static_hmc(M &m, BaseRNG &rng, std::ostream *o=&std::cout, std::ostream *e=0)stan::mcmc::adapt_unit_e_static_hmc< M, BaseRNG >inline
adapting()stan::mcmc::base_adapterinline
base_adapter()stan::mcmc::base_adapterinline
base_hmc(M &m, BaseRNG &rng, std::ostream *o, std::ostream *e)stan::mcmc::base_hmc< M, unit_e_point, unit_e_metric, expl_leapfrog, BaseRNG >inline
base_mcmc(std::ostream *o, std::ostream *e)stan::mcmc::base_mcmcinline
base_static_hmc(M &m, BaseRNG &rng, std::ostream *o, std::ostream *e)stan::mcmc::base_static_hmc< M, unit_e_point, unit_e_metric, expl_leapfrog, BaseRNG >inline
disengage_adaptation()stan::mcmc::adapt_unit_e_static_hmc< M, BaseRNG >inlinevirtual
engage_adaptation()stan::mcmc::base_adapterinlinevirtual
get_current_stepsize()stan::mcmc::base_hmc< M, unit_e_point, unit_e_metric, expl_leapfrog, BaseRNG >inline
get_L()stan::mcmc::base_static_hmc< M, unit_e_point, unit_e_metric, expl_leapfrog, BaseRNG >inline
get_nominal_stepsize()stan::mcmc::base_hmc< M, unit_e_point, unit_e_metric, expl_leapfrog, BaseRNG >inline
get_sampler_diagnostic_names(std::vector< std::string > &model_names, std::vector< std::string > &names)stan::mcmc::base_hmc< M, unit_e_point, unit_e_metric, expl_leapfrog, BaseRNG >inlinevirtual
get_sampler_diagnostics(std::vector< double > &values)stan::mcmc::base_hmc< M, unit_e_point, unit_e_metric, expl_leapfrog, BaseRNG >inlinevirtual
get_sampler_param_names(std::vector< std::string > &names)stan::mcmc::base_static_hmc< M, unit_e_point, unit_e_metric, expl_leapfrog, BaseRNG >inlinevirtual
get_sampler_params(std::vector< double > &values)stan::mcmc::base_static_hmc< M, unit_e_point, unit_e_metric, expl_leapfrog, BaseRNG >inlinevirtual
get_stepsize_adaptation()stan::mcmc::stepsize_adapterinline
get_stepsize_jitter()stan::mcmc::base_hmc< M, unit_e_point, unit_e_metric, expl_leapfrog, BaseRNG >inline
get_T()stan::mcmc::base_static_hmc< M, unit_e_point, unit_e_metric, expl_leapfrog, BaseRNG >inline
init_stepsize()stan::mcmc::base_hmc< M, unit_e_point, unit_e_metric, expl_leapfrog, BaseRNG >inline
L_stan::mcmc::base_static_hmc< M, unit_e_point, unit_e_metric, expl_leapfrog, BaseRNG >protected
name()stan::mcmc::base_mcmcinline
sample_stepsize()stan::mcmc::base_hmc< M, unit_e_point, unit_e_metric, expl_leapfrog, BaseRNG >inline
seed(const Eigen::VectorXd &q)stan::mcmc::base_hmc< M, unit_e_point, unit_e_metric, expl_leapfrog, BaseRNG >inline
set_nominal_stepsize(const double e)stan::mcmc::base_static_hmc< M, unit_e_point, unit_e_metric, expl_leapfrog, BaseRNG >inlinevirtual
set_nominal_stepsize_and_L(const double e, const int l)stan::mcmc::base_static_hmc< M, unit_e_point, unit_e_metric, expl_leapfrog, BaseRNG >inline
set_nominal_stepsize_and_T(const double e, const double t)stan::mcmc::base_static_hmc< M, unit_e_point, unit_e_metric, expl_leapfrog, BaseRNG >inline
set_stepsize_jitter(const double j)stan::mcmc::base_hmc< M, unit_e_point, unit_e_metric, expl_leapfrog, BaseRNG >inlinevirtual
set_T(const double t)stan::mcmc::base_static_hmc< M, unit_e_point, unit_e_metric, expl_leapfrog, BaseRNG >inline
stepsize_adapter()stan::mcmc::stepsize_adapterinline
T_stan::mcmc::base_static_hmc< M, unit_e_point, unit_e_metric, expl_leapfrog, BaseRNG >protected
transition(sample &init_sample)stan::mcmc::adapt_unit_e_static_hmc< M, BaseRNG >inlinevirtual
unit_e_static_hmc(M &m, BaseRNG &rng, std::ostream *o=&std::cout, std::ostream *e=0)stan::mcmc::unit_e_static_hmc< M, BaseRNG >inline
write_sampler_param_names(std::ostream &o)stan::mcmc::base_static_hmc< M, unit_e_point, unit_e_metric, expl_leapfrog, BaseRNG >inlinevirtual
write_sampler_params(std::ostream &o)stan::mcmc::base_static_hmc< M, unit_e_point, unit_e_metric, expl_leapfrog, BaseRNG >inlinevirtual
write_sampler_state(std::ostream *o)stan::mcmc::base_hmc< M, unit_e_point, unit_e_metric, expl_leapfrog, BaseRNG >inlinevirtual
z()stan::mcmc::base_hmc< M, unit_e_point, unit_e_metric, expl_leapfrog, BaseRNG >inline
~adapt_unit_e_static_hmc()stan::mcmc::adapt_unit_e_static_hmc< M, BaseRNG >inline
~base_mcmc()stan::mcmc::base_mcmcinlinevirtual
~base_static_hmc()stan::mcmc::base_static_hmc< M, unit_e_point, unit_e_metric, expl_leapfrog, BaseRNG >inline
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1mcmc_1_1adapt__unit__e__static__hmc.html b/doc/api/html/classstan_1_1mcmc_1_1adapt__unit__e__static__hmc.html new file mode 100644 index 00000000000..f7f60635332 --- /dev/null +++ b/doc/api/html/classstan_1_1mcmc_1_1adapt__unit__e__static__hmc.html @@ -0,0 +1,375 @@ + + + + + +Stan: stan::mcmc::adapt_unit_e_static_hmc< M, BaseRNG > Class Template Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::mcmc::adapt_unit_e_static_hmc< M, BaseRNG > Class Template Reference
+
+
+ +

#include <adapt_unit_e_static_hmc.hpp>

+
+Inheritance diagram for stan::mcmc::adapt_unit_e_static_hmc< M, BaseRNG >:
+
+
+ + +stan::mcmc::unit_e_static_hmc< M, BaseRNG > +stan::mcmc::stepsize_adapter +stan::mcmc::base_static_hmc< M, unit_e_point, unit_e_metric, expl_leapfrog, BaseRNG > +stan::mcmc::base_adapter +stan::mcmc::base_hmc< M, unit_e_point, unit_e_metric, expl_leapfrog, BaseRNG > +stan::mcmc::base_mcmc + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 adapt_unit_e_static_hmc (M &m, BaseRNG &rng, std::ostream *o=&std::cout, std::ostream *e=0)
 
 ~adapt_unit_e_static_hmc ()
 
sample transition (sample &init_sample)
 
void disengage_adaptation ()
 
- Public Member Functions inherited from stan::mcmc::unit_e_static_hmc< M, BaseRNG >
 unit_e_static_hmc (M &m, BaseRNG &rng, std::ostream *o=&std::cout, std::ostream *e=0)
 
- Public Member Functions inherited from stan::mcmc::base_static_hmc< M, unit_e_point, unit_e_metric, expl_leapfrog, BaseRNG >
 base_static_hmc (M &m, BaseRNG &rng, std::ostream *o, std::ostream *e)
 
 ~base_static_hmc ()
 
sample transition (sample &init_sample)
 
void write_sampler_param_names (std::ostream &o)
 
void write_sampler_params (std::ostream &o)
 
void get_sampler_param_names (std::vector< std::string > &names)
 
void get_sampler_params (std::vector< double > &values)
 
void set_nominal_stepsize_and_T (const double e, const double t)
 
void set_nominal_stepsize_and_L (const double e, const int l)
 
void set_T (const double t)
 
void set_nominal_stepsize (const double e)
 
double get_T ()
 
int get_L ()
 
- Public Member Functions inherited from stan::mcmc::base_hmc< M, unit_e_point, unit_e_metric, expl_leapfrog, BaseRNG >
 base_hmc (M &m, BaseRNG &rng, std::ostream *o, std::ostream *e)
 
void write_sampler_state (std::ostream *o)
 
void get_sampler_diagnostic_names (std::vector< std::string > &model_names, std::vector< std::string > &names)
 
void get_sampler_diagnostics (std::vector< double > &values)
 
void seed (const Eigen::VectorXd &q)
 
void init_stepsize ()
 
unit_e_pointz ()
 
double get_nominal_stepsize ()
 
double get_current_stepsize ()
 
virtual void set_stepsize_jitter (const double j)
 
double get_stepsize_jitter ()
 
void sample_stepsize ()
 
- Public Member Functions inherited from stan::mcmc::base_mcmc
 base_mcmc (std::ostream *o, std::ostream *e)
 
virtual ~base_mcmc ()
 
std::string name ()
 
- Public Member Functions inherited from stan::mcmc::stepsize_adapter
 stepsize_adapter ()
 
stepsize_adaptationget_stepsize_adaptation ()
 
- Public Member Functions inherited from stan::mcmc::base_adapter
 base_adapter ()
 
virtual void engage_adaptation ()
 
bool adapting ()
 
+ + + + + + + + + + + + +

+Additional Inherited Members

- Protected Member Functions inherited from stan::mcmc::base_static_hmc< M, unit_e_point, unit_e_metric, expl_leapfrog, BaseRNG >
void _update_L ()
 
- Protected Attributes inherited from stan::mcmc::base_static_hmc< M, unit_e_point, unit_e_metric, expl_leapfrog, BaseRNG >
double T_
 
int L_
 
- Protected Attributes inherited from stan::mcmc::stepsize_adapter
stepsize_adaptation _stepsize_adaptation
 
+

Detailed Description

+

template<typename M, class BaseRNG>
+class stan::mcmc::adapt_unit_e_static_hmc< M, BaseRNG >

+ + +

Definition at line 17 of file adapt_unit_e_static_hmc.hpp.

+

Constructor & Destructor Documentation

+ +
+
+
+template<typename M , class BaseRNG >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
stan::mcmc::adapt_unit_e_static_hmc< M, BaseRNG >::adapt_unit_e_static_hmc (M & m,
BaseRNG & rng,
std::ostream * o = &std::cout,
std::ostream * e = 0 
)
+
+inline
+
+ +

Definition at line 22 of file adapt_unit_e_static_hmc.hpp.

+ +
+
+ +
+
+
+template<typename M , class BaseRNG >
+ + + + + +
+ + + + + + + +
stan::mcmc::adapt_unit_e_static_hmc< M, BaseRNG >::~adapt_unit_e_static_hmc ()
+
+inline
+
+ +

Definition at line 26 of file adapt_unit_e_static_hmc.hpp.

+ +
+
+

Member Function Documentation

+ +
+
+
+template<typename M , class BaseRNG >
+ + + + + +
+ + + + + + + +
void stan::mcmc::adapt_unit_e_static_hmc< M, BaseRNG >::disengage_adaptation ()
+
+inlinevirtual
+
+ +

Reimplemented from stan::mcmc::base_adapter.

+ +

Definition at line 41 of file adapt_unit_e_static_hmc.hpp.

+ +
+
+ +
+
+
+template<typename M , class BaseRNG >
+ + + + + +
+ + + + + + + + +
sample stan::mcmc::adapt_unit_e_static_hmc< M, BaseRNG >::transition (sampleinit_sample)
+
+inlinevirtual
+
+ +

Implements stan::mcmc::base_mcmc.

+ +

Definition at line 28 of file adapt_unit_e_static_hmc.hpp.

+ +
+
+
The documentation for this class was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1mcmc_1_1adapt__unit__e__static__hmc.png b/doc/api/html/classstan_1_1mcmc_1_1adapt__unit__e__static__hmc.png new file mode 100644 index 0000000000000000000000000000000000000000..7696d148c6ec000fc21f0d7a0ec3533c5e8f9f30 GIT binary patch literal 4541 zcmbVQ3pktEx(;gE$!I&Xn@&|-PDfnQDxt=m^rjW+GNDyULRHmP;!aSsnyR*_xP%hX zsjyo`QI`;jiCv0fw_2A5sgkDZevP=qSxIL)``OPq&pCU0o+Rr}-v3`~ed~MQ@BJh> z*qz!ARe(YuknL!z6Br0&3k-}`w#k5ZzipN$z=yoUX(!9g%}p@;G`SR(%Dx9il2=nx zlWfwU3b@=Bim`Kq0Fe0aZM%~m1oFda^ogTRky2Ab6XCfgFw2qdJG!f))EEWsJ!E)Z zO|kEXOuh6AN!x$)v)`!J>cC`qyI|!t9fo7G;0W}5r4!WQ01=MJl!nQjqTPd++tMI3 zj1>ukIPzPd6BIrF4gi?BupQ|6lJ(x_==tZ5U?I}>wgVNt8o04k)tnlq zJtbNe`t}k6O;}wDs9ZY>j0T$dQ>Jvrj4IJFB0qZZZ#UunjV8Gkcs%J)m6HzmXJAE(1{Y1UHhf;4sz6}2?mP34lX zklgUU0%a$D`M2=@^5E00m0C6~S>6QCf+NOY&(!tpllP&MOng5y4Sr}33TC`(&!n=f2M_l_nts3?<77#r}m9ps9h zl{rDe0Q%-bO#D2tFfc{f{7B{MOB7}@!SE^$I~@b%tN`BC3M3$7dK zc(2!$)Q#YWTeK0}bhcBN!n-#(s)y;O*Yg@&a7e=WSChjbju-NSD%zr^l3~j~E-E1g z>uSIO8JdyU_ZR)AYqvk^aR{+@PYhpvIfhi^$e~E=$fa178C!-b(dYIMj9zsJml)1} zSwi6SbM`%+=h@CQXVTaSR%<{5;jhvvI!Y>M{+< z6FkINRVuR%65$gS3$z*QkuK?ga3LoerABO&rL=|@20DK$KFUI5b<()huPX|CK^CARQ!hYDl@5`KMAenep(f{UTm#I>wzo* z!R236N)TqvP(h;>vouPcg%v1inV9jW&GknG5 zpB2mOe?;~_$qRdO>i;1Qf8zf|MUYAzm0Cczctl@C@jldc*pM>d1ecQ%StN^#f^)H? zGQh#M#oPz72r36!Ppk+fjsP}5X75MGX8P!0`5WupPD^_y`e`~UtUQo3h%~n$P0of^ z_~dJ~MVSQ&nny8-wN&`Ph+en?O2j<8W{MsuKM@%>j~_BYi+-?hhobf7?!vls(*j75&E{dYts4wrazN?J~UU>;Q+DcFO)r>8I4a`=gxnv zW+97QYE@jvFVf_U8MNnPlkNVW%k7_1HY+Z0i2Z}_&+0b_1~amK+^$q&qg4UfuAYJ( zr_AgpvUZOUru`kX_gj&4+BAtv9eDBuj-qL&o}eS_Q@AA;5xj7$OuhfyW(usOM6ec# z|Dc30bDS)CLGdTt?&!=TJjd^gj!y98D!3Wzta@LGeG#Ojv$FM&-@5>#-nmf9)3b@aA$O!l)`kOwZQ zTtJhhewXY9OkLHB+^gfu!}e%T{40Ki62gtVm}@nHKe4jBH2DoL+RD?lF!5lNRf|`4 zSn-I!pf@oj_(iB2_8)a0Oou9hmXk#@C|(LIUn|__?ew#mil0;C!rKF+4PIuKq;PuA zN`xk2h!b#V&Af27_9rt&VlKIQPbXZ6aiay=bKM||ZiRJp*Tq7^H7agQh z%NgxeII;SL9hQ{{6P>-GbDVsqj~vEa5~Lj?#T>O@tfp$Ops>8(HHgYhVkQA|;JES{ zYDLOnsS-zH!>dL#_NMrJgtxtH{*ihB+ci9110V2Wogg^ps^ zbuSUm09?~~iJFt<#@&iOY%$#lCnSOz97~auA>yTXCCe~O{y>10fXS~VwMbzp ze;~e0-gIIVQVu*ZEvQbU)lr!N6l_mXka(wLBP}$BH0He*L`Myc%>sb}R_o7b0hcEc zGI-kwvGKJ7Z#>{IL0OSQ*_fBrq)gjh{eaeXYoLZ|CPPOY#@An`k4?;uV~iRfF65fvizkBI#(;fcMe`=_L<5F)tE1! zJ#FmszcYN(n^WI_F~X}i*UFQE2Try$-IYa|8sXfbaX%eBpKOm0nwo=8=yIpj6KeOs z+gRPjHY0C-;2Q`RF!E7h0<68Y=U+J;MJ(Z!Co#;P^~|yZITzM-E|1vQjO>Jea=ozD zQq;@*w#O{YC^zCdpl%EkX7JaIW{j1d5+~XmL44$|g7&<+KK>{X2uMujUzqjcSa8M$ z8P7`=R0;!72_V^H?u{QZkD(=AH2dhXv+(KoM|Z@aTgBlh{~_PCelok$*>%&d;UB06 zH*~a#sEh*N-u(lL(Vq2phv~EGaL^&Fgd*}9#_9_2oKIaHrncG9v1V}%QL$5_>Soo` zAF+H+a!5eKYLRcNpfP-zF#Kp<_(PdJJ*n6GENT5aaXcSvDODS`sAsTj%BdPJJ?k0c z9sS0RUNmva-7R0~O27EgPwZE;SnFq5Hi}GdXv#jp+ld7i(%}5dJa~>!c|T|-?zTSc zTSZEI23+_VB+SiGa&&`)*SP;9alf=|paNTYx@6G+4;b1Bf4UK!uAQ1nn2)!E5vsVeJ~|ZgLD{K(8b5I{&H1 z`KN}4w-{oixPupHq$qA;Q^bv+&0z@bTKsD{(6H)%Kl@H!#zA45W+w#nvoccUwud3S zT{3gU(~*vR>LV)9Mu4VRMmji>h(D-XwdBzE-suCJ{9c4Y-8wtFPla3dcsn;m%) z%Ad|JoPGbUqksH*iLynB@j>7dcipO0H=4dhP7c2Okg73JL=RyGRPwD`(Z?yC@93Rf zOI(qhAm@BU)UUNTzk#LSl+C)=Fz2X|k?$vDup$|%CFo=vrGu07(@@uC!S@d|m} z#RtpxbcY#WvbA$>PMg1q)QcKjCY=1%?S8a9G(veZ4Hi%+v#APfc{hn2)#|_Czb~@* zL2*uPSO5)~Mb{wu(>Om4$+_Divj)=GobL6%CzRTGRcW5Qin>`;R4>>44Sk1g zX#?Tc>PdIRl>=93PsM~={rhOdUbmmSuCwew{LagMpswz~1s(-^<2piHhlH0@xO=0J zb6vY<<#0jfU%qyDe>`-fK>vG(`%<8F|3(^{dkJDKBSqT_8u!cp^}gEoo3B4Mj|6Ha gHjm7*kBp$4n|xo$XAyUU|FuBSmUbt~j(J@FZ)+HL%K!iX literal 0 HcmV?d00001 diff --git a/doc/api/html/classstan_1_1mcmc_1_1base__adaptation-members.html b/doc/api/html/classstan_1_1mcmc_1_1base__adaptation-members.html new file mode 100644 index 00000000000..08a548690e7 --- /dev/null +++ b/doc/api/html/classstan_1_1mcmc_1_1base__adaptation-members.html @@ -0,0 +1,113 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::mcmc::base_adaptation Member List
+
+
+ +

This is the complete list of members for stan::mcmc::base_adaptation, including all inherited members.

+ + +
restart()stan::mcmc::base_adaptationinlinevirtual
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1mcmc_1_1base__adaptation.html b/doc/api/html/classstan_1_1mcmc_1_1base__adaptation.html new file mode 100644 index 00000000000..10a6807d74f --- /dev/null +++ b/doc/api/html/classstan_1_1mcmc_1_1base__adaptation.html @@ -0,0 +1,166 @@ + + + + + +Stan: stan::mcmc::base_adaptation Class Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::mcmc::base_adaptation Class Reference
+
+
+ +

#include <base_adaptation.hpp>

+
+Inheritance diagram for stan::mcmc::base_adaptation:
+
+
+ + +stan::mcmc::stepsize_adaptation +stan::mcmc::windowed_adaptation +stan::mcmc::covar_adaptation +stan::mcmc::var_adaptation + +
+ + + + +

+Public Member Functions

virtual void restart ()
 
+

Detailed Description

+
+

Definition at line 8 of file base_adaptation.hpp.

+

Member Function Documentation

+ +
+
+ + + + + +
+ + + + + + + +
virtual void stan::mcmc::base_adaptation::restart ()
+
+inlinevirtual
+
+ +

Reimplemented in stan::mcmc::stepsize_adaptation, and stan::mcmc::windowed_adaptation.

+ +

Definition at line 12 of file base_adaptation.hpp.

+ +
+
+
The documentation for this class was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1mcmc_1_1base__adaptation.png b/doc/api/html/classstan_1_1mcmc_1_1base__adaptation.png new file mode 100644 index 0000000000000000000000000000000000000000..3aa26524f008b3a8f237094ea62827663b7198f9 GIT binary patch literal 1722 zcmdUwc`(~)7{`CvUn7$@>-M>2f=e{%F=Xu_lcjkGX_xa5Grg^wI z$;lj%0RTV_=X}}|0KNdB__p+(bzMUFLJs9|_Ppcn?k*J0Ew0C9v}8ijN3q##c-puo zw3Q}#x_JT6p}jTKao!jJq;R;?_U98}OZi+{xz-_gUU>HIZoBTcM>yP-oR=|GD*iXM zsvrIAOBQB&;u8Qi5H+il6@dWaLlHn|*e9wrO1d=@H_%z!A-UOFg>@Z+k@Lkc1h8{U z9T;t26Z|$iyZQX2KDK`O&NBCgveH(<6EWdlQbPY>Z1+X$^*~$93s3UVcpyYKD{Iq# zF#d90c3UA9eeO`s76+{@GX2n!-dJ4Vyrx$r?E&SEH=eZ%Hoeds`kl_|D;Z^{@8{X9 zrO;{JKn9Nm>}SW%^rl{wx0zv=Q=W0m1`6Q>u483l2m-Ka8y9r_s(^wjUWSvvQJsCqcOv}OjmYuoUkH9MzE}~*D~6{sMsfm%P^Qw9C208WQOO=;%USW6(FsK z)Ckf{Cw-C3Qo67+EV28EYGlM>Q*|50{0*_dJui3*9k?8`)ER`?FtoWPm67yYDl0|6MpxLd%zDhQQ)rpaW_pL|)vtKs4$Rw$RzW&`!7C_+Lz&{xkpkgH zMrZJqdA%4(4<#k$7Zzl(7gSbkY3?t>$`QPDU=tNZm1#;pKOBVm1755J(y7I<8h-i+omSk3Z@nyd_v zwkEej1!;9M|C-z)S^Ek^%Hm6CxbUqK(A(SFoZq7eLy^(v{^w90=R;6pj2EhYeD`6U z_ogC&|DK}0{}uAAJ44%WH9;+ti4_l1*6P-ilc-G%arPwrKV{R!O=(4LF55XLAUfXH7%jWg{s|Gw`V?e?I^KLowzWB<<`rKU(AnG^iNj*hL zK1xq#z-enHGo_9+qF<7dbHDP~VY~uDgU5OAPJ1mjMD)nN+9q$pAXuzeB@i~spT{Oe aQ39$AmlXYxuS$bH8UW|$cDm9bB=v96GXYot literal 0 HcmV?d00001 diff --git a/doc/api/html/classstan_1_1mcmc_1_1base__adapter-members.html b/doc/api/html/classstan_1_1mcmc_1_1base__adapter-members.html new file mode 100644 index 00000000000..96f0b5025ff --- /dev/null +++ b/doc/api/html/classstan_1_1mcmc_1_1base__adapter-members.html @@ -0,0 +1,117 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::mcmc::base_adapter Member List
+
+
+ +

This is the complete list of members for stan::mcmc::base_adapter, including all inherited members.

+ + + + + + +
_adapt_flagstan::mcmc::base_adapterprotected
adapting()stan::mcmc::base_adapterinline
base_adapter()stan::mcmc::base_adapterinline
disengage_adaptation()stan::mcmc::base_adapterinlinevirtual
engage_adaptation()stan::mcmc::base_adapterinlinevirtual
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1mcmc_1_1base__adapter.html b/doc/api/html/classstan_1_1mcmc_1_1base__adapter.html new file mode 100644 index 00000000000..c057f484afb --- /dev/null +++ b/doc/api/html/classstan_1_1mcmc_1_1base__adapter.html @@ -0,0 +1,282 @@ + + + + + +Stan: stan::mcmc::base_adapter Class Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::mcmc::base_adapter Class Reference
+
+
+ +

#include <base_adapter.hpp>

+
+Inheritance diagram for stan::mcmc::base_adapter:
+
+
+ + +stan::mcmc::stepsize_adapter +stan::mcmc::stepsize_covar_adapter +stan::mcmc::stepsize_var_adapter +stan::mcmc::adapt_unit_e_nuts< M, BaseRNG > +stan::mcmc::adapt_unit_e_static_hmc< M, BaseRNG > +stan::mcmc::adapt_dense_e_nuts< M, BaseRNG > +stan::mcmc::adapt_dense_e_static_hmc< M, BaseRNG > +stan::mcmc::adapt_diag_e_nuts< M, BaseRNG > +stan::mcmc::adapt_diag_e_static_hmc< M, BaseRNG > + +
+ + + + + + + + + + +

+Public Member Functions

 base_adapter ()
 
virtual void engage_adaptation ()
 
virtual void disengage_adaptation ()
 
bool adapting ()
 
+ + + +

+Protected Attributes

bool _adapt_flag
 
+

Detailed Description

+
+

Definition at line 8 of file base_adapter.hpp.

+

Constructor & Destructor Documentation

+ +
+
+ + + + + +
+ + + + + + + +
stan::mcmc::base_adapter::base_adapter ()
+
+inline
+
+ +

Definition at line 12 of file base_adapter.hpp.

+ +
+
+

Member Function Documentation

+ +
+
+ + + + + +
+ + + + + + + +
bool stan::mcmc::base_adapter::adapting ()
+
+inline
+
+ +

Definition at line 17 of file base_adapter.hpp.

+ +
+
+ + + +
+
+ + + + + +
+ + + + + + + +
virtual void stan::mcmc::base_adapter::engage_adaptation ()
+
+inlinevirtual
+
+ +

Definition at line 14 of file base_adapter.hpp.

+ +
+
+

Member Data Documentation

+ +
+
+ + + + + +
+ + + + +
bool stan::mcmc::base_adapter::_adapt_flag
+
+protected
+
+ +

Definition at line 21 of file base_adapter.hpp.

+ +
+
+
The documentation for this class was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1mcmc_1_1base__adapter.png b/doc/api/html/classstan_1_1mcmc_1_1base__adapter.png new file mode 100644 index 0000000000000000000000000000000000000000..2151e42aa40a04b7904908a927f042deb66b3933 GIT binary patch literal 4106 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 literal 0 HcmV?d00001 diff --git a/doc/api/html/classstan_1_1mcmc_1_1base__hamiltonian-members.html b/doc/api/html/classstan_1_1mcmc_1_1base__hamiltonian-members.html new file mode 100644 index 00000000000..416c7730abb --- /dev/null +++ b/doc/api/html/classstan_1_1mcmc_1_1base__hamiltonian-members.html @@ -0,0 +1,128 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::mcmc::base_hamiltonian< M, P, BaseRNG > Member List
+
+ +
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1mcmc_1_1base__hamiltonian.html b/doc/api/html/classstan_1_1mcmc_1_1base__hamiltonian.html new file mode 100644 index 00000000000..3f3be4ec00b --- /dev/null +++ b/doc/api/html/classstan_1_1mcmc_1_1base__hamiltonian.html @@ -0,0 +1,639 @@ + + + + + +Stan: stan::mcmc::base_hamiltonian< M, P, BaseRNG > Class Template Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::mcmc::base_hamiltonian< M, P, BaseRNG > Class Template Referenceabstract
+
+
+ +

#include <base_hamiltonian.hpp>

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 base_hamiltonian (M &m, std::ostream *e)
 
 ~base_hamiltonian ()
 
virtual double T (P &z)=0
 
double V (P &z)
 
virtual double tau (P &z)=0
 
virtual double phi (P &z)=0
 
double H (P &z)
 
virtual const Eigen::VectorXd dtau_dq (P &z)=0
 
virtual const Eigen::VectorXd dtau_dp (P &z)=0
 
virtual const Eigen::VectorXd dphi_dq (P &z)=0
 
virtual void sample_p (P &z, BaseRNG &rng)=0
 
virtual void init (P &z)
 
virtual void update (P &z)
 
+ + + +

+Protected Member Functions

void _write_error_msg (std::ostream *error_msgs, const std::exception &e)
 
+ + + + + +

+Protected Attributes

M & _model
 
std::ostream * _err_stream
 
+

Detailed Description

+

template<typename M, typename P, typename BaseRNG>
+class stan::mcmc::base_hamiltonian< M, P, BaseRNG >

+ + +

Definition at line 17 of file base_hamiltonian.hpp.

+

Constructor & Destructor Documentation

+ +
+
+
+template<typename M, typename P, typename BaseRNG>
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
stan::mcmc::base_hamiltonian< M, P, BaseRNG >::base_hamiltonian (M & m,
std::ostream * e 
)
+
+inline
+
+ +

Definition at line 21 of file base_hamiltonian.hpp.

+ +
+
+ +
+
+
+template<typename M, typename P, typename BaseRNG>
+ + + + + +
+ + + + + + + +
stan::mcmc::base_hamiltonian< M, P, BaseRNG >::~base_hamiltonian ()
+
+inline
+
+ +

Definition at line 22 of file base_hamiltonian.hpp.

+ +
+
+

Member Function Documentation

+ +
+
+
+template<typename M, typename P, typename BaseRNG>
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
void stan::mcmc::base_hamiltonian< M, P, BaseRNG >::_write_error_msg (std::ostream * error_msgs,
const std::exception & e 
)
+
+inlineprotected
+
+ +

Definition at line 63 of file base_hamiltonian.hpp.

+ +
+
+ +
+
+
+template<typename M, typename P, typename BaseRNG>
+ + + + + +
+ + + + + + + + +
virtual const Eigen::VectorXd stan::mcmc::base_hamiltonian< M, P, BaseRNG >::dphi_dq (P & z)
+
+pure virtual
+
+
+ +
+
+
+template<typename M, typename P, typename BaseRNG>
+ + + + + +
+ + + + + + + + +
virtual const Eigen::VectorXd stan::mcmc::base_hamiltonian< M, P, BaseRNG >::dtau_dp (P & z)
+
+pure virtual
+
+
+ +
+
+
+template<typename M, typename P, typename BaseRNG>
+ + + + + +
+ + + + + + + + +
virtual const Eigen::VectorXd stan::mcmc::base_hamiltonian< M, P, BaseRNG >::dtau_dq (P & z)
+
+pure virtual
+
+
+ +
+
+
+template<typename M, typename P, typename BaseRNG>
+ + + + + +
+ + + + + + + + +
double stan::mcmc::base_hamiltonian< M, P, BaseRNG >::H (P & z)
+
+inline
+
+ +

Definition at line 30 of file base_hamiltonian.hpp.

+ +
+
+ +
+
+
+template<typename M, typename P, typename BaseRNG>
+ + + + + +
+ + + + + + + + +
virtual void stan::mcmc::base_hamiltonian< M, P, BaseRNG >::init (P & z)
+
+inlinevirtual
+
+ +

Definition at line 41 of file base_hamiltonian.hpp.

+ +
+
+ +
+
+
+template<typename M, typename P, typename BaseRNG>
+ + + + + +
+ + + + + + + + +
virtual double stan::mcmc::base_hamiltonian< M, P, BaseRNG >::phi (P & z)
+
+pure virtual
+
+
+ +
+
+
+template<typename M, typename P, typename BaseRNG>
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
virtual void stan::mcmc::base_hamiltonian< M, P, BaseRNG >::sample_p (P & z,
BaseRNG & rng 
)
+
+pure virtual
+
+
+ +
+
+
+template<typename M, typename P, typename BaseRNG>
+ + + + + +
+ + + + + + + + +
virtual double stan::mcmc::base_hamiltonian< M, P, BaseRNG >::T (P & z)
+
+pure virtual
+
+
+ +
+
+
+template<typename M, typename P, typename BaseRNG>
+ + + + + +
+ + + + + + + + +
virtual double stan::mcmc::base_hamiltonian< M, P, BaseRNG >::tau (P & z)
+
+pure virtual
+
+
+ +
+
+
+template<typename M, typename P, typename BaseRNG>
+ + + + + +
+ + + + + + + + +
virtual void stan::mcmc::base_hamiltonian< M, P, BaseRNG >::update (P & z)
+
+inlinevirtual
+
+ +

Definition at line 43 of file base_hamiltonian.hpp.

+ +
+
+ +
+
+
+template<typename M, typename P, typename BaseRNG>
+ + + + + +
+ + + + + + + + +
double stan::mcmc::base_hamiltonian< M, P, BaseRNG >::V (P & z)
+
+inline
+
+ +

Definition at line 25 of file base_hamiltonian.hpp.

+ +
+
+

Member Data Documentation

+ +
+
+
+template<typename M, typename P, typename BaseRNG>
+ + + + + +
+ + + + +
std::ostream* stan::mcmc::base_hamiltonian< M, P, BaseRNG >::_err_stream
+
+protected
+
+ +

Definition at line 61 of file base_hamiltonian.hpp.

+ +
+
+ +
+
+
+template<typename M, typename P, typename BaseRNG>
+ + + + + +
+ + + + +
M& stan::mcmc::base_hamiltonian< M, P, BaseRNG >::_model
+
+protected
+
+ +

Definition at line 59 of file base_hamiltonian.hpp.

+ +
+
+
The documentation for this class was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1mcmc_1_1base__hmc-members.html b/doc/api/html/classstan_1_1mcmc_1_1base__hmc-members.html new file mode 100644 index 00000000000..c47e664892b --- /dev/null +++ b/doc/api/html/classstan_1_1mcmc_1_1base__hmc-members.html @@ -0,0 +1,144 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::mcmc::base_hmc< M, P, H, I, BaseRNG > Member List
+
+
+ +

This is the complete list of members for stan::mcmc::base_hmc< M, P, H, I, BaseRNG >, including all inherited members.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
_epsilonstan::mcmc::base_hmc< M, P, H, I, BaseRNG >protected
_epsilon_jitterstan::mcmc::base_hmc< M, P, H, I, BaseRNG >protected
_err_streamstan::mcmc::base_mcmcprotected
_hamiltonianstan::mcmc::base_hmc< M, P, H, I, BaseRNG >protected
_integratorstan::mcmc::base_hmc< M, P, H, I, BaseRNG >protected
_namestan::mcmc::base_mcmcprotected
_nom_epsilonstan::mcmc::base_hmc< M, P, H, I, BaseRNG >protected
_out_streamstan::mcmc::base_mcmcprotected
_rand_intstan::mcmc::base_hmc< M, P, H, I, BaseRNG >protected
_rand_uniformstan::mcmc::base_hmc< M, P, H, I, BaseRNG >protected
_zstan::mcmc::base_hmc< M, P, H, I, BaseRNG >protected
base_hmc(M &m, BaseRNG &rng, std::ostream *o, std::ostream *e)stan::mcmc::base_hmc< M, P, H, I, BaseRNG >inline
base_mcmc(std::ostream *o, std::ostream *e)stan::mcmc::base_mcmcinline
get_current_stepsize()stan::mcmc::base_hmc< M, P, H, I, BaseRNG >inline
get_nominal_stepsize()stan::mcmc::base_hmc< M, P, H, I, BaseRNG >inline
get_sampler_diagnostic_names(std::vector< std::string > &model_names, std::vector< std::string > &names)stan::mcmc::base_hmc< M, P, H, I, BaseRNG >inlinevirtual
get_sampler_diagnostics(std::vector< double > &values)stan::mcmc::base_hmc< M, P, H, I, BaseRNG >inlinevirtual
get_sampler_param_names(std::vector< std::string > &names)stan::mcmc::base_mcmcinlinevirtual
get_sampler_params(std::vector< double > &values)stan::mcmc::base_mcmcinlinevirtual
get_stepsize_jitter()stan::mcmc::base_hmc< M, P, H, I, BaseRNG >inline
init_stepsize()stan::mcmc::base_hmc< M, P, H, I, BaseRNG >inline
name()stan::mcmc::base_mcmcinline
sample_stepsize()stan::mcmc::base_hmc< M, P, H, I, BaseRNG >inline
seed(const Eigen::VectorXd &q)stan::mcmc::base_hmc< M, P, H, I, BaseRNG >inline
set_nominal_stepsize(const double e)stan::mcmc::base_hmc< M, P, H, I, BaseRNG >inlinevirtual
set_stepsize_jitter(const double j)stan::mcmc::base_hmc< M, P, H, I, BaseRNG >inlinevirtual
transition(sample &init_sample)=0stan::mcmc::base_mcmcpure virtual
write_sampler_param_names(std::ostream &o)stan::mcmc::base_mcmcinlinevirtual
write_sampler_params(std::ostream &o)stan::mcmc::base_mcmcinlinevirtual
write_sampler_state(std::ostream *o)stan::mcmc::base_hmc< M, P, H, I, BaseRNG >inlinevirtual
z()stan::mcmc::base_hmc< M, P, H, I, BaseRNG >inline
~base_mcmc()stan::mcmc::base_mcmcinlinevirtual
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1mcmc_1_1base__hmc.html b/doc/api/html/classstan_1_1mcmc_1_1base__hmc.html new file mode 100644 index 00000000000..e34f0b3927b --- /dev/null +++ b/doc/api/html/classstan_1_1mcmc_1_1base__hmc.html @@ -0,0 +1,801 @@ + + + + + +Stan: stan::mcmc::base_hmc< M, P, H, I, BaseRNG > Class Template Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::mcmc::base_hmc< M, P, H, I, BaseRNG > Class Template Reference
+
+
+ +

#include <base_hmc.hpp>

+
+Inheritance diagram for stan::mcmc::base_hmc< M, P, H, I, BaseRNG >:
+
+
+ + +stan::mcmc::base_mcmc +stan::mcmc::base_nuts< M, P, H, I, BaseRNG > +stan::mcmc::base_static_hmc< M, P, H, I, BaseRNG > + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 base_hmc (M &m, BaseRNG &rng, std::ostream *o, std::ostream *e)
 
void write_sampler_state (std::ostream *o)
 
void get_sampler_diagnostic_names (std::vector< std::string > &model_names, std::vector< std::string > &names)
 
void get_sampler_diagnostics (std::vector< double > &values)
 
void seed (const Eigen::VectorXd &q)
 
void init_stepsize ()
 
P & z ()
 
virtual void set_nominal_stepsize (const double e)
 
double get_nominal_stepsize ()
 
double get_current_stepsize ()
 
virtual void set_stepsize_jitter (const double j)
 
double get_stepsize_jitter ()
 
void sample_stepsize ()
 
- Public Member Functions inherited from stan::mcmc::base_mcmc
 base_mcmc (std::ostream *o, std::ostream *e)
 
virtual ~base_mcmc ()
 
virtual sample transition (sample &init_sample)=0
 
std::string name ()
 
virtual void write_sampler_param_names (std::ostream &o)
 
virtual void write_sampler_params (std::ostream &o)
 
virtual void get_sampler_param_names (std::vector< std::string > &names)
 
virtual void get_sampler_params (std::vector< double > &values)
 
+ + + + + + + + + + + + + + + + + + + + + + + + +

+Protected Attributes

_z
 
I< H< M, BaseRNG >, P > _integrator
 
H< M, BaseRNG > _hamiltonian
 
BaseRNG & _rand_int
 
boost::uniform_01< BaseRNG & > _rand_uniform
 
double _nom_epsilon
 
double _epsilon
 
double _epsilon_jitter
 
- Protected Attributes inherited from stan::mcmc::base_mcmc
std::string _name
 
std::ostream * _out_stream
 
std::ostream * _err_stream
 
+

Detailed Description

+

template<class M, class P, template< class, class > class H, template< class, class > class I, class BaseRNG>
+class stan::mcmc::base_hmc< M, P, H, I, BaseRNG >

+ + +

Definition at line 20 of file base_hmc.hpp.

+

Constructor & Destructor Documentation

+ +
+
+
+template<class M, class P, template< class, class > class H, template< class, class > class I, class BaseRNG>
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
stan::mcmc::base_hmc< M, P, H, I, BaseRNG >::base_hmc (M & m,
BaseRNG & rng,
std::ostream * o,
std::ostream * e 
)
+
+inline
+
+ +

Definition at line 24 of file base_hmc.hpp.

+ +
+
+

Member Function Documentation

+ +
+
+
+template<class M, class P, template< class, class > class H, template< class, class > class I, class BaseRNG>
+ + + + + +
+ + + + + + + +
double stan::mcmc::base_hmc< M, P, H, I, BaseRNG >::get_current_stepsize ()
+
+inline
+
+ +

Definition at line 117 of file base_hmc.hpp.

+ +
+
+ +
+
+
+template<class M, class P, template< class, class > class H, template< class, class > class I, class BaseRNG>
+ + + + + +
+ + + + + + + +
double stan::mcmc::base_hmc< M, P, H, I, BaseRNG >::get_nominal_stepsize ()
+
+inline
+
+ +

Definition at line 115 of file base_hmc.hpp.

+ +
+
+ +
+
+
+template<class M, class P, template< class, class > class H, template< class, class > class I, class BaseRNG>
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
void stan::mcmc::base_hmc< M, P, H, I, BaseRNG >::get_sampler_diagnostic_names (std::vector< std::string > & model_names,
std::vector< std::string > & names 
)
+
+inlinevirtual
+
+ +

Reimplemented from stan::mcmc::base_mcmc.

+ +

Definition at line 42 of file base_hmc.hpp.

+ +
+
+ +
+
+
+template<class M, class P, template< class, class > class H, template< class, class > class I, class BaseRNG>
+ + + + + +
+ + + + + + + + +
void stan::mcmc::base_hmc< M, P, H, I, BaseRNG >::get_sampler_diagnostics (std::vector< double > & values)
+
+inlinevirtual
+
+ +

Reimplemented from stan::mcmc::base_mcmc.

+ +

Definition at line 47 of file base_hmc.hpp.

+ +
+
+ +
+
+
+template<class M, class P, template< class, class > class H, template< class, class > class I, class BaseRNG>
+ + + + + +
+ + + + + + + +
double stan::mcmc::base_hmc< M, P, H, I, BaseRNG >::get_stepsize_jitter ()
+
+inline
+
+ +

Definition at line 123 of file base_hmc.hpp.

+ +
+
+ +
+
+
+template<class M, class P, template< class, class > class H, template< class, class > class I, class BaseRNG>
+ + + + + +
+ + + + + + + +
void stan::mcmc::base_hmc< M, P, H, I, BaseRNG >::init_stepsize ()
+
+inline
+
+ +

Definition at line 55 of file base_hmc.hpp.

+ +
+
+ +
+
+
+template<class M, class P, template< class, class > class H, template< class, class > class I, class BaseRNG>
+ + + + + +
+ + + + + + + +
void stan::mcmc::base_hmc< M, P, H, I, BaseRNG >::sample_stepsize ()
+
+inline
+
+ +

Definition at line 125 of file base_hmc.hpp.

+ +
+
+ +
+
+
+template<class M, class P, template< class, class > class H, template< class, class > class I, class BaseRNG>
+ + + + + +
+ + + + + + + + +
void stan::mcmc::base_hmc< M, P, H, I, BaseRNG >::seed (const Eigen::VectorXd & q)
+
+inline
+
+ +

Definition at line 51 of file base_hmc.hpp.

+ +
+
+ +
+
+
+template<class M, class P, template< class, class > class H, template< class, class > class I, class BaseRNG>
+ + + + + +
+ + + + + + + + +
virtual void stan::mcmc::base_hmc< M, P, H, I, BaseRNG >::set_nominal_stepsize (const double e)
+
+inlinevirtual
+
+
+ +
+
+
+template<class M, class P, template< class, class > class H, template< class, class > class I, class BaseRNG>
+ + + + + +
+ + + + + + + + +
virtual void stan::mcmc::base_hmc< M, P, H, I, BaseRNG >::set_stepsize_jitter (const double j)
+
+inlinevirtual
+
+ +

Definition at line 119 of file base_hmc.hpp.

+ +
+
+ +
+
+
+template<class M, class P, template< class, class > class H, template< class, class > class I, class BaseRNG>
+ + + + + +
+ + + + + + + + +
void stan::mcmc::base_hmc< M, P, H, I, BaseRNG >::write_sampler_state (std::ostream * o)
+
+inlinevirtual
+
+ +

Reimplemented from stan::mcmc::base_mcmc.

+ +

Definition at line 36 of file base_hmc.hpp.

+ +
+
+ +
+
+
+template<class M, class P, template< class, class > class H, template< class, class > class I, class BaseRNG>
+ + + + + +
+ + + + + + + +
P& stan::mcmc::base_hmc< M, P, H, I, BaseRNG >::z ()
+
+inline
+
+ +

Definition at line 109 of file base_hmc.hpp.

+ +
+
+

Member Data Documentation

+ +
+
+
+template<class M, class P, template< class, class > class H, template< class, class > class I, class BaseRNG>
+ + + + + +
+ + + + +
double stan::mcmc::base_hmc< M, P, H, I, BaseRNG >::_epsilon
+
+protected
+
+ +

Definition at line 143 of file base_hmc.hpp.

+ +
+
+ +
+
+
+template<class M, class P, template< class, class > class H, template< class, class > class I, class BaseRNG>
+ + + + + +
+ + + + +
double stan::mcmc::base_hmc< M, P, H, I, BaseRNG >::_epsilon_jitter
+
+protected
+
+ +

Definition at line 144 of file base_hmc.hpp.

+ +
+
+ +
+
+
+template<class M, class P, template< class, class > class H, template< class, class > class I, class BaseRNG>
+ + + + + +
+ + + + +
H<M, BaseRNG> stan::mcmc::base_hmc< M, P, H, I, BaseRNG >::_hamiltonian
+
+protected
+
+ +

Definition at line 135 of file base_hmc.hpp.

+ +
+
+ +
+
+
+template<class M, class P, template< class, class > class H, template< class, class > class I, class BaseRNG>
+ + + + + +
+ + + + +
I<H<M, BaseRNG>, P> stan::mcmc::base_hmc< M, P, H, I, BaseRNG >::_integrator
+
+protected
+
+ +

Definition at line 134 of file base_hmc.hpp.

+ +
+
+ +
+
+
+template<class M, class P, template< class, class > class H, template< class, class > class I, class BaseRNG>
+ + + + + +
+ + + + +
double stan::mcmc::base_hmc< M, P, H, I, BaseRNG >::_nom_epsilon
+
+protected
+
+ +

Definition at line 142 of file base_hmc.hpp.

+ +
+
+ +
+
+
+template<class M, class P, template< class, class > class H, template< class, class > class I, class BaseRNG>
+ + + + + +
+ + + + +
BaseRNG& stan::mcmc::base_hmc< M, P, H, I, BaseRNG >::_rand_int
+
+protected
+
+ +

Definition at line 137 of file base_hmc.hpp.

+ +
+
+ +
+
+
+template<class M, class P, template< class, class > class H, template< class, class > class I, class BaseRNG>
+ + + + + +
+ + + + +
boost::uniform_01<BaseRNG&> stan::mcmc::base_hmc< M, P, H, I, BaseRNG >::_rand_uniform
+
+protected
+
+ +

Definition at line 140 of file base_hmc.hpp.

+ +
+
+ +
+
+
+template<class M, class P, template< class, class > class H, template< class, class > class I, class BaseRNG>
+ + + + + +
+ + + + +
P stan::mcmc::base_hmc< M, P, H, I, BaseRNG >::_z
+
+protected
+
+ +

Definition at line 133 of file base_hmc.hpp.

+ +
+
+
The documentation for this class was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1mcmc_1_1base__hmc.png b/doc/api/html/classstan_1_1mcmc_1_1base__hmc.png new file mode 100644 index 0000000000000000000000000000000000000000..72f35d053fd8774e41040a135e715ee28862b470 GIT binary patch literal 2033 zcmc&#dr(v75)V>=P#_whV4y`x0*DYm1?dDqkXHiXZA26a4@DxNBE*0RQW8yl5V#2l zw?a^nhZlvEODh2-5XBH7#S*C$6C&~wlSt$l<<*mRrgP`c^v>;HJu_#|e!F}2e7onj zzwc6bXrQ4!OdkXS8KQ&yB0-=HG(i7GPaBZvUHZ@sh*}Sn6d(hDL#aAk8)SG*6kpsRTPx3Q$j-z1fcaS!lAZk3xsvr zUUWG;y@bZmLL@L-B7lIE0$LoirTOh^c#h3~`e#Zx%bE4<9h5B#t24J=ykALu&OP(I zg8^e(xaI8#W2Rw&tSTHh%)O#gjXO^W2T`RYOQkG;yZHaa8#f)efx1 z585qx_6cPMMP2nDT!SZCgD(os`8$FWwDYPhtuCl@QELdP^u3fT@!CHk{)GBOas-9? z_IRL}ze}iRrrR2~w>8RP`5S(Y@bR@M{XA{&MsRvG zk)ve_Z;AM&ODDScS-??Ui}2r_ovf_~CRSEno7M6RwiqcHP0K#j)}izf{NVeVDJ1YCu2DVnoMh+tM;pvZs=?NDi=9e&{U|pg zX;GmLC)o{H zzE9!924a(fb{*|;zxcH5D(!n?{<)lJMtlh;iDVEUD$0pu*tL(IY8VdSw+q@{=kS*PqL-#o(d@3c=HLL!slqyF7u zF@K*1hTf**e52N^NohY0fWN|cd}(B!^SrABa)tw^In{5yS@_h*{YC-J-2pX}uMZur zSKzfBf{s@=Qw{&i*(h(jC2wogvVV1c5(HGPi?BA~n9=tg)Z3`=Lj$6_jCvF>K{R%o znyn@rVD|rCvC?m8MBjJX!_r8ezX4W1k9RY*X^EWfA~*ybuNj~YMqhn~snKn?V}7#~ z1HnbP`fe}%;%;ps4d<{Y2HUN7FFKd=?d8p}cmC3gqB_CQ5@nrh`LSchyX^9JGs}5y zAK}}W;{pRj2=hyHUI;*3_kam){+8*2j@<@kCA(=TED~xfBw+aP)EamQbI`Mt6U@Zr z<-S*_dxZ%pXUS3s%rIvcx%Q;XBkE6R9RZWZgAS)lUevW;IZ{56RIvIflwI{2`OR|j zXaCOSln2XF*G>?eomS5P*)}%?ske1`F;%36`)y{`y1lCeiGrOPA86QL2&>*)_Mz!S zUKDQUr`%)N!f9O{QIOi=CN?9JY~d+^4{;BXV>l4FXB@FZohDGK^LqYZM^)ehm&9Vx zgtdDQA;UVXIX9+!2C-84?44DD>yXgNYsZiPI+F1frRS3CbSCOa)K$B3;oLiG+u#b( zTQ$skVE*}lYT6e`88e_S#s7Q?$CrVXLipL(!&d9sR0@vae4w#+uDPOjN*Brw7G(vp z`^Zz>^8HC|#d26+_X%h=vyT(bkbOSfhdolF+DWCrNBb6suT9-BaZGXhfWThvcRwg{ zN|x+q4Hgmk@!<4H+jP_@{gdTZOI~@(Z(Mxg?j(^v9hTcF3PZ+TACx9Z*JMAGPw68| z#^S+ByRJ~T53TsBvazUaZ*B!rJa%}ZY`E@FrLFm{V}$c?3<%CGx( zS03!KZwOATtHUzsj@QPPE)vhO<|xMsDo0-1P$`EQtnum?^-W}Dj_@`-HTefiJ7HDQ z3;YsOwQL8>4?+kGkm^2yjA-GRE396ES>sgoc_JVFOX2@OiiYbk0HhiKB;76r0&#PQ p1c2jz0zi012fFzCS?WDy_2s=s`Lky1x4`)fLi>mMHTvQUeg%}Muvq{A literal 0 HcmV?d00001 diff --git a/doc/api/html/classstan_1_1mcmc_1_1base__integrator-members.html b/doc/api/html/classstan_1_1mcmc_1_1base__integrator-members.html new file mode 100644 index 00000000000..fee1da32768 --- /dev/null +++ b/doc/api/html/classstan_1_1mcmc_1_1base__integrator-members.html @@ -0,0 +1,115 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::mcmc::base_integrator< H, P > Member List
+
+
+ +

This is the complete list of members for stan::mcmc::base_integrator< H, P >, including all inherited members.

+ + + + +
_out_streamstan::mcmc::base_integrator< H, P >protected
base_integrator(std::ostream *o)stan::mcmc::base_integrator< H, P >inline
evolve(P &z, H &hamiltonian, const double epsilon)=0stan::mcmc::base_integrator< H, P >pure virtual
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1mcmc_1_1base__integrator.html b/doc/api/html/classstan_1_1mcmc_1_1base__integrator.html new file mode 100644 index 00000000000..cec7979b53e --- /dev/null +++ b/doc/api/html/classstan_1_1mcmc_1_1base__integrator.html @@ -0,0 +1,246 @@ + + + + + +Stan: stan::mcmc::base_integrator< H, P > Class Template Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::mcmc::base_integrator< H, P > Class Template Referenceabstract
+
+
+ +

#include <base_integrator.hpp>

+
+Inheritance diagram for stan::mcmc::base_integrator< H, P >:
+
+
+ + +stan::mcmc::base_leapfrog< H, P > +stan::mcmc::expl_leapfrog< H, P > + +
+ + + + + + +

+Public Member Functions

 base_integrator (std::ostream *o)
 
virtual void evolve (P &z, H &hamiltonian, const double epsilon)=0
 
+ + + +

+Protected Attributes

std::ostream * _out_stream
 
+

Detailed Description

+

template<typename H, typename P>
+class stan::mcmc::base_integrator< H, P >

+ + +

Definition at line 11 of file base_integrator.hpp.

+

Constructor & Destructor Documentation

+ +
+
+
+template<typename H, typename P>
+ + + + + +
+ + + + + + + + +
stan::mcmc::base_integrator< H, P >::base_integrator (std::ostream * o)
+
+inline
+
+ +

Definition at line 15 of file base_integrator.hpp.

+ +
+
+

Member Function Documentation

+ +
+
+
+template<typename H, typename P>
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
virtual void stan::mcmc::base_integrator< H, P >::evolve (P & z,
H & hamiltonian,
const double epsilon 
)
+
+pure virtual
+
+
+

Member Data Documentation

+ +
+
+
+template<typename H, typename P>
+ + + + + +
+ + + + +
std::ostream* stan::mcmc::base_integrator< H, P >::_out_stream
+
+protected
+
+ +

Definition at line 21 of file base_integrator.hpp.

+ +
+
+
The documentation for this class was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1mcmc_1_1base__integrator.png b/doc/api/html/classstan_1_1mcmc_1_1base__integrator.png new file mode 100644 index 0000000000000000000000000000000000000000..168b2ec195510fcdb732ed7b2c08335f0a34441f GIT binary patch literal 1221 zcmeAS@N?(olHy`uVBq!ia0vp^H-Wf=gBeK1ZrUdXq$C1-LR|m<{|{uoc=NTi|Ih>= z3ycpOIKbL@M;^%KC<*clW&kPzfvcxNj2IYLLOfj@Ln;{G&b>Y9u>ue4Z0FE_|0kP& zWEBvT_kj4XuN?D)Uvlohm#-co$-er_T*(%Vu*E5huUo8(^htBv z@3^gP7weuibM{3)GMrpCXXk^C{Z_ladm5zRsBRxVk;(cGmCn*H)jLax-K7-KH}|SBldP-N^k^ zyLs^+%g8Thcu&n?Tz4h#+_@8{=7gTw@AyoiR%o^N_ccW=8)IIjJpaDtf!6B6*Iw1T z4<*jKApQFB4L)blse290Cap1N3%@Mg_(U^5|F!VM^3aCgU;TK}?Y>W#D!cYpAmh4M zSDtbgU2|gl;c!2&mtp@}Pqquw)g&F_t7^sO7UwxI-dV92aJT6wOLusLh@}BH7=~s~FGnJRI zbFIyF@2q^EHDT7y>;99peo1ZOz8!Xg&xZGAcfDoHSCyEmzViq7U9!tOc2KJ}oy~BD zfpod2IPbp5Gw&y_U6{wHAHC%LG>$V%WYhJEy8Jioo_RLr+y2Q%FB#b?o_=Md+}&2` zp?2Yv#mSDy1-@ZLZ8MK(=yrf&AZ^`>V|!!lly8^a`M3G2RNRc%S1HpL&)e)Keagxs z&L@A8>-jqe)_piUXYNGP;;=iL)n-nyzFvLyUPh$q%8;M7lb2YR3dH_it>>w}t9MOK&hfxoQq!i`gdf;v zk$yFK!jkS^)kdDbNCIJ>(^+w{e?jy=^ zx+%?Aby?3jGbn!5L`%L%~re<_~%!185s21uQn-kA1j>CRhBv@ zCH21M!WC;XEf;5R^D0{H^XH~T^6HSsaYp%*a&K=v+0=M8uoaZha z%-3Oo4_f2+jm@S*< st~LL?)jaE$!o#F$Qsw)<9lzLDtO}pdbbz%ISmrQzy85}Sb4q9e03Y64wg3PC literal 0 HcmV?d00001 diff --git a/doc/api/html/classstan_1_1mcmc_1_1base__leapfrog-members.html b/doc/api/html/classstan_1_1mcmc_1_1base__leapfrog-members.html new file mode 100644 index 00000000000..88dcc7c0ba3 --- /dev/null +++ b/doc/api/html/classstan_1_1mcmc_1_1base__leapfrog-members.html @@ -0,0 +1,120 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::mcmc::base_leapfrog< H, P > Member List
+
+
+ +

This is the complete list of members for stan::mcmc::base_leapfrog< H, P >, including all inherited members.

+ + + + + + + + + +
_out_streamstan::mcmc::base_integrator< H, P >protected
base_integrator(std::ostream *o)stan::mcmc::base_integrator< H, P >inline
base_leapfrog(std::ostream *o)stan::mcmc::base_leapfrog< H, P >inline
begin_update_p(P &z, H &hamiltonian, double epsilon)=0stan::mcmc::base_leapfrog< H, P >pure virtual
end_update_p(P &z, H &hamiltonian, double epsilon)=0stan::mcmc::base_leapfrog< H, P >pure virtual
evolve(P &z, H &hamiltonian, const double epsilon)stan::mcmc::base_leapfrog< H, P >inlinevirtual
update_q(P &z, H &hamiltonian, double epsilon)=0stan::mcmc::base_leapfrog< H, P >pure virtual
verbose_evolve(P &z, H &hamiltonian, const double epsilon)stan::mcmc::base_leapfrog< H, P >inline
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1mcmc_1_1base__leapfrog.html b/doc/api/html/classstan_1_1mcmc_1_1base__leapfrog.html new file mode 100644 index 00000000000..4e82185e491 --- /dev/null +++ b/doc/api/html/classstan_1_1mcmc_1_1base__leapfrog.html @@ -0,0 +1,410 @@ + + + + + +Stan: stan::mcmc::base_leapfrog< H, P > Class Template Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::mcmc::base_leapfrog< H, P > Class Template Referenceabstract
+
+
+ +

#include <base_leapfrog.hpp>

+
+Inheritance diagram for stan::mcmc::base_leapfrog< H, P >:
+
+
+ + +stan::mcmc::base_integrator< H, P > +stan::mcmc::expl_leapfrog< H, P > + +
+ + + + + + + + + + + + + + + + + +

+Public Member Functions

 base_leapfrog (std::ostream *o)
 
void evolve (P &z, H &hamiltonian, const double epsilon)
 
void verbose_evolve (P &z, H &hamiltonian, const double epsilon)
 
virtual void begin_update_p (P &z, H &hamiltonian, double epsilon)=0
 
virtual void update_q (P &z, H &hamiltonian, double epsilon)=0
 
virtual void end_update_p (P &z, H &hamiltonian, double epsilon)=0
 
- Public Member Functions inherited from stan::mcmc::base_integrator< H, P >
 base_integrator (std::ostream *o)
 
+ + + + +

+Additional Inherited Members

- Protected Attributes inherited from stan::mcmc::base_integrator< H, P >
std::ostream * _out_stream
 
+

Detailed Description

+

template<typename H, typename P>
+class stan::mcmc::base_leapfrog< H, P >

+ + +

Definition at line 13 of file base_leapfrog.hpp.

+

Constructor & Destructor Documentation

+ +
+
+
+template<typename H, typename P>
+ + + + + +
+ + + + + + + + +
stan::mcmc::base_leapfrog< H, P >::base_leapfrog (std::ostream * o)
+
+inline
+
+ +

Definition at line 17 of file base_leapfrog.hpp.

+ +
+
+

Member Function Documentation

+ +
+
+
+template<typename H, typename P>
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
virtual void stan::mcmc::base_leapfrog< H, P >::begin_update_p (P & z,
H & hamiltonian,
double epsilon 
)
+
+pure virtual
+
+
+ +
+
+
+template<typename H, typename P>
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
virtual void stan::mcmc::base_leapfrog< H, P >::end_update_p (P & z,
H & hamiltonian,
double epsilon 
)
+
+pure virtual
+
+
+ +
+
+
+template<typename H, typename P>
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
void stan::mcmc::base_leapfrog< H, P >::evolve (P & z,
H & hamiltonian,
const double epsilon 
)
+
+inlinevirtual
+
+ +

Implements stan::mcmc::base_integrator< H, P >.

+ +

Definition at line 19 of file base_leapfrog.hpp.

+ +
+
+ +
+
+
+template<typename H, typename P>
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
virtual void stan::mcmc::base_leapfrog< H, P >::update_q (P & z,
H & hamiltonian,
double epsilon 
)
+
+pure virtual
+
+
+ +
+
+
+template<typename H, typename P>
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
void stan::mcmc::base_leapfrog< H, P >::verbose_evolve (P & z,
H & hamiltonian,
const double epsilon 
)
+
+inline
+
+ +

Definition at line 30 of file base_leapfrog.hpp.

+ +
+
+
The documentation for this class was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1mcmc_1_1base__leapfrog.png b/doc/api/html/classstan_1_1mcmc_1_1base__leapfrog.png new file mode 100644 index 0000000000000000000000000000000000000000..43a191084598cf65c01e18ed198251972f0da491 GIT binary patch literal 1220 zcmeAS@N?(olHy`uVBq!ia0vp^H-Wf=gBeK1ZrUdXq$C1-LR|m<{|{uoc=NTi|Ih>= z3ycpOIKbL@M;^%KC<*clW&kPzfvcxNj2IYLf<0XvLn;{G&b>Y9u>ue4Z0FE_|0kP& zWEBv*uSa?wbB)(cAMUq>Pnra@Q=3-+n+>{?ME2-*elw{w7SVGoCAOG;4}Q)z`Q zm%U!1_=<^753;x23I8+e+0kFw_cwpoe)d@I>`8B{+jEMy{!RaUbk zkr!8qhE7`ds^paToJj7-Np=^?Qx>cI-3AY&m!8k|eplvtU}nqEc4b3K|M3+WhbP${ zWOJ3Co^#Eu;hxD!hF_Odm|u8L=2@WcYt*ohpuqX3bBdk0*bNq_Njk*ON@1v7sq(wy zOHI+`N0Db3__jzbNz3MC(fDebB7P_A1YereCh`B9IA8nO9Dnp6X~()P{IlvdcSns z@+TdgxwA3$VLLF`ui0#VG|%*;%o5#=zdp>9+|>Pj&BvUOO@-S2uREI8v>JuIKfXyk z$$C}q>HP=hUA>x?yJZc-(o^4g9{9=r$lw2pL48;68l9ZufwyGXCY5PEd2hSF-l2C+8GjSL0^;)}xg&ZE;=NS)-7U2{y~`S#G{%^lVDk;hjZk z=_&2$VLNqsjntQ(jaa)>A*B8F_cIe>_oSaqUp%Wfx-*KoB literal 0 HcmV?d00001 diff --git a/doc/api/html/classstan_1_1mcmc_1_1base__mcmc-members.html b/doc/api/html/classstan_1_1mcmc_1_1base__mcmc-members.html new file mode 100644 index 00000000000..94f8cbc045b --- /dev/null +++ b/doc/api/html/classstan_1_1mcmc_1_1base__mcmc-members.html @@ -0,0 +1,126 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::mcmc::base_mcmc Member List
+
+
+ +

This is the complete list of members for stan::mcmc::base_mcmc, including all inherited members.

+ + + + + + + + + + + + + + + +
_err_streamstan::mcmc::base_mcmcprotected
_namestan::mcmc::base_mcmcprotected
_out_streamstan::mcmc::base_mcmcprotected
base_mcmc(std::ostream *o, std::ostream *e)stan::mcmc::base_mcmcinline
get_sampler_diagnostic_names(std::vector< std::string > &model_names, std::vector< std::string > &names)stan::mcmc::base_mcmcinlinevirtual
get_sampler_diagnostics(std::vector< double > &values)stan::mcmc::base_mcmcinlinevirtual
get_sampler_param_names(std::vector< std::string > &names)stan::mcmc::base_mcmcinlinevirtual
get_sampler_params(std::vector< double > &values)stan::mcmc::base_mcmcinlinevirtual
name()stan::mcmc::base_mcmcinline
transition(sample &init_sample)=0stan::mcmc::base_mcmcpure virtual
write_sampler_param_names(std::ostream &o)stan::mcmc::base_mcmcinlinevirtual
write_sampler_params(std::ostream &o)stan::mcmc::base_mcmcinlinevirtual
write_sampler_state(std::ostream *o)stan::mcmc::base_mcmcinlinevirtual
~base_mcmc()stan::mcmc::base_mcmcinlinevirtual
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1mcmc_1_1base__mcmc.html b/doc/api/html/classstan_1_1mcmc_1_1base__mcmc.html new file mode 100644 index 00000000000..16de1bfc92d --- /dev/null +++ b/doc/api/html/classstan_1_1mcmc_1_1base__mcmc.html @@ -0,0 +1,564 @@ + + + + + +Stan: stan::mcmc::base_mcmc Class Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::mcmc::base_mcmc Class Referenceabstract
+
+
+ +

#include <base_mcmc.hpp>

+
+Inheritance diagram for stan::mcmc::base_mcmc:
+
+
+ + +stan::mcmc::base_hmc< M, dense_e_point, dense_e_metric, expl_leapfrog, BaseRNG > +stan::mcmc::base_hmc< M, diag_e_point, diag_e_metric, expl_leapfrog, BaseRNG > +stan::mcmc::base_hmc< M, unit_e_point, unit_e_metric, expl_leapfrog, BaseRNG > +stan::mcmc::base_hmc< M, P, H, I, BaseRNG > +stan::mcmc::fixed_param_sampler +stan::mcmc::base_nuts< M, dense_e_point, dense_e_metric, expl_leapfrog, BaseRNG > +stan::mcmc::base_static_hmc< M, dense_e_point, dense_e_metric, expl_leapfrog, BaseRNG > +stan::mcmc::base_nuts< M, diag_e_point, diag_e_metric, expl_leapfrog, BaseRNG > +stan::mcmc::base_static_hmc< M, diag_e_point, diag_e_metric, expl_leapfrog, BaseRNG > +stan::mcmc::base_nuts< M, unit_e_point, unit_e_metric, expl_leapfrog, BaseRNG > +stan::mcmc::base_static_hmc< M, unit_e_point, unit_e_metric, expl_leapfrog, BaseRNG > +stan::mcmc::base_nuts< M, P, H, I, BaseRNG > +stan::mcmc::base_static_hmc< M, P, H, I, BaseRNG > + +
+ + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 base_mcmc (std::ostream *o, std::ostream *e)
 
virtual ~base_mcmc ()
 
virtual sample transition (sample &init_sample)=0
 
std::string name ()
 
virtual void write_sampler_param_names (std::ostream &o)
 
virtual void write_sampler_params (std::ostream &o)
 
virtual void get_sampler_param_names (std::vector< std::string > &names)
 
virtual void get_sampler_params (std::vector< double > &values)
 
virtual void write_sampler_state (std::ostream *o)
 
virtual void get_sampler_diagnostic_names (std::vector< std::string > &model_names, std::vector< std::string > &names)
 
virtual void get_sampler_diagnostics (std::vector< double > &values)
 
+ + + + + + + +

+Protected Attributes

std::string _name
 
std::ostream * _out_stream
 
std::ostream * _err_stream
 
+

Detailed Description

+
+

Definition at line 13 of file base_mcmc.hpp.

+

Constructor & Destructor Documentation

+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
stan::mcmc::base_mcmc::base_mcmc (std::ostream * o,
std::ostream * e 
)
+
+inline
+
+ +

Definition at line 17 of file base_mcmc.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
virtual stan::mcmc::base_mcmc::~base_mcmc ()
+
+inlinevirtual
+
+ +

Definition at line 19 of file base_mcmc.hpp.

+ +
+
+

Member Function Documentation

+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
virtual void stan::mcmc::base_mcmc::get_sampler_diagnostic_names (std::vector< std::string > & model_names,
std::vector< std::string > & names 
)
+
+inlinevirtual
+
+
+ +
+
+ + + + + +
+ + + + + + + + +
virtual void stan::mcmc::base_mcmc::get_sampler_diagnostics (std::vector< double > & values)
+
+inlinevirtual
+
+
+ + + + + +
+
+ + + + + +
+ + + + + + + +
std::string stan::mcmc::base_mcmc::name ()
+
+inline
+
+ +

Definition at line 23 of file base_mcmc.hpp.

+ +
+
+ + + + + + + +
+
+ + + + + +
+ + + + + + + + +
virtual void stan::mcmc::base_mcmc::write_sampler_state (std::ostream * o)
+
+inlinevirtual
+
+
+

Member Data Documentation

+ +
+
+ + + + + +
+ + + + +
std::ostream* stan::mcmc::base_mcmc::_err_stream
+
+protected
+
+ +

Definition at line 45 of file base_mcmc.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + +
std::string stan::mcmc::base_mcmc::_name
+
+protected
+
+ +

Definition at line 38 of file base_mcmc.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + +
std::ostream* stan::mcmc::base_mcmc::_out_stream
+
+protected
+
+ +

Definition at line 44 of file base_mcmc.hpp.

+ +
+
+
The documentation for this class was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1mcmc_1_1base__mcmc.png b/doc/api/html/classstan_1_1mcmc_1_1base__mcmc.png new file mode 100644 index 0000000000000000000000000000000000000000..2bb8448ec73d35c046a485c0aee213ab09a214cb GIT binary patch literal 10651 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 RNy<66A1!`J`~FbSe*@jo*1-S( literal 0 HcmV?d00001 diff --git a/doc/api/html/classstan_1_1mcmc_1_1base__nuts-members.html b/doc/api/html/classstan_1_1mcmc_1_1base__nuts-members.html new file mode 100644 index 00000000000..bc790bbe3ab --- /dev/null +++ b/doc/api/html/classstan_1_1mcmc_1_1base__nuts-members.html @@ -0,0 +1,157 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::mcmc::base_nuts< M, P, H, I, BaseRNG > Member List
+
+
+ +

This is the complete list of members for stan::mcmc::base_nuts< M, P, H, I, BaseRNG >, including all inherited members.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
_depthstan::mcmc::base_nuts< M, P, H, I, BaseRNG >
_epsilonstan::mcmc::base_hmc< M, P, H, I, BaseRNG >protected
_epsilon_jitterstan::mcmc::base_hmc< M, P, H, I, BaseRNG >protected
_err_streamstan::mcmc::base_mcmcprotected
_hamiltonianstan::mcmc::base_hmc< M, P, H, I, BaseRNG >protected
_integratorstan::mcmc::base_hmc< M, P, H, I, BaseRNG >protected
_max_deltastan::mcmc::base_nuts< M, P, H, I, BaseRNG >
_max_depthstan::mcmc::base_nuts< M, P, H, I, BaseRNG >
_n_divergentstan::mcmc::base_nuts< M, P, H, I, BaseRNG >
_n_leapfrogstan::mcmc::base_nuts< M, P, H, I, BaseRNG >
_namestan::mcmc::base_mcmcprotected
_nom_epsilonstan::mcmc::base_hmc< M, P, H, I, BaseRNG >protected
_out_streamstan::mcmc::base_mcmcprotected
_rand_intstan::mcmc::base_hmc< M, P, H, I, BaseRNG >protected
_rand_uniformstan::mcmc::base_hmc< M, P, H, I, BaseRNG >protected
_zstan::mcmc::base_hmc< M, P, H, I, BaseRNG >protected
base_hmc(M &m, BaseRNG &rng, std::ostream *o, std::ostream *e)stan::mcmc::base_hmc< M, P, H, I, BaseRNG >inline
base_mcmc(std::ostream *o, std::ostream *e)stan::mcmc::base_mcmcinline
base_nuts(M &m, BaseRNG &rng, std::ostream *o, std::ostream *e)stan::mcmc::base_nuts< M, P, H, I, BaseRNG >inline
build_tree(int depth, Eigen::VectorXd &rho, ps_point *z_init_parent, ps_point &z_propose, nuts_util &util)stan::mcmc::base_nuts< M, P, H, I, BaseRNG >inline
compute_criterion(ps_point &start, P &finish, Eigen::VectorXd &rho)=0stan::mcmc::base_nuts< M, P, H, I, BaseRNG >pure virtual
get_current_stepsize()stan::mcmc::base_hmc< M, P, H, I, BaseRNG >inline
get_max_delta()stan::mcmc::base_nuts< M, P, H, I, BaseRNG >inline
get_max_depth()stan::mcmc::base_nuts< M, P, H, I, BaseRNG >inline
get_nominal_stepsize()stan::mcmc::base_hmc< M, P, H, I, BaseRNG >inline
get_sampler_diagnostic_names(std::vector< std::string > &model_names, std::vector< std::string > &names)stan::mcmc::base_hmc< M, P, H, I, BaseRNG >inlinevirtual
get_sampler_diagnostics(std::vector< double > &values)stan::mcmc::base_hmc< M, P, H, I, BaseRNG >inlinevirtual
get_sampler_param_names(std::vector< std::string > &names)stan::mcmc::base_nuts< M, P, H, I, BaseRNG >inlinevirtual
get_sampler_params(std::vector< double > &values)stan::mcmc::base_nuts< M, P, H, I, BaseRNG >inlinevirtual
get_stepsize_jitter()stan::mcmc::base_hmc< M, P, H, I, BaseRNG >inline
init_stepsize()stan::mcmc::base_hmc< M, P, H, I, BaseRNG >inline
name()stan::mcmc::base_mcmcinline
sample_stepsize()stan::mcmc::base_hmc< M, P, H, I, BaseRNG >inline
seed(const Eigen::VectorXd &q)stan::mcmc::base_hmc< M, P, H, I, BaseRNG >inline
set_max_delta(const double d)stan::mcmc::base_nuts< M, P, H, I, BaseRNG >inline
set_max_depth(const int d)stan::mcmc::base_nuts< M, P, H, I, BaseRNG >inline
set_nominal_stepsize(const double e)stan::mcmc::base_hmc< M, P, H, I, BaseRNG >inlinevirtual
set_stepsize_jitter(const double j)stan::mcmc::base_hmc< M, P, H, I, BaseRNG >inlinevirtual
transition(sample &init_sample)stan::mcmc::base_nuts< M, P, H, I, BaseRNG >inlinevirtual
write_sampler_param_names(std::ostream &o)stan::mcmc::base_nuts< M, P, H, I, BaseRNG >inlinevirtual
write_sampler_params(std::ostream &o)stan::mcmc::base_nuts< M, P, H, I, BaseRNG >inlinevirtual
write_sampler_state(std::ostream *o)stan::mcmc::base_hmc< M, P, H, I, BaseRNG >inlinevirtual
z()stan::mcmc::base_hmc< M, P, H, I, BaseRNG >inline
~base_mcmc()stan::mcmc::base_mcmcinlinevirtual
~base_nuts()stan::mcmc::base_nuts< M, P, H, I, BaseRNG >inline
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1mcmc_1_1base__nuts.html b/doc/api/html/classstan_1_1mcmc_1_1base__nuts.html new file mode 100644 index 00000000000..5b5035ea161 --- /dev/null +++ b/doc/api/html/classstan_1_1mcmc_1_1base__nuts.html @@ -0,0 +1,751 @@ + + + + + +Stan: stan::mcmc::base_nuts< M, P, H, I, BaseRNG > Class Template Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::mcmc::base_nuts< M, P, H, I, BaseRNG > Class Template Referenceabstract
+
+
+ +

#include <base_nuts.hpp>

+
+Inheritance diagram for stan::mcmc::base_nuts< M, P, H, I, BaseRNG >:
+
+
+ + +stan::mcmc::base_hmc< M, P, H, I, BaseRNG > +stan::mcmc::base_mcmc + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 base_nuts (M &m, BaseRNG &rng, std::ostream *o, std::ostream *e)
 
 ~base_nuts ()
 
void set_max_depth (const int d)
 
void set_max_delta (const double d)
 
int get_max_depth ()
 
double get_max_delta ()
 
sample transition (sample &init_sample)
 
void write_sampler_param_names (std::ostream &o)
 
void write_sampler_params (std::ostream &o)
 
void get_sampler_param_names (std::vector< std::string > &names)
 
void get_sampler_params (std::vector< double > &values)
 
virtual bool compute_criterion (ps_point &start, P &finish, Eigen::VectorXd &rho)=0
 
int build_tree (int depth, Eigen::VectorXd &rho, ps_point *z_init_parent, ps_point &z_propose, nuts_util &util)
 
- Public Member Functions inherited from stan::mcmc::base_hmc< M, P, H, I, BaseRNG >
 base_hmc (M &m, BaseRNG &rng, std::ostream *o, std::ostream *e)
 
void write_sampler_state (std::ostream *o)
 
void get_sampler_diagnostic_names (std::vector< std::string > &model_names, std::vector< std::string > &names)
 
void get_sampler_diagnostics (std::vector< double > &values)
 
void seed (const Eigen::VectorXd &q)
 
void init_stepsize ()
 
P & z ()
 
virtual void set_nominal_stepsize (const double e)
 
double get_nominal_stepsize ()
 
double get_current_stepsize ()
 
virtual void set_stepsize_jitter (const double j)
 
double get_stepsize_jitter ()
 
void sample_stepsize ()
 
- Public Member Functions inherited from stan::mcmc::base_mcmc
 base_mcmc (std::ostream *o, std::ostream *e)
 
virtual ~base_mcmc ()
 
std::string name ()
 
+ + + + + + + + + + + +

+Public Attributes

int _depth
 
int _max_depth
 
double _max_delta
 
int _n_leapfrog
 
int _n_divergent
 
+ + + + + + + + + + + + + + + + + + +

+Additional Inherited Members

- Protected Attributes inherited from stan::mcmc::base_hmc< M, P, H, I, BaseRNG >
_z
 
I< H< M, BaseRNG >, P > _integrator
 
H< M, BaseRNG > _hamiltonian
 
BaseRNG & _rand_int
 
boost::uniform_01< BaseRNG & > _rand_uniform
 
double _nom_epsilon
 
double _epsilon
 
double _epsilon_jitter
 
+

Detailed Description

+

template<class M, class P, template< class, class > class H, template< class, class > class I, class BaseRNG>
+class stan::mcmc::base_nuts< M, P, H, I, BaseRNG >

+ + +

Definition at line 32 of file base_nuts.hpp.

+

Constructor & Destructor Documentation

+ +
+
+
+template<class M, class P, template< class, class > class H, template< class, class > class I, class BaseRNG>
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
stan::mcmc::base_nuts< M, P, H, I, BaseRNG >::base_nuts (M & m,
BaseRNG & rng,
std::ostream * o,
std::ostream * e 
)
+
+inline
+
+ +

Definition at line 37 of file base_nuts.hpp.

+ +
+
+ +
+
+
+template<class M, class P, template< class, class > class H, template< class, class > class I, class BaseRNG>
+ + + + + +
+ + + + + + + +
stan::mcmc::base_nuts< M, P, H, I, BaseRNG >::~base_nuts ()
+
+inline
+
+ +

Definition at line 42 of file base_nuts.hpp.

+ +
+
+

Member Function Documentation

+ +
+
+
+template<class M, class P, template< class, class > class H, template< class, class > class I, class BaseRNG>
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
int stan::mcmc::base_nuts< M, P, H, I, BaseRNG >::build_tree (int depth,
Eigen::VectorXd & rho,
ps_pointz_init_parent,
ps_pointz_propose,
nuts_utilutil 
)
+
+inline
+
+ +

Definition at line 181 of file base_nuts.hpp.

+ +
+
+ +
+
+
+template<class M, class P, template< class, class > class H, template< class, class > class I, class BaseRNG>
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
virtual bool stan::mcmc::base_nuts< M, P, H, I, BaseRNG >::compute_criterion (ps_pointstart,
P & finish,
Eigen::VectorXd & rho 
)
+
+pure virtual
+
+
+ +
+
+
+template<class M, class P, template< class, class > class H, template< class, class > class I, class BaseRNG>
+ + + + + +
+ + + + + + + +
double stan::mcmc::base_nuts< M, P, H, I, BaseRNG >::get_max_delta ()
+
+inline
+
+ +

Definition at line 54 of file base_nuts.hpp.

+ +
+
+ +
+
+
+template<class M, class P, template< class, class > class H, template< class, class > class I, class BaseRNG>
+ + + + + +
+ + + + + + + +
int stan::mcmc::base_nuts< M, P, H, I, BaseRNG >::get_max_depth ()
+
+inline
+
+ +

Definition at line 53 of file base_nuts.hpp.

+ +
+
+ +
+
+
+template<class M, class P, template< class, class > class H, template< class, class > class I, class BaseRNG>
+ + + + + +
+ + + + + + + + +
void stan::mcmc::base_nuts< M, P, H, I, BaseRNG >::get_sampler_param_names (std::vector< std::string > & names)
+
+inlinevirtual
+
+ +

Reimplemented from stan::mcmc::base_mcmc.

+ +

Definition at line 164 of file base_nuts.hpp.

+ +
+
+ +
+
+
+template<class M, class P, template< class, class > class H, template< class, class > class I, class BaseRNG>
+ + + + + +
+ + + + + + + + +
void stan::mcmc::base_nuts< M, P, H, I, BaseRNG >::get_sampler_params (std::vector< double > & values)
+
+inlinevirtual
+
+ +

Reimplemented from stan::mcmc::base_mcmc.

+ +

Definition at line 171 of file base_nuts.hpp.

+ +
+
+ +
+
+
+template<class M, class P, template< class, class > class H, template< class, class > class I, class BaseRNG>
+ + + + + +
+ + + + + + + + +
void stan::mcmc::base_nuts< M, P, H, I, BaseRNG >::set_max_delta (const double d)
+
+inline
+
+ +

Definition at line 49 of file base_nuts.hpp.

+ +
+
+ +
+
+
+template<class M, class P, template< class, class > class H, template< class, class > class I, class BaseRNG>
+ + + + + +
+ + + + + + + + +
void stan::mcmc::base_nuts< M, P, H, I, BaseRNG >::set_max_depth (const int d)
+
+inline
+
+ +

Definition at line 44 of file base_nuts.hpp.

+ +
+
+ +
+
+
+template<class M, class P, template< class, class > class H, template< class, class > class I, class BaseRNG>
+ + + + + +
+ + + + + + + + +
sample stan::mcmc::base_nuts< M, P, H, I, BaseRNG >::transition (sampleinit_sample)
+
+inlinevirtual
+
+ +

Implements stan::mcmc::base_mcmc.

+ +

Definition at line 56 of file base_nuts.hpp.

+ +
+
+ +
+
+
+template<class M, class P, template< class, class > class H, template< class, class > class I, class BaseRNG>
+ + + + + +
+ + + + + + + + +
void stan::mcmc::base_nuts< M, P, H, I, BaseRNG >::write_sampler_param_names (std::ostream & o)
+
+inlinevirtual
+
+ +

Reimplemented from stan::mcmc::base_mcmc.

+ +

Definition at line 155 of file base_nuts.hpp.

+ +
+
+ +
+
+
+template<class M, class P, template< class, class > class H, template< class, class > class I, class BaseRNG>
+ + + + + +
+ + + + + + + + +
void stan::mcmc::base_nuts< M, P, H, I, BaseRNG >::write_sampler_params (std::ostream & o)
+
+inlinevirtual
+
+ +

Reimplemented from stan::mcmc::base_mcmc.

+ +

Definition at line 159 of file base_nuts.hpp.

+ +
+
+

Member Data Documentation

+ +
+
+
+template<class M, class P, template< class, class > class H, template< class, class > class I, class BaseRNG>
+ + + + +
int stan::mcmc::base_nuts< M, P, H, I, BaseRNG >::_depth
+
+ +

Definition at line 247 of file base_nuts.hpp.

+ +
+
+ +
+
+
+template<class M, class P, template< class, class > class H, template< class, class > class I, class BaseRNG>
+ + + + +
double stan::mcmc::base_nuts< M, P, H, I, BaseRNG >::_max_delta
+
+ +

Definition at line 249 of file base_nuts.hpp.

+ +
+
+ +
+
+
+template<class M, class P, template< class, class > class H, template< class, class > class I, class BaseRNG>
+ + + + +
int stan::mcmc::base_nuts< M, P, H, I, BaseRNG >::_max_depth
+
+ +

Definition at line 248 of file base_nuts.hpp.

+ +
+
+ +
+
+
+template<class M, class P, template< class, class > class H, template< class, class > class I, class BaseRNG>
+ + + + +
int stan::mcmc::base_nuts< M, P, H, I, BaseRNG >::_n_divergent
+
+ +

Definition at line 252 of file base_nuts.hpp.

+ +
+
+ +
+
+
+template<class M, class P, template< class, class > class H, template< class, class > class I, class BaseRNG>
+ + + + +
int stan::mcmc::base_nuts< M, P, H, I, BaseRNG >::_n_leapfrog
+
+ +

Definition at line 251 of file base_nuts.hpp.

+ +
+
+
The documentation for this class was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1mcmc_1_1base__nuts.png b/doc/api/html/classstan_1_1mcmc_1_1base__nuts.png new file mode 100644 index 0000000000000000000000000000000000000000..7e85e2dfa40bee98bc647498e68d2ba6d9175db5 GIT binary patch literal 1380 zcmb`HZA?>F7{@On;uty|Y)}K#XelBlh?fdBP!z#hC|Zk&<0XnZZc{6i7l8?(kP$kn zq)1D&1q-Vd#DO(HD+DayN~+?e%~}SdP%7a?kd`S_YDS^Ej+kZh+p?3KbDnda=gay3 z{?Fl1P7t@a>~H}9U<>JZ6cqp*P)J<1*%4W%N|<@b=1C!+j<(zFNH}YHms9cc4J7(& z_V)HVamLWdaq|`GiFg1h`Y?X&KYaiIHZGB(j-39^!7Li(j^ej%ydIZgxAQB8JKt(s zMRH!Kvx4H=5G-N)X1$MjAZI5synl?L-jHwwl^7y?oVOdoJl_uTrrvLXu3=WI+VQd4 z)V^}eAt^3C-7R1xqMbf&ADyuk7I6~Mx#sYn6vH@HsuwB0B6eV(zmzk+Dzh%|7krk@ z;_KJAO$o6YRiz}LLl0LP1dNbVIs$vvSpYu{=3*32-*wT2&sy)X(jioecSf4+1*9@q zE`mf2z27bo-dEqQ_NNx$PHE=h*vaGC0vp#LtBtd^Hr{!w*SH%A+`ICfCuzFLOw62% zbUcn{vA;A1Wj|EjlDd%aevD&0ub|zee?O~3cwat5VLS*2&`OWPfM*#BP!69N1mHf` z;t4GF5`ew1sn;zK;0hcvkgMGg;1%Tf5~(7>Kq!*h4*u7a=0H5-fp{pn~pweaU?_R?k?{6t6Zo7-)2)#XsW1c zyv~zh>{&JC>Atqs3eD4_ztbRWT|56YYH?GqIqCfK}y%!qkCe zNad@I0HGP&z618P?>WFA$XsmT!zajO}RKiNA6St%# zqDG=kUbuW9S05NGK$Yg^s4!aLA@$QA?mfa3dipV@P3k#^eWV_^E(omiSaPG>Ot|xow3VUSGviJQnwig)xqWa@N8?hFT}1eQ^)+!L)@Zsf^yj zStXojGK^#8qy-=OX9w5Yt+Oo67OpgY`w_Hy9kf4sxG=_`><+&o&PX13q1m;=Ever_ zkjV)P0;TM^)X6F~of0Y~++`I%FDH#)g9XCZ@S-(RgmR<5CSPnWEV6T!lNe(K(4$+- z9<(6Ani27=<&4HfJKseoPyGfP3i4axooa6yH1L)BqHmh{LZ#*%Vxv{?B6Jo^Kbj9Z z>6 + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::mcmc::base_static_hmc< M, P, H, I, BaseRNG > Member List
+
+
+ +

This is the complete list of members for stan::mcmc::base_static_hmc< M, P, H, I, BaseRNG >, including all inherited members.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
_epsilonstan::mcmc::base_hmc< M, P, H, I, BaseRNG >protected
_epsilon_jitterstan::mcmc::base_hmc< M, P, H, I, BaseRNG >protected
_err_streamstan::mcmc::base_mcmcprotected
_hamiltonianstan::mcmc::base_hmc< M, P, H, I, BaseRNG >protected
_integratorstan::mcmc::base_hmc< M, P, H, I, BaseRNG >protected
_namestan::mcmc::base_mcmcprotected
_nom_epsilonstan::mcmc::base_hmc< M, P, H, I, BaseRNG >protected
_out_streamstan::mcmc::base_mcmcprotected
_rand_intstan::mcmc::base_hmc< M, P, H, I, BaseRNG >protected
_rand_uniformstan::mcmc::base_hmc< M, P, H, I, BaseRNG >protected
_update_L()stan::mcmc::base_static_hmc< M, P, H, I, BaseRNG >inlineprotected
_zstan::mcmc::base_hmc< M, P, H, I, BaseRNG >protected
base_hmc(M &m, BaseRNG &rng, std::ostream *o, std::ostream *e)stan::mcmc::base_hmc< M, P, H, I, BaseRNG >inline
base_mcmc(std::ostream *o, std::ostream *e)stan::mcmc::base_mcmcinline
base_static_hmc(M &m, BaseRNG &rng, std::ostream *o, std::ostream *e)stan::mcmc::base_static_hmc< M, P, H, I, BaseRNG >inline
get_current_stepsize()stan::mcmc::base_hmc< M, P, H, I, BaseRNG >inline
get_L()stan::mcmc::base_static_hmc< M, P, H, I, BaseRNG >inline
get_nominal_stepsize()stan::mcmc::base_hmc< M, P, H, I, BaseRNG >inline
get_sampler_diagnostic_names(std::vector< std::string > &model_names, std::vector< std::string > &names)stan::mcmc::base_hmc< M, P, H, I, BaseRNG >inlinevirtual
get_sampler_diagnostics(std::vector< double > &values)stan::mcmc::base_hmc< M, P, H, I, BaseRNG >inlinevirtual
get_sampler_param_names(std::vector< std::string > &names)stan::mcmc::base_static_hmc< M, P, H, I, BaseRNG >inlinevirtual
get_sampler_params(std::vector< double > &values)stan::mcmc::base_static_hmc< M, P, H, I, BaseRNG >inlinevirtual
get_stepsize_jitter()stan::mcmc::base_hmc< M, P, H, I, BaseRNG >inline
get_T()stan::mcmc::base_static_hmc< M, P, H, I, BaseRNG >inline
init_stepsize()stan::mcmc::base_hmc< M, P, H, I, BaseRNG >inline
L_stan::mcmc::base_static_hmc< M, P, H, I, BaseRNG >protected
name()stan::mcmc::base_mcmcinline
sample_stepsize()stan::mcmc::base_hmc< M, P, H, I, BaseRNG >inline
seed(const Eigen::VectorXd &q)stan::mcmc::base_hmc< M, P, H, I, BaseRNG >inline
set_nominal_stepsize(const double e)stan::mcmc::base_static_hmc< M, P, H, I, BaseRNG >inlinevirtual
set_nominal_stepsize_and_L(const double e, const int l)stan::mcmc::base_static_hmc< M, P, H, I, BaseRNG >inline
set_nominal_stepsize_and_T(const double e, const double t)stan::mcmc::base_static_hmc< M, P, H, I, BaseRNG >inline
set_stepsize_jitter(const double j)stan::mcmc::base_hmc< M, P, H, I, BaseRNG >inlinevirtual
set_T(const double t)stan::mcmc::base_static_hmc< M, P, H, I, BaseRNG >inline
T_stan::mcmc::base_static_hmc< M, P, H, I, BaseRNG >protected
transition(sample &init_sample)stan::mcmc::base_static_hmc< M, P, H, I, BaseRNG >inlinevirtual
write_sampler_param_names(std::ostream &o)stan::mcmc::base_static_hmc< M, P, H, I, BaseRNG >inlinevirtual
write_sampler_params(std::ostream &o)stan::mcmc::base_static_hmc< M, P, H, I, BaseRNG >inlinevirtual
write_sampler_state(std::ostream *o)stan::mcmc::base_hmc< M, P, H, I, BaseRNG >inlinevirtual
z()stan::mcmc::base_hmc< M, P, H, I, BaseRNG >inline
~base_mcmc()stan::mcmc::base_mcmcinlinevirtual
~base_static_hmc()stan::mcmc::base_static_hmc< M, P, H, I, BaseRNG >inline
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1mcmc_1_1base__static__hmc.html b/doc/api/html/classstan_1_1mcmc_1_1base__static__hmc.html new file mode 100644 index 00000000000..43804aa5ff8 --- /dev/null +++ b/doc/api/html/classstan_1_1mcmc_1_1base__static__hmc.html @@ -0,0 +1,726 @@ + + + + + +Stan: stan::mcmc::base_static_hmc< M, P, H, I, BaseRNG > Class Template Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::mcmc::base_static_hmc< M, P, H, I, BaseRNG > Class Template Reference
+
+
+ +

#include <base_static_hmc.hpp>

+
+Inheritance diagram for stan::mcmc::base_static_hmc< M, P, H, I, BaseRNG >:
+
+
+ + +stan::mcmc::base_hmc< M, P, H, I, BaseRNG > +stan::mcmc::base_mcmc + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 base_static_hmc (M &m, BaseRNG &rng, std::ostream *o, std::ostream *e)
 
 ~base_static_hmc ()
 
sample transition (sample &init_sample)
 
void write_sampler_param_names (std::ostream &o)
 
void write_sampler_params (std::ostream &o)
 
void get_sampler_param_names (std::vector< std::string > &names)
 
void get_sampler_params (std::vector< double > &values)
 
void set_nominal_stepsize_and_T (const double e, const double t)
 
void set_nominal_stepsize_and_L (const double e, const int l)
 
void set_T (const double t)
 
void set_nominal_stepsize (const double e)
 
double get_T ()
 
int get_L ()
 
- Public Member Functions inherited from stan::mcmc::base_hmc< M, P, H, I, BaseRNG >
 base_hmc (M &m, BaseRNG &rng, std::ostream *o, std::ostream *e)
 
void write_sampler_state (std::ostream *o)
 
void get_sampler_diagnostic_names (std::vector< std::string > &model_names, std::vector< std::string > &names)
 
void get_sampler_diagnostics (std::vector< double > &values)
 
void seed (const Eigen::VectorXd &q)
 
void init_stepsize ()
 
P & z ()
 
double get_nominal_stepsize ()
 
double get_current_stepsize ()
 
virtual void set_stepsize_jitter (const double j)
 
double get_stepsize_jitter ()
 
void sample_stepsize ()
 
- Public Member Functions inherited from stan::mcmc::base_mcmc
 base_mcmc (std::ostream *o, std::ostream *e)
 
virtual ~base_mcmc ()
 
std::string name ()
 
+ + + +

+Protected Member Functions

void _update_L ()
 
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Protected Attributes

double T_
 
int L_
 
- Protected Attributes inherited from stan::mcmc::base_hmc< M, P, H, I, BaseRNG >
_z
 
I< H< M, BaseRNG >, P > _integrator
 
H< M, BaseRNG > _hamiltonian
 
BaseRNG & _rand_int
 
boost::uniform_01< BaseRNG & > _rand_uniform
 
double _nom_epsilon
 
double _epsilon
 
double _epsilon_jitter
 
- Protected Attributes inherited from stan::mcmc::base_mcmc
std::string _name
 
std::ostream * _out_stream
 
std::ostream * _err_stream
 
+

Detailed Description

+

template<class M, class P, template< class, class > class H, template< class, class > class I, class BaseRNG>
+class stan::mcmc::base_static_hmc< M, P, H, I, BaseRNG >

+ + +

Definition at line 18 of file base_static_hmc.hpp.

+

Constructor & Destructor Documentation

+ +
+
+
+template<class M, class P, template< class, class > class H, template< class, class > class I, class BaseRNG>
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
stan::mcmc::base_static_hmc< M, P, H, I, BaseRNG >::base_static_hmc (M & m,
BaseRNG & rng,
std::ostream * o,
std::ostream * e 
)
+
+inline
+
+ +

Definition at line 22 of file base_static_hmc.hpp.

+ +
+
+ +
+
+
+template<class M, class P, template< class, class > class H, template< class, class > class I, class BaseRNG>
+ + + + + +
+ + + + + + + +
stan::mcmc::base_static_hmc< M, P, H, I, BaseRNG >::~base_static_hmc ()
+
+inline
+
+ +

Definition at line 26 of file base_static_hmc.hpp.

+ +
+
+

Member Function Documentation

+ +
+
+
+template<class M, class P, template< class, class > class H, template< class, class > class I, class BaseRNG>
+ + + + + +
+ + + + + + + +
void stan::mcmc::base_static_hmc< M, P, H, I, BaseRNG >::_update_L ()
+
+inlineprotected
+
+ +

Definition at line 111 of file base_static_hmc.hpp.

+ +
+
+ +
+
+
+template<class M, class P, template< class, class > class H, template< class, class > class I, class BaseRNG>
+ + + + + +
+ + + + + + + +
int stan::mcmc::base_static_hmc< M, P, H, I, BaseRNG >::get_L ()
+
+inline
+
+ +

Definition at line 104 of file base_static_hmc.hpp.

+ +
+
+ +
+
+
+template<class M, class P, template< class, class > class H, template< class, class > class I, class BaseRNG>
+ + + + + +
+ + + + + + + + +
void stan::mcmc::base_static_hmc< M, P, H, I, BaseRNG >::get_sampler_param_names (std::vector< std::string > & names)
+
+inlinevirtual
+
+ +

Reimplemented from stan::mcmc::base_mcmc.

+ +

Definition at line 68 of file base_static_hmc.hpp.

+ +
+
+ +
+
+
+template<class M, class P, template< class, class > class H, template< class, class > class I, class BaseRNG>
+ + + + + +
+ + + + + + + + +
void stan::mcmc::base_static_hmc< M, P, H, I, BaseRNG >::get_sampler_params (std::vector< double > & values)
+
+inlinevirtual
+
+ +

Reimplemented from stan::mcmc::base_mcmc.

+ +

Definition at line 73 of file base_static_hmc.hpp.

+ +
+
+ +
+
+
+template<class M, class P, template< class, class > class H, template< class, class > class I, class BaseRNG>
+ + + + + +
+ + + + + + + +
double stan::mcmc::base_static_hmc< M, P, H, I, BaseRNG >::get_T ()
+
+inline
+
+ +

Definition at line 103 of file base_static_hmc.hpp.

+ +
+
+ +
+
+
+template<class M, class P, template< class, class > class H, template< class, class > class I, class BaseRNG>
+ + + + + +
+ + + + + + + + +
void stan::mcmc::base_static_hmc< M, P, H, I, BaseRNG >::set_nominal_stepsize (const double e)
+
+inlinevirtual
+
+ +

Reimplemented from stan::mcmc::base_hmc< M, P, H, I, BaseRNG >.

+ +

Definition at line 97 of file base_static_hmc.hpp.

+ +
+
+ +
+
+
+template<class M, class P, template< class, class > class H, template< class, class > class I, class BaseRNG>
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
void stan::mcmc::base_static_hmc< M, P, H, I, BaseRNG >::set_nominal_stepsize_and_L (const double e,
const int l 
)
+
+inline
+
+ +

Definition at line 84 of file base_static_hmc.hpp.

+ +
+
+ +
+
+
+template<class M, class P, template< class, class > class H, template< class, class > class I, class BaseRNG>
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
void stan::mcmc::base_static_hmc< M, P, H, I, BaseRNG >::set_nominal_stepsize_and_T (const double e,
const double t 
)
+
+inline
+
+ +

Definition at line 78 of file base_static_hmc.hpp.

+ +
+
+ +
+
+
+template<class M, class P, template< class, class > class H, template< class, class > class I, class BaseRNG>
+ + + + + +
+ + + + + + + + +
void stan::mcmc::base_static_hmc< M, P, H, I, BaseRNG >::set_T (const double t)
+
+inline
+
+ +

Definition at line 90 of file base_static_hmc.hpp.

+ +
+
+ +
+
+
+template<class M, class P, template< class, class > class H, template< class, class > class I, class BaseRNG>
+ + + + + +
+ + + + + + + + +
sample stan::mcmc::base_static_hmc< M, P, H, I, BaseRNG >::transition (sampleinit_sample)
+
+inlinevirtual
+
+ +

Implements stan::mcmc::base_mcmc.

+ +

Definition at line 28 of file base_static_hmc.hpp.

+ +
+
+ +
+
+
+template<class M, class P, template< class, class > class H, template< class, class > class I, class BaseRNG>
+ + + + + +
+ + + + + + + + +
void stan::mcmc::base_static_hmc< M, P, H, I, BaseRNG >::write_sampler_param_names (std::ostream & o)
+
+inlinevirtual
+
+ +

Reimplemented from stan::mcmc::base_mcmc.

+ +

Definition at line 60 of file base_static_hmc.hpp.

+ +
+
+ +
+
+
+template<class M, class P, template< class, class > class H, template< class, class > class I, class BaseRNG>
+ + + + + +
+ + + + + + + + +
void stan::mcmc::base_static_hmc< M, P, H, I, BaseRNG >::write_sampler_params (std::ostream & o)
+
+inlinevirtual
+
+ +

Reimplemented from stan::mcmc::base_mcmc.

+ +

Definition at line 64 of file base_static_hmc.hpp.

+ +
+
+

Member Data Documentation

+ +
+
+
+template<class M, class P, template< class, class > class H, template< class, class > class I, class BaseRNG>
+ + + + + +
+ + + + +
int stan::mcmc::base_static_hmc< M, P, H, I, BaseRNG >::L_
+
+protected
+
+ +

Definition at line 109 of file base_static_hmc.hpp.

+ +
+
+ +
+
+
+template<class M, class P, template< class, class > class H, template< class, class > class I, class BaseRNG>
+ + + + + +
+ + + + +
double stan::mcmc::base_static_hmc< M, P, H, I, BaseRNG >::T_
+
+protected
+
+ +

Definition at line 108 of file base_static_hmc.hpp.

+ +
+
+
The documentation for this class was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1mcmc_1_1base__static__hmc.png b/doc/api/html/classstan_1_1mcmc_1_1base__static__hmc.png new file mode 100644 index 0000000000000000000000000000000000000000..087f3ba7d1e956922c9cb4da77ae5136e5cdca17 GIT binary patch literal 1453 zcmbu9Yfw{16vuC*BtiiZ>y%b`Obum}AyyO-LPQkA7(t{FuwVqMRS6A*m`TH}Kt&6p zQ4BAOf-jyy2$IBr;UW(Q1vC^jCcNUKK!`~Q1-%hsNH3js#?#%A~ch326_Wb_4 zr^3TRY^^`H1^~d8xGg9G08j)(XD_rs)@$AmhLO!NdFN3u00n~f6ms{ zR?AaEF354=(TK3G0VHXD$hyg10AT4)3<@OwfYO!3q-b32EiZ1_4c{5jjCYY5eoSq)2b@di7cTXl0zl~JWE_vgM&Nc&EO^Je*V7d)ZF)Gikrydoi8&?&Xsr& z%^vCfN-|#Ad>gC25RDY<0Ast{{(UJLoFetT@2k3pdK=dQEC4d=F>zCGmd*nH?amop zp_Flp`h_5{@r7Nhn-9fT#~4ETN9?);p8Rc)+X#M>-w$Mojdxc6~$G^-UcW3p=X zUZ(*(TQ-|0y~A!^r(X*`o2lT}r(N2=K-@WZ6|M8+HAi{#vgro-;4+&70&y`I2VGKJ zT;i!NJSW)qSXh(Al&G(jnO312x2_u|#b|_-xTJNtcsR^3*#sT4*9mLZ{Dq3ImaL=} zvgd(}UH(`_!RNjl^0-l`4}e)os=B69f!HqDWG;mwJ6dj@JKLkdi=FPT?|cOu86iE& znCA6)(t9bp9~E=x2X)W`CffvGbOgTU4_Z_;?oaw9s9NOE{EtY-TpS$x~7kE0iZFeBeGh`ViU;IpKxfu!bC`>dP#Nh`};%k!O8F4%w!N7*yyBIIuch{0h&b(`ak{{i*U B+s6O^ literal 0 HcmV?d00001 diff --git a/doc/api/html/classstan_1_1mcmc_1_1chains-members.html b/doc/api/html/classstan_1_1mcmc_1_1chains-members.html new file mode 100644 index 00000000000..9bfbd68ad5b --- /dev/null +++ b/doc/api/html/classstan_1_1mcmc_1_1chains-members.html @@ -0,0 +1,174 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::mcmc::chains< RNG > Member List
+
+
+ +

This is the complete list of members for stan::mcmc::chains< RNG >, including all inherited members.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
add(const int chain, const Eigen::MatrixXd &sample)stan::mcmc::chains< RNG >inline
add(const Eigen::MatrixXd &sample)stan::mcmc::chains< RNG >inline
add(const stan::io::stan_csv &stan_csv)stan::mcmc::chains< RNG >inline
autocorrelation(const int chain, const int index)stan::mcmc::chains< RNG >inline
autocorrelation(const int chain, const std::string &name)stan::mcmc::chains< RNG >inline
autocovariance(const int chain, const int index)stan::mcmc::chains< RNG >inline
autocovariance(const int chain, const std::string &name)stan::mcmc::chains< RNG >inline
central_interval(const int chain, const int index, const double prob)stan::mcmc::chains< RNG >inline
central_interval(const int index, const double prob)stan::mcmc::chains< RNG >inline
central_interval(const int chain, const std::string &name, const double prob)stan::mcmc::chains< RNG >inline
central_interval(const std::string &name, const double prob)stan::mcmc::chains< RNG >inline
chains(const Eigen::Matrix< std::string, Eigen::Dynamic, 1 > &param_names)stan::mcmc::chains< RNG >inline
chains(const stan::io::stan_csv &stan_csv)stan::mcmc::chains< RNG >inline
correlation(const int chain, const int index1, const int index2)stan::mcmc::chains< RNG >inline
correlation(const int index1, const int index2)stan::mcmc::chains< RNG >inline
correlation(const int chain, const std::string &name1, const std::string &name2)stan::mcmc::chains< RNG >inline
correlation(const std::string &name1, const std::string &name2)stan::mcmc::chains< RNG >inline
covariance(const int chain, const int index1, const int index2)stan::mcmc::chains< RNG >inline
covariance(const int index1, const int index2)stan::mcmc::chains< RNG >inline
covariance(const int chain, const std::string &name1, const std::string &name2)stan::mcmc::chains< RNG >inline
covariance(const std::string &name1, const std::string &name2)stan::mcmc::chains< RNG >inline
effective_sample_size(const int index)stan::mcmc::chains< RNG >inline
effective_sample_size(const std::string &name)stan::mcmc::chains< RNG >inline
index(const std::string &name)stan::mcmc::chains< RNG >inline
mean(const int chain, const int index)stan::mcmc::chains< RNG >inline
mean(const int index)stan::mcmc::chains< RNG >inline
mean(const int chain, const std::string &name)stan::mcmc::chains< RNG >inline
mean(const std::string &name)stan::mcmc::chains< RNG >inline
num_chains()stan::mcmc::chains< RNG >inline
num_kept_samples(const int chain)stan::mcmc::chains< RNG >inline
num_kept_samples()stan::mcmc::chains< RNG >inline
num_params()stan::mcmc::chains< RNG >inline
num_samples(const int chain)stan::mcmc::chains< RNG >inline
num_samples()stan::mcmc::chains< RNG >inline
param_name(int j)stan::mcmc::chains< RNG >inline
param_names()stan::mcmc::chains< RNG >inline
quantile(const int chain, const int index, const double prob)stan::mcmc::chains< RNG >inline
quantile(const int index, const double prob)stan::mcmc::chains< RNG >inline
quantile(const int chain, const std::string &name, const double prob)stan::mcmc::chains< RNG >inline
quantile(const std::string &name, const double prob)stan::mcmc::chains< RNG >inline
quantiles(const int chain, const int index, const Eigen::VectorXd &probs)stan::mcmc::chains< RNG >inline
quantiles(const int index, const Eigen::VectorXd &probs)stan::mcmc::chains< RNG >inline
quantiles(const int chain, const std::string &name, const Eigen::VectorXd &probs)stan::mcmc::chains< RNG >inline
quantiles(const std::string &name, const Eigen::VectorXd &probs)stan::mcmc::chains< RNG >inline
samples(const int chain, const int index)stan::mcmc::chains< RNG >inline
samples(const int index)stan::mcmc::chains< RNG >inline
samples(const int chain, const std::string &name)stan::mcmc::chains< RNG >inline
samples(const std::string &name)stan::mcmc::chains< RNG >inline
sd(const int chain, const int index)stan::mcmc::chains< RNG >inline
sd(const int index)stan::mcmc::chains< RNG >inline
sd(const int chain, const std::string &name)stan::mcmc::chains< RNG >inline
sd(const std::string &name)stan::mcmc::chains< RNG >inline
set_warmup(const int chain, const int warmup)stan::mcmc::chains< RNG >inline
set_warmup(const int warmup)stan::mcmc::chains< RNG >inline
split_potential_scale_reduction(const int index)stan::mcmc::chains< RNG >inline
split_potential_scale_reduction(const std::string &name)stan::mcmc::chains< RNG >inline
variance(const int chain, const int index)stan::mcmc::chains< RNG >inline
variance(const int index)stan::mcmc::chains< RNG >inline
variance(const int chain, const std::string &name)stan::mcmc::chains< RNG >inline
variance(const std::string &name)stan::mcmc::chains< RNG >inline
warmup()stan::mcmc::chains< RNG >inline
warmup(const int chain)stan::mcmc::chains< RNG >inline
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1mcmc_1_1chains.html b/doc/api/html/classstan_1_1mcmc_1_1chains.html new file mode 100644 index 00000000000..bb89f2347e4 --- /dev/null +++ b/doc/api/html/classstan_1_1mcmc_1_1chains.html @@ -0,0 +1,2390 @@ + + + + + +Stan: stan::mcmc::chains< RNG > Class Template Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::mcmc::chains< RNG > Class Template Reference
+
+
+ +

An mcmc::chains object stores parameter names and dimensionalities along with samples from multiple chains. + More...

+ +

#include <chains.hpp>

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 chains (const Eigen::Matrix< std::string, Eigen::Dynamic, 1 > &param_names)
 
 chains (const stan::io::stan_csv &stan_csv)
 
const int num_chains ()
 
const int num_params ()
 
const Eigen::Matrix
+< std::string, Eigen::Dynamic, 1 > & 
param_names ()
 
const std::string & param_name (int j)
 
const int index (const std::string &name)
 
void set_warmup (const int chain, const int warmup)
 
void set_warmup (const int warmup)
 
const Eigen::VectorXi & warmup ()
 
const int warmup (const int chain)
 
const int num_samples (const int chain)
 
const int num_samples ()
 
const int num_kept_samples (const int chain)
 
const int num_kept_samples ()
 
void add (const int chain, const Eigen::MatrixXd &sample)
 
void add (const Eigen::MatrixXd &sample)
 
void add (const stan::io::stan_csv &stan_csv)
 
Eigen::VectorXd samples (const int chain, const int index)
 
Eigen::VectorXd samples (const int index)
 
Eigen::VectorXd samples (const int chain, const std::string &name)
 
Eigen::VectorXd samples (const std::string &name)
 
double mean (const int chain, const int index)
 
double mean (const int index)
 
double mean (const int chain, const std::string &name)
 
double mean (const std::string &name)
 
double sd (const int chain, const int index)
 
double sd (const int index)
 
double sd (const int chain, const std::string &name)
 
double sd (const std::string &name)
 
double variance (const int chain, const int index)
 
double variance (const int index)
 
double variance (const int chain, const std::string &name)
 
double variance (const std::string &name)
 
double covariance (const int chain, const int index1, const int index2)
 
double covariance (const int index1, const int index2)
 
double covariance (const int chain, const std::string &name1, const std::string &name2)
 
double covariance (const std::string &name1, const std::string &name2)
 
double correlation (const int chain, const int index1, const int index2)
 
double correlation (const int index1, const int index2)
 
double correlation (const int chain, const std::string &name1, const std::string &name2)
 
double correlation (const std::string &name1, const std::string &name2)
 
double quantile (const int chain, const int index, const double prob)
 
double quantile (const int index, const double prob)
 
double quantile (const int chain, const std::string &name, const double prob)
 
double quantile (const std::string &name, const double prob)
 
Eigen::VectorXd quantiles (const int chain, const int index, const Eigen::VectorXd &probs)
 
Eigen::VectorXd quantiles (const int index, const Eigen::VectorXd &probs)
 
Eigen::VectorXd quantiles (const int chain, const std::string &name, const Eigen::VectorXd &probs)
 
Eigen::VectorXd quantiles (const std::string &name, const Eigen::VectorXd &probs)
 
Eigen::Vector2d central_interval (const int chain, const int index, const double prob)
 
Eigen::Vector2d central_interval (const int index, const double prob)
 
Eigen::Vector2d central_interval (const int chain, const std::string &name, const double prob)
 
Eigen::Vector2d central_interval (const std::string &name, const double prob)
 
Eigen::VectorXd autocorrelation (const int chain, const int index)
 
Eigen::VectorXd autocorrelation (const int chain, const std::string &name)
 
Eigen::VectorXd autocovariance (const int chain, const int index)
 
Eigen::VectorXd autocovariance (const int chain, const std::string &name)
 
double effective_sample_size (const int index)
 
double effective_sample_size (const std::string &name)
 
double split_potential_scale_reduction (const int index)
 
double split_potential_scale_reduction (const std::string &name)
 
+

Detailed Description

+

template<typename RNG = boost::random::ecuyer1988>
+class stan::mcmc::chains< RNG >

+ +

An mcmc::chains object stores parameter names and dimensionalities along with samples from multiple chains.

+

Synchronization: For arbitrary concurrent use, the read and write methods need to be read/write locked. Multiple writers can be used concurrently if they write to different chains. Readers for single chains need only be read/write locked with writers of that chain. For reading across chains, full read/write locking is required. Thus methods will be classified as global or single-chain read or write methods.

+

Storage Order: Storage is column/last-index major.

+ +

Definition at line 55 of file chains.hpp.

+

Constructor & Destructor Documentation

+ +
+
+
+template<typename RNG = boost::random::ecuyer1988>
+ + + + + +
+ + + + + + + + +
stan::mcmc::chains< RNG >::chains (const Eigen::Matrix< std::string, Eigen::Dynamic, 1 > & param_names)
+
+inline
+
+ +

Definition at line 307 of file chains.hpp.

+ +
+
+ +
+
+
+template<typename RNG = boost::random::ecuyer1988>
+ + + + + +
+ + + + + + + + +
stan::mcmc::chains< RNG >::chains (const stan::io::stan_csvstan_csv)
+
+inline
+
+ +

Definition at line 310 of file chains.hpp.

+ +
+
+

Member Function Documentation

+ +
+
+
+template<typename RNG = boost::random::ecuyer1988>
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
void stan::mcmc::chains< RNG >::add (const int chain,
const Eigen::MatrixXd & sample 
)
+
+inline
+
+ +

Definition at line 378 of file chains.hpp.

+ +
+
+ +
+
+
+template<typename RNG = boost::random::ecuyer1988>
+ + + + + +
+ + + + + + + + +
void stan::mcmc::chains< RNG >::add (const Eigen::MatrixXd & sample)
+
+inline
+
+ +

Definition at line 410 of file chains.hpp.

+ +
+
+ +
+
+
+template<typename RNG = boost::random::ecuyer1988>
+ + + + + +
+ + + + + + + + +
void stan::mcmc::chains< RNG >::add (const stan::io::stan_csvstan_csv)
+
+inline
+
+ +

Definition at line 418 of file chains.hpp.

+ +
+
+ +
+
+
+template<typename RNG = boost::random::ecuyer1988>
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
Eigen::VectorXd stan::mcmc::chains< RNG >::autocorrelation (const int chain,
const int index 
)
+
+inline
+
+ +

Definition at line 592 of file chains.hpp.

+ +
+
+ +
+
+
+template<typename RNG = boost::random::ecuyer1988>
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
Eigen::VectorXd stan::mcmc::chains< RNG >::autocorrelation (const int chain,
const std::string & name 
)
+
+inline
+
+ +

Definition at line 596 of file chains.hpp.

+ +
+
+ +
+
+
+template<typename RNG = boost::random::ecuyer1988>
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
Eigen::VectorXd stan::mcmc::chains< RNG >::autocovariance (const int chain,
const int index 
)
+
+inline
+
+ +

Definition at line 600 of file chains.hpp.

+ +
+
+ +
+
+
+template<typename RNG = boost::random::ecuyer1988>
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
Eigen::VectorXd stan::mcmc::chains< RNG >::autocovariance (const int chain,
const std::string & name 
)
+
+inline
+
+ +

Definition at line 604 of file chains.hpp.

+ +
+
+ +
+
+
+template<typename RNG = boost::random::ecuyer1988>
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
Eigen::Vector2d stan::mcmc::chains< RNG >::central_interval (const int chain,
const int index,
const double prob 
)
+
+inline
+
+ +

Definition at line 565 of file chains.hpp.

+ +
+
+ +
+
+
+template<typename RNG = boost::random::ecuyer1988>
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
Eigen::Vector2d stan::mcmc::chains< RNG >::central_interval (const int index,
const double prob 
)
+
+inline
+
+ +

Definition at line 574 of file chains.hpp.

+ +
+
+ +
+
+
+template<typename RNG = boost::random::ecuyer1988>
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
Eigen::Vector2d stan::mcmc::chains< RNG >::central_interval (const int chain,
const std::string & name,
const double prob 
)
+
+inline
+
+ +

Definition at line 583 of file chains.hpp.

+ +
+
+ +
+
+
+template<typename RNG = boost::random::ecuyer1988>
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
Eigen::Vector2d stan::mcmc::chains< RNG >::central_interval (const std::string & name,
const double prob 
)
+
+inline
+
+ +

Definition at line 588 of file chains.hpp.

+ +
+
+ +
+
+
+template<typename RNG = boost::random::ecuyer1988>
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
double stan::mcmc::chains< RNG >::correlation (const int chain,
const int index1,
const int index2 
)
+
+inline
+
+ +

Definition at line 516 of file chains.hpp.

+ +
+
+ +
+
+
+template<typename RNG = boost::random::ecuyer1988>
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
double stan::mcmc::chains< RNG >::correlation (const int index1,
const int index2 
)
+
+inline
+
+ +

Definition at line 520 of file chains.hpp.

+ +
+
+ +
+
+
+template<typename RNG = boost::random::ecuyer1988>
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
double stan::mcmc::chains< RNG >::correlation (const int chain,
const std::string & name1,
const std::string & name2 
)
+
+inline
+
+ +

Definition at line 524 of file chains.hpp.

+ +
+
+ +
+
+
+template<typename RNG = boost::random::ecuyer1988>
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
double stan::mcmc::chains< RNG >::correlation (const std::string & name1,
const std::string & name2 
)
+
+inline
+
+ +

Definition at line 528 of file chains.hpp.

+ +
+
+ +
+
+
+template<typename RNG = boost::random::ecuyer1988>
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
double stan::mcmc::chains< RNG >::covariance (const int chain,
const int index1,
const int index2 
)
+
+inline
+
+ +

Definition at line 500 of file chains.hpp.

+ +
+
+ +
+
+
+template<typename RNG = boost::random::ecuyer1988>
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
double stan::mcmc::chains< RNG >::covariance (const int index1,
const int index2 
)
+
+inline
+
+ +

Definition at line 504 of file chains.hpp.

+ +
+
+ +
+
+
+template<typename RNG = boost::random::ecuyer1988>
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
double stan::mcmc::chains< RNG >::covariance (const int chain,
const std::string & name1,
const std::string & name2 
)
+
+inline
+
+ +

Definition at line 508 of file chains.hpp.

+ +
+
+ +
+
+
+template<typename RNG = boost::random::ecuyer1988>
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
double stan::mcmc::chains< RNG >::covariance (const std::string & name1,
const std::string & name2 
)
+
+inline
+
+ +

Definition at line 512 of file chains.hpp.

+ +
+
+ +
+
+
+template<typename RNG = boost::random::ecuyer1988>
+ + + + + +
+ + + + + + + + +
double stan::mcmc::chains< RNG >::effective_sample_size (const int index)
+
+inline
+
+ +

Definition at line 609 of file chains.hpp.

+ +
+
+ +
+
+
+template<typename RNG = boost::random::ecuyer1988>
+ + + + + +
+ + + + + + + + +
double stan::mcmc::chains< RNG >::effective_sample_size (const std::string & name)
+
+inline
+
+ +

Definition at line 617 of file chains.hpp.

+ +
+
+ +
+
+
+template<typename RNG = boost::random::ecuyer1988>
+ + + + + +
+ + + + + + + + +
const int stan::mcmc::chains< RNG >::index (const std::string & name)
+
+inline
+
+ +

Definition at line 332 of file chains.hpp.

+ +
+
+ +
+
+
+template<typename RNG = boost::random::ecuyer1988>
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
double stan::mcmc::chains< RNG >::mean (const int chain,
const int index 
)
+
+inline
+
+ +

Definition at line 452 of file chains.hpp.

+ +
+
+ +
+
+
+template<typename RNG = boost::random::ecuyer1988>
+ + + + + +
+ + + + + + + + +
double stan::mcmc::chains< RNG >::mean (const int index)
+
+inline
+
+ +

Definition at line 456 of file chains.hpp.

+ +
+
+ +
+
+
+template<typename RNG = boost::random::ecuyer1988>
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
double stan::mcmc::chains< RNG >::mean (const int chain,
const std::string & name 
)
+
+inline
+
+ +

Definition at line 460 of file chains.hpp.

+ +
+
+ +
+
+
+template<typename RNG = boost::random::ecuyer1988>
+ + + + + +
+ + + + + + + + +
double stan::mcmc::chains< RNG >::mean (const std::string & name)
+
+inline
+
+ +

Definition at line 464 of file chains.hpp.

+ +
+
+ +
+
+
+template<typename RNG = boost::random::ecuyer1988>
+ + + + + +
+ + + + + + + +
const int stan::mcmc::chains< RNG >::num_chains ()
+
+inline
+
+ +

Definition at line 316 of file chains.hpp.

+ +
+
+ +
+
+
+template<typename RNG = boost::random::ecuyer1988>
+ + + + + +
+ + + + + + + + +
const int stan::mcmc::chains< RNG >::num_kept_samples (const int chain)
+
+inline
+
+ +

Definition at line 367 of file chains.hpp.

+ +
+
+ +
+
+
+template<typename RNG = boost::random::ecuyer1988>
+ + + + + +
+ + + + + + + +
const int stan::mcmc::chains< RNG >::num_kept_samples ()
+
+inline
+
+ +

Definition at line 371 of file chains.hpp.

+ +
+
+ +
+
+
+template<typename RNG = boost::random::ecuyer1988>
+ + + + + +
+ + + + + + + +
const int stan::mcmc::chains< RNG >::num_params ()
+
+inline
+
+ +

Definition at line 320 of file chains.hpp.

+ +
+
+ +
+
+
+template<typename RNG = boost::random::ecuyer1988>
+ + + + + +
+ + + + + + + + +
const int stan::mcmc::chains< RNG >::num_samples (const int chain)
+
+inline
+
+ +

Definition at line 356 of file chains.hpp.

+ +
+
+ +
+
+
+template<typename RNG = boost::random::ecuyer1988>
+ + + + + +
+ + + + + + + +
const int stan::mcmc::chains< RNG >::num_samples ()
+
+inline
+
+ +

Definition at line 360 of file chains.hpp.

+ +
+
+ +
+
+
+template<typename RNG = boost::random::ecuyer1988>
+ + + + + +
+ + + + + + + + +
const std::string& stan::mcmc::chains< RNG >::param_name (int j)
+
+inline
+
+ +

Definition at line 328 of file chains.hpp.

+ +
+
+ +
+
+
+template<typename RNG = boost::random::ecuyer1988>
+ + + + + +
+ + + + + + + +
const Eigen::Matrix<std::string, Eigen::Dynamic, 1>& stan::mcmc::chains< RNG >::param_names ()
+
+inline
+
+ +

Definition at line 324 of file chains.hpp.

+ +
+
+ +
+
+
+template<typename RNG = boost::random::ecuyer1988>
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
double stan::mcmc::chains< RNG >::quantile (const int chain,
const int index,
const double prob 
)
+
+inline
+
+ +

Definition at line 532 of file chains.hpp.

+ +
+
+ +
+
+
+template<typename RNG = boost::random::ecuyer1988>
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
double stan::mcmc::chains< RNG >::quantile (const int index,
const double prob 
)
+
+inline
+
+ +

Definition at line 536 of file chains.hpp.

+ +
+
+ +
+
+
+template<typename RNG = boost::random::ecuyer1988>
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
double stan::mcmc::chains< RNG >::quantile (const int chain,
const std::string & name,
const double prob 
)
+
+inline
+
+ +

Definition at line 540 of file chains.hpp.

+ +
+
+ +
+
+
+template<typename RNG = boost::random::ecuyer1988>
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
double stan::mcmc::chains< RNG >::quantile (const std::string & name,
const double prob 
)
+
+inline
+
+ +

Definition at line 544 of file chains.hpp.

+ +
+
+ +
+
+
+template<typename RNG = boost::random::ecuyer1988>
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
Eigen::VectorXd stan::mcmc::chains< RNG >::quantiles (const int chain,
const int index,
const Eigen::VectorXd & probs 
)
+
+inline
+
+ +

Definition at line 548 of file chains.hpp.

+ +
+
+ +
+
+
+template<typename RNG = boost::random::ecuyer1988>
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
Eigen::VectorXd stan::mcmc::chains< RNG >::quantiles (const int index,
const Eigen::VectorXd & probs 
)
+
+inline
+
+ +

Definition at line 552 of file chains.hpp.

+ +
+
+ +
+
+
+template<typename RNG = boost::random::ecuyer1988>
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
Eigen::VectorXd stan::mcmc::chains< RNG >::quantiles (const int chain,
const std::string & name,
const Eigen::VectorXd & probs 
)
+
+inline
+
+ +

Definition at line 556 of file chains.hpp.

+ +
+
+ +
+
+
+template<typename RNG = boost::random::ecuyer1988>
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
Eigen::VectorXd stan::mcmc::chains< RNG >::quantiles (const std::string & name,
const Eigen::VectorXd & probs 
)
+
+inline
+
+ +

Definition at line 561 of file chains.hpp.

+ +
+
+ +
+
+
+template<typename RNG = boost::random::ecuyer1988>
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
Eigen::VectorXd stan::mcmc::chains< RNG >::samples (const int chain,
const int index 
)
+
+inline
+
+ +

Definition at line 429 of file chains.hpp.

+ +
+
+ +
+
+
+template<typename RNG = boost::random::ecuyer1988>
+ + + + + +
+ + + + + + + + +
Eigen::VectorXd stan::mcmc::chains< RNG >::samples (const int index)
+
+inline
+
+ +

Definition at line 433 of file chains.hpp.

+ +
+
+ +
+
+
+template<typename RNG = boost::random::ecuyer1988>
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
Eigen::VectorXd stan::mcmc::chains< RNG >::samples (const int chain,
const std::string & name 
)
+
+inline
+
+ +

Definition at line 444 of file chains.hpp.

+ +
+
+ +
+
+
+template<typename RNG = boost::random::ecuyer1988>
+ + + + + +
+ + + + + + + + +
Eigen::VectorXd stan::mcmc::chains< RNG >::samples (const std::string & name)
+
+inline
+
+ +

Definition at line 448 of file chains.hpp.

+ +
+
+ +
+
+
+template<typename RNG = boost::random::ecuyer1988>
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
double stan::mcmc::chains< RNG >::sd (const int chain,
const int index 
)
+
+inline
+
+ +

Definition at line 468 of file chains.hpp.

+ +
+
+ +
+
+
+template<typename RNG = boost::random::ecuyer1988>
+ + + + + +
+ + + + + + + + +
double stan::mcmc::chains< RNG >::sd (const int index)
+
+inline
+
+ +

Definition at line 472 of file chains.hpp.

+ +
+
+ +
+
+
+template<typename RNG = boost::random::ecuyer1988>
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
double stan::mcmc::chains< RNG >::sd (const int chain,
const std::string & name 
)
+
+inline
+
+ +

Definition at line 476 of file chains.hpp.

+ +
+
+ +
+
+
+template<typename RNG = boost::random::ecuyer1988>
+ + + + + +
+ + + + + + + + +
double stan::mcmc::chains< RNG >::sd (const std::string & name)
+
+inline
+
+ +

Definition at line 480 of file chains.hpp.

+ +
+
+ +
+
+
+template<typename RNG = boost::random::ecuyer1988>
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
void stan::mcmc::chains< RNG >::set_warmup (const int chain,
const int warmup 
)
+
+inline
+
+ +

Definition at line 340 of file chains.hpp.

+ +
+
+ +
+
+
+template<typename RNG = boost::random::ecuyer1988>
+ + + + + +
+ + + + + + + + +
void stan::mcmc::chains< RNG >::set_warmup (const int warmup)
+
+inline
+
+ +

Definition at line 344 of file chains.hpp.

+ +
+
+ +
+
+
+template<typename RNG = boost::random::ecuyer1988>
+ + + + + +
+ + + + + + + + +
double stan::mcmc::chains< RNG >::split_potential_scale_reduction (const int index)
+
+inline
+
+ +

Definition at line 621 of file chains.hpp.

+ +
+
+ +
+
+
+template<typename RNG = boost::random::ecuyer1988>
+ + + + + +
+ + + + + + + + +
double stan::mcmc::chains< RNG >::split_potential_scale_reduction (const std::string & name)
+
+inline
+
+ +

Definition at line 629 of file chains.hpp.

+ +
+
+ +
+
+
+template<typename RNG = boost::random::ecuyer1988>
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
double stan::mcmc::chains< RNG >::variance (const int chain,
const int index 
)
+
+inline
+
+ +

Definition at line 484 of file chains.hpp.

+ +
+
+ +
+
+
+template<typename RNG = boost::random::ecuyer1988>
+ + + + + +
+ + + + + + + + +
double stan::mcmc::chains< RNG >::variance (const int index)
+
+inline
+
+ +

Definition at line 488 of file chains.hpp.

+ +
+
+ +
+
+
+template<typename RNG = boost::random::ecuyer1988>
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
double stan::mcmc::chains< RNG >::variance (const int chain,
const std::string & name 
)
+
+inline
+
+ +

Definition at line 492 of file chains.hpp.

+ +
+
+ +
+
+
+template<typename RNG = boost::random::ecuyer1988>
+ + + + + +
+ + + + + + + + +
double stan::mcmc::chains< RNG >::variance (const std::string & name)
+
+inline
+
+ +

Definition at line 496 of file chains.hpp.

+ +
+
+ +
+
+
+template<typename RNG = boost::random::ecuyer1988>
+ + + + + +
+ + + + + + + +
const Eigen::VectorXi& stan::mcmc::chains< RNG >::warmup ()
+
+inline
+
+ +

Definition at line 348 of file chains.hpp.

+ +
+
+ +
+
+
+template<typename RNG = boost::random::ecuyer1988>
+ + + + + +
+ + + + + + + + +
const int stan::mcmc::chains< RNG >::warmup (const int chain)
+
+inline
+
+ +

Definition at line 352 of file chains.hpp.

+ +
+
+
The documentation for this class was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1mcmc_1_1covar__adaptation-members.html b/doc/api/html/classstan_1_1mcmc_1_1covar__adaptation-members.html new file mode 100644 index 00000000000..157dd49ed9b --- /dev/null +++ b/doc/api/html/classstan_1_1mcmc_1_1covar__adaptation-members.html @@ -0,0 +1,129 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::mcmc::covar_adaptation Member List
+
+ +
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1mcmc_1_1covar__adaptation.html b/doc/api/html/classstan_1_1mcmc_1_1covar__adaptation.html new file mode 100644 index 00000000000..01bccca42fe --- /dev/null +++ b/doc/api/html/classstan_1_1mcmc_1_1covar__adaptation.html @@ -0,0 +1,261 @@ + + + + + +Stan: stan::mcmc::covar_adaptation Class Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::mcmc::covar_adaptation Class Reference
+
+
+ +

#include <covar_adaptation.hpp>

+
+Inheritance diagram for stan::mcmc::covar_adaptation:
+
+
+ + +stan::mcmc::windowed_adaptation +stan::mcmc::base_adaptation + +
+ + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 covar_adaptation (int n)
 
bool learn_covariance (Eigen::MatrixXd &covar, const Eigen::VectorXd &q)
 
- Public Member Functions inherited from stan::mcmc::windowed_adaptation
 windowed_adaptation (std::string name)
 
void restart ()
 
void set_window_params (unsigned int num_warmup, unsigned int init_buffer, unsigned int term_buffer, unsigned int base_window, std::ostream *e=0)
 
bool adaptation_window ()
 
bool end_adaptation_window ()
 
void compute_next_window ()
 
+ + + + + + + + + + + + + + + + + + + + +

+Protected Attributes

prob::welford_covar_estimator _estimator
 
- Protected Attributes inherited from stan::mcmc::windowed_adaptation
std::string _estimator_name
 
unsigned int _num_warmup
 
unsigned int _adapt_init_buffer
 
unsigned int _adapt_term_buffer
 
unsigned int _adapt_base_window
 
unsigned int _adapt_window_counter
 
unsigned int _adapt_next_window
 
unsigned int _adapt_window_size
 
+

Detailed Description

+
+

Definition at line 14 of file covar_adaptation.hpp.

+

Constructor & Destructor Documentation

+ +
+
+ + + + + +
+ + + + + + + + +
stan::mcmc::covar_adaptation::covar_adaptation (int n)
+
+inline
+
+ +

Definition at line 18 of file covar_adaptation.hpp.

+ +
+
+

Member Function Documentation

+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
bool stan::mcmc::covar_adaptation::learn_covariance (Eigen::MatrixXd & covar,
const Eigen::VectorXd & q 
)
+
+inline
+
+ +

Definition at line 20 of file covar_adaptation.hpp.

+ +
+
+

Member Data Documentation

+ +
+
+ + + + + +
+ + + + +
prob::welford_covar_estimator stan::mcmc::covar_adaptation::_estimator
+
+protected
+
+ +

Definition at line 48 of file covar_adaptation.hpp.

+ +
+
+
The documentation for this class was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1mcmc_1_1covar__adaptation.png b/doc/api/html/classstan_1_1mcmc_1_1covar__adaptation.png new file mode 100644 index 0000000000000000000000000000000000000000..45d591176a6830edc2e109931e36f55efe5a720a GIT binary patch literal 1083 zcmeAS@N?(olHy`uVBq!ia0vp^CxEzvgBeIpy%%x-NJ#|vgt-3y{~ySF@#br3|Dg#$ z78oBmaDcV*jy#adQ4-`A%m7pb0#{Fk7%?y~pYn8Z45?szJNNCT%{n};;(qH z+9Cl~|J$Fx*lJGJj6NMcsnzhG>hn420+EyU#WN~-&J$6X^u%+zg6E`rSG{NZcfUUH z>AhqyNX9;sWzswLjqzgHuXBy}&b?%p`Rn(pvNI)R>bI|CE&CV}dtd)}q^DID!>5il zN4C$(J|0$_cIg{`^pud>57(T%HCbKt>NUM7Dyt1WzE<`ehC?Rq*>q2JF2`~!ZqpL zn%}86H{9EH_qOAk$;CDn5eOGTiHX#C3ZWW{Wv#e?!U?{yWX-Uw)?A{OZ@WZ z)>gBv+m?SToY2?5I2jn8_6;#}uWeT7zt8FsdtqPb@heiYjgzvZ8)NLgB`zv+w$$0O z{%7Jv{reLOv);BY6fTO^t@_K?q3d|{pBBYmmb!Z` zeZI-xU!_^sMW!A!JC+-}`N6~WY#VA-tS-hh+bC&&T-$bQx72RlT)z4Er5kU5 zDF;UH7Rb2Gu*B}XT7z-w^885;9WL0+xx91k->)( + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::mcmc::dense_e_metric< M, BaseRNG > Member List
+
+
+ +

This is the complete list of members for stan::mcmc::dense_e_metric< M, BaseRNG >, including all inherited members.

+ + + + + + + + + + + + + + + + + + + +
_err_streamstan::mcmc::base_hamiltonian< M, dense_e_point, BaseRNG >protected
_modelstan::mcmc::base_hamiltonian< M, dense_e_point, BaseRNG >protected
_write_error_msg(std::ostream *error_msgs, const std::exception &e)stan::mcmc::base_hamiltonian< M, dense_e_point, BaseRNG >inlineprotected
base_hamiltonian(M &m, std::ostream *e)stan::mcmc::base_hamiltonian< M, dense_e_point, BaseRNG >inline
dense_e_metric(M &m, std::ostream *e)stan::mcmc::dense_e_metric< M, BaseRNG >inline
dphi_dq(dense_e_point &z)stan::mcmc::dense_e_metric< M, BaseRNG >inlinevirtual
dtau_dp(dense_e_point &z)stan::mcmc::dense_e_metric< M, BaseRNG >inlinevirtual
dtau_dq(dense_e_point &z)stan::mcmc::dense_e_metric< M, BaseRNG >inlinevirtual
H(dense_e_point &z)stan::mcmc::base_hamiltonian< M, dense_e_point, BaseRNG >inline
init(dense_e_point &z)stan::mcmc::base_hamiltonian< M, dense_e_point, BaseRNG >inlinevirtual
phi(dense_e_point &z)stan::mcmc::dense_e_metric< M, BaseRNG >inlinevirtual
sample_p(dense_e_point &z, BaseRNG &rng)stan::mcmc::dense_e_metric< M, BaseRNG >inlinevirtual
T(dense_e_point &z)stan::mcmc::dense_e_metric< M, BaseRNG >inlinevirtual
tau(dense_e_point &z)stan::mcmc::dense_e_metric< M, BaseRNG >inlinevirtual
update(dense_e_point &z)stan::mcmc::base_hamiltonian< M, dense_e_point, BaseRNG >inlinevirtual
V(dense_e_point &z)stan::mcmc::base_hamiltonian< M, dense_e_point, BaseRNG >inline
~base_hamiltonian()stan::mcmc::base_hamiltonian< M, dense_e_point, BaseRNG >inline
~dense_e_metric()stan::mcmc::dense_e_metric< M, BaseRNG >inline
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1mcmc_1_1dense__e__metric.html b/doc/api/html/classstan_1_1mcmc_1_1dense__e__metric.html new file mode 100644 index 00000000000..d61b2f5c40e --- /dev/null +++ b/doc/api/html/classstan_1_1mcmc_1_1dense__e__metric.html @@ -0,0 +1,465 @@ + + + + + +Stan: stan::mcmc::dense_e_metric< M, BaseRNG > Class Template Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::mcmc::dense_e_metric< M, BaseRNG > Class Template Reference
+
+
+ +

#include <dense_e_metric.hpp>

+
+Inheritance diagram for stan::mcmc::dense_e_metric< M, BaseRNG >:
+
+
+ + +stan::mcmc::base_hamiltonian< M, dense_e_point, BaseRNG > + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 dense_e_metric (M &m, std::ostream *e)
 
 ~dense_e_metric ()
 
double T (dense_e_point &z)
 
double tau (dense_e_point &z)
 
double phi (dense_e_point &z)
 
const Eigen::VectorXd dtau_dq (dense_e_point &z)
 
const Eigen::VectorXd dtau_dp (dense_e_point &z)
 
const Eigen::VectorXd dphi_dq (dense_e_point &z)
 
void sample_p (dense_e_point &z, BaseRNG &rng)
 
- Public Member Functions inherited from stan::mcmc::base_hamiltonian< M, dense_e_point, BaseRNG >
 base_hamiltonian (M &m, std::ostream *e)
 
 ~base_hamiltonian ()
 
double V (dense_e_point &z)
 
double H (dense_e_point &z)
 
virtual void init (dense_e_point &z)
 
virtual void update (dense_e_point &z)
 
+ + + + + + + + + +

+Additional Inherited Members

- Protected Member Functions inherited from stan::mcmc::base_hamiltonian< M, dense_e_point, BaseRNG >
void _write_error_msg (std::ostream *error_msgs, const std::exception &e)
 
- Protected Attributes inherited from stan::mcmc::base_hamiltonian< M, dense_e_point, BaseRNG >
M & _model
 
std::ostream * _err_stream
 
+

Detailed Description

+

template<typename M, typename BaseRNG>
+class stan::mcmc::dense_e_metric< M, BaseRNG >

+ + +

Definition at line 19 of file dense_e_metric.hpp.

+

Constructor & Destructor Documentation

+ +
+
+
+template<typename M , typename BaseRNG >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
stan::mcmc::dense_e_metric< M, BaseRNG >::dense_e_metric (M & m,
std::ostream * e 
)
+
+inline
+
+ +

Definition at line 23 of file dense_e_metric.hpp.

+ +
+
+ +
+
+
+template<typename M , typename BaseRNG >
+ + + + + +
+ + + + + + + +
stan::mcmc::dense_e_metric< M, BaseRNG >::~dense_e_metric ()
+
+inline
+
+ +

Definition at line 25 of file dense_e_metric.hpp.

+ +
+
+

Member Function Documentation

+ +
+
+
+template<typename M , typename BaseRNG >
+ + + + + +
+ + + + + + + + +
const Eigen::VectorXd stan::mcmc::dense_e_metric< M, BaseRNG >::dphi_dq (dense_e_pointz)
+
+inlinevirtual
+
+ +

Implements stan::mcmc::base_hamiltonian< M, dense_e_point, BaseRNG >.

+ +

Definition at line 42 of file dense_e_metric.hpp.

+ +
+
+ +
+
+
+template<typename M , typename BaseRNG >
+ + + + + +
+ + + + + + + + +
const Eigen::VectorXd stan::mcmc::dense_e_metric< M, BaseRNG >::dtau_dp (dense_e_pointz)
+
+inlinevirtual
+
+ +

Implements stan::mcmc::base_hamiltonian< M, dense_e_point, BaseRNG >.

+ +

Definition at line 38 of file dense_e_metric.hpp.

+ +
+
+ +
+
+
+template<typename M , typename BaseRNG >
+ + + + + +
+ + + + + + + + +
const Eigen::VectorXd stan::mcmc::dense_e_metric< M, BaseRNG >::dtau_dq (dense_e_pointz)
+
+inlinevirtual
+
+ +

Implements stan::mcmc::base_hamiltonian< M, dense_e_point, BaseRNG >.

+ +

Definition at line 34 of file dense_e_metric.hpp.

+ +
+
+ +
+
+
+template<typename M , typename BaseRNG >
+ + + + + +
+ + + + + + + + +
double stan::mcmc::dense_e_metric< M, BaseRNG >::phi (dense_e_pointz)
+
+inlinevirtual
+
+ +

Implements stan::mcmc::base_hamiltonian< M, dense_e_point, BaseRNG >.

+ +

Definition at line 32 of file dense_e_metric.hpp.

+ +
+
+ +
+
+
+template<typename M , typename BaseRNG >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
void stan::mcmc::dense_e_metric< M, BaseRNG >::sample_p (dense_e_pointz,
BaseRNG & rng 
)
+
+inlinevirtual
+
+ +

Implements stan::mcmc::base_hamiltonian< M, dense_e_point, BaseRNG >.

+ +

Definition at line 46 of file dense_e_metric.hpp.

+ +
+
+ +
+
+
+template<typename M , typename BaseRNG >
+ + + + + +
+ + + + + + + + +
double stan::mcmc::dense_e_metric< M, BaseRNG >::T (dense_e_pointz)
+
+inlinevirtual
+
+ +

Implements stan::mcmc::base_hamiltonian< M, dense_e_point, BaseRNG >.

+ +

Definition at line 27 of file dense_e_metric.hpp.

+ +
+
+ +
+
+
+template<typename M , typename BaseRNG >
+ + + + + +
+ + + + + + + + +
double stan::mcmc::dense_e_metric< M, BaseRNG >::tau (dense_e_pointz)
+
+inlinevirtual
+
+ +

Implements stan::mcmc::base_hamiltonian< M, dense_e_point, BaseRNG >.

+ +

Definition at line 31 of file dense_e_metric.hpp.

+ +
+
+
The documentation for this class was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1mcmc_1_1dense__e__metric.png b/doc/api/html/classstan_1_1mcmc_1_1dense__e__metric.png new file mode 100644 index 0000000000000000000000000000000000000000..8ae3dcd66a75d7195bb7d2fc62fad9cf7dd987d1 GIT binary patch literal 1197 zcmeAS@N?(olHy`uVBq!ia0y~yV9W)w12~w0)lFX|>;$efGEg zr`*sf4qI%u`ktRNJ2KCjqveTm%YL8BCQFxP&SE;E;;HHRYsaK*Dz2KD-a%8~469qN zlj5#EKFO|}H-EZ&(C0a~R?q#rz*{hadF{%g|C3eRx8}c`f1iEvf39271)fzw*(S~b z(=&fB6Kk7fvg(`ezMMOAFIvC-eWTL-m78hf9jV{TEZ^pa{61^4M{xGkpXo8x*Iu0A zd>frT=gE)4cUONclunj;m3}3Y|5MuHy>p*gE%x|ryguJ5clYc?i~eSwPuqVa?PTY4xy82S?WgSfj&HG^EOt@xtzBcR{kgqW z0iJEG-|X7I&A81jC|_pv^h4*a+KJm%-roChVV?b$$4A~@f3;0lP`z~byxygcwy@sU zba#LIcUc^BdEPgx>>cv2Z`G>aoLhK0Z2SFVE7fuyyT1>$KC*lE>|2jn(lf%JeRGq{ z@V=x!Rd~9J?dr`h#eKcA=1bfvPMh&$(vtF*mAkL?-?EzdKW+N|&O6hVaQ_Ms^OzKR zY1$GE)m+c6AQZ;k41Y+R+vzvNuaIvLacG!i<}jhIPRQJ$2gJ(TAZ+f?0c6dYWa=;l zNYfP8X}=Bf@|+sv)u6$k+0d_@$?T$ugkNgCJzf2^?d&?Wn&7zno&OmvR@Hj{|6?b~ z`(e*N)msdU!vfl_9}-9ic^j>kbLW23Z>G1qtv@fj9+SZ|>+H2X1-Ev0?z}Fs;=P`v z_5AOSr?Y!g&KwH9_4-5E$=)*6zsG`pTfIHne|5I0__uVobYL=*d?9V{^2%1X>|I)23c~ z@OqDa*rZpdOmAH~kaYcyPi(fmMA@SW*K=pdg-)tFc`VBMVxHIm?p-C`yClCw<;`Z1 z>(}34-}mwI9lK?3bu)j<+=@T>cJb$$D=)7+UYBS6Ic}wj^WAsP?W4E9{rNZV?z-do znptn>J_@nfzc;Sz_ja`n+e%8-9-N`+Tx+w + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::mcmc::dense_e_nuts< M, BaseRNG > Member List
+
+
+ +

This is the complete list of members for stan::mcmc::dense_e_nuts< M, BaseRNG >, including all inherited members.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
_depthstan::mcmc::base_nuts< M, dense_e_point, dense_e_metric, expl_leapfrog, BaseRNG >
_epsilonstan::mcmc::base_hmc< M, dense_e_point, dense_e_metric, expl_leapfrog, BaseRNG >protected
_epsilon_jitterstan::mcmc::base_hmc< M, dense_e_point, dense_e_metric, expl_leapfrog, BaseRNG >protected
_err_streamstan::mcmc::base_mcmcprotected
_hamiltonianstan::mcmc::base_hmc< M, dense_e_point, dense_e_metric, expl_leapfrog, BaseRNG >protected
_integratorstan::mcmc::base_hmc< M, dense_e_point, dense_e_metric, expl_leapfrog, BaseRNG >protected
_max_deltastan::mcmc::base_nuts< M, dense_e_point, dense_e_metric, expl_leapfrog, BaseRNG >
_max_depthstan::mcmc::base_nuts< M, dense_e_point, dense_e_metric, expl_leapfrog, BaseRNG >
_n_divergentstan::mcmc::base_nuts< M, dense_e_point, dense_e_metric, expl_leapfrog, BaseRNG >
_n_leapfrogstan::mcmc::base_nuts< M, dense_e_point, dense_e_metric, expl_leapfrog, BaseRNG >
_namestan::mcmc::base_mcmcprotected
_nom_epsilonstan::mcmc::base_hmc< M, dense_e_point, dense_e_metric, expl_leapfrog, BaseRNG >protected
_out_streamstan::mcmc::base_mcmcprotected
_rand_intstan::mcmc::base_hmc< M, dense_e_point, dense_e_metric, expl_leapfrog, BaseRNG >protected
_rand_uniformstan::mcmc::base_hmc< M, dense_e_point, dense_e_metric, expl_leapfrog, BaseRNG >protected
_zstan::mcmc::base_hmc< M, dense_e_point, dense_e_metric, expl_leapfrog, BaseRNG >protected
base_hmc(M &m, BaseRNG &rng, std::ostream *o, std::ostream *e)stan::mcmc::base_hmc< M, dense_e_point, dense_e_metric, expl_leapfrog, BaseRNG >inline
base_mcmc(std::ostream *o, std::ostream *e)stan::mcmc::base_mcmcinline
base_nuts(M &m, BaseRNG &rng, std::ostream *o, std::ostream *e)stan::mcmc::base_nuts< M, dense_e_point, dense_e_metric, expl_leapfrog, BaseRNG >inline
build_tree(int depth, Eigen::VectorXd &rho, ps_point *z_init_parent, ps_point &z_propose, nuts_util &util)stan::mcmc::base_nuts< M, dense_e_point, dense_e_metric, expl_leapfrog, BaseRNG >inline
compute_criterion(ps_point &start, dense_e_point &finish, Eigen::VectorXd &rho)stan::mcmc::dense_e_nuts< M, BaseRNG >inlinevirtual
dense_e_nuts(M &m, BaseRNG &rng, std::ostream *o=&std::cout, std::ostream *e=0)stan::mcmc::dense_e_nuts< M, BaseRNG >inline
get_current_stepsize()stan::mcmc::base_hmc< M, dense_e_point, dense_e_metric, expl_leapfrog, BaseRNG >inline
get_max_delta()stan::mcmc::base_nuts< M, dense_e_point, dense_e_metric, expl_leapfrog, BaseRNG >inline
get_max_depth()stan::mcmc::base_nuts< M, dense_e_point, dense_e_metric, expl_leapfrog, BaseRNG >inline
get_nominal_stepsize()stan::mcmc::base_hmc< M, dense_e_point, dense_e_metric, expl_leapfrog, BaseRNG >inline
get_sampler_diagnostic_names(std::vector< std::string > &model_names, std::vector< std::string > &names)stan::mcmc::base_hmc< M, dense_e_point, dense_e_metric, expl_leapfrog, BaseRNG >inlinevirtual
get_sampler_diagnostics(std::vector< double > &values)stan::mcmc::base_hmc< M, dense_e_point, dense_e_metric, expl_leapfrog, BaseRNG >inlinevirtual
get_sampler_param_names(std::vector< std::string > &names)stan::mcmc::base_nuts< M, dense_e_point, dense_e_metric, expl_leapfrog, BaseRNG >inlinevirtual
get_sampler_params(std::vector< double > &values)stan::mcmc::base_nuts< M, dense_e_point, dense_e_metric, expl_leapfrog, BaseRNG >inlinevirtual
get_stepsize_jitter()stan::mcmc::base_hmc< M, dense_e_point, dense_e_metric, expl_leapfrog, BaseRNG >inline
init_stepsize()stan::mcmc::base_hmc< M, dense_e_point, dense_e_metric, expl_leapfrog, BaseRNG >inline
name()stan::mcmc::base_mcmcinline
sample_stepsize()stan::mcmc::base_hmc< M, dense_e_point, dense_e_metric, expl_leapfrog, BaseRNG >inline
seed(const Eigen::VectorXd &q)stan::mcmc::base_hmc< M, dense_e_point, dense_e_metric, expl_leapfrog, BaseRNG >inline
set_max_delta(const double d)stan::mcmc::base_nuts< M, dense_e_point, dense_e_metric, expl_leapfrog, BaseRNG >inline
set_max_depth(const int d)stan::mcmc::base_nuts< M, dense_e_point, dense_e_metric, expl_leapfrog, BaseRNG >inline
set_nominal_stepsize(const double e)stan::mcmc::base_hmc< M, dense_e_point, dense_e_metric, expl_leapfrog, BaseRNG >inlinevirtual
set_stepsize_jitter(const double j)stan::mcmc::base_hmc< M, dense_e_point, dense_e_metric, expl_leapfrog, BaseRNG >inlinevirtual
transition(sample &init_sample)stan::mcmc::base_nuts< M, dense_e_point, dense_e_metric, expl_leapfrog, BaseRNG >inlinevirtual
write_sampler_param_names(std::ostream &o)stan::mcmc::base_nuts< M, dense_e_point, dense_e_metric, expl_leapfrog, BaseRNG >inlinevirtual
write_sampler_params(std::ostream &o)stan::mcmc::base_nuts< M, dense_e_point, dense_e_metric, expl_leapfrog, BaseRNG >inlinevirtual
write_sampler_state(std::ostream *o)stan::mcmc::base_hmc< M, dense_e_point, dense_e_metric, expl_leapfrog, BaseRNG >inlinevirtual
z()stan::mcmc::base_hmc< M, dense_e_point, dense_e_metric, expl_leapfrog, BaseRNG >inline
~base_mcmc()stan::mcmc::base_mcmcinlinevirtual
~base_nuts()stan::mcmc::base_nuts< M, dense_e_point, dense_e_metric, expl_leapfrog, BaseRNG >inline
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1mcmc_1_1dense__e__nuts.html b/doc/api/html/classstan_1_1mcmc_1_1dense__e__nuts.html new file mode 100644 index 00000000000..516f194ddbc --- /dev/null +++ b/doc/api/html/classstan_1_1mcmc_1_1dense__e__nuts.html @@ -0,0 +1,332 @@ + + + + + +Stan: stan::mcmc::dense_e_nuts< M, BaseRNG > Class Template Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::mcmc::dense_e_nuts< M, BaseRNG > Class Template Reference
+
+
+ +

#include <dense_e_nuts.hpp>

+
+Inheritance diagram for stan::mcmc::dense_e_nuts< M, BaseRNG >:
+
+
+ + +stan::mcmc::base_nuts< M, dense_e_point, dense_e_metric, expl_leapfrog, BaseRNG > +stan::mcmc::base_hmc< M, dense_e_point, dense_e_metric, expl_leapfrog, BaseRNG > +stan::mcmc::base_mcmc +stan::mcmc::adapt_dense_e_nuts< M, BaseRNG > + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 dense_e_nuts (M &m, BaseRNG &rng, std::ostream *o=&std::cout, std::ostream *e=0)
 
bool compute_criterion (ps_point &start, dense_e_point &finish, Eigen::VectorXd &rho)
 
- Public Member Functions inherited from stan::mcmc::base_nuts< M, dense_e_point, dense_e_metric, expl_leapfrog, BaseRNG >
 base_nuts (M &m, BaseRNG &rng, std::ostream *o, std::ostream *e)
 
 ~base_nuts ()
 
void set_max_depth (const int d)
 
void set_max_delta (const double d)
 
int get_max_depth ()
 
double get_max_delta ()
 
sample transition (sample &init_sample)
 
void write_sampler_param_names (std::ostream &o)
 
void write_sampler_params (std::ostream &o)
 
void get_sampler_param_names (std::vector< std::string > &names)
 
void get_sampler_params (std::vector< double > &values)
 
int build_tree (int depth, Eigen::VectorXd &rho, ps_point *z_init_parent, ps_point &z_propose, nuts_util &util)
 
- Public Member Functions inherited from stan::mcmc::base_hmc< M, dense_e_point, dense_e_metric, expl_leapfrog, BaseRNG >
 base_hmc (M &m, BaseRNG &rng, std::ostream *o, std::ostream *e)
 
void write_sampler_state (std::ostream *o)
 
void get_sampler_diagnostic_names (std::vector< std::string > &model_names, std::vector< std::string > &names)
 
void get_sampler_diagnostics (std::vector< double > &values)
 
void seed (const Eigen::VectorXd &q)
 
void init_stepsize ()
 
dense_e_pointz ()
 
virtual void set_nominal_stepsize (const double e)
 
double get_nominal_stepsize ()
 
double get_current_stepsize ()
 
virtual void set_stepsize_jitter (const double j)
 
double get_stepsize_jitter ()
 
void sample_stepsize ()
 
- Public Member Functions inherited from stan::mcmc::base_mcmc
 base_mcmc (std::ostream *o, std::ostream *e)
 
virtual ~base_mcmc ()
 
std::string name ()
 
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Additional Inherited Members

- Public Attributes inherited from stan::mcmc::base_nuts< M, dense_e_point, dense_e_metric, expl_leapfrog, BaseRNG >
int _depth
 
int _max_depth
 
double _max_delta
 
int _n_leapfrog
 
int _n_divergent
 
- Protected Attributes inherited from stan::mcmc::base_hmc< M, dense_e_point, dense_e_metric, expl_leapfrog, BaseRNG >
dense_e_point _z
 
expl_leapfrog< dense_e_metric
+< M, BaseRNG >, dense_e_point
_integrator
 
dense_e_metric< M, BaseRNG > _hamiltonian
 
BaseRNG & _rand_int
 
boost::uniform_01< BaseRNG & > _rand_uniform
 
double _nom_epsilon
 
double _epsilon
 
double _epsilon_jitter
 
+

Detailed Description

+

template<typename M, class BaseRNG>
+class stan::mcmc::dense_e_nuts< M, BaseRNG >

+ + +

Definition at line 17 of file dense_e_nuts.hpp.

+

Constructor & Destructor Documentation

+ +
+
+
+template<typename M , class BaseRNG >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
stan::mcmc::dense_e_nuts< M, BaseRNG >::dense_e_nuts (M & m,
BaseRNG & rng,
std::ostream * o = &std::cout,
std::ostream * e = 0 
)
+
+inline
+
+ +

Definition at line 25 of file dense_e_nuts.hpp.

+ +
+
+

Member Function Documentation

+ +
+
+
+template<typename M , class BaseRNG >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
bool stan::mcmc::dense_e_nuts< M, BaseRNG >::compute_criterion (ps_pointstart,
dense_e_pointfinish,
Eigen::VectorXd & rho 
)
+
+inlinevirtual
+
+
+
The documentation for this class was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1mcmc_1_1dense__e__nuts.png b/doc/api/html/classstan_1_1mcmc_1_1dense__e__nuts.png new file mode 100644 index 0000000000000000000000000000000000000000..d35615ade3851fd269e9491c56cd5d82ed7d445f GIT binary patch literal 3170 zcmdUyYfzI{9>#-+SSn(%iWM-rtEJ!#P;M#&EJ#7Q$VIRLLIt_VT?hd}@?u#9i+~m= zN`xRtghW6g5blYkLIL4LBwP|gT7hs&K#WOBZf|3Ech(QPJNu;{_RKuz|2s2h=FFM@ z^PG3yo1X5@+FHA{U@(}r%U6zGFqoP`#lLM34$OMF7QR@{2ym#@w|)`cP6e5av1`5_l| z_wMHo(GtuHe6hLL)Lxp(s|vlo_j3Jcvy;VnZD*EWuImTtCq6;cboC=keF3vbgn*)S zC*^cRDq5;Ll(ZCu5*Lf6ME6Hgq%_i-a|TRq&rup8s->@G<(ia6nIJVB#suD@=Pi>giibRPD7Pm`s#I&-L zwW@{sBuADdHmW6(nF=iQz?w|YrQcbny9L;FL5oyuT~Y6xO&_R6{_%_UEi=_hcRaxJ zbMqk@2`G83_xY;`CgQ{Ee8~OJ@y1pAs|s~>G8pM<`(bJ>GMK}<)Kvj9drz%DdnjQ0 zRFvQ%ft^>?KUFtl>Hnn*uHk?eu1Ho2-%LNgNa(U?v}8cG@75msY8rr-Db_j`IH+c; z{}NBSJnyg!HUb18P`&`4@WW-u#H$+jOUWx2mv|Ndl4s?jFsNOC&N`(3NH^X%nh@a` zgk;h!u9Kd($ZjgmF0$(HP3~33Q=8a=tghai2g_D>5j+%THHp$8BD>EmkxIj6%7X^O zEZc_$2}kPN)6W||VG;E?CDWEe;(+;4pXRx`oC3Btec3u727B+Sggl_N64s0w;6$*~ zo8i+soTK(u0o=9VO@Z0XPPUCJ_R%-cAJ}sQfc;4%=nKm9NFI?@yOJB!> zczO+u%0fqlTYd+avT!mmD`;ydJ0X~UG4GC|$pJeC3jFTTi3!Zwpn;XHC;^<$n-};k zrWYsev61zPW!~1efU9*Ns4RFO)37-y>peDcJ!M20(G$aAD3yHpTtj95vjY-FCos|J z9#ZKi$a|h6Q4TB5J^+tFcz|>3RO%}2tXSU3CA}-a0)2);?Wa>+?v|iHYHb2un}_-S zI*doQH=KS&v*6M z*4nh87Pr!EJ=eBg(m8UNX|=x4STEfKDb_FGz8eRX!YpUeR$#L0N=2IE2g!dQmH)el zgrC%5A4Q0Z;szgUzX5b`r=pl@y@``1Ltnaa0kZlJZLLaa>abME=knz6FQl4cU-&Ow z3ancABQo}fwp8tLoM}YoBovF~>>KE**%+Y3{(N`g_ytj%+k?obKcT`?KxI{u;MI%h zZGbh4B@lnfoq0Yi+VBD{tPi9$y&a>RD54OOOL8;QEC`eQ6IO9;9V>60(2OfUY*JL( zs|MR~8;hct*5%i;;?dQ#;fjXNbFEnBWevWEj8WQ8V4G9k}UURKRY;f+mb-x|ZH6pC<(aPtNtOfoIrk!0g?T*=G(& z%8eLS(X>8aa~DUZxJALzOF}z)2F5LgM+MW3^etWKh_!^XiJWgvd5sQ5e+s2jxBqVu ziL;fs%r9i4m($Yi3GYK<&RU-Y%#-MQ!^5GJP3_w}Sn$D?TKx$wQBfI?>|@h1yQf8> z>Gx)38s2pUb10}ok|joI;mXz}vgNSZJ}f{B^_Z5$xFT95#ZzY7Z3BYkP~lWve&t(( zl&zjS&R~9dTah&$N~C4VdrT8LFEi3;(hp#%7FmgMo;;@a5r;H7)v zz$e-}+n>@k7X8`=5fBJ*|f)J_yO+`N);HWzu5d6t%Q$&`K zLQ6=-d(Xi>vbP?wv-kN>b^}Uw;(FYMLx{1WR}wfQqbjzJjxVEb`fcBcou_Sx%qllm zQShrOD&1{5b{O~pbNX~Z6ah96j)^7g@Rz3pfmOCwpq-ER zgg4ReLZfVvHy=Ekgsdi96SVHWV#2=4j5jE^Ne!$qq%}0Lf)3^JSEaT3!eQn7lo~t~ zNF0$ZJvM!68&}owWna@Nj7%7Oofjrh$0<;5=jvt4K^B zfyx0hyMDRCn(a1{6m6x$@DQ4bHT#63My|md98aTp-qi27{_LzY@EPE|$6>$yvhkU(=eTVf-)sh=n%?sNeS7CF z0jieVBSn6vX&>AL)6K|uh|4HX$5r7o?!Kph*+=+{+bU{#h|Q>0)jw5^G?c4x!n#RS zVT-5Fc4quT98-1Pza%eLxQHOe5qDWPyL*fJ-@QUy`lnYeDD+gjy?exQyY*#8-G|YM zS!lTYiIVsf>fAJ5N;k;9vg7D=LHw3}_BU-#ZIW&$IAzN$E7kkB*qR(Wbm3vY>Vm<< z_MN?RNN{y8a`A0Fq5_F7UMHNT9rV>MHXLUEVW#NBsGgNPd2P{>$C~#&ln5Hqsh!g~ z=!3gMkA%{+;C-Z+?yUA2wh%ivKk27EKy0WlskZy-KYgO}A+_u?w|IsAr%9?G0+@@F LyJOwy;BS8i633up literal 0 HcmV?d00001 diff --git a/doc/api/html/classstan_1_1mcmc_1_1dense__e__point-members.html b/doc/api/html/classstan_1_1mcmc_1_1dense__e__point-members.html new file mode 100644 index 00000000000..01467d77a6a --- /dev/null +++ b/doc/api/html/classstan_1_1mcmc_1_1dense__e__point-members.html @@ -0,0 +1,127 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::mcmc::dense_e_point Member List
+
+
+ +

This is the complete list of members for stan::mcmc::dense_e_point, including all inherited members.

+ + + + + + + + + + + + + + + + +
_fast_matrix_copy(Eigen::Matrix< T, Eigen::Dynamic, Eigen::Dynamic > &v_to, const Eigen::Matrix< T, Eigen::Dynamic, Eigen::Dynamic > &v_from)stan::mcmc::ps_pointinlineprotected
_fast_vector_copy(Eigen::Matrix< T, Eigen::Dynamic, 1 > &v_to, const Eigen::Matrix< T, Eigen::Dynamic, 1 > &v_from)stan::mcmc::ps_pointinlineprotected
dense_e_point(int n)stan::mcmc::dense_e_pointinline
dense_e_point(const dense_e_point &z)stan::mcmc::dense_e_pointinline
gstan::mcmc::ps_point
get_param_names(std::vector< std::string > &model_names, std::vector< std::string > &names)stan::mcmc::ps_pointinlinevirtual
get_params(std::vector< double > &values)stan::mcmc::ps_pointinlinevirtual
mInvstan::mcmc::dense_e_point
operator=(const ps_point &z)stan::mcmc::ps_pointinline
pstan::mcmc::ps_point
ps_point(int n)stan::mcmc::ps_pointinline
ps_point(const ps_point &z)stan::mcmc::ps_pointinline
qstan::mcmc::ps_point
Vstan::mcmc::ps_point
write_metric(std::ostream *o)stan::mcmc::dense_e_pointinlinevirtual
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1mcmc_1_1dense__e__point.html b/doc/api/html/classstan_1_1mcmc_1_1dense__e__point.html new file mode 100644 index 00000000000..9a85956685a --- /dev/null +++ b/doc/api/html/classstan_1_1mcmc_1_1dense__e__point.html @@ -0,0 +1,272 @@ + + + + + +Stan: stan::mcmc::dense_e_point Class Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::mcmc::dense_e_point Class Reference
+
+
+ +

#include <dense_e_point.hpp>

+
+Inheritance diagram for stan::mcmc::dense_e_point:
+
+
+ + +stan::mcmc::ps_point + +
+ + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 dense_e_point (int n)
 
 dense_e_point (const dense_e_point &z)
 
void write_metric (std::ostream *o)
 
- Public Member Functions inherited from stan::mcmc::ps_point
 ps_point (int n)
 
 ps_point (const ps_point &z)
 
ps_pointoperator= (const ps_point &z)
 
virtual void get_param_names (std::vector< std::string > &model_names, std::vector< std::string > &names)
 
virtual void get_params (std::vector< double > &values)
 
+ + + + + + + + + + + + +

+Public Attributes

Eigen::MatrixXd mInv
 
- Public Attributes inherited from stan::mcmc::ps_point
Eigen::VectorXd q
 
Eigen::VectorXd p
 
double V
 
Eigen::VectorXd g
 
+ + + + + + + + +

+Additional Inherited Members

- Protected Member Functions inherited from stan::mcmc::ps_point
template<typename T >
void _fast_vector_copy (Eigen::Matrix< T, Eigen::Dynamic, 1 > &v_to, const Eigen::Matrix< T, Eigen::Dynamic, 1 > &v_from)
 
template<typename T >
void _fast_matrix_copy (Eigen::Matrix< T, Eigen::Dynamic, Eigen::Dynamic > &v_to, const Eigen::Matrix< T, Eigen::Dynamic, Eigen::Dynamic > &v_from)
 
+

Detailed Description

+
+

Definition at line 12 of file dense_e_point.hpp.

+

Constructor & Destructor Documentation

+ +
+
+ + + + + +
+ + + + + + + + +
stan::mcmc::dense_e_point::dense_e_point (int n)
+
+inline
+
+ +

Definition at line 16 of file dense_e_point.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
stan::mcmc::dense_e_point::dense_e_point (const dense_e_pointz)
+
+inline
+
+ +

Definition at line 22 of file dense_e_point.hpp.

+ +
+
+

Member Function Documentation

+ +
+
+ + + + + +
+ + + + + + + + +
void stan::mcmc::dense_e_point::write_metric (std::ostream * o)
+
+inlinevirtual
+
+ +

Reimplemented from stan::mcmc::ps_point.

+ +

Definition at line 26 of file dense_e_point.hpp.

+ +
+
+

Member Data Documentation

+ +
+
+ + + + +
Eigen::MatrixXd stan::mcmc::dense_e_point::mInv
+
+ +

Definition at line 18 of file dense_e_point.hpp.

+ +
+
+
The documentation for this class was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1mcmc_1_1dense__e__point.png b/doc/api/html/classstan_1_1mcmc_1_1dense__e__point.png new file mode 100644 index 0000000000000000000000000000000000000000..68101c3eb3fe65a801e2a2a985ba10ac9961ced0 GIT binary patch literal 632 zcmeAS@N?(olHy`uVBq!ia0vp^3xPO*gBeJ=IX<-jQW60^A+G=b{|7Q(y!l$%e`o@b z1;z&s9ANFdBM;kGRgNkp31lJ-T{iwcH7^c7A~8uVmwbcPqX-uY1`cB$70<} z@8)g%9{b~}+@v=MdHyy6n`&FiD^_<^1xy-6p4}VKJUblLBf7`?*ZuY-?U#jl?+w|A;(9*lx zk~}W){{3h?MP)n8#hGezfS!nCh`-95kiqN!qoSwJ!sa25g~g*EEf-HS#IY(i_&ahu z2o_-aA=1KNhnxFFoHN)fGh-qHTNqSrXiMH5eYO+-+mv&h=C*w9POmh7c6w7ne)`Pw z`RDs;+akid8Gc{gG<`SMbkh%=i5%OfSblt!@cf$Z(WFf2<8=+o>W*oB784d-XnWJh zYvRge@y^@x#ap)4Z`{1l^PWfw$}YOPao$U|FLWj!;jEITb=tJ-(EYBgE6YtpQB)* p0?P+Y4#t|OxapcpO*Z^vT(v|g@tl=UIWU + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::mcmc::dense_e_static_hmc< M, BaseRNG > Member List
+
+
+ +

This is the complete list of members for stan::mcmc::dense_e_static_hmc< M, BaseRNG >, including all inherited members.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
_epsilonstan::mcmc::base_hmc< M, dense_e_point, dense_e_metric, expl_leapfrog, BaseRNG >protected
_epsilon_jitterstan::mcmc::base_hmc< M, dense_e_point, dense_e_metric, expl_leapfrog, BaseRNG >protected
_err_streamstan::mcmc::base_mcmcprotected
_hamiltonianstan::mcmc::base_hmc< M, dense_e_point, dense_e_metric, expl_leapfrog, BaseRNG >protected
_integratorstan::mcmc::base_hmc< M, dense_e_point, dense_e_metric, expl_leapfrog, BaseRNG >protected
_namestan::mcmc::base_mcmcprotected
_nom_epsilonstan::mcmc::base_hmc< M, dense_e_point, dense_e_metric, expl_leapfrog, BaseRNG >protected
_out_streamstan::mcmc::base_mcmcprotected
_rand_intstan::mcmc::base_hmc< M, dense_e_point, dense_e_metric, expl_leapfrog, BaseRNG >protected
_rand_uniformstan::mcmc::base_hmc< M, dense_e_point, dense_e_metric, expl_leapfrog, BaseRNG >protected
_update_L()stan::mcmc::base_static_hmc< M, dense_e_point, dense_e_metric, expl_leapfrog, BaseRNG >inlineprotected
_zstan::mcmc::base_hmc< M, dense_e_point, dense_e_metric, expl_leapfrog, BaseRNG >protected
base_hmc(M &m, BaseRNG &rng, std::ostream *o, std::ostream *e)stan::mcmc::base_hmc< M, dense_e_point, dense_e_metric, expl_leapfrog, BaseRNG >inline
base_mcmc(std::ostream *o, std::ostream *e)stan::mcmc::base_mcmcinline
base_static_hmc(M &m, BaseRNG &rng, std::ostream *o, std::ostream *e)stan::mcmc::base_static_hmc< M, dense_e_point, dense_e_metric, expl_leapfrog, BaseRNG >inline
dense_e_static_hmc(M &m, BaseRNG &rng, std::ostream *o=&std::cout, std::ostream *e=0)stan::mcmc::dense_e_static_hmc< M, BaseRNG >inline
get_current_stepsize()stan::mcmc::base_hmc< M, dense_e_point, dense_e_metric, expl_leapfrog, BaseRNG >inline
get_L()stan::mcmc::base_static_hmc< M, dense_e_point, dense_e_metric, expl_leapfrog, BaseRNG >inline
get_nominal_stepsize()stan::mcmc::base_hmc< M, dense_e_point, dense_e_metric, expl_leapfrog, BaseRNG >inline
get_sampler_diagnostic_names(std::vector< std::string > &model_names, std::vector< std::string > &names)stan::mcmc::base_hmc< M, dense_e_point, dense_e_metric, expl_leapfrog, BaseRNG >inlinevirtual
get_sampler_diagnostics(std::vector< double > &values)stan::mcmc::base_hmc< M, dense_e_point, dense_e_metric, expl_leapfrog, BaseRNG >inlinevirtual
get_sampler_param_names(std::vector< std::string > &names)stan::mcmc::base_static_hmc< M, dense_e_point, dense_e_metric, expl_leapfrog, BaseRNG >inlinevirtual
get_sampler_params(std::vector< double > &values)stan::mcmc::base_static_hmc< M, dense_e_point, dense_e_metric, expl_leapfrog, BaseRNG >inlinevirtual
get_stepsize_jitter()stan::mcmc::base_hmc< M, dense_e_point, dense_e_metric, expl_leapfrog, BaseRNG >inline
get_T()stan::mcmc::base_static_hmc< M, dense_e_point, dense_e_metric, expl_leapfrog, BaseRNG >inline
init_stepsize()stan::mcmc::base_hmc< M, dense_e_point, dense_e_metric, expl_leapfrog, BaseRNG >inline
L_stan::mcmc::base_static_hmc< M, dense_e_point, dense_e_metric, expl_leapfrog, BaseRNG >protected
name()stan::mcmc::base_mcmcinline
sample_stepsize()stan::mcmc::base_hmc< M, dense_e_point, dense_e_metric, expl_leapfrog, BaseRNG >inline
seed(const Eigen::VectorXd &q)stan::mcmc::base_hmc< M, dense_e_point, dense_e_metric, expl_leapfrog, BaseRNG >inline
set_nominal_stepsize(const double e)stan::mcmc::base_static_hmc< M, dense_e_point, dense_e_metric, expl_leapfrog, BaseRNG >inlinevirtual
set_nominal_stepsize_and_L(const double e, const int l)stan::mcmc::base_static_hmc< M, dense_e_point, dense_e_metric, expl_leapfrog, BaseRNG >inline
set_nominal_stepsize_and_T(const double e, const double t)stan::mcmc::base_static_hmc< M, dense_e_point, dense_e_metric, expl_leapfrog, BaseRNG >inline
set_stepsize_jitter(const double j)stan::mcmc::base_hmc< M, dense_e_point, dense_e_metric, expl_leapfrog, BaseRNG >inlinevirtual
set_T(const double t)stan::mcmc::base_static_hmc< M, dense_e_point, dense_e_metric, expl_leapfrog, BaseRNG >inline
T_stan::mcmc::base_static_hmc< M, dense_e_point, dense_e_metric, expl_leapfrog, BaseRNG >protected
transition(sample &init_sample)stan::mcmc::base_static_hmc< M, dense_e_point, dense_e_metric, expl_leapfrog, BaseRNG >inlinevirtual
write_sampler_param_names(std::ostream &o)stan::mcmc::base_static_hmc< M, dense_e_point, dense_e_metric, expl_leapfrog, BaseRNG >inlinevirtual
write_sampler_params(std::ostream &o)stan::mcmc::base_static_hmc< M, dense_e_point, dense_e_metric, expl_leapfrog, BaseRNG >inlinevirtual
write_sampler_state(std::ostream *o)stan::mcmc::base_hmc< M, dense_e_point, dense_e_metric, expl_leapfrog, BaseRNG >inlinevirtual
z()stan::mcmc::base_hmc< M, dense_e_point, dense_e_metric, expl_leapfrog, BaseRNG >inline
~base_mcmc()stan::mcmc::base_mcmcinlinevirtual
~base_static_hmc()stan::mcmc::base_static_hmc< M, dense_e_point, dense_e_metric, expl_leapfrog, BaseRNG >inline
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1mcmc_1_1dense__e__static__hmc.html b/doc/api/html/classstan_1_1mcmc_1_1dense__e__static__hmc.html new file mode 100644 index 00000000000..76efce8152b --- /dev/null +++ b/doc/api/html/classstan_1_1mcmc_1_1dense__e__static__hmc.html @@ -0,0 +1,262 @@ + + + + + +Stan: stan::mcmc::dense_e_static_hmc< M, BaseRNG > Class Template Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::mcmc::dense_e_static_hmc< M, BaseRNG > Class Template Reference
+
+
+ +

#include <dense_e_static_hmc.hpp>

+
+Inheritance diagram for stan::mcmc::dense_e_static_hmc< M, BaseRNG >:
+
+
+ + +stan::mcmc::base_static_hmc< M, dense_e_point, dense_e_metric, expl_leapfrog, BaseRNG > +stan::mcmc::base_hmc< M, dense_e_point, dense_e_metric, expl_leapfrog, BaseRNG > +stan::mcmc::base_mcmc +stan::mcmc::adapt_dense_e_static_hmc< M, BaseRNG > + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 dense_e_static_hmc (M &m, BaseRNG &rng, std::ostream *o=&std::cout, std::ostream *e=0)
 
- Public Member Functions inherited from stan::mcmc::base_static_hmc< M, dense_e_point, dense_e_metric, expl_leapfrog, BaseRNG >
 base_static_hmc (M &m, BaseRNG &rng, std::ostream *o, std::ostream *e)
 
 ~base_static_hmc ()
 
sample transition (sample &init_sample)
 
void write_sampler_param_names (std::ostream &o)
 
void write_sampler_params (std::ostream &o)
 
void get_sampler_param_names (std::vector< std::string > &names)
 
void get_sampler_params (std::vector< double > &values)
 
void set_nominal_stepsize_and_T (const double e, const double t)
 
void set_nominal_stepsize_and_L (const double e, const int l)
 
void set_T (const double t)
 
void set_nominal_stepsize (const double e)
 
double get_T ()
 
int get_L ()
 
- Public Member Functions inherited from stan::mcmc::base_hmc< M, dense_e_point, dense_e_metric, expl_leapfrog, BaseRNG >
 base_hmc (M &m, BaseRNG &rng, std::ostream *o, std::ostream *e)
 
void write_sampler_state (std::ostream *o)
 
void get_sampler_diagnostic_names (std::vector< std::string > &model_names, std::vector< std::string > &names)
 
void get_sampler_diagnostics (std::vector< double > &values)
 
void seed (const Eigen::VectorXd &q)
 
void init_stepsize ()
 
dense_e_pointz ()
 
double get_nominal_stepsize ()
 
double get_current_stepsize ()
 
virtual void set_stepsize_jitter (const double j)
 
double get_stepsize_jitter ()
 
void sample_stepsize ()
 
- Public Member Functions inherited from stan::mcmc::base_mcmc
 base_mcmc (std::ostream *o, std::ostream *e)
 
virtual ~base_mcmc ()
 
std::string name ()
 
+ + + + + + + + + +

+Additional Inherited Members

- Protected Member Functions inherited from stan::mcmc::base_static_hmc< M, dense_e_point, dense_e_metric, expl_leapfrog, BaseRNG >
void _update_L ()
 
- Protected Attributes inherited from stan::mcmc::base_static_hmc< M, dense_e_point, dense_e_metric, expl_leapfrog, BaseRNG >
double T_
 
int L_
 
+

Detailed Description

+

template<typename M, class BaseRNG>
+class stan::mcmc::dense_e_static_hmc< M, BaseRNG >

+ + +

Definition at line 18 of file dense_e_static_hmc.hpp.

+

Constructor & Destructor Documentation

+ +
+
+
+template<typename M , class BaseRNG >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
stan::mcmc::dense_e_static_hmc< M, BaseRNG >::dense_e_static_hmc (M & m,
BaseRNG & rng,
std::ostream * o = &std::cout,
std::ostream * e = 0 
)
+
+inline
+
+ +

Definition at line 26 of file dense_e_static_hmc.hpp.

+ +
+
+
The documentation for this class was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1mcmc_1_1dense__e__static__hmc.png b/doc/api/html/classstan_1_1mcmc_1_1dense__e__static__hmc.png new file mode 100644 index 0000000000000000000000000000000000000000..668533a2202cfd690c6f9ae9c700f339a39d76bf GIT binary patch literal 3626 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 literal 0 HcmV?d00001 diff --git a/doc/api/html/classstan_1_1mcmc_1_1diag__e__metric-members.html b/doc/api/html/classstan_1_1mcmc_1_1diag__e__metric-members.html new file mode 100644 index 00000000000..2d84fe43628 --- /dev/null +++ b/doc/api/html/classstan_1_1mcmc_1_1diag__e__metric-members.html @@ -0,0 +1,130 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::mcmc::diag_e_metric< M, BaseRNG > Member List
+
+
+ +

This is the complete list of members for stan::mcmc::diag_e_metric< M, BaseRNG >, including all inherited members.

+ + + + + + + + + + + + + + + + + + + +
_err_streamstan::mcmc::base_hamiltonian< M, diag_e_point, BaseRNG >protected
_modelstan::mcmc::base_hamiltonian< M, diag_e_point, BaseRNG >protected
_write_error_msg(std::ostream *error_msgs, const std::exception &e)stan::mcmc::base_hamiltonian< M, diag_e_point, BaseRNG >inlineprotected
base_hamiltonian(M &m, std::ostream *e)stan::mcmc::base_hamiltonian< M, diag_e_point, BaseRNG >inline
diag_e_metric(M &m, std::ostream *e)stan::mcmc::diag_e_metric< M, BaseRNG >inline
dphi_dq(diag_e_point &z)stan::mcmc::diag_e_metric< M, BaseRNG >inlinevirtual
dtau_dp(diag_e_point &z)stan::mcmc::diag_e_metric< M, BaseRNG >inlinevirtual
dtau_dq(diag_e_point &z)stan::mcmc::diag_e_metric< M, BaseRNG >inlinevirtual
H(diag_e_point &z)stan::mcmc::base_hamiltonian< M, diag_e_point, BaseRNG >inline
init(diag_e_point &z)stan::mcmc::base_hamiltonian< M, diag_e_point, BaseRNG >inlinevirtual
phi(diag_e_point &z)stan::mcmc::diag_e_metric< M, BaseRNG >inlinevirtual
sample_p(diag_e_point &z, BaseRNG &rng)stan::mcmc::diag_e_metric< M, BaseRNG >inlinevirtual
T(diag_e_point &z)stan::mcmc::diag_e_metric< M, BaseRNG >inlinevirtual
tau(diag_e_point &z)stan::mcmc::diag_e_metric< M, BaseRNG >inlinevirtual
update(diag_e_point &z)stan::mcmc::base_hamiltonian< M, diag_e_point, BaseRNG >inlinevirtual
V(diag_e_point &z)stan::mcmc::base_hamiltonian< M, diag_e_point, BaseRNG >inline
~base_hamiltonian()stan::mcmc::base_hamiltonian< M, diag_e_point, BaseRNG >inline
~diag_e_metric()stan::mcmc::diag_e_metric< M, BaseRNG >inline
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1mcmc_1_1diag__e__metric.html b/doc/api/html/classstan_1_1mcmc_1_1diag__e__metric.html new file mode 100644 index 00000000000..79fffb56830 --- /dev/null +++ b/doc/api/html/classstan_1_1mcmc_1_1diag__e__metric.html @@ -0,0 +1,465 @@ + + + + + +Stan: stan::mcmc::diag_e_metric< M, BaseRNG > Class Template Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::mcmc::diag_e_metric< M, BaseRNG > Class Template Reference
+
+
+ +

#include <diag_e_metric.hpp>

+
+Inheritance diagram for stan::mcmc::diag_e_metric< M, BaseRNG >:
+
+
+ + +stan::mcmc::base_hamiltonian< M, diag_e_point, BaseRNG > + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 diag_e_metric (M &m, std::ostream *e)
 
 ~diag_e_metric ()
 
double T (diag_e_point &z)
 
double tau (diag_e_point &z)
 
double phi (diag_e_point &z)
 
const Eigen::VectorXd dtau_dq (diag_e_point &z)
 
const Eigen::VectorXd dtau_dp (diag_e_point &z)
 
const Eigen::VectorXd dphi_dq (diag_e_point &z)
 
void sample_p (diag_e_point &z, BaseRNG &rng)
 
- Public Member Functions inherited from stan::mcmc::base_hamiltonian< M, diag_e_point, BaseRNG >
 base_hamiltonian (M &m, std::ostream *e)
 
 ~base_hamiltonian ()
 
double V (diag_e_point &z)
 
double H (diag_e_point &z)
 
virtual void init (diag_e_point &z)
 
virtual void update (diag_e_point &z)
 
+ + + + + + + + + +

+Additional Inherited Members

- Protected Member Functions inherited from stan::mcmc::base_hamiltonian< M, diag_e_point, BaseRNG >
void _write_error_msg (std::ostream *error_msgs, const std::exception &e)
 
- Protected Attributes inherited from stan::mcmc::base_hamiltonian< M, diag_e_point, BaseRNG >
M & _model
 
std::ostream * _err_stream
 
+

Detailed Description

+

template<typename M, typename BaseRNG>
+class stan::mcmc::diag_e_metric< M, BaseRNG >

+ + +

Definition at line 16 of file diag_e_metric.hpp.

+

Constructor & Destructor Documentation

+ +
+
+
+template<typename M , typename BaseRNG >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
stan::mcmc::diag_e_metric< M, BaseRNG >::diag_e_metric (M & m,
std::ostream * e 
)
+
+inline
+
+ +

Definition at line 20 of file diag_e_metric.hpp.

+ +
+
+ +
+
+
+template<typename M , typename BaseRNG >
+ + + + + +
+ + + + + + + +
stan::mcmc::diag_e_metric< M, BaseRNG >::~diag_e_metric ()
+
+inline
+
+ +

Definition at line 22 of file diag_e_metric.hpp.

+ +
+
+

Member Function Documentation

+ +
+
+
+template<typename M , typename BaseRNG >
+ + + + + +
+ + + + + + + + +
const Eigen::VectorXd stan::mcmc::diag_e_metric< M, BaseRNG >::dphi_dq (diag_e_pointz)
+
+inlinevirtual
+
+ +

Implements stan::mcmc::base_hamiltonian< M, diag_e_point, BaseRNG >.

+ +

Definition at line 39 of file diag_e_metric.hpp.

+ +
+
+ +
+
+
+template<typename M , typename BaseRNG >
+ + + + + +
+ + + + + + + + +
const Eigen::VectorXd stan::mcmc::diag_e_metric< M, BaseRNG >::dtau_dp (diag_e_pointz)
+
+inlinevirtual
+
+ +

Implements stan::mcmc::base_hamiltonian< M, diag_e_point, BaseRNG >.

+ +

Definition at line 35 of file diag_e_metric.hpp.

+ +
+
+ +
+
+
+template<typename M , typename BaseRNG >
+ + + + + +
+ + + + + + + + +
const Eigen::VectorXd stan::mcmc::diag_e_metric< M, BaseRNG >::dtau_dq (diag_e_pointz)
+
+inlinevirtual
+
+ +

Implements stan::mcmc::base_hamiltonian< M, diag_e_point, BaseRNG >.

+ +

Definition at line 31 of file diag_e_metric.hpp.

+ +
+
+ +
+
+
+template<typename M , typename BaseRNG >
+ + + + + +
+ + + + + + + + +
double stan::mcmc::diag_e_metric< M, BaseRNG >::phi (diag_e_pointz)
+
+inlinevirtual
+
+ +

Implements stan::mcmc::base_hamiltonian< M, diag_e_point, BaseRNG >.

+ +

Definition at line 29 of file diag_e_metric.hpp.

+ +
+
+ +
+
+
+template<typename M , typename BaseRNG >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
void stan::mcmc::diag_e_metric< M, BaseRNG >::sample_p (diag_e_pointz,
BaseRNG & rng 
)
+
+inlinevirtual
+
+ +

Implements stan::mcmc::base_hamiltonian< M, diag_e_point, BaseRNG >.

+ +

Definition at line 43 of file diag_e_metric.hpp.

+ +
+
+ +
+
+
+template<typename M , typename BaseRNG >
+ + + + + +
+ + + + + + + + +
double stan::mcmc::diag_e_metric< M, BaseRNG >::T (diag_e_pointz)
+
+inlinevirtual
+
+ +

Implements stan::mcmc::base_hamiltonian< M, diag_e_point, BaseRNG >.

+ +

Definition at line 24 of file diag_e_metric.hpp.

+ +
+
+ +
+
+
+template<typename M , typename BaseRNG >
+ + + + + +
+ + + + + + + + +
double stan::mcmc::diag_e_metric< M, BaseRNG >::tau (diag_e_pointz)
+
+inlinevirtual
+
+ +

Implements stan::mcmc::base_hamiltonian< M, diag_e_point, BaseRNG >.

+ +

Definition at line 28 of file diag_e_metric.hpp.

+ +
+
+
The documentation for this class was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1mcmc_1_1diag__e__metric.png b/doc/api/html/classstan_1_1mcmc_1_1diag__e__metric.png new file mode 100644 index 0000000000000000000000000000000000000000..e7094c32b064b351a1cd540f1f6459291c827daa GIT binary patch literal 1200 zcmeAS@N?(olHy`uVBq!ia0y~yU`z(G12~w07U-DvobYun!!eoAg@VHQ+iZ2!%jv_N}38|m>TF! z`m#n&-)=_X>o|MQXVzQ8*^hh9Q}nD_u21n-7bk( zX1Yc3ZJPWqt%4Wc*A1VpVt+AbCA*aR`ScN=LIg8XFossljZTdjk0c93$@~c(5sQ2tusC#g_Im$3j*!Y>j zyw5)r&K-7Ke&^o;x%iYjS07*e@wDpCgpZE4@463o+OGSauvT;11Z&pkEAHOAYrE^^ z+;yv$U0=8N)!(`K=XSJaT0G6Wdo8i6)igo&%f0a6*f|rdj!iB3Z|Bpa`f~cI&etCw z+*}mgJn4)7uX>65pBGkdQh6C_wJrL-*Y4`vxfP$2-2c1Cc~4qDxw+S>(DT*TY$*^tHW~J@+RacQ5~*QJ^z7S+qW)|9tk*kpAOe?bjav%UhdoyDmIe zH~QP!f~;BhxAounmjAq8S9CMy>B^)F_x~>Zw&m;^XXlCQHZ!by>6*q6x8(Zo&+je!AcK|xEW2rd23F#W2> V^!k^rs=(rf!PC{xWt~$(69C}IPjdhO literal 0 HcmV?d00001 diff --git a/doc/api/html/classstan_1_1mcmc_1_1diag__e__nuts-members.html b/doc/api/html/classstan_1_1mcmc_1_1diag__e__nuts-members.html new file mode 100644 index 00000000000..c317bd5371b --- /dev/null +++ b/doc/api/html/classstan_1_1mcmc_1_1diag__e__nuts-members.html @@ -0,0 +1,158 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::mcmc::diag_e_nuts< M, BaseRNG > Member List
+
+
+ +

This is the complete list of members for stan::mcmc::diag_e_nuts< M, BaseRNG >, including all inherited members.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
_depthstan::mcmc::base_nuts< M, diag_e_point, diag_e_metric, expl_leapfrog, BaseRNG >
_epsilonstan::mcmc::base_hmc< M, diag_e_point, diag_e_metric, expl_leapfrog, BaseRNG >protected
_epsilon_jitterstan::mcmc::base_hmc< M, diag_e_point, diag_e_metric, expl_leapfrog, BaseRNG >protected
_err_streamstan::mcmc::base_mcmcprotected
_hamiltonianstan::mcmc::base_hmc< M, diag_e_point, diag_e_metric, expl_leapfrog, BaseRNG >protected
_integratorstan::mcmc::base_hmc< M, diag_e_point, diag_e_metric, expl_leapfrog, BaseRNG >protected
_max_deltastan::mcmc::base_nuts< M, diag_e_point, diag_e_metric, expl_leapfrog, BaseRNG >
_max_depthstan::mcmc::base_nuts< M, diag_e_point, diag_e_metric, expl_leapfrog, BaseRNG >
_n_divergentstan::mcmc::base_nuts< M, diag_e_point, diag_e_metric, expl_leapfrog, BaseRNG >
_n_leapfrogstan::mcmc::base_nuts< M, diag_e_point, diag_e_metric, expl_leapfrog, BaseRNG >
_namestan::mcmc::base_mcmcprotected
_nom_epsilonstan::mcmc::base_hmc< M, diag_e_point, diag_e_metric, expl_leapfrog, BaseRNG >protected
_out_streamstan::mcmc::base_mcmcprotected
_rand_intstan::mcmc::base_hmc< M, diag_e_point, diag_e_metric, expl_leapfrog, BaseRNG >protected
_rand_uniformstan::mcmc::base_hmc< M, diag_e_point, diag_e_metric, expl_leapfrog, BaseRNG >protected
_zstan::mcmc::base_hmc< M, diag_e_point, diag_e_metric, expl_leapfrog, BaseRNG >protected
base_hmc(M &m, BaseRNG &rng, std::ostream *o, std::ostream *e)stan::mcmc::base_hmc< M, diag_e_point, diag_e_metric, expl_leapfrog, BaseRNG >inline
base_mcmc(std::ostream *o, std::ostream *e)stan::mcmc::base_mcmcinline
base_nuts(M &m, BaseRNG &rng, std::ostream *o, std::ostream *e)stan::mcmc::base_nuts< M, diag_e_point, diag_e_metric, expl_leapfrog, BaseRNG >inline
build_tree(int depth, Eigen::VectorXd &rho, ps_point *z_init_parent, ps_point &z_propose, nuts_util &util)stan::mcmc::base_nuts< M, diag_e_point, diag_e_metric, expl_leapfrog, BaseRNG >inline
compute_criterion(ps_point &start, diag_e_point &finish, Eigen::VectorXd &rho)stan::mcmc::diag_e_nuts< M, BaseRNG >inlinevirtual
diag_e_nuts(M &m, BaseRNG &rng, std::ostream *o=&std::cout, std::ostream *e=0)stan::mcmc::diag_e_nuts< M, BaseRNG >inline
get_current_stepsize()stan::mcmc::base_hmc< M, diag_e_point, diag_e_metric, expl_leapfrog, BaseRNG >inline
get_max_delta()stan::mcmc::base_nuts< M, diag_e_point, diag_e_metric, expl_leapfrog, BaseRNG >inline
get_max_depth()stan::mcmc::base_nuts< M, diag_e_point, diag_e_metric, expl_leapfrog, BaseRNG >inline
get_nominal_stepsize()stan::mcmc::base_hmc< M, diag_e_point, diag_e_metric, expl_leapfrog, BaseRNG >inline
get_sampler_diagnostic_names(std::vector< std::string > &model_names, std::vector< std::string > &names)stan::mcmc::base_hmc< M, diag_e_point, diag_e_metric, expl_leapfrog, BaseRNG >inlinevirtual
get_sampler_diagnostics(std::vector< double > &values)stan::mcmc::base_hmc< M, diag_e_point, diag_e_metric, expl_leapfrog, BaseRNG >inlinevirtual
get_sampler_param_names(std::vector< std::string > &names)stan::mcmc::base_nuts< M, diag_e_point, diag_e_metric, expl_leapfrog, BaseRNG >inlinevirtual
get_sampler_params(std::vector< double > &values)stan::mcmc::base_nuts< M, diag_e_point, diag_e_metric, expl_leapfrog, BaseRNG >inlinevirtual
get_stepsize_jitter()stan::mcmc::base_hmc< M, diag_e_point, diag_e_metric, expl_leapfrog, BaseRNG >inline
init_stepsize()stan::mcmc::base_hmc< M, diag_e_point, diag_e_metric, expl_leapfrog, BaseRNG >inline
name()stan::mcmc::base_mcmcinline
sample_stepsize()stan::mcmc::base_hmc< M, diag_e_point, diag_e_metric, expl_leapfrog, BaseRNG >inline
seed(const Eigen::VectorXd &q)stan::mcmc::base_hmc< M, diag_e_point, diag_e_metric, expl_leapfrog, BaseRNG >inline
set_max_delta(const double d)stan::mcmc::base_nuts< M, diag_e_point, diag_e_metric, expl_leapfrog, BaseRNG >inline
set_max_depth(const int d)stan::mcmc::base_nuts< M, diag_e_point, diag_e_metric, expl_leapfrog, BaseRNG >inline
set_nominal_stepsize(const double e)stan::mcmc::base_hmc< M, diag_e_point, diag_e_metric, expl_leapfrog, BaseRNG >inlinevirtual
set_stepsize_jitter(const double j)stan::mcmc::base_hmc< M, diag_e_point, diag_e_metric, expl_leapfrog, BaseRNG >inlinevirtual
transition(sample &init_sample)stan::mcmc::base_nuts< M, diag_e_point, diag_e_metric, expl_leapfrog, BaseRNG >inlinevirtual
write_sampler_param_names(std::ostream &o)stan::mcmc::base_nuts< M, diag_e_point, diag_e_metric, expl_leapfrog, BaseRNG >inlinevirtual
write_sampler_params(std::ostream &o)stan::mcmc::base_nuts< M, diag_e_point, diag_e_metric, expl_leapfrog, BaseRNG >inlinevirtual
write_sampler_state(std::ostream *o)stan::mcmc::base_hmc< M, diag_e_point, diag_e_metric, expl_leapfrog, BaseRNG >inlinevirtual
z()stan::mcmc::base_hmc< M, diag_e_point, diag_e_metric, expl_leapfrog, BaseRNG >inline
~base_mcmc()stan::mcmc::base_mcmcinlinevirtual
~base_nuts()stan::mcmc::base_nuts< M, diag_e_point, diag_e_metric, expl_leapfrog, BaseRNG >inline
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1mcmc_1_1diag__e__nuts.html b/doc/api/html/classstan_1_1mcmc_1_1diag__e__nuts.html new file mode 100644 index 00000000000..86d960ee64f --- /dev/null +++ b/doc/api/html/classstan_1_1mcmc_1_1diag__e__nuts.html @@ -0,0 +1,332 @@ + + + + + +Stan: stan::mcmc::diag_e_nuts< M, BaseRNG > Class Template Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::mcmc::diag_e_nuts< M, BaseRNG > Class Template Reference
+
+
+ +

#include <diag_e_nuts.hpp>

+
+Inheritance diagram for stan::mcmc::diag_e_nuts< M, BaseRNG >:
+
+
+ + +stan::mcmc::base_nuts< M, diag_e_point, diag_e_metric, expl_leapfrog, BaseRNG > +stan::mcmc::base_hmc< M, diag_e_point, diag_e_metric, expl_leapfrog, BaseRNG > +stan::mcmc::base_mcmc +stan::mcmc::adapt_diag_e_nuts< M, BaseRNG > + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 diag_e_nuts (M &m, BaseRNG &rng, std::ostream *o=&std::cout, std::ostream *e=0)
 
bool compute_criterion (ps_point &start, diag_e_point &finish, Eigen::VectorXd &rho)
 
- Public Member Functions inherited from stan::mcmc::base_nuts< M, diag_e_point, diag_e_metric, expl_leapfrog, BaseRNG >
 base_nuts (M &m, BaseRNG &rng, std::ostream *o, std::ostream *e)
 
 ~base_nuts ()
 
void set_max_depth (const int d)
 
void set_max_delta (const double d)
 
int get_max_depth ()
 
double get_max_delta ()
 
sample transition (sample &init_sample)
 
void write_sampler_param_names (std::ostream &o)
 
void write_sampler_params (std::ostream &o)
 
void get_sampler_param_names (std::vector< std::string > &names)
 
void get_sampler_params (std::vector< double > &values)
 
int build_tree (int depth, Eigen::VectorXd &rho, ps_point *z_init_parent, ps_point &z_propose, nuts_util &util)
 
- Public Member Functions inherited from stan::mcmc::base_hmc< M, diag_e_point, diag_e_metric, expl_leapfrog, BaseRNG >
 base_hmc (M &m, BaseRNG &rng, std::ostream *o, std::ostream *e)
 
void write_sampler_state (std::ostream *o)
 
void get_sampler_diagnostic_names (std::vector< std::string > &model_names, std::vector< std::string > &names)
 
void get_sampler_diagnostics (std::vector< double > &values)
 
void seed (const Eigen::VectorXd &q)
 
void init_stepsize ()
 
diag_e_pointz ()
 
virtual void set_nominal_stepsize (const double e)
 
double get_nominal_stepsize ()
 
double get_current_stepsize ()
 
virtual void set_stepsize_jitter (const double j)
 
double get_stepsize_jitter ()
 
void sample_stepsize ()
 
- Public Member Functions inherited from stan::mcmc::base_mcmc
 base_mcmc (std::ostream *o, std::ostream *e)
 
virtual ~base_mcmc ()
 
std::string name ()
 
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Additional Inherited Members

- Public Attributes inherited from stan::mcmc::base_nuts< M, diag_e_point, diag_e_metric, expl_leapfrog, BaseRNG >
int _depth
 
int _max_depth
 
double _max_delta
 
int _n_leapfrog
 
int _n_divergent
 
- Protected Attributes inherited from stan::mcmc::base_hmc< M, diag_e_point, diag_e_metric, expl_leapfrog, BaseRNG >
diag_e_point _z
 
expl_leapfrog< diag_e_metric
+< M, BaseRNG >, diag_e_point
_integrator
 
diag_e_metric< M, BaseRNG > _hamiltonian
 
BaseRNG & _rand_int
 
boost::uniform_01< BaseRNG & > _rand_uniform
 
double _nom_epsilon
 
double _epsilon
 
double _epsilon_jitter
 
+

Detailed Description

+

template<typename M, class BaseRNG>
+class stan::mcmc::diag_e_nuts< M, BaseRNG >

+ + +

Definition at line 17 of file diag_e_nuts.hpp.

+

Constructor & Destructor Documentation

+ +
+
+
+template<typename M , class BaseRNG >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
stan::mcmc::diag_e_nuts< M, BaseRNG >::diag_e_nuts (M & m,
BaseRNG & rng,
std::ostream * o = &std::cout,
std::ostream * e = 0 
)
+
+inline
+
+ +

Definition at line 25 of file diag_e_nuts.hpp.

+ +
+
+

Member Function Documentation

+ +
+
+
+template<typename M , class BaseRNG >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
bool stan::mcmc::diag_e_nuts< M, BaseRNG >::compute_criterion (ps_pointstart,
diag_e_pointfinish,
Eigen::VectorXd & rho 
)
+
+inlinevirtual
+
+
+
The documentation for this class was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1mcmc_1_1diag__e__nuts.png b/doc/api/html/classstan_1_1mcmc_1_1diag__e__nuts.png new file mode 100644 index 0000000000000000000000000000000000000000..e5b42fcc07d746ba5468e9cf15440059334f2627 GIT binary patch literal 3177 zcmeH~SyU5Q9>#+xIEn@v6_u9Q&0?d6JrYC~Z5Id-LG~pP0TI&dBoGrML~XSj#Apm_ zBvFmsqftn72NcR9PhzAnR$(+kn$ru#DbrpCs` zEx!*yWS3j9PUoFLvWLDNJ#8*VAkg+N@H3}euF8orr&6+yD4(l_1dpvk7Bw&A)C6S- z0?o<_ngzht-7U92=U*miYd%}ex$T`no|&=c~3J=(FaYqI2Z6Iqh7?xdsXmU4~Bx~ zn~xVYBxt~gUR7u46$(n?w89+qewYMh3adZZbmM00`eOGQPt1O1PJrwhbCsD|Lg%1| zGjJd`Fwel=t{Vaf02=dft0l8%Dt4*Zlrn$t8b(4aT3YQLVL+q1%A+{uhbNDdbnZUq z8pwvAGL%uLrE@zjh(|nbNuR)?~|u-4U_3DbP!?3b}q(Z|A=}$dO}(mBgi zyd63jN$?hdvSZmO4~zp1-oMZu|E}*u^>Vt<{Oa0rvM@$I6?^=CuR|E-Znb^G9s@{4 zfv5$$Ak+YYZ!Rg#&`kO`C=Z~c#2e$>!-U0%BLQtKTbZ2LPHNlyD$!(m^bIB9xbtmg5?3ru0}{b?D_` zR_Gg`Xp2?Nrm8l~u&hf%GD?C^05Rb7otO}{D)pB;2Xv>>Ngd5ze4dAE za|pYrb`i=sQ*{ef6kv4Ly{B-setfR8Sksl7GeSw8fYIub^iKW(`r^HkbF z`H8(BzgSXpP@N3ny04K>uoq<$oIo?sh0A)JGJ1UjI6|t^HYZzQKd5FzK^cU6WUynH z#MgC^M>4(==cCLhc$rbaO~xceS^ZmeE#tgS?x9?&-cGn|xNNAe7sXr_7_IUfkR*gt zI-@E+KZ_&wxef9HwcVFioEk;@ZM#XL{nUh2M_|O7qA<#4tu4l8FHEFg95+|ifKMz| zk`zzWo2(ugo|e6~C_(MT!q2Cs{FdHGSZZ_HhKX_d)E&k@eakt=%9c;P`|FM3^mXM^ z-kVHcx*N^pB@(hBNsL%OvU01f?xX(r&ZGTS;0XU)>!!VVsum{yPu>HZ# z8STzXVHqZoMM5KyMB{*Nh6`PMqR=klSs_garqXX9*fD4=P|JqJ{d7q+XarR3`qE^< zw5~XY^u|J})*2yc7J%?=A|M*%D$!oUsol^KY335h|WV3mUQU%<8DOZezn)gb}(rk}j~YSb57B z08Rsno5X=LL`B`g_*uF*Wn$O@l{c0dYc}!gaUOp=F=9(d@ueRvMRN#;9eir6aN_<^Lxm4jtB2@LP>%9avXx#{(q1B<-Kbe zbS8Qm6P=;AQ$@C%q5s>HmfU%AUL-g|oBPaxh(4Ov3~nSLVZB!IGZhM7q{udC;{`5L zH6U4-c`8aU;2XVmp}^|Jynh`1@F9p&c~jTo*lDAmQk8kjV+$)yk64or%M+U!g^zKF z)LrdGQBIz=kgHlmk`V9v{OQ@1CG$F$_M{u`eLsh;#gx^To+uB81| zIqak|Qx3U{DJRROzZ3zpKmfb#0Vqlhgc|^DA|zy^^H^y7Rc#2q$$jv zx~edHQda*?ksJV>+|eX&TOIsOP55<9RK`ZyZ$N{g1-x7T^&j~@19pMu4oF({L&yGY zV}aI%uN%9=bm7+fX&0%kOq@b%H0Dmv;!ytD1QX)3Ho(X8Xq6n*HVK5vi}d`_LM`32 zst<|s8kI!fj~<@>@M+@6M-&jS+4#vLmy~XZ`h=CCMSPUov)_Ce6AA9g(X2^UOvy;v z^>d=6oL}6P?iiw;mpu?B2}S8^Qv3?oKJ}R1l+k;In^8DM(iVvj!Agn+e%A z-3=cYG<8kZO{St(41#>_7is6AmI865@H=(}CtoeCekolY73dEskXgk(ZwfI}>NcDDZgB<+?}qCIF5x@Ru_9Rpg_9jzN=2)Cf&|MXA5G5T vMeG46yKTDnZY*^hfRlaBue + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::mcmc::diag_e_point Member List
+
+
+ +

This is the complete list of members for stan::mcmc::diag_e_point, including all inherited members.

+ + + + + + + + + + + + + + + + +
_fast_matrix_copy(Eigen::Matrix< T, Eigen::Dynamic, Eigen::Dynamic > &v_to, const Eigen::Matrix< T, Eigen::Dynamic, Eigen::Dynamic > &v_from)stan::mcmc::ps_pointinlineprotected
_fast_vector_copy(Eigen::Matrix< T, Eigen::Dynamic, 1 > &v_to, const Eigen::Matrix< T, Eigen::Dynamic, 1 > &v_from)stan::mcmc::ps_pointinlineprotected
diag_e_point(int n)stan::mcmc::diag_e_pointinline
diag_e_point(const diag_e_point &z)stan::mcmc::diag_e_pointinline
gstan::mcmc::ps_point
get_param_names(std::vector< std::string > &model_names, std::vector< std::string > &names)stan::mcmc::ps_pointinlinevirtual
get_params(std::vector< double > &values)stan::mcmc::ps_pointinlinevirtual
mInvstan::mcmc::diag_e_point
operator=(const ps_point &z)stan::mcmc::ps_pointinline
pstan::mcmc::ps_point
ps_point(int n)stan::mcmc::ps_pointinline
ps_point(const ps_point &z)stan::mcmc::ps_pointinline
qstan::mcmc::ps_point
Vstan::mcmc::ps_point
write_metric(std::ostream *o)stan::mcmc::diag_e_pointinlinevirtual
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1mcmc_1_1diag__e__point.html b/doc/api/html/classstan_1_1mcmc_1_1diag__e__point.html new file mode 100644 index 00000000000..23a1d2ec1d8 --- /dev/null +++ b/doc/api/html/classstan_1_1mcmc_1_1diag__e__point.html @@ -0,0 +1,272 @@ + + + + + +Stan: stan::mcmc::diag_e_point Class Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::mcmc::diag_e_point Class Reference
+
+
+ +

#include <diag_e_point.hpp>

+
+Inheritance diagram for stan::mcmc::diag_e_point:
+
+
+ + +stan::mcmc::ps_point + +
+ + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 diag_e_point (int n)
 
 diag_e_point (const diag_e_point &z)
 
void write_metric (std::ostream *o)
 
- Public Member Functions inherited from stan::mcmc::ps_point
 ps_point (int n)
 
 ps_point (const ps_point &z)
 
ps_pointoperator= (const ps_point &z)
 
virtual void get_param_names (std::vector< std::string > &model_names, std::vector< std::string > &names)
 
virtual void get_params (std::vector< double > &values)
 
+ + + + + + + + + + + + +

+Public Attributes

Eigen::VectorXd mInv
 
- Public Attributes inherited from stan::mcmc::ps_point
Eigen::VectorXd q
 
Eigen::VectorXd p
 
double V
 
Eigen::VectorXd g
 
+ + + + + + + + +

+Additional Inherited Members

- Protected Member Functions inherited from stan::mcmc::ps_point
template<typename T >
void _fast_vector_copy (Eigen::Matrix< T, Eigen::Dynamic, 1 > &v_to, const Eigen::Matrix< T, Eigen::Dynamic, 1 > &v_from)
 
template<typename T >
void _fast_matrix_copy (Eigen::Matrix< T, Eigen::Dynamic, Eigen::Dynamic > &v_to, const Eigen::Matrix< T, Eigen::Dynamic, Eigen::Dynamic > &v_from)
 
+

Detailed Description

+
+

Definition at line 12 of file diag_e_point.hpp.

+

Constructor & Destructor Documentation

+ +
+
+ + + + + +
+ + + + + + + + +
stan::mcmc::diag_e_point::diag_e_point (int n)
+
+inline
+
+ +

Definition at line 16 of file diag_e_point.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
stan::mcmc::diag_e_point::diag_e_point (const diag_e_pointz)
+
+inline
+
+ +

Definition at line 22 of file diag_e_point.hpp.

+ +
+
+

Member Function Documentation

+ +
+
+ + + + + +
+ + + + + + + + +
void stan::mcmc::diag_e_point::write_metric (std::ostream * o)
+
+inlinevirtual
+
+ +

Reimplemented from stan::mcmc::ps_point.

+ +

Definition at line 26 of file diag_e_point.hpp.

+ +
+
+

Member Data Documentation

+ +
+
+ + + + +
Eigen::VectorXd stan::mcmc::diag_e_point::mInv
+
+ +

Definition at line 18 of file diag_e_point.hpp.

+ +
+
+
The documentation for this class was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1mcmc_1_1diag__e__point.png b/doc/api/html/classstan_1_1mcmc_1_1diag__e__point.png new file mode 100644 index 0000000000000000000000000000000000000000..453f1e9356590d9ace687df3d0cff7ccde240cea GIT binary patch literal 626 zcmeAS@N?(olHy`uVBq!ia0vp^(}6gEgBeIFuMu|#QW60^A+G=b{|7Q(y!l$%e`o@b z1;z&s9ANFdBM;mzb&p>& zJo@NXLHpv|+q+X=Ih4QAJ=(cmb;=U2fR|_wJ)xch@_w zQ<%E8!|3k%?B_GGQ}ZD+yr)bPc{$Crre9Y+pkAcMuzL>o z0lnu;8&2$Ly8y^^DkA_Wkt) zZHJq$R!Dz;{Y9qOQ>DCN+0>_-H_xs*^EGk(@gl|k{ombR*3bABxbCT}PX3>y+R3Z! rEEi + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::mcmc::diag_e_static_hmc< M, BaseRNG > Member List
+
+
+ +

This is the complete list of members for stan::mcmc::diag_e_static_hmc< M, BaseRNG >, including all inherited members.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
_epsilonstan::mcmc::base_hmc< M, diag_e_point, diag_e_metric, expl_leapfrog, BaseRNG >protected
_epsilon_jitterstan::mcmc::base_hmc< M, diag_e_point, diag_e_metric, expl_leapfrog, BaseRNG >protected
_err_streamstan::mcmc::base_mcmcprotected
_hamiltonianstan::mcmc::base_hmc< M, diag_e_point, diag_e_metric, expl_leapfrog, BaseRNG >protected
_integratorstan::mcmc::base_hmc< M, diag_e_point, diag_e_metric, expl_leapfrog, BaseRNG >protected
_namestan::mcmc::base_mcmcprotected
_nom_epsilonstan::mcmc::base_hmc< M, diag_e_point, diag_e_metric, expl_leapfrog, BaseRNG >protected
_out_streamstan::mcmc::base_mcmcprotected
_rand_intstan::mcmc::base_hmc< M, diag_e_point, diag_e_metric, expl_leapfrog, BaseRNG >protected
_rand_uniformstan::mcmc::base_hmc< M, diag_e_point, diag_e_metric, expl_leapfrog, BaseRNG >protected
_update_L()stan::mcmc::base_static_hmc< M, diag_e_point, diag_e_metric, expl_leapfrog, BaseRNG >inlineprotected
_zstan::mcmc::base_hmc< M, diag_e_point, diag_e_metric, expl_leapfrog, BaseRNG >protected
base_hmc(M &m, BaseRNG &rng, std::ostream *o, std::ostream *e)stan::mcmc::base_hmc< M, diag_e_point, diag_e_metric, expl_leapfrog, BaseRNG >inline
base_mcmc(std::ostream *o, std::ostream *e)stan::mcmc::base_mcmcinline
base_static_hmc(M &m, BaseRNG &rng, std::ostream *o, std::ostream *e)stan::mcmc::base_static_hmc< M, diag_e_point, diag_e_metric, expl_leapfrog, BaseRNG >inline
diag_e_static_hmc(M &m, BaseRNG &rng, std::ostream *o=&std::cout, std::ostream *e=0)stan::mcmc::diag_e_static_hmc< M, BaseRNG >inline
get_current_stepsize()stan::mcmc::base_hmc< M, diag_e_point, diag_e_metric, expl_leapfrog, BaseRNG >inline
get_L()stan::mcmc::base_static_hmc< M, diag_e_point, diag_e_metric, expl_leapfrog, BaseRNG >inline
get_nominal_stepsize()stan::mcmc::base_hmc< M, diag_e_point, diag_e_metric, expl_leapfrog, BaseRNG >inline
get_sampler_diagnostic_names(std::vector< std::string > &model_names, std::vector< std::string > &names)stan::mcmc::base_hmc< M, diag_e_point, diag_e_metric, expl_leapfrog, BaseRNG >inlinevirtual
get_sampler_diagnostics(std::vector< double > &values)stan::mcmc::base_hmc< M, diag_e_point, diag_e_metric, expl_leapfrog, BaseRNG >inlinevirtual
get_sampler_param_names(std::vector< std::string > &names)stan::mcmc::base_static_hmc< M, diag_e_point, diag_e_metric, expl_leapfrog, BaseRNG >inlinevirtual
get_sampler_params(std::vector< double > &values)stan::mcmc::base_static_hmc< M, diag_e_point, diag_e_metric, expl_leapfrog, BaseRNG >inlinevirtual
get_stepsize_jitter()stan::mcmc::base_hmc< M, diag_e_point, diag_e_metric, expl_leapfrog, BaseRNG >inline
get_T()stan::mcmc::base_static_hmc< M, diag_e_point, diag_e_metric, expl_leapfrog, BaseRNG >inline
init_stepsize()stan::mcmc::base_hmc< M, diag_e_point, diag_e_metric, expl_leapfrog, BaseRNG >inline
L_stan::mcmc::base_static_hmc< M, diag_e_point, diag_e_metric, expl_leapfrog, BaseRNG >protected
name()stan::mcmc::base_mcmcinline
sample_stepsize()stan::mcmc::base_hmc< M, diag_e_point, diag_e_metric, expl_leapfrog, BaseRNG >inline
seed(const Eigen::VectorXd &q)stan::mcmc::base_hmc< M, diag_e_point, diag_e_metric, expl_leapfrog, BaseRNG >inline
set_nominal_stepsize(const double e)stan::mcmc::base_static_hmc< M, diag_e_point, diag_e_metric, expl_leapfrog, BaseRNG >inlinevirtual
set_nominal_stepsize_and_L(const double e, const int l)stan::mcmc::base_static_hmc< M, diag_e_point, diag_e_metric, expl_leapfrog, BaseRNG >inline
set_nominal_stepsize_and_T(const double e, const double t)stan::mcmc::base_static_hmc< M, diag_e_point, diag_e_metric, expl_leapfrog, BaseRNG >inline
set_stepsize_jitter(const double j)stan::mcmc::base_hmc< M, diag_e_point, diag_e_metric, expl_leapfrog, BaseRNG >inlinevirtual
set_T(const double t)stan::mcmc::base_static_hmc< M, diag_e_point, diag_e_metric, expl_leapfrog, BaseRNG >inline
T_stan::mcmc::base_static_hmc< M, diag_e_point, diag_e_metric, expl_leapfrog, BaseRNG >protected
transition(sample &init_sample)stan::mcmc::base_static_hmc< M, diag_e_point, diag_e_metric, expl_leapfrog, BaseRNG >inlinevirtual
write_sampler_param_names(std::ostream &o)stan::mcmc::base_static_hmc< M, diag_e_point, diag_e_metric, expl_leapfrog, BaseRNG >inlinevirtual
write_sampler_params(std::ostream &o)stan::mcmc::base_static_hmc< M, diag_e_point, diag_e_metric, expl_leapfrog, BaseRNG >inlinevirtual
write_sampler_state(std::ostream *o)stan::mcmc::base_hmc< M, diag_e_point, diag_e_metric, expl_leapfrog, BaseRNG >inlinevirtual
z()stan::mcmc::base_hmc< M, diag_e_point, diag_e_metric, expl_leapfrog, BaseRNG >inline
~base_mcmc()stan::mcmc::base_mcmcinlinevirtual
~base_static_hmc()stan::mcmc::base_static_hmc< M, diag_e_point, diag_e_metric, expl_leapfrog, BaseRNG >inline
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1mcmc_1_1diag__e__static__hmc.html b/doc/api/html/classstan_1_1mcmc_1_1diag__e__static__hmc.html new file mode 100644 index 00000000000..ab75fc88ec5 --- /dev/null +++ b/doc/api/html/classstan_1_1mcmc_1_1diag__e__static__hmc.html @@ -0,0 +1,262 @@ + + + + + +Stan: stan::mcmc::diag_e_static_hmc< M, BaseRNG > Class Template Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::mcmc::diag_e_static_hmc< M, BaseRNG > Class Template Reference
+
+
+ +

#include <diag_e_static_hmc.hpp>

+
+Inheritance diagram for stan::mcmc::diag_e_static_hmc< M, BaseRNG >:
+
+
+ + +stan::mcmc::base_static_hmc< M, diag_e_point, diag_e_metric, expl_leapfrog, BaseRNG > +stan::mcmc::base_hmc< M, diag_e_point, diag_e_metric, expl_leapfrog, BaseRNG > +stan::mcmc::base_mcmc +stan::mcmc::adapt_diag_e_static_hmc< M, BaseRNG > + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 diag_e_static_hmc (M &m, BaseRNG &rng, std::ostream *o=&std::cout, std::ostream *e=0)
 
- Public Member Functions inherited from stan::mcmc::base_static_hmc< M, diag_e_point, diag_e_metric, expl_leapfrog, BaseRNG >
 base_static_hmc (M &m, BaseRNG &rng, std::ostream *o, std::ostream *e)
 
 ~base_static_hmc ()
 
sample transition (sample &init_sample)
 
void write_sampler_param_names (std::ostream &o)
 
void write_sampler_params (std::ostream &o)
 
void get_sampler_param_names (std::vector< std::string > &names)
 
void get_sampler_params (std::vector< double > &values)
 
void set_nominal_stepsize_and_T (const double e, const double t)
 
void set_nominal_stepsize_and_L (const double e, const int l)
 
void set_T (const double t)
 
void set_nominal_stepsize (const double e)
 
double get_T ()
 
int get_L ()
 
- Public Member Functions inherited from stan::mcmc::base_hmc< M, diag_e_point, diag_e_metric, expl_leapfrog, BaseRNG >
 base_hmc (M &m, BaseRNG &rng, std::ostream *o, std::ostream *e)
 
void write_sampler_state (std::ostream *o)
 
void get_sampler_diagnostic_names (std::vector< std::string > &model_names, std::vector< std::string > &names)
 
void get_sampler_diagnostics (std::vector< double > &values)
 
void seed (const Eigen::VectorXd &q)
 
void init_stepsize ()
 
diag_e_pointz ()
 
double get_nominal_stepsize ()
 
double get_current_stepsize ()
 
virtual void set_stepsize_jitter (const double j)
 
double get_stepsize_jitter ()
 
void sample_stepsize ()
 
- Public Member Functions inherited from stan::mcmc::base_mcmc
 base_mcmc (std::ostream *o, std::ostream *e)
 
virtual ~base_mcmc ()
 
std::string name ()
 
+ + + + + + + + + +

+Additional Inherited Members

- Protected Member Functions inherited from stan::mcmc::base_static_hmc< M, diag_e_point, diag_e_metric, expl_leapfrog, BaseRNG >
void _update_L ()
 
- Protected Attributes inherited from stan::mcmc::base_static_hmc< M, diag_e_point, diag_e_metric, expl_leapfrog, BaseRNG >
double T_
 
int L_
 
+

Detailed Description

+

template<typename M, class BaseRNG>
+class stan::mcmc::diag_e_static_hmc< M, BaseRNG >

+ + +

Definition at line 18 of file diag_e_static_hmc.hpp.

+

Constructor & Destructor Documentation

+ +
+
+
+template<typename M , class BaseRNG >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
stan::mcmc::diag_e_static_hmc< M, BaseRNG >::diag_e_static_hmc (M & m,
BaseRNG & rng,
std::ostream * o = &std::cout,
std::ostream * e = 0 
)
+
+inline
+
+ +

Definition at line 26 of file diag_e_static_hmc.hpp.

+ +
+
+
The documentation for this class was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1mcmc_1_1diag__e__static__hmc.png b/doc/api/html/classstan_1_1mcmc_1_1diag__e__static__hmc.png new file mode 100644 index 0000000000000000000000000000000000000000..7a63181e89c7be317e231f9659bc233e3eb7860a GIT binary patch literal 3332 zcmd6qX;4#H7RSRdhE_8qAVC%p0u(s@{9|p1SAOy>y+?BE6rBHt&yXTe{4fRiK2eA&Qwk=lM~(586^JCdYDn!mav3+FjnL%;COtO^2t zE7nLOAANi&$IF!)r-TkCGs<(bO+yU$UQ*+G_DfCRw04=0)(_>RsPgD!VY3j`A(0wk z-h?vkzLi%$kyDwwFrCm3^bk)v=T}e`*gMA0y~*_!>gc&886|_mR<`GPzx%JLU_SXi z=N@CA?V+;U@;R<@z?`U@WL4yQ({AyOba=n>ZW)s1NB*?C7L+Ne971wJs`{4areG~p z3*A5nG+9Hm z?KbAy7`Mvoty#mfNPckGFT;`YGaRpD!*^Op%!9$(imU4lv)h;8Q3%WL{w4M zd;;Xta43`J-Qam1JpDI8-TmvmWf+Ab!;b+GUL*I?4tP%6q^ZFE@EwW{$#8fe(uenL zE!}8vJ-xD@`8?RGaqV+JtClmpIAThgJdl7hHAnQ9ooowiDu*aqRl?!a=1`AUc}UUT z{xTt0k8t|+dTrcP$0si*x>v(OiDC-?YIQF`J7T}IkvTzcw5Kb%{$H^ z?zQy?r^%$kn}TJBF31ZcKYh$X5$)ML@_6CULmmBH7f4^#rf(Y#8pSR2B~fyCmr>kl zgSskYv2(+kk5bW74}RBfb1dWHDYT9YSNW#g*eTs|sbUN%EYmPR)3iH1(&{#02O{t? z2^zdkSVSl*p^qROBatxlGWbto?8hA}*lA^^3T~X;Vz-GvoXoAhO?B^ZE`y2{pFROd zTTF(S0%q$s1pX!WO(ziS|6_@`sJgj~!V6;J4Icu*OAL&dc2bHMZz9TqH2;gME-N5y z!#~UNj5WCuV={u|L){EWlR~G)HJDj<#2SnlJ9eQ*q=c62qrO>RsP9=GN10+r;~^iY z;Aj;zL+B`hm<}2uhDdxlo=VBCA`HIlj5C^Yr&kF&(=SuX`qPXbxnI}}h4xx)qN&|S ztF80mqqWNH6L!5l(ljOA{h<7X%Tg|RN=af2_vPghi?D7!-hH^Pieo+gzTkL&hK2r6 z6VDS>qCEYqs$WghCaocp17MW$9V5O5JqtCaIL3eZ!M!>k(a=9mh-bd)FEo*?hIh{s zbic-P?zJ7c@__pO-Hx=vSthL(bx-RfQAZH)qw4w-F8;SGz2tBe)0%9|UEZ@v{Dd-_ z=9}NLM$?CtNmmN@6E4$H!I|r4I1+E8cHB&@Tk^P(?Zjn>8nmrS1TZkCVN6TEk%yoq7tDBbORQQ5d`liXwph8&70}n5W}Guk2gDw&H)dy0Y)Az$sR0 zhNuK5u2gBZz~Eh5aGDbn1U8~ZdhQ7%zmwrF310?qD%I`!<4tcD8gcV!$ko{=sGCvw zf}n%{lc}r~R!QehA*RaN1!Kk_5f<8ghqX@~tjx%RzKTyKy}wAD!rwnigbEi`O$yXU zKT}_XE8A5le!TBo!t}1n&9=N|!);;jCrnWN@uPciVXtz*{8B-tDw5Aozt*$Xo^N@6 zOA19-rgrdQ;BR^L{z!hvY63*lxAv+nHmIvIiP90aGJekTBC9*=2%wGp2$EmNYfPP5 z%iREn?N~B0G}$oxztJW92*mUxO3$A%lS{>4BpxAbk3iyeCG| zJU(&lg`+S0f~4T3E50G-eQ7Gwv-q&7xDy9ivL9wXFofGj>bdeW%e!<4bcOhUA)-#4 znoy)*W9FHjH`GWBcI>0uLOntVUr2|1wNK!}x;(?lFtDNnd2V8Eo@FK9uNHf!l~~gT zo3THwAG2WFoegd0zYcVeF$)|Om5N+Zl_SgO=f(oNyF3koztO= z1gYSEtuV$QBQ4Z7it{}q3uTyXf1foTY$7&2TCRlT%dPzssL>o5NT)#*%im>0Q}04( z@POYJ6CgX@snkq9mUoJkhf@_I2hz7bw#T7pS9@aR>y6PU| z=dpA2or|wOzPy@YM695OMI~@PLwSCig5rw>b*ygpO$U12XHj~pBRiXuP}FW~sbABj zZ7KIF(_k-_3=06qzMc1tEo#V~Y$IkJ*xNt5qCK_+#ndMR>IwRuaLsyK`3WJe6eIrN zQ-L>O+lj#I9&}N%tNhNvulMcHv>_y)6@)Ilc6E&cdE6Asvl_^H9TS&xG%|O^Ot7&#w{#Ap)#BZV-of3<#Eh^19R@;pbb0xXE0?F_W z<_ANt=4s(>Dy&IbC}x*b#k1T%{IB~fQB0*91HIPoMDHj&Y|!1(K}Lm%6vP)UbbZvI z;j8HZKH8v*$f?z$I;MTjd=>~V@)!$)quW=}u=N752p>_xW6zfZ*9K&$)c3RfR#l7B iFb + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::mcmc::expl_leapfrog< H, P > Member List
+
+
+ +

This is the complete list of members for stan::mcmc::expl_leapfrog< H, P >, including all inherited members.

+ + + + + + + + + + +
_out_streamstan::mcmc::base_integrator< H, P >protected
base_integrator(std::ostream *o)stan::mcmc::base_integrator< H, P >inline
base_leapfrog(std::ostream *o)stan::mcmc::base_leapfrog< H, P >inline
begin_update_p(P &z, H &hamiltonian, double epsilon)stan::mcmc::expl_leapfrog< H, P >inlinevirtual
end_update_p(P &z, H &hamiltonian, double epsilon)stan::mcmc::expl_leapfrog< H, P >inlinevirtual
evolve(P &z, H &hamiltonian, const double epsilon)stan::mcmc::base_leapfrog< H, P >inlinevirtual
expl_leapfrog(std::ostream *o=0)stan::mcmc::expl_leapfrog< H, P >inline
update_q(P &z, H &hamiltonian, double epsilon)stan::mcmc::expl_leapfrog< H, P >inlinevirtual
verbose_evolve(P &z, H &hamiltonian, const double epsilon)stan::mcmc::base_leapfrog< H, P >inline
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1mcmc_1_1expl__leapfrog.html b/doc/api/html/classstan_1_1mcmc_1_1expl__leapfrog.html new file mode 100644 index 00000000000..4bd674b1eba --- /dev/null +++ b/doc/api/html/classstan_1_1mcmc_1_1expl__leapfrog.html @@ -0,0 +1,329 @@ + + + + + +Stan: stan::mcmc::expl_leapfrog< H, P > Class Template Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::mcmc::expl_leapfrog< H, P > Class Template Reference
+
+
+ +

#include <expl_leapfrog.hpp>

+
+Inheritance diagram for stan::mcmc::expl_leapfrog< H, P >:
+
+
+ + +stan::mcmc::base_leapfrog< H, P > +stan::mcmc::base_integrator< H, P > + +
+ + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 expl_leapfrog (std::ostream *o=0)
 
void begin_update_p (P &z, H &hamiltonian, double epsilon)
 
void update_q (P &z, H &hamiltonian, double epsilon)
 
void end_update_p (P &z, H &hamiltonian, double epsilon)
 
- Public Member Functions inherited from stan::mcmc::base_leapfrog< H, P >
 base_leapfrog (std::ostream *o)
 
void evolve (P &z, H &hamiltonian, const double epsilon)
 
void verbose_evolve (P &z, H &hamiltonian, const double epsilon)
 
- Public Member Functions inherited from stan::mcmc::base_integrator< H, P >
 base_integrator (std::ostream *o)
 
+ + + + +

+Additional Inherited Members

- Protected Attributes inherited from stan::mcmc::base_integrator< H, P >
std::ostream * _out_stream
 
+

Detailed Description

+

template<typename H, typename P>
+class stan::mcmc::expl_leapfrog< H, P >

+ + +

Definition at line 12 of file expl_leapfrog.hpp.

+

Constructor & Destructor Documentation

+ +
+
+
+template<typename H, typename P>
+ + + + + +
+ + + + + + + + +
stan::mcmc::expl_leapfrog< H, P >::expl_leapfrog (std::ostream * o = 0)
+
+inline
+
+ +

Definition at line 16 of file expl_leapfrog.hpp.

+ +
+
+

Member Function Documentation

+ +
+
+
+template<typename H, typename P>
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
void stan::mcmc::expl_leapfrog< H, P >::begin_update_p (P & z,
H & hamiltonian,
double epsilon 
)
+
+inlinevirtual
+
+ +

Implements stan::mcmc::base_leapfrog< H, P >.

+ +

Definition at line 18 of file expl_leapfrog.hpp.

+ +
+
+ +
+
+
+template<typename H, typename P>
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
void stan::mcmc::expl_leapfrog< H, P >::end_update_p (P & z,
H & hamiltonian,
double epsilon 
)
+
+inlinevirtual
+
+ +

Implements stan::mcmc::base_leapfrog< H, P >.

+ +

Definition at line 27 of file expl_leapfrog.hpp.

+ +
+
+ +
+
+
+template<typename H, typename P>
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
void stan::mcmc::expl_leapfrog< H, P >::update_q (P & z,
H & hamiltonian,
double epsilon 
)
+
+inlinevirtual
+
+ +

Implements stan::mcmc::base_leapfrog< H, P >.

+ +

Definition at line 22 of file expl_leapfrog.hpp.

+ +
+
+
The documentation for this class was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1mcmc_1_1expl__leapfrog.png b/doc/api/html/classstan_1_1mcmc_1_1expl__leapfrog.png new file mode 100644 index 0000000000000000000000000000000000000000..7d2e0b47353b9fdbca1ae69074c2c98d50c331bd GIT binary patch literal 1215 zcmeAS@N?(olHy`uVBq!ia0vp^H-Wf=gBeK1ZrUdXq$C1-LR|m<{|{uoc=NTi|Ih>= z3ycpOIKbL@M;^%KC<*clW&kPzfvcxNj2IYL{5)M8Ln;{G&b{5ItjNRKeL3jg|H z6tOSdDcLKc51c+#meYCM_gCGsMGLOf@a-z?eQY=JXYO;M{^w0+WEQJ>i&c8)&GNF> zeJH+S;?slfZ8hsnvOXvMmEFJj$M*Bb-p)Alaj(<1+^v6~f4+Km%I%Evcbm=>UwMC~ zbz|QRt{~e}^CzpGzq4SEvFE}oH|NGqoLU~{`JZ`{!p*cbd3!gX5?ofYa&qkc%}uM% z99ygP_NkZSx}&!u-Y+kb*t}v*@5%`&TMc*Zx}|Y)%crk$wMv`b&s6!_827U$?q^Ng znl%|$yRG~%vXU7@|T$xc$a#A ztN7A&P4}kon&2&UC*5*cGJKnP7U=RCHEc6E!2s03oZ(GKpd$XViEnI|=On8uAPY=R zsI1hTn&LPq?&{Xh3te}7iRE1rIir43$i?du?%vquRQBlQiL`%D1+Goz_$D)dZtc?A zOJ5gHl`Wnt;xos0_YK#@`C^}6Lt;S;7z+oWv2f;Ho>}qD|7P7cP4+6B{$!-=-3E+< z3tso{bVNUxvF1sS@v#$XM}Aq?rRS|Xam+UMp7QOoJO4ialw!Z5S88-VaR26JqbZ>i zY-Yx(c+cC}82_-nyv((%BK@efwF>v7++(lKmOnd@w{LUvc{f$*?Vq+xTc(hzJ8ff? z{nWh@wPshiWo_=;l~e56RcDs5zv+Iz zriy1$NpQWtn&*FKng+XK%Y~&J46<1h7`H5SWVB<+?6!UFsCd{2bb^fgL36>pSP3CPjTUA+Oy~fLaZpxjK&)-vKZ@qg^Z^!v(hWp*O z9oyo%EhqW-G>tn;-dmqPb3ZrWuHwJkn%r4&6GST`C#XK&;?KJKlKJ*c?^86gva8NL znYA`4Zfdvv>-3zdId_7exo*ncoxCaI!TS|X&n#b+mqoN?y^L9M#{d1AZ9Th}J}P>5 z=cee*mvckoPBTU_+@5oF--|HWcl(Xq%RbMQtutG7bH~&brFst6k~CL;tq+mj+q!mh z`qqn^nXZKVp2zs7Z{2mfjTS4PGlc&Vh>W~(Zt)j$-Wg@a5AyeJer3pT=h}Z&<{#Sd iwEJf%k75hoSN>4%@PrBXBs74f4TGnvpUXO@geCwYn_Z6p literal 0 HcmV?d00001 diff --git a/doc/api/html/classstan_1_1mcmc_1_1fixed__param__sampler-members.html b/doc/api/html/classstan_1_1mcmc_1_1fixed__param__sampler-members.html new file mode 100644 index 00000000000..c8193753499 --- /dev/null +++ b/doc/api/html/classstan_1_1mcmc_1_1fixed__param__sampler-members.html @@ -0,0 +1,127 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::mcmc::fixed_param_sampler Member List
+
+
+ +

This is the complete list of members for stan::mcmc::fixed_param_sampler, including all inherited members.

+ + + + + + + + + + + + + + + + +
_err_streamstan::mcmc::base_mcmcprotected
_namestan::mcmc::base_mcmcprotected
_out_streamstan::mcmc::base_mcmcprotected
base_mcmc(std::ostream *o, std::ostream *e)stan::mcmc::base_mcmcinline
fixed_param_sampler(std::ostream *o=&std::cout, std::ostream *e=0)stan::mcmc::fixed_param_samplerinline
get_sampler_diagnostic_names(std::vector< std::string > &model_names, std::vector< std::string > &names)stan::mcmc::base_mcmcinlinevirtual
get_sampler_diagnostics(std::vector< double > &values)stan::mcmc::base_mcmcinlinevirtual
get_sampler_param_names(std::vector< std::string > &names)stan::mcmc::base_mcmcinlinevirtual
get_sampler_params(std::vector< double > &values)stan::mcmc::base_mcmcinlinevirtual
name()stan::mcmc::fixed_param_samplerinline
transition(sample &init_sample)stan::mcmc::fixed_param_samplerinlinevirtual
write_sampler_param_names(std::ostream &o)stan::mcmc::base_mcmcinlinevirtual
write_sampler_params(std::ostream &o)stan::mcmc::base_mcmcinlinevirtual
write_sampler_state(std::ostream *o)stan::mcmc::base_mcmcinlinevirtual
~base_mcmc()stan::mcmc::base_mcmcinlinevirtual
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1mcmc_1_1fixed__param__sampler.html b/doc/api/html/classstan_1_1mcmc_1_1fixed__param__sampler.html new file mode 100644 index 00000000000..859e1fbc2ab --- /dev/null +++ b/doc/api/html/classstan_1_1mcmc_1_1fixed__param__sampler.html @@ -0,0 +1,261 @@ + + + + + +Stan: stan::mcmc::fixed_param_sampler Class Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::mcmc::fixed_param_sampler Class Reference
+
+
+ +

#include <fixed_param_sampler.hpp>

+
+Inheritance diagram for stan::mcmc::fixed_param_sampler:
+
+
+ + +stan::mcmc::base_mcmc + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 fixed_param_sampler (std::ostream *o=&std::cout, std::ostream *e=0)
 
sample transition (sample &init_sample)
 
std::string name ()
 
- Public Member Functions inherited from stan::mcmc::base_mcmc
 base_mcmc (std::ostream *o, std::ostream *e)
 
virtual ~base_mcmc ()
 
std::string name ()
 
virtual void write_sampler_param_names (std::ostream &o)
 
virtual void write_sampler_params (std::ostream &o)
 
virtual void get_sampler_param_names (std::vector< std::string > &names)
 
virtual void get_sampler_params (std::vector< double > &values)
 
virtual void write_sampler_state (std::ostream *o)
 
virtual void get_sampler_diagnostic_names (std::vector< std::string > &model_names, std::vector< std::string > &names)
 
virtual void get_sampler_diagnostics (std::vector< double > &values)
 
+ + + + + + + + +

+Additional Inherited Members

- Protected Attributes inherited from stan::mcmc::base_mcmc
std::string _name
 
std::ostream * _out_stream
 
std::ostream * _err_stream
 
+

Detailed Description

+
+

Definition at line 14 of file fixed_param_sampler.hpp.

+

Constructor & Destructor Documentation

+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
stan::mcmc::fixed_param_sampler::fixed_param_sampler (std::ostream * o = &std::cout,
std::ostream * e = 0 
)
+
+inline
+
+ +

Definition at line 18 of file fixed_param_sampler.hpp.

+ +
+
+

Member Function Documentation

+ +
+
+ + + + + +
+ + + + + + + +
std::string stan::mcmc::fixed_param_sampler::name ()
+
+inline
+
+ +

Definition at line 23 of file fixed_param_sampler.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
sample stan::mcmc::fixed_param_sampler::transition (sampleinit_sample)
+
+inlinevirtual
+
+ +

Implements stan::mcmc::base_mcmc.

+ +

Definition at line 21 of file fixed_param_sampler.hpp.

+ +
+
+
The documentation for this class was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1mcmc_1_1fixed__param__sampler.png b/doc/api/html/classstan_1_1mcmc_1_1fixed__param__sampler.png new file mode 100644 index 0000000000000000000000000000000000000000..10181b8371d4ec8801153ecb53797e98660cd50e GIT binary patch literal 708 zcmeAS@N?(olHy`uVBq!ia0vp^$ALJ2gBeK9+A)zINJ#|vgt-3y{~ySF@#br3|Dg#$ z78oBmaDcV*jy#adQ4-`A%m7pb0#{Fk7%?y~1$(+UhEy=Vog3MASV6!=K2`I({U?jK z1qUY>+-$3eS|qeJlS}Tk{$&$ib%Dt$wR`6{PdYZS*yEDLtLGe(zO0y+rQ`Yi%X*7L zHa!CM&m48@e{-zAe|^nbqweHsf2XnT|2T2Usw#`H!)MDDZoEHDF>PvPj7eaCR@&Tm zKRqt-mKLe3zho&Lrs^lQ^I+rR)9#a2y}B2kz5VsOsyWG~H+Z%`D3*D;uWE+!RvVrV z%rfntFFxUzq^tJ&-_IAHfCkrXT)*vimSqi>miM0YSB1M4ZA-4-u|DrN(B!}SzsF3v zx8UiP?`L+XY<>D#(ev>MOO;F+%XXFC#WRyxMy}J z0@LIynF3big@-+Rop^n1t=%jc#+;LzE?K^}lF#jPD?k4E;*Idztdn|`vv;pg(|)&a z{hQwH?pte9wX?rpjo$SqOR!GeNCOHOAS3j3^P6 + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::mcmc::ps_point Member List
+
+
+ +

This is the complete list of members for stan::mcmc::ps_point, including all inherited members.

+ + + + + + + + + + + + + +
_fast_matrix_copy(Eigen::Matrix< T, Eigen::Dynamic, Eigen::Dynamic > &v_to, const Eigen::Matrix< T, Eigen::Dynamic, Eigen::Dynamic > &v_from)stan::mcmc::ps_pointinlineprotected
_fast_vector_copy(Eigen::Matrix< T, Eigen::Dynamic, 1 > &v_to, const Eigen::Matrix< T, Eigen::Dynamic, 1 > &v_from)stan::mcmc::ps_pointinlineprotected
gstan::mcmc::ps_point
get_param_names(std::vector< std::string > &model_names, std::vector< std::string > &names)stan::mcmc::ps_pointinlinevirtual
get_params(std::vector< double > &values)stan::mcmc::ps_pointinlinevirtual
operator=(const ps_point &z)stan::mcmc::ps_pointinline
pstan::mcmc::ps_point
ps_point(int n)stan::mcmc::ps_pointinline
ps_point(const ps_point &z)stan::mcmc::ps_pointinline
qstan::mcmc::ps_point
Vstan::mcmc::ps_point
write_metric(std::ostream *o)stan::mcmc::ps_pointinlinevirtual
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1mcmc_1_1ps__point.html b/doc/api/html/classstan_1_1mcmc_1_1ps__point.html new file mode 100644 index 00000000000..7b9c8f07160 --- /dev/null +++ b/doc/api/html/classstan_1_1mcmc_1_1ps__point.html @@ -0,0 +1,472 @@ + + + + + +Stan: stan::mcmc::ps_point Class Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::mcmc::ps_point Class Reference
+
+
+ +

#include <ps_point.hpp>

+
+Inheritance diagram for stan::mcmc::ps_point:
+
+
+ + +stan::mcmc::dense_e_point +stan::mcmc::diag_e_point +stan::mcmc::unit_e_point + +
+ + + + + + + + + + + + + + +

+Public Member Functions

 ps_point (int n)
 
 ps_point (const ps_point &z)
 
ps_pointoperator= (const ps_point &z)
 
virtual void get_param_names (std::vector< std::string > &model_names, std::vector< std::string > &names)
 
virtual void get_params (std::vector< double > &values)
 
virtual void write_metric (std::ostream *o)
 
+ + + + + + + + + +

+Public Attributes

Eigen::VectorXd q
 
Eigen::VectorXd p
 
double V
 
Eigen::VectorXd g
 
+ + + + + + + +

+Protected Member Functions

template<typename T >
void _fast_vector_copy (Eigen::Matrix< T, Eigen::Dynamic, 1 > &v_to, const Eigen::Matrix< T, Eigen::Dynamic, 1 > &v_from)
 
template<typename T >
void _fast_matrix_copy (Eigen::Matrix< T, Eigen::Dynamic, Eigen::Dynamic > &v_to, const Eigen::Matrix< T, Eigen::Dynamic, Eigen::Dynamic > &v_from)
 
+

Detailed Description

+
+

Definition at line 16 of file ps_point.hpp.

+

Constructor & Destructor Documentation

+ +
+
+ + + + + +
+ + + + + + + + +
stan::mcmc::ps_point::ps_point (int n)
+
+inline
+
+ +

Definition at line 20 of file ps_point.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
stan::mcmc::ps_point::ps_point (const ps_pointz)
+
+inline
+
+ +

Definition at line 22 of file ps_point.hpp.

+ +
+
+

Member Function Documentation

+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
void stan::mcmc::ps_point::_fast_matrix_copy (Eigen::Matrix< T, Eigen::Dynamic, Eigen::Dynamic > & v_to,
const Eigen::Matrix< T, Eigen::Dynamic, Eigen::Dynamic > & v_from 
)
+
+inlineprotected
+
+ +

Definition at line 85 of file ps_point.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
void stan::mcmc::ps_point::_fast_vector_copy (Eigen::Matrix< T, Eigen::Dynamic, 1 > & v_to,
const Eigen::Matrix< T, Eigen::Dynamic, 1 > & v_from 
)
+
+inlineprotected
+
+ +

Definition at line 79 of file ps_point.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
virtual void stan::mcmc::ps_point::get_param_names (std::vector< std::string > & model_names,
std::vector< std::string > & names 
)
+
+inlinevirtual
+
+ +

Definition at line 52 of file ps_point.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
virtual void stan::mcmc::ps_point::get_params (std::vector< double > & values)
+
+inlinevirtual
+
+ +

Definition at line 62 of file ps_point.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
ps_point& stan::mcmc::ps_point::operator= (const ps_pointz)
+
+inline
+
+ +

Definition at line 30 of file ps_point.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
virtual void stan::mcmc::ps_point::write_metric (std::ostream * o)
+
+inlinevirtual
+
+ +

Reimplemented in stan::mcmc::dense_e_point, and stan::mcmc::diag_e_point.

+ +

Definition at line 71 of file ps_point.hpp.

+ +
+
+

Member Data Documentation

+ +
+
+ + + + +
Eigen::VectorXd stan::mcmc::ps_point::g
+
+ +

Definition at line 50 of file ps_point.hpp.

+ +
+
+ +
+
+ + + + +
Eigen::VectorXd stan::mcmc::ps_point::p
+
+ +

Definition at line 47 of file ps_point.hpp.

+ +
+
+ +
+
+ + + + +
Eigen::VectorXd stan::mcmc::ps_point::q
+
+ +

Definition at line 46 of file ps_point.hpp.

+ +
+
+ +
+
+ + + + +
double stan::mcmc::ps_point::V
+
+ +

Definition at line 49 of file ps_point.hpp.

+ +
+
+
The documentation for this class was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1mcmc_1_1ps__point.png b/doc/api/html/classstan_1_1mcmc_1_1ps__point.png new file mode 100644 index 0000000000000000000000000000000000000000..cab4bfca1da721f74b1254589e8fc8fef2893c5a GIT binary patch literal 1105 zcmeAS@N?(olHy`uVBq!ia0y~yVEhhb2XHV0N#mnuKpcqxpAgso|NjG-FW!7D?LRaD z$O7X72M(}y-jN4#IZA^3f*F8{K;Y`B5F-W#<_DfGjv*C{Z|A<DVE3{E?%V&BRt$W^ni;77v!e|P;WzPkLS zx%j5?hKhZ!{ z%rNbSwS&#>+PV!!CBHA#0ynkn{UCED4=lidx<^MbPkJ*5s@lSH>^<{Q@=ImuY@>%iy z-QTsplixFhA9!!=P#d#%-8Vjg{=Ljs+L5sPWs|c@84VbwFJm=e2nD+H>cwqh`~lM6 z_yT0-mUXkQ-~on?U^HqdA%_?en`2S#?Q2_dZ?`cOWY)b1*}9=X<2z6mGVdzwE_(G2x#1KX*M1K02Z9k>;^7!^5Ba zCLaHPpmU1KoxdC75ZO(?$}WLzPnpCw-C*RLwl8?P&jI@9n1T_M11qu8_ai z6Rf#^ldC`b*WY@Y)~Di?Jug4}9y`hIgldVNvJ%+;-`d lbv|KdrUdOWvKRTv|KxIdnz6&-WMKYh@O1TaS?83{1OV3M7+3%R literal 0 HcmV?d00001 diff --git a/doc/api/html/classstan_1_1mcmc_1_1sample-members.html b/doc/api/html/classstan_1_1mcmc_1_1sample-members.html new file mode 100644 index 00000000000..ff81aee7c9f --- /dev/null +++ b/doc/api/html/classstan_1_1mcmc_1_1sample-members.html @@ -0,0 +1,122 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::mcmc::sample Member List
+
+
+ +

This is the complete list of members for stan::mcmc::sample, including all inherited members.

+ + + + + + + + + + + +
accept_stat() const stan::mcmc::sampleinline
cont_params(int k) const stan::mcmc::sampleinline
cont_params(Eigen::VectorXd &x) const stan::mcmc::sampleinline
cont_params() const stan::mcmc::sampleinline
get_sample_param_names(std::vector< std::string > &names)stan::mcmc::sampleinline
get_sample_params(std::vector< double > &values)stan::mcmc::sampleinline
log_prob() const stan::mcmc::sampleinline
sample(const Eigen::VectorXd &q, double log_prob, double stat)stan::mcmc::sampleinline
size_cont() const stan::mcmc::sampleinline
~sample()stan::mcmc::sampleinlinevirtual
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1mcmc_1_1sample.html b/doc/api/html/classstan_1_1mcmc_1_1sample.html new file mode 100644 index 00000000000..b0915ef5c57 --- /dev/null +++ b/doc/api/html/classstan_1_1mcmc_1_1sample.html @@ -0,0 +1,417 @@ + + + + + +Stan: stan::mcmc::sample Class Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::mcmc::sample Class Reference
+
+
+ +

#include <sample.hpp>

+ + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 sample (const Eigen::VectorXd &q, double log_prob, double stat)
 
virtual ~sample ()
 
int size_cont () const
 
double cont_params (int k) const
 
void cont_params (Eigen::VectorXd &x) const
 
const Eigen::VectorXd & cont_params () const
 
double log_prob () const
 
double accept_stat () const
 
void get_sample_param_names (std::vector< std::string > &names)
 
void get_sample_params (std::vector< double > &values)
 
+

Detailed Description

+
+

Definition at line 13 of file sample.hpp.

+

Constructor & Destructor Documentation

+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
stan::mcmc::sample::sample (const Eigen::VectorXd & q,
double log_prob,
double stat 
)
+
+inline
+
+ +

Definition at line 23 of file sample.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
virtual stan::mcmc::sample::~sample ()
+
+inlinevirtual
+
+ +

Definition at line 30 of file sample.hpp.

+ +
+
+

Member Function Documentation

+ +
+
+ + + + + +
+ + + + + + + +
double stan::mcmc::sample::accept_stat () const
+
+inline
+
+ +

Definition at line 52 of file sample.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
double stan::mcmc::sample::cont_params (int k) const
+
+inline
+
+ +

Definition at line 36 of file sample.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::mcmc::sample::cont_params (Eigen::VectorXd & x) const
+
+inline
+
+ +

Definition at line 40 of file sample.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
const Eigen::VectorXd& stan::mcmc::sample::cont_params () const
+
+inline
+
+ +

Definition at line 44 of file sample.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::mcmc::sample::get_sample_param_names (std::vector< std::string > & names)
+
+inline
+
+ +

Definition at line 56 of file sample.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::mcmc::sample::get_sample_params (std::vector< double > & values)
+
+inline
+
+ +

Definition at line 61 of file sample.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
double stan::mcmc::sample::log_prob () const
+
+inline
+
+ +

Definition at line 48 of file sample.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
int stan::mcmc::sample::size_cont () const
+
+inline
+
+ +

Definition at line 32 of file sample.hpp.

+ +
+
+
The documentation for this class was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1mcmc_1_1stepsize__adaptation-members.html b/doc/api/html/classstan_1_1mcmc_1_1stepsize__adaptation-members.html new file mode 100644 index 00000000000..bca390ab8b4 --- /dev/null +++ b/doc/api/html/classstan_1_1mcmc_1_1stepsize__adaptation-members.html @@ -0,0 +1,134 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::mcmc::stepsize_adaptation Member List
+
+ +
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1mcmc_1_1stepsize__adaptation.html b/doc/api/html/classstan_1_1mcmc_1_1stepsize__adaptation.html new file mode 100644 index 00000000000..afc5edfcdf1 --- /dev/null +++ b/doc/api/html/classstan_1_1mcmc_1_1stepsize__adaptation.html @@ -0,0 +1,729 @@ + + + + + +Stan: stan::mcmc::stepsize_adaptation Class Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::mcmc::stepsize_adaptation Class Reference
+
+
+ +

#include <stepsize_adaptation.hpp>

+
+Inheritance diagram for stan::mcmc::stepsize_adaptation:
+
+
+ + +stan::mcmc::base_adaptation + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 stepsize_adaptation ()
 
void set_mu (double m)
 
void set_delta (double d)
 
void set_gamma (double g)
 
void set_kappa (double k)
 
void set_t0 (double t)
 
double get_mu ()
 
double get_delta ()
 
double get_gamma ()
 
double get_kappa ()
 
double get_t0 ()
 
void restart ()
 
void learn_stepsize (double &epsilon, double adapt_stat)
 
void complete_adaptation (double &epsilon)
 
+ + + + + + + + + + + + + + + + + +

+Protected Attributes

double _counter
 
double _s_bar
 
double _x_bar
 
double _mu
 
double _delta
 
double _gamma
 
double _kappa
 
double _t0
 
+

Detailed Description

+
+

Definition at line 11 of file stepsize_adaptation.hpp.

+

Constructor & Destructor Documentation

+ +
+
+ + + + + +
+ + + + + + + +
stan::mcmc::stepsize_adaptation::stepsize_adaptation ()
+
+inline
+
+ +

Definition at line 15 of file stepsize_adaptation.hpp.

+ +
+
+

Member Function Documentation

+ +
+
+ + + + + +
+ + + + + + + + +
void stan::mcmc::stepsize_adaptation::complete_adaptation (double & epsilon)
+
+inline
+
+ +

Definition at line 57 of file stepsize_adaptation.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
double stan::mcmc::stepsize_adaptation::get_delta ()
+
+inline
+
+ +

Definition at line 26 of file stepsize_adaptation.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
double stan::mcmc::stepsize_adaptation::get_gamma ()
+
+inline
+
+ +

Definition at line 27 of file stepsize_adaptation.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
double stan::mcmc::stepsize_adaptation::get_kappa ()
+
+inline
+
+ +

Definition at line 28 of file stepsize_adaptation.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
double stan::mcmc::stepsize_adaptation::get_mu ()
+
+inline
+
+ +

Definition at line 25 of file stepsize_adaptation.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
double stan::mcmc::stepsize_adaptation::get_t0 ()
+
+inline
+
+ +

Definition at line 29 of file stepsize_adaptation.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
void stan::mcmc::stepsize_adaptation::learn_stepsize (double & epsilon,
double adapt_stat 
)
+
+inline
+
+ +

Definition at line 37 of file stepsize_adaptation.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
void stan::mcmc::stepsize_adaptation::restart ()
+
+inlinevirtual
+
+ +

Reimplemented from stan::mcmc::base_adaptation.

+ +

Definition at line 31 of file stepsize_adaptation.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::mcmc::stepsize_adaptation::set_delta (double d)
+
+inline
+
+ +

Definition at line 20 of file stepsize_adaptation.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::mcmc::stepsize_adaptation::set_gamma (double g)
+
+inline
+
+ +

Definition at line 21 of file stepsize_adaptation.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::mcmc::stepsize_adaptation::set_kappa (double k)
+
+inline
+
+ +

Definition at line 22 of file stepsize_adaptation.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::mcmc::stepsize_adaptation::set_mu (double m)
+
+inline
+
+ +

Definition at line 19 of file stepsize_adaptation.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::mcmc::stepsize_adaptation::set_t0 (double t)
+
+inline
+
+ +

Definition at line 23 of file stepsize_adaptation.hpp.

+ +
+
+

Member Data Documentation

+ +
+
+ + + + + +
+ + + + +
double stan::mcmc::stepsize_adaptation::_counter
+
+protected
+
+ +

Definition at line 63 of file stepsize_adaptation.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + +
double stan::mcmc::stepsize_adaptation::_delta
+
+protected
+
+ +

Definition at line 67 of file stepsize_adaptation.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + +
double stan::mcmc::stepsize_adaptation::_gamma
+
+protected
+
+ +

Definition at line 68 of file stepsize_adaptation.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + +
double stan::mcmc::stepsize_adaptation::_kappa
+
+protected
+
+ +

Definition at line 69 of file stepsize_adaptation.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + +
double stan::mcmc::stepsize_adaptation::_mu
+
+protected
+
+ +

Definition at line 66 of file stepsize_adaptation.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + +
double stan::mcmc::stepsize_adaptation::_s_bar
+
+protected
+
+ +

Definition at line 64 of file stepsize_adaptation.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + +
double stan::mcmc::stepsize_adaptation::_t0
+
+protected
+
+ +

Definition at line 70 of file stepsize_adaptation.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + +
double stan::mcmc::stepsize_adaptation::_x_bar
+
+protected
+
+ +

Definition at line 65 of file stepsize_adaptation.hpp.

+ +
+
+
The documentation for this class was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1mcmc_1_1stepsize__adaptation.png b/doc/api/html/classstan_1_1mcmc_1_1stepsize__adaptation.png new file mode 100644 index 0000000000000000000000000000000000000000..d840627138e454b76b4ce8ea71cf1a8af4e63a36 GIT binary patch literal 732 zcmeAS@N?(olHy`uVBq!ia0vp^dx1EBgBeIxUv7y5QW60^A+G=b{|7Q(y!l$%e`o@b z1;z&s9ANFdBM;q|C8pP zoCyjqmu-*L7ZRF$En)WMggfEWQX|_$yH$8sdFp%G&H6Iw$ztPQ3ZCy@g%v!Wqkb*_ z`pSP+dsXJHc9!2Ze~w&s*Wbq{%J=kd$$0Z5^qiz}ZjsL0%&xhguH9Z7H#MYZ+P_ZW zh2LbJ-kEn;Cu%oWV1V4!Xw!XX{kTpoE~)XHZ@y}~siyU|MB}B|FK^#z+xc6}dTB|J z1IkV#fS3vKwqI)ZUe?H}DzNcRP z^49k^&5riY6aMY6DJg+5x!P}g5rf^z^QCnS^Y*;>zB`*QQKhOO_%CNw!~3jD%s( + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::mcmc::stepsize_adapter Member List
+
+ +
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1mcmc_1_1stepsize__adapter.html b/doc/api/html/classstan_1_1mcmc_1_1stepsize__adapter.html new file mode 100644 index 00000000000..e576036d6e8 --- /dev/null +++ b/doc/api/html/classstan_1_1mcmc_1_1stepsize__adapter.html @@ -0,0 +1,232 @@ + + + + + +Stan: stan::mcmc::stepsize_adapter Class Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::mcmc::stepsize_adapter Class Reference
+
+
+ +

#include <stepsize_adapter.hpp>

+
+Inheritance diagram for stan::mcmc::stepsize_adapter:
+
+
+ + +stan::mcmc::base_adapter +stan::mcmc::adapt_unit_e_nuts< M, BaseRNG > +stan::mcmc::adapt_unit_e_static_hmc< M, BaseRNG > + +
+ + + + + + + + + + + + + + + +

+Public Member Functions

 stepsize_adapter ()
 
stepsize_adaptationget_stepsize_adaptation ()
 
- Public Member Functions inherited from stan::mcmc::base_adapter
 base_adapter ()
 
virtual void engage_adaptation ()
 
virtual void disengage_adaptation ()
 
bool adapting ()
 
+ + + + + + +

+Protected Attributes

stepsize_adaptation _stepsize_adaptation
 
- Protected Attributes inherited from stan::mcmc::base_adapter
bool _adapt_flag
 
+

Detailed Description

+
+

Definition at line 11 of file stepsize_adapter.hpp.

+

Constructor & Destructor Documentation

+ +
+
+ + + + + +
+ + + + + + + +
stan::mcmc::stepsize_adapter::stepsize_adapter ()
+
+inline
+
+ +

Definition at line 15 of file stepsize_adapter.hpp.

+ +
+
+

Member Function Documentation

+ +
+
+ + + + + +
+ + + + + + + +
stepsize_adaptation& stan::mcmc::stepsize_adapter::get_stepsize_adaptation ()
+
+inline
+
+ +

Definition at line 17 of file stepsize_adapter.hpp.

+ +
+
+

Member Data Documentation

+ +
+
+ + + + + +
+ + + + +
stepsize_adaptation stan::mcmc::stepsize_adapter::_stepsize_adaptation
+
+protected
+
+ +

Definition at line 23 of file stepsize_adapter.hpp.

+ +
+
+
The documentation for this class was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1mcmc_1_1stepsize__adapter.png b/doc/api/html/classstan_1_1mcmc_1_1stepsize__adapter.png new file mode 100644 index 0000000000000000000000000000000000000000..0faeccdddeb6c88504168c7bafae7df03785f0c4 GIT binary patch literal 2039 zcmc&#c~H|y7EU4|fFg$ykwY8}1aUcBN4YOSnQ(<8GlFD5cNo2w_k`6CehGh(P9-DgW52-P+pyYr3jmzpnSXyZXKFeJ{t$ z(?wZHO9=!5DWkq~_5pz)L_oixunmw7)BpG$STw!dF(;)`DWJ{^S8(}#KLOgGlfhs> zb0+nGtwN%Yr!NR_l8uq)n7@NSuxymGBjz%AVQL}ip1bPFnd?u^@TB^^&p7h0oX=!Z z+6^x0mUTzuPt^5_W^!jO;IkGa^fu@xGXvDm2(%C6gt`7%@`G}@tY}vT!rw_zVXA&$G^m0wtn#uw`uVq zF(Lly-jP5m4ZAP?5zdfnQ-lB1m`3g?1g^yA6J07i19hb~Ds*5a;?jla zDf}>M2!Xeiy>}d3UpK@mGHi;qdsTbLY>%jI75n;{B1){~>M;K<&sZ|4`9;nKZlPgQ zj13Tl(l46#3Ha)&c6ZDbEn*(mLVMUWmBPFZytRr6cqRlNuzjnX=rp{KRsHrz9(o}> z*|vKx7ShKQkHXU~Wu-#l7;7BseW0bKebPio`n%BK40Jo2qC!}xaC4A^@;BqR#i?PXGT`@&P9|F(l-Ano!vyEe5%9~_Ez(L&%HR|{8HP1?YyI{{Gz!YL$As8x&>QUn4f6vV%2m z25V;1(;+FCvxnvHDFJ^`_dW*Px?$%#Dvw{iOoQ zBQfj7TBHnK(gLCg$o-anp!RHosW~=qwO=J>4teEAdy>@@jb?8WXZ5)&MG|EFHm!~D zkZ0|A$w*gEpXSE@;RgMOPM>;d#W8OV2F0uS)5TuX(@dJFr2@Lyf_HlLkcpTSzf)$NF*Lqg+ z9q&~}epF0Qiesy9K5g+f>vPM~vC5G8DC^}gS8fKHUA&~bRdw6dL1JNN`)ovz`UQ4a z1{;4y{Zwq1#vP&v?QOmP&w4XD<>#aio5JKaWV`O{s`*dBWtr`8ID)x4EbvSHi>zLn`J}~;LHD`nBg={EF|?uw@<8qpf(<1 zuwu-O2GaALRyC@@y0>)`eZJ|lGP0h(eC46Q1%*WO{HGt6f%;O z3b`5>I@ayxL}=ix^{?Y0Tauy|kPp zg5Zw{GuzHnsdG!{x^Pok5J8dddfm~ZIQ(_w75aKm3@gE4gniJYBKj&uh0;}5cEF&;TtM8m75ZCoep~ zUUsGoecolNk2@ckPfmHA8w1^748T9|ZsFQWrgK&riDNkSXX26pbFG4+vrU|jZx#`z zGv@5ywe1-)m_p!|%j=fLrhZS|Tx{WUZV5@mTaE0z6vBh)c7BM9eG2WH<=J1y?{d&b zdv9VntAyn!f%stODMFN?x&6qp1plQNiQDX;8;y;$2xw9CId7D>u-jOYd7#_>Rjcqv z@OcfMwqO=cLzvFF1VxiSi5FqUZF~gYvKQ`8PGer&(_BfsUivbgLgl5HnV}X%t1(gA zz(HE$E>G9*CNmItq?D^`h6-fLLktE>`D*~!>|OsIXtL&50oXic-O&ZG7Ym^}Un#s& kEmnuwsL6~=yCVfTefwD7kNVLY=+Yq6Nl)jx6K6C20GmOqg#Z8m literal 0 HcmV?d00001 diff --git a/doc/api/html/classstan_1_1mcmc_1_1stepsize__covar__adapter-members.html b/doc/api/html/classstan_1_1mcmc_1_1stepsize__covar__adapter-members.html new file mode 100644 index 00000000000..7a9d09ad074 --- /dev/null +++ b/doc/api/html/classstan_1_1mcmc_1_1stepsize__covar__adapter-members.html @@ -0,0 +1,123 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::mcmc::stepsize_covar_adapter Member List
+
+ +
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1mcmc_1_1stepsize__covar__adapter.html b/doc/api/html/classstan_1_1mcmc_1_1stepsize__covar__adapter.html new file mode 100644 index 00000000000..837879966ce --- /dev/null +++ b/doc/api/html/classstan_1_1mcmc_1_1stepsize__covar__adapter.html @@ -0,0 +1,340 @@ + + + + + +Stan: stan::mcmc::stepsize_covar_adapter Class Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::mcmc::stepsize_covar_adapter Class Reference
+
+
+ +

#include <stepsize_covar_adapter.hpp>

+
+Inheritance diagram for stan::mcmc::stepsize_covar_adapter:
+
+
+ + +stan::mcmc::base_adapter +stan::mcmc::adapt_dense_e_nuts< M, BaseRNG > +stan::mcmc::adapt_dense_e_static_hmc< M, BaseRNG > + +
+ + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 stepsize_covar_adapter (int n)
 
stepsize_adaptationget_stepsize_adaptation ()
 
covar_adaptationget_covar_adaptation ()
 
void set_window_params (unsigned int num_warmup, unsigned int init_buffer, unsigned int term_buffer, unsigned int base_window, std::ostream *e=0)
 
- Public Member Functions inherited from stan::mcmc::base_adapter
 base_adapter ()
 
virtual void engage_adaptation ()
 
virtual void disengage_adaptation ()
 
bool adapting ()
 
+ + + + + + + + +

+Protected Attributes

stepsize_adaptation _stepsize_adaptation
 
covar_adaptation _covar_adaptation
 
- Protected Attributes inherited from stan::mcmc::base_adapter
bool _adapt_flag
 
+

Detailed Description

+
+

Definition at line 12 of file stepsize_covar_adapter.hpp.

+

Constructor & Destructor Documentation

+ +
+
+ + + + + +
+ + + + + + + + +
stan::mcmc::stepsize_covar_adapter::stepsize_covar_adapter (int n)
+
+inline
+
+ +

Definition at line 16 of file stepsize_covar_adapter.hpp.

+ +
+
+

Member Function Documentation

+ +
+
+ + + + + +
+ + + + + + + +
covar_adaptation& stan::mcmc::stepsize_covar_adapter::get_covar_adaptation ()
+
+inline
+
+ +

Definition at line 23 of file stepsize_covar_adapter.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
stepsize_adaptation& stan::mcmc::stepsize_covar_adapter::get_stepsize_adaptation ()
+
+inline
+
+ +

Definition at line 19 of file stepsize_covar_adapter.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
void stan::mcmc::stepsize_covar_adapter::set_window_params (unsigned int num_warmup,
unsigned int init_buffer,
unsigned int term_buffer,
unsigned int base_window,
std::ostream * e = 0 
)
+
+inline
+
+ +

Definition at line 27 of file stepsize_covar_adapter.hpp.

+ +
+
+

Member Data Documentation

+ +
+
+ + + + + +
+ + + + +
covar_adaptation stan::mcmc::stepsize_covar_adapter::_covar_adaptation
+
+protected
+
+ +

Definition at line 42 of file stepsize_covar_adapter.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + +
stepsize_adaptation stan::mcmc::stepsize_covar_adapter::_stepsize_adaptation
+
+protected
+
+ +

Definition at line 41 of file stepsize_covar_adapter.hpp.

+ +
+
+
The documentation for this class was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1mcmc_1_1stepsize__covar__adapter.png b/doc/api/html/classstan_1_1mcmc_1_1stepsize__covar__adapter.png new file mode 100644 index 0000000000000000000000000000000000000000..d317289dab17282ca1e1ff74a25c85f767f7788c GIT binary patch literal 2090 zcmc(gZBSF$8OH<4sw^*VQLze}wFbg_pfHlit6;>?fGz>t@VXT>h`a?PEFjSVTxwAQ z7ndL;Ao3=&7+L}Xq6B5aH9->AAQTDUY6vO`2ocyoAbYa)L%+1s51r|qxzBmdJZH|i z^S{6If3BSj4lp*{XNW)`j0wk&h9D67ERg?Y`xX#$g9cr}u=gY}6tC54LHbs)oWXcf z0(#Yf>bbZoe23OhSM~y61&3^p6O{wr;}FBcb2vDJSP>cLI0ee`fIa_G%9z z>+VY3-kof;Z_0dfUGKg8bjUhJV=_RsD56@x`M!F}y=C>sA^)4K;R?u=P)thmiwhK? zaKVBdH*9fbGOQKatx-mV-slz}OVW=+3rhiP_Zy}`Y*cKctYF|Ki;%{G%=W2baD`mU z{tfZ?4})+Ji!nDAE*avhAHC4Ld@b`9C`Zp$j1#%dt^H_0jt#EXCFKWI!h}r9FH?6E z`4&|Ts=}B?Sr)F6bDh=C+z3^ulsd5a!$?tKz=a?8tSMNSkt*ZAm8W~GM9A4Dgy%PP zM{c&!?eD{~hbGR(ShlBd?Q|h4aye2IAkN4SD;k3DQ3X4AMVZWH zj1Y%X#f>KLhMsk(t<~5GHz(ZBnTuv;HzK0M*@}2<*z1`ud$7Fl4|51^8J=8|Jb5^l zK1*VDtYwP;m3&sc++3f1B2s<`Gsjd9P6RhXt!^qQPr*v4CPKPSuS#Pa`Gu} zg%cfn%vy5#+;xa0(XOAr+2L=`H~JD5?Tmbpyso&;Z#xy9T&ZkH*ho+;U-792kh$5; zbwX+{ocVIjBlaX*l{_!ZvL7Usg{fnWaMQlX{BqW?rLkZ1s4V4acTxvw=#=+@pqp#j zYp3OAfNNoCEL=06v8X^|B8*##C);|zUTt8h9MieQklBN}ugSdfr?AN(XCEi`8aAe| zD>0u`N)KJnVUoM6bER8*9sV3WibkfyMbVkA;3TBw_iHOwkK*!lfDg(v|G+aNZ4$G_ zIkJLSUnMJ5ch~--=%0$uoQ?cljQUe|+Ps>6z13jXu$dKl*YN%(62R%=F#yrWf$^a> zKwFUxxsnhN!1w;QVbd|VNz#mE2RG4t^|m#mYHfGhw%>*d8bj-c^8$ZY8B*%^xg8-s z5O3&s_kUPi^7w-#OjWQY*y6Z_(E2yn;vg4mLMf`SV(=CU4_Vv+PPGR(60iqXLd3~5 zYXS+F+4&=aTc{x5X7vVE6v%Ccgeydy?>onux!NyLn52Tsj=Q8m2~0Y3#@3lUOa%It zrC6r$>I;BXmurX+YX6k^k~T_Ydj+42Y3!Nop>?5uY2a^Qz+nclrK+R@JV;fyiho!2 zj;j`ilQ zQ#*PYKHRAA0}Gt_p#!`U)yt&!o?dG(mAw2~zI5p))l?Qvlz4|CNsLkQ&BocOgg;KYnN;s|lyu`Wlc&kW$HOj-&cFuBJ7q=H9RQm%3(kULB{fRZb&&4qs{=}oI zkslvZOlMTm6*+loLZD>OL{nR&F%Yv mv-8G1lUcx22hfKZi%8Qh!H6{D;C9g15d?hjQI6lYdA|ZMDgg)p literal 0 HcmV?d00001 diff --git a/doc/api/html/classstan_1_1mcmc_1_1stepsize__var__adapter-members.html b/doc/api/html/classstan_1_1mcmc_1_1stepsize__var__adapter-members.html new file mode 100644 index 00000000000..428cbd1c752 --- /dev/null +++ b/doc/api/html/classstan_1_1mcmc_1_1stepsize__var__adapter-members.html @@ -0,0 +1,123 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::mcmc::stepsize_var_adapter Member List
+
+ +
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1mcmc_1_1stepsize__var__adapter.html b/doc/api/html/classstan_1_1mcmc_1_1stepsize__var__adapter.html new file mode 100644 index 00000000000..0dea0f53b9d --- /dev/null +++ b/doc/api/html/classstan_1_1mcmc_1_1stepsize__var__adapter.html @@ -0,0 +1,340 @@ + + + + + +Stan: stan::mcmc::stepsize_var_adapter Class Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::mcmc::stepsize_var_adapter Class Reference
+
+
+ +

#include <stepsize_var_adapter.hpp>

+
+Inheritance diagram for stan::mcmc::stepsize_var_adapter:
+
+
+ + +stan::mcmc::base_adapter +stan::mcmc::adapt_diag_e_nuts< M, BaseRNG > +stan::mcmc::adapt_diag_e_static_hmc< M, BaseRNG > + +
+ + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 stepsize_var_adapter (int n)
 
stepsize_adaptationget_stepsize_adaptation ()
 
var_adaptationget_var_adaptation ()
 
void set_window_params (unsigned int num_warmup, unsigned int init_buffer, unsigned int term_buffer, unsigned int base_window, std::ostream *e=0)
 
- Public Member Functions inherited from stan::mcmc::base_adapter
 base_adapter ()
 
virtual void engage_adaptation ()
 
virtual void disengage_adaptation ()
 
bool adapting ()
 
+ + + + + + + + +

+Protected Attributes

stepsize_adaptation _stepsize_adaptation
 
var_adaptation _var_adaptation
 
- Protected Attributes inherited from stan::mcmc::base_adapter
bool _adapt_flag
 
+

Detailed Description

+
+

Definition at line 12 of file stepsize_var_adapter.hpp.

+

Constructor & Destructor Documentation

+ +
+
+ + + + + +
+ + + + + + + + +
stan::mcmc::stepsize_var_adapter::stepsize_var_adapter (int n)
+
+inline
+
+ +

Definition at line 16 of file stepsize_var_adapter.hpp.

+ +
+
+

Member Function Documentation

+ +
+
+ + + + + +
+ + + + + + + +
stepsize_adaptation& stan::mcmc::stepsize_var_adapter::get_stepsize_adaptation ()
+
+inline
+
+ +

Definition at line 19 of file stepsize_var_adapter.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
var_adaptation& stan::mcmc::stepsize_var_adapter::get_var_adaptation ()
+
+inline
+
+ +

Definition at line 23 of file stepsize_var_adapter.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
void stan::mcmc::stepsize_var_adapter::set_window_params (unsigned int num_warmup,
unsigned int init_buffer,
unsigned int term_buffer,
unsigned int base_window,
std::ostream * e = 0 
)
+
+inline
+
+ +

Definition at line 27 of file stepsize_var_adapter.hpp.

+ +
+
+

Member Data Documentation

+ +
+
+ + + + + +
+ + + + +
stepsize_adaptation stan::mcmc::stepsize_var_adapter::_stepsize_adaptation
+
+protected
+
+ +

Definition at line 42 of file stepsize_var_adapter.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + +
var_adaptation stan::mcmc::stepsize_var_adapter::_var_adaptation
+
+protected
+
+ +

Definition at line 43 of file stepsize_var_adapter.hpp.

+ +
+
+
The documentation for this class was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1mcmc_1_1stepsize__var__adapter.png b/doc/api/html/classstan_1_1mcmc_1_1stepsize__var__adapter.png new file mode 100644 index 0000000000000000000000000000000000000000..94166a5dad2eadd5f1896618b426f7b35dfe143e GIT binary patch literal 2089 zcmc(gXH-*Z8pi`J!XSzP3rJfs0RfQ`LzUuS7zlxcrmjYcIIf@w10ewd2^?jC$TB#g zgkA>_MZh7136T!E7%>n!p-2o;0z-*(BzxnW{kCV%?x(%y+~+>`xzBw*{NLaEe<|*0 zr=#*`U6 zQeuwx{9*RMc-+i#&Rn$7r|3dfyfm4e4|SwQxI;RQyL3Sp$`J|L8Oca4iXwMe51jrB zO$nUn4$(y#>p&D{8X#ySmz}0Nee_^x7`d+Df>3dwWJ8-Xl1&n56iZUJiBB9UDr_J3 zvp{qZG{~$E@^d=BVwNh@rPX|dr4*dP7G+_mGm`delqi^RX{4Vr+gxVoc9-Yt)|0_& zsJqv{;a^!_j9ixoW_KKMd}UQ{{?y}6*<>K&FaGEGU&il;S?EH0^dw(VC{elp0lI5I zdQOIuiVX@ux6HOjsojKhwXjqb{`x z=_qOzAj;~s$J=3C(gBJZsLLaX#jXfBG0?j8=tnVJeEr3t=iU#*T54%6-r19rWEo84|9K4^IUP{FYjn0^;Ea4?yhi z3*_hU!!6YjFs6?hicUCxwPhR^37NtN+q}84|3Y>3wgjDGZmj-862#mriWKNGaxv2U ziufucZ)n^xOZMY~93}8nqP7PE-*CBW&qM9x&hLHLd*dp*A0i$^8i8jXsCeeK>hrtS ziLiSC_y>anvSuu+eFm+XtFY2t2Y^Iu#N7*s*0`wEz|;9DX_C1#Ww42VyV#G(t3ipz zn%UJKF)Swls7~znI}ekHy)jvUHm&F`&OjI*P9F1ubi{a_g?vTFz-7Li`$*e6qYqUs zd->_VQ@sON5>vN5FxX9++K;g_#Ob#}slQktZm!#yrPnkmWt zyKoS8EUB}^QvF!cw6siw$4)!Qz?4hTBE-8Aec-Z|r2m4Gdh2n<^ zWCMGZOETYl@g|$Z%PZ|x?fZjHLO*-`Z$CCFh8NE5q*?*Hqt*1Jz=k6Ny+e9Jk+LYj zk({Z=Bt}(@Lc6)Bk_4@*sA}7!^>S+3RSr52XJkPu z7?^8?j(y-pF4`ZEVb(o-B9tHVnxMuqTT?sNY&32GOd!8yB+re6aEZV6l&`>Na(RuK zL2=-80SgXH?uXHaoX$N)zr;pwJ_fW%fOfK!$+(3%=xeuA3@XF zEXhtBL+V+n!1HdcU7~%EOlb7 z7~bj=tcKZe1B=}O6(%hI8kaqvXogXq9ACI~<9Y4$GX-1c`yL@#oR)c>v(V`*pf1Cd zv4V)bLg%1F7Rm+G*`dETP53JKB=t?PQpKh4+SXC_Ze4B!ZFn+e@?Z-6Q>|I7d+ziF zhAhO+gk>h&=qLN+Vloc|xQgmpT=#TH(Ot4p_^#8d;nsYhU9ss=!JSCCck2Yvqo>Omdov%P(f?rE(=-t3nmjCGukb9Na~nyuje4%U zwn90Nyg@i_iaby~$Ojx>(d%E}6$4 + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::mcmc::unit_e_metric< M, BaseRNG > Member List
+
+
+ +

This is the complete list of members for stan::mcmc::unit_e_metric< M, BaseRNG >, including all inherited members.

+ + + + + + + + + + + + + + + + + + + +
_err_streamstan::mcmc::base_hamiltonian< M, unit_e_point, BaseRNG >protected
_modelstan::mcmc::base_hamiltonian< M, unit_e_point, BaseRNG >protected
_write_error_msg(std::ostream *error_msgs, const std::exception &e)stan::mcmc::base_hamiltonian< M, unit_e_point, BaseRNG >inlineprotected
base_hamiltonian(M &m, std::ostream *e)stan::mcmc::base_hamiltonian< M, unit_e_point, BaseRNG >inline
dphi_dq(unit_e_point &z)stan::mcmc::unit_e_metric< M, BaseRNG >inlinevirtual
dtau_dp(unit_e_point &z)stan::mcmc::unit_e_metric< M, BaseRNG >inlinevirtual
dtau_dq(unit_e_point &z)stan::mcmc::unit_e_metric< M, BaseRNG >inlinevirtual
H(unit_e_point &z)stan::mcmc::base_hamiltonian< M, unit_e_point, BaseRNG >inline
init(unit_e_point &z)stan::mcmc::base_hamiltonian< M, unit_e_point, BaseRNG >inlinevirtual
phi(unit_e_point &z)stan::mcmc::unit_e_metric< M, BaseRNG >inlinevirtual
sample_p(unit_e_point &z, BaseRNG &rng)stan::mcmc::unit_e_metric< M, BaseRNG >inlinevirtual
T(unit_e_point &z)stan::mcmc::unit_e_metric< M, BaseRNG >inlinevirtual
tau(unit_e_point &z)stan::mcmc::unit_e_metric< M, BaseRNG >inlinevirtual
unit_e_metric(M &m, std::ostream *e)stan::mcmc::unit_e_metric< M, BaseRNG >inline
update(unit_e_point &z)stan::mcmc::base_hamiltonian< M, unit_e_point, BaseRNG >inlinevirtual
V(unit_e_point &z)stan::mcmc::base_hamiltonian< M, unit_e_point, BaseRNG >inline
~base_hamiltonian()stan::mcmc::base_hamiltonian< M, unit_e_point, BaseRNG >inline
~unit_e_metric()stan::mcmc::unit_e_metric< M, BaseRNG >inline
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1mcmc_1_1unit__e__metric.html b/doc/api/html/classstan_1_1mcmc_1_1unit__e__metric.html new file mode 100644 index 00000000000..9f410060d5b --- /dev/null +++ b/doc/api/html/classstan_1_1mcmc_1_1unit__e__metric.html @@ -0,0 +1,465 @@ + + + + + +Stan: stan::mcmc::unit_e_metric< M, BaseRNG > Class Template Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::mcmc::unit_e_metric< M, BaseRNG > Class Template Reference
+
+
+ +

#include <unit_e_metric.hpp>

+
+Inheritance diagram for stan::mcmc::unit_e_metric< M, BaseRNG >:
+
+
+ + +stan::mcmc::base_hamiltonian< M, unit_e_point, BaseRNG > + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 unit_e_metric (M &m, std::ostream *e)
 
 ~unit_e_metric ()
 
double T (unit_e_point &z)
 
double tau (unit_e_point &z)
 
double phi (unit_e_point &z)
 
const Eigen::VectorXd dtau_dq (unit_e_point &z)
 
const Eigen::VectorXd dtau_dp (unit_e_point &z)
 
const Eigen::VectorXd dphi_dq (unit_e_point &z)
 
void sample_p (unit_e_point &z, BaseRNG &rng)
 
- Public Member Functions inherited from stan::mcmc::base_hamiltonian< M, unit_e_point, BaseRNG >
 base_hamiltonian (M &m, std::ostream *e)
 
 ~base_hamiltonian ()
 
double V (unit_e_point &z)
 
double H (unit_e_point &z)
 
virtual void init (unit_e_point &z)
 
virtual void update (unit_e_point &z)
 
+ + + + + + + + + +

+Additional Inherited Members

- Protected Member Functions inherited from stan::mcmc::base_hamiltonian< M, unit_e_point, BaseRNG >
void _write_error_msg (std::ostream *error_msgs, const std::exception &e)
 
- Protected Attributes inherited from stan::mcmc::base_hamiltonian< M, unit_e_point, BaseRNG >
M & _model
 
std::ostream * _err_stream
 
+

Detailed Description

+

template<typename M, typename BaseRNG>
+class stan::mcmc::unit_e_metric< M, BaseRNG >

+ + +

Definition at line 16 of file unit_e_metric.hpp.

+

Constructor & Destructor Documentation

+ +
+
+
+template<typename M , typename BaseRNG >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
stan::mcmc::unit_e_metric< M, BaseRNG >::unit_e_metric (M & m,
std::ostream * e 
)
+
+inline
+
+ +

Definition at line 20 of file unit_e_metric.hpp.

+ +
+
+ +
+
+
+template<typename M , typename BaseRNG >
+ + + + + +
+ + + + + + + +
stan::mcmc::unit_e_metric< M, BaseRNG >::~unit_e_metric ()
+
+inline
+
+ +

Definition at line 22 of file unit_e_metric.hpp.

+ +
+
+

Member Function Documentation

+ +
+
+
+template<typename M , typename BaseRNG >
+ + + + + +
+ + + + + + + + +
const Eigen::VectorXd stan::mcmc::unit_e_metric< M, BaseRNG >::dphi_dq (unit_e_pointz)
+
+inlinevirtual
+
+ +

Implements stan::mcmc::base_hamiltonian< M, unit_e_point, BaseRNG >.

+ +

Definition at line 39 of file unit_e_metric.hpp.

+ +
+
+ +
+
+
+template<typename M , typename BaseRNG >
+ + + + + +
+ + + + + + + + +
const Eigen::VectorXd stan::mcmc::unit_e_metric< M, BaseRNG >::dtau_dp (unit_e_pointz)
+
+inlinevirtual
+
+ +

Implements stan::mcmc::base_hamiltonian< M, unit_e_point, BaseRNG >.

+ +

Definition at line 35 of file unit_e_metric.hpp.

+ +
+
+ +
+
+
+template<typename M , typename BaseRNG >
+ + + + + +
+ + + + + + + + +
const Eigen::VectorXd stan::mcmc::unit_e_metric< M, BaseRNG >::dtau_dq (unit_e_pointz)
+
+inlinevirtual
+
+ +

Implements stan::mcmc::base_hamiltonian< M, unit_e_point, BaseRNG >.

+ +

Definition at line 31 of file unit_e_metric.hpp.

+ +
+
+ +
+
+
+template<typename M , typename BaseRNG >
+ + + + + +
+ + + + + + + + +
double stan::mcmc::unit_e_metric< M, BaseRNG >::phi (unit_e_pointz)
+
+inlinevirtual
+
+ +

Implements stan::mcmc::base_hamiltonian< M, unit_e_point, BaseRNG >.

+ +

Definition at line 29 of file unit_e_metric.hpp.

+ +
+
+ +
+
+
+template<typename M , typename BaseRNG >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
void stan::mcmc::unit_e_metric< M, BaseRNG >::sample_p (unit_e_pointz,
BaseRNG & rng 
)
+
+inlinevirtual
+
+ +

Implements stan::mcmc::base_hamiltonian< M, unit_e_point, BaseRNG >.

+ +

Definition at line 43 of file unit_e_metric.hpp.

+ +
+
+ +
+
+
+template<typename M , typename BaseRNG >
+ + + + + +
+ + + + + + + + +
double stan::mcmc::unit_e_metric< M, BaseRNG >::T (unit_e_pointz)
+
+inlinevirtual
+
+ +

Implements stan::mcmc::base_hamiltonian< M, unit_e_point, BaseRNG >.

+ +

Definition at line 24 of file unit_e_metric.hpp.

+ +
+
+ +
+
+
+template<typename M , typename BaseRNG >
+ + + + + +
+ + + + + + + + +
double stan::mcmc::unit_e_metric< M, BaseRNG >::tau (unit_e_pointz)
+
+inlinevirtual
+
+ +

Implements stan::mcmc::base_hamiltonian< M, unit_e_point, BaseRNG >.

+ +

Definition at line 28 of file unit_e_metric.hpp.

+ +
+
+
The documentation for this class was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1mcmc_1_1unit__e__metric.png b/doc/api/html/classstan_1_1mcmc_1_1unit__e__metric.png new file mode 100644 index 0000000000000000000000000000000000000000..088aad3b3280ff299b600dddebddd8eccd3f8162 GIT binary patch literal 1179 zcmeAS@N?(olHy`uVBq!ia0y~yV2lT{12~w0WT#i#B_Jgc;1lBd|Nnm=^TnI5rTvE{ z09jys;J^Xa&O7ozE=Ng_UoZnu5eQs86=KA|z@p{p;uuoF_;&8wq9s;5F8#At?fI{K zpEDsxa^{(qi)y>WqrapajK8$;&cD-}biA`7r>VN=Oqw!j34?09XIJp2sY@*24Bnb< zmD=!l{&`<2YVOH--YvF_&z)2LY1xz|lcUz}tN-~&-Lo(2_O*Tg{Hp$Q?OT5!L-Sj` z%E^nXUrOw|&bqO+rexOFyc+x8>#75`FXR6E@zS=FmG)I%@1Njbo*P2Pj6*PeU^W|pSQG76}8?USX`K}iKc>m)k$5zIFy|4e%@6UC)KivPdwj1 zD=*Ws&3All7wgG(JIptK-P$yPzYpvz-pjp}IqG@*!`dltV+$T>d)BXKnGzmog1b!WWxoOExgcU0QbUuA}m&N}`R{;KV%ubH)6_2jGnC&MTG>zTA(<*4RQ zub??_hFs0`)W{%UYzs2|nEi!u0ux8zCsvNj$K9FOI)Xqf=6ohL4j`)|rKXmgjp_x7FFJy|`6n zbNIvC^!~pwnbT{&zx%p<`Ofp-pE>`$dvcq_w~TLh^Ut3;V{+^JOONh-g3|5fi(ehg z+gFhDa;Mwguj_x_E9#1_k!GI!Vn)+vyDRUf*T^a{cYplQQ)BIJ>n8iV`by#UE=zBQ z`pkeOujvyK)WrFRuN4cJ0dVSLKgf+uGvy z7w?-pcgD@A*@wTozbY?FOYdDAEA@WwbAI*zvd8UT@BbF^Z_WQ}%G)AC>&-3fp6#Fi z-X>Y#onz+eZOr^%`fcAg-_JStPFwaM&$5_m#ygj1FJt^M_1DWcb<+2@p4+uJ^Sx!m z^e>N3{(b$G`@>|feGG-@xax!M(kUUDOI=>r^D4R@-}h-EsL)~XboFyt=akR{0IFVF A%>V!Z literal 0 HcmV?d00001 diff --git a/doc/api/html/classstan_1_1mcmc_1_1unit__e__nuts-members.html b/doc/api/html/classstan_1_1mcmc_1_1unit__e__nuts-members.html new file mode 100644 index 00000000000..f3a8bdd60b0 --- /dev/null +++ b/doc/api/html/classstan_1_1mcmc_1_1unit__e__nuts-members.html @@ -0,0 +1,158 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::mcmc::unit_e_nuts< M, BaseRNG > Member List
+
+
+ +

This is the complete list of members for stan::mcmc::unit_e_nuts< M, BaseRNG >, including all inherited members.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
_depthstan::mcmc::base_nuts< M, unit_e_point, unit_e_metric, expl_leapfrog, BaseRNG >
_epsilonstan::mcmc::base_hmc< M, unit_e_point, unit_e_metric, expl_leapfrog, BaseRNG >protected
_epsilon_jitterstan::mcmc::base_hmc< M, unit_e_point, unit_e_metric, expl_leapfrog, BaseRNG >protected
_err_streamstan::mcmc::base_mcmcprotected
_hamiltonianstan::mcmc::base_hmc< M, unit_e_point, unit_e_metric, expl_leapfrog, BaseRNG >protected
_integratorstan::mcmc::base_hmc< M, unit_e_point, unit_e_metric, expl_leapfrog, BaseRNG >protected
_max_deltastan::mcmc::base_nuts< M, unit_e_point, unit_e_metric, expl_leapfrog, BaseRNG >
_max_depthstan::mcmc::base_nuts< M, unit_e_point, unit_e_metric, expl_leapfrog, BaseRNG >
_n_divergentstan::mcmc::base_nuts< M, unit_e_point, unit_e_metric, expl_leapfrog, BaseRNG >
_n_leapfrogstan::mcmc::base_nuts< M, unit_e_point, unit_e_metric, expl_leapfrog, BaseRNG >
_namestan::mcmc::base_mcmcprotected
_nom_epsilonstan::mcmc::base_hmc< M, unit_e_point, unit_e_metric, expl_leapfrog, BaseRNG >protected
_out_streamstan::mcmc::base_mcmcprotected
_rand_intstan::mcmc::base_hmc< M, unit_e_point, unit_e_metric, expl_leapfrog, BaseRNG >protected
_rand_uniformstan::mcmc::base_hmc< M, unit_e_point, unit_e_metric, expl_leapfrog, BaseRNG >protected
_zstan::mcmc::base_hmc< M, unit_e_point, unit_e_metric, expl_leapfrog, BaseRNG >protected
base_hmc(M &m, BaseRNG &rng, std::ostream *o, std::ostream *e)stan::mcmc::base_hmc< M, unit_e_point, unit_e_metric, expl_leapfrog, BaseRNG >inline
base_mcmc(std::ostream *o, std::ostream *e)stan::mcmc::base_mcmcinline
base_nuts(M &m, BaseRNG &rng, std::ostream *o, std::ostream *e)stan::mcmc::base_nuts< M, unit_e_point, unit_e_metric, expl_leapfrog, BaseRNG >inline
build_tree(int depth, Eigen::VectorXd &rho, ps_point *z_init_parent, ps_point &z_propose, nuts_util &util)stan::mcmc::base_nuts< M, unit_e_point, unit_e_metric, expl_leapfrog, BaseRNG >inline
compute_criterion(ps_point &start, unit_e_point &finish, Eigen::VectorXd &rho)stan::mcmc::unit_e_nuts< M, BaseRNG >inlinevirtual
get_current_stepsize()stan::mcmc::base_hmc< M, unit_e_point, unit_e_metric, expl_leapfrog, BaseRNG >inline
get_max_delta()stan::mcmc::base_nuts< M, unit_e_point, unit_e_metric, expl_leapfrog, BaseRNG >inline
get_max_depth()stan::mcmc::base_nuts< M, unit_e_point, unit_e_metric, expl_leapfrog, BaseRNG >inline
get_nominal_stepsize()stan::mcmc::base_hmc< M, unit_e_point, unit_e_metric, expl_leapfrog, BaseRNG >inline
get_sampler_diagnostic_names(std::vector< std::string > &model_names, std::vector< std::string > &names)stan::mcmc::base_hmc< M, unit_e_point, unit_e_metric, expl_leapfrog, BaseRNG >inlinevirtual
get_sampler_diagnostics(std::vector< double > &values)stan::mcmc::base_hmc< M, unit_e_point, unit_e_metric, expl_leapfrog, BaseRNG >inlinevirtual
get_sampler_param_names(std::vector< std::string > &names)stan::mcmc::base_nuts< M, unit_e_point, unit_e_metric, expl_leapfrog, BaseRNG >inlinevirtual
get_sampler_params(std::vector< double > &values)stan::mcmc::base_nuts< M, unit_e_point, unit_e_metric, expl_leapfrog, BaseRNG >inlinevirtual
get_stepsize_jitter()stan::mcmc::base_hmc< M, unit_e_point, unit_e_metric, expl_leapfrog, BaseRNG >inline
init_stepsize()stan::mcmc::base_hmc< M, unit_e_point, unit_e_metric, expl_leapfrog, BaseRNG >inline
name()stan::mcmc::base_mcmcinline
sample_stepsize()stan::mcmc::base_hmc< M, unit_e_point, unit_e_metric, expl_leapfrog, BaseRNG >inline
seed(const Eigen::VectorXd &q)stan::mcmc::base_hmc< M, unit_e_point, unit_e_metric, expl_leapfrog, BaseRNG >inline
set_max_delta(const double d)stan::mcmc::base_nuts< M, unit_e_point, unit_e_metric, expl_leapfrog, BaseRNG >inline
set_max_depth(const int d)stan::mcmc::base_nuts< M, unit_e_point, unit_e_metric, expl_leapfrog, BaseRNG >inline
set_nominal_stepsize(const double e)stan::mcmc::base_hmc< M, unit_e_point, unit_e_metric, expl_leapfrog, BaseRNG >inlinevirtual
set_stepsize_jitter(const double j)stan::mcmc::base_hmc< M, unit_e_point, unit_e_metric, expl_leapfrog, BaseRNG >inlinevirtual
transition(sample &init_sample)stan::mcmc::base_nuts< M, unit_e_point, unit_e_metric, expl_leapfrog, BaseRNG >inlinevirtual
unit_e_nuts(M &m, BaseRNG &rng, std::ostream *o=&std::cout, std::ostream *e=0)stan::mcmc::unit_e_nuts< M, BaseRNG >inline
write_sampler_param_names(std::ostream &o)stan::mcmc::base_nuts< M, unit_e_point, unit_e_metric, expl_leapfrog, BaseRNG >inlinevirtual
write_sampler_params(std::ostream &o)stan::mcmc::base_nuts< M, unit_e_point, unit_e_metric, expl_leapfrog, BaseRNG >inlinevirtual
write_sampler_state(std::ostream *o)stan::mcmc::base_hmc< M, unit_e_point, unit_e_metric, expl_leapfrog, BaseRNG >inlinevirtual
z()stan::mcmc::base_hmc< M, unit_e_point, unit_e_metric, expl_leapfrog, BaseRNG >inline
~base_mcmc()stan::mcmc::base_mcmcinlinevirtual
~base_nuts()stan::mcmc::base_nuts< M, unit_e_point, unit_e_metric, expl_leapfrog, BaseRNG >inline
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1mcmc_1_1unit__e__nuts.html b/doc/api/html/classstan_1_1mcmc_1_1unit__e__nuts.html new file mode 100644 index 00000000000..a3700372587 --- /dev/null +++ b/doc/api/html/classstan_1_1mcmc_1_1unit__e__nuts.html @@ -0,0 +1,332 @@ + + + + + +Stan: stan::mcmc::unit_e_nuts< M, BaseRNG > Class Template Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::mcmc::unit_e_nuts< M, BaseRNG > Class Template Reference
+
+
+ +

#include <unit_e_nuts.hpp>

+
+Inheritance diagram for stan::mcmc::unit_e_nuts< M, BaseRNG >:
+
+
+ + +stan::mcmc::base_nuts< M, unit_e_point, unit_e_metric, expl_leapfrog, BaseRNG > +stan::mcmc::base_hmc< M, unit_e_point, unit_e_metric, expl_leapfrog, BaseRNG > +stan::mcmc::base_mcmc +stan::mcmc::adapt_unit_e_nuts< M, BaseRNG > + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 unit_e_nuts (M &m, BaseRNG &rng, std::ostream *o=&std::cout, std::ostream *e=0)
 
bool compute_criterion (ps_point &start, unit_e_point &finish, Eigen::VectorXd &rho)
 
- Public Member Functions inherited from stan::mcmc::base_nuts< M, unit_e_point, unit_e_metric, expl_leapfrog, BaseRNG >
 base_nuts (M &m, BaseRNG &rng, std::ostream *o, std::ostream *e)
 
 ~base_nuts ()
 
void set_max_depth (const int d)
 
void set_max_delta (const double d)
 
int get_max_depth ()
 
double get_max_delta ()
 
sample transition (sample &init_sample)
 
void write_sampler_param_names (std::ostream &o)
 
void write_sampler_params (std::ostream &o)
 
void get_sampler_param_names (std::vector< std::string > &names)
 
void get_sampler_params (std::vector< double > &values)
 
int build_tree (int depth, Eigen::VectorXd &rho, ps_point *z_init_parent, ps_point &z_propose, nuts_util &util)
 
- Public Member Functions inherited from stan::mcmc::base_hmc< M, unit_e_point, unit_e_metric, expl_leapfrog, BaseRNG >
 base_hmc (M &m, BaseRNG &rng, std::ostream *o, std::ostream *e)
 
void write_sampler_state (std::ostream *o)
 
void get_sampler_diagnostic_names (std::vector< std::string > &model_names, std::vector< std::string > &names)
 
void get_sampler_diagnostics (std::vector< double > &values)
 
void seed (const Eigen::VectorXd &q)
 
void init_stepsize ()
 
unit_e_pointz ()
 
virtual void set_nominal_stepsize (const double e)
 
double get_nominal_stepsize ()
 
double get_current_stepsize ()
 
virtual void set_stepsize_jitter (const double j)
 
double get_stepsize_jitter ()
 
void sample_stepsize ()
 
- Public Member Functions inherited from stan::mcmc::base_mcmc
 base_mcmc (std::ostream *o, std::ostream *e)
 
virtual ~base_mcmc ()
 
std::string name ()
 
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Additional Inherited Members

- Public Attributes inherited from stan::mcmc::base_nuts< M, unit_e_point, unit_e_metric, expl_leapfrog, BaseRNG >
int _depth
 
int _max_depth
 
double _max_delta
 
int _n_leapfrog
 
int _n_divergent
 
- Protected Attributes inherited from stan::mcmc::base_hmc< M, unit_e_point, unit_e_metric, expl_leapfrog, BaseRNG >
unit_e_point _z
 
expl_leapfrog< unit_e_metric
+< M, BaseRNG >, unit_e_point
_integrator
 
unit_e_metric< M, BaseRNG > _hamiltonian
 
BaseRNG & _rand_int
 
boost::uniform_01< BaseRNG & > _rand_uniform
 
double _nom_epsilon
 
double _epsilon
 
double _epsilon_jitter
 
+

Detailed Description

+

template<typename M, class BaseRNG>
+class stan::mcmc::unit_e_nuts< M, BaseRNG >

+ + +

Definition at line 17 of file unit_e_nuts.hpp.

+

Constructor & Destructor Documentation

+ +
+
+
+template<typename M , class BaseRNG >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
stan::mcmc::unit_e_nuts< M, BaseRNG >::unit_e_nuts (M & m,
BaseRNG & rng,
std::ostream * o = &std::cout,
std::ostream * e = 0 
)
+
+inline
+
+ +

Definition at line 25 of file unit_e_nuts.hpp.

+ +
+
+

Member Function Documentation

+ +
+
+
+template<typename M , class BaseRNG >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
bool stan::mcmc::unit_e_nuts< M, BaseRNG >::compute_criterion (ps_pointstart,
unit_e_pointfinish,
Eigen::VectorXd & rho 
)
+
+inlinevirtual
+
+
+
The documentation for this class was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1mcmc_1_1unit__e__nuts.png b/doc/api/html/classstan_1_1mcmc_1_1unit__e__nuts.png new file mode 100644 index 0000000000000000000000000000000000000000..a4c42933ff1674955c5a08dcac73e114baf200a7 GIT binary patch literal 3114 zcmb`J2~ZPh8ioTb;6Vh1ks}JS1`w1x5E8)Xh|4smq8UU{F1b$$h!`MvOc+tFa2W!L zG6axIlr!8K6+tA!5tu+Y0zwQ(h#Yd0jk8r-v*m2nR_%0EcYodecUO1+@AJLyy)zEh z;9V-aKp+qp_`%8v1QO$j>eU?*qU|SS#jt3nbjI%dX`xUkDnEW&j!b!(Dyn{8+uGVB z@3GZHhdUyi9L|A6gT5}z&hthf&~6%Fb@KcTvAMjttkNTLr|S}G7PeC?0EIQVq%U(o zk)v~pIVLmT%2WXdXj2bSGwjp>r$a#2T@N5!Q^uBH>~VpRyOU1%(4}u;0rWbr6?GGq zN_TucF>h=!B56O%xIDOsV~tF%9jJkst^}UnDx=W|)`a5}H{ToN8Sj@A@~p38w7nO0 zEV8E{9F5&Ts{-q~oByDDXKf%t?}GWZiKZ{!2%cCFmew}Abu4!i1D6NEjGb9`-`Oi= z6;KNGpS!_aZ-(^$U!n{ove9H8W>&df3*MkfUtd%U&A2IaG{y}0U_V>(!MO&F*5 z7IS;X=e!0!8p^8^KuW8jl7tAn0ec{UOM$ZF@ERRNgJVGVw_i9CW}_{sP5rR5jWQu6 z2YR>_AM31altsi)dG(t5OcaZ|CLx)-`^tjwSh^~I;NnJ)HTH%ukEEaoPSLCmhA55lIn6oMgJx!_ z4!QKkk=bzAdOyD&8M{XoOtHJ}O06sPAuiwNhMDUQGB~xHs=0KUR2Q@9c$+jeZa&Vz zLaR9BI=HSJLSG*8Z>@e(7RgmOH5LVA8i>R)Zm|L@`3k$3fF^kWA`-`h&B4W8ALZFsoYF_V&un=T3-S4qR78v|p# z%qxA!v&yrm#yNJ(rR@ibnSLe~(z=h|^=Ho_3Jae#&o}rv(PlzN?iD|nR!@dGjFcM#b;{*(L~G=p>ZirwwvQBF&%J4ZTyZ? zYZOY0EPo#U%c2hMBR_4RJnxGwsq>y_V zIq|D=y5U&!LnNSLD1xW`f!9our9*W(mYbSgfE)j1r4o91Lik$|A>!WCdCn~91mViK z_XUDD!2IqTu|?6fsR{)d1T7FQ5pn|LZlfe+FnxXZYfy{G5xn@fPZ`GRiadcN*!>rI z!k-}_GMuh4V+;E}1-m{N@#Wv-Ko>-o^&h^Z=D7-yzUCOIH*BDTDuWcYtF^_mP3urN z*?h6lBnqdG^#-qqPU76jr3LdV8@3Own4eRZww3xYApTNe{(#<2w!+VA?0VXjmZrHj-(Hpl9Gs@V4k;|(LJD66(C z{U(s^pLH~FJ(fX)d{kpcVOOb~ytbBrC46amP1(JsvVmq-Vrb%yHrWMbG?MXd1yb=r zMm+m)zP|Rz?irmt^QkWC4E*4*q`1Iqvx#$(wJ~ZLBUhhe?p-fau6&khYH$F1Bcd`1 z?0Cj4xc{}z2!$2-9UqxznJ^r#zzuVwat{YvN)i1kru-mdsGD`-IY!MaI-=$2ug#o% z{|=*+FkW@?qoX?zyT;{Li(i0Z|@4}lCcWF(X@jX!yU+(bRmFzUr)rM4{5EZMJ0{spn%zewO~=9r#WcF?A_zS5;; zZ0~~tyPzF}Zz9gxPI@{tR)S=Ky*JNbG-H%9)drIKCLIYjV)8HH4EmCN?Js z;h8k_srD4z8^&}W$aZ_8Mp(iLuFw~`dTPyGJ~VRG2&{I+o>7A#6&bT50&`|G;5SbH zu8~pYp)^j^;A|a4Z}HOf)knCnR)jM=x)whR^P-#IiVfz0owWj8!A}%-im&C=DCreL}GJm!q!j;Rcve zY}exZ3Z^gaDgV6HyO>tM9udyMM;ow-txkn-tXccYcMWh?n668w-^{h^lIqq#?{G9W zGpit!8(g(=E(glH|4=!OUw-Xi5NVINhJS+F5wkCqP?t$jtQH4`zICyGHx{9odP0 + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::mcmc::unit_e_point Member List
+
+
+ +

This is the complete list of members for stan::mcmc::unit_e_point, including all inherited members.

+ + + + + + + + + + + + + + +
_fast_matrix_copy(Eigen::Matrix< T, Eigen::Dynamic, Eigen::Dynamic > &v_to, const Eigen::Matrix< T, Eigen::Dynamic, Eigen::Dynamic > &v_from)stan::mcmc::ps_pointinlineprotected
_fast_vector_copy(Eigen::Matrix< T, Eigen::Dynamic, 1 > &v_to, const Eigen::Matrix< T, Eigen::Dynamic, 1 > &v_from)stan::mcmc::ps_pointinlineprotected
gstan::mcmc::ps_point
get_param_names(std::vector< std::string > &model_names, std::vector< std::string > &names)stan::mcmc::ps_pointinlinevirtual
get_params(std::vector< double > &values)stan::mcmc::ps_pointinlinevirtual
operator=(const ps_point &z)stan::mcmc::ps_pointinline
pstan::mcmc::ps_point
ps_point(int n)stan::mcmc::ps_pointinline
ps_point(const ps_point &z)stan::mcmc::ps_pointinline
qstan::mcmc::ps_point
unit_e_point(int n)stan::mcmc::unit_e_pointinline
Vstan::mcmc::ps_point
write_metric(std::ostream *o)stan::mcmc::ps_pointinlinevirtual
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1mcmc_1_1unit__e__point.html b/doc/api/html/classstan_1_1mcmc_1_1unit__e__point.html new file mode 100644 index 00000000000..0e96b7804e3 --- /dev/null +++ b/doc/api/html/classstan_1_1mcmc_1_1unit__e__point.html @@ -0,0 +1,194 @@ + + + + + +Stan: stan::mcmc::unit_e_point Class Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::mcmc::unit_e_point Class Reference
+
+
+ +

#include <unit_e_point.hpp>

+
+Inheritance diagram for stan::mcmc::unit_e_point:
+
+
+ + +stan::mcmc::ps_point + +
+ + + + + + + + + + + + + + + + + +

+Public Member Functions

 unit_e_point (int n)
 
- Public Member Functions inherited from stan::mcmc::ps_point
 ps_point (int n)
 
 ps_point (const ps_point &z)
 
ps_pointoperator= (const ps_point &z)
 
virtual void get_param_names (std::vector< std::string > &model_names, std::vector< std::string > &names)
 
virtual void get_params (std::vector< double > &values)
 
virtual void write_metric (std::ostream *o)
 
+ + + + + + + + + + + + + + + + + +

+Additional Inherited Members

- Public Attributes inherited from stan::mcmc::ps_point
Eigen::VectorXd q
 
Eigen::VectorXd p
 
double V
 
Eigen::VectorXd g
 
- Protected Member Functions inherited from stan::mcmc::ps_point
template<typename T >
void _fast_vector_copy (Eigen::Matrix< T, Eigen::Dynamic, 1 > &v_to, const Eigen::Matrix< T, Eigen::Dynamic, 1 > &v_from)
 
template<typename T >
void _fast_matrix_copy (Eigen::Matrix< T, Eigen::Dynamic, Eigen::Dynamic > &v_to, const Eigen::Matrix< T, Eigen::Dynamic, Eigen::Dynamic > &v_from)
 
+

Detailed Description

+
+

Definition at line 12 of file unit_e_point.hpp.

+

Constructor & Destructor Documentation

+ +
+
+ + + + + +
+ + + + + + + + +
stan::mcmc::unit_e_point::unit_e_point (int n)
+
+inline
+
+ +

Definition at line 16 of file unit_e_point.hpp.

+ +
+
+
The documentation for this class was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1mcmc_1_1unit__e__point.png b/doc/api/html/classstan_1_1mcmc_1_1unit__e__point.png new file mode 100644 index 0000000000000000000000000000000000000000..8106ad275283cce8e19bbf975986c1d6c57243fa GIT binary patch literal 610 zcmeAS@N?(olHy`uVBq!ia0vp^lYuyZgBeI_xo@`xQW60^A+G=b{|7Q(y!l$%e`o@b z1;z&s9ANFdBM;6c{lGkfp0lk@hTO1K)ox9jY+xE#xM5;-@jm&GiZGHdag+;btk*ZwAV%*}kd z{kui_t!X8vFEQkO*)F2K&33NJ?R#%y`%YL_%+B0iUZ0r7ayRAH{q?tf+CP7prs=s& za=rKSm*1mX275!F8uQ-Z)Y%-zzWU#^qHXIr&&>F__gUN|(Zi268$DH8dgV<*ZgGHV z#P|Dd*LIZs3N3h=Kl9D2tC8PAr9$6Y?ex(-&USgzgP-%y9-mos>AsQaG5g(qeaY4D z^^8zBVbj}AW n + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::mcmc::unit_e_static_hmc< M, BaseRNG > Member List
+
+
+ +

This is the complete list of members for stan::mcmc::unit_e_static_hmc< M, BaseRNG >, including all inherited members.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
_epsilonstan::mcmc::base_hmc< M, unit_e_point, unit_e_metric, expl_leapfrog, BaseRNG >protected
_epsilon_jitterstan::mcmc::base_hmc< M, unit_e_point, unit_e_metric, expl_leapfrog, BaseRNG >protected
_err_streamstan::mcmc::base_mcmcprotected
_hamiltonianstan::mcmc::base_hmc< M, unit_e_point, unit_e_metric, expl_leapfrog, BaseRNG >protected
_integratorstan::mcmc::base_hmc< M, unit_e_point, unit_e_metric, expl_leapfrog, BaseRNG >protected
_namestan::mcmc::base_mcmcprotected
_nom_epsilonstan::mcmc::base_hmc< M, unit_e_point, unit_e_metric, expl_leapfrog, BaseRNG >protected
_out_streamstan::mcmc::base_mcmcprotected
_rand_intstan::mcmc::base_hmc< M, unit_e_point, unit_e_metric, expl_leapfrog, BaseRNG >protected
_rand_uniformstan::mcmc::base_hmc< M, unit_e_point, unit_e_metric, expl_leapfrog, BaseRNG >protected
_update_L()stan::mcmc::base_static_hmc< M, unit_e_point, unit_e_metric, expl_leapfrog, BaseRNG >inlineprotected
_zstan::mcmc::base_hmc< M, unit_e_point, unit_e_metric, expl_leapfrog, BaseRNG >protected
base_hmc(M &m, BaseRNG &rng, std::ostream *o, std::ostream *e)stan::mcmc::base_hmc< M, unit_e_point, unit_e_metric, expl_leapfrog, BaseRNG >inline
base_mcmc(std::ostream *o, std::ostream *e)stan::mcmc::base_mcmcinline
base_static_hmc(M &m, BaseRNG &rng, std::ostream *o, std::ostream *e)stan::mcmc::base_static_hmc< M, unit_e_point, unit_e_metric, expl_leapfrog, BaseRNG >inline
get_current_stepsize()stan::mcmc::base_hmc< M, unit_e_point, unit_e_metric, expl_leapfrog, BaseRNG >inline
get_L()stan::mcmc::base_static_hmc< M, unit_e_point, unit_e_metric, expl_leapfrog, BaseRNG >inline
get_nominal_stepsize()stan::mcmc::base_hmc< M, unit_e_point, unit_e_metric, expl_leapfrog, BaseRNG >inline
get_sampler_diagnostic_names(std::vector< std::string > &model_names, std::vector< std::string > &names)stan::mcmc::base_hmc< M, unit_e_point, unit_e_metric, expl_leapfrog, BaseRNG >inlinevirtual
get_sampler_diagnostics(std::vector< double > &values)stan::mcmc::base_hmc< M, unit_e_point, unit_e_metric, expl_leapfrog, BaseRNG >inlinevirtual
get_sampler_param_names(std::vector< std::string > &names)stan::mcmc::base_static_hmc< M, unit_e_point, unit_e_metric, expl_leapfrog, BaseRNG >inlinevirtual
get_sampler_params(std::vector< double > &values)stan::mcmc::base_static_hmc< M, unit_e_point, unit_e_metric, expl_leapfrog, BaseRNG >inlinevirtual
get_stepsize_jitter()stan::mcmc::base_hmc< M, unit_e_point, unit_e_metric, expl_leapfrog, BaseRNG >inline
get_T()stan::mcmc::base_static_hmc< M, unit_e_point, unit_e_metric, expl_leapfrog, BaseRNG >inline
init_stepsize()stan::mcmc::base_hmc< M, unit_e_point, unit_e_metric, expl_leapfrog, BaseRNG >inline
L_stan::mcmc::base_static_hmc< M, unit_e_point, unit_e_metric, expl_leapfrog, BaseRNG >protected
name()stan::mcmc::base_mcmcinline
sample_stepsize()stan::mcmc::base_hmc< M, unit_e_point, unit_e_metric, expl_leapfrog, BaseRNG >inline
seed(const Eigen::VectorXd &q)stan::mcmc::base_hmc< M, unit_e_point, unit_e_metric, expl_leapfrog, BaseRNG >inline
set_nominal_stepsize(const double e)stan::mcmc::base_static_hmc< M, unit_e_point, unit_e_metric, expl_leapfrog, BaseRNG >inlinevirtual
set_nominal_stepsize_and_L(const double e, const int l)stan::mcmc::base_static_hmc< M, unit_e_point, unit_e_metric, expl_leapfrog, BaseRNG >inline
set_nominal_stepsize_and_T(const double e, const double t)stan::mcmc::base_static_hmc< M, unit_e_point, unit_e_metric, expl_leapfrog, BaseRNG >inline
set_stepsize_jitter(const double j)stan::mcmc::base_hmc< M, unit_e_point, unit_e_metric, expl_leapfrog, BaseRNG >inlinevirtual
set_T(const double t)stan::mcmc::base_static_hmc< M, unit_e_point, unit_e_metric, expl_leapfrog, BaseRNG >inline
T_stan::mcmc::base_static_hmc< M, unit_e_point, unit_e_metric, expl_leapfrog, BaseRNG >protected
transition(sample &init_sample)stan::mcmc::base_static_hmc< M, unit_e_point, unit_e_metric, expl_leapfrog, BaseRNG >inlinevirtual
unit_e_static_hmc(M &m, BaseRNG &rng, std::ostream *o=&std::cout, std::ostream *e=0)stan::mcmc::unit_e_static_hmc< M, BaseRNG >inline
write_sampler_param_names(std::ostream &o)stan::mcmc::base_static_hmc< M, unit_e_point, unit_e_metric, expl_leapfrog, BaseRNG >inlinevirtual
write_sampler_params(std::ostream &o)stan::mcmc::base_static_hmc< M, unit_e_point, unit_e_metric, expl_leapfrog, BaseRNG >inlinevirtual
write_sampler_state(std::ostream *o)stan::mcmc::base_hmc< M, unit_e_point, unit_e_metric, expl_leapfrog, BaseRNG >inlinevirtual
z()stan::mcmc::base_hmc< M, unit_e_point, unit_e_metric, expl_leapfrog, BaseRNG >inline
~base_mcmc()stan::mcmc::base_mcmcinlinevirtual
~base_static_hmc()stan::mcmc::base_static_hmc< M, unit_e_point, unit_e_metric, expl_leapfrog, BaseRNG >inline
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1mcmc_1_1unit__e__static__hmc.html b/doc/api/html/classstan_1_1mcmc_1_1unit__e__static__hmc.html new file mode 100644 index 00000000000..e4753236646 --- /dev/null +++ b/doc/api/html/classstan_1_1mcmc_1_1unit__e__static__hmc.html @@ -0,0 +1,262 @@ + + + + + +Stan: stan::mcmc::unit_e_static_hmc< M, BaseRNG > Class Template Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::mcmc::unit_e_static_hmc< M, BaseRNG > Class Template Reference
+
+
+ +

#include <unit_e_static_hmc.hpp>

+
+Inheritance diagram for stan::mcmc::unit_e_static_hmc< M, BaseRNG >:
+
+
+ + +stan::mcmc::base_static_hmc< M, unit_e_point, unit_e_metric, expl_leapfrog, BaseRNG > +stan::mcmc::base_hmc< M, unit_e_point, unit_e_metric, expl_leapfrog, BaseRNG > +stan::mcmc::base_mcmc +stan::mcmc::adapt_unit_e_static_hmc< M, BaseRNG > + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 unit_e_static_hmc (M &m, BaseRNG &rng, std::ostream *o=&std::cout, std::ostream *e=0)
 
- Public Member Functions inherited from stan::mcmc::base_static_hmc< M, unit_e_point, unit_e_metric, expl_leapfrog, BaseRNG >
 base_static_hmc (M &m, BaseRNG &rng, std::ostream *o, std::ostream *e)
 
 ~base_static_hmc ()
 
sample transition (sample &init_sample)
 
void write_sampler_param_names (std::ostream &o)
 
void write_sampler_params (std::ostream &o)
 
void get_sampler_param_names (std::vector< std::string > &names)
 
void get_sampler_params (std::vector< double > &values)
 
void set_nominal_stepsize_and_T (const double e, const double t)
 
void set_nominal_stepsize_and_L (const double e, const int l)
 
void set_T (const double t)
 
void set_nominal_stepsize (const double e)
 
double get_T ()
 
int get_L ()
 
- Public Member Functions inherited from stan::mcmc::base_hmc< M, unit_e_point, unit_e_metric, expl_leapfrog, BaseRNG >
 base_hmc (M &m, BaseRNG &rng, std::ostream *o, std::ostream *e)
 
void write_sampler_state (std::ostream *o)
 
void get_sampler_diagnostic_names (std::vector< std::string > &model_names, std::vector< std::string > &names)
 
void get_sampler_diagnostics (std::vector< double > &values)
 
void seed (const Eigen::VectorXd &q)
 
void init_stepsize ()
 
unit_e_pointz ()
 
double get_nominal_stepsize ()
 
double get_current_stepsize ()
 
virtual void set_stepsize_jitter (const double j)
 
double get_stepsize_jitter ()
 
void sample_stepsize ()
 
- Public Member Functions inherited from stan::mcmc::base_mcmc
 base_mcmc (std::ostream *o, std::ostream *e)
 
virtual ~base_mcmc ()
 
std::string name ()
 
+ + + + + + + + + +

+Additional Inherited Members

- Protected Member Functions inherited from stan::mcmc::base_static_hmc< M, unit_e_point, unit_e_metric, expl_leapfrog, BaseRNG >
void _update_L ()
 
- Protected Attributes inherited from stan::mcmc::base_static_hmc< M, unit_e_point, unit_e_metric, expl_leapfrog, BaseRNG >
double T_
 
int L_
 
+

Detailed Description

+

template<typename M, class BaseRNG>
+class stan::mcmc::unit_e_static_hmc< M, BaseRNG >

+ + +

Definition at line 18 of file unit_e_static_hmc.hpp.

+

Constructor & Destructor Documentation

+ +
+
+
+template<typename M , class BaseRNG >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
stan::mcmc::unit_e_static_hmc< M, BaseRNG >::unit_e_static_hmc (M & m,
BaseRNG & rng,
std::ostream * o = &std::cout,
std::ostream * e = 0 
)
+
+inline
+
+ +

Definition at line 26 of file unit_e_static_hmc.hpp.

+ +
+
+
The documentation for this class was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1mcmc_1_1unit__e__static__hmc.png b/doc/api/html/classstan_1_1mcmc_1_1unit__e__static__hmc.png new file mode 100644 index 0000000000000000000000000000000000000000..7215e9a88721bc8734e671b21cd19053c941f6ba GIT binary patch literal 3323 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 O0nCi8jEa85k^Tu}#y9u? literal 0 HcmV?d00001 diff --git a/doc/api/html/classstan_1_1mcmc_1_1var__adaptation-members.html b/doc/api/html/classstan_1_1mcmc_1_1var__adaptation-members.html new file mode 100644 index 00000000000..5e6bc246672 --- /dev/null +++ b/doc/api/html/classstan_1_1mcmc_1_1var__adaptation-members.html @@ -0,0 +1,129 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::mcmc::var_adaptation Member List
+
+ +
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1mcmc_1_1var__adaptation.html b/doc/api/html/classstan_1_1mcmc_1_1var__adaptation.html new file mode 100644 index 00000000000..317125adfd3 --- /dev/null +++ b/doc/api/html/classstan_1_1mcmc_1_1var__adaptation.html @@ -0,0 +1,261 @@ + + + + + +Stan: stan::mcmc::var_adaptation Class Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::mcmc::var_adaptation Class Reference
+
+
+ +

#include <var_adaptation.hpp>

+
+Inheritance diagram for stan::mcmc::var_adaptation:
+
+
+ + +stan::mcmc::windowed_adaptation +stan::mcmc::base_adaptation + +
+ + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 var_adaptation (int n)
 
bool learn_variance (Eigen::VectorXd &var, const Eigen::VectorXd &q)
 
- Public Member Functions inherited from stan::mcmc::windowed_adaptation
 windowed_adaptation (std::string name)
 
void restart ()
 
void set_window_params (unsigned int num_warmup, unsigned int init_buffer, unsigned int term_buffer, unsigned int base_window, std::ostream *e=0)
 
bool adaptation_window ()
 
bool end_adaptation_window ()
 
void compute_next_window ()
 
+ + + + + + + + + + + + + + + + + + + + +

+Protected Attributes

prob::welford_var_estimator _estimator
 
- Protected Attributes inherited from stan::mcmc::windowed_adaptation
std::string _estimator_name
 
unsigned int _num_warmup
 
unsigned int _adapt_init_buffer
 
unsigned int _adapt_term_buffer
 
unsigned int _adapt_base_window
 
unsigned int _adapt_window_counter
 
unsigned int _adapt_next_window
 
unsigned int _adapt_window_size
 
+

Detailed Description

+
+

Definition at line 14 of file var_adaptation.hpp.

+

Constructor & Destructor Documentation

+ +
+
+ + + + + +
+ + + + + + + + +
stan::mcmc::var_adaptation::var_adaptation (int n)
+
+inline
+
+ +

Definition at line 18 of file var_adaptation.hpp.

+ +
+
+

Member Function Documentation

+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
bool stan::mcmc::var_adaptation::learn_variance (Eigen::VectorXd & var,
const Eigen::VectorXd & q 
)
+
+inline
+
+ +

Definition at line 20 of file var_adaptation.hpp.

+ +
+
+

Member Data Documentation

+ +
+
+ + + + + +
+ + + + +
prob::welford_var_estimator stan::mcmc::var_adaptation::_estimator
+
+protected
+
+ +

Definition at line 48 of file var_adaptation.hpp.

+ +
+
+
The documentation for this class was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1mcmc_1_1var__adaptation.png b/doc/api/html/classstan_1_1mcmc_1_1var__adaptation.png new file mode 100644 index 0000000000000000000000000000000000000000..2afb9f0f5110975f79348c6632b13f438cb13749 GIT binary patch literal 1077 zcmeAS@N?(olHy`uVBq!ia0vp^CxEzvgBeIpy%%x-NJ#|vgt-3y{~ySF@#br3|Dg#$ z78oBmaDcV*jy#adQ4-`A%m7pb0#{Fk7%?y~AMtc?45?szJNK>7Vg(*o{_8XM{a0SU zRm0`Nt+L&-jb;|DeW-jgu%mwFvP>yQpGjYSa|w8UTEZ|<#ovn6bJCY}aZz`C^khHZ z6%Ds%RPsDu!ZPU{f70$V_onT?`t{e8ZH~$Ln_t-_=Qv(lc+^*PWy`+!Z;K~wxz2b( zdGnn6kJi15zBAJ?`~5VHm0Rv^HY=X(;ia{9o`z@GaRt?9cFd3WCeJoGYqnisZT{rC z?~QWrwr*a#b>F4)4sv{(4(Ci+8~W31+RGm-PtF|lR!B|Vto^3v+4|jE<5(?A3wCtB zU9*19MDy*}!c46+uP0M)UZ$emyiP`3C(anMoitDg+{#d+ z>A+w^0$!IjYgs0Xq35Od+Hf1#C#k$lj?{l{w|lW~`pX&bcX{t)Qd*f+FY7W%N_0X= z`dz)xO;7V<_u6&jUbqq6k@dmQAb$G3qlGi4On-V&w>i!8Tkxk{z)%%?BDkXE^u*%m zuo;fo&%bC-sLFl0t-SJz9mnP)%N8!V^s3W(!ly^8j$aQdd$VnO%UjjN-O}Q@QhRrl zt-BlbI{LSjhx#$Q4I6!q3s2a*yj1kbM{7n+;a9<1??<`!J9sXYZJe|3+u`0@zNzLH z&v&;dSitmzr0x8yf(IfpOq8m&N^AEkBmKj4stV}{t??=djHWio~YYv z?o@p1IGQWm=#u%>r6KIO!qc~5FSksQy}eJcdbc&BZ_B*XwKWWj)1$L%x4v&&^G=@c z%#5#@I+s71JDii*%M!HuX4KvNn|Zk|yqaoU#4%|>-tU(4j_c-6b_5$-bgQu&X%Q~loCIAWD=d1t# literal 0 HcmV?d00001 diff --git a/doc/api/html/classstan_1_1mcmc_1_1windowed__adaptation-members.html b/doc/api/html/classstan_1_1mcmc_1_1windowed__adaptation-members.html new file mode 100644 index 00000000000..6b544e2cca6 --- /dev/null +++ b/doc/api/html/classstan_1_1mcmc_1_1windowed__adaptation-members.html @@ -0,0 +1,126 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::mcmc::windowed_adaptation Member List
+
+ +
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1mcmc_1_1windowed__adaptation.html b/doc/api/html/classstan_1_1mcmc_1_1windowed__adaptation.html new file mode 100644 index 00000000000..8d97f781caa --- /dev/null +++ b/doc/api/html/classstan_1_1mcmc_1_1windowed__adaptation.html @@ -0,0 +1,528 @@ + + + + + +Stan: stan::mcmc::windowed_adaptation Class Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::mcmc::windowed_adaptation Class Reference
+
+
+ +

#include <windowed_adaptation.hpp>

+
+Inheritance diagram for stan::mcmc::windowed_adaptation:
+
+
+ + +stan::mcmc::base_adaptation +stan::mcmc::covar_adaptation +stan::mcmc::var_adaptation + +
+ + + + + + + + + + + + + + +

+Public Member Functions

 windowed_adaptation (std::string name)
 
void restart ()
 
void set_window_params (unsigned int num_warmup, unsigned int init_buffer, unsigned int term_buffer, unsigned int base_window, std::ostream *e=0)
 
bool adaptation_window ()
 
bool end_adaptation_window ()
 
void compute_next_window ()
 
+ + + + + + + + + + + + + + + + + +

+Protected Attributes

std::string _estimator_name
 
unsigned int _num_warmup
 
unsigned int _adapt_init_buffer
 
unsigned int _adapt_term_buffer
 
unsigned int _adapt_base_window
 
unsigned int _adapt_window_counter
 
unsigned int _adapt_next_window
 
unsigned int _adapt_window_size
 
+

Detailed Description

+
+

Definition at line 13 of file windowed_adaptation.hpp.

+

Constructor & Destructor Documentation

+ +
+
+ + + + + +
+ + + + + + + + +
stan::mcmc::windowed_adaptation::windowed_adaptation (std::string name)
+
+inline
+
+ +

Definition at line 17 of file windowed_adaptation.hpp.

+ +
+
+

Member Function Documentation

+ +
+
+ + + + + +
+ + + + + + + +
bool stan::mcmc::windowed_adaptation::adaptation_window ()
+
+inline
+
+ +

Definition at line 77 of file windowed_adaptation.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
void stan::mcmc::windowed_adaptation::compute_next_window ()
+
+inline
+
+ +

Definition at line 88 of file windowed_adaptation.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
bool stan::mcmc::windowed_adaptation::end_adaptation_window ()
+
+inline
+
+ +

Definition at line 83 of file windowed_adaptation.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
void stan::mcmc::windowed_adaptation::restart ()
+
+inlinevirtual
+
+ +

Reimplemented from stan::mcmc::base_adaptation.

+ +

Definition at line 26 of file windowed_adaptation.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
void stan::mcmc::windowed_adaptation::set_window_params (unsigned int num_warmup,
unsigned int init_buffer,
unsigned int term_buffer,
unsigned int base_window,
std::ostream * e = 0 
)
+
+inline
+
+ +

Definition at line 32 of file windowed_adaptation.hpp.

+ +
+
+

Member Data Documentation

+ +
+
+ + + + + +
+ + + + +
unsigned int stan::mcmc::windowed_adaptation::_adapt_base_window
+
+protected
+
+ +

Definition at line 115 of file windowed_adaptation.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + +
unsigned int stan::mcmc::windowed_adaptation::_adapt_init_buffer
+
+protected
+
+ +

Definition at line 113 of file windowed_adaptation.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + +
unsigned int stan::mcmc::windowed_adaptation::_adapt_next_window
+
+protected
+
+ +

Definition at line 118 of file windowed_adaptation.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + +
unsigned int stan::mcmc::windowed_adaptation::_adapt_term_buffer
+
+protected
+
+ +

Definition at line 114 of file windowed_adaptation.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + +
unsigned int stan::mcmc::windowed_adaptation::_adapt_window_counter
+
+protected
+
+ +

Definition at line 117 of file windowed_adaptation.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + +
unsigned int stan::mcmc::windowed_adaptation::_adapt_window_size
+
+protected
+
+ +

Definition at line 119 of file windowed_adaptation.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + +
std::string stan::mcmc::windowed_adaptation::_estimator_name
+
+protected
+
+ +

Definition at line 110 of file windowed_adaptation.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + +
unsigned int stan::mcmc::windowed_adaptation::_num_warmup
+
+protected
+
+ +

Definition at line 112 of file windowed_adaptation.hpp.

+ +
+
+
The documentation for this class was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1mcmc_1_1windowed__adaptation.png b/doc/api/html/classstan_1_1mcmc_1_1windowed__adaptation.png new file mode 100644 index 0000000000000000000000000000000000000000..1afa77b3654824a3aeb47dfe15bfeefdea19c754 GIT binary patch literal 1445 zcmeAS@N?(olHy`uVBq!ia0y~yV4MYHcW^KR$(I}NmI5h>0G|-o|Ns93nJ?aaE$u%v z0muU50|ySUcHWT(ayd$Z{DK*Pia_A%sSqOu238YK7srqa#OC|>P#U7WwC!0>1BD8wqk|`0rDoc-Ksc5R& zFIzTw$^K6l&aOVU_0gaA^A@ggoAmB+YnIAOvHgpe?Y3F-`Q;w_zp1y@y!4zW?Ogfp z>b2HGHYcxK;lF$)Wcj{1)7DPf@+AEVPqpp4iv5ncvHKkt8cq}6z9QIG?7j1g-LpLB zzPea8WyuNsl`D7exN~_!y!6uzA0HMAUR`sX&&f=F;%dov+l6jT@t7BE%wxc3A(rKo zeT;8uK%(iSS&x5Bvstq2-p*658;`%*H1oomv~urtb-YRIx7TE^Njqg<8)lh*tgXfH z>5+DuDeZSmc`k@JIZ4l6Hv9Meq*u4HOecN0f8$<-=dI&FzeMWI|Ni4w1n&W^{iY0> zp3B@O{cF1F5#$B*Y)}#`Ok{$5HJ8dTFfe}*P-kGCz`L69#EF+F<_w%0r5bwXoV~&8 zV7G=%K~s!*g3xM4kIt(MOO9kQ0JSq{0u@Y&;C1i-8U8WCD_c-!ikkJok-tg!|)~?f^E#{xQ`Zx8JvF)1T zWR3I8roGOGf8M$NmHE2g0oql=K*B4oBYgbEKyn9;lrCLBLxl-iP zip=+GuYSCLL+WZ<^dqAeE8K5?{E#(mUe=C8Z?jXcZ|#~GeOqdExbvFng>QdGu9JUY zv4u1DlxTkVX2at}j{>+v?U$#$@7x!D_QUPKVCyaM%Tt|pt4-~z`qMY-Zc4G~!~DE= zi;{nJ2mH8Z6=Z#}KP;&I6~XVpu+yyurI zclnS_r5zjU_H0`x zuWxd!Xh-pDq3??&%Zu$wSGnH~4644f_}SCOz3NkHO}}2vzP6Dsf3eKH+pY>{gSX$> z@Ux4L!K%f0e#+_sN-7K&)aEqcbD5m)+$W-+oIe)ree#`iPs5X|X8Nq_?T@y*O}cmXA~1{&KM7IxtUn4W(?CJGQOeV+ m6O_fzWdVbq!30eHVSd(9<8dlc?=rAVW$<+Mb6Mw<&;$UJGNo() literal 0 HcmV?d00001 diff --git a/doc/api/html/classstan_1_1memory_1_1chunk__alloc-members.html b/doc/api/html/classstan_1_1memory_1_1chunk__alloc-members.html new file mode 100644 index 00000000000..2c0357ecc5e --- /dev/null +++ b/doc/api/html/classstan_1_1memory_1_1chunk__alloc-members.html @@ -0,0 +1,117 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::memory::chunk_alloc< T, Tnchunks_per_block > Member List
+
+ +
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1memory_1_1chunk__alloc.html b/doc/api/html/classstan_1_1memory_1_1chunk__alloc.html new file mode 100644 index 00000000000..d27e2134cf7 --- /dev/null +++ b/doc/api/html/classstan_1_1memory_1_1chunk__alloc.html @@ -0,0 +1,299 @@ + + + + + +Stan: stan::memory::chunk_alloc< T, Tnchunks_per_block > Class Template Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::memory::chunk_alloc< T, Tnchunks_per_block > Class Template Reference
+
+
+ +

#include <chunk_alloc.hpp>

+ + + + + + + + + + + + + + + + + +

+Public Member Functions

 chunk_alloc ()
 Construct a resizable chunk allocator initially holding the specified number of bytes.
 
 ~chunk_alloc ()
 Destroy this memory allocator.
 
void * alloc ()
 Return a newly allocated chunk of memory of the appropriate size managed by the stack allocator.
 
void recover_all ()
 Recover all the memory used by the stack allocator.
 
void free_all ()
 Free all memory used by the stack allocator other than the initial block allocation back to the system.
 
+

Detailed Description

+

template<typename T, size_t Tnchunks_per_block = DEFAULT_INITIAL_NCHUNKS>
+class stan::memory::chunk_alloc< T, Tnchunks_per_block >

+ + +

Definition at line 19 of file chunk_alloc.hpp.

+

Constructor & Destructor Documentation

+ +
+
+
+template<typename T , size_t Tnchunks_per_block = DEFAULT_INITIAL_NCHUNKS>
+ + + + + +
+ + + + + + + +
stan::memory::chunk_alloc< T, Tnchunks_per_block >::chunk_alloc ()
+
+inline
+
+ +

Construct a resizable chunk allocator initially holding the specified number of bytes.

+
Exceptions
+ + +
std::runtime_errorif the underlying malloc is not 8-byte aligned.
+
+
+ +

Definition at line 34 of file chunk_alloc.hpp.

+ +
+
+ +
+
+
+template<typename T , size_t Tnchunks_per_block = DEFAULT_INITIAL_NCHUNKS>
+ + + + + +
+ + + + + + + +
stan::memory::chunk_alloc< T, Tnchunks_per_block >::~chunk_alloc ()
+
+inline
+
+ +

Destroy this memory allocator.

+

This is implemented as a no-op as there is no destruction required.

+ +

Definition at line 48 of file chunk_alloc.hpp.

+ +
+
+

Member Function Documentation

+ +
+
+
+template<typename T , size_t Tnchunks_per_block = DEFAULT_INITIAL_NCHUNKS>
+ + + + + +
+ + + + + + + +
void* stan::memory::chunk_alloc< T, Tnchunks_per_block >::alloc ()
+
+inline
+
+ +

Return a newly allocated chunk of memory of the appropriate size managed by the stack allocator.

+
Returns
A pointer to the allocated memory.
+ +

Definition at line 61 of file chunk_alloc.hpp.

+ +
+
+ +
+
+
+template<typename T , size_t Tnchunks_per_block = DEFAULT_INITIAL_NCHUNKS>
+ + + + + +
+ + + + + + + +
void stan::memory::chunk_alloc< T, Tnchunks_per_block >::free_all ()
+
+inline
+
+ +

Free all memory used by the stack allocator other than the initial block allocation back to the system.

+

Note: the destructor will free all memory.

+ +

Definition at line 95 of file chunk_alloc.hpp.

+ +
+
+ +
+
+
+template<typename T , size_t Tnchunks_per_block = DEFAULT_INITIAL_NCHUNKS>
+ + + + + +
+ + + + + + + +
void stan::memory::chunk_alloc< T, Tnchunks_per_block >::recover_all ()
+
+inline
+
+ +

Recover all the memory used by the stack allocator.

+

The stack of memory blocks allocated so far will be available for further allocations. To free memory back to the system, use the function free_all().

+ +

Definition at line 85 of file chunk_alloc.hpp.

+ +
+
+
The documentation for this class was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1memory_1_1stack__alloc-members.html b/doc/api/html/classstan_1_1memory_1_1stack__alloc-members.html new file mode 100644 index 00000000000..d4a8d77b976 --- /dev/null +++ b/doc/api/html/classstan_1_1memory_1_1stack__alloc-members.html @@ -0,0 +1,118 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::memory::stack_alloc Member List
+
+
+ +

This is the complete list of members for stan::memory::stack_alloc, including all inherited members.

+ + + + + + + +
alloc(size_t len)stan::memory::stack_allocinline
bytes_allocated()stan::memory::stack_allocinline
free_all()stan::memory::stack_allocinline
recover_all()stan::memory::stack_allocinline
stack_alloc(size_t initial_nbytes=DEFAULT_INITIAL_NBYTES)stan::memory::stack_allocinline
~stack_alloc()stan::memory::stack_allocinline
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1memory_1_1stack__alloc.html b/doc/api/html/classstan_1_1memory_1_1stack__alloc.html new file mode 100644 index 00000000000..a1c4cd0bf88 --- /dev/null +++ b/doc/api/html/classstan_1_1memory_1_1stack__alloc.html @@ -0,0 +1,341 @@ + + + + + +Stan: stan::memory::stack_alloc Class Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::memory::stack_alloc Class Reference
+
+
+ +

An instance of this class provides a memory pool through which blocks of raw memory may be allocated and then collected simultaneously. + More...

+ +

#include <stack_alloc.hpp>

+ + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 stack_alloc (size_t initial_nbytes=DEFAULT_INITIAL_NBYTES)
 Construct a resizable stack allocator initially holding the specified number of bytes.
 
 ~stack_alloc ()
 Destroy this memory allocator.
 
void * alloc (size_t len)
 Return a newly allocated block of memory of the appropriate size managed by the stack allocator.
 
void recover_all ()
 Recover all the memory used by the stack allocator.
 
void free_all ()
 Free all memory used by the stack allocator other than the initial block allocation back to the system.
 
size_t bytes_allocated ()
 Return number of bytes allocated to this instance by the heap.
 
+

Detailed Description

+

An instance of this class provides a memory pool through which blocks of raw memory may be allocated and then collected simultaneously.

+

This class is useful in settings where large numbers of small objects are allocated and then collected all at once. This may include objects whose destructors have no effect.

+

Memory is allocated on a stack of blocks. Each block allocated is twice as large as the previous one. The memory may be recovered, with the blocks being reused, or all blocks may be freed, resetting the stack of blocks to its original state.

+

Alignment up to 8 byte boundaries guaranteed for the first malloc, and after that it's up to the caller. On 64-bit architectures, all struct values should be padded to 8-byte boundaries if they contain an 8-byte member or a virtual function.

+ +

Definition at line 79 of file stack_alloc.hpp.

+

Constructor & Destructor Documentation

+ +
+
+ + + + + +
+ + + + + + + + +
stan::memory::stack_alloc::stack_alloc (size_t initial_nbytes = DEFAULT_INITIAL_NBYTES)
+
+inline
+
+ +

Construct a resizable stack allocator initially holding the specified number of bytes.

+
Parameters
+ + +
initial_nbytesInitial number of bytes for the allocator. Defaults to (1 << 16) = 64KB initial bytes.
+
+
+
Exceptions
+ + +
std::runtime_errorif the underlying malloc is not 8-byte aligned.
+
+
+ +

Definition at line 130 of file stack_alloc.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
stan::memory::stack_alloc::~stack_alloc ()
+
+inline
+
+ +

Destroy this memory allocator.

+

This is implemented as a no-op as there is no destruction required.

+ +

Definition at line 146 of file stack_alloc.hpp.

+ +
+
+

Member Function Documentation

+ +
+
+ + + + + +
+ + + + + + + + +
void* stan::memory::stack_alloc::alloc (size_t len)
+
+inline
+
+ +

Return a newly allocated block of memory of the appropriate size managed by the stack allocator.

+

The allocated pointer will be 8-byte aligned.

+

This function may call C++'s malloc() function, with any exceptions percolated throught this function.

+
Parameters
+ + +
lenNumber of bytes to allocate.
+
+
+
Returns
A pointer to the allocated memory.
+ +

Definition at line 165 of file stack_alloc.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
size_t stan::memory::stack_alloc::bytes_allocated ()
+
+inline
+
+ +

Return number of bytes allocated to this instance by the heap.

+

This is not the same as the number of bytes allocated through calls to memalloc_. The latter number is not calculatable because space is wasted at the end of blocks if the next alloc request doesn't fit. (Perhaps we could trim down to what is actually used?)

+
Returns
number of bytes allocated to this instance
+ +

Definition at line 212 of file stack_alloc.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
void stan::memory::stack_alloc::free_all ()
+
+inline
+
+ +

Free all memory used by the stack allocator other than the initial block allocation back to the system.

+

Note: the destructor will free all memory.

+ +

Definition at line 192 of file stack_alloc.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
void stan::memory::stack_alloc::recover_all ()
+
+inline
+
+ +

Recover all the memory used by the stack allocator.

+

The stack of memory blocks allocated so far will be available for further allocations. To free memory back to the system, use the function free_all().

+ +

Definition at line 181 of file stack_alloc.hpp.

+ +
+
+
The documentation for this class was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1model_1_1prob__grad-members.html b/doc/api/html/classstan_1_1model_1_1prob__grad-members.html new file mode 100644 index 00000000000..61801d7d4e4 --- /dev/null +++ b/doc/api/html/classstan_1_1model_1_1prob__grad-members.html @@ -0,0 +1,120 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::model::prob_grad Member List
+
+
+ +

This is the complete list of members for stan::model::prob_grad, including all inherited members.

+ + + + + + + + + +
num_params_i() const stan::model::prob_gradinline
num_params_r() const stan::model::prob_gradinline
num_params_r__stan::model::prob_gradprotected
param_range_i(size_t idx) const stan::model::prob_gradinline
param_ranges_i__stan::model::prob_gradprotected
prob_grad(size_t num_params_r)stan::model::prob_gradinline
prob_grad(size_t num_params_r, std::vector< std::pair< int, int > > &param_ranges_i)stan::model::prob_gradinline
~prob_grad()stan::model::prob_gradinlinevirtual
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1model_1_1prob__grad.html b/doc/api/html/classstan_1_1model_1_1prob__grad.html new file mode 100644 index 00000000000..37c8907f331 --- /dev/null +++ b/doc/api/html/classstan_1_1model_1_1prob__grad.html @@ -0,0 +1,360 @@ + + + + + +Stan: stan::model::prob_grad Class Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::model::prob_grad Class Reference
+
+
+ +

The prob_grad class represents the basic parameter holders for a model. + More...

+ +

#include <prob_grad.hpp>

+ + + + + + + + + + + + + + +

+Public Member Functions

 prob_grad (size_t num_params_r)
 
 prob_grad (size_t num_params_r, std::vector< std::pair< int, int > > &param_ranges_i)
 
virtual ~prob_grad ()
 
size_t num_params_r () const
 
size_t num_params_i () const
 
std::pair< int, int > param_range_i (size_t idx) const
 
+ + + + + +

+Protected Attributes

size_t num_params_r__
 
std::vector< std::pair< int,
+int > > 
param_ranges_i__
 
+

Detailed Description

+

The prob_grad class represents the basic parameter holders for a model.

+

The command bin/stanc builds Models extending this base helper class.

+ +

Definition at line 18 of file prob_grad.hpp.

+

Constructor & Destructor Documentation

+ +
+
+ + + + + +
+ + + + + + + + +
stan::model::prob_grad::prob_grad (size_t num_params_r)
+
+inline
+
+ +

Definition at line 27 of file prob_grad.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
stan::model::prob_grad::prob_grad (size_t num_params_r,
std::vector< std::pair< int, int > > & param_ranges_i 
)
+
+inline
+
+ +

Definition at line 32 of file prob_grad.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
virtual stan::model::prob_grad::~prob_grad ()
+
+inlinevirtual
+
+ +

Definition at line 38 of file prob_grad.hpp.

+ +
+
+

Member Function Documentation

+ +
+
+ + + + + +
+ + + + + + + +
size_t stan::model::prob_grad::num_params_i () const
+
+inline
+
+ +

Definition at line 44 of file prob_grad.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
size_t stan::model::prob_grad::num_params_r () const
+
+inline
+
+ +

Definition at line 40 of file prob_grad.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
std::pair<int,int> stan::model::prob_grad::param_range_i (size_t idx) const
+
+inline
+
+ +

Definition at line 48 of file prob_grad.hpp.

+ +
+
+

Member Data Documentation

+ +
+
+ + + + + +
+ + + + +
size_t stan::model::prob_grad::num_params_r__
+
+protected
+
+ +

Definition at line 22 of file prob_grad.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + +
std::vector<std::pair<int,int> > stan::model::prob_grad::param_ranges_i__
+
+protected
+
+ +

Definition at line 23 of file prob_grad.hpp.

+ +
+
+
The documentation for this class was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1optimization_1_1_b_f_g_s_line_search-members.html b/doc/api/html/classstan_1_1optimization_1_1_b_f_g_s_line_search-members.html new file mode 100644 index 00000000000..c21afa451bc --- /dev/null +++ b/doc/api/html/classstan_1_1optimization_1_1_b_f_g_s_line_search-members.html @@ -0,0 +1,156 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::optimization::BFGSLineSearch< M > Member List
+
+
+ +

This is the complete list of members for stan::optimization::BFGSLineSearch< M >, including all inherited members.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
_alphastan::optimization::BFGSMinimizer< ModelAdaptor< M > >protected
_alpha0stan::optimization::BFGSMinimizer< ModelAdaptor< M > >protected
_alphak_1stan::optimization::BFGSMinimizer< ModelAdaptor< M > >protected
_fkstan::optimization::BFGSMinimizer< ModelAdaptor< M > >protected
_fk_1stan::optimization::BFGSMinimizer< ModelAdaptor< M > >protected
_funcstan::optimization::BFGSMinimizer< ModelAdaptor< M > >protected
_gkstan::optimization::BFGSMinimizer< ModelAdaptor< M > >protected
_gk_1stan::optimization::BFGSMinimizer< ModelAdaptor< M > >protected
_itNumstan::optimization::BFGSMinimizer< ModelAdaptor< M > >protected
_ldltstan::optimization::BFGSMinimizer< ModelAdaptor< M > >protected
_notestan::optimization::BFGSMinimizer< ModelAdaptor< M > >protected
_optsstan::optimization::BFGSMinimizer< ModelAdaptor< M > >
_skstan::optimization::BFGSMinimizer< ModelAdaptor< M > >protected
_sk_1stan::optimization::BFGSMinimizer< ModelAdaptor< M > >protected
_xkstan::optimization::BFGSMinimizer< ModelAdaptor< M > >protected
_xk_1stan::optimization::BFGSMinimizer< ModelAdaptor< M > >protected
alpha() conststan::optimization::BFGSMinimizer< ModelAdaptor< M > >inline
alpha0() conststan::optimization::BFGSMinimizer< ModelAdaptor< M > >inline
BFGSLineSearch(M &model, const std::vector< double > &params_r, const std::vector< int > &params_i, std::ostream *msgs=0)stan::optimization::BFGSLineSearch< M >inline
BFGSMinimizer(ModelAdaptor< M > &f)stan::optimization::BFGSMinimizer< ModelAdaptor< M > >inline
curr_f() conststan::optimization::BFGSMinimizer< ModelAdaptor< M > >inline
curr_g() conststan::optimization::BFGSMinimizer< ModelAdaptor< M > >inline
curr_s() conststan::optimization::BFGSMinimizer< ModelAdaptor< M > >inline
curr_x() conststan::optimization::BFGSMinimizer< ModelAdaptor< M > >inline
get_code_string(int retCode)stan::optimization::BFGSMinimizer< ModelAdaptor< M > >inline
grad(std::vector< double > &g)stan::optimization::BFGSLineSearch< M >inline
grad_evals()stan::optimization::BFGSLineSearch< M >inline
grad_norm()stan::optimization::BFGSLineSearch< M >inline
HessianT typedefstan::optimization::BFGSMinimizer< ModelAdaptor< M > >
idx_t typedefstan::optimization::BFGSLineSearch< M >
initialize(const VectorT &x0)stan::optimization::BFGSMinimizer< ModelAdaptor< M > >inline
iter_num() conststan::optimization::BFGSMinimizer< ModelAdaptor< M > >inline
logp()stan::optimization::BFGSLineSearch< M >inline
minimize(VectorT &x0)stan::optimization::BFGSMinimizer< ModelAdaptor< M > >inline
note() conststan::optimization::BFGSMinimizer< ModelAdaptor< M > >inline
params_r(std::vector< double > &x)stan::optimization::BFGSLineSearch< M >inline
prev_f() conststan::optimization::BFGSMinimizer< ModelAdaptor< M > >inline
prev_g() conststan::optimization::BFGSMinimizer< ModelAdaptor< M > >inline
prev_s() conststan::optimization::BFGSMinimizer< ModelAdaptor< M > >inline
prev_step_size() conststan::optimization::BFGSMinimizer< ModelAdaptor< M > >inline
prev_x() conststan::optimization::BFGSMinimizer< ModelAdaptor< M > >inline
step()stan::optimization::BFGSMinimizer< ModelAdaptor< M > >inline
vector_t typedefstan::optimization::BFGSLineSearch< M >
VectorT typedefstan::optimization::BFGSMinimizer< ModelAdaptor< M > >static
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1optimization_1_1_b_f_g_s_line_search.html b/doc/api/html/classstan_1_1optimization_1_1_b_f_g_s_line_search.html new file mode 100644 index 00000000000..8d26ae5cd9b --- /dev/null +++ b/doc/api/html/classstan_1_1optimization_1_1_b_f_g_s_line_search.html @@ -0,0 +1,462 @@ + + + + + +Stan: stan::optimization::BFGSLineSearch< M > Class Template Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::optimization::BFGSLineSearch< M > Class Template Reference
+
+
+ +

#include <bfgs.hpp>

+
+Inheritance diagram for stan::optimization::BFGSLineSearch< M >:
+
+
+ + +stan::optimization::BFGSMinimizer< ModelAdaptor< M > > + +
+ + + + + + + + + +

+Public Types

typedef BFGSMinimizer
+< ModelAdaptor< M > >::VectorT 
vector_t
 
typedef vector_t::size_type idx_t
 
- Public Types inherited from stan::optimization::BFGSMinimizer< ModelAdaptor< M > >
typedef Eigen::Matrix< double,
+Eigen::Dynamic, Eigen::Dynamic > 
HessianT
 
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 BFGSLineSearch (M &model, const std::vector< double > &params_r, const std::vector< int > &params_i, std::ostream *msgs=0)
 
size_t grad_evals ()
 
double logp ()
 
double grad_norm ()
 
void grad (std::vector< double > &g)
 
void params_r (std::vector< double > &x)
 
- Public Member Functions inherited from stan::optimization::BFGSMinimizer< ModelAdaptor< M > >
const double & curr_f () const
 
const VectorTcurr_x () const
 
const VectorTcurr_g () const
 
const VectorTcurr_s () const
 
const double & prev_f () const
 
const VectorTprev_x () const
 
const VectorTprev_g () const
 
const VectorTprev_s () const
 
double prev_step_size () const
 
const double & alpha0 () const
 
const double & alpha () const
 
const size_t iter_num () const
 
const std::string & note () const
 
std::string get_code_string (int retCode)
 
 BFGSMinimizer (ModelAdaptor< M > &f)
 
void initialize (const VectorT &x0)
 
int step ()
 
int minimize (VectorT &x0)
 
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Additional Inherited Members

- Static Public Member Functions inherited from stan::optimization::BFGSMinimizer< ModelAdaptor< M > >
typedef Eigen::Matrix< double,
+Eigen::Dynamic, 1 > 
VectorT
 
- Public Attributes inherited from stan::optimization::BFGSMinimizer< ModelAdaptor< M > >
struct
+stan::optimization::BFGSMinimizer::BFGSOptions 
_opts
 
- Protected Attributes inherited from stan::optimization::BFGSMinimizer< ModelAdaptor< M > >
ModelAdaptor< M > & _func
 
VectorT _gk
 
VectorT _gk_1
 
VectorT _xk_1
 
VectorT _xk
 
VectorT _sk
 
VectorT _sk_1
 
double _fk
 
double _fk_1
 
double _alphak_1
 
double _alpha
 
double _alpha0
 
Eigen::LDLT< HessianT_ldlt
 
size_t _itNum
 
std::string _note
 
+

Detailed Description

+

template<typename M>
+class stan::optimization::BFGSLineSearch< M >

+ + +

Definition at line 556 of file bfgs.hpp.

+

Member Typedef Documentation

+ +
+
+
+template<typename M>
+ + + + +
typedef vector_t::size_type stan::optimization::BFGSLineSearch< M >::idx_t
+
+ +

Definition at line 561 of file bfgs.hpp.

+ +
+
+ +
+
+
+template<typename M>
+ + + + +
typedef BFGSMinimizer<ModelAdaptor<M> >::VectorT stan::optimization::BFGSLineSearch< M >::vector_t
+
+ +

Definition at line 560 of file bfgs.hpp.

+ +
+
+

Constructor & Destructor Documentation

+ +
+
+
+template<typename M>
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
stan::optimization::BFGSLineSearch< M >::BFGSLineSearch (M & model,
const std::vector< double > & params_r,
const std::vector< int > & params_i,
std::ostream * msgs = 0 
)
+
+inline
+
+ +

Definition at line 563 of file bfgs.hpp.

+ +
+
+

Member Function Documentation

+ +
+
+
+template<typename M>
+ + + + + +
+ + + + + + + + +
void stan::optimization::BFGSLineSearch< M >::grad (std::vector< double > & g)
+
+inline
+
+ +

Definition at line 581 of file bfgs.hpp.

+ +
+
+ +
+
+
+template<typename M>
+ + + + + +
+ + + + + + + +
size_t stan::optimization::BFGSLineSearch< M >::grad_evals ()
+
+inline
+
+ +

Definition at line 578 of file bfgs.hpp.

+ +
+
+ +
+
+
+template<typename M>
+ + + + + +
+ + + + + + + +
double stan::optimization::BFGSLineSearch< M >::grad_norm ()
+
+inline
+
+ +

Definition at line 580 of file bfgs.hpp.

+ +
+
+ +
+
+
+template<typename M>
+ + + + + +
+ + + + + + + +
double stan::optimization::BFGSLineSearch< M >::logp ()
+
+inline
+
+ +

Definition at line 579 of file bfgs.hpp.

+ +
+
+ +
+
+
+template<typename M>
+ + + + + +
+ + + + + + + + +
void stan::optimization::BFGSLineSearch< M >::params_r (std::vector< double > & x)
+
+inline
+
+ +

Definition at line 587 of file bfgs.hpp.

+ +
+
+
The documentation for this class was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1optimization_1_1_b_f_g_s_line_search.png b/doc/api/html/classstan_1_1optimization_1_1_b_f_g_s_line_search.png new file mode 100644 index 0000000000000000000000000000000000000000..0038e5d3393cd16316be9c94e06adfc8061efae7 GIT binary patch literal 1152 zcmeAS@N?(olHy`uVBq!ia0y~yU<6`@01jp#S+j*V2}nr<_=LFr|NkGzeDUUMY5$=K zKo%GuIBFXb*fj8#>$XM zPA{j3dG302@x->*ze}!ed-gMY|8=vwWf|9$lSb zUAwkQY+1OK&KaLyrcS-}2Gceh>+HVEU@m_-(!-(aA>E&DEH-uM-09E?>Ki69~)ldJQ?$TwC)&+@Qvc1mkb+^#QZvXP-Tf(dA zy!2yz^cBp#R zPv3BK=_OzU-9PkyamXYgPb+0uBzZ2KB;uttbxDAn7cf320i#rb;UAkk1E+(?N)d%g z{rx3e0v=kd9ZwQX<}w|b=*8INxsU-E&kX@VnhqL3B~wDU1iZ9ZIaH@IwM_D2bn;wE zsq`P&rAwzwniAwCBGSO3(1vFI&qG}K8 zpR=38FP8m^`l{oTe{OZ@@-5$rmv8@fd*8N=?JxiFEnPn~$~)jpx=wWXMV6Ui%M+J* z-Tw4_=MIf+`?SA4j%dAo?%m?OZ@<+py=(Z=@8Xe};->d!zUz6LpLsdShv)G7)@pY1 zr4Qq))%RTbzO?S?qwB79QJJyZtfyR_E9t-Tey`uklittbcdM4Qots%ZXP?^Fzh6q; zJ&Jny<G}7rK5k{T0RPmouitcK=ZAlv_UmE& zAKklpb>276_4}{Z)t(u0)u_%lN-cahC~X{OllT?0O?81GtE{J!KCQ_~Q< zPuJjpz8W;be!4AX_^*T(lb-^jyfi&Em$H16KXAy^=w;?dP|3pJ>FVdQ&MBb@08#lI AkN^Mx literal 0 HcmV?d00001 diff --git a/doc/api/html/classstan_1_1optimization_1_1_b_f_g_s_minimizer-members.html b/doc/api/html/classstan_1_1optimization_1_1_b_f_g_s_minimizer-members.html new file mode 100644 index 00000000000..04bfa5e9cfa --- /dev/null +++ b/doc/api/html/classstan_1_1optimization_1_1_b_f_g_s_minimizer-members.html @@ -0,0 +1,148 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::optimization::BFGSMinimizer< FunctorType, Scalar, DimAtCompile, LineSearchMethod > Member List
+
+
+ +

This is the complete list of members for stan::optimization::BFGSMinimizer< FunctorType, Scalar, DimAtCompile, LineSearchMethod >, including all inherited members.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
_alphastan::optimization::BFGSMinimizer< FunctorType, Scalar, DimAtCompile, LineSearchMethod >protected
_alpha0stan::optimization::BFGSMinimizer< FunctorType, Scalar, DimAtCompile, LineSearchMethod >protected
_alphak_1stan::optimization::BFGSMinimizer< FunctorType, Scalar, DimAtCompile, LineSearchMethod >protected
_fkstan::optimization::BFGSMinimizer< FunctorType, Scalar, DimAtCompile, LineSearchMethod >protected
_fk_1stan::optimization::BFGSMinimizer< FunctorType, Scalar, DimAtCompile, LineSearchMethod >protected
_funcstan::optimization::BFGSMinimizer< FunctorType, Scalar, DimAtCompile, LineSearchMethod >protected
_gkstan::optimization::BFGSMinimizer< FunctorType, Scalar, DimAtCompile, LineSearchMethod >protected
_gk_1stan::optimization::BFGSMinimizer< FunctorType, Scalar, DimAtCompile, LineSearchMethod >protected
_itNumstan::optimization::BFGSMinimizer< FunctorType, Scalar, DimAtCompile, LineSearchMethod >protected
_ldltstan::optimization::BFGSMinimizer< FunctorType, Scalar, DimAtCompile, LineSearchMethod >protected
_notestan::optimization::BFGSMinimizer< FunctorType, Scalar, DimAtCompile, LineSearchMethod >protected
_optsstan::optimization::BFGSMinimizer< FunctorType, Scalar, DimAtCompile, LineSearchMethod >
_skstan::optimization::BFGSMinimizer< FunctorType, Scalar, DimAtCompile, LineSearchMethod >protected
_sk_1stan::optimization::BFGSMinimizer< FunctorType, Scalar, DimAtCompile, LineSearchMethod >protected
_xkstan::optimization::BFGSMinimizer< FunctorType, Scalar, DimAtCompile, LineSearchMethod >protected
_xk_1stan::optimization::BFGSMinimizer< FunctorType, Scalar, DimAtCompile, LineSearchMethod >protected
alpha() const stan::optimization::BFGSMinimizer< FunctorType, Scalar, DimAtCompile, LineSearchMethod >inline
alpha0() const stan::optimization::BFGSMinimizer< FunctorType, Scalar, DimAtCompile, LineSearchMethod >inline
BFGSMinimizer(FunctorType &f)stan::optimization::BFGSMinimizer< FunctorType, Scalar, DimAtCompile, LineSearchMethod >inline
curr_f() const stan::optimization::BFGSMinimizer< FunctorType, Scalar, DimAtCompile, LineSearchMethod >inline
curr_g() const stan::optimization::BFGSMinimizer< FunctorType, Scalar, DimAtCompile, LineSearchMethod >inline
curr_s() const stan::optimization::BFGSMinimizer< FunctorType, Scalar, DimAtCompile, LineSearchMethod >inline
curr_x() const stan::optimization::BFGSMinimizer< FunctorType, Scalar, DimAtCompile, LineSearchMethod >inline
get_code_string(int retCode)stan::optimization::BFGSMinimizer< FunctorType, Scalar, DimAtCompile, LineSearchMethod >inline
HessianT typedefstan::optimization::BFGSMinimizer< FunctorType, Scalar, DimAtCompile, LineSearchMethod >
initialize(const VectorT &x0)stan::optimization::BFGSMinimizer< FunctorType, Scalar, DimAtCompile, LineSearchMethod >inline
iter_num() const stan::optimization::BFGSMinimizer< FunctorType, Scalar, DimAtCompile, LineSearchMethod >inline
minimize(VectorT &x0)stan::optimization::BFGSMinimizer< FunctorType, Scalar, DimAtCompile, LineSearchMethod >inline
note() const stan::optimization::BFGSMinimizer< FunctorType, Scalar, DimAtCompile, LineSearchMethod >inline
prev_f() const stan::optimization::BFGSMinimizer< FunctorType, Scalar, DimAtCompile, LineSearchMethod >inline
prev_g() const stan::optimization::BFGSMinimizer< FunctorType, Scalar, DimAtCompile, LineSearchMethod >inline
prev_s() const stan::optimization::BFGSMinimizer< FunctorType, Scalar, DimAtCompile, LineSearchMethod >inline
prev_step_size() const stan::optimization::BFGSMinimizer< FunctorType, Scalar, DimAtCompile, LineSearchMethod >inline
prev_x() const stan::optimization::BFGSMinimizer< FunctorType, Scalar, DimAtCompile, LineSearchMethod >inline
step()stan::optimization::BFGSMinimizer< FunctorType, Scalar, DimAtCompile, LineSearchMethod >inline
VectorT typedefstan::optimization::BFGSMinimizer< FunctorType, Scalar, DimAtCompile, LineSearchMethod >static
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1optimization_1_1_b_f_g_s_minimizer.html b/doc/api/html/classstan_1_1optimization_1_1_b_f_g_s_minimizer.html new file mode 100644 index 00000000000..c0bf49f54b0 --- /dev/null +++ b/doc/api/html/classstan_1_1optimization_1_1_b_f_g_s_minimizer.html @@ -0,0 +1,1132 @@ + + + + + +Stan: stan::optimization::BFGSMinimizer< FunctorType, Scalar, DimAtCompile, LineSearchMethod > Class Template Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::optimization::BFGSMinimizer< FunctorType, Scalar, DimAtCompile, LineSearchMethod > Class Template Reference
+
+
+ +

#include <bfgs.hpp>

+ + + + +

+Classes

struct  BFGSOptions
 
+ + + +

+Public Types

typedef Eigen::Matrix< Scalar,
+DimAtCompile, DimAtCompile > 
HessianT
 
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

const Scalar & curr_f () const
 
const VectorTcurr_x () const
 
const VectorTcurr_g () const
 
const VectorTcurr_s () const
 
const Scalar & prev_f () const
 
const VectorTprev_x () const
 
const VectorTprev_g () const
 
const VectorTprev_s () const
 
Scalar prev_step_size () const
 
const Scalar & alpha0 () const
 
const Scalar & alpha () const
 
const size_t iter_num () const
 
const std::string & note () const
 
std::string get_code_string (int retCode)
 
 BFGSMinimizer (FunctorType &f)
 
void initialize (const VectorT &x0)
 
int step ()
 
int minimize (VectorT &x0)
 
+ + + +

+Static Public Member Functions

typedef Eigen::Matrix< Scalar,
+DimAtCompile, 1 > 
VectorT
 
+ + + +

+Public Attributes

struct
+stan::optimization::BFGSMinimizer::BFGSOptions 
_opts
 
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Protected Attributes

FunctorType & _func
 
VectorT _gk
 
VectorT _gk_1
 
VectorT _xk_1
 
VectorT _xk
 
VectorT _sk
 
VectorT _sk_1
 
Scalar _fk
 
Scalar _fk_1
 
Scalar _alphak_1
 
Scalar _alpha
 
Scalar _alpha0
 
Eigen::LDLT< HessianT_ldlt
 
size_t _itNum
 
std::string _note
 
+

Detailed Description

+

template<typename FunctorType, typename Scalar = double, int DimAtCompile = Eigen::Dynamic, int LineSearchMethod = 1>
+class stan::optimization::BFGSMinimizer< FunctorType, Scalar, DimAtCompile, LineSearchMethod >

+ + +

Definition at line 234 of file bfgs.hpp.

+

Member Typedef Documentation

+ +
+
+
+template<typename FunctorType, typename Scalar = double, int DimAtCompile = Eigen::Dynamic, int LineSearchMethod = 1>
+ + + + +
typedef Eigen::Matrix<Scalar,DimAtCompile,DimAtCompile> stan::optimization::BFGSMinimizer< FunctorType, Scalar, DimAtCompile, LineSearchMethod >::HessianT
+
+ +

Definition at line 237 of file bfgs.hpp.

+ +
+
+ +
+
+
+template<typename FunctorType, typename Scalar = double, int DimAtCompile = Eigen::Dynamic, int LineSearchMethod = 1>
+ + + + + +
+ + + + +
typedef Eigen::Matrix<Scalar,DimAtCompile,1> stan::optimization::BFGSMinimizer< FunctorType, Scalar, DimAtCompile, LineSearchMethod >::VectorT
+
+static
+
+ +

Definition at line 236 of file bfgs.hpp.

+ +
+
+

Constructor & Destructor Documentation

+ +
+
+
+template<typename FunctorType, typename Scalar = double, int DimAtCompile = Eigen::Dynamic, int LineSearchMethod = 1>
+ + + + + +
+ + + + + + + + +
stan::optimization::BFGSMinimizer< FunctorType, Scalar, DimAtCompile, LineSearchMethod >::BFGSMinimizer (FunctorType & f)
+
+inline
+
+ +

Definition at line 309 of file bfgs.hpp.

+ +
+
+

Member Function Documentation

+ +
+
+
+template<typename FunctorType, typename Scalar = double, int DimAtCompile = Eigen::Dynamic, int LineSearchMethod = 1>
+ + + + + +
+ + + + + + + +
const Scalar& stan::optimization::BFGSMinimizer< FunctorType, Scalar, DimAtCompile, LineSearchMethod >::alpha () const
+
+inline
+
+ +

Definition at line 261 of file bfgs.hpp.

+ +
+
+ +
+
+
+template<typename FunctorType, typename Scalar = double, int DimAtCompile = Eigen::Dynamic, int LineSearchMethod = 1>
+ + + + + +
+ + + + + + + +
const Scalar& stan::optimization::BFGSMinimizer< FunctorType, Scalar, DimAtCompile, LineSearchMethod >::alpha0 () const
+
+inline
+
+ +

Definition at line 260 of file bfgs.hpp.

+ +
+
+ +
+
+
+template<typename FunctorType, typename Scalar = double, int DimAtCompile = Eigen::Dynamic, int LineSearchMethod = 1>
+ + + + + +
+ + + + + + + +
const Scalar& stan::optimization::BFGSMinimizer< FunctorType, Scalar, DimAtCompile, LineSearchMethod >::curr_f () const
+
+inline
+
+ +

Definition at line 249 of file bfgs.hpp.

+ +
+
+ +
+
+
+template<typename FunctorType, typename Scalar = double, int DimAtCompile = Eigen::Dynamic, int LineSearchMethod = 1>
+ + + + + +
+ + + + + + + +
const VectorT& stan::optimization::BFGSMinimizer< FunctorType, Scalar, DimAtCompile, LineSearchMethod >::curr_g () const
+
+inline
+
+ +

Definition at line 251 of file bfgs.hpp.

+ +
+
+ +
+
+
+template<typename FunctorType, typename Scalar = double, int DimAtCompile = Eigen::Dynamic, int LineSearchMethod = 1>
+ + + + + +
+ + + + + + + +
const VectorT& stan::optimization::BFGSMinimizer< FunctorType, Scalar, DimAtCompile, LineSearchMethod >::curr_s () const
+
+inline
+
+ +

Definition at line 252 of file bfgs.hpp.

+ +
+
+ +
+
+
+template<typename FunctorType, typename Scalar = double, int DimAtCompile = Eigen::Dynamic, int LineSearchMethod = 1>
+ + + + + +
+ + + + + + + +
const VectorT& stan::optimization::BFGSMinimizer< FunctorType, Scalar, DimAtCompile, LineSearchMethod >::curr_x () const
+
+inline
+
+ +

Definition at line 250 of file bfgs.hpp.

+ +
+
+ +
+
+
+template<typename FunctorType, typename Scalar = double, int DimAtCompile = Eigen::Dynamic, int LineSearchMethod = 1>
+ + + + + +
+ + + + + + + + +
std::string stan::optimization::BFGSMinimizer< FunctorType, Scalar, DimAtCompile, LineSearchMethod >::get_code_string (int retCode)
+
+inline
+
+ +

Definition at line 266 of file bfgs.hpp.

+ +
+
+ +
+
+
+template<typename FunctorType, typename Scalar = double, int DimAtCompile = Eigen::Dynamic, int LineSearchMethod = 1>
+ + + + + +
+ + + + + + + + +
void stan::optimization::BFGSMinimizer< FunctorType, Scalar, DimAtCompile, LineSearchMethod >::initialize (const VectorTx0)
+
+inline
+
+ +

Definition at line 311 of file bfgs.hpp.

+ +
+
+ +
+
+
+template<typename FunctorType, typename Scalar = double, int DimAtCompile = Eigen::Dynamic, int LineSearchMethod = 1>
+ + + + + +
+ + + + + + + +
const size_t stan::optimization::BFGSMinimizer< FunctorType, Scalar, DimAtCompile, LineSearchMethod >::iter_num () const
+
+inline
+
+ +

Definition at line 262 of file bfgs.hpp.

+ +
+
+ +
+
+
+template<typename FunctorType, typename Scalar = double, int DimAtCompile = Eigen::Dynamic, int LineSearchMethod = 1>
+ + + + + +
+ + + + + + + + +
int stan::optimization::BFGSMinimizer< FunctorType, Scalar, DimAtCompile, LineSearchMethod >::minimize (VectorTx0)
+
+inline
+
+ +

Definition at line 447 of file bfgs.hpp.

+ +
+
+ +
+
+
+template<typename FunctorType, typename Scalar = double, int DimAtCompile = Eigen::Dynamic, int LineSearchMethod = 1>
+ + + + + +
+ + + + + + + +
const std::string& stan::optimization::BFGSMinimizer< FunctorType, Scalar, DimAtCompile, LineSearchMethod >::note () const
+
+inline
+
+ +

Definition at line 264 of file bfgs.hpp.

+ +
+
+ +
+
+
+template<typename FunctorType, typename Scalar = double, int DimAtCompile = Eigen::Dynamic, int LineSearchMethod = 1>
+ + + + + +
+ + + + + + + +
const Scalar& stan::optimization::BFGSMinimizer< FunctorType, Scalar, DimAtCompile, LineSearchMethod >::prev_f () const
+
+inline
+
+ +

Definition at line 254 of file bfgs.hpp.

+ +
+
+ +
+
+
+template<typename FunctorType, typename Scalar = double, int DimAtCompile = Eigen::Dynamic, int LineSearchMethod = 1>
+ + + + + +
+ + + + + + + +
const VectorT& stan::optimization::BFGSMinimizer< FunctorType, Scalar, DimAtCompile, LineSearchMethod >::prev_g () const
+
+inline
+
+ +

Definition at line 256 of file bfgs.hpp.

+ +
+
+ +
+
+
+template<typename FunctorType, typename Scalar = double, int DimAtCompile = Eigen::Dynamic, int LineSearchMethod = 1>
+ + + + + +
+ + + + + + + +
const VectorT& stan::optimization::BFGSMinimizer< FunctorType, Scalar, DimAtCompile, LineSearchMethod >::prev_s () const
+
+inline
+
+ +

Definition at line 257 of file bfgs.hpp.

+ +
+
+ +
+
+
+template<typename FunctorType, typename Scalar = double, int DimAtCompile = Eigen::Dynamic, int LineSearchMethod = 1>
+ + + + + +
+ + + + + + + +
Scalar stan::optimization::BFGSMinimizer< FunctorType, Scalar, DimAtCompile, LineSearchMethod >::prev_step_size () const
+
+inline
+
+ +

Definition at line 258 of file bfgs.hpp.

+ +
+
+ +
+
+
+template<typename FunctorType, typename Scalar = double, int DimAtCompile = Eigen::Dynamic, int LineSearchMethod = 1>
+ + + + + +
+ + + + + + + +
const VectorT& stan::optimization::BFGSMinimizer< FunctorType, Scalar, DimAtCompile, LineSearchMethod >::prev_x () const
+
+inline
+
+ +

Definition at line 255 of file bfgs.hpp.

+ +
+
+ +
+
+
+template<typename FunctorType, typename Scalar = double, int DimAtCompile = Eigen::Dynamic, int LineSearchMethod = 1>
+ + + + + +
+ + + + + + + +
int stan::optimization::BFGSMinimizer< FunctorType, Scalar, DimAtCompile, LineSearchMethod >::step ()
+
+inline
+
+ +

Definition at line 323 of file bfgs.hpp.

+ +
+
+

Member Data Documentation

+ +
+
+
+template<typename FunctorType, typename Scalar = double, int DimAtCompile = Eigen::Dynamic, int LineSearchMethod = 1>
+ + + + + +
+ + + + +
Scalar stan::optimization::BFGSMinimizer< FunctorType, Scalar, DimAtCompile, LineSearchMethod >::_alpha
+
+protected
+
+ +

Definition at line 243 of file bfgs.hpp.

+ +
+
+ +
+
+
+template<typename FunctorType, typename Scalar = double, int DimAtCompile = Eigen::Dynamic, int LineSearchMethod = 1>
+ + + + + +
+ + + + +
Scalar stan::optimization::BFGSMinimizer< FunctorType, Scalar, DimAtCompile, LineSearchMethod >::_alpha0
+
+protected
+
+ +

Definition at line 243 of file bfgs.hpp.

+ +
+
+ +
+
+
+template<typename FunctorType, typename Scalar = double, int DimAtCompile = Eigen::Dynamic, int LineSearchMethod = 1>
+ + + + + +
+ + + + +
Scalar stan::optimization::BFGSMinimizer< FunctorType, Scalar, DimAtCompile, LineSearchMethod >::_alphak_1
+
+protected
+
+ +

Definition at line 242 of file bfgs.hpp.

+ +
+
+ +
+
+
+template<typename FunctorType, typename Scalar = double, int DimAtCompile = Eigen::Dynamic, int LineSearchMethod = 1>
+ + + + + +
+ + + + +
Scalar stan::optimization::BFGSMinimizer< FunctorType, Scalar, DimAtCompile, LineSearchMethod >::_fk
+
+protected
+
+ +

Definition at line 242 of file bfgs.hpp.

+ +
+
+ +
+
+
+template<typename FunctorType, typename Scalar = double, int DimAtCompile = Eigen::Dynamic, int LineSearchMethod = 1>
+ + + + + +
+ + + + +
Scalar stan::optimization::BFGSMinimizer< FunctorType, Scalar, DimAtCompile, LineSearchMethod >::_fk_1
+
+protected
+
+ +

Definition at line 242 of file bfgs.hpp.

+ +
+
+ +
+
+
+template<typename FunctorType, typename Scalar = double, int DimAtCompile = Eigen::Dynamic, int LineSearchMethod = 1>
+ + + + + +
+ + + + +
FunctorType& stan::optimization::BFGSMinimizer< FunctorType, Scalar, DimAtCompile, LineSearchMethod >::_func
+
+protected
+
+ +

Definition at line 240 of file bfgs.hpp.

+ +
+
+ +
+
+
+template<typename FunctorType, typename Scalar = double, int DimAtCompile = Eigen::Dynamic, int LineSearchMethod = 1>
+ + + + + +
+ + + + +
VectorT stan::optimization::BFGSMinimizer< FunctorType, Scalar, DimAtCompile, LineSearchMethod >::_gk
+
+protected
+
+ +

Definition at line 241 of file bfgs.hpp.

+ +
+
+ +
+
+
+template<typename FunctorType, typename Scalar = double, int DimAtCompile = Eigen::Dynamic, int LineSearchMethod = 1>
+ + + + + +
+ + + + +
VectorT stan::optimization::BFGSMinimizer< FunctorType, Scalar, DimAtCompile, LineSearchMethod >::_gk_1
+
+protected
+
+ +

Definition at line 241 of file bfgs.hpp.

+ +
+
+ +
+
+
+template<typename FunctorType, typename Scalar = double, int DimAtCompile = Eigen::Dynamic, int LineSearchMethod = 1>
+ + + + + +
+ + + + +
size_t stan::optimization::BFGSMinimizer< FunctorType, Scalar, DimAtCompile, LineSearchMethod >::_itNum
+
+protected
+
+ +

Definition at line 245 of file bfgs.hpp.

+ +
+
+ +
+
+
+template<typename FunctorType, typename Scalar = double, int DimAtCompile = Eigen::Dynamic, int LineSearchMethod = 1>
+ + + + + +
+ + + + +
Eigen::LDLT< HessianT > stan::optimization::BFGSMinimizer< FunctorType, Scalar, DimAtCompile, LineSearchMethod >::_ldlt
+
+protected
+
+ +

Definition at line 244 of file bfgs.hpp.

+ +
+
+ +
+
+
+template<typename FunctorType, typename Scalar = double, int DimAtCompile = Eigen::Dynamic, int LineSearchMethod = 1>
+ + + + + +
+ + + + +
std::string stan::optimization::BFGSMinimizer< FunctorType, Scalar, DimAtCompile, LineSearchMethod >::_note
+
+protected
+
+ +

Definition at line 246 of file bfgs.hpp.

+ +
+
+ +
+
+
+template<typename FunctorType, typename Scalar = double, int DimAtCompile = Eigen::Dynamic, int LineSearchMethod = 1>
+ + + + +
struct stan::optimization::BFGSMinimizer::BFGSOptions stan::optimization::BFGSMinimizer< FunctorType, Scalar, DimAtCompile, LineSearchMethod >::_opts
+
+ +
+
+ +
+
+
+template<typename FunctorType, typename Scalar = double, int DimAtCompile = Eigen::Dynamic, int LineSearchMethod = 1>
+ + + + + +
+ + + + +
VectorT stan::optimization::BFGSMinimizer< FunctorType, Scalar, DimAtCompile, LineSearchMethod >::_sk
+
+protected
+
+ +

Definition at line 241 of file bfgs.hpp.

+ +
+
+ +
+
+
+template<typename FunctorType, typename Scalar = double, int DimAtCompile = Eigen::Dynamic, int LineSearchMethod = 1>
+ + + + + +
+ + + + +
VectorT stan::optimization::BFGSMinimizer< FunctorType, Scalar, DimAtCompile, LineSearchMethod >::_sk_1
+
+protected
+
+ +

Definition at line 241 of file bfgs.hpp.

+ +
+
+ +
+
+
+template<typename FunctorType, typename Scalar = double, int DimAtCompile = Eigen::Dynamic, int LineSearchMethod = 1>
+ + + + + +
+ + + + +
VectorT stan::optimization::BFGSMinimizer< FunctorType, Scalar, DimAtCompile, LineSearchMethod >::_xk
+
+protected
+
+ +

Definition at line 241 of file bfgs.hpp.

+ +
+
+ +
+
+
+template<typename FunctorType, typename Scalar = double, int DimAtCompile = Eigen::Dynamic, int LineSearchMethod = 1>
+ + + + + +
+ + + + +
VectorT stan::optimization::BFGSMinimizer< FunctorType, Scalar, DimAtCompile, LineSearchMethod >::_xk_1
+
+protected
+
+ +

Definition at line 241 of file bfgs.hpp.

+ +
+
+
The documentation for this class was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1optimization_1_1_model_adaptor-members.html b/doc/api/html/classstan_1_1optimization_1_1_model_adaptor-members.html new file mode 100644 index 00000000000..1e653cd2525 --- /dev/null +++ b/doc/api/html/classstan_1_1optimization_1_1_model_adaptor-members.html @@ -0,0 +1,117 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::optimization::ModelAdaptor< M > Member List
+
+
+ +

This is the complete list of members for stan::optimization::ModelAdaptor< M >, including all inherited members.

+ + + + + + +
df(const Eigen::Matrix< double, Eigen::Dynamic, 1 > &x, Eigen::Matrix< double, Eigen::Dynamic, 1 > &g)stan::optimization::ModelAdaptor< M >inline
fevals() const stan::optimization::ModelAdaptor< M >inline
ModelAdaptor(M &model, const std::vector< int > &params_i, std::ostream *msgs)stan::optimization::ModelAdaptor< M >inline
operator()(const Eigen::Matrix< double, Eigen::Dynamic, 1 > &x, double &f)stan::optimization::ModelAdaptor< M >inline
operator()(const Eigen::Matrix< double, Eigen::Dynamic, 1 > &x, double &f, Eigen::Matrix< double, Eigen::Dynamic, 1 > &g)stan::optimization::ModelAdaptor< M >inline
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1optimization_1_1_model_adaptor.html b/doc/api/html/classstan_1_1optimization_1_1_model_adaptor.html new file mode 100644 index 00000000000..36c52baf64e --- /dev/null +++ b/doc/api/html/classstan_1_1optimization_1_1_model_adaptor.html @@ -0,0 +1,330 @@ + + + + + +Stan: stan::optimization::ModelAdaptor< M > Class Template Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::optimization::ModelAdaptor< M > Class Template Reference
+
+
+ +

#include <bfgs.hpp>

+ + + + + + + + + + + + +

+Public Member Functions

 ModelAdaptor (M &model, const std::vector< int > &params_i, std::ostream *msgs)
 
size_t fevals () const
 
int operator() (const Eigen::Matrix< double, Eigen::Dynamic, 1 > &x, double &f)
 
int operator() (const Eigen::Matrix< double, Eigen::Dynamic, 1 > &x, double &f, Eigen::Matrix< double, Eigen::Dynamic, 1 > &g)
 
int df (const Eigen::Matrix< double, Eigen::Dynamic, 1 > &x, Eigen::Matrix< double, Eigen::Dynamic, 1 > &g)
 
+

Detailed Description

+

template<class M>
+class stan::optimization::ModelAdaptor< M >

+ + +

Definition at line 468 of file bfgs.hpp.

+

Constructor & Destructor Documentation

+ +
+
+
+template<class M >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
stan::optimization::ModelAdaptor< M >::ModelAdaptor (M & model,
const std::vector< int > & params_i,
std::ostream * msgs 
)
+
+inline
+
+ +

Definition at line 477 of file bfgs.hpp.

+ +
+
+

Member Function Documentation

+ +
+
+
+template<class M >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
int stan::optimization::ModelAdaptor< M >::df (const Eigen::Matrix< double, Eigen::Dynamic, 1 > & x,
Eigen::Matrix< double, Eigen::Dynamic, 1 > & g 
)
+
+inline
+
+ +

Definition at line 548 of file bfgs.hpp.

+ +
+
+ +
+
+
+template<class M >
+ + + + + +
+ + + + + + + +
size_t stan::optimization::ModelAdaptor< M >::fevals () const
+
+inline
+
+ +

Definition at line 482 of file bfgs.hpp.

+ +
+
+ +
+
+
+template<class M >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
int stan::optimization::ModelAdaptor< M >::operator() (const Eigen::Matrix< double, Eigen::Dynamic, 1 > & x,
double & f 
)
+
+inline
+
+ +

Definition at line 483 of file bfgs.hpp.

+ +
+
+ +
+
+
+template<class M >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
int stan::optimization::ModelAdaptor< M >::operator() (const Eigen::Matrix< double, Eigen::Dynamic, 1 > & x,
double & f,
Eigen::Matrix< double, Eigen::Dynamic, 1 > & g 
)
+
+inline
+
+ +

Definition at line 508 of file bfgs.hpp.

+ +
+
+
The documentation for this class was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1optimization_1_1_nesterov_gradient-members.html b/doc/api/html/classstan_1_1optimization_1_1_nesterov_gradient-members.html new file mode 100644 index 00000000000..dcbefd4e26e --- /dev/null +++ b/doc/api/html/classstan_1_1optimization_1_1_nesterov_gradient-members.html @@ -0,0 +1,118 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::optimization::NesterovGradient< M > Member List
+
+
+ +

This is the complete list of members for stan::optimization::NesterovGradient< M >, including all inherited members.

+ + + + + + + +
grad(std::vector< double > &g)stan::optimization::NesterovGradient< M >inline
initialize_epsilon()stan::optimization::NesterovGradient< M >inline
logp()stan::optimization::NesterovGradient< M >inline
NesterovGradient(M &model, const std::vector< double > &params_r, const std::vector< int > &params_i, double epsilon=-1, std::ostream *output_stream=0)stan::optimization::NesterovGradient< M >inline
params_r(std::vector< double > &x)stan::optimization::NesterovGradient< M >inline
step()stan::optimization::NesterovGradient< M >inline
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1optimization_1_1_nesterov_gradient.html b/doc/api/html/classstan_1_1optimization_1_1_nesterov_gradient.html new file mode 100644 index 00000000000..9d449fc9912 --- /dev/null +++ b/doc/api/html/classstan_1_1optimization_1_1_nesterov_gradient.html @@ -0,0 +1,334 @@ + + + + + +Stan: stan::optimization::NesterovGradient< M > Class Template Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::optimization::NesterovGradient< M > Class Template Reference
+
+
+ +

#include <nesterov_gradient.hpp>

+ + + + + + + + + + + + + + +

+Public Member Functions

void initialize_epsilon ()
 
 NesterovGradient (M &model, const std::vector< double > &params_r, const std::vector< int > &params_i, double epsilon=-1, std::ostream *output_stream=0)
 
double logp ()
 
void grad (std::vector< double > &g)
 
void params_r (std::vector< double > &x)
 
double step ()
 
+

Detailed Description

+

template<class M>
+class stan::optimization::NesterovGradient< M >

+ + +

Definition at line 13 of file nesterov_gradient.hpp.

+

Constructor & Destructor Documentation

+ +
+
+
+template<class M>
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
stan::optimization::NesterovGradient< M >::NesterovGradient (M & model,
const std::vector< double > & params_r,
const std::vector< int > & params_i,
double epsilon = -1,
std::ostream * output_stream = 0 
)
+
+inline
+
+ +

Definition at line 104 of file nesterov_gradient.hpp.

+ +
+
+

Member Function Documentation

+ +
+
+
+template<class M>
+ + + + + +
+ + + + + + + + +
void stan::optimization::NesterovGradient< M >::grad (std::vector< double > & g)
+
+inline
+
+ +

Definition at line 121 of file nesterov_gradient.hpp.

+ +
+
+ +
+
+
+template<class M>
+ + + + + +
+ + + + + + + +
void stan::optimization::NesterovGradient< M >::initialize_epsilon ()
+
+inline
+
+ +

Definition at line 34 of file nesterov_gradient.hpp.

+ +
+
+ +
+
+
+template<class M>
+ + + + + +
+ + + + + + + +
double stan::optimization::NesterovGradient< M >::logp ()
+
+inline
+
+ +

Definition at line 120 of file nesterov_gradient.hpp.

+ +
+
+ +
+
+
+template<class M>
+ + + + + +
+ + + + + + + + +
void stan::optimization::NesterovGradient< M >::params_r (std::vector< double > & x)
+
+inline
+
+ +

Definition at line 122 of file nesterov_gradient.hpp.

+ +
+
+ +
+
+
+template<class M>
+ + + + + +
+ + + + + + + +
double stan::optimization::NesterovGradient< M >::step ()
+
+inline
+
+ +

Definition at line 124 of file nesterov_gradient.hpp.

+ +
+
+
The documentation for this class was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1prob_1_1welford__covar__estimator-members.html b/doc/api/html/classstan_1_1prob_1_1welford__covar__estimator-members.html new file mode 100644 index 00000000000..4a2660de62c --- /dev/null +++ b/doc/api/html/classstan_1_1prob_1_1welford__covar__estimator-members.html @@ -0,0 +1,121 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::prob::welford_covar_estimator Member List
+
+ +
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1prob_1_1welford__covar__estimator.html b/doc/api/html/classstan_1_1prob_1_1welford__covar__estimator.html new file mode 100644 index 00000000000..79bcb917b89 --- /dev/null +++ b/doc/api/html/classstan_1_1prob_1_1welford__covar__estimator.html @@ -0,0 +1,369 @@ + + + + + +Stan: stan::prob::welford_covar_estimator Class Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::prob::welford_covar_estimator Class Reference
+
+
+ +

#include <welford_covar_estimator.hpp>

+ + + + + + + + + + + + + + +

+Public Member Functions

 welford_covar_estimator (int n)
 
void restart ()
 
void add_sample (const Eigen::VectorXd &q)
 
int num_samples ()
 
void sample_mean (Eigen::VectorXd &mean)
 
void sample_covariance (Eigen::MatrixXd &covar)
 
+ + + + + + + +

+Protected Attributes

double _num_samples
 
Eigen::VectorXd _m
 
Eigen::MatrixXd _m2
 
+

Detailed Description

+
+

Definition at line 11 of file welford_covar_estimator.hpp.

+

Constructor & Destructor Documentation

+ +
+
+ + + + + +
+ + + + + + + + +
stan::prob::welford_covar_estimator::welford_covar_estimator (int n)
+
+inline
+
+ +

Definition at line 15 of file welford_covar_estimator.hpp.

+ +
+
+

Member Function Documentation

+ +
+
+ + + + + +
+ + + + + + + + +
void stan::prob::welford_covar_estimator::add_sample (const Eigen::VectorXd & q)
+
+inline
+
+ +

Definition at line 25 of file welford_covar_estimator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
int stan::prob::welford_covar_estimator::num_samples ()
+
+inline
+
+ +

Definition at line 35 of file welford_covar_estimator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
void stan::prob::welford_covar_estimator::restart ()
+
+inline
+
+ +

Definition at line 19 of file welford_covar_estimator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::prob::welford_covar_estimator::sample_covariance (Eigen::MatrixXd & covar)
+
+inline
+
+ +

Definition at line 39 of file welford_covar_estimator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::prob::welford_covar_estimator::sample_mean (Eigen::VectorXd & mean)
+
+inline
+
+ +

Definition at line 37 of file welford_covar_estimator.hpp.

+ +
+
+

Member Data Documentation

+ +
+
+ + + + + +
+ + + + +
Eigen::VectorXd stan::prob::welford_covar_estimator::_m
+
+protected
+
+ +

Definition at line 48 of file welford_covar_estimator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + +
Eigen::MatrixXd stan::prob::welford_covar_estimator::_m2
+
+protected
+
+ +

Definition at line 49 of file welford_covar_estimator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + +
double stan::prob::welford_covar_estimator::_num_samples
+
+protected
+
+ +

Definition at line 46 of file welford_covar_estimator.hpp.

+ +
+
+
The documentation for this class was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1prob_1_1welford__var__estimator-members.html b/doc/api/html/classstan_1_1prob_1_1welford__var__estimator-members.html new file mode 100644 index 00000000000..094fc5f26c1 --- /dev/null +++ b/doc/api/html/classstan_1_1prob_1_1welford__var__estimator-members.html @@ -0,0 +1,121 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::prob::welford_var_estimator Member List
+
+ +
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/classstan_1_1prob_1_1welford__var__estimator.html b/doc/api/html/classstan_1_1prob_1_1welford__var__estimator.html new file mode 100644 index 00000000000..0c514cd3982 --- /dev/null +++ b/doc/api/html/classstan_1_1prob_1_1welford__var__estimator.html @@ -0,0 +1,369 @@ + + + + + +Stan: stan::prob::welford_var_estimator Class Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::prob::welford_var_estimator Class Reference
+
+
+ +

#include <welford_var_estimator.hpp>

+ + + + + + + + + + + + + + +

+Public Member Functions

 welford_var_estimator (int n)
 
void restart ()
 
void add_sample (const Eigen::VectorXd &q)
 
int num_samples ()
 
void sample_mean (Eigen::VectorXd &mean)
 
void sample_variance (Eigen::VectorXd &var)
 
+ + + + + + + +

+Protected Attributes

double _num_samples
 
Eigen::VectorXd _m
 
Eigen::VectorXd _m2
 
+

Detailed Description

+
+

Definition at line 11 of file welford_var_estimator.hpp.

+

Constructor & Destructor Documentation

+ +
+
+ + + + + +
+ + + + + + + + +
stan::prob::welford_var_estimator::welford_var_estimator (int n)
+
+inline
+
+ +

Definition at line 15 of file welford_var_estimator.hpp.

+ +
+
+

Member Function Documentation

+ +
+
+ + + + + +
+ + + + + + + + +
void stan::prob::welford_var_estimator::add_sample (const Eigen::VectorXd & q)
+
+inline
+
+ +

Definition at line 25 of file welford_var_estimator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
int stan::prob::welford_var_estimator::num_samples ()
+
+inline
+
+ +

Definition at line 35 of file welford_var_estimator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
void stan::prob::welford_var_estimator::restart ()
+
+inline
+
+ +

Definition at line 19 of file welford_var_estimator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::prob::welford_var_estimator::sample_mean (Eigen::VectorXd & mean)
+
+inline
+
+ +

Definition at line 37 of file welford_var_estimator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::prob::welford_var_estimator::sample_variance (Eigen::VectorXd & var)
+
+inline
+
+ +

Definition at line 39 of file welford_var_estimator.hpp.

+ +
+
+

Member Data Documentation

+ +
+
+ + + + + +
+ + + + +
Eigen::VectorXd stan::prob::welford_var_estimator::_m
+
+protected
+
+ +

Definition at line 48 of file welford_var_estimator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + +
Eigen::VectorXd stan::prob::welford_var_estimator::_m2
+
+protected
+
+ +

Definition at line 49 of file welford_var_estimator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + +
double stan::prob::welford_var_estimator::_num_samples
+
+protected
+
+ +

Definition at line 46 of file welford_var_estimator.hpp.

+ +
+
+
The documentation for this class was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/closed.png b/doc/api/html/closed.png new file mode 100644 index 0000000000000000000000000000000000000000..98cc2c909da37a6df914fbf67780eebd99c597f5 GIT binary patch literal 132 zcmeAS@N?(olHy`uVBq!ia0vp^oFL4>1|%O$WD@{V-kvUwAr*{o@8{^CZMh(5KoB^r_<4^zF@3)Cp&&t3hdujKf f*?bjBoY!V+E))@{xMcbjXe@)LtDnm{r-UW|*e5JT literal 0 HcmV?d00001 diff --git a/doc/api/html/cmd__line_8hpp.html b/doc/api/html/cmd__line_8hpp.html new file mode 100644 index 00000000000..1d7c9501c88 --- /dev/null +++ b/doc/api/html/cmd__line_8hpp.html @@ -0,0 +1,153 @@ + + + + + +Stan: src/stan/io/cmd_line.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
cmd_line.hpp File Reference
+
+
+
#include <map>
+#include <ostream>
+#include <set>
+#include <string>
+#include <sstream>
+#include <vector>
+
+

Go to the source code of this file.

+ + + + + +

+Classes

class  stan::io::cmd_line
 Parses and stores command-line arguments. More...
 
+ + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::io
 Input/output utilities.
 
+ + + + + + + + + + + + + + + + +

+Functions

void stan::io::pad_help_option (std::ostream *o, const std::string &option="", unsigned int width=20)
 Print help option with padding.
 
void stan::io::print_help_helper (std::ostream *o, const std::string &key_val, const std::string &msg, const std::string &note="")
 Prints single print option to output ptr if non-null.
 
void stan::io::print_help_option (std::ostream *o, const std::string &key, const std::string &value_type, const std::string &msg, const std::string &note="")
 Prints single print option to output ptr if non-null.
 
template<>
bool stan::io::cmd_line::bare< std::string > (size_t n, std::string &x) const
 
template<>
bool stan::io::cmd_line::val< std::string > (const std::string &key, std::string &x) const
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/cmd__line_8hpp_source.html b/doc/api/html/cmd__line_8hpp_source.html new file mode 100644 index 00000000000..12d88e75937 --- /dev/null +++ b/doc/api/html/cmd__line_8hpp_source.html @@ -0,0 +1,278 @@ + + + + + +Stan: src/stan/io/cmd_line.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
cmd_line.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__IO__CMD_LINE_HPP__
+
2 #define __STAN__IO__CMD_LINE_HPP__
+
3 
+
4 #include <map>
+
5 #include <ostream>
+
6 #include <set>
+
7 #include <string>
+
8 #include <sstream>
+
9 #include <vector>
+
10 
+
11 namespace stan {
+
12 
+
13  namespace io {
+
14 
+
27  void pad_help_option(std::ostream* o,
+
28  const std::string& option = "",
+
29  unsigned int width = 20) {
+
30  if (!o) return;
+
31  *o << " " << option;
+
32  int padding = width - option.size();
+
33  if (padding < 2) {
+
34  *o << std::endl;
+
35  padding = width + 2; // 2 is
+
36  }
+
37  for (int i = 0; i < padding; ++i)
+
38  *o << ' ';
+
39  }
+
40 
+
49  void print_help_helper(std::ostream* o,
+
50  const std::string& key_val,
+
51  const std::string& msg,
+
52  const std::string& note = "") {
+
53  if (!o) return;
+
54  pad_help_option(o,key_val);
+
55  *o << msg
+
56  << std::endl;
+
57  if (note.size() > 0) {
+
58  pad_help_option(o,"");
+
59  *o << " (" << note << ")"
+
60  << std::endl;
+
61  }
+
62  *o << std::endl;
+
63  }
+
64 
+
74  void print_help_option(std::ostream* o,
+
75  const std::string& key,
+
76  const std::string& value_type,
+
77  const std::string& msg,
+
78  const std::string& note = "") {
+
79  std::stringstream ss;
+
80  ss << "--" << key;
+
81  if (value_type.size() > 0)
+
82  ss << "=<" << value_type << ">";
+
83  print_help_helper(o,ss.str(),msg,note);
+
84  }
+
85 
+
113  class cmd_line {
+
114  private:
+
115  std::string cmd_;
+
116  std::map<std::string,std::string> key_val_;
+
117  std::set<std::string> flag_;
+
118  std::vector<std::string> bare_;
+
119  void parse_arg(const std::string& s) {
+
120  if (s.size() < 2
+
121  || s[0] != '-'
+
122  || s[1] != '-') {
+
123  bare_.push_back(s);
+
124  return;
+
125  }
+
126  for (size_t i = 2; i < s.size(); ++i) {
+
127  if (s[i] == '=') {
+
128  key_val_[s.substr(2,i - 2)] = s.substr(i + 1,s.size() - i - 1);
+
129  return;
+
130  }
+
131  }
+
132  flag_.insert(s.substr(2,s.size()));
+
133  }
+
134  public:
+
142  cmd_line(int argc, const char* argv[])
+
143  : cmd_(argv[0]) {
+
144  for (int i = 1; i < argc; ++i)
+
145  parse_arg(argv[i]);
+
146  }
+
147 
+
155  std::string command() {
+
156  return cmd_;
+
157  }
+
158 
+
165  bool has_key(const std::string& key) const {
+
166  return key_val_.find(key) != key_val_.end();
+
167  }
+
168 
+
188  template <typename T>
+
189  bool val(const std::string& key, T& x) const {
+
190  if (!has_key(key))
+
191  return false;
+
192  std::stringstream s(key_val_.find(key)->second);
+
193  s >> x;
+
194  return true;
+
195  }
+
196 
+
203  bool has_flag(const std::string& flag) const {
+
204  return flag_.find(flag) != flag_.end();
+
205  }
+
206 
+
212  size_t bare_size() const {
+
213  return bare_.size();
+
214  }
+
215 
+
229  template <typename T>
+
230  bool bare(size_t n, T& x) const {
+
231  if (n >= bare_.size())
+
232  return false;
+
233  std::stringstream s(bare_[n]);
+
234  s >> x;
+
235  return true;
+
236  }
+
237 
+
238 
+
245  void print(std::ostream& out) const {
+
246  out << "COMMAND=" << cmd_ << '\n';
+
247  size_t flag_count = 0;
+
248  for (std::set<std::string>::const_iterator it = flag_.begin();
+
249  it != flag_.end();
+
250  ++it) {
+
251  out << "FLAG " << flag_count << "=" << (*it) << '\n';
+
252  ++flag_count;
+
253  }
+
254  size_t key_val_count = 0;
+
255  for (std::map<std::string,std::string>::const_iterator it = key_val_.begin();
+
256  it != key_val_.end();
+
257  ++it) {
+
258  out << "KEY " << key_val_count << "=" << (*it).first;
+
259  out << " VAL " << key_val_count << "=" << (*it).second << '\n';
+
260  ++key_val_count;
+
261  }
+
262  size_t bare_count = 0;
+
263  for (size_t i = 0; i < bare_.size(); ++i) {
+
264  out << "BARE ARG " << bare_count << "=" << bare_[i] << '\n';
+
265  ++bare_count;
+
266  }
+
267  }
+
268 
+
269  };
+
270 
+
271  // explicit instantation for std::string to allow for spaces
+
272  // in bare_[n]
+
273  template <>
+
274  bool cmd_line::bare<std::string>(size_t n, std::string& x) const {
+
275  if (n >= bare_.size())
+
276  return false;
+
277  x = bare_[n];
+
278  return true;
+
279  }
+
280 
+
281  // explicit instantation for std::string to allow for spaces
+
282  // in key_val_
+
283  template <>
+
284  bool cmd_line::val<std::string>(const std::string& key, std::string& x) const {
+
285  if (!has_key(key))
+
286  return false;
+
287  x = key_val_.find(key)->second;
+
288  return true;
+
289  }
+
290 
+
291 
+
292  }
+
293 
+
294 }
+
295 
+
296 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/col_8hpp.html b/doc/api/html/col_8hpp.html new file mode 100644 index 00000000000..a024f15f9a1 --- /dev/null +++ b/doc/api/html/col_8hpp.html @@ -0,0 +1,132 @@ + + + + + +Stan: src/stan/math/matrix/col.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
col.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::math
 Matrices and templated mathematical functions.
 
+ + + + + +

+Functions

template<typename T >
Eigen::Matrix< T,
+Eigen::Dynamic, 1 > 
stan::math::col (const Eigen::Matrix< T, Eigen::Dynamic, Eigen::Dynamic > &m, size_t j)
 Return the specified column of the specified matrix using start-at-1 indexing.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/col_8hpp_source.html b/doc/api/html/col_8hpp_source.html new file mode 100644 index 00000000000..14c637879e9 --- /dev/null +++ b/doc/api/html/col_8hpp_source.html @@ -0,0 +1,128 @@ + + + + + +Stan: src/stan/math/matrix/col.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
col.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MATH__MATRIX__COL_HPP__
+
2 #define __STAN__MATH__MATRIX__COL_HPP__
+
3 
+ + +
6 
+
7 namespace stan {
+
8  namespace math {
+
9 
+
21  template <typename T>
+
22  inline
+
23  Eigen::Matrix<T,Eigen::Dynamic,1>
+
24  col(const Eigen::Matrix<T,Eigen::Dynamic,Eigen::Dynamic>& m,
+
25  size_t j) {
+
26  validate_column_index(m,j,"col");
+
27  return m.col(j - 1);
+
28  }
+
29 
+
30  }
+
31 }
+
32 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/cols_8hpp.html b/doc/api/html/cols_8hpp.html new file mode 100644 index 00000000000..120910f05c1 --- /dev/null +++ b/doc/api/html/cols_8hpp.html @@ -0,0 +1,129 @@ + + + + + +Stan: src/stan/math/matrix/cols.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
cols.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::math
 Matrices and templated mathematical functions.
 
+ + + + +

+Functions

template<typename T , int R, int C>
size_t stan::math::cols (const Eigen::Matrix< T, R, C > &m)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/cols_8hpp_source.html b/doc/api/html/cols_8hpp_source.html new file mode 100644 index 00000000000..5a8b187f851 --- /dev/null +++ b/doc/api/html/cols_8hpp_source.html @@ -0,0 +1,125 @@ + + + + + +Stan: src/stan/math/matrix/cols.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
cols.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MATH__MATRIX__COLS_HPP__
+
2 #define __STAN__MATH__MATRIX__COLS_HPP__
+
3 
+ +
5 
+
6 namespace stan {
+
7  namespace math {
+
8 
+
9  template <typename T, int R, int C>
+
10  inline
+
11  size_t
+
12  cols(const Eigen::Matrix<T,R,C>& m) {
+
13  return m.cols();
+
14  }
+
15 
+
16  }
+
17 }
+
18 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/command_8hpp.html b/doc/api/html/command_8hpp.html new file mode 100644 index 00000000000..cc63a8fde7d --- /dev/null +++ b/doc/api/html/command_8hpp.html @@ -0,0 +1,198 @@ + + + + + +Stan: src/stan/gm/command.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
command.hpp File Reference
+
+
+
#include <fstream>
+#include <stdexcept>
+#include <boost/date_time/posix_time/posix_time_types.hpp>
+#include <boost/math/special_functions/fpclassify.hpp>
+#include <boost/random/additive_combine.hpp>
+#include <boost/random/uniform_real_distribution.hpp>
+#include <stan/version.hpp>
+#include <stan/io/cmd_line.hpp>
+#include <stan/io/dump.hpp>
+#include <stan/io/mcmc_writer.hpp>
+#include <stan/gm/arguments/argument_parser.hpp>
+#include <stan/gm/arguments/arg_id.hpp>
+#include <stan/gm/arguments/arg_data.hpp>
+#include <stan/gm/arguments/arg_init.hpp>
+#include <stan/gm/arguments/arg_random.hpp>
+#include <stan/gm/arguments/arg_output.hpp>
+#include <stan/mcmc/fixed_param_sampler.hpp>
+#include <stan/mcmc/hmc/static/adapt_unit_e_static_hmc.hpp>
+#include <stan/mcmc/hmc/static/adapt_diag_e_static_hmc.hpp>
+#include <stan/mcmc/hmc/static/adapt_dense_e_static_hmc.hpp>
+#include <stan/mcmc/hmc/nuts/adapt_unit_e_nuts.hpp>
+#include <stan/mcmc/hmc/nuts/adapt_diag_e_nuts.hpp>
+#include <stan/mcmc/hmc/nuts/adapt_dense_e_nuts.hpp>
+#include <stan/model/util.hpp>
+#include <stan/optimization/newton.hpp>
+#include <stan/optimization/nesterov_gradient.hpp>
+#include <stan/optimization/bfgs.hpp>
+
+

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::gm
 Directed graphical model compiler.
 
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Functions

void stan::gm::write_iteration_csv (std::ostream &output_stream, const double lp, const std::vector< double > &model_values)
 
template<class Model , class RNG >
void stan::gm::write_iteration (std::ostream &output_stream, Model &model, RNG &base_rng, double lp, std::vector< double > &cont_vector, std::vector< int > &disc_vector)
 
void stan::gm::write_stan (std::ostream *s, const std::string prefix="")
 
void stan::gm::write_model (std::ostream *s, const std::string model_name, const std::string prefix="")
 
void stan::gm::write_error_msg (std::ostream *error_stream, const std::exception &e)
 
bool stan::gm::do_print (int n, bool special, int refresh)
 Indicates whether it should print on the current iteration.
 
bool stan::gm::do_print (int n, int refresh)
 Indicates whether it should print on the current iteration.
 
void stan::gm::print_progress (int m, int start, int finish, int refresh, bool warmup)
 
template<class Model , class RNG >
void stan::gm::run_markov_chain (stan::mcmc::base_mcmc *sampler, int num_iterations, int start, int finish, int num_thin, int refresh, bool save, bool warmup, stan::io::mcmc_writer< Model > &writer, stan::mcmc::sample &init_s, Model &model, RNG &base_rng)
 
template<class Model , class RNG >
void stan::gm::warmup (stan::mcmc::base_mcmc *sampler, int num_warmup, int num_samples, int num_thin, int refresh, bool save, stan::io::mcmc_writer< Model > &writer, stan::mcmc::sample &init_s, Model &model, RNG &base_rng)
 
template<class Model , class RNG >
void stan::gm::sample (stan::mcmc::base_mcmc *sampler, int num_warmup, int num_samples, int num_thin, int refresh, bool save, stan::io::mcmc_writer< Model > &writer, stan::mcmc::sample &init_s, Model &model, RNG &base_rng)
 
template<class Sampler >
bool stan::gm::init_static_hmc (stan::mcmc::base_mcmc *sampler, argument *algorithm)
 
template<class Sampler >
bool stan::gm::init_nuts (stan::mcmc::base_mcmc *sampler, argument *algorithm)
 
template<class Sampler >
bool stan::gm::init_adapt (Sampler *sampler, const double delta, const double gamma, const double kappa, const double t0, const Eigen::VectorXd &cont_params)
 
template<class Sampler >
bool stan::gm::init_adapt (stan::mcmc::base_mcmc *sampler, categorical_argument *adapt, const Eigen::VectorXd &cont_params)
 
template<class Sampler >
bool stan::gm::init_windowed_adapt (stan::mcmc::base_mcmc *sampler, categorical_argument *adapt, unsigned int num_warmup, const Eigen::VectorXd &cont_params)
 
template<class Model >
int stan::gm::command (int argc, const char *argv[])
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/command_8hpp_source.html b/doc/api/html/command_8hpp_source.html new file mode 100644 index 00000000000..3705deb26a3 --- /dev/null +++ b/doc/api/html/command_8hpp_source.html @@ -0,0 +1,1151 @@ + + + + + +Stan: src/stan/gm/command.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
command.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__GM__COMMAND_HPP__
+
2 #define __STAN__GM__COMMAND_HPP__
+
3 
+
4 #include <fstream>
+
5 #include <stdexcept>
+
6 
+
7 #include <boost/date_time/posix_time/posix_time_types.hpp>
+
8 #include <boost/math/special_functions/fpclassify.hpp>
+
9 #include <boost/random/additive_combine.hpp> // L'Ecuyer RNG
+
10 #include <boost/random/uniform_real_distribution.hpp>
+
11 
+
12 #include <stan/version.hpp>
+
13 #include <stan/io/cmd_line.hpp>
+
14 #include <stan/io/dump.hpp>
+
15 #include <stan/io/mcmc_writer.hpp>
+
16 
+ + + + + + +
23 
+ + + + + + + +
31 
+
32 #include <stan/model/util.hpp>
+
33 
+ + + +
37 
+
38 namespace stan {
+
39 
+
40  namespace gm {
+
41 
+
42  void write_iteration_csv(std::ostream& output_stream,
+
43  const double lp,
+
44  const std::vector<double>& model_values) {
+
45  output_stream << lp;
+
46  for (size_t i = 0; i < model_values.size(); ++i) {
+
47  output_stream << "," << model_values.at(i);
+
48  }
+
49  output_stream << std::endl;
+
50  }
+
51 
+
52  template <class Model, class RNG>
+
53  void write_iteration(std::ostream& output_stream,
+
54  Model& model,
+
55  RNG& base_rng,
+
56  double lp,
+
57  std::vector<double>& cont_vector,
+
58  std::vector<int>& disc_vector) {
+
59  std::vector<double> model_values;
+
60  model.write_array(base_rng, cont_vector, disc_vector, model_values,
+
61  true, true, &std::cout);
+
62  write_iteration_csv(output_stream, lp, model_values);
+
63  }
+
64 
+
65 
+
66  void write_stan(std::ostream* s, const std::string prefix = "") {
+
67  if (!s) return;
+
68 
+
69  *s << prefix << " stan_version_major = " << stan::MAJOR_VERSION << std::endl;
+
70  *s << prefix << " stan_version_minor = " << stan::MINOR_VERSION << std::endl;
+
71  *s << prefix << " stan_version_patch = " << stan::PATCH_VERSION << std::endl;
+
72 
+
73  }
+
74 
+
75  void write_model(std::ostream* s, const std::string model_name, const std::string prefix = "") {
+
76  if (!s) return;
+
77 
+
78  *s << prefix << " model = " << model_name << std::endl;
+
79 
+
80  }
+
81 
+
82  void write_error_msg(std::ostream* error_stream,
+
83  const std::exception& e) {
+
84 
+
85  if (!error_stream) return;
+
86 
+
87  *error_stream << std::endl
+
88  << "Informational Message: The current Metropolis proposal is about to be"
+
89  << " rejected becuase of the following issue:"
+
90  << std::endl
+
91  << e.what() << std::endl
+
92  << "If this warning occurs sporadically, such as for highly constrained"
+
93  << " variable types like covariance matrices, then the sampler is fine,"
+
94  << std::endl
+
95  << "but if this warning occurs often then your model may be either"
+
96  << " severely ill-conditioned or misspecified."
+
97  << std::endl;
+
98 
+
99  }
+
100 
+
118  bool do_print(int n, bool special, int refresh) {
+
119  return (refresh > 0) &&
+
120  (special || n == 0 || ((n + 1) % refresh == 0) );
+
121  }
+
122 
+
136  bool do_print(int n, int refresh) {
+
137  return do_print(n,false,refresh);
+
138  }
+
139 
+
140  void print_progress(int m, int start, int finish, int refresh, bool warmup) {
+
141 
+
142  int it_print_width = std::ceil(std::log10(finish));
+
143 
+
144  if (do_print(m, (start + m + 1 == finish), refresh )) {
+
145 
+
146  std::cout << "Iteration: ";
+
147  std::cout << std::setw(it_print_width) << m + 1 + start
+
148  << " / " << finish;
+
149 
+
150  std::cout << " [" << std::setw(3)
+
151  << static_cast<int>( (100.0 * (start + m + 1)) / finish )
+
152  << "%] ";
+
153  std::cout << (warmup ? " (Warmup)" : " (Sampling)");
+
154  std::cout << std::endl;
+
155  }
+
156 
+
157  }
+
158 
+
159  template <class Model, class RNG>
+ +
161  int num_iterations,
+
162  int start,
+
163  int finish,
+
164  int num_thin,
+
165  int refresh,
+
166  bool save,
+
167  bool warmup,
+ +
169  stan::mcmc::sample& init_s,
+
170  Model& model,
+
171  RNG& base_rng) {
+
172 
+
173  for (int m = 0; m < num_iterations; ++m) {
+
174 
+
175  print_progress(m, start, finish, refresh, warmup);
+
176 
+
177  init_s = sampler->transition(init_s);
+
178 
+
179  if ( save && ( (m % num_thin) == 0) ) {
+
180  writer.print_sample_params(base_rng, init_s, *sampler, model);
+
181  writer.print_diagnostic_params(init_s, sampler);
+
182  }
+
183 
+
184  }
+
185 
+
186  }
+
187 
+
188  template <class Model, class RNG>
+ +
190  int num_warmup,
+
191  int num_samples,
+
192  int num_thin,
+
193  int refresh,
+
194  bool save,
+ +
196  stan::mcmc::sample& init_s,
+
197  Model& model,
+
198  RNG& base_rng) {
+
199 
+
200  run_markov_chain<Model, RNG>(sampler, num_warmup, 0, num_warmup + num_samples, num_thin,
+
201  refresh, save, true,
+
202  writer,
+
203  init_s, model, base_rng);
+
204 
+
205  }
+
206 
+
207  template <class Model, class RNG>
+ +
209  int num_warmup,
+
210  int num_samples,
+
211  int num_thin,
+
212  int refresh,
+
213  bool save,
+ +
215  stan::mcmc::sample& init_s,
+
216  Model& model,
+
217  RNG& base_rng) {
+
218 
+
219  run_markov_chain<Model, RNG>(sampler, num_samples, num_warmup,
+
220  num_warmup + num_samples, num_thin,
+
221  refresh, save, false,
+
222  writer,
+
223  init_s, model, base_rng);
+
224 
+
225  }
+
226 
+
227 
+
228  template<class Sampler>
+
229  bool init_static_hmc(stan::mcmc::base_mcmc* sampler, argument* algorithm) {
+
230 
+
231  categorical_argument* hmc = dynamic_cast<categorical_argument*>(
+
232  algorithm->arg("hmc"));
+
233 
+
234  categorical_argument* base = dynamic_cast<categorical_argument*>(
+
235  algorithm->arg("hmc")->arg("engine")->arg("static"));
+
236 
+
237  double epsilon = dynamic_cast<real_argument*>(hmc->arg("stepsize"))->value();
+
238  double epsilon_jitter
+
239  = dynamic_cast<real_argument*>(hmc->arg("stepsize_jitter"))->value();
+
240  double int_time = dynamic_cast<real_argument*>(base->arg("int_time"))->value();
+
241 
+
242  dynamic_cast<Sampler*>(sampler)->set_nominal_stepsize_and_T(epsilon, int_time);
+
243  dynamic_cast<Sampler*>(sampler)->set_stepsize_jitter(epsilon_jitter);
+
244 
+
245 
+
246  return true;
+
247 
+
248  }
+
249 
+
250  template<class Sampler>
+
251  bool init_nuts(stan::mcmc::base_mcmc* sampler, argument* algorithm) {
+
252 
+
253  categorical_argument* hmc = dynamic_cast<categorical_argument*>(
+
254  algorithm->arg("hmc"));
+
255 
+
256  categorical_argument* base = dynamic_cast<categorical_argument*>(
+
257  algorithm->arg("hmc")->arg("engine")->arg("nuts"));
+
258 
+
259  double epsilon = dynamic_cast<real_argument*>(hmc->arg("stepsize"))->value();
+
260  double epsilon_jitter
+
261  = dynamic_cast<real_argument*>(hmc->arg("stepsize_jitter"))->value();
+
262  int max_depth = dynamic_cast<int_argument*>(base->arg("max_depth"))->value();
+
263 
+
264  dynamic_cast<Sampler*>(sampler)->set_nominal_stepsize(epsilon);
+
265  dynamic_cast<Sampler*>(sampler)->set_stepsize_jitter(epsilon_jitter);
+
266  dynamic_cast<Sampler*>(sampler)->set_max_depth(max_depth);
+
267 
+
268  return true;
+
269 
+
270  }
+
271 
+
272  template<class Sampler>
+
273  bool init_adapt(Sampler* sampler,
+
274  const double delta,
+
275  const double gamma,
+
276  const double kappa,
+
277  const double t0,
+
278  const Eigen::VectorXd& cont_params) {
+
279  const double epsilon = sampler->get_nominal_stepsize();
+
280 
+
281  sampler->get_stepsize_adaptation().set_mu(log(10 * epsilon));
+
282  sampler->get_stepsize_adaptation().set_delta(delta);
+
283  sampler->get_stepsize_adaptation().set_gamma(gamma);
+
284  sampler->get_stepsize_adaptation().set_kappa(kappa);
+
285  sampler->get_stepsize_adaptation().set_t0(t0);
+
286 
+
287  sampler->engage_adaptation();
+
288 
+
289  try {
+
290  sampler->z().q = cont_params;
+
291  sampler->init_stepsize();
+
292  } catch (const std::exception& e) {
+
293  std::cout << "Exception initializing step size." << std::endl
+
294  << e.what() << std::endl;
+
295  return false;
+
296  }
+
297 
+
298  return true;
+
299  }
+
300 
+
301  template<class Sampler>
+ +
303  const Eigen::VectorXd& cont_params) {
+
304 
+
305  double delta = dynamic_cast<real_argument*>(adapt->arg("delta"))->value();
+
306  double gamma = dynamic_cast<real_argument*>(adapt->arg("gamma"))->value();
+
307  double kappa = dynamic_cast<real_argument*>(adapt->arg("kappa"))->value();
+
308  double t0 = dynamic_cast<real_argument*>(adapt->arg("t0"))->value();
+
309 
+
310  Sampler* s = dynamic_cast<Sampler*>(sampler);
+
311 
+
312  return init_adapt<Sampler>(s, delta, gamma, kappa, t0, cont_params);
+
313  }
+
314 
+
315  template<class Sampler>
+ +
317  unsigned int num_warmup, const Eigen::VectorXd& cont_params) {
+
318 
+
319  init_adapt<Sampler>(sampler, adapt, cont_params);
+
320 
+
321  unsigned int init_buffer
+
322  = dynamic_cast<u_int_argument*>(adapt->arg("init_buffer"))->value();
+
323  unsigned int term_buffer
+
324  = dynamic_cast<u_int_argument*>(adapt->arg("term_buffer"))->value();
+
325  unsigned int window = dynamic_cast<u_int_argument*>(adapt->arg("window"))->value();
+
326 
+
327  dynamic_cast<Sampler*>(sampler)->set_window_params(num_warmup, init_buffer,
+
328  term_buffer, window, &std::cout);
+
329 
+
330  return true;
+
331 
+
332  }
+
333 
+
334  template <class Model>
+
335  int command(int argc, const char* argv[]) {
+
336 
+
337  std::vector<argument*> valid_arguments;
+
338  valid_arguments.push_back(new arg_id());
+
339  valid_arguments.push_back(new arg_data());
+
340  valid_arguments.push_back(new arg_init());
+
341  valid_arguments.push_back(new arg_random());
+
342  valid_arguments.push_back(new arg_output());
+
343 
+
344  argument_parser parser(valid_arguments);
+
345  int err_code = parser.parse_args(argc, argv, &std::cout, &std::cout);
+
346 
+
347  if (err_code != 0) {
+
348  std::cout << "Failed to parse arguments, terminating Stan" << std::endl;
+
349  return err_code;
+
350  }
+
351 
+
352  if (parser.help_printed())
+
353  return err_code;
+
354 
+
355  parser.print(&std::cout);
+
356  std::cout << std::endl;
+
357 
+
358  // Identification
+
359  unsigned int id = dynamic_cast<int_argument*>(parser.arg("id"))->value();
+
360 
+
362  // Random number generator //
+
364 
+
365  unsigned int random_seed = 0;
+
366  u_int_argument* random_arg
+
367  = dynamic_cast<u_int_argument*>(parser.arg("random")->arg("seed"));
+
368 
+
369  if (random_arg->is_default()) {
+
370  random_seed = (boost::posix_time::microsec_clock::universal_time() -
+
371  boost::posix_time::ptime(boost::posix_time::min_date_time))
+
372  .total_milliseconds();
+
373 
+
374  random_arg->set_value(random_seed);
+
375 
+
376  } else {
+
377  random_seed = random_arg->value();
+
378  }
+
379 
+
380  typedef boost::ecuyer1988 rng_t; // (2**50 = 1T samples, 1000 chains)
+
381  rng_t base_rng(random_seed);
+
382 
+
383  // Advance generator to avoid process conflicts
+
384  static boost::uintmax_t DISCARD_STRIDE = static_cast<boost::uintmax_t>(1) << 50;
+
385  base_rng.discard(DISCARD_STRIDE * (id - 1));
+
386 
+
388  // Input/Output //
+
390 
+
391  // Data input
+
392  std::string data_file
+
393  = dynamic_cast<string_argument*>(parser.arg("data")->arg("file"))->value();
+
394 
+
395  std::fstream data_stream(data_file.c_str(),
+
396  std::fstream::in);
+
397  stan::io::dump data_var_context(data_stream);
+
398  data_stream.close();
+
399 
+
400  // Sample output
+
401  std::string output_file = dynamic_cast<string_argument*>(
+
402  parser.arg("output")->arg("file"))->value();
+
403  std::fstream* output_stream = 0;
+
404  if (output_file != "") {
+
405  output_stream = new std::fstream(output_file.c_str(),
+
406  std::fstream::out);
+
407  }
+
408 
+
409  // Diagnostic output
+
410  std::string diagnostic_file = dynamic_cast<string_argument*>(
+
411  parser.arg("output")->arg("diagnostic_file"))->value();
+
412 
+
413  std::fstream* diagnostic_stream = 0;
+
414  if (diagnostic_file != "") {
+
415  diagnostic_stream = new std::fstream(diagnostic_file.c_str(),
+
416  std::fstream::out);
+
417  }
+
418 
+
419  // Refresh rate
+
420  int refresh = dynamic_cast<int_argument*>(
+
421  parser.arg("output")->arg("refresh"))->value();
+
422 
+
424  // Initialize Model //
+
426 
+
427  Model model(data_var_context, &std::cout);
+
428 
+
429  Eigen::VectorXd cont_params = Eigen::VectorXd::Zero(model.num_params_r());
+
430 
+
431  if (output_stream) {
+
432  write_stan(output_stream, "#");
+
433  write_model(output_stream, model.model_name(), "#");
+
434  parser.print(output_stream, "#");
+
435  }
+
436 
+
437  if (diagnostic_stream) {
+
438  write_stan(diagnostic_stream, "#");
+
439  write_model(diagnostic_stream, model.model_name(), "#");
+
440  parser.print(diagnostic_stream, "#");
+
441  }
+
442 
+
443  int num_init_tries = -1;
+
444 
+
445  std::string init = dynamic_cast<string_argument*>(
+
446  parser.arg("init"))->value();
+
447 
+
448  try {
+
449 
+
450  double R = std::fabs(boost::lexical_cast<double>(init));
+
451 
+
452  if (R == 0) {
+
453 
+
454  cont_params.setZero();
+
455 
+
456  double init_log_prob;
+
457  Eigen::VectorXd init_grad = Eigen::VectorXd::Zero(model.num_params_r());
+
458 
+
459  try {
+
460  stan::model::gradient(model, cont_params, init_log_prob, init_grad, &std::cout);
+
461  } catch (const std::exception& e) {
+
462  std::cout << "Rejecting initialization at zero because of gradient failure."
+
463  << std::endl
+
464  << e.what() << std::endl;
+
465  return error_codes::OK;
+
466  }
+
467 
+
468  if (!boost::math::isfinite(init_log_prob)) {
+
469  std::cout << "Rejecting initialization at zero because of vanishing density."
+
470  << std::endl;
+
471  return 0;
+
472  }
+
473 
+
474  for (int i = 0; i < init_grad.size(); ++i) {
+
475  if (!boost::math::isfinite(init_grad[i])) {
+
476  std::cout << "Rejecting initialization at zero because of divergent gradient."
+
477  << std::endl;
+
478  return 0;
+
479  }
+
480  }
+
481 
+
482  } else {
+
483 
+
484  boost::random::uniform_real_distribution<double>
+
485  init_range_distribution(-R, R);
+
486 
+
487  boost::variate_generator<rng_t&,
+
488  boost::random::uniform_real_distribution<double> >
+
489  init_rng(base_rng, init_range_distribution);
+
490 
+
491  cont_params.setZero();
+
492 
+
493  // Random initializations until log_prob is finite
+
494  Eigen::VectorXd init_grad = Eigen::VectorXd::Zero(model.num_params_r());
+
495  static int MAX_INIT_TRIES = 100;
+
496 
+
497  for (num_init_tries = 1; num_init_tries <= MAX_INIT_TRIES; ++num_init_tries) {
+
498 
+
499  for (int i = 0; i < cont_params.size(); ++i)
+
500  cont_params(i) = init_rng();
+
501 
+
502  // FIXME: allow config vs. std::cout
+
503  double init_log_prob;
+
504  try {
+
505  stan::model::gradient(model, cont_params, init_log_prob, init_grad, &std::cout);
+
506  } catch (const std::exception& e) {
+
507  write_error_msg(&std::cout, e);
+
508  std::cout << "Rejecting proposed initial value with zero density."
+
509  << std::endl;
+
510  init_log_prob = -std::numeric_limits<double>::infinity();
+
511  }
+
512 
+
513  if (!boost::math::isfinite(init_log_prob))
+
514  continue;
+
515  for (int i = 0; i < init_grad.size(); ++i)
+
516  if (!boost::math::isfinite(init_grad(i)))
+
517  continue;
+
518  break;
+
519 
+
520  }
+
521 
+
522  if (num_init_tries > MAX_INIT_TRIES) {
+
523  std::cout << std::endl << std::endl
+
524  << "Initialization between (" << -R << ", " << R << ") failed after "
+
525  << MAX_INIT_TRIES << " attempts. " << std::endl;
+
526  std::cout << " Try specifying initial values,"
+
527  << " reducing ranges of constrained values,"
+
528  << " or reparameterizing the model."
+
529  << std::endl;
+
530  return -1;
+
531  }
+
532 
+
533  }
+
534 
+
535  } catch(...) {
+
536 
+
537  try {
+
538 
+
539  std::fstream init_stream(init.c_str(), std::fstream::in);
+
540  if (init_stream.fail()) {
+
541  std::string msg("ERROR: specified initialization file does not exist: ");
+
542  msg += init;
+
543  throw std::invalid_argument(msg);
+
544  }
+
545 
+
546  stan::io::dump init_var_context(init_stream);
+
547  init_stream.close();
+
548  model.transform_inits(init_var_context, cont_params);
+
549 
+
550  } catch (const std::exception& e) {
+
551  std::cerr << "Error during user-specified initialization:" << std::endl
+
552  << e.what() << std::endl;
+
553  return -5;
+
554  }
+
555 
+
556  double init_log_prob;
+
557  Eigen::VectorXd init_grad = Eigen::VectorXd::Zero(model.num_params_r());
+
558 
+
559  try {
+
560  stan::model::gradient(model, cont_params, init_log_prob, init_grad, &std::cout);
+
561  } catch (const std::exception& e) {
+
562  std::cout
+
563  << "Rejecting user-specified initialization because of gradient failure."
+
564  << std::endl
+
565  << e.what() << std::endl;
+
566  return 0;
+
567  }
+
568 
+
569  if (!boost::math::isfinite(init_log_prob)) {
+
570  std::cout
+
571  << "Rejecting user-specified initialization because of vanishing density."
+
572  << std::endl;
+
573  return 0;
+
574  }
+
575 
+
576  for (int i = 0; i < init_grad.size(); ++i) {
+
577  if (!boost::math::isfinite(init_grad[i])) {
+
578  std::cout
+
579  << "Rejecting user-specified initialization because of divergent gradient."
+
580  << std::endl;
+
581  return 0;
+
582  }
+
583  }
+
584 
+
585  }
+
586 
+
588  // Model Diagnostics //
+
590 
+
591  if (parser.arg("method")->arg("diagnose")) {
+
592 
+
593  std::vector<double> cont_vector(cont_params.size());
+
594  for (int i = 0; i < cont_params.size(); ++i)
+
595  cont_vector.at(i) = cont_params(i);
+
596  std::vector<int> disc_vector;
+
597 
+
598  list_argument* test = dynamic_cast<list_argument*>
+
599  (parser.arg("method")->arg("diagnose")->arg("test"));
+
600 
+
601  if (test->value() == "gradient") {
+
602  std::cout << std::endl << "TEST GRADIENT MODE" << std::endl;
+
603 
+
604  double epsilon = dynamic_cast<real_argument*>
+
605  (test->arg("gradient")->arg("epsilon"))->value();
+
606 
+
607  double error = dynamic_cast<real_argument*>
+
608  (test->arg("gradient")->arg("error"))->value();
+
609 
+
610  int num_failed
+
611  = stan::model::test_gradients<true,true>(model,cont_vector, disc_vector,
+
612  epsilon, error, std::cout);
+
613 
+
614  if (output_stream) {
+
615  num_failed
+
616  = stan::model::test_gradients<true,true>(model,cont_vector, disc_vector,
+
617  epsilon, error, *output_stream);
+
618  }
+
619 
+
620  if (diagnostic_stream) {
+
621  num_failed
+
622  = stan::model::test_gradients<true,true>(model,cont_vector, disc_vector,
+
623  epsilon, error, *diagnostic_stream);
+
624  }
+
625 
+
626  (void) num_failed; // FIXME: do something with the number failed
+
627 
+
628  return error_codes::OK;
+
629  }
+
630 
+
631  }
+
632 
+
634  // Optimization Algorithms //
+
636 
+
637  if (parser.arg("method")->arg("optimize")) {
+
638  std::vector<double> cont_vector(cont_params.size());
+
639  for (int i = 0; i < cont_params.size(); ++i)
+
640  cont_vector.at(i) = cont_params(i);
+
641  std::vector<int> disc_vector;
+
642 
+
643  list_argument* algo = dynamic_cast<list_argument*>
+
644  (parser.arg("method")->arg("optimize")->arg("algorithm"));
+
645 
+
646  int num_iterations = dynamic_cast<int_argument*>(
+
647  parser.arg("method")->arg("optimize")->arg("iter"))->value();
+
648 
+
649  bool save_iterations
+
650  = dynamic_cast<bool_argument*>(parser.arg("method")
+
651  ->arg("optimize")
+
652  ->arg("save_iterations"))->value();
+
653  if (output_stream) {
+
654  std::vector<std::string> names;
+
655  names.push_back("lp__");
+
656  model.constrained_param_names(names,true,true);
+
657 
+
658  (*output_stream) << names.at(0);
+
659  for (size_t i = 1; i < names.size(); ++i) {
+
660  (*output_stream) << "," << names.at(i);
+
661  }
+
662  (*output_stream) << std::endl;
+
663  }
+
664 
+
665  double lp(0);
+
666  int return_code = error_codes::CONFIG;
+
667  if (algo->value() == "nesterov") {
+
668  bool epsilon = dynamic_cast<real_argument*>(
+
669  algo->arg("nesterov")->arg("stepsize"))->value();
+
670 
+
671 
+
672  stan::optimization::NesterovGradient<Model> ng(model, cont_vector, disc_vector,
+
673  epsilon, &std::cout);
+
674 
+
675  lp = ng.logp();
+
676 
+
677  double lastlp = lp - 1;
+
678  std::cout << "Initial log joint probability = " << lp << std::endl;
+
679  if (output_stream && save_iterations) {
+
680  write_iteration(*output_stream, model, base_rng,
+
681  lp, cont_vector, disc_vector);
+
682  }
+
683 
+
684  int m = 0;
+
685  for (int i = 0; i < num_iterations; i++) {
+
686  lastlp = lp;
+
687  lp = ng.step();
+
688  ng.params_r(cont_vector);
+
689  if (do_print(i, refresh)) {
+
690  std::cout << "Iteration ";
+
691  std::cout << std::setw(2) << (m + 1) << ". ";
+
692  std::cout << "Log joint probability = " << std::setw(10) << lp;
+
693  std::cout << ". Improved by " << (lp - lastlp) << ".";
+
694  std::cout << std::endl;
+
695  std::cout.flush();
+
696  }
+
697  m++;
+
698  if (output_stream && save_iterations) {
+
699  write_iteration(*output_stream, model, base_rng,
+
700  lp, cont_vector, disc_vector);
+
701  }
+
702 
+
703  }
+
704  return_code = error_codes::OK;
+
705  } else if (algo->value() == "newton") {
+
706  std::vector<double> gradient;
+
707  try {
+
708  lp = model.template log_prob<false, false>(cont_vector, disc_vector, &std::cout);
+
709  } catch (const std::exception& e) {
+
710  write_error_msg(&std::cout, e);
+
711  lp = -std::numeric_limits<double>::infinity();
+
712  }
+
713 
+
714  std::cout << "initial log joint probability = " << lp << std::endl;
+
715  if (output_stream && save_iterations) {
+
716  write_iteration(*output_stream, model, base_rng,
+
717  lp, cont_vector, disc_vector);
+
718  }
+
719 
+
720  double lastlp = lp * 1.1;
+
721  int m = 0;
+
722  std::cout << "(lp - lastlp) / lp > 1e-8: " << ((lp - lastlp) / fabs(lp)) << std::endl;
+
723  while ((lp - lastlp) / fabs(lp) > 1e-8) {
+
724 
+
725  lastlp = lp;
+
726  lp = stan::optimization::newton_step(model, cont_vector, disc_vector);
+
727  std::cout << "Iteration ";
+
728  std::cout << std::setw(2) << (m + 1) << ". ";
+
729  std::cout << "Log joint probability = " << std::setw(10) << lp;
+
730  std::cout << ". Improved by " << (lp - lastlp) << ".";
+
731  std::cout << std::endl;
+
732  std::cout.flush();
+
733  m++;
+
734 
+
735  if (output_stream && save_iterations) {
+
736  write_iteration(*output_stream, model, base_rng,
+
737  lp, cont_vector, disc_vector);
+
738  }
+
739 
+
740  }
+
741  return_code = error_codes::OK;
+
742  } else if (algo->value() == "bfgs") {
+
743 
+
744  stan::optimization::BFGSLineSearch<Model> bfgs(model, cont_vector, disc_vector,
+
745  &std::cout);
+
746  bfgs._opts.alpha0 = dynamic_cast<real_argument*>(
+
747  algo->arg("bfgs")->arg("init_alpha"))->value();
+
748  bfgs._opts.tolF = dynamic_cast<real_argument*>(
+
749  algo->arg("bfgs")->arg("tol_obj"))->value();
+
750  bfgs._opts.tolGrad = dynamic_cast<real_argument*>(
+
751  algo->arg("bfgs")->arg("tol_grad"))->value();
+
752  bfgs._opts.tolX = dynamic_cast<real_argument*>(
+
753  algo->arg("bfgs")->arg("tol_param"))->value();
+
754  bfgs._opts.maxIts = num_iterations;
+
755 
+
756  lp = bfgs.logp();
+
757 
+
758  std::cout << "initial log joint probability = " << lp << std::endl;
+
759  if (output_stream && save_iterations) {
+
760  write_iteration(*output_stream, model, base_rng,
+
761  lp, cont_vector, disc_vector);
+
762  }
+
763 
+
764  int ret = 0;
+
765 
+
766  while (ret == 0) {
+
767  if (do_print(bfgs.iter_num(), 50*refresh)) {
+
768  std::cout << " Iter ";
+
769  std::cout << " log prob ";
+
770  std::cout << " ||dx|| ";
+
771  std::cout << " ||grad|| ";
+
772  std::cout << " alpha ";
+
773 // MAB: commented out but left in because it may be useful for debugging in the future
+
774 // std::cout << " alpha0 ";
+
775  std::cout << " # evals ";
+
776  std::cout << " Notes " << std::endl;
+
777  }
+
778 
+
779  ret = bfgs.step();
+
780  lp = bfgs.logp();
+
781  bfgs.params_r(cont_vector);
+
782 
+
783  if (do_print(bfgs.iter_num(), ret != 0 || !bfgs.note().empty(),refresh)) {
+
784  std::cout << " " << std::setw(7) << bfgs.iter_num() << " ";
+
785  std::cout << " " << std::setw(12) << std::setprecision(6)
+
786  << lp << " ";
+
787  std::cout << " " << std::setw(12) << std::setprecision(6)
+
788  << bfgs.prev_step_size() << " ";
+
789  std::cout << " " << std::setw(12) << std::setprecision(6)
+
790  << bfgs.curr_g().norm() << " ";
+
791  std::cout << " " << std::setw(10) << std::setprecision(4)
+
792  << bfgs.alpha() << " ";
+
793  // std::cout << " " << std::setw(10) << std::setprecision(4)
+
794  // << bfgs.alpha0() << " ";
+
795  std::cout << " " << std::setw(7)
+
796  << bfgs.grad_evals() << " ";
+
797  std::cout << " " << bfgs.note() << " ";
+
798  std::cout << std::endl;
+
799  }
+
800 
+
801  if (output_stream && save_iterations) {
+
802  write_iteration(*output_stream, model, base_rng,
+
803  lp, cont_vector, disc_vector);
+
804  }
+
805  }
+
806 
+
807 
+
808  if (ret >= 0) {
+
809  std::cout << "Optimization terminated normally: " << std::endl;
+
810  return_code = error_codes::OK;
+
811  } else {
+
812  std::cout << "Optimization terminated with error: " << std::endl;
+
813  return_code = error_codes::SOFTWARE;
+
814  }
+
815  std::cout << " " << bfgs.get_code_string(ret) << std::endl;
+
816  } else {
+
817  return_code = error_codes::CONFIG;
+
818  }
+
819 
+
820  if (output_stream) {
+
821  write_iteration(*output_stream, model, base_rng,
+
822  lp, cont_vector, disc_vector);
+
823  output_stream->close();
+
824  delete output_stream;
+
825  }
+
826  return return_code;
+
827  }
+
828 
+
830  // Sampling Algorithms //
+
832 
+
833  if (parser.arg("method")->arg("sample")) {
+
834 
+
835  // Check timing
+
836  clock_t start_check = clock();
+
837 
+
838  double init_log_prob;
+
839  Eigen::VectorXd init_grad = Eigen::VectorXd::Zero(model.num_params_r());
+
840 
+
841  stan::model::gradient(model, cont_params, init_log_prob, init_grad, &std::cout);
+
842 
+
843  clock_t end_check = clock();
+
844  double deltaT = (double)(end_check - start_check) / CLOCKS_PER_SEC;
+
845 
+
846  std::cout << std::endl;
+
847  std::cout << "Gradient evaluation took " << deltaT << " seconds" << std::endl;
+
848  std::cout << "1000 transitions using 10 leapfrog steps per transition would take "
+
849  << 1e4 * deltaT << " seconds." << std::endl;
+
850  std::cout << "Adjust your expectations accordingly!" << std::endl << std::endl;
+
851  std::cout << std::endl;
+
852 
+
853  stan::io::mcmc_writer<Model> writer(output_stream, diagnostic_stream, &std::cout);
+
854 
+
855  // Sampling parameters
+
856  int num_warmup = dynamic_cast<int_argument*>(
+
857  parser.arg("method")->arg("sample")->arg("num_warmup"))->value();
+
858 
+
859  int num_samples = dynamic_cast<int_argument*>(
+
860  parser.arg("method")->arg("sample")->arg("num_samples"))->value();
+
861 
+
862  int num_thin = dynamic_cast<int_argument*>(
+
863  parser.arg("method")->arg("sample")->arg("thin"))->value();
+
864 
+
865  bool save_warmup = dynamic_cast<bool_argument*>(
+
866  parser.arg("method")->arg("sample")->arg("save_warmup"))->value();
+
867 
+
868  stan::mcmc::sample s(cont_params, 0, 0);
+
869 
+
870  double warmDeltaT;
+
871  double sampleDeltaT;
+
872 
+
873  // Sampler
+
874  stan::mcmc::base_mcmc* sampler_ptr = 0;
+
875 
+
876  list_argument* algo = dynamic_cast<list_argument*>
+
877  (parser.arg("method")->arg("sample")->arg("algorithm"));
+
878 
+
879  categorical_argument* adapt = dynamic_cast<categorical_argument*>(
+
880  parser.arg("method")->arg("sample")->arg("adapt"));
+
881  bool adapt_engaged = dynamic_cast<bool_argument*>(adapt->arg("engaged"))->value();
+
882 
+
883  if (algo->value() == "fixed_param") {
+
884 
+
885  sampler_ptr = new stan::mcmc::fixed_param_sampler();
+
886 
+
887  adapt_engaged = false;
+
888 
+
889  if (num_warmup != 0) {
+
890  std::cout << "Warning: warmup will be skipped for the fixed parameter sampler!" << std::endl;
+
891  num_warmup = 0;
+
892  }
+
893 
+
894  } else if (algo->value() == "rwm") {
+
895 
+
896  std::cout << algo->arg("rwm")->description() << std::endl;
+
897  return 0;
+
898 
+
899  } else if (algo->value() == "hmc") {
+
900 
+
901  int engine_index = 0;
+
902  list_argument* engine
+
903  = dynamic_cast<list_argument*>(algo->arg("hmc")->arg("engine"));
+
904  if (engine->value() == "static") {
+
905  engine_index = 0;
+
906  } else if (engine->value() == "nuts") {
+
907  engine_index = 1;
+
908  }
+
909 
+
910  int metric_index = 0;
+
911  list_argument* metric
+
912  = dynamic_cast<list_argument*>(algo->arg("hmc")->arg("metric"));
+
913  if (metric->value() == "unit_e") {
+
914  metric_index = 0;
+
915  } else if (metric->value() == "diag_e") {
+
916  metric_index = 1;
+
917  } else if (metric->value() == "dense_e") {
+
918  metric_index = 2;
+
919  }
+
920 
+
921  int sampler_select = engine_index
+
922  + 10 * metric_index
+
923  + 100 * static_cast<int>(adapt_engaged);
+
924 
+
925  switch (sampler_select) {
+
926 
+
927  case 0: {
+ +
929  sampler_ptr = new sampler(model, base_rng, &std::cout, &std::cout);
+
930  if (!init_static_hmc<sampler>(sampler_ptr, algo)) return 0;
+
931  break;
+
932  }
+
933 
+
934  case 1: {
+ +
936  sampler_ptr = new sampler(model, base_rng, &std::cout, &std::cout);
+
937  if (!init_nuts<sampler>(sampler_ptr, algo)) return 0;
+
938  break;
+
939  }
+
940 
+
941  case 10: {
+ +
943  sampler_ptr = new sampler(model, base_rng, &std::cout, &std::cout);
+
944  if (!init_static_hmc<sampler>(sampler_ptr, algo)) return 0;
+
945  break;
+
946  }
+
947 
+
948  case 11: {
+ +
950  sampler_ptr = new sampler(model, base_rng, &std::cout, &std::cout);
+
951  if (!init_nuts<sampler>(sampler_ptr, algo)) return 0;
+
952  break;
+
953  }
+
954 
+
955  case 20: {
+ +
957  sampler_ptr = new sampler(model, base_rng, &std::cout, &std::cout);
+
958  if (!init_static_hmc<sampler>(sampler_ptr, algo)) return 0;
+
959  break;
+
960  }
+
961 
+
962  case 21: {
+ +
964  sampler_ptr = new sampler(model, base_rng, &std::cout, &std::cout);
+
965  if (!init_nuts<sampler>(sampler_ptr, algo)) return 0;
+
966  break;
+
967  }
+
968 
+
969  case 100: {
+ +
971  sampler_ptr = new sampler(model, base_rng, &std::cout, &std::cout);
+
972  if (!init_static_hmc<sampler>(sampler_ptr, algo)) return 0;
+
973  if (!init_adapt<sampler>(sampler_ptr, adapt, cont_params)) return 0;
+
974  break;
+
975  }
+
976 
+
977  case 101: {
+ +
979  sampler_ptr = new sampler(model, base_rng, &std::cout, &std::cout);
+
980  if (!init_nuts<sampler>(sampler_ptr, algo)) return 0;
+
981  if (!init_adapt<sampler>(sampler_ptr, adapt, cont_params)) return 0;
+
982  break;
+
983  }
+
984 
+
985  case 110: {
+ +
987  sampler_ptr = new sampler(model, base_rng, &std::cout, &std::cout);
+
988  if (!init_static_hmc<sampler>(sampler_ptr, algo)) return 0;
+
989  if (!init_windowed_adapt<sampler>(sampler_ptr, adapt, num_warmup, cont_params))
+
990  return 0;
+
991  break;
+
992  }
+
993 
+
994  case 111: {
+ +
996  sampler_ptr = new sampler(model, base_rng, &std::cout, &std::cout);
+
997  if (!init_nuts<sampler>(sampler_ptr, algo)) return 0;
+
998  if (!init_windowed_adapt<sampler>(sampler_ptr, adapt, num_warmup, cont_params))
+
999  return 0;
+
1000  break;
+
1001  }
+
1002 
+
1003  case 120: {
+ +
1005  sampler_ptr = new sampler(model, base_rng, &std::cout, &std::cout);
+
1006  if (!init_static_hmc<sampler>(sampler_ptr, algo)) return 0;
+
1007  if (!init_windowed_adapt<sampler>(sampler_ptr, adapt, num_warmup, cont_params))
+
1008  return 0;
+
1009  break;
+
1010  }
+
1011 
+
1012  case 121: {
+ +
1014  sampler_ptr = new sampler(model, base_rng, &std::cout, &std::cout);
+
1015  if (!init_nuts<sampler>(sampler_ptr, algo)) return 0;
+
1016  if (!init_windowed_adapt<sampler>(sampler_ptr, adapt, num_warmup, cont_params))
+
1017  return 0;
+
1018  break;
+
1019  }
+
1020 
+
1021  default:
+
1022  std::cout << "No sampler matching HMC specification!" << std::endl;
+
1023  return 0;
+
1024  }
+
1025 
+
1026  }
+
1027 
+
1028  // Headers
+
1029  writer.print_sample_names(s, sampler_ptr, model);
+
1030  writer.print_diagnostic_names(s, sampler_ptr, model);
+
1031 
+
1032  // Warm-Up
+
1033  clock_t start = clock();
+
1034 
+
1035  warmup<Model, rng_t>(sampler_ptr, num_warmup, num_samples, num_thin,
+
1036  refresh, save_warmup,
+
1037  writer,
+
1038  s, model, base_rng);
+
1039 
+
1040  clock_t end = clock();
+
1041  warmDeltaT = (double)(end - start) / CLOCKS_PER_SEC;
+
1042 
+
1043  if (adapt_engaged) {
+
1044  dynamic_cast<mcmc::base_adapter*>(sampler_ptr)->disengage_adaptation();
+
1045  writer.print_adapt_finish(sampler_ptr);
+
1046  }
+
1047 
+
1048  // Sampling
+
1049  start = clock();
+
1050 
+
1051  stan::gm::sample<Model, rng_t>(sampler_ptr, num_warmup, num_samples, num_thin,
+
1052  refresh, true,
+
1053  writer,
+
1054  s, model, base_rng);
+
1055 
+
1056  end = clock();
+
1057  sampleDeltaT = (double)(end - start) / CLOCKS_PER_SEC;
+
1058 
+
1059  writer.print_timing(warmDeltaT, sampleDeltaT);
+
1060 
+
1061  if (sampler_ptr) delete sampler_ptr;
+
1062 
+
1063  }
+
1064 
+
1065  if (output_stream) {
+
1066  output_stream->close();
+
1067  delete output_stream;
+
1068  }
+
1069 
+
1070  if (diagnostic_stream) {
+
1071  diagnostic_stream->close();
+
1072  delete diagnostic_stream;
+
1073  }
+
1074 
+
1075  for (size_t i = 0; i < valid_arguments.size(); ++i)
+
1076  delete valid_arguments.at(i);
+
1077 
+
1078  return 0;
+
1079 
+
1080  }
+
1081 
+
1082  } // namespace gm
+
1083 
+
1084 } // namespace stan
+
1085 
+
1086 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/common__adaptors__def_8hpp.html b/doc/api/html/common__adaptors__def_8hpp.html new file mode 100644 index 00000000000..ebd7d8f0aac --- /dev/null +++ b/doc/api/html/common__adaptors__def_8hpp.html @@ -0,0 +1,111 @@ + + + + + +Stan: src/stan/gm/grammars/common_adaptors_def.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
common_adaptors_def.hpp File Reference
+
+
+
#include <boost/fusion/include/adapt_struct.hpp>
+#include <stan/gm/ast.hpp>
+
+

Go to the source code of this file.

+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/common__adaptors__def_8hpp_source.html b/doc/api/html/common__adaptors__def_8hpp_source.html new file mode 100644 index 00000000000..6b07e68cfc2 --- /dev/null +++ b/doc/api/html/common__adaptors__def_8hpp_source.html @@ -0,0 +1,120 @@ + + + + + +Stan: src/stan/gm/grammars/common_adaptors_def.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
common_adaptors_def.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__GM__PARSER__COMMON_ADAPTORS_DEF__HPP__
+
2 #define __STAN__GM__PARSER__COMMON_ADAPTORS_DEF__HPP__
+
3 
+
4 #include <boost/fusion/include/adapt_struct.hpp>
+
5 
+
6 #include <stan/gm/ast.hpp>
+
7 
+ + +
10  (stan::gm::expression, high_) )
+
11 
+
12 
+
13 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/common__type_8hpp.html b/doc/api/html/common__type_8hpp.html new file mode 100644 index 00000000000..aa2c85c66af --- /dev/null +++ b/doc/api/html/common__type_8hpp.html @@ -0,0 +1,134 @@ + + + + + +Stan: src/stan/math/matrix/common_type.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
common_type.hpp File Reference
+
+
+
#include <vector>
+#include <stan/math/matrix/Eigen.hpp>
+#include <boost/math/tools/promotion.hpp>
+
+

Go to the source code of this file.

+ + + + + + + + +

+Classes

struct  stan::math::common_type< T1, T2 >
 
struct  stan::math::common_type< std::vector< T1 >, std::vector< T2 > >
 
struct  stan::math::common_type< Eigen::Matrix< T1, R, C >, Eigen::Matrix< T2, R, C > >
 
+ + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::math
 Matrices and templated mathematical functions.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/common__type_8hpp_source.html b/doc/api/html/common__type_8hpp_source.html new file mode 100644 index 00000000000..1e2efb76c11 --- /dev/null +++ b/doc/api/html/common__type_8hpp_source.html @@ -0,0 +1,138 @@ + + + + + +Stan: src/stan/math/matrix/common_type.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
common_type.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MATH__MATRIX__COMMON_TYPE_HPP__
+
2 #define __STAN__MATH__MATRIX__COMMON_TYPE_HPP__
+
3 
+
4 #include <vector>
+ +
6 #include <boost/math/tools/promotion.hpp>
+
7 
+
8 namespace stan {
+
9 
+
10  namespace math {
+
11 
+
12  template <typename T1, typename T2>
+
13  struct common_type {
+
14  typedef typename boost::math::tools::promote_args<T1,T2>::type type;
+
15  };
+
16 
+
17  template <typename T1, typename T2>
+
18  struct common_type<std::vector<T1>, std::vector<T2> > {
+
19  typedef std::vector<typename common_type<T1,T2>::type> type;
+
20  };
+
21 
+
22  template <typename T1, typename T2, int R, int C>
+
23  struct common_type<Eigen::Matrix<T1,R,C>, Eigen::Matrix<T2,R,C> > {
+
24  typedef Eigen::Matrix<typename common_type<T1,T2>::type,R,C> type;
+
25  };
+
26 
+
27  }
+
28 }
+
29 
+
30 
+
31 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/compiler_8hpp.html b/doc/api/html/compiler_8hpp.html new file mode 100644 index 00000000000..725f202e644 --- /dev/null +++ b/doc/api/html/compiler_8hpp.html @@ -0,0 +1,133 @@ + + + + + +Stan: src/stan/gm/compiler.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
compiler.hpp File Reference
+
+
+
#include <stan/gm/ast.hpp>
+#include <stan/gm/generator.hpp>
+#include <stan/gm/parser.hpp>
+#include <iostream>
+#include <string>
+
+

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::gm
 Directed graphical model compiler.
 
+ + + + +

+Functions

bool stan::gm::compile (std::ostream *msgs, std::istream &stan_gm_in, std::ostream &cpp_out, const std::string &model_name, bool include_main=true, const std::string &in_file_name="input")
 Read a Stan model specification from the specified input, parse it, and write the C++ code for it to the specified output.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/compiler_8hpp_source.html b/doc/api/html/compiler_8hpp_source.html new file mode 100644 index 00000000000..60f9dda6de4 --- /dev/null +++ b/doc/api/html/compiler_8hpp_source.html @@ -0,0 +1,141 @@ + + + + + +Stan: src/stan/gm/compiler.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
compiler.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__GM__COMPILER_HPP__
+
2 #define __STAN__GM__COMPILER_HPP__
+
3 
+
4 #include <stan/gm/ast.hpp>
+
5 #include <stan/gm/generator.hpp>
+
6 #include <stan/gm/parser.hpp>
+
7 
+
8 #include <iostream>
+
9 #include <string>
+
10 
+
11 namespace stan {
+
12 
+
13  namespace gm {
+
14 
+
38  bool compile(std::ostream* msgs, // for warnings
+
39  std::istream& stan_gm_in,
+
40  std::ostream& cpp_out,
+
41  const std::string& model_name,
+
42  bool include_main = true,
+
43  const std::string& in_file_name = "input") {
+
44  program prog;
+
45  bool parsed_ok = parse(msgs,stan_gm_in,in_file_name,model_name,prog);
+
46  if (!parsed_ok)
+
47  return false; // syntax error in program
+
48  generate_cpp(prog,model_name,cpp_out,include_main);
+
49  return true;
+
50  }
+
51 
+
52 
+
53  }
+
54 
+
55 }
+
56 
+
57 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/constraint__tolerance_8hpp.html b/doc/api/html/constraint__tolerance_8hpp.html new file mode 100644 index 00000000000..5effe519d47 --- /dev/null +++ b/doc/api/html/constraint__tolerance_8hpp.html @@ -0,0 +1,128 @@ + + + + + +Stan: src/stan/math/error_handling/matrix/constraint_tolerance.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
constraint_tolerance.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::math
 Matrices and templated mathematical functions.
 
+ + + + +

+Variables

const double stan::math::CONSTRAINT_TOLERANCE = 1E-8
 The tolerance for checking arithmetic bounds In rank and in simplexes.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/constraint__tolerance_8hpp_source.html b/doc/api/html/constraint__tolerance_8hpp_source.html new file mode 100644 index 00000000000..4669e7e7de9 --- /dev/null +++ b/doc/api/html/constraint__tolerance_8hpp_source.html @@ -0,0 +1,118 @@ + + + + + +Stan: src/stan/math/error_handling/matrix/constraint_tolerance.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
constraint_tolerance.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MATH__ERROR_HANDLING__MATRIX__CONSTRAINT_TOLERANCE_HPP__
+
2 #define __STAN__MATH__ERROR_HANDLING__MATRIX__CONSTRAINT_TOLERANCE_HPP__
+
3 
+
4 namespace stan {
+
5  namespace math {
+
6 
+
11  const double CONSTRAINT_TOLERANCE = 1E-8;
+
12 
+
13  }
+
14 }
+
15 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/covar__adaptation_8hpp.html b/doc/api/html/covar__adaptation_8hpp.html new file mode 100644 index 00000000000..094b9d6302f --- /dev/null +++ b/doc/api/html/covar__adaptation_8hpp.html @@ -0,0 +1,131 @@ + + + + + +Stan: src/stan/mcmc/covar_adaptation.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
covar_adaptation.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + +

+Classes

class  stan::mcmc::covar_adaptation
 
+ + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::mcmc
 Markov chain Monte Carlo samplers.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/covar__adaptation_8hpp_source.html b/doc/api/html/covar__adaptation_8hpp_source.html new file mode 100644 index 00000000000..ca37281e4a8 --- /dev/null +++ b/doc/api/html/covar__adaptation_8hpp_source.html @@ -0,0 +1,163 @@ + + + + + +Stan: src/stan/mcmc/covar_adaptation.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
covar_adaptation.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MCMC__COVAR__ADAPTATION__BETA__
+
2 #define __STAN__MCMC__COVAR__ADAPTATION__BETA__
+
3 
+
4 #include <vector>
+ +
6 
+ + +
9 
+
10 namespace stan {
+
11 
+
12  namespace mcmc {
+
13 
+ +
15 
+
16  public:
+
17 
+
18  covar_adaptation(int n): windowed_adaptation("covariance"), _estimator(n) {}
+
19 
+
20  bool learn_covariance(Eigen::MatrixXd& covar, const Eigen::VectorXd& q) {
+
21 
+ +
23 
+
24  if (end_adaptation_window()) {
+
25 
+ +
27 
+ +
29 
+
30  double n = static_cast<double>(_estimator.num_samples());
+
31  covar = (n / (n + 5.0)) * covar
+
32  + 1e-3 * (5.0 / (n + 5.0)) * Eigen::MatrixXd::Identity(covar.rows(), covar.cols());
+
33 
+ +
35 
+ +
37  return true;
+
38 
+
39  }
+
40 
+ +
42  return false;
+
43 
+
44  }
+
45 
+
46  protected:
+
47 
+ +
49 
+
50  };
+
51 
+
52  } // mcmc
+
53 
+
54 } // stan
+
55 
+
56 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/csv__writer_8hpp.html b/doc/api/html/csv__writer_8hpp.html new file mode 100644 index 00000000000..365817a2dbf --- /dev/null +++ b/doc/api/html/csv__writer_8hpp.html @@ -0,0 +1,132 @@ + + + + + +Stan: src/stan/io/csv_writer.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
csv_writer.hpp File Reference
+
+
+
#include <stan/math/matrix.hpp>
+#include <ostream>
+#include <limits>
+#include <iomanip>
+
+

Go to the source code of this file.

+ + + + + +

+Classes

class  stan::io::csv_writer
 Writes Stan variables in comma-separated-value format to an output stream. More...
 
+ + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::io
 Input/output utilities.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/csv__writer_8hpp_source.html b/doc/api/html/csv__writer_8hpp_source.html new file mode 100644 index 00000000000..3f57460bd39 --- /dev/null +++ b/doc/api/html/csv__writer_8hpp_source.html @@ -0,0 +1,197 @@ + + + + + +Stan: src/stan/io/csv_writer.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
csv_writer.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__IO__CSV_WRITER_HPP__
+
2 #define __STAN__IO__CSV_WRITER_HPP__
+
3 
+
4 #include <stan/math/matrix.hpp>
+
5 #include <ostream>
+
6 #include <limits>
+
7 #include <iomanip>
+
8 
+
9 namespace stan {
+
10 
+
11  namespace io {
+
12 
+
21  class csv_writer {
+
22  private:
+
23  std::ostream& o_;
+
24  bool at_bol_;
+
25 
+
26  public:
+
27 
+
34  void comma() {
+
35  if (at_bol_) {
+
36  at_bol_ = false;
+
37  return;
+
38  }
+
39  o_ << ",";
+
40  }
+
41 
+
42 
+
49  csv_writer(std::ostream& o)
+
50  : o_(o), at_bol_(true) {
+
51  }
+
52 
+
61  void newline() {
+
62  o_ << "\n";
+
63  at_bol_ = true;
+
64  }
+
65 
+
74  void write(int n) {
+
75  comma();
+
76  o_ << n;
+
77  }
+
78 
+
87  void write(double x) {
+
88  comma();
+
89  o_ << std::setprecision (std::numeric_limits<double>::digits10 + 1) << x;
+
90  }
+
91 
+
100  template<int R, int C>
+
101  void write_row_major(const Eigen::Matrix<double,R,C>& m) {
+ +
103  for (size_type i = 0; i < m.rows(); ++i)
+
104  for (size_type j = 0; j < m.cols(); ++j)
+
105  write(m(i,j));
+
106  }
+
107 
+
116  template<int R, int C>
+
117  void write_col_major(const Eigen::Matrix<double,R,C>& m) {
+ +
119  for (size_type j = 0; j < m.cols(); ++j)
+
120  for (size_type i = 0; i < m.rows(); ++i)
+
121  write(m(i,j));
+
122  }
+
123 
+
124  template<int R, int C>
+
125  void write(const Eigen::Matrix<double,R,C>& m) {
+
126  write_col_major(m);
+
127  }
+
128 
+
138  void write(const std::string& s) {
+
139  comma();
+
140 
+
141  o_ << '"';
+
142  for (size_t i = 0; i < s.size(); ++i) {
+
143  if (s.at(i) == '"') {
+
144  o_ << '"' << '"'; // double quotes
+
145  } else {
+
146  o_ << s.at(i);
+
147  }
+
148  }
+
149  o_ << '"';
+
150  }
+
151 
+
152 
+
153  };
+
154 
+
155  }
+
156 
+
157 }
+
158 
+
159 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/cumulative__sum_8hpp.html b/doc/api/html/cumulative__sum_8hpp.html new file mode 100644 index 00000000000..2a1692c53be --- /dev/null +++ b/doc/api/html/cumulative__sum_8hpp.html @@ -0,0 +1,135 @@ + + + + + +Stan: src/stan/math/matrix/cumulative_sum.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
cumulative_sum.hpp File Reference
+
+
+
#include <vector>
+#include <stan/math/matrix/Eigen.hpp>
+
+

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::math
 Matrices and templated mathematical functions.
 
+ + + + + + + + + +

+Functions

template<typename T >
std::vector< T > stan::math::cumulative_sum (const std::vector< T > &x)
 Return the cumulative sum of the specified vector.
 
template<typename T , int R, int C>
Eigen::Matrix< T, R, C > stan::math::cumulative_sum (const Eigen::Matrix< T, R, C > &m)
 Return the cumulative sum of the specified matrix.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/cumulative__sum_8hpp_source.html b/doc/api/html/cumulative__sum_8hpp_source.html new file mode 100644 index 00000000000..000b78ee7d0 --- /dev/null +++ b/doc/api/html/cumulative__sum_8hpp_source.html @@ -0,0 +1,142 @@ + + + + + +Stan: src/stan/math/matrix/cumulative_sum.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
cumulative_sum.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MATH__MATRIX__CUMULATIVE_SUM_HPP__
+
2 #define __STAN__MATH__MATRIX__CUMULATIVE_SUM_HPP__
+
3 
+
4 #include <vector>
+ +
6 
+
7 namespace stan {
+
8  namespace math {
+
9 
+
21  template <typename T>
+
22  inline std::vector<T>
+
23  cumulative_sum(const std::vector<T>& x) {
+
24  std::vector<T> result(x.size());
+
25  if (x.size() == 0)
+
26  return result;
+
27  result[0] = x[0];
+
28  for (size_t i = 1; i < result.size(); ++i)
+
29  result[i] = x[i] + result[i-1];
+
30  return result;
+
31  }
+
32 
+
47  template <typename T, int R, int C>
+
48  inline Eigen::Matrix<T,R,C>
+
49  cumulative_sum(const Eigen::Matrix<T,R,C>& m) {
+
50  Eigen::Matrix<T,R,C> result(m.rows(),m.cols());
+
51  if (m.size() == 0)
+
52  return result;
+
53  result(0) = m(0);
+
54  for (int i = 1; i < result.size(); ++i)
+
55  result(i) = m(i) + result(i-1);
+
56  return result;
+
57  }
+
58  }
+
59 }
+
60 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/ddv__vari_8hpp.html b/doc/api/html/ddv__vari_8hpp.html new file mode 100644 index 00000000000..7134d21c2b1 --- /dev/null +++ b/doc/api/html/ddv__vari_8hpp.html @@ -0,0 +1,128 @@ + + + + + +Stan: src/stan/agrad/rev/internal/ddv_vari.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
ddv_vari.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + +

+Classes

class  stan::agrad::op_ddv_vari
 
+ + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/ddv__vari_8hpp_source.html b/doc/api/html/ddv__vari_8hpp_source.html new file mode 100644 index 00000000000..84e949ffdef --- /dev/null +++ b/doc/api/html/ddv__vari_8hpp_source.html @@ -0,0 +1,132 @@ + + + + + +Stan: src/stan/agrad/rev/internal/ddv_vari.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
ddv_vari.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__REV__INTERNAL__DDV_VARI_HPP__
+
2 #define __STAN__AGRAD__REV__INTERNAL__DDV_VARI_HPP__
+
3 
+ +
5 
+
6 namespace stan {
+
7  namespace agrad {
+
8 
+
9  class op_ddv_vari : public vari {
+
10  protected:
+
11  double ad_;
+
12  double bd_;
+ +
14  public:
+
15  op_ddv_vari(double f, double a, double b, vari* cvi) :
+
16  vari(f),
+
17  ad_(a),
+
18  bd_(b),
+
19  cvi_(cvi) {
+
20  }
+
21  };
+
22 
+
23  }
+
24 }
+
25 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/dense__e__metric_8hpp.html b/doc/api/html/dense__e__metric_8hpp.html new file mode 100644 index 00000000000..31f6e848372 --- /dev/null +++ b/doc/api/html/dense__e__metric_8hpp.html @@ -0,0 +1,133 @@ + + + + + +Stan: src/stan/mcmc/hmc/hamiltonians/dense_e_metric.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
dense_e_metric.hpp File Reference
+
+
+
#include <boost/random/variate_generator.hpp>
+#include <boost/random/normal_distribution.hpp>
+#include <stan/math/matrix/Eigen.hpp>
+#include <Eigen/Cholesky>
+#include <stan/mcmc/hmc/hamiltonians/base_hamiltonian.hpp>
+#include <stan/mcmc/hmc/hamiltonians/dense_e_point.hpp>
+
+

Go to the source code of this file.

+ + + + +

+Classes

class  stan::mcmc::dense_e_metric< M, BaseRNG >
 
+ + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::mcmc
 Markov chain Monte Carlo samplers.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/dense__e__metric_8hpp_source.html b/doc/api/html/dense__e__metric_8hpp_source.html new file mode 100644 index 00000000000..53ae741b44f --- /dev/null +++ b/doc/api/html/dense__e__metric_8hpp_source.html @@ -0,0 +1,174 @@ + + + + + +Stan: src/stan/mcmc/hmc/hamiltonians/dense_e_metric.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
dense_e_metric.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MCMC__DENSE__E__METRIC__BETA__
+
2 #define __STAN__MCMC__DENSE__E__METRIC__BETA__
+
3 
+
4 #include <boost/random/variate_generator.hpp>
+
5 #include <boost/random/normal_distribution.hpp>
+
6 
+ +
8 #include <Eigen/Cholesky>
+
9 
+ + +
12 
+
13 namespace stan {
+
14 
+
15  namespace mcmc {
+
16 
+
17  // Euclidean manifold with dense metric
+
18  template <typename M, typename BaseRNG>
+
19  class dense_e_metric: public base_hamiltonian<M, dense_e_point, BaseRNG> {
+
20 
+
21  public:
+
22 
+
23  dense_e_metric(M& m, std::ostream* e):
+
24  base_hamiltonian<M, dense_e_point, BaseRNG>(m, e) {};
+ +
26 
+
27  double T(dense_e_point& z) {
+
28  return 0.5 * z.p.transpose() * z.mInv * z.p;
+
29  }
+
30 
+
31  double tau(dense_e_point& z) { return T(z); }
+
32  double phi(dense_e_point& z) { return this->V(z); }
+
33 
+
34  const Eigen::VectorXd dtau_dq(dense_e_point& z) {
+
35  return Eigen::VectorXd::Zero(this->_model.num_params_r());
+
36  }
+
37 
+
38  const Eigen::VectorXd dtau_dp(dense_e_point& z) {
+
39  return z.mInv * z.p;
+
40  }
+
41 
+
42  const Eigen::VectorXd dphi_dq(dense_e_point& z) {
+
43  return z.g;
+
44  }
+
45 
+
46  void sample_p(dense_e_point& z, BaseRNG& rng) {
+
47 
+
48  boost::variate_generator<BaseRNG&, boost::normal_distribution<> >
+
49  _rand_dense_gaus(rng, boost::normal_distribution<>());
+
50 
+
51  Eigen::VectorXd u(z.p.size());
+
52 
+
53  for (Eigen::VectorXd::size_type i = 0; i < u.size(); ++i)
+
54  u(i) = _rand_dense_gaus();
+
55 
+
56  z.p = z.mInv.llt().matrixL().solve(u);
+
57 
+
58  }
+
59 
+
60  };
+
61 
+
62  } // mcmc
+
63 
+
64 } // stan
+
65 
+
66 
+
67 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/dense__e__nuts_8hpp.html b/doc/api/html/dense__e__nuts_8hpp.html new file mode 100644 index 00000000000..e5dfa4d5de6 --- /dev/null +++ b/doc/api/html/dense__e__nuts_8hpp.html @@ -0,0 +1,131 @@ + + + + + +Stan: src/stan/mcmc/hmc/nuts/dense_e_nuts.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
dense_e_nuts.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + +

+Classes

class  stan::mcmc::dense_e_nuts< M, BaseRNG >
 
+ + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::mcmc
 Markov chain Monte Carlo samplers.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/dense__e__nuts_8hpp_source.html b/doc/api/html/dense__e__nuts_8hpp_source.html new file mode 100644 index 00000000000..9db1c2a1117 --- /dev/null +++ b/doc/api/html/dense__e__nuts_8hpp_source.html @@ -0,0 +1,151 @@ + + + + + +Stan: src/stan/mcmc/hmc/nuts/dense_e_nuts.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
dense_e_nuts.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MCMC__DENSE__E__NUTS__BETA__
+
2 #define __STAN__MCMC__DENSE__E__NUTS__BETA__
+
3 
+ + + + +
8 
+
9 namespace stan {
+
10 
+
11  namespace mcmc {
+
12 
+
13  // The No-U-Turn Sampler (NUTS) on a
+
14  // Euclidean manifold with dense metric
+
15 
+
16  template <typename M, class BaseRNG>
+
17  class dense_e_nuts: public base_nuts<M,
+
18  dense_e_point,
+
19  dense_e_metric,
+
20  expl_leapfrog,
+
21  BaseRNG> {
+
22 
+
23  public:
+
24 
+
25  dense_e_nuts(M &m, BaseRNG& rng, std::ostream* o = &std::cout, std::ostream* e = 0):
+
26  base_nuts<M, dense_e_point, dense_e_metric, expl_leapfrog, BaseRNG>(m, rng, o, e)
+
27  { this->_name = "NUTS with a dense Euclidean metric"; }
+
28 
+
29  // Note that the points don't need to be swapped
+
30  // here since start.mInv = finish.mInv
+ +
32  dense_e_point& finish,
+
33  Eigen::VectorXd& rho) {
+
34  return finish.p.transpose() * finish.mInv * (rho - finish.p) > 0
+
35  && start.p.transpose() * finish.mInv * (rho - start.p) > 0;
+
36  }
+
37 
+
38  };
+
39 
+
40  } // mcmc
+
41 
+
42 } // stan
+
43 
+
44 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/dense__e__point_8hpp.html b/doc/api/html/dense__e__point_8hpp.html new file mode 100644 index 00000000000..b9f342e4994 --- /dev/null +++ b/doc/api/html/dense__e__point_8hpp.html @@ -0,0 +1,128 @@ + + + + + +Stan: src/stan/mcmc/hmc/hamiltonians/dense_e_point.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
dense_e_point.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + +

+Classes

class  stan::mcmc::dense_e_point
 
+ + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::mcmc
 Markov chain Monte Carlo samplers.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/dense__e__point_8hpp_source.html b/doc/api/html/dense__e__point_8hpp_source.html new file mode 100644 index 00000000000..d9ce5cc0478 --- /dev/null +++ b/doc/api/html/dense__e__point_8hpp_source.html @@ -0,0 +1,151 @@ + + + + + +Stan: src/stan/mcmc/hmc/hamiltonians/dense_e_point.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
dense_e_point.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MCMC__DENSE__E__POINT__BETA__
+
2 #define __STAN__MCMC__DENSE__E__POINT__BETA__
+
3 
+ +
5 
+
6 namespace stan {
+
7 
+
8  namespace mcmc {
+
9 
+
10  // Point in a phase space with a base
+
11  // Euclidean manifold with dense metric
+
12  class dense_e_point: public ps_point {
+
13 
+
14  public:
+
15 
+
16  dense_e_point(int n): ps_point(n), mInv(n, n) {
+
17  mInv.setIdentity();
+
18  };
+
19 
+
20  Eigen::MatrixXd mInv;
+
21 
+ +
23  _fast_matrix_copy<double>(mInv, z.mInv);
+
24  }
+
25 
+
26  void write_metric(std::ostream* o) {
+
27  if(!o) return;
+
28  *o << "# Elements of inverse mass matrix:" << std::endl;
+
29  for(int i = 0; i < mInv.rows(); ++i) {
+
30  *o << "# " << mInv(i, 0) << std::flush;
+
31  for(int j = 1; j < mInv.cols(); ++j)
+
32  *o << ", " << mInv(i, j) << std::flush;
+
33  *o << std::endl;
+
34  }
+
35  };
+
36 
+
37  };
+
38 
+
39  } // mcmc
+
40 
+
41 } // stan
+
42 
+
43 
+
44 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/dense__e__static__hmc_8hpp.html b/doc/api/html/dense__e__static__hmc_8hpp.html new file mode 100644 index 00000000000..3659aa8332e --- /dev/null +++ b/doc/api/html/dense__e__static__hmc_8hpp.html @@ -0,0 +1,131 @@ + + + + + +Stan: src/stan/mcmc/hmc/static/dense_e_static_hmc.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
dense_e_static_hmc.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + +

+Classes

class  stan::mcmc::dense_e_static_hmc< M, BaseRNG >
 
+ + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::mcmc
 Markov chain Monte Carlo samplers.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/dense__e__static__hmc_8hpp_source.html b/doc/api/html/dense__e__static__hmc_8hpp_source.html new file mode 100644 index 00000000000..4c5a3e89e0a --- /dev/null +++ b/doc/api/html/dense__e__static__hmc_8hpp_source.html @@ -0,0 +1,145 @@ + + + + + +Stan: src/stan/mcmc/hmc/static/dense_e_static_hmc.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
dense_e_static_hmc.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MCMC__DENSE__E__STATIC__HMC__BETA__
+
2 #define __STAN__MCMC__DENSE__E__STATIC__HMC__BETA__
+
3 
+ + + + +
8 
+
9 namespace stan {
+
10 
+
11  namespace mcmc {
+
12 
+
13  // Hamiltonian Monte Carlo on a
+
14  // Euclidean manifold with dense metric
+
15  // and static integration time
+
16 
+
17  template <typename M, class BaseRNG>
+ +
19  dense_e_point,
+
20  dense_e_metric,
+
21  expl_leapfrog,
+
22  BaseRNG> {
+
23 
+
24  public:
+
25 
+
26  dense_e_static_hmc(M &m, BaseRNG& rng, std::ostream* o = &std::cout, std::ostream* e = 0):
+ +
28  { this->_name = "Static HMC with a dense Euclidean metric"; }
+
29 
+
30 
+
31  };
+
32 
+
33  } // mcmc
+
34 
+
35 } // stan
+
36 
+
37 
+
38 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/diag__e__metric_8hpp.html b/doc/api/html/diag__e__metric_8hpp.html new file mode 100644 index 00000000000..522fa726206 --- /dev/null +++ b/doc/api/html/diag__e__metric_8hpp.html @@ -0,0 +1,131 @@ + + + + + +Stan: src/stan/mcmc/hmc/hamiltonians/diag_e_metric.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
diag_e_metric.hpp File Reference
+
+
+
#include <boost/random/variate_generator.hpp>
+#include <boost/random/normal_distribution.hpp>
+#include <stan/mcmc/hmc/hamiltonians/base_hamiltonian.hpp>
+#include <stan/mcmc/hmc/hamiltonians/diag_e_point.hpp>
+
+

Go to the source code of this file.

+ + + + +

+Classes

class  stan::mcmc::diag_e_metric< M, BaseRNG >
 
+ + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::mcmc
 Markov chain Monte Carlo samplers.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/diag__e__metric_8hpp_source.html b/doc/api/html/diag__e__metric_8hpp_source.html new file mode 100644 index 00000000000..9170a3bd429 --- /dev/null +++ b/doc/api/html/diag__e__metric_8hpp_source.html @@ -0,0 +1,167 @@ + + + + + +Stan: src/stan/mcmc/hmc/hamiltonians/diag_e_metric.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
diag_e_metric.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MCMC__DIAG__E__METRIC__BETA__
+
2 #define __STAN__MCMC__DIAG__E__METRIC__BETA__
+
3 
+
4 #include <boost/random/variate_generator.hpp>
+
5 #include <boost/random/normal_distribution.hpp>
+
6 
+ + +
9 
+
10 namespace stan {
+
11 
+
12  namespace mcmc {
+
13 
+
14  // Euclidean manifold with diagonal metric
+
15  template <typename M, typename BaseRNG>
+
16  class diag_e_metric: public base_hamiltonian<M, diag_e_point, BaseRNG> {
+
17 
+
18  public:
+
19 
+
20  diag_e_metric(M& m, std::ostream* e):
+
21  base_hamiltonian<M, diag_e_point, BaseRNG>(m, e) {};
+ +
23 
+
24  double T(diag_e_point& z) {
+
25  return 0.5 * z.p.dot( z.mInv.cwiseProduct(z.p) );
+
26  }
+
27 
+
28  double tau(diag_e_point& z) { return T(z); }
+
29  double phi(diag_e_point& z) { return this->V(z); }
+
30 
+
31  const Eigen::VectorXd dtau_dq(diag_e_point& z) {
+
32  return Eigen::VectorXd::Zero(this->_model.num_params_r());
+
33  }
+
34 
+
35  const Eigen::VectorXd dtau_dp(diag_e_point& z) {
+
36  return z.mInv.cwiseProduct(z.p);
+
37  }
+
38 
+
39  const Eigen::VectorXd dphi_dq(diag_e_point& z) {
+
40  return z.g;
+
41  }
+
42 
+
43  void sample_p(diag_e_point& z, BaseRNG& rng) {
+
44 
+
45  boost::variate_generator<BaseRNG&, boost::normal_distribution<> >
+
46  _rand_diag_gaus(rng, boost::normal_distribution<>());
+
47 
+
48  for (int i = 0; i < z.p.size(); ++i)
+
49  z.p(i) = _rand_diag_gaus() / sqrt(z.mInv(i));
+
50 
+
51  }
+
52 
+
53  };
+
54 
+
55  } // mcmc
+
56 
+
57 } // stan
+
58 
+
59 
+
60 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/diag__e__nuts_8hpp.html b/doc/api/html/diag__e__nuts_8hpp.html new file mode 100644 index 00000000000..70c62edf1cc --- /dev/null +++ b/doc/api/html/diag__e__nuts_8hpp.html @@ -0,0 +1,131 @@ + + + + + +Stan: src/stan/mcmc/hmc/nuts/diag_e_nuts.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
diag_e_nuts.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + +

+Classes

class  stan::mcmc::diag_e_nuts< M, BaseRNG >
 
+ + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::mcmc
 Markov chain Monte Carlo samplers.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/diag__e__nuts_8hpp_source.html b/doc/api/html/diag__e__nuts_8hpp_source.html new file mode 100644 index 00000000000..ed80b561aea --- /dev/null +++ b/doc/api/html/diag__e__nuts_8hpp_source.html @@ -0,0 +1,151 @@ + + + + + +Stan: src/stan/mcmc/hmc/nuts/diag_e_nuts.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
diag_e_nuts.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MCMC__DIAG__E__NUTS__BETA__
+
2 #define __STAN__MCMC__DIAG__E__NUTS__BETA__
+
3 
+ + + + +
8 
+
9 namespace stan {
+
10 
+
11  namespace mcmc {
+
12 
+
13  // The No-U-Turn Sampler (NUTS) on a
+
14  // Euclidean manifold with diagonal metric
+
15 
+
16  template <typename M, class BaseRNG>
+
17  class diag_e_nuts: public base_nuts<M,
+
18  diag_e_point,
+
19  diag_e_metric,
+
20  expl_leapfrog,
+
21  BaseRNG> {
+
22 
+
23  public:
+
24 
+
25  diag_e_nuts(M &m, BaseRNG& rng, std::ostream* o = &std::cout, std::ostream* e = 0):
+
26  base_nuts<M, diag_e_point, diag_e_metric, expl_leapfrog, BaseRNG>(m, rng, o, e)
+
27  { this->_name = "NUTS with a diagonal Euclidean metric"; }
+
28 
+
29  // Note that the points don't need to be swapped
+
30  // here since start.mInv = finish.mInv
+ +
32  diag_e_point& finish,
+
33  Eigen::VectorXd& rho) {
+
34  return finish.mInv.cwiseProduct(finish.p).dot(rho - finish.p) > 0
+
35  && finish.mInv.cwiseProduct(start.p).dot(rho - start.p) > 0;
+
36  }
+
37 
+
38  };
+
39 
+
40  } // mcmc
+
41 
+
42 } // stan
+
43 
+
44 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/diag__e__point_8hpp.html b/doc/api/html/diag__e__point_8hpp.html new file mode 100644 index 00000000000..30fb4131583 --- /dev/null +++ b/doc/api/html/diag__e__point_8hpp.html @@ -0,0 +1,128 @@ + + + + + +Stan: src/stan/mcmc/hmc/hamiltonians/diag_e_point.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
diag_e_point.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + +

+Classes

class  stan::mcmc::diag_e_point
 
+ + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::mcmc
 Markov chain Monte Carlo samplers.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/diag__e__point_8hpp_source.html b/doc/api/html/diag__e__point_8hpp_source.html new file mode 100644 index 00000000000..7bc22dc1c54 --- /dev/null +++ b/doc/api/html/diag__e__point_8hpp_source.html @@ -0,0 +1,149 @@ + + + + + +Stan: src/stan/mcmc/hmc/hamiltonians/diag_e_point.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
diag_e_point.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MCMC__DIAG__E__POINT__BETA__
+
2 #define __STAN__MCMC__DIAG__E__POINT__BETA__
+
3 
+ +
5 
+
6 namespace stan {
+
7 
+
8  namespace mcmc {
+
9 
+
10  // Point in a phase space with a base
+
11  // Euclidean manifold with diagonal metric
+
12  class diag_e_point: public ps_point {
+
13 
+
14  public:
+
15 
+
16  diag_e_point(int n): ps_point(n), mInv(n) {
+
17  mInv.setOnes();
+
18  };
+
19 
+
20  Eigen::VectorXd mInv;
+
21 
+ +
23  _fast_vector_copy<double>(mInv, z.mInv);
+
24  }
+
25 
+
26  void write_metric(std::ostream* o) {
+
27  if(!o) return;
+
28  *o << "# Diagonal elements of inverse mass matrix:" << std::endl;
+
29  *o << "# " << mInv(0) << std::flush;
+
30  for (int i = 1; i < mInv.size(); ++i)
+
31  *o << ", " << mInv(i) << std::flush;
+
32  *o << std::endl;
+
33  };
+
34 
+
35  };
+
36 
+
37  } // mcmc
+
38 
+
39 } // stan
+
40 
+
41 
+
42 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/diag__e__static__hmc_8hpp.html b/doc/api/html/diag__e__static__hmc_8hpp.html new file mode 100644 index 00000000000..0c639a10586 --- /dev/null +++ b/doc/api/html/diag__e__static__hmc_8hpp.html @@ -0,0 +1,131 @@ + + + + + +Stan: src/stan/mcmc/hmc/static/diag_e_static_hmc.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
diag_e_static_hmc.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + +

+Classes

class  stan::mcmc::diag_e_static_hmc< M, BaseRNG >
 
+ + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::mcmc
 Markov chain Monte Carlo samplers.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/diag__e__static__hmc_8hpp_source.html b/doc/api/html/diag__e__static__hmc_8hpp_source.html new file mode 100644 index 00000000000..4aa0316350f --- /dev/null +++ b/doc/api/html/diag__e__static__hmc_8hpp_source.html @@ -0,0 +1,145 @@ + + + + + +Stan: src/stan/mcmc/hmc/static/diag_e_static_hmc.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
diag_e_static_hmc.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MCMC__DIAG__E__STATIC__HMC__BETA__
+
2 #define __STAN__MCMC__DIAG__E__STATIC__HMC__BETA__
+
3 
+ + + + +
8 
+
9 namespace stan {
+
10 
+
11  namespace mcmc {
+
12 
+
13  // Hamiltonian Monte Carlo on a
+
14  // Euclidean manifold with diagonal metric
+
15  // and static integration time
+
16 
+
17  template <typename M, class BaseRNG>
+ +
19  diag_e_point,
+
20  diag_e_metric,
+
21  expl_leapfrog,
+
22  BaseRNG> {
+
23 
+
24  public:
+
25 
+
26  diag_e_static_hmc(M &m, BaseRNG& rng, std::ostream* o = &std::cout, std::ostream* e = 0):
+
27  base_static_hmc<M, diag_e_point, diag_e_metric, expl_leapfrog, BaseRNG>(m, rng, o, e)
+
28  { this->_name = "Static HMC with a diagonal Euclidean metric"; }
+
29 
+
30 
+
31  };
+
32 
+
33  } // mcmc
+
34 
+
35 } // stan
+
36 
+
37 
+
38 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/diag__matrix_8hpp.html b/doc/api/html/diag__matrix_8hpp.html new file mode 100644 index 00000000000..f086e0cb943 --- /dev/null +++ b/doc/api/html/diag__matrix_8hpp.html @@ -0,0 +1,131 @@ + + + + + +Stan: src/stan/math/matrix/diag_matrix.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
diag_matrix.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::math
 Matrices and templated mathematical functions.
 
+ + + + + +

+Functions

template<typename T >
Eigen::Matrix< T,
+Eigen::Dynamic, Eigen::Dynamic > 
stan::math::diag_matrix (const Eigen::Matrix< T, Eigen::Dynamic, 1 > &v)
 Return a square diagonal matrix with the specified vector of coefficients as the diagonal values.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/diag__matrix_8hpp_source.html b/doc/api/html/diag__matrix_8hpp_source.html new file mode 100644 index 00000000000..3730cf89812 --- /dev/null +++ b/doc/api/html/diag__matrix_8hpp_source.html @@ -0,0 +1,125 @@ + + + + + +Stan: src/stan/math/matrix/diag_matrix.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
diag_matrix.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MATH__MATRIX__DIAG_MATRIX_HPP__
+
2 #define __STAN__MATH__MATRIX__DIAG_MATRIX_HPP__
+
3 
+ +
5 
+
6 namespace stan {
+
7  namespace math {
+
8 
+
15  template <typename T>
+
16  inline
+
17  Eigen::Matrix<T,Eigen::Dynamic,Eigen::Dynamic>
+
18  diag_matrix(const Eigen::Matrix<T,Eigen::Dynamic,1>& v) {
+
19  return v.asDiagonal();
+
20  }
+
21 
+
22  }
+
23 }
+
24 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/diag__post__multiply_8hpp.html b/doc/api/html/diag__post__multiply_8hpp.html new file mode 100644 index 00000000000..d154af0453f --- /dev/null +++ b/doc/api/html/diag__post__multiply_8hpp.html @@ -0,0 +1,133 @@ + + + + + +Stan: src/stan/math/matrix/diag_post_multiply.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
diag_post_multiply.hpp File Reference
+
+
+
#include <stdexcept>
+#include <boost/math/tools/promotion.hpp>
+#include <stan/math/matrix/Eigen.hpp>
+
+

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::math
 Matrices and templated mathematical functions.
 
+ + + + +

+Functions

template<typename T1 , typename T2 , int R1, int C1, int R2, int C2>
Eigen::Matrix< typename
+boost::math::tools::promote_args
+< T1, T2 >::type, R1, C1 > 
stan::math::diag_post_multiply (const Eigen::Matrix< T1, R1, C1 > &m1, const Eigen::Matrix< T2, R2, C2 > &m2)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/diag__post__multiply_8hpp_source.html b/doc/api/html/diag__post__multiply_8hpp_source.html new file mode 100644 index 00000000000..5ecadeec833 --- /dev/null +++ b/doc/api/html/diag__post__multiply_8hpp_source.html @@ -0,0 +1,136 @@ + + + + + +Stan: src/stan/math/matrix/diag_post_multiply.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
diag_post_multiply.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MATH__MATRIX__DIAG_POST_MULTIPLY_HPP__
+
2 #define __STAN__MATH__MATRIX__DIAG_POST_MULTIPLY_HPP__
+
3 
+
4 #include <stdexcept>
+
5 #include <boost/math/tools/promotion.hpp>
+ +
7 
+
8 namespace stan {
+
9  namespace math {
+
10 
+
11  template <typename T1, typename T2, int R1,int C1,int R2,int C2>
+
12  Eigen::Matrix<typename boost::math::tools::promote_args<T1,T2>::type, R1, C1>
+
13  diag_post_multiply(const Eigen::Matrix<T1,R1,C1>& m1,
+
14  const Eigen::Matrix<T2,R2,C2>& m2) {
+
15  if (m2.cols() != 1 && m2.rows() != 1)
+
16  throw std::domain_error("m2 must be a vector");
+
17  if (m2.size() != m1.cols())
+
18  throw std::domain_error("m2 must have same length as m1 has columns");
+
19  Eigen::Matrix<typename boost::math::tools::promote_args<T1,T2>::type, R1, C1>
+
20  result(m1.rows(),m1.cols());
+
21  for (int j = 0; j < m1.cols(); ++j)
+
22  for (int i = 0; i < m1.rows(); ++i)
+
23  result(i,j) = m2(j) * m1(i,j);
+
24  return result;
+
25  }
+
26 
+
27  }
+
28 }
+
29 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/diag__pre__multiply_8hpp.html b/doc/api/html/diag__pre__multiply_8hpp.html new file mode 100644 index 00000000000..d89af715767 --- /dev/null +++ b/doc/api/html/diag__pre__multiply_8hpp.html @@ -0,0 +1,133 @@ + + + + + +Stan: src/stan/math/matrix/diag_pre_multiply.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
diag_pre_multiply.hpp File Reference
+
+
+
#include <stdexcept>
+#include <boost/math/tools/promotion.hpp>
+#include <stan/math/matrix/Eigen.hpp>
+
+

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::math
 Matrices and templated mathematical functions.
 
+ + + + +

+Functions

template<typename T1 , typename T2 , int R1, int C1, int R2, int C2>
Eigen::Matrix< typename
+boost::math::tools::promote_args
+< T1, T2 >::type, R2, C2 > 
stan::math::diag_pre_multiply (const Eigen::Matrix< T1, R1, C1 > &m1, const Eigen::Matrix< T2, R2, C2 > &m2)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/diag__pre__multiply_8hpp_source.html b/doc/api/html/diag__pre__multiply_8hpp_source.html new file mode 100644 index 00000000000..bdb278a8122 --- /dev/null +++ b/doc/api/html/diag__pre__multiply_8hpp_source.html @@ -0,0 +1,136 @@ + + + + + +Stan: src/stan/math/matrix/diag_pre_multiply.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
diag_pre_multiply.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MATH__MATRIX__DIAG_PRE_MULTIPLY_HPP__
+
2 #define __STAN__MATH__MATRIX__DIAG_PRE_MULTIPLY_HPP__
+
3 
+
4 #include <stdexcept>
+
5 #include <boost/math/tools/promotion.hpp>
+ +
7 
+
8 namespace stan {
+
9  namespace math {
+
10 
+
11  template <typename T1, typename T2, int R1,int C1,int R2,int C2>
+
12  Eigen::Matrix<typename boost::math::tools::promote_args<T1,T2>::type, R2, C2>
+
13  diag_pre_multiply(const Eigen::Matrix<T1,R1,C1>& m1,
+
14  const Eigen::Matrix<T2,R2,C2>& m2) {
+
15  if (m1.cols() != 1 && m1.rows() != 1)
+
16  throw std::domain_error("m1 must be a vector");
+
17  if (m1.size() != m2.rows())
+
18  throw std::domain_error("m1 must have same length as m2 has rows");
+
19  Eigen::Matrix<typename boost::math::tools::promote_args<T1,T2>::type, R2, C2>
+
20  result(m2.rows(),m2.cols());
+
21  for (int j = 0; j < m2.cols(); ++j)
+
22  for (int i = 0; i < m2.rows(); ++i)
+
23  result(i,j) = m1(i) * m2(i,j);
+
24  return result;
+
25  }
+
26 
+
27  }
+
28 }
+
29 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/diagonal_8hpp.html b/doc/api/html/diagonal_8hpp.html new file mode 100644 index 00000000000..bbbe23e3f8e --- /dev/null +++ b/doc/api/html/diagonal_8hpp.html @@ -0,0 +1,131 @@ + + + + + +Stan: src/stan/math/matrix/diagonal.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
diagonal.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::math
 Matrices and templated mathematical functions.
 
+ + + + + +

+Functions

template<typename T >
Eigen::Matrix< T,
+Eigen::Dynamic, 1 > 
stan::math::diagonal (const Eigen::Matrix< T, Eigen::Dynamic, Eigen::Dynamic > &m)
 Return a column vector of the diagonal elements of the specified matrix.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/diagonal_8hpp_source.html b/doc/api/html/diagonal_8hpp_source.html new file mode 100644 index 00000000000..52cf8555a5a --- /dev/null +++ b/doc/api/html/diagonal_8hpp_source.html @@ -0,0 +1,125 @@ + + + + + +Stan: src/stan/math/matrix/diagonal.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
diagonal.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MATH__MATRIX__DIAGONAL_HPP__
+
2 #define __STAN__MATH__MATRIX__DIAGONAL_HPP__
+
3 
+ +
5 
+
6 namespace stan {
+
7  namespace math {
+
8 
+
15  template <typename T>
+
16  inline
+
17  Eigen::Matrix<T,Eigen::Dynamic,1>
+
18  diagonal(const Eigen::Matrix<T,Eigen::Dynamic,Eigen::Dynamic>& m) {
+
19  return m.diagonal();
+
20  }
+
21 
+
22  }
+
23 }
+
24 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/dims_8hpp.html b/doc/api/html/dims_8hpp.html new file mode 100644 index 00000000000..9df014b9cdb --- /dev/null +++ b/doc/api/html/dims_8hpp.html @@ -0,0 +1,139 @@ + + + + + +Stan: src/stan/math/matrix/dims.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
dims.hpp File Reference
+
+
+
#include <vector>
+#include <stan/math/matrix/Eigen.hpp>
+
+

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::math
 Matrices and templated mathematical functions.
 
+ + + + + + + + + + + + + +

+Functions

template<typename T >
void stan::math::dims (const T &x, std::vector< int > &result)
 
template<typename T , int R, int C>
void stan::math::dims (const Eigen::Matrix< T, R, C > &x, std::vector< int > &result)
 
template<typename T >
void stan::math::dims (const std::vector< T > &x, std::vector< int > &result)
 
template<typename T >
std::vector< int > stan::math::dims (const T &x)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/dims_8hpp_source.html b/doc/api/html/dims_8hpp_source.html new file mode 100644 index 00000000000..1b87f2b0769 --- /dev/null +++ b/doc/api/html/dims_8hpp_source.html @@ -0,0 +1,149 @@ + + + + + +Stan: src/stan/math/matrix/dims.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
dims.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MATH__MATRIX__DIMS_HPP__
+
2 #define __STAN__MATH__MATRIX__DIMS_HPP__
+
3 
+
4 #include <vector>
+ +
6 
+
7 namespace stan {
+
8  namespace math {
+
9 
+
10  template <typename T>
+
11  inline
+
12  void
+
13  dims(const T& x, std::vector<int>& result) {
+
14  /* no op */
+
15  }
+
16  template <typename T, int R, int C>
+
17  inline void
+
18  dims(const Eigen::Matrix<T,R,C>& x,
+
19  std::vector<int>& result) {
+
20  result.push_back(x.rows());
+
21  result.push_back(x.cols());
+
22  }
+
23  template <typename T>
+
24  inline void
+
25  dims(const std::vector<T>& x,
+
26  std::vector<int>& result) {
+
27  result.push_back(x.size());
+
28  if (x.size() > 0)
+
29  dims(x[0],result);
+
30  }
+
31 
+
32  template <typename T>
+
33  inline std::vector<int>
+
34  dims(const T& x) {
+
35  std::vector<int> result;
+
36  dims(x,result);
+
37  return result;
+
38  }
+
39 
+
40  }
+
41 }
+
42 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/dir_0c7ba03e05d7755a93c72a387515f18e.html b/doc/api/html/dir_0c7ba03e05d7755a93c72a387515f18e.html new file mode 100644 index 00000000000..4f722d90103 --- /dev/null +++ b/doc/api/html/dir_0c7ba03e05d7755a93c72a387515f18e.html @@ -0,0 +1,135 @@ + + + + + +Stan: src/stan/agrad/rev/internal Directory Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + +
+ +
+ + +
+
+
+
internal Directory Reference
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Files

file  ddv_vari.hpp [code]
 
file  dv_vari.hpp [code]
 
file  dvd_vari.hpp [code]
 
file  dvv_vari.hpp [code]
 
file  matrix_vari.hpp [code]
 
file  precomp_v_vari.hpp [code]
 
file  precomputed_gradients.hpp [code]
 
file  v_vari.hpp [code]
 
file  vd_vari.hpp [code]
 
file  vdd_vari.hpp [code]
 
file  vdv_vari.hpp [code]
 
file  vector_vari.hpp [code]
 
file  vv_vari.hpp [code]
 
file  vvd_vari.hpp [code]
 
file  vvv_vari.hpp [code]
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/dir_0f7468ba3d646c35c5f1677a20123edb.html b/doc/api/html/dir_0f7468ba3d646c35c5f1677a20123edb.html new file mode 100644 index 00000000000..dc6fcef3b85 --- /dev/null +++ b/doc/api/html/dir_0f7468ba3d646c35c5f1677a20123edb.html @@ -0,0 +1,118 @@ + + + + + +Stan: src/stan/mcmc/hmc Directory Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + +
+ +
+ + +
+
+
+
hmc Directory Reference
+
+
+ + + + + + + + + + +

+Directories

directory  hamiltonians
 
directory  integrators
 
directory  nuts
 
directory  static
 
+ + + +

+Files

file  base_hmc.hpp [code]
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/dir_139cce78ba5d92491da28703870a60b5.html b/doc/api/html/dir_139cce78ba5d92491da28703870a60b5.html new file mode 100644 index 00000000000..f9761ea560f --- /dev/null +++ b/doc/api/html/dir_139cce78ba5d92491da28703870a60b5.html @@ -0,0 +1,107 @@ + + + + + +Stan: src/stan/agrad/fwd/prob/univariate Directory Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + +
+ +
+ + +
+
+
+
univariate Directory Reference
+
+
+ + + + +

+Directories

directory  continuous
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/dir_182af125d00bd279bb48de10042b58c3.html b/doc/api/html/dir_182af125d00bd279bb48de10042b58c3.html new file mode 100644 index 00000000000..68c1d1fe412 --- /dev/null +++ b/doc/api/html/dir_182af125d00bd279bb48de10042b58c3.html @@ -0,0 +1,127 @@ + + + + + +Stan: src/stan/agrad/fwd/operators Directory Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + +
+ +
+ + +
+
+
+
operators Directory Reference
+
+ +
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/dir_1ff9d265245893e221d5111ecd1383dc.html b/doc/api/html/dir_1ff9d265245893e221d5111ecd1383dc.html new file mode 100644 index 00000000000..1bfe5a881f4 --- /dev/null +++ b/doc/api/html/dir_1ff9d265245893e221d5111ecd1383dc.html @@ -0,0 +1,231 @@ + + + + + +Stan: src/stan/gm/arguments Directory Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + +
+ +
+ + +
+
+
+
arguments Directory Reference
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Files

file  arg_adapt.hpp [code]
 
file  arg_adapt_delta.hpp [code]
 
file  arg_adapt_engaged.hpp [code]
 
file  arg_adapt_gamma.hpp [code]
 
file  arg_adapt_init_buffer.hpp [code]
 
file  arg_adapt_kappa.hpp [code]
 
file  arg_adapt_t0.hpp [code]
 
file  arg_adapt_term_buffer.hpp [code]
 
file  arg_adapt_window.hpp [code]
 
file  arg_bfgs.hpp [code]
 
file  arg_data.hpp [code]
 
file  arg_data_file.hpp [code]
 
file  arg_dense_e.hpp [code]
 
file  arg_diag_e.hpp [code]
 
file  arg_diagnose.hpp [code]
 
file  arg_diagnostic_file.hpp [code]
 
file  arg_engine.hpp [code]
 
file  arg_fail.hpp [code]
 
file  arg_fixed_param.hpp [code]
 
file  arg_hmc.hpp [code]
 
file  arg_id.hpp [code]
 
file  arg_init.hpp [code]
 
file  arg_init_alpha.hpp [code]
 
file  arg_int_time.hpp [code]
 
file  arg_iter.hpp [code]
 
file  arg_max_depth.hpp [code]
 
file  arg_method.hpp [code]
 
file  arg_metric.hpp [code]
 
file  arg_nesterov.hpp [code]
 
file  arg_newton.hpp [code]
 
file  arg_num_samples.hpp [code]
 
file  arg_num_warmup.hpp [code]
 
file  arg_nuts.hpp [code]
 
file  arg_optimize.hpp [code]
 
file  arg_optimize_algo.hpp [code]
 
file  arg_output.hpp [code]
 
file  arg_output_file.hpp [code]
 
file  arg_random.hpp [code]
 
file  arg_refresh.hpp [code]
 
file  arg_rwm.hpp [code]
 
file  arg_sample.hpp [code]
 
file  arg_sample_algo.hpp [code]
 
file  arg_save_iterations.hpp [code]
 
file  arg_save_warmup.hpp [code]
 
file  arg_seed.hpp [code]
 
file  arg_static.hpp [code]
 
file  arg_stepsize.hpp [code]
 
file  arg_stepsize_jitter.hpp [code]
 
file  arg_test.hpp [code]
 
file  arg_test_grad_eps.hpp [code]
 
file  arg_test_grad_err.hpp [code]
 
file  arg_test_gradient.hpp [code]
 
file  arg_thin.hpp [code]
 
file  arg_tolerance.hpp [code]
 
file  arg_unit_e.hpp [code]
 
file  argument.hpp [code]
 
file  argument_parser.hpp [code]
 
file  argument_probe.hpp [code]
 
file  categorical_argument.hpp [code]
 
file  list_argument.hpp [code]
 
file  singleton_argument.hpp [code]
 
file  unvalued_argument.hpp [code]
 
file  valued_argument.hpp [code]
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/dir_2199d12d39bf553599a4a7fa2d24fe67.html b/doc/api/html/dir_2199d12d39bf553599a4a7fa2d24fe67.html new file mode 100644 index 00000000000..189e69b285a --- /dev/null +++ b/doc/api/html/dir_2199d12d39bf553599a4a7fa2d24fe67.html @@ -0,0 +1,107 @@ + + + + + +Stan: src/stan/agrad/rev/error_handling/matrix Directory Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + +
+ +
+ + +
+
+
+
matrix Directory Reference
+
+
+ + + + +

+Files

file  check_pos_definite.hpp [code]
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/dir_22b468d2bc5e21cba3741edb912cd36a.html b/doc/api/html/dir_22b468d2bc5e21cba3741edb912cd36a.html new file mode 100644 index 00000000000..50fd4636d4a --- /dev/null +++ b/doc/api/html/dir_22b468d2bc5e21cba3741edb912cd36a.html @@ -0,0 +1,139 @@ + + + + + +Stan: src/stan/math/error_handling/matrix Directory Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + +
+ +
+ + +
+
+
+
matrix Directory Reference
+
+ +
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/dir_29b20cd43524c7f0fc77aef3c7e38f50.html b/doc/api/html/dir_29b20cd43524c7f0fc77aef3c7e38f50.html new file mode 100644 index 00000000000..5a08be1b391 --- /dev/null +++ b/doc/api/html/dir_29b20cd43524c7f0fc77aef3c7e38f50.html @@ -0,0 +1,126 @@ + + + + + +Stan: src/stan/gm Directory Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + +
+ +
+ + +
+
+
+
gm Directory Reference
+
+
+ + + + + + +

+Directories

directory  arguments
 
directory  grammars
 
+ + + + + + + + + + + + + + + +

+Files

file  ast.hpp [code]
 
file  ast_def.cpp [code]
 
file  command.hpp [code]
 
file  compiler.hpp [code]
 
file  error_codes.hpp [code]
 
file  generator.hpp [code]
 
file  parser.hpp [code]
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/dir_2e546bda41fe40b59dc00b79d00b50ce.html b/doc/api/html/dir_2e546bda41fe40b59dc00b79d00b50ce.html new file mode 100644 index 00000000000..6a21bb95e84 --- /dev/null +++ b/doc/api/html/dir_2e546bda41fe40b59dc00b79d00b50ce.html @@ -0,0 +1,107 @@ + + + + + +Stan: src/stan/agrad/fwd/prob Directory Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + +
+ +
+ + +
+
+
+
prob Directory Reference
+
+
+ + + + +

+Directories

directory  univariate
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/dir_2fa10d765296c30bb35aa6c0b0bc0528.html b/doc/api/html/dir_2fa10d765296c30bb35aa6c0b0bc0528.html new file mode 100644 index 00000000000..6d52300a0b9 --- /dev/null +++ b/doc/api/html/dir_2fa10d765296c30bb35aa6c0b0bc0528.html @@ -0,0 +1,116 @@ + + + + + +Stan: src/stan/prob/distributions/univariate Directory Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + +
+ +
+ + +
+
+
+
univariate Directory Reference
+
+
+ + + + + + +

+Directories

directory  continuous
 
directory  discrete
 
+ + + + + +

+Files

file  continuous.hpp [code]
 
file  discrete.hpp [code]
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/dir_3995d5884456238d20884a417bb53c63.html b/doc/api/html/dir_3995d5884456238d20884a417bb53c63.html new file mode 100644 index 00000000000..8d54ebf9d75 --- /dev/null +++ b/doc/api/html/dir_3995d5884456238d20884a417bb53c63.html @@ -0,0 +1,136 @@ + + + + + +Stan: src/stan/math Directory Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + +
+ +
+ + +
+
+
+
math Directory Reference
+
+
+ + + + + + + + +

+Directories

directory  error_handling
 
directory  functions
 
directory  matrix
 
+ + + + + + + + + + + + + + + + + + + + + + + +

+Files

file  constants.hpp [code]
 
file  error_handling.hpp [code]
 
file  functions.hpp [code]
 
file  matrix.hpp [code]
 
file  matrix_error_handling.hpp [code]
 
file  rep_array.hpp [code]
 
file  rep_matrix.hpp [code]
 
file  rep_row_vector.hpp [code]
 
file  rep_vector.hpp [code]
 
file  seq_view.hpp [code]
 
file  validate_non_negative_rep.hpp [code]
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/dir_3b4610d017c705a4887f638ce7fbc838.html b/doc/api/html/dir_3b4610d017c705a4887f638ce7fbc838.html new file mode 100644 index 00000000000..ad0fca20955 --- /dev/null +++ b/doc/api/html/dir_3b4610d017c705a4887f638ce7fbc838.html @@ -0,0 +1,116 @@ + + + + + +Stan: src/stan/prob/distributions Directory Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + +
+ +
+ + +
+
+
+
distributions Directory Reference
+
+
+ + + + + + +

+Directories

directory  multivariate
 
directory  univariate
 
+ + + + + +

+Files

file  multivariate.hpp [code]
 
file  univariate.hpp [code]
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/dir_3bf5ecbbc2acdb8067d845784c2d4c37.html b/doc/api/html/dir_3bf5ecbbc2acdb8067d845784c2d4c37.html new file mode 100644 index 00000000000..1873e02e7b2 --- /dev/null +++ b/doc/api/html/dir_3bf5ecbbc2acdb8067d845784c2d4c37.html @@ -0,0 +1,129 @@ + + + + + +Stan: src/stan/prob/distributions/multivariate/continuous Directory Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + +
+ +
+ + +
+
+
+
continuous Directory Reference
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + +

+Files

file  dirichlet.hpp [code]
 
file  gaussian_dlm_obs.hpp [code]
 
file  inv_wishart.hpp [code]
 
file  lkj_corr.hpp [code]
 
file  lkj_cov.hpp [code]
 
file  matrix_normal.hpp [code]
 
file  multi_gp.hpp [code]
 
file  multi_normal.hpp [code]
 
file  multi_normal_cholesky.hpp [code]
 
file  multi_normal_prec.hpp [code]
 
file  multi_student_t.hpp [code]
 
file  wishart.hpp [code]
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/dir_4169038f84fc0e1ed68b4a7c11130da4.html b/doc/api/html/dir_4169038f84fc0e1ed68b4a7c11130da4.html new file mode 100644 index 00000000000..832772ee171 --- /dev/null +++ b/doc/api/html/dir_4169038f84fc0e1ed68b4a7c11130da4.html @@ -0,0 +1,119 @@ + + + + + +Stan: src/stan/mcmc/hmc/nuts Directory Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + +
+ +
+ + +
+
+
+
nuts Directory Reference
+
+
+ + + + + + + + + + + + + + + + +

+Files

file  adapt_dense_e_nuts.hpp [code]
 
file  adapt_diag_e_nuts.hpp [code]
 
file  adapt_unit_e_nuts.hpp [code]
 
file  base_nuts.hpp [code]
 
file  dense_e_nuts.hpp [code]
 
file  diag_e_nuts.hpp [code]
 
file  unit_e_nuts.hpp [code]
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/dir_44cbf1ed18699f3d3b4fc628a26fcd8e.html b/doc/api/html/dir_44cbf1ed18699f3d3b4fc628a26fcd8e.html new file mode 100644 index 00000000000..a2f6a851078 --- /dev/null +++ b/doc/api/html/dir_44cbf1ed18699f3d3b4fc628a26fcd8e.html @@ -0,0 +1,112 @@ + + + + + +Stan: src/stan/agrad/rev/error_handling Directory Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + +
+ +
+ + +
+
+
+
error_handling Directory Reference
+
+
+ + + + +

+Directories

directory  matrix
 
+ + + +

+Files

file  matrix.hpp [code]
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/dir_4ff6d94cb2a0a21decf9fe1d17e36a84.html b/doc/api/html/dir_4ff6d94cb2a0a21decf9fe1d17e36a84.html new file mode 100644 index 00000000000..b30801db6e8 --- /dev/null +++ b/doc/api/html/dir_4ff6d94cb2a0a21decf9fe1d17e36a84.html @@ -0,0 +1,128 @@ + + + + + +Stan: src/stan/prob Directory Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + +
+ +
+ + +
+
+
+
prob Directory Reference
+
+
+ + + + +

+Directories

directory  distributions
 
+ + + + + + + + + + + + + + + + + + + +

+Files

file  autocorrelation.hpp [code]
 
file  autocovariance.hpp [code]
 
file  constants.hpp [code]
 
file  distributions.hpp [code]
 
file  internal_math.hpp [code]
 
file  traits.hpp [code]
 
file  transform.hpp [code]
 
file  welford_covar_estimator.hpp [code]
 
file  welford_var_estimator.hpp [code]
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/dir_50f5c6d2b5c0f0cf0dce53a8e04f8433.html b/doc/api/html/dir_50f5c6d2b5c0f0cf0dce53a8e04f8433.html new file mode 100644 index 00000000000..a7f072a7562 --- /dev/null +++ b/doc/api/html/dir_50f5c6d2b5c0f0cf0dce53a8e04f8433.html @@ -0,0 +1,143 @@ + + + + + +Stan: src/stan/agrad/rev/operators Directory Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + +
+ +
+ + +
+
+
+
operators Directory Reference
+
+ +
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/dir_52470340ee5541bea78123d62b747bfc.html b/doc/api/html/dir_52470340ee5541bea78123d62b747bfc.html new file mode 100644 index 00000000000..1a2dc0b9461 --- /dev/null +++ b/doc/api/html/dir_52470340ee5541bea78123d62b747bfc.html @@ -0,0 +1,181 @@ + + + + + +Stan: src/stan/agrad/rev/matrix Directory Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + +
+ +
+ + +
+
+
+
matrix Directory Reference
+
+ +
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/dir_52c3c3fe3bff0ba6815d4f34971ed7d3.html b/doc/api/html/dir_52c3c3fe3bff0ba6815d4f34971ed7d3.html new file mode 100644 index 00000000000..ea00c1d46fd --- /dev/null +++ b/doc/api/html/dir_52c3c3fe3bff0ba6815d4f34971ed7d3.html @@ -0,0 +1,124 @@ + + + + + +Stan: src/stan/agrad Directory Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + +
+ +
+ + +
+
+
+
agrad Directory Reference
+
+
+ + + + + + +

+Directories

directory  fwd
 
directory  rev
 
+ + + + + + + + + + + + + +

+Files

file  agrad_thread_safe.hpp [code]
 
file  autodiff.hpp [code]
 
file  fwd.hpp [code]
 
file  hessian.hpp [code]
 
file  partials_vari.hpp [code]
 
file  rev.hpp [code]
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/dir_54e1f17c1ac5ea0adfc355c0b89ee8b2.html b/doc/api/html/dir_54e1f17c1ac5ea0adfc355c0b89ee8b2.html new file mode 100644 index 00000000000..4e22b696e9d --- /dev/null +++ b/doc/api/html/dir_54e1f17c1ac5ea0adfc355c0b89ee8b2.html @@ -0,0 +1,155 @@ + + + + + +Stan: src/stan/agrad/fwd/matrix Directory Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + +
+ +
+ + +
+
+
+
matrix Directory Reference
+
+ +
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/dir_5a90b97b153f6d877d3f3fe75b024a65.html b/doc/api/html/dir_5a90b97b153f6d877d3f3fe75b024a65.html new file mode 100644 index 00000000000..3afc3901051 --- /dev/null +++ b/doc/api/html/dir_5a90b97b153f6d877d3f3fe75b024a65.html @@ -0,0 +1,109 @@ + + + + + +Stan: src/stan/memory Directory Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + +
+ +
+ + +
+
+
+
memory Directory Reference
+
+
+ + + + + + +

+Files

file  chunk_alloc.hpp [code]
 
file  stack_alloc.hpp [code]
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/dir_68c25edf9c6d341fdd24c7ac7d0f552b.html b/doc/api/html/dir_68c25edf9c6d341fdd24c7ac7d0f552b.html new file mode 100644 index 00000000000..0f4362e045a --- /dev/null +++ b/doc/api/html/dir_68c25edf9c6d341fdd24c7ac7d0f552b.html @@ -0,0 +1,113 @@ + + + + + +Stan: src/stan/command Directory Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + +
+ +
+ + +
+
+
+
command Directory Reference
+
+
+ + + + + + + + + + +

+Files

file  print.cpp [code]
 
file  print.hpp [code]
 
file  stanc.cpp [code]
 
file  stanc_helper.hpp [code]
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/dir_6b822de55cde49ee6f3a9b01e44fb566.html b/doc/api/html/dir_6b822de55cde49ee6f3a9b01e44fb566.html new file mode 100644 index 00000000000..0e68d2c6cde --- /dev/null +++ b/doc/api/html/dir_6b822de55cde49ee6f3a9b01e44fb566.html @@ -0,0 +1,247 @@ + + + + + +Stan: src/stan/agrad/fwd/functions Directory Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + +
+ +
+ + +
+
+
+
functions Directory Reference
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Files

file  abs.hpp [code]
 
file  acos.hpp [code]
 
file  acosh.hpp [code]
 
file  asin.hpp [code]
 
file  asinh.hpp [code]
 
file  atan.hpp [code]
 
file  atan2.hpp [code]
 
file  atanh.hpp [code]
 
file  bessel_first_kind.hpp [code]
 
file  bessel_second_kind.hpp [code]
 
file  binary_log_loss.hpp [code]
 
file  binomial_coefficient_log.hpp [code]
 
file  cbrt.hpp [code]
 
file  ceil.hpp [code]
 
file  cos.hpp [code]
 
file  cosh.hpp [code]
 
file  digamma.hpp [code]
 
file  erf.hpp [code]
 
file  erfc.hpp [code]
 
file  exp.hpp [code]
 
file  exp2.hpp [code]
 
file  expm1.hpp [code]
 
file  fabs.hpp [code]
 
file  falling_factorial.hpp [code]
 
file  fdim.hpp [code]
 
file  floor.hpp [code]
 
file  fma.hpp [code]
 
file  fmax.hpp [code]
 
file  fmin.hpp [code]
 
file  fmod.hpp [code]
 
file  gamma_p.hpp [code]
 
file  gamma_q.hpp [code]
 
file  hypot.hpp [code]
 
file  inv.hpp [code]
 
file  inv_cloglog.hpp [code]
 
file  inv_logit.hpp [code]
 
file  inv_sqrt.hpp [code]
 
file  inv_square.hpp [code]
 
file  lbeta.hpp [code]
 
file  lgamma.hpp [code]
 
file  lmgamma.hpp [code]
 
file  log.hpp [code]
 
file  log10.hpp [code]
 
file  log1m.hpp [code]
 
file  log1m_exp.hpp [code]
 
file  log1m_inv_logit.hpp [code]
 
file  log1p.hpp [code]
 
file  log1p_exp.hpp [code]
 
file  log2.hpp [code]
 
file  log_diff_exp.hpp [code]
 
file  log_falling_factorial.hpp [code]
 
file  log_inv_logit.hpp [code]
 
file  log_rising_factorial.hpp [code]
 
file  log_sum_exp.hpp [code]
 
file  logit.hpp [code]
 
file  modified_bessel_first_kind.hpp [code]
 
file  modified_bessel_second_kind.hpp [code]
 
file  multiply_log.hpp [code]
 
file  owens_t.hpp [code]
 
file  Phi.hpp [code]
 
file  pow.hpp [code]
 
file  rising_factorial.hpp [code]
 
file  round.hpp [code]
 
file  sin.hpp [code]
 
file  sinh.hpp [code]
 
file  sqrt.hpp [code]
 
file  square.hpp [code]
 
file  tan.hpp [code]
 
file  tanh.hpp [code]
 
file  tgamma.hpp [code]
 
file  trunc.hpp [code]
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/dir_7edb90b8895d3ae5eaffb58e5bac252e.html b/doc/api/html/dir_7edb90b8895d3ae5eaffb58e5bac252e.html new file mode 100644 index 00000000000..cc8537a1f9f --- /dev/null +++ b/doc/api/html/dir_7edb90b8895d3ae5eaffb58e5bac252e.html @@ -0,0 +1,116 @@ + + + + + +Stan: src/stan/prob/distributions/multivariate Directory Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + +
+ +
+ + +
+
+
+
multivariate Directory Reference
+
+
+ + + + + + +

+Directories

directory  continuous
 
directory  discrete
 
+ + + + + +

+Files

file  continuous.hpp [code]
 
file  discrete.hpp [code]
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/dir_7f504516231d3fe329ee42a0c6d09a23.html b/doc/api/html/dir_7f504516231d3fe329ee42a0c6d09a23.html new file mode 100644 index 00000000000..e61ffa41a6c --- /dev/null +++ b/doc/api/html/dir_7f504516231d3fe329ee42a0c6d09a23.html @@ -0,0 +1,119 @@ + + + + + +Stan: src/stan/prob/distributions/univariate/discrete Directory Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + +
+ +
+ + +
+
+
+
discrete Directory Reference
+
+
+ + + + + + + + + + + + + + + + +

+Files

file  bernoulli.hpp [code]
 
file  beta_binomial.hpp [code]
 
file  binomial.hpp [code]
 
file  hypergeometric.hpp [code]
 
file  neg_binomial.hpp [code]
 
file  ordered_logistic.hpp [code]
 
file  poisson.hpp [code]
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/dir_8bbd805b34b7b8cc78ee869a600898c2.html b/doc/api/html/dir_8bbd805b34b7b8cc78ee869a600898c2.html new file mode 100644 index 00000000000..7326fb19a10 --- /dev/null +++ b/doc/api/html/dir_8bbd805b34b7b8cc78ee869a600898c2.html @@ -0,0 +1,111 @@ + + + + + +Stan: src/stan/model Directory Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + +
+ +
+ + +
+
+
+
model Directory Reference
+
+
+ + + + + + + + +

+Files

file  model_header.hpp [code]
 
file  prob_grad.hpp [code]
 
file  util.hpp [code]
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/dir_8c3552022fc3ada5c17e804a5e09b39f.html b/doc/api/html/dir_8c3552022fc3ada5c17e804a5e09b39f.html new file mode 100644 index 00000000000..87a74ffd85b --- /dev/null +++ b/doc/api/html/dir_8c3552022fc3ada5c17e804a5e09b39f.html @@ -0,0 +1,107 @@ + + + + + +Stan: src/stan/meta Directory Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + +
+ +
+ + +
+
+
+
meta Directory Reference
+
+
+ + + + +

+Files

file  traits.hpp [code]
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/dir_918f1495a74b4bbbcceda6da05869dad.html b/doc/api/html/dir_918f1495a74b4bbbcceda6da05869dad.html new file mode 100644 index 00000000000..fa82fe70663 --- /dev/null +++ b/doc/api/html/dir_918f1495a74b4bbbcceda6da05869dad.html @@ -0,0 +1,123 @@ + + + + + +Stan: src/stan/io Directory Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + +
+ +
+ + +
+
+
+
io Directory Reference
+
+
+ + + + + + + + + + + + + + + + + + + + +

+Files

file  cmd_line.hpp [code]
 
file  csv_writer.hpp [code]
 
file  dump.hpp [code]
 
file  mcmc_writer.hpp [code]
 
file  reader.hpp [code]
 
file  stan_csv_reader.hpp [code]
 
file  util.hpp [code]
 
file  var_context.hpp [code]
 
file  writer.hpp [code]
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/dir_99762ae463b7309a47de4b14a14d0e0f.html b/doc/api/html/dir_99762ae463b7309a47de4b14a14d0e0f.html new file mode 100644 index 00000000000..ee909da0c6a --- /dev/null +++ b/doc/api/html/dir_99762ae463b7309a47de4b14a14d0e0f.html @@ -0,0 +1,319 @@ + + + + + +Stan: src/stan/math/matrix Directory Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + +
+ +
+ + +
+
+
+
matrix Directory Reference
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Files

file  accumulator.hpp [code]
 
file  add.hpp [code]
 
file  array_builder.hpp [code]
 
file  assign.hpp [code]
 
file  block.hpp [code]
 
file  check_range.hpp [code]
 
file  cholesky_decompose.hpp [code]
 
file  col.hpp [code]
 
file  cols.hpp [code]
 
file  columns_dot_product.hpp [code]
 
file  columns_dot_self.hpp [code]
 
file  common_type.hpp [code]
 
file  crossprod.hpp [code]
 
file  cumulative_sum.hpp [code]
 
file  determinant.hpp [code]
 
file  diag_matrix.hpp [code]
 
file  diag_post_multiply.hpp [code]
 
file  diag_pre_multiply.hpp [code]
 
file  diagonal.hpp [code]
 
file  dims.hpp [code]
 
file  distance.hpp [code]
 
file  divide.hpp [code]
 
file  dot_product.hpp [code]
 
file  dot_self.hpp [code]
 
file  Eigen.hpp [code]
 
file  eigenvalues_sym.hpp [code]
 
file  eigenvectors_sym.hpp [code]
 
file  elt_divide.hpp [code]
 
file  elt_multiply.hpp [code]
 
file  exp.hpp [code]
 
file  fill.hpp [code]
 
file  get_base1.hpp [code]
 
file  get_base1_lhs.hpp [code]
 
file  head.hpp [code]
 
file  initialize.hpp [code]
 
file  inverse.hpp [code]
 
file  inverse_spd.hpp [code]
 
file  LDLT_factor.hpp [code]
 
file  log.hpp [code]
 
file  log_determinant.hpp [code]
 
file  log_determinant_ldlt.hpp [code]
 
file  log_determinant_spd.hpp [code]
 
file  log_softmax.hpp [code]
 
file  log_sum_exp.hpp [code]
 
file  max.hpp [code]
 
file  mdivide_left.hpp [code]
 
file  mdivide_left_ldlt.hpp [code]
 
file  mdivide_left_spd.hpp [code]
 
file  mdivide_left_tri.hpp [code]
 
file  mdivide_left_tri_low.hpp [code]
 
file  mdivide_right.hpp [code]
 
file  mdivide_right_ldlt.hpp [code]
 
file  mdivide_right_spd.hpp [code]
 
file  mdivide_right_tri.hpp [code]
 
file  mdivide_right_tri_low.hpp [code]
 
file  mean.hpp [code]
 
file  min.hpp [code]
 
file  minus.hpp [code]
 
file  multiply.hpp [code]
 
file  multiply_lower_tri_self_transpose.hpp [code]
 
file  prod.hpp [code]
 
file  promote_common.hpp [code]
 
file  promoter.hpp [code]
 
file  quad_form.hpp [code]
 
file  rank.hpp [code]
 
file  resize.hpp [code]
 
file  row.hpp [code]
 
file  rows.hpp [code]
 
file  rows_dot_product.hpp [code]
 
file  rows_dot_self.hpp [code]
 
file  sd.hpp [code]
 
file  segment.hpp [code]
 
file  singular_values.hpp [code]
 
file  size.hpp [code]
 
file  softmax.hpp [code]
 
file  sort.hpp [code]
 
file  squared_distance.hpp [code]
 
file  stan_print.hpp [code]
 
file  sub_col.hpp [code]
 
file  sub_row.hpp [code]
 
file  subtract.hpp [code]
 
file  sum.hpp [code]
 
file  tail.hpp [code]
 
file  tcrossprod.hpp [code]
 
file  to_vector.hpp [code]
 
file  trace.hpp [code]
 
file  trace_gen_inv_quad_form_ldlt.hpp [code]
 
file  trace_gen_quad_form.hpp [code]
 
file  trace_inv_quad_form_ldlt.hpp [code]
 
file  trace_quad_form.hpp [code]
 
file  transpose.hpp [code]
 
file  typedefs.hpp [code]
 
file  validate_column_index.hpp [code]
 
file  validate_greater.hpp [code]
 
file  validate_greater_or_equal.hpp [code]
 
file  validate_less.hpp [code]
 
file  validate_less_or_equal.hpp [code]
 
file  validate_matching_dims.hpp [code]
 
file  validate_matching_sizes.hpp [code]
 
file  validate_multiplicable.hpp [code]
 
file  validate_nonzero_size.hpp [code]
 
file  validate_row_index.hpp [code]
 
file  validate_square.hpp [code]
 
file  validate_std_vector_index.hpp [code]
 
file  validate_symmetric.hpp [code]
 
file  validate_vector.hpp [code]
 
file  variance.hpp [code]
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/dir_99fdd75913c28d151522a8b8afede414.html b/doc/api/html/dir_99fdd75913c28d151522a8b8afede414.html new file mode 100644 index 00000000000..68a29557a72 --- /dev/null +++ b/doc/api/html/dir_99fdd75913c28d151522a8b8afede414.html @@ -0,0 +1,138 @@ + + + + + +Stan: src/stan/math/error_handling Directory Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + +
+ +
+ + +
+
+
+
error_handling Directory Reference
+
+
+ + + + +

+Directories

directory  matrix
 
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Files

file  check_bounded.hpp [code]
 
file  check_consistent_size.hpp [code]
 
file  check_consistent_sizes.hpp [code]
 
file  check_finite.hpp [code]
 
file  check_greater.hpp [code]
 
file  check_greater_or_equal.hpp [code]
 
file  check_less.hpp [code]
 
file  check_less_or_equal.hpp [code]
 
file  check_nonnegative.hpp [code]
 
file  check_not_nan.hpp [code]
 
file  check_positive.hpp [code]
 
file  dom_err.hpp [code]
 
file  dom_err_vec.hpp [code]
 
file  raise_domain_error.hpp [code]
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/dir_9c4b002ce8795bbd5dbe2cf3421fe13a.html b/doc/api/html/dir_9c4b002ce8795bbd5dbe2cf3421fe13a.html new file mode 100644 index 00000000000..07da63295c6 --- /dev/null +++ b/doc/api/html/dir_9c4b002ce8795bbd5dbe2cf3421fe13a.html @@ -0,0 +1,107 @@ + + + + + +Stan: src Directory Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + +
+ +
+ + +
+
+
+
src Directory Reference
+
+
+ + + + +

+Directories

directory  stan
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/dir_adda0d2b1be4bc1eb47d3b2cf56797af.html b/doc/api/html/dir_adda0d2b1be4bc1eb47d3b2cf56797af.html new file mode 100644 index 00000000000..dcf15d4e0e4 --- /dev/null +++ b/doc/api/html/dir_adda0d2b1be4bc1eb47d3b2cf56797af.html @@ -0,0 +1,147 @@ + + + + + +Stan: src/stan/prob/distributions/univariate/continuous Directory Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + +
+ +
+ + +
+
+
+
continuous Directory Reference
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Files

file  beta.hpp [code]
 
file  cauchy.hpp [code]
 
file  chi_square.hpp [code]
 
file  double_exponential.hpp [code]
 
file  exp_mod_normal.hpp [code]
 
file  exponential.hpp [code]
 
file  gamma.hpp [code]
 
file  gumbel.hpp [code]
 
file  inv_chi_square.hpp [code]
 
file  inv_gamma.hpp [code]
 
file  logistic.hpp [code]
 
file  lognormal.hpp [code]
 
file  normal.hpp [code]
 
file  pareto.hpp [code]
 
file  rayleigh.hpp [code]
 
file  scaled_inv_chi_square.hpp [code]
 
file  skew_normal.hpp [code]
 
file  student_t.hpp [code]
 
file  uniform.hpp [code]
 
file  von_mises.hpp [code]
 
file  weibull.hpp [code]
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/dir_ae30097f91ecf0dffad078cd8b901d6c.html b/doc/api/html/dir_ae30097f91ecf0dffad078cd8b901d6c.html new file mode 100644 index 00000000000..7f9e9323f71 --- /dev/null +++ b/doc/api/html/dir_ae30097f91ecf0dffad078cd8b901d6c.html @@ -0,0 +1,111 @@ + + + + + +Stan: src/stan/prob/distributions/multivariate/discrete Directory Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + +
+ +
+ + +
+
+
+
discrete Directory Reference
+
+
+ + + + + + + + +

+Files

file  categorical.hpp [code]
 
file  categorical_logit.hpp [code]
 
file  multinomial.hpp [code]
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/dir_b1c6471129ce395961fd25e68f861508.html b/doc/api/html/dir_b1c6471129ce395961fd25e68f861508.html new file mode 100644 index 00000000000..ed5dc439775 --- /dev/null +++ b/doc/api/html/dir_b1c6471129ce395961fd25e68f861508.html @@ -0,0 +1,150 @@ + + + + + +Stan: src/stan Directory Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + +
+ +
+ + +
+
+
+
stan Directory Reference
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + +

+Directories

directory  agrad
 
directory  command
 
directory  gm
 
directory  io
 
directory  math
 
directory  mcmc
 
directory  memory
 
directory  meta
 
directory  model
 
directory  optimization
 
directory  prob
 
+ + + + + + + + + + + + + + + + + + + + + +

+Files

file  agrad.hpp [code]
 
file  gm.hpp [code]
 
file  io.hpp [code]
 
file  math.hpp [code]
 
file  mcmc.hpp [code]
 
file  memory.hpp [code]
 
file  meta.hpp [code]
 
file  model.hpp [code]
 
file  prob.hpp [code]
 
file  version.hpp [code]
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/dir_b5faa64c567d6f189426dea685de5e0f.html b/doc/api/html/dir_b5faa64c567d6f189426dea685de5e0f.html new file mode 100644 index 00000000000..903cc504677 --- /dev/null +++ b/doc/api/html/dir_b5faa64c567d6f189426dea685de5e0f.html @@ -0,0 +1,107 @@ + + + + + +Stan: src/stan/agrad/fwd/prob/univariate/continuous Directory Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + +
+ +
+ + +
+
+
+
continuous Directory Reference
+
+
+ + + + +

+Files

file  normal.hpp [code]
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/dir_bfdd916fd7a3310c7c8c32c9dbb4c5dd.html b/doc/api/html/dir_bfdd916fd7a3310c7c8c32c9dbb4c5dd.html new file mode 100644 index 00000000000..2fbe8236659 --- /dev/null +++ b/doc/api/html/dir_bfdd916fd7a3310c7c8c32c9dbb4c5dd.html @@ -0,0 +1,151 @@ + + + + + +Stan: src/stan/gm/grammars Directory Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + +
+ +
+ + +
+
+
+
grammars Directory Reference
+
+ +
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/dir_d06f81619dd9bcc28d70dd2c97937727.html b/doc/api/html/dir_d06f81619dd9bcc28d70dd2c97937727.html new file mode 100644 index 00000000000..e0b4c7a7055 --- /dev/null +++ b/doc/api/html/dir_d06f81619dd9bcc28d70dd2c97937727.html @@ -0,0 +1,237 @@ + + + + + +Stan: src/stan/math/functions Directory Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + +
+ +
+ + +
+
+
+
functions Directory Reference
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Files

file  abs.hpp [code]
 
file  as_bool.hpp [code]
 
file  bessel_first_kind.hpp [code]
 
file  bessel_second_kind.hpp [code]
 
file  binary_log_loss.hpp [code]
 
file  binomial_coefficient_log.hpp [code]
 
file  digamma.hpp [code]
 
file  dist.hpp [code]
 
file  dot.hpp [code]
 
file  dot_self.hpp [code]
 
file  exp2.hpp [code]
 
file  falling_factorial.hpp [code]
 
file  fdim.hpp [code]
 
file  fma.hpp [code]
 
file  gamma_p.hpp [code]
 
file  gamma_q.hpp [code]
 
file  ibeta.hpp [code]
 
file  if_else.hpp [code]
 
file  int_step.hpp [code]
 
file  inv.hpp [code]
 
file  inv_cloglog.hpp [code]
 
file  inv_logit.hpp [code]
 
file  inv_sqrt.hpp [code]
 
file  inv_square.hpp [code]
 
file  inverse_softmax.hpp [code]
 
file  is_uninitialized.hpp [code]
 
file  lbeta.hpp [code]
 
file  lgamma.hpp [code]
 
file  lmgamma.hpp [code]
 
file  log1m.hpp [code]
 
file  log1m_exp.hpp [code]
 
file  log1m_inv_logit.hpp [code]
 
file  log1p.hpp [code]
 
file  log1p_exp.hpp [code]
 
file  log2.hpp [code]
 
file  log_diff_exp.hpp [code]
 
file  log_falling_factorial.hpp [code]
 
file  log_inv_logit.hpp [code]
 
file  log_rising_factorial.hpp [code]
 
file  log_sum_exp.hpp [code]
 
file  logical_and.hpp [code]
 
file  logical_eq.hpp [code]
 
file  logical_gt.hpp [code]
 
file  logical_gte.hpp [code]
 
file  logical_lt.hpp [code]
 
file  logical_lte.hpp [code]
 
file  logical_negation.hpp [code]
 
file  logical_neq.hpp [code]
 
file  logical_or.hpp [code]
 
file  logit.hpp [code]
 
file  max.hpp [code]
 
file  min.hpp [code]
 
file  modified_bessel_first_kind.hpp [code]
 
file  modified_bessel_second_kind.hpp [code]
 
file  multiply_log.hpp [code]
 
file  owens_t.hpp [code]
 
file  Phi.hpp [code]
 
file  Phi_approx.hpp [code]
 
file  rising_factorial.hpp [code]
 
file  scaled_add.hpp [code]
 
file  square.hpp [code]
 
file  step.hpp [code]
 
file  sub.hpp [code]
 
file  sum.hpp [code]
 
file  trigamma.hpp [code]
 
file  value_of.hpp [code]
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/dir_e5fd7b97e7c167e7281b34e17696a6e4.html b/doc/api/html/dir_e5fd7b97e7c167e7281b34e17696a6e4.html new file mode 100644 index 00000000000..1b681593758 --- /dev/null +++ b/doc/api/html/dir_e5fd7b97e7c167e7281b34e17696a6e4.html @@ -0,0 +1,111 @@ + + + + + +Stan: src/stan/mcmc/hmc/integrators Directory Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + +
+ +
+ + +
+
+
+
integrators Directory Reference
+
+
+ + + + + + + + +

+Files

file  base_integrator.hpp [code]
 
file  base_leapfrog.hpp [code]
 
file  expl_leapfrog.hpp [code]
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/dir_e65b8371bb074abd719c6e80ee5d6469.html b/doc/api/html/dir_e65b8371bb074abd719c6e80ee5d6469.html new file mode 100644 index 00000000000..d626f475126 --- /dev/null +++ b/doc/api/html/dir_e65b8371bb074abd719c6e80ee5d6469.html @@ -0,0 +1,121 @@ + + + + + +Stan: src/stan/mcmc/hmc/hamiltonians Directory Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + +
+ +
+ + +
+
+
+
hamiltonians Directory Reference
+
+
+ + + + + + + + + + + + + + + + + + +

+Files

file  base_hamiltonian.hpp [code]
 
file  dense_e_metric.hpp [code]
 
file  dense_e_point.hpp [code]
 
file  diag_e_metric.hpp [code]
 
file  diag_e_point.hpp [code]
 
file  ps_point.hpp [code]
 
file  unit_e_metric.hpp [code]
 
file  unit_e_point.hpp [code]
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/dir_e7242831226ee912bf5f374de664968d.html b/doc/api/html/dir_e7242831226ee912bf5f374de664968d.html new file mode 100644 index 00000000000..b07f927032e --- /dev/null +++ b/doc/api/html/dir_e7242831226ee912bf5f374de664968d.html @@ -0,0 +1,136 @@ + + + + + +Stan: src/stan/mcmc Directory Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + +
+ +
+ + +
+
+
+
mcmc Directory Reference
+
+
+ + + + +

+Directories

directory  hmc
 
+ + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Files

file  base_adaptation.hpp [code]
 
file  base_adapter.hpp [code]
 
file  base_mcmc.hpp [code]
 
file  chains.hpp [code]
 
file  covar_adaptation.hpp [code]
 
file  fixed_param_sampler.hpp [code]
 
file  sample.hpp [code]
 
file  stepsize_adaptation.hpp [code]
 
file  stepsize_adapter.hpp [code]
 
file  stepsize_covar_adapter.hpp [code]
 
file  stepsize_var_adapter.hpp [code]
 
file  var_adaptation.hpp [code]
 
file  windowed_adaptation.hpp [code]
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/dir_e9c236c76d69ff67463df99eaf9c4820.html b/doc/api/html/dir_e9c236c76d69ff67463df99eaf9c4820.html new file mode 100644 index 00000000000..7a0c823929e --- /dev/null +++ b/doc/api/html/dir_e9c236c76d69ff67463df99eaf9c4820.html @@ -0,0 +1,119 @@ + + + + + +Stan: src/stan/mcmc/hmc/static Directory Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + +
+ +
+ + +
+
+
+
static Directory Reference
+
+ +
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/dir_f2ec37f115c79ba754de20300359aed5.html b/doc/api/html/dir_f2ec37f115c79ba754de20300359aed5.html new file mode 100644 index 00000000000..95830631029 --- /dev/null +++ b/doc/api/html/dir_f2ec37f115c79ba754de20300359aed5.html @@ -0,0 +1,148 @@ + + + + + +Stan: src/stan/agrad/rev Directory Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + +
+ +
+ + +
+
+
+
rev Directory Reference
+
+
+ + + + + + + + + + + + +

+Directories

directory  error_handling
 
directory  functions
 
directory  internal
 
directory  matrix
 
directory  operators
 
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Files

file  boost_fpclassify.hpp [code]
 
file  calculate_chain.hpp [code]
 
file  chainable.hpp [code]
 
file  error_handling.hpp [code]
 
file  functions.hpp [code]
 
file  internal.hpp [code]
 
file  jacobian.hpp [code]
 
file  matrix.hpp [code]
 
file  numeric_limits.hpp [code]
 
file  operators.hpp [code]
 
file  print_stack.hpp [code]
 
file  var.hpp [code]
 
file  var_stack.cpp [code]
 
file  var_stack.hpp [code]
 
file  vari.hpp [code]
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/dir_f3e98ab768ca388ef4baecb6d973adcf.html b/doc/api/html/dir_f3e98ab768ca388ef4baecb6d973adcf.html new file mode 100644 index 00000000000..8db480d9125 --- /dev/null +++ b/doc/api/html/dir_f3e98ab768ca388ef4baecb6d973adcf.html @@ -0,0 +1,111 @@ + + + + + +Stan: src/stan/optimization Directory Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + +
+ +
+ + +
+
+
+
optimization Directory Reference
+
+
+ + + + + + + + +

+Files

file  bfgs.hpp [code]
 
file  nesterov_gradient.hpp [code]
 
file  newton.hpp [code]
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/dir_f77850045c6d72da1ced64bfc8354271.html b/doc/api/html/dir_f77850045c6d72da1ced64bfc8354271.html new file mode 100644 index 00000000000..a4345b1aa9b --- /dev/null +++ b/doc/api/html/dir_f77850045c6d72da1ced64bfc8354271.html @@ -0,0 +1,251 @@ + + + + + +Stan: src/stan/agrad/rev/functions Directory Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + +
+ +
+ + +
+
+
+
functions Directory Reference
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Files

file  abs.hpp [code]
 
file  acos.hpp [code]
 
file  acosh.hpp [code]
 
file  as_bool.hpp [code]
 
file  asin.hpp [code]
 
file  asinh.hpp [code]
 
file  atan.hpp [code]
 
file  atan2.hpp [code]
 
file  atanh.hpp [code]
 
file  bessel_first_kind.hpp [code]
 
file  bessel_second_kind.hpp [code]
 
file  binary_log_loss.hpp [code]
 
file  cbrt.hpp [code]
 
file  ceil.hpp [code]
 
file  cos.hpp [code]
 
file  cosh.hpp [code]
 
file  digamma.hpp [code]
 
file  erf.hpp [code]
 
file  erfc.hpp [code]
 
file  exp.hpp [code]
 
file  exp2.hpp [code]
 
file  expm1.hpp [code]
 
file  fabs.hpp [code]
 
file  falling_factorial.hpp [code]
 
file  fdim.hpp [code]
 
file  floor.hpp [code]
 
file  fma.hpp [code]
 
file  fmax.hpp [code]
 
file  fmin.hpp [code]
 
file  fmod.hpp [code]
 
file  gamma_p.hpp [code]
 
file  gamma_q.hpp [code]
 
file  hypot.hpp [code]
 
file  ibeta.hpp [code]
 
file  if_else.hpp [code]
 
file  inv.hpp [code]
 
file  inv_cloglog.hpp [code]
 
file  inv_logit.hpp [code]
 
file  inv_sqrt.hpp [code]
 
file  inv_square.hpp [code]
 
file  is_uninitialized.hpp [code]
 
file  lgamma.hpp [code]
 
file  lmgamma.hpp [code]
 
file  log.hpp [code]
 
file  log10.hpp [code]
 
file  log1m.hpp [code]
 
file  log1m_exp.hpp [code]
 
file  log1p.hpp [code]
 
file  log1p_exp.hpp [code]
 
file  log2.hpp [code]
 
file  log_diff_exp.hpp [code]
 
file  log_falling_factorial.hpp [code]
 
file  log_rising_factorial.hpp [code]
 
file  log_sum_exp.hpp [code]
 
file  modified_bessel_first_kind.hpp [code]
 
file  modified_bessel_second_kind.hpp [code]
 
file  multiply_log.hpp [code]
 
file  owens_t.hpp [code]
 
file  Phi.hpp [code]
 
file  Phi_approx.hpp [code]
 
file  pow.hpp [code]
 
file  rising_factorial.hpp [code]
 
file  round.hpp [code]
 
file  sin.hpp [code]
 
file  sinh.hpp [code]
 
file  sqrt.hpp [code]
 
file  square.hpp [code]
 
file  step.hpp [code]
 
file  tan.hpp [code]
 
file  tanh.hpp [code]
 
file  tgamma.hpp [code]
 
file  trunc.hpp [code]
 
file  value_of.hpp [code]
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/dir_fb5291ba38e4a736e77d8ba78c86369a.html b/doc/api/html/dir_fb5291ba38e4a736e77d8ba78c86369a.html new file mode 100644 index 00000000000..f4c48217f82 --- /dev/null +++ b/doc/api/html/dir_fb5291ba38e4a736e77d8ba78c86369a.html @@ -0,0 +1,126 @@ + + + + + +Stan: src/stan/agrad/fwd Directory Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + +
+ +
+ + +
+
+
+
fwd Directory Reference
+
+
+ + + + + + + + + + +

+Directories

directory  functions
 
directory  matrix
 
directory  operators
 
directory  prob
 
+ + + + + + + + + + + +

+Files

file  functions.hpp [code]
 
file  fvar.hpp [code]
 
file  matrix.hpp [code]
 
file  numeric_limits.hpp [code]
 
file  operators.hpp [code]
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/dirichlet_8hpp.html b/doc/api/html/dirichlet_8hpp.html new file mode 100644 index 00000000000..2789e636f84 --- /dev/null +++ b/doc/api/html/dirichlet_8hpp.html @@ -0,0 +1,147 @@ + + + + + +Stan: src/stan/prob/distributions/multivariate/continuous/dirichlet.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
dirichlet.hpp File Reference
+
+
+
#include <boost/math/special_functions/gamma.hpp>
+#include <boost/random/gamma_distribution.hpp>
+#include <boost/random/variate_generator.hpp>
+#include <stan/prob/constants.hpp>
+#include <stan/math/matrix_error_handling.hpp>
+#include <stan/math/error_handling.hpp>
+#include <stan/prob/traits.hpp>
+#include <stan/math/functions/multiply_log.hpp>
+
+

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::prob
 Templated probability distributions.
 
+ + + + + + + + + + + +

+Functions

template<bool propto, typename T_prob , typename T_prior_sample_size >
boost::math::tools::promote_args
+< T_prob, T_prior_sample_size >
+::type 
stan::prob::dirichlet_log (const Eigen::Matrix< T_prob, Eigen::Dynamic, 1 > &theta, const Eigen::Matrix< T_prior_sample_size, Eigen::Dynamic, 1 > &alpha)
 The log of the Dirichlet density for the given theta and a vector of prior sample sizes, alpha.
 
template<typename T_prob , typename T_prior_sample_size >
boost::math::tools::promote_args
+< T_prob, T_prior_sample_size >
+::type 
stan::prob::dirichlet_log (const Eigen::Matrix< T_prob, Eigen::Dynamic, 1 > &theta, const Eigen::Matrix< T_prior_sample_size, Eigen::Dynamic, 1 > &alpha)
 
template<class RNG >
Eigen::VectorXd stan::prob::dirichlet_rng (const Eigen::Matrix< double, Eigen::Dynamic, 1 > &alpha, RNG &rng)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/dirichlet_8hpp_source.html b/doc/api/html/dirichlet_8hpp_source.html new file mode 100644 index 00000000000..d3fa463bf76 --- /dev/null +++ b/doc/api/html/dirichlet_8hpp_source.html @@ -0,0 +1,189 @@ + + + + + +Stan: src/stan/prob/distributions/multivariate/continuous/dirichlet.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
dirichlet.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__PROB__DISTRIBUTIONS__MULTIVARIATE__CONTINUOUS__DIRICHLET_HPP__
+
2 #define __STAN__PROB__DISTRIBUTIONS__MULTIVARIATE__CONTINUOUS__DIRICHLET_HPP__
+
3 
+
4 #include <boost/math/special_functions/gamma.hpp>
+
5 #include <boost/random/gamma_distribution.hpp>
+
6 #include <boost/random/variate_generator.hpp>
+
7 
+ + + +
11 #include <stan/prob/traits.hpp>
+ +
13 
+
14 namespace stan {
+
15 
+
16  namespace prob {
+
17 
+
43  template <bool propto,
+
44  typename T_prob, typename T_prior_sample_size>
+
45  typename boost::math::tools::promote_args<T_prob,T_prior_sample_size>::type
+
46  dirichlet_log(const Eigen::Matrix<T_prob,Eigen::Dynamic,1>& theta,
+
47  const Eigen::Matrix<T_prior_sample_size,Eigen::Dynamic,1>& alpha) {
+
48  static const char* function = "stan::prob::dirichlet_log(%1%)";
+
49  using boost::math::lgamma;
+
50  using boost::math::tools::promote_args;
+ + + + +
55 
+
56  typename promote_args<T_prob,T_prior_sample_size>::type lp(0.0);
+
57  if (!check_consistent_sizes(function, theta, alpha,
+
58  "probabilities", "prior sample sizes",
+
59  &lp))
+
60  return lp;
+
61  if (!check_positive(function, alpha, "prior sample sizes", &lp))
+
62  return lp;
+
63  if (!check_simplex(function, theta, "probabilities", &lp))
+
64  return lp;
+
65 
+ +
67  lp += lgamma(alpha.sum());
+
68  for (int k = 0; k < alpha.rows(); ++k)
+
69  lp -= lgamma(alpha[k]);
+
70  }
+ +
72  for (int k = 0; k < theta.rows(); ++k)
+
73  lp += multiply_log(alpha[k]-1, theta[k]);
+
74  return lp;
+
75  }
+
76 
+
77  template <typename T_prob, typename T_prior_sample_size>
+
78  inline
+
79  typename boost::math::tools::promote_args<T_prob,T_prior_sample_size>::type
+
80  dirichlet_log(const Eigen::Matrix<T_prob,Eigen::Dynamic,1>& theta,
+
81  const Eigen::Matrix<T_prior_sample_size,Eigen::Dynamic,1>& alpha) {
+
82  return dirichlet_log<false>(theta,alpha);
+
83  }
+
84 
+
85  template <class RNG>
+
86  inline Eigen::VectorXd
+
87  dirichlet_rng(const Eigen::Matrix<double,Eigen::Dynamic,1>& alpha,
+
88  RNG& rng) {
+
89  using boost::variate_generator;
+
90  using boost::gamma_distribution;
+
91 
+
92  double sum = 0;
+
93  Eigen::VectorXd y(alpha.rows());
+
94  for(int i = 0; i < alpha.rows(); i++) {
+
95  variate_generator<RNG&, gamma_distribution<> >
+
96  gamma_rng(rng, gamma_distribution<>(alpha(i,0),1));
+
97  y(i) = gamma_rng();
+
98  sum += y(i);
+
99  }
+
100 
+
101  for(int i = 0; i < alpha.rows(); i++)
+
102  y(i) /= sum;
+
103  return y;
+
104  }
+
105  }
+
106 }
+
107 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/dist_8hpp.html b/doc/api/html/dist_8hpp.html new file mode 100644 index 00000000000..6a97d1b9380 --- /dev/null +++ b/doc/api/html/dist_8hpp.html @@ -0,0 +1,130 @@ + + + + + +Stan: src/stan/math/functions/dist.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
dist.hpp File Reference
+
+
+
#include <vector>
+#include <cstddef>
+#include <cmath>
+
+

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::math
 Matrices and templated mathematical functions.
 
+ + + +

+Functions

double stan::math::dist (const std::vector< double > &x, const std::vector< double > &y)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/dist_8hpp_source.html b/doc/api/html/dist_8hpp_source.html new file mode 100644 index 00000000000..4b285ee89cd --- /dev/null +++ b/doc/api/html/dist_8hpp_source.html @@ -0,0 +1,131 @@ + + + + + +Stan: src/stan/math/functions/dist.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
dist.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MATH__FUNCTIONS__DIST_HPP__
+
2 #define __STAN__MATH__FUNCTIONS__DIST_HPP__
+
3 
+
4 #include <vector>
+
5 #include <cstddef>
+
6 #include <cmath>
+
7 
+
8 namespace stan {
+
9  namespace math {
+
10 
+
11  inline double dist(const std::vector<double>& x, const std::vector<double>& y) {
+
12  using std::sqrt;
+
13  double result = 0;
+
14  for (size_t i = 0; i < x.size(); ++i) {
+
15  double diff = x[i] - y[i];
+
16  result += diff * diff;
+
17  }
+
18  return sqrt(result);
+
19  }
+
20 
+
21  }
+
22 }
+
23 
+
24 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/distance_8hpp.html b/doc/api/html/distance_8hpp.html new file mode 100644 index 00000000000..07b778cd6c2 --- /dev/null +++ b/doc/api/html/distance_8hpp.html @@ -0,0 +1,134 @@ + + + + + +Stan: src/stan/math/matrix/distance.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
distance.hpp File Reference
+
+
+
#include <stan/math/matrix/Eigen.hpp>
+#include <stan/meta/traits.hpp>
+#include <boost/math/tools/promotion.hpp>
+#include <stan/math/matrix/squared_distance.hpp>
+
+

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::math
 Matrices and templated mathematical functions.
 
+ + + + + +

+Functions

template<typename T1 , int R1, int C1, typename T2 , int R2, int C2>
boost::math::tools::promote_args
+< T1, T2 >::type 
stan::math::distance (const Eigen::Matrix< T1, R1, C1 > &v1, const Eigen::Matrix< T2, R2, C2 > &v2)
 Returns the distance between the specified vectors.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/distance_8hpp_source.html b/doc/api/html/distance_8hpp_source.html new file mode 100644 index 00000000000..3d643341f6c --- /dev/null +++ b/doc/api/html/distance_8hpp_source.html @@ -0,0 +1,128 @@ + + + + + +Stan: src/stan/math/matrix/distance.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
distance.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MATH__MATRIX__DISTANCE_HPP__
+
2 #define __STAN__MATH__MATRIX__DISTANCE_HPP__
+
3 
+ +
5 #include <stan/meta/traits.hpp>
+
6 #include <boost/math/tools/promotion.hpp>
+ +
8 
+
9 namespace stan {
+
10  namespace math {
+
11 
+
21  template<typename T1, int R1,int C1, typename T2, int R2, int C2>
+
22  inline typename boost::math::tools::promote_args<T1,T2>::type
+
23  distance(const Eigen::Matrix<T1, R1, C1>& v1,
+
24  const Eigen::Matrix<T2, R2, C2>& v2) {
+
25  using std::sqrt;
+
26  return sqrt(squared_distance(v1,v2));
+
27  }
+
28  }
+
29 }
+
30 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/distributions_8hpp.html b/doc/api/html/distributions_8hpp.html new file mode 100644 index 00000000000..8094099c881 --- /dev/null +++ b/doc/api/html/distributions_8hpp.html @@ -0,0 +1,111 @@ + + + + + +Stan: src/stan/prob/distributions.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
distributions.hpp File Reference
+
+ +
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/distributions_8hpp_source.html b/doc/api/html/distributions_8hpp_source.html new file mode 100644 index 00000000000..2bd308b7211 --- /dev/null +++ b/doc/api/html/distributions_8hpp_source.html @@ -0,0 +1,114 @@ + + + + + +Stan: src/stan/prob/distributions.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
distributions.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__PROB__DISTRIBUTIONS_HPP__
+
2 #define __STAN__PROB__DISTRIBUTIONS_HPP__
+
3 
+ + +
6 
+
7 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/dom__err_8hpp.html b/doc/api/html/dom__err_8hpp.html new file mode 100644 index 00000000000..45f00d7535c --- /dev/null +++ b/doc/api/html/dom__err_8hpp.html @@ -0,0 +1,131 @@ + + + + + +Stan: src/stan/math/error_handling/dom_err.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
dom_err.hpp File Reference
+
+
+
#include <sstream>
+#include <boost/math/policies/policy.hpp>
+#include <stan/math/error_handling/raise_domain_error.hpp>
+
+

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::math
 Matrices and templated mathematical functions.
 
+ + + + +

+Functions

template<typename T_y , typename T_result , typename T_msg2 >
bool stan::math::dom_err (const char *function, const T_y &y, const char *name, const char *error_msg, T_msg2 error_msg2, T_result *result)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/dom__err_8hpp_source.html b/doc/api/html/dom__err_8hpp_source.html new file mode 100644 index 00000000000..8b25b59c2cb --- /dev/null +++ b/doc/api/html/dom__err_8hpp_source.html @@ -0,0 +1,153 @@ + + + + + +Stan: src/stan/math/error_handling/dom_err.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
dom_err.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MATH__ERROR_HANDLING__DOM_ERR_HPP__
+
2 #define __STAN__MATH__ERROR_HANDLING__DOM_ERR_HPP__
+
3 
+
4 #include <sstream>
+
5 #include <boost/math/policies/policy.hpp>
+ +
7 
+
8 namespace stan {
+
9  namespace math {
+
10 
+
11  namespace {
+
12  // local output stream for pairs
+
13  template <typename T1, typename T2>
+
14  std::ostream& operator<<(std::ostream& o,
+
15  std::pair<T1,T2> xs) {
+
16  o << '(' << xs.first << ", " << xs.second << ')';
+
17  return o;
+
18  }
+
19  }
+
20 
+
21 
+
22  template <typename T_y,
+
23  typename T_result,
+
24  typename T_msg2>
+
25  inline bool dom_err(const char* function,
+
26  const T_y& y,
+
27  const char* name,
+
28  const char* error_msg,
+
29  T_msg2 error_msg2,
+
30  T_result* result) {
+ +
32  std::ostringstream msg_o;
+
33  msg_o << name << error_msg << error_msg2;
+
34  std::string msg(msg_o.str());
+
35  T_result tmp = raise_domain_error<T_result,T_y>(function,
+
36  msg.c_str(),
+
37  y,
+
38  boost::math::policies::policy<>());
+
39  if (result != 0)
+
40  *result = tmp;
+
41  return false;
+
42  }
+
43 
+
44  }
+
45 }
+
46 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/dom__err__vec_8hpp.html b/doc/api/html/dom__err__vec_8hpp.html new file mode 100644 index 00000000000..1131ec00a3e --- /dev/null +++ b/doc/api/html/dom__err__vec_8hpp.html @@ -0,0 +1,132 @@ + + + + + +Stan: src/stan/math/error_handling/dom_err_vec.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
dom_err_vec.hpp File Reference
+
+
+
#include <sstream>
+#include <boost/math/policies/policy.hpp>
+#include <stan/meta/traits.hpp>
+#include <stan/math/error_handling/raise_domain_error.hpp>
+
+

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::math
 Matrices and templated mathematical functions.
 
+ + + + +

+Functions

template<typename T_y , typename T_result , typename T_msg2 >
bool stan::math::dom_err_vec (size_t i, const char *function, const T_y &y, const char *name, const char *error_msg, T_msg2 error_msg2, T_result *result)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/dom__err__vec_8hpp_source.html b/doc/api/html/dom__err__vec_8hpp_source.html new file mode 100644 index 00000000000..d18036b859d --- /dev/null +++ b/doc/api/html/dom__err__vec_8hpp_source.html @@ -0,0 +1,147 @@ + + + + + +Stan: src/stan/math/error_handling/dom_err_vec.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
dom_err_vec.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MATH__ERROR_HANDLING__DOM_ERR_VEC_HPP__
+
2 #define __STAN__MATH__ERROR_HANDLING__DOM_ERR_VEC_HPP__
+
3 
+
4 #include <sstream>
+
5 #include <boost/math/policies/policy.hpp>
+
6 #include <stan/meta/traits.hpp>
+ +
8 
+
9 namespace stan {
+
10  namespace math {
+
11 
+
12  template <typename T_y,
+
13  typename T_result,
+
14  typename T_msg2>
+
15  inline bool dom_err_vec(size_t i,
+
16  const char* function,
+
17  const T_y& y,
+
18  const char* name,
+
19  const char* error_msg,
+
20  T_msg2 error_msg2,
+
21  T_result* result) {
+ +
23  std::ostringstream msg_o;
+
24  msg_o << name << "[" << i << "] " << error_msg << error_msg2;
+
25  std::string msg(msg_o.str());
+
26  T_result tmp
+
27  = raise_domain_error<T_result,
+
28  typename T_y::value_type>(function,
+
29  msg.c_str(),
+
30  stan::get(y,i),
+
31  boost::math::policies::policy<>());
+
32  if (result != 0)
+
33  *result = tmp;
+
34  return false;
+
35  }
+
36 
+
37 
+
38  }
+
39 }
+
40 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/dot_8hpp.html b/doc/api/html/dot_8hpp.html new file mode 100644 index 00000000000..ab0f0604c35 --- /dev/null +++ b/doc/api/html/dot_8hpp.html @@ -0,0 +1,129 @@ + + + + + +Stan: src/stan/math/functions/dot.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
dot.hpp File Reference
+
+
+
#include <vector>
+#include <cstddef>
+
+

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::math
 Matrices and templated mathematical functions.
 
+ + + +

+Functions

double stan::math::dot (const std::vector< double > &x, const std::vector< double > &y)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/dot_8hpp_source.html b/doc/api/html/dot_8hpp_source.html new file mode 100644 index 00000000000..1450e338716 --- /dev/null +++ b/doc/api/html/dot_8hpp_source.html @@ -0,0 +1,129 @@ + + + + + +Stan: src/stan/math/functions/dot.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
dot.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MATH__FUNCTIONS__DOT_HPP__
+
2 #define __STAN__MATH__FUNCTIONS__DOT_HPP__
+
3 
+
4 #include <vector>
+
5 #include <cstddef>
+
6 
+
7 namespace stan {
+
8  namespace math {
+
9 
+
10  // x' * y
+
11  inline double dot(const std::vector<double>& x,
+
12  const std::vector<double>& y) {
+
13  double sum = 0.0;
+
14  for (size_t i = 0; i < x.size(); ++i)
+
15  sum += x[i] * y[i];
+
16  return sum;
+
17  }
+
18 
+
19  }
+
20 }
+
21 
+
22 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/double__exponential_8hpp.html b/doc/api/html/double__exponential_8hpp.html new file mode 100644 index 00000000000..96698cdbdf0 --- /dev/null +++ b/doc/api/html/double__exponential_8hpp.html @@ -0,0 +1,160 @@ + + + + + +Stan: src/stan/prob/distributions/univariate/continuous/double_exponential.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
double_exponential.hpp File Reference
+
+
+
#include <boost/random/uniform_01.hpp>
+#include <boost/random/variate_generator.hpp>
+#include <stan/agrad/partials_vari.hpp>
+#include <stan/math/error_handling.hpp>
+#include <stan/math/functions/value_of.hpp>
+#include <stan/meta/traits.hpp>
+#include <stan/prob/constants.hpp>
+#include <stan/prob/traits.hpp>
+
+

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::prob
 Templated probability distributions.
 
+ + + + + + + + + + + + + + + + + + + + + + + +

+Functions

template<typename T >
int stan::prob::sign (const T &z)
 
template<bool propto, typename T_y , typename T_loc , typename T_scale >
return_type< T_y, T_loc,
+T_scale >::type 
stan::prob::double_exponential_log (const T_y &y, const T_loc &mu, const T_scale &sigma)
 
template<typename T_y , typename T_loc , typename T_scale >
return_type< T_y, T_loc,
+T_scale >::type 
stan::prob::double_exponential_log (const T_y &y, const T_loc &mu, const T_scale &sigma)
 
template<typename T_y , typename T_loc , typename T_scale >
return_type< T_y, T_loc,
+T_scale >::type 
stan::prob::double_exponential_cdf (const T_y &y, const T_loc &mu, const T_scale &sigma)
 Calculates the double exponential cumulative density function.
 
template<typename T_y , typename T_loc , typename T_scale >
return_type< T_y, T_loc,
+T_scale >::type 
stan::prob::double_exponential_cdf_log (const T_y &y, const T_loc &mu, const T_scale &sigma)
 
template<typename T_y , typename T_loc , typename T_scale >
return_type< T_y, T_loc,
+T_scale >::type 
stan::prob::double_exponential_ccdf_log (const T_y &y, const T_loc &mu, const T_scale &sigma)
 
template<class RNG >
double stan::prob::double_exponential_rng (const double mu, const double sigma, RNG &rng)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/double__exponential_8hpp_source.html b/doc/api/html/double__exponential_8hpp_source.html new file mode 100644 index 00000000000..e3f9ef0027b --- /dev/null +++ b/doc/api/html/double__exponential_8hpp_source.html @@ -0,0 +1,522 @@ + + + + + +Stan: src/stan/prob/distributions/univariate/continuous/double_exponential.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
double_exponential.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__PROB__DISTRIBUTIONS__DOUBLE_EXPONENTIAL_HPP__
+
2 #define __STAN__PROB__DISTRIBUTIONS__DOUBLE_EXPONENTIAL_HPP__
+
3 
+
4 #include <boost/random/uniform_01.hpp>
+
5 #include <boost/random/variate_generator.hpp>
+
6 
+ + + +
10 #include <stan/meta/traits.hpp>
+
11 #include <stan/prob/constants.hpp>
+
12 #include <stan/prob/traits.hpp>
+
13 
+
14 namespace stan {
+
15 
+
16  namespace prob {
+
17  template<typename T>
+
18  inline int sign(const T& z) {
+
19  return (z == 0) ? 0 : z < 0 ? -1 : 1;
+
20  }
+
21 
+
22  // DoubleExponential(y|mu,sigma) [sigma > 0]
+
23  // FIXME: add documentation
+
24  template <bool propto,
+
25  typename T_y, typename T_loc, typename T_scale>
+ +
27  double_exponential_log(const T_y& y,
+
28  const T_loc& mu, const T_scale& sigma) {
+
29  static const char* function
+
30  = "stan::prob::double_exponential_log(%1%)";
+
31 
+ + + + + + +
38  using std::log;
+
39  using std::fabs;
+
40 
+
41  // check if any vectors are zero length
+
42  if (!(stan::length(y)
+
43  && stan::length(mu)
+
44  && stan::length(sigma)))
+
45  return 0.0;
+
46 
+
47  // set up return value accumulator
+
48  double logp(0.0);
+
49  if(!check_finite(function, y, "Random variable", &logp))
+
50  return logp;
+
51  if(!check_finite(function, mu, "Location parameter",
+
52  &logp))
+
53  return logp;
+
54  if(!check_finite(function, sigma, "Scale parameter",
+
55  &logp))
+
56  return logp;
+
57  if(!check_positive(function, sigma, "Scale parameter",
+
58  &logp))
+
59  return logp;
+
60  if (!(check_consistent_sizes(function,
+
61  y,mu,sigma,
+
62  "Random variable","Location parameter","Shape parameter",
+
63  &logp)))
+
64  return logp;
+
65 
+
66  // check if no variables are involved and prop-to
+ +
68  return 0.0;
+
69 
+
70  // set up template expressions wrapping scalars into vector views
+
71  VectorView<const T_y> y_vec(y);
+
72  VectorView<const T_loc> mu_vec(mu);
+
73  VectorView<const T_scale> sigma_vec(sigma);
+
74  size_t N = max_size(y, mu, sigma);
+
75  agrad::OperandsAndPartials<T_y,T_loc,T_scale> operands_and_partials(y, mu, sigma);
+
76 
+ +
78  inv_sigma(length(sigma));
+ +
80  inv_sigma_squared(length(sigma));
+ +
82  log_sigma(length(sigma));
+
83  for (size_t i = 0; i < length(sigma); i++) {
+
84  const double sigma_dbl = value_of(sigma_vec[i]);
+ +
86  inv_sigma[i] = 1.0 / sigma_dbl;
+ +
88  log_sigma[i] = log(value_of(sigma_vec[i]));
+ +
90  inv_sigma_squared[i] = inv_sigma[i] * inv_sigma[i];
+
91  }
+
92 
+
93 
+
94  for (size_t n = 0; n < N; n++) {
+
95  const double y_dbl = value_of(y_vec[n]);
+
96  const double mu_dbl = value_of(mu_vec[n]);
+
97 
+
98  // reusable subexpressions values
+
99  const double y_m_mu = y_dbl - mu_dbl;
+
100  const double fabs_y_m_mu = fabs(y_m_mu);
+
101 
+
102  // log probability
+ +
104  logp += NEG_LOG_TWO;
+ +
106  logp -= log_sigma[n];
+ +
108  logp -= fabs_y_m_mu * inv_sigma[n];
+
109 
+
110  // gradients
+
111  double sign_y_m_mu_times_inv_sigma(0);
+ +
113  sign_y_m_mu_times_inv_sigma = sign(y_m_mu) * inv_sigma[n];
+ +
115  operands_and_partials.d_x1[n] -= sign_y_m_mu_times_inv_sigma;
+
116  }
+ +
118  operands_and_partials.d_x2[n] += sign_y_m_mu_times_inv_sigma;
+
119  }
+ +
121  operands_and_partials.d_x3[n] += -inv_sigma[n] + fabs_y_m_mu * inv_sigma_squared[n];
+
122  }
+
123  return operands_and_partials.to_var(logp);
+
124  }
+
125 
+
126 
+
127  template <typename T_y, typename T_loc, typename T_scale>
+ +
129  double_exponential_log(const T_y& y, const T_loc& mu,
+
130  const T_scale& sigma) {
+
131  return double_exponential_log<false>(y,mu,sigma);
+
132  }
+
133 
+
148  template <typename T_y, typename T_loc, typename T_scale>
+ +
150  double_exponential_cdf(const T_y& y,
+
151  const T_loc& mu, const T_scale& sigma) {
+
152  static const char* function
+
153  = "stan::prob::double_exponential_cdf(%1%)";
+
154 
+
155  // Size checks
+
156  if ( !( stan::length(y) && stan::length(mu)
+
157  && stan::length(sigma) ) )
+
158  return 1.0;
+
159 
+
160  using stan::math::value_of;
+ + + +
164  using boost::math::tools::promote_args;
+
165 
+
166  double cdf(1.0);
+
167  if(!check_not_nan(function, y, "Random variable", &cdf))
+
168  return cdf;
+
169  if(!check_finite(function, mu, "Location parameter", &cdf))
+
170  return cdf;
+
171  if(!check_finite(function, sigma, "Scale parameter", &cdf))
+
172  return cdf;
+
173  if(!check_positive(function, sigma, "Scale parameter", &cdf))
+
174  return cdf;
+
175 
+ +
177  operands_and_partials(y, mu, sigma);
+
178 
+
179  VectorView<const T_y> y_vec(y);
+
180  VectorView<const T_loc> mu_vec(mu);
+
181  VectorView<const T_scale> sigma_vec(sigma);
+
182  size_t N = max_size(y, mu, sigma);
+
183 
+
184  //cdf
+
185  for (size_t n = 0; n < N; n++) {
+
186  const double y_dbl = value_of(y_vec[n]);
+
187  const double mu_dbl = value_of(mu_vec[n]);
+
188  const double sigma_dbl = value_of(sigma_vec[n]);
+
189  const double scaled_diff = (y_dbl - mu_dbl) / (sigma_dbl);
+
190  const double exp_scaled_diff = exp(scaled_diff);
+
191 
+
192  if(y_dbl < mu_dbl) {
+
193  cdf *= exp_scaled_diff * 0.5;
+
194  }
+
195  else
+
196  cdf *= 1.0 - 0.5 / exp_scaled_diff;
+
197  }
+
198 
+
199  //gradients
+
200  for (size_t n = 0; n < N; n++) {
+
201  const double y_dbl = value_of(y_vec[n]);
+
202  const double mu_dbl = value_of(mu_vec[n]);
+
203  const double sigma_dbl = value_of(sigma_vec[n]);
+
204  const double scaled_diff = (y_dbl - mu_dbl) / sigma_dbl;
+
205  const double exp_scaled_diff = exp(scaled_diff);
+
206  const double inv_sigma = 1.0 / sigma_dbl;
+
207 
+
208  if(y_dbl < mu_dbl) {
+ +
210  operands_and_partials.d_x1[n] += inv_sigma * cdf;
+ +
212  operands_and_partials.d_x2[n] -= inv_sigma * cdf;
+ +
214  operands_and_partials.d_x3[n] -= scaled_diff * inv_sigma * cdf;
+
215  }
+
216  else {
+
217  const double rep_deriv = cdf * inv_sigma / (2.0 * exp_scaled_diff
+
218  - 1.0);
+ +
220  operands_and_partials.d_x1[n] += rep_deriv;
+ +
222  operands_and_partials.d_x2[n] -= rep_deriv;
+ +
224  operands_and_partials.d_x3[n] -= rep_deriv * scaled_diff;
+
225  }
+
226  }
+
227  return operands_and_partials.to_var(cdf);
+
228  }
+
229 
+
230  template <typename T_y, typename T_loc, typename T_scale>
+ +
232  double_exponential_cdf_log(const T_y& y, const T_loc& mu,
+
233  const T_scale& sigma) {
+
234  static const char* function
+
235  = "stan::prob::double_exponential_cdf_log(%1%)";
+
236 
+ + + + +
241  using stan::math::value_of;
+
242 
+
243  double cdf_log(0.0);
+
244 
+
245  // check if any vectors are zero length
+
246  if (!(stan::length(y)
+
247  && stan::length(mu)
+
248  && stan::length(sigma)))
+
249  return cdf_log;
+
250 
+
251  if(!check_not_nan(function, y, "Random variable", &cdf_log))
+
252  return cdf_log;
+
253  if(!check_finite(function, mu, "Location parameter", &cdf_log))
+
254  return cdf_log;
+
255  if(!check_finite(function, sigma, "Scale parameter", &cdf_log))
+
256  return cdf_log;
+
257  if(!check_positive(function, sigma, "Scale parameter", &cdf_log))
+
258  return cdf_log;
+
259  if (!(check_consistent_sizes(function, y, mu, sigma,
+
260  "Random variable", "Location parameter",
+
261  "Scale Parameter", &cdf_log)))
+
262  return cdf_log;
+
263 
+
264  using std::log;
+
265  using std::exp;
+
266 
+ +
268  operands_and_partials(y, mu, sigma);
+
269 
+
270  VectorView<const T_y> y_vec(y);
+
271  VectorView<const T_loc> mu_vec(mu);
+
272  VectorView<const T_scale> sigma_vec(sigma);
+
273  const double log_half = std::log(0.5);
+
274  size_t N = max_size(y, mu, sigma);
+
275 
+
276  for (size_t n = 0; n < N; n++) {
+
277  const double y_dbl = value_of(y_vec[n]);
+
278  const double mu_dbl = value_of(mu_vec[n]);
+
279  const double sigma_dbl = value_of(sigma_vec[n]);
+
280  const double scaled_diff = (y_dbl - mu_dbl) / sigma_dbl;
+
281  const double inv_sigma = 1.0 / sigma_dbl;
+
282  if(y_dbl < mu_dbl) {
+
283  // log cdf
+
284  cdf_log += log_half + scaled_diff;
+
285 
+
286  // gradients
+ +
288  operands_and_partials.d_x1[n] += inv_sigma;
+ +
290  operands_and_partials.d_x2[n] -= inv_sigma;
+ +
292  operands_and_partials.d_x3[n] -= scaled_diff * inv_sigma;
+
293  }
+
294  else {
+
295  //log cdf
+
296  cdf_log += log(1.0 - 0.5 * exp(-scaled_diff));
+
297 
+
298  //gradients
+
299  const double rep_deriv = 1.0 / (2.0 * exp(scaled_diff) - 1.0);
+ +
301  operands_and_partials.d_x1[n] += rep_deriv * inv_sigma;
+ +
303  operands_and_partials.d_x2[n] -= rep_deriv * inv_sigma;
+ +
305  operands_and_partials.d_x3[n] -= rep_deriv * scaled_diff
+
306  * inv_sigma;
+
307  }
+
308  }
+
309  return operands_and_partials.to_var(cdf_log);
+
310  }
+
311 
+
312  template <typename T_y, typename T_loc, typename T_scale>
+ +
314  double_exponential_ccdf_log(const T_y& y, const T_loc& mu,
+
315  const T_scale& sigma) {
+
316  static const char* function
+
317  = "stan::prob::double_exponential_ccdf_log(%1%)";
+
318 
+ + + + +
323  using stan::math::value_of;
+
324 
+
325  double ccdf_log(0.0);
+
326 
+
327  // check if any vectors are zero length
+
328  if (!(stan::length(y)
+
329  && stan::length(mu)
+
330  && stan::length(sigma)))
+
331  return ccdf_log;
+
332 
+
333  if(!check_not_nan(function, y, "Random variable", &ccdf_log))
+
334  return ccdf_log;
+
335  if(!check_finite(function, mu, "Location parameter", &ccdf_log))
+
336  return ccdf_log;
+
337  if(!check_finite(function, sigma, "Scale parameter", &ccdf_log))
+
338  return ccdf_log;
+
339  if(!check_positive(function, sigma, "Scale parameter", &ccdf_log))
+
340  return ccdf_log;
+
341  if (!(check_consistent_sizes(function, y, mu, sigma,
+
342  "Random variable", "Location parameter",
+
343  "Scale Parameter", &ccdf_log)))
+
344  return ccdf_log;
+
345 
+
346  using std::log;
+
347  using std::exp;
+
348 
+ +
350  operands_and_partials(y, mu, sigma);
+
351 
+
352  VectorView<const T_y> y_vec(y);
+
353  VectorView<const T_loc> mu_vec(mu);
+
354  VectorView<const T_scale> sigma_vec(sigma);
+
355  const double log_half = std::log(0.5);
+
356  size_t N = max_size(y, mu, sigma);
+
357 
+
358  for (size_t n = 0; n < N; n++) {
+
359  const double y_dbl = value_of(y_vec[n]);
+
360  const double mu_dbl = value_of(mu_vec[n]);
+
361  const double sigma_dbl = value_of(sigma_vec[n]);
+
362  const double scaled_diff = (y_dbl - mu_dbl) / sigma_dbl;
+
363  const double inv_sigma = 1.0 / sigma_dbl;
+
364  if(y_dbl < mu_dbl) {
+
365  //log ccdf
+
366  ccdf_log += log(1.0 - 0.5 * exp(scaled_diff));
+
367 
+
368  //gradients
+
369  const double rep_deriv = 1.0 / (2.0 * exp(-scaled_diff) - 1.0);
+ +
371  operands_and_partials.d_x1[n] -= rep_deriv * inv_sigma;
+ +
373  operands_and_partials.d_x2[n] += rep_deriv * inv_sigma;
+ +
375  operands_and_partials.d_x3[n] += rep_deriv * scaled_diff
+
376  * inv_sigma;
+
377  }
+
378  else {
+
379  // log ccdf
+
380  ccdf_log += log_half - scaled_diff;
+
381 
+
382  // gradients
+ +
384  operands_and_partials.d_x1[n] -= inv_sigma;
+ +
386  operands_and_partials.d_x2[n] += inv_sigma;
+ +
388  operands_and_partials.d_x3[n] += scaled_diff * inv_sigma;
+
389  }
+
390  }
+
391  return operands_and_partials.to_var(ccdf_log);
+
392  }
+
393 
+
394  template <class RNG>
+
395  inline double
+
396  double_exponential_rng(const double mu,
+
397  const double sigma,
+
398  RNG& rng) {
+
399  using boost::variate_generator;
+
400  using boost::random::uniform_01;
+
401  using std::log;
+
402  using std::abs;
+
403 
+
404  static const char* function
+
405  = "stan::prob::double_exponential_rng(%1%)";
+
406 
+ + +
409 
+
410  if(!check_finite(function, mu, "Location parameter"))
+
411  return 0;
+
412  if(!check_finite(function, sigma, "Scale parameter"))
+
413  return 0;
+
414  if(!check_positive(function, sigma, "Scale parameter"))
+
415  return 0;
+
416 
+
417  variate_generator<RNG&, uniform_01<> >
+
418  rng_unit_01(rng, uniform_01<>());
+
419  double a = 0;
+
420  double laplaceRN = rng_unit_01();
+
421  if(0.5 - laplaceRN > 0)
+
422  a = 1.0;
+
423  else if(0.5 - laplaceRN < 0)
+
424  a = -1.0;
+
425  return mu - sigma * a * log(1 - 2 * abs(0.5 - laplaceRN));
+
426  }
+
427  }
+
428 }
+
429 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/doxygen.css b/doc/api/html/doxygen.css new file mode 100644 index 00000000000..2642e8f9ecb --- /dev/null +++ b/doc/api/html/doxygen.css @@ -0,0 +1,1172 @@ +/* The standard CSS for doxygen */ + +body, table, div, p, dl { + font: 400 14px/19px Roboto,sans-serif; +} + +/* @group Heading Levels */ + +h1.groupheader { + font-size: 150%; +} + +.title { + font-size: 150%; + font-weight: bold; + margin: 10px 2px; +} + +h2.groupheader { + border-bottom: 1px solid #879ECB; + color: #354C7B; + font-size: 150%; + font-weight: normal; + margin-top: 1.75em; + padding-top: 8px; + padding-bottom: 4px; + width: 100%; +} + +h3.groupheader { + font-size: 100%; +} + +h1, h2, h3, h4, h5, h6 { + -webkit-transition: text-shadow 0.5s linear; + -moz-transition: text-shadow 0.5s linear; + -ms-transition: text-shadow 0.5s linear; + -o-transition: text-shadow 0.5s linear; + transition: text-shadow 0.5s linear; + margin-right: 15px; +} + +h1.glow, h2.glow, h3.glow, h4.glow, h5.glow, h6.glow { + text-shadow: 0 0 15px cyan; +} + +dt { + font-weight: bold; +} + +div.multicol { + -moz-column-gap: 1em; + -webkit-column-gap: 1em; + -moz-column-count: 3; + -webkit-column-count: 3; +} + +p.startli, p.startdd, p.starttd { + margin-top: 2px; +} + +p.endli { + margin-bottom: 0px; +} + +p.enddd { + margin-bottom: 4px; +} + +p.endtd { + margin-bottom: 2px; +} + +/* @end */ + +caption { + font-weight: bold; +} + +span.legend { + font-size: 70%; + text-align: center; +} + +h3.version { + font-size: 90%; + text-align: center; +} + +div.qindex, div.navtab{ + background-color: #EBEFF6; + border: 1px solid #A3B4D7; + text-align: center; +} + +div.qindex, div.navpath { + width: 100%; + line-height: 140%; +} + +div.navtab { + margin-right: 15px; +} + +/* @group Link Styling */ + +a { + color: #3D578C; + font-weight: normal; + text-decoration: none; +} + +.contents a:visited { + color: #4665A2; +} + +a:hover { + text-decoration: underline; +} + +a.qindex { + font-weight: bold; +} + +a.qindexHL { + font-weight: bold; + background-color: #9CAFD4; + color: #ffffff; + border: 1px double #869DCA; +} + +.contents a.qindexHL:visited { + color: #ffffff; +} + +a.el { + font-weight: bold; +} + +a.elRef { +} + +a.code, a.code:visited { + color: #4665A2; +} + +a.codeRef, a.codeRef:visited { + color: #4665A2; +} + +/* @end */ + +dl.el { + margin-left: -1cm; +} + +pre.fragment { + border: 1px solid #C4CFE5; + background-color: #FBFCFD; + padding: 4px 6px; + margin: 4px 8px 4px 2px; + overflow: auto; + word-wrap: break-word; + font-size: 9pt; + line-height: 125%; + font-family: monospace, fixed; + font-size: 105%; +} + +div.fragment { + padding: 4px; + margin: 4px; + background-color: #FBFCFD; + border: 1px solid #C4CFE5; +} + +div.line { + font-family: monospace, fixed; + font-size: 13px; + min-height: 13px; + line-height: 1.0; + text-wrap: unrestricted; + white-space: -moz-pre-wrap; /* Moz */ + white-space: -pre-wrap; /* Opera 4-6 */ + white-space: -o-pre-wrap; /* Opera 7 */ + white-space: pre-wrap; /* CSS3 */ + word-wrap: break-word; /* IE 5.5+ */ + text-indent: -53px; + padding-left: 53px; + padding-bottom: 0px; + margin: 0px; + -webkit-transition-property: background-color, box-shadow; + -webkit-transition-duration: 0.5s; + -moz-transition-property: background-color, box-shadow; + -moz-transition-duration: 0.5s; + -ms-transition-property: background-color, box-shadow; + -ms-transition-duration: 0.5s; + -o-transition-property: background-color, box-shadow; + -o-transition-duration: 0.5s; + transition-property: background-color, box-shadow; + transition-duration: 0.5s; +} + +div.line.glow { + background-color: cyan; + box-shadow: 0 0 10px cyan; +} + + +span.lineno { + padding-right: 4px; + text-align: right; + border-right: 2px solid #0F0; + background-color: #E8E8E8; + white-space: pre; +} +span.lineno a { + background-color: #D8D8D8; +} + +span.lineno a:hover { + background-color: #C8C8C8; +} + +div.ah { + background-color: black; + font-weight: bold; + color: #ffffff; + margin-bottom: 3px; + margin-top: 3px; + padding: 0.2em; + border: solid thin #333; + border-radius: 0.5em; + -webkit-border-radius: .5em; + -moz-border-radius: .5em; + box-shadow: 2px 2px 3px #999; + -webkit-box-shadow: 2px 2px 3px #999; + -moz-box-shadow: rgba(0, 0, 0, 0.15) 2px 2px 2px; + background-image: -webkit-gradient(linear, left top, left bottom, from(#eee), to(#000),color-stop(0.3, #444)); + background-image: -moz-linear-gradient(center top, #eee 0%, #444 40%, #000); +} + +div.groupHeader { + margin-left: 16px; + margin-top: 12px; + font-weight: bold; +} + +div.groupText { + margin-left: 16px; + font-style: italic; +} + +body { + background-color: white; + color: black; + margin: 0; +} + +div.contents { + margin-top: 10px; + margin-left: 12px; + margin-right: 8px; +} + +td.indexkey { + background-color: #EBEFF6; + font-weight: bold; + border: 1px solid #C4CFE5; + margin: 2px 0px 2px 0; + padding: 2px 10px; + white-space: nowrap; + vertical-align: top; +} + +td.indexvalue { + background-color: #EBEFF6; + border: 1px solid #C4CFE5; + padding: 2px 10px; + margin: 2px 0px; +} + +tr.memlist { + background-color: #EEF1F7; +} + +p.formulaDsp { + text-align: center; +} + +img.formulaDsp { + +} + +img.formulaInl { + vertical-align: middle; +} + +div.center { + text-align: center; + margin-top: 0px; + margin-bottom: 0px; + padding: 0px; +} + +div.center img { + border: 0px; +} + +address.footer { + text-align: right; + padding-right: 12px; +} + +img.footer { + border: 0px; + vertical-align: middle; +} + +/* @group Code Colorization */ + +span.keyword { + color: #008000 +} + +span.keywordtype { + color: #604020 +} + +span.keywordflow { + color: #e08000 +} + +span.comment { + color: #800000 +} + +span.preprocessor { + color: #806020 +} + +span.stringliteral { + color: #002080 +} + +span.charliteral { + color: #008080 +} + +span.vhdldigit { + color: #ff00ff +} + +span.vhdlchar { + color: #000000 +} + +span.vhdlkeyword { + color: #700070 +} + +span.vhdllogic { + color: #ff0000 +} + +blockquote { + background-color: #F7F8FB; + border-left: 2px solid #9CAFD4; + margin: 0 24px 0 4px; + padding: 0 12px 0 16px; +} + +/* @end */ + +/* +.search { + color: #003399; + font-weight: bold; +} + +form.search { + margin-bottom: 0px; + margin-top: 0px; +} + +input.search { + font-size: 75%; + color: #000080; + font-weight: normal; + background-color: #e8eef2; +} +*/ + +td.tiny { + font-size: 75%; +} + +.dirtab { + padding: 4px; + border-collapse: collapse; + border: 1px solid #A3B4D7; +} + +th.dirtab { + background: #EBEFF6; + font-weight: bold; +} + +hr { + height: 0px; + border: none; + border-top: 1px solid #4A6AAA; +} + +hr.footer { + height: 1px; +} + +/* @group Member Descriptions */ + +table.memberdecls { + border-spacing: 0px; + padding: 0px; +} + +.memberdecls td, .fieldtable tr { + -webkit-transition-property: background-color, box-shadow; + -webkit-transition-duration: 0.5s; + -moz-transition-property: background-color, box-shadow; + -moz-transition-duration: 0.5s; + -ms-transition-property: background-color, box-shadow; + -ms-transition-duration: 0.5s; + -o-transition-property: background-color, box-shadow; + -o-transition-duration: 0.5s; + transition-property: background-color, box-shadow; + transition-duration: 0.5s; +} + +.memberdecls td.glow, .fieldtable tr.glow { + background-color: cyan; + box-shadow: 0 0 15px cyan; +} + +.mdescLeft, .mdescRight, +.memItemLeft, .memItemRight, +.memTemplItemLeft, .memTemplItemRight, .memTemplParams { + background-color: #F9FAFC; + border: none; + margin: 4px; + padding: 1px 0 0 8px; +} + +.mdescLeft, .mdescRight { + padding: 0px 8px 4px 8px; + color: #555; +} + +.memSeparator { + border-bottom: 1px solid #DEE4F0; + line-height: 1px; + margin: 0px; + padding: 0px; +} + +.memItemLeft, .memTemplItemLeft { + white-space: nowrap; +} + +.memItemRight { + width: 100%; +} + +.memTemplParams { + color: #4665A2; + white-space: nowrap; + font-size: 80%; +} + +/* @end */ + +/* @group Member Details */ + +/* Styles for detailed member documentation */ + +.memtemplate { + font-size: 80%; + color: #4665A2; + font-weight: normal; + margin-left: 9px; +} + +.memnav { + background-color: #EBEFF6; + border: 1px solid #A3B4D7; + text-align: center; + margin: 2px; + margin-right: 15px; + padding: 2px; +} + +.mempage { + width: 100%; +} + +.memitem { + padding: 0; + margin-bottom: 10px; + margin-right: 5px; + -webkit-transition: box-shadow 0.5s linear; + -moz-transition: box-shadow 0.5s linear; + -ms-transition: box-shadow 0.5s linear; + -o-transition: box-shadow 0.5s linear; + transition: box-shadow 0.5s linear; + display: table !important; + width: 100%; +} + +.memitem.glow { + box-shadow: 0 0 15px cyan; +} + +.memname { + font-weight: bold; + margin-left: 6px; +} + +.memname td { + vertical-align: bottom; +} + +.memproto, dl.reflist dt { + border-top: 1px solid #A8B8D9; + border-left: 1px solid #A8B8D9; + border-right: 1px solid #A8B8D9; + padding: 6px 0px 6px 0px; + color: #253555; + font-weight: bold; + text-shadow: 0px 1px 1px rgba(255, 255, 255, 0.9); + background-image:url('nav_f.png'); + background-repeat:repeat-x; + background-color: #E2E8F2; + /* opera specific markup */ + box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15); + border-top-right-radius: 4px; + border-top-left-radius: 4px; + /* firefox specific markup */ + -moz-box-shadow: rgba(0, 0, 0, 0.15) 5px 5px 5px; + -moz-border-radius-topright: 4px; + -moz-border-radius-topleft: 4px; + /* webkit specific markup */ + -webkit-box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15); + -webkit-border-top-right-radius: 4px; + -webkit-border-top-left-radius: 4px; + +} + +.memdoc, dl.reflist dd { + border-bottom: 1px solid #A8B8D9; + border-left: 1px solid #A8B8D9; + border-right: 1px solid #A8B8D9; + padding: 6px 10px 2px 10px; + background-color: #FBFCFD; + border-top-width: 0; + background-image:url('nav_g.png'); + background-repeat:repeat-x; + background-color: #FFFFFF; + /* opera specific markup */ + border-bottom-left-radius: 4px; + border-bottom-right-radius: 4px; + box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15); + /* firefox specific markup */ + -moz-border-radius-bottomleft: 4px; + -moz-border-radius-bottomright: 4px; + -moz-box-shadow: rgba(0, 0, 0, 0.15) 5px 5px 5px; + /* webkit specific markup */ + -webkit-border-bottom-left-radius: 4px; + -webkit-border-bottom-right-radius: 4px; + -webkit-box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15); +} + +dl.reflist dt { + padding: 5px; +} + +dl.reflist dd { + margin: 0px 0px 10px 0px; + padding: 5px; +} + +.paramkey { + text-align: right; +} + +.paramtype { + white-space: nowrap; +} + +.paramname { + color: #602020; + white-space: nowrap; +} +.paramname em { + font-style: normal; +} +.paramname code { + line-height: 14px; +} + +.params, .retval, .exception, .tparams { + margin-left: 0px; + padding-left: 0px; +} + +.params .paramname, .retval .paramname { + font-weight: bold; + vertical-align: top; +} + +.params .paramtype { + font-style: italic; + vertical-align: top; +} + +.params .paramdir { + font-family: "courier new",courier,monospace; + vertical-align: top; +} + +table.mlabels { + border-spacing: 0px; +} + +td.mlabels-left { + width: 100%; + padding: 0px; +} + +td.mlabels-right { + vertical-align: bottom; + padding: 0px; + white-space: nowrap; +} + +span.mlabels { + margin-left: 8px; +} + +span.mlabel { + background-color: #728DC1; + border-top:1px solid #5373B4; + border-left:1px solid #5373B4; + border-right:1px solid #C4CFE5; + border-bottom:1px solid #C4CFE5; + text-shadow: none; + color: white; + margin-right: 4px; + padding: 2px 3px; + border-radius: 3px; + font-size: 7pt; + white-space: nowrap; + vertical-align: middle; +} + + + +/* @end */ + +/* these are for tree view when not used as main index */ + +div.directory { + margin: 10px 0px; + border-top: 1px solid #A8B8D9; + border-bottom: 1px solid #A8B8D9; + width: 100%; +} + +.directory table { + border-collapse:collapse; +} + +.directory td { + margin: 0px; + padding: 0px; + vertical-align: top; +} + +.directory td.entry { + white-space: nowrap; + padding-right: 6px; +} + +.directory td.entry a { + outline:none; +} + +.directory td.entry a img { + border: none; +} + +.directory td.desc { + width: 100%; + padding-left: 6px; + padding-right: 6px; + padding-top: 3px; + border-left: 1px solid rgba(0,0,0,0.05); +} + +.directory tr.even { + padding-left: 6px; + background-color: #F7F8FB; +} + +.directory img { + vertical-align: -30%; +} + +.directory .levels { + white-space: nowrap; + width: 100%; + text-align: right; + font-size: 9pt; +} + +.directory .levels span { + cursor: pointer; + padding-left: 2px; + padding-right: 2px; + color: #3D578C; +} + +div.dynheader { + margin-top: 8px; + -webkit-touch-callout: none; + -webkit-user-select: none; + -khtml-user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; +} + +address { + font-style: normal; + color: #2A3D61; +} + +table.doxtable { + border-collapse:collapse; + margin-top: 4px; + margin-bottom: 4px; +} + +table.doxtable td, table.doxtable th { + border: 1px solid #2D4068; + padding: 3px 7px 2px; +} + +table.doxtable th { + background-color: #374F7F; + color: #FFFFFF; + font-size: 110%; + padding-bottom: 4px; + padding-top: 5px; +} + +table.fieldtable { + width: 100%; + margin-bottom: 10px; + border: 1px solid #A8B8D9; + border-spacing: 0px; + -moz-border-radius: 4px; + -webkit-border-radius: 4px; + border-radius: 4px; + -moz-box-shadow: rgba(0, 0, 0, 0.15) 2px 2px 2px; + -webkit-box-shadow: 2px 2px 2px rgba(0, 0, 0, 0.15); + box-shadow: 2px 2px 2px rgba(0, 0, 0, 0.15); +} + +.fieldtable td, .fieldtable th { + padding: 3px 7px 2px; +} + +.fieldtable td.fieldtype, .fieldtable td.fieldname { + white-space: nowrap; + border-right: 1px solid #A8B8D9; + border-bottom: 1px solid #A8B8D9; + vertical-align: top; +} + +.fieldtable td.fielddoc { + border-bottom: 1px solid #A8B8D9; + width: 100%; +} + +.fieldtable tr:last-child td { + border-bottom: none; +} + +.fieldtable th { + background-image:url('nav_f.png'); + background-repeat:repeat-x; + background-color: #E2E8F2; + font-size: 90%; + color: #253555; + padding-bottom: 4px; + padding-top: 5px; + text-align:left; + -moz-border-radius-topleft: 4px; + -moz-border-radius-topright: 4px; + -webkit-border-top-left-radius: 4px; + -webkit-border-top-right-radius: 4px; + border-top-left-radius: 4px; + border-top-right-radius: 4px; + border-bottom: 1px solid #A8B8D9; +} + + +.tabsearch { + top: 0px; + left: 10px; + height: 36px; + background-image: url('tab_b.png'); + z-index: 101; + overflow: hidden; + font-size: 13px; +} + +.navpath ul +{ + font-size: 11px; + background-image:url('tab_b.png'); + background-repeat:repeat-x; + background-position: 0 -5px; + height:30px; + line-height:30px; + color:#8AA0CC; + border:solid 1px #C2CDE4; + overflow:hidden; + margin:0px; + padding:0px; +} + +.navpath li +{ + list-style-type:none; + float:left; + padding-left:10px; + padding-right:15px; + background-image:url('bc_s.png'); + background-repeat:no-repeat; + background-position:right; + color:#364D7C; +} + +.navpath li.navelem a +{ + height:32px; + display:block; + text-decoration: none; + outline: none; + color: #283A5D; + font-family: 'Lucida Grande',Geneva,Helvetica,Arial,sans-serif; + text-shadow: 0px 1px 1px rgba(255, 255, 255, 0.9); + text-decoration: none; +} + +.navpath li.navelem a:hover +{ + color:#6884BD; +} + +.navpath li.footer +{ + list-style-type:none; + float:right; + padding-left:10px; + padding-right:15px; + background-image:none; + background-repeat:no-repeat; + background-position:right; + color:#364D7C; + font-size: 8pt; +} + + +div.summary +{ + float: right; + font-size: 8pt; + padding-right: 5px; + width: 50%; + text-align: right; +} + +div.summary a +{ + white-space: nowrap; +} + +div.ingroups +{ + font-size: 8pt; + width: 50%; + text-align: left; +} + +div.ingroups a +{ + white-space: nowrap; +} + +div.header +{ + background-image:url('nav_h.png'); + background-repeat:repeat-x; + background-color: #F9FAFC; + margin: 0px; + border-bottom: 1px solid #C4CFE5; +} + +div.headertitle +{ + padding: 5px 5px 5px 10px; +} + +dl +{ + padding: 0 0 0 10px; +} + +/* dl.note, dl.warning, dl.attention, dl.pre, dl.post, dl.invariant, dl.deprecated, dl.todo, dl.test, dl.bug */ +dl.section +{ + margin-left: 0px; + padding-left: 0px; +} + +dl.note +{ + margin-left:-7px; + padding-left: 3px; + border-left:4px solid; + border-color: #D0C000; +} + +dl.warning, dl.attention +{ + margin-left:-7px; + padding-left: 3px; + border-left:4px solid; + border-color: #FF0000; +} + +dl.pre, dl.post, dl.invariant +{ + margin-left:-7px; + padding-left: 3px; + border-left:4px solid; + border-color: #00D000; +} + +dl.deprecated +{ + margin-left:-7px; + padding-left: 3px; + border-left:4px solid; + border-color: #505050; +} + +dl.todo +{ + margin-left:-7px; + padding-left: 3px; + border-left:4px solid; + border-color: #00C0E0; +} + +dl.test +{ + margin-left:-7px; + padding-left: 3px; + border-left:4px solid; + border-color: #3030E0; +} + +dl.bug +{ + margin-left:-7px; + padding-left: 3px; + border-left:4px solid; + border-color: #C08050; +} + +dl.section dd { + margin-bottom: 6px; +} + + +#projectlogo +{ + text-align: center; + vertical-align: bottom; + border-collapse: separate; +} + +#projectlogo img +{ + border: 0px none; +} + +#projectname +{ + font: 300% Tahoma, Arial,sans-serif; + margin: 0px; + padding: 2px 0px; +} + +#projectbrief +{ + font: 120% Tahoma, Arial,sans-serif; + margin: 0px; + padding: 0px; +} + +#projectnumber +{ + font: 50% Tahoma, Arial,sans-serif; + margin: 0px; + padding: 0px; +} + +#titlearea +{ + padding: 0px; + margin: 0px; + width: 100%; + border-bottom: 1px solid #5373B4; +} + +.image +{ + text-align: center; +} + +.dotgraph +{ + text-align: center; +} + +.mscgraph +{ + text-align: center; +} + +.caption +{ + font-weight: bold; +} + +div.zoom +{ + border: 1px solid #90A5CE; +} + +dl.citelist { + margin-bottom:50px; +} + +dl.citelist dt { + color:#334975; + float:left; + font-weight:bold; + margin-right:10px; + padding:5px; +} + +dl.citelist dd { + margin:2px 0; + padding:5px 0; +} + +div.toc { + padding: 14px 25px; + background-color: #F4F6FA; + border: 1px solid #D8DFEE; + border-radius: 7px 7px 7px 7px; + float: right; + height: auto; + margin: 0 20px 10px 10px; + width: 200px; +} + +div.toc li { + background: url("bdwn.png") no-repeat scroll 0 5px transparent; + font: 10px/1.2 Verdana,DejaVu Sans,Geneva,sans-serif; + margin-top: 5px; + padding-left: 10px; + padding-top: 2px; +} + +div.toc h3 { + font: bold 12px/1.2 Arial,FreeSans,sans-serif; + color: #4665A2; + border-bottom: 0 none; + margin: 0; +} + +div.toc ul { + list-style: none outside none; + border: medium none; + padding: 0px; +} + +div.toc li.level1 { + margin-left: 0px; +} + +div.toc li.level2 { + margin-left: 15px; +} + +div.toc li.level3 { + margin-left: 30px; +} + +div.toc li.level4 { + margin-left: 45px; +} + +.inherit_header { + font-weight: bold; + color: gray; + cursor: pointer; + -webkit-touch-callout: none; + -webkit-user-select: none; + -khtml-user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; +} + +.inherit_header td { + padding: 6px 0px 2px 5px; +} + +.inherit { + display: none; +} + +tr.heading h2 { + margin-top: 12px; + margin-bottom: 4px; +} + +@media print +{ + #top { display: none; } + #side-nav { display: none; } + #nav-path { display: none; } + body { overflow:visible; } + h1, h2, h3, h4, h5, h6 { page-break-after: avoid; } + .summary { display: none; } + .memitem { page-break-inside: avoid; } + #doc-content + { + margin-left:0 !important; + height:auto !important; + width:auto !important; + overflow:inherit; + display:inline; + } +} + diff --git a/doc/api/html/doxygen.png b/doc/api/html/doxygen.png new file mode 100644 index 0000000000000000000000000000000000000000..3ff17d807fd8aa003bed8bb2a69e8f0909592fd1 GIT binary patch literal 3779 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 literal 0 HcmV?d00001 diff --git a/doc/api/html/dump_8hpp.html b/doc/api/html/dump_8hpp.html new file mode 100644 index 00000000000..6a14e0bfc32 --- /dev/null +++ b/doc/api/html/dump_8hpp.html @@ -0,0 +1,145 @@ + + + + + +Stan: src/stan/io/dump.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
dump.hpp File Reference
+
+
+
#include <cctype>
+#include <iostream>
+#include <limits>
+#include <map>
+#include <sstream>
+#include <string>
+#include <vector>
+#include <boost/throw_exception.hpp>
+#include <boost/lexical_cast.hpp>
+#include <stan/math/matrix.hpp>
+#include <stan/io/var_context.hpp>
+
+

Go to the source code of this file.

+ + + + + + + + + + + +

+Classes

class  stan::io::dump_writer
 Writes data into the S-plus dump format. More...
 
class  stan::io::dump_reader
 Reads data from S-plus dump format. More...
 
class  stan::io::dump
 Represents named arrays with dimensions. More...
 
+ + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::io
 Input/output utilities.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/dump_8hpp_source.html b/doc/api/html/dump_8hpp_source.html new file mode 100644 index 00000000000..41267a6ee4d --- /dev/null +++ b/doc/api/html/dump_8hpp_source.html @@ -0,0 +1,858 @@ + + + + + +Stan: src/stan/io/dump.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
dump.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__IO__DUMP_HPP__
+
2 #define __STAN__IO__DUMP_HPP__
+
3 
+
4 #include <cctype>
+
5 #include <iostream>
+
6 #include <limits>
+
7 #include <map>
+
8 #include <sstream>
+
9 #include <string>
+
10 #include <vector>
+
11 #include <boost/throw_exception.hpp>
+
12 #include <boost/lexical_cast.hpp>
+
13 #include <stan/math/matrix.hpp>
+
14 #include <stan/io/var_context.hpp>
+
15 
+
16 namespace stan {
+
17 
+
18  namespace io {
+
19 
+
20  namespace {
+
21  size_t product(std::vector<size_t> dims) {
+
22  size_t y = 1U;
+
23  for (size_t i = 0; i < dims.size(); ++i)
+
24  y *= dims[i];
+
25  return y;
+
26  }
+
27  }
+
28 
+
37  class dump_writer {
+
38  private:
+
39  std::ostream& out_;
+
40 
+
41  // checks doesn't contain quote char
+
42  void write_name_equals(const std::string& name) {
+
43  for (size_t i = 0; i < name.size(); ++i)
+
44  if (name.at(i) == '"')
+
45  BOOST_THROW_EXCEPTION(
+
46  std::invalid_argument ("name can not contain quote char"));
+
47  out_ << '"' << name << '"' << " <- " << '\n';
+
48  }
+
49 
+
50 
+
51  // adds period at end of output if necessary for double
+
52  void write_val(const double& x) {
+
53  std::stringstream ss;
+
54  ss << x;
+
55  std::string s;
+
56  ss >> s;
+
57  for (std::string::iterator it = s.begin();
+
58  it < s.end();
+
59  ++it) {
+
60  if (*it == '.' || *it == 'e' || *it == 'E') {
+
61  out_ << s;
+
62  return;
+
63  }
+
64  }
+
65  out_ << s << ".";
+
66  }
+
67 
+
68  void write_val(const unsigned long long int& n) {
+
69  out_ << n;
+
70  }
+
71 
+
72  void write_val(const unsigned long int& n) {
+
73  out_ << n;
+
74  }
+
75 
+
76  void write_val(const unsigned int& n) {
+
77  out_ << n;
+
78  }
+
79 
+
80  void write_val(const unsigned short& n) {
+
81  out_ << n;
+
82  }
+
83 
+
84  void write_val(const long long& n) {
+
85  out_ << n;
+
86  }
+
87 
+
88  void write_val(const long& n) {
+
89  out_ << n;
+
90  }
+
91 
+
92  void write_val(const int& n) {
+
93  out_ << n;
+
94  }
+
95 
+
96  void write_val(const short& n) {
+
97  out_ << n;
+
98  }
+
99 
+
100  void write_val(const char& n) {
+
101  out_ << n;
+
102  }
+
103 
+
104 
+
105  template <typename T>
+
106  void write_list(T xs) {
+
107  out_ << "c(";
+
108  for (typename T::size_type i = 0; i < xs.size(); ++i) {
+
109  if (i > 0) out_ << ", ";
+
110  write_val(xs[i]);
+
111  }
+
112  out_ << ")";
+
113  }
+
114 
+
115  template <typename T>
+
116  void write_structure(std::vector<T> xs,
+
117  std::vector<size_t> dims) {
+
118  out_ << "structure(";
+
119  write_list(xs);
+
120  out_ << ',' << '\n';
+
121  out_ << ".Dim = ";
+
122  write_list(dims);
+
123  out_ << ")";
+
124  }
+
125 
+
126 
+
127  void dims(double /*x*/, std::vector<size_t> /*ds*/) {
+
128  // no op
+
129  }
+
130 
+
131  void dims(int /*x*/, std::vector<size_t> /*ds*/) {
+
132  // no op
+
133  }
+
134 
+
135  template <typename T>
+
136  void dims(Eigen::Matrix<T,Eigen::Dynamic,Eigen::Dynamic> m,
+
137  std::vector<size_t> ds) {
+
138  ds.push_back(m.rows());
+
139  ds.push_back(m.cols());
+
140  }
+
141 
+
142  template <typename T>
+
143  void dims(Eigen::Matrix<T,Eigen::Dynamic,1> v,
+
144  std::vector<size_t> ds) {
+
145  ds.push_back(v.size());
+
146  }
+
147 
+
148  template <typename T>
+
149  void dims(Eigen::Matrix<T,1,Eigen::Dynamic> rv,
+
150  std::vector<size_t> ds) {
+
151  ds.push_back(rv.size());
+
152  }
+
153 
+
154  template <typename T>
+
155  void dims(std::vector<T> x, std::vector<size_t> ds) {
+
156  ds.push_back(x.size());
+
157  if (x.size() > 0)
+
158  dims(x[0],ds);
+
159  }
+
160 
+
161  template <typename T>
+
162  std::vector<size_t> dims(T x) {
+
163  std::vector<size_t> ds;
+
164  dims(x,ds);
+
165  return ds;
+
166  }
+
167 
+
168  bool increment(const std::vector<size_t>& dims,
+
169  std::vector<size_t>& idx) {
+
170  for (size_t i = 0; i < dims.size(); ++i) {
+
171  ++idx[i];
+
172  if (idx[i] < dims[i]) return true;
+
173  idx[i] = 0;
+
174  }
+
175  return false;
+
176  }
+
177 
+
178  template <typename T>
+
179  void write_stan_val(const std::vector<T>& x,
+
180  const std::vector<size_t>& idx,
+
181  const size_t pos) {
+
182  size_t next_pos = pos + 1;
+
183  write_stan_val(x[idx[pos]],idx,next_pos);
+
184  }
+
185  void write_stan_val(const std::vector<double>& x,
+
186  const std::vector<size_t>& idx,
+
187  const size_t pos) {
+
188  write_val(x[idx[pos]]);
+
189  }
+
190  void write_stan_val(const std::vector<int>& x,
+
191  const std::vector<size_t>& idx,
+
192  const size_t pos) {
+
193  write_val(x[idx[pos]]);
+
194  }
+
195  void write_stan_val(const Eigen::Matrix<double,Eigen::Dynamic,Eigen::Dynamic>& x,
+
196  const std::vector<size_t>& idx,
+
197  const size_t pos) {
+
198  size_t next_pos = pos + 1;
+
199  write_val(x(idx[pos],idx[next_pos]));
+
200  }
+
201  void write_stan_val(const Eigen::Matrix<double,1,Eigen::Dynamic>& x,
+
202  const std::vector<size_t>& idx,
+
203  const size_t pos) {
+
204  write_val(x[idx[pos]]);
+
205  }
+
206  void write_stan_val(const Eigen::Matrix<double,Eigen::Dynamic,1>& x,
+
207  const std::vector<size_t>& idx,
+
208  const size_t pos) {
+
209  write_val(x[idx[pos]]);
+
210  }
+
211 
+
212 
+
213  template <typename T>
+
214  void write_stan(const std::vector<T>& x) {
+
215  std::vector<size_t> dims = dims(x);
+
216  out_ << "structure(c(";
+
217  std::vector<size_t> idx(dims.size(),0U);
+
218  for (size_t count = 0; true; ++count) {
+
219  if (count > 0) out_ << ", ";
+
220  write_stan_val(x,idx);
+
221  if (!increment(dims,idx)) break;
+
222  }
+
223  out_ << "), .Dim = ";
+
224  write_list(dims);
+
225  out_ << ")";
+
226  }
+
227  void write_stan(const std::vector<double>& x) {
+
228  write_list(x);
+
229  }
+
230  void write_stan(const std::vector<int>& x) {
+
231  write_list(x);
+
232  }
+
233  void write_stan(double x) {
+
234  write_val(x);
+
235  }
+
236  void write_stan(int x) {
+
237  write_val(x);
+
238  }
+
239  void write_stan(const Eigen::Matrix<double,1,Eigen::Dynamic>& x) {
+
240  write_list(x);
+
241  }
+
242  void write_stan(const Eigen::Matrix<double,Eigen::Dynamic,1>& x) {
+
243  write_list(x);
+
244  }
+
245  void write_stan(const Eigen::Matrix<double,
+
246  Eigen::Dynamic,Eigen::Dynamic>& x) {
+
247  typedef Eigen::Matrix<double,Eigen::Dynamic,Eigen::Dynamic>::Index Index;
+
248  out_ << "structure(c(";
+
249  std::vector<double> vals;
+
250  for (Index m = 0; m < x.cols(); ++m) {
+
251  for (Index n = 0; n < x.rows(); ++n) {
+
252  if (m > 0 || n > 0) out_ << ", ";
+
253  write_val(x(m,n));
+
254  }
+
255  }
+
256  out_ << "), .Dim = c(";
+
257  out_ << x.rows() << ", " << x.cols();
+
258  out_ << "))";
+
259  }
+
260 
+
261  public:
+
262 
+
266  dump_writer() : out_(std::cout) { }
+
267 
+
274  dump_writer(std::ostream& out) : out_(out) { }
+
275 
+ +
280 
+
299  template <typename T>
+
300  void write(const std::string& name,
+
301  const T& x) {
+
302  write_name_equals(name);
+
303  write_stan(x);
+
304  }
+
305 
+
315  template <typename T>
+
316  void dump_structure(std::string /*name*/,
+
317  std::vector<size_t> dims,
+
318  std::vector<T> xs) {
+
319  if (xs.size() != product(dims))
+
320  BOOST_THROW_EXCEPTION(
+
321  std::invalid_argument("xs.size() != product(dims)"));
+
322  write_structure(xs,dims);
+
323  }
+
324 
+
333  template <typename T>
+
334  void dump_list(std::string name,
+
335  std::vector<T> xs) {
+
336  write_name_equals(name);
+
337  write_list(xs);
+
338  }
+
339 
+
348  template <typename T>
+
349  void dump_var(std::string name,
+
350  T x) {
+
351  write_name_equals(name);
+
352  write_val(x);
+
353  }
+
354 
+
355  };
+
356 
+
428  class dump_reader {
+
429  private:
+
430  std::string buf_;
+
431  std::string name_;
+
432  std::vector<int> stack_i_;
+
433  std::vector<double> stack_r_;
+
434  std::vector<size_t> dims_;
+
435  std::istream& in_;
+
436  // stan::io::buffered_stream in_;
+
437 
+
438  bool scan_single_char(char c_expected) {
+
439  int c = in_.peek();
+
440  if (in_.fail()) return false;
+
441  if (c != c_expected)
+
442  return false;
+
443  char c_skip;
+
444  in_.get(c_skip);
+
445  return true;
+
446  }
+
447 
+
448  bool scan_optional_long() {
+
449  if (scan_single_char('l'))
+
450  return true;
+
451  else if (scan_single_char('L'))
+
452  return true;
+
453  else
+
454  return false;
+
455  }
+
456 
+
457  bool scan_char(char c_expected) {
+
458  char c;
+
459  in_ >> c;
+
460  if (in_.fail()) return false;
+
461  if (c != c_expected) {
+
462  in_.putback(c);
+
463  return false;
+
464  }
+
465  return true;
+
466  }
+
467 
+
468  bool scan_name_unquoted() {
+
469  char c;
+
470  in_ >> c; //
+
471  if (in_.fail()) return false;
+
472  if (!std::isalpha(c)) return false;
+
473  name_.push_back(c);
+
474  while (in_.get(c)) { // get turns off auto space skip
+
475  if (std::isalpha(c) || std::isdigit(c) || c == '_' || c == '.') {
+
476  name_.push_back(c);
+
477  } else {
+
478  in_.putback(c);
+
479  return true;
+
480  }
+
481  }
+
482  return true; // but hit eos
+
483  }
+
484 
+
485  bool scan_name() {
+
486  if (scan_char('"')) {
+
487  if (!scan_name_unquoted()) return false;
+
488  if (!scan_char('"')) return false;
+
489  } else if (scan_char('\'')) {
+
490  if (!scan_name_unquoted()) return false;
+
491  if (!scan_char('\'')) return false;
+
492  } else {
+
493  if (!scan_name_unquoted()) return false;
+
494  }
+
495  return true;
+
496  }
+
497 
+
498 
+
499  bool scan_chars(const char *s, bool case_sensitive = true) {
+
500  for (size_t i = 0; s[i]; ++i) {
+
501  char c;
+
502  if (!(in_ >> c)) {
+
503  for (size_t j = 1; j < i; ++j)
+
504  in_.putback(s[i-j]);
+
505  return false;
+
506  }
+
507  // all ASCII, so toupper is OK
+
508  if ((case_sensitive && c != s[i])
+
509  || (!case_sensitive && ::toupper(c) != ::toupper(s[i]))) {
+
510  in_.putback(c);
+
511  for (size_t j = 1; j < i; ++j)
+
512  in_.putback(s[i-j]);
+
513  return false;
+
514  }
+
515  }
+
516  return true;
+
517  }
+
518 
+
519  bool scan_chars(std::string s, bool case_sensitive = true) {
+
520  for (size_t i = 0; i < s.size(); ++i) {
+
521  char c;
+
522  if (!(in_ >> c)) {
+
523  for (size_t j = 1; j < i; ++j)
+
524  in_.putback(s[i-j]);
+
525  return false;
+
526  }
+
527  // all ASCII, so toupper is OK
+
528  if ((case_sensitive && c != s[i])
+
529  || (!case_sensitive && ::toupper(c) != ::toupper(s[i]))) {
+
530  in_.putback(c);
+
531  for (size_t j = 1; j < i; ++j)
+
532  in_.putback(s[i-j]);
+
533  return false;
+
534  }
+
535  }
+
536  return true;
+
537  }
+
538 
+
539  bool scan_number(bool negate_val) {
+
540 
+
541  // must take longest first!
+
542  if (scan_chars("Inf")) {
+
543  scan_chars("inity"); // read past if there
+
544  stack_r_.push_back(negate_val
+
545  ? -std::numeric_limits<double>::infinity()
+
546  : std::numeric_limits<double>::infinity());
+
547  return true;
+
548  }
+
549  if (scan_chars("NaN",false)) {
+
550  stack_r_.push_back(std::numeric_limits<double>::quiet_NaN());
+
551  return true;
+
552  }
+
553 
+
554  char c;
+
555  bool is_double = false;
+
556  buf_.clear();
+
557  while (in_.get(c)) {
+
558  if (std::isdigit(c)) { // before pre-scan || c == '-' || c == '+') {
+
559  buf_.push_back(c);
+
560  } else if (c == '.'
+
561  || c == 'e'
+
562  || c == 'E'
+
563  || c == '-'
+
564  || c == '+') {
+
565  is_double = true;
+
566  buf_.push_back(c);
+
567  } else {
+
568  in_.putback(c);
+
569  break;
+
570  }
+
571  }
+
572  try {
+
573  if (!is_double && stack_r_.size() == 0) {
+
574  int n;
+
575  n = boost::lexical_cast<int>(buf_);
+
576  stack_i_.push_back(negate_val ? -n : n);
+
577  scan_optional_long();
+
578  } else {
+
579  for (size_t j = 0; j < stack_i_.size(); ++j)
+
580  stack_r_.push_back(static_cast<double>(stack_i_[j]));
+
581  // negate_val
+
582  // ? -static_cast<double>(stack_i_[j])
+
583  // : static_cast<double>(stack_i_[j]));
+
584  stack_i_.clear();
+
585  double x;
+
586  x = boost::lexical_cast<double>(buf_);
+
587  stack_r_.push_back(negate_val ? -x : x);
+
588  }
+
589  }
+
590  catch ( const boost::bad_lexical_cast &exc ) {
+
591  return false;
+
592  }
+
593 
+
594  return true;
+
595  }
+
596 
+
597  bool scan_number() {
+
598  char c;
+
599  while (in_.get(c)) {
+
600  if (std::isspace(c)) continue;
+
601  in_.putback(c);
+
602  break;
+
603  }
+
604  bool negate_val = scan_char('-');
+
605  if (!negate_val) scan_char('+'); // flush leading +
+
606  return scan_number(negate_val);
+
607  }
+
608 
+
609 
+
610  bool scan_seq_value() {
+
611  if (!scan_char('(')) return false;
+
612  if (scan_char(')')) {
+
613  dims_.push_back(0U);
+
614  return true;
+
615  }
+
616  if (!scan_number()) return false;; // first entry
+
617  while (scan_char(',')) {
+
618  if (!scan_number()) return false;
+
619  }
+
620  dims_.push_back(stack_r_.size() + stack_i_.size());
+
621  return scan_char(')');
+
622  }
+
623 
+
624  bool scan_struct_value() {
+
625  if (!scan_char('(')) return false;
+
626  if (scan_char('c')) {
+
627  scan_seq_value();
+
628  } else {
+
629  size_t start;
+
630  in_ >> start;
+
631  if (!scan_char(':'))
+
632  return false;
+
633  size_t end;
+
634  in_ >> end;
+
635  if (start <= end) {
+
636  for (size_t i = start; i <= end; ++i)
+
637  stack_i_.push_back(i);
+
638  } else {
+
639  for (size_t i = start; i >= end; --i)
+
640  stack_i_.push_back(i);
+
641  }
+
642  }
+
643  dims_.clear();
+
644  if (!scan_char(',')) return false;
+
645  if (!scan_char('.')) return false;
+
646  if (!scan_chars("Dim")) return false;
+
647  if (!scan_char('=')) return false;
+
648  if (scan_char('c')) {
+
649  if (!scan_char('(')) return false;
+
650  size_t dim;
+
651  in_ >> dim;
+
652  scan_optional_long();
+
653  dims_.push_back(dim);
+
654  while (scan_char(',')) {
+
655  in_ >> dim;
+
656  scan_optional_long();
+
657  dims_.push_back(dim);
+
658  }
+
659  if (!scan_char(')')) return false;
+
660  } else {
+
661  size_t start;
+
662  in_ >> start;
+
663  if (!scan_char(':'))
+
664  return false;
+
665  size_t end;
+
666  in_ >> end;
+
667  if (start < end) {
+
668  for (size_t i = start; i <= end; ++i)
+
669  dims_.push_back(i);
+
670  } else {
+
671  for (size_t i = start; i >= end; --i)
+
672  dims_.push_back(i);
+
673  }
+
674  }
+
675  if (!scan_char(')')) return false;
+
676  return true;
+
677  }
+
678 
+
679 
+
680 
+
681  bool scan_value() {
+
682  if (scan_char('c'))
+
683  return scan_seq_value();
+
684  if (scan_chars("structure"))
+
685  return scan_struct_value();
+
686  if (!scan_number())
+
687  return false;
+
688  if (!scan_char(':'))
+
689  return true;
+
690  if (stack_i_.size() != 1)
+
691  return false;
+
692  if (!scan_number())
+
693  return false;
+
694  if (stack_i_.size() != 2)
+
695  return false;
+
696  int start = stack_i_[0];
+
697  int end = stack_i_[1];
+
698  stack_i_.clear();
+
699  if (start <= end) {
+
700  for (int i = start; i <= end; ++i)
+
701  stack_i_.push_back(i);
+
702  } else {
+
703  for (int i = start; i >= end; --i)
+
704  stack_i_.push_back(i);
+
705  }
+
706  dims_.push_back(stack_i_.size());
+
707  return true;
+
708  }
+
709 
+
713  void print() {
+
714  std::cout << "var name=|" << name_ << "|" << std::endl;
+
715  std:: cout << "dims=(";
+
716  for (size_t i = 0; i < dims_.size(); ++i) {
+
717  if (i > 0)
+
718  std::cout << ",";
+
719  std::cout << dims_[i];
+
720  }
+
721  std::cout << ")" << std::endl;
+
722  std::cout << "float stack:" << std::endl;
+
723  for (size_t i = 0; i < stack_r_.size(); ++i)
+
724  std::cout << " [" << i << "] " << stack_r_[i] << std::endl;
+
725  std::cout << "int stack" << std::endl;
+
726  for (size_t i = 0; i < stack_i_.size(); ++i)
+
727  std::cout << " [" << i << "] " << stack_i_[i] << std::endl;
+
728  }
+
729 
+
730 
+
731  public:
+
735  dump_reader() : in_(std::cin) { }
+
736 
+
742  dump_reader(std::istream& in) : in_(in) { }
+
743 
+ +
748 
+
749 
+
755  std::string name() {
+
756  return name_;
+
757  }
+
758 
+
765  std::vector<size_t> dims() {
+
766  return dims_;
+
767  }
+
768 
+
776  bool is_int() {
+
777  return stack_i_.size() > 0;
+
778  }
+
779 
+
786  std::vector<int> int_values() {
+
787  return stack_i_;
+
788  }
+
789 
+
797  std::vector<double> double_values() {
+
798  return stack_r_;
+
799  }
+
800 
+
808  bool next() {
+
809  stack_r_.clear();
+
810  stack_i_.clear();
+
811  dims_.clear();
+
812  name_.erase();
+
813  if (!scan_name()) // set name
+
814  return false;
+
815  if (!scan_char('<')) // set <-
+
816  return false;
+
817  if (!scan_char('-'))
+
818  return false;
+
819  if (!scan_value()) // set stack_r_, stack_i_, dims_
+
820  return false;
+
821  return true;
+
822  }
+
823 
+
824  };
+
825 
+
826 
+
827 
+
843  class dump : public stan::io::var_context {
+
844  private:
+
845  std::map<std::string,
+
846  std::pair<std::vector<double>,
+
847  std::vector<size_t> > > vars_r_;
+
848  std::map<std::string,
+
849  std::pair<std::vector<int>,
+
850  std::vector<size_t> > > vars_i_;
+
851  std::vector<double> const empty_vec_r_;
+
852  std::vector<int> const empty_vec_i_;
+
853  std::vector<size_t> const empty_vec_ui_;
+
863  bool contains_r_only(const std::string& name) const {
+
864  return vars_r_.find(name) != vars_r_.end();
+
865  }
+
866  public:
+
867 
+
875  dump(std::istream& in) {
+
876  dump_reader reader(in);
+
877  while (reader.next()) {
+
878  if (reader.is_int()) {
+
879  vars_i_[reader.name()]
+
880  = std::pair<std::vector<int>,
+
881  std::vector<size_t> >(reader.int_values(),
+
882  reader.dims());
+
883 
+
884  } else {
+
885  vars_r_[reader.name()]
+
886  = std::pair<std::vector<double>,
+
887  std::vector<size_t> >(reader.double_values(),
+
888  reader.dims());
+
889  }
+
890  }
+
891  }
+
892 
+
901  bool contains_r(const std::string& name) const {
+
902  return contains_r_only(name) || contains_i(name);
+
903  }
+
904 
+
913  bool contains_i(const std::string& name) const {
+
914  return vars_i_.find(name) != vars_i_.end();
+
915  }
+
916 
+
924  std::vector<double> vals_r(const std::string& name) const {
+
925  if (contains_r_only(name)) {
+
926  return (vars_r_.find(name)->second).first;
+
927  } else if (contains_i(name)) {
+
928  std::vector<int> vec_int = (vars_i_.find(name)->second).first;
+
929  std::vector<double> vec_r(vec_int.size());
+
930  for (size_t ii = 0; ii < vec_int.size(); ii++) {
+
931  vec_r[ii] = vec_int[ii];
+
932  }
+
933  return vec_r;
+
934  }
+
935  return empty_vec_r_;
+
936  }
+
937 
+
945  std::vector<size_t> dims_r(const std::string& name) const {
+
946  if (contains_r_only(name)) {
+
947  return (vars_r_.find(name)->second).second;
+
948  } else if (contains_i(name)) {
+
949  return (vars_i_.find(name)->second).second;
+
950  }
+
951  return empty_vec_ui_;
+
952  }
+
953 
+
961  std::vector<int> vals_i(const std::string& name) const {
+
962  if (contains_i(name)) {
+
963  return (vars_i_.find(name)->second).first;
+
964  }
+
965  return empty_vec_i_;
+
966  }
+
967 
+
975  std::vector<size_t> dims_i(const std::string& name) const {
+
976  if (contains_i(name)) {
+
977  return (vars_i_.find(name)->second).second;
+
978  }
+
979  return empty_vec_ui_;
+
980  }
+
981 
+
988  virtual void names_r(std::vector<std::string>& names) const {
+
989  names.resize(0);
+
990  for (std::map<std::string,
+
991  std::pair<std::vector<double>,
+
992  std::vector<size_t> > >
+
993  ::const_iterator it = vars_r_.begin();
+
994  it != vars_r_.end(); ++it)
+
995  names.push_back((*it).first);
+
996  }
+
997 
+
1004  virtual void names_i(std::vector<std::string>& names) const {
+
1005  names.resize(0);
+
1006  for (std::map<std::string,
+
1007  std::pair<std::vector<int>,
+
1008  std::vector<size_t> > >
+
1009  ::const_iterator it = vars_i_.begin();
+
1010  it != vars_i_.end(); ++it)
+
1011  names.push_back((*it).first);
+
1012  }
+
1013 
+
1021  bool remove(const std::string& name) {
+
1022  return (vars_i_.erase(name) > 0)
+
1023  || (vars_r_.erase(name) > 0);
+
1024  }
+
1025 
+
1026  };
+
1027 
+
1028  }
+
1029 
+
1030 }
+
1031 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/dv__vari_8hpp.html b/doc/api/html/dv__vari_8hpp.html new file mode 100644 index 00000000000..2796e84a217 --- /dev/null +++ b/doc/api/html/dv__vari_8hpp.html @@ -0,0 +1,128 @@ + + + + + +Stan: src/stan/agrad/rev/internal/dv_vari.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
dv_vari.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + +

+Classes

class  stan::agrad::op_dv_vari
 
+ + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/dv__vari_8hpp_source.html b/doc/api/html/dv__vari_8hpp_source.html new file mode 100644 index 00000000000..7fe35dfec76 --- /dev/null +++ b/doc/api/html/dv__vari_8hpp_source.html @@ -0,0 +1,130 @@ + + + + + +Stan: src/stan/agrad/rev/internal/dv_vari.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
dv_vari.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__REV__INTERNAL__DV_VARI_HPP__
+
2 #define __STAN__AGRAD__REV__INTERNAL__DV_VARI_HPP__
+
3 
+ +
5 
+
6 namespace stan {
+
7  namespace agrad {
+
8 
+
9  class op_dv_vari : public vari {
+
10  protected:
+
11  double ad_;
+ +
13  public:
+
14  op_dv_vari(double f, double a, vari* bvi) :
+
15  vari(f),
+
16  ad_(a),
+
17  bvi_(bvi) {
+
18  }
+
19  };
+
20 
+
21  }
+
22 }
+
23 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/dvd__vari_8hpp.html b/doc/api/html/dvd__vari_8hpp.html new file mode 100644 index 00000000000..2d6d37ce2bc --- /dev/null +++ b/doc/api/html/dvd__vari_8hpp.html @@ -0,0 +1,128 @@ + + + + + +Stan: src/stan/agrad/rev/internal/dvd_vari.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
dvd_vari.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + +

+Classes

class  stan::agrad::op_dvd_vari
 
+ + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/dvd__vari_8hpp_source.html b/doc/api/html/dvd__vari_8hpp_source.html new file mode 100644 index 00000000000..023b3d83920 --- /dev/null +++ b/doc/api/html/dvd__vari_8hpp_source.html @@ -0,0 +1,132 @@ + + + + + +Stan: src/stan/agrad/rev/internal/dvd_vari.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
dvd_vari.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__REV__INTERNAL__DVD_VARI_HPP__
+
2 #define __STAN__AGRAD__REV__INTERNAL__DVD_VARI_HPP__
+
3 
+ +
5 
+
6 namespace stan {
+
7  namespace agrad {
+
8 
+
9  class op_dvd_vari : public vari {
+
10  protected:
+
11  double ad_;
+ +
13  double cd_;
+
14  public:
+
15  op_dvd_vari(double f, double a, vari* bvi, double c) :
+
16  vari(f),
+
17  ad_(a),
+
18  bvi_(bvi),
+
19  cd_(c) {
+
20  }
+
21  };
+
22 
+
23  }
+
24 }
+
25 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/dvv__vari_8hpp.html b/doc/api/html/dvv__vari_8hpp.html new file mode 100644 index 00000000000..93e6275c012 --- /dev/null +++ b/doc/api/html/dvv__vari_8hpp.html @@ -0,0 +1,128 @@ + + + + + +Stan: src/stan/agrad/rev/internal/dvv_vari.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
dvv_vari.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + +

+Classes

class  stan::agrad::op_dvv_vari
 
+ + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/dvv__vari_8hpp_source.html b/doc/api/html/dvv__vari_8hpp_source.html new file mode 100644 index 00000000000..819aa47c332 --- /dev/null +++ b/doc/api/html/dvv__vari_8hpp_source.html @@ -0,0 +1,132 @@ + + + + + +Stan: src/stan/agrad/rev/internal/dvv_vari.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
dvv_vari.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__REV__INTERNAL__DVV_VARI_HPP__
+
2 #define __STAN__AGRAD__REV__INTERNAL__DVV_VARI_HPP__
+
3 
+ +
5 
+
6 namespace stan {
+
7  namespace agrad {
+
8 
+
9  class op_dvv_vari : public vari {
+
10  protected:
+
11  double ad_;
+ + +
14  public:
+
15  op_dvv_vari(double f, double a, vari* bvi, vari* cvi) :
+
16  vari(f),
+
17  ad_(a),
+
18  bvi_(bvi),
+
19  cvi_(cvi) {
+
20  }
+
21  };
+
22 
+
23  }
+
24 }
+
25 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/dynsections.js b/doc/api/html/dynsections.js new file mode 100644 index 00000000000..116542f181a --- /dev/null +++ b/doc/api/html/dynsections.js @@ -0,0 +1,78 @@ +function toggleVisibility(linkObj) +{ + var base = $(linkObj).attr('id'); + var summary = $('#'+base+'-summary'); + var content = $('#'+base+'-content'); + var trigger = $('#'+base+'-trigger'); + var src=$(trigger).attr('src'); + if (content.is(':visible')===true) { + content.hide(); + summary.show(); + $(linkObj).addClass('closed').removeClass('opened'); + $(trigger).attr('src',src.substring(0,src.length-8)+'closed.png'); + } else { + content.show(); + summary.hide(); + $(linkObj).removeClass('closed').addClass('opened'); + $(trigger).attr('src',src.substring(0,src.length-10)+'open.png'); + } + return false; +} + +function updateStripes() +{ + $('table.directory tr'). + removeClass('even').filter(':visible:even').addClass('even'); +} +function toggleLevel(level) +{ + $('table.directory tr').each(function(){ + var l = this.id.split('_').length-1; + var i = $('#img'+this.id.substring(3)); + var a = $('#arr'+this.id.substring(3)); + if (l + + + + +Stan: src/stan/math/matrix/eigenvalues_sym.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
eigenvalues_sym.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::math
 Matrices and templated mathematical functions.
 
+ + + + + +

+Functions

template<typename T >
Eigen::Matrix< T,
+Eigen::Dynamic, 1 > 
stan::math::eigenvalues_sym (const Eigen::Matrix< T, Eigen::Dynamic, Eigen::Dynamic > &m)
 Return the eigenvalues of the specified symmetric matrix in descending order of magnitude.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/eigenvalues__sym_8hpp_source.html b/doc/api/html/eigenvalues__sym_8hpp_source.html new file mode 100644 index 00000000000..c92ceebff77 --- /dev/null +++ b/doc/api/html/eigenvalues__sym_8hpp_source.html @@ -0,0 +1,130 @@ + + + + + +Stan: src/stan/math/matrix/eigenvalues_sym.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
eigenvalues_sym.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MATH__MATRIX__EIGENVALUES_SYM_HPP__
+
2 #define __STAN__MATH__MATRIX__EIGENVALUES_SYM_HPP__
+
3 
+ + + +
7 
+
8 namespace stan {
+
9  namespace math {
+
10 
+
20  template <typename T>
+
21  Eigen::Matrix<T,Eigen::Dynamic,1>
+
22  eigenvalues_sym(const Eigen::Matrix<T,Eigen::Dynamic,Eigen::Dynamic>& m) {
+
23  validate_nonzero_size(m,"eigenvalues_sym");
+
24  validate_symmetric(m,"eigenvalues_sym");
+
25  Eigen::SelfAdjointEigenSolver<Eigen::Matrix<T,Eigen::Dynamic,Eigen::Dynamic> >
+
26  solver(m,Eigen::EigenvaluesOnly);
+
27  return solver.eigenvalues();
+
28  }
+
29 
+
30  }
+
31 }
+
32 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/eigenvectors__sym_8hpp.html b/doc/api/html/eigenvectors__sym_8hpp.html new file mode 100644 index 00000000000..17379320598 --- /dev/null +++ b/doc/api/html/eigenvectors__sym_8hpp.html @@ -0,0 +1,132 @@ + + + + + +Stan: src/stan/math/matrix/eigenvectors_sym.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
eigenvectors_sym.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::math
 Matrices and templated mathematical functions.
 
+ + + + +

+Functions

template<typename T >
Eigen::Matrix< T,
+Eigen::Dynamic, Eigen::Dynamic > 
stan::math::eigenvectors_sym (const Eigen::Matrix< T, Eigen::Dynamic, Eigen::Dynamic > &m)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/eigenvectors__sym_8hpp_source.html b/doc/api/html/eigenvectors__sym_8hpp_source.html new file mode 100644 index 00000000000..0b5d325b0a6 --- /dev/null +++ b/doc/api/html/eigenvectors__sym_8hpp_source.html @@ -0,0 +1,130 @@ + + + + + +Stan: src/stan/math/matrix/eigenvectors_sym.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
eigenvectors_sym.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MATH__MATRIX__EIGENVECTORS_SYM_HPP__
+
2 #define __STAN__MATH__MATRIX__EIGENVECTORS_SYM_HPP__
+
3 
+ + + +
7 
+
8 namespace stan {
+
9  namespace math {
+
10 
+
11  template <typename T>
+
12  Eigen::Matrix<T,Eigen::Dynamic,Eigen::Dynamic>
+
13  eigenvectors_sym(const Eigen::Matrix<T,Eigen::Dynamic,Eigen::Dynamic>& m) {
+
14  validate_nonzero_size(m,"eigenvectors_sym");
+
15  validate_symmetric(m,"eigenvectors_sym");
+
16  Eigen::SelfAdjointEigenSolver<Eigen::Matrix<T,Eigen::Dynamic,Eigen::Dynamic> >
+
17  solver(m);
+
18  return solver.eigenvectors();
+
19  }
+
20 
+
21  }
+
22 }
+
23 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/elt__divide_8hpp.html b/doc/api/html/elt__divide_8hpp.html new file mode 100644 index 00000000000..9ecf40642a9 --- /dev/null +++ b/doc/api/html/elt__divide_8hpp.html @@ -0,0 +1,134 @@ + + + + + +Stan: src/stan/math/matrix/elt_divide.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
elt_divide.hpp File Reference
+
+
+
#include <boost/math/tools/promotion.hpp>
+#include <stan/math/matrix/Eigen.hpp>
+#include <stan/math/matrix/validate_matching_dims.hpp>
+
+

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::math
 Matrices and templated mathematical functions.
 
+ + + + + +

+Functions

template<typename T1 , typename T2 , int R, int C>
Eigen::Matrix< typename
+boost::math::tools::promote_args
+< T1, T2 >::type, R, C > 
stan::math::elt_divide (const Eigen::Matrix< T1, R, C > &m1, const Eigen::Matrix< T2, R, C > &m2)
 Return the elementwise division of the specified matrices matrices.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/elt__divide_8hpp_source.html b/doc/api/html/elt__divide_8hpp_source.html new file mode 100644 index 00000000000..7d32de8bd48 --- /dev/null +++ b/doc/api/html/elt__divide_8hpp_source.html @@ -0,0 +1,132 @@ + + + + + +Stan: src/stan/math/matrix/elt_divide.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
elt_divide.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MATH__MATRIX__ELT_DIVIDE_HPP__
+
2 #define __STAN__MATH__MATRIX__ELT_DIVIDE_HPP__
+
3 
+
4 #include <boost/math/tools/promotion.hpp>
+ + +
7 
+
8 namespace stan {
+
9  namespace math {
+
10 
+
23  template <typename T1, typename T2, int R, int C>
+
24  Eigen::Matrix<typename boost::math::tools::promote_args<T1,T2>::type, R, C>
+
25  elt_divide(const Eigen::Matrix<T1,R,C>& m1,
+
26  const Eigen::Matrix<T2,R,C>& m2) {
+
27  stan::math::validate_matching_dims(m1,m2,"elt_multiply");
+
28  Eigen::Matrix<typename boost::math::tools::promote_args<T1,T2>::type, R, C>
+
29  result(m1.rows(),m2.cols());
+
30  for (int i = 0; i < m1.size(); ++i)
+
31  result(i) = m1(i) / m2(i);
+
32  return result;
+
33  }
+
34 
+
35  }
+
36 }
+
37 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/elt__multiply_8hpp.html b/doc/api/html/elt__multiply_8hpp.html new file mode 100644 index 00000000000..9beb0b46ebc --- /dev/null +++ b/doc/api/html/elt__multiply_8hpp.html @@ -0,0 +1,134 @@ + + + + + +Stan: src/stan/math/matrix/elt_multiply.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
elt_multiply.hpp File Reference
+
+
+
#include <boost/math/tools/promotion.hpp>
+#include <stan/math/matrix/Eigen.hpp>
+#include <stan/math/matrix/validate_matching_dims.hpp>
+
+

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::math
 Matrices and templated mathematical functions.
 
+ + + + + +

+Functions

template<typename T1 , typename T2 , int R, int C>
Eigen::Matrix< typename
+boost::math::tools::promote_args
+< T1, T2 >::type, R, C > 
stan::math::elt_multiply (const Eigen::Matrix< T1, R, C > &m1, const Eigen::Matrix< T2, R, C > &m2)
 Return the elementwise multiplication of the specified matrices.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/elt__multiply_8hpp_source.html b/doc/api/html/elt__multiply_8hpp_source.html new file mode 100644 index 00000000000..03ceb197c80 --- /dev/null +++ b/doc/api/html/elt__multiply_8hpp_source.html @@ -0,0 +1,132 @@ + + + + + +Stan: src/stan/math/matrix/elt_multiply.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
elt_multiply.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MATH__MATRIX__ELT_MULTIPLY_HPP__
+
2 #define __STAN__MATH__MATRIX__ELT_MULTIPLY_HPP__
+
3 
+
4 #include <boost/math/tools/promotion.hpp>
+ + +
7 
+
8 namespace stan {
+
9  namespace math {
+
10 
+
23  template <typename T1, typename T2, int R, int C>
+
24  Eigen::Matrix<typename boost::math::tools::promote_args<T1,T2>::type, R, C>
+
25  elt_multiply(const Eigen::Matrix<T1,R,C>& m1,
+
26  const Eigen::Matrix<T2,R,C>& m2) {
+
27  stan::math::validate_matching_dims(m1,m2,"elt_multiply");
+
28  Eigen::Matrix<typename boost::math::tools::promote_args<T1,T2>::type, R, C>
+
29  result(m1.rows(),m2.cols());
+
30  for (int i = 0; i < m1.size(); ++i)
+
31  result(i) = m1(i) * m2(i);
+
32  return result;
+
33  }
+
34 
+
35  }
+
36 }
+
37 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/error__codes_8hpp.html b/doc/api/html/error__codes_8hpp.html new file mode 100644 index 00000000000..69ddb8d5cde --- /dev/null +++ b/doc/api/html/error__codes_8hpp.html @@ -0,0 +1,127 @@ + + + + + +Stan: src/stan/gm/error_codes.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
error_codes.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + +

+Classes

struct  stan::gm::error_codes
 
+ + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::gm
 Directed graphical model compiler.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/error__codes_8hpp_source.html b/doc/api/html/error__codes_8hpp_source.html new file mode 100644 index 00000000000..da448001787 --- /dev/null +++ b/doc/api/html/error__codes_8hpp_source.html @@ -0,0 +1,128 @@ + + + + + +Stan: src/stan/gm/error_codes.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
error_codes.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__GM__ERROR_CODES_HPP__
+
2 #define __STAN__GM__ERROR_CODES_HPP__
+
3 
+
4 namespace stan {
+
5  namespace gm {
+
6 
+
7  struct error_codes {
+
8  // defining error codes to follow FreeBSD sysexits conventions
+
9  // http://www.gsp.com/cgi-bin/man.cgi?section=3&topic=sysexits
+
10  enum {
+
11  OK = 0,
+
12  USAGE = 64,
+
13  DATAERR = 65,
+
14  NOINPUT = 66,
+
15  SOFTWARE = 70,
+
16  CONFIG = 78
+
17  };
+
18  };
+
19  }
+
20 }
+
21 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/error__handling_8dox.html b/doc/api/html/error__handling_8dox.html new file mode 100644 index 00000000000..da7aed3f3c5 --- /dev/null +++ b/doc/api/html/error__handling_8dox.html @@ -0,0 +1,103 @@ + + + + + +Stan: src/doxygen/error_handling.dox File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ +
+
+
+
src/doxygen/error_handling.dox File Reference
+
+
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/exp__mod__normal_8hpp.html b/doc/api/html/exp__mod__normal_8hpp.html new file mode 100644 index 00000000000..f75c67cced2 --- /dev/null +++ b/doc/api/html/exp__mod__normal_8hpp.html @@ -0,0 +1,160 @@ + + + + + +Stan: src/stan/prob/distributions/univariate/continuous/exp_mod_normal.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
exp_mod_normal.hpp File Reference
+
+
+
#include <boost/random/normal_distribution.hpp>
+#include <boost/math/special_functions/fpclassify.hpp>
+#include <boost/random/variate_generator.hpp>
+#include <stan/prob/distributions/univariate/continuous/normal.hpp>
+#include <stan/prob/distributions/univariate/continuous/exponential.hpp>
+#include <stan/agrad/partials_vari.hpp>
+#include <stan/math/error_handling.hpp>
+#include <stan/math/constants.hpp>
+#include <stan/meta/traits.hpp>
+#include <stan/prob/constants.hpp>
+#include <stan/prob/traits.hpp>
+#include <stan/math/functions/value_of.hpp>
+
+

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::prob
 Templated probability distributions.
 
+ + + + + + + + + + + + + + + + + + + +

+Functions

template<bool propto, typename T_y , typename T_loc , typename T_scale , typename T_inv_scale >
return_type< T_y, T_loc,
+T_scale, T_inv_scale >::type 
stan::prob::exp_mod_normal_log (const T_y &y, const T_loc &mu, const T_scale &sigma, const T_inv_scale &lambda)
 
template<typename T_y , typename T_loc , typename T_scale , typename T_inv_scale >
return_type< T_y, T_loc,
+T_scale, T_inv_scale >::type 
stan::prob::exp_mod_normal_log (const T_y &y, const T_loc &mu, const T_scale &sigma, const T_inv_scale &lambda)
 
template<typename T_y , typename T_loc , typename T_scale , typename T_inv_scale >
return_type< T_y, T_loc,
+T_scale, T_inv_scale >::type 
stan::prob::exp_mod_normal_cdf (const T_y &y, const T_loc &mu, const T_scale &sigma, const T_inv_scale &lambda)
 
template<typename T_y , typename T_loc , typename T_scale , typename T_inv_scale >
return_type< T_y, T_loc,
+T_scale, T_inv_scale >::type 
stan::prob::exp_mod_normal_cdf_log (const T_y &y, const T_loc &mu, const T_scale &sigma, const T_inv_scale &lambda)
 
template<typename T_y , typename T_loc , typename T_scale , typename T_inv_scale >
return_type< T_y, T_loc,
+T_scale, T_inv_scale >::type 
stan::prob::exp_mod_normal_ccdf_log (const T_y &y, const T_loc &mu, const T_scale &sigma, const T_inv_scale &lambda)
 
template<class RNG >
double stan::prob::exp_mod_normal_rng (const double mu, const double sigma, const double lambda, RNG &rng)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/exp__mod__normal_8hpp_source.html b/doc/api/html/exp__mod__normal_8hpp_source.html new file mode 100644 index 00000000000..10a2e66da43 --- /dev/null +++ b/doc/api/html/exp__mod__normal_8hpp_source.html @@ -0,0 +1,635 @@ + + + + + +Stan: src/stan/prob/distributions/univariate/continuous/exp_mod_normal.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
exp_mod_normal.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__PROB__DISTRIBUTIONS__UNIVARIATE__CONTINUOUS__EXP__MOD__NORMAL__HPP__
+
2 #define __STAN__PROB__DISTRIBUTIONS__UNIVARIATE__CONTINUOUS__EXP__MOD__NORMAL__HPP__
+
3 
+
4 #include <boost/random/normal_distribution.hpp>
+
5 #include <boost/math/special_functions/fpclassify.hpp>
+
6 #include <boost/random/variate_generator.hpp>
+ + +
9 
+ + +
12 #include <stan/math/constants.hpp>
+
13 #include <stan/meta/traits.hpp>
+
14 #include <stan/prob/constants.hpp>
+
15 #include <stan/prob/traits.hpp>
+ +
17 
+
18 namespace stan {
+
19 
+
20  namespace prob {
+
21 
+
22  template <bool propto,
+
23  typename T_y, typename T_loc, typename T_scale,
+
24  typename T_inv_scale>
+
25  typename return_type<T_y,T_loc,T_scale, T_inv_scale>::type
+
26  exp_mod_normal_log(const T_y& y, const T_loc& mu, const T_scale& sigma,
+
27  const T_inv_scale& lambda) {
+
28  static const char* function = "stan::prob::exp_mod_normal_log(%1%)";
+
29 
+ + + + + + + +
37 
+
38  // check if any vectors are zero length
+
39  if (!(stan::length(y)
+
40  && stan::length(mu)
+
41  && stan::length(sigma)
+
42  && stan::length(lambda)))
+
43  return 0.0;
+
44 
+
45  // set up return value accumulator
+
46  double logp(0.0);
+
47 
+
48  // validate args (here done over var, which should be OK)
+
49  if (!check_not_nan(function, y, "Random variable", &logp))
+
50  return logp;
+
51  if (!check_finite(function, mu, "Location parameter",
+
52  &logp))
+
53  return logp;
+
54  if (!check_finite(function, lambda, "Inv_scale parameter",
+
55  &logp))
+
56  return logp;
+
57  if (!check_positive(function, lambda, "Inv_scale parameter",
+
58  &logp))
+
59  return logp;
+
60  if (!check_positive(function, sigma, "Scale parameter",
+
61  &logp))
+
62  return logp;
+
63  if (!(check_consistent_sizes(function,
+
64  y,mu,sigma,lambda,
+
65  "Random variable","Location parameter",
+
66  "Scale parameter", "Inv_scale paramter",
+
67  &logp)))
+
68  return logp;
+
69 
+
70  // check if no variables are involved and prop-to
+ +
72  return 0.0;
+
73 
+
74  // set up template expressions wrapping scalars into vector views
+ +
76  operands_and_partials(y, mu, sigma,lambda);
+
77 
+
78  VectorView<const T_y> y_vec(y);
+
79  VectorView<const T_loc> mu_vec(mu);
+
80  VectorView<const T_scale> sigma_vec(sigma);
+
81  VectorView<const T_inv_scale> lambda_vec(lambda);
+
82  size_t N = max_size(y, mu, sigma, lambda);
+
83 
+
84  for (size_t n = 0; n < N; n++) {
+
85  //pull out values of arguments
+
86  const double y_dbl = value_of(y_vec[n]);
+
87  const double mu_dbl = value_of(mu_vec[n]);
+
88  const double sigma_dbl = value_of(sigma_vec[n]);
+
89  const double lambda_dbl = value_of(lambda_vec[n]);
+
90 
+
91  const double pi_dbl = boost::math::constants::pi<double>();
+
92 
+
93  // log probability
+ +
95  logp -= log(2.0);
+ +
97  logp += log(lambda_dbl);
+ +
99  logp += lambda_dbl
+
100  * (mu_dbl + 0.5 * lambda_dbl * sigma_dbl * sigma_dbl - y_dbl)
+
101  + log(boost::math::erfc((mu_dbl + lambda_dbl * sigma_dbl
+
102  * sigma_dbl - y_dbl)
+
103  / (std::sqrt(2.0) * sigma_dbl)));
+
104 
+
105  // gradients
+
106  const double deriv_logerfc
+
107  = -2.0 / std::sqrt(pi_dbl)
+
108  * exp(-(mu_dbl + lambda_dbl * sigma_dbl * sigma_dbl - y_dbl)
+
109  / (std::sqrt(2.0) * sigma_dbl)
+
110  * (mu_dbl + lambda_dbl * sigma_dbl * sigma_dbl - y_dbl)
+
111  / (sigma_dbl * std::sqrt(2.0)))
+
112  / boost::math::erfc((mu_dbl + lambda_dbl * sigma_dbl * sigma_dbl
+
113  - y_dbl)
+
114  / (sigma_dbl * std::sqrt(2.0)));
+
115 
+ +
117  operands_and_partials.d_x1[n]
+
118  += -lambda_dbl
+
119  + deriv_logerfc * -1.0 / (sigma_dbl * std::sqrt(2.0));
+ +
121  operands_and_partials.d_x2[n]
+
122  += lambda_dbl
+
123  + deriv_logerfc / (sigma_dbl * std::sqrt(2.0));
+ +
125  operands_and_partials.d_x3[n]
+
126  += sigma_dbl * lambda_dbl * lambda_dbl
+
127  + deriv_logerfc
+
128  * (-mu_dbl / (sigma_dbl * sigma_dbl * std::sqrt(2.0))
+
129  + lambda_dbl / std::sqrt(2.0)
+
130  + y_dbl / (sigma_dbl * sigma_dbl * std::sqrt(2.0)));
+ +
132  operands_and_partials.d_x4[n]
+
133  += 1 / lambda_dbl + lambda_dbl * sigma_dbl * sigma_dbl
+
134  + mu_dbl - y_dbl + deriv_logerfc * sigma_dbl / std::sqrt(2.0);
+
135  }
+
136  return operands_and_partials.to_var(logp);
+
137  }
+
138 
+
139  template <typename T_y, typename T_loc, typename T_scale,
+
140  typename T_inv_scale>
+
141  inline
+ +
143  exp_mod_normal_log(const T_y& y, const T_loc& mu, const T_scale& sigma,
+
144  const T_inv_scale& lambda) {
+
145  return exp_mod_normal_log<false>(y,mu,sigma,lambda);
+
146  }
+
147 
+
148  template <typename T_y, typename T_loc, typename T_scale,
+
149  typename T_inv_scale>
+ +
151  exp_mod_normal_cdf(const T_y& y, const T_loc& mu, const T_scale& sigma,
+
152  const T_inv_scale& lambda) {
+
153  static const char* function = "stan::prob::exp_mod_normal_cdf(%1%)";
+
154 
+ + + + +
159  using stan::math::value_of;
+
160 
+
161  double cdf(1.0);
+
162  //check if any vectors are zero length
+
163  if (!(stan::length(y)
+
164  && stan::length(mu)
+
165  && stan::length(sigma)
+
166  && stan::length(lambda)))
+
167  return cdf;
+
168 
+
169  if (!check_not_nan(function, y, "Random variable", &cdf))
+
170  return cdf;
+
171  if (!check_finite(function, mu, "Location parameter", &cdf))
+
172  return cdf;
+
173  if (!check_not_nan(function, sigma, "Scale parameter", &cdf))
+
174  return cdf;
+
175  if (!check_finite(function, sigma, "Scale parameter", &cdf))
+
176  return cdf;
+
177  if (!check_positive(function, sigma, "Scale parameter", &cdf))
+
178  return cdf;
+
179  if (!check_finite(function, lambda, "Inv_scale parameter", &cdf))
+
180  return cdf;
+
181  if (!check_positive(function, lambda, "Inv_scale parameter", &cdf))
+
182  return cdf;
+
183  if (!check_not_nan(function, lambda, "Inv_scale parameter", &cdf))
+
184  return cdf;
+
185  if (!(check_consistent_sizes(function,
+
186  y,mu,sigma,lambda,
+
187  "Random variable","Location parameter",
+
188  "Scale parameter","Inv_scale paramter",
+
189  &cdf)))
+
190  return cdf;
+
191 
+ +
193  operands_and_partials(y, mu, sigma,lambda);
+
194 
+
195  using stan::math::SQRT_2;
+
196 
+
197  VectorView<const T_y> y_vec(y);
+
198  VectorView<const T_loc> mu_vec(mu);
+
199  VectorView<const T_scale> sigma_vec(sigma);
+
200  VectorView<const T_inv_scale> lambda_vec(lambda);
+
201  size_t N = max_size(y, mu, sigma, lambda);
+
202  const double sqrt_pi = std::sqrt(stan::math::pi());
+
203  for (size_t n = 0; n < N; n++) {
+
204 
+
205  if(boost::math::isinf(y_vec[n])) {
+
206  if (y_vec[n] < 0.0)
+
207  return operands_and_partials.to_var(0.0);
+
208  }
+
209 
+
210  const double y_dbl = value_of(y_vec[n]);
+
211  const double mu_dbl = value_of(mu_vec[n]);
+
212  const double sigma_dbl = value_of(sigma_vec[n]);
+
213  const double lambda_dbl = value_of(lambda_vec[n]);
+
214  const double u = lambda_dbl * (y_dbl - mu_dbl);
+
215  const double v = lambda_dbl * sigma_dbl ;
+
216  const double v_sq = v * v;
+
217  const double scaled_diff = (y_dbl - mu_dbl) / (SQRT_2 * sigma_dbl);
+
218  const double scaled_diff_sq = scaled_diff * scaled_diff;
+
219  const double erf_calc = 0.5 * (1 + erf(-v / SQRT_2 + scaled_diff));
+
220  const double deriv_1 = lambda_dbl * exp(0.5 * v_sq - u) * erf_calc;
+
221  const double deriv_2 = SQRT_2 / sqrt_pi * 0.5 * exp(0.5 * v_sq
+
222  - (scaled_diff
+
223  - (v / SQRT_2)) * (scaled_diff
+
224  - (v / SQRT_2)) - u) / sigma_dbl;
+
225  const double deriv_3 = SQRT_2 / sqrt_pi * 0.5 * exp(-scaled_diff_sq)
+
226  / sigma_dbl;
+
227 
+
228  const double cdf_ = 0.5 * (1 + erf(u / (v * SQRT_2)))
+
229  - exp(-u + v_sq * 0.5) * (erf_calc);
+
230 
+
231  cdf *= cdf_;
+
232 
+ +
234  operands_and_partials.d_x1[n] += (deriv_1 - deriv_2 + deriv_3)
+
235  / cdf_;
+ +
237  operands_and_partials.d_x2[n] += (-deriv_1 + deriv_2 - deriv_3)
+
238  / cdf_;
+ +
240  operands_and_partials.d_x3[n] += (-deriv_1 * v - deriv_3
+
241  * scaled_diff * SQRT_2 - deriv_2 * sigma_dbl * SQRT_2 * (-SQRT_2
+
242  * 0.5 * (-lambda_dbl + scaled_diff * SQRT_2 / sigma_dbl) - SQRT_2
+
243  * lambda_dbl)) / cdf_;
+ +
245  operands_and_partials.d_x4[n] += exp(0.5 * v_sq - u) * (SQRT_2
+
246  / sqrt_pi * 0.5 * sigma_dbl * exp(-(v / SQRT_2 - scaled_diff) * (v
+
247  / SQRT_2 - scaled_diff)) - (v * sigma_dbl + mu_dbl - y_dbl)
+
248  * erf_calc) / cdf_;
+
249  }
+
250 
+ +
252  for(size_t n = 0; n < stan::length(y); ++n)
+
253  operands_and_partials.d_x1[n] *= cdf;
+
254  }
+ +
256  for(size_t n = 0; n < stan::length(mu); ++n)
+
257  operands_and_partials.d_x2[n] *= cdf;
+
258  }
+ +
260  for(size_t n = 0; n < stan::length(sigma); ++n)
+
261  operands_and_partials.d_x3[n] *= cdf;
+
262  }
+ +
264  for(size_t n = 0; n < stan::length(lambda); ++n)
+
265  operands_and_partials.d_x4[n] *= cdf;
+
266  }
+
267 
+
268  return operands_and_partials.to_var(cdf);
+
269  }
+
270 
+
271  template <typename T_y, typename T_loc, typename T_scale,
+
272  typename T_inv_scale>
+ +
274  exp_mod_normal_cdf_log(const T_y& y, const T_loc& mu, const T_scale& sigma,
+
275  const T_inv_scale& lambda) {
+
276  static const char* function = "stan::prob::exp_mod_normal_cdf_log(%1%)";
+
277 
+ + + + +
282  using stan::math::value_of;
+
283 
+
284  double cdf_log(0.0);
+
285  //check if any vectors are zero length
+
286  if (!(stan::length(y)
+
287  && stan::length(mu)
+
288  && stan::length(sigma)
+
289  && stan::length(lambda)))
+
290  return cdf_log;
+
291 
+
292  if (!check_not_nan(function, y, "Random variable", &cdf_log))
+
293  return cdf_log;
+
294  if (!check_finite(function, mu, "Location parameter", &cdf_log))
+
295  return cdf_log;
+
296  if (!check_not_nan(function, sigma, "Scale parameter", &cdf_log))
+
297  return cdf_log;
+
298  if (!check_finite(function, sigma, "Scale parameter", &cdf_log))
+
299  return cdf_log;
+
300  if (!check_positive(function, sigma, "Scale parameter", &cdf_log))
+
301  return cdf_log;
+
302  if (!check_finite(function, lambda, "Inv_scale parameter", &cdf_log))
+
303  return cdf_log;
+
304  if (!check_positive(function, lambda, "Inv_scale parameter", &cdf_log))
+
305  return cdf_log;
+
306  if (!check_not_nan(function, lambda, "Inv_scale parameter", &cdf_log))
+
307  return cdf_log;
+
308  if (!(check_consistent_sizes(function,
+
309  y,mu,sigma,lambda,
+
310  "Random variable","Location parameter",
+
311  "Scale parameter","Inv_scale paramter",
+
312  &cdf_log)))
+
313  return cdf_log;
+
314 
+ +
316  operands_and_partials(y, mu, sigma,lambda);
+
317 
+
318  using stan::math::SQRT_2;
+
319  using std::log;
+
320 
+
321  VectorView<const T_y> y_vec(y);
+
322  VectorView<const T_loc> mu_vec(mu);
+
323  VectorView<const T_scale> sigma_vec(sigma);
+
324  VectorView<const T_inv_scale> lambda_vec(lambda);
+
325  size_t N = max_size(y, mu, sigma, lambda);
+
326  const double sqrt_pi = std::sqrt(stan::math::pi());
+
327  for (size_t n = 0; n < N; n++) {
+
328 
+
329  if(boost::math::isinf(y_vec[n])) {
+
330  if (y_vec[n] < 0.0)
+
331  return operands_and_partials.to_var(stan::math::negative_infinity());
+
332  else
+
333  return operands_and_partials.to_var(0.0);
+
334  }
+
335 
+
336  const double y_dbl = value_of(y_vec[n]);
+
337  const double mu_dbl = value_of(mu_vec[n]);
+
338  const double sigma_dbl = value_of(sigma_vec[n]);
+
339  const double lambda_dbl = value_of(lambda_vec[n]);
+
340  const double u = lambda_dbl * (y_dbl - mu_dbl);
+
341  const double v = lambda_dbl * sigma_dbl ;
+
342  const double v_sq = v * v;
+
343  const double scaled_diff = (y_dbl - mu_dbl) / (SQRT_2 * sigma_dbl);
+
344  const double scaled_diff_sq = scaled_diff * scaled_diff;
+
345  const double erf_calc1 = 0.5 * (1 + erf(u / (v * SQRT_2)));
+
346  const double erf_calc2 = 0.5 * (1 + erf(u / (v * SQRT_2) - v / SQRT_2));
+
347  const double deriv_1 = lambda_dbl * exp(0.5 * v_sq - u) * erf_calc2;
+
348  const double deriv_2 = SQRT_2 / sqrt_pi * 0.5
+
349  * exp(0.5 * v_sq - (-scaled_diff + (v / SQRT_2))
+
350  * (-scaled_diff + (v / SQRT_2)) - u) / sigma_dbl;
+
351  const double deriv_3 = SQRT_2 / sqrt_pi * 0.5 * exp(-scaled_diff_sq)
+
352  / sigma_dbl;
+
353 
+
354  const double denom = erf_calc1 - erf_calc2 * exp(0.5 * v_sq - u);
+
355  const double cdf_ = erf_calc1 - exp(-u + v_sq * 0.5) * (erf_calc2);
+
356 
+
357  cdf_log += log(cdf_);
+
358 
+ +
360  operands_and_partials.d_x1[n] += (deriv_1 - deriv_2 + deriv_3)
+
361  / denom;
+ +
363  operands_and_partials.d_x2[n] += (-deriv_1 + deriv_2 - deriv_3)
+
364  / denom;
+ +
366  operands_and_partials.d_x3[n]
+
367  += (-deriv_1 * v - deriv_3 * scaled_diff
+
368  * SQRT_2 - deriv_2 * sigma_dbl * SQRT_2
+
369  * (-SQRT_2 * 0.5 * (-lambda_dbl + scaled_diff * SQRT_2
+
370  / sigma_dbl)
+
371  - SQRT_2 * lambda_dbl))
+
372  / denom;
+ +
374  operands_and_partials.d_x4[n]
+
375  += exp(0.5 * v_sq - u)
+
376  * (SQRT_2 / sqrt_pi * 0.5 * sigma_dbl
+
377  * exp(-(v / SQRT_2 - scaled_diff)
+
378  * (v / SQRT_2 - scaled_diff))
+
379  - (v * sigma_dbl + mu_dbl - y_dbl) * erf_calc2)
+
380  / denom;
+
381  }
+
382 
+
383  return operands_and_partials.to_var(cdf_log);
+
384  }
+
385 
+
386  template <typename T_y, typename T_loc, typename T_scale,
+
387  typename T_inv_scale>
+ +
389  exp_mod_normal_ccdf_log(const T_y& y, const T_loc& mu, const T_scale& sigma,
+
390  const T_inv_scale& lambda) {
+
391  static const char* function = "stan::prob::exp_mod_normal_ccdf_log(%1%)";
+
392 
+ + + + +
397  using stan::math::value_of;
+
398 
+
399  double ccdf_log(0.0);
+
400  //check if any vectors are zero length
+
401  if (!(stan::length(y)
+
402  && stan::length(mu)
+
403  && stan::length(sigma)
+
404  && stan::length(lambda)))
+
405  return ccdf_log;
+
406 
+
407  if (!check_not_nan(function, y, "Random variable", &ccdf_log))
+
408  return ccdf_log;
+
409  if (!check_finite(function, mu, "Location parameter", &ccdf_log))
+
410  return ccdf_log;
+
411  if (!check_not_nan(function, sigma, "Scale parameter", &ccdf_log))
+
412  return ccdf_log;
+
413  if (!check_finite(function, sigma, "Scale parameter", &ccdf_log))
+
414  return ccdf_log;
+
415  if (!check_positive(function, sigma, "Scale parameter", &ccdf_log))
+
416  return ccdf_log;
+
417  if (!check_finite(function, lambda, "Inv_scale parameter", &ccdf_log))
+
418  return ccdf_log;
+
419  if (!check_positive(function, lambda, "Inv_scale parameter", &ccdf_log))
+
420  return ccdf_log;
+
421  if (!check_not_nan(function, lambda, "Inv_scale parameter", &ccdf_log))
+
422  return ccdf_log;
+
423  if (!(check_consistent_sizes(function,
+
424  y,mu,sigma,lambda,
+
425  "Random variable","Location parameter",
+
426  "Scale parameter","Inv_scale paramter",
+
427  &ccdf_log)))
+
428  return ccdf_log;
+
429 
+ +
431  operands_and_partials(y, mu, sigma,lambda);
+
432 
+
433  using stan::math::SQRT_2;
+
434  using std::log;
+
435 
+
436  VectorView<const T_y> y_vec(y);
+
437  VectorView<const T_loc> mu_vec(mu);
+
438  VectorView<const T_scale> sigma_vec(sigma);
+
439  VectorView<const T_inv_scale> lambda_vec(lambda);
+
440  size_t N = max_size(y, mu, sigma, lambda);
+
441  const double sqrt_pi = std::sqrt(stan::math::pi());
+
442  for (size_t n = 0; n < N; n++) {
+
443 
+
444  if(boost::math::isinf(y_vec[n])) {
+
445  if (y_vec[n] > 0.0)
+
446  return operands_and_partials.to_var(stan::math::negative_infinity());
+
447  else
+
448  return operands_and_partials.to_var(0.0);
+
449  }
+
450 
+
451  const double y_dbl = value_of(y_vec[n]);
+
452  const double mu_dbl = value_of(mu_vec[n]);
+
453  const double sigma_dbl = value_of(sigma_vec[n]);
+
454  const double lambda_dbl = value_of(lambda_vec[n]);
+
455  const double u = lambda_dbl * (y_dbl - mu_dbl);
+
456  const double v = lambda_dbl * sigma_dbl ;
+
457  const double v_sq = v * v;
+
458  const double scaled_diff = (y_dbl - mu_dbl) / (SQRT_2 * sigma_dbl);
+
459  const double scaled_diff_sq = scaled_diff * scaled_diff;
+
460  const double erf_calc1 = 0.5 * (1 + erf(u / (v * SQRT_2)));
+
461  const double erf_calc2 = 0.5 * (1 + erf(u / (v * SQRT_2) - v / SQRT_2));
+
462 
+
463  const double deriv_1 = lambda_dbl * exp(0.5 * v_sq - u) * erf_calc2;
+
464  const double deriv_2 = SQRT_2 / sqrt_pi * 0.5
+
465  * exp(0.5 * v_sq
+
466  - (-scaled_diff + (v / SQRT_2)) * (-scaled_diff
+
467  + (v / SQRT_2)) - u)
+
468  / sigma_dbl;
+
469  const double deriv_3 = SQRT_2 / sqrt_pi * 0.5 * exp(-scaled_diff_sq) / sigma_dbl;
+
470 
+
471  const double ccdf_ = 1.0 - erf_calc1 + exp(-u + v_sq * 0.5) * (erf_calc2);
+
472 
+
473  ccdf_log += log(ccdf_);
+
474 
+ +
476  operands_and_partials.d_x1[n]
+
477  -= (deriv_1 - deriv_2 + deriv_3) / ccdf_;
+ +
479  operands_and_partials.d_x2[n]
+
480  -= (-deriv_1 + deriv_2 - deriv_3) / ccdf_;
+ +
482  operands_and_partials.d_x3[n]
+
483  -= (-deriv_1 * v - deriv_3 * scaled_diff * SQRT_2 - deriv_2
+
484  * sigma_dbl * SQRT_2
+
485  * (-SQRT_2 * 0.5 * (-lambda_dbl + scaled_diff * SQRT_2
+
486  / sigma_dbl)
+
487  - SQRT_2 * lambda_dbl))
+
488  / ccdf_;
+ +
490  operands_and_partials.d_x4[n] -= exp(0.5 * v_sq - u)
+
491  * (SQRT_2 / sqrt_pi * 0.5 * sigma_dbl
+
492  * exp(-(v / SQRT_2 - scaled_diff) * (v / SQRT_2 - scaled_diff))
+
493  - (v * sigma_dbl + mu_dbl - y_dbl) * erf_calc2)
+
494  / ccdf_;
+
495  }
+
496 
+
497  return operands_and_partials.to_var(ccdf_log);
+
498  }
+
499 
+
500  template <class RNG>
+
501  inline double
+
502  exp_mod_normal_rng(const double mu,
+
503  const double sigma,
+
504  const double lambda,
+
505  RNG& rng) {
+
506 
+
507  static const char* function = "stan::prob::exp_mod_normal_rng(%1%)";
+
508 
+ + +
511 
+
512  if (!check_finite(function, mu, "Location parameter"))
+
513  return 0;
+
514  if (!check_finite(function, lambda, "Inv_scale parameter"))
+
515  return 0;
+
516  if (!check_positive(function, lambda, "Inv_scale parameter"))
+
517  return 0;
+
518  if (!check_positive(function, sigma, "Scale parameter"))
+
519  return 0;
+
520 
+
521  return stan::prob::normal_rng(mu, sigma,rng) + stan::prob::exponential_rng(lambda, rng);
+
522  }
+
523  }
+
524 }
+
525 #endif
+
526 
+
527 
+
528 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/expl__leapfrog_8hpp.html b/doc/api/html/expl__leapfrog_8hpp.html new file mode 100644 index 00000000000..0a9787518eb --- /dev/null +++ b/doc/api/html/expl__leapfrog_8hpp.html @@ -0,0 +1,129 @@ + + + + + +Stan: src/stan/mcmc/hmc/integrators/expl_leapfrog.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
expl_leapfrog.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + +

+Classes

class  stan::mcmc::expl_leapfrog< H, P >
 
+ + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::mcmc
 Markov chain Monte Carlo samplers.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/expl__leapfrog_8hpp_source.html b/doc/api/html/expl__leapfrog_8hpp_source.html new file mode 100644 index 00000000000..4a992f62250 --- /dev/null +++ b/doc/api/html/expl__leapfrog_8hpp_source.html @@ -0,0 +1,145 @@ + + + + + +Stan: src/stan/mcmc/hmc/integrators/expl_leapfrog.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
expl_leapfrog.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MCMC__EXPL__LEAPFROG__BETA__
+
2 #define __STAN__MCMC__EXPL__LEAPFROG__BETA__
+
3 
+ + +
6 
+
7 namespace stan {
+
8 
+
9  namespace mcmc {
+
10 
+
11  template <typename H, typename P>
+
12  class expl_leapfrog: public base_leapfrog<H, P> {
+
13 
+
14  public:
+
15 
+
16  expl_leapfrog(std::ostream* o=0): base_leapfrog<H, P>(o) {};
+
17 
+
18  void begin_update_p(P& z, H& hamiltonian, double epsilon) {
+
19  z.p -= epsilon * hamiltonian.dphi_dq(z);
+
20  }
+
21 
+
22  void update_q(P& z, H& hamiltonian, double epsilon) {
+
23  Eigen::Map<Eigen::VectorXd> q(&(z.q[0]), z.q.size());
+
24  q += epsilon * hamiltonian.dtau_dp(z);
+
25  }
+
26 
+
27  void end_update_p(P& z, H& hamiltonian, double epsilon) {
+
28  z.p -= epsilon * hamiltonian.dphi_dq(z);
+
29  }
+
30 
+
31  };
+
32 
+
33  } // mcmc
+
34 
+
35 } // stan
+
36 
+
37 
+
38 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/exponential_8hpp.html b/doc/api/html/exponential_8hpp.html new file mode 100644 index 00000000000..b7a6b21cb14 --- /dev/null +++ b/doc/api/html/exponential_8hpp.html @@ -0,0 +1,158 @@ + + + + + +Stan: src/stan/prob/distributions/univariate/continuous/exponential.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
exponential.hpp File Reference
+
+
+
#include <boost/random/exponential_distribution.hpp>
+#include <boost/random/variate_generator.hpp>
+#include <stan/agrad/partials_vari.hpp>
+#include <stan/math/error_handling.hpp>
+#include <stan/math/functions/value_of.hpp>
+#include <stan/meta/traits.hpp>
+#include <stan/prob/constants.hpp>
+#include <stan/prob/traits.hpp>
+
+

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::prob
 Templated probability distributions.
 
+ + + + + + + + + + + + + + + + + + + + + +

+Functions

template<bool propto, typename T_y , typename T_inv_scale >
return_type< T_y, T_inv_scale >
+::type 
stan::prob::exponential_log (const T_y &y, const T_inv_scale &beta)
 The log of an exponential density for y with the specified inverse scale parameter.
 
template<typename T_y , typename T_inv_scale >
return_type< T_y, T_inv_scale >
+::type 
stan::prob::exponential_log (const T_y &y, const T_inv_scale &beta)
 
template<typename T_y , typename T_inv_scale >
return_type< T_y, T_inv_scale >
+::type 
stan::prob::exponential_cdf (const T_y &y, const T_inv_scale &beta)
 Calculates the exponential cumulative distribution function for the given y and beta.
 
template<typename T_y , typename T_inv_scale >
return_type< T_y, T_inv_scale >
+::type 
stan::prob::exponential_cdf_log (const T_y &y, const T_inv_scale &beta)
 
template<typename T_y , typename T_inv_scale >
return_type< T_y, T_inv_scale >
+::type 
stan::prob::exponential_ccdf_log (const T_y &y, const T_inv_scale &beta)
 
template<class RNG >
double stan::prob::exponential_rng (const double beta, RNG &rng)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/exponential_8hpp_source.html b/doc/api/html/exponential_8hpp_source.html new file mode 100644 index 00000000000..25f85ed9128 --- /dev/null +++ b/doc/api/html/exponential_8hpp_source.html @@ -0,0 +1,378 @@ + + + + + +Stan: src/stan/prob/distributions/univariate/continuous/exponential.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
exponential.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__PROB__DISTRIBUTIONS__UNIVARIATE__CONTINUOUS__EXPONENTIAL_HPP__
+
2 #define __STAN__PROB__DISTRIBUTIONS__UNIVARIATE__CONTINUOUS__EXPONENTIAL_HPP__
+
3 
+
4 #include <boost/random/exponential_distribution.hpp>
+
5 #include <boost/random/variate_generator.hpp>
+
6 
+ + + +
10 #include <stan/meta/traits.hpp>
+
11 #include <stan/prob/constants.hpp>
+
12 #include <stan/prob/traits.hpp>
+
13 
+
14 namespace stan {
+
15 
+
16  namespace prob {
+
17 
+
44  template <bool propto, typename T_y, typename T_inv_scale>
+
45  typename return_type<T_y,T_inv_scale>::type
+
46  exponential_log(const T_y& y, const T_inv_scale& beta) {
+
47  static const char* function = "stan::prob::exponential_log(%1%)";
+
48 
+
49  // check if any vectors are zero length
+
50  if (!(stan::length(y)
+
51  && stan::length(beta)))
+
52  return 0.0;
+
53 
+ + + + + +
59 
+
60  double logp(0.0);
+
61  if(!check_not_nan(function, y, "Random variable", &logp))
+
62  return logp;
+
63  if(!check_finite(function, beta, "Inverse scale parameter", &logp))
+
64  return logp;
+
65  if(!check_positive(function, beta, "Inverse scale parameter", &logp))
+
66  return logp;
+
67 
+
68  if (!(check_consistent_sizes(function,
+
69  y,beta,
+
70  "Random variable","Inverse scale parameter",
+
71  &logp)))
+
72  return logp;
+
73 
+
74 
+
75  // set up template expressions wrapping scalars into vector views
+
76  VectorView<const T_y> y_vec(y);
+
77  VectorView<const T_inv_scale> beta_vec(beta);
+
78  size_t N = max_size(y, beta);
+
79 
+ + +
82  is_vector<T_inv_scale>::value> log_beta(length(beta));
+
83  for (size_t i = 0; i < length(beta); i++)
+
84  if (include_summand<propto,T_inv_scale>::value)
+
85  log_beta[i] = log(value_of(beta_vec[i]));
+
86 
+
87  agrad::OperandsAndPartials<T_y,T_inv_scale> operands_and_partials(y, beta);
+
88 
+
89  for (size_t n = 0; n < N; n++) {
+
90  const double beta_dbl = value_of(beta_vec[n]);
+
91  const double y_dbl = value_of(y_vec[n]);
+
92  if (include_summand<propto,T_inv_scale>::value)
+
93  logp += log_beta[n];
+ +
95  logp -= beta_dbl * y_dbl;
+
96 
+ +
98  operands_and_partials.d_x1[n] -= beta_dbl;
+ +
100  operands_and_partials.d_x2[n] += 1 / beta_dbl - y_dbl;
+
101  }
+
102  return operands_and_partials.to_var(logp);
+
103  }
+
104 
+
105  template <typename T_y, typename T_inv_scale>
+
106  inline
+ +
108  exponential_log(const T_y& y, const T_inv_scale& beta) {
+
109  return exponential_log<false>(y,beta);
+
110  }
+
111 
+
112 
+
113 
+
127  template <typename T_y, typename T_inv_scale>
+ +
129  exponential_cdf(const T_y& y, const T_inv_scale& beta) {
+
130 
+
131  static const char* function = "stan::prob::exponential_cdf(%1%)";
+
132 
+ + + + +
137  using boost::math::tools::promote_args;
+
138  using stan::math::value_of;
+
139 
+
140  double cdf(1.0);
+
141  // check if any vectors are zero length
+
142  if (!(stan::length(y)
+
143  && stan::length(beta)))
+
144  return cdf;
+
145 
+
146  if(!check_not_nan(function, y, "Random variable", &cdf))
+
147  return cdf;
+
148  if(!check_nonnegative(function, y, "Random variable", &cdf))
+
149  return cdf;
+
150  if(!check_finite(function, beta, "Inverse scale parameter", &cdf))
+
151  return cdf;
+
152  if(!check_positive(function, beta, "Inverse scale parameter", &cdf))
+
153  return cdf;
+
154 
+ +
156  operands_and_partials(y, beta);
+
157 
+
158  VectorView<const T_y> y_vec(y);
+
159  VectorView<const T_inv_scale> beta_vec(beta);
+
160  size_t N = max_size(y, beta);
+
161  for (size_t n = 0; n < N; n++) {
+
162  const double beta_dbl = value_of(beta_vec[n]);
+
163  const double y_dbl = value_of(y_vec[n]);
+
164  const double one_m_exp = 1.0 - exp(-beta_dbl * y_dbl);
+
165 
+
166  // cdf
+
167  cdf *= one_m_exp;
+
168  }
+
169 
+
170  for(size_t n = 0; n < N; n++) {
+
171  const double beta_dbl = value_of(beta_vec[n]);
+
172  const double y_dbl = value_of(y_vec[n]);
+
173  const double one_m_exp = 1.0 - exp(-beta_dbl * y_dbl);
+
174 
+
175  // gradients
+
176  double rep_deriv = exp(-beta_dbl * y_dbl) / one_m_exp;
+ +
178  operands_and_partials.d_x1[n] += rep_deriv * beta_dbl * cdf;
+ +
180  operands_and_partials.d_x2[n] += rep_deriv * y_dbl * cdf;
+
181  }
+
182 
+
183  return operands_and_partials.to_var(cdf);
+
184  }
+
185 
+
186  template <typename T_y, typename T_inv_scale>
+ +
188  exponential_cdf_log(const T_y& y, const T_inv_scale& beta) {
+
189 
+
190  static const char* function = "stan::prob::exponential_cdf_log(%1%)";
+
191 
+ + + + +
196  using boost::math::tools::promote_args;
+
197  using stan::math::value_of;
+
198 
+
199  double cdf_log(0.0);
+
200  // check if any vectors are zero length
+
201  if (!(stan::length(y)
+
202  && stan::length(beta)))
+
203  return cdf_log;
+
204 
+
205  if(!check_not_nan(function, y, "Random variable", &cdf_log))
+
206  return cdf_log;
+
207  if(!check_nonnegative(function, y, "Random variable", &cdf_log))
+
208  return cdf_log;
+
209  if(!check_finite(function, beta, "Inverse scale parameter", &cdf_log))
+
210  return cdf_log;
+
211  if(!check_positive(function, beta, "Inverse scale parameter", &cdf_log))
+
212  return cdf_log;
+
213 
+ +
215  operands_and_partials(y, beta);
+
216 
+
217  VectorView<const T_y> y_vec(y);
+
218  VectorView<const T_inv_scale> beta_vec(beta);
+
219  size_t N = max_size(y, beta);
+
220  for (size_t n = 0; n < N; n++) {
+
221  const double beta_dbl = value_of(beta_vec[n]);
+
222  const double y_dbl = value_of(y_vec[n]);
+
223  double one_m_exp = 1.0 - exp(-beta_dbl * y_dbl);
+
224  // log cdf
+
225  cdf_log += log(one_m_exp);
+
226 
+
227  // gradients
+
228  double rep_deriv = -exp(-beta_dbl * y_dbl) / one_m_exp;
+ +
230  operands_and_partials.d_x1[n] -= rep_deriv * beta_dbl;
+ +
232  operands_and_partials.d_x2[n] -= rep_deriv * y_dbl;
+
233  }
+
234  return operands_and_partials.to_var(cdf_log);
+
235  }
+
236 
+
237  template <typename T_y, typename T_inv_scale>
+ +
239  exponential_ccdf_log(const T_y& y, const T_inv_scale& beta) {
+
240 
+
241  static const char* function = "stan::prob::exponential_ccdf_log(%1%)";
+
242 
+ + + + +
247  using boost::math::tools::promote_args;
+
248  using stan::math::value_of;
+
249 
+
250  double ccdf_log(0.0);
+
251  // check if any vectors are zero length
+
252  if (!(stan::length(y)
+
253  && stan::length(beta)))
+
254  return ccdf_log;
+
255 
+
256  if(!check_not_nan(function, y, "Random variable", &ccdf_log))
+
257  return ccdf_log;
+
258  if(!check_nonnegative(function, y, "Random variable", &ccdf_log))
+
259  return ccdf_log;
+
260  if(!check_finite(function, beta, "Inverse scale parameter", &ccdf_log))
+
261  return ccdf_log;
+
262  if(!check_positive(function, beta, "Inverse scale parameter", &ccdf_log))
+
263  return ccdf_log;
+
264 
+ +
266  operands_and_partials(y, beta);
+
267 
+
268  VectorView<const T_y> y_vec(y);
+
269  VectorView<const T_inv_scale> beta_vec(beta);
+
270  size_t N = max_size(y, beta);
+
271  for (size_t n = 0; n < N; n++) {
+
272  const double beta_dbl = value_of(beta_vec[n]);
+
273  const double y_dbl = value_of(y_vec[n]);
+
274  // log ccdf
+
275  ccdf_log += -beta_dbl * y_dbl;
+
276 
+
277  // gradients
+ +
279  operands_and_partials.d_x1[n] -= beta_dbl;
+ +
281  operands_and_partials.d_x2[n] -= y_dbl;
+
282  }
+
283  return operands_and_partials.to_var(ccdf_log);
+
284  }
+
285 
+
286  template <class RNG>
+
287  inline double
+
288  exponential_rng(const double beta,
+
289  RNG& rng) {
+
290  using boost::variate_generator;
+
291  using boost::exponential_distribution;
+
292 
+
293  static const char* function = "stan::prob::exponential_rng(%1%)";
+
294 
+ + +
297 
+
298  if(!check_finite(function, beta, "Inverse scale parameter"))
+
299  return 0;
+
300  if(!check_positive(function, beta, "Inverse scale parameter"))
+
301  return 0;
+
302 
+
303  variate_generator<RNG&, exponential_distribution<> >
+
304  exp_rng(rng, exponential_distribution<>(beta));
+
305  return exp_rng();
+
306  }
+
307  }
+
308 }
+
309 
+
310 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/expression__grammar_8hpp.html b/doc/api/html/expression__grammar_8hpp.html new file mode 100644 index 00000000000..bfbaab0f428 --- /dev/null +++ b/doc/api/html/expression__grammar_8hpp.html @@ -0,0 +1,138 @@ + + + + + +Stan: src/stan/gm/grammars/expression_grammar.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
expression_grammar.hpp File Reference
+
+
+
#include <string>
+#include <sstream>
+#include <vector>
+#include <boost/spirit/include/qi.hpp>
+#include <stan/gm/ast.hpp>
+#include <stan/gm/grammars/term_grammar.hpp>
+#include <stan/gm/grammars/whitespace_grammar.hpp>
+
+

Go to the source code of this file.

+ + + + + + + + +

+Classes

struct  term_grammar< Iterator >
 
struct  expression_grammar< Iterator >
 
struct  stan::gm::expression_grammar< Iterator >
 
+ + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::gm
 Directed graphical model compiler.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/expression__grammar_8hpp_source.html b/doc/api/html/expression__grammar_8hpp_source.html new file mode 100644 index 00000000000..c08c0b0c9c7 --- /dev/null +++ b/doc/api/html/expression__grammar_8hpp_source.html @@ -0,0 +1,180 @@ + + + + + +Stan: src/stan/gm/grammars/expression_grammar.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
expression_grammar.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__GM__PARSER__EXPRESSION_GRAMMAR__HPP__
+
2 #define __STAN__GM__PARSER__EXPRESSION_GRAMMAR__HPP__
+
3 
+
4 #include <string>
+
5 #include <sstream>
+
6 #include <vector>
+
7 
+
8 #include <boost/spirit/include/qi.hpp>
+
9 
+
10 #include <stan/gm/ast.hpp>
+ + +
13 
+
14 namespace stan {
+
15 
+
16  namespace gm {
+
17 
+
18  template <typename Iterator>
+
19  struct term_grammar;
+
20 
+
21  template <typename Iterator>
+ +
23 
+
24  template <typename Iterator>
+ +
26  : public boost::spirit::qi::grammar<Iterator,
+
27  expression(var_origin),
+
28  whitespace_grammar<Iterator> > {
+
29 
+ +
31  std::stringstream& error_msgs,
+
32  bool allow_lte = true);
+
33 
+ +
35 
+
36  std::stringstream& error_msgs_;
+
37 
+ +
39 
+
40 
+
41 
+
42  boost::spirit::qi::rule<Iterator,
+ + + +
46 
+
47  boost::spirit::qi::rule<Iterator,
+ + + +
51 
+
52  boost::spirit::qi::rule<Iterator,
+ + + +
56 
+
57  boost::spirit::qi::rule<Iterator,
+ + + +
61 
+
62  boost::spirit::qi::rule<Iterator,
+ + + +
66 
+
67 
+
68  };
+
69 
+
70  }
+
71 }
+
72 
+
73 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/expression__grammar__def_8hpp.html b/doc/api/html/expression__grammar__def_8hpp.html new file mode 100644 index 00000000000..39db3e88328 --- /dev/null +++ b/doc/api/html/expression__grammar__def_8hpp.html @@ -0,0 +1,196 @@ + + + + + +Stan: src/stan/gm/grammars/expression_grammar_def.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
expression_grammar_def.hpp File Reference
+
+
+
#include <cstddef>
+#include <iomanip>
+#include <iostream>
+#include <istream>
+#include <map>
+#include <set>
+#include <sstream>
+#include <string>
+#include <utility>
+#include <vector>
+#include <stdexcept>
+#include <boost/spirit/include/qi.hpp>
+#include <boost/spirit/include/phoenix_core.hpp>
+#include <boost/spirit/include/phoenix_function.hpp>
+#include <boost/spirit/include/phoenix_fusion.hpp>
+#include <boost/spirit/include/phoenix_object.hpp>
+#include <boost/spirit/include/phoenix_operator.hpp>
+#include <boost/spirit/include/phoenix_stl.hpp>
+#include <boost/lexical_cast.hpp>
+#include <boost/fusion/include/adapt_struct.hpp>
+#include <boost/fusion/include/std_pair.hpp>
+#include <boost/config/warning_disable.hpp>
+#include <boost/spirit/include/qi_numeric.hpp>
+#include <boost/spirit/include/classic_position_iterator.hpp>
+#include <boost/spirit/include/support_multi_pass.hpp>
+#include <boost/tuple/tuple.hpp>
+#include <boost/variant/apply_visitor.hpp>
+#include <boost/variant/recursive_variant.hpp>
+#include <stan/gm/ast.hpp>
+#include <stan/gm/grammars/whitespace_grammar.hpp>
+#include <stan/gm/grammars/term_grammar.hpp>
+#include <stan/gm/grammars/expression_grammar.hpp>
+
+

Go to the source code of this file.

+ + + + + + + + + + + + + + + + + + + + + + +

+Classes

struct  stan::gm::validate_expr_type2
 
struct  stan::gm::validate_expr_type2::result< T1, T2 >
 
struct  stan::gm::set_fun_type2
 
struct  stan::gm::set_fun_type2::result< T1, T2 >
 
struct  stan::gm::binary_op_expr
 
struct  stan::gm::binary_op_expr::result< T1, T2, T3, T4, T5 >
 
struct  stan::gm::addition_expr
 
struct  stan::gm::addition_expr::result< T1, T2, T3 >
 
struct  stan::gm::subtraction_expr
 
struct  stan::gm::subtraction_expr::result< T1, T2, T3 >
 
+ + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::gm
 Directed graphical model compiler.
 
+ + + + + + + + + + + +

+Variables

boost::phoenix::function
+< validate_expr_type2 > 
stan::gm::validate_expr_type2_f
 
boost::phoenix::function
+< set_fun_type2 > 
stan::gm::set_fun_type2_f
 
boost::phoenix::function
+< binary_op_expr > 
stan::gm::binary_op_f
 
boost::phoenix::function
+< addition_expr > 
stan::gm::addition
 
boost::phoenix::function
+< subtraction_expr > 
stan::gm::subtraction
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/expression__grammar__def_8hpp_source.html b/doc/api/html/expression__grammar__def_8hpp_source.html new file mode 100644 index 00000000000..33899aa33c0 --- /dev/null +++ b/doc/api/html/expression__grammar__def_8hpp_source.html @@ -0,0 +1,364 @@ + + + + + +Stan: src/stan/gm/grammars/expression_grammar_def.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
expression_grammar_def.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__GM__PARSER__EXPRESSION_GRAMMAR_DEF__HPP__
+
2 #define __STAN__GM__PARSER__EXPRESSION_GRAMMAR_DEF__HPP__
+
3 
+
4 #include <cstddef>
+
5 #include <iomanip>
+
6 #include <iostream>
+
7 #include <istream>
+
8 #include <map>
+
9 #include <set>
+
10 #include <sstream>
+
11 #include <string>
+
12 #include <utility>
+
13 #include <vector>
+
14 #include <stdexcept>
+
15 
+
16 #include <boost/spirit/include/qi.hpp>
+
17 // FIXME: get rid of unused include
+
18 #include <boost/spirit/include/phoenix_core.hpp>
+
19 #include <boost/spirit/include/phoenix_function.hpp>
+
20 #include <boost/spirit/include/phoenix_fusion.hpp>
+
21 #include <boost/spirit/include/phoenix_object.hpp>
+
22 #include <boost/spirit/include/phoenix_operator.hpp>
+
23 #include <boost/spirit/include/phoenix_stl.hpp>
+
24 
+
25 #include <boost/lexical_cast.hpp>
+
26 #include <boost/fusion/include/adapt_struct.hpp>
+
27 #include <boost/fusion/include/std_pair.hpp>
+
28 #include <boost/config/warning_disable.hpp>
+
29 #include <boost/spirit/include/qi.hpp>
+
30 #include <boost/spirit/include/qi_numeric.hpp>
+
31 #include <boost/spirit/include/classic_position_iterator.hpp>
+
32 #include <boost/spirit/include/phoenix_core.hpp>
+
33 #include <boost/spirit/include/phoenix_function.hpp>
+
34 #include <boost/spirit/include/phoenix_fusion.hpp>
+
35 #include <boost/spirit/include/phoenix_object.hpp>
+
36 #include <boost/spirit/include/phoenix_operator.hpp>
+
37 #include <boost/spirit/include/phoenix_stl.hpp>
+
38 #include <boost/spirit/include/support_multi_pass.hpp>
+
39 #include <boost/tuple/tuple.hpp>
+
40 #include <boost/variant/apply_visitor.hpp>
+
41 #include <boost/variant/recursive_variant.hpp>
+
42 
+
43 #include <stan/gm/ast.hpp>
+ + + +
47 
+
48 
+
49 namespace stan {
+
50 
+
51  namespace gm {
+
52 
+
53  // FIXME: cut and paste from term grammar, having trouble w. includes
+ +
55  template <typename T1, typename T2>
+
56  struct result { typedef bool type; };
+
57 
+
58  bool operator()(const expression& expr,
+
59  std::ostream& error_msgs) const {
+
60  if (expr.expression_type().is_ill_formed()) {
+
61  error_msgs << "expression is ill formed" << std::endl;
+
62  return false;
+
63  }
+
64  return true;
+
65  }
+
66  };
+
67  boost::phoenix::function<validate_expr_type2> validate_expr_type2_f;
+
68 
+
69  // FIXME: cut and paste from term grammar, having trouble w. includes
+
70  struct set_fun_type2 {
+
71  template <typename T1, typename T2>
+
72  struct result { typedef fun type; };
+
73 
+ +
75  std::ostream& error_msgs) const {
+
76  std::vector<expr_type> arg_types;
+
77  for (size_t i = 0; i < fun.args_.size(); ++i)
+
78  arg_types.push_back(fun.args_[i].expression_type());
+ +
80  arg_types,
+
81  error_msgs);
+
82  return fun;
+
83  }
+
84  };
+
85  boost::phoenix::function<set_fun_type2> set_fun_type2_f;
+
86 
+
87  struct binary_op_expr {
+
88  template <typename T1, typename T2, typename T3, typename T4, typename T5>
+
89  struct result { typedef expression type; };
+
90 
+ +
92  const expression& expr2,
+
93  const std::string& op,
+
94  const std::string& fun_name,
+
95  std::ostream& error_msgs) const {
+
96  if (!expr1.expression_type().is_primitive()
+
97  || !expr2.expression_type().is_primitive()) {
+
98  error_msgs << "binary infix operator "
+
99  << op
+
100  << " with functional interpretation "
+
101  << fun_name
+
102  << " requires arguments or primitive type (int or real)"
+
103  << ", found left type=" << expr1.expression_type()
+
104  << ", right arg type=" << expr2.expression_type()
+
105  << "; ";
+
106  }
+
107  std::vector<expression> args;
+
108  args.push_back(expr1);
+
109  args.push_back(expr2);
+
110  set_fun_type2 sft;
+
111  fun f(fun_name,args);
+
112  sft(f,error_msgs);
+
113  return expression(f);
+
114  }
+
115  };
+
116  boost::phoenix::function<binary_op_expr> binary_op_f;
+
117 
+
118 
+
119  struct addition_expr {
+
120  template <typename T1, typename T2, typename T3>
+
121  struct result { typedef expression type; };
+
122 
+ +
124  const expression& expr2,
+
125  std::ostream& error_msgs) const {
+
126  if (expr1.expression_type().is_primitive()
+
127  && expr2.expression_type().is_primitive()) {
+
128  return expr1 += expr2;
+
129  }
+
130  std::vector<expression> args;
+
131  args.push_back(expr1);
+
132  args.push_back(expr2);
+
133  set_fun_type2 sft;
+
134  fun f("add",args);
+
135  sft(f,error_msgs);
+
136  return expression(f);
+
137  return expr1 += expr2;
+
138  }
+
139  };
+
140  boost::phoenix::function<addition_expr> addition;
+
141 
+
142 
+ +
144  template <typename T1, typename T2, typename T3>
+
145  struct result { typedef expression type; };
+
146 
+ +
148  const expression& expr2,
+
149  std::ostream& error_msgs) const {
+
150  if (expr1.expression_type().is_primitive()
+
151  && expr2.expression_type().is_primitive()) {
+
152  return expr1 -= expr2;
+
153  }
+
154  std::vector<expression> args;
+
155  args.push_back(expr1);
+
156  args.push_back(expr2);
+
157  set_fun_type2 sft;
+
158  fun f("subtract",args);
+
159  sft(f,error_msgs);
+
160  return expression(f);
+
161  }
+
162  };
+
163  boost::phoenix::function<subtraction_expr> subtraction;
+
164 
+
165 
+
166 
+
167  template <typename Iterator>
+ +
169  std::stringstream& error_msgs,
+
170  bool allow_lte)
+
171  : expression_grammar::base_type(allow_lte ? expression_r : expression07_r),
+
172  var_map_(var_map),
+
173  error_msgs_(error_msgs),
+
174  term_g(var_map,error_msgs,*this)
+
175  {
+
176  using boost::spirit::qi::_1;
+
177  using boost::spirit::qi::char_;
+
178  using boost::spirit::qi::double_;
+
179  using boost::spirit::qi::eps;
+
180  using boost::spirit::qi::int_;
+
181  using boost::spirit::qi::lexeme;
+
182  using boost::spirit::qi::lit;
+
183  using boost::spirit::qi::_pass;
+
184  using boost::spirit::qi::_val;
+
185  using boost::spirit::qi::labels::_r1;
+
186 
+
187  // _r1 : var_origin
+
188 
+
189  expression_r.name("expression (top level, precedence 15, binary ||");
+ +
191  = expression14_r(_r1) [_val = _1]
+
192  > *( lit("||")
+
193  > expression14_r(_r1) [_val = binary_op_f(_val,_1,"||","logical_or",
+
194  boost::phoenix::ref(error_msgs))]
+
195  );
+
196 
+
197  expression14_r.name("expression, precedence 14, binary &&");
+ +
199  = expression10_r(_r1) [_val = _1]
+
200  > *( lit("&&")
+
201  > expression10_r(_r1) [_val = binary_op_f(_val,_1,"&&","logical_and",
+
202  boost::phoenix::ref(error_msgs))]
+
203  );
+
204 
+
205  expression10_r.name("expression, precedence 10, binary ==, !=");
+ +
207  = expression09_r(_r1) [_val = _1]
+
208  > *( ( lit("==")
+
209  > expression09_r(_r1) [_val = binary_op_f(_val,_1,"==","logical_eq",
+
210  boost::phoenix::ref(error_msgs))] )
+
211  |
+
212  ( lit("!=")
+
213  > expression09_r(_r1) [_val = binary_op_f(_val,_1,"!=","logical_neq",
+
214  boost::phoenix::ref(error_msgs))] )
+
215  );
+
216 
+
217  expression09_r.name("expression, precedence 9, binary <, <=, >, >=");
+ +
219  = expression07_r(_r1) [_val = _1]
+
220  > *( ( lit("<=")
+
221  > expression07_r(_r1) [_val = binary_op_f(_val,_1,"<","logical_lte",
+
222  boost::phoenix::ref(error_msgs))] )
+
223  |
+
224  ( lit("<")
+
225  > expression07_r(_r1) [_val = binary_op_f(_val,_1,"<=","logical_lt",
+
226  boost::phoenix::ref(error_msgs))] )
+
227  |
+
228  ( lit(">=")
+
229  > expression07_r(_r1) [_val = binary_op_f(_val,_1,">","logical_gte",
+
230  boost::phoenix::ref(error_msgs))] )
+
231  |
+
232  ( lit(">")
+
233  > expression07_r(_r1) [_val = binary_op_f(_val,_1,">=","logical_gt",
+
234  boost::phoenix::ref(error_msgs))] )
+
235  );
+
236 
+
237  expression07_r.name("expression, precedence 7, binary +, -");
+ +
239  = term_g(_r1)
+
240  [_val = _1]
+
241  > *( ( lit('+')
+
242  > term_g(_r1) // expression07_r
+
243  [_val = addition(_val,_1,boost::phoenix::ref(error_msgs))] )
+
244  |
+
245  ( lit('-')
+
246  > term_g(_r1) // expression07_r
+
247  [_val = subtraction(_val,_1,boost::phoenix::ref(error_msgs))] )
+
248  )
+
249  > eps[_pass = validate_expr_type2_f(_val,boost::phoenix::ref(error_msgs_))]
+
250  ;
+
251 
+
252 
+
253  }
+
254  }
+
255 }
+
256 
+
257 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/expression__grammar__inst_8cpp.html b/doc/api/html/expression__grammar__inst_8cpp.html new file mode 100644 index 00000000000..44d24f4f1c2 --- /dev/null +++ b/doc/api/html/expression__grammar__inst_8cpp.html @@ -0,0 +1,123 @@ + + + + + +Stan: src/stan/gm/grammars/expression_grammar_inst.cpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
expression_grammar_inst.cpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::gm
 Directed graphical model compiler.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/expression__grammar__inst_8cpp_source.html b/doc/api/html/expression__grammar__inst_8cpp_source.html new file mode 100644 index 00000000000..82430d0f824 --- /dev/null +++ b/doc/api/html/expression__grammar__inst_8cpp_source.html @@ -0,0 +1,115 @@ + + + + + +Stan: src/stan/gm/grammars/expression_grammar_inst.cpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
expression_grammar_inst.cpp
+
+
+Go to the documentation of this file.
+ +
3 
+
4 namespace stan {
+
5  namespace gm {
+ +
7  }
+
8 }
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/files.html b/doc/api/html/files.html new file mode 100644 index 00000000000..2913a02b80e --- /dev/null +++ b/doc/api/html/files.html @@ -0,0 +1,870 @@ + + + + + +Stan: File List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + +
+ + + + +
+ +
+ +
+
+
File List
+
+
+
Here is a list of all files with brief descriptions:
+
[detail level 12345678]
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
\-src
 \-stan
  o-agrad
  |o+fwd
  |o+rev
  |o*agrad_thread_safe.hpp
  |o*autodiff.hpp
  |o*fwd.hpp
  |o*hessian.hpp
  |o*partials_vari.hpp
  |\*rev.hpp
  o-command
  |o*print.cpp
  |o*print.hpp
  |o*stanc.cpp
  |\*stanc_helper.hpp
  o-gm
  |o+arguments
  |o+grammars
  |o*ast.hpp
  |o*ast_def.cpp
  |o*command.hpp
  |o*compiler.hpp
  |o*error_codes.hpp
  |o*generator.hpp
  |\*parser.hpp
  o-io
  |o*cmd_line.hpp
  |o*csv_writer.hpp
  |o*dump.hpp
  |o*mcmc_writer.hpp
  |o*reader.hpp
  |o*stan_csv_reader.hpp
  |o*util.hpp
  |o*var_context.hpp
  |\*writer.hpp
  o-math
  |o+error_handling
  |o+functions
  |o+matrix
  |o*constants.hpp
  |o*error_handling.hpp
  |o*functions.hpp
  |o*matrix.hpp
  |o*matrix_error_handling.hpp
  |o*rep_array.hpp
  |o*rep_matrix.hpp
  |o*rep_row_vector.hpp
  |o*rep_vector.hpp
  |o*seq_view.hpp
  |\*validate_non_negative_rep.hpp
  o-mcmc
  |o+hmc
  |o*base_adaptation.hpp
  |o*base_adapter.hpp
  |o*base_mcmc.hpp
  |o*chains.hpp
  |o*covar_adaptation.hpp
  |o*fixed_param_sampler.hpp
  |o*sample.hpp
  |o*stepsize_adaptation.hpp
  |o*stepsize_adapter.hpp
  |o*stepsize_covar_adapter.hpp
  |o*stepsize_var_adapter.hpp
  |o*var_adaptation.hpp
  |\*windowed_adaptation.hpp
  o-memory
  |o*chunk_alloc.hpp
  |\*stack_alloc.hpp
  o-meta
  |\*traits.hpp
  o-model
  |o*model_header.hpp
  |o*prob_grad.hpp
  |\*util.hpp
  o-optimization
  |o*bfgs.hpp
  |o*nesterov_gradient.hpp
  |\*newton.hpp
  o-prob
  |o+distributions
  |o*autocorrelation.hpp
  |o*autocovariance.hpp
  |o*constants.hpp
  |o*distributions.hpp
  |o*internal_math.hpp
  |o*traits.hpp
  |o*transform.hpp
  |o*welford_covar_estimator.hpp
  |\*welford_var_estimator.hpp
  o*agrad.hpp
  o*gm.hpp
  o*io.hpp
  o*math.hpp
  o*mcmc.hpp
  o*memory.hpp
  o*meta.hpp
  o*model.hpp
  o*prob.hpp
  \*version.hpp
+
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/fill_8hpp.html b/doc/api/html/fill_8hpp.html new file mode 100644 index 00000000000..2aa21ef5983 --- /dev/null +++ b/doc/api/html/fill_8hpp.html @@ -0,0 +1,139 @@ + + + + + +Stan: src/stan/math/matrix/fill.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
fill.hpp File Reference
+
+
+
#include <vector>
+#include <stan/math/matrix/Eigen.hpp>
+
+

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::math
 Matrices and templated mathematical functions.
 
+ + + + + + + + + + + + + +

+Functions

template<typename T , typename S >
void stan::math::fill (T &x, const S &y)
 Fill the specified container with the specified value.
 
template<typename T , int R, int C, typename S >
void stan::math::fill (Eigen::Matrix< T, R, C > &x, const S &y)
 Fill the specified container with the specified value.
 
template<typename T , typename S >
void stan::math::fill (std::vector< T > &x, const S &y)
 Fill the specified container with the specified value.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/fill_8hpp_source.html b/doc/api/html/fill_8hpp_source.html new file mode 100644 index 00000000000..1dfa6ce48bc --- /dev/null +++ b/doc/api/html/fill_8hpp_source.html @@ -0,0 +1,138 @@ + + + + + +Stan: src/stan/math/matrix/fill.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
fill.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MATH__MATRIX__FILL_HPP__
+
2 #define __STAN__MATH__MATRIX__FILL_HPP__
+
3 
+
4 #include <vector>
+ +
6 
+
7 namespace stan {
+
8 
+
9  namespace math {
+
10 
+
21  template <typename T, typename S>
+
22  void fill(T& x, const S& y) {
+
23  x = y;
+
24  }
+
25 
+
38  template <typename T, int R, int C, typename S>
+
39  void fill(Eigen::Matrix<T,R,C>& x, const S& y) {
+
40  x.fill(y);
+
41  }
+
42 
+
54  template <typename T, typename S>
+
55  void fill(std::vector<T>& x, const S& y) {
+
56  for (size_t i = 0; i < x.size(); ++i)
+
57  fill(x[i],y);
+
58  }
+
59 
+
60 
+
61 
+
62  }
+
63 }
+
64 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/fixed__param__sampler_8hpp.html b/doc/api/html/fixed__param__sampler_8hpp.html new file mode 100644 index 00000000000..4d685df082b --- /dev/null +++ b/doc/api/html/fixed__param__sampler_8hpp.html @@ -0,0 +1,131 @@ + + + + + +Stan: src/stan/mcmc/fixed_param_sampler.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
fixed_param_sampler.hpp File Reference
+
+
+
#include <iostream>
+#include <string>
+#include <stan/mcmc/base_mcmc.hpp>
+#include <stan/mcmc/sample.hpp>
+
+

Go to the source code of this file.

+ + + + +

+Classes

class  stan::mcmc::fixed_param_sampler
 
+ + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::mcmc
 Markov chain Monte Carlo samplers.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/fixed__param__sampler_8hpp_source.html b/doc/api/html/fixed__param__sampler_8hpp_source.html new file mode 100644 index 00000000000..b6ce8c888c1 --- /dev/null +++ b/doc/api/html/fixed__param__sampler_8hpp_source.html @@ -0,0 +1,140 @@ + + + + + +Stan: src/stan/mcmc/fixed_param_sampler.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
fixed_param_sampler.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MCMC__FIXED__PARAM__SAMPLER__HPP__
+
2 #define __STAN__MCMC__FIXED__PARAM__SAMPLER__HPP__
+
3 
+
4 #include <iostream>
+
5 #include <string>
+
6 
+ +
8 #include <stan/mcmc/sample.hpp>
+
9 
+
10 namespace stan {
+
11 
+
12  namespace mcmc {
+
13 
+ +
15 
+
16  public:
+
17 
+
18  fixed_param_sampler(std::ostream* o = &std::cout, std::ostream* e = 0):
+
19  base_mcmc(o, e) { this->_name = "Fixed Parameter Sampler"; }
+
20 
+
21  sample transition(sample& init_sample) { return init_sample; }
+
22 
+
23  std::string name() { return _name; }
+
24 
+
25 
+
26  };
+
27 
+
28  } // mcmc
+
29 
+
30 } // stan
+
31 
+
32 #endif
+
33 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/form_0.png b/doc/api/html/form_0.png new file mode 100644 index 0000000000000000000000000000000000000000..7fe4ed9f252a366bfb92b3601fb432b5c914f3a1 GIT binary patch literal 601 zcmeAS@N?(olHy`uVBq!ia0vp^wLmP+!3-n?4L4{5DT4r?5LX~g5{R;w;Rb3DC<*cl zX3+D9&2Q+Rw`S+jOLt#>`M)ZC!+Qn>#uJ_{jv*C{Z|7dzv{`|t#omEq(X{XNx9wj! zE;wGcWv_*~{p7b-Bu`9A5zb@$$2^m9U(;-+1L_<28{QjKH~1?kA1FV;@ZHd*vZm&J z(O-)=zxi*umL0d-Q$G7^g<);onPs+`>Z$veJFVWnKceh$TVHKq)VJr0zlXe-W?C!0 z`ngrv(s}NTQQ0@yC4D>i9Tx**u_ds&*t5w^>XR@!_dFw#F@qX@aM*s5yB z3zqP!o4p8LoGkdjXp(sC<7EQJlYN-)G_uS*!n;_d-d&fWzPK3B=RY K&t;ucLK6UV-~K-U literal 0 HcmV?d00001 diff --git a/doc/api/html/form_1.png b/doc/api/html/form_1.png new file mode 100644 index 0000000000000000000000000000000000000000..19f59dafad07f03c35dea80e997978eb486b1c3c GIT binary patch literal 416 zcmeAS@N?(olHy`uVBq!ia0vp^Q9vxt!3-q#Y*^6*qznRlLR^6~Ng&Ezh8w6spd`pI zm_g4YHou{N-kP09FWr6l<^QVm4euEk82LS2978G?-_AYVcUXbPmA}7X;e3LkhrBcjYp zwQTdPTU#ct^IQ8awd2i_(Cte&3L5%PvJ^7p-}Fv?#{5C#`NWIU{!~vCW8hzNNokWM zL;s5Kps44*+zsquFXw!IcIV#wX&G`?lK1&@p~ zy$jp?PVdW|V3x9D-LIX882lb?xpMQ>zx}ILNA2iz;ylg6P@>2mSijGEf=K@@jt}iW Y7;{?K<1Vmm+Xf0}Pgg&ebxsLQ00Ri8-v9sr literal 0 HcmV?d00001 diff --git a/doc/api/html/form_10.png b/doc/api/html/form_10.png new file mode 100644 index 0000000000000000000000000000000000000000..5c185fd9c2304a396bb22dce97c985d16a5f9797 GIT binary patch literal 585 zcmeAS@N?(olHy`uVBq!ia0vp^2|z5)!3-o1C+;c+QU(D&A+A80BoJjU!wu9RP!i-9 z%%JBHo8QnsZ_Uo5m+rp&@_$wOhW88%j5|DC978G?-_DKhf2_dMYX5G+vrqs3zrE$a zF?VL!rc2*aRa;hHkjW{oDTrhIC)};6+Tb6l5ukLS{Y*qbzox>0>fMYp+w|?Gmg;Oi z!d#J_#<(LhZ~A=O{wH}8MgKQl3gxcp*<#*s|E<~@C)Jq-UJsThG3?p&^q=6P!>!$y z_8C6Sn6zT`M2n_lZ&F@PJvqHIW=7yfi>aln&mX!q@owTPHg(nBuNSX}gsq)!{p*>H z+h?Q15JSu7nOTNcCQp=EqV-Ap@Vd&kKSIpqzSd85>ostTJ};q|5;-k%9^*0|?N<`J zrf=A`*OHmR=5}kQ2ipVYU1>f`b#B>kCtZH^$>#l!~ZK`MHye#P3BIR$9!2O$=9x@|EZvK{_9}RhDO$;s5{NzGV&Q z^eK9G*rxaRyg+But5><#Gki#A_%L6roZ*KkcUlcY!_J%H41d~MSqn7RHJoJlaIr#@ z;ZEO$aSRn3R3=(3Dl0zoQdw=CWB+v>QPUpXJ;yg?UTs^!wW4#+|N8mvGx2v0v{CsIbNg51H_gr!GnE); zshRHS+04npz*fEdn&R5HdXE)e2i`@$-RJVVR=0Bf+-qB}`OR^7HEA(>(P~q^Q~DKx zE&=YJWp7=*RkOnM*Ev^(MOWf^`1u(swo5MY?LVh8E#kgPz5BOnrzui1C#V;DKll=KHPlJv+{UC%6q#=;oC1R zMjrK6yP_s=%b@y|jPzl_V-t7XuU$LcS%N`st!(#v|Lx}mP8o!LKIDFN$JWPvwzfR& z%nUXWynB7W{e1XM@X%WArOTM*4?LZ=^9DN$Lrr2$-S@@6q|=N$luf%AetGA3Ti`%t zyx%g%3)^>bP0l+XkK D@Hl0n literal 0 HcmV?d00001 diff --git a/doc/api/html/form_101.png b/doc/api/html/form_101.png new file mode 100644 index 0000000000000000000000000000000000000000..43292072ebed86d87c40d30e268656c173130eec GIT binary patch literal 452 zcmeAS@N?(olHy`uVBq!ia0vp^=0GgU!3-p?CboG3DT4r?5LX~g5{R;w;Rb3DC<*cl zX3+D9&2Q+Rw`S+jOLt#>`M)ZC!+Qn>Mq^JG$B+ufx3MQDwJPxBm_^F*{r|uHGG}*B z==v{a%cp26UhrJLxSZify#1M4Muz@6mIF&?Fa|R`SX=+XzUBBlr!%)+SG2UL8rt&i zc^_3?Tqfas`rjmjZAb6<7M?jYt7-DC=7ZOc8-|BzndYgM2+2jd7j6nXw!2g)X=-KX z=iVP);q!vL3+>G#PixJn=(ng;^qex|XWPUTA!j=xgIbPOAGho*;&VDzBvBBWDE8ca z_Dk6nKhsn~ru=-qXepPw=!8%61+V0+RJ|rtxGeL=lBwskE4cLU-Y;18EbNuU%9*Uy z-;y8bRf+rUiq~SiAul>@@%cBwD>D-0eoebO{d`1d-nI}HRXLZnKd;Je(cj^AT7Lpj=0^f&UEuV}=jQe$JWZf9>@*e5rC1O8@r&A0cTx>UR&M#V(^rIp2+ z{KUU&mmFoNNe<;)ad|(t6Q7br5d>yVAx zis%XFc{rWk-`;Ta-R@f}1yXt=Q)e%*Up@Ip^PYkya*{Vd0NCv(`^(ih@k-~TpUt>QSYl=*s{ zVEOf@+VP|GRx!YJN@ zdF%J_FqlhoKL|Et$=lneQd-xwbC0C#0sFjqhV$%vx@9^Bdq4@v)78&qol`;+02{&* A`v3p{ literal 0 HcmV?d00001 diff --git a/doc/api/html/form_103.png b/doc/api/html/form_103.png new file mode 100644 index 0000000000000000000000000000000000000000..320e4654de8152a4bf160c0a46abe5cc571e0168 GIT binary patch literal 211 zcmeAS@N?(olHy`uVBq!ia0vp^+#t-s3?%0jwTl2Lg8-ipS0GIih_aUf86;2=}6v3<9~V9r0@q%HZOX!W&N!+7mRn$E!43wN;;moV&%PfJ7aT(+f{qc8iAbV M>FVdQ&MBb@02)*~>Hq)$ literal 0 HcmV?d00001 diff --git a/doc/api/html/form_104.png b/doc/api/html/form_104.png new file mode 100644 index 0000000000000000000000000000000000000000..c3efb24154d7b81c8e3fc4a1d5cc6693a7f4e12c GIT binary patch literal 294 zcmeAS@N?(olHy`uVBq!ia0vp^vOp}%!3-p$-M{$)DT4r?5LX~g5{R;w;Rb3DC<*cl zX3+D9&2Q+Rw`S+jOLt#>`M)ZC!+W6IR8JSjkP61PbEAct6?k0vb^8-G-u$2EEfEs( z=LOTdf=Zuf2d?HYJn-MYn<4MqE!Kjq+6?}2HV2xerBo~%X7irCr#iRQ=t}*oWi^a? z)4J5wPCla~-S$)~`D%8zVqvx8;g!2?Y|49X%6zlY?;3p%Sj1hP#(3s0^Qz^{RbS+D?|^*k>FVdQ&MBb@00@O*Z2$lO literal 0 HcmV?d00001 diff --git a/doc/api/html/form_105.png b/doc/api/html/form_105.png new file mode 100644 index 0000000000000000000000000000000000000000..53635e7d726b7f481d325da927dbd3cbf612e1f9 GIT binary patch literal 355 zcmeAS@N?(olHy`uVBq!ia0vp^8bB<{!3-pskHqKzDT4r?5LX~g5{R;w;Rb3DC<*cl zX3+D9&2Q+Rw`S+jOLt#>`M)ZC!+W6IB~KT}kP61PvC%?@6*ywz1CyoS)!+7NVtM;` zbG=WQ+M!Jf6$}hNw6$W(7!K&$+)ZWJpm59iCc};Qex8*=Z$2Dc?V)(KW=)f6{+4W0 z)m_^-^7e|lN4a&XO2)mqr(Vdk-9Y&2;bX5Fk9tT;xy1Ya4N;NOSaam>mnW;$L+#y; z`A!jz7#4lo^jd3#82R3+l+VkXo6LWc!nUV%CGZFP_@CN@iHyZz-9!EpKkd zwd)=(O2;iS&aTn_RLbx`c-hyNPZ$y$=fz1d)HI%BV7T{zsp=i8ZH1)iPf$>Ky85}S Ib4q9e0Bw+af&c&j literal 0 HcmV?d00001 diff --git a/doc/api/html/form_106.png b/doc/api/html/form_106.png new file mode 100644 index 0000000000000000000000000000000000000000..28fa2bc5ea5c406abe3c1a0c2e8e9ce143311828 GIT binary patch literal 336 zcmeAS@N?(olHy`uVBq!ia0vp^NavxkKb0MQ4>g#z%?$qYy{%Kjz zf#7@P7dsUnKVJ1TWsZuHeSc*3nLEeIp0_B(tO^Y+{hSzdUV=eyUhdLkUpW}~<9@mC oyFO39t+-14Pm_H;FT;*s`~?-PzOF0Jp96)9r>mdKI;Vst0L>hBjQ{`u literal 0 HcmV?d00001 diff --git a/doc/api/html/form_107.png b/doc/api/html/form_107.png new file mode 100644 index 0000000000000000000000000000000000000000..41af07f896553f5daa8ebc8a4631be1bc29d2f0e GIT binary patch literal 353 zcmeAS@N?(olHy`uVBq!ia0vp^T0kts!3-p&O!lkG8LRASaLR=af> zeevfyC+TMxo6P1k>7QbzdTJk^?EZ_!eT%yH&blZRtiygQKjSOQX310PRsFB-KfA@Y zseVeS`_rDN%+-Is7+grwGY`CW60_mff7+g;a|+s^atf3P~b zC3)>W_8mMg_uYK^bQ;5*P}!_>tA_e3v!|3VNv*C`Wt{hwS1_5aOW95M04Sh5UHx3v IIVCg!0J6}5)c^nh literal 0 HcmV?d00001 diff --git a/doc/api/html/form_108.png b/doc/api/html/form_108.png new file mode 100644 index 0000000000000000000000000000000000000000..124881dbf6815c24ca3d888e5096b855fcacb22d GIT binary patch literal 436 zcmeAS@N?(olHy`uVBq!ia0vp^4nQo-!3-qD*Z$rLqznRlLR^6~Ng&Ezh8w6spd`pI zm_g4YHou{N-kP09FWr6l<^QVm4euEk7?nL;978G?-_E@~>8OB!tGLkgmLLE3%f3}{ z)GJN9_sn%-NanP6xz+4H-Ycs$v@g6Y@R7kkIq>P?9=53PQlk^)`K!4Z_?@3Q2kh(i zx4T`H!5q;$>lRn=EkPaWvtj?DyZ!GlIK0-Y%Fbnv5YtS3J1vIcmRDUnS0Y=K{z4Uo z`S%&;t-0`anCH#8yuE*m9>d!^Pe1Kedo(vc q<;11s)3-B})UIn{j%nK@^plbMEqi1!19vSb>^)umT-G@yGywo+aGdD? literal 0 HcmV?d00001 diff --git a/doc/api/html/form_109.png b/doc/api/html/form_109.png new file mode 100644 index 0000000000000000000000000000000000000000..c4c4b20a108ee96b4d43d7e994107f7fe68ff301 GIT binary patch literal 462 zcmeAS@N?(olHy`uVBq!ia0vp^UO+6&!3-oB`m<|*q(OjBh%1Oo3W&0o;RdP~C<*cl zX3+D9&2Q+Rw`S+jOLt#>`M)ZC!+Qn>Mq5u8$B+ufw{y=EMw=CT*xav4heZ@YFed^mS#xz)0>Dj%Pv zCI{-SXJY72%h=j1t`%8yzWidE@RXmtPlF52^=cgL`}%lYb?c?R*Sw#!gZ{{~njOFN za=#nvg>BPxjZaJbZ@4tgFs`Lz?zXSF56_vVhG~e{v)uCx*EFb4ioH}-9`gP98V#?v z-D{jaU3n1m)~0yoU)HO=*E)lY%G6&?>tf?@_`fAlL!>b^Fg^I%rq4TT&i34Q-zs$~ zux0M2?lUP(`rDpaEPOF-ZqU^|-{xEn^>#jJbzVSpRa}?a`OYre%trx=>_Auv`^wd6Kcqhmpmt1n{{Jx|0 zL2KP7f17ryY?|6Io}No5QhgkH}XBjm&e2hJxdM|RiEmolWf8X14x=E6nkB zyH*{_dArV_zS4M&P{?-1n8JrvGv&lYYm}~dZ8hdCaGbPZtJA+F$_K>Pd_S`2%aaNF zo>dh0yDmR&_4;P-)}5Q?SpB^FS2*vT;qI&7UK_Ic#d?S6h6+P`BTgWMtBuZuqB r)qGt&Q|ISZ{{7{LSAS&u=l+NBqaC+``N4z`P-^gW^>bP0l+XkKq5Ab5 literal 0 HcmV?d00001 diff --git a/doc/api/html/form_110.png b/doc/api/html/form_110.png new file mode 100644 index 0000000000000000000000000000000000000000..a975afbd582e6143c6473f38a8694d401b7e0b7d GIT binary patch literal 798 zcmeAS@N?(olHy`uVBq!ia0vp^vw&EbgBeK1&wFADqznRlLR^6~Ng&Ezh8w6spd`pI zm_g4YHou{N-kP09FWr6l<^QVm4euEkn0h^3978G?-^Si7T4KPH^YdH7$N&G|Zc91G zvqWv>-R-3dr>Ngp8}|BvD8oN#hCkWd3KhgdZz&&hwo+z2d3J$>~c@YhTU0Q=%%e>OqmmRCOnn zxo5w(MxB^BGfd*=iN|ibPXa<;2V{G7FHLs8wbEC_@WSgkk*ts2F3Ya5tUfbKV^788 z(71}P+NPeTG+q~e*(!Ky-#h6jS(PLY;oIMrJU{25y*1(Bw*$h=vHtp}l=NR5ZDjGB z^yZoABIB(pTxPRheKC3Qj+^1$*%vGPid`S>lej0DxpbNSS=p7Acl#Z3lsA_DE`RUy zI&8-EsAv9WpGb_VBfKv=*MdP-c)ic{mFx`jZ!ZaoHk9{Z zC@}T3v=@2j_kYRDE}?7I@50Yi>~}f+rjdnV|Ayr!zuuK*__6RWqtpjs9h3b#dO@k& M)78&qol`;+0Equ*asU7T literal 0 HcmV?d00001 diff --git a/doc/api/html/form_111.png b/doc/api/html/form_111.png new file mode 100644 index 0000000000000000000000000000000000000000..074035ba861a8e4a58f0fc22dbe97eeb39830162 GIT binary patch literal 918 zcmeAS@N?(olHy`uVBq!ia0vp^dx2P(gBeJElK(RYNErn9gt!7}l0cNb3^!1NKuM5a zFoT{)Y<@%kyfr(IUb_48%l}pB8{RW8Ftd8PIEGX(zKuP(>9GMv&fB1r=>Pw>Usi}d zx5%P0-!Is7-Goz03o@ljSR4McG5l|NugIvMqACnLX$)lOyUeR9Xj|L@5X!9%Zty%`d+F0<^d=;!|8vt(0beS4jC z$Lvkw`&8>^EqLRhcY%Meyt_zkS7YkNZ8hCXzdbPf?W33bX`+p~yoOZk^r!Layf@r+ zRlU3p&Db8wyrVvoX@1Q_g?&>b%vbB~b*WdAGU5Dns;uJQ29=_$Ic(c6%{}VK5?8o5 z$zsaPcjsUDid^uVUHNCmapU_+lN2WLZkGCcN9nxm(*4f$(=)#Gz1Ulq7hA~W@b3;w z#;psRShEvkbrL2Xcq&+HB2;kkp5U2%W_|1oalV45Idol5o>+6F&Z&OBhsd7A;YJ5_ z-RyfWzI-9!oc*gf`%3?*H<6Y%mSo7@V76tjiLjJ==py`up+{9%WdhrL=31FJ{m!@x z`K&9CDH+>d*sLw5Xa0QWrD&(Cik4h5-sJ+@YuC@|+b3{rmW#{$o%J3ii?&O3xXNyC za9C|5k-GF*>XD~&lV`WG@=mzva#`Qj@@}gAlGl$vG8|aVTeXd+e9q5~e?CvjzO4J$ z=h2;*?|Sj|E|wWbBn_k^<9BkNh&y`fn%MHiXOnK!z2lGzPmA1>yUMLNfQdnT8K;c1 z%R83COIF8R_EBr7(XOgwIIwtb=b?2=1(aK#1T9*<_D~r2wqmiahR=TQ0`tEdIp@#y z>*x#K)w{Q@Hq6Xm*s*Qi0hgO6G-lqX zw%u5A!E^dsE(ZHe@4P0I0T50_aFbszk;tbJbq!vprP)*{(8 zCABB#b*@Ncs4x<~+|E%@KKG(W5$ijqU!oPio-Yu32qznRlLR^6~Ng&Ezh8w6spd`pI zm_g4YHou{N-kP09FWr6l<^QVm4ex<+mpok@Ln;{G&h@TqQ{XxB|CFWyN5 zUoGm+`zgpWd8Q8sJHwCJM<;EWCd62GyUcfjSi|zQ+otSloD9AFRvfV%&k1(wKVJY zqvNS7zFpg>ED*i#@50Sh=`FYaW*+JPcDqpQ<1A70y*6?U{J)vD9%b=$stH*M3Mx-m KKbLh*2~7ZV$cOO& literal 0 HcmV?d00001 diff --git a/doc/api/html/form_113.png b/doc/api/html/form_113.png new file mode 100644 index 0000000000000000000000000000000000000000..d0d53a49aeb9f6e06ba69d6402c9148144dd8625 GIT binary patch literal 441 zcmeAS@N?(olHy`uVBq!ia0vp^{y;3i!3-o5j4n+BQU(D&A+A80BoJjU!wu9RP!i-9 z%%JBHo8QnsZ_Uo5m+rp&@_$wOhW88%j2fOUjv*C{Z(|QmJFLJVBg`vh`se?By&EfT zlvLli99OZlR)Ozu!h41f?`>O{8U8)dn|i74)ywxGoF7CRe(spU_`sas^2~!LVm;iB z8&{>iICrU<@xbnODc>!v-i&unOby=mNM%R8`{JaFDrJr3nM(gQ-TJU&@zgytv;0$) zwbmUklw6X^Al70cH2rAzt?ZR)J14x)I_@9&)Z*k*&#I^5SyCw`cfLG$wPfC@yiGjE zpQybR^`Acd%#kIBKKYz@Hoenxce-7gYuKJ8{TVq&GFH4|Z@W5WO)KTN^jscS2`Z_;P0+0tQ#(}HuS%H^NHcX y+1fX34E*xT@5lXddcNcAAIGBzgEZKW5>QROE=mS6ak*DelF{r5}E)Mf3+(B literal 0 HcmV?d00001 diff --git a/doc/api/html/form_114.png b/doc/api/html/form_114.png new file mode 100644 index 0000000000000000000000000000000000000000..ae902035f3a8cf80c38ae4fc4fd7f4b42048fcbc GIT binary patch literal 694 zcmeAS@N?(olHy`uVBq!ia0vp^SwJks!3-ob?pme*DT4r?5LX~g5{R;w;Rb3DC<*cl zX3+D9&2Q+Rw`S+jOLt#>`M)ZC!+Qn>CRI-t$B+ufw{vgytuf$n@fVvUuS;jzaj6%Q(GR{1Nsjb-z8rDE2Q8yhqBs9W*0ppUH9E#`M`73+jQ=R%Y0Y8jl%k;EDgPQ zTlztAN?TT?5%ZnIv(9hsOiJC|a>0y~;l4n#g(bHs!<_}j|8$n_IvSyLfLVk0aK@W0 zRuv)E_C8Kq?w75Mn$J+fan@Mp+6moH;-?>9d9>5h;(%o7HPa>Rs<)@TKI&+3>%`aN z$-6l|aBp#9oHKD*<}A6xTy;{XmQT5qoRfP^<->{WKaLCD)(1UbP<-#+fy^6w?(hDz zX!GO1skh}Dgniyj(tEUeRr;*;ejUNDPVKvsa-6ZE_mWln`>E^8md$g2b>Q}el)k5* zwx!?vx#up!>qM3v2hx^Ly0o@^#fqwD!4K^Odu>FoY;nDjs-eleJBs1XgAJ3JLvpKK zE-cjvUON4%!LJM>m9#|uqd9yF#XBRCOLYJ7S$~|rMo6$k^EAuiHT>ti?JiCeoLw+s z%gKvxUatDN%8fB5dHZA*cjGGxf7e-7^LrX?z0A+~^;*cyMW>#m?0oud?*5yW3zyGW z%(W~oe7W4Tn@3-UaW#JQ4Z3>x^#3U;zSpOHy?d^+KA`K@s+G0g`lpn_8t;90`13D& z!LbjY_b|R+Y+}y*zQ@qlm*<4H08ooA#yoj|G2)78&q Iol`;+0A`OhQ2+n{ literal 0 HcmV?d00001 diff --git a/doc/api/html/form_115.png b/doc/api/html/form_115.png new file mode 100644 index 0000000000000000000000000000000000000000..774fd7481a13d913c81942157a28603545d4da08 GIT binary patch literal 1513 zcmV@gy5bk)b&t8~@z``&g z#p3nR_1l0>Q$V$Du%Z+!32Yji8d5p&tkNv8GIi4UniYk5 zwX?QD8B;XAixOE;?lX#K(|`ME3smb><3u&KU0? zv9n!Ny%Q~S0h>Zq^gu663t;6$la-thK(&G?8P6_@bFa`052$$1`pL|5Sv5^oZlM%j z9rNZm=&{<9%i6Cy^1B^PR?h5DRyJYX%Fbh!R%#*#tr|K8OP;FU$KDoLaUw>%o*!cE zm_EF*aySuk>uXkevrOZa@$`9j5$}K+LyPd^E};lB?245;D5X~iD-lIIvgnZKcGqm# z(PZUJdx^dcFETtd6xqN_R%FG-sbNQxm2+2+qALO=p~!)|W(A-UiAq#0 zx>l*WGA)V(P7mq?uh-#(w4i0#SG{*war!M>ho%EhJ$|IJJD?IxtNfo)KT+OUxk4$u zI#@Z9A#}6l$TD*%N|Up+BcSYh%l}`n@>-ZTm(_f~gGJTL3;URTRRtfl5<)ob^^9%T zN@r*v@e(|qv$mNUD(y%?vZOY1Q7bo4O0N!9GH!5a-FsuDVaM0CGK5V@gbWt;tET_P zigo!aJD9$_JiaK@_FRdo_a|_!&RhZblsHQw-dN<%S(d@UFpYOx47tu+0r->>rS$5Y zD>01Pku~QUAxpLMVMlwe z%ed`RE`4=v@ba@Z<=TldUZdTYQQu8v{psZ_Q!wKh#aqMa0xH-#>G9nZKo!cI{=S29 zdS%A_WfMmMW!xl&I(<50rDaEnc-S%JVw;?kjd7ku@33k1Yq4cT8bevhlc_90;9OEW zk_N_kRld%mTM|7 zX@L^{4q1K&<@8FoHE0J)j9~~BKtn$5C|Eh|XwvG#r`#)JVOaO{Ho3AkMh!qMV;C2q zW&tWOb<+aQ)l}ZigAWIf?wS+jv(|rt(($T;0&p$&?a*SyWWu&^aMHFF8c( z0emTwpR^$Ye8}4Ey#Q}g)jU93te--Y0g7d|x9S0C$xW2DSGQ3BuEnO_3(%L?ZDlgg z>!d~Wk&OV~mhU+6Lx*o3|7TDDuH~j8r>P+oGlhY3w^9Ip1>jcz{wMMm!iy@FsetxH P00000NkvXXu0mjfac#pP literal 0 HcmV?d00001 diff --git a/doc/api/html/form_116.png b/doc/api/html/form_116.png new file mode 100644 index 0000000000000000000000000000000000000000..aab805dcdd29bc543282a2c63207824ebd526d53 GIT binary patch literal 792 zcmeAS@N?(olHy`uVBq!ia0vp^^MP23gBeK9+fla@NErn9gt!7}l0cNb3^!1NKuM5a zFoT{)Y<@%kyfr(IUb_48%l}pB8{RW8FtvNSIEGX(zMXq>-4X>6S8-#$6aW9`$~)+; z4M?6{vQ+rczLTzA(|+^pVftf#N$NrPQm1bW*E1P*1iTEgd%c-yho5!4#g1R%XYxP# z-ejDUx_fzE&Evw0wfsNk)$d(#cIT94-G4l}Gj5-YxW-?-zwgrbnp)xOb2%-1$~Or= zh^;-j{M!7p&)Kz}?Rxa?^tuY(4;$}24_;ip_|3K8IqfrY;sS!_wFhUdV!OAYw5PfE z>Zy<<{tq+XOgQfMig`}R53!efqG~4arFY4GJ>Ps_xtFHu9Ot{+e&<{dnaWr&mF4i& zVwQC!4<7w8-X|rhD!-*w-EPeT#idjBT|XzT9WOOg`P9D&$=A5s3|M&Z?pH83k zg%3Nc@SxwP`F@G9A$N~0%)Zwp|2p}%$*l64Ymr;# zEbYA%*e-PRW6u1pTP3&O%zOFIwR*<68|ClW`#zsh->H}=m9}hBh~v+v|Ez)>Rqan- ze=Yeyr*g^E+4JNycKfy2a-5%d{^&?!zw6vX_rnUAGxq47-6nR@ZqDX~Z3cUa&6#5s z`$?@iw$e{=$|mL?(?4Cxh_?FvuD`06@lQjQhJ6eB2Zwrw$6G`e+$yeK3rgRfu6{1- HoD!M1vxubN>Ht_A%g!_p;t&Bipv@Ql^FjOS%jXEZ(x~#V|QOW*l>tof}^M(u$%zaBF*|-_z&8%mb zkr({lDrO#o&iCwHX*`;-$qsM_~r`-wxob|>DQG+GjWcWTm!lLpSpwht-F_&awj5JJtBAS7q>-AL>D`H+iDaVJ@V~*;yL|D`h8jH-aShF zeKor^_FP?$?bz+5N@q*&s;s|iQuHg)>DIkO zon1+(RzIco^rtL(xqa)kUYot&SNcoo&GmnjU+T$LGEsL6vx2G8+wz{hrCYz)tv{S? z`YMQ(d(xB#T^nB{*=Q`kdZM7xYwgN|eShtD`Z@8%_S{{Qo%}mn)35zqd*ke_2f61i zTz$&$*A~9@S1&2&g$v7jEXqDuv3RuyZ|16}3<1*(xQ=Qq?=#=MByG2za9Au;Fjx5J zHF5{9KEBF6r{-evXN3g@oT2yLZ&v@7{XzZF)~Ng3+CrskCD!F#Q<=8b#-r7<1nK( z-fZA`w5*lk!?`K9BXUKkW{kcXCvp0akw z85-=kvxg_XeSfaRBBQWX zlVZ!RY-!q)xx}C0L;2f#jDIebNhC2X2&!2uGo2;9 zW$Tm`^|GnZE<% Nc~4hAmvv4FO#l|OZpQ!s literal 0 HcmV?d00001 diff --git a/doc/api/html/form_119.png b/doc/api/html/form_119.png new file mode 100644 index 0000000000000000000000000000000000000000..bcd93ebd4d360c7f998caa9dd30b01d8a738ca6c GIT binary patch literal 310 zcmeAS@N?(olHy`uVBq!ia0vp^>OjoT!3-n=n$%)|ltF+`h%1mL2}Ie;a04|6lmz(& zGw6B5<~Q`uTeI`%rMoY`{9l#6;XP1psi%u$NCo5Dx!yvD6?mLo&)iqp_dmD$bp5TD ztA1BJI?%0ikd@)V{i8{Y52`1APy1qI&0wLWI%9dh^~}=`nKszEZCBdff9Jl{(hrVo zPjjvd^2vzJ%q$EP%-YwpW0`&0Q={Ugz16p^7wHsT_r5yMR(bdG-#2#NzOM1z?Wob+ zU%Kuq=jgl-{2%>1XlcoUQ)yaxYt-d(?IqZHBhxyU_Die$ejLR3V2!xBD)T?4AO4p? OzV~$Xb6Mw<&;$UM#BB}$ literal 0 HcmV?d00001 diff --git a/doc/api/html/form_12.png b/doc/api/html/form_12.png new file mode 100644 index 0000000000000000000000000000000000000000..47b8e4cf0a3e658a27040c4c22aee68e967d7ecf GIT binary patch literal 571 zcmeAS@N?(olHy`uVBq!ia0vp^u|O=&!3-qhayI`4QU(D&A+A80BoJjU!wu9RP!i-9 z%%JBHo8QnsZ_Uo5m+rp&@_$wOhW88%jH^6d978G?-_AXG?y-VEi@n(9qh{~_Z*$(< znlb55OkMA@h7~7HEL*wmm0Ebif4Otj{2#O}lw8<9NC!xrNw(yDAU%cgMoaItj0o6|q({_TF3Pa_7^_(D~kvENAEx7PzU#)VkcCr4gd?@Rw1K z;Ttc(yJkX85z8k`5)UeBja|)C+xGd*vgbm|T$?3*dJVf4Wu#SI(p*~F_hQkpMLDPT zvZiE*WRO$^JDtH*EOId;OXk;vd$@?2>_w(?+O3_ literal 0 HcmV?d00001 diff --git a/doc/api/html/form_120.png b/doc/api/html/form_120.png new file mode 100644 index 0000000000000000000000000000000000000000..7ca835fed9784073436be649fec016acf8440638 GIT binary patch literal 797 zcmeAS@N?(olHy`uVBq!ia0vp^6+kS_!3-oDZtWHUQU(D&A+A80BoJjU!wu9RP!i-9 z%%JBHo8QnsZ_Uo5m+rp&@_$wOhW88%Og)}1jv*C{Z|A-}w?u)bRsIP7hocYwy)V1X z)V0}a^4VEAn>rU7H=M}yU-(@A!2hIurEClGOW(*G2sT?Lk{q>Eyv#=YY5Kjoq&s3S zPo6gHUCR7nLhJlZOZkuAu{n9(teg8&Qs9|27x`WZ98eZB>AU&yvhdE(1eHfiWKw3^ zt!4ZnZJbaU=T;LDcDH7-JhPbEm%meQ2&Kk zw7@#;4UKELH!s_@rdM;l;kxyk*4J^&i8}M`ow74;#Q#f&5+-U#@#|<_E8XTH9(~IB z+GC6OjRC>N8M7GHtzokEUY*`qwIQr<2a|u*q9fA1`K#85CCvXiwT``D)6qNAJ>H%C z7Ol7YWssw9VE%*(tLIHQamO`Zl&twJ^1!gW-ATSR+f}5*`Bdp z{A8Nf_C}2l8FKBLzHa#y@M5d_a>H%T%pWf9`cz=G{IK0E|CQ%2TeO8rcDkL`SdjHr z`0PF_^DR4f*h|S@Fx@_X(#sg*ym>C*{$g)zub$hvulJl~d1Bp)xq3-)o7UbnTdz=gBQhj^(zA-?R(o$< z4z5)d`Fs05%OVDUseRW(ndfbm;f?1$9&@SZf62uB7AJof+ePo06sLMm$=>Q6wJx~h z^b8l@wj91)rT;bxyvbv_b7N_M$pd|+g{gnH6~u>4&v&}mV9#|VZvX8UA@0Yx|1$KI zX^Qav&=Fur@BXbDe5+w`?bY|(3uioCxBtz){hTZZZsr}{_3*{)0F(CnEKCnHcZ+qg z{ZSKO=)XBNKt|Jwo8`dgvUADukM#r?&fiuPak$Ud$nZn`8+TZtNcrIv>sdgF+|$+1 JWt~$(69C4rTgU(a literal 0 HcmV?d00001 diff --git a/doc/api/html/form_121.png b/doc/api/html/form_121.png new file mode 100644 index 0000000000000000000000000000000000000000..0a5a88d18321c76a039a6c437a4e8bf3e2157cc9 GIT binary patch literal 1337 zcmV-91;+Y`P)v0000mP)t-s00000 z0000000000000000000000000000000000000000000000000000000T0a~M0000G zbW%=J04_*fZ-9@UthvR~-RboIs%Nn8000E2NklEV$muF+9 zmCxb?<^|~sp!AezEj-nRZ>s5@0C1hEYi1Td2tRtITdj|2H;-`<<@rpwABHb~*G{vs zezbu+=fKejeL;E$8cW}!q~he35-EALHVa?k@VdOiroC3c+^f(;j5E%b@|BLvU@diMO{Yd4FiB zsw?VJ7rYkz5~T}%>23@qL$$pOGjc{PsPd5{(PUkzG%3`@Di!QNk{8* z;Zwhzj+)5%r17$9+dlQ)x#-B1`qrK?iVhPs}*J87mSTK!w=Hing4&h9Qo2YyP(T`FqrM&QOlZWW|#!VzrD8>6jzZ;Tg3vzW1<@dC32&Bq%KsS_~j^{K|K>KBQObFjdmNASD$dEkYnV-=lHAoVOiW- z%H)TBcO(G)X!>ygkAO6II-na0n?I!Vb^1-RJq1`bc})epLTprExP9k+-{cIF&1s(JRla4bCL5D7xPVLcOdFisn64%QIEM*TQD^FK zTyG6o-lcJYj5=*mic1@YJV`3`rmjWXaIzU@BRl&l>*tU|F(irqh9p4dASh}#V<726 z9ncMBvBk-*)CA`}t(`-lmD9@6Bb}!NlbWS=MY~4_%f*))HPeRu)eGU!Pp*gd6~VoEi}=-^PaJVD;+qtH1Ot>*rfapnr!n1~R<|e?%GW z!O2ERa#wcgoB?}z?>Hm@;ODur=w2iD$*{S-27r$lRyy*0JLcSZ;wz*Fpzz=}0GE*l z;m4sIh6W5nH`Gf`d?z1gpOZue(2a}Xr$PXr8*}ir!CwyEK)ys817R5o1K=|3fB*m< v=SQ5sJ_mrW=4s$BO|?k=OFLgJFCYB_H$o?iO-k2q00000NkvXXu0mjfwvK2& literal 0 HcmV?d00001 diff --git a/doc/api/html/form_122.png b/doc/api/html/form_122.png new file mode 100644 index 0000000000000000000000000000000000000000..3d72095e3a8f086ba82ee0cc50f4a7c851718038 GIT binary patch literal 363 zcmeAS@N?(olHy`uVBq!ia0vp^T0kt!!3-oXX5{k#DT4r?5LX~g5{R;w;Rb3DC<*cl zX3+D9&2Q+Rw`S+jOLt#>`M)ZC!+W6IEl(H6kP61Pb7PB+DR8*zFG!js^?mC+}*DBXH)zB}h&&^xCi*LO~mud8WQy}RdCetGcpnnkDQ zyEAU+ky+QLH;a8uyUJC;p1JR~>sC+TZc!T0U=-jAEIqc+Kp)=v%3m74f$?Hi++SU306X`r@g@FH26_TxMKy zYRTtA-x%(FY`OJDa@Nbg8k?%W9trFcJs#hk=32(E;jHnlyjbRj{m(CDo9}1zc46fx SnOs~53NlYuKbLh*2~7ZI6^%3i literal 0 HcmV?d00001 diff --git a/doc/api/html/form_123.png b/doc/api/html/form_123.png new file mode 100644 index 0000000000000000000000000000000000000000..ca28c7dc916af0fbd53430be6d12df1b494753bd GIT binary patch literal 226 zcmeAS@N?(olHy`uVBq!ia0vp^{2Hjtne*KIY z4^`&pyl42}J+<z3mv41_=M1>@M}{oi(x z02^XE>F%AGv(ww0C~*LTsw9>E0{j@jj{$rKGph&quGRrunK5s-q_GSD-^}`@*Wby) zxB|^b*XI0ZQ2c2-z_SJOjzNIG%_1sEjY%>k0M(~=x@dFVJal8)uaEVJ+kzRl5#YaT zeHGpAL%wEC9)fyM2F~Q^B33A5-1)JO5M~`q2yxA=BmGVuz?IqeUezD~u5CDSbv#}; zK>H;;yq|+>0$!isKB5Q1qL4Q&Bxk%nJn=K>r9M_5E>G!LbG~&!HZ1;ejlK5Nlwt+A zwgkeQVpRuq*`ua@2o67cnK(eFOt(@casu#V^E^g@>C~Ix`cg{`KfT@|TLyd2 zPcYqVFGF8>It$4FjWvN35GK<3A{9H?V+&gGS+sFccXrTO2{h~THPy2wP?JsoXA6Fg z$8_Sm30~MSJ`Ks=EKag29vI(s;i#d8pBPg+Utf55s(}Y+txnnuqS85lD_e4fiKkn< z*#_Zx2c1u-xX&-x_|wT+*A@%FvqkxtV)+_P(S_BtHJPsvmnD77IF4bw<_F-$4o_VI zzk7JWPX_UdA9-Dv$hj`Q2O&Pl#18s=LUPyj)9jq4*;7BNf)qm7!nO$~Zifz;vDR?Ou2~bjJOq|+F$1dUHpd_Vf*?7kx!L=~X-VJU{wSd&oG&5#%eKkwDb% z$eNCPNu)!CrchZV&1Dx0=;MSTt(2oPy)XFD_F3-B6SojMDY35ArGLdw?V%>5+2pJ2 zJw?BaS~L%ShOEbXb2{@gJL6?<;Ya9ArI>e2TN%Z#s5#4PPylc2#81-?x<}!((w|%l zyN6%VpOSs4zLvC4RY)RvQD4FJR)Fh7m}J4JBe(i2TOUUZ0lr`_^T%{+nLRvJVXZy9 z;3w^U#ZS(@PAV%Ff^xOS0-S4o_DfjOJ`;R;cnE)sADy3+$-a~(Kw~zpxZ72LkJuAG z*0qodKZmEWQM4Xj@S`A1eCIxXS$?$Hxb(cnh8)zLGw9f(S8Yc9lZei>4*2a21N>?;A*5LOki6V%RGmC-_~G#q{rj*Eo0~J$ z`cwwfM=^g09;!-yfpPc1sdS1)+(ck vw7us7;QwJG^Hsh8{Fun9`^gr7zry|jv%wxsWzC@000000NkvXXu0mjf0KY*b literal 0 HcmV?d00001 diff --git a/doc/api/html/form_126.png b/doc/api/html/form_126.png new file mode 100644 index 0000000000000000000000000000000000000000..88a096cd6f5f0e82c57a217ae57626308db17f73 GIT binary patch literal 287 zcmeAS@N?(olHy`uVBq!ia0vp^Qa~)s!3-pK&VFkGqznRlLR^6~Ng&Ezh8w6spd`pI zm_g4YHou{N-kP09FWr6l<^QVm4ex<+eV#6kAr*{o=lY5rR^VtkzCXeA)!+PR6_3le zLgTmFTzp|J@PLKk1G|66IlaiUr(3@#omnb4=kwMxGn&ogb#-_qrhZf7H?3K~E}&n# z$-p%y_1WY29$8aO)(!3AQSxuquasX|MdVsgqd>sIOYccM(|H%o!m0eT#^ci^G zUy=m4w9q}Dc1`m+yb<874b7%70sPKl7Q4@u9r^h;CmR5F1hBIfB*4M083OJ7B}ss5 zD^?PJTEHa%9BsTT^&Vw9^#JhJZdQ@SJHtZ#!O1fLO8_|7hg4oO1lZY^Bmu7N-aPf1 z&jLpC32Uy=m4v|tCzpIcpW8j9&# znbIhoBcYT+S4yAeoW@B7aPVFWCG|EB>-#I@l7xPez2dm&D9hs{o@?+W6@9CW zTPHwsr%{H`6k^`x@>rKxdQ<0q98-G4>Mu-#Kwcq;+IMBNX0N3ja_Y~DDt^ika?X+j z1NkjUfV~}QEq1>BS?h9>^!5_>o*9-P?98VYXv#8H?*t*rBzwXlON;eDl!llrJ6)rp zEo625=tN>8Qwg$H&U7yc>FjLx;wtH{Vp}#R!meIEw^N+&k)(~+o{K|WqUy}OGdD|; zodz-(WR2wz;v)YYb!(k%MgC>I1+cTy>Dooc&;j4yNCNEag_aA~CSUTyXVcOPq1t=? z4=Ip-3QNjbMZ;I*A9vfUizgS_CPxiqbE}*3(pe=f=6oaD8dY8++xwQ)N!Tub&lag@ z-Y@E6dXXQ7&wv`pQFqOf_!WYA5P!}v89RU%i~XPW zd0?5F1&H^LDu7%Tr;4{=GKk$06xLlqdwyntFsi&&2$lk2>bY8E;ZWm>{?$vD>sgYX zvt@S+rW5wL81JE!gUEv(SQ5T>Ef4ZKaAwDSBZI^0<&} zjVkFwMf-4GjymR<)5ANpvVJ%(7C{-x6traqQYx^AV4NP)st7_>(toc1`Y}s8hnk1) zNCNEbNXy5}Hbccv^wZt3g>%$)ECg6)+UCF{NQ=i2v#q?<#ZQ`J7|zzb0BfM z+pW`{9(>BYj6`)?V$@Pj%OLtE?^a<;%G6g7lRaA}Kyz#3styZ@DglSO$Z!qe(bEa+ zAQa|Fa%CVjv0>y1L6vLPNXAgO<|S&@0rs}F^DSB0z9b2-w<9elw9*<11hb)LG^>RWw*HjPLNvV>(-=AH)gDh@S)c&_HI+q65Cf}eRH*Y&9Ky%yV zu+%hVY3d>f#knL-eUC-nCd;YUtO&#>ge7L-q`{40&O~Jna4?Igp+m6^Uy=ma+ksY; z60J|5y?y4WFox658=6|4_0sOxlJurKHtDrwwY+-o*VYNZCtH01?d|1KaXEn86tChu zV+iohz9R{6ZPr!w3ADEg7s2YBUunnNytYi(B~i`|z(+I5tlHW%k^B0o6M!qbX_b>| z*dF9l@mBqLQ&@l#`;sKUr3I5+e*)}GglmO6z2K0ex)rlM$o*M~0gmR9Sy8O%k$L$m zCjgfw!sWuVSDRMx-Z2DtV_%X4xHcD!^HB#p?`xmU*IxubbKpPz<^tCmjfm zOTVZdX~ur^AV=s*mCbBFj2r&zGW|)=W2iZ=*0B8Q+8d8odrW4p*rePvmtpSpkTygl7)QkUNMRkjPP+#R1@nVnaB)Liw#@qH)TisZLy z`3agcS~uRY{I%=Ck?p4(nJ*pH`6sk_-HF6}_RW9fjAT0{+++`_DW+ez+^=ezdN1qw zq!Pm!-}(5&_MO~!^wr@wt>wZVCnc8~zYTw>r?>eCSx+e$3K1>%HJ^!C$XSt4>wDSifbmTFkwN3-pc|XWlSi z-Sp$s^cTB#d}@8MeogncV_BbiZEM<@f84lZJndlI{mZ+5i#^yL_AdPJW~O(!`pkcB rz1x23b5rdy_75{-!}$wlKmKda{*OENVMpe4P-5_O^>bP0l+XkK%Mtnx literal 0 HcmV?d00001 diff --git a/doc/api/html/form_129.png b/doc/api/html/form_129.png new file mode 100644 index 0000000000000000000000000000000000000000..622f1aeb40de5ea2fa7579fad53f68375975ad95 GIT binary patch literal 1792 zcmb7F`8U*y1O3d5Nk)ukH@3+j#*)k+S<_@qCR?)ayHMf1Nz9wP>|yMCWgB9MK?+T> zmTXzRZ>%+zGZ>WhDLmhEzW>1Yo_p@SKivECO~l_c;ejDw008iqnc}Pg090_AMbAP` zb!Y06=BcUSZ`fWx_5TZw1`^z-1HK2=H*Ek_Q5 z+Wrn=yG)bIuAB>=4<(+Qgr>=gH<Z^+KiMd0li6Y+}-?OrFRv{sTBr^-a;%is0sa{_@cEDv;Nr z-dp5!_xb^>3bb(ITeBodr$yAY)i+O$kqie)&v>W+&VxriuMwcl@SW}0=-E9=i(|z{ zFeOAkn-nWAiNXuYFcg(E;2`%#hhYg^ju)@d6bG5(PR zy5VE>v*M86VOxT`2yi?@HI%t|q+87@lQNcu=^KN9iz&Tpx}Abwi}JmeN=+PJ3mFqK z-XEUD@~oIcXDixW!=)&rvnr7aJDXL9k#_6#(oBnFn>T)0F*7N&?~+{Q5VqOeNe5U( z{Tidq#w%$u|2QI9g|`2sKGZ%_iBY#@5#bPks3_>TSVXf2-uFs$*~<9dVCqsV#;ZmB z4wwV0M!Vt2D7t^n0w&hItIayI<6b_~G}6+ezKLKj2h2E`qkYTk5ajoUOrUE94LJ#e!)dwpDiH!f{8V61eoQ|zyA%J*Qc z$iviZs*p#s_pO0E2Kj;T4HJ8oLkEC5LTyq9R1EipWSvW9#`C~NR z<0ZySt*V<>@bIv49L{!Ds7X}|9wuEjnhF7rz|j%_(|-NW+GDQDOh>Ee1%Jm%0XxPe z^D{_PIjzZno{esM*17#*t8XtywXep1_a(ECgQ2cS2D>x%#~ZwKG(297jq3aW{qF74 z=K*h-P5l!w#N{GbvS*SBq35>bNZt)`RF+D=tx`4|ejs$`F;!}OvG!piwo#f`g8#xO zu8g6@)KY%og)_w?gQO$^pI^&TSS;jrd76)HkULNDgTGJPmbuBE-`nQ!i4Biv+7_74d%byX`FNS!EvqCc4IG~?7;6nuolr- zcML_=@g$}Jb0iBG(t{yB8P?#8kUm~pVhLU%#X%PyI*M@Gd78$N(e))^dQ}${ELqU7 zjUzL{tcf{v>BYEbLIIyQRY>)T+&}5KXqLsB2~UOr+?^3KOZvz`p46bo5pt9DGQ{wq zqsyW_xm+vd#(WApngn6qz|y0b8ZETK+VEEbt!~8CXbano88_#wPJ+*b^OKywi2&vW ztBGG37?i&ohReaH+#xjuY5ui1V2{ueLBb3@11}K6wOVcNyYgJ8K-%Y(bK9*#%p^Zw zEmoh^$(B7wZ)5FBl>0}$0*F@Y;LA*1Qc|q7G;$N_PSGN3y9ryi+QO4i1{9DQ8^wr# z>Bz34SA&6r5np5tahpRei8fmO6ka^70|JP-nxM}3 zCR2u^$9`qVU@*Qw^zF!zhDIcTR8Bnny7UW7^wWf#Pb_0|5C{0VO#S39AavS;oza}Q zN6U?*jn=<&#RGAusA`B>$RA6)d=R2eA!xqqd|Slxw3&&heV1D7s1r&D-QKxT9e~hY z-a-fh(f$JIIo+)S0JU=Od&YfzEfk(lDHX?__SD*Z?aanOi`qypWN^b1x?uwd{uQqAZ#+8c4ZD-fL%k6i0 ze&p=ikiyvOi=Y4ewkqXk=rTI8+~kMbm*1~Rl?1-;ohM;i@skh zU7~zmH1gcekiBoG$IX40FZOd=u+eJize#IKs(%>n?ucD|=epdSqdOE=6kW@46K(R^ zcE96Y?o-LVp*!D}etajkLdLRBbLC0)Wyh?vL>{nazN>1B{$8v5V@XNLlepyFdsa7X z+c;^~VK)Zx6@^olJiov0p?4&sd%14&s&JhHrX^}uBB$lpUe*$N;9ao!ipHMkdB4`M nR>ycU+;1uWoIJm(p}tvu(Rr>Jjt2_=f>MH~tDnm{r-UW|L2LYz literal 0 HcmV?d00001 diff --git a/doc/api/html/form_130.png b/doc/api/html/form_130.png new file mode 100644 index 0000000000000000000000000000000000000000..cb95d48f25abc0657730841819e323b91f2e3c21 GIT binary patch literal 414 zcmeAS@N?(olHy`uVBq!ia0vp^4nQo-!3-qD*Z$rLqznRlLR^6~Ng&Ezh8w6spd`pI zm_g4YHou{N-kP09FWr6l<^QVm4euEk7FSodPb%gxALvi_VfYY#EQR5LX82M0E|UhqRsS+{7;I7}@SHk*Z`#MD zaZ95aK2G|d!EkEN^NZ^brZ;roi?U|C7V36$*(7d<-44fg)+I9G__>nVuJ`!$Ep5AA9Oa0)#QNY+x3z?Tc7oXz$plW<=3B0| zvtBZ2_ZwCwyzGC*qj4=YsOFx^T|cdkWiuC~Hf<_*T*mV8q~fCMr+nvKDD>9!lX9>O zPB+;tF1D@n$CG=VyRWk+aIhpCVLy=Ca`^DxwdM?h?{_dJw8Zac(%ByBT^s+8;e#LB U4v#ZW&x1nQ)78&qol`;+0G}?KlK=n! literal 0 HcmV?d00001 diff --git a/doc/api/html/form_131.png b/doc/api/html/form_131.png new file mode 100644 index 0000000000000000000000000000000000000000..3cab5b268f6c889e8d7086ac54fab0863a458161 GIT binary patch literal 884 zcmeAS@N?(olHy`uVBq!ia0vp^lYm%(gBeJkTYm8nkTMAH32_C|B!MV<8E&8kfs!D< zU$2Gm;bBMH@s(HV0!H7;uuoF_;&8?Ni7-zF8o|YmmmKBU&hUP zl>1!H5uf9BI*C$uwL&IM4c)`^hri)JTbq7^-Za4nn2`l0fS^8xFxSl5R8 zt&t3Ig1QHuPcS*4-Ny34aK`+Ur?>BHTRbu3@9au<6ZQ|h%jTB*usz_p>&Ca7x7_mO zm8(jzr+s%Dw4V0Tdh5E~hGk}PQu|qkcW;_^Mz7uVyzS#JC&{L(;q|h&Yyz{E?h@&? z?EEIRlkdC2eZ`X(cYT|hKPBX6)#uqC9jZ&UAN#F*lD+S3QV3^h?v1?rHOrP9N@+5X zTr_)c^d{X9pUvW$=1I-Parwo&_SP>oIhnpwX3zJF%idm2{(bf2MZI5XmD}?*gMUr> z`{dY!Ww{T(ZacYs%`DF;Ddv({8?!p2jyaw@volGp=g+*=`%dfbT2tviCs*?+YnWZp z+Q>YOwVvTlJJare-7{VNDeH_&yOP6?M#?`6om2dd@#u5+N2;IHX1>toO<6lzd+D}$ z`<9!iO|7rL%CEgtu|+^GAa1@!?j+Ur;>l;{t(kI!d+MbAqw7jpH(ycA_nYEUBD&`8 z%JOWfjCG4UPq0j_U9n{0QK9`oLc(WuMqA8pUb(gR{kO1E6Rn>yjEY9vN~>;EPibY4 z+j#r-QdeU=H}=ll$vp=oTn(3KeOmnHtYw6_S8s{*BP-2c7t`1(7X}sZs=nPFyEZdE zb$ar=b&LNW%KJZ`g?U|TU_LYOPPKFp-S2F+L-gC9?>iX!D4Ey_I)f&=kB2+XdE;ePn yGf~>~0DI#7&yV8yq#EoG{=WFTvX`N*qn^R}qsYT*=j7+0yyNNW=d#Wzp$Py~CXCVm literal 0 HcmV?d00001 diff --git a/doc/api/html/form_132.png b/doc/api/html/form_132.png new file mode 100644 index 0000000000000000000000000000000000000000..807c415705c0f523d3e39fe3e422a8684ac9b957 GIT binary patch literal 420 zcmeAS@N?(olHy`uVBq!ia0vp^)<7)8!3-oXMTFG@DT4r?5LX~g5{R;w;Rb3DC<*cl zX3+D9&2Q+Rw`S+jOLt#>`M)ZC!+Qn>Mqy7E$B+ufx3LGOH7oGQaImnL{Qtk*m*ryK z>uv3K7hCPCoWW__P|om!U4Zd`_Mfvqo^q{bIKaJPuRME!T}iO8Il~Xx@>|;&Eacz& z&zrZk?#Q(%`|2loO#gIf;kmTelecZ?KI#^HXGfH@zITSr>Zxn@rr*irO#Eflm*Hov5wJ%($TIg5p&9C=rm5g_8 zS@Ge#kj*de{(XPzPV6s{${T{_QSa2IcyJxhoN1jLwT(0C8ndH|)~l#_uU}?+#hhPj zc`j6#_k?Qt+qXy7?QP@w{(#{Fs@R?S3qIy>FVdQ&MBb@0Om-eyZ`_I literal 0 HcmV?d00001 diff --git a/doc/api/html/form_133.png b/doc/api/html/form_133.png new file mode 100644 index 0000000000000000000000000000000000000000..2cf3a0c098db88b166be9024cd636a22e130debb GIT binary patch literal 1042 zcmeAS@N?(olHy`uVBq!ia0vp^r+`?3gBeKn_)gjfqznRlLR^6~Ng&Ezh8w6spd`pI zm_g4YHou{N-kP09FWr6l<^QVm4euEkm>WG^978G?-_Cu#X{iQJtG&a4(_#1i=c;qA z$hiIP)y!F|=5@RFN&5?3JJq|N;Xn6*{eDSGtPS;>c1%(DxucEufw}Pe-382hPM(^@ z*`s`5{?vuP|4zEIKH*H=mF0#f|0@1vd!SaS^!njzVW$0cuecw$E~_)PVlMfdesOQ} z%&?Ul4c$9dT6|{YE?BqITkwGInVHcV=l;Jio3g0A{gMr{&506Ar(of{O`{PWDz@4-upm><6ie-QI< z^0G(EBm3{-GCbK$v<8+y1Nw z?Ne*C*dFzs;&b!poy4g5>hQYWg^zqAwT)(PdU2!Y>c)-HyC1(~yWzYwZly=mm#vvk zyT3)Gd|*4<=4WnuWj6QkuE`3VqOW`0wb&)jZWFtZxqbWj5N@Ay))m})yPk8f9Pm9? zz;Ng2g(*2FFS4BOH-51C$JMzCnftQ*_oqE&2!8S`W9_9kWqO}Yrf0OynDwdfkX*-c zrrG<0JyUP2^icoru{6!~d6jO(!b{KYIiKiTlacGWTH|)w^|KSjS{8&noi@kh|Fcy2 zF2k+MrFUNnV6dMkbz{?s>_DB{pB$Ec^WutPbA08xLSlEI-nGYzY^qY(lYjPIoL}Z1 zbtoultFigf^YV){&-h=z;P`ayFR7^^PoAcvOuaVATx+%3&Lw+Tmv6jWojT1S|5N2^ z9+A5VFZc}RuaLDXD?4tntsq==W1*!{kGg4t`^|f5rtAKh-_n-iS^se3`>wNPk&Qfy z%Wr;}!eyDJ`og|6K-;4GHK*IN_2P3c^F2^=x7?O{UgCjL)TX<}`K#~ACU-L(C@&21 z+9*5!}#kN)Ljd!Uu~QooN| z|3S>Z!wVQ?m;DN1a(w6V^Y^s`2JxA{RpM3vO<`pIpfY#!^wW3p9fb?dc5P|7SO4-l z-&_C6jWs~2@F(xAd=5`}`fbMZ_%)dg_kFc??l-Jr_|N*2nP-~h{#DC7E`xHmr>mdK II;Vst0AnWO^8f$< literal 0 HcmV?d00001 diff --git a/doc/api/html/form_134.png b/doc/api/html/form_134.png new file mode 100644 index 0000000000000000000000000000000000000000..9698455246b4f63a90045d8fc86a24d0d71b76a9 GIT binary patch literal 605 zcmeAS@N?(olHy`uVBq!ia0vp^SwJkz!3-q*FJ-I&QU(D&A+A80BoJjU!wu9RP!i-9 z%%JBHo8QnsZ_Uo5m+rp&@_$wOhW88%jAuMu978G?-^Sivx5R*_xXM#M;Mf29-G1EF z30pEA*sKdVDfHIF@6nQ(;S4|e1%e`3815<0v6BzjA-aN_VUL?-{;Tr%XIl9TAHRZg$bUS_p82#xa)P&`@BffZDJO0*JJht^TMk;rSzHBiS4h|W|m~@j$K@ky!al|x5W(Xb1x^K z4T*8uc)a@LB(W!o({&E_erhy-Um>?`l1izx{ieuoXO4C3T6T7G>{_StVukYX@FSN+ zl2_C%lPQvj4CFE^YRD*BbZ(KX)W(u))z1`C)H7e1d}H{)={fOxp8O91UWRvy*X*88 zWM+7;Xtjl@q592DnYX`JPc+v4T^n?p<7f6qZ-0glEXycfd81T4UlwZ45^WvTV+w{6h zSXlK1?&&Zko)BcHJ7RN4+aQ(w$RufnZ!95m8obz#gdeq$7R{~`M)ZC!+W4yq^FBxNCo5DxzSul40xE;ca+L;ul{|1o7$A7 z*eVu9#YO#wI~fm@OF4M`XFlo6H0k-8$v*=cbf zFMqT5xly{O{ZtG>Q>DK#)SJIaW%zHn%tn&)So(t9j6arhu)3VG=j)a};Jl>L*V*jC z-RGvul~(V#9k|6w*;@F(@rbzc=8zS07~X2`oj0Z0?m}(m)-L8L(el#j2Xxiu%Ac!T zz0c&@;=Q+w-tn5hsM-AXz)EA&FzJ*%$*xVg-YX-mZ*i|Zz_o3&)%(8&TW&__%RMN* zb1QpWU@;(JP|{k)mB0!!^CSFR0njcuJ)U4L-b=HvWpYBQMi zmfebYafdCSK;*+osdqa9pR9f|_5R`RO@Z4af~zh5O-P^S?Q%!u*r%QG%e|*xW6#*X hl6}km_e_79ey}}_VDD2Eb8!cSxTmY1%Q~loCIDttqqG13 literal 0 HcmV?d00001 diff --git a/doc/api/html/form_138.png b/doc/api/html/form_138.png new file mode 100644 index 0000000000000000000000000000000000000000..1457296e3e18415c25daa0977d91a1313525678a GIT binary patch literal 5512 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 literal 0 HcmV?d00001 diff --git a/doc/api/html/form_140.png b/doc/api/html/form_140.png new file mode 100644 index 0000000000000000000000000000000000000000..3f40acf9c15d3c1abc044b95c039f7cba851eebf GIT binary patch literal 1752 zcmb7_`8V5nAH_dk3`#9!s>n!fsdcn;(uXpQ+A}pF5<9JG1(Oz!EgX)j)K*oZ7_l{` zw%FH_qGCx0LG2x>wIov>`!Yhceat!Y56nI1-q%m}r}sJUn{1D%Z7dv4 zn0{h&QNfe6Fo+gE!6kcJyyXf1mE2I@{oR!gb->_&o{eW(}*t8RZ{F*bHB*7g)6!arJP9NBB)>fe5y0a|B1` zuK{KVOadHd9LiV6pqCB%eA`Uy)lhX>yA_`ej^xN|?9RvKaxCTJAZfAxIGQ^T%4>f; zPdMFBVUE{0#3axEFA(sfQeFqg#EB3mkcz(@m#a++iX+*-#$c?!fQ8@XCXpJC>wSKy zFyLZaA3gL_ghN^JC~~I!hAqWc%Vj_aT)VVHY1I|b)R8oNI-IY7NQ!yt(6*7we|R4@ zxa9t13R~DHBL&`F>7^wH^v#;~i*PQw5?}Wr-_Tj!!902Poxau*m7McFNor@76Dx_q#$SCMOU7Xs%9;j3sfvrYmQ?{?T1to*JQb*3M?o*U!?Z#e?Y zE{`IKroWDb!Nxt0{Nkzb{w>4>9@))r4e?Ydp5l`_LdYtOP|4Ic7*{Wndegc+$KJ_q zE-1-bS%t8H1GiM4%SnZZ*XiWOJm=&!=QE}lI5iMWAYKB7uE@CEUz&nc!K*wW9-n^d zEe8$?b0?nxFwFZ=*2p7i!ZTgE`%j!Afa|s|AJ`B6^)c|V0C>Bm3I`_5Qh0H2OE9(; zV!i_l4+to#%6p5Mg#EX()FrLkjSsHyp*>Qrn27DJ`b`eTIU{XuyZ#Gj)-dabZgyEe zLZKBtY9GrbQxz(E*$s$Q25y;B8|u-qH0*p+nmZmOlh_lf63Qh%LzZgWYRQC+YA&AJ zY;6=k^q1*{8PnCG=$nFy`SfC#EGvyU5NE&G!5wx|ow_T0H+ceiu7gLNoAjiBt--i1 zi?)Kb9HR!h04D5nwlO=Y#|8a_XqS2ahNnX=DH4qDJ>ZrE*sdr@FJ+%w#b-tHKbJd2D-Xn zDjfT#{=nR?W)npNR5EOv$QH>(D3FE2?K!NTQFXPtQ(Ea;!BpS%Pl;42x!?ZB2A3_eT(hVG<^oV-Sr#Ffx= zz|^_yU&yVzd#xxTJV1b1z{rT+3-DagJL4lo3Q>lbm)VXsqqBj0O)9Em;{)+^`H)Mp zl>y+72)BG&YJ+LS#zD;L@9+1+hdl4O^?4pE(7ZelXhVu+44u|)wW!MplQhAP*==M4 zW}X!t{}c8smijsUgM7~;X&$Ei=ism`%t1wdHY*qRp@g?5X8OPmfo6#~ZHZ}OA3Nyl zc2leOvawcLR-2cDS7B1?2hkZ}MOOM2?NUp7O`kMS#qrL5@osr}icOK031o@E=5&k^ z$B?Jwurlz>s&+Nm*Yx2|#WLUR_9s3q?Ax$MvjZ^sIedru`y=lQua-4PGLEC7|Ft%~ z{>lwWf|3gHX_PD1){#1URE8dG+di(BfrEiKUBH{JYRHMd1&YkMK(d{1dI9Gd9U+jBz!QM`9Q6S0lRn6{X zWP9j_cc3*{mqf1$<0tE@yEsgCS!z*AI>+-g!C3^fHzmrBgy4vZl;V nMBQHGE<&`&HQ#{hB52B3IxYS7_dcO5F%~suUUB~iqX{Z| literal 0 HcmV?d00001 diff --git a/doc/api/html/form_141.png b/doc/api/html/form_141.png new file mode 100644 index 0000000000000000000000000000000000000000..793924f83293ec91a1f8bb74cff1cb0965058bcc GIT binary patch literal 2047 zcmV0{{R3)FB1L0000mP)t-s00000 z0000000000000000000000000000000000000000000000000000000T0a~M0000G zbW%=J04_*fZ-9@UthvR~-RboIs%Nn8000MWNklp*|7}N- zfk2i{diiJOA{<137^ze$$+rL>1NeWm0XUv11N_7ya5($p%}apyEtL}bkAaGYwX8>i zR`f-vqpkvuryCc2>jCbpc!Ic4e^EWTv3~;aQ%h~>@D8rr)SMh;#5aBRGu~DK$J72D zF95d|B~ON?S6GzJWcU3F@B=HUIsLJRY2~O*_ERZ#(}W#c1su<)Fx^95Ej8b$J-4U}88PIS(!3lYQw*8mw=8wVM@@(U4c-yZ0@IhIZmKKO@?g-09id zJ$j)mGg#~N{*p+olxfe`x4D$%7V9!dN>&!}=r6A8Hb`W>v3kgl+`29=`OjSRt5wY@ z&RPBr4`k$*T$`cVi>HpJMh7{s_}b{gve!Ioqg{j{cNl1s&?9nngY}nc#sncu+s&#N z@q7)nD(ujT7acT$$9fMqo>~#73*wfmVIA7gpO=o+X~gSXEt0)cm*pDPo(m{Mnpd`L zL=dH?rC*Dh`?6KI_F!)Nb!`OawQmpg0(fG>MX3=ehe;zPnNMQ(6IB8BC{>58;&w7W zvLxc8{u8Dt3=%ygn^U^w9fn`$rO%oJFkgmMuFr|RDj+3WwQZn^ImpX&YE0j2FX_u- znNEF3MVXJvxp^_fLy_fsbPMprX8FR$Mamo2)*POE zvb0)9jR)|x`DN+4-qr1uy9>@<1QTXE^l52ht?jA$_Eo}|;Lyzb@k}-?tHh1~03Ml} zhcFqQJ$e>l#TKF|)I=ZDpE4AJXA#^^H756mBdC;5SY_5pJ-VA+O#o-pGR=zMm8>Z0 zD$CSJySj~trqkw%)pCwPsbCe{rm^Kzx1pZeqckV$1o4%vXIP!2?xmWVKfqJ7NhDf2 zRM|l0waT&ga|a%EmZ@X}y9;eNb@qAe#FmAHa_AZNOaqQlSJm;`8;r?SJzLpVmDL_+ zR%&Fh+cq=U5WdBl`e$n?QZGn<^Q5utL_`$=GEQo^;1`gOKHp7bzKP$qO^V-G+_Jkw#XgYPkI92 znMra#ow0`v7vO<4mrl`Ftg8k9PUc_jO!@2%;M=BK6~L{fbn4qWjw*_wmjU2xGC=_T zvDLqb@&}{=d<@`Y03QSR7{JE>p4q>cz0dYf;ClK)UJMoBD|1a4Xz%b3@P(D31truT zmX{8r#?{ZR2w#3wr3T?ou+ruYtJ}!}cx0}v7)!i*cvXxhO%VS;13r=@WoPm7sBp^S zQ=Y?+t3CpUbKF86bUp0S1-Q4+rdpfQpaleY%i=Pd+St1?3r^uGTI`~)Gm8+NRF+n^ zW7GE<>>xHQ0MD)H|E)+f4CDJ~htUrgn@YRdluse6m(fN-L}69|WxZR6bfq_FIk)>g z^b6$_apgtkTE3SeyH?O<%;*?*UKONo>3~%p^;R_|o}-MUao1*O>xX_ggnorp!j9s` z=zY7x*7{$z1~IwHF|QDM3R(51?JgtNS6QmTHVv$OB$@1?UyV+wi!L##{AL=6Ts4Pv z5Ls_2M0ukaT=Yt{VhtT{?YL4ngbpuy%S~Yv|5mP_V|BHu7peGKV(T28x2iFB84}aV zYiV5w(;UN~yW2H%ez}44dg|g|OfKind73LlZ?BzzR;q1)3hw?%5>ij0m)HApuZfJu zYik1h%IcEHr?sT=d8T>`!H+ht|EZ{vbncO+7bV+ dpaT4<{RckrF4*US`Az@;002ovPDHLkV1nqW>*N3c literal 0 HcmV?d00001 diff --git a/doc/api/html/form_142.png b/doc/api/html/form_142.png new file mode 100644 index 0000000000000000000000000000000000000000..9e9153bd785242e2a6a9dcafdf0dac27e95051ec GIT binary patch literal 8351 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 literal 0 HcmV?d00001 diff --git a/doc/api/html/form_143.png b/doc/api/html/form_143.png new file mode 100644 index 0000000000000000000000000000000000000000..84e17b5b9a0042b059a02bb7703a489e1cb25184 GIT binary patch literal 8155 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 E1K`p%P5=M^ literal 0 HcmV?d00001 diff --git a/doc/api/html/form_144.png b/doc/api/html/form_144.png new file mode 100644 index 0000000000000000000000000000000000000000..0bce35a6f6f8930bb81984b66d9b61c056595358 GIT binary patch literal 751 zcmeAS@N?(olHy`uVBq!ia0vp^tw1c!!3-pYR@JxxDT4r?5LX~g5{R;w;Rb3DC<*cl zX3+D9&2Q+Rw`S+jOLt#>`M)ZC!+Qn>rZ`U*$B+ufw{ve#o1-A$Y97ug`tN^!aLk)& za&vwB(^T~nBfTej&$XJP7038b`a_M*0ei!>{p&ZVHssHWW61MmZIBN3{@CyLLs%rb z{n3M+iA%$O7I=jYBG zJzOlYws?Qv=bPE}6Q63mEKCZ`nR?(^rGaI@j49q$W~+3k{>wYTw?aN(#`7g6wQ`v9#u7A8(srI3j z-}B#jP8&~pymWQ_5_>A-2gAOM)83I+cfTp?+Z(#&^T$0FLCU999I6W~81`@9nRIHa zQsv)8`+rVjUY2gHRTW~pp7Gu`i@V%g-`Ko*_3*jztnk>&>qBqrFXcbby7KRu^Sdsd z7R@@pox{NPGQ@ZYu-uM9!S N*3;F`Wt~$(69AL^NR0ph literal 0 HcmV?d00001 diff --git a/doc/api/html/form_145.png b/doc/api/html/form_145.png new file mode 100644 index 0000000000000000000000000000000000000000..4e6fa79b51d8b2864b64dddbb87e82da7b83ffc5 GIT binary patch literal 4210 zcmb7IXEa=0xISZ)gdm9MM6V;F#%PHae0murM(;g@5rT>OX_1(y6Om|Plt_e(k}-&y zAi7`}C8CZVCCDA$kGt0WdC!l%&)(RQ006zdp0+svfSSqg zk(a>ac1mnkirmSV8d~a*`~TNtr@>7}UU2oHxv>Qxtp^W8X1uCu>>MVn?*GMj)@}g+ z22zKAiw*KqH{v_b?&^VD!6CdxL5T#8fSs)-X&IO}Y?FwU-y zY&Dy%@$(|U%VgK0qEx7n6M^ZA-92AG*(_d6u$Wy6F`4vB1C2dlT(`By%Vf zz@RJ##EFx=%QK}Bt6bE|9w{-Hq^Xq*Kk0PM1qhQu$lJMNx5Ui4Jyx4gIVGfI&$sjw zoL_rij1tx3PI%fa95SU(GSKSBCryJaXr`}=6InB%W zr~D<8vnG4hmvq!TNz4|)XgY*`fE@a;5samStUWw3qi}$L93M=%nlL2bb!MVc2+tO(K1F5? z$qx%=`AN?t6BIhHC+?%);W5n-K7jQzV9c&X!giffF{Yc)MFMyQs)bb$4DVao;VQn; z_^1|?3X5*iXUkD@?Er3S{*r$SIk;|Z+0u4S+V?KE6Uu*QqA}|aslpio_I3B#_L-r! z5i4arjcm*axN)64M$m*$CGQGRd1W=qzsQu--Nd|CyXy(%z=K;*%@VBf6~)x0^s?qm zbq0AG8YLYT9ruOl6k-pOqa8@@)_1+1zom^dU=f2TOIcs zcw-=hTXOw8$%AK<39aS4R4m|JO4<+-1sKiL-t_~mH0TA_7q1;$%EPQFgajpZ#;(I9 zXCT%3^2?HVJ}14ZQ1|7H*q^NdU+woFO%a z1A+04UfW#sasKZ2A57(>m8T*}4?Ja8m7Y_DUw<<~nJ4k-epb-3*%!aCiPF`3eG%W| zvlJ~Ow!#@toO51qx0h&5`w9b6Z}obEzuuuPEq2wTq936d;AgvGR`Z)tLnYR2PK%+ z?v>UWE5(iH=t4^l7ahwO@xEAYoB%$_)!ra-S^Ced^mF^+J^e33Q!LbuK@!N;?xU6# zic^j6kY(i%wmrVm{xasOvYdRwq7zxX^L8Pbp7>%72c!`a8EmZo#3trv4wBfQ z_- zbLdgJ33R_v!+rzdD0jL(W7=Ww8-c1wwfjQ&cO9(FWYVmPL>MvLTK9U?V(HWf3S!5^ zRdN$kzt0|7*9GUUe^7EyK$iY}XNG=mGlGr6SF$6w^J|64Qq=8Ux%S)6(!T?7~quY_D?FxO<_dF2nA2%4x z`H(SBUIgV7$2(Z>u^}0?Zmx|)z2*gG5=891fTwo^F{8WvI`UCkP5w`FZkYw^G~DNGD&kdS z_im*vZ?*T-_vj)5s1jG`;1I{_LU2s;;Kwt3%f*5e;VqiH2VLwMYrmk>*(B{#dkZCj z*-Suu<$z?k_mF%sLw_7q9Xx;E@Q~m*(ntLVod!M37C7waLB;m&UYJ4_Jg0l}7ob#|&@4Nsj*^1zmw%|iqG9W5m0h14Scvd{L;m!RKCzn6f?*gx8~yFJ z!|{34=$f6Y99WUoo6~Fg&u{z|L0zMNx!~B9e!lPB5P&IBS4(NswC1jElq>|Re)$5= z^E|XMLv`8S9C=%?!6u4-FB1X|2jozye7i-Sv^hf0#508%%vqF!chnKdDDHw&c+Zo< zMs(K)-5P$m_wyku_R-Fzp1!2MUwdU+V)$?W0eM=Zk*+a=!}?(rGTZVw-1>naN`t{tf~jNl=Wi7xSx0u%>w&;0*cWbl0qojFDUbxK6h~`XJj9Sk6QedC zfqswP3FVFdk``(D<9N@kKJ3(6^3R@B_wdUr{H^;={bB*)7l)bP{O)4tId~nXdJbO2 zp1UdFjPp)cb~sNyUT>7sNLkK^gn!;9!iz&cNg4rLx__U<0^3)+VeJ_@4BOO4CjH{b z$nxk06=Y2OZ>_rKrZ664#=XP1Z{Sn8@GK)FW1RURjWqSPu2^W&`(HXT8HTLLx39%n zap^7PqmPha(~60xqB*#(Kj0Xz=zsD$zH-1&I>W6 zm{t!nee-Yi4*zqemKQIM3ai~$)=Z5)V6tGU$#=&|!Wsf+3Y);D)(L3`yRzKHgf%=gqV&f}Y| zg4%tk2K}2#eQ5O`wHiy9hoT7JUXgFS;62OMby+E7d-sJ>GeQD z?kVX;)xgHl8_Pxc=Pe}(m&syqVkns!)1hxg-*+cVQtxO)0`;r?8RD3L8;3%4KDiq^ zjtQ7{%5SK*yp!j?h(- z?Qt}4K@lbT8F!z~E9AT%3;12~90QTny2mMv%NtMAPvMgS7k>`)b&R!ZG@WAq2hDEL A9{>OV literal 0 HcmV?d00001 diff --git a/doc/api/html/form_146.png b/doc/api/html/form_146.png new file mode 100644 index 0000000000000000000000000000000000000000..a27d885eaff5411f76ef0c81d88f263f0abd5eed GIT binary patch literal 1940 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 GAO0H@Hl8y8 literal 0 HcmV?d00001 diff --git a/doc/api/html/form_148.png b/doc/api/html/form_148.png new file mode 100644 index 0000000000000000000000000000000000000000..df6de65b76512743b7d4b07938fe11f4488669ab GIT binary patch literal 4112 zcmb7Hc{o(>-#%j*J4uFY{bb9oj3J6jl(p<+OZIgTV?<1a-WF72%UH@98p~itj3q+I zzQr)cmMp{Aci#E_uJ?Mc_kI6+&mZSG=X{>${+x3^pX+nq=hc1FJ6!BS>;M388Qi^X z4geqm{o0?Ek$&dKOi9uQmHWn)di3%Cbv)1!;h--#6Jl;^0Vv&dgrgF(zJ6;Rm|WaC zE%q#50|1_AgWESPksxX&wKn$?F2hEU6zu_Je0rs5%R>)5{<|@>ps)x=aw!2BpF#_$;zTuJ`sA>8 zI4kKb2HIILitpTckMFGXxw_?Rve;rdhKx@Zg&A{a#n{eL7|M0J?Q=fn=We9wB$^4M zLkiDuDitG%st4uqRc?P62ezDHSRJ(FLo#4u4q|g=9pxOhCVCpvU+2$1~>r7m;?iy92;2UVTNHt$$L

{k>UzCGA)92K3@Q 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 F2>?MsQe*%C literal 0 HcmV?d00001 diff --git a/doc/api/html/form_150.png b/doc/api/html/form_150.png new file mode 100644 index 0000000000000000000000000000000000000000..d651099e52e6d3fcf0a4e1a9e18551a7c0e8065a GIT binary patch literal 989 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 YmhO&;e1Oim_){T-D{CuNC_In&58oVzh5!Hn literal 0 HcmV?d00001 diff --git a/doc/api/html/form_152.png b/doc/api/html/form_152.png new file mode 100644 index 0000000000000000000000000000000000000000..798d455ad86ffb8c721c5053d46f8e162e472156 GIT binary patch literal 6080 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

-N+e5C=yr?(&=w!J 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 ne5V;D*2ra9S4a^pm$xBG6mK;gxqI{9&$IO1@c_ zb;n+IURIPUR_HIBC7o?Cf5OuVT*3A;rfpnnrp%|iJ?=!$icgVq6zrcV2Hgu%(w-Xj zUU>N_zgK6EzE9tM^>_Z_<9Azn9kq_sp4@Ek)zweBrR4rek7>VdJn#226Aoh7T4`uz z-%!Xdrlu$~CqsPThTwm7C8eAK}@S|(* z>RE~j%|CXWyHs@k*bZNZ50*>^yf4@J1Wh`AS!=2|!;Yu`h7TFZd)Pjv9eogQ=E(4^ z`g)|vv}v{s6&oZE)LBRVogo|h?&aPz+2cal0`jkqd~#cUe*Tu_(%UC5-gl+*{fjHd zL&7@dUzTLry1ec>`)f}9kDumWmGpOEebjBWcea!0)R-xIa; zg5uvZIJ~aPE;oP5^gQK}!urxz2}eVZ3&h@A6|huuCa=@;qb(YZS$Tc}=dH?*$3FM@ zo1Pi@ZARCm{OWqAi}xSwk&1YA(?wuaKwz{|!VAyrj$5mY{W%UF+U@7ua(nCRD>3CY zdc|vY`ek#jRLz!k5`Wck;&WV3W!noYeSzl3Zg;&pk`5ZLoI2$Nk0OtG^XL98*Tj{1 zHIHsM^FgS8lc>?FEeUD2>sGzJRk}{*zH^!n`-7&%R2oKFx0h6@5r@3FR(cI zx}?gHN#6>5)4eixWTtMsR`t&)-29^F>B#E83(qfZ_G7S+m^j_iU&%CgPX2SAjd5a4 z9Wg47$Td>apkc`$uXwur9v-PpS!(lD#MftmKW=>%uUeZ&`BBF4(oqQWl?j?a958X&i@Vu$Mt}5lBWi~`0;h7RCC19O*%XC zUhJEHx?tIc-p~BfUYofiguV!hsPx;ikZfBCgYncT~ zWgSkLaTY?q;}qt-Dl1v@S4-01Ua*L5u~QevTPxqG3g-VG&uuIHGEr=jpH;uc)zX4P zm3BHu{O`>#Df-lTU*u-F*B7x@UxcrjefV-;q3c`R2HWdbB_D0HXLo0?h!Du#dVQ7O zTpe{YAIm4ZU4yo7a(4d8$!U3$@xff(LnZgl`7^ZdK3jjvPdbdfBfOY{A@A&(Ei1h~ zT`39D4o)sEUST~m=u2*v%&a)JXX#ddeL{S%795`Cy{B5vExGl_G(Rnk`^}wx^PXOs z7xj#XL1v9uZS1KM^CDAC`Ik?^Ua*#>-u2q^v}lG1@1trfcLu%#nR=)EZ!J$OVLZ^w z+fjRi`9S!a0AYrLP1;9xi!yv@TzWFS|3U36xhg4!f6@$pSiiB`N6P$Zxg1~xDiu6k L{an^LB{Ts5-Cph~ literal 0 HcmV?d00001 diff --git a/doc/api/html/form_156.png b/doc/api/html/form_156.png new file mode 100644 index 0000000000000000000000000000000000000000..fc1b5992dc12a57537844ab2fad1310de26528db GIT binary patch literal 227 zcmeAS@N?(olHy`uVBq!ia0vp^{6H+k!3-ofJCxW0DT4r?5LX~g5{R;w;Rb3DC<*cl zX3+D9&2Q+Rw`S+jOLt#>`M)ZC!+W4ykf)1dNCo5DxsE~&3Ovl>f*WPI|Nmcm&quQM z@Usn;DW6yx=6~VZ<1%}d?y8m5MiT8&TVF00i#-=cX*{Q@~#?P3@XWs&L-?=2c e{b>&4k2AbycQD5N&G-}oa;m4RpUXO@geCx`oI)@F literal 0 HcmV?d00001 diff --git a/doc/api/html/form_157.png b/doc/api/html/form_157.png new file mode 100644 index 0000000000000000000000000000000000000000..e11a2fb5e92601238b1d1aa28f53b30acc727f96 GIT binary patch literal 661 zcmeAS@N?(olHy`uVBq!ia0vp^#Xu~~!3-p)WFG1RQU(D&A+A80BoJjU!wu9RP!i-9 z%%JBHo8QnsZ_Uo5m+rp&@_$wOhW88%Oe~%*jv*C{Z|B~=G*^MA)!xCf;>Mo;x6N1z zn)h$JJlii{!l>CR;^Zl%drW`KpCvK!0!c?d|f(y+3!jh8SKy)yv;Gq3izxmY!h4=J;gQ zoX?r!hi3Ck`gpPSeD>8HqFTApJ9Pq;KTa!l=f1WyHA*tY0F^qU?{5EoOQ>u5Y?%Z%ocig{yU+44w zIq4?LcRDVgx9pGhdes9tm!E1JVf=HlhkxO!OK+NkrX7#xKXBHqbgx--gSd3ft54#_ WIy~*4qA#+55|^i|pUXO@geCy9=O9)9 literal 0 HcmV?d00001 diff --git a/doc/api/html/form_158.png b/doc/api/html/form_158.png new file mode 100644 index 0000000000000000000000000000000000000000..b1e098a954e08a3c4cdf513bf39b80c9b1c7cd5d GIT binary patch literal 694 zcmeAS@N?(olHy`uVBq!ia0vp^9Y8G1!3-p8j&6MbqznRlLR^6~Ng&Ezh8w6spd`pI zm_g4YHou{N-kP09FWr6l<^QVm4euEkm{dJo978G?-^QLSJFLJXBewa*jX(eIhY5Kf zRLrc=Utc67?zZ^iAyI~ZybSkd%kIl(_;81fBbDL7#GO03-%srL%JAWeTE~Y*&jnu} zIi^pyWJSj`};S) z+0W2Ze_cD3;YW%&$5E&61$Y0ff4SU6t|&<@df|(jmi{w|^*3)#>%6_r;%rpwgEKpC zYs}Ve;rA2dYPZ!e5xyxlGcdJ!rR?%TIe}dZ)#l9E8d{*sx=U5Vf4(~BzErJ?lWoK~ zs-7eqxoBxIzw^!F2;F_3^iH}RTI%Du^LAL}s`axP4jjDH|9Hck3dRjzoD_CsYnn7l z%suZCrYhtWTK3J?-+2202BEd0)3i=c6XINXLm?~U?#`|)>yDhib#bf9vnT4F>V4K; z!B138_m@sBTsDD=l^Tvv#rfE8WBGYrcm(fBY}+)auiRSR$ryJ=T#F7KcB!Nh;oVM!<5C=rHf zX>Hm?udXZUG5kr@`6Bcv+mkV2Q{gMS{Tc6$?{oXX_*#bdSIP4!LZH;=>FVdQ&MBb@ E0ENFPURWfXvJa@xh)*tx{%Ef0t^L%)J_7=Z@-MXLE((TaGu3N|MqOtk*-_>^+e@*jJ6MP{3xtvW- zzV1YoQ{FhG9gXhmUGjP1x9%TRy-_vN+f&zr8EAsjm{y?1(}x_<4hwO{_Q{0^HQaGQBS`pi#{ zteE2pf4ut0yXdZ%iOj{B8edX6{wNB+e7%CnBHjFQzzegt6`?yiu7662xNGuq;v1(Y z7G5{!zT-Q&u3Ge3sm9w|^8A`RPR~i^vQYhH^CZ$}tLNTK2j!0LC2Llm?g>7-?mdHS zbkd&{FE(@idn4->aixx{$YYD&qn-Q@V=|LcKhE1PeNFy>^lqcQ-w*RD=}wNswPK zgPuohenbDfH9L=9y8H6W|5fQ5-ZL;Te)M#445?sz8+&@vV+EcZIk$$lAO6?x_K;xY z+-yAE@=e&z03jZawRsC;7$5B4;^4yY;dGgb0xQFhSYxq*=OW?>NPZCit7~7LE6XdN=(7qwRebLAi^7PhtTOUdb82fBR?AHK z9hMf!`rE(cKB^#t}hsc1HM3I;s(RLjC>o9lU=7 z3+G#G3tb~}rsHTf*S60^>GiGx?{gmb_+Iv0JmWi)#Ni#AE5b~+&YP%}&-+BV#d!N; zx%5`U<9)er^&Jm=nU~!0WXIjoDH9bYUo8Jo!sGfT)mP_Odr8~2hfz;vRiDe_V_2PA z-M8U|_tS}=F8AEsv3Y)MM%GG(4V!b%PkfcCR=6_dbN#$p=Iuwh5~QM4gqC}G$DF_W zpCw~gs}XBMe$M~%6NOZxUoQAks?OF>fAAkeMH}~_^~)yR0i`5QS3j3^P6* literal 0 HcmV?d00001 diff --git a/doc/api/html/form_161.png b/doc/api/html/form_161.png new file mode 100644 index 0000000000000000000000000000000000000000..559c1e05e0b2abe06e4bda0a2dac88bc9d827ef0 GIT binary patch literal 1398 zcmb7E`!^GM0RK*t=Zd^3UGpAEx*3;pur)@+Od_w4H(exJ9!=LUH+h74=CMc~Q>L)h zQkX*Sl2_E^5!d@oXYQ`fx&OfZ{P21F@Hyx6( zcu&|rbBt1_q1l1}Sgr`(B2)(+2I1c}1%_t=U>3lLOcF`n<)P)88QOMd0ps3)tg5>K zC1zE{Ok^5?%U1=w^r8NcwoC=UHN9fa)4$WL0Y3-{VSvtcq^-_QAk6Gx+m1__!R5t78$Hk7Z=^6fFG9_n6B zqi{glYy_pD4b#4I92AjO&Y@hk{53t0_fKZGl({PBYgQ3!KE>NiIV#ow5AXL-#HC}& z7QSBcderg!g?CBok&0-DRCl2fgJo%7Qlv3C+B9q(G&y>{MI~#~r2&z`_E-ya>zj<- z%VgGngdsAusWS%?OEbIMLby+L%4MUTGQ-sH6O<;yfd%c%I&>H#e=$huaQxlQb! zBDQV3rMWFKwtUr3YSo64gzD-#jADFMBIYE!`h)il)xkiX!;u<}|Bb@qsIZYAk?6sh zYT~Ql#Vj)H@2Y%f<-QNv1$7^v4_N2vCAC_5M?c`Sz;!ZpJN$x?9o4AO8xE)Cx4k1x z0d5JamJ6@_|-8!q4~IB-pGQF2E?I>!uI3qtShI65y(h zU8THHgD*zVr1K}`N}Nn$m3cW5o7@xM>@&o-1ty#1Q!OI|MaQJR*Cdk#dxCCZ^D^YL z10Nl|7JKQ1q}d00w0oQR0f)8ph`Tx{ZWE^)4V@L4y-6> zpoEl&k}}4KE*V1qZa}uG^}7lgzM1Ng#^s?_kM@}_x4WQAnAezZwc~`AUnJ38==1pE zP&Hd`mvfhqZf7kMN+r7K4qso`d0j9?vJ7BpWNG*!muiDUQUgtNz?H6RtU>DZYTN=pOr) zNSlrODw!l!$-D&b9gY&ksDZJL@RSgojbT@FpGLIdA-}f}7C9g&AtVwQWtfRVSrhS0 wZsIhg)>926`iQ$1!5z~rw`uhM{whX+50>z7I;+%a{9y)qznRlLR^6~Ng&Ezh8w6spd`pI zm_g4YHou{N-kP09FWr6l<^QVm4euEkm?}J7978G?-_AWP^jM3>g`bVNEa&t8dh3pM zUd|`WUgf2U>FxTYv?4mIQ}@7ruD9k5`z6zEzux`KoAtx~4NQO9`qzGYHbp+(ZXK`d zH%<3ytA_tg@eI#Ce7yMbXu>_em?qu>o4H)C3dYAVIKSEJ)Zo8H>;d8pVb&KG85V_M&%ii|{cg8g<-^cnQXZLWF zx_f9|w7ebuc=gft$7?@XrYuW|`4f2Ze#rZ_?|+ZY^zGYPxBZ>(+z>t2ZJUnv`R;uB zx%Sz#@8SF@-_G8vot{#yxNeO>@k+0S9NN<~)@g|3wpfY2>tKJi?Y!4Yl@9NThi@2$ zugjIJh)w;XV%`2?gVzgLJ6BDSZq+XBQ-z+-Hx?fI{(OP)Bs=vl(>(WF>)NQH>w4e% z^Tk-7!q@9W7_D5otO7qY+TL2cS+0Ft6Vd`6{L) zoV}lGu4bP2vx1X~4%>}f3j_2x9ojYY_g;CHso8e&z^UsCZY+4Qj@4+JUGBoCho3HI z{^e7J0s-OGyDr=`;i-ZCwSuJqAy)K&Bho}U}l{%hsM>rK7W3?JIKZ}0W5N)q#a z%=AS-|JLvM)y3@Rb}dcI{iyc3>@m~QHOE9WwXcis?!Gy79^QrXul zI2o)~XlQmxznLo5d)50b?+005yOLFW2N;T074FoWHeaGkWdE*(uPS^spYLnQ{_gjg otz>oPlAAs(KLqXD_b&d+D0`WIbI*Zo`#=fW)78&qol`;+0Qo~!-T(jq literal 0 HcmV?d00001 diff --git a/doc/api/html/form_163.png b/doc/api/html/form_163.png new file mode 100644 index 0000000000000000000000000000000000000000..3716fa9c5f33f2754ab3a3d188e5e4e0c94df05b GIT binary patch literal 948 zcmeAS@N?(olHy`uVBq!ia0vp^mw{N6gBeJ^&d_!OQU(D&A+A80BoJjU!wu9RP!i-9 z%%JBHo8QnsZ_Uo5m+rp&@_$wOhW88%%*viFjv*C{Z|B~gv{j3z#h!(~;?dvx-_$#I z9cT?Z8}oM7t!a{_VkK5DRqinT$!GY_TFg*?>R2V)k7%>MD$4@)d}r9dRfyxk-MUw= zx>mlP=h(Jl^{+`@5{z@#M~5Y*SEk;Ny7_(WHOu5zUR~z< zVx=YttaW^@#K|yq=N3EjRg7OxzD}--u~^c)Y1gY(=74*4oWZ_d1-?#tZ@i54#~suA zC+lKfDeMw`a4=?7=&PiUi4GSnRtYiOH=7^0Li>KlNv%~!^h%`iPKDH%|1M-dRb4MR zvvyVem!-$pw#@FgUiio>e9_TRW3{vQduPlKU)x~4|IzN*m$V$eK1-BPPM$LV`SZ4) zOLhoeW?Yi`SuA+r)*Y8-?9%jcvN&SFQ*EBF7@n~zdXqfc%@;jRv)6k^X3MwH zf_vvSU2ROb9y)ivNd55?hl2rsPpkaQ&|RmpEbp{@Bx|L=^MTyTYL9iHhHK+|;AMqoS<%_@R9DS!8)|u{b&F|gIf?Zp#u`c)fwSGeUw!(lT#>snK^_p!W`tx_K`sMju^3~=m?bqVOPm4X=#*uf&F1F&x6TS1U zJ5O8Wd=h={rps|}%C5?#*Msx&7;Y}%$^5j>zU^zc57(6AQ%|?Q|Ge|<^e21!!z^x2 zl@6ZAS$!Zs_FBR1Z8Z_UMXYx{`J}?I!uLz%gX&CmfAeoQOt$7X=ySK{v@TxtJ!f(M z$DJRF?oPYpU3#{(V^Q{7|0v|^1`pR~Y% z-L*S61%E4B$9y&Rn?LKMV^4jyYiD_0V)&rFn~`zP?d!i>fADTM7Fe)p*Cu;~eHXTB zE%>-olp*fzQxS$8(T784{3<&bx>LLDit_!S*X4H^6~Ra>cmp-I{xhE{4|-!m3*$ zUC)Fv*R!tRF95hP%T74&X5o)*2Y{2^C#z!YvoB5#)m4lpKd820wDgpRYA>(M`mQEc zNo*F~%**4#DF=P$IgaVhV`kZiAD8s%Fs2~^;)Hajlr*jGpD=FWRF0{Vk_E>RZl6*w z3@1%ae9pz(Pzi;17#+j7xX_i;7=k*1*RSs}?v~22*Q#=Jm4H>Hl znnV`%_Na{03uCiDPp9a`3CZCGWAL+(6XW8Orlw&efLrS8t{!(#aK&i!l&t&SU_7)i z^OLxYbKsm#DJH*pzX#YYr`W4<^4@c*H3S!u@lw{}q|z{8T*;-Qw;HO#@O8_jHhxOFa~-4Njd6?^fO6|$#ffyEV8eA5vwSPp}0Y5R%)&oqpaK) z##p3W7B9=v-6O_Af%3rJZq59ul`C;!Kb2$ciz(GHU9=!h3Py^9ALfa84BR~4U~Ks& zJ@;+o3F9jvtiE-Zp_ShGEfgG+ujkQgpmMT#8jej1vv6?2NC}>0npccBW3n-#Mezos zP9>_-p)t15_c6wbQ7Mq_a8r-6U77B^0_g9e1)*EEP$ZuHvPkQ`im~r|Lp?^r%jLD6 zd%|clP0_GX8IYn<-uE&;J059x061>R2sQ7`TDNw6XP6!Gzo(^UxygUs5wf%NA>qvw zfXlPN7GXGwovzi=2;=}ryZ!uXv5|9|Eh*79CymyMah4uzL!f`Bl{&H~mGl^`gv)DM z_^vc>zB>E^#!X(>l->xH50|U%F!W4uxyb*_3;l}OIPd8|(+Q@#0=xGCQ{ zf01&W`Zn8oF91B5;Sd4fJ990CUA6k6Kmd5MrOQomVv8hhG4_{Yq%>wKg^6bR(bmkz z&AJQ#zO^4M25{Wn&hjV|=WC2u=CB3C5SF=1skv+80Pri!*DCpr3IO=W?GLrJ97KDN R6H)*G002ovPDHLkV1mwU8C?JX literal 0 HcmV?d00001 diff --git a/doc/api/html/form_165.png b/doc/api/html/form_165.png new file mode 100644 index 0000000000000000000000000000000000000000..af572849ec4f6738f06839effe3980c4e6d1c232 GIT binary patch literal 1260 zcmV#MV+H_z&VD!?0Q_+?e)9nEQ|5gB8)(D&qpSh{ z7i+`e4*)#d(4J)kfKP2_t?^PcwM(@cxIpo|PeWQsPgOHiT7KA-N%N!3&yJ zZKwKywKxWrc$;GKi)Y<-OHKy?vlNf3bQAB$8Vk2R<=D)cCo`)-Sjf@og0Lq4Z7M7` z13DG1n%0*?GHWxXz%^Y0lk2E+IhMaHfqDhnGem(@v^u^e@q5;IS0V~1^=YQ7AaQQl zejD$|n%SSG*QA(BlJnH5B9d&O{&QI)cg5YqGfDJy01q+$>iCDw=!zE=jrQoxuV_(s z*M`1jEs6MNdX2`GS?Y}LO}ys`1;cFEe75N0pQRn}UaIcGsyq>rNMrSw^^Rn{;~<1E)_VeQL!N7e=sLVel^5$j8^3JTOTC%SBK52A~FU}3KL^OH<>rlCzXiOFo8v;v& zy^Jt{G>#hKG7Is_bc;J9ja$%KOjws!chxw2{Lx^EFcb%r$vQjDk0-VaF@V>56Yrii z>OIQB_$W7VpdKuxWY&U?Wk{)%834}4*Em0-hsA>~d+t*C(S<-s+L`yz>9xzRs~}!O zv?l1870t3d)m0sqqP+l`*U$nr_8?r06Mc)>l>BrM036<%cn`Nh3nEvc(Kcn)OgS$A zd}dWvK^+F*^=hN|?r>dtDcWALGbRA^Om%&J$h{x$bJonp`^(kHtfABZ06wyDZy|T$ zhed!!=dwwfT?a2kGg8YdOaSOvn28YgRP}zm&sihCIPy5{tYLac6F~FYX70ji28|CN z)S&e$XwBt)#sq+#x!~iCt~|y2hP5_oNfrP;wZrCX#Rh;oYrGWg4`2d7&wBApjr$91 WS0UYof=Ckp0000` z2q9QINu{<@KjqP4uSVU|n!_!?9|QPf08bVGew+PDQUL$h`e_3AUDow0!2i>RUnn^B zzbtqI@ToOlmsbn$sqKQNr2K@h&iR`j09V@uuc~iIbxRL$u~Flcr?x*g>IdD?>DzRp zc)gU9bEs~R1rOkCo8WEAqcL}10Wy0)R_0&vtxLN%!K;)(Fn3=83RdoqqtXiRS&_n$ zTp^Hr!fHDN^#xF{wpe(r-ckv9SOqH>-sq2JOB6hdW3p|&0%Z1p+zhLw2|#8guXvzZvw}KbFtVQH1#GPGMVg?XbfQuCcAB|6==~jq8&4;bn+T^0^evla*GpWkF`4eN(usgA^1o~MHsO2Ai%G;~; zzN4@ndA;ZQHS9_YOp;XJ*G`W2p`gewsaDOpxz}o`1wIH9jRfFqgB5RAvAkR`FOjrR za^y>3+cXK>S~iFW{JIo zR^DfAAiLlilDJN~#c%mR@cn1!waL4QTtL1Ab``wagW3h(y>`A2g6}^|7R1SN7QEC_ z9ASLZ%)QmE$L?xiEf(Nv-ok^CPlm@O&vb((^U`azUIc$jQ+{=>QxrT(3LKwT6lpKl zA2a+C*hd+@d+mIq;H94884Vm?($|NpP6Kn~pIS=vI{3QaZ9(zclpTWR zlaclxdJu7>{e7sXa|A_xn>H)ersX_Dkz`gjp&(~!Idj*lna z-VXr^7N_BU;daNqJ|iE2U629p?BEMk025m=54aAyZ!fEx?1qy!r4E4~7JVPBNqmz({H0KT>q k$KU@eWPm$MIGjlR1w~3J?^zNy*8l(j07*qoM6N<$f|DM=V*mgE literal 0 HcmV?d00001 diff --git a/doc/api/html/form_167.png b/doc/api/html/form_167.png new file mode 100644 index 0000000000000000000000000000000000000000..df98a4050375f2ec5004925ac657644fb4febbdd GIT binary patch literal 873 zcmeAS@N?(olHy`uVBq!ia0vp^Q-N55gBeI33G%N7QU(D&A+A80BoJjU!wu9RP!i-9 z%%JBHo8QnsZ_Uo5m+rp&@_$wOhW88%OgB7T978G?-_E^T^hArN#h&Nb1N(dbbHkZ( zn$zd_EJ2hI>i-B+r;#D#!}ql`K1*rYfGAay^{k9`kjcoAXPW`L+f}>SleH@|LzO zIO}}7Y{s04K?{~EKD=;z{^_h$_TN>*gc43=?0Ms0eB6EGy^UJYRnBSCbIO0^cW+I! zRmndhh6^8Q;I=6$K`LO8j=&Zp|aRWws~IY0JExwr-8v`o{sA zxNkq<%5a;L9%`o%{&=d-%lnTrR_@%#=aBl8HO<&(wZs-bIW}SOyOVgIwiO><$bCR| z8}IJl8MDJ!Kegk1RC)D20es@Kp>&49pY@72m+XN12pX%C{a&8aP z+cVozSN_rbTfKqlg~GYhlCnaZmniD*j|g@CY;)dUqcS(rvw=ZBVw0h7!prz?`bH5E zM`gGBsU}aIYSXRQkbhy57ys;2dl&y)d;QSF%<0)7?z0{L-e7)c!^*Y#Vu*7PZ>H?h zZ%>Y7ao64F56wCLO3_en`;iG}CTu!z={m!D39-VI?~M9eA6(k@GVt-F50d36*@jEz zP5Bthymo@u2G3i;8|82D9Gtpo*00@*7QWxRC0nlcPTf5%j_*>*?(kd9KGS$-pV^aC zQ_jjo0yecsY{wgYBohRMROb-%_Vu{$R|`P|v=*?eix~*E`8` m=FgITApRl#CF2L>Ka7ty37In literal 0 HcmV?d00001 diff --git a/doc/api/html/form_168.png b/doc/api/html/form_168.png new file mode 100644 index 0000000000000000000000000000000000000000..e75bfaba80ccd1f8243ca07a1e6f812d26752384 GIT binary patch literal 986 zcmeAS@N?(olHy`uVBq!ia0vp^r+`?BgBeI3Y&G5rqznRlLR^6~Ng&Ezh8w6spd`pI zm_g4YHou{N-kP09FWr6l<^QVm4euEkm_0pR978G?-_CtKX|)AUi~VD5@yFlmZ*R?U zE?|-@%39@DmaS=}$fC0K%A|ixfA|}s4H*8jO3W8Ius(t1NB0j?tz&mhOt0wI?C535+lrYFW zuMo<&e&l(>Tj<}VXIX37RrdenkNv%x>ZIBe9Gaj9$8Q$=zQu=WJJR*OlEf?&Y=I{qj|e zx#HM{?Pnjay0Lb@SN4on&E@MP?%lRC&$s0Z4b(io=F)*ZS2qM&&KB*im@)ShPtL+! z+y8cFPKmtTpC``P{&|6Tea)JiSG)ggjFK7353=IPp-R0Fv~ji1Lme|fvi zYH7Ul`Lv_ESSq(B{XUmcR(haNn=n&ej<`pGPJPt*OwnO*dRr@!2o9Z=X4zPxlG;bl|(`=w4tTLrH1ES`Mr($UX4`X`@sZ|e!0t9pvI zS@2`ILHfNfpW~*kx$bGQIyiKl?(KB}g}c<2oqSo9&hRJp3zPTEihC#G)J4SG7oMi9LrqewK61RgP3{du{%Z=B_or%JubX5Vw!i0>A~*{{tI_q$hz^% zAoWW6Y0(GL4?Z!i7Vqz@*u9)_pP=>B`RaTJ_H+DaaAT5K;1GIx4k(9uy85}Sb4q9e E0Gc4slK=n! literal 0 HcmV?d00001 diff --git a/doc/api/html/form_169.png b/doc/api/html/form_169.png new file mode 100644 index 0000000000000000000000000000000000000000..98b4cb436e73e8686fa61fba97dd859741a9382e GIT binary patch literal 781 zcmeAS@N?(olHy`uVBq!ia0vp^wLmP+!3-n?4L4{5DT4r?5LX~g5{R;w;Rb3DC<*cl zX3+D9&2Q+Rw`S+jOLt#>`M)ZC!+Qn>rW#Kd$B+ufw{ve^x~;&|%D+E;WCG6Ty8T$A4cbi*XocH^|#!n~K2Gv|VoO5sTzmn`n$$JeM+@!x`6@Kwm)(LvB z>PCo1o_yrpm(NOfyDD3~u&}$3IsekTFs2J@eZ|u6Z?|leaX0%WYOCtE`|YgwOQr1n zQ+8ZB^+a<<@TMX#FFvkrTB`IOH4?>=LXuK)BUM%`=X@M;(-fpRbH7{bI)l#sZHznXIk*->#{xNUmI(!IbKcqKX=}gbJu3%Ri{mj z^O_m8*!r&A{veBpP@jK|b=_Xu*Hl$F+gqAPUn#2W{o`F)T4ndJJgf2Tm(Um6^PYyi zK2*M%?PmYU#)Z40i^89zKJ)PiH!Q7+crdv^N3nRRY2@hx3wF=aE`tzO{mv8E{Y>s3%FrR4Der?)b`6|~n{8rQ1qRU<0bl%ajan^QKR-f~}Pkf6o9VYEM@`mvv4FO#qa(T_ykk literal 0 HcmV?d00001 diff --git a/doc/api/html/form_17.png b/doc/api/html/form_17.png new file mode 100644 index 0000000000000000000000000000000000000000..2aeb29e90eac5d518c44138775651b7d117549dc GIT binary patch literal 632 zcmeAS@N?(olHy`uVBq!ia0vp^r9dpj!3-q#RXk<{QU(D&A+A80BoJjU!wu9RP!i-9 z%%JBHo8QnsZ_Uo5m+rp&@_$wOhW88%jL$t?978G?-_Cu%X|V#&(fWozffx7vzn#~x z=;F5RW$#M%ze%&W%p@l~$@vf02mYjU4ENg#8>BQDYa}nWhyL7}7Py(?&EXX<3)vs& zirigWv@3PCpYxu#=Y1QbPOg68*3iG;g=)jy*CK`09GMJPZj>K!6J{&W>jhUtZ;&g~Ho+O&Juyt;a?Mgg1o!oFJb_FuxsX86p# z-gG8RqqQLL_4${tcj>5K{c`w9`*O}=?SJi$QrB#})8e&f^PwAWXRe!n*;hbYUs3cqrF;6c&DH(-dvCqf zea61aEWCd&XVj%TtDi^z+jM67uj}{sF4J}NU-uz<7oYL!sWC>ua)(b}e9x%2cg^lu zKIRR=ahLhS!`B`;wBhuFMH|l4#GlE_Dm@vVcP@L^tKg*=l;FLFvcS)z4*}Q$iB}kTf8C literal 0 HcmV?d00001 diff --git a/doc/api/html/form_170.png b/doc/api/html/form_170.png new file mode 100644 index 0000000000000000000000000000000000000000..32334e701f51e9ed3beb4dcb56b4e93e26c18141 GIT binary patch literal 1078 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 U{=d2)36$eKUHx3vIVCg!09`xF=Kufz literal 0 HcmV?d00001 diff --git a/doc/api/html/form_174.png b/doc/api/html/form_174.png new file mode 100644 index 0000000000000000000000000000000000000000..c78a71dd586cd2d299b3ded4f2d994f3d91bf50c GIT binary patch literal 1042 zcmeAS@N?(olHy`uVBq!ia0vp^FMwE_gBeJgZT{Q_qznRlLR^6~Ng&Ezh8w6spd`pI zm_g4YHou{N-kP09FWr6l<^QVm4euEkm>WG^978G?-^RYq`=Z4o^R6YP;{SHritX0en-_J4~u>Q8q`M<>X#ud4oey{&NI~G38P)C@-X7le{w>;$wwR@}9|M?>o z;Jpc0NRx$R9 zQqxwuM6)n#`Cc|VQSr{Yd;F<}YE}E^XB6LW_}ss7Mz-|do{XL;EAnE^|K__afBbmD ziq$KbFWj5F;@s<9rCYcEzA{DZ%!Am#!k&}=vWosiOGxRoi6lWw9(Ez^={KVcPYWp z%R1~cZ4+0zs=qe+s}wzZXW2rA*_z)r-L9-iy7l+;y1wK^0=*EV|x74ViVnS?{bUZ8kE1v7U~dQC*Z4D zny;@fTKjRA!nO@wN9-@YV88Gxw)5A^8oi{Fi>D^Jh1kV+oVvAl*Sn59k!x?3JD+WS z7IiIqnX~bbstwc6gD(SHq2t`qf_1 zZr97U%3Lo_*go~>H7PS?QH?ED3VGKu8z()>tj%BeNM5i- zg8JHYx6^6Yf2PQrE%s`f!m-1m`cgY*qej)V12S@6{Wxvi zJ+?bm7Jk#8DlhuJVBwse;y5X52Af&EB>{FBPfJ@{l>O(D&# zTZFHk^!l_Y`ccsdZicw6iN?EFLtU5}ynoZB%C!@c!r~wN6uQXw z#e<3A&y<}&=@)TfM>)efy6$zmJiW)#VE$Hgk!{AVZOjZm=4~`&I$*3_zB|z{HOr6v zr31r?mtQS3 z;YgX!q}8`q&s`fey}C_BVdc_kKg1vCGt@~f<9xu&b0EKwmmyy1nuV{1TtdeL;{)#< zV*d5MKE{5{cz*ESM|WT7MV@2&^S)vS+m04a?k%y(c9wYuKJS(Gt)AD;&v5_H)WxL@ zit|?LFsI!UnNWV_cNxpiKBr6nnC88Iv-eZ)ujA*cEUs~Q*tv})of&JavTrh4Bu2fyJX_g&+11CJHgIjfCwe*R z)V6i6s}B9+W3F&D511TnZ1^O(c*gu1pDw@rH{5oU3N_>SB_41nADXZ{HU7tqQ|e+( zEw`(ez5jUcH*;B`{O)vncN2LbAMq2h`KOgNebvKa@BWPFs;OSE@p-Vy4Y`}$vI*bA z>~{2~mdG`EE7;j&;JF?XMTS;*=@ z?jJAa`v&W7?b}<<5SRG)?-@g%g#Wir9m?6PAF6OUBks1*?F}ctrks*_;;^MIvN_gE zXw~X!oh;u)(Z?U3_5Pz38k@JtVDo=6n=c<%nZ%^-kR&sWaK=DqB9^4;4?rMLF`guPui?@d`k(8n32lRn3)S`-$|$=SVHtIZ-q-gBab znGxTw0}{(cA6R=VwY$6S`@37qSF>GsU#@=1E;H+RI(Pn|7?t(iA9Kqkwn!eheq!?O z*!xoa^TYF|r4;ToohTwv+4=UOetFHA-5R}bjEg_74`ut&Kf}IfrOn9}7K=k?&Nmwh zxJ=$1xal$Thvp5-X4t(<_;{zUx=u%a`qRqw?wURyj(_v~Y50WkpMj5gl{@pFp9Y3K h>~;s@8UEP(VV1if74_kcZXqcDdb;|#taD0e0swtG(q;ev literal 0 HcmV?d00001 diff --git a/doc/api/html/form_176.png b/doc/api/html/form_176.png new file mode 100644 index 0000000000000000000000000000000000000000..20058dc54d07835bca3d4a6324381c30bd852655 GIT binary patch literal 568 zcmeAS@N?(olHy`uVBq!ia0vp^5kM@#!3-olg->MxDT4r?5LX~g5{R;w;Rb3DC<*cl zX3+D9&2Q+Rw`S+jOLt#>`M)ZC!+Qn>#^s(ajv*C{Z|C0L)~vwevR&b0(8T}$Z#y#_ zto~hd?bNFq5oagxaMrT^crLNDX7)4l*Gg{~-q_c^VBB{=_h;%;ojOy=L)+4ldp-7l z+of@UdD$HQMLKoHvo&_ztfGzxUY@(_DX1$?jFC`P!_{ zv;CBc6!_Y!e#n@yJm~s&C(~LwOMZTqy!j)${BEfOj72_a`_ooG>XdlUaWXu5@ArRv zzZMw$@mr(S)luW@S*5IZH8d%F^941A9fudISvjgo&)=4^uB&V|`M)ZC!+W6IW=|K#kP61Pv5u1tEARvxFtT&~`M*6|TerX? zU4O4p1zYr{mcL94KlELg8EjnYne@63?qf-~oAl(y1g#0>Dl5%nJG1`YxbpXI{7g^1 z&3Q^&G?w3Hue!^(E@efKkn^%hzgZ6+%hAr*{oW1}Y>QQ*j77BW%0_kUaWF^NAj zYeU|qd#x?ZdC~Taf#Jh--(8Fc_`iMSoN?#K{7-nE`OQ>v5)eFF7V#ynYL(I2yfUeDp+|Os=370lv^_5^65V*~ sdUJk)Pe<0=h;+UKyXSplIPm_vxN;op_8Cm=mY}foboFyt=akR{06kWdMgRZ+ literal 0 HcmV?d00001 diff --git a/doc/api/html/form_18.png b/doc/api/html/form_18.png new file mode 100644 index 0000000000000000000000000000000000000000..6885843dc429cd7a707ec8664fee2f37e42a2c36 GIT binary patch literal 534 zcmeAS@N?(olHy`uVBq!ia0vp^p+GFo!3-pQcYo#wQU(D&A+A80BoJjU!wu9RP!i-9 z%%JBHo8QnsZ_Uo5m+rp&@_$wOhW88%jIEw7jv*C{Z|9yadu+hbW*>WS`-{K#%O+^u zE|M<4VK_~h~X*jniW z`+u}bt@<@o}j@L-?OhkF>%g>)Us+PW~G3VEc-;81s_{##ef7_~(zw^|^%wK02e)VxMoUd6Bb!E$!FFw&)Hty_+(o>tzGUDF`FUFKH0 zJxBV-w;YSE>0HXO&Rr{Z)q3aoHHxcBr#{{jssC(kC~wcUt;%uxT4jTlhhEp4keMnw z_0<`>i?L#d+orFRuHL<)Z-dyM316RS@l4A1m)voqa^@AAF5#ogKGjJu{(E-vbdAC@ tm9li*NOj9!LJy9wQ!1|7s?#w4r@Va&*Vmcf6p}!(>*?y}vd$@?2>>JivY@y9}-yMs%Q6&p?-~bTR`#JmtP+nsBBF0a-Mmr zB4~qB@PxAYde>4bZZSXbI`ts^?|k<;_fALNPUF3QM9BR2an=u^zH7H0w~}bP7_?!> zg6|J=YBHtIo?dNQwEzr1L=qExfS#VA=L z^~{BLGP}PCH@}Zr6!tx<{L)=v@$DMCoWuH^0pCrztBPJ7sdQ$vxpwyPnciLf@8h!c zw(y#WEo`ghkZAt;N9^~Upo^b89rcdM9k{My`RrYa%&KX%A&(0s+HOYaTsyd|$K$Vc uyW#=gufOcpS~b)w$A1nKV7Onkua4nIp3ud^->yCZrBY8)|cuz`_D{Os&#Yi?%K z_E+x|j6U5l=l62xHk!Yh`=(;ixw7npS7EOMl}tp79e+gLU9J}S{l&SjvyN`kDVr}4 zm2P`6A|-UM%qy{p*|{#Uj?6r1okb6u%mgaeC~B8ay|+g9aIxASmnk6uUz~MrFX2z0 zC$wqhNybN0n%+vV*v(tLI!ob8%KrR{+eVziCqoW07;b!fw>bKgwQ0Xqsit#5^aabO z(yor2pNymzxk}90DN?Tar*`(dOilT!xV@*Z`fjv&^zWdR$7R#~ef=u7*B_jI$ns$C z%iY0KAI_SVT-3Ijmod)QDm_wVQWXU87eD+}^f4eG}`C^@3an_B*>aDEhEf9NwbOTfk~R*E6_k7DHc!&82NT z2UO2+mh!Cov+uSIgWVC%t+NvgjPBnm@Spql#H;l#^Mj-xi8LJk=k-N$Yp0zX`aO>g;2ZI9&DqFT-5ZWyZn!Larfux9nbOb9-g=Dy!3dRx9#yiskvE zQ`awg>mxMlZq(NGc1*{A{jrMY6V%8QmlYG=v~z~SBMVN<<}V$XvajlBN1bHxH^~A|2cD$J>#q{IjSlF_ z`HQcbr%?OWy!(~2xbCs?;L@`u2W%Iyge{HA2)F-QD!ehN^^9F+@4*vnJDdu(imhs^ z?|!YlrsBDpez>sSExv@7kZWRnohxU(SghZ&{+ZMPj;+(PFNQ=epIPK~+dlD~&i`ef i80J5I#4r26|06U1U!E`1_GOEJl7XkIpUXO@geCyb66pB= literal 0 HcmV?d00001 diff --git a/doc/api/html/form_21.png b/doc/api/html/form_21.png new file mode 100644 index 0000000000000000000000000000000000000000..ec30a86e7e284caf43e61f6ffaf8dad591b8e9c2 GIT binary patch literal 794 zcmeAS@N?(olHy`uVBq!ia0vp^lYv;AgBeI#NcFx1QU(D&A+A80BoJjU!wu9RP!i-9 z%%JBHo8QnsZ_Uo5m+rp&@_$wOhW88%Or4%Cjv*C{Z|B~=G~0lu#eRNn-~0dDrsgQ9 z@izWnH8)ezOxR&s_$9A>tUvf0+B-B=8}@T7bm(NL7dWQBtbWS_w}$G9hVvix`ZvfQ zytOs{eYbxq(+<}khdLjsFIlAG^zPj&%bl)u(|8KljTvGN+MOv~yhY)==yK1md*@j) z*Btn9H>-r9|G^~(tsQsPmHTZzVQs_xQAXkbC;#3pvAV$%&TM}@H&`atBFpH^qP1#0 zGC>DC1k9dyB;7WCnxS&cxzEa@=iAyyM!Sa_Hm=<9OM&O!8hwwNY( zZI(A@*6r|}u4=tc?Yiz~U%!3k`|%n5W$`~AZ4p~k_2HMX-n`U+lc}QH_;ntInch~q zy2jK}cGcFx{bozwnO(fPtA6&L*|XzvKBq{S@CVf{z8lqfH0#mU_sF-)7b~FXjz51*c9r)0vjAIX}qr z`s`dYyXeX9`l_uXCx<^ymP|hTe_e9J{SBqB4VAM~muy+6`r_A_nwt!F9L|eq`YG_< zdJ^>G)6+i&&tq3dz11m?71q1@dlTah$G5K*U0QodaDQM5#|O!E_AT3e|Ag`UUb?VM zy1_ccZ_n{B|er^a&rgzxpYZ}N#` zXqL=gR(eUvZ|M=wbKh?M5g}eOvD|BZeB&Rq_lC`fa6Vsth~aSsIEbFgDn? zN%5RzVc4$0@PSX1Av$82Oe=T1p+Ufs)Mct*PdVlur;GBE@R_%`&OC^4BGUOE| zo8Fbn{GqV@{?p|VX6y{*9OegqIoz4q7pAXs|LGJjuS8+4rFV`@+2k*HC2B#~ocyZ` zS1#IdsUnNp5at8k4SKS(NwY~kX9sloCpBWXo8A1Fl z7N7ao`<$ssney|?3%N&KW}osVZ-}v<^+%$4BBxEdvUQ@_?cv&)lRh&%kUVo$+w$5HmwyK~dE`Gx zmf5dgXZL2haz{q>kwR62sRx6^wxz7FR=>J;((U&Lw*0)m>9_SXr4tvIYshIgY=3h2 zNvlu!>Z@u06{PsyrXDfkpEgPM(O1>gQDM_I9bQ)C=_6FDaev{v(wtCD-k(d1RCo@# zYpUJidYv)<&c^eeuOfs`C~2sw|BIF7{J&i)NHU+u^?mQ{(+$Q-!?wfdrmetspx zjw2s7u3P*2Y1Nx!o1VCoDzh>aa20FVtWSNu`J}RWxHjVhwmdGkYJCQo1+q&zK76TM z!oYCuf!~zpVyPG2PrNdB+FFJ;@~5xpsL!qL*qu?v@WEWrDE^vIN5J>L91Q#TkH(8= nFx0SWJbACq$?%_%VSktWgasnDtpD5UK{>|L)z4*}Q$iB}PdI=# literal 0 HcmV?d00001 diff --git a/doc/api/html/form_23.png b/doc/api/html/form_23.png new file mode 100644 index 0000000000000000000000000000000000000000..751c07892f687ba474616209fa8fb6f1835f9e9b GIT binary patch literal 772 zcmeAS@N?(olHy`uVBq!ia0vp^{Xi_v!3-o>JKlge1_3@Hu0Wb35M?jJ4b&h|666=m zpyv^r-_SpA&Ca8j?!Nr;e^vU1_Y4e7#hxyXAr*{o=f3Q_ZN<}SuY2v;+rRg>Ey?j+ zQaC52i|PBK6$_JZOmLBVSI_v5@qz9mrVsxc?=t*Tme?=3Al{I9Py1Ge^9GE67U-0QD->kVWwYk-1IX(yLIP5o*(eb?+|7Kuj~W(PSG zT3LF0I)2CVgJsp;>J^MT6pp5-{ND80(CGBRic(a?|bwTCKZ%e1-nc5{Cj%w{L zc8T>dKDE`dVej;v+pj&nWoDq0S~KhaW5a--Px|8sDWN>AP9(z`UqkbUASoxeV31A{H*PZQai>wEBJ zr%chr_IYDXJ)78&qol`;+0Elo-LjV8( literal 0 HcmV?d00001 diff --git a/doc/api/html/form_24.png b/doc/api/html/form_24.png new file mode 100644 index 0000000000000000000000000000000000000000..65d1e82b809a01647731be738e4e662b76022315 GIT binary patch literal 863 zcmeAS@N?(olHy`uVBq!ia0vp^Gk{o%gBeKHq@*4IQU(D&A+A80BoJjU!wu9RP!i-9 z%%JBHo8QnsZ_Uo5m+rp&@_$wOhW88%Oy@jZ978G?-_DILdTqhu!hc^x)9d&Bw+stJ zUjLdobJnUSk2l@fCN$B3Iiq1eLp|dM`3vC<@f}f&b+UV;86OyP9WYK||6srP=qBbG zH|B~yz7Kr+R37GEe4GC!X0PZWh94bLjPsQB81e)Dl>J(HUwPZ^_g-&w|9)IJBX8yM z`R|3Ab@zyzPhGm*^QXj}XBJETc${Irv-ruS(~AH0UEj4PYU7?GQ605cZd4c5`mR|f z;H3R^b@(Zz|7WDaYUZBbGv(EdJ@!j-j%0QEp51aQdY*pFYAu%rb{@;e-#soJyk_j! zmr^MC^ngy-t!L|;EnMZ=g)YzCoD%1$!dgg80(}}6F z)0f_BOG}mQP)ty9#i_DeRAI}gdPFqvneQ{1# z^u#XvCeNRnrfh$^^0$iElPxZh)ms_Uw!Ks9o^0PAvsXzi@z%MRa|JCkW|_IqIx0Ei z{`>aK9UkX9w&n_XKMH&$b$MFJ=`CNEPq~t}^|z1at@q)q*Is7Wl(Y&4cjr#XvSg{t zdU#Fn^-|T|85^Rm?7ucY)@Wn2eb+yAVaaJT3YN!gnU(ZC<;}U$G@s6;uQ|3jtM%2) z?45jL>u1*{^CVkV?v476rMgbSWoMi8zS#y{(7TgflQ=p1@VWEb8OlE>w-r5|YOeUi zjj#I#=k7IEn!&Kj$oEsc5SUU4GTy^X$iG`_0cb+S?s`7xDdug;Iv+ zim`M)ZC!+Qn>##5dyjv*C{Z|B}DT5TZU(l53}a^e5~x4&={ z%#jYC!~Xl1;?hOjoELKLD#tPYv-rgILGB0d1KSg#4|qFN^SKXPe#mrypJUZ`h6=l1 z%Dc1cB=7zUyl30-?)nv(2ks|6Mt$b}YZ|tEhPMva?dLPf6pzKkZgOYnpYZq+$6m+R zhD+6&%_h0%8k={`xNa$Sb^n?lc_l1sKI#XHP2BV|^jePhPCot*`m^SpiWj+`7xSmG zPQ`z}!KIifL3!(bp18NI-f}mbGB@v~e=hq6ZkOqs!|w)f;%c>=_;k+;hW%-;qH|)8df4uL5yQHJ|D^lg ztv6Qwx;=+s9^>T$OMdg(UtDlGdq+&f<fcydWk1RYt^}MU} PKuN^Y)z4*}Q$iB}LInu6 literal 0 HcmV?d00001 diff --git a/doc/api/html/form_26.png b/doc/api/html/form_26.png new file mode 100644 index 0000000000000000000000000000000000000000..a82c461c453738b9e6ebc66669e7c107e117d0ea GIT binary patch literal 590 zcmeAS@N?(olHy`uVBq!ia0vp^xj-z=!3-qL<{KUcQU(D&A+A80BoJjU!wu9RP!i-9 z%%JBHo8QnsZ_Uo5m+rp&@_$wOhW88%jC(y@978G?-_E^#X^8?)i#%ITE=8kJG z&b+zz=FjC>+1-m+Steh|{2=zg-XV^0AM1X`8t$D;HLMGt=rV2B;(PE}AhnQTyOuI@ zja+u!^lj76GSx7|n&jH2$~<5z-Fl5ZU$J#grme!>pCOkQ-ikS@#&B=JvK+?eBHgBj zS2jrNpS-KOqN>8sP9LwLCZNm3spE{wyn+rYsgZ^Kxr<6%Th{b62sO_2Ls2 zXQl_~l}>jrS;72SE$xm~R&w7Q`(&%rj{SNiXWJ#ua8$l1ihgzF!iTiHY1eKoeaG0d zac|Y;&inVx_sY*d=a?*;Y{@j!jNzWsVSeB6Jyoy!m)IKbe5Y2PA1xa5#y#h}q1Swo zdCJln7ya)|^6~n1#RQ7x)8`&h;0X>yIPH-7uE%=hcLAKUw8 zdQ=LR^Kw^QaqSF#`ZRR*s^5jdnqFBE+&|B3n>k;+Gq0}x`CpNIAI}{2&BpoWrFBJI zA6hmPYu)te?%rl=y3BW%#b@0u>)JKHemP#k^v8CJd1&31-LFq@9^gM%VsQD})cC#^ xj*@!f*Gj_q4m`h@bglltB(J?%><{iA(|4T7vq1jo%srq~;pyt_JV^1c87 literal 0 HcmV?d00001 diff --git a/doc/api/html/form_27.png b/doc/api/html/form_27.png new file mode 100644 index 0000000000000000000000000000000000000000..70eda2fcc98002c588b2b67c13e414a03078a9f2 GIT binary patch literal 628 zcmeAS@N?(olHy`uVBq!ia0vp^`M)ZC!+Qn>#>bv6jv*C{Z)0!vJyGD%@sk!h^#A``kta&C zQo^EAej&%3m-<|pC8mt#$Lwc3Zd>GMvOzCUEc_iWvL@8XvWb6DmVvbG*=_o_O#BW%KqPiZ-i z_JuvV>-FJ?+2@e_iIP)%R)=xE+{bfCHE%5GchyS7TE zeY9=OG?LI?C6!v3rZb`Q%m2mCm+>;_`=`lT_+5+?+q(DrFO%MDzpeyx+1xlE|1NdC zPklx5=Jd?4q)u~P#)kWhHy0W>&7RH9#Q31p{sZYd^p@zef mW50Xw6_xYhObmaRe=vP~%eyUN*`%AGwBzaO=d#Wzp$P!Xrv=vl literal 0 HcmV?d00001 diff --git a/doc/api/html/form_28.png b/doc/api/html/form_28.png new file mode 100644 index 0000000000000000000000000000000000000000..0af97768e41c44ae499bd2d88a50175f798e6bfa GIT binary patch literal 716 zcmeAS@N?(olHy`uVBq!ia0vp^-9RkG!3-of{EgQJQU(D&A+A80BoJjU!wu9RP!i-9 z%%JBHo8QnsZ_Uo5m+rp&@_$wOhW88%OxB(*jv*C{Z|A;Vx7dKE#s0aR!jr%E%jRL(VhxukTw{G8d1MJof!rl+J(w;}zezf7kiTO}!KB!l7mKGpP!;#~%dg@6kh|wmQt^qK@x60uuFVX}@`$q9 z+`8h}yn}jnX>+$!Z2uY_6XTTenbFSep4V@#1JNpLuU|{MmSMI;%BR$LM(q3csVj_b z9dotWHp{|$jpf;o=0^ETr@SuBbhZtQjjJ~e|E;XEnl1R~^(Pa|BBxe9t`7Fnod4jM zU$IZ(ruS=CY&)uUQ29&Jl?AoC0v>lpkM6k9%Uu4~I=idlN;>#nU<(@Rrq4_~`B zHS25a$+dA-Wq*zBC+JoFD>)qHrK$grPjUP1S6SCi9Y6J85o_S4ytX+0c+a!izN<_- z>^{0LpOVaQN3lY1;_`y+pTAqjUOW3MX7kC?%$&pT<`&IWTz780+j-%9>-kcbrT((} zy=`K$Idn9j@2hH*?=`o= zFX-7)9t5yeZ zSG+Z6h;P2V(fG9c{*q#bIc<0QkLiS+-+cRbP*WA_1Ct$ADTcRR<)>cQ9Qxh(K&Qkp d)*tR4*x9;;k8J+fy%UrsJzf1=);T3K0RY?SJxTxo literal 0 HcmV?d00001 diff --git a/doc/api/html/form_29.png b/doc/api/html/form_29.png new file mode 100644 index 0000000000000000000000000000000000000000..393275b5a72360cbd2bcbce60f28d1aa2587802b GIT binary patch literal 717 zcmeAS@N?(olHy`uVBq!ia0vp^T|g|w!3-qh?M+01ltF+`h%1mL2}Ie;a04|6lmz(& zGw6B5<~Q`uTeI`%rMoY`{9l#6;XMNblZ~f~V@L(#+qpLJ*C}0a_uHf4UmQx?;Pd>FhgvYQ(JE!4)L$Q|HFNwSB9zIxfWOY#Ogt`}R z+8g?=`JTGQdF&PY{Pf(;JBxYkH8RhrGVN*m_Vmu9*9(kSWtD7=?EbFdbJzN{3nI;kVaIrxfwr zUVglK|9tPrMX%kiOxF1mvZ^#{wNhcW>V|aV(%+@;_u3!ZCw+O_{(RSrlEPB0$8)?k zWxxESJXPavR2=_pJ^7~_?6sFpsm|fO`g7U#P@|_RZ(oFz?3SASG)sO(%Z)`>f9;Cm zZ;*bmVoFf^hF{r#N`j{vN{eS-*|_YQv%RHtN8eh{TRo-%uTp;dCfl^6#Q#Y5c-f+P zKz2$;VsXJ$^#eSo)_q>n(zs{a+jCsO6FsHxZ@YGVdb{qY*7!C~4SU(YCM5^f_&pZV zOkTV0S8g!7g^T~SUt9(KXD_*MB{4r+eC@qer?r-umHg5zj{2W6&dw}}u3Y$-!M@qz z%c?2XTE~ncCHpdGn`^dhar<}n(n&h+yVneZe^_OoT=r49mcgQJRdL{yAHUCJ&P-Zu{+(e5)5BYO b413z^lU0QeEbp3H3QClou6{1-oD!M`M)ZC!+Qn>#$BE+jv*C{Z|C0Kv{*r)#s1&H6?^{Qe%B!Q z@QBK_yvkMI4sG&fX-lh$+QIt6RD!oax#WT!5TP_;PMZVB*TBHc#$|uB;!HHhQr$CZK5OlmT|F+n>)z%5jzO8NEAYkERZBZ({=BejF^AQO z(?J?Ob;p*MnVL!+-J^55(EEm%Ds!;*?un<*KaJFV7?FA>t$&wXL%0do^S$U#eLo0?PZ> ze0eirx8Ju^=`Eg1qd1p&vqzf7|Ll5N{ypf&rkT>)Js+%>of`G*>Y}MP&es@N9*94@ wG-C6&cZHvCTHW;j#_%J(VtQU0!;kon>;cT&_Fuymd;ld0Pgg&ebxsLQ05Kf>F#rGn literal 0 HcmV?d00001 diff --git a/doc/api/html/form_30.png b/doc/api/html/form_30.png new file mode 100644 index 0000000000000000000000000000000000000000..51f3a0e1dcdd6262fada0c69640033840704489c GIT binary patch literal 687 zcmeAS@N?(olHy`uVBq!ia0vp^O+YNc!3-oB6|TMlQU(D&A+A80BoJjU!wu9RP!i-9 z%%JBHo8QnsZ_Uo5m+rp&@_$wOhW88%Omdzsjv*C{Z)0yyTCE_E^NzXe&;R@LVq&<{ zFU;BJn88rc*{#8Jz`Rf?(eJ)z>v@+~E>5LBt>ujztPKAo)rC&jKR4OaF2iUXK7ES$ zaghnPm8>-OS+uPalfJrQd8JvP1sB8hf=i!XHw4{O@T(Np%b#trj6?XUN&2THYQays zm-_DFo>CFp-!)T=Y;K41oY8WezOwZ4E%oM#(gO;P*3Ke~GIH@=n#(OXKAH34$cySzi8PHufMZwMY z+f%1Iw*nHk+z-w>(a>RZV}q7Er)1f>PHpzPCy&@Xxp$Z;v90Qds`}&`g}TM}OqW^S zsnp2WUFq${`{w`D2iF!~JosiE_nHk4c(!ly`W)5!>v*N`WYddL=U%pz+I>oxe0p&) z{|&vw#gBw;i$>P0+@N{w$G-_|4f7vsBrc!y!d%~AYDAA?|BLf?m>3FLybR9meDrg3 zaOTpI?b&f_R~9_ZT`Oc#V!ZJ7AE&1gjb~L3%E(9ZGR!|>C~!VRRps84;3;$Ng&HyZ skx{$8(zuM%Jc#jtDW5AR!+-XF48q<5Pkw~xZUQAcPgg&ebxsLQ0HEs@Qvd(} literal 0 HcmV?d00001 diff --git a/doc/api/html/form_31.png b/doc/api/html/form_31.png new file mode 100644 index 0000000000000000000000000000000000000000..42ff9edbe38373a51c467f0d952b32a64a47609a GIT binary patch literal 795 zcmeAS@N?(olHy`uVBq!ia0vp^-9RkG!3-of{EgQJQU(D&A+A80BoJjU!wu9RP!i-9 z%%JBHo8QnsZ_Uo5m+rp&@_$wOhW88%OkJKXjv*C{Z|A=5TWrA7y8n)_$BEzj-&zPn zWi)DT)_$9@^wjdDY;%%-tNi2s@H>I$zu$$FhqTb&{1z}0O1R^fnL*shX$fvh&Vr>31+t8Ds0=X6&Hi+Aj* zqg&b{c4pKweA}S(_#dOifhCs|KgW38yb+{+vi@9Un*COxom0Jq!bM*hFO1CSmstMD zf9aI9SEIZ&Q`^PvRK7RA#y$CtMRDfWRk5Dj;>IlBPc1!eVVk(-`@Q<+xWwmiUUO5g zRz7X@4sWg45@4}{dxPQk6JNg`*_0S6@nK7^wN$3zhb>y(PY$kV^}fs%RR2&YKhYsZ>ui5r4WCvC9@!HO=raE z=h8b*Z+rg#(B|E))32RasB_xZO0RPJ+O5l$-T7p#pR>gC?>*(xr%xZfy7Ts6=?nc5 zy|{as+jiY%;0UdJ+ZFke@s8t%OZ&T%cd~D{>^r@RTYSCxk$LZyaauZ^VOQ5bAUNfm zpPJAC!>WRt{+}jv8cq{=`okpAFR^g@@mXx`%MKPLzhbuDEm2ncB)7>sd-A;7(O>jf zXQ~*<2P_uxxNmX1arwyydtbe;{;*E`CYlX_Pm|Sw1fNovDKRY#P$>$+WiSx z#Lzxrt^QNC9|GRJH7S28|1q$CSl6rB5N)9NuT+cSzvw=OXQIL&t5B4UTa9Pw~Wu4S7Pi{qp@I+l+dYoI#t-73-I=i%YaTm1s+%7f_vGLNBUmfj# zYI|iIXJF`-Fy#$JhO<)cZ|mOH@J~+i7=wP{mq0Jg_=`5|f!yC6+?`t}86y*Tc~jo|9Spyx&MW^LqcQ2) zJ4TslKA*!ZPCn!h^NhWb)s``%So^?K??o@{rNrwGvTn9LkeDgfe(2lua>>xACzd7M zyuDK@CZ?#M*jGw1SWP`Q!B^_UjtcSDPlB%M|B`#a7E^ppg!4_|L2%K zlWP6i6f3az!R>W%nRlb(ZP&k>`YP4eJwGXXMWRHB-faJu>8qlqWUW#2s@q-7)c(|T zam?ApDW8_KAGhpHDRDoXe(l>fX@;ve+#SRZPpq6{w3!ZZ8)4h zo7;B9>VKQK0`2qrZaMGU-}&<0i)F9wT>gD>d9Lf?Oe4|qLeqxgGewfY^S9Wx{XHOE z_4AFfPwY{lXY!|9`Fo2*gQc5gs&9NKd1Rb@dWYpbyBgb)JxqIg;|{0Wscz9^DUeq? ix;y#9`dX$x;y;*;?~1VX?ygx4O3t3HelF{r5}E*T8&J;x literal 0 HcmV?d00001 diff --git a/doc/api/html/form_33.png b/doc/api/html/form_33.png new file mode 100644 index 0000000000000000000000000000000000000000..9bd74be0a488616ac75a890ae3ed6a541a36a2fd GIT binary patch literal 743 zcmeAS@N?(olHy`uVBq!ia0vp^T|g|s!3-pYzE70{QU(D&A+A80BoJjU!wu9RP!i-9 z%%JBHo8QnsZ_Uo5m+rp&@_$wOhW88%Oktibjv*C{Z|9zz_F93*MPI?q|NsB({+s5q zlqZ${%C+i#7GP<}7CdQH0`~{@2H_`y50oFIH}pHKW7yBHS=q<%pFKWGkN1J?k|3@F z+$_51m{8-YS}8dGab%#^#7Dy856oewZVL2MZ@(OOm>SC#{U_EaB|4jZ|tc#6DgmET;N(%bk^K-^-4j+k4JabLs17O*YwWC2OKn zQy*~v#Gj_ASdbiftM{{XRLhS9R*T3Fr=-%);YG>wa{rqjJP7>$K zl}~ct&a}^eAD#V{Cp~+0-oDhMD|&XHEp?Gs|9bKI8iv^Y8Ue3Ze_C9A75Chf`*Pz{ z*Sk>#(xMxEV-2(}vPwryiV09$wzu}{lxYidllO+DP5pcEtnJh;`Q>j?I>oLpsJa?+ zWac6-v6OW;Q~wH2`?W9EjLCZHrNWQ4Q#Z(MWi0<)pwlQZhizNX6yMM!&T`G_>3go1 zi~X}@srU5S|0ehQ?DqE|IeYidXWr*I`-`RT%io9PAF%#Wc>CzV^pN%xCZD1cUh9lj zyC2G3IZr6-QHJ~fpSsKijgb{991l8Hs0D59jB-6K=#;U@zGLI!ZP6mj_J?ZyeAUNj zaeP%`LvRm2XLPQ6tIbL~jjczY9-8r`jrE6Rn3lNa*=I-pJ&tZHIsSN+*yej@oVC8P zU+1{+eby5t9`lsF$N09zt<0EfV$QI?CYiV@L(#+qpLJAFOZQ%uvsmvt<(FKO43Cj31UK&h_Pdu-$;~f%1)D zU!Q{~lo2*JJAy*uFFT*6iqsrb>KWh`H5d*2RLsr zGT0yTsxJ_IV13K8U%tEc@%miWhV2`JEHgzkHD&#|3{BGZ=>@6zx_`X+bLX@*$22}J z>|3s-)!(~MMc!V~$>!xq*iej9X@abR8jnMwe zdHciEXPF*)wnKc&DuuQ4b_E$)an>52zx8|ZgQ7oT4_K4y=RN<)^?JLb%f7Jw!&4>7 zwAS@K*cIk9aYs;KQ}d|{k5c)})^>HoB>XmON&ma!+I4Hu+nbD5SS-4hVk*Cap*{6m zK)jXXrJD+lpSJ9uF7xjtlh><*Va6mx0z+8Yvp9Tme{Gi zLe6}v#)6Dn3*8Bs{OtIdo1VLuYckk$|*j2yU-!bpuHCOv|`t0m)DKj73 zebl2dd#z$@@`hvAyYE`>jWk_ybz9!siQVt+m~HOQwP^WRwR}_Ml)9wguAttlE}BQg zcQL$oc+;fUQ2atRyfav8>WjR#~9a-SIM(eJL1q6@0A%@OV3I-1kZS}T}j6J#i`_rfgd0CmPy2E`81ecG%k4==(M|% o!LGgAU)=hD^bdPE#(%7T*ehlUXZc%RJ`76Hp00i_>zopr0HYsQPyhe` literal 0 HcmV?d00001 diff --git a/doc/api/html/form_35.png b/doc/api/html/form_35.png new file mode 100644 index 0000000000000000000000000000000000000000..7428bb930a1fa9a30360b18de1d1497358828b93 GIT binary patch literal 655 zcmeAS@N?(olHy`uVBq!ia0vp^^*}7n!3-otk0gizDT4r?5LX~g5{R;w;Rb3DC<*cl zX3+D9&2Q+Rw`S+jOLt#>`M)ZC!+Qn>#($nJjv*C{Z)4x)EivGkQ)6{f=+D3W>cm`CbtQe&vd-O0^RbAQkO z8}0WP9!zCTTF+3B{??3zVUBOQw7x@(&MeLDQ7@Rj^SvwHp||GEFv&yhcHym+ai#1Gd-o_T0VyBWTyHG?9Dm2McRcveJ!;48 QdO^v`)78&qol`;+0Bv3!aR2}S literal 0 HcmV?d00001 diff --git a/doc/api/html/form_36.png b/doc/api/html/form_36.png new file mode 100644 index 0000000000000000000000000000000000000000..af7b640ad9f19ec03c2a972fe51d6241bd3b296c GIT binary patch literal 654 zcmeAS@N?(olHy`uVBq!ia0vp^^*}7n!3-otk0gizDT4r?5LX~g5{R;w;Rb3DC<*cl zX3+D9&2Q+Rw`S+jOLt#>`M)ZC!+Qn>#=o8}jv*C{Z)0yyyQ9D(Jma^+kN^AE^6Y$P zQkil7oy`^*8%{=@Xt6We41cy?Ok!;~KQor$L9v)IL(Pepu5R{%mq~r!FDNnmS?Q_G zP>}BQ&bq;SdR?1NKOe(`i+^VSE?)hy{ONvyN&oobCrfwc{k@o;)C4*DRcX8wrm0FO4|0raC*&^DT_Yy#Qu8aE`CIZs~{`nmZI6`MWQo~ zecktY`Q_M48EHa~CWu9cJ6*bW=gU1^8F4digXM?Z4e#vwb+NJZ2M#<%vajY|45Y2sI_$M2$Cr@yN^aZh4qZoTHyE9oA4_49vN znST6w`fuhNW%e`7*Z02N`#H_>q4t5tv8OM@1hT#Vc=Ds(8T~)sXC7{QpTNxjN%VjA zk4tG6UVE^&>^ki4_Imfug2e3NIkz8Jyl`8WZ0f)`??ZFO50Q&s8RnhuTH5jR#I+;q zHl4n4o%>{tLc!QVhQ8DOX1)=xjTV1a?6|t+ zOKYUn;YJ~Wis-c|%m-#y-d$V1YuRg`9-s8j#`}!dt`&N`XV;|)4QJ^&j0gIqZa&-j zxr*6dg_Yrc(yE@ofBb(Lxxe1>^;wa4-Gt%K3{m-?|G#r-25T^U;J>MV@iPBOHuvjC PL8;2q)z4*}Q$iB}{DmVy literal 0 HcmV?d00001 diff --git a/doc/api/html/form_37.png b/doc/api/html/form_37.png new file mode 100644 index 0000000000000000000000000000000000000000..f0f94795ff61257f88822a842c3103701dff4815 GIT binary patch literal 698 zcmeAS@N?(olHy`uVBq!ia0vp^O+YNp!3-onl%?APDT4r?5LX~g5{R;w;Rb3DC<*cl zX3+D9&2Q+Rw`S+jOLt#>`M)ZC!+Qn>CQVNl$B+ufw{ve6y*A)+?k|hlxc2}5+uSE3 z?_7(#b$d@}@);L7cNWeGRjfY_=S`J-(A&Yl|1i8^`@v^i9|TgFD&*gAwq~UIGVnim z#`<7+g_EL3%eMQ>HI4av585l767}TQCLG^*&ohy8(;>eOYaq+<$^V^HFx%tQ9b#}kExH0W2!#gL&GRa-fw!Xe}CHVf_KW3)0_$H<`JKk?Cj%Qd&?8HH~#Aqcs_M)oGtsEc^hi}tWOdZ zWA*l3{I|i$XN}dXnpvl(m)ZoddH>wKoVi?&sq`s3*GctKCLi5n3f8+WEjkr6$G+Ep zx>Wk&oa0P3uC}k&)iM9*F>p&h5ZhO>l)p2BYxb4dmKCWtic4ReuX|j{{p7vDgQUGP z_@oYBU(r%~(!1`7LBsWj%XM;-Po7eB=S;EmUlngT_w1DAGu9`&uAAH&lz-@XxYYsf z0fjU`wGX-|H?}__1iH|LA>i(GOyBW^+@9$abtDKv?bVu7YzdVkO#*38SS$W0G z(mpmvpO5{A{ga6c{8Th;?XR8}dGe)b_k?V%S-Y0!T;BeNwLm^QWbNTMGn!vY>8+c^ z{q|b<>gY}XxArjZQ*wR!c+#C0&OIxZ#z>tlS-00J_x4}rY$L&4$E(hRQYnL{tDnm{ Hr-UW|a3(M? literal 0 HcmV?d00001 diff --git a/doc/api/html/form_38.png b/doc/api/html/form_38.png new file mode 100644 index 0000000000000000000000000000000000000000..51552f56279f7b66205805c86d7fee5b5f990c62 GIT binary patch literal 622 zcmeAS@N?(olHy`uVBq!ia0vp^=|C*b!3-o7_bvoU7zFr)xB_XCK$N`NswPK zgPuohenbDfH9L=9y8H6W|5fQ5-ZL;T-t}~G45?sz8+$wNsRED8IyII<|NrM6pCjP0 zI^+9_w};oY6nJ~QIr#YCb5VwW!IPO7_UC_NXt-~F^IR*l!E*M7?`Ll9(N|ET0~`F{n;%m;G!72H|*S^b`j&kELk9M5@e`z3Z~OPo#q=ss`l@vqZU7RmQnxG_Zs9>L>#S(^ z!&l2fB=*`oZhyFUpK#EG=md#VwPn4p=dRWg^VHaLcdk1_@xA(9h6m@jJ<4 literal 0 HcmV?d00001 diff --git a/doc/api/html/form_39.png b/doc/api/html/form_39.png new file mode 100644 index 0000000000000000000000000000000000000000..35d93c18b6f6bfd214ce8ec6ff87665df975f6d8 GIT binary patch literal 419 zcmeAS@N?(olHy`uVBq!ia0vp^20$##!3-oHKB?0M2?Y3rxB_XCK$N`NswPK zgPuohenbDfH9L=9y8H6W|5fQ5-ZL;T3VFIXhEy=Vjg8)RM1iAQe@RsP-}m3xvg7TI z=YKz~tjl#!AeMpQ&+@0Yc{v&CA}Sdc>=#_fxZ^n=L;PBIhVN6j81BDeeqh+FtA0&K zx_)-vrfwd+*`IZ5+g5w6=waUGSCZFLc(dwBdWwqvvdK*L%T6-gRb)S4qGYJ9aNZ{U z5$EpXvA)x0alK>`F&1{oyZ-R@x?bjUO`mtDH}G5$iqa0A#(g0?#@}}P)`xpd4{H8m z4R~)NUUTDEPWqIq%3QZ&F6&QTi=V~@F1K5L#?o@FKgME|{qwr$+yAMGskxt@Rex#`3v;fZmshhBeec`WyS;;I+B*)Dzls>$$YljrBR Z{}{DX*mi4w3ETtXL zJmyr(+hno5Yf*6LA)8(4YS9h<+3Hw-D1Bl3;QHg|A3MgHmQaTC3C;KYRy#7+xYfLN zlro$-?{Ck2Mw^B>hPDfd-H)EXTFS!tfc3P(oudpr389ntCY=;A>3UFK-?fX}IoY z+w;Qh;els*f8;7C&u##l@d>uVAQW_|G7#!zJDKNiP%>#h$KyF6*2UngAvY;~W40 literal 0 HcmV?d00001 diff --git a/doc/api/html/form_40.png b/doc/api/html/form_40.png new file mode 100644 index 0000000000000000000000000000000000000000..98dc082e118f8848d269f1ed402c8e8cf83a885a GIT binary patch literal 306 zcmeAS@N?(olHy`uVBq!ia0vp^T0qRt!3-pq)~tO4qznRlLR^6~Ng&Ezh8w6spd`pI zm_g4YHou{N-kP09FWr6l<^QVm4ex<+3q4&NLn;{G&W#m1tiaJSeZ_)F^MBvpX0dF_ zmbuS1`p=AXR+Haxnv>yyzSkKRhVNOtTmGk|?t8Ieu@*y(xarf)$qOoF9-q84Gnzjk z{`2N_&0fb#9FCrHHS524)p4`bMG?IX>qDn!JT)ravM=Ye*7P0kU*t*Fgx!p4usjx| zmaX;daANK~i+?}YwuekDTKDntMvY1C+xEN^N_}^5wTu`O!}ltN6DG`yiWUE7gM9Ak L>gTe~DWM4fcd~9g literal 0 HcmV?d00001 diff --git a/doc/api/html/form_41.png b/doc/api/html/form_41.png new file mode 100644 index 0000000000000000000000000000000000000000..d12dfc3d4511d3b069060f17f55466cd1753c3e8 GIT binary patch literal 302 zcmeAS@N?(olHy`uVBq!ia0vp^ra;Wk!3-peZ`M)ZC!+W6ITu&FrkP61PbEElM6nI?u6C70z{VTU#y5h4} z$)DNt)s}01ythqIjN!w2mzfNC4_Bq1V6byi_H^}gS?83{ F1ON+dWdHyG literal 0 HcmV?d00001 diff --git a/doc/api/html/form_42.png b/doc/api/html/form_42.png new file mode 100644 index 0000000000000000000000000000000000000000..09bc6f43dd0f297ae56a782c72756eb765f829fb GIT binary patch literal 279 zcmeAS@N?(olHy`uVBq!ia0vp^ra;Wk!3-peZ`M)ZC!+W4yo2QFoNCo5Dx!zod4R~DUPdZ^g@z=lYYY%kJ zUUuO~$>p;LnlC1O*{IL(VLMBMp-Qx9gX1&#U~e78CrkyN{++w#Kf1N*&QhKAkCaV+ zZ{aFve;j+0;a!1`?H}=FX}NcoW_;h9?H?(y{Z;oi`Xt>VsA>THQ;YY)5Q3ksQg_8FfWO^7Ll)tlBSI6JQxS%(_ z{sOO<>1+y#PvhoK) zF1>-xPUhAPEzvvw7dLbqw``sfd6Pl%rQ6oMpN*A`{qnc5EuAtYvo|CEN$({FpWBXm z^w0V)JsY^_lD@`-&k?T6t~D|mCEDNKdv)cJ?f>>ScooeQyuBgzeBgv7@|%sal6?(o z-K0+#DVCfo*M8(YWyv-}e?8F~5?(Jn@7*#jU2<~K+PRx>KPanB`e*P?p{?Hmm2Y<_Co{?D-|=N8j}`9Hzw$978G?-_E_+ci4c#b$$7x89)C2FIyq2 ze^MhiICNI!#sylDeGix_*&6C!D>5DskI85Fz{>Ca`}xetuda(f6J@wp?44Mwo3NIR zJs@kQGs9-d;*KS2?kL;scb~2>ca3M&5zR9~cNtVQ4}a{q+2OKy%XUYt({n#vZY|5? zR1Z*CpT(}{xXfVF{0m3<6dtCn@-LgPu&%DTBV!X^(52orfmKFEL4U8LonIjFIAycj zGSg3PnG9{F0$Z0>hTf7;J^b|;%O<|rCqk?)IG)TdX<2JWWTsXLSz306dIShxFoLn@wTF0}so}(%w zROQwEiT;k8iX&N_K5ca`<>0sGV_0vyOX2qZs;IJD#s}yBurFQ6aZ6s@tpgMnp00i_ I>zopr0J^2G@c;k- literal 0 HcmV?d00001 diff --git a/doc/api/html/form_45.png b/doc/api/html/form_45.png new file mode 100644 index 0000000000000000000000000000000000000000..a7c8c8afd9b646e00db13d7104f803fcf453ee5d GIT binary patch literal 299 zcmeAS@N?(olHy`uVBq!ia0vp^+Ca?D!3-q5_8q$fqznRlLR^6~Ng&Ezh8w6spd`pI zm_g4YHou{N-kP09FWr6l<^QVm4ex<+vpiiKLn;{G&h_RytiZ#nUXwIAXvhED*J78J zOj6$3t*3id>67ui1FQ`H+&Tor8Thm1R6WfnS~oPWV?AZ|Txp|zW!=>Br-HRlZ&~fy zW@FAU-DCU0I*Gh(YzLG}JdVYkzxb1T>swQq3t36qZC5PoW?^7Ay=zyxGIi=A&I8FS z7pccKc)yuYbBT3_lg@R!dCUjYZ$#Hf%6{knAkBYe5p&&6jkv`iFMGQBxvX77b{{MgL=@7W; zSmgJoA-TDM-=* zKWSBe`^qbRul5Hd|30Og7mfu=t%b{S?a3^TH~t#w{&#CU*NFPUM3lHL`?XnWC~wJzaWtbPTF!T)_r zHXeVdY`xUZ=e3xh@kT%CDOGl2pBeJ5d+GkxXI#nFlsW0A(x$4L8LQM>cTE0~KGo`* zqC$I?oEDGrsS~>--+oX(QtYd#|4QQVUn|!9xPOyoZBI%GSGspp-gHICQt3&$Qw=Xm zd1QL8zjjlpWF3EC{_V2;YFpp*+ImP8o;+)@#DB9)TJE>4r(a)`Ie&L2mtWb#=a@wMAZ`XR>;1uNze)N?5hIBnZ9acXwM=ILrKD zOz=GGt@rNDI{NOUSC5Zcxc5TKMRyN|S)N{`yglW?m6?vKKa80kHtrtNgO7YvzVp+Pp&>nkX=$5H#p34|c^}kW%-XYk z=a&5!w{)n#-}iT~$K+|gk;;q>={J6Vf2^T+y#3w#8SGn69ErN3fBwr3#s|i6_3MI@ kRz{whb12?``M~}z`Q$!<$VD?HI6$e>)78&qol`;+00jjy3IG5A literal 0 HcmV?d00001 diff --git a/doc/api/html/form_47.png b/doc/api/html/form_47.png new file mode 100644 index 0000000000000000000000000000000000000000..d4dbb97e1f3db7ae8002d2923c2b3e5864274380 GIT binary patch literal 828 zcmeAS@N?(olHy`uVBq!ia0vp^vw&ENgBeIxOx*exNErn9gt!7}l0cNb3^!1NKuM5a zFoT{)Y<@%kyfr(IUb_48%l}pB8{RW8Fs=41Wb)Nja|Lq3n z_n>LYq03h*D=xc`Bjj(B{8{|L1vsLFdi5z-z z_w2oOL9g?!zGptbeC7(1=IqE-!5O{J(yzU>Z^$;udY#gsZ&2*f5WVJe-0MWW6??;) zZ5N2$^Dwh3eC?*2dFJNA<#UtY?P}fj()(TQOqc&YJ*FPhYpyMSyZg%Z;*j`XQx>0# zdVBwL!4-kslbC*p_0Ez^c^YIL&$rhgnO!b#U3O(1^<1-}jOW+q6`y@4h}_ze zH9Kb#>tera)633%-F4=1>j&$s^@TFqcVBBhQW~{*vC2a28LK`RTzH)zx~0#zPgOrf2%-x^G&cw`bwDw$-Zl zR-8@NUGMJbY_X+j{S_0z$`p$<-|f>RZyyie`gV$4qF~9?8cf5q7HXI&o?!vM&-<;%TEJX>@qKJY zU+oXg3tM`UZI8*^_SAfTt8c2I_AIa9B7a?`55^fwcOSExS~P(_+0;WqE}Hj&dZD~^ t^|7_pOn`M)ZC!+Qn>CMQo9$B+ufw{xTO*BJ1$?2kFod;9ZCO!*Mz5$>9z5-8&fm*sWoGcRG(@Kdbua2iyGgdT3hQ(JZA5ivTlvt!(ru6yVKaS0JWe+HyQM}4y;P69B?L(C8N1=S( zcUu`=1auzWk)7XpPY8JJ)nm-GJf;P z)5H^pZugRzg{IAd3d(ll%QQ}mmSrby}C}{W_Fg~cIAwzR$)dj zeWNOJS9{(oFAd&SDLCzOR&dRREBRiU+e-zrW7P}auDb2I^xESqt76_eZ;SUc_@Y$5 z!6tuJdeVMj{YMu%zVGgRGhNu^5&O!<+eNFhY?S7ehJDfs()N8@*gK~urTJP-k9X~w zC&!b|nr-2Jz`1FDT-v0$1?R$YuAcVY(w%K3htscKp+H~<%gzTl?Hdi%Q`7_ED?%boh zucOa!&BIN;4doy9%Fm8FRnER9!xy&lk;nzwBn}!~09?E4%%+h~y?Yt$DNdEAw|#J4;5l6-Uz3QoD+*&MH2&u(`un j$7cEC{S@{Oi+`|J{^0+0sh+PBlr%kE{an^LB{Ts5-dQ}q literal 0 HcmV?d00001 diff --git a/doc/api/html/form_49.png b/doc/api/html/form_49.png new file mode 100644 index 0000000000000000000000000000000000000000..d3528dd5267271083afffbcec042a81862f36323 GIT binary patch literal 809 zcmeAS@N?(olHy`uVBq!ia0vp^(}7rugBeKn=G*xKDT4r?5LX~g5{R;w;Rb3DC<*cl zX3+D9&2Q+Rw`S+jOLt#>`M)ZC!+Qn>rWu|tjv*C{Z|B~ewAg^hwcqd_!{h(|Z%^!r z6moL%_x<|CIas6Rtlb^$$n^~S89zLgP;ZzoZpid!%L|`v?ZOS;1sUR6_ka9kbXu<^ z_kG2KMEPF<+a_yH;d>DJW$6{eOHYM+7|ajxy`JHG-=)+4z6ncCoPUtf;je4972Pyn z_MP)V@tPPnk<7!k#V2E`tDa7tmA>xJxi#C(&&L#s|2V?BIo9|Y+w_@?>mH@Cu8nc* zyPI^uIQ&B*kM8^6nL+crc@vG!`Fp(%mj8NVsl=qBmjR_u1h!{!dhR>^I{EK3A%^K2 ze_B{Qk9*DfruypY6D*5YTq&a{hTrar``|hyrZ#4c-rj=sqK{^@W@UFc}=PvKKwe`B)t;2^t%sMT4%y+%x`Xk3p zxQe8*^@9&p-N~8p@6hpGU#@-G_sEOOpocqX|I@uq7g|-XPhWo3t1_L{>@{0KmvqdT z-EkXJ@`EI;?Zxxkm9&4)c;jUBHBV#Hi(9L_%fe=Uy2SWK$96HF@V;$+F-0>MR6b1g zk=<4o_dB!RVBOve(!td?ABFhFM@C+o{iyWm-gjc_cdXG7^1Z~aXKvurWU6d^pf}^5 zY}5`TU(@Q{oB0@)XT%)q@5_ulAh*M$d5L{j@WZt9%TIIU7hZofX-J`TF+1|V*|p^RY2F9s404b8 YzbFe`oxM(ZBPhXpy85}Sb4q9e0OEph;Q#;t literal 0 HcmV?d00001 diff --git a/doc/api/html/form_5.png b/doc/api/html/form_5.png new file mode 100644 index 0000000000000000000000000000000000000000..d84b473977e08f73d4840ece3a4896b2b9128045 GIT binary patch literal 574 zcmeAS@N?(olHy`uVBq!ia0vp^@jxua!3-pyu@^`HDT4r?5LX~g5{R;w;Rb3DC<*cl zX3+D9&2Q+Rw`S+jOLt#>`M)ZC!+Qn>#-@@OaEETN@4EGM_cCFsURMBgF z!1#veW%rnyb1(I8D_mAOi_uT;S!j1m@3#8*OrCP7pq&LPWPT(T@?ZYjxu*Ev>M0f< zjtjj1xN*N_j^Z(sFPZ-=PPYVH^--TV?-TRyi;MT&HOP*Cc|tySN_WuDyVHcz#n?3zsa zKl=P%^yRo$?&&9w;?if`*A04;TQ{5Y1Fz!R*BZgXtLHk#W#->pmlfpwZ}R`i?~jSt zvIews9lO6Hbz%I3#a~6QzC6bCyNtVBU+{O_{7HZ3EdB2hc06w9vrUD*noV{3 z^;22J85TPp(f80?)q?wD6I j)XC~C^S{LWr~L=h+I3v}Zv?kHf>ME}tDnm{r-UW|PN?~g literal 0 HcmV?d00001 diff --git a/doc/api/html/form_50.png b/doc/api/html/form_50.png new file mode 100644 index 0000000000000000000000000000000000000000..d7109975296379e303bfd41937561916e033b32a GIT binary patch literal 737 zcmeAS@N?(olHy`uVBq!ia0vp^%|I-{!3-qdJ=%8#NErn9gt!7}l0cNb3^!1NKuM5a zFoT{)Y<@%kyfr(IUb_48%l}pB8{RW8Fa>zJIEGX(zMUJ{zs8EEWxq~}vd_Q&`}dYf z9a7rWZuvcN$ztI^riBUNF{z)qKJXu?JIeK8_l9_e{oOMd>zL{*<}v(}ujz{SKeS`% zo6LTh8kUNN3B_x~9x$m}nKa}Z_U5LgFJ67;D67Tc=vlqx)!8*!?B*6{o;!S7x%BMp z!+L&iK6qT3dwA;S>5M=4uK9dE>A`OAXPV#Tm$)^ZFR*gy%KMAvFZs3Z=7i>Vv*JIU zx;MkL_TqL1dBfu|_bc3+a*hWCcBu(Wp7ktZ$+JWLU-jH9JhUpkUo|$R&b(N@~|vo@Oj4f1-a z8!{v4)Wb^>nkpx^=;*Khav^uqTGNRc1p!~KhUM=no-b3qa7xgHx2 zFZdtYw#&u+D)ZAjHSbP%&MM}SzNldSer9^}k+qz`>Qhq7)Xem4HXYSoc_nA%>jQgQ z*mpSmDZDr3S*-o__9cf)GWXs%@;Xlc$nmqYH6EWm^>In%*N(kDm$usN{ZT(>b9T;8 zi5u(JPTz3!^vzrz@AcLPgk#cX?SFg3^stn5Yuz?!zDJH5&oA+3yt+VcP|N48&)As!3m1Y0fc=6qhgN`;ge0;1*=lyGFKb|+A(XT?f zIwNqI#{aXHOa7cqWcbJNKI!?cKO4R=)NB7^c4QWO56^LSMk z&R%jhYw7K3izyQ`oZfD=H%5m2T{9RS*sZzyU5=rS;E<89mxe>oW$?3#2|^)46j+B2nT?j{8r z_ErOR$C*qAcxQBbY_ytqXl_%Uh+MSQuT$GECG^HSFcdWW(9b;b)Hys&W&Xo3&Eh!C zmNkB>U&_xv7~rF};hCoo^8t1pL(yN8_Uqcey*bOc`=E}h@OG7RKCwCTrKd(;eQ-;l zkfrX%qNoz(gL~F)&QQ0%ob>GFOOY%2ntX>A-HcQHv~6XOuGsXATO0mqRC#C{&&kQ& zlaRL0wW#*zp;~t}I}(>Jc%dbgxmPB~?D-u1LM_Er+jc772zboe zYM^oAVK~?I)(@I+U0{^cSi6Hc7VI2tAQi@R5$hc%%tCal<5 z@a@@dgQeQrzfBVJpXw2*nx3Tkao>$?3#EEvzijwac-8ahF2(9rr;ElZEzAz)))E3etHXo=+Bvd2FkFf}lj)9l+w(W`5>Bw#8 zEG5(Y&gYASr1^5)-@W#%(aG8Ois!$RU#t3D@7mm^6YFQ4&{)_l&G0T^(T8O>T~>y% z-OTwJ(eY;SnLDZlR{Px;AE-Z&*gXI8mn9Rr_+lA;{FaDhXsBnZXL!C-$b3%i6h%p=fS?83{1OR*uI8p^J%dYwbpcE{7q>}(yuiNQDQ zrw5hwADwU|tNPUR;+&IjFK>9c)LVX+G1uEPsAcJoIF!>D%i%+ZZ>+ z1*gogn=PFir=!1LXO`<+0iD>AGOcyHzP;>i{pEbPqNh|^_wL-_SJ~!Q`EJK$PK(W+ z^{ZCvrNoSEjw7Ohc6~9)v+}OKHgw&dtJ9L^SNV0_)d%}_bU3|IXWt|D_uWya*O~S5 zYTQB`-}GkW*Z4)vY4bdoS(;b z|BhjSx#j_NH!<7UOTyOgoxdgeYtouTXne94Jkw~UQ((Mt5|yb=MXnB(i%>&n;nch#h68@`@fzopr0AFZ06aWAK literal 0 HcmV?d00001 diff --git a/doc/api/html/form_53.png b/doc/api/html/form_53.png new file mode 100644 index 0000000000000000000000000000000000000000..3ba9848cdda59c7a3865a02e4ae99e8888841bcf GIT binary patch literal 243 zcmeAS@N?(olHy`uVBq!ia0vp^{6H+k!3-ofJCxW0DT4r?5LX~g5{R;w;Rb3DC<*cl zX3+D9&2Q+Rw`S+jOLt#>`M)ZC!+W4ylBbJfNCo5Dxq*B~6*ySjYn^h}-uu7ps)^{W z_2rFclMcKQ=wtZc|8!d1L>ZW~k16{MKJ1XY>EBtnD_xiX;L=XWh7Sd|&JR w)hQ31cX=0A%=-A|QCCQPe+J{3`Jd9Ll83%_;L&;R@9Y6)!1 z@P4~b*zmf(uZHM0F%P57Uh5h5GgNe^vi^`zORy+n`yo)H!&V`8Er;)c{saa+!Q-Y3 zd4`{6)@t3|F2un0V-s^s(xy^-ISbk1)SV1}c$noYZ|D9!FUIKhJnuKy&cKw>3ozIi`l=px5 z`QFv&gQubH%IA?kcUY=iy`@(<_tUi>PoAV#YN*UNd-LRQo(Fq>qyL4~Ve5amb1}So zc=W^d8+Jb;?v_q5nRa8vi5u)l;6jCvW+} z&0O;%xes@>99piW`FYl=7n=gEW$+ez`stMvpRci*TyS&M|LvtOe_fa(D>G}yN0TjC zshwuKCqx!&>ppy}H9uxU_QWisV$Da_Mdd4lpJ|$2D6ct_?0NO|gMy^h`tqHVRKuPk{U596H`ghxi@i1H(DE#yCtGCv zU%uIWtt(^Mre_;Y$!6*&&r4n%SR17~Io|gCGX4hbCygtPOlb&YExKuw`7!b05iv>Q zJk7{&5_eU&y$b%Ev8ptWj)^sU7PP5i%hpw<)g4QNyzSSP8@{;s(DxFrYvjIN*S9^{c$5&cDtrPyT;z%a5F|JRfZ5oVl}=+xW9q$+xg)%^jw) zA9t^-k0|-KO{%ka-TZa8ni=jLIHI~ij@QFPOnQ#W!fgj0?)3HAEyZ5YE4NY0`|2GX zH8Z6ojRVmZs)a85-9n|hJZ?+Qn=E%|w&mH?Y|kp(l^H(B2_4Sso6?{=sYl(p;lJdf z^mosW2$-nrExVn@^&x-aA-h?^#*;J~{2gq5eR^7|S>M<9<@)<9i3j3V{}_t(h0i=Z SySoCEJv?3gT-G@yGywpOt9--& literal 0 HcmV?d00001 diff --git a/doc/api/html/form_55.png b/doc/api/html/form_55.png new file mode 100644 index 0000000000000000000000000000000000000000..11720041fae25aa57dd09a44aec83f97ec24a459 GIT binary patch literal 891 zcmeAS@N?(olHy`uVBq!ia0vp^lYv-@gBeJ+w9GRHQU(D&A+A80BoJjU!wu9RP!i-9 z%%JBHo8QnsZ_Uo5m+rp&@_$wOhW88%Os_m$978G?-^SjawAqFy_?)`az5luOH#K7y zTzFUW`TV=HX>L=59%*dK$zy!L&+s943oAn%^D>45qD5>C@eXI08R8Os%NaiKdoUDq zW-vTZzGJ%l)n&7bZVU~~ew+d|7n4bmi0BAVZ_s-xpQvN}SEwuzklvmNj{wk8-Ogzq6F| zT=nd4(5ZaUbEO|dg1u)SZ=JkavGd)wr%RvMO@I1CJD%(0a=z%Agk3>XIcJuN{5EW| z*=qE7ejh_a_K{uF{J*;Th55

=9I#-MJz+oO`Br#EjWTrgX1(dg3JOY4*rpchwp- z&wrfzDehO^iJK=@cA4v#E2@w1j|<|O_O?9YzkJ};R5_SEf3cK34S%x~X#dEwmIon9B7 zFDMmEaOt$!<(_3{Quy(~iWobi^HQ-7mzhjjAJJ8Q_0Y>}E6?8jeP({7vy7Mi-S13~ z&-u1jRxdlJVi}>rdiH@$_w?%fKh9rT`+4EjX34q9=P&7;d17I|c6U#Q%ZB~W>%S~dF#5~?-S@RdAt93o7nu=*lH1mm`5j0X3wp!jhG?io}Mw= z=Ed#EZ?jw&b{tFF`F2IjRi8O2Gh!Ha99(nL(&qFVZ;`F~(tN3L=ax+_Y299U@pKym%aI9w+U}EnxUie|XBO_|@y# zJ%8W1w^~yFFB3x@&$QCAO^x0^!!-{+DVe~_@Q;DP{0IM>Rx!1U;XfrnS;*7X&t;uc GLK6TOgpxe~ literal 0 HcmV?d00001 diff --git a/doc/api/html/form_56.png b/doc/api/html/form_56.png new file mode 100644 index 0000000000000000000000000000000000000000..9ef5b858a5b1dbde66d864be3bec7a9e6b073aa6 GIT binary patch literal 623 zcmeAS@N?(olHy`uVBq!ia0vp^=|C*O!3-oXycWI>qznRlLR^6~Ng&Ezh8w6spd`pI zm_g4YHou{N-kP09FWr6l<^QVm4euEk81H$yIEGX(zMXse+-d`!mi;jvJ_=9&-v4It zFet-wcHX&1(--mR3RS3myOG2APva3!LBHSvdAS9wzZvvy`yT$4&LNO;Mf-sHj~x;X zY>!rFJpLqB$>h0%bpd;>oc_m+o%U;ckBhLjDKdXqaPqN9x_OrQyo=X9Kl{b}f!BAQ z<-IA-A6(oLYAApC-qFc(r!Akl{ZUiZvZa?fa^+NK9^WCY-*@hK(e_VQ9d38iy0k+HJ5&2tX66`eXe?C)-Fc9AJfd=et3KE`t{grEpG#5 zq6)qzy4~EczB>7YK$iFJhPii^zP;ktuIXH3@%ahs53aAzf2^6NI9=Lw!n`*}7OStg z9#x}%?Z`bp%Tgb^v+mJdyRxQcKHq+F`I=baq8Ia~97vt6cg-i;JNwp0=g!!SIj&`O zYukQRYD|9qxSe?cr+Ma$g!VOygQmr>O#k6r@;Pjh(Yx%*dv-hwe=kVB?0Rr3UNvTI zx8<^#!TCCBT*Vgx89rFA@w&oU^zriS$(IB|PcM-_6Uua;|HG{tnMRYjw(XDNSRkzx k^!50I!@sYv|A_y=u6mr;Af>YQ2q@Wjy85}Sb4q9e0Om~)NB{r; literal 0 HcmV?d00001 diff --git a/doc/api/html/form_57.png b/doc/api/html/form_57.png new file mode 100644 index 0000000000000000000000000000000000000000..02ac2087dc8ddce09b3a3039f6f8b2a985b66d1b GIT binary patch literal 941 zcmeAS@N?(olHy`uVBq!ia0vp^tAJRFgBeH)B$*!tQU(D&A+A80BoJjU!wu9RP!i-9 z%%JBHo8QnsZ_Uo5m+rp&@_$wOhW88%%rc%Xjv*C{Z|A=3Yq8*Iu`goxc>ec(+1r+7 zllLv1Io0i!Ysh(q&gAK*zr{EFXZ)bA7}jvV>HJNGKRjX&1h+B#5t?-LpGAqdQzwJ5 z*kqvt!dosJ)AirRe0lHbS+5xP9nh}6`amVlym`d74c%#}QU|HIaL&#WQ_{S7Y9<5 z^JO^yVVz6Si#_~-;@*D#s+VJG3w*CJ?>YD?=g+Co|8Bk)FKd)LTbQ-iq?xX(+kR>H zwTPzMS$&_D)pzXfb#48;iN)V4Yi)7O>NjzBqKr1CtiJYn*^@VOcYNfkIwuv8t$FvP z_@karS5FzPoa7?D%j@4N*2LoFS##Ro>-^kf_hAor&@9Uy~g!r&rjipm0_sV)0UAY#NEF2ZYZB@EU z{M(*emXWj0sqA>S>Q~+Fl>D-Dof5M)Uc4Gzk{@HL*kZ7F_Q#|U;YU|q9^NHdefP;r zmwfhcuXizT)9*)x+fL(M*Ogb5^<<&$mvF{8S2}k!el$Bi{qUKu4O3>f%`UCq#MQHX z&zv~^?jFDC*{&JKo)i{r^}PIcjTO%=$LpJ-)`=hJ$vLJkepfMUapL7SYJYD&eZKIo z-q8$>;D>#wrIKui)L5lB#6|bUW*bFJ&E4}OVvWs9N%`4V|6Ymk+Hmq#>SA1RMy!q0z zx2rGSdg~i#XTWCQJnhGfPh}=<3A$}*0Xnyj_ za`BjTD&hn~J-3m|?mtI-Ma2%pyRNIBeR|?Gvx^M>7XM%mTr4K`#D7Z&DARem`njxg HN@xNAm^ru? literal 0 HcmV?d00001 diff --git a/doc/api/html/form_58.png b/doc/api/html/form_58.png new file mode 100644 index 0000000000000000000000000000000000000000..3a4074b65cd6063635dce53808c7478ad1bf42de GIT binary patch literal 997 zcmeAS@N?(olHy`uVBq!ia0vp^dx2PrgBeI(6<8YrqznRlLR^6~Ng&Ezh8w6spd`pI zm_g4YHou{N-kP09FWr6l<^QVm4euEkm_s~W978G?-_CtK>5Upsi~WIyjb}gn%a`W7 zf1tQi-7Y0Lf;SA>6?^}f91 zEb{}qKPR$JGT!~HsZ-}WKYx|I^`#%1`mDc&Z`;KCK<&?qJGN_UI!*~}G-ct{pYCME zC!@aKB6C6TnZz01lfHU)EXv&duA{Kf(3|m7*b9d68A^+j?a$QpwOCd!Q@t5;XolFv z-9KM?`YSHsj4#rg`gisTS4~Cr<bDcCCGs$c17_jOLSvCT2@n=3L! zwcK)iv(|b1Y4TZ9w`+2BWNzzC0jG$?Ywo)Le>&&9drn5pkz)~87wS#gHPJR%Rr`_>OIukHR@#KW0-&hmS}I-&QWg^!f4bV^+@%B#yscAEEal0fI1TXSzI-o9+WqaJ>9 zN%|`3vQ63V>^9o>aOny=aoAqFlU}-Hy{XOYn>M+1CTFbGV~agc9IJb}Fm+Gh?PdPo zK9{|TeJ<6ut8Tu5dw{C}!+V3=(^)_D+2?Nwan61deBIwqm3!^vB{QsU-hMhI_>#xz z=O^#2ic~LMzg$90tuXrcwS`fe`5V4-?28S{c0ALi8|C&fnzwg}o-z>@|w2{C;WWH9b*zyEOI5QhV21J-e(b^4xJ%E%Rg`$|wB2>#ylWM2F`0&J+x%~VYnXV=o6`*8J-4?l6I`cfW`1;q zQ@Q`?`*yOj%#+vzrzWqyWP0w^uNvjtnUugwjnG0H%yt<)c zKIw4oTGj`=$KG+(XPstvKk-N+*XBQrHV0MK&I_+&&@0&eXiJt{)$e;dEvFtV6lsXQ zz%3BGyP@-&?B=j9Yvmib&nPl-?!3|yzeT;a_%rjJ)~rI_H!osx!x{Fo9IVd#doX)B z;}1rje%tG;-bP0l+XkKji$bv literal 0 HcmV?d00001 diff --git a/doc/api/html/form_59.png b/doc/api/html/form_59.png new file mode 100644 index 0000000000000000000000000000000000000000..8c858a9e4bc605bd5c181e1fc72c099b59206f17 GIT binary patch literal 691 zcmeAS@N?(olHy`uVBq!ia0vp^r9dps!3-pso_)9vqznRlLR^6~Ng&Ezh8w6spd`pI zm_g4YHou{N-kP09FWr6l<^QVm4ex=bD|xy&hEy=VjlDf>i2=u&J11N(|NOr{)QD`qEnKgPC<@APL<(6^AC}D=i^q||9v*~ zF+7NBYG2LDpm)SlndA3!*$b|ZpF7BGzWvL)?@Gj7m*C93z8->y4VVgYf;*y~uwPnH z?(jZ$^X7w6{hNfWjdC6@b6|L&(%tfYovD$!loa!VeT-I>wqd0)*KB`kd4%qpKZU_3 zx_QsXTSqpi{tLFa$!u`azgWH1lw0-Gz8Pyy*op61eKs_u>yx$;3mOPlW6 zor@VCI3GEb^{#EwkvYQqMN>_9!ovO)@n&@Ei<$*3U7pC2a8I6h)7RcK3tn4>9U^(P zc7~2=kG^L=vG7hm;Hu?rWz%<|?-1jR?IkVKzP5+YwZ3m|$GWuY*Hb(0ncL1DQDLu_ x?_&56yKmaRz{M>m%Fj7z9`AN$W%%FrhtX&q|4yNaAw{61=jrO_vd$@?2>^ooAA0}* literal 0 HcmV?d00001 diff --git a/doc/api/html/form_6.png b/doc/api/html/form_6.png new file mode 100644 index 0000000000000000000000000000000000000000..0d42645f74ad5af34f414d0a1afaf8c1c20c3e84 GIT binary patch literal 574 zcmeAS@N?(olHy`uVBq!ia0vp^NkA;l!3-piPs#EFQU(D&A+A80BoJjU!wu9RP!i-9 z%%JBHo8QnsZ_Uo5m+rp&@_$wOhW88%jB7nz978G?-_DKBUt_@2vOnfT>*;6z|KCn# z=UA9qR=KhyMDtY0fu`d#H{K0zux}AaX8B?3BU!}o!&HJh@1+K#-C>J{^ba?W@7Z=+ zrH4U&;=Q6Tfp@(B?Fq6zTzqofmWJDAg}Q&cvr03UNFOk6Nt_rlySmHw(!5!s`;1v1 z$oj~$y(oWG&)q%yS(*8JtD_=5Q@ogeFiC%@6#ZspeSp`T%jdCQC{Er+v4b5~2=)CltWd+mtHnrn+wek32g;d%IYR%Ca^xvzgkKHGf%z2t&bHv89~ zG3=>gyRT_onQC%?cW=P4yH6}MFYQq3{*tz`K)PT1h<*Py7?Izw!$&$$cy?LXBW&rdBr j6V@m5xgv+@&;B3m@AbH9BTFpjf>ME}tDnm{r-UW|lu-Ju literal 0 HcmV?d00001 diff --git a/doc/api/html/form_60.png b/doc/api/html/form_60.png new file mode 100644 index 0000000000000000000000000000000000000000..1dfe70d8857d1be6f92cafc9de948b2385a54f4e GIT binary patch literal 847 zcmeAS@N?(olHy`uVBq!ia0vp^3xHUhgBeKfzPIHPkTMAH32_C|B!MV<8E&8kfs!D< zU$2Gm;bBMH@s(HVA|*D;uuoF_%`-r*R!7~nGqIk+Zhj7TNif;GQ`dB{H$xi@Hp0Q)vFD&E}s>dbFMFv;X!L; z^ghQ6ehhNkWmlCI`W&=YtP2WUAJg%Nx9KTouBmfl%T6A{{!Z28qH_h7zjrK&ST&jF zjg)U++|!(FhKf!51R{h>`-jaX&zbhIC zig#xkdR}_zXIXU3SnB_^xPs}O))g1tTo0T3$xR@*cvUz@^2~&Bo;RD_ z*Stc3IU?O_I2KmtReZ2K(r>=?ba>O6U+)gKN*!MHVmABK6PJ>A$No}`O%YmkWtWgh zW~7aZw$qCCe1R>6`>VP)Y0ZCeGV0_~zYT&rg|GZEeAT%yfAje{zqYw{^ekPzy6bUf zANQl`l~J3DExZy$^(i?HP`2=N^>bP0 Hl+XkKkDzqi literal 0 HcmV?d00001 diff --git a/doc/api/html/form_61.png b/doc/api/html/form_61.png new file mode 100644 index 0000000000000000000000000000000000000000..40a1e89af618c79dbd82368a1255e83d61a17551 GIT binary patch literal 777 zcmeAS@N?(olHy`uVBq!ia0vp^O+YNp!3-onl%?APDT4r?5LX~g5{R;w;Rb3DC<*cl zX3+D9&2Q+Rw`S+jOLt#>`M)ZC!+Qn>rV39N$B+ufx3PCG-BIAMUE%2a=-0pe=mQx( zv(Ik7JbUiTE1bWDS@~oRL^J%*PcG~cWZ0+f&1S@W;ChS919OHS9&=>a8>AKa8R``k z+h=_Lr~lOH(^j#k&yFprexzfY_~EkJPfLOSllsG7m2TX*%6;XUq>cY1KNjzDQ(-6& z+|Itgyx1~W=vVu+Hq)A^aUxueVhlSt?8V>xejA&ko7!j9V_Ukb=Z2mD!vph5O>c$* z{Sd|nZY#PL)oPs1sbhg(JXKYH%TS+(xp zo`vgJ^X_GHUpV9~9Q7!;mrJYLgYuSY_7R;g|EQ1(z)~5 z4n}*=5pcDnt>mUjZ{=7gW@W|U9<#w)nC zrsq(}7IvoH+#jTs(m1a9d5D;Ne)Y29f;Z#S7sb-Ccn;s;fMND@tHq_@>Liswt^D0r>mdKI;Vst0GlpGDgXcg literal 0 HcmV?d00001 diff --git a/doc/api/html/form_62.png b/doc/api/html/form_62.png new file mode 100644 index 0000000000000000000000000000000000000000..80a5ec5c9423563e4f2b97ed244e7148d14d9efc GIT binary patch literal 317 zcmeAS@N?(olHy`uVBq!ia0vp^+CVJ8!3-pK*pKe+>?13yRlY^mLA`T;T5M VVlIEvcg_hE2%fHfF6*2UngB6UbkP6+ literal 0 HcmV?d00001 diff --git a/doc/api/html/form_63.png b/doc/api/html/form_63.png new file mode 100644 index 0000000000000000000000000000000000000000..76585b895636a8bf5a4c710bce9e545059558250 GIT binary patch literal 769 zcmeAS@N?(olHy`uVBq!ia0vp^O+YNp!3-onl%?APDT4r?5LX~g5{R;w;Rb3DC<*cl zX3+D9&2Q+Rw`S+jOLt#>`M)ZC!+Qn>rUFkF$B+ufw{ve#x}(73($7%*G4;p){k<*h zIqGrmL*lk+iB8{YEiobLmDnDpKifYZnId%H{LPRBE)DX=g%89V`p>*9YLFJ@{~#{r z<&pY!ag5o;`p;>1?(8V>pYzn6NBzyC^PNAY|EqkuuKQ@{XXV>#ule~ND6#gb9lz)1(#2}Wnz3_UM=a(@LkP) z8H4!gtLiy7VmH{NNytO?hfv0*`g{wk@k{5BTU|({bJNcD8-~ir>Oc z-tQ$=-LA-)tjp#2TIFiTibdNjCWW14`{A~Y|H<@d{s%ASWb0LnCcitM@x7YE^7-fA zWr4Zj(P@F^XD{3?`aLHqVyZ_Rf8*|xhtzdv*1Z>8YHuD|F<0Tt=bE~5j(uB?FgniV zU~oce5B8mE#R~IyFgNV!P7liu~Huj&)5lF)Ht&?OKr^y zy#x6j7S0)OU8W^W-R_ak5zCeH-mYw;J@ae6gHpD$rmvNE{kC)GTiNJ6Y$ZOWpIfXt z!!5lo9s03q@1<+n!LQC~w*-7=c3ZyPcI9OK2Vc74vo1J^dcS^Z{Y30aH{0dvLz0TY zJ*S$EJPGDmWZ6;oaoQx_D~Ge5USmG-v~1I!+mS(cmOiK|Wz@TNDrw(ZpGk)J@vZh?ze}t^Y*D(2J;R*{&6O5sb*AR8 eb7-i)RLA)1pb*n$mv1hhgzV|+=d#Wzp$Py8El(=| literal 0 HcmV?d00001 diff --git a/doc/api/html/form_64.png b/doc/api/html/form_64.png new file mode 100644 index 0000000000000000000000000000000000000000..b1a7af4effcea1f6e42ca1fcea2607e504676378 GIT binary patch literal 335 zcmeAS@N?(olHy`uVBq!ia0vp^+CVJC!3-q7e!D&$NErn9gt!7}l0cNb3^!1NKuM5a zFoT{)Y<@%kyfr(IUb_48%l}pB8{Pxu_IbKEhEy=VoqKm(ivmxJ{hAZ~8t?yai?&t0 zcEtDE>|*moq3+~#4LgPd`wO@j_8aCs?XA)kK47fQSa^5ITEDgW`b#XYPchrCnmzZe zp+2kE)>_A^jxgRSd6$B>>(@`6bzHVU`-<5uE?cMlLSb7gL*&{6n{WE?$;|Il_E^2$ z@X4~qYl>&2rl&MLaWBX+&D*|X%cdoh=4w9(%h24tgCTyU@1pK%>2GNlW~8s(^|ws+ o-erSh3(7zGauq!9j(>TGy_+fS|!#}7m{#JBjGi8b6m{DhsMj{DlpIp~UnO=*?jG z$Gj}zkyN==aPFt`I=UUF#doe`D4)TQ_ux@$B2W1B(8F1~6~f=Q>CKvubzblD?XI8I zzEhhb&H2){KIzV!{Jn1HKPwG}nuCcPA9|jy6LBk^y?w%}X@75I`aE}Lkk@G8Ut4@p zq(IVBv*PdO-*JAIBZ{Z(;$OEk^yZQ$Q;z6tUA3q{^Q_vDNN%(8q(%20eV#cXc=i5L0-nq$s_NB*@WlW2k z=T_&W-8^if`gPW!HHW57n-;39w~OWYrw=d6ENA_-6jC)-T{nNqyK;WVo$uA#B%X!s z{lRIs{pj(nt}iE^e0Ah%n2x7)<~q&r^_x>uj;^)i?XQ)6z?muaM@(~Sr0i3R7rr0z zO5M);ecgC*+U?t?UFyG>A3yRDHeG4E-u++pUHuy2O$+OKw;4C^mguYA>dh5dl~ z4)LpHiC2{C<}-$U+Zx3EQnmd0MF#s$h3f}*>|b85%Gxl$vE-4oF7qFYqzUube{eVa bm;BGL%1S8J@~n#}C=GkM`njxgN@xNAYi&)& literal 0 HcmV?d00001 diff --git a/doc/api/html/form_66.png b/doc/api/html/form_66.png new file mode 100644 index 0000000000000000000000000000000000000000..8239a9433e9f8865e8cbcfdb7afaf3d51859cf39 GIT binary patch literal 817 zcmeAS@N?(olHy`uVBq!ia0vp^(}7rugBeKn=G*xKDT4r?5LX~g5{R;w;Rb3DC<*cl zX3+D9&2Q+Rw`S+jOLt#>`M)ZC!+Qn>rUjlZjv*C{Z)0z+TcaSL^UZbQ|Nply^K!g; z@xoK>yPsdunvR^<5dA$&2g;p28Ge{~sOK^?=pSC9&G2Bg!qhKy7NQLI4lo|DT*J_y zKI2xn$BAtxm~QNyELav<{Zz#Gy#LJ$SA<2C8DbJm*%|UTUg_VKxM}6K{)Hlu4SU@F zEef4Gp)<2?>*M=YG4{QekDWf?dQqk%W|pV>U5o4c&v7&Gy%1)6Ao_Bly0m_R+V+^w zv#JB`elRj`%6TNhpm(vta@%#LZ#y>k-dn%K^~A(u&EL{-Sqg%aU`Q z2gB-q880*a9J*0gKY6XJ{(6P#eRC>5D6!p<*mEO3cFiKbzotv|DocY^7rx$dEnL+0 z$Hf`3&n72UUwGXUuE2PF=_`#@fA$#Z+<(_HF=+n><=o}pT-$lN&-k3LoVw*(qdV)# z`%Tl@Z%#GI?5*Bt$MB&mIs(uBTq?q}DA zd=2g{Gu?B_g5l1CY10j&biF>DJtn=KS&P$`_n)TiUd3*?CF!d#CH9&J%g$&kW_%#j z8@|2zNvenb^w!N2y95~SB;IQGE|e?IYJL0mZDmlnd0F|h)2dTim+X)0h3p@6+q$njK2`K{$!CIoA-=ah-6z6;CpoI5GT z^W|DSZGMIt8PmSqcatAU?czG^dG?FO9)<^#cWm@N`Y=KCUf876u c>A?Jh{4&Rc)$ec1+6_whp00i_>zopr0G--m0{{R3 literal 0 HcmV?d00001 diff --git a/doc/api/html/form_67.png b/doc/api/html/form_67.png new file mode 100644 index 0000000000000000000000000000000000000000..7cb7389635fdd542e2f639549dd705d52d14b353 GIT binary patch literal 758 zcmeAS@N?(olHy`uVBq!ia0vp^^*}7e!3-oBN*-Xb#vsc<4S*i8oieI#@|_Fd_Z^8aakF^ zEZ--^A;wGg%cN=9AIR6J=lb;6ef^#GS6VyEn$wN$zL|Jc|HoOj4=u;F&aKk<%HZ=T z-~5rr3W4i8x{J?lR$Vq@n`@8AwykXvn@SVIWH&~qPM_h&S|~QV*{YyTqT;7%deHZq zW&dVhvij2>_EKb}4p{_o*7vwYV( zw*OoH+x{!t(d%Rox>x4=pKiI^+%M1U?^yXYf9sOJ^A*q9{#*U&{NCg5zm^yJRc2(K zn)X#L`_#Rk(SJ1+gWs5{-`TWGb3$%=;xmckQ?Gx%9k*=u4)c5V+fGjlX+1Y3A$aY< zb*3jzJu5Lz)RoC4o zCm*FO3W~N=zoj!}ll=Vh|8w4-e!A1#x;(bx@%neq#i!|fk^aQ|gQ@yV`*M$+#jBUS z+?UE^@N+;YR+aM_x~ksWU!ce0J9J z^=?o7eyIcO6T0TUdSc4+K411gxpKvN+t61(7k^={VRlOTtMiAUUfyik{3Yx^*gtYR X{TDJ{_Nj0KDD`@}`njxgN@xNAQ5aqt literal 0 HcmV?d00001 diff --git a/doc/api/html/form_68.png b/doc/api/html/form_68.png new file mode 100644 index 0000000000000000000000000000000000000000..4e77f59c6f8e1d28185995d3c9abd5a8d1498068 GIT binary patch literal 310 zcmeAS@N?(olHy`uVBq!ia0vp^8bB<-!3-pWInT}qQU(D&A+A80BoJjU!wu9RP!i-9 z%%JBHo8QnsZ_Uo5m+rp&@_$wOhW9|ZrJgR1Ar*{o=X&!UR^V}wmuD_qxbuJRYqnVv z!g9;*D)zP*Jw9oy&hVq(=D^k^X$|~8RnNO+X6|1uq;TZAjfrHR_SX)SjjnU70`&>)+-%eszy2zGt zuZnG|n@q>Gz)R9IFUzWnNp>*Ai}D1%ea~P&b=uphjCxZ(zl>$n`@-yM5&ZQU(D&A+A80BoJjU!wu9RP!i-9 z%%JBHo8QnsZ_Uo5m+rp&@_$wOhW88%Op`rb978G?-_E_=x7vWmRs6{*)hGY|f4iaR zaLehmN3q*y1Houku5X97?_v7G`C!>H$p_(@ZVmBE_IWSc$*?1g!D90N504%`{81Nt z|D!{7kJ*#INqjr6`#ckT^Lg?nw!h*JLWK|TN*cyalg;gQt@$&@FyYd>!WYLLnVhWt z?6_-o_2firhMH?_S2}-Yz2np@_tjjgYtY5=VaXRg>-_&Uu3hdC^Cu=4Mz_{Dyb^2B zzMC_NSMx;v{%Z$?gFYm3ZQavu!`~+09OITF)}ZOOli@0p+6?TFpEjC)=f3!N5R zI-_-g_q`)?_RcJtV%>dpvfZNE zHE)>TmsNLe`j>P}&5Ct*GflZ$WgVMumhR!kwS;YxYmxF}9T)B*hMEB1u+7Zc=VH3H z*vtQ5;9uo2cfQPLs~J%$oqrXo=UnmFvEAAC`023dkg{!lI#bSmiko1jviMxKvx zElb~9pBTja!_%{E-S2LG R%gaG&-P6_2Wt~$(697==Y9{~y literal 0 HcmV?d00001 diff --git a/doc/api/html/form_7.png b/doc/api/html/form_7.png new file mode 100644 index 0000000000000000000000000000000000000000..36442d5b5cd9a224699743a6ac49853ebfe9a8c8 GIT binary patch literal 582 zcmeAS@N?(olHy`uVBq!ia0vp^`9Lhi!3-q(zI;*uQU(D&A+A80BoJjU!wu9RP!i-9 z%%JBHo8QnsZ_Uo5m+rp&@_$wOhW88%j9Wcj978G?-_Cv6_gF!o#XhfR{rCFYxdlAm z&TLRLUc6?D(4t8K3%FPD|6}?iEy4Ri@5O?@EFaX)d}BBey`Z;mW3SAC;tJLeyl4D= zo(+781i`MQU&?y-Wi43Wp7flW_@2RQkif)ONFr~Q8wgC&7)|ay>AzMFWPM( zyP(^8zQ3W_q~ufWM_WoJ@7-o_^1q$+!j()Hj?eWM+4tvO*NRy?HrKqIzo6M;Uz*+K z`Esk)zWQQ%f780`*GZ2J6n8I^GQTxvEsyN%HP(+-%kVu=el=~=@{gA9YhN2x%FUdn zu0LEf^E8#sZRhTuHZAAPmt^%{O%=L&*N?8!y7Fk<^Zgm`DyJ;JvTE*( zS1$1)-%~x0o|DvnmBTQ<@abvxyLzubah`p5D9w5K5~-P1cf{L1IUcR_FI`%6EywL? zQbf*_=}w$0->PpuyZ!u6yKgJEsX*{b~&=(N5casoS|~ z;%m>)Et6+;efLduHGBWdHF0A^+vMTrab`twKSm!PC{xWt~$(69DNs05|{u literal 0 HcmV?d00001 diff --git a/doc/api/html/form_70.png b/doc/api/html/form_70.png new file mode 100644 index 0000000000000000000000000000000000000000..0e2fd991dae924d70cceead75646bc9cdbaebf94 GIT binary patch literal 322 zcmeAS@N?(olHy`uVBq!ia0vp^8bB<>!3-qj4(3b&QU(D&A+A80BoJjU!wu9RP!i-9 z%%JBHo8QnsZ_Uo5m+rp&@_$wOhW9|Zjh-%!Ar*{o=X$R@tia>SugLOQ`}h6ag%iS+ zmkLcb-}0t0_4TuuN30BgvLhSjetODuLv#Kf#tOaUs~4s&*u|>W)!Y6mmaAMlyg|VI z@(!QU)8byUs^>4g&QQL!f6LcD%ky7ymHK$I?aM3&N|?(Mc?`u_y7Ofl^ez9 zloeI|S}LDbqoK~mqPkLGJ;VQv_L+=7TyO9`5TB^lkbf|$L7k;x{(iu(M z>xtWpcM^pUDEG`_usOur9l5-EjmeIg& zQa-2c;f>vyZv_0a|Gt;%eWSE8-h?$N@l}rJ?0oqh)7+n*oE^JPRb|IEUirk+&lm5p z6F6bXpX+~cO`VDG)(F+&+{CTkXMH|R71wLb%8B*r4!|j5D+ptZu8CZ# zzV74BPYlVQ%iqqZe){v^QoWaxAB%61DBsCY#n1uuX8nk8)7D N^>p=fS?83{1OV)LKtKQh literal 0 HcmV?d00001 diff --git a/doc/api/html/form_72.png b/doc/api/html/form_72.png new file mode 100644 index 0000000000000000000000000000000000000000..776d4717373c0ce2f4a0a98a8f457133f8c615b3 GIT binary patch literal 288 zcmeAS@N?(olHy`uVBq!ia0vp^S|BzDGmw0-h37etG6?VqaRt&OfhcpAVP0*}jniIkgd1^;iesV6L$ zd@p^mx^7FCR35{J*~yX*l0%NJoG^V5*)ynnE4-;Vp<8v|U`@11^sGxv(b)r9U$ qvAs86ePAl*z5V69U__N~@N3QtcBYG~V#W4>{ORfH=d#Wzp$PyFXJdZ= literal 0 HcmV?d00001 diff --git a/doc/api/html/form_73.png b/doc/api/html/form_73.png new file mode 100644 index 0000000000000000000000000000000000000000..c46b8bbf0c635f98c48b2f1fbe3ceab9c4072502 GIT binary patch literal 733 zcmeAS@N?(olHy`uVBq!ia0vp^4L~f;!3-q7G;e1DQU(D&A+A80BoJjU!wu9RP!i-9 z%%JBHo8QnsZ_Uo5m+rp&@_$wOhW88%Og^42jv*C{Z|B~;bX$R^)n06K<-@=Cw+Z#- zddxBTn{Rb_W&30ag8~)V&gh2!6*h&8Ke{(aABcB3!w`Qks=?Za!M@SI&{}-?9;u() z*%Ra04Gy_AL`%dn74-M*D6Km7(W0>4)+%w^R@vF98dt-!(;Lh=7$1n4<%;jMym6^^ z*AYLa*M<{Y8Y)Y(D&8~1@)mIC&+`7h_UYL{T3-HX>WW4)+o`c0SUe2iVIhGtXf=pXK1+wq@UKS(id_nlaEXCquryG7HOfO1a ztnw{WG}U6BI=@BWyESa@u0A_+c(q2VdeQ8b(62wNB-NEn0}`J}#*`CKewi$(g-ly^X{DKPzO7!{*7yyb`kW-0#`_ zQB%BOyT;+K24ZQP@(1QST)nFD;cIQqvwaf$Ie*I47{ZH#a#nYCs@g;{7xZu6e(-oU q(*wTLt|IAkicf!3eP#M{`3LLo(}LXlnm1a35~-)FpUXO@geCy?(KIsv literal 0 HcmV?d00001 diff --git a/doc/api/html/form_74.png b/doc/api/html/form_74.png new file mode 100644 index 0000000000000000000000000000000000000000..529f7c9cebe6fccb6c4769c1b01c8f918395a675 GIT binary patch literal 363 zcmeAS@N?(olHy`uVBq!ia0vp^MnEjY!3-qzd~3G?DT4r?5LX~g5{R;w;Rb3DC<*cl zX3+D9&2Q+Rw`S+jOLt#>`M)ZC!+W6IEl(H6kP61Pb7S*b40u}hCv<#f-}yf`TY+Qo zyKT4jeL4Aw<59)2jgy%f{xC0N_#imV^nYW>XO<7jYK(=qF0E3&x$LyH@AHt5aDAn% zXC9j$<=H8*aMg|HH^i2-r>@aEU2D+yMOWyTi;Sc7#Z8RooHN4(7wTVNUdp&#eD&W+ z8_W|gTe~DWM4f#Vm&p literal 0 HcmV?d00001 diff --git a/doc/api/html/form_75.png b/doc/api/html/form_75.png new file mode 100644 index 0000000000000000000000000000000000000000..8f3de687db90d3ffdc3b6089b98392f6c9e4cce3 GIT binary patch literal 669 zcmeAS@N?(olHy`uVBq!ia0vp^)j%xH!3-p2^bh0!DT4r?5LX~g5{R;w;Rb3DC<*cl zX3+D9&2Q+Rw`S+jOLt#>`M)ZC!+Qn>CLT{0$B+ufw{u@lnr*<-Y9IfhHKF4F_O&U^ z$=e!z%dOw~Sj)L6+_0N;ZsH&D2m7}PB(wbBHcLIh_~88PjSu9S^%=f@J0{X_{%pGZ z=S%UEcQ6&Cr?LImw=*;^`<3F}seeCITSSGVNAquEsL6Z0_NCkMZ|?aSNWdo*Wg{K{WbQtwps>DAO(2agMH(-ll-s54u?HRsq(HJ(>mUn7_0 zoXjole&7_Jeg28ejg{gxQMrD-TxyPYipvDezulZ?|4hdB=ew$<1~)EWTIBRecy-Rj zvWXtgZT~K5es@hYE+PB{vzAP9{JN7iFRodfSKLy2>J6)+oY0o`2Q#_$J@w&l6u*%+ z&nt4h)#AH7cdNvOYO}@Kd`yRQr z9xpi6wYGHe*3yK1#cfPA*NggYCdnDL f&n{s6C;OZ6=2xDVJd>BmffAXgtDnm{r-UW|CUGbH literal 0 HcmV?d00001 diff --git a/doc/api/html/form_76.png b/doc/api/html/form_76.png new file mode 100644 index 0000000000000000000000000000000000000000..6e5ff6f219dd4875ebd342264169e5b1370aa546 GIT binary patch literal 671 zcmeAS@N?(olHy`uVBq!ia0vp^)j%x8!3-o9Y`nY)NErn9gt!7}l0cNb3^!1NKuM5a zFoT{)Y<@%kyfr(IUb_48%l}pB8{RW8F!6c1IEGX(zMcDa)?x*o*7zsEE<6A4zN^qw zvVGg!n=@a||M)Rt;{@kPlRt<*__cb!%&n{x8@qamX{GOzD2jB|Edp3q8Gmx)vEvpCxgm^0e&c{nHldmtEgDyC?7M zMiXJh$*UHKCC^!>HN(?sbM|5Wosv6yXaA{@nE$)iLsP zV~e%)ve#V8d1$*#=1$Z)iBp@a6ZEQEZ`g95vU+|l`roRy?*Gg6&Av8@`nH)Atlp$| z^i$5Ae~HcOEOVc|+2MP2N9sAlZ0=h>ov(RriaDfwS}$o|u)I}FmCNpVJvZK0b4wYU zb#2n$>KFE`#B}bq>(kzOuRZ(e-E8w!vFwFPURu_%oDa;7EDV`_?ppq`Xov6S6EoLL zv|RnE?Y8vf&!Lw;&;Gia?{0o-@4YQrH*f8Kt3FHU@Uy(lK~?uI$G(0T|1Rm7)%~Yy z?2L1cPC9>TcgOnMZ)N!&=({AYQ7ljHdjD0fLH&kwR#@<+6MNskJ!mNSX3Lex^`*59 z-fvVxe@*{m*7}=0JwyAhV+O`M)ZC!+Qn>##f#$jv*C{Z)2k;-BIAlF>qr#T=4(4+oRMn zA?tH_S@x3_U6^9Xth+VplRm?r67+!ts6`-70PwHF9b8RPVCpLbXQ_soPKu63t0=5=GTv68aMtlejMZa zO!w2p|0y0zQeKB1)0TUB@bdbGPRq7uD;`>={bMsQ)(_qmd{2l&1FQU0-iGUrEZxCe z{k?Whl6B+Prl$*nLyI>W>gulPc3o_`Eu{Vo*EXBU{Xb2!Sq`-C+$p4X@OIj!BgXH- z+?*M2mSy6 literal 0 HcmV?d00001 diff --git a/doc/api/html/form_78.png b/doc/api/html/form_78.png new file mode 100644 index 0000000000000000000000000000000000000000..c2b93efae910b3ca1d4c586c7d914679844f5703 GIT binary patch literal 666 zcmeAS@N?(olHy`uVBq!ia0vp^RX{Ax!3-onzg-OyFbMDoaRt&OfhcmVRq~!LU9_ z?v&sCr3yB8zD!w{D;aDMI4559<;#{QPnL(rwuzj-psB|E!E(>H4U*!s4J5L4iz7Fw zZ=bH)Bplpo^i}nwYwg2t*%`Ydi`J@q^)3#TQIAUl`Em^uC z)6MGU>0;C8tY7p#-&yeMs)jMw?QKc(o)^kokY6?H`#WXN6W7c|Z>8+q=K5ZBVdf8> z2QsstgbJ^h-#yugz2sHzJhR!sR~tPUq?50QF8}zE{ZQb(=tr*m68!ZdOJ~l%;qtC( zgZJFx$MZ@&V*Q)BUp(69HHrUt>5b9}QLAml1GYz|>oa^Tm~Xr0+?Ge$$yFcX9i$V_ z?zQ57oA>74c|FggGq1k1%;Uc5*SYPI^FrnMzm!c)r!P-YpFLBe-TZ(>PF835@2JUT zkDcpUypDcaq{%<6TQc?Lj~}KIA7p0hr&U^oX^0d)S|hvk_nx2W95YuYh1oOT;op7g zMaVR+G7PC7k%qvxBvgo<=)UZ zr*PW25`Vd8KLR{E9G#Xtv1h`C5$!fH@_!Iaf{y! z6E9qwd;I>7Z<@#68O(S2$KB2O(nQifbEScI-m)0sW{dpV-&zpOC zm~ig-Gi4_KK5o8ly{C-M6^<4kAD;H|E-z>GbynD^-TkS3B-!45*NxnSC z>+`HtBC+49bu4S7D}&C=S8e+A$!}s;X!N&h$1C6eo-qAtLErx4kEWRw7QNWPvoG}C zc8;m{#P53x>mHDQAsAYmmy`MGi*BWT&_>tChZSGDZkqFQV(#@h>zjF=xn(FTv0r@O zm$4yv@rkJ5)n!F(Y0GZMoiDk6Im%8Z-Q-nG-{uO{Yq9zhd>)u}=!Va}8G9oqqh`i8 z?LS%{N*X<+fOfe zv?lQJ;b*Ca5mMfL{ygAoP#t{fjk&xdV&xVgXbm3{D2 z<{wPPOfd&%{JpvN_1n3>PR{ERT_^r4C$Dk*S9Besa<=+^rPYY#qJsA=@(gMEXbLAyEt^MO8AuEUr!{pgV(KjzufMZ zo3x{sXS|W}Y^m!pE6W?0+jgzbKImDdqq(`apW|5JmFsQ_JGaXDv)nx96tSyFn(+Xm zm(t^ZLP^RV)rkzhwDukeYqIWq^|Q(M)`ZA6pPAoh9j){Pnq zopWOK|f>T#YfBEqE zv8psf-bId8#{(}F-~N%fo9##6oaAjY!p}Th9`D;w-*120o^w+}ujyV;RC~JmxvX`M)ZC!+Qn>#)qCRjv*C{Z|B~ewAg^hwO@SC#=rmX_oem( z26Miv7M*zA@JFH#>|Hwynf{n9!%%v8#RsLwexg|4No}aoP`*F)I@mFuIE&uH}|5Dv`pLZwU<^~rm z6X^R}wmIcv(4{XOH>Mh>-;X@@iob1Z-SufLO3OX=Uzx%8_Li!y_w{>mKR3xto+og9 z{x_Z*Jy+#pUN7by&vN26RZ!>Ea|8=$5W`RfSj+WM%#p=CYJmcIIz7?Nu znN_Q&Z98|wpkixok8auO<2`EoX6rWW@_X&P>DrRJKPEgcklD7!m~WTaZv}=QdMN@w z_Nv)U`**hRx&dPa$LDJm%oT0dOxB7{TR829O}H}$gT0gTI;YM{Zt4%G&p*naZd?#+ lc|0fkRZ^WIS3^BhJ;Tq}-2E*K*E~Tf$J5o%Wt~$(69A{O5FG#j literal 0 HcmV?d00001 diff --git a/doc/api/html/form_81.png b/doc/api/html/form_81.png new file mode 100644 index 0000000000000000000000000000000000000000..e06f426e25a1fc76133903c35a81c2cd4276f4dc GIT binary patch literal 626 zcmeAS@N?(olHy`uVBq!ia0vp^6+kS`!3-q7OH}6rDT4r?5LX~g5{R;w;Rb3DC<*cl zX3+D9&2Q+Rw`S+jOLt#>`M)ZC!+Qn>#)qCRjv*C{Z|A=3d#oVPV&7LF`R055?c5ED z73SYk(!v%`4eRJ?VvVg0`JUhKU*ujZ`vHID$P-cz+5;_{rQHjeAF$PH+upl9;qQiD zh8tz4Gukx=$JH`zo%wjl6PAMRFG~+;%-{ZVPp7EuKArbBu2fp>C^ueTY9p-8nK-3_ z^@qUfJukB-u^*5<)M>%?`0$Dko7^8N+m*eZ{3Q0nRtfTu_r*vk&Rh?+iqgC{3 z`)cJ=_8WQ`EON`248VH zkJk6zw+;Pl!cx&%{*EDL@k!OLpcJ1u)~pY>+WQ&eU6sXhUoLs!v{$BLxgp~R*&{Dj jr!{Ln{hi40=kgEMia*?Ir_OX!2c;ZOS3j3^P6`M)ZC!+Qn>#)qCRjv*C{Z|A;Vw_JheNWH@JuI=CJZ|f=@ zD(wH|Up9I3$u@&y8gDQ7amO?Mi#{UxfIT6+LEb^;_HOoyBfq&C$}KvxKdXv85Y%J3 zqo@-r!cZ<@ayGhKjbV?1ZC>852^D>Nk8mH5&WZ1y%=l|(t;SKK6-P?f&Sr?)SeA0S z^~RPjjCY(PpKn|>&1>0Wmdjl0w0|lTW}L25ms2_No6mC1dEIxPKWtjP{PvBM8{gJ9 zryr7iE#7}V$>Z0&8>`t~Z+xgwdL=gO^&1D5TW5Zy=(}Z_c`F)g`etffof6V9Ve;dB z>f5res+g5t$q9S?XI@a&W})X6)(an%9ZB$;@2pt1xKH9hW)QH`ccoTo3uaaSFfpxkA&@n`_grPMNYsVzutF{>vu2C$0;vPWn6D zEx03R#o`xN*6gm!dLH&~ql!8AM;q01V$rg0-&VcbbWQO162|t5+&8Pg3Vx`|;Wb?` zCu#M5=f{69@mnhY^(t&+JG@srp;NN)MJ zwYSF3`M)ZC!+Qn>#{Zr!jv*C{Z|B~gbX!5dh2OkUVA8+;`Nns` zD)wfWPd!pu5V&Qv4vXz&+vYgNdm_A`Hq7wLp|fgU&TMz3%JX@ z_sp^XqEmIIPBV}3-NY+1>^>M==C`%Jn(Y>ogxvK z-kGqu%rH7K$~$0r!S@&QDpKX$Kj%dL&S>229GAzpv{vHh%o)0ksVifAjq<9`g#2tQ zn5OFVG}P@_;^+LI`JW$MxfeWT(^rkm&cqZ}?tG~wMK52Rw5*iznrsp`w|s7D{#hrn z<=^`D-YUs=-111wbloSrrpP@USEN()7ad(+dhYihzqdy|EKJtD`r&5z+%{>g)Jkvm zUDr)%IiGe;=-iQL&pDadg&~iN443 zUk9sy6QAo*zIFNerJFcP6R(H%zOy&*Nxhb|el6?2nDbs&X5E)s`|H`M)ZC!+Qn>#^;_cjv*C{Z|A;Ww?u*GXuaq}`&S?SkTwKrW$ z&ZDRJPO;tVEYJ6z&BE(%<@PF;?&&Z;cEeWc+N{c@9g$mos~MI)^RAN4zhJohPoDgi z9!8soOE%Al`(pXI%qYvQxmIL#s_D&5zqRi5eOr4jt3qnm=B`O|d$+GSwZM1r`r6Q- zjXCQoKF{B6b2!BP^_h9*!6jkGf>!nme%v}Q`>mG{=gKGN%WQ9dcH6yXwgtm^1HGGB zA?a>mb3>P#b*legBk``PGl#`f`2{YYji0)e-dC;Je)c s(>!yAI|?k~Aqn}{zCKf8`my~Z`#U4nA)=YZ0Wr>mdKI;Vst09V};KL7v# literal 0 HcmV?d00001 diff --git a/doc/api/html/form_85.png b/doc/api/html/form_85.png new file mode 100644 index 0000000000000000000000000000000000000000..4b0de871e6d7e381299afb63b2eb4d508b7bb2d2 GIT binary patch literal 650 zcmeAS@N?(olHy`uVBq!ia0vp^6+kS-!3-q5+cGu+DT4r?5LX~g5{R;w;Rb3DC<*cl zX3+D9&2Q+Rw`S+jOLt#>`M)ZC!+Qn>#-E-pjv*C{Z|C0Zd#xbg!f$=-*q{IR&s-ml2M9fQJi+f4>x0V?rOXG?6{miw+auXvEg<%QH==h# z^?e_^bGs_}iwk~E+_fjHf&IpjISdWq6E-dFdp?_wfj{Ay{ac3h3k3349sj@fkiG2I zFMLVTd*pMD_S*b;}@>s=HSIM8@i?tgo-7XZ3C^JCk#_Qv3G)b#cd|9<6@7#bf%V(Bo4LwewTL zCDxXyo_aU+<&NcN`u}>I+&eAe{M%e5y|pj=lrK+y=hJsU^ zTBpiB@Vrttv*iv?<+WNp{Z56iVUkz3mN3q9>|Nkt@_$}w@$~D9G7om1zQ*!FCM9jM zS+& L^>bP0l+XkKkFp-; literal 0 HcmV?d00001 diff --git a/doc/api/html/form_86.png b/doc/api/html/form_86.png new file mode 100644 index 0000000000000000000000000000000000000000..e2cdf1fd16ebb56805715035be6f295b5f7c7ccb GIT binary patch literal 622 zcmeAS@N?(olHy`uVBq!ia0vp^`M)ZC!+Qn>#=D*_jv*C{Z)0y3JyGDvDdej8@V|aH6VEjD z*Js|OX!Cmpo(SF48KN*GvGKRkXF;kQlyi)Y7k}DLyn8*F3i(A@nYISX{ zTwV5k8?hbFm|D5SZ)c}IXquh;sJZ-faqW@Rw5_UJvz2YUuPm%|u+-oA+$P{?%27=J`%$-Cq#rMG7y6NZHsQwC zFY{{44~oWVtenW?@Ye5u!B(jx&U)QD=jV$uF^CI_)$o^GeRgk`)9VQ(TjK<(k1WY$ zve9ZD3i@n(9n|$y8Z*#Bk zJkb1jN0#5Rf88Q)y);he^{@4?z7E(mIL~SE8jEL9q>74SuV`5zgw{@3_Q z&*r?|vTxt(g%ds(3on{CzgD?LATP19-fLx?_x=3P-)l}4tZ@~8I{9?+Z2Q2Z<=rkX zrv&Y4y<0QIGGos4CZ6*}^LHn22-{rYou~a*>8N5$LF?Q8YcDTIEsb82H2dc{5q2Z{ z`HM@8fxzODY>a$>@&+=l#v&z4?p|1_m)KASGHiE84aUc z+RFAv8Lk5*4;`su(qW6)`AcQOoYU{jvKaUEq%!F+Et=aiFU@YPX4p=h2K$3Q<}jH3 z+G6JIJ;9{se|9_59Ovf;=lRZ=xu`qH(s1)I}176)fDbLel z-&bvh?FRSmZ(T4?HtKjD3)^X%O)P(}?)35qZD{^{>*(Z!&kw%&^v*f&?zi>7-R$O$ z5O2>5zrXR$ZrOUZ#LOaeqTO4DWX^RODc8dJ9?t%3=_Dxlv+KA~XUCQeY14|=h3z!y zk$%c9KD%Sys!3leeV!J-m#ba8a?>x#qH{aB-Ls{>$0Y1t!!-BYmD%CfZC}WHJ>FcC z?-lbm+GR;^?PGyA-Ac!crr*v=RrWmkJJk8B+|4L~9nYPhSvG2Cw`PAhwDV>erGzWa<9l3m>l{;xZ~I_`TY z`jzEHfwy&}a(Cw>jkJwFZyl;AZ`s{c7S&MmhINOt>jM9yNsRLZE@eu%E;^hP+jrF@ zGU$A*V{!G|E{6OT*bli!YOLA{^gBZ-p8G`J#hH?Vaa^2!n+gx-cZ$Th|5Ve zd~N$keP)}H!}fq}`r=d8v|p6s*Z;Oex%`zOS3}&9vt30m*^ef%_1v2K@5LN$t5>ph zt5arL>HALm^L!@n2meHQSFg0|llPvvzGA-jHGW?w*6Zt1yx%a`cV0ak&h*hN%};x0 zRYAz#f2GS9Ze8HqAgp2dZ28ZUElFI{XEOZRec|+FY4=-9CQYw5g*41RqBMW)p+39+ oN{y~3%BTHX{ZLkpPgg&ebxsLQ0Oqx%`v3p{ literal 0 HcmV?d00001 diff --git a/doc/api/html/form_89.png b/doc/api/html/form_89.png new file mode 100644 index 0000000000000000000000000000000000000000..ddbab8163dc7311b1210c05e342b3ff9d6cdc5d4 GIT binary patch literal 801 zcmeAS@N?(olHy`uVBq!ia0vp^(}7rugBeKn=G*xKDT4r?5LX~g5{R;w;Rb3DC<*cl zX3+D9&2Q+Rw`S+jOLt#>`M)ZC!+Qn>rU{-djv*C{Z|C0Z`(!21V*j4I@Xx>e-`h6} z%x;mK@IdA)>no=YmY9{R-tA-k(QR;S#&?Dffh}AHO4p)ZS2O(3@L`l#pw{qT)ay8h zfx_*_n|WU@W0-en`E2$I*{F}*?=^Q+?OHnB`}Fe~<_fk-j?nrvzAvJ8beFPx;PLab zRbM=P^~bJae<=wq%b)y=2fPE?PG<6c;5iz9rM#MW)^J{hR+?+_{VKg?3rd z+PLrH`V}u<9&cxFyA&6G=CGnexZ2MvH4J@GmqiYxI89_;{My;-gOR06^SKq}pHhQQ zyzBMbm|b;!^3%0GA>QXUzP~YV`s6!P*Le3-ANQKG{knA{^R8K5n(n%LK0SJ?#d@Z< z>C~rNCi%&>$G`2nBycT4_DS3FvrD}-pQh?G7T){4SgdzeLc2o$+4Z+-gY({>p1RtV zk!S0lW7Y5D4^0#|R@v5-`2E|KqBoZ3=k|ZxqmlRB-Trq)jP}wg-a2(_=bD%#uWI=k zW37An%NzgW+9q*TZ_>8zXJD(?9)BrJbE%x-!xwcX{9P+vZNDg&Cf?O)|H`%Sm_46l zgZG_sw~~K4TYR2ZgnPG|3HSz-h1*{Ldn4_`)egz$NA#oL6=}G+MoxYC-^=4|^wHE$ zEn9b;nsdA6uj#3L-&G&)EcP^i+mg6n`1=Kq{U zb6v6OZyFIdIg9;1owb^>TkPAp&W3w4bIllP7|V|3oYy_|W$va|q5G<=4hWygJGoOU zssC+t&C{tuuU^VA{}9WGR$lvXP0`_mo1aqIH!=Jd{3U59!1hD>2YX9|_|{*?Rc3+` Nx~Hq3%Q~loCIC=eXdwUq literal 0 HcmV?d00001 diff --git a/doc/api/html/form_9.png b/doc/api/html/form_9.png new file mode 100644 index 0000000000000000000000000000000000000000..3dfead41e94331b31d029797aa2c130251210fac GIT binary patch literal 578 zcmeAS@N?(olHy`uVBq!ia0vp^xj-z%!3-q37?os!ltF+`h%1mL2}Ie;a04|6lmz(& zGw6B5<~Q`uTeI`%rMoY`{9l#6;XMNb<3>*x$B+ufw{u_j-BI9awSPCk^U&}8xx6Wy zGw0^K%rl*;rRcXv<3Y0g?GNG);tymre0N}fD|{gO!v&!K^y|i-8 zRKq1w55&UF_8+MT5_y-T)v9E0KvdDQt@da6E5?F;ZRws#Z{EJ#z^-p_WL_2+;|%jIY`>DKKKt{%`N2G9+iI3A zS#R+w;$)NZDr+-SshXfmJ2%RA875Y1dQJ{H)c1O4$i3Lvo3Fk5BzAUdan?4i+pp`o zHf`_F6s!yB{3XFK-*A(t`S--wujlQ1de^^a-F*APC9!2z2aeB44)?drE?azRV|cF2 z_Qu`$v9D*f+`eOK%Jx=e+l0^$-6cWBOaKHeInzZ_#doF!Ca@RkCs0Gr36n`KbLh*2~7aJdHEgy literal 0 HcmV?d00001 diff --git a/doc/api/html/form_90.png b/doc/api/html/form_90.png new file mode 100644 index 0000000000000000000000000000000000000000..a98e312b70362653578048ca6845448b02422098 GIT binary patch literal 887 zcmeAS@N?(olHy`uVBq!ia0vp^vw>KigBeI3pXXlyqznRlLR^6~Ng&Ezh8w6spd`pI zm_g4YHou{N-kP09FWr6l<^QVm4euEkn4WpMIEGX(zMY$Ud9xNzi~bYcAf5mJ@7p=9 zP0HSSZp-sCe;X66rv`G&KKo4jzxTc* zH<@h~?$)h$mghZCU9yp%L0sTSg8w@C#Uc&qUrv{ErZ7}+FFx`-_7h`S;#wmknbitv zZ)6{Ex+%|c-*}_QW6ssvZ|@5vh_luHe=_;f+ta$aFTU~SC;BtK=i*9`f7fPv&W+dh z_w~y@_fBMHC{2w`{dtz1LH)vwNep|ApKafC*rn()TkRG5C^28J+c%n4B(2%^XlX6$ z1Cew0&-=Jg%=hyZ(aWmov!%^8TD}gQ7HMLVo&J35CZ2}v8dvfe%M_Jf%lN-} z_BUn8+3Z8P=L5VVd6)L;UfZ!HtY=@KTWN_K5HIt2VFPR5|Bfw%_CKO)^ADOGVzp>m%Xa-%&ZXz7p6kA^H{J8mTzzW-gPpV8%LTp5)uywV{$l+6B09Ek zeF)?0E!zHDZ!c9=XD};Xc=qJtSq-ITr?oUf*M$3j=e}-P?^pdo|66nGw%>=2sTsa5 z%DotxcXK1x1zk7Rf~JVuYzNXWuzmiqon_<4m8Cns-AY=t=-kq7#y@O-U7~%X#nZW- z-*~n>b>@@guxUvh(^+^6crQ1m?J0Y6H}>|~#m9X&x&~G*N&BgIAt03fgZ7b==|Q3m zms2=vy`)^y*Y4G{O8y#HYN~5~*t;grk0IWre7$J$u}zXv;sviRR2F6W#w=catbnnu z>*50UTPLKVqaB2GmtEofaNqg&7Z+)>ogbuTd;R}*Sc#>gJHTguzIkxYLgo0EwG8pj z6P=@~?#q`eH^eJWOP>C3?=!}4hLzF>bP0l+XkKlJ1BG literal 0 HcmV?d00001 diff --git a/doc/api/html/form_91.png b/doc/api/html/form_91.png new file mode 100644 index 0000000000000000000000000000000000000000..b886d8c0ea6a9505badbfd656f14d4914184893b GIT binary patch literal 1070 zcmeAS@N?(olHy`uVBq!ia0vp^?}1pHgBeI($$#-5NErn9gt!7}l0cNb3^!1NKuM5a zFoT{)Y<@%kyfr(IUb_48%l}pB8-SKD&-HY145?szJNIJI76qPGdq&2{*n9tT|Fe{I zcjay0`|8a53ae<-lb#lyd5r&vU zz0nQlFYaLY!Ls~?I-g$KbGwFkrUQJ3_b|jHpEjTMEb&j^A!~7l`|j$$8kgyr?JD$}2RazA#}8%gl#G3@Kk`(oQ}Ip?-{*{9m;3tqo&=K2$<$*{dbS*1a{ zWbu1Tov>TqFBr^!ZhhlTh}SztlkWvn_zu|i0d;oPeX(WtEStBDYlg|HJKp;a_HUe` zt|lMyWzzc2bz7QeK6>)p&E{D3di|hUu|@K)1kOy~`=YrfG5L#-qSQ>uI`- zn6_2pP~PrW&7L*tFPF+lr2jPPJg?||;cV+^y>C}PUi%_Y``Dpp<4#r4!jz>3lh!ZO zE$eeF(r0`0VCC0oo5Rw-GAEQz*Vx6>;xxA}dd}VmcVsx11{}ZoFZB8H#4pZMjQVa$ z3r?9TpA;OE63H31f?-ZUepTPSq6t>h_P@@MP}iLJIqtcuhMDGxnL3{5-Tn6LN%#3Q zzm56E!Bvxb-sr?LPwV6>IQF3Vs;$~$e|}pv>#4;WdNC%>JF<3HUk?7#*6it5lF$@i zQ~xE|yZueLnfJ*r7auSFy)ag`)|E*nz~yE!V?n?7WvRUn6_h6YG)$UzYa4_6ik71( z_ST1-|J-_a@n&o`|I#Ri_W@Nao-;j=o4(An>agSUvY%!iivd0p)s6S3j3^P6R_k literal 0 HcmV?d00001 diff --git a/doc/api/html/form_92.png b/doc/api/html/form_92.png new file mode 100644 index 0000000000000000000000000000000000000000..7d10fdadea7e082e7851fe68c9af9ec47f607123 GIT binary patch literal 1155 zcmeAS@N?(olHy`uVBq!ia0y~yU{nCI#W|RP|rEhr8z`*>;)5S5Qg7Iza-LfqTJTeZfu@k@7-`3}} zZ|dH?^zXLtuQTSYd*qYmbV!%s4=Y2Bng~OUid{R;f?eztZ}=FP7fwrNY~XK+Jd|%? zvdlrA!9e6+FdO6kqzf~cb~7Ca5c#okRTpD}yt`qB-F)ApTe|oe_Q|_Cx(bWNl=z&J z%RKwc`b+Ii$+~s>3%>L5I;1zxS-0PxUpW5ntJx-zj?TiOCRRLK!%uiD-2B#Ne`wRD zW8H6kK4dW$-21-yja<~EnL;J07w*(7kXN5y=I;GlR4QtFCWQ!0Q{ircG6~ zD<#jy#4nlJzimo4YeU{0r`@klc(PS8T>UGc+?pTs@7#hyR`FRY7F>JC+q>XS+xF({ z-Fpn&@3c*Sx$aXOOM_Y7LVe@NnFgKQg{P-vPrKile`Y~A*E*9x$Fd`;rrMUNKnmmgMi+I`bY*Dqsp`_`FEvldu>*6_G} z)o0q}$#aD7TQ{?b#AHrtieeYtaAm?nd6mZ6rT1ntpWWVR6kPXm-d;b0m;MEAWlnkv z3ZJf8V0*F1Q0m2k-52&uTe#f7a;5rX_kHDTy&4sZI=LqCJ&!3p{=CQSrq6@I&~>ZSjs)Gk6V7KG;QCfH_1ELeqBoPeID4G>1(5CV=DmE&Z`O5-j{oOmGvSO zdGogGMW^;O=u4}8&oSg+n6+SOVAzc47vXG%Np^uZ7Mv-Un$ow_)W0*3)!(Gok>P?% zqkY(o<4T9E4}V{FTKS>KkFTNKqRmnnUK`ox8h@{}ll!9ZdG8%ZXRdh}i<;In@BbF* zUno$;?)hi7xj9pvAzE;c`C>}*tqQB(+OX0Z?TS8dH(5*^?spk z%Tl`(qF)%i)|!2}dR=0~o5U$00fr?uQ?_#6`_g|pku`kQk_T5D@12aF8L(O8PK4NM z`I!1s^Zso*Y5OH2>@CmUX)RmX8{%AEcz()U7;5vA(PaC>b#v#0nY}C1{^|YQ=j%C^ zfV+pmiQwYG?U|o1lzrUvcmA5AMZ2d5AK&&U?B-I24_f=!d~YxKdGj%I!|fkpz99i6 z0naar%w5QD_ljZ8cFPqUS?|SH#c26I|KV-Lzz}!r`U2m@IelOAe=K?M1~aqX!&Wb1(jKZ&C_x9E@YP^2*g~T4zn(;*;)kmWN@_tWekH4Vj0!CY1om^KCDtDX1i~?5XU&zhbh{$J^ph<%2)o zzZ#`7(e>)XzXullY0^m7_`T}t#FVNKrcYwNKfm&%cj9F-tS$BDxOo+q%{+|UBM(5A$jMA6)OE+=4d~k#F zukh}KsR^gvPs%v``Eq)Ib?*$vWjo57r5tuQ3FxKtZmX$07nO5*+76YPPoGa%9INVh zf53Dx!-tHtPdm;gPwcGt@>yf~uae2(jyq8Mn{y&trdC&DceSR%N#nyK@{F~P{?vL5M{KqmU#s~X1)k~J} UE&5<0BnL{op00i_>zopr0I_sfMgRZ+ literal 0 HcmV?d00001 diff --git a/doc/api/html/form_94.png b/doc/api/html/form_94.png new file mode 100644 index 0000000000000000000000000000000000000000..4c38613c59521c9cea004a140fad01f23cee47f0 GIT binary patch literal 708 zcmeAS@N?(olHy`uVBq!ia0vp^Gk{ovgBeH~t~qiVNErn9gt!7}l0cNb3^!1NKuM5a zFoT{)Y<@%kyfr(IUb_48%l}pB8{RW8Fd2KgIEGX(zMcEJZ;g(Ct9ZFf=KcS<{*BYa z*x!6piC44y>G3wjs(I6zTcLkgf5bD?FEn8MGfT%I_!sL3@2+5`3@sjp?XT)ZKk%() zn5S8GAcseP``>_IwjYYy8!{WBmp)ICHBe5S!yh^~IzQ}br0BB4ZVhc;I6ipDZqS^g zdyPffd({>>yJkbF2K84Bsmfxvy>Bu`pL{Hy@UHNbRf3Z#??WcBSdBGR9nJIq)J4eq zv>&_?5Vv?=1N%L}&)Q6XCN#)Q4mq$XWZi*tvrMvlV-EgKV6?vd^nUcI+B?(OUwEBl z@)Jz9Il^Z)r7}B>Q}wy1{JQn;nmo^+stcWMmVbPT@N1?WuX<&HN^afOTw4AnVdp+D&eb{@`_wfba_nktbyOX^ z)#k5NPuMpnK5NIv<6qNWG*t%w$#^Al?_0+HwdW%KmE1kC$6{A%S(oN1Q3cmin@+`S z+NwQOGX3_vpw0aHi(iSa(tjWOdUo^6xf_19rkUz_*#&&NJ*#f|lW?8$*LALlYWjlM*~l@kz0+d_m9AV@DH?bMh1{Udzt#u9VH%xx;XYbL`G3 zQY$$Y+hln~uUg+<+#bnWu$U`t+S2m^M%7~7t=j~BKNQ}~&inP_&s~Q5E1PyMwbv6+ zmEJ5AeuCxihhx!;?e1OEcq*y1(}1-wP{wKba>jqcHxvEbpa0`xIbgrQ{_9(TnG4s+ QJp-jhPgg&ebxsLQ0PNi-1^@s6 literal 0 HcmV?d00001 diff --git a/doc/api/html/form_95.png b/doc/api/html/form_95.png new file mode 100644 index 0000000000000000000000000000000000000000..8e03ed3da11cc082c5f4f6436bee7c10d58a478e GIT binary patch literal 740 zcmeAS@N?(olHy`uVBq!ia0vp^-9RkC!3-q-n*LJ&QU(D&A+A80BoJjU!wu9RP!i-9 z%%JBHo8QnsZ_Uo5m+rp&@_$wOhW88%Ou?Qmjv*C{Z|9yZTcaS*V*gLDwBrBvy}Vt` z#xKsOoqSfLAw1bG;BM&MJjQ>_4}=mKfA~f;D1Kpn@IApfj6u1D^MTm)PKNWj`tKQb z)gC;0>_fp@S6%G`(sz!zGT%|Ebx%8Uw8L)a3X#C?-p;pNlT8bzLj=-{?kLbTfa*r%Oqr@!=+Q$c9>Nkcipk;mgDE;yQXY^w)42S6eCZ< zwb(i8;_>Tr9=%zr^zLSS(Z^*Kr$g+wNxZ#X<>zskBmRottX=aD-PD|>!5kr#IW_cI z>)P5SXXfOJ-zhw4XVbIFbLH&(=sD44hx_|fLgvqYA26vcCNVoUcGC8UUyGha3BQfn z_&x86R!&e$@yy1&76wQ1u<(0Rk{gSs!&t^yu(Q~_|6L4ySg=G9}hoGLU=>}K)*F1ZC z?BbRdhP(y&D|2Gzchm=&iIQpG+hZir} z4{ug5*f(cJmNUNMw{Cs1PtK0PzGFVdQ&MBb@08Iuy AFaQ7m literal 0 HcmV?d00001 diff --git a/doc/api/html/form_96.png b/doc/api/html/form_96.png new file mode 100644 index 0000000000000000000000000000000000000000..50dfb77379790b212e3fdc600ed77ec48c7d3b18 GIT binary patch literal 677 zcmeAS@N?(olHy`uVBq!ia0vp^`M)ZC!+Qn>CJ|2;$B+ufx3M?3%{JhX(Vrx4@aO;ivL_Nu z-_1;NC);dkKdh2-&13P=^$Z{8E3IYtz_x>lfnQLHVUOIb^-M)}=?oRjhgkDHH?`eu z-)6;7A*ff8%GQ@}fAsd3IrsWMvQ3$zS7FQWM^UfB`C`zMGt#S6UNfw$Ja>8Hi-;!G zXX&ToUk81=#Mr<+;ky2|w5G?UR>c7`OmhP-JS>#?!qgC-n78)s`MKNu#BRP~T7TZl zva2qXA-#F+)^DPBodd7_-uZdkE&VGS_jmmi(0rF>71!Ie*)jC$`W>g`&b2zie%IL7e^@_^@d1zh{K?Mu@xb-XjAb**98`R|WX-?y?$CuTgVS=6{F@iH@mTyyQQpXMdorskRU zrC!LZ&6Cof$1k7T;@FaZ^wOU%cW!>3?fYu#w$ux$i5OJF@cLr~$*WECKd$r$^RAaV#C#zBfO_D|sqw2moZA$fHP3bmIIsrq203Z%WNOR$V=tNI}nJY+Dqm$rJocT4-P@sX{kOycs%SR-|EunQuarKPJ z<0Tq^uFqID(j#T-<`M7_0a@MUs0vzrUsiE1SPI2fTI6C;fKD9nHxxA93(6OzS13Wm z!qML`))yxa!8^C)&@+S)sSH_-YOAxiN%yD*c4v5`Nq-k@wRk>LS*ae`D^TL|M7!tX z86T|i&D}#;oVMeI;T79&@(mrdY9AsDul)M6614`ppn`o- z)%eRdNoukREY1j_=bR`umJu$aOe}$ALGfUed!$7(ipvw;@_O3W+4VN9kfuMe5kMO~jFKJlxj@`0tE&1sTt>;X>!jTn7bf)u%2lZdtKFpL2&eAD~bxi27AZM#?Rnn=l zExo%~&w|9|_38BO{K+_&fXeKnKG27RW|zL@zPmK@ZW9}Ce`eGxIqEvTZ4ytFytF2d z<3ql+ZhBM|<+3@0e~j{7W+|NUlFizG;#T?QYobJdW;u@OO6~i6xnP216+RxKShG3Q zqQ3Cg1x+ZqP^S9a*m5Ndk)3m6t!PtS{$f2N#G-6Y82sWW#l9TxvA`Zu~ zl~a}}tw$jnrEyBk>Y_ET1lHr+xgjo`p^0SIt-M^h7tcg@Y4aTIdxsqSSZ4(-u}$-< z>#uA~=(ssg*-MHRSZMZ<(h=HD+&~aqr{BH#rq*j`X1&?91V7AIC!ZdExwlnS!yAzs z6%}tZRt0az)X<4LOPN{9VV>ns9lcB$I0vSEJ0L&@KG{-K^T2Q{1v#{wV(6`|TM~WP zwUEz>QJXto?<(i2U{Gyv=NLvcli+>|VI!n*F-CzlcKx+sywgcwNhAttGB^Lo*>^|T z6i?KRcOYT}mBF3EJQwvwnWV>d3iAm$Q~0Vh>1CX+nq#E2e<>zUWtt#s?EmVhnfxfe ztlMq1MqoE)PQbQ5>axK=#9^xyJ}~siCd!iTdN}F15p1Iuu>qET#CTg7*JXMGGhsGz zGe+m?D Su8IFH)xpli_VtyU$^Qa;QjnSe literal 0 HcmV?d00001 diff --git a/doc/api/html/form_98.png b/doc/api/html/form_98.png new file mode 100644 index 0000000000000000000000000000000000000000..99a3ed3c04b29295c676a572a20d3f6568da1cf7 GIT binary patch literal 655 zcmeAS@N?(olHy`uVBq!ia0vp^`9Lhr!3-pgvL5~eQU(D&A+A80BoJjU!wu9RP!i-9 z%%JBHo8QnsZ_Uo5m+rp&@_$wOhW88%jQ>1c978G?-^QMt_E>>OCoD1N%>Vzn)1RpB zus(UD_{HHfj}?z6xT>yf*}-(6UTG7tc(pzWnUR^=6}`k~$9h4Fi9w?IrzcF; zbh&8XFUTOV%<=7<+YA0S`(GFT(lPU47DK1ooLAZz8(6zj0xzFk76pk z{Fz6zm+}OE|0-zCEX^YIwOh!idvn^^H?x19kSVcf&Rc%|c!f~>+R_=jKQ2~y)v)|N z$Hl92+2`r?ohy07xZ{lcPnqKl+x`4MY|)STaO<4SweLSe+`oS|-;-Z)ujlKAhb#Xz zhM%vQ6mW}AVWDIEdF3~s4ZqbHtnN24lj{)P?Z0cn(L^ItcO&)p>93B@oAbK!-^9on z-)&Dz&Dr@nPA>8MiO-L>TyU+HdaapWY}PTOT&G^&(k0Kj>dc1V&cF`QDcd9VTyEWE zp~88}=6mi4iLpAx#t_#n)^hQ? zxcH>4Q;ky@KBRNL*>%_OyLZ}ph6ZV)JMQxF^`@Nf+bySOY6~#@2!FyIkil=Qktv}M ON>-k(elF{r5}E+J=@kY5 literal 0 HcmV?d00001 diff --git a/doc/api/html/form_99.png b/doc/api/html/form_99.png new file mode 100644 index 0000000000000000000000000000000000000000..2f2b2980b06d533a502c3cf4ef31ac1461a29679 GIT binary patch literal 529 zcmeAS@N?(olHy`uVBq!ia0vp^AS}$m3?xmytx5n=1_3@Hu0Wb35M?jJ4b&h|666=m zpyv^r-_SpA&Ca8j?!Nr;e^vU1_Y4e-4W2HJAr*{o=icmlt-#Y}zimUx!@u{-au#T2 z&VD6x_O6GR-+_(w`Zsp6{Sbb$yq4jIX}jbl_XcURb4;IS`Ks?_vI(!;S`~CoEj1xZ z|G498(ZhKR^KZz0vd}AR&9>kVI(qshL(PLl-%{W9Esi(ZDVI4hIO~~ z7z%G*WU6^U`#smptlQaI+G^{wHg+F<$PsFEW2wl>yT_AmhG!L9PBMJCByN`Ermi!* zvFnv?TGsx~x)Bv{$+|j3RnYELvY(XbOa 0$ +\form#119:$b > 0$ +\form#120:$\mbox{B}(a,b) = \frac{\Gamma(a) \Gamma(b)}{\Gamma(a+b)}$ +\form#121:$\log \mbox{B}(a,b) = \log \Gamma(a) + \log \Gamma(b) - \log \Gamma(a+b)$ +\form#122:$\Gamma_k(x)$ +\form#123:$k$ +\form#124:$x$ +\form#125:$\Gamma_k(x) = \pi^{k(k-1)/4} \, \prod_{j=1}^k \Gamma(x + (1 - j)/2)$ +\form#126:$\Gamma()$ +\form#127:$\log (\exp(a) + \exp(b)) = m + \log(\exp(a-m) + \exp(b-m))$ +\form#128:$m = max(a,b)$ +\form#129:$\log \sum_{n=1}^N \exp(x_n) = \max(x) + \log \sum_{n=1}^N \exp(x_n - \max(x))$ +\form#130:$x \in [0,1]$ +\form#131:$\mbox{logit}(x) = \log \left( \frac{x}{1 - x} \right)$ +\form#132:$ a * \log b $ +\form#133:$\Phi(x) = \int_{-\infty}^x \mbox{\sf Norm}(x|0,1) \ dx$ +\form#134:$\mbox{square}(x) = x^2$ +\form#135:$L$ +\form#136:$A$ +\form#137:$A = L \times L^T$ +\form#138:\begin{eqnarray*} \theta &\sim& \mbox{\sf{Dirichlet}} (\alpha_1, \ldots, \alpha_k) \\ \log (p (\theta \,|\, \alpha_1, \ldots, \alpha_k) ) &=& \log \left( \frac{\Gamma(\alpha_1 + \cdots + \alpha_k)}{\Gamma(\alpha_1) \cdots \Gamma(\alpha_k)} \theta_1^{\alpha_1 - 1} \cdots \theta_k^{\alpha_k - 1} \right) \\ &=& \log (\Gamma(\alpha_1 + \cdots + \alpha_k)) - \log(\Gamma(\alpha_1)) - \cdots - \log(\Gamma(\alpha_k)) + (\alpha_1 - 1) \log (\theta_1) + \cdots + (\alpha_k - 1) \log (\theta_k) \end{eqnarray*} +\form#139:$t = 1:T$ +\form#140:\begin{eqnarray*} y_t & \sim N(F' \theta_t, V) \\ \theta_t & \sim N(G \theta_{t-1}, W) \\ \theta_0 & \sim N(m_0, C_0) \end{eqnarray*} +\form#141:\begin{eqnarray*} y_t & \sim N(F' \theta_t, diag(V)) \\ \theta_t & \sim N(G \theta_{t-1}, W) \\ \theta_0 & \sim N(m_0, C_0) \end{eqnarray*} +\form#142:\begin{eqnarray*} W &\sim& \mbox{\sf{Inv-Wishart}}_{\nu} (S) \\ \log (p (W \,|\, \nu, S) ) &=& \log \left( \left(2^{\nu k/2} \pi^{k (k-1) /4} \prod_{i=1}^k{\Gamma (\frac{\nu + 1 - i}{2})} \right)^{-1} \times \left| S \right|^{\nu/2} \left| W \right|^{-(\nu + k + 1) / 2} \times \exp (-\frac{1}{2} \mbox{tr} (S W^{-1})) \right) \\ &=& -\frac{\nu k}{2}\log(2) - \frac{k (k-1)}{4} \log(\pi) - \sum_{i=1}^{k}{\log (\Gamma (\frac{\nu+1-i}{2}))} +\frac{\nu}{2} \log(\det(S)) - \frac{\nu+k+1}{2}\log (\det(W)) - \frac{1}{2} \mbox{tr}(S W^{-1}) \end{eqnarray*} +\form#143:\begin{eqnarray*} W &\sim& \mbox{\sf{Wishart}}_{\nu} (S) \\ \log (p (W \,|\, \nu, S) ) &=& \log \left( \left(2^{\nu k/2} \pi^{k (k-1) /4} \prod_{i=1}^k{\Gamma (\frac{\nu + 1 - i}{2})} \right)^{-1} \times \left| S \right|^{-\nu/2} \left| W \right|^{(\nu - k - 1) / 2} \times \exp (-\frac{1}{2} \mbox{tr} (S^{-1} W)) \right) \\ &=& -\frac{\nu k}{2}\log(2) - \frac{k (k-1)}{4} \log(\pi) - \sum_{i=1}^{k}{\log (\Gamma (\frac{\nu+1-i}{2}))} -\frac{\nu}{2} \log(\det(S)) + \frac{\nu-k-1}{2}\log (\det(W)) - \frac{1}{2} \mbox{tr} (S^{-1}W) \end{eqnarray*} +\form#144:$\frac{1}{\pi}\arctan\left(\frac{y-\mu}{\sigma}\right) + \frac{1}{2}$ +\form#145:\begin{eqnarray*} y &\sim& \chi^2_\nu \\ \log (p (y \,|\, \nu)) &=& \log \left( \frac{2^{-\nu / 2}}{\Gamma (\nu / 2)} y^{\nu / 2 - 1} \exp^{- y / 2} \right) \\ &=& - \frac{\nu}{2} \log(2) - \log (\Gamma (\nu / 2)) + (\frac{\nu}{2} - 1) \log(y) - \frac{y}{2} \\ & & \mathrm{ where } \; y \ge 0 \end{eqnarray*} +\form#146:$ f(y|\mu,\sigma) = \begin{cases} \ \frac{1}{2} \exp\left(\frac{y-\mu}{\sigma}\right), \mbox{if } y < \mu \\ 1 - \frac{1}{2} \exp\left(-\frac{y-\mu}{\sigma}\right), \mbox{if } y \ge \mu \ \end{cases}$ +\form#147:\begin{eqnarray*} y &\sim& \mbox{\sf{Expon}}(\beta) \\ \log (p (y \,|\, \beta) ) &=& \log \left( \beta \exp^{-\beta y} \right) \\ &=& \log (\beta) - \beta y \\ & & \mathrm{where} \; y > 0 \end{eqnarray*} +\form#148:\begin{eqnarray*} y &\sim& \mbox{\sf{Gamma}}(\alpha, \beta) \\ \log (p (y \,|\, \alpha, \beta) ) &=& \log \left( \frac{\beta^\alpha}{\Gamma(\alpha)} y^{\alpha - 1} \exp^{- \beta y} \right) \\ &=& \alpha \log(\beta) - \log(\Gamma(\alpha)) + (\alpha - 1) \log(y) - \beta y\\ & & \mathrm{where} \; y > 0 \end{eqnarray*} +\form#149:\begin{eqnarray*} y &\sim& \mbox{\sf{Inv-}}\chi^2_\nu \\ \log (p (y \,|\, \nu)) &=& \log \left( \frac{2^{-\nu / 2}}{\Gamma (\nu / 2)} y^{- (\nu / 2 + 1)} \exp^{-1 / (2y)} \right) \\ &=& - \frac{\nu}{2} \log(2) - \log (\Gamma (\nu / 2)) - (\frac{\nu}{2} + 1) \log(y) - \frac{1}{2y} \\ & & \mathrm{ where } \; y > 0 \end{eqnarray*} +\form#150:$\Phi(x) = \frac{1}{\sqrt{2 \pi}} \int_{-\inf}^x e^{-t^2/2} dt$ +\form#151:\begin{eqnarray*} y &\sim& \mbox{\sf{Inv-}}\chi^2(\nu, s^2) \\ \log (p (y \,|\, \nu, s)) &=& \log \left( \frac{(\nu / 2)^{\nu / 2}}{\Gamma (\nu / 2)} s^\nu y^{- (\nu / 2 + 1)} \exp^{-\nu s^2 / (2y)} \right) \\ &=& \frac{\nu}{2} \log(\frac{\nu}{2}) - \log (\Gamma (\nu / 2)) + \nu \log(s) - (\frac{\nu}{2} + 1) \log(y) - \frac{\nu s^2}{2y} \\ & & \mathrm{ where } \; y > 0 \end{eqnarray*} +\form#152:\begin{eqnarray*} y &\sim& t_{\nu} (\mu, \sigma^2) \\ \log (p (y \,|\, \nu, \mu, \sigma) ) &=& \log \left( \frac{\Gamma((\nu + 1) /2)} {\Gamma(\nu/2)\sqrt{\nu \pi} \sigma} \left( 1 + \frac{1}{\nu} (\frac{y - \mu}{\sigma})^2 \right)^{-(\nu + 1)/2} \right) \\ &=& \log( \Gamma( (\nu+1)/2 )) - \log (\Gamma (\nu/2) - \frac{1}{2} \log(\nu \pi) - \log(\sigma) -\frac{\nu + 1}{2} \log (1 + \frac{1}{\nu} (\frac{y - \mu}{\sigma})^2) \end{eqnarray*} +\form#153:\begin{eqnarray*} y &\sim& \mbox{\sf{U}}(\alpha, \beta) \\ \log (p (y \,|\, \alpha, \beta)) &=& \log \left( \frac{1}{\beta-\alpha} \right) \\ &=& \log (1) - \log (\beta - \alpha) \\ &=& -\log (\beta - \alpha) \\ & & \mathrm{ where } \; y \in [\alpha, \beta], \log(0) \; \mathrm{otherwise} \end{eqnarray*} +\form#154:$f(x) = \exp(x)$ +\form#155:$\log | \frac{d}{dx} \mbox{exp}(x) | = \log | \mbox{exp}(x) | = x$ +\form#156:$f$ +\form#157:$f^{-1}(x) = \log(x)$ +\form#158:$f(x) = \exp(x) + L$ +\form#159:$f(x) = U - \exp(x)$ +\form#160:$U$ +\form#161:$ \log | \frac{d}{dx} -\mbox{exp}(x) + U | = \log | -\mbox{exp}(x) + 0 | = x$ +\form#162:$f^{-1}(y) = \log -(y - U)$ +\form#163:$f(x) = L + (U - L) \mbox{logit}^{-1}(x)$ +\form#164:$\log \left| \frac{d}{dx} \left( L + (U-L) \mbox{logit}^{-1}(x) \right) \right|$ +\form#165:$ {} = \log | (U-L) \, (\mbox{logit}^{-1}(x)) \, (1 - \mbox{logit}^{-1}(x)) |$ +\form#166:$ {} = \log (U - L) + \log (\mbox{logit}^{-1}(x)) + \log (1 - \mbox{logit}^{-1}(x))$ +\form#167:$f^{-1}(y) = \mbox{logit}(\frac{y - L}{U - L})$ +\form#168:$f(x) = \mbox{logit}^{-1}(x) = \frac{1}{1 + \exp(x)}$ +\form#169:$\log | \frac{d}{dx} \mbox{logit}^{-1}(x) |$ +\form#170:$\log ((\mbox{logit}^{-1}(x)) (1 - \mbox{logit}^{-1}(x))$ +\form#171:$\log (\mbox{logit}^{-1}(x)) + \log (1 - \mbox{logit}^{-1}(x))$ +\form#172:$f^{-1}(y) = \mbox{logit}(y) = \frac{1 - y}{y}$ +\form#173:$f(x) = \tanh x = \frac{\exp(2x) - 1}{\exp(2x) + 1}$ +\form#174:$\log | \frac{d}{dx} \tanh x | = \log (1 - \tanh^2 x)$ +\form#175:$ f^{-1}(y) = \mbox{atanh}\, y = \frac{1}{2} \log \frac{y + 1}{y - 1}$ +\form#176:${k \choose 2} = \frac{k(k-1)}{2}$ +\form#177:$k \choose 2$ +\form#178:$k \choose 2 + k$ diff --git a/doc/api/html/ftv2blank.png b/doc/api/html/ftv2blank.png new file mode 100644 index 0000000000000000000000000000000000000000..63c605bb4c3d941c921a4b6cfa74951e946bcb48 GIT binary patch literal 86 zcmeAS@N?(olHy`uVBq!ia0vp^0zfRr!3HExu9B$%QnH>djv*C{Z|`mdau^P8_z}#X h?B8GEpdi4(BFDx$je&7RrDQEg&ePS;Wt~$(69Dh@6T1Ka literal 0 HcmV?d00001 diff --git a/doc/api/html/ftv2cl.png b/doc/api/html/ftv2cl.png new file mode 100644 index 0000000000000000000000000000000000000000..132f6577bf7f085344904602815a260d29f55d9b GIT binary patch literal 453 zcmV;$0XqJPP)VBF;ev;toEj8_OB0EQg5eYilIj#JZG_m^33l3^k4mtzx!TVD?g)Y$ zrvwRDSqT!wLIM$dWCIa$vtxE|mzbTzu-y&$FvF6WA2a{Wr1g}`WdPT-0JzEZ0IxAv z-Z+ejZc&H;I5-pb_SUB}04j0^V)3t{`z<7asDl2Tw3w3sP%)0^8$bhEg)IOTBcRXv zFfq~3&gvJ$F-U7mpBW8z1GY~HK&7h4^YI~Orv~wLnC0PP_dAkv;nzX{9Q|8Gv=2ca z@v)c9T;D#h`TZ2X&&$ff2wedmot995de~-s3I)yauahg;7qn*?1n?F$e+PwP37}~; z1NKUk7reVK^7A;$QRW7qAx40HHUZ<|k3U%nz(Ec`#i+q9K!dgcROAlCS?`L= v>#=f?wF5ZND!1uAfQsk;KN^4&*8~0npJiJ%2dj9(00000NkvXXu0mjfWVFf_ literal 0 HcmV?d00001 diff --git a/doc/api/html/ftv2doc.png b/doc/api/html/ftv2doc.png new file mode 100644 index 0000000000000000000000000000000000000000..17edabff95f7b8da13c9516a04efe05493c29501 GIT binary patch literal 746 zcmV7=@pnbNXRFEm&G8P!&WHG=d)>K?YZ1bzou)2{$)) zumDct!>4SyxL;zgaG>wy`^Hv*+}0kUfCrz~BCOViSb$_*&;{TGGn2^x9K*!Sf0=lV zpP=7O;GA0*Jm*tTYj$IoXvimpnV4S1Z5f$p*f$Db2iq2zrVGQUz~yq`ahn7ck(|CE z7Gz;%OP~J6)tEZWDzjhL9h2hdfoU2)Nd%T<5Kt;Y0XLt&<@6pQx!nw*5`@bq#?l*?3z{Hlzoc=Pr>oB5(9i6~_&-}A(4{Q$>c>%rV&E|a(r&;?i5cQB=} zYSDU5nXG)NS4HEs0it2AHe2>shCyr7`6@4*6{r@8fXRbTA?=IFVWAQJL&H5H{)DpM#{W(GL+Idzf^)uRV@oB8u$ z8v{MfJbTiiRg4bza<41NAzrl{=3fl_D+$t+^!xlQ8S}{UtY`e z;;&9UhyZqQRN%2pot{*Ei0*4~hSF_3AH2@fKU!$NSflS>{@tZpDT4`M2WRTTVH+D? z)GFlEGGHe?koB}i|1w45!BF}N_q&^HJ&-tyR{(afC6H7|aml|tBBbv}55C5DNP8p3 z)~jLEO4Z&2hZmP^i-e%(@d!(E|KRafiU8Q5u(wU((j8un3OR*Hvj+t literal 0 HcmV?d00001 diff --git a/doc/api/html/ftv2folderclosed.png b/doc/api/html/ftv2folderclosed.png new file mode 100644 index 0000000000000000000000000000000000000000..bb8ab35edce8e97554e360005ee9fc5bffb36e66 GIT binary patch literal 616 zcmV-u0+;=XP)a9#ETzayK)T~Jw&MMH>OIr#&;dC}is*2Mqdf&akCc=O@`qC+4i z5Iu3w#1M@KqXCz8TIZd1wli&kkl2HVcAiZ8PUn5z_kG@-y;?yK06=cA0U%H0PH+kU zl6dp}OR(|r8-RG+YLu`zbI}5TlOU6ToR41{9=uz^?dGTNL;wIMf|V3`d1Wj3y!#6` zBLZ?xpKR~^2x}?~zA(_NUu3IaDB$tKma*XUdOZN~c=dLt_h_k!dbxm_*ibDM zlFX`g{k$X}yIe%$N)cn1LNu=q9_CS)*>A zsX_mM4L@`(cSNQKMFc$RtYbx{79#j-J7hk*>*+ZZhM4Hw?I?rsXCi#mRWJ=-0LGV5a-WR0Qgt<|Nqf)C-@80`5gIz45^_20000IqP)X=#(TiCT&PiIIVc55T}TU}EUh*{q$|`3@{d>{Tc9Bo>e= zfmF3!f>fbI9#GoEHh0f`i5)wkLpva0ztf%HpZneK?w-7AK@b4Itw{y|Zd3k!fH?q2 zlhckHd_V2M_X7+)U&_Xcfvtw60l;--DgZmLSw-Y?S>)zIqMyJ1#FwLU*%bl38ok+! zh78H87n`ZTS;uhzAR$M`zZ`bVhq=+%u9^$5jDplgxd44}9;IRqUH1YHH|@6oFe%z( zo4)_>E$F&^P-f(#)>(TrnbE>Pefs9~@iN=|)Rz|V`sGfHNrJ)0gJb8xx+SBmRf@1l zvuzt=vGfI)<-F9!o&3l?>9~0QbUDT(wFdnQPv%xdD)m*g%!20>Bc9iYmGAp<9YAa( z0QgYgTWqf1qN++Gqp z8@AYPTB3E|6s=WLG?xw0tm|U!o=&zd+H0oRYE;Dbx+Na9s^STqX|Gnq%H8s(nGDGJ j8vwW|`Ts`)fSK|Kx=IK@RG@g200000NkvXXu0mjfauFEA literal 0 HcmV?d00001 diff --git a/doc/api/html/ftv2lastnode.png b/doc/api/html/ftv2lastnode.png new file mode 100644 index 0000000000000000000000000000000000000000..63c605bb4c3d941c921a4b6cfa74951e946bcb48 GIT binary patch literal 86 zcmeAS@N?(olHy`uVBq!ia0vp^0zfRr!3HExu9B$%QnH>djv*C{Z|`mdau^P8_z}#X h?B8GEpdi4(BFDx$je&7RrDQEg&ePS;Wt~$(69Dh@6T1Ka literal 0 HcmV?d00001 diff --git a/doc/api/html/ftv2link.png b/doc/api/html/ftv2link.png new file mode 100644 index 0000000000000000000000000000000000000000..17edabff95f7b8da13c9516a04efe05493c29501 GIT binary patch literal 746 zcmV7=@pnbNXRFEm&G8P!&WHG=d)>K?YZ1bzou)2{$)) zumDct!>4SyxL;zgaG>wy`^Hv*+}0kUfCrz~BCOViSb$_*&;{TGGn2^x9K*!Sf0=lV zpP=7O;GA0*Jm*tTYj$IoXvimpnV4S1Z5f$p*f$Db2iq2zrVGQUz~yq`ahn7ck(|CE z7Gz;%OP~J6)tEZWDzjhL9h2hdfoU2)Nd%T<5Kt;Y0XLt&<@6pQx!nw*5`@bq#?l*?3z{Hlzoc=Pr>oB5(9i6~_&-}A(4{Q$>c>%rV&E|a(r&;?i5cQB=} zYSDU5nXG)NS4HEs0it2AHe2>shCyr7`6@4*6{r@8fXRbTA?=IFVWAQJL&H5H{)DpM#{W(GL+Idzf^)uRV@oB8u$ z8v{MfJbTiiRg4bza<41NAzrl{=3fl_D+$t+^!xlQ8S}{UtY`e z;;&9UhyZqQRN%2pot{*Ei0*4~hSF_3AH2@fKU!$NSflS>{@tZpDT4`M2WRTTVH+D? z)GFlEGGHe?koB}i|1w45!BF}N_q&^HJ&-tyR{(afC6H7|aml|tBBbv}55C5DNP8p3 z)~jLEO4Z&2hZmP^i-e%(@d!(E|KRafiU8Q5u(wU((j8un3OR*Hvj+t literal 0 HcmV?d00001 diff --git a/doc/api/html/ftv2mlastnode.png b/doc/api/html/ftv2mlastnode.png new file mode 100644 index 0000000000000000000000000000000000000000..0b63f6d38c4b9ec907b820192ebe9724ed6eca22 GIT binary patch literal 246 zcmVkw!R34#Lv2LOS^S2tZA31X++9RY}n zChwn@Z)Wz*WWHH{)HDtJnq&A2hk$b-y(>?@z0iHr41EKCGp#T5?07*qoM6N<$f(V3Pvj6}9 literal 0 HcmV?d00001 diff --git a/doc/api/html/ftv2mnode.png b/doc/api/html/ftv2mnode.png new file mode 100644 index 0000000000000000000000000000000000000000..0b63f6d38c4b9ec907b820192ebe9724ed6eca22 GIT binary patch literal 246 zcmVkw!R34#Lv2LOS^S2tZA31X++9RY}n zChwn@Z)Wz*WWHH{)HDtJnq&A2hk$b-y(>?@z0iHr41EKCGp#T5?07*qoM6N<$f(V3Pvj6}9 literal 0 HcmV?d00001 diff --git a/doc/api/html/ftv2mo.png b/doc/api/html/ftv2mo.png new file mode 100644 index 0000000000000000000000000000000000000000..4bfb80f76e65815989a9350ad79d8ce45380e2b1 GIT binary patch literal 403 zcmV;E0c`$>P)${!fXv7NWJ%@%u4(KapRY>T6_x;E zxE7kt!}Tiw8@d9Sd`rTGum>z#Q14vIm`wm1#-byD1muMi02@YNO5LRF0o!Y{`a!Ya z{^&p0Su|s705&2QxmqdexG+-zNKL3f@8gTQSJrKByfo+oNJ^-{|Mn||Q5SDwjQVsS zr1}7o5-QMs>gYIMD>GRw@$lT`z4r-_m{5U#cR{urD_)TOeY)(UD|qZ^&y`IVijqk~ xs(9-kWFr7E^!lgi8GsFK5kOY_{Xbgf0^etEU%fLevs?fG002ovPDHLkV1nB&vX1}& literal 0 HcmV?d00001 diff --git a/doc/api/html/ftv2node.png b/doc/api/html/ftv2node.png new file mode 100644 index 0000000000000000000000000000000000000000..63c605bb4c3d941c921a4b6cfa74951e946bcb48 GIT binary patch literal 86 zcmeAS@N?(olHy`uVBq!ia0vp^0zfRr!3HExu9B$%QnH>djv*C{Z|`mdau^P8_z}#X h?B8GEpdi4(BFDx$je&7RrDQEg&ePS;Wt~$(69Dh@6T1Ka literal 0 HcmV?d00001 diff --git a/doc/api/html/ftv2ns.png b/doc/api/html/ftv2ns.png new file mode 100644 index 0000000000000000000000000000000000000000..72e3d71c2892d6f00e259facebc88b45f6db2e35 GIT binary patch literal 388 zcmV-~0ek+5P)f+++#cT|!CkD&4pnIkeMEUEM*>`*9>+Juji$!h-mW%M^8s9957{3nvbrz^&=u<~TAUrFROkmt%^F~Ez+-c53Lv%iH3d38!Rv?K zrb&MYAhp;Gf<}wS;9ZZq2@;!uYG;=Z>~GKE^{HD4keu}lnyqhc>kWX^tQn|warJ~h zT+rtMkdz6aHoN%z(o|&wpu@@OpJnF_z{PA)6(FHw02iHslz^(N{4*+K9)QJHR87wT iTyp>aXaF{u2lxRou|^4tux6eB0000^P)R?RzRoKvklcaQ%HF6%rK2&ZgO(-ihJ_C zzrKgp4jgO( fd_(yg|3PpEQb#9`a?Pz_00000NkvXXu0mjftR`5K literal 0 HcmV?d00001 diff --git a/doc/api/html/ftv2pnode.png b/doc/api/html/ftv2pnode.png new file mode 100644 index 0000000000000000000000000000000000000000..c6ee22f937a07d1dbfc27c669d11f8ed13e2f152 GIT binary patch literal 229 zcmV^P)R?RzRoKvklcaQ%HF6%rK2&ZgO(-ihJ_C zzrKgp4jgO( fd_(yg|3PpEQb#9`a?Pz_00000NkvXXu0mjftR`5K literal 0 HcmV?d00001 diff --git a/doc/api/html/ftv2splitbar.png b/doc/api/html/ftv2splitbar.png new file mode 100644 index 0000000000000000000000000000000000000000..fe895f2c58179b471a22d8320b39a4bd7312ec8e GIT binary patch literal 314 zcmeAS@N?(olHy`uVBq!ia0vp^Yzz!63>-{AmhX=Jf(#6djGiuzAr*{o?=JLmPLyc> z_*`QK&+BH@jWrYJ7>r6%keRM@)Qyv8R=enp0jiI>aWlGyB58O zFVR20d+y`K7vDw(hJF3;>dD*3-?v=<8M)@x|EEGLnJsniYK!2U1 Y!`|5biEc?d1`HDhPgg&ebxsLQ02F6;9RL6T literal 0 HcmV?d00001 diff --git a/doc/api/html/ftv2vertline.png b/doc/api/html/ftv2vertline.png new file mode 100644 index 0000000000000000000000000000000000000000..63c605bb4c3d941c921a4b6cfa74951e946bcb48 GIT binary patch literal 86 zcmeAS@N?(olHy`uVBq!ia0vp^0zfRr!3HExu9B$%QnH>djv*C{Z|`mdau^P8_z}#X h?B8GEpdi4(BFDx$je&7RrDQEg&ePS;Wt~$(69Dh@6T1Ka literal 0 HcmV?d00001 diff --git a/doc/api/html/functions.html b/doc/api/html/functions.html new file mode 100644 index 00000000000..55636ae8c68 --- /dev/null +++ b/doc/api/html/functions.html @@ -0,0 +1,399 @@ + + + + + +Stan: Class Members + + + + + + + + + +

+ + + + +
+ +
+ +
+
Here is a list of all class members with links to the classes they belong to:
+ +

- _ -

+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/functions_0x61.html b/doc/api/html/functions_0x61.html new file mode 100644 index 00000000000..a1cd4b1732d --- /dev/null +++ b/doc/api/html/functions_0x61.html @@ -0,0 +1,477 @@ + + + + + +Stan: Class Members + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + +
+ + + + +
+ +
+ +
+
Here is a list of all class members with links to the classes they belong to:
+ +

- a -

+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/functions_0x62.html b/doc/api/html/functions_0x62.html new file mode 100644 index 00000000000..4a902af57c5 --- /dev/null +++ b/doc/api/html/functions_0x62.html @@ -0,0 +1,227 @@ + + + + + +Stan: Class Members + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + +
+ + + + +
+ +
+ +
+
Here is a list of all class members with links to the classes they belong to:
+ +

- b -

+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/functions_0x63.html b/doc/api/html/functions_0x63.html new file mode 100644 index 00000000000..1d58cba1716 --- /dev/null +++ b/doc/api/html/functions_0x63.html @@ -0,0 +1,340 @@ + + + + + +Stan: Class Members + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + +
+ + + + +
+ +
+ +
+
Here is a list of all class members with links to the classes they belong to:
+ +

- c -

+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/functions_0x64.html b/doc/api/html/functions_0x64.html new file mode 100644 index 00000000000..b5f833d0905 --- /dev/null +++ b/doc/api/html/functions_0x64.html @@ -0,0 +1,353 @@ + + + + + +Stan: Class Members + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + +
+ + + + +
+ +
+ +
+
Here is a list of all class members with links to the classes they belong to:
+ +

- d -

+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/functions_0x65.html b/doc/api/html/functions_0x65.html new file mode 100644 index 00000000000..165a1818b17 --- /dev/null +++ b/doc/api/html/functions_0x65.html @@ -0,0 +1,233 @@ + + + + + +Stan: Class Members + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + +
+ + + + +
+ +
+ +
+
Here is a list of all class members with links to the classes they belong to:
+ +

- e -

+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/functions_0x66.html b/doc/api/html/functions_0x66.html new file mode 100644 index 00000000000..34ed415418f --- /dev/null +++ b/doc/api/html/functions_0x66.html @@ -0,0 +1,188 @@ + + + + + +Stan: Class Members + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + +
+ + + + +
+ +
+ +
+
Here is a list of all class members with links to the classes they belong to:
+ +

- f -

+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/functions_0x67.html b/doc/api/html/functions_0x67.html new file mode 100644 index 00000000000..d6b943c4b55 --- /dev/null +++ b/doc/api/html/functions_0x67.html @@ -0,0 +1,347 @@ + + + + + +Stan: Class Members + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + +
+ + + + +
+ +
+ +
+
Here is a list of all class members with links to the classes they belong to:
+ +

- g -

+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/functions_0x68.html b/doc/api/html/functions_0x68.html new file mode 100644 index 00000000000..1b857692830 --- /dev/null +++ b/doc/api/html/functions_0x68.html @@ -0,0 +1,204 @@ + + + + + +Stan: Class Members + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + +
+ + + + +
+ +
+ + +
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/functions_0x69.html b/doc/api/html/functions_0x69.html new file mode 100644 index 00000000000..d2dc30192fa --- /dev/null +++ b/doc/api/html/functions_0x69.html @@ -0,0 +1,362 @@ + + + + + +Stan: Class Members + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + +
+ + + + +
+ +
+ +
+
Here is a list of all class members with links to the classes they belong to:
+ +

- i -

+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/functions_0x6b.html b/doc/api/html/functions_0x6b.html new file mode 100644 index 00000000000..cc0fab7f049 --- /dev/null +++ b/doc/api/html/functions_0x6b.html @@ -0,0 +1,156 @@ + + + + + +Stan: Class Members + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + +
+ + + + +
+ +
+ +
+
Here is a list of all class members with links to the classes they belong to:
+ +

- k -

+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/functions_0x6c.html b/doc/api/html/functions_0x6c.html new file mode 100644 index 00000000000..ccf8377ac1e --- /dev/null +++ b/doc/api/html/functions_0x6c.html @@ -0,0 +1,211 @@ + + + + + +Stan: Class Members + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + +
+ + + + +
+ +
+ +
+
Here is a list of all class members with links to the classes they belong to:
+ +

- l -

+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/functions_0x6d.html b/doc/api/html/functions_0x6d.html new file mode 100644 index 00000000000..baefd3eacce --- /dev/null +++ b/doc/api/html/functions_0x6d.html @@ -0,0 +1,279 @@ + + + + + +Stan: Class Members + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + +
+ + + + +
+ +
+ +
+
Here is a list of all class members with links to the classes they belong to:
+ +

- m -

+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/functions_0x6e.html b/doc/api/html/functions_0x6e.html new file mode 100644 index 00000000000..b0c8c73a1c3 --- /dev/null +++ b/doc/api/html/functions_0x6e.html @@ -0,0 +1,257 @@ + + + + + +Stan: Class Members + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + +
+ + + + +
+ +
+ +
+
Here is a list of all class members with links to the classes they belong to:
+ +

- n -

+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/functions_0x6f.html b/doc/api/html/functions_0x6f.html new file mode 100644 index 00000000000..a5e4952f0f9 --- /dev/null +++ b/doc/api/html/functions_0x6f.html @@ -0,0 +1,505 @@ + + + + + +Stan: Class Members + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + +
+ + + + +
+ +
+ +
+
Here is a list of all class members with links to the classes they belong to:
+ +

- o -

+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/functions_0x70.html b/doc/api/html/functions_0x70.html new file mode 100644 index 00000000000..c7d3210e62f --- /dev/null +++ b/doc/api/html/functions_0x70.html @@ -0,0 +1,351 @@ + + + + + +Stan: Class Members + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + +
+ + + + +
+ +
+ +
+
Here is a list of all class members with links to the classes they belong to:
+ +

- p -

+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/functions_0x71.html b/doc/api/html/functions_0x71.html new file mode 100644 index 00000000000..0a306332465 --- /dev/null +++ b/doc/api/html/functions_0x71.html @@ -0,0 +1,158 @@ + + + + + +Stan: Class Members + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + +
+ + + + +
+ +
+ +
+
Here is a list of all class members with links to the classes they belong to:
+ +

- q -

+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/functions_0x72.html b/doc/api/html/functions_0x72.html new file mode 100644 index 00000000000..9c8f32c02fa --- /dev/null +++ b/doc/api/html/functions_0x72.html @@ -0,0 +1,305 @@ + + + + + +Stan: Class Members + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + +
+ + + + +
+ +
+ +
+
Here is a list of all class members with links to the classes they belong to:
+ +

- r -

+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/functions_0x73.html b/doc/api/html/functions_0x73.html new file mode 100644 index 00000000000..93f1fa69aac --- /dev/null +++ b/doc/api/html/functions_0x73.html @@ -0,0 +1,488 @@ + + + + + +Stan: Class Members + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + +
+ + + + +
+ +
+ +
+
Here is a list of all class members with links to the classes they belong to:
+ +

- s -

+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/functions_0x74.html b/doc/api/html/functions_0x74.html new file mode 100644 index 00000000000..bcf9ca3c91d --- /dev/null +++ b/doc/api/html/functions_0x74.html @@ -0,0 +1,281 @@ + + + + + +Stan: Class Members + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + +
+ + + + +
+ +
+ +
+
Here is a list of all class members with links to the classes they belong to:
+ +

- t -

+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/functions_0x75.html b/doc/api/html/functions_0x75.html new file mode 100644 index 00000000000..d7fb1d1d7a3 --- /dev/null +++ b/doc/api/html/functions_0x75.html @@ -0,0 +1,191 @@ + + + + + +Stan: Class Members + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + +
+ + + + +
+ +
+ +
+
Here is a list of all class members with links to the classes they belong to:
+ +

- u -

+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/functions_0x76.html b/doc/api/html/functions_0x76.html new file mode 100644 index 00000000000..76b4c28acb2 --- /dev/null +++ b/doc/api/html/functions_0x76.html @@ -0,0 +1,367 @@ + + + + + +Stan: Class Members + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + +
+ + + + +
+ +
+ +
+
Here is a list of all class members with links to the classes they belong to:
+ +

- v -

+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/functions_0x77.html b/doc/api/html/functions_0x77.html new file mode 100644 index 00000000000..1c30d4d0314 --- /dev/null +++ b/doc/api/html/functions_0x77.html @@ -0,0 +1,227 @@ + + + + + +Stan: Class Members + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + +
+ + + + +
+ +
+ +
+
Here is a list of all class members with links to the classes they belong to:
+ +

- w -

+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/functions_0x78.html b/doc/api/html/functions_0x78.html new file mode 100644 index 00000000000..c49cd37245d --- /dev/null +++ b/doc/api/html/functions_0x78.html @@ -0,0 +1,148 @@ + + + + + +Stan: Class Members + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + +
+ + + + +
+ +
+ +
+
Here is a list of all class members with links to the classes they belong to:
+ +

- x -

+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/functions_0x7a.html b/doc/api/html/functions_0x7a.html new file mode 100644 index 00000000000..49c0a284a62 --- /dev/null +++ b/doc/api/html/functions_0x7a.html @@ -0,0 +1,148 @@ + + + + + +Stan: Class Members + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + +
+ + + + +
+ +
+ +
+
Here is a list of all class members with links to the classes they belong to:
+ +

- z -

+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/functions_0x7e.html b/doc/api/html/functions_0x7e.html new file mode 100644 index 00000000000..622452493d0 --- /dev/null +++ b/doc/api/html/functions_0x7e.html @@ -0,0 +1,232 @@ + + + + + +Stan: Class Members + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + +
+ + + + +
+ +
+ +
+
Here is a list of all class members with links to the classes they belong to:
+ +

- ~ -

+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/functions_2max_8hpp.html b/doc/api/html/functions_2max_8hpp.html new file mode 100644 index 00000000000..d32c20b2ad3 --- /dev/null +++ b/doc/api/html/functions_2max_8hpp.html @@ -0,0 +1,127 @@ + + + + + +Stan: src/stan/math/functions/max.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
max.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::math
 Matrices and templated mathematical functions.
 
+ + + +

+Functions

double stan::math::max (const double a, const double b)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/functions_2max_8hpp_source.html b/doc/api/html/functions_2max_8hpp_source.html new file mode 100644 index 00000000000..dbc6672ccb2 --- /dev/null +++ b/doc/api/html/functions_2max_8hpp_source.html @@ -0,0 +1,121 @@ + + + + + +Stan: src/stan/math/functions/max.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
max.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MATH__FUNCTIONS__MAX_HPP__
+
2 #define __STAN__MATH__FUNCTIONS__MAX_HPP__
+
3 
+
4 namespace stan {
+
5  namespace math {
+
6 
+
7  inline double max(const double a, const double b) {
+
8  return a > b ? a : b;
+
9  }
+
10 
+
11  }
+
12 }
+
13 
+
14 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/functions_2min_8hpp.html b/doc/api/html/functions_2min_8hpp.html new file mode 100644 index 00000000000..4c2acb22774 --- /dev/null +++ b/doc/api/html/functions_2min_8hpp.html @@ -0,0 +1,127 @@ + + + + + +Stan: src/stan/math/functions/min.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
min.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::math
 Matrices and templated mathematical functions.
 
+ + + +

+Functions

double stan::math::min (const double a, const double b)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/functions_2min_8hpp_source.html b/doc/api/html/functions_2min_8hpp_source.html new file mode 100644 index 00000000000..ca0d9f72ba6 --- /dev/null +++ b/doc/api/html/functions_2min_8hpp_source.html @@ -0,0 +1,121 @@ + + + + + +Stan: src/stan/math/functions/min.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
min.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MATH__FUNCTIONS__MIN_HPP__
+
2 #define __STAN__MATH__FUNCTIONS__MIN_HPP__
+
3 
+
4 namespace stan {
+
5  namespace math {
+
6 
+
7  inline double min(const double a, const double b) {
+
8  return a < b ? a : b;
+
9  }
+
10 
+
11  }
+
12 }
+
13 
+
14 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/functions_eval.html b/doc/api/html/functions_eval.html new file mode 100644 index 00000000000..541df9fa321 --- /dev/null +++ b/doc/api/html/functions_eval.html @@ -0,0 +1,249 @@ + + + + + +Stan: Class Members - Enumerator + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + +
+ + + + +
+ +
+ +
+  + +

- a -

+ + +

- c -

+ + +

- d -

+ + +

- h -

+ + +

- i -

+ + +

- l -

+ + +

- m -

+ + +

- n -

+ + +

- o -

+ + +

- r -

+ + +

- s -

+ + +

- u -

+ + +

- v -

+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/functions_func.html b/doc/api/html/functions_func.html new file mode 100644 index 00000000000..5750c1c0d56 --- /dev/null +++ b/doc/api/html/functions_func.html @@ -0,0 +1,156 @@ + + + + + +Stan: Class Members - Functions + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + +
+ + + + +
+ +
+ +
+  + +

- _ -

+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/functions_func_0x61.html b/doc/api/html/functions_func_0x61.html new file mode 100644 index 00000000000..9fb7e26307e --- /dev/null +++ b/doc/api/html/functions_func_0x61.html @@ -0,0 +1,428 @@ + + + + + +Stan: Class Members - Functions + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + +
+ + + + +
+ +
+ +
+  + +

- a -

+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/functions_func_0x62.html b/doc/api/html/functions_func_0x62.html new file mode 100644 index 00000000000..ea4a464fae5 --- /dev/null +++ b/doc/api/html/functions_func_0x62.html @@ -0,0 +1,202 @@ + + + + + +Stan: Class Members - Functions + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + +
+ + + + +
+ +
+ + +
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/functions_func_0x63.html b/doc/api/html/functions_func_0x63.html new file mode 100644 index 00000000000..872d8f8b399 --- /dev/null +++ b/doc/api/html/functions_func_0x63.html @@ -0,0 +1,292 @@ + + + + + +Stan: Class Members - Functions + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + +
+ + + + +
+ +
+ +
+  + +

- c -

+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/functions_func_0x64.html b/doc/api/html/functions_func_0x64.html new file mode 100644 index 00000000000..a1341b56449 --- /dev/null +++ b/doc/api/html/functions_func_0x64.html @@ -0,0 +1,264 @@ + + + + + +Stan: Class Members - Functions + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + +
+ + + + +
+ +
+ +
+  + +

- d -

+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/functions_func_0x65.html b/doc/api/html/functions_func_0x65.html new file mode 100644 index 00000000000..08e4e1db809 --- /dev/null +++ b/doc/api/html/functions_func_0x65.html @@ -0,0 +1,187 @@ + + + + + +Stan: Class Members - Functions + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + +
+ + + + +
+ +
+ + +
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/functions_func_0x66.html b/doc/api/html/functions_func_0x66.html new file mode 100644 index 00000000000..595be600fcc --- /dev/null +++ b/doc/api/html/functions_func_0x66.html @@ -0,0 +1,175 @@ + + + + + +Stan: Class Members - Functions + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + +
+ + + + +
+ +
+ + +
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/functions_func_0x67.html b/doc/api/html/functions_func_0x67.html new file mode 100644 index 00000000000..bfafecdf7b1 --- /dev/null +++ b/doc/api/html/functions_func_0x67.html @@ -0,0 +1,334 @@ + + + + + +Stan: Class Members - Functions + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + +
+ + + + +
+ +
+ +
+  + +

- g -

+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/functions_func_0x68.html b/doc/api/html/functions_func_0x68.html new file mode 100644 index 00000000000..753a191d09b --- /dev/null +++ b/doc/api/html/functions_func_0x68.html @@ -0,0 +1,165 @@ + + + + + +Stan: Class Members - Functions + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + +
+ + + + +
+ +
+ +
+  + +

- h -

+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/functions_func_0x69.html b/doc/api/html/functions_func_0x69.html new file mode 100644 index 00000000000..53910babd49 --- /dev/null +++ b/doc/api/html/functions_func_0x69.html @@ -0,0 +1,277 @@ + + + + + +Stan: Class Members - Functions + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + +
+ + + + +
+ +
+ +
+  + +

- i -

+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/functions_func_0x6b.html b/doc/api/html/functions_func_0x6b.html new file mode 100644 index 00000000000..57c0d5cc5e7 --- /dev/null +++ b/doc/api/html/functions_func_0x6b.html @@ -0,0 +1,147 @@ + + + + + +Stan: Class Members - Functions + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + +
+ + + + +
+ +
+ +
+  + +

- k -

+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/functions_func_0x6c.html b/doc/api/html/functions_func_0x6c.html new file mode 100644 index 00000000000..75055e7b5b0 --- /dev/null +++ b/doc/api/html/functions_func_0x6c.html @@ -0,0 +1,182 @@ + + + + + +Stan: Class Members - Functions + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + +
+ + + + +
+ +
+ + +
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/functions_func_0x6d.html b/doc/api/html/functions_func_0x6d.html new file mode 100644 index 00000000000..1c4b0a63fcb --- /dev/null +++ b/doc/api/html/functions_func_0x6d.html @@ -0,0 +1,209 @@ + + + + + +Stan: Class Members - Functions + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + +
+ + + + +
+ +
+ +
+  + +

- m -

+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/functions_func_0x6e.html b/doc/api/html/functions_func_0x6e.html new file mode 100644 index 00000000000..1f713ff01ce --- /dev/null +++ b/doc/api/html/functions_func_0x6e.html @@ -0,0 +1,210 @@ + + + + + +Stan: Class Members - Functions + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + +
+ + + + +
+ +
+ + +
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/functions_func_0x6f.html b/doc/api/html/functions_func_0x6f.html new file mode 100644 index 00000000000..18b461ece33 --- /dev/null +++ b/doc/api/html/functions_func_0x6f.html @@ -0,0 +1,466 @@ + + + + + +Stan: Class Members - Functions + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + +
+ + + + +
+ +
+ +
+  + +

- o -

+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/functions_func_0x70.html b/doc/api/html/functions_func_0x70.html new file mode 100644 index 00000000000..e3fae1dc7d9 --- /dev/null +++ b/doc/api/html/functions_func_0x70.html @@ -0,0 +1,311 @@ + + + + + +Stan: Class Members - Functions + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + +
+ + + + +
+ +
+ +
+  + +

- p -

+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/functions_func_0x71.html b/doc/api/html/functions_func_0x71.html new file mode 100644 index 00000000000..2bccf0016e2 --- /dev/null +++ b/doc/api/html/functions_func_0x71.html @@ -0,0 +1,154 @@ + + + + + +Stan: Class Members - Functions + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + +
+ + + + +
+ +
+ + +
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/functions_func_0x72.html b/doc/api/html/functions_func_0x72.html new file mode 100644 index 00000000000..65a3287d77c --- /dev/null +++ b/doc/api/html/functions_func_0x72.html @@ -0,0 +1,233 @@ + + + + + +Stan: Class Members - Functions + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + +
+ + + + +
+ +
+ +
+  + +

- r -

+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/functions_func_0x73.html b/doc/api/html/functions_func_0x73.html new file mode 100644 index 00000000000..f2612a55c02 --- /dev/null +++ b/doc/api/html/functions_func_0x73.html @@ -0,0 +1,402 @@ + + + + + +Stan: Class Members - Functions + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + +
+ + + + +
+ +
+ +
+  + +

- s -

+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/functions_func_0x74.html b/doc/api/html/functions_func_0x74.html new file mode 100644 index 00000000000..f1a43282887 --- /dev/null +++ b/doc/api/html/functions_func_0x74.html @@ -0,0 +1,183 @@ + + + + + +Stan: Class Members - Functions + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + +
+ + + + +
+ +
+ + +
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/functions_func_0x75.html b/doc/api/html/functions_func_0x75.html new file mode 100644 index 00000000000..74112158bde --- /dev/null +++ b/doc/api/html/functions_func_0x75.html @@ -0,0 +1,184 @@ + + + + + +Stan: Class Members - Functions + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + +
+ + + + +
+ +
+ +
+  + +

- u -

+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/functions_func_0x76.html b/doc/api/html/functions_func_0x76.html new file mode 100644 index 00000000000..12997b90de3 --- /dev/null +++ b/doc/api/html/functions_func_0x76.html @@ -0,0 +1,267 @@ + + + + + +Stan: Class Members - Functions + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + +
+ + + + +
+ +
+ +
+  + +

- v -

+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/functions_func_0x77.html b/doc/api/html/functions_func_0x77.html new file mode 100644 index 00000000000..ea577e9b648 --- /dev/null +++ b/doc/api/html/functions_func_0x77.html @@ -0,0 +1,219 @@ + + + + + +Stan: Class Members - Functions + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + +
+ + + + +
+ +
+ +
+  + +

- w -

+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/functions_func_0x7a.html b/doc/api/html/functions_func_0x7a.html new file mode 100644 index 00000000000..b020d4c035d --- /dev/null +++ b/doc/api/html/functions_func_0x7a.html @@ -0,0 +1,147 @@ + + + + + +Stan: Class Members - Functions + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + +
+ + + + +
+ +
+ + +
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/functions_func_0x7e.html b/doc/api/html/functions_func_0x7e.html new file mode 100644 index 00000000000..3ff1af5c853 --- /dev/null +++ b/doc/api/html/functions_func_0x7e.html @@ -0,0 +1,231 @@ + + + + + +Stan: Class Members - Functions + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + +
+ + + + +
+ +
+ +
+  + +

- ~ -

+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/functions_rela.html b/doc/api/html/functions_rela.html new file mode 100644 index 00000000000..80637b9461e --- /dev/null +++ b/doc/api/html/functions_rela.html @@ -0,0 +1,120 @@ + + + + + +Stan: Class Members - Related Functions + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + +
+ + + + +
+ +
+ +
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/functions_type.html b/doc/api/html/functions_type.html new file mode 100644 index 00000000000..d347fb713a3 --- /dev/null +++ b/doc/api/html/functions_type.html @@ -0,0 +1,317 @@ + + + + + +Stan: Class Members - Typedefs + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + +
+ + + + +
+ +
+ +
+  + +

- a -

+ + +

- e -

+ + +

- h -

+ + +

- i -

+ + +

- l -

+ + +

- m -

+ + +

- n -

+ + +

- p -

+ + +

- r -

+ + +

- s -

+ + +

- t -

+ + +

- v -

+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/functions_vars.html b/doc/api/html/functions_vars.html new file mode 100644 index 00000000000..b54efd23858 --- /dev/null +++ b/doc/api/html/functions_vars.html @@ -0,0 +1,385 @@ + + + + + +Stan: Class Members - Variables + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + +
+ + + + +
+ +
+ +
+  + +

- _ -

+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/functions_vars_0x61.html b/doc/api/html/functions_vars_0x61.html new file mode 100644 index 00000000000..b983d82b553 --- /dev/null +++ b/doc/api/html/functions_vars_0x61.html @@ -0,0 +1,193 @@ + + + + + +Stan: Class Members - Variables + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + +
+ + + + +
+ +
+ + +
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/functions_vars_0x62.html b/doc/api/html/functions_vars_0x62.html new file mode 100644 index 00000000000..8a801265c4e --- /dev/null +++ b/doc/api/html/functions_vars_0x62.html @@ -0,0 +1,167 @@ + + + + + +Stan: Class Members - Variables + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + +
+ + + + +
+ +
+ + +
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/functions_vars_0x63.html b/doc/api/html/functions_vars_0x63.html new file mode 100644 index 00000000000..ff9e1ae0a62 --- /dev/null +++ b/doc/api/html/functions_vars_0x63.html @@ -0,0 +1,187 @@ + + + + + +Stan: Class Members - Variables + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + +
+ + + + +
+ +
+ + +
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/functions_vars_0x64.html b/doc/api/html/functions_vars_0x64.html new file mode 100644 index 00000000000..2dfa44423c5 --- /dev/null +++ b/doc/api/html/functions_vars_0x64.html @@ -0,0 +1,230 @@ + + + + + +Stan: Class Members - Variables + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + +
+ + + + +
+ +
+ +
+  + +

- d -

+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/functions_vars_0x65.html b/doc/api/html/functions_vars_0x65.html new file mode 100644 index 00000000000..1503ccb25b2 --- /dev/null +++ b/doc/api/html/functions_vars_0x65.html @@ -0,0 +1,185 @@ + + + + + +Stan: Class Members - Variables + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + +
+ + + + +
+ +
+ + +
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/functions_vars_0x66.html b/doc/api/html/functions_vars_0x66.html new file mode 100644 index 00000000000..adb82d23564 --- /dev/null +++ b/doc/api/html/functions_vars_0x66.html @@ -0,0 +1,155 @@ + + + + + +Stan: Class Members - Variables + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + +
+ + + + +
+ +
+ + +
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/functions_vars_0x67.html b/doc/api/html/functions_vars_0x67.html new file mode 100644 index 00000000000..ff261b12c89 --- /dev/null +++ b/doc/api/html/functions_vars_0x67.html @@ -0,0 +1,155 @@ + + + + + +Stan: Class Members - Variables + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + +
+ + + + +
+ +
+ +
+  + +

- g -

+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/functions_vars_0x68.html b/doc/api/html/functions_vars_0x68.html new file mode 100644 index 00000000000..a41231f417c --- /dev/null +++ b/doc/api/html/functions_vars_0x68.html @@ -0,0 +1,175 @@ + + + + + +Stan: Class Members - Variables + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + +
+ + + + +
+ +
+ + +
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/functions_vars_0x69.html b/doc/api/html/functions_vars_0x69.html new file mode 100644 index 00000000000..c9edaf2bb94 --- /dev/null +++ b/doc/api/html/functions_vars_0x69.html @@ -0,0 +1,217 @@ + + + + + +Stan: Class Members - Variables + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + +
+ + + + +
+ +
+ +
+  + +

- i -

+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/functions_vars_0x6b.html b/doc/api/html/functions_vars_0x6b.html new file mode 100644 index 00000000000..5543282e92a --- /dev/null +++ b/doc/api/html/functions_vars_0x6b.html @@ -0,0 +1,151 @@ + + + + + +Stan: Class Members - Variables + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + +
+ + + + +
+ +
+ + +
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/functions_vars_0x6c.html b/doc/api/html/functions_vars_0x6c.html new file mode 100644 index 00000000000..4801de76541 --- /dev/null +++ b/doc/api/html/functions_vars_0x6c.html @@ -0,0 +1,164 @@ + + + + + +Stan: Class Members - Variables + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + +
+ + + + +
+ +
+ + +
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/functions_vars_0x6d.html b/doc/api/html/functions_vars_0x6d.html new file mode 100644 index 00000000000..947bab6f255 --- /dev/null +++ b/doc/api/html/functions_vars_0x6d.html @@ -0,0 +1,196 @@ + + + + + +Stan: Class Members - Variables + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + +
+ + + + +
+ +
+ + +
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/functions_vars_0x6e.html b/doc/api/html/functions_vars_0x6e.html new file mode 100644 index 00000000000..dfe61766d0a --- /dev/null +++ b/doc/api/html/functions_vars_0x6e.html @@ -0,0 +1,183 @@ + + + + + +Stan: Class Members - Variables + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + +
+ + + + +
+ +
+ + +
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/functions_vars_0x6f.html b/doc/api/html/functions_vars_0x6f.html new file mode 100644 index 00000000000..4f6f149f092 --- /dev/null +++ b/doc/api/html/functions_vars_0x6f.html @@ -0,0 +1,160 @@ + + + + + +Stan: Class Members - Variables + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + +
+ + + + +
+ +
+ + +
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/functions_vars_0x70.html b/doc/api/html/functions_vars_0x70.html new file mode 100644 index 00000000000..37013039615 --- /dev/null +++ b/doc/api/html/functions_vars_0x70.html @@ -0,0 +1,179 @@ + + + + + +Stan: Class Members - Variables + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + +
+ + + + +
+ +
+ +
+  + +

- p -

+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/functions_vars_0x71.html b/doc/api/html/functions_vars_0x71.html new file mode 100644 index 00000000000..3346771c94b --- /dev/null +++ b/doc/api/html/functions_vars_0x71.html @@ -0,0 +1,146 @@ + + + + + +Stan: Class Members - Variables + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + +
+ + + + +
+ +
+ +
+  + +

- q -

+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/functions_vars_0x72.html b/doc/api/html/functions_vars_0x72.html new file mode 100644 index 00000000000..cac112f6c11 --- /dev/null +++ b/doc/api/html/functions_vars_0x72.html @@ -0,0 +1,181 @@ + + + + + +Stan: Class Members - Variables + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + +
+ + + + +
+ +
+ + +
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/functions_vars_0x73.html b/doc/api/html/functions_vars_0x73.html new file mode 100644 index 00000000000..7d8479329b3 --- /dev/null +++ b/doc/api/html/functions_vars_0x73.html @@ -0,0 +1,214 @@ + + + + + +Stan: Class Members - Variables + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + +
+ + + + +
+ +
+ + +
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/functions_vars_0x74.html b/doc/api/html/functions_vars_0x74.html new file mode 100644 index 00000000000..1c674dd76c9 --- /dev/null +++ b/doc/api/html/functions_vars_0x74.html @@ -0,0 +1,191 @@ + + + + + +Stan: Class Members - Variables + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + +
+ + + + +
+ +
+ + +
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/functions_vars_0x75.html b/doc/api/html/functions_vars_0x75.html new file mode 100644 index 00000000000..1e4ed688030 --- /dev/null +++ b/doc/api/html/functions_vars_0x75.html @@ -0,0 +1,146 @@ + + + + + +Stan: Class Members - Variables + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + +
+ + + + +
+ +
+ +
+  + +

- u -

+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/functions_vars_0x76.html b/doc/api/html/functions_vars_0x76.html new file mode 100644 index 00000000000..e0fe1125503 --- /dev/null +++ b/doc/api/html/functions_vars_0x76.html @@ -0,0 +1,207 @@ + + + + + +Stan: Class Members - Variables + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + +
+ + + + +
+ +
+ + +
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/functions_vars_0x77.html b/doc/api/html/functions_vars_0x77.html new file mode 100644 index 00000000000..8d7d547d12a --- /dev/null +++ b/doc/api/html/functions_vars_0x77.html @@ -0,0 +1,152 @@ + + + + + +Stan: Class Members - Variables + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + +
+ + + + +
+ +
+ +
+  + +

- w -

+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/functions_vars_0x78.html b/doc/api/html/functions_vars_0x78.html new file mode 100644 index 00000000000..f29ef732b8a --- /dev/null +++ b/doc/api/html/functions_vars_0x78.html @@ -0,0 +1,146 @@ + + + + + +Stan: Class Members - Variables + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + +
+ + + + +
+ +
+ +
+  + +

- x -

+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/fvar_8hpp.html b/doc/api/html/fvar_8hpp.html new file mode 100644 index 00000000000..2c8e5ffe5ea --- /dev/null +++ b/doc/api/html/fvar_8hpp.html @@ -0,0 +1,127 @@ + + + + + +Stan: src/stan/agrad/fwd/fvar.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
fvar.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + +

+Classes

struct  stan::agrad::fvar< T >
 
+ + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/fvar_8hpp_source.html b/doc/api/html/fvar_8hpp_source.html new file mode 100644 index 00000000000..61be085917a --- /dev/null +++ b/doc/api/html/fvar_8hpp_source.html @@ -0,0 +1,235 @@ + + + + + +Stan: src/stan/agrad/fwd/fvar.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
fvar.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__FWD__FVAR__HPP__
+
2 #define __STAN__AGRAD__FWD__FVAR__HPP__
+
3 
+
4 namespace stan {
+
5 
+
6  namespace agrad {
+
7 
+
8  template <typename T>
+
9  struct fvar {
+
10 
+
11  T val_; // value
+
12  T d_; // tangent (aka derivative)
+
13 
+
14  T val() { return val_; }
+
15  T tangent() { return d_; }
+
16 
+
17  // TV and TD must be assignable to T
+
18  template <typename TV, typename TD>
+
19  fvar(const TV& val, const TD& deriv) : val_(val), d_(deriv) { }
+
20 
+
21  // TV must be assignable to T
+
22  template <typename TV>
+
23  fvar(const TV& val) : val_(val), d_(0.0) { }
+
24 
+
25  fvar() : val_(0.0), d_(0.0) { }
+
26 
+
27  template <typename T2>
+
28  inline
+
29  fvar<T>&
+
30  operator+=(const fvar<T2>& x2) {
+
31  val_ += x2.val_;
+
32  d_ += x2.d_;
+
33  return *this;
+
34  }
+
35 
+
36  template <typename T2>
+
37  inline
+
38  fvar<T>&
+
39  operator+=(const T2& x2) {
+
40  val_ += x2;
+
41  return *this;
+
42  }
+
43 
+
44  template <typename T2>
+
45  inline
+
46  fvar<T>&
+
47  operator-=(const fvar<T2>& x2) {
+
48  val_ -= x2.val_;
+
49  d_ -= x2.d_;
+
50  return *this;
+
51  }
+
52 
+
53  template <typename T2>
+
54  inline
+
55  fvar<T>&
+
56  operator-=(const T2& x2) {
+
57  val_ -= x2;
+
58  return *this;
+
59  }
+
60 
+
61  template <typename T2>
+
62  inline
+
63  fvar<T>&
+
64  operator*=(const fvar<T2>& x2) {
+
65  d_ = d_ * x2.val_ + val_ * x2.d_;
+
66  val_ *= x2.val_;
+
67  return *this;
+
68  }
+
69 
+
70  template <typename T2>
+
71  inline
+
72  fvar<T>&
+
73  operator*=(const T2& x2) {
+
74  val_ *= x2;
+
75  return *this;
+
76  }
+
77 
+
78  // SPEEDUP: specialize for T2 == var with d_ function
+
79 
+
80  template <typename T2>
+
81  inline
+
82  fvar<T>&
+
83  operator/=(const fvar<T2>& x2) {
+
84  d_ = (d_ * x2.val_ - val_ * x2.d_) / ( x2.val_ * x2.val_);
+
85  val_ /= x2.val_;
+
86  return *this;
+
87  }
+
88 
+
89  template <typename T2>
+
90  inline
+
91  fvar<T>&
+
92  operator/=(const T2& x2) {
+
93  val_ /= x2;
+
94  return *this;
+
95  }
+
96 
+
97  inline
+
98  fvar<T>&
+ +
100  ++val_;
+
101  return *this;
+
102  }
+
103 
+
104  inline
+
105  fvar<T>
+
106  operator++(int /*dummy*/) {
+
107  fvar<T> result(val_,d_);
+
108  ++val_;
+
109  return result;
+
110  }
+
111 
+
112  inline
+
113  fvar<T>&
+ +
115  --val_;
+
116  return *this;
+
117  }
+
118  inline
+
119  fvar<T>
+
120  operator--(int /*dummy*/) {
+
121  fvar<T> result(val_,d_);
+
122  --val_;
+
123  return result;
+
124  }
+
125  };
+
126  }
+
127 }
+
128 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/fwd_2functions_2acos_8hpp.html b/doc/api/html/fwd_2functions_2acos_8hpp.html new file mode 100644 index 00000000000..42775519ff5 --- /dev/null +++ b/doc/api/html/fwd_2functions_2acos_8hpp.html @@ -0,0 +1,131 @@ + + + + + +Stan: src/stan/agrad/fwd/functions/acos.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
acos.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+ + + + +

+Functions

template<typename T >
fvar< T > stan::agrad::acos (const fvar< T > &x)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/fwd_2functions_2acos_8hpp_source.html b/doc/api/html/fwd_2functions_2acos_8hpp_source.html new file mode 100644 index 00000000000..a90b32aa3c5 --- /dev/null +++ b/doc/api/html/fwd_2functions_2acos_8hpp_source.html @@ -0,0 +1,131 @@ + + + + + +Stan: src/stan/agrad/fwd/functions/acos.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
acos.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__FWD__FUNCTIONS__ACOS_HPP__
+
2 #define __STAN__AGRAD__FWD__FUNCTIONS__ACOS_HPP__
+
3 
+ +
5 #include <stan/meta/traits.hpp>
+ +
7 
+
8 namespace stan {
+
9 
+
10  namespace agrad {
+
11 
+
12  template <typename T>
+
13  inline
+
14  fvar<T>
+
15  acos(const fvar<T>& x) {
+
16  using std::acos;
+
17  using std::sqrt;
+
18  using stan::math::square;
+
19 
+
20  return fvar<T>(acos(x.val_), x.d_ / -sqrt(1 - square(x.val_)));
+
21  }
+
22  }
+
23 }
+
24 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/fwd_2functions_2acosh_8hpp.html b/doc/api/html/fwd_2functions_2acosh_8hpp.html new file mode 100644 index 00000000000..a4b34859224 --- /dev/null +++ b/doc/api/html/fwd_2functions_2acosh_8hpp.html @@ -0,0 +1,133 @@ + + + + + +Stan: src/stan/agrad/fwd/functions/acosh.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
acosh.hpp File Reference
+
+
+
#include <stan/agrad/fwd/fvar.hpp>
+#include <stan/meta/traits.hpp>
+#include <stan/math/constants.hpp>
+#include <boost/math/special_functions/acosh.hpp>
+#include <stan/math/functions/square.hpp>
+
+

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+ + + + +

+Functions

template<typename T >
fvar< T > stan::agrad::acosh (const fvar< T > &x)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/fwd_2functions_2acosh_8hpp_source.html b/doc/api/html/fwd_2functions_2acosh_8hpp_source.html new file mode 100644 index 00000000000..cc82d704dee --- /dev/null +++ b/doc/api/html/fwd_2functions_2acosh_8hpp_source.html @@ -0,0 +1,137 @@ + + + + + +Stan: src/stan/agrad/fwd/functions/acosh.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
acosh.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__FWD__FUNCTIONS__ACOSH_HPP__
+
2 #define __STAN__AGRAD__FWD__FUNCTIONS__ACOSH_HPP__
+
3 
+ +
5 #include <stan/meta/traits.hpp>
+ +
7 #include <boost/math/special_functions/acosh.hpp>
+ +
9 
+
10 namespace stan {
+
11 
+
12  namespace agrad {
+
13 
+
14  template <typename T>
+
15  inline
+
16  fvar<T>
+
17  acosh(const fvar<T>& x) {
+
18  using boost::math::acosh;
+
19  using stan::math::square;
+
20  using std::sqrt;
+ +
22  if(x.val_ < 1)
+ +
24  else
+
25  return fvar<T>(acosh(x.val_),
+
26  x.d_ / sqrt(square(x.val_) - 1));
+
27  }
+
28  }
+
29 }
+
30 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/fwd_2functions_2asin_8hpp.html b/doc/api/html/fwd_2functions_2asin_8hpp.html new file mode 100644 index 00000000000..a86630da670 --- /dev/null +++ b/doc/api/html/fwd_2functions_2asin_8hpp.html @@ -0,0 +1,131 @@ + + + + + +Stan: src/stan/agrad/fwd/functions/asin.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
asin.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+ + + + +

+Functions

template<typename T >
fvar< T > stan::agrad::asin (const fvar< T > &x)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/fwd_2functions_2asin_8hpp_source.html b/doc/api/html/fwd_2functions_2asin_8hpp_source.html new file mode 100644 index 00000000000..d852223c922 --- /dev/null +++ b/doc/api/html/fwd_2functions_2asin_8hpp_source.html @@ -0,0 +1,130 @@ + + + + + +Stan: src/stan/agrad/fwd/functions/asin.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
asin.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__FWD__FUNCTIONS__ASIN_HPP__
+
2 #define __STAN__AGRAD__FWD__FUNCTIONS__ASIN_HPP__
+
3 
+ +
5 #include <stan/meta/traits.hpp>
+ +
7 
+
8 namespace stan {
+
9 
+
10  namespace agrad {
+
11 
+
12  template <typename T>
+
13  inline
+
14  fvar<T>
+
15  asin(const fvar<T>& x) {
+
16  using std::asin;
+
17  using std::sqrt;
+
18  using stan::math::square;
+
19  return fvar<T>(asin(x.val_), x.d_ / sqrt(1 - square(x.val_)));
+
20  }
+
21  }
+
22 }
+
23 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/fwd_2functions_2asinh_8hpp.html b/doc/api/html/fwd_2functions_2asinh_8hpp.html new file mode 100644 index 00000000000..2be09462808 --- /dev/null +++ b/doc/api/html/fwd_2functions_2asinh_8hpp.html @@ -0,0 +1,132 @@ + + + + + +Stan: src/stan/agrad/fwd/functions/asinh.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
asinh.hpp File Reference
+
+
+
#include <stan/agrad/fwd/fvar.hpp>
+#include <stan/meta/traits.hpp>
+#include <boost/math/special_functions/asinh.hpp>
+#include <stan/math/functions/square.hpp>
+
+

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+ + + + +

+Functions

template<typename T >
fvar< T > stan::agrad::asinh (const fvar< T > &x)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/fwd_2functions_2asinh_8hpp_source.html b/doc/api/html/fwd_2functions_2asinh_8hpp_source.html new file mode 100644 index 00000000000..a0e6511e49a --- /dev/null +++ b/doc/api/html/fwd_2functions_2asinh_8hpp_source.html @@ -0,0 +1,131 @@ + + + + + +Stan: src/stan/agrad/fwd/functions/asinh.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
asinh.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__FWD__FUNCTIONS__ASINH_HPP__
+
2 #define __STAN__AGRAD__FWD__FUNCTIONS__ASINH_HPP__
+
3 
+ +
5 #include <stan/meta/traits.hpp>
+
6 #include <boost/math/special_functions/asinh.hpp>
+ +
8 
+
9 namespace stan {
+
10 
+
11  namespace agrad {
+
12 
+
13  template <typename T>
+
14  inline
+
15  fvar<T>
+
16  asinh(const fvar<T>& x) {
+
17  using boost::math::asinh;
+
18  using std::sqrt;
+
19  using stan::math::square;
+
20  return fvar<T>(asinh(x.val_), x.d_ / sqrt(square(x.val_) + 1));
+
21  }
+
22  }
+
23 }
+
24 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/fwd_2functions_2atan2_8hpp.html b/doc/api/html/fwd_2functions_2atan2_8hpp.html new file mode 100644 index 00000000000..1da22edb27b --- /dev/null +++ b/doc/api/html/fwd_2functions_2atan2_8hpp.html @@ -0,0 +1,137 @@ + + + + + +Stan: src/stan/agrad/fwd/functions/atan2.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
atan2.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+ + + + + + + + + + +

+Functions

template<typename T >
fvar< T > stan::agrad::atan2 (const fvar< T > &x1, const fvar< T > &x2)
 
template<typename T >
fvar< T > stan::agrad::atan2 (const double x1, const fvar< T > &x2)
 
template<typename T >
fvar< T > stan::agrad::atan2 (const fvar< T > &x1, const double x2)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/fwd_2functions_2atan2_8hpp_source.html b/doc/api/html/fwd_2functions_2atan2_8hpp_source.html new file mode 100644 index 00000000000..645829cb1be --- /dev/null +++ b/doc/api/html/fwd_2functions_2atan2_8hpp_source.html @@ -0,0 +1,151 @@ + + + + + +Stan: src/stan/agrad/fwd/functions/atan2.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
atan2.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__FWD__FUNCTIONS__ATAN2_HPP__
+
2 #define __STAN__AGRAD__FWD__FUNCTIONS__ATAN2_HPP__
+
3 
+ +
5 #include <stan/meta/traits.hpp>
+ +
7 
+
8 namespace stan {
+
9 
+
10  namespace agrad {
+
11 
+
12  template <typename T>
+
13  inline
+
14  fvar<T>
+
15  atan2(const fvar<T>& x1, const fvar<T>& x2) {
+
16  using std::atan2;
+
17  using stan::math::square;
+
18  return fvar<T>(atan2(x1.val_, x2.val_),
+
19  (x1.d_ * x2.val_ - x1.val_ * x2.d_) /
+
20  (square(x2.val_) + square(x1.val_)));
+
21  }
+
22 
+
23  template <typename T>
+
24  inline
+
25  fvar<T>
+
26  atan2(const double x1, const fvar<T>& x2) {
+
27  using std::atan2;
+
28  using stan::math::square;
+
29  return fvar<T>(atan2(x1, x2.val_),
+
30  (-x1 * x2.d_) / (square(x1) + square(x2.val_)));
+
31  }
+
32 
+
33  template <typename T>
+
34  inline
+
35  fvar<T>
+
36  atan2(const fvar<T>& x1, const double x2) {
+
37  using std::atan2;
+
38  using stan::math::square;
+
39  return fvar<T>(atan2(x1.val_, x2),
+
40  (x1.d_ * x2) / (square(x2) + square(x1.val_)));
+
41  }
+
42  }
+
43 }
+
44 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/fwd_2functions_2atan_8hpp.html b/doc/api/html/fwd_2functions_2atan_8hpp.html new file mode 100644 index 00000000000..8cf8bccda20 --- /dev/null +++ b/doc/api/html/fwd_2functions_2atan_8hpp.html @@ -0,0 +1,131 @@ + + + + + +Stan: src/stan/agrad/fwd/functions/atan.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
atan.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+ + + + +

+Functions

template<typename T >
fvar< T > stan::agrad::atan (const fvar< T > &x)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/fwd_2functions_2atan_8hpp_source.html b/doc/api/html/fwd_2functions_2atan_8hpp_source.html new file mode 100644 index 00000000000..317046a1d71 --- /dev/null +++ b/doc/api/html/fwd_2functions_2atan_8hpp_source.html @@ -0,0 +1,129 @@ + + + + + +Stan: src/stan/agrad/fwd/functions/atan.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
atan.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__FWD__FUNCTIONS__ATAN_HPP__
+
2 #define __STAN__AGRAD__FWD__FUNCTIONS__ATAN_HPP__
+
3 
+ +
5 #include <stan/meta/traits.hpp>
+ +
7 
+
8 namespace stan {
+
9 
+
10  namespace agrad {
+
11 
+
12  template <typename T>
+
13  inline
+
14  fvar<T>
+
15  atan(const fvar<T>& x) {
+
16  using std::atan;
+
17  using stan::math::square;
+
18  return fvar<T>(atan(x.val_), x.d_ / (1 + square(x.val_)));
+
19  }
+
20  }
+
21 }
+
22 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/fwd_2functions_2atanh_8hpp.html b/doc/api/html/fwd_2functions_2atanh_8hpp.html new file mode 100644 index 00000000000..bfbac50ba03 --- /dev/null +++ b/doc/api/html/fwd_2functions_2atanh_8hpp.html @@ -0,0 +1,132 @@ + + + + + +Stan: src/stan/agrad/fwd/functions/atanh.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
atanh.hpp File Reference
+
+
+
#include <stan/agrad/fwd/fvar.hpp>
+#include <stan/meta/traits.hpp>
+#include <boost/math/special_functions/atanh.hpp>
+#include <stan/math/functions/square.hpp>
+
+

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+ + + + +

+Functions

template<typename T >
fvar< T > stan::agrad::atanh (const fvar< T > &x)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/fwd_2functions_2atanh_8hpp_source.html b/doc/api/html/fwd_2functions_2atanh_8hpp_source.html new file mode 100644 index 00000000000..95542f4d03a --- /dev/null +++ b/doc/api/html/fwd_2functions_2atanh_8hpp_source.html @@ -0,0 +1,130 @@ + + + + + +Stan: src/stan/agrad/fwd/functions/atanh.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
atanh.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__FWD__FUNCTIONS__ATANH_HPP__
+
2 #define __STAN__AGRAD__FWD__FUNCTIONS__ATANH_HPP__
+
3 
+ +
5 #include <stan/meta/traits.hpp>
+
6 #include <boost/math/special_functions/atanh.hpp>
+ +
8 
+
9 namespace stan {
+
10 
+
11  namespace agrad {
+
12 
+
13  template <typename T>
+
14  inline
+
15  fvar<T>
+
16  atanh(const fvar<T>& x) {
+
17  using boost::math::atanh;
+
18  using stan::math::square;
+
19  return fvar<T>(atanh(x.val_), x.d_ / (1 - square(x.val_)));
+
20  }
+
21  }
+
22 }
+
23 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/fwd_2functions_2cbrt_8hpp.html b/doc/api/html/fwd_2functions_2cbrt_8hpp.html new file mode 100644 index 00000000000..1e48359d754 --- /dev/null +++ b/doc/api/html/fwd_2functions_2cbrt_8hpp.html @@ -0,0 +1,132 @@ + + + + + +Stan: src/stan/agrad/fwd/functions/cbrt.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
cbrt.hpp File Reference
+
+
+
#include <stan/agrad/fwd/fvar.hpp>
+#include <stan/meta/traits.hpp>
+#include <boost/math/special_functions/cbrt.hpp>
+#include <stan/math/functions/square.hpp>
+
+

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+ + + + +

+Functions

template<typename T >
fvar< T > stan::agrad::cbrt (const fvar< T > &x)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/fwd_2functions_2cbrt_8hpp_source.html b/doc/api/html/fwd_2functions_2cbrt_8hpp_source.html new file mode 100644 index 00000000000..c98c1d33856 --- /dev/null +++ b/doc/api/html/fwd_2functions_2cbrt_8hpp_source.html @@ -0,0 +1,131 @@ + + + + + +Stan: src/stan/agrad/fwd/functions/cbrt.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
cbrt.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__FWD__FUNCTIONS__CBRT_HPP__
+
2 #define __STAN__AGRAD__FWD__FUNCTIONS__CBRT_HPP__
+
3 
+ +
5 #include <stan/meta/traits.hpp>
+
6 #include <boost/math/special_functions/cbrt.hpp>
+ +
8 
+
9 namespace stan {
+
10 
+
11  namespace agrad {
+
12 
+
13  template <typename T>
+
14  inline
+
15  fvar<T>
+
16  cbrt(const fvar<T>& x) {
+
17  using boost::math::cbrt;
+
18  using stan::math::square;
+
19  return fvar<T>(cbrt(x.val_),
+
20  x.d_ / (square(cbrt(x.val_)) * 3.0));
+
21  }
+
22  }
+
23 }
+
24 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/fwd_2functions_2ceil_8hpp.html b/doc/api/html/fwd_2functions_2ceil_8hpp.html new file mode 100644 index 00000000000..b04463d94c8 --- /dev/null +++ b/doc/api/html/fwd_2functions_2ceil_8hpp.html @@ -0,0 +1,130 @@ + + + + + +Stan: src/stan/agrad/fwd/functions/ceil.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
ceil.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+ + + + +

+Functions

template<typename T >
fvar< T > stan::agrad::ceil (const fvar< T > &x)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/fwd_2functions_2ceil_8hpp_source.html b/doc/api/html/fwd_2functions_2ceil_8hpp_source.html new file mode 100644 index 00000000000..ef1ad4a5841 --- /dev/null +++ b/doc/api/html/fwd_2functions_2ceil_8hpp_source.html @@ -0,0 +1,127 @@ + + + + + +Stan: src/stan/agrad/fwd/functions/ceil.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
ceil.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__FWD__FUNCTIONS__CEIL_HPP__
+
2 #define __STAN__AGRAD__FWD__FUNCTIONS__CEIL_HPP__
+
3 
+ +
5 #include <stan/meta/traits.hpp>
+
6 
+
7 namespace stan {
+
8 
+
9  namespace agrad {
+
10 
+
11  template <typename T>
+
12  inline
+
13  fvar<T>
+
14  ceil(const fvar<T>& x) {
+
15  using std::ceil;
+
16  return fvar<T>(ceil(x.val_), 0);
+
17  }
+
18  }
+
19 }
+
20 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/fwd_2functions_2cos_8hpp.html b/doc/api/html/fwd_2functions_2cos_8hpp.html new file mode 100644 index 00000000000..55c20ff6ed0 --- /dev/null +++ b/doc/api/html/fwd_2functions_2cos_8hpp.html @@ -0,0 +1,130 @@ + + + + + +Stan: src/stan/agrad/fwd/functions/cos.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
cos.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+ + + + +

+Functions

template<typename T >
fvar< T > stan::agrad::cos (const fvar< T > &x)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/fwd_2functions_2cos_8hpp_source.html b/doc/api/html/fwd_2functions_2cos_8hpp_source.html new file mode 100644 index 00000000000..11ac6c34be4 --- /dev/null +++ b/doc/api/html/fwd_2functions_2cos_8hpp_source.html @@ -0,0 +1,128 @@ + + + + + +Stan: src/stan/agrad/fwd/functions/cos.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
cos.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__FWD__FUNCTIONS__COS_HPP__
+
2 #define __STAN__AGRAD__FWD__FUNCTIONS__COS_HPP__
+
3 
+ +
5 #include <stan/meta/traits.hpp>
+
6 
+
7 namespace stan {
+
8 
+
9  namespace agrad {
+
10 
+
11  template <typename T>
+
12  inline
+
13  fvar<T>
+
14  cos(const fvar<T>& x) {
+
15  using std::sin;
+
16  using std::cos;
+
17  return fvar<T>(cos(x.val_), x.d_ * -sin(x.val_));
+
18  }
+
19  }
+
20 }
+
21 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/fwd_2functions_2cosh_8hpp.html b/doc/api/html/fwd_2functions_2cosh_8hpp.html new file mode 100644 index 00000000000..0734e9510f9 --- /dev/null +++ b/doc/api/html/fwd_2functions_2cosh_8hpp.html @@ -0,0 +1,130 @@ + + + + + +Stan: src/stan/agrad/fwd/functions/cosh.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
cosh.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+ + + + +

+Functions

template<typename T >
fvar< T > stan::agrad::cosh (const fvar< T > &x)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/fwd_2functions_2cosh_8hpp_source.html b/doc/api/html/fwd_2functions_2cosh_8hpp_source.html new file mode 100644 index 00000000000..d53becf58ff --- /dev/null +++ b/doc/api/html/fwd_2functions_2cosh_8hpp_source.html @@ -0,0 +1,128 @@ + + + + + +Stan: src/stan/agrad/fwd/functions/cosh.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
cosh.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__FWD__FUNCTIONS__COSH_HPP__
+
2 #define __STAN__AGRAD__FWD__FUNCTIONS__COSH_HPP__
+
3 
+ +
5 #include <stan/meta/traits.hpp>
+
6 
+
7 namespace stan {
+
8 
+
9  namespace agrad {
+
10 
+
11  template <typename T>
+
12  inline
+
13  fvar<T>
+
14  cosh(const fvar<T>& x) {
+
15  using std::sinh;
+
16  using std::cosh;
+
17  return fvar<T>(cosh(x.val_), x.d_ * sinh(x.val_));
+
18  }
+
19  }
+
20 }
+
21 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/fwd_2functions_2erf_8hpp.html b/doc/api/html/fwd_2functions_2erf_8hpp.html new file mode 100644 index 00000000000..9fddbed1141 --- /dev/null +++ b/doc/api/html/fwd_2functions_2erf_8hpp.html @@ -0,0 +1,133 @@ + + + + + +Stan: src/stan/agrad/fwd/functions/erf.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
erf.hpp File Reference
+
+
+
#include <stan/agrad/fwd/fvar.hpp>
+#include <stan/meta/traits.hpp>
+#include <boost/math/special_functions/erf.hpp>
+#include <stan/math/constants.hpp>
+#include <stan/math/functions/square.hpp>
+
+

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+ + + + +

+Functions

template<typename T >
fvar< T > stan::agrad::erf (const fvar< T > &x)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/fwd_2functions_2erf_8hpp_source.html b/doc/api/html/fwd_2functions_2erf_8hpp_source.html new file mode 100644 index 00000000000..42c92479059 --- /dev/null +++ b/doc/api/html/fwd_2functions_2erf_8hpp_source.html @@ -0,0 +1,134 @@ + + + + + +Stan: src/stan/agrad/fwd/functions/erf.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
erf.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__FWD__FUNCTIONS__ERF_HPP__
+
2 #define __STAN__AGRAD__FWD__FUNCTIONS__ERF_HPP__
+
3 
+ +
5 #include <stan/meta/traits.hpp>
+
6 #include <boost/math/special_functions/erf.hpp>
+ + +
9 
+
10 namespace stan {
+
11 
+
12  namespace agrad {
+
13 
+
14  template <typename T>
+
15  inline
+
16  fvar<T>
+
17  erf(const fvar<T>& x) {
+
18  using boost::math::erf;
+
19  using std::sqrt;
+
20  using std::exp;
+
21  using stan::math::square;
+
22  return fvar<T>(erf(x.val_), x.d_ * exp(-square(x.val_))
+ +
24  }
+
25  }
+
26 }
+
27 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/fwd_2functions_2erfc_8hpp.html b/doc/api/html/fwd_2functions_2erfc_8hpp.html new file mode 100644 index 00000000000..5ff2480be6b --- /dev/null +++ b/doc/api/html/fwd_2functions_2erfc_8hpp.html @@ -0,0 +1,133 @@ + + + + + +Stan: src/stan/agrad/fwd/functions/erfc.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
erfc.hpp File Reference
+
+
+
#include <stan/agrad/fwd/fvar.hpp>
+#include <stan/meta/traits.hpp>
+#include <boost/math/special_functions/erf.hpp>
+#include <stan/math/constants.hpp>
+#include <stan/math/functions/square.hpp>
+
+

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+ + + + +

+Functions

template<typename T >
fvar< T > stan::agrad::erfc (const fvar< T > &x)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/fwd_2functions_2erfc_8hpp_source.html b/doc/api/html/fwd_2functions_2erfc_8hpp_source.html new file mode 100644 index 00000000000..47d940f32c6 --- /dev/null +++ b/doc/api/html/fwd_2functions_2erfc_8hpp_source.html @@ -0,0 +1,134 @@ + + + + + +Stan: src/stan/agrad/fwd/functions/erfc.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
erfc.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__FWD__FUNCTIONS__ERFC_HPP__
+
2 #define __STAN__AGRAD__FWD__FUNCTIONS__ERFC_HPP__
+
3 
+ +
5 #include <stan/meta/traits.hpp>
+
6 #include <boost/math/special_functions/erf.hpp>
+ + +
9 
+
10 namespace stan {
+
11 
+
12  namespace agrad {
+
13 
+
14  template <typename T>
+
15  inline
+
16  fvar<T>
+
17  erfc(const fvar<T>& x) {
+
18  using boost::math::erfc;
+
19  using std::sqrt;
+
20  using std::exp;
+
21  using stan::math::square;
+
22  return fvar<T>(erfc(x.val_), -x.d_ * exp(-square(x.val_))
+ +
24  }
+
25  }
+
26 }
+
27 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/fwd_2functions_2expm1_8hpp.html b/doc/api/html/fwd_2functions_2expm1_8hpp.html new file mode 100644 index 00000000000..c4be3990a04 --- /dev/null +++ b/doc/api/html/fwd_2functions_2expm1_8hpp.html @@ -0,0 +1,131 @@ + + + + + +Stan: src/stan/agrad/fwd/functions/expm1.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
expm1.hpp File Reference
+
+
+
#include <stan/agrad/fwd/fvar.hpp>
+#include <stan/meta/traits.hpp>
+#include <boost/math/special_functions/expm1.hpp>
+
+

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+ + + + +

+Functions

template<typename T >
fvar< T > stan::agrad::expm1 (const fvar< T > &x)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/fwd_2functions_2expm1_8hpp_source.html b/doc/api/html/fwd_2functions_2expm1_8hpp_source.html new file mode 100644 index 00000000000..66fe68c1d82 --- /dev/null +++ b/doc/api/html/fwd_2functions_2expm1_8hpp_source.html @@ -0,0 +1,129 @@ + + + + + +Stan: src/stan/agrad/fwd/functions/expm1.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
expm1.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__FWD__FUNCTIONS__EXPM1_HPP__
+
2 #define __STAN__AGRAD__FWD__FUNCTIONS__EXPM1_HPP__
+
3 
+ +
5 #include <stan/meta/traits.hpp>
+
6 #include <boost/math/special_functions/expm1.hpp>
+
7 
+
8 namespace stan {
+
9 
+
10  namespace agrad {
+
11 
+
12  template <typename T>
+
13  inline
+
14  fvar<T>
+
15  expm1(const fvar<T>& x) {
+
16  using boost::math::expm1;
+
17  using std::exp;
+
18  return fvar<T>(expm1(x.val_), x.d_ * exp(x.val_));
+
19  }
+
20  }
+
21 }
+
22 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/fwd_2functions_2fabs_8hpp.html b/doc/api/html/fwd_2functions_2fabs_8hpp.html new file mode 100644 index 00000000000..7276a329d9c --- /dev/null +++ b/doc/api/html/fwd_2functions_2fabs_8hpp.html @@ -0,0 +1,131 @@ + + + + + +Stan: src/stan/agrad/fwd/functions/fabs.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
fabs.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+ + + + +

+Functions

template<typename T >
fvar< T > stan::agrad::fabs (const fvar< T > &x)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/fwd_2functions_2fabs_8hpp_source.html b/doc/api/html/fwd_2functions_2fabs_8hpp_source.html new file mode 100644 index 00000000000..825613af81d --- /dev/null +++ b/doc/api/html/fwd_2functions_2fabs_8hpp_source.html @@ -0,0 +1,135 @@ + + + + + +Stan: src/stan/agrad/fwd/functions/fabs.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
fabs.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__FWD__FUNCTIONS__FABS_HPP__
+
2 #define __STAN__AGRAD__FWD__FUNCTIONS__FABS_HPP__
+
3 
+ +
5 #include <stan/meta/traits.hpp>
+ +
7 
+
8 namespace stan {
+
9 
+
10  namespace agrad {
+
11 
+
12  template<typename T>
+
13  inline
+
14  fvar<T>
+
15  fabs(const fvar<T>& x) {
+ +
17  if (x.val_ > 0.0)
+
18  return x;
+
19  else if (x.val_ < 0.0)
+
20  return fvar<T>(-x.val_, -x.d_);
+
21  else if (x.val_ == 0.0)
+
22  return fvar<T>(0, 0);
+
23  else
+ +
25  }
+
26  }
+
27 }
+
28 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/fwd_2functions_2floor_8hpp.html b/doc/api/html/fwd_2functions_2floor_8hpp.html new file mode 100644 index 00000000000..39ae6fd614a --- /dev/null +++ b/doc/api/html/fwd_2functions_2floor_8hpp.html @@ -0,0 +1,130 @@ + + + + + +Stan: src/stan/agrad/fwd/functions/floor.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
floor.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+ + + + +

+Functions

template<typename T >
fvar< T > stan::agrad::floor (const fvar< T > &x)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/fwd_2functions_2floor_8hpp_source.html b/doc/api/html/fwd_2functions_2floor_8hpp_source.html new file mode 100644 index 00000000000..ca59981c37b --- /dev/null +++ b/doc/api/html/fwd_2functions_2floor_8hpp_source.html @@ -0,0 +1,127 @@ + + + + + +Stan: src/stan/agrad/fwd/functions/floor.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
floor.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__FWD__FUNCTIONS__FLOOR_HPP__
+
2 #define __STAN__AGRAD__FWD__FUNCTIONS__FLOOR_HPP__
+
3 
+ +
5 #include <stan/meta/traits.hpp>
+
6 
+
7 namespace stan {
+
8 
+
9  namespace agrad {
+
10 
+
11  template <typename T>
+
12  inline
+
13  fvar<T>
+
14  floor(const fvar<T>& x) {
+
15  using std::floor;
+
16  return fvar<T>(floor(x.val_), 0);
+
17  }
+
18  }
+
19 }
+
20 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/fwd_2functions_2fmax_8hpp.html b/doc/api/html/fwd_2functions_2fmax_8hpp.html new file mode 100644 index 00000000000..aa88551b67b --- /dev/null +++ b/doc/api/html/fwd_2functions_2fmax_8hpp.html @@ -0,0 +1,137 @@ + + + + + +Stan: src/stan/agrad/fwd/functions/fmax.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
fmax.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+ + + + + + + + + + +

+Functions

template<typename T >
fvar< T > stan::agrad::fmax (const fvar< T > &x1, const fvar< T > &x2)
 
template<typename T >
fvar< T > stan::agrad::fmax (const double x1, const fvar< T > &x2)
 
template<typename T >
fvar< T > stan::agrad::fmax (const fvar< T > &x1, const double x2)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/fwd_2functions_2fmax_8hpp_source.html b/doc/api/html/fwd_2functions_2fmax_8hpp_source.html new file mode 100644 index 00000000000..af9fdcb6604 --- /dev/null +++ b/doc/api/html/fwd_2functions_2fmax_8hpp_source.html @@ -0,0 +1,162 @@ + + + + + +Stan: src/stan/agrad/fwd/functions/fmax.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
fmax.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__FWD__FUNCTIONS__FMAX_HPP__
+
2 #define __STAN__AGRAD__FWD__FUNCTIONS__FMAX_HPP__
+
3 
+ +
5 #include <stan/meta/traits.hpp>
+ +
7 
+
8 namespace stan {
+
9 
+
10  namespace agrad {
+
11 
+
12  template <typename T>
+
13  inline
+
14  fvar<T>
+
15  fmax(const fvar<T>& x1, const fvar<T>& x2) {
+
16  using std::max;
+ +
18  if(x1.val_ > x2.val_)
+
19  return fvar<T>(x1.val_, x1.d_);
+
20  else if(x1.val_ == x2.val_)
+
21  return fvar<T>(x1.val_, NOT_A_NUMBER);
+
22  else
+
23  return fvar<T>(x2.val_, x2.d_);
+
24  }
+
25 
+
26  template <typename T>
+
27  inline
+
28  fvar<T>
+
29  fmax(const double x1, const fvar<T>& x2) {
+
30  using std::max;
+ +
32  if(x1 > x2.val_)
+
33  return fvar<T>(x1, 0.0);
+
34  else if(x1 == x2.val_)
+
35  return fvar<T>(x2.val_, NOT_A_NUMBER);
+
36  else
+
37  return fvar<T>(x2.val_, x2.d_);
+
38  }
+
39 
+
40  template <typename T>
+
41  inline
+
42  fvar<T>
+
43  fmax(const fvar<T>& x1, const double x2) {
+
44  using std::max;
+ +
46  if(x1.val_ > x2)
+
47  return fvar<T>(x1.val_, x1.d_);
+
48  else if(x1.val_ == x2)
+
49  return fvar<T>(x1.val_, NOT_A_NUMBER);
+
50  else
+
51  return fvar<T>(x2, 0.0);
+
52  }
+
53  }
+
54 }
+
55 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/fwd_2functions_2fmin_8hpp.html b/doc/api/html/fwd_2functions_2fmin_8hpp.html new file mode 100644 index 00000000000..e298fd62a49 --- /dev/null +++ b/doc/api/html/fwd_2functions_2fmin_8hpp.html @@ -0,0 +1,137 @@ + + + + + +Stan: src/stan/agrad/fwd/functions/fmin.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
fmin.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+ + + + + + + + + + +

+Functions

template<typename T >
fvar< T > stan::agrad::fmin (const fvar< T > &x1, const fvar< T > &x2)
 
template<typename T >
fvar< T > stan::agrad::fmin (const double x1, const fvar< T > &x2)
 
template<typename T >
fvar< T > stan::agrad::fmin (const fvar< T > &x1, const double x2)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/fwd_2functions_2fmin_8hpp_source.html b/doc/api/html/fwd_2functions_2fmin_8hpp_source.html new file mode 100644 index 00000000000..579b5687936 --- /dev/null +++ b/doc/api/html/fwd_2functions_2fmin_8hpp_source.html @@ -0,0 +1,162 @@ + + + + + +Stan: src/stan/agrad/fwd/functions/fmin.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
fmin.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__FWD__FUNCTIONS__FMIN_HPP__
+
2 #define __STAN__AGRAD__FWD__FUNCTIONS__FMIN_HPP__
+
3 
+ +
5 #include <stan/meta/traits.hpp>
+ +
7 
+
8 namespace stan {
+
9 
+
10  namespace agrad {
+
11 
+
12  template <typename T>
+
13  inline
+
14  fvar<T>
+
15  fmin(const fvar<T>& x1, const fvar<T>& x2) {
+
16  using std::min;
+ +
18  if(x1.val_ < x2.val_)
+
19  return fvar<T>(x1.val_, x1.d_);
+
20  else if(x1.val_ == x2.val_)
+
21  return fvar<T>(x1.val_, NOT_A_NUMBER);
+
22  else
+
23  return fvar<T>(x2.val_, x2.d_);
+
24  }
+
25 
+
26  template <typename T>
+
27  inline
+
28  fvar<T>
+
29  fmin(const double x1, const fvar<T>& x2) {
+
30  using std::min;
+ +
32  if(x1 < x2.val_)
+
33  return fvar<T>(x1, 0.0);
+
34  else if(x1 == x2.val_)
+
35  return fvar<T>(x2.val_, NOT_A_NUMBER);
+
36  else
+
37  return fvar<T>(x2.val_, x2.d_);
+
38  }
+
39 
+
40  template <typename T>
+
41  inline
+
42  fvar<T>
+
43  fmin(const fvar<T>& x1, const double x2) {
+
44  using std::min;
+ +
46  if(x1.val_ < x2)
+
47  return fvar<T>(x1.val_, x1.d_);
+
48  else if(x1.val_ == x2)
+
49  return fvar<T>(x1.val_, NOT_A_NUMBER);
+
50  else
+
51  return fvar<T>(x2, 0.0);
+
52  }
+
53  }
+
54 }
+
55 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/fwd_2functions_2fmod_8hpp.html b/doc/api/html/fwd_2functions_2fmod_8hpp.html new file mode 100644 index 00000000000..244ba634fff --- /dev/null +++ b/doc/api/html/fwd_2functions_2fmod_8hpp.html @@ -0,0 +1,136 @@ + + + + + +Stan: src/stan/agrad/fwd/functions/fmod.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
fmod.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+ + + + + + + + + + +

+Functions

template<typename T >
fvar< T > stan::agrad::fmod (const fvar< T > &x1, const fvar< T > &x2)
 
template<typename T >
fvar< T > stan::agrad::fmod (const fvar< T > &x1, const double x2)
 
template<typename T >
fvar< T > stan::agrad::fmod (const double x1, const fvar< T > &x2)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/fwd_2functions_2fmod_8hpp_source.html b/doc/api/html/fwd_2functions_2fmod_8hpp_source.html new file mode 100644 index 00000000000..a06bf61e488 --- /dev/null +++ b/doc/api/html/fwd_2functions_2fmod_8hpp_source.html @@ -0,0 +1,146 @@ + + + + + +Stan: src/stan/agrad/fwd/functions/fmod.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
fmod.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__FWD__FUNCTIONS__FMOD_HPP__
+
2 #define __STAN__AGRAD__FWD__FUNCTIONS__FMOD_HPP__
+
3 
+ +
5 #include <stan/meta/traits.hpp>
+
6 
+
7 namespace stan {
+
8 
+
9  namespace agrad {
+
10 
+
11  template <typename T>
+
12  inline
+
13  fvar<T>
+
14  fmod(const fvar<T>& x1, const fvar<T>& x2) {
+
15  using std::fmod;
+
16  using std::floor;
+
17  return fvar<T>(fmod(x1.val_, x2.val_),
+
18  x1.d_ - x2.d_ * floor(x1.val_ / x2.val_));
+
19  }
+
20 
+
21  template <typename T>
+
22  inline
+
23  fvar<T>
+
24  fmod(const fvar<T>& x1, const double x2) {
+
25  using std::fmod;
+
26  return fvar<T>(fmod(x1.val_, x2), x1.d_ / x2);
+
27  }
+
28 
+
29  template <typename T>
+
30  inline
+
31  fvar<T>
+
32  fmod(const double x1, const fvar<T>& x2) {
+
33  using std::fmod;
+
34  using std::floor;
+
35  return fvar<T>(fmod(x1, x2.val_), -x2.d_ * floor(x1 / x2.val_));
+
36  }
+
37  }
+
38 }
+
39 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/fwd_2functions_2hypot_8hpp.html b/doc/api/html/fwd_2functions_2hypot_8hpp.html new file mode 100644 index 00000000000..617f7409fe4 --- /dev/null +++ b/doc/api/html/fwd_2functions_2hypot_8hpp.html @@ -0,0 +1,138 @@ + + + + + +Stan: src/stan/agrad/fwd/functions/hypot.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
hypot.hpp File Reference
+
+
+
#include <stan/agrad/fwd/fvar.hpp>
+#include <stan/meta/traits.hpp>
+#include <boost/math/special_functions/hypot.hpp>
+#include <stan/math/functions/inv.hpp>
+
+

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+ + + + + + + + + + +

+Functions

template<typename T >
fvar< T > stan::agrad::hypot (const fvar< T > &x1, const fvar< T > &x2)
 
template<typename T >
fvar< T > stan::agrad::hypot (const fvar< T > &x1, const double x2)
 
template<typename T >
fvar< T > stan::agrad::hypot (const double x1, const fvar< T > &x2)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/fwd_2functions_2hypot_8hpp_source.html b/doc/api/html/fwd_2functions_2hypot_8hpp_source.html new file mode 100644 index 00000000000..f4c0c2b74a5 --- /dev/null +++ b/doc/api/html/fwd_2functions_2hypot_8hpp_source.html @@ -0,0 +1,154 @@ + + + + + +Stan: src/stan/agrad/fwd/functions/hypot.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
hypot.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__FWD__FUNCTIONS__HYPOT_HPP__
+
2 #define __STAN__AGRAD__FWD__FUNCTIONS__HYPOT_HPP__
+
3 
+ +
5 #include <stan/meta/traits.hpp>
+
6 #include <boost/math/special_functions/hypot.hpp>
+ +
8 
+
9 namespace stan {
+
10 
+
11  namespace agrad {
+
12 
+
13  template <typename T>
+
14  inline
+
15  fvar<T>
+
16  hypot(const fvar<T>& x1, const fvar<T>& x2) {
+
17  using boost::math::hypot;
+
18  using std::sqrt;
+
19  using stan::math::inv;
+
20  T u = hypot(x1.val_, x2.val_);
+
21  return fvar<T>(u, (x1.d_ * x1.val_ + x2.d_ * x2.val_) * inv(u));
+
22  }
+
23 
+
24  template <typename T>
+
25  inline
+
26  fvar<T>
+
27  hypot(const fvar<T>& x1, const double x2) {
+
28  using boost::math::hypot;
+
29  using std::sqrt;
+
30  T u = hypot(x1.val_, x2);
+
31  return fvar<T>(u, (x1.d_ * x1.val_) * inv(u));
+
32  }
+
33 
+
34  template <typename T>
+
35  inline
+
36  fvar<T>
+
37  hypot(const double x1, const fvar<T>& x2) {
+
38  using boost::math::hypot;
+
39  using std::sqrt;
+
40  using stan::math::inv;
+
41  T u = hypot(x1, x2.val_);
+
42  return fvar<T>(u, (x2.d_ * x2.val_) * inv(u));
+
43  }
+
44 
+
45  }
+
46 }
+
47 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/fwd_2functions_2log10_8hpp.html b/doc/api/html/fwd_2functions_2log10_8hpp.html new file mode 100644 index 00000000000..960a5ec6b89 --- /dev/null +++ b/doc/api/html/fwd_2functions_2log10_8hpp.html @@ -0,0 +1,131 @@ + + + + + +Stan: src/stan/agrad/fwd/functions/log10.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
log10.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+ + + + +

+Functions

template<typename T >
fvar< T > stan::agrad::log10 (const fvar< T > &x)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/fwd_2functions_2log10_8hpp_source.html b/doc/api/html/fwd_2functions_2log10_8hpp_source.html new file mode 100644 index 00000000000..434591ff060 --- /dev/null +++ b/doc/api/html/fwd_2functions_2log10_8hpp_source.html @@ -0,0 +1,133 @@ + + + + + +Stan: src/stan/agrad/fwd/functions/log10.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
log10.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__FWD__FUNCTIONS__LOG10_HPP__
+
2 #define __STAN__AGRAD__FWD__FUNCTIONS__LOG10_HPP__
+
3 
+ +
5 #include <stan/meta/traits.hpp>
+ +
7 
+
8 namespace stan {
+
9 
+
10  namespace agrad {
+
11 
+
12  template <typename T>
+
13  inline
+
14  fvar<T>
+
15  log10(const fvar<T>& x) {
+
16  using std::log;
+
17  using std::log10;
+ +
19  if(x.val_ < 0.0)
+ +
21  else
+
22  return fvar<T>(log10(x.val_), x.d_ / (x.val_ * stan::math::LOG_10));
+
23  }
+
24  }
+
25 }
+
26 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/fwd_2functions_2pow_8hpp.html b/doc/api/html/fwd_2functions_2pow_8hpp.html new file mode 100644 index 00000000000..9b82ac67464 --- /dev/null +++ b/doc/api/html/fwd_2functions_2pow_8hpp.html @@ -0,0 +1,139 @@ + + + + + +Stan: src/stan/agrad/fwd/functions/pow.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
pow.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+ + + + + + + + + + +

+Functions

template<typename T >
fvar< T > stan::agrad::pow (const fvar< T > &x1, const fvar< T > &x2)
 
template<typename T >
fvar< T > stan::agrad::pow (const double x1, const fvar< T > &x2)
 
template<typename T >
fvar< T > stan::agrad::pow (const fvar< T > &x1, const double x2)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/fwd_2functions_2pow_8hpp_source.html b/doc/api/html/fwd_2functions_2pow_8hpp_source.html new file mode 100644 index 00000000000..252b80a09ed --- /dev/null +++ b/doc/api/html/fwd_2functions_2pow_8hpp_source.html @@ -0,0 +1,172 @@ + + + + + +Stan: src/stan/agrad/fwd/functions/pow.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
pow.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__FWD__FUNCTIONS__POW_HPP__
+
2 #define __STAN__AGRAD__FWD__FUNCTIONS__POW_HPP__
+
3 
+ +
5 #include <stan/meta/traits.hpp>
+ + + +
9 
+
10 namespace stan {
+
11 
+
12  namespace agrad {
+
13 
+
14  template <typename T>
+
15  inline
+
16  fvar<T>
+
17  pow(const fvar<T>& x1, const fvar<T>& x2) {
+
18  using std::pow;
+
19  using std::log;
+
20  T pow_x1_x2(pow(x1.val_,x2.val_));
+
21  return fvar<T>(pow_x1_x2,
+
22  (x2.d_ * log(x1.val_)
+
23  + x2.val_ * x1.d_ / x1.val_) * pow_x1_x2);
+
24  }
+
25 
+
26  template <typename T>
+
27  inline
+
28  fvar<T>
+
29  pow(const double x1, const fvar<T>& x2) {
+
30  using std::pow;
+
31  using std::log;
+
32  T u = pow(x1,x2.val_);
+
33  return fvar<T>(u, x2.d_ * log(x1) * u);
+
34  }
+
35 
+
36  template <typename T>
+
37  inline
+
38  fvar<T>
+
39  pow(const fvar<T>& x1, const double x2) {
+
40  using std::pow;
+
41  using stan::agrad::inv;
+ + +
44  using std::sqrt;
+
45  using stan::math::square;
+
46 
+
47  if (x2 == -2)
+
48  return inv_square(x1);
+
49  if (x2 == -1)
+
50  return inv(x1);
+
51  if (x2 == -0.5)
+
52  return inv_sqrt(x1);
+
53  if (x2 == 0.5)
+
54  return sqrt(x1);
+
55  if (x2 == 1.0)
+
56  return x1;
+
57  if (x2 == 2.0)
+
58  return square(x1);
+
59 
+
60  return fvar<T>(pow(x1.val_, x2),
+
61  x1.d_ * x2 * pow(x1.val_, x2 - 1));
+
62  }
+
63  }
+
64 }
+
65 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/fwd_2functions_2round_8hpp.html b/doc/api/html/fwd_2functions_2round_8hpp.html new file mode 100644 index 00000000000..b9301300b1b --- /dev/null +++ b/doc/api/html/fwd_2functions_2round_8hpp.html @@ -0,0 +1,131 @@ + + + + + +Stan: src/stan/agrad/fwd/functions/round.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
round.hpp File Reference
+
+
+
#include <boost/math/special_functions/round.hpp>
+#include <stan/agrad/fwd/fvar.hpp>
+#include <stan/meta/traits.hpp>
+
+

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+ + + + +

+Functions

template<typename T >
fvar< T > stan::agrad::round (const fvar< T > &x)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/fwd_2functions_2round_8hpp_source.html b/doc/api/html/fwd_2functions_2round_8hpp_source.html new file mode 100644 index 00000000000..8c0bc83e6d9 --- /dev/null +++ b/doc/api/html/fwd_2functions_2round_8hpp_source.html @@ -0,0 +1,129 @@ + + + + + +Stan: src/stan/agrad/fwd/functions/round.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
round.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__FWD__FUNCTIONS__ROUND_HPP__
+
2 #define __STAN__AGRAD__FWD__FUNCTIONS__ROUND_HPP__
+
3 
+
4 #include <boost/math/special_functions/round.hpp>
+ +
6 #include <stan/meta/traits.hpp>
+
7 
+
8 namespace stan {
+
9 
+
10  namespace agrad {
+
11 
+
12  template <typename T>
+
13  inline
+
14  fvar<T>
+
15  round(const fvar<T>& x) {
+
16  using boost::math::round;
+
17  return fvar<T>(round(x.val_), 0);
+
18  }
+
19 
+
20  }
+
21 }
+
22 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/fwd_2functions_2sin_8hpp.html b/doc/api/html/fwd_2functions_2sin_8hpp.html new file mode 100644 index 00000000000..9a96b5837bd --- /dev/null +++ b/doc/api/html/fwd_2functions_2sin_8hpp.html @@ -0,0 +1,130 @@ + + + + + +Stan: src/stan/agrad/fwd/functions/sin.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
sin.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+ + + + +

+Functions

template<typename T >
fvar< T > stan::agrad::sin (const fvar< T > &x)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/fwd_2functions_2sin_8hpp_source.html b/doc/api/html/fwd_2functions_2sin_8hpp_source.html new file mode 100644 index 00000000000..f839d0b98f6 --- /dev/null +++ b/doc/api/html/fwd_2functions_2sin_8hpp_source.html @@ -0,0 +1,129 @@ + + + + + +Stan: src/stan/agrad/fwd/functions/sin.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
sin.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__FWD__FUNCTIONS__SIN_HPP__
+
2 #define __STAN__AGRAD__FWD__FUNCTIONS__SIN_HPP__
+
3 
+ +
5 #include <stan/meta/traits.hpp>
+
6 
+
7 namespace stan {
+
8 
+
9  namespace agrad {
+
10 
+
11  template <typename T>
+
12  inline
+
13  fvar<T>
+
14  sin(const fvar<T>& x) {
+
15  using std::sin;
+
16  using std::cos;
+
17  return fvar<T>(sin(x.val_),
+
18  x.d_ * cos(x.val_));
+
19  }
+
20  }
+
21 }
+
22 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/fwd_2functions_2sinh_8hpp.html b/doc/api/html/fwd_2functions_2sinh_8hpp.html new file mode 100644 index 00000000000..30e043e534b --- /dev/null +++ b/doc/api/html/fwd_2functions_2sinh_8hpp.html @@ -0,0 +1,130 @@ + + + + + +Stan: src/stan/agrad/fwd/functions/sinh.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
sinh.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+ + + + +

+Functions

template<typename T >
fvar< T > stan::agrad::sinh (const fvar< T > &x)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/fwd_2functions_2sinh_8hpp_source.html b/doc/api/html/fwd_2functions_2sinh_8hpp_source.html new file mode 100644 index 00000000000..a804b3d2e99 --- /dev/null +++ b/doc/api/html/fwd_2functions_2sinh_8hpp_source.html @@ -0,0 +1,129 @@ + + + + + +Stan: src/stan/agrad/fwd/functions/sinh.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
sinh.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__FWD__FUNCTIONS__SINH_HPP__
+
2 #define __STAN__AGRAD__FWD__FUNCTIONS__SINH_HPP__
+
3 
+ +
5 #include <stan/meta/traits.hpp>
+
6 
+
7 namespace stan {
+
8 
+
9  namespace agrad {
+
10 
+
11  template <typename T>
+
12  inline
+
13  fvar<T>
+
14  sinh(const fvar<T>& x) {
+
15  using std::sinh;
+
16  using std::cosh;
+
17  return fvar<T>(sinh(x.val_),
+
18  x.d_ * cosh(x.val_));
+
19  }
+
20  }
+
21 }
+
22 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/fwd_2functions_2sqrt_8hpp.html b/doc/api/html/fwd_2functions_2sqrt_8hpp.html new file mode 100644 index 00000000000..ba827c14889 --- /dev/null +++ b/doc/api/html/fwd_2functions_2sqrt_8hpp.html @@ -0,0 +1,131 @@ + + + + + +Stan: src/stan/agrad/fwd/functions/sqrt.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
sqrt.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+ + + + +

+Functions

template<typename T >
fvar< T > stan::agrad::sqrt (const fvar< T > &x)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/fwd_2functions_2sqrt_8hpp_source.html b/doc/api/html/fwd_2functions_2sqrt_8hpp_source.html new file mode 100644 index 00000000000..96fe1be39a5 --- /dev/null +++ b/doc/api/html/fwd_2functions_2sqrt_8hpp_source.html @@ -0,0 +1,129 @@ + + + + + +Stan: src/stan/agrad/fwd/functions/sqrt.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
sqrt.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__FWD__FUNCTIONS__SQRT_HPP__
+
2 #define __STAN__AGRAD__FWD__FUNCTIONS__SQRT_HPP__
+
3 
+ +
5 #include <stan/meta/traits.hpp>
+ +
7 
+
8 namespace stan {
+
9 
+
10  namespace agrad {
+
11 
+
12  template <typename T>
+
13  inline
+
14  fvar<T>
+
15  sqrt(const fvar<T>& x) {
+
16  using std::sqrt;
+ +
18  return fvar<T>(sqrt(x.val_), 0.5 * x.d_ * inv_sqrt(x.val_));
+
19  }
+
20  }
+
21 }
+
22 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/fwd_2functions_2tan_8hpp.html b/doc/api/html/fwd_2functions_2tan_8hpp.html new file mode 100644 index 00000000000..c29ff91aca3 --- /dev/null +++ b/doc/api/html/fwd_2functions_2tan_8hpp.html @@ -0,0 +1,130 @@ + + + + + +Stan: src/stan/agrad/fwd/functions/tan.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
tan.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+ + + + +

+Functions

template<typename T >
fvar< T > stan::agrad::tan (const fvar< T > &x)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/fwd_2functions_2tan_8hpp_source.html b/doc/api/html/fwd_2functions_2tan_8hpp_source.html new file mode 100644 index 00000000000..644eacc0b18 --- /dev/null +++ b/doc/api/html/fwd_2functions_2tan_8hpp_source.html @@ -0,0 +1,128 @@ + + + + + +Stan: src/stan/agrad/fwd/functions/tan.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
tan.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__FWD__FUNCTIONS__TAN_HPP__
+
2 #define __STAN__AGRAD__FWD__FUNCTIONS__TAN_HPP__
+
3 
+ +
5 #include <stan/meta/traits.hpp>
+
6 
+
7 namespace stan {
+
8 
+
9  namespace agrad {
+
10 
+
11  template <typename T>
+
12  inline
+
13  fvar<T>
+
14  tan(const fvar<T>& x) {
+
15  using std::cos;
+
16  using std::tan;
+
17  return fvar<T>(tan(x.val_), x.d_ / (cos(x.val_) * cos(x.val_)));
+
18  }
+
19  }
+
20 }
+
21 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/fwd_2functions_2tanh_8hpp.html b/doc/api/html/fwd_2functions_2tanh_8hpp.html new file mode 100644 index 00000000000..9a5b5bc9cd2 --- /dev/null +++ b/doc/api/html/fwd_2functions_2tanh_8hpp.html @@ -0,0 +1,130 @@ + + + + + +Stan: src/stan/agrad/fwd/functions/tanh.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
tanh.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+ + + + +

+Functions

template<typename T >
fvar< T > stan::agrad::tanh (const fvar< T > &x)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/fwd_2functions_2tanh_8hpp_source.html b/doc/api/html/fwd_2functions_2tanh_8hpp_source.html new file mode 100644 index 00000000000..276d7df0efb --- /dev/null +++ b/doc/api/html/fwd_2functions_2tanh_8hpp_source.html @@ -0,0 +1,128 @@ + + + + + +Stan: src/stan/agrad/fwd/functions/tanh.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
tanh.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__FWD__FUNCTIONS__TANH_HPP__
+
2 #define __STAN__AGRAD__FWD__FUNCTIONS__TANH_HPP__
+
3 
+ +
5 #include <stan/meta/traits.hpp>
+
6 
+
7 namespace stan {
+
8 
+
9  namespace agrad {
+
10 
+
11  template <typename T>
+
12  inline
+
13  fvar<T>
+
14  tanh(const fvar<T>& x) {
+
15  using std::tanh;
+
16  T u = tanh(x.val_);
+
17  return fvar<T>(u, x.d_ * (1 - u * u));
+
18  }
+
19  }
+
20 }
+
21 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/fwd_2functions_2tgamma_8hpp.html b/doc/api/html/fwd_2functions_2tgamma_8hpp.html new file mode 100644 index 00000000000..27f89147e01 --- /dev/null +++ b/doc/api/html/fwd_2functions_2tgamma_8hpp.html @@ -0,0 +1,131 @@ + + + + + +Stan: src/stan/agrad/fwd/functions/tgamma.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
tgamma.hpp File Reference
+
+
+
#include <stan/agrad/fwd/fvar.hpp>
+#include <stan/meta/traits.hpp>
+#include <boost/math/special_functions/digamma.hpp>
+
+

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+ + + + +

+Functions

template<typename T >
fvar< T > stan::agrad::tgamma (const fvar< T > &x)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/fwd_2functions_2tgamma_8hpp_source.html b/doc/api/html/fwd_2functions_2tgamma_8hpp_source.html new file mode 100644 index 00000000000..1268980e1f1 --- /dev/null +++ b/doc/api/html/fwd_2functions_2tgamma_8hpp_source.html @@ -0,0 +1,130 @@ + + + + + +Stan: src/stan/agrad/fwd/functions/tgamma.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
tgamma.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__FWD__FUNCTIONS__TGAMMA_HPP__
+
2 #define __STAN__AGRAD__FWD__FUNCTIONS__TGAMMA_HPP__
+
3 
+ +
5 #include <stan/meta/traits.hpp>
+
6 #include <boost/math/special_functions/digamma.hpp>
+
7 
+
8 namespace stan {
+
9 
+
10  namespace agrad {
+
11 
+
12  template <typename T>
+
13  inline
+
14  fvar<T>
+
15  tgamma(const fvar<T>& x) {
+ +
17  using boost::math::tgamma;
+
18  T u = tgamma(x.val_);
+
19  return fvar<T>(u, x.d_ * u * digamma(x.val_));
+
20  }
+
21  }
+
22 }
+
23 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/fwd_2functions_2trunc_8hpp.html b/doc/api/html/fwd_2functions_2trunc_8hpp.html new file mode 100644 index 00000000000..dd640beeb8c --- /dev/null +++ b/doc/api/html/fwd_2functions_2trunc_8hpp.html @@ -0,0 +1,131 @@ + + + + + +Stan: src/stan/agrad/fwd/functions/trunc.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
trunc.hpp File Reference
+
+
+
#include <boost/math/special_functions/trunc.hpp>
+#include <stan/agrad/fwd/fvar.hpp>
+#include <stan/meta/traits.hpp>
+
+

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+ + + + +

+Functions

template<typename T >
fvar< T > stan::agrad::trunc (const fvar< T > &x)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/fwd_2functions_2trunc_8hpp_source.html b/doc/api/html/fwd_2functions_2trunc_8hpp_source.html new file mode 100644 index 00000000000..1057bc20ede --- /dev/null +++ b/doc/api/html/fwd_2functions_2trunc_8hpp_source.html @@ -0,0 +1,129 @@ + + + + + +Stan: src/stan/agrad/fwd/functions/trunc.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
trunc.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__FWD__FUNCTIONS__TRUNC_HPP__
+
2 #define __STAN__AGRAD__FWD__FUNCTIONS__TRUNC_HPP__
+
3 
+
4 #include <boost/math/special_functions/trunc.hpp>
+ +
6 #include <stan/meta/traits.hpp>
+
7 
+
8 namespace stan {
+
9 
+
10  namespace agrad {
+
11 
+
12  template <typename T>
+
13  inline
+
14  fvar<T>
+
15  trunc(const fvar<T>& x) {
+
16  using boost::math::trunc;
+
17  return fvar<T>(trunc(x.val_), 0);
+
18  }
+
19 
+
20  }
+
21 }
+
22 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/fwd_2numeric__limits_8hpp.html b/doc/api/html/fwd_2numeric__limits_8hpp.html new file mode 100644 index 00000000000..c2857e79d4d --- /dev/null +++ b/doc/api/html/fwd_2numeric__limits_8hpp.html @@ -0,0 +1,126 @@ + + + + + +Stan: src/stan/agrad/fwd/numeric_limits.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
numeric_limits.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + +

+Classes

struct  std::numeric_limits< stan::agrad::fvar< T > >
 
+ + + + +

+Namespaces

namespace  std
 Template specification of functions in std for Stan.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/fwd_2numeric__limits_8hpp_source.html b/doc/api/html/fwd_2numeric__limits_8hpp_source.html new file mode 100644 index 00000000000..32adf109e03 --- /dev/null +++ b/doc/api/html/fwd_2numeric__limits_8hpp_source.html @@ -0,0 +1,164 @@ + + + + + +Stan: src/stan/agrad/fwd/numeric_limits.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
numeric_limits.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__FWD__NUMERIC__LIMITS__HPP__
+
2 #define __STAN__AGRAD__FWD__NUMERIC__LIMITS__HPP__
+
3 
+ +
5 #include <stan/meta/traits.hpp>
+
6 
+
7 namespace std {
+
8 
+
9  template <typename T>
+
10 
+
11  struct numeric_limits<stan::agrad::fvar<T> > {
+
12  static const bool is_specialized = true;
+ + +
15  static const int digits = numeric_limits<double>::digits;
+
16  static const int digits10 = numeric_limits<double>::digits10;
+
17  static const bool is_signed = numeric_limits<double>::is_signed;
+
18  static const bool is_integer = numeric_limits<double>::is_integer;
+
19  static const bool is_exact = numeric_limits<double>::is_exact;
+
20  static const int radix = numeric_limits<double>::radix;
+ +
22  return numeric_limits<double>::epsilon(); }
+ +
24  return numeric_limits<double>::round_error(); }
+
25 
+
26  static const int min_exponent = numeric_limits<double>::min_exponent;
+
27  static const int min_exponent10 = numeric_limits<double>::min_exponent10;
+
28  static const int max_exponent = numeric_limits<double>::max_exponent;
+
29  static const int max_exponent10 = numeric_limits<double>::max_exponent10;
+
30 
+
31  static const bool has_infinity = numeric_limits<double>::has_infinity;
+
32  static const bool has_quiet_NaN = numeric_limits<double>::has_quiet_NaN;
+
33  static const bool has_signaling_NaN =
+
34  numeric_limits<double>::has_signaling_NaN;
+
35  static const float_denorm_style has_denorm =
+
36  numeric_limits<double>::has_denorm;
+
37  static const bool has_denorm_loss = numeric_limits<double>::has_denorm_loss;
+ +
39  return numeric_limits<double>::infinity(); }
+ +
41  return numeric_limits<double>::quiet_NaN(); }
+ +
43  return numeric_limits<double>::signaling_NaN(); }
+ +
45  return numeric_limits<double>::denorm_min(); }
+
46 
+
47  static const bool is_iec559 = numeric_limits<double>::is_iec559;
+
48  static const bool is_bounded = numeric_limits<double>::is_bounded;
+
49  static const bool is_modulo = numeric_limits<double>::is_modulo;
+
50 
+
51  static const bool traps = numeric_limits<double>::traps;
+
52  static const bool tinyness_before = numeric_limits<double>::tinyness_before;
+
53  static const float_round_style round_style =
+
54  numeric_limits<double>::round_style;
+
55  };
+
56 }
+
57 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/fwd_2operators_2operator__addition_8hpp.html b/doc/api/html/fwd_2operators_2operator__addition_8hpp.html new file mode 100644 index 00000000000..5688117ea6f --- /dev/null +++ b/doc/api/html/fwd_2operators_2operator__addition_8hpp.html @@ -0,0 +1,136 @@ + + + + + +Stan: src/stan/agrad/fwd/operators/operator_addition.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
operator_addition.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+ + + + + + + + + + +

+Functions

template<typename T >
fvar< T > stan::agrad::operator+ (const fvar< T > &x1, const fvar< T > &x2)
 
template<typename T >
fvar< T > stan::agrad::operator+ (const double x1, const fvar< T > &x2)
 
template<typename T >
fvar< T > stan::agrad::operator+ (const fvar< T > &x1, const double x2)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/fwd_2operators_2operator__addition_8hpp_source.html b/doc/api/html/fwd_2operators_2operator__addition_8hpp_source.html new file mode 100644 index 00000000000..4c550d6a98b --- /dev/null +++ b/doc/api/html/fwd_2operators_2operator__addition_8hpp_source.html @@ -0,0 +1,140 @@ + + + + + +Stan: src/stan/agrad/fwd/operators/operator_addition.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
operator_addition.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__FWD__OPERATORS__OPERATOR_ADDITION_HPP__
+
2 #define __STAN__AGRAD__FWD__OPERATORS__OPERATOR_ADDITION_HPP__
+
3 
+ +
5 #include <stan/meta/traits.hpp>
+
6 
+
7 namespace stan {
+
8 
+
9  namespace agrad {
+
10 
+
11  template <typename T>
+
12  inline
+
13  fvar<T>
+
14  operator+(const fvar<T>& x1, const fvar<T>& x2) {
+
15  return fvar<T>(x1.val_ + x2.val_, x1.d_ + x2.d_);
+
16  }
+
17 
+
18  template <typename T>
+
19  inline
+
20  fvar<T>
+
21  operator+(const double x1, const fvar<T>& x2) {
+
22  return fvar<T>(x1 + x2.val_, x2.d_);
+
23  }
+
24 
+
25  template <typename T>
+
26  inline
+
27  fvar<T>
+
28  operator+(const fvar<T>& x1, const double x2) {
+
29  return fvar<T>(x1.val_ + x2, x1.d_);
+
30  }
+
31  }
+
32 }
+
33 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/fwd_2operators_2operator__division_8hpp.html b/doc/api/html/fwd_2operators_2operator__division_8hpp.html new file mode 100644 index 00000000000..9daf81c6c09 --- /dev/null +++ b/doc/api/html/fwd_2operators_2operator__division_8hpp.html @@ -0,0 +1,136 @@ + + + + + +Stan: src/stan/agrad/fwd/operators/operator_division.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
operator_division.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+ + + + + + + + + + +

+Functions

template<typename T >
fvar< T > stan::agrad::operator/ (const fvar< T > &x1, const fvar< T > &x2)
 
template<typename T >
fvar< T > stan::agrad::operator/ (const fvar< T > &x1, const double x2)
 
template<typename T >
fvar< T > stan::agrad::operator/ (const double x1, const fvar< T > &x2)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/fwd_2operators_2operator__division_8hpp_source.html b/doc/api/html/fwd_2operators_2operator__division_8hpp_source.html new file mode 100644 index 00000000000..0ef072fa58d --- /dev/null +++ b/doc/api/html/fwd_2operators_2operator__division_8hpp_source.html @@ -0,0 +1,144 @@ + + + + + +Stan: src/stan/agrad/fwd/operators/operator_division.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
operator_division.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__FWD__OPERATORS__OPERATOR_DIVISION_HPP__
+
2 #define __STAN__AGRAD__FWD__OPERATORS__OPERATOR_DIVISION_HPP__
+
3 
+ +
5 #include <stan/meta/traits.hpp>
+
6 
+
7 namespace stan {
+
8 
+
9  namespace agrad {
+
10 
+
11  template <typename T>
+
12  inline
+
13  fvar<T>
+
14  operator/(const fvar<T>& x1, const fvar<T>& x2) {
+
15  return fvar<T>(x1.val_ / x2.val_,
+
16  (x1.d_ * x2.val_ - x1.val_ * x2.d_) / (x2.val_ * x2.val_));
+
17  }
+
18 
+
19  template <typename T>
+
20  inline
+
21  fvar<T>
+
22  operator/(const fvar<T>& x1, const double x2) {
+
23  return fvar<T>(x1.val_ / x2,
+
24  x1.d_ / x2);
+
25  }
+
26 
+
27  template <typename T>
+
28  inline
+
29  fvar<T>
+
30  operator/(const double x1, const fvar<T>& x2) {
+
31  return fvar<T>(x1 / x2.val_,
+
32  - x1 * x2.d_ / (x2.val_ * x2.val_));
+
33 
+
34  }
+
35  }
+
36 }
+
37 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/fwd_2operators_2operator__equal_8hpp.html b/doc/api/html/fwd_2operators_2operator__equal_8hpp.html new file mode 100644 index 00000000000..063ba4636b9 --- /dev/null +++ b/doc/api/html/fwd_2operators_2operator__equal_8hpp.html @@ -0,0 +1,136 @@ + + + + + +Stan: src/stan/agrad/fwd/operators/operator_equal.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
operator_equal.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+ + + + + + + + + + +

+Functions

template<typename T >
bool stan::agrad::operator== (const fvar< T > &x, const fvar< T > &y)
 
template<typename T >
bool stan::agrad::operator== (const fvar< T > &x, double y)
 
template<typename T >
bool stan::agrad::operator== (double x, const fvar< T > &y)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/fwd_2operators_2operator__equal_8hpp_source.html b/doc/api/html/fwd_2operators_2operator__equal_8hpp_source.html new file mode 100644 index 00000000000..6a9a46d6eb4 --- /dev/null +++ b/doc/api/html/fwd_2operators_2operator__equal_8hpp_source.html @@ -0,0 +1,140 @@ + + + + + +Stan: src/stan/agrad/fwd/operators/operator_equal.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
operator_equal.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__FWD__OPERATORS__OPERATOR_EQUAL_HPP__
+
2 #define __STAN__AGRAD__FWD__OPERATORS__OPERATOR_EQUAL_HPP__
+
3 
+ +
5 #include <stan/meta/traits.hpp>
+
6 
+
7 namespace stan {
+
8 
+
9  namespace agrad {
+
10 
+
11  template <typename T>
+
12  inline
+
13  bool
+
14  operator==(const fvar<T>& x, const fvar<T>& y) {
+
15  return x.val_ == y.val_;
+
16  }
+
17 
+
18  template <typename T>
+
19  inline
+
20  bool
+
21  operator==(const fvar<T>& x, double y) {
+
22  return x.val_ == y;
+
23  }
+
24 
+
25  template <typename T>
+
26  inline
+
27  bool
+
28  operator==(double x, const fvar<T>& y) {
+
29  return x == y.val_;
+
30  }
+
31  }
+
32 }
+
33 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/fwd_2operators_2operator__greater__than_8hpp.html b/doc/api/html/fwd_2operators_2operator__greater__than_8hpp.html new file mode 100644 index 00000000000..96e80722d81 --- /dev/null +++ b/doc/api/html/fwd_2operators_2operator__greater__than_8hpp.html @@ -0,0 +1,136 @@ + + + + + +Stan: src/stan/agrad/fwd/operators/operator_greater_than.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
operator_greater_than.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+ + + + + + + + + + +

+Functions

template<typename T >
bool stan::agrad::operator> (const fvar< T > &x, const fvar< T > &y)
 
template<typename T >
bool stan::agrad::operator> (const fvar< T > &x, double y)
 
template<typename T >
bool stan::agrad::operator> (double x, const fvar< T > &y)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/fwd_2operators_2operator__greater__than_8hpp_source.html b/doc/api/html/fwd_2operators_2operator__greater__than_8hpp_source.html new file mode 100644 index 00000000000..d9cf5bb6631 --- /dev/null +++ b/doc/api/html/fwd_2operators_2operator__greater__than_8hpp_source.html @@ -0,0 +1,140 @@ + + + + + +Stan: src/stan/agrad/fwd/operators/operator_greater_than.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
operator_greater_than.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__FWD__OPERATORS__OPERATOR__GREATER_THAN_HPP__
+
2 #define __STAN__AGRAD__FWD__OPERATORS__OPERATOR__GREATER_THAN_HPP__
+
3 
+ +
5 #include <stan/meta/traits.hpp>
+
6 
+
7 namespace stan {
+
8 
+
9  namespace agrad {
+
10 
+
11  template <typename T>
+
12  inline
+
13  bool
+
14  operator>(const fvar<T>& x, const fvar<T>& y) {
+
15  return x.val_ > y.val_;
+
16  }
+
17 
+
18  template <typename T>
+
19  inline
+
20  bool
+
21  operator>(const fvar<T>& x, double y) {
+
22  return x.val_ > y;
+
23  }
+
24 
+
25  template <typename T>
+
26  inline
+
27  bool
+
28  operator>(double x, const fvar<T>& y) {
+
29  return x > y.val_;
+
30  }
+
31  }
+
32 }
+
33 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/fwd_2operators_2operator__greater__than__or__equal_8hpp.html b/doc/api/html/fwd_2operators_2operator__greater__than__or__equal_8hpp.html new file mode 100644 index 00000000000..e392157ba7b --- /dev/null +++ b/doc/api/html/fwd_2operators_2operator__greater__than__or__equal_8hpp.html @@ -0,0 +1,136 @@ + + + + + +Stan: src/stan/agrad/fwd/operators/operator_greater_than_or_equal.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
operator_greater_than_or_equal.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+ + + + + + + + + + +

+Functions

template<typename T >
bool stan::agrad::operator>= (const fvar< T > &x, const fvar< T > &y)
 
template<typename T >
bool stan::agrad::operator>= (const fvar< T > &x, double y)
 
template<typename T >
bool stan::agrad::operator>= (double x, const fvar< T > &y)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/fwd_2operators_2operator__greater__than__or__equal_8hpp_source.html b/doc/api/html/fwd_2operators_2operator__greater__than__or__equal_8hpp_source.html new file mode 100644 index 00000000000..85b8d08958a --- /dev/null +++ b/doc/api/html/fwd_2operators_2operator__greater__than__or__equal_8hpp_source.html @@ -0,0 +1,140 @@ + + + + + +Stan: src/stan/agrad/fwd/operators/operator_greater_than_or_equal.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
operator_greater_than_or_equal.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__FWD__OPERATORS__OPERATOR__GREATER_THAN_OR_EQUAL_HPP__
+
2 #define __STAN__AGRAD__FWD__OPERATORS__OPERATOR__GREATER_THAN_OR_EQUAL_HPP__
+
3 
+ +
5 #include <stan/meta/traits.hpp>
+
6 
+
7 namespace stan {
+
8 
+
9  namespace agrad {
+
10 
+
11  template <typename T>
+
12  inline
+
13  bool
+
14  operator>=(const fvar<T>& x, const fvar<T>& y) {
+
15  return x.val_ >= y.val_;
+
16  }
+
17 
+
18  template <typename T>
+
19  inline
+
20  bool
+
21  operator>=(const fvar<T>& x, double y) {
+
22  return x.val_ >= y;
+
23  }
+
24 
+
25  template <typename T>
+
26  inline
+
27  bool
+
28  operator>=(double x, const fvar<T>& y) {
+
29  return x >= y.val_;
+
30  }
+
31  }
+
32 }
+
33 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/fwd_2operators_2operator__less__than_8hpp.html b/doc/api/html/fwd_2operators_2operator__less__than_8hpp.html new file mode 100644 index 00000000000..c5da8d4def0 --- /dev/null +++ b/doc/api/html/fwd_2operators_2operator__less__than_8hpp.html @@ -0,0 +1,136 @@ + + + + + +Stan: src/stan/agrad/fwd/operators/operator_less_than.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
operator_less_than.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+ + + + + + + + + + +

+Functions

template<typename T >
bool stan::agrad::operator< (const fvar< T > &x, double y)
 
template<typename T >
bool stan::agrad::operator< (double x, const fvar< T > &y)
 
template<typename T >
bool stan::agrad::operator< (const fvar< T > &x, const fvar< T > &y)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/fwd_2operators_2operator__less__than_8hpp_source.html b/doc/api/html/fwd_2operators_2operator__less__than_8hpp_source.html new file mode 100644 index 00000000000..f732d053f2e --- /dev/null +++ b/doc/api/html/fwd_2operators_2operator__less__than_8hpp_source.html @@ -0,0 +1,137 @@ + + + + + +Stan: src/stan/agrad/fwd/operators/operator_less_than.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
operator_less_than.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__FWD__OPERATORS__OPERATOR_LESS_THAN_HPP__
+
2 #define __STAN__AGRAD__FWD__OPERATORS__OPERATOR_LESS_THAN_HPP__
+
3 
+ +
5 #include <stan/meta/traits.hpp>
+
6 
+
7 namespace stan {
+
8 
+
9  namespace agrad {
+
10 
+
11  template <typename T>
+
12  inline bool operator<(const fvar<T>& x,
+
13  double y) {
+
14  return x.val_ < y;
+
15  }
+
16 
+
17  template <typename T>
+
18  inline bool operator<(double x,
+
19  const fvar<T>& y) {
+
20  return x < y.val_;
+
21  }
+
22 
+
23  template <typename T>
+
24  inline bool operator<(const fvar<T>& x,
+
25  const fvar<T>& y) {
+
26  return x.val_ < y.val_;
+
27  }
+
28  }
+
29 }
+
30 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/fwd_2operators_2operator__less__than__or__equal_8hpp.html b/doc/api/html/fwd_2operators_2operator__less__than__or__equal_8hpp.html new file mode 100644 index 00000000000..6a554699597 --- /dev/null +++ b/doc/api/html/fwd_2operators_2operator__less__than__or__equal_8hpp.html @@ -0,0 +1,136 @@ + + + + + +Stan: src/stan/agrad/fwd/operators/operator_less_than_or_equal.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
operator_less_than_or_equal.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+ + + + + + + + + + +

+Functions

template<typename T >
bool stan::agrad::operator<= (const fvar< T > &x, const fvar< T > &y)
 
template<typename T >
bool stan::agrad::operator<= (const fvar< T > &x, double y)
 
template<typename T >
bool stan::agrad::operator<= (double x, const fvar< T > &y)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/fwd_2operators_2operator__less__than__or__equal_8hpp_source.html b/doc/api/html/fwd_2operators_2operator__less__than__or__equal_8hpp_source.html new file mode 100644 index 00000000000..fe07370a922 --- /dev/null +++ b/doc/api/html/fwd_2operators_2operator__less__than__or__equal_8hpp_source.html @@ -0,0 +1,140 @@ + + + + + +Stan: src/stan/agrad/fwd/operators/operator_less_than_or_equal.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
operator_less_than_or_equal.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__FWD__OPERATORS__OPERATOR_LESS_THAN_OR_EQUAL_HPP__
+
2 #define __STAN__AGRAD__FWD__OPERATORS__OPERATOR_LESS_THAN_OR_EQUAL_HPP__
+
3 
+ +
5 #include <stan/meta/traits.hpp>
+
6 
+
7 namespace stan {
+
8 
+
9  namespace agrad {
+
10 
+
11  template <typename T>
+
12  inline
+
13  bool
+
14  operator<=(const fvar<T>& x, const fvar<T>& y) {
+
15  return x.val_ <= y.val_;
+
16  }
+
17 
+
18  template <typename T>
+
19  inline
+
20  bool
+
21  operator<=(const fvar<T>& x, double y) {
+
22  return x.val_ <= y;
+
23  }
+
24 
+
25  template <typename T>
+
26  inline
+
27  bool
+
28  operator<=(double x, const fvar<T>& y) {
+
29  return x <= y.val_;
+
30  }
+
31  }
+
32 }
+
33 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/fwd_2operators_2operator__multiplication_8hpp.html b/doc/api/html/fwd_2operators_2operator__multiplication_8hpp.html new file mode 100644 index 00000000000..f87e2e200a0 --- /dev/null +++ b/doc/api/html/fwd_2operators_2operator__multiplication_8hpp.html @@ -0,0 +1,136 @@ + + + + + +Stan: src/stan/agrad/fwd/operators/operator_multiplication.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
operator_multiplication.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+ + + + + + + + + + +

+Functions

template<typename T >
fvar< T > stan::agrad::operator* (const fvar< T > &x1, const fvar< T > &x2)
 
template<typename T >
fvar< T > stan::agrad::operator* (const double x1, const fvar< T > &x2)
 
template<typename T >
fvar< T > stan::agrad::operator* (const fvar< T > &x1, const double x2)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/fwd_2operators_2operator__multiplication_8hpp_source.html b/doc/api/html/fwd_2operators_2operator__multiplication_8hpp_source.html new file mode 100644 index 00000000000..07edfc9c86e --- /dev/null +++ b/doc/api/html/fwd_2operators_2operator__multiplication_8hpp_source.html @@ -0,0 +1,141 @@ + + + + + +Stan: src/stan/agrad/fwd/operators/operator_multiplication.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
operator_multiplication.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__FWD__OPERATORS__OPERATOR_MULTIPLICATION_HPP__
+
2 #define __STAN__AGRAD__FWD__OPERATORS__OPERATOR_MULTIPLICATION_HPP__
+
3 
+ +
5 #include <stan/meta/traits.hpp>
+
6 
+
7 namespace stan {
+
8 
+
9  namespace agrad {
+
10 
+
11  template <typename T>
+
12  inline
+
13  fvar<T>
+
14  operator*(const fvar<T>& x1, const fvar<T>& x2) {
+
15  return fvar<T>(x1.val_ * x2.val_,
+
16  x1.d_ * x2.val_ + x1.val_ * x2.d_);
+
17  }
+
18 
+
19  template <typename T>
+
20  inline
+
21  fvar<T>
+
22  operator*(const double x1, const fvar<T>& x2) {
+
23  return fvar<T>(x1 * x2.val_, x1 * x2.d_);
+
24  }
+
25 
+
26  template <typename T>
+
27  inline
+
28  fvar<T>
+
29  operator*(const fvar<T>& x1, const double x2) {
+
30  return fvar<T>(x1.val_ * x2, x1.d_ * x2);
+
31  }
+
32  }
+
33 }
+
34 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/fwd_2operators_2operator__not__equal_8hpp.html b/doc/api/html/fwd_2operators_2operator__not__equal_8hpp.html new file mode 100644 index 00000000000..7c4219b83e8 --- /dev/null +++ b/doc/api/html/fwd_2operators_2operator__not__equal_8hpp.html @@ -0,0 +1,136 @@ + + + + + +Stan: src/stan/agrad/fwd/operators/operator_not_equal.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
operator_not_equal.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+ + + + + + + + + + +

+Functions

template<typename T >
bool stan::agrad::operator!= (const fvar< T > &x, const fvar< T > &y)
 
template<typename T >
bool stan::agrad::operator!= (const fvar< T > &x, double y)
 
template<typename T >
bool stan::agrad::operator!= (double x, const fvar< T > &y)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/fwd_2operators_2operator__not__equal_8hpp_source.html b/doc/api/html/fwd_2operators_2operator__not__equal_8hpp_source.html new file mode 100644 index 00000000000..084e9d06205 --- /dev/null +++ b/doc/api/html/fwd_2operators_2operator__not__equal_8hpp_source.html @@ -0,0 +1,140 @@ + + + + + +Stan: src/stan/agrad/fwd/operators/operator_not_equal.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
operator_not_equal.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__FWD__OPERATORS__OPERATOR_NOT_EQUAL_HPP__
+
2 #define __STAN__AGRAD__FWD__OPERATORS__OPERATOR_NOT_EQUAL_HPP__
+
3 
+ +
5 #include <stan/meta/traits.hpp>
+
6 
+
7 namespace stan {
+
8 
+
9  namespace agrad {
+
10 
+
11  template <typename T>
+
12  inline
+
13  bool
+
14  operator!=(const fvar<T>& x, const fvar<T>& y) {
+
15  return x.val_ != y.val_;
+
16  }
+
17 
+
18  template <typename T>
+
19  inline
+
20  bool
+
21  operator!=(const fvar<T>& x, double y) {
+
22  return x.val_ != y;
+
23  }
+
24 
+
25  template <typename T>
+
26  inline
+
27  bool
+
28  operator!=(double x, const fvar<T>& y) {
+
29  return x != y.val_;
+
30  }
+
31  }
+
32 }
+
33 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/fwd_2operators_2operator__subtraction_8hpp.html b/doc/api/html/fwd_2operators_2operator__subtraction_8hpp.html new file mode 100644 index 00000000000..7a680929fb9 --- /dev/null +++ b/doc/api/html/fwd_2operators_2operator__subtraction_8hpp.html @@ -0,0 +1,136 @@ + + + + + +Stan: src/stan/agrad/fwd/operators/operator_subtraction.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
operator_subtraction.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+ + + + + + + + + + +

+Functions

template<typename T >
fvar< T > stan::agrad::operator- (const fvar< T > &x1, const fvar< T > &x2)
 
template<typename T >
fvar< T > stan::agrad::operator- (const double x1, const fvar< T > &x2)
 
template<typename T >
fvar< T > stan::agrad::operator- (const fvar< T > &x1, const double x2)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/fwd_2operators_2operator__subtraction_8hpp_source.html b/doc/api/html/fwd_2operators_2operator__subtraction_8hpp_source.html new file mode 100644 index 00000000000..40d89ad6cb0 --- /dev/null +++ b/doc/api/html/fwd_2operators_2operator__subtraction_8hpp_source.html @@ -0,0 +1,140 @@ + + + + + +Stan: src/stan/agrad/fwd/operators/operator_subtraction.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
operator_subtraction.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__FWD__OPERATORS__OPERATOR_SUBTRACTION_HPP__
+
2 #define __STAN__AGRAD__FWD__OPERATORS__OPERATOR_SUBTRACTION_HPP__
+
3 
+ +
5 #include <stan/meta/traits.hpp>
+
6 
+
7 namespace stan {
+
8 
+
9  namespace agrad {
+
10 
+
11  template <typename T>
+
12  inline
+
13  fvar<T>
+
14  operator-(const fvar<T>& x1, const fvar<T>& x2) {
+
15  return fvar<T>(x1.val_ - x2.val_, x1.d_ - x2.d_);
+
16  }
+
17 
+
18  template <typename T>
+
19  inline
+
20  fvar<T>
+
21  operator-(const double x1, const fvar<T>& x2) {
+
22  return fvar<T>(x1 - x2.val_, -x2.d_);
+
23  }
+
24 
+
25  template <typename T>
+
26  inline
+
27  fvar<T>
+
28  operator-(const fvar<T>& x1, const double x2) {
+
29  return fvar<T>(x1.val_ - x2, x1.d_);
+
30  }
+
31  }
+
32 }
+
33 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/fwd_2operators_8hpp.html b/doc/api/html/fwd_2operators_8hpp.html new file mode 100644 index 00000000000..aa1db0ec005 --- /dev/null +++ b/doc/api/html/fwd_2operators_8hpp.html @@ -0,0 +1,120 @@ + + + + + +Stan: src/stan/agrad/fwd/operators.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
operators.hpp File Reference
+
+ +
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/fwd_2operators_8hpp_source.html b/doc/api/html/fwd_2operators_8hpp_source.html new file mode 100644 index 00000000000..f0532119b8d --- /dev/null +++ b/doc/api/html/fwd_2operators_8hpp_source.html @@ -0,0 +1,123 @@ + + + + + +Stan: src/stan/agrad/fwd/operators.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
operators.hpp
+
+ +
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/fwd_8hpp.html b/doc/api/html/fwd_8hpp.html new file mode 100644 index 00000000000..43d1fc5b055 --- /dev/null +++ b/doc/api/html/fwd_8hpp.html @@ -0,0 +1,113 @@ + + + + + +Stan: src/stan/agrad/fwd.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
fwd.hpp File Reference
+
+ +
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/fwd_8hpp_source.html b/doc/api/html/fwd_8hpp_source.html new file mode 100644 index 00000000000..41a500ebdfe --- /dev/null +++ b/doc/api/html/fwd_8hpp_source.html @@ -0,0 +1,117 @@ + + + + + +Stan: src/stan/agrad/fwd.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
fwd.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__FWD_HPP__
+
2 #define __STAN__AGRAD__FWD_HPP__
+
3 
+
4 //fvar
+ + + + +
9 
+
10 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/gamma_8hpp.html b/doc/api/html/gamma_8hpp.html new file mode 100644 index 00000000000..5a1683e965c --- /dev/null +++ b/doc/api/html/gamma_8hpp.html @@ -0,0 +1,161 @@ + + + + + +Stan: src/stan/prob/distributions/univariate/continuous/gamma.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
gamma.hpp File Reference
+
+
+
#include <boost/random/gamma_distribution.hpp>
+#include <boost/random/variate_generator.hpp>
+#include <stan/agrad/partials_vari.hpp>
+#include <stan/math/error_handling.hpp>
+#include <stan/math/constants.hpp>
+#include <stan/math/functions/multiply_log.hpp>
+#include <stan/math/functions/value_of.hpp>
+#include <stan/meta/traits.hpp>
+#include <stan/prob/constants.hpp>
+#include <stan/prob/traits.hpp>
+#include <stan/prob/internal_math.hpp>
+
+

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::prob
 Templated probability distributions.
 
+ + + + + + + + + + + + + + + + + + + + + +

+Functions

template<bool propto, typename T_y , typename T_shape , typename T_inv_scale >
return_type< T_y, T_shape,
+T_inv_scale >::type 
stan::prob::gamma_log (const T_y &y, const T_shape &alpha, const T_inv_scale &beta)
 The log of a gamma density for y with the specified shape and inverse scale parameters.
 
template<typename T_y , typename T_shape , typename T_inv_scale >
return_type< T_y, T_shape,
+T_inv_scale >::type 
stan::prob::gamma_log (const T_y &y, const T_shape &alpha, const T_inv_scale &beta)
 
template<typename T_y , typename T_shape , typename T_inv_scale >
return_type< T_y, T_shape,
+T_inv_scale >::type 
stan::prob::gamma_cdf (const T_y &y, const T_shape &alpha, const T_inv_scale &beta)
 The cumulative density function for a gamma distribution for y with the specified shape and inverse scale parameters.
 
template<typename T_y , typename T_shape , typename T_inv_scale >
return_type< T_y, T_shape,
+T_inv_scale >::type 
stan::prob::gamma_cdf_log (const T_y &y, const T_shape &alpha, const T_inv_scale &beta)
 
template<typename T_y , typename T_shape , typename T_inv_scale >
return_type< T_y, T_shape,
+T_inv_scale >::type 
stan::prob::gamma_ccdf_log (const T_y &y, const T_shape &alpha, const T_inv_scale &beta)
 
template<class RNG >
double stan::prob::gamma_rng (const double alpha, const double beta, RNG &rng)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/gamma_8hpp_source.html b/doc/api/html/gamma_8hpp_source.html new file mode 100644 index 00000000000..c083164d146 --- /dev/null +++ b/doc/api/html/gamma_8hpp_source.html @@ -0,0 +1,637 @@ + + + + + +Stan: src/stan/prob/distributions/univariate/continuous/gamma.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
gamma.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__PROB__DISTRIBUTIONS__UNIVARIATE__CONTINUOUS__GAMMA_HPP__
+
2 #define __STAN__PROB__DISTRIBUTIONS__UNIVARIATE__CONTINUOUS__GAMMA_HPP__
+
3 
+
4 #include <boost/random/gamma_distribution.hpp>
+
5 #include <boost/random/variate_generator.hpp>
+
6 
+ + + + + +
12 #include <stan/meta/traits.hpp>
+
13 #include <stan/prob/constants.hpp>
+
14 #include <stan/prob/traits.hpp>
+ +
16 
+
17 namespace stan {
+
18 
+
19  namespace prob {
+
20 
+
43  template <bool propto,
+
44  typename T_y, typename T_shape, typename T_inv_scale>
+
45  typename return_type<T_y,T_shape,T_inv_scale>::type
+
46  gamma_log(const T_y& y, const T_shape& alpha, const T_inv_scale& beta) {
+
47  static const char* function = "stan::prob::gamma_log(%1%)";
+
48 
+ + + + + + + +
56 
+
57  // check if any vectors are zero length
+
58  if (!(stan::length(y)
+
59  && stan::length(alpha)
+
60  && stan::length(beta)))
+
61  return 0.0;
+
62 
+
63  // set up return value accumulator
+
64  double logp(0.0);
+
65 
+
66  // validate args (here done over var, which should be OK)
+
67  if (!check_not_nan(function, y, "Random variable", &logp))
+
68  return logp;
+
69  if (!check_finite(function, alpha, "Shape parameter",
+
70  &logp))
+
71  return logp;
+
72  if (!check_positive(function, alpha, "Shape parameter",
+
73  &logp))
+
74  return logp;
+
75  if (!check_finite(function, beta, "Inverse scale parameter",
+
76  &logp))
+
77  return logp;
+
78  if (!check_positive(function, beta, "Inverse scale parameter",
+
79  &logp))
+
80  return logp;
+
81  if (!(check_consistent_sizes(function,
+
82  y,alpha,beta,
+
83  "Random variable","Shape parameter","Inverse scale parameter",
+
84  &logp)))
+
85  return logp;
+
86 
+
87  // check if no variables are involved and prop-to
+ +
89  return 0.0;
+
90 
+
91  // set up template expressions wrapping scalars into vector views
+
92  VectorView<const T_y> y_vec(y);
+
93  VectorView<const T_shape> alpha_vec(alpha);
+
94  VectorView<const T_inv_scale> beta_vec(beta);
+
95 
+
96  for (size_t n = 0; n < length(y); n++) {
+
97  const double y_dbl = value_of(y_vec[n]);
+
98  if (y_dbl < 0)
+
99  return LOG_ZERO;
+
100  }
+
101 
+
102  size_t N = max_size(y, alpha, beta);
+
103  agrad::OperandsAndPartials<T_y, T_shape, T_inv_scale> operands_and_partials(y, alpha, beta);
+
104 
+
105  using boost::math::lgamma;
+ +
107  using boost::math::digamma;
+
108 
+ +
110  log_y(length(y));
+ +
112  for(size_t n = 0; n < length(y); n++) {
+
113  if (value_of(y_vec[n]) > 0)
+
114  log_y[n] = log(value_of(y_vec[n]));
+
115  }
+
116 
+ +
118  lgamma_alpha(length(alpha));
+ +
120  digamma_alpha(length(alpha));
+
121  for (size_t n = 0; n < length(alpha); n++) {
+ +
123  lgamma_alpha[n] = lgamma(value_of(alpha_vec[n]));
+ +
125  digamma_alpha[n] = digamma(value_of(alpha_vec[n]));
+
126  }
+
127 
+ +
129  log_beta(length(beta));
+ +
131  for (size_t n = 0; n < length(beta); n++)
+
132  log_beta[n] = log(value_of(beta_vec[n]));
+
133 
+
134  for (size_t n = 0; n < N; n++) {
+
135  // pull out values of arguments
+
136  const double y_dbl = value_of(y_vec[n]);
+
137  const double alpha_dbl = value_of(alpha_vec[n]);
+
138  const double beta_dbl = value_of(beta_vec[n]);
+
139 
+ +
141  logp -= lgamma_alpha[n];
+ +
143  logp += alpha_dbl * log_beta[n];
+ +
145  logp += (alpha_dbl-1.0) * log_y[n];
+ +
147  logp -= beta_dbl * y_dbl;
+
148 
+
149  // gradients
+ +
151  operands_and_partials.d_x1[n] += (alpha_dbl-1)/y_dbl - beta_dbl;
+ +
153  operands_and_partials.d_x2[n] += -digamma_alpha[n] + log_beta[n] + log_y[n];
+ +
155  operands_and_partials.d_x3[n] += alpha_dbl / beta_dbl - y_dbl;
+
156  }
+
157  return operands_and_partials.to_var(logp);
+
158  }
+
159 
+
160  template <typename T_y, typename T_shape, typename T_inv_scale>
+
161  inline
+ +
163  gamma_log(const T_y& y, const T_shape& alpha, const T_inv_scale& beta) {
+
164  return gamma_log<false>(y,alpha,beta);
+
165  }
+
166 
+
167 
+
182  template <typename T_y, typename T_shape, typename T_inv_scale>
+ +
184  gamma_cdf(const T_y& y, const T_shape& alpha, const T_inv_scale& beta) {
+
185  // Size checks
+
186  if (!(stan::length(y) && stan::length(alpha) && stan::length(beta)))
+
187  return 1.0;
+
188 
+
189  // Error checks
+
190  static const char* function = "stan::prob::gamma_cdf(%1%)";
+
191 
+ + + + + + + +
199  using stan::math::value_of;
+
200  using boost::math::tools::promote_args;
+
201 
+
202  double P(1.0);
+
203 
+
204  if (!check_finite(function, alpha, "Shape parameter", &P))
+
205  return P;
+
206  if (!check_positive(function, alpha, "Shape parameter", &P))
+
207  return P;
+
208  if (!check_finite(function, beta, "Scale parameter", &P))
+
209  return P;
+
210  if (!check_positive(function, beta, "Scale parameter", &P))
+
211  return P;
+
212  if (!check_not_nan(function, y, "Random variable", &P))
+
213  return P;
+
214  if (!check_nonnegative(function, y, "Random variable", &P))
+
215  return P;
+
216  if (!(check_consistent_sizes(function, y, alpha, beta,
+
217  "Random variable", "Shape parameter",
+
218  "Scale Parameter",
+
219  &P)))
+
220  return P;
+
221 
+
222  // Wrap arguments in vectors
+
223  VectorView<const T_y> y_vec(y);
+
224  VectorView<const T_shape> alpha_vec(alpha);
+
225  VectorView<const T_inv_scale> beta_vec(beta);
+
226  size_t N = max_size(y, alpha, beta);
+
227 
+ +
229  operands_and_partials(y, alpha, beta);
+
230 
+
231  // Explicit return for extreme values
+
232  // The gradients are technically ill-defined, but treated as zero
+
233 
+
234  for (size_t i = 0; i < stan::length(y); i++) {
+
235  if (value_of(y_vec[i]) == 0)
+
236  return operands_and_partials.to_var(0.0);
+
237  }
+
238 
+
239  // Compute CDF and its gradients
+
240  using boost::math::gamma_p_derivative;
+
241  using boost::math::gamma_p;
+
242  using boost::math::digamma;
+
243  using boost::math::tgamma;
+
244 
+
245  // Cache a few expensive function calls if nu is a parameter
+ + +
248  gamma_vec(stan::length(alpha));
+ + +
251  digamma_vec(stan::length(alpha));
+
252 
+ +
254  for (size_t i = 0; i < stan::length(alpha); i++) {
+
255  const double alpha_dbl = value_of(alpha_vec[i]);
+
256  gamma_vec[i] = tgamma(alpha_dbl);
+
257  digamma_vec[i] = digamma(alpha_dbl);
+
258  }
+
259  }
+
260 
+
261  // Compute vectorized CDF and gradient
+
262  for (size_t n = 0; n < N; n++) {
+
263  // Explicit results for extreme values
+
264  // The gradients are technically ill-defined, but treated as zero
+
265  if (value_of(y_vec[n]) == std::numeric_limits<double>::infinity())
+
266  continue;
+
267 
+
268  // Pull out values
+
269  const double y_dbl = value_of(y_vec[n]);
+
270  const double alpha_dbl = value_of(alpha_vec[n]);
+
271  const double beta_dbl = value_of(beta_vec[n]);
+
272 
+
273  // Compute
+
274  const double Pn = gamma_p(alpha_dbl, beta_dbl * y_dbl);
+
275 
+
276  P *= Pn;
+
277 
+ +
279  operands_and_partials.d_x1[n]
+
280  += beta_dbl * gamma_p_derivative(alpha_dbl, beta_dbl * y_dbl)
+
281  / Pn;
+ +
283  operands_and_partials.d_x2[n]
+
284  -= stan::math::gradRegIncGamma(alpha_dbl, beta_dbl
+
285  * y_dbl, gamma_vec[n],
+
286  digamma_vec[n]) / Pn;
+ +
288  operands_and_partials.d_x3[n]
+
289  += y_dbl * gamma_p_derivative(alpha_dbl, beta_dbl * y_dbl) / Pn;
+
290  }
+
291 
+ +
293  for (size_t n = 0; n < stan::length(y); ++n)
+
294  operands_and_partials.d_x1[n] *= P;
+ +
296  for (size_t n = 0; n < stan::length(alpha); ++n)
+
297  operands_and_partials.d_x2[n] *= P;
+ +
299  for (size_t n = 0; n < stan::length(beta); ++n)
+
300  operands_and_partials.d_x3[n] *= P;
+
301 
+
302  return operands_and_partials.to_var(P);
+
303  }
+
304 
+
305  template <typename T_y, typename T_shape, typename T_inv_scale>
+ +
307  gamma_cdf_log(const T_y& y, const T_shape& alpha, const T_inv_scale& beta) {
+
308  // Size checks
+
309  if (!(stan::length(y) && stan::length(alpha) && stan::length(beta)))
+
310  return 0.0;
+
311 
+
312  // Error checks
+
313  static const char* function = "stan::prob::gamma_cdf_log(%1%)";
+
314 
+ + + + + + + +
322  using stan::math::value_of;
+
323  using boost::math::tools::promote_args;
+
324 
+
325  double P(0.0);
+
326 
+
327  if (!check_finite(function, alpha, "Shape parameter", &P))
+
328  return P;
+
329  if (!check_positive(function, alpha, "Shape parameter", &P))
+
330  return P;
+
331  if (!check_finite(function, beta, "Scale parameter", &P))
+
332  return P;
+
333  if (!check_positive(function, beta, "Scale parameter", &P))
+
334  return P;
+
335  if (!check_not_nan(function, y, "Random variable", &P))
+
336  return P;
+
337  if (!check_nonnegative(function, y, "Random variable", &P))
+
338  return P;
+
339  if (!(check_consistent_sizes(function, y, alpha, beta,
+
340  "Random variable", "Shape parameter",
+
341  "Scale Parameter",
+
342  &P)))
+
343  return P;
+
344 
+
345  // Wrap arguments in vectors
+
346  VectorView<const T_y> y_vec(y);
+
347  VectorView<const T_shape> alpha_vec(alpha);
+
348  VectorView<const T_inv_scale> beta_vec(beta);
+
349  size_t N = max_size(y, alpha, beta);
+
350 
+ +
352  operands_and_partials(y, alpha, beta);
+
353 
+
354  // Explicit return for extreme values
+
355  // The gradients are technically ill-defined, but treated as zero
+
356 
+
357  for (size_t i = 0; i < stan::length(y); i++) {
+
358  if (value_of(y_vec[i]) == 0)
+
359  return operands_and_partials.to_var(stan::math::negative_infinity());
+
360  }
+
361 
+
362  // Compute cdf_log and its gradients
+
363  using boost::math::gamma_p_derivative;
+
364  using boost::math::gamma_p;
+
365  using boost::math::digamma;
+
366  using boost::math::tgamma;
+
367 
+
368  // Cache a few expensive function calls if nu is a parameter
+ + +
371  gamma_vec(stan::length(alpha));
+ + +
374  digamma_vec(stan::length(alpha));
+
375 
+ +
377  for (size_t i = 0; i < stan::length(alpha); i++) {
+
378  const double alpha_dbl = value_of(alpha_vec[i]);
+
379  gamma_vec[i] = tgamma(alpha_dbl);
+
380  digamma_vec[i] = digamma(alpha_dbl);
+
381  }
+
382  }
+
383 
+
384  // Compute vectorized cdf_log and gradient
+
385  for (size_t n = 0; n < N; n++) {
+
386  // Explicit results for extreme values
+
387  // The gradients are technically ill-defined, but treated as zero
+
388  if (value_of(y_vec[n]) == std::numeric_limits<double>::infinity())
+
389  return operands_and_partials.to_var(0.0);
+
390 
+
391  // Pull out values
+
392  const double y_dbl = value_of(y_vec[n]);
+
393  const double alpha_dbl = value_of(alpha_vec[n]);
+
394  const double beta_dbl = value_of(beta_vec[n]);
+
395 
+
396  // Compute
+
397  const double Pn = gamma_p(alpha_dbl, beta_dbl * y_dbl);
+
398 
+
399  P += log(Pn);
+
400 
+ +
402  operands_and_partials.d_x1[n]
+
403  += beta_dbl * gamma_p_derivative(alpha_dbl, beta_dbl * y_dbl)
+
404  / Pn;
+ +
406  operands_and_partials.d_x2[n]
+
407  -= stan::math::gradRegIncGamma(alpha_dbl, beta_dbl
+
408  * y_dbl, gamma_vec[n],
+
409  digamma_vec[n]) / Pn;
+ +
411  operands_and_partials.d_x3[n]
+
412  += y_dbl * gamma_p_derivative(alpha_dbl, beta_dbl * y_dbl) / Pn;
+
413  }
+
414 
+
415  return operands_and_partials.to_var(P);
+
416  }
+
417 
+
418  template <typename T_y, typename T_shape, typename T_inv_scale>
+ +
420  gamma_ccdf_log(const T_y& y, const T_shape& alpha, const T_inv_scale& beta) {
+
421  // Size checks
+
422  if (!(stan::length(y) && stan::length(alpha) && stan::length(beta)))
+
423  return 0.0;
+
424 
+
425  // Error checks
+
426  static const char* function = "stan::prob::gamma_ccdf_log(%1%)";
+
427 
+ + + + + + + +
435  using stan::math::value_of;
+
436  using boost::math::tools::promote_args;
+
437 
+
438  double P(0.0);
+
439 
+
440  if (!check_finite(function, alpha, "Shape parameter", &P))
+
441  return P;
+
442  if (!check_positive(function, alpha, "Shape parameter", &P))
+
443  return P;
+
444  if (!check_finite(function, beta, "Scale parameter", &P))
+
445  return P;
+
446  if (!check_positive(function, beta, "Scale parameter", &P))
+
447  return P;
+
448  if (!check_not_nan(function, y, "Random variable", &P))
+
449  return P;
+
450  if (!check_nonnegative(function, y, "Random variable", &P))
+
451  return P;
+
452  if (!(check_consistent_sizes(function, y, alpha, beta,
+
453  "Random variable", "Shape parameter",
+
454  "Scale Parameter",
+
455  &P)))
+
456  return P;
+
457 
+
458  // Wrap arguments in vectors
+
459  VectorView<const T_y> y_vec(y);
+
460  VectorView<const T_shape> alpha_vec(alpha);
+
461  VectorView<const T_inv_scale> beta_vec(beta);
+
462  size_t N = max_size(y, alpha, beta);
+
463 
+ +
465  operands_and_partials(y, alpha, beta);
+
466 
+
467  // Explicit return for extreme values
+
468  // The gradients are technically ill-defined, but treated as zero
+
469 
+
470  for (size_t i = 0; i < stan::length(y); i++) {
+
471  if (value_of(y_vec[i]) == 0)
+
472  return operands_and_partials.to_var(0.0);
+
473  }
+
474 
+
475  // Compute ccdf_log and its gradients
+
476  using boost::math::gamma_p_derivative;
+
477  using boost::math::gamma_p;
+
478  using boost::math::digamma;
+
479  using boost::math::tgamma;
+
480 
+
481  // Cache a few expensive function calls if nu is a parameter
+ + +
484  gamma_vec(stan::length(alpha));
+ + +
487  digamma_vec(stan::length(alpha));
+
488 
+ +
490  for (size_t i = 0; i < stan::length(alpha); i++) {
+
491  const double alpha_dbl = value_of(alpha_vec[i]);
+
492  gamma_vec[i] = tgamma(alpha_dbl);
+
493  digamma_vec[i] = digamma(alpha_dbl);
+
494  }
+
495  }
+
496 
+
497  // Compute vectorized ccdf_log and gradient
+
498  for (size_t n = 0; n < N; n++) {
+
499  // Explicit results for extreme values
+
500  // The gradients are technically ill-defined, but treated as zero
+
501  if (value_of(y_vec[n]) == std::numeric_limits<double>::infinity())
+
502  return operands_and_partials.to_var(stan::math::negative_infinity());
+
503 
+
504  // Pull out values
+
505  const double y_dbl = value_of(y_vec[n]);
+
506  const double alpha_dbl = value_of(alpha_vec[n]);
+
507  const double beta_dbl = value_of(beta_vec[n]);
+
508 
+
509  // Compute
+
510  const double Pn = 1.0 - gamma_p(alpha_dbl, beta_dbl * y_dbl);
+
511 
+
512  P += log(Pn);
+
513 
+ +
515  operands_and_partials.d_x1[n]
+
516  -= beta_dbl * gamma_p_derivative(alpha_dbl, beta_dbl * y_dbl)
+
517  / Pn;
+ +
519  operands_and_partials.d_x2[n]
+
520  += stan::math::gradRegIncGamma(alpha_dbl, beta_dbl
+
521  * y_dbl, gamma_vec[n],
+
522  digamma_vec[n]) / Pn;
+ +
524  operands_and_partials.d_x3[n]
+
525  -= y_dbl * gamma_p_derivative(alpha_dbl, beta_dbl * y_dbl) / Pn;
+
526  }
+
527 
+
528  return operands_and_partials.to_var(P);
+
529  }
+
530 
+
531  template <class RNG>
+
532  inline double
+
533  gamma_rng(const double alpha,
+
534  const double beta,
+
535  RNG& rng) {
+
536  using boost::variate_generator;
+
537  using boost::gamma_distribution;
+
538 
+
539  static const char* function = "stan::prob::gamma_rng(%1%)";
+
540 
+ + +
543 
+
544  if (!check_finite(function, alpha, "Shape parameter"))
+
545  return 0;
+
546  if (!check_positive(function, alpha, "Shape parameter"))
+
547  return 0;
+
548  if (!check_finite(function, beta, "Inverse scale parameter"))
+
549  return 0;
+
550  if (!check_positive(function, beta, "Inverse scale parameter"))
+
551  return 0;
+
552 
+
553  /*
+
554  the boost gamma distribution is defined by
+
555  shape and scale, whereas the stan one is defined
+
556  by shape and rate
+
557  */
+
558  variate_generator<RNG&, gamma_distribution<> >
+
559  gamma_rng(rng, gamma_distribution<>(alpha, 1.0 / beta));
+
560  return gamma_rng();
+
561  }
+
562 
+
563  }
+
564 }
+
565 
+
566 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/gaussian__dlm__obs_8hpp.html b/doc/api/html/gaussian__dlm__obs_8hpp.html new file mode 100644 index 00000000000..9576e36e90b --- /dev/null +++ b/doc/api/html/gaussian__dlm__obs_8hpp.html @@ -0,0 +1,173 @@ + + + + + +Stan: src/stan/prob/distributions/multivariate/continuous/gaussian_dlm_obs.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
gaussian_dlm_obs.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::prob
 Templated probability distributions.
 
+ + + + + + + + + + + + + + + +

+Functions

template<bool propto, typename T_y , typename T_F , typename T_G , typename T_V , typename T_W , typename T_m0 , typename T_C0 >
return_type< T_y, typename
+return_type< T_F, T_G, T_V,
+T_W, T_m0, T_C0 >::type >
+::type 
stan::prob::gaussian_dlm_obs_log (const Eigen::Matrix< T_y, Eigen::Dynamic, Eigen::Dynamic > &y, const Eigen::Matrix< T_F, Eigen::Dynamic, Eigen::Dynamic > &F, const Eigen::Matrix< T_G, Eigen::Dynamic, Eigen::Dynamic > &G, const Eigen::Matrix< T_V, Eigen::Dynamic, Eigen::Dynamic > &V, const Eigen::Matrix< T_W, Eigen::Dynamic, Eigen::Dynamic > &W, const Eigen::Matrix< T_m0, Eigen::Dynamic, 1 > &m0, const Eigen::Matrix< T_C0, Eigen::Dynamic, Eigen::Dynamic > &C0)
 The log of a Gaussian dynamic linear model (GDLM).
 
template<typename T_y , typename T_F , typename T_G , typename T_V , typename T_W , typename T_m0 , typename T_C0 >
return_type< T_y, typename
+return_type< T_F, T_G, T_V,
+T_W, T_m0, T_C0 >::type >
+::type 
stan::prob::gaussian_dlm_obs_log (const Eigen::Matrix< T_y, Eigen::Dynamic, Eigen::Dynamic > &y, const Eigen::Matrix< T_F, Eigen::Dynamic, Eigen::Dynamic > &F, const Eigen::Matrix< T_G, Eigen::Dynamic, Eigen::Dynamic > &G, const Eigen::Matrix< T_V, Eigen::Dynamic, Eigen::Dynamic > &V, const Eigen::Matrix< T_W, Eigen::Dynamic, Eigen::Dynamic > &W, const Eigen::Matrix< T_m0, Eigen::Dynamic, 1 > &m0, const Eigen::Matrix< T_C0, Eigen::Dynamic, Eigen::Dynamic > &C0)
 
template<bool propto, typename T_y , typename T_F , typename T_G , typename T_V , typename T_W , typename T_m0 , typename T_C0 >
return_type< T_y, typename
+return_type< T_F, T_G, T_V,
+T_W, T_m0, T_C0 >::type >
+::type 
stan::prob::gaussian_dlm_obs_log (const Eigen::Matrix< T_y, Eigen::Dynamic, Eigen::Dynamic > &y, const Eigen::Matrix< T_F, Eigen::Dynamic, Eigen::Dynamic > &F, const Eigen::Matrix< T_G, Eigen::Dynamic, Eigen::Dynamic > &G, const Eigen::Matrix< T_V, Eigen::Dynamic, 1 > &V, const Eigen::Matrix< T_W, Eigen::Dynamic, Eigen::Dynamic > &W, const Eigen::Matrix< T_m0, Eigen::Dynamic, 1 > &m0, const Eigen::Matrix< T_C0, Eigen::Dynamic, Eigen::Dynamic > &C0)
 The log of a Gaussian dynamic linear model (GDLM) with uncorrelated observation disturbances.
 
template<typename T_y , typename T_F , typename T_G , typename T_V , typename T_W , typename T_m0 , typename T_C0 >
return_type< T_y, typename
+return_type< T_F, T_G, T_V,
+T_W, T_m0, T_C0 >::type >
+::type 
stan::prob::gaussian_dlm_obs_log (const Eigen::Matrix< T_y, Eigen::Dynamic, Eigen::Dynamic > &y, const Eigen::Matrix< T_F, Eigen::Dynamic, Eigen::Dynamic > &F, const Eigen::Matrix< T_G, Eigen::Dynamic, Eigen::Dynamic > &G, const Eigen::Matrix< T_V, Eigen::Dynamic, 1 > &V, const Eigen::Matrix< T_W, Eigen::Dynamic, Eigen::Dynamic > &W, const Eigen::Matrix< T_m0, Eigen::Dynamic, 1 > &m0, const Eigen::Matrix< T_C0, Eigen::Dynamic, Eigen::Dynamic > &C0)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/gaussian__dlm__obs_8hpp_source.html b/doc/api/html/gaussian__dlm__obs_8hpp_source.html new file mode 100644 index 00000000000..4fd5aed536c --- /dev/null +++ b/doc/api/html/gaussian__dlm__obs_8hpp_source.html @@ -0,0 +1,547 @@ + + + + + +Stan: src/stan/prob/distributions/multivariate/continuous/gaussian_dlm_obs.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
gaussian_dlm_obs.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__PROB__DISTRIBUTIONS__MULTIVARIATE__CONTINUOUS__GAUSSIAN_DLM_OBS_HPP__
+
2 #define __STAN__PROB__DISTRIBUTIONS__MULTIVARIATE__CONTINUOUS__GAUSSIAN_DLM_OBS_HPP__
+
3 
+
4 #include <boost/random/normal_distribution.hpp>
+
5 #include <boost/random/variate_generator.hpp>
+
6 
+ + + +
10 #include <stan/prob/constants.hpp>
+
11 #include <stan/prob/traits.hpp>
+
12 #include <stan/agrad/rev.hpp>
+
13 #include <stan/meta/traits.hpp>
+ + +
16 
+
17 #include <stan/math/matrix/add.hpp>
+ + +
20 #include <stan/math/matrix/log.hpp>
+ + + + + + + +
28 
+
29 /*
+
30  TODO: time-varying system matrices
+
31  TODO: use sequential processing even for non-diagonal obs
+
32  covariance.
+
33  TODO: add constant terms in observation.
+
34  */
+
35 
+
36 namespace stan {
+
37  namespace prob {
+
71  template <bool propto,
+
72  typename T_y,
+
73  typename T_F, typename T_G,
+
74  typename T_V, typename T_W,
+
75  typename T_m0, typename T_C0
+
76  >
+
77  typename return_type<
+
78  T_y,
+
79  typename return_type<T_F,T_G,T_V,T_W,T_m0,T_C0>::type >::type
+
80  gaussian_dlm_obs_log(const Eigen::Matrix<T_y,Eigen::Dynamic,Eigen::Dynamic>& y,
+
81  const Eigen::Matrix<T_F,Eigen::Dynamic,Eigen::Dynamic>& F,
+
82  const Eigen::Matrix<T_G,Eigen::Dynamic,Eigen::Dynamic>& G,
+
83  const Eigen::Matrix<T_V,Eigen::Dynamic,Eigen::Dynamic>& V,
+
84  const Eigen::Matrix<T_W,Eigen::Dynamic,Eigen::Dynamic>& W,
+
85  const Eigen::Matrix<T_m0,Eigen::Dynamic,1>& m0,
+
86  const Eigen::Matrix<T_C0,Eigen::Dynamic,Eigen::Dynamic>& C0) {
+
87  static const char* function = "stan::prob::gaussian_dlm_obs_log(%1%)";
+
88  typedef typename return_type<
+
89  T_y,
+ +
91  T_lp lp(0.0);
+
92 
+
93  using stan::math::add;
+ + + + + + + +
101  using stan::math::multiply;
+ +
103  using stan::math::subtract;
+ +
105  using stan::math::transpose;
+
106 
+
107  int r = y.rows(); // number of variables
+
108  int T = y.cols(); // number of observations
+
109  int n = G.rows(); // number of states
+
110 
+
111  // check y
+
112  if (!check_finite(function, y, "y", &lp))
+
113  return lp;
+
114  if (!check_not_nan(function, y, "y", &lp))
+
115  return lp;
+
116  // check F
+
117  if (!check_size_match(function,
+
118  F.cols(), "columns of F",
+
119  y.rows(), "rows of y",
+
120  &lp))
+
121  return lp;
+
122  if (!check_size_match(function,
+
123  F.rows(), "rows of F",
+
124  G.rows(), "rows of G",
+
125  &lp))
+
126  return lp;
+
127  if (!check_finite(function, F, "F", &lp))
+
128  return lp;
+
129  if (!check_not_nan(function, F, "F", &lp))
+
130  return lp;
+
131  // check G
+
132  if (!check_size_match(function,
+
133  G.rows(), "rows of G",
+
134  G.cols(), "columns of G",
+
135  &lp))
+
136  return lp;
+
137  if (!check_finite(function, G, "G", &lp))
+
138  return lp;
+
139  if (!check_not_nan(function, G, "G", &lp))
+
140  return lp;
+
141  // check V
+
142  if (!check_size_match(function,
+
143  V.rows(), "rows of V",
+
144  y.rows(), "rows of y",
+
145  &lp))
+
146  return lp;
+
147  // TODO: incorporate support for infinite V
+
148  if (!check_finite(function, V, "V", &lp))
+
149  return lp;
+
150  if (!check_not_nan(function, V, "V", &lp))
+
151  return lp;
+
152  if (!check_spsd_matrix(function, V, "V", &lp))
+
153  return lp;
+
154  // check W
+
155  if (!check_size_match(function,
+
156  W.rows(), "rows of W",
+
157  G.rows(), "rows of G",
+
158  &lp))
+
159  return lp;
+
160  // TODO: incorporate support for infinite W
+
161  if (!check_finite(function, W, "W", &lp))
+
162  return lp;
+
163  if (!check_not_nan(function, W, "W", &lp))
+
164  return lp;
+
165  if (!check_spsd_matrix(function, W, "W", &lp))
+
166  return lp;
+
167  // check m0
+
168  if (!check_size_match(function,
+
169  m0.size(), "size of m0",
+
170  G.rows(), "rows of G",
+
171  &lp))
+
172  return lp;
+
173  if (!check_finite(function, m0, "m0", &lp))
+
174  return lp;
+
175  if (!check_not_nan(function, m0, "m0", &lp))
+
176  return lp;
+
177  // check C0
+
178  if (!check_size_match(function,
+
179  C0.rows(), "rows of C0",
+
180  G.rows(), "rows of G",
+
181  &lp))
+
182  return lp;
+
183  if (!check_cov_matrix(function, C0, "C0", &lp))
+
184  return lp;
+
185  if (!check_finite(function, C0, "C0", &lp))
+
186  return lp;
+
187  if (!check_not_nan(function, C0, "C0", &lp))
+
188  return lp;
+
189 
+
190  if (y.cols() == 0 || y.rows() == 0)
+
191  return lp;
+
192 
+ +
194  lp -= 0.5 * LOG_TWO_PI * r * T;
+
195  }
+
196 
+ +
198  Eigen::Matrix<T_lp,Eigen::Dynamic, 1> m(n);
+
199  Eigen::Matrix<T_lp,Eigen::Dynamic, Eigen::Dynamic> C(n, n);
+
200 
+
201  // TODO: how to recast matrices
+
202  for (int i = 0; i < m0.size(); i ++ ) {
+
203  m(i) = m0(i);
+
204  }
+
205  for (int i = 0; i < C0.rows(); i ++ ) {
+
206  for (int j = 0; j < C0.cols(); j ++ ) {
+
207  C(i, j) = C0(i, j);
+
208  }
+
209  }
+
210 
+
211  Eigen::Matrix<typename return_type<T_y>::type,
+
212  Eigen::Dynamic, 1> yi(r);
+
213  Eigen::Matrix<T_lp,Eigen::Dynamic, 1> a(n);
+
214  Eigen::Matrix<T_lp,Eigen::Dynamic, Eigen::Dynamic> R(n, n);
+
215  Eigen::Matrix<T_lp,Eigen::Dynamic, 1> f(r);
+
216  Eigen::Matrix<T_lp,Eigen::Dynamic, Eigen::Dynamic> Q(r, r);
+
217  Eigen::Matrix<T_lp,Eigen::Dynamic, Eigen::Dynamic> Q_inv(r, r);
+
218  Eigen::Matrix<T_lp,Eigen::Dynamic, 1> e(r);
+
219  Eigen::Matrix<T_lp,Eigen::Dynamic, Eigen::Dynamic> A(n, r);
+
220 
+
221  for (int i = 0; i < y.cols(); i++) {
+
222  yi = y.col(i);
+
223  // // Predict state
+
224  // a_t = G_t m_{t-1}
+
225  a = multiply(G, m);
+
226  // R_t = G_t C_{t-1} G_t' + W_t
+
227  R = add(quad_form_sym(C, transpose(G)), W);
+
228  // // predict observation
+
229  // f_t = F_t' a_t
+
230  f = multiply(transpose(F), a);
+
231  // Q_t = F'_t R_t F_t + V_t
+
232  Q = add(quad_form_sym(R, F), V);
+
233  Q_inv = inverse_spd(Q);
+
234  // // filtered state
+
235  // e_t = y_t - f_t
+
236  e = subtract(yi, f);
+
237  // A_t = R_t F_t Q^{-1}_t
+
238  A = multiply(multiply(R, F), Q_inv);
+
239  // m_t = a_t + A_t e_t
+
240  m = add(a, multiply(A, e));
+
241  // C = R_t - A_t Q_t A_t'
+
242  C = subtract(R, quad_form_sym(Q, transpose(A)));
+
243  lp -= 0.5 * (log_determinant_spd(Q) + trace_quad_form(Q_inv, e));
+
244  }
+
245  }
+
246  return lp;
+
247  }
+
248 
+
249  template <typename T_y,
+
250  typename T_F, typename T_G,
+
251  typename T_V, typename T_W,
+
252  typename T_m0, typename T_C0
+
253  >
+
254  inline
+
255  typename return_type<
+
256  T_y,
+ +
258  gaussian_dlm_obs_log(const Eigen::Matrix<T_y,Eigen::Dynamic,Eigen::Dynamic>& y,
+
259  const Eigen::Matrix<T_F,Eigen::Dynamic,Eigen::Dynamic>& F,
+
260  const Eigen::Matrix<T_G,Eigen::Dynamic,Eigen::Dynamic>& G,
+
261  const Eigen::Matrix<T_V,Eigen::Dynamic,Eigen::Dynamic>& V,
+
262  const Eigen::Matrix<T_W,Eigen::Dynamic,Eigen::Dynamic>& W,
+
263  const Eigen::Matrix<T_m0,Eigen::Dynamic,1>& m0,
+
264  const Eigen::Matrix<T_C0,Eigen::Dynamic,Eigen::Dynamic>& C0) {
+
265  return gaussian_dlm_obs_log<false>(y, F, G, V, W, m0, C0);
+
266  }
+
267 
+
303  template <bool propto,
+
304  typename T_y,
+
305  typename T_F, typename T_G,
+
306  typename T_V, typename T_W,
+
307  typename T_m0, typename T_C0
+
308  >
+
309  typename return_type<
+
310  T_y,
+ +
312  gaussian_dlm_obs_log(const Eigen::Matrix<T_y,Eigen::Dynamic,Eigen::Dynamic>& y,
+
313  const Eigen::Matrix<T_F,Eigen::Dynamic,Eigen::Dynamic>& F,
+
314  const Eigen::Matrix<T_G,Eigen::Dynamic,Eigen::Dynamic>& G,
+
315  const Eigen::Matrix<T_V,Eigen::Dynamic,1>& V,
+
316  const Eigen::Matrix<T_W,Eigen::Dynamic,Eigen::Dynamic>& W,
+
317  const Eigen::Matrix<T_m0,Eigen::Dynamic,1>& m0,
+
318  const Eigen::Matrix<T_C0,Eigen::Dynamic,Eigen::Dynamic>& C0) {
+
319  static const char* function = "stan::prob::gaussian_dlm_obs_log(%1%)";
+
320  typedef typename return_type<
+
321  T_y,
+
322  typename return_type<T_F,T_G,T_V,T_W,T_m0,T_C0>::type >::type T_lp;
+
323  T_lp lp(0.0);
+
324 
+
325  using stan::math::add;
+ + + + + + + +
333  using stan::math::multiply;
+ +
335  using stan::math::subtract;
+ + +
338  using stan::math::transpose;
+
339 
+
340  int r = y.rows(); // number of variables
+
341  int T = y.cols(); // number of observations
+
342  int n = G.rows(); // number of states
+
343 
+
344  // check y
+
345  if (!check_finite(function, y, "y", &lp))
+
346  return lp;
+
347  if (!check_not_nan(function, y, "y", &lp))
+
348  return lp;
+
349  // check F
+
350  if (!check_size_match(function,
+
351  F.cols(), "columns of F",
+
352  y.rows(), "rows of y",
+
353  &lp))
+
354  return lp;
+
355  if (!check_size_match(function,
+
356  F.rows(), "rows of F",
+
357  G.rows(), "rows of G",
+
358  &lp))
+
359  return lp;
+
360  if (!check_finite(function, F, "F", &lp))
+
361  return lp;
+
362  if (!check_not_nan(function, F, "F", &lp))
+
363  return lp;
+
364  // check G
+
365  if (!check_size_match(function,
+
366  G.rows(), "rows of G",
+
367  G.cols(), "columns of G",
+
368  &lp))
+
369  return lp;
+
370  if (!check_finite(function, G, "G", &lp))
+
371  return lp;
+
372  if (!check_not_nan(function, G, "G", &lp))
+
373  return lp;
+
374  // check V
+
375  if (!check_nonnegative(function, V, "V", &lp))
+
376  return lp;
+
377  if (!check_size_match(function,
+
378  V.size(), "size of V",
+
379  y.rows(), "rows of y",
+
380  &lp))
+
381  return lp;
+
382  // TODO: support infinite V
+
383  if (!check_finite(function, V, "V", &lp))
+
384  return lp;
+
385  if (!check_not_nan(function, V, "V", &lp))
+
386  return lp;
+
387  // check W
+
388  if (!check_spsd_matrix(function, W, "W", &lp))
+
389  return lp;
+
390  if (!check_size_match(function,
+
391  W.rows(), "rows of W",
+
392  G.rows(), "rows of G",
+
393  &lp))
+
394  return lp;
+
395  // TODO: support infinite W
+
396  if (!check_finite(function, W, "W", &lp))
+
397  return lp;
+
398  if (!check_not_nan(function, W, "W", &lp))
+
399  return lp;
+
400  // check m0
+
401  if (!check_size_match(function,
+
402  m0.size(), "size of m0",
+
403  G.rows(), "rows of G",
+
404  &lp))
+
405  return lp;
+
406  if (!check_finite(function, m0, "m0", &lp))
+
407  return lp;
+
408  if (!check_not_nan(function, m0, "m0", &lp))
+
409  return lp;
+
410  // check C0
+
411  if (!check_cov_matrix(function, C0, "C0", &lp))
+
412  return lp;
+
413  if (!check_size_match(function,
+
414  C0.rows(), "rows of C0",
+
415  G.rows(), "rows of G",
+
416  &lp))
+
417  return lp;
+
418  if (!check_finite(function, C0, "C0", &lp))
+
419  return lp;
+
420  if (!check_not_nan(function, C0, "C0", &lp))
+
421  return lp;
+
422 
+
423  if (y.cols() == 0 || y.rows() == 0)
+
424  return lp;
+
425 
+ +
427  lp += 0.5 * NEG_LOG_TWO_PI * r * T;
+
428  }
+
429 
+ +
431  T_lp f;
+
432  T_lp Q;
+
433  T_lp Q_inv;
+
434  T_lp e;
+
435  Eigen::Matrix<T_lp, Eigen::Dynamic, 1> A(n);
+
436  Eigen::Matrix<T_lp, Eigen::Dynamic, 1> Fj(n);
+
437  Eigen::Matrix<T_lp, Eigen::Dynamic, 1> m(n);
+
438  Eigen::Matrix<T_lp, Eigen::Dynamic, Eigen::Dynamic> C(n, n);
+
439 
+
440  // TODO: how to recast matrices
+
441  for (int i = 0; i < m0.size(); i ++ ) {
+
442  m(i) = m0(i);
+
443  }
+
444  for (int i = 0; i < C0.rows(); i ++ ) {
+
445  for (int j = 0; j < C0.cols(); j ++ ) {
+
446  C(i, j) = C0(i, j);
+
447  }
+
448  }
+
449 
+
450  for (int i = 0; i < y.cols(); i++) {
+
451  // Predict state
+
452  // reuse m and C instead of using a and R
+
453  m = multiply(G, m);
+
454  C = add(quad_form_sym(C, transpose(G)), W);
+
455  for (int j = 0; j < y.rows(); ++j) {
+
456  // predict observation
+
457  T_lp yij(y(j, i));
+
458  // dim Fj = (n, 1)
+
459  for (int k = 0; k < F.rows(); ++k) {
+
460  Fj(k) = F(k, j);
+
461  }
+
462  // // f_{t,i} = F_{t,i}' m_{t,i-1}
+
463  f = dot_product(Fj, m);
+
464  Q = trace_quad_form(C, Fj) + V(j);
+
465  Q_inv = 1.0 / Q;
+
466  // // filtered observation
+
467  // // e_{t,i} = y_{t,i} - f_{t,i}
+
468  e = yij - f;
+
469  // // A_{t,i} = C_{t,i-1} F_{t,i} Q_{t,i}^{-1}
+
470  A = multiply(multiply(C, Fj), Q_inv);
+
471  // // m_{t,i} = m_{t,i-1} + A_{t,i} e_{t,i}
+
472  m += multiply(A, e);
+
473  // // c_{t,i} = C_{t,i-1} - Q_{t,i} A_{t,i} A_{t,i}'
+
474  // // // tcrossprod throws an error (ambiguous)
+
475  // C = subtract(C, multiply(Q, tcrossprod(A)));
+
476  C -= multiply(Q, multiply(A, transpose(A)));
+
477  C = 0.5 * add(C, transpose(C));
+
478  lp -= 0.5 * (log(Q) + pow(e, 2) * Q_inv);
+
479  }
+
480  }
+
481  }
+
482  return lp;
+
483  }
+
484 
+
485  template <typename T_y,
+
486  typename T_F, typename T_G,
+
487  typename T_V, typename T_W,
+
488  typename T_m0, typename T_C0
+
489  >
+
490  inline
+
491  typename return_type<
+
492  T_y,
+ +
494  >::type
+
495  gaussian_dlm_obs_log(const Eigen::Matrix<T_y,Eigen::Dynamic,Eigen::Dynamic>& y,
+
496  const Eigen::Matrix<T_F,Eigen::Dynamic,Eigen::Dynamic>& F,
+
497  const Eigen::Matrix<T_G,Eigen::Dynamic,Eigen::Dynamic>& G,
+
498  const Eigen::Matrix<T_V,Eigen::Dynamic,1>& V,
+
499  const Eigen::Matrix<T_W,Eigen::Dynamic,Eigen::Dynamic>& W,
+
500  const Eigen::Matrix<T_m0,Eigen::Dynamic,1>& m0,
+
501  const Eigen::Matrix<T_C0,Eigen::Dynamic,Eigen::Dynamic>& C0) {
+
502  return gaussian_dlm_obs_log<false>(y, F, G, V, W, m0, C0);
+
503  }
+
504  }
+
505 
+
506 }
+
507 
+
508 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/generator_8hpp.html b/doc/api/html/generator_8hpp.html new file mode 100644 index 00000000000..83e7f3e3a10 --- /dev/null +++ b/doc/api/html/generator_8hpp.html @@ -0,0 +1,327 @@ + + + + + +Stan: src/stan/gm/generator.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
generator.hpp File Reference
+
+
+
#include <boost/variant/apply_visitor.hpp>
+#include <boost/lexical_cast.hpp>
+#include <cstddef>
+#include <ostream>
+#include <sstream>
+#include <stdexcept>
+#include <string>
+#include <vector>
+#include <stan/version.hpp>
+#include <stan/gm/ast.hpp>
+
+

Go to the source code of this file.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Classes

struct  stan::gm::visgen
 generic visitor with output for extension More...
 
struct  stan::gm::expression_visgen
 
struct  stan::gm::printable_visgen
 
struct  stan::gm::var_size_validating_visgen
 
struct  stan::gm::var_resizing_visgen
 
struct  stan::gm::init_local_var_visgen
 
struct  stan::gm::validate_var_decl_visgen
 
struct  stan::gm::member_var_decl_visgen
 
struct  stan::gm::local_var_decl_visgen
 
struct  stan::gm::generate_local_var_init_nan_visgen
 
struct  stan::gm::generate_init_vars_visgen
 
struct  stan::gm::validate_transformed_params_visgen
 
struct  stan::gm::statement_visgen
 
struct  stan::gm::dump_member_var_visgen
 
struct  stan::gm::set_param_ranges_visgen
 
struct  stan::gm::generate_init_visgen
 
struct  stan::gm::write_dims_visgen
 
struct  stan::gm::write_param_names_visgen
 
struct  stan::gm::write_csv_header_visgen
 
struct  stan::gm::constrained_param_names_visgen
 
struct  stan::gm::unconstrained_param_names_visgen
 
struct  stan::gm::write_csv_visgen
 
struct  stan::gm::write_csv_vars_visgen
 
struct  stan::gm::write_array_visgen
 
struct  stan::gm::write_array_vars_visgen
 
+ + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::gm
 Directed graphical model compiler.
 
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Functions

const std::string stan::gm::EOL ("\n")
 
const std::string stan::gm::EOL2 ("\n\n")
 
const std::string stan::gm::INDENT (" ")
 
const std::string stan::gm::INDENT2 (" ")
 
const std::string stan::gm::INDENT3 (" ")
 
template<typename D >
bool stan::gm::has_lub (const D &x)
 
template<typename D >
bool stan::gm::has_ub (const D &x)
 
template<typename D >
bool stan::gm::has_lb (const D &x)
 
template<typename T >
std::string stan::gm::to_string (T i)
 
void stan::gm::generate_indent (size_t indent, std::ostream &o)
 
void stan::gm::generate_void_statement (const std::string &name, const size_t indent, std::ostream &o)
 
void stan::gm::generate_start_namespace (std::string name, std::ostream &o)
 
void stan::gm::generate_end_namespace (std::ostream &o)
 
void stan::gm::generate_comment (std::string const &msg, int indent, std::ostream &o)
 
template<bool isLHS>
void stan::gm::generate_indexed_expr (const std::string &expr, const std::vector< expression > indexes, base_expr_type base_type, size_t e_num_dims, std::ostream &o)
 
void stan::gm::generate_type (const std::string &base_type, const std::vector< expression > &, size_t end, std::ostream &o)
 
std::string stan::gm::base_type_to_string (const base_expr_type &bt)
 
void stan::gm::generate_expression (const expression &e, std::ostream &o)
 
static void stan::gm::print_string_literal (std::ostream &o, const std::string &s)
 
static void stan::gm::print_quoted_expression (std::ostream &o, const expression &e)
 
void stan::gm::generate_printable (const printable &p, std::ostream &o)
 
void stan::gm::generate_using (const std::string &type, std::ostream &o)
 
void stan::gm::generate_using_namespace (const std::string &ns, std::ostream &o)
 
void stan::gm::generate_usings (std::ostream &o)
 
void stan::gm::generate_typedef (const std::string &type, const std::string &abbrev, std::ostream &o)
 
void stan::gm::generate_typedefs (std::ostream &o)
 
void stan::gm::generate_include (const std::string &lib_name, std::ostream &o)
 
void stan::gm::generate_includes (std::ostream &o)
 
void stan::gm::generate_version_comment (std::ostream &o)
 
void stan::gm::generate_class_decl (const std::string &model_name, std::ostream &o)
 
void stan::gm::generate_end_class_decl (std::ostream &o)
 
void stan::gm::generate_initializer (std::ostream &o, const std::string &base_type, const std::vector< expression > &dims, const expression &type_arg1=expression(), const expression &type_arg2=expression())
 
void stan::gm::generate_validate_context_size (std::ostream &o, const std::string &stage, const std::string &var_name, const std::string &base_type, const std::vector< expression > &dims, const expression &type_arg1=expression(), const expression &type_arg2=expression())
 
void stan::gm::generate_validate_positive (const std::string &var_name, const expression &expr, std::ostream &o)
 
void stan::gm::generate_initialization (std::ostream &o, const std::string &var_name, const std::string &base_type, const std::vector< expression > &dims, const expression &type_arg1=expression(), const expression &type_arg2=expression())
 
void stan::gm::generate_var_resizing (const std::vector< var_decl > &vs, std::ostream &o)
 
const std::vector< expression > stan::gm::EMPTY_EXP_VECTOR (0)
 
void stan::gm::generate_local_var_inits (std::vector< var_decl > vs, bool is_var, bool declare_vars, std::ostream &o)
 
void stan::gm::generate_public_decl (std::ostream &o)
 
void stan::gm::generate_private_decl (std::ostream &o)
 
void stan::gm::generate_validate_var_decl (const var_decl &decl, int indent, std::ostream &o)
 
void stan::gm::generate_validate_var_decls (const std::vector< var_decl > decls, int indent, std::ostream &o)
 
void stan::gm::generate_member_var_decls (const std::vector< var_decl > &vs, int indent, std::ostream &o)
 
void stan::gm::generate_local_var_decls (const std::vector< var_decl > &vs, int indent, std::ostream &o, bool is_var)
 
void stan::gm::generate_local_var_init_nan (const std::vector< var_decl > &vs, int indent, std::ostream &o, bool is_var)
 
void stan::gm::generate_init_vars (const std::vector< var_decl > &vs, int indent, std::ostream &o)
 
void stan::gm::generate_validate_transformed_params (const std::vector< var_decl > &vs, int indent, std::ostream &o)
 
void stan::gm::generate_statement (statement const &s, int indent, std::ostream &o, bool include_sampling, bool is_var)
 
void stan::gm::generate_statements (const std::vector< statement > &ss, int indent, std::ostream &o, bool include_sampling, bool is_var)
 
void stan::gm::generate_log_prob (program const &p, std::ostream &o)
 
void stan::gm::suppress_warning (const std::string &indent, const std::string &var_name, std::ostream &o)
 
void stan::gm::generate_member_var_inits (const std::vector< var_decl > &vs, std::ostream &o)
 
void stan::gm::generate_destructor (const std::string &model_name, std::ostream &o)
 
void stan::gm::generate_set_param_ranges (const std::vector< var_decl > &var_decls, std::ostream &o)
 
void stan::gm::generate_constructor (const program &prog, const std::string &model_name, std::ostream &o)
 
void stan::gm::generate_init_method (const std::vector< var_decl > &vs, std::ostream &o)
 
void stan::gm::generate_dims_method (const program &prog, std::ostream &o)
 
void stan::gm::generate_param_names_method (const program &prog, std::ostream &o)
 
void stan::gm::generate_write_csv_header_method (const program &prog, std::ostream &o)
 
void stan::gm::generate_constrained_param_names_method (const program &prog, std::ostream &o)
 
void stan::gm::generate_unconstrained_param_names_method (const program &prog, std::ostream &o)
 
void stan::gm::generate_write_csv_method (const program &prog, const std::string &model_name, std::ostream &o)
 
void stan::gm::generate_write_array_method (const program &prog, const std::string &model_name, std::ostream &o)
 
void stan::gm::generate_main (const std::string &model_name, std::ostream &out)
 
void stan::gm::generate_model_name_method (const std::string &model_name, std::ostream &out)
 
void stan::gm::generate_cpp (const program &prog, const std::string &model_name, std::ostream &out, bool include_main=true)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/generator_8hpp_source.html b/doc/api/html/generator_8hpp_source.html new file mode 100644 index 00000000000..87dac8eee3f --- /dev/null +++ b/doc/api/html/generator_8hpp_source.html @@ -0,0 +1,4105 @@ + + + + + +Stan: src/stan/gm/generator.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
generator.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__GM__GENERATOR_HPP__
+
2 #define __STAN__GM__GENERATOR_HPP__
+
3 
+
4 #include <boost/variant/apply_visitor.hpp>
+
5 #include <boost/lexical_cast.hpp>
+
6 
+
7 #include <cstddef>
+
8 #include <ostream>
+
9 #include <sstream>
+
10 #include <stdexcept>
+
11 #include <string>
+
12 #include <vector>
+
13 
+
14 #include <stan/version.hpp>
+
15 #include <stan/gm/ast.hpp>
+
16 
+
17 namespace stan {
+
18 
+
19  namespace gm {
+
20 
+
21  const std::string EOL("\n");
+
22  const std::string EOL2("\n\n");
+
23  const std::string INDENT(" ");
+
24  const std::string INDENT2(" ");
+
25  const std::string INDENT3(" ");
+
26 
+
27  template <typename D>
+
28  bool has_lub(const D& x) {
+
29  return !is_nil(x.range_.low_.expr_) && !is_nil(x.range_.high_.expr_);
+
30  }
+
31  template <typename D>
+
32  bool has_ub(const D& x) {
+
33  return is_nil(x.range_.low_.expr_) && !is_nil(x.range_.high_.expr_);
+
34  }
+
35  template <typename D>
+
36  bool has_lb(const D& x) {
+
37  return !is_nil(x.range_.low_.expr_) && is_nil(x.range_.high_.expr_);
+
38  }
+
39 
+
40  template <typename T>
+
41  std::string to_string(T i) {
+
42  std::stringstream ss;
+
43  ss << i;
+
44  return ss.str();
+
45  }
+
46 
+
47  void generate_indent(size_t indent, std::ostream& o) {
+
48  for (size_t k = 0; k < indent; ++k)
+
49  o << INDENT;
+
50  }
+
51 
+
52  void generate_void_statement(const std::string& name,
+
53  const size_t indent,
+
54  std::ostream& o) {
+
55  generate_indent(indent, o);
+
56  o << "(void) " << name << "; // dummy to suppress unused var warning";
+
57  o << EOL;
+
58  }
+
59 
+
61  struct visgen {
+
62  typedef void result_type;
+
63  std::ostream& o_;
+
64  visgen(std::ostream& o) : o_(o) { }
+
65  };
+
66 
+
67  void generate_start_namespace(std::string name,
+
68  std::ostream& o) {
+
69  o << "namespace " << name << "_namespace {" << EOL2;
+
70  }
+
71 
+
72  void generate_end_namespace(std::ostream& o) {
+
73  o << "} // namespace" << EOL2;
+
74  }
+
75 
+
76  void generate_comment(std::string const& msg, int indent,
+
77  std::ostream& o) {
+
78  generate_indent(indent,o);
+
79  o << "// " << msg << EOL;
+
80  }
+
81 
+
82 
+
83  template <bool isLHS>
+
84  void generate_indexed_expr(const std::string& expr,
+
85  const std::vector<expression> indexes,
+
86  base_expr_type base_type, // may have more dims
+
87  size_t e_num_dims, // array dims
+
88  std::ostream& o) {
+
89  // FIXME: add more get_base1 functions and fold nested calls into API
+
90  // up to a given size, then default to this behavior
+
91  size_t ai_size = indexes.size();
+
92  if (ai_size == 0) {
+
93  // no indexes
+
94  o << expr;
+
95  return;
+
96  }
+
97  if (ai_size <= (e_num_dims + 1) || base_type != MATRIX_T) {
+
98  for (size_t n = 0; n < ai_size; ++n)
+
99  o << (isLHS ? "get_base1_lhs(" : "get_base1(");
+
100  o << expr;
+
101  for (size_t n = 0; n < ai_size; ++n) {
+
102  o << ',';
+
103  generate_expression(indexes[n],o);
+
104  o << ',' << '"' << expr << '"' << ',' << (n+1) << ')';
+
105  }
+
106  } else {
+
107  for (size_t n = 0; n < ai_size - 1; ++n)
+
108  o << (isLHS ? "get_base1_lhs(" : "get_base1(");
+
109  o << expr;
+
110  for (size_t n = 0; n < ai_size - 2; ++n) {
+
111  o << ',';
+
112  generate_expression(indexes[n],o);
+
113  o << ',' << '"' << expr << '"' << ',' << (n+1) << ')';
+
114  }
+
115  o << ',';
+
116  generate_expression(indexes[ai_size - 2U],o);
+
117  o << ',';
+
118  generate_expression(indexes[ai_size - 1U],o);
+
119  o << ',' << '"' << expr << '"' << ',' << (ai_size-1U) << ')';
+
120  }
+
121  }
+
122 
+
123  void generate_type(const std::string& base_type,
+
124  const std::vector<expression>& /*dims*/,
+
125  size_t end,
+
126  std::ostream& o) {
+
127  for (size_t i = 0; i < end; ++i) o << "std::vector<";
+
128  o << base_type;
+
129  for (size_t i = 0; i < end; ++i) {
+
130  if (i > 0) o << ' ';
+
131  o << '>';
+
132  }
+
133  }
+
134 
+
135  std::string base_type_to_string(const base_expr_type& bt) {
+
136  std::stringstream s;
+
137  s << bt;
+
138  return s.str();
+
139  }
+
140 
+
141 
+
142  struct expression_visgen : public visgen {
+
143  expression_visgen(std::ostream& o) : visgen(o) { }
+
144  void operator()(nil const& /*x*/) const {
+
145  o_ << "nil";
+
146  }
+
147  void operator()(const int_literal& n) const { o_ << n.val_; }
+
148  void operator()(const double_literal& x) const {
+
149  std::string num_str = boost::lexical_cast<std::string>(x.val_);
+
150  o_ << num_str;
+
151  if (num_str.find_first_of("eE.") == std::string::npos)
+
152  o_ << ".0"; // trailing 0 to ensure C++ makes it a double
+
153  }
+
154  void operator()(const array_literal& x) const {
+
155  o_ << "stan::math::new_array<";
+
156  generate_type("foobar", // not enough to use: base_type_to_string(x.type_.base_type_),
+
157  x.args_,
+
158  x.args_.size(),
+
159  o_);
+
160  o_ << ">()";
+
161  for (size_t i = 0; i < x.args_.size(); ++i) {
+
162  o_ << ".add(";
+
163  generate_expression(x.args_[i],o_);
+
164  o_ << ")";
+
165  }
+
166  o_ << ".array()";
+
167  }
+
168  void operator()(const variable& v) const { o_ << v.name_; }
+
169  void operator()(int n) const { o_ << static_cast<long>(n); }
+
170  void operator()(double x) const { o_ << x; }
+
171  void operator()(const std::string& x) const { o_ << x; } // identifiers
+
172  void operator()(const index_op& x) const {
+
173  std::stringstream expr_o;
+
174  generate_expression(x.expr_,expr_o);
+
175  std::string expr_string = expr_o.str();
+
176  std::vector<expression> indexes;
+
177  size_t e_num_dims = x.expr_.expression_type().num_dims_;
+
178  base_expr_type base_type = x.expr_.expression_type().base_type_;
+
179  for (size_t i = 0; i < x.dimss_.size(); ++i)
+
180  for (size_t j = 0; j < x.dimss_[i].size(); ++j)
+
181  indexes.push_back(x.dimss_[i][j]); // wasteful copy, could use refs
+
182  generate_indexed_expr<false>(expr_string,indexes,base_type,e_num_dims,o_);
+
183  }
+
184  void operator()(const fun& fx) const {
+
185  o_ << fx.name_ << '(';
+
186  for (size_t i = 0; i < fx.args_.size(); ++i) {
+
187  if (i > 0) o_ << ',';
+
188  boost::apply_visitor(*this, fx.args_[i].expr_);
+
189  }
+
190  if (has_rng_suffix(fx.name_))
+
191  o_ << ", base_rng__";
+
192  o_ << ')';
+
193  }
+
194  void operator()(const binary_op& expr) const {
+
195  o_ << '(';
+
196  boost::apply_visitor(*this, expr.left.expr_);
+
197  o_ << ' ' << expr.op << ' ';
+
198  boost::apply_visitor(*this, expr.right.expr_);
+
199  o_ << ')';
+
200  }
+
201  void operator()(const unary_op& expr) const {
+
202  o_ << expr.op << '(';
+
203  boost::apply_visitor(*this, expr.subject.expr_);
+
204  o_ << ')';
+
205  }
+
206  };
+
207 
+
208  void generate_expression(const expression& e, std::ostream& o) {
+
209  expression_visgen vis(o);
+
210  boost::apply_visitor(vis, e.expr_);
+
211  }
+
212 
+
213  static void print_string_literal(std::ostream& o,
+
214  const std::string& s) {
+
215  o << '"';
+
216  for (size_t i = 0; i < s.size(); ++i) {
+
217  if (s[i] == '"' || s[i] == '\\' || s[i] == '\'' )
+
218  o << '\\'; // escape
+
219  o << s[i];
+
220  }
+
221  o << '"';
+
222  }
+
223 
+
224  static void print_quoted_expression(std::ostream& o,
+
225  const expression& e) {
+
226  std::stringstream ss;
+
227  generate_expression(e,ss);
+
228  print_string_literal(o,ss.str());
+
229  }
+
230 
+
231  struct printable_visgen : public visgen {
+
232  printable_visgen(std::ostream& o) : visgen(o) { }
+
233  void operator()(const std::string& s) const {
+ +
235  }
+
236  void operator()(const expression& e) const {
+ +
238  // print_quoted_expression(o_,e);
+
239  }
+
240  };
+
241 
+
242  void generate_printable(const printable& p, std::ostream& o) {
+
243  printable_visgen vis(o);
+
244  boost::apply_visitor(vis, p.printable_);
+
245  }
+
246 
+
247  void generate_using(const std::string& type, std::ostream& o) {
+
248  o << "using " << type << ";" << EOL;
+
249  }
+
250 
+
251  void generate_using_namespace(const std::string& ns, std::ostream& o) {
+
252  o << "using namespace " << ns << ";" << EOL;
+
253  }
+
254 
+
255 
+
256  void generate_usings(std::ostream& o) {
+
257  generate_using("std::vector",o);
+
258  generate_using("std::string",o);
+
259  generate_using("std::stringstream",o);
+
260  generate_using("stan::model::prob_grad",o);
+
261  generate_using("stan::math::get_base1",o);
+
262  generate_using("stan::math::initialize",o);
+
263  generate_using("stan::math::stan_print",o);
+
264  generate_using("stan::math::lgamma",o);
+
265  generate_using("stan::io::dump",o);
+
266  generate_using("std::istream",o);
+
267  generate_using_namespace("stan::math",o);
+
268  generate_using_namespace("stan::prob",o);
+
269  o << EOL;
+
270  }
+
271 
+
272  void generate_typedef(const std::string& type,
+
273  const std::string& abbrev,
+
274  std::ostream& o) {
+
275  o << "typedef" << " " << type << " " << abbrev << ";" << EOL;
+
276  }
+
277 
+
278  void generate_typedefs(std::ostream& o) {
+
279  generate_typedef("Eigen::Matrix<double,Eigen::Dynamic,1>","vector_d",o);
+
280  generate_typedef("Eigen::Matrix<double,1,Eigen::Dynamic>","row_vector_d",o);
+
281  generate_typedef("Eigen::Matrix<double,Eigen::Dynamic,Eigen::Dynamic>","matrix_d",o);
+
282  o << EOL;
+
283  }
+
284 
+
285  void generate_include(const std::string& lib_name, std::ostream& o) {
+
286  o << "#include" << " " << "<" << lib_name << ">" << EOL;
+
287  }
+
288 
+
289  void generate_includes(std::ostream& o) {
+
290  generate_include("stan/model/model_header.hpp",o);
+
291  // generate_include("boost/random/linear_congruential.hpp",o);
+
292  o << EOL;
+
293  }
+
294 
+
295  void generate_version_comment(std::ostream& o) {
+
296  o << "// Code generated by Stan version "
+ +
298  }
+
299 
+
300  void generate_class_decl(const std::string& model_name,
+
301  std::ostream& o) {
+
302  o << "class " << model_name << " : public prob_grad {" << EOL;
+
303  }
+
304 
+
305  void generate_end_class_decl(std::ostream& o) {
+
306  o << "}; // model" << EOL2;
+
307  }
+
308 
+
309  void generate_initializer(std::ostream& o,
+
310  const std::string& base_type,
+
311  const std::vector<expression>& dims,
+
312  const expression& type_arg1 = expression(),
+
313  const expression& type_arg2 = expression()) {
+
314  for (size_t i = 0; i < dims.size(); ++i) {
+
315  o << '(';
+
316  generate_expression(dims[i].expr_,o);
+
317  o << ',';
+
318  generate_type(base_type,dims,dims.size()- i - 1,o);
+
319  }
+
320 
+
321  o << '(';
+
322  if (!is_nil(type_arg1)) {
+
323  generate_expression(type_arg1.expr_,o);
+
324  if (!is_nil(type_arg2)) {
+
325  o << ',';
+
326  generate_expression(type_arg2.expr_,o);
+
327  }
+
328  } else if (!is_nil(type_arg2.expr_)) {
+
329  generate_expression(type_arg2.expr_,o);
+
330  } else {
+
331  o << '0';
+
332  }
+
333  o << ')';
+
334 
+
335  for (size_t i = 0; i < dims.size(); ++i)
+
336  o << ')';
+
337  o << ';' << EOL;
+
338  }
+
339 
+
340  // only generates the test
+
341  void generate_validate_context_size(std::ostream& o,
+
342  const std::string& stage,
+
343  const std::string& var_name,
+
344  const std::string& base_type,
+
345  const std::vector<expression>& dims,
+
346  const expression& type_arg1 = expression(),
+
347  const expression& type_arg2 = expression()) {
+
348  o << INDENT2
+
349  << "context__.validate_dims("
+
350  << '"' << stage << '"'
+
351  << ", " << '"' << var_name << '"'
+
352  << ", " << '"' << base_type << '"'
+
353  << ", context__.to_vec(";
+
354  for (size_t i = 0; i < dims.size(); ++i) {
+
355  if (i > 0) o << ",";
+
356  generate_expression(dims[i].expr_,o);
+
357  }
+
358  if (!is_nil(type_arg1)) {
+
359  if (dims.size() > 0) o << ",";
+
360  generate_expression(type_arg1.expr_,o);
+
361  if (!is_nil(type_arg2)) {
+
362  o << ",";
+
363  generate_expression(type_arg2.expr_,o);
+
364  }
+
365  }
+
366  o << "));"
+
367  << EOL;
+
368  }
+
369 
+ +
371  const std::string stage_;
+
372  var_size_validating_visgen(std::ostream& o, const std::string& stage)
+
373  : visgen(o),
+
374  stage_(stage) {
+
375  }
+
376  void operator()(nil const& /*x*/) const { } // dummy
+
377  void operator()(int_var_decl const& x) const {
+ +
379  }
+
380  void operator()(double_var_decl const& x) const {
+ +
382  }
+
383  void operator()(vector_var_decl const& x) const {
+ +
385  }
+
386  void operator()(row_vector_var_decl const& x) const {
+
387  generate_validate_context_size(o_,stage_,x.name_,"row_vector_d",x.dims_,x.N_);
+
388  }
+
389  void operator()(unit_vector_var_decl const& x) const {
+ +
391  }
+
392  void operator()(simplex_var_decl const& x) const {
+ +
394  }
+
395  void operator()(ordered_var_decl const& x) const {
+ +
397  }
+
398  void operator()(positive_ordered_var_decl const& x) const {
+ +
400  }
+
401  void operator()(matrix_var_decl const& x) const {
+ +
403  }
+
404  void operator()(cholesky_factor_var_decl const& x) const {
+ +
406  }
+
407  void operator()(cov_matrix_var_decl const& x) const {
+ +
409  }
+
410  void operator()(corr_matrix_var_decl const& x) const {
+ +
412  }
+
413  };
+
414 
+
415 
+
416  void generate_validate_positive(const std::string& var_name,
+
417  const expression& expr,
+
418  std::ostream& o) {
+
419  o << INDENT2;
+
420  o << "stan::math::validate_non_negative_index(\"" << var_name << "\", ";
+
421  print_quoted_expression(o,expr);
+
422  o << ", ";
+
423  generate_expression(expr,o);
+
424  o << ");" << EOL;
+
425  }
+
426 
+
427  void generate_initialization(std::ostream& o,
+
428  const std::string& var_name,
+
429  const std::string& base_type,
+
430  const std::vector<expression>& dims,
+
431  const expression& type_arg1 = expression(),
+
432  const expression& type_arg2 = expression()) {
+
433  // validate all dims are positive
+
434  for (size_t i = 0; i < dims.size(); ++i)
+
435  generate_validate_positive(var_name,dims[i],o);
+
436  if (!is_nil(type_arg1))
+
437  generate_validate_positive(var_name,type_arg1,o);
+
438  if (!is_nil(type_arg2))
+
439  generate_validate_positive(var_name,type_arg2,o);
+
440 
+
441  // define variable with initializer
+
442  o << INDENT2
+
443  << var_name << " = ";
+
444  generate_type(base_type,dims,dims.size(),o);
+
445  generate_initializer(o,base_type,dims,type_arg1,type_arg2);
+
446 
+
447  }
+
448 
+
449  struct var_resizing_visgen : public visgen {
+
450  var_resizing_visgen(std::ostream& o)
+
451  : visgen(o) {
+
452  }
+
453  void operator()(nil const& /*x*/) const { } // dummy
+
454  void operator()(int_var_decl const& x) const {
+ +
456  }
+
457  void operator()(double_var_decl const& x) const {
+
458  generate_initialization(o_,x.name_,"double",x.dims_);
+
459  }
+
460  void operator()(vector_var_decl const& x) const {
+
461  generate_initialization(o_,x.name_,"vector_d",x.dims_,x.M_);
+
462  }
+
463  void operator()(row_vector_var_decl const& x) const {
+
464  generate_initialization(o_,x.name_,"row_vector_d",x.dims_,x.N_);
+
465  }
+
466  void operator()(unit_vector_var_decl const& x) const {
+
467  generate_initialization(o_,x.name_,"vector_d",x.dims_,x.K_);
+
468  }
+
469  void operator()(simplex_var_decl const& x) const {
+
470  generate_initialization(o_,x.name_,"vector_d",x.dims_,x.K_);
+
471  }
+
472  void operator()(ordered_var_decl const& x) const {
+
473  generate_initialization(o_,x.name_,"vector_d",x.dims_,x.K_);
+
474  }
+
475  void operator()(positive_ordered_var_decl const& x) const {
+
476  generate_initialization(o_,x.name_,"vector_d",x.dims_,x.K_);
+
477  }
+
478  void operator()(matrix_var_decl const& x) const {
+
479  generate_initialization(o_,x.name_,"matrix_d",x.dims_,x.M_,x.N_);
+
480  }
+
481  void operator()(cholesky_factor_var_decl const& x) const {
+
482  generate_initialization(o_,x.name_,"matrix_d",x.dims_,x.M_,x.N_);
+
483  }
+
484  void operator()(cov_matrix_var_decl const& x) const {
+
485  generate_initialization(o_,x.name_,"matrix_d",x.dims_,x.K_,x.K_);
+
486  }
+
487  void operator()(corr_matrix_var_decl const& x) const {
+
488  generate_initialization(o_,x.name_,"matrix_d",x.dims_,x.K_,x.K_);
+
489  }
+
490  };
+
491 
+
492  void generate_var_resizing(const std::vector<var_decl>& vs,
+
493  std::ostream& o) {
+
494  var_resizing_visgen vis(o);
+
495  for (size_t i = 0; i < vs.size(); ++i)
+
496  boost::apply_visitor(vis, vs[i].decl_);
+
497  }
+
498 
+
499  const std::vector<expression> EMPTY_EXP_VECTOR(0);
+
500 
+
501  struct init_local_var_visgen : public visgen {
+
502  const bool declare_vars_;
+
503  const bool is_var_;
+
504  init_local_var_visgen(bool declare_vars,
+
505  bool is_var,
+
506  std::ostream& o)
+
507  : visgen(o),
+
508  declare_vars_(declare_vars),
+
509  is_var_(is_var) {
+
510  }
+
511  template <typename D>
+
512  void generate_initialize_array_bounded(const D& x, const std::string& base_type,
+
513  const std::string& read_fun_prefix,
+
514  const std::vector<expression>& dim_args) const {
+
515  std::vector<expression> read_args;
+
516  std::string read_fun(read_fun_prefix);
+
517  if (has_lub(x)) {
+
518  read_fun += "_lub";
+
519  read_args.push_back(x.range_.low_);
+
520  read_args.push_back(x.range_.high_);
+
521  } else if (has_lb(x)) {
+
522  read_fun += "_lb";
+
523  read_args.push_back(x.range_.low_);
+
524  } else if (has_ub(x)) {
+
525  read_fun += "_ub";
+
526  read_args.push_back(x.range_.high_);
+
527  }
+
528  for (size_t i = 0; i < dim_args.size(); ++i)
+
529  read_args.push_back(dim_args[i]);
+
530  generate_initialize_array(base_type,read_fun,read_args,x.name_,x.dims_);
+
531  }
+
532  void operator()(const nil& /*x*/) const { }
+
533  void operator()(const int_var_decl& x) const {
+ +
535  }
+
536  void operator()(const double_var_decl& x) const {
+
537  std::vector<expression> read_args;
+
538  generate_initialize_array_bounded(x,is_var_?"T__":"double","scalar",read_args);
+
539  }
+
540  void operator()(const vector_var_decl& x) const {
+
541  std::vector<expression> read_args;
+
542  read_args.push_back(x.M_);
+
543  generate_initialize_array_bounded(x,is_var_?"Eigen::Matrix<T__,Eigen::Dynamic,1> ":"vector_d","vector",read_args);
+
544  }
+
545  void operator()(const row_vector_var_decl& x) const {
+
546  std::vector<expression> read_args;
+
547  read_args.push_back(x.N_);
+
548  generate_initialize_array_bounded(x,is_var_?"Eigen::Matrix<T__,1,Eigen::Dynamic> ":"row_vector_d","row_vector",read_args);
+
549  }
+
550  void operator()(const matrix_var_decl& x) const {
+
551  std::vector<expression> read_args;
+
552  read_args.push_back(x.M_);
+
553  read_args.push_back(x.N_);
+
554  generate_initialize_array_bounded(x,is_var_?"Eigen::Matrix<T__,Eigen::Dynamic,Eigen::Dynamic> ":"matrix_d","matrix",read_args);
+
555  }
+
556  void operator()(const unit_vector_var_decl& x) const {
+
557  std::vector<expression> read_args;
+
558  read_args.push_back(x.K_);
+
559  generate_initialize_array(is_var_?"Eigen::Matrix<T__,Eigen::Dynamic,1> ":"vector_d","unit_vector",read_args,x.name_,x.dims_);
+
560  }
+
561  void operator()(const simplex_var_decl& x) const {
+
562  std::vector<expression> read_args;
+
563  read_args.push_back(x.K_);
+
564  generate_initialize_array(is_var_?"Eigen::Matrix<T__,Eigen::Dynamic,1> ":"vector_d","simplex",read_args,x.name_,x.dims_);
+
565  }
+
566  void operator()(const ordered_var_decl& x) const {
+
567  std::vector<expression> read_args;
+
568  read_args.push_back(x.K_);
+
569  generate_initialize_array(is_var_?"Eigen::Matrix<T__,Eigen::Dynamic,1> ":"vector_d","ordered",read_args,x.name_,x.dims_);
+
570  }
+
571  void operator()(const positive_ordered_var_decl& x) const {
+
572  std::vector<expression> read_args;
+
573  read_args.push_back(x.K_);
+
574  generate_initialize_array(is_var_?"Eigen::Matrix<T__,Eigen::Dynamic,1> ":"vector_d","positive_ordered",read_args,x.name_,x.dims_);
+
575  }
+
576  void operator()(const cholesky_factor_var_decl& x) const {
+
577  std::vector<expression> read_args;
+
578  read_args.push_back(x.M_);
+
579  read_args.push_back(x.N_);
+
580  generate_initialize_array(is_var_?"Eigen::Matrix<T__,Eigen::Dynamic,Eigen::Dynamic> ":"matrix_d",
+
581  "cholesky_factor",read_args,x.name_,x.dims_);
+
582  }
+
583  void operator()(const cov_matrix_var_decl& x) const {
+
584  std::vector<expression> read_args;
+
585  read_args.push_back(x.K_);
+
586  generate_initialize_array(is_var_?"Eigen::Matrix<T__,Eigen::Dynamic,Eigen::Dynamic> ":"matrix_d",
+
587  "cov_matrix",read_args,x.name_,x.dims_);
+
588  }
+
589  void operator()(const corr_matrix_var_decl& x) const {
+
590  std::vector<expression> read_args;
+
591  read_args.push_back(x.K_);
+
592  generate_initialize_array(is_var_?"Eigen::Matrix<T__,Eigen::Dynamic,Eigen::Dynamic> ":"matrix_d",
+
593  "corr_matrix",read_args,x.name_,x.dims_);
+
594  }
+
595  void generate_initialize_array(const std::string& var_type,
+
596  const std::string& read_type,
+
597  const std::vector<expression>& read_args,
+
598  const std::string& name,
+
599  const std::vector<expression>& dims) const {
+
600  if (declare_vars_) {
+
601  o_ << INDENT2;
+
602  for (size_t i = 0; i < dims.size(); ++i) o_ << "vector<";
+
603  o_ << var_type;
+
604  for (size_t i = 0; i < dims.size(); ++i) o_ << "> ";
+
605  if (dims.size() == 0) o_ << " ";
+
606  o_ << name << ";" << EOL;
+
607  }
+
608 
+
609  if (dims.size() == 0) {
+
610  generate_void_statement(name, 2, o_);
+
611  o_ << INDENT2 << "if (jacobian__)" << EOL;
+
612 
+
613  // w Jacobian
+
614  generate_indent(3,o_);
+
615  o_ << name << " = in__." << read_type << "_constrain(";
+
616  for (size_t j = 0; j < read_args.size(); ++j) {
+
617  if (j > 0) o_ << ",";
+
618  generate_expression(read_args[j],o_);
+
619  }
+
620  if (read_args.size() > 0)
+
621  o_ << ",";
+
622  o_ << "lp__";
+
623  o_ << ");" << EOL;
+
624 
+
625  o_ << INDENT2 << "else" << EOL;
+
626 
+
627  // w/o Jacobian
+
628  generate_indent(3,o_);
+
629  o_ << name << " = in__." << read_type << "_constrain(";
+
630  for (size_t j = 0; j < read_args.size(); ++j) {
+
631  if (j > 0) o_ << ",";
+
632  generate_expression(read_args[j],o_);
+
633  }
+
634  o_ << ");" << EOL;
+
635 
+
636  } else {
+
637  // dims > 0
+
638  std::string name_dims(name);
+
639  for (size_t i = 0; i < dims.size(); ++i) {
+
640  generate_indent(i + 2, o_);
+
641  o_ << "size_t dim_" << name << "_" << i << "__ = ";
+
642  generate_expression(dims[i],o_);
+
643  o_ << ";" << EOL;
+
644 
+
645  if (i < dims.size() - 1) {
+
646  generate_indent(i + 2, o_);
+
647  o_ << name_dims << ".resize(dim" << "_" << name << "_" << i << "__);"
+
648  << EOL;
+
649  name_dims.append("[k_").append(to_string(i)).append("__]");
+
650  }
+
651 
+
652  generate_indent(i + 2, o_);
+
653  if (i == dims.size() - 1) {
+
654  o_ << name_dims << ".reserve(dim_" << name << "_" << i << "__);" << EOL;
+
655  generate_indent(i + 2, o_);
+
656  }
+
657 
+
658  o_ << "for (size_t k_" << i << "__ = 0;"
+
659  << " k_" << i << "__ < dim_" << name << "_" << i << "__;"
+
660  << " ++k_" << i << "__) {" << EOL;
+
661 
+
662  // if on the last loop, push read element into array
+
663  if (i == dims.size() - 1) {
+
664  generate_indent(i + 3, o_);
+
665  o_ << "if (jacobian__)" << EOL;
+
666 
+
667  // w Jacobian
+
668 
+
669  generate_indent(i + 4, o_);
+
670  o_ << name_dims << ".push_back(in__." << read_type << "_constrain(";
+
671  for (size_t j = 0; j < read_args.size(); ++j) {
+
672  if (j > 0) o_ << ",";
+
673  generate_expression(read_args[j],o_);
+
674  }
+
675  if (read_args.size() > 0)
+
676  o_ << ",";
+
677  o_ << "lp__";
+
678  o_ << "));" << EOL;
+
679 
+
680  generate_indent(i + 3, o_);
+
681  o_ << "else" << EOL;
+
682 
+
683  // w/o Jacobian
+
684 
+
685  generate_indent(i + 4, o_);
+
686  o_ << name_dims << ".push_back(in__." << read_type << "_constrain(";
+
687  for (size_t j = 0; j < read_args.size(); ++j) {
+
688  if (j > 0) o_ << ",";
+
689  generate_expression(read_args[j],o_);
+
690  }
+
691  o_ << "));" << EOL;
+
692  }
+
693  }
+
694 
+
695  for (size_t i = dims.size(); i > 0; --i) {
+
696  generate_indent(i + 1, o_);
+
697  o_ << "}" << EOL;
+
698  }
+
699  }
+
700  o_ << EOL;
+
701  }
+
702  };
+
703 
+
704  void generate_local_var_inits(std::vector<var_decl> vs,
+
705  bool is_var,
+
706  bool declare_vars,
+
707  std::ostream& o) {
+
708  o << INDENT2
+
709  << "stan::io::reader<"
+
710  << (is_var ? "T__" : "double")
+
711  << "> in__(params_r__,params_i__);" << EOL2;
+
712  init_local_var_visgen vis(declare_vars,is_var,o);
+
713  for (size_t i = 0; i < vs.size(); ++i)
+
714  boost::apply_visitor(vis, vs[i].decl_);
+
715  }
+
716 
+
717 
+
718 
+
719 
+
720  void generate_public_decl(std::ostream& o) {
+
721  o << "public:" << EOL;
+
722  }
+
723 
+
724  void generate_private_decl(std::ostream& o) {
+
725  o << "private:" << EOL;
+
726  }
+
727 
+
728 
+ +
730  int indents_;
+ +
732  std::ostream& o)
+
733  : visgen(o),
+
734  indents_(indents) {
+
735  }
+
736  void generate_begin_for_dims(const std::vector<expression>& dims)
+
737  const {
+
738 
+
739  for (size_t i = 0; i < dims.size(); ++i) {
+ +
741  o_ << "for (int k" << i << "__ = 0;"
+
742  << " k" << i << "__ < ";
+
743  generate_expression(dims[i].expr_,o_);
+
744  o_ << ";";
+
745  o_ << " ++k" << i << "__) {" << EOL;
+
746  }
+
747  }
+
748  void generate_end_for_dims(size_t dims_size) const {
+
749  for (size_t i = 0; i < dims_size; ++i) {
+
750  generate_indent(indents_ + dims_size - i - 1, o_);
+
751  o_ << "}" << EOL;
+
752  }
+
753  }
+
754 
+
755  void generate_loop_var(const std::string& name,
+
756  size_t dims_size) const {
+
757  o_ << name;
+
758  for (size_t i = 0; i < dims_size; ++i)
+
759  o_ << "[k" << i << "__]";
+
760  }
+
761  void operator()(nil const& /*x*/) const { }
+
762  template <typename T>
+
763  void basic_validate(T const& x) const {
+
764  if (!(x.range_.has_low() || x.range_.has_high()))
+
765  return; // unconstrained
+
766  generate_begin_for_dims(x.dims_);
+
767  generate_indent(indents_ + x.dims_.size(),o_);
+
768  o_ << "try { " << EOL;
+
769  if (x.range_.has_low()) {
+
770  generate_indent(indents_ + 1 + x.dims_.size(),o_);
+
771  o_ << "check_greater_or_equal(function__,";
+
772  generate_loop_var(x.name_,x.dims_.size());
+
773  o_ << ",";
+
774  generate_expression(x.range_.low_.expr_,o_);
+
775  o_ << ",\"";
+
776  generate_loop_var(x.name_,x.dims_.size());
+
777  o_ << "\");" << EOL;
+
778  }
+
779  if (x.range_.has_high()) {
+
780  generate_indent(indents_ + 1 + x.dims_.size(),o_);
+
781  o_ << "check_less_or_equal(function__,";
+
782  generate_loop_var(x.name_,x.dims_.size());
+
783  o_ << ",";
+
784  generate_expression(x.range_.high_.expr_,o_);
+
785  o_ << ",\"";
+
786  generate_loop_var(x.name_,x.dims_.size());
+
787  o_ << "\");" << EOL;
+
788  }
+
789  generate_indent(indents_ + x.dims_.size(),o_);
+
790  o_ << "} catch (const std::exception& e) { "
+
791  << EOL;
+
792  generate_indent(indents_ + x.dims_.size() + 1, o_);
+
793  o_ << "throw std::domain_error(std::string(\"Invalid value of " << x.name_ << ": \") + std::string(e.what()));"
+
794  << EOL;
+
795  generate_indent(indents_ + x.dims_.size(), o_);
+
796  o_ << "};" << EOL;
+
797  generate_end_for_dims(x.dims_.size());
+
798  }
+
799  void operator()(int_var_decl const& x) const {
+
800  basic_validate(x);
+
801  }
+
802  void operator()(double_var_decl const& x) const {
+
803  basic_validate(x);
+
804  }
+
805  void operator()(vector_var_decl const& x) const {
+
806  basic_validate(x);
+
807  }
+
808  void operator()(row_vector_var_decl const& x) const {
+
809  basic_validate(x);
+
810  }
+
811  void operator()(matrix_var_decl const& x) const {
+
812  basic_validate(x);
+
813  }
+
814  template <typename T>
+
815  void nonbasic_validate(const T& x,
+
816  const std::string& type_name) const {
+
817  generate_begin_for_dims(x.dims_);
+
818  generate_indent(indents_ + x.dims_.size(),o_);
+
819  o_ << "try { stan::math::check_" << type_name << "(function__,";
+
820  generate_loop_var(x.name_,x.dims_.size());
+
821  o_ << ",\"";
+
822  generate_loop_var(x.name_,x.dims_.size());
+
823  o_ << "\"); } catch (const std::exception& e) { throw std::domain_error(std::string(\"Invalid value of " << x.name_ << ": \") + std::string(e.what())); };" << EOL;
+
824  generate_end_for_dims(x.dims_.size());
+
825  }
+
826  void operator()(unit_vector_var_decl const& x) const {
+
827  nonbasic_validate(x,"unit_vector");
+
828  }
+
829  void operator()(simplex_var_decl const& x) const {
+
830  nonbasic_validate(x,"simplex");
+
831  }
+
832  void operator()(ordered_var_decl const& x) const {
+
833  nonbasic_validate(x,"ordered");
+
834  }
+
835  void operator()(positive_ordered_var_decl const& x) const {
+
836  nonbasic_validate(x,"positive_ordered");
+
837  }
+
838  void operator()(cholesky_factor_var_decl const& x) const {
+
839  nonbasic_validate(x,"choelsky_factor");
+
840  }
+
841  void operator()(cov_matrix_var_decl const& x) const {
+
842  nonbasic_validate(x,"cov_matrix");
+
843  }
+
844  void operator()(corr_matrix_var_decl const& x) const {
+
845  nonbasic_validate(x,"corr_matrix");
+
846  }
+
847  };
+
848 
+
849 
+ +
851  int indent,
+
852  std::ostream& o) {
+
853  validate_var_decl_visgen vis(indent,o);
+
854  boost::apply_visitor(vis,decl.decl_);
+
855  }
+
856 
+
857  void generate_validate_var_decls(const std::vector<var_decl> decls,
+
858  int indent,
+
859  std::ostream& o) {
+
860  for (size_t i = 0; i < decls.size(); ++i)
+
861  generate_validate_var_decl(decls[i],indent,o);
+
862  }
+
863 
+
864  // see _var_decl_visgen cut & paste
+
865  struct member_var_decl_visgen : public visgen {
+
866  int indents_;
+ +
868  std::ostream& o)
+
869  : visgen(o),
+
870  indents_(indents) {
+
871  }
+
872  void operator()(nil const& /*x*/) const { }
+
873  void operator()(int_var_decl const& x) const {
+
874  declare_array("int",x.name_,x.dims_.size());
+
875  }
+
876  void operator()(double_var_decl const& x) const {
+
877  declare_array("double",x.name_,x.dims_.size());
+
878  }
+
879  void operator()(unit_vector_var_decl const& x) const {
+
880  declare_array(("vector_d"), x.name_, x.dims_.size());
+
881  }
+
882  void operator()(simplex_var_decl const& x) const {
+
883  declare_array(("vector_d"), x.name_, x.dims_.size());
+
884  }
+
885  void operator()(ordered_var_decl const& x) const {
+
886  declare_array(("vector_d"), x.name_, x.dims_.size());
+
887  }
+
888  void operator()(positive_ordered_var_decl const& x) const {
+
889  declare_array(("vector_d"), x.name_, x.dims_.size());
+
890  }
+
891  void operator()(cholesky_factor_var_decl const& x) const {
+
892  declare_array(("matrix_d"), x.name_, x.dims_.size());
+
893  }
+
894  void operator()(cov_matrix_var_decl const& x) const {
+
895  declare_array(("matrix_d"), x.name_, x.dims_.size());
+
896  }
+
897  void operator()(corr_matrix_var_decl const& x) const {
+
898  declare_array(("matrix_d"), x.name_, x.dims_.size());
+
899  }
+
900  void operator()(vector_var_decl const& x) const {
+
901  declare_array(("vector_d"), x.name_, x.dims_.size());
+
902  }
+
903  void operator()(row_vector_var_decl const& x) const {
+
904  declare_array(("row_vector_d"), x.name_, x.dims_.size());
+
905  }
+
906  void operator()(matrix_var_decl const& x) const {
+
907  declare_array(("matrix_d"), x.name_, x.dims_.size());
+
908  }
+
909  void declare_array(std::string const& type, std::string const& name,
+
910  size_t size) const {
+
911  for (int i = 0; i < indents_; ++i)
+
912  o_ << INDENT;
+
913  for (size_t i = 0; i < size; ++i) {
+
914  o_ << "vector<";
+
915  }
+
916  o_ << type;
+
917  if (size > 0) {
+
918  o_ << ">";
+
919  }
+
920  for (size_t i = 1; i < size; ++i) {
+
921  o_ << " >";
+
922  }
+
923  o_ << " " << name << ";" << EOL;
+
924  }
+
925  };
+
926 
+
927  void generate_member_var_decls(const std::vector<var_decl>& vs,
+
928  int indent,
+
929  std::ostream& o) {
+
930  member_var_decl_visgen vis(indent,o);
+
931  for (size_t i = 0; i < vs.size(); ++i)
+
932  boost::apply_visitor(vis,vs[i].decl_);
+
933  }
+
934 
+
935  // see member_var_decl_visgen cut & paste
+
936  struct local_var_decl_visgen : public visgen {
+
937  int indents_;
+
938  bool is_var_;
+ +
940  bool is_var,
+
941  std::ostream& o)
+
942  : visgen(o),
+
943  indents_(indents),
+
944  is_var_(is_var) {
+
945  }
+
946  void operator()(nil const& /*x*/) const { }
+
947  void operator()(int_var_decl const& x) const {
+
948  std::vector<expression> ctor_args;
+
949  declare_array("int",ctor_args,x.name_,x.dims_);
+
950  }
+
951  void operator()(double_var_decl const& x) const {
+
952  std::vector<expression> ctor_args;
+
953  declare_array(is_var_ ? "T__" : "double",
+
954  ctor_args,x.name_,x.dims_);
+
955  }
+
956  void operator()(vector_var_decl const& x) const {
+
957  std::vector<expression> ctor_args;
+
958  ctor_args.push_back(x.M_);
+
959  declare_array(is_var_ ? "Eigen::Matrix<T__,Eigen::Dynamic,1> " : "vector_d",
+
960  ctor_args, x.name_, x.dims_);
+
961  }
+
962  void operator()(row_vector_var_decl const& x) const {
+
963  std::vector<expression> ctor_args;
+
964  ctor_args.push_back(x.N_);
+
965  declare_array(is_var_ ? "Eigen::Matrix<T__,1,Eigen::Dynamic> " : "row_vector_d",
+
966  ctor_args, x.name_, x.dims_);
+
967  }
+
968  void operator()(matrix_var_decl const& x) const {
+
969  std::vector<expression> ctor_args;
+
970  ctor_args.push_back(x.M_);
+
971  ctor_args.push_back(x.N_);
+
972  declare_array(is_var_ ? "Eigen::Matrix<T__,Eigen::Dynamic,Eigen::Dynamic> " : "matrix_d",
+
973  ctor_args, x.name_, x.dims_);
+
974  }
+
975  void operator()(unit_vector_var_decl const& x) const {
+
976  std::vector<expression> ctor_args;
+
977  ctor_args.push_back(x.K_);
+
978  declare_array(is_var_ ? "Eigen::Matrix<T__,Eigen::Dynamic,1> " : "vector_d",
+
979  ctor_args, x.name_, x.dims_);
+
980  }
+
981  void operator()(simplex_var_decl const& x) const {
+
982  std::vector<expression> ctor_args;
+
983  ctor_args.push_back(x.K_);
+
984  declare_array(is_var_ ? "Eigen::Matrix<T__,Eigen::Dynamic,1> " : "vector_d",
+
985  ctor_args, x.name_, x.dims_);
+
986  }
+
987  void operator()(ordered_var_decl const& x) const {
+
988  std::vector<expression> ctor_args;
+
989  ctor_args.push_back(x.K_);
+
990  declare_array(is_var_ ? "Eigen::Matrix<T__,Eigen::Dynamic,1> " : "vector_d",
+
991  ctor_args, x.name_, x.dims_);
+
992  }
+
993  void operator()(positive_ordered_var_decl const& x) const {
+
994  std::vector<expression> ctor_args;
+
995  ctor_args.push_back(x.K_);
+
996  declare_array(is_var_ ? "Eigen::Matrix<T__,Eigen::Dynamic,1> " : "vector_d",
+
997  ctor_args, x.name_, x.dims_);
+
998  }
+
999  void operator()(cholesky_factor_var_decl const& x) const {
+
1000  std::vector<expression> ctor_args;
+
1001  ctor_args.push_back(x.M_);
+
1002  ctor_args.push_back(x.N_);
+
1003  declare_array(is_var_ ? "Eigen::Matrix<T__,Eigen::Dynamic,Eigen::Dynamic> " : "matrix_d",
+
1004  ctor_args, x.name_, x.dims_);
+
1005  }
+
1006  void operator()(cov_matrix_var_decl const& x) const {
+
1007  std::vector<expression> ctor_args;
+
1008  ctor_args.push_back(x.K_);
+
1009  ctor_args.push_back(x.K_);
+
1010  declare_array(is_var_ ? "Eigen::Matrix<T__,Eigen::Dynamic,Eigen::Dynamic> " : "matrix_d",
+
1011  ctor_args, x.name_, x.dims_);
+
1012  }
+
1013  void operator()(corr_matrix_var_decl const& x) const {
+
1014  std::vector<expression> ctor_args;
+
1015  ctor_args.push_back(x.K_);
+
1016  ctor_args.push_back(x.K_);
+
1017  declare_array(is_var_ ? "Eigen::Matrix<T__,Eigen::Dynamic,Eigen::Dynamic> " : "matrix_d",
+
1018  ctor_args, x.name_, x.dims_);
+
1019  }
+
1020  void generate_type(const std::string& type,
+
1021  size_t num_dims) const {
+
1022  for (size_t i = 0; i < num_dims; ++i)
+
1023  o_ << "vector<";
+
1024  o_ << type;
+
1025  for (size_t i = 0; i < num_dims; ++i) {
+
1026  if (i > 0) o_ << " ";
+
1027  o_ << ">";
+
1028  }
+
1029  }
+
1030 
+
1031  void generate_void_statement(const std::string& name) const {
+
1032  o_ << "(void) " << name << "; // dummy to suppress unused var warning";
+
1033  }
+
1034 
+
1035  // var_decl -> type[0] name init_args[0] ;
+
1036  // init_args[k] -> ctor_args if no dims left
+
1037  // init_args[k] -> ( dim[k] , ( type[k+1] init_args[k+1] ) )
+
1038  void generate_init_args(const std::string& type,
+
1039  const std::vector<expression>& ctor_args,
+
1040  const std::vector<expression>& dims,
+
1041  size_t dim) const {
+
1042  if (dim < dims.size()) { // more dims left
+
1043  o_ << '('; // open(1)
+
1044  generate_expression(dims[dim],o_);
+
1045  if ((dim + 1 < dims.size()) || ctor_args.size() > 0) {
+
1046  o_ << ", ("; // open(2)
+
1047  generate_type(type,dims.size() - dim - 1);
+
1048  generate_init_args(type,ctor_args,dims,dim + 1);
+
1049  o_ << ')'; // close(2)
+
1050  } else if (type == "var") {
+
1051  o_ << ", DUMMY_VAR__";
+
1052  } else if (type == "int") {
+
1053  o_ << ", 0";
+
1054  } else if (type == "double") {
+
1055  o_ << ", 0.0";
+
1056  } else {
+
1057  // shouldn't hit this
+
1058  }
+
1059  o_ << ')'; // close(1)
+
1060  } else {
+
1061  if (ctor_args.size() == 0) { // scalar int or real
+
1062  if (type == "int") {
+
1063  o_ << "(0)";
+
1064  } else if (type == "double") {
+
1065  o_ << "(0.0)";
+
1066  } else if (type == "var") {
+
1067  o_ << "(DUMMY_VAR__)";
+
1068  } else {
+
1069  // shouldn't hit this, either
+
1070  }
+
1071  }
+
1072  else if (ctor_args.size() == 1) {// vector
+
1073  o_ << '(';
+
1074  generate_expression(ctor_args[0],o_);
+
1075  o_ << ')';
+
1076  } else if (ctor_args.size() > 1) { // matrix
+
1077  o_ << '(';
+
1078  generate_expression(ctor_args[0],o_);
+
1079  o_ << ',';
+
1080  generate_expression(ctor_args[1],o_);
+
1081  o_ << ')';
+
1082  }
+
1083  }
+
1084  }
+
1085  void declare_array(const std::string& type,
+
1086  const std::vector<expression>& ctor_args,
+
1087  const std::string& name,
+
1088  const std::vector<expression>& dims) const {
+
1089 
+
1090  // require double parens to counter "most vexing parse" problem
+
1091 
+ +
1093  generate_type(type,dims.size());
+
1094  o_ << ' ' << name;
+
1095  generate_init_args(type,ctor_args,dims,0);
+
1096  o_ << ';' << EOL;
+
1097  if (dims.size() == 0) {
+ + +
1100  o_ << EOL;
+
1101  }
+
1102  if (type == "Eigen::Matrix<T__,Eigen::Dynamic,Eigen::Dynamic> "
+
1103  || type == "Eigen::Matrix<T__,1,Eigen::Dynamic> "
+
1104  || type == "Eigen::Matrix<T__,Eigen::Dynamic,1> ") {
+ +
1106  o_ << "stan::math::fill(" << name << ",DUMMY_VAR__);" << EOL;
+
1107  }
+
1108  }
+
1109  };
+
1110 
+
1111  void generate_local_var_decls(const std::vector<var_decl>& vs,
+
1112  int indent,
+
1113  std::ostream& o,
+
1114  bool is_var) {
+
1115  local_var_decl_visgen vis(indent,is_var,o);
+
1116  for (size_t i = 0; i < vs.size(); ++i)
+
1117  boost::apply_visitor(vis,vs[i].decl_);
+
1118  }
+
1119 
+
1120 
+
1121 
+ +
1123  const bool declare_vars_;
+
1124  const bool is_var_;
+
1125  const int indent_;
+ +
1127  bool is_var,
+
1128  int indent,
+
1129  std::ostream& o)
+
1130  : visgen(o),
+
1131  declare_vars_(declare_vars),
+
1132  is_var_(is_var),
+
1133  indent_(indent) {
+
1134  }
+
1135  void operator()(const nil& /*x*/) const {
+
1136  // no-op
+
1137  }
+
1138  void operator()(const int_var_decl& x) const {
+
1139  // no-op; ints need no init to prevent crashes and no NaN available
+
1140  }
+
1141  void operator()(const double_var_decl& x) const {
+
1142  generate_init(x);
+
1143  }
+
1144  void operator()(const vector_var_decl& x) const {
+
1145  generate_init(x);
+
1146  }
+
1147  void operator()(const row_vector_var_decl& x) const {
+
1148  generate_init(x);
+
1149  }
+
1150  void operator()(const matrix_var_decl& x) const {
+
1151  generate_init(x);
+
1152  }
+
1153  void operator()(const unit_vector_var_decl& x) const {
+
1154  generate_init(x);
+
1155  }
+
1156  void operator()(const simplex_var_decl& x) const {
+
1157  generate_init(x);
+
1158  }
+
1159  void operator()(const ordered_var_decl& x) const {
+
1160  generate_init(x);
+
1161  }
+
1162  void operator()(const positive_ordered_var_decl& x) const {
+
1163  generate_init(x);
+
1164  }
+
1165  void operator()(const cholesky_factor_var_decl& x) const {
+
1166  generate_init(x);
+
1167  }
+
1168  void operator()(const cov_matrix_var_decl& x) const {
+
1169  generate_init(x);
+
1170  }
+
1171  void operator()(const corr_matrix_var_decl& x) const {
+
1172  generate_init(x);
+
1173  }
+
1174  template <typename T>
+
1175  void generate_init(const T& x) const {
+ +
1177  o_ << "stan::math::initialize(" << x.name_ << ", "
+
1178  << (is_var_ ? "DUMMY_VAR__" : "std::numeric_limits<double>::quiet_NaN()")
+
1179  << ");"
+
1180  << EOL;
+
1181  }
+
1182  };
+
1183 
+
1184  void generate_local_var_init_nan(const std::vector<var_decl>& vs,
+
1185  int indent,
+
1186  std::ostream& o,
+
1187  bool is_var) {
+
1188  generate_local_var_init_nan_visgen vis(indent,is_var,indent,o);
+
1189  for (size_t i = 0; i < vs.size(); ++i)
+
1190  boost::apply_visitor(vis,vs[i].decl_);
+
1191  }
+
1192 
+
1193 
+
1194  // see member_var_decl_visgen cut & paste
+ +
1196  int indent_;
+ +
1198  std::ostream& o)
+
1199  : visgen(o),
+
1200  indent_(indent) {
+
1201  }
+
1202  void operator()(nil const& /*x*/) const { }
+
1203  void operator()(int_var_decl const& x) const {
+ +
1205  o_ << "stan::math::fill(" << x.name_ << ",DUMMY_VAR__);" << EOL;
+
1206  }
+
1207  void operator()(double_var_decl const& x) const {
+ +
1209  o_ << "stan::math::fill(" << x.name_ << ",DUMMY_VAR__);" << EOL;
+
1210  }
+
1211  void operator()(vector_var_decl const& x) const {
+ +
1213  o_ << "stan::math::fill(" << x.name_ << ",DUMMY_VAR__);" << EOL;
+
1214  }
+
1215  void operator()(row_vector_var_decl const& x) const {
+ +
1217  o_ << "stan::math::fill(" << x.name_ << ",DUMMY_VAR__);" << EOL;
+
1218  }
+
1219  void operator()(matrix_var_decl const& x) const {
+ +
1221  o_ << "stan::math::fill(" << x.name_ << ",DUMMY_VAR__);" << EOL;
+
1222  }
+
1223  void operator()(unit_vector_var_decl const& x) const {
+ +
1225  o_ << "stan::math::fill(" << x.name_ << ",DUMMY_VAR__);" << EOL;
+
1226  }
+
1227  void operator()(simplex_var_decl const& x) const {
+ +
1229  o_ << "stan::math::fill(" << x.name_ << ",DUMMY_VAR__);" << EOL;
+
1230  }
+
1231  void operator()(ordered_var_decl const& x) const {
+ +
1233  o_ << "stan::math::fill(" << x.name_ << ",DUMMY_VAR__);" << EOL;
+
1234  }
+
1235  void operator()(positive_ordered_var_decl const& x) const {
+ +
1237  o_ << "stan::math::fill(" << x.name_ << ",DUMMY_VAR__);" << EOL;
+
1238  }
+
1239  void operator()(cholesky_factor_var_decl const& x) const {
+ +
1241  o_ << "stan::math::fill(" << x.name_ << ",DUMMY_VAR__);" << EOL;
+
1242  }
+
1243  void operator()(cov_matrix_var_decl const& x) const {
+ +
1245  o_ << "stan::math::fill(" << x.name_ << ",DUMMY_VAR__);" << EOL;
+
1246  }
+
1247  void operator()(corr_matrix_var_decl const& x) const {
+ +
1249  o_ << "stan::math::fill(" << x.name_ << ",DUMMY_VAR__);" << EOL;
+
1250  }
+
1251  };
+
1252 
+
1253  void generate_init_vars(const std::vector<var_decl>& vs,
+
1254  int indent,
+
1255  std::ostream& o) {
+
1256  generate_init_vars_visgen vis(indent,o);
+
1257  o << EOL;
+
1258  generate_comment("initialized transformed params to avoid seg fault on val access",
+
1259  indent,o);
+
1260  generate_indent(indent,o);
+
1261  for (size_t i = 0; i < vs.size(); ++i)
+
1262  boost::apply_visitor(vis,vs[i].decl_);
+
1263  }
+
1264 
+
1265 
+ + + +
1269  std::ostream& o)
+
1270  : visgen(o),
+
1271  indents_(indents)
+
1272  { }
+
1273  void operator()(nil const& /*x*/) const { }
+
1274  void operator()(int_var_decl const& x) const {
+
1275  std::vector<expression> dims(x.dims_);
+
1276  validate_array(x.name_,dims,0);
+
1277  }
+
1278  void operator()(double_var_decl const& x) const {
+
1279  std::vector<expression> dims(x.dims_);
+
1280  validate_array(x.name_,dims,0);
+
1281  }
+
1282  void operator()(vector_var_decl const& x) const {
+
1283  std::vector<expression> dims(x.dims_);
+
1284  dims.push_back(x.M_);
+
1285  validate_array(x.name_,dims,1);
+
1286  }
+
1287  void operator()(unit_vector_var_decl const& x) const {
+
1288  std::vector<expression> dims(x.dims_);
+
1289  dims.push_back(x.K_);
+
1290  validate_array(x.name_,dims,1);
+
1291  }
+
1292  void operator()(simplex_var_decl const& x) const {
+
1293  std::vector<expression> dims(x.dims_);
+
1294  dims.push_back(x.K_);
+
1295  validate_array(x.name_,dims,1);
+
1296  }
+
1297  void operator()(ordered_var_decl const& x) const {
+
1298  std::vector<expression> dims(x.dims_);
+
1299  dims.push_back(x.K_);
+
1300  validate_array(x.name_,dims,1);
+
1301  }
+
1302  void operator()(positive_ordered_var_decl const& x) const {
+
1303  std::vector<expression> dims(x.dims_);
+
1304  dims.push_back(x.K_);
+
1305  validate_array(x.name_,dims,1);
+
1306  }
+
1307  void operator()(row_vector_var_decl const& x) const {
+
1308  std::vector<expression> dims(x.dims_);
+
1309  dims.push_back(x.N_);
+
1310  validate_array(x.name_,dims,1);
+
1311  }
+
1312  void operator()(matrix_var_decl const& x) const {
+
1313  std::vector<expression> dims(x.dims_);
+
1314  dims.push_back(x.M_);
+
1315  dims.push_back(x.N_);
+
1316  validate_array(x.name_,dims,2);
+
1317  }
+
1318  void operator()(cholesky_factor_var_decl const& x) const {
+
1319  std::vector<expression> dims(x.dims_);
+
1320  dims.push_back(x.M_);
+
1321  dims.push_back(x.N_);
+
1322  validate_array(x.name_,dims,2);
+
1323  }
+
1324  void operator()(cov_matrix_var_decl const& x) const {
+
1325  std::vector<expression> dims(x.dims_);
+
1326  dims.push_back(x.K_);
+
1327  dims.push_back(x.K_);
+
1328  validate_array(x.name_,dims,2);
+
1329  }
+
1330  void operator()(corr_matrix_var_decl const& x) const {
+
1331  std::vector<expression> dims(x.dims_);
+
1332  dims.push_back(x.K_);
+
1333  dims.push_back(x.K_);
+
1334  validate_array(x.name_,dims,2);
+
1335  }
+
1336  void validate_array(const std::string& name,
+
1337  const std::vector<expression>& dims,
+
1338  size_t matrix_dims) const {
+
1339 
+
1340  size_t non_matrix_dims = dims.size() - matrix_dims;
+
1341 
+
1342  for (size_t k = 0; k < dims.size(); ++k) {
+ +
1344  o_ << "for (int i" << k << "__ = 0; i" << k << "__ < ";
+
1345  generate_expression(dims[k],o_);
+
1346  o_ << "; ++i" << k << "__) {" << EOL;
+
1347  }
+
1348 
+
1349  generate_indent(indents_ + dims.size(), o_);
+
1350  o_ << "if (stan::math::is_uninitialized(" << name;
+
1351  for (size_t k = 0; k < non_matrix_dims; ++k)
+
1352  o_ << "[i" << k << "__]";
+
1353  if (matrix_dims > 0) {
+
1354  o_ << "(i" << non_matrix_dims << "__";
+
1355  if (matrix_dims > 1)
+
1356  o_ << ",i" << (non_matrix_dims + 1) << "__";
+
1357  o_ << ')';
+
1358  }
+
1359  o_ << ")) {" << EOL;
+
1360  generate_indent(indents_ + dims.size() + 1, o_);
+
1361  o_ << "std::stringstream msg__;" << EOL;
+
1362  generate_indent(indents_ + dims.size() + 1, o_);
+
1363  o_ << "msg__ << \"Undefined transformed parameter: "
+
1364  << name << "\"";
+
1365  for (size_t k = 0; k < dims.size(); ++k) {
+
1366  o_ << " << '['";
+
1367  o_ << " << i" << k << "__";
+
1368  o_ << " << ']'";
+
1369  }
+
1370  o_ << ';' << EOL;
+
1371  generate_indent(indents_ + dims.size() + 1, o_);
+
1372  o_ << "throw std::runtime_error(msg__.str());" << EOL;
+
1373 
+
1374  generate_indent(indents_ + dims.size(), o_);
+
1375  o_ << "}" << EOL;
+
1376  for (size_t k = 0; k < dims.size(); ++k) {
+
1377  generate_indent(indents_ + dims.size() - k - 1, o_);
+
1378  o_ << "}" << EOL;
+
1379  }
+
1380  }
+
1381  };
+
1382 
+
1383  void generate_validate_transformed_params(const std::vector<var_decl>& vs,
+
1384  int indent,
+
1385  std::ostream& o) {
+
1386  generate_comment("validate transformed parameters",indent,o);
+
1387  validate_transformed_params_visgen vis(indent,o);
+
1388  for (size_t i = 0; i < vs.size(); ++i)
+
1389  boost::apply_visitor(vis,vs[i].decl_);
+
1390  o << EOL;
+
1391  }
+
1392 
+
1393  void generate_statement(statement const& s, int indent, std::ostream& o,
+
1394  bool include_sampling, bool is_var);
+
1395 
+
1396  struct statement_visgen : public visgen {
+
1397  size_t indent_;
+ +
1399  bool is_var_;
+
1400  statement_visgen(size_t indent,
+
1401  bool include_sampling,
+
1402  bool is_var,
+
1403  std::ostream& o)
+
1404  : visgen(o),
+
1405  indent_(indent),
+
1406  include_sampling_(include_sampling),
+
1407  is_var_(is_var) {
+
1408  }
+
1409  void operator()(nil const& /*x*/) const {
+
1410  }
+
1411  void operator()(assignment const& x) const {
+ +
1413  o_ << "stan::math::assign(";
+
1414  generate_indexed_expr<true>(x.var_dims_.name_,
+
1415  x.var_dims_.dims_,
+ +
1417  x.var_type_.dims_.size(),
+
1418  o_);
+
1419  o_ << ", ";
+
1420  generate_expression(x.expr_,o_);
+
1421  o_ << ");" << EOL;
+
1422  }
+
1423  void operator()(expression const& x) const {
+
1424  throw std::invalid_argument("expression statements not yet supported");
+
1425  }
+
1426  void operator()(sample const& x) const {
+
1427  if (!include_sampling_) return;
+ +
1429  o_ << "lp_accum__.add(" << x.dist_.family_ << "_log<propto__>(";
+ +
1431  for (size_t i = 0; i < x.dist_.args_.size(); ++i) {
+
1432  o_ << ", ";
+ +
1434  }
+
1435  o_ << "));" << EOL;
+
1436  // rest of impl is for truncation
+
1437  // generate bounds test
+
1438  if (x.truncation_.has_low()) {
+ +
1440  o_ << "if (";
+ +
1442  o_ << " < ";
+ +
1444  // bound
+
1445  o_ << ") lp_accum__.add(-std::numeric_limits<double>::infinity());" << EOL;
+
1446  }
+
1447  if (x.truncation_.has_high()) {
+ +
1449  if (x.truncation_.has_low()) o_ << "else ";
+
1450  o_ << "if (";
+ +
1452  o_ << " > ";
+ +
1454  // bound
+
1455  o_ << ") lp_accum__.add(-std::numeric_limits<double>::infinity());" << EOL;
+
1456  }
+
1457  // generate log denominator for case where bounds test pass
+
1458  if (x.truncation_.has_low() || x.truncation_.has_high()) {
+ +
1460  o_ << "else ";
+
1461  }
+
1462  if (x.truncation_.has_low() && x.truncation_.has_high()) {
+
1463  // T[L,U]: -log_diff_exp(Dist_cdf_log(U|params),Dist_cdf_log(L|Params))
+
1464  o_ << "lp_accum__.add(-log_diff_exp(";
+
1465  o_ << x.dist_.family_ << "_cdf_log(";
+ +
1467  for (size_t i = 0; i < x.dist_.args_.size(); ++i) {
+
1468  o_ << ", ";
+ +
1470  }
+
1471  o_ << "), " << x.dist_.family_ << "_cdf_log(";
+ +
1473  for (size_t i = 0; i < x.dist_.args_.size(); ++i) {
+
1474  o_ << ", ";
+ +
1476  }
+
1477  o_ << ")));" << EOL;
+
1478  } else if (!x.truncation_.has_low() && x.truncation_.has_high()) {
+
1479  // T[,U]; -Dist_cdf_log(U)
+
1480  o_ << "lp_accum__.add(-";
+
1481  o_ << x.dist_.family_ << "_cdf_log(";
+ +
1483  for (size_t i = 0; i < x.dist_.args_.size(); ++i) {
+
1484  o_ << ", ";
+ +
1486  }
+
1487  o_ << "));" << EOL;
+
1488  } else if (x.truncation_.has_low() && !x.truncation_.has_high()) {
+
1489  // T[L,]: -Dist_ccdf_log(L)
+
1490  o_ << "lp_accum__.add(-";
+
1491  o_ << x.dist_.family_ << "_ccdf_log(";
+ +
1493  for (size_t i = 0; i < x.dist_.args_.size(); ++i) {
+
1494  o_ << ", ";
+ +
1496  }
+
1497  o_ << "));" << EOL;
+
1498  }
+
1499  }
+ + +
1502  o_ << "lp_accum__.add(";
+ +
1504  o_ << ");" << EOL;
+
1505  }
+
1506  void operator()(const statements& x) const {
+
1507  bool has_local_vars = x.local_decl_.size() > 0;
+
1508  size_t indent = has_local_vars ? (indent_ + 1) : indent_;
+
1509  if (has_local_vars) {
+ +
1511  o_ << "{" << EOL; // need brackets for scope
+ + +
1514  }
+
1515 
+
1516  for (size_t i = 0; i < x.statements_.size(); ++i)
+ +
1518 
+
1519  if (has_local_vars) {
+ +
1521  o_ << "}" << EOL;
+
1522  }
+
1523  }
+
1524  void operator()(const print_statement& ps) const {
+ +
1526  o_ << "if (pstream__) {" << EOL;
+
1527  for (size_t i = 0; i < ps.printables_.size(); ++i) {
+
1528  generate_indent(indent_ + 1,o_);
+
1529  o_ << "stan_print(pstream__,";
+ +
1531  o_ << ");" << EOL;
+
1532  }
+
1533  generate_indent(indent_ + 1,o_);
+
1534  o_ << "*pstream__ << std::endl;" << EOL;
+ +
1536  o_ << '}' << EOL;
+
1537  }
+
1538  void operator()(const for_statement& x) const {
+ +
1540  o_ << "for (int " << x.variable_ << " = ";
+ +
1542  o_ << "; " << x.variable_ << " <= ";
+ +
1544  o_ << "; ++" << x.variable_ << ") {" << EOL;
+ + +
1547  o_ << "}" << EOL;
+
1548  }
+
1549  void operator()(const while_statement& x) const {
+ +
1551  o_ << "while (as_bool(";
+ +
1553  o_ << ")) {" << EOL;
+ + +
1556  o_ << "}" << EOL;
+
1557  }
+
1558  void operator()(const conditional_statement& x) const {
+
1559  for (size_t i = 0; i < x.conditions_.size(); ++i) {
+
1560  if (i == 0)
+ +
1562  else
+
1563  o_ << " else ";
+
1564  o_ << "if (as_bool(";
+ +
1566  o_ << ")) {" << EOL;
+
1567  generate_statement(x.bodies_[i], indent_ + 1,
+ + +
1570  o_ << '}';
+
1571  }
+
1572  if (x.bodies_.size() > x.conditions_.size()) {
+
1573  o_ << " else {" << EOL;
+
1574  generate_statement(x.bodies_[x.bodies_.size()-1], indent_ + 1,
+ +
1576  generate_indent(indent_,o_);
+
1577  o_ << '}';
+
1578  }
+
1579  o_ << EOL;
+
1580  }
+
1581  void operator()(const no_op_statement& /*x*/) const {
+
1582  }
+
1583  };
+
1584 
+ +
1586  int indent,
+
1587  std::ostream& o,
+
1588  bool include_sampling,
+
1589  bool is_var) {
+
1590  statement_visgen vis(indent,include_sampling,is_var,o);
+
1591  boost::apply_visitor(vis,s.statement_);
+
1592  }
+
1593 
+
1594  void generate_statements(const std::vector<statement>& ss,
+
1595  int indent,
+
1596  std::ostream& o,
+
1597  bool include_sampling,
+
1598  bool is_var) {
+
1599  statement_visgen vis(indent,include_sampling,is_var,o);
+
1600  for (size_t i = 0; i < ss.size(); ++i)
+
1601  boost::apply_visitor(vis,ss[i].statement_);
+
1602  }
+
1603 
+
1604 
+ +
1606  std::ostream& o) {
+
1607 
+
1608 
+
1609  o << EOL;
+
1610  o << INDENT << "template <bool propto__, bool jacobian__, typename T__>" << EOL;
+
1611  o << INDENT << "T__ log_prob(vector<T__>& params_r__," << EOL;
+
1612  o << INDENT << " vector<int>& params_i__," << EOL;
+
1613  o << INDENT << " std::ostream* pstream__ = 0) const {" << EOL2;
+
1614 
+
1615  // use this dummy for inits
+
1616  o << INDENT2 << "T__ DUMMY_VAR__(std::numeric_limits<double>::quiet_NaN());" << EOL;
+
1617  o << INDENT2 << "(void) DUMMY_VAR__; // suppress unused var warning" << EOL2;
+
1618 
+
1619  o << INDENT2 << "T__ lp__(0.0);" << EOL;
+
1620  o << INDENT2 << "stan::math::accumulator<T__> lp_accum__;" << EOL2;
+
1621 
+
1622  bool is_var = true;
+
1623 
+
1624  generate_comment("model parameters",2,o);
+
1625  generate_local_var_inits(p.parameter_decl_,is_var,true,o);
+
1626  o << EOL;
+
1627 
+
1628  generate_comment("transformed parameters",2,o);
+
1629  generate_local_var_decls(p.derived_decl_.first,2,o,is_var);
+
1630  generate_init_vars(p.derived_decl_.first,2,o);
+
1631 
+
1632  o << EOL;
+
1633  bool include_sampling = true;
+
1634  generate_statements(p.derived_decl_.second,2,o,include_sampling,is_var);
+
1635  o << EOL;
+
1636 
+ +
1638  o << INDENT2
+
1639  << "const char* function__ = \"validate transformed params %1%\";"
+
1640  << EOL;
+
1641  o << INDENT2
+
1642  << "(void) function__; // dummy to suppress unused var warning"
+
1643  << EOL;
+
1644 
+ +
1646 
+
1647  generate_comment("model body",2,o);
+
1648  generate_statement(p.statement_,2,o,include_sampling,is_var);
+
1649  o << EOL;
+
1650  o << INDENT2 << "lp_accum__.add(lp__);" << EOL;
+
1651  o << INDENT2 << "return lp_accum__.sum();" << EOL2;
+
1652  o << INDENT << "} // log_prob()" << EOL2;
+
1653 
+
1654  o << INDENT << "template <bool propto, bool jacobian, typename T>" << EOL;
+
1655  o << INDENT << "T log_prob(Eigen::Matrix<T,Eigen::Dynamic,1>& params_r," << EOL;
+
1656  o << INDENT << " std::ostream* pstream = 0) const {" << EOL;
+
1657  o << INDENT << " std::vector<T> vec_params_r;" << EOL;
+
1658  o << INDENT << " vec_params_r.reserve(params_r.size());" << EOL;
+
1659  o << INDENT << " for (int i = 0; i < params_r.size(); ++i)" << EOL;
+
1660  o << INDENT << " vec_params_r.push_back(params_r(i));" << EOL;
+
1661  o << INDENT << " std::vector<int> vec_params_i;" << EOL;
+
1662  o << INDENT << " return log_prob<propto,jacobian,T>(vec_params_r, vec_params_i, pstream);" << EOL;
+
1663  o << INDENT << "}" << EOL2;
+
1664  }
+
1665 
+
1666  struct dump_member_var_visgen : public visgen {
+ + +
1669  dump_member_var_visgen(std::ostream& o)
+
1670  : visgen(o),
+ +
1672  var_size_validator_(var_size_validating_visgen(o,"data initialization")) {
+
1673  }
+
1674  void operator()(nil const& /*x*/) const { } // dummy
+
1675  void operator()(int_var_decl const& x) const {
+
1676  std::vector<expression> dims = x.dims_;
+ +
1678  var_resizer_(x);
+
1679  o_ << INDENT2 << "vals_i__ = context__.vals_i(\"" << x.name_ << "\");" << EOL;
+
1680  o_ << INDENT2 << "pos__ = 0;" << EOL;
+
1681  size_t indentation = 1;
+
1682  for (size_t dim_up = 0U; dim_up < dims.size(); ++dim_up) {
+
1683  size_t dim = dims.size() - dim_up - 1U;
+
1684  ++indentation;
+
1685  generate_indent(indentation,o_);
+
1686  o_ << "size_t " << x.name_ << "_limit_" << dim << "__ = ";
+
1687  generate_expression(dims[dim],o_);
+
1688  o_ << ";" << EOL;
+
1689  generate_indent(indentation,o_);
+
1690  o_ << "for (size_t i_" << dim << "__ = 0; i_"
+
1691  << dim << "__ < " << x.name_ << "_limit_" << dim
+
1692  << "__; ++i_" << dim << "__) {" << EOL;
+
1693  }
+
1694  generate_indent(indentation+1,o_);
+
1695  o_ << x.name_;
+
1696  for (size_t dim = 0; dim < dims.size(); ++dim)
+
1697  o_ << "[i_" << dim << "__]";
+
1698  o_ << " = vals_i__[pos__++];" << EOL;
+
1699  for (size_t dim = 0; dim < dims.size(); ++dim) {
+
1700  generate_indent(dims.size() + 1 - dim,o_);
+
1701  o_ << "}" << EOL;
+
1702  }
+
1703  }
+
1704  // minor changes to int_var_decl
+
1705  void operator()(double_var_decl const& x) const {
+
1706  std::vector<expression> dims = x.dims_;
+ +
1708  var_resizer_(x);
+
1709  o_ << INDENT2 << "vals_r__ = context__.vals_r(\"" << x.name_ << "\");" << EOL;
+
1710  o_ << INDENT2 << "pos__ = 0;" << EOL;
+
1711  size_t indentation = 1;
+
1712  for (size_t dim_up = 0U; dim_up < dims.size(); ++dim_up) {
+
1713  size_t dim = dims.size() - dim_up - 1U;
+
1714  ++indentation;
+
1715  generate_indent(indentation,o_);
+
1716  o_ << "size_t " << x.name_ << "_limit_" << dim << "__ = ";
+
1717  generate_expression(dims[dim],o_);
+
1718  o_ << ";" << EOL;
+
1719  generate_indent(indentation,o_);
+
1720  o_ << "for (size_t i_" << dim << "__ = 0; i_" << dim << "__ < " << x.name_ << "_limit_" << dim << "__; ++i_" << dim << "__) {" << EOL;
+
1721  }
+
1722  generate_indent(indentation+1,o_);
+
1723  o_ << x.name_;
+
1724  for (size_t dim = 0; dim < dims.size(); ++dim)
+
1725  o_ << "[i_" << dim << "__]";
+
1726  o_ << " = vals_r__[pos__++];" << EOL;
+
1727  for (size_t dim = 0; dim < dims.size(); ++dim) {
+
1728  generate_indent(dims.size() + 1 - dim,o_);
+
1729  o_ << "}" << EOL;
+
1730  }
+
1731  }
+
1732  // extra outer loop around double_var_decl
+
1733  void operator()(vector_var_decl const& x) const {
+
1734  std::vector<expression> dims = x.dims_;
+
1735  var_resizer_(x);
+ +
1737  o_ << INDENT2 << "vals_r__ = context__.vals_r(\"" << x.name_ << "\");" << EOL;
+
1738  o_ << INDENT2 << "pos__ = 0;" << EOL;
+
1739  o_ << INDENT2 << "size_t " << x.name_ << "_i_vec_lim__ = ";
+ +
1741  o_ << ";" << EOL;
+
1742  o_ << INDENT2 << "for (size_t " << "i_vec__ = 0; " << "i_vec__ < " << x.name_ << "_i_vec_lim__; ++i_vec__) {" << EOL;
+
1743  size_t indentation = 2;
+
1744  for (size_t dim_up = 0U; dim_up < dims.size(); ++dim_up) {
+
1745  size_t dim = dims.size() - dim_up - 1U;
+
1746  ++indentation;
+
1747  generate_indent(indentation,o_);
+
1748  o_ << "size_t " << x.name_ << "_limit_" << dim << "__ = ";
+
1749  generate_expression(dims[dim],o_);
+
1750  o_ << ";" << EOL;
+
1751  generate_indent(indentation,o_);
+
1752  o_ << "for (size_t i_" << dim << "__ = 0; i_" << dim << "__ < " << x.name_ << "_limit_" << dim << "__; ++i_" << dim << "__) {" << EOL;
+
1753  }
+
1754  generate_indent(indentation+1,o_);
+
1755  o_ << x.name_;
+
1756  for (size_t dim = 0; dim < dims.size(); ++dim)
+
1757  o_ << "[i_" << dim << "__]";
+
1758  o_ << "[i_vec__]";
+
1759  o_ << " = vals_r__[pos__++];" << EOL;
+
1760  for (size_t dim = 0; dim < dims.size(); ++dim) {
+
1761  generate_indent(dims.size() + 2 - dim,o_);
+
1762  o_ << "}" << EOL;
+
1763  }
+
1764  o_ << INDENT2 << "}" << EOL;
+
1765  }
+
1766  // change variable name from vector_var_decl
+
1767  void operator()(row_vector_var_decl const& x) const {
+
1768  std::vector<expression> dims = x.dims_;
+ +
1770  var_resizer_(x);
+
1771  o_ << INDENT2 << "vals_r__ = context__.vals_r(\"" << x.name_ << "\");" << EOL;
+
1772  o_ << INDENT2 << "pos__ = 0;" << EOL;
+
1773  o_ << INDENT2 << "size_t " << x.name_ << "_i_vec_lim__ = ";
+ +
1775  o_ << ";" << EOL;
+
1776  o_ << INDENT2 << "for (size_t " << "i_vec__ = 0; " << "i_vec__ < " << x.name_ << "_i_vec_lim__; ++i_vec__) {" << EOL;
+
1777  size_t indentation = 2;
+
1778  for (size_t dim_up = 0U; dim_up < dims.size(); ++dim_up) {
+
1779  size_t dim = dims.size() - dim_up - 1U;
+
1780  ++indentation;
+
1781  generate_indent(indentation,o_);
+
1782  o_ << "size_t " << x.name_ << "_limit_" << dim << "__ = ";
+
1783  generate_expression(dims[dim],o_);
+
1784  o_ << ";" << EOL;
+
1785  generate_indent(indentation,o_);
+
1786  o_ << "for (size_t i_" << dim << "__ = 0; i_" << dim << "__ < " << x.name_ << "_limit_" << dim << "__; ++i_" << dim << "__) {" << EOL;
+
1787  }
+
1788  generate_indent(indentation+1,o_);
+
1789  o_ << x.name_;
+
1790  for (size_t dim = 0; dim < dims.size(); ++dim)
+
1791  o_ << "[i_" << dim << "__]";
+
1792  o_ << "[i_vec__]";
+
1793  o_ << " = vals_r__[pos__++];" << EOL;
+
1794  for (size_t dim = 0; dim < dims.size(); ++dim) {
+
1795  generate_indent(dims.size() + 2 - dim,o_);
+
1796  o_ << "}" << EOL;
+
1797  }
+
1798  o_ << INDENT2 << "}" << EOL;
+
1799  }
+
1800  // same as simplex
+
1801  void operator()(unit_vector_var_decl const& x) const {
+
1802  std::vector<expression> dims = x.dims_;
+ +
1804  var_resizer_(x);
+
1805  o_ << INDENT2 << "vals_r__ = context__.vals_r(\"" << x.name_ << "\");" << EOL;
+
1806  o_ << INDENT2 << "pos__ = 0;" << EOL;
+
1807  o_ << INDENT2 << "size_t " << x.name_ << "_i_vec_lim__ = ";
+ +
1809  o_ << ";" << EOL;
+
1810  o_ << INDENT2 << "for (size_t " << "i_vec__ = 0; " << "i_vec__ < " << x.name_ << "_i_vec_lim__; ++i_vec__) {" << EOL;
+
1811  size_t indentation = 2;
+
1812  for (size_t dim_up = 0U; dim_up < dims.size(); ++dim_up) {
+
1813  size_t dim = dims.size() - dim_up - 1U;
+
1814  ++indentation;
+
1815  generate_indent(indentation,o_);
+
1816  o_ << "size_t " << x.name_ << "_limit_" << dim << "__ = ";
+
1817  generate_expression(dims[dim],o_);
+
1818  o_ << ";" << EOL;
+
1819  generate_indent(indentation,o_);
+
1820  o_ << "for (size_t i_" << dim << "__ = 0; i_" << dim << "__ < " << x.name_ << "_limit_" << dim << "__; ++i_" << dim << "__) {" << EOL;
+
1821  }
+
1822  generate_indent(indentation+1,o_);
+
1823  o_ << x.name_;
+
1824  for (size_t dim = 0; dim < dims.size(); ++dim)
+
1825  o_ << "[i_" << dim << "__]";
+
1826  o_ << "[i_vec__]";
+
1827  o_ << " = vals_r__[pos__++];" << EOL;
+
1828  for (size_t dim = 0; dim < dims.size(); ++dim) {
+
1829  generate_indent(dims.size() + 2 - dim,o_);
+
1830  o_ << "}" << EOL;
+
1831  }
+
1832  o_ << INDENT2 << "}" << EOL;
+
1833  }
+
1834  // diff name of dims from vector
+
1835  void operator()(simplex_var_decl const& x) const {
+
1836  std::vector<expression> dims = x.dims_;
+ +
1838  var_resizer_(x);
+
1839  o_ << INDENT2 << "vals_r__ = context__.vals_r(\"" << x.name_ << "\");" << EOL;
+
1840  o_ << INDENT2 << "pos__ = 0;" << EOL;
+
1841  o_ << INDENT2 << "size_t " << x.name_ << "_i_vec_lim__ = ";
+ +
1843  o_ << ";" << EOL;
+
1844  o_ << INDENT2 << "for (size_t " << "i_vec__ = 0; " << "i_vec__ < " << x.name_ << "_i_vec_lim__; ++i_vec__) {" << EOL;
+
1845  size_t indentation = 2;
+
1846  for (size_t dim_up = 0U; dim_up < dims.size(); ++dim_up) {
+
1847  size_t dim = dims.size() - dim_up - 1U;
+
1848  ++indentation;
+
1849  generate_indent(indentation,o_);
+
1850  o_ << "size_t " << x.name_ << "_limit_" << dim << "__ = ";
+
1851  generate_expression(dims[dim],o_);
+
1852  o_ << ";" << EOL;
+
1853  generate_indent(indentation,o_);
+
1854  o_ << "for (size_t i_" << dim << "__ = 0; i_" << dim << "__ < " << x.name_ << "_limit_" << dim << "__; ++i_" << dim << "__) {" << EOL;
+
1855  }
+
1856  generate_indent(indentation+1,o_);
+
1857  o_ << x.name_;
+
1858  for (size_t dim = 0; dim < dims.size(); ++dim)
+
1859  o_ << "[i_" << dim << "__]";
+
1860  o_ << "[i_vec__]";
+
1861  o_ << " = vals_r__[pos__++];" << EOL;
+
1862  for (size_t dim = 0; dim < dims.size(); ++dim) {
+
1863  generate_indent(dims.size() + 2 - dim,o_);
+
1864  o_ << "}" << EOL;
+
1865  }
+
1866  o_ << INDENT2 << "}" << EOL;
+
1867  }
+
1868  // same as simplex
+
1869  void operator()(ordered_var_decl const& x) const {
+
1870  std::vector<expression> dims = x.dims_;
+ +
1872  var_resizer_(x);
+
1873  o_ << INDENT2 << "vals_r__ = context__.vals_r(\"" << x.name_ << "\");" << EOL;
+
1874  o_ << INDENT2 << "pos__ = 0;" << EOL;
+
1875  o_ << INDENT2 << "size_t " << x.name_ << "_i_vec_lim__ = ";
+ +
1877  o_ << ";" << EOL;
+
1878  o_ << INDENT2 << "for (size_t " << "i_vec__ = 0; " << "i_vec__ < " << x.name_ << "_i_vec_lim__; ++i_vec__) {" << EOL;
+
1879  size_t indentation = 2;
+
1880  for (size_t dim_up = 0U; dim_up < dims.size(); ++dim_up) {
+
1881  size_t dim = dims.size() - dim_up - 1U;
+
1882  ++indentation;
+
1883  generate_indent(indentation,o_);
+
1884  o_ << "size_t " << x.name_ << "_limit_" << dim << "__ = ";
+
1885  generate_expression(dims[dim],o_);
+
1886  o_ << ";" << EOL;
+
1887  generate_indent(indentation,o_);
+
1888  o_ << "for (size_t i_" << dim << "__ = 0; i_" << dim << "__ < " << x.name_ << "_limit_" << dim << "__; ++i_" << dim << "__) {" << EOL;
+
1889  }
+
1890  generate_indent(indentation+1,o_);
+
1891  o_ << x.name_;
+
1892  for (size_t dim = 0; dim < dims.size(); ++dim)
+
1893  o_ << "[i_" << dim << "__]";
+
1894  o_ << "[i_vec__]";
+
1895  o_ << " = vals_r__[pos__++];" << EOL;
+
1896  for (size_t dim = 0; dim < dims.size(); ++dim) {
+
1897  generate_indent(dims.size() + 2 - dim,o_);
+
1898  o_ << "}" << EOL;
+
1899  }
+
1900  o_ << INDENT2 << "}" << EOL;
+
1901  }
+
1902  // same as simplex
+
1903  void operator()(positive_ordered_var_decl const& x) const {
+
1904  std::vector<expression> dims = x.dims_;
+ +
1906  var_resizer_(x);
+
1907  o_ << INDENT2 << "vals_r__ = context__.vals_r(\"" << x.name_ << "\");" << EOL;
+
1908  o_ << INDENT2 << "pos__ = 0;" << EOL;
+
1909  o_ << INDENT2 << "size_t " << x.name_ << "_i_vec_lim__ = ";
+ +
1911  o_ << ";" << EOL;
+
1912  o_ << INDENT2 << "for (size_t " << "i_vec__ = 0; " << "i_vec__ < " << x.name_ << "_i_vec_lim__; ++i_vec__) {" << EOL;
+
1913  size_t indentation = 2;
+
1914  for (size_t dim_up = 0U; dim_up < dims.size(); ++dim_up) {
+
1915  size_t dim = dims.size() - dim_up - 1U;
+
1916  ++indentation;
+
1917  generate_indent(indentation,o_);
+
1918  o_ << "size_t " << x.name_ << "_limit_" << dim << "__ = ";
+
1919  generate_expression(dims[dim],o_);
+
1920  o_ << ";" << EOL;
+
1921  generate_indent(indentation,o_);
+
1922  o_ << "for (size_t i_" << dim << "__ = 0; i_" << dim << "__ < " << x.name_ << "_limit_" << dim << "__; ++i_" << dim << "__) {" << EOL;
+
1923  }
+
1924  generate_indent(indentation+1,o_);
+
1925  o_ << x.name_;
+
1926  for (size_t dim = 0; dim < dims.size(); ++dim)
+
1927  o_ << "[i_" << dim << "__]";
+
1928  o_ << "[i_vec__]";
+
1929  o_ << " = vals_r__[pos__++];" << EOL;
+
1930  for (size_t dim = 0; dim < dims.size(); ++dim) {
+
1931  generate_indent(dims.size() + 2 - dim,o_);
+
1932  o_ << "}" << EOL;
+
1933  }
+
1934  o_ << INDENT2 << "}" << EOL;
+
1935  }
+
1936  // extra loop and different accessor vs. vector
+
1937  void operator()(matrix_var_decl const& x) const {
+
1938  std::vector<expression> dims = x.dims_;
+ +
1940  var_resizer_(x);
+
1941  o_ << INDENT2 << "vals_r__ = context__.vals_r(\"" << x.name_ << "\");" << EOL;
+
1942  o_ << INDENT2 << "pos__ = 0;" << EOL;
+
1943  o_ << INDENT2 << "size_t " << x.name_ << "_m_mat_lim__ = ";
+ +
1945  o_ << ";" << EOL;
+
1946  o_ << INDENT2 << "size_t " << x.name_ << "_n_mat_lim__ = ";
+ +
1948  o_ << ";" << EOL;
+
1949  o_ << INDENT2 << "for (size_t " << "n_mat__ = 0; " << "n_mat__ < " << x.name_ << "_n_mat_lim__; ++n_mat__) {" << EOL;
+
1950  o_ << INDENT3 << "for (size_t " << "m_mat__ = 0; " << "m_mat__ < " << x.name_ << "_m_mat_lim__; ++m_mat__) {" << EOL;
+
1951  size_t indentation = 3;
+
1952  for (size_t dim_up = 0U; dim_up < dims.size(); ++dim_up) {
+
1953  size_t dim = dims.size() - dim_up - 1U;
+
1954  ++indentation;
+
1955  generate_indent(indentation,o_);
+
1956  o_ << "size_t " << x.name_ << "_limit_" << dim << "__ = ";
+
1957  generate_expression(dims[dim],o_);
+
1958  o_ << ";" << EOL;
+
1959  generate_indent(indentation,o_);
+
1960  o_ << "for (size_t i_" << dim << "__ = 0; i_" << dim << "__ < " << x.name_ << "_limit_" << dim << "__; ++i_" << dim << "__) {" << EOL;
+
1961  }
+
1962  generate_indent(indentation+1,o_);
+
1963  o_ << x.name_;
+
1964  for (size_t dim = 0; dim < dims.size(); ++dim)
+
1965  o_ << "[i_" << dim << "__]";
+
1966  o_ << "(m_mat__,n_mat__)";
+
1967  o_ << " = vals_r__[pos__++];" << EOL;
+
1968  for (size_t dim = 0; dim < dims.size(); ++dim) {
+
1969  generate_indent(dims.size() + 2 - dim,o_);
+
1970  o_ << "}" << EOL;
+
1971  }
+
1972  o_ << INDENT3 << "}" << EOL;
+
1973  o_ << INDENT2 << "}" << EOL;
+
1974  }
+
1975  void operator()(corr_matrix_var_decl const& x) const {
+
1976  // FIXME: cut-and-paste of cov_matrix, very slightly different from matrix
+
1977  std::vector<expression> dims = x.dims_;
+ +
1979  var_resizer_(x);
+
1980  o_ << INDENT2 << "vals_r__ = context__.vals_r(\"" << x.name_ << "\");" << EOL;
+
1981  o_ << INDENT2 << "pos__ = 0;" << EOL;
+
1982  o_ << INDENT2 << "size_t " << x.name_ << "_k_mat_lim__ = ";
+ +
1984  o_ << ";" << EOL;
+
1985  o_ << INDENT2 << "for (size_t " << "n_mat__ = 0; " << "n_mat__ < " << x.name_ << "_k_mat_lim__; ++n_mat__) {" << EOL;
+
1986  o_ << INDENT3 << "for (size_t " << "m_mat__ = 0; " << "m_mat__ < " << x.name_ << "_k_mat_lim__; ++m_mat__) {" << EOL;
+
1987  size_t indentation = 3;
+
1988  for (size_t dim_up = 0U; dim_up < dims.size(); ++dim_up) {
+
1989  size_t dim = dims.size() - dim_up - 1U;
+
1990  ++indentation;
+
1991  generate_indent(indentation,o_);
+
1992  o_ << "size_t " << x.name_ << "_limit_" << dim << "__ = ";
+
1993  generate_expression(dims[dim],o_);
+
1994  o_ << ";" << EOL;
+
1995  generate_indent(indentation,o_);
+
1996  o_ << "for (size_t i_" << dim << "__ = 0; i_" << dim << "__ < " << x.name_ << "_limit_" << dim << "__; ++i_" << dim << "__) {" << EOL;
+
1997  }
+
1998  generate_indent(indentation+1,o_);
+
1999  o_ << x.name_;
+
2000  for (size_t dim = 0; dim < dims.size(); ++dim)
+
2001  o_ << "[i_" << dim << "__]";
+
2002  o_ << "(m_mat__,n_mat__)";
+
2003  o_ << " = vals_r__[pos__++];" << EOL;
+
2004  for (size_t dim = 0; dim < dims.size(); ++dim) {
+
2005  generate_indent(dims.size() + 2 - dim,o_);
+
2006  o_ << "}" << EOL;
+
2007  }
+
2008  o_ << INDENT3 << "}" << EOL;
+
2009  o_ << INDENT2 << "}" << EOL;
+
2010  }
+
2011  void operator()(cholesky_factor_var_decl const& x) const {
+
2012  // FIXME: cut and paste of cov_matrix
+
2013  std::vector<expression> dims = x.dims_;
+ +
2015  var_resizer_(x);
+
2016  o_ << INDENT2 << "vals_r__ = context__.vals_r(\"" << x.name_ << "\");" << EOL;
+
2017  o_ << INDENT2 << "pos__ = 0;" << EOL;
+
2018 
+
2019  o_ << INDENT2 << "size_t " << x.name_ << "_m_mat_lim__ = ";
+ +
2021  o_ << ";" << EOL;
+
2022 
+
2023  o_ << INDENT2 << "size_t " << x.name_ << "_n_mat_lim__ = ";
+ +
2025  o_ << ";" << EOL;
+
2026 
+
2027  o_ << INDENT2 << "for (size_t " << "n_mat__ = 0; " << "n_mat__ < " << x.name_ << "_n_mat_lim__; ++n_mat__) {" << EOL;
+
2028  o_ << INDENT3 << "for (size_t " << "m_mat__ = 0; " << "m_mat__ < " << x.name_ << "_m_mat_lim__; ++m_mat__) {" << EOL;
+
2029 
+
2030  size_t indentation = 3;
+
2031  for (size_t dim_up = 0U; dim_up < dims.size(); ++dim_up) {
+
2032  size_t dim = dims.size() - dim_up - 1U;
+
2033  ++indentation;
+
2034  generate_indent(indentation,o_);
+
2035  o_ << "size_t " << x.name_ << "_limit_" << dim << "__ = ";
+
2036  generate_expression(dims[dim],o_);
+
2037  o_ << ";" << EOL;
+
2038  generate_indent(indentation,o_);
+
2039  o_ << "for (size_t i_" << dim << "__ = 0; i_" << dim << "__ < " << x.name_ << "_limit_" << dim << "__; ++i_" << dim << "__) {"
+
2040  << EOL;
+
2041  }
+
2042  generate_indent(indentation+1,o_);
+
2043  o_ << x.name_;
+
2044  for (size_t dim = 0; dim < dims.size(); ++dim)
+
2045  o_ << "[i_" << dim << "__]";
+
2046  o_ << "(m_mat__,n_mat__)";
+
2047  o_ << " = vals_r__[pos__++];" << EOL;
+
2048  for (size_t dim = 0; dim < dims.size(); ++dim) {
+
2049  generate_indent(dims.size() + 2 - dim,o_);
+
2050  o_ << "}" << EOL;
+
2051  }
+
2052 
+
2053  o_ << INDENT3 << "}" << EOL;
+
2054  o_ << INDENT2 << "}" << EOL;
+
2055  }
+
2056  void operator()(cov_matrix_var_decl const& x) const {
+
2057  std::vector<expression> dims = x.dims_;
+ +
2059  var_resizer_(x);
+
2060  o_ << INDENT2 << "vals_r__ = context__.vals_r(\"" << x.name_ << "\");" << EOL;
+
2061  o_ << INDENT2 << "pos__ = 0;" << EOL;
+
2062  o_ << INDENT2 << "size_t " << x.name_ << "_k_mat_lim__ = ";
+ +
2064  o_ << ";" << EOL;
+
2065  o_ << INDENT2 << "for (size_t " << "n_mat__ = 0; " << "n_mat__ < " << x.name_ << "_k_mat_lim__; ++n_mat__) {" << EOL;
+
2066  o_ << INDENT3 << "for (size_t " << "m_mat__ = 0; " << "m_mat__ < " << x.name_ << "_k_mat_lim__; ++m_mat__) {" << EOL;
+
2067  size_t indentation = 3;
+
2068  for (size_t dim_up = 0U; dim_up < dims.size(); ++dim_up) {
+
2069  size_t dim = dims.size() - dim_up - 1U;
+
2070  ++indentation;
+
2071  generate_indent(indentation,o_);
+
2072  o_ << "size_t " << x.name_ << "_limit_" << dim << "__ = ";
+
2073  generate_expression(dims[dim],o_);
+
2074  o_ << ";" << EOL;
+
2075  generate_indent(indentation,o_);
+
2076  o_ << "for (size_t i_" << dim << "__ = 0; i_" << dim << "__ < " << x.name_ << "_limit_" << dim << "__; ++i_" << dim << "__) {" << EOL;
+
2077  }
+
2078  generate_indent(indentation+1,o_);
+
2079  o_ << x.name_;
+
2080  for (size_t dim = 0; dim < dims.size(); ++dim)
+
2081  o_ << "[i_" << dim << "__]";
+
2082  o_ << "(m_mat__,n_mat__)";
+
2083  o_ << " = vals_r__[pos__++];" << EOL;
+
2084  for (size_t dim = 0; dim < dims.size(); ++dim) {
+
2085  generate_indent(dims.size() + 2 - dim,o_);
+
2086  o_ << "}" << EOL;
+
2087  }
+
2088  o_ << INDENT3 << "}" << EOL;
+
2089  o_ << INDENT2 << "}" << EOL;
+
2090  }
+
2091  };
+
2092 
+
2093  void suppress_warning(const std::string& indent,
+
2094  const std::string& var_name,
+
2095  std::ostream& o) {
+
2096  o << indent << "(void) "
+
2097  << var_name << ";"
+
2098  << " // dummy call to supress warning"
+
2099  << EOL;
+
2100  }
+
2101 
+
2102  void generate_member_var_inits(const std::vector<var_decl>& vs,
+
2103  std::ostream& o) {
+
2104  dump_member_var_visgen vis(o);
+
2105  for (size_t i = 0; i < vs.size(); ++i)
+
2106  boost::apply_visitor(vis, vs[i].decl_);
+
2107  }
+
2108 
+
2109  void generate_destructor(const std::string& model_name,
+
2110  std::ostream& o) {
+
2111  o << EOL
+
2112  << INDENT << "~" << model_name << "() { }"
+
2113  << EOL2;
+
2114  }
+
2115 
+
2116  // know all data is set and range expressions only depend on data
+ +
2118  set_param_ranges_visgen(std::ostream& o)
+
2119  : visgen(o) {
+
2120  }
+
2121  void operator()(const nil& /*x*/) const { }
+
2122  void operator()(const int_var_decl& x) const {
+ +
2124  // for loop for ranges
+
2125  for (size_t i = 0; i < x.dims_.size(); ++i) {
+
2126  generate_indent(i + 2, o_);
+
2127  o_ << "for (size_t i_" << i << "__ = 0; ";
+
2128  o_ << "i_" << i << "__ < ";
+ +
2130  o_ << "; ++i_" << i << "__) {" << EOL;
+
2131  }
+
2132  // add range
+
2133  generate_indent(x.dims_.size() + 2,o_);
+
2134  o_ << "param_ranges_i__.push_back(std::pair<int,int>(";
+ +
2136  o_ << ", ";
+ +
2138  o_ << "));" << EOL;
+
2139  // close for loop
+
2140  for (size_t i = 0; i < x.dims_.size(); ++i) {
+
2141  generate_indent(x.dims_.size() + 1 - i, o_);
+
2142  o_ << "}" << EOL;
+
2143  }
+
2144  }
+
2145  void operator()(const double_var_decl& x) const {
+ +
2147  }
+
2148  void operator()(const vector_var_decl& x) const {
+ +
2150  }
+
2151  void operator()(const row_vector_var_decl& x) const {
+ +
2153  }
+
2154  void operator()(const matrix_var_decl& x) const {
+
2155  generate_increment(x.M_,x.N_,x.dims_);
+
2156  }
+
2157  void operator()(const unit_vector_var_decl& x) const {
+
2158  // only K-1 vals
+
2159  o_ << INDENT2 << "num_params_r__ += (";
+ +
2161  o_ << " - 1)";
+
2162  for (size_t i = 0; i < x.dims_.size(); ++i) {
+
2163  o_ << " * ";
+ +
2165  }
+
2166  o_ << ";" << EOL;
+
2167  }
+
2168  void operator()(const simplex_var_decl& x) const {
+
2169  // only K-1 vals
+
2170  o_ << INDENT2 << "num_params_r__ += (";
+ +
2172  o_ << " - 1)";
+
2173  for (size_t i = 0; i < x.dims_.size(); ++i) {
+
2174  o_ << " * ";
+ +
2176  }
+
2177  o_ << ";" << EOL;
+
2178  }
+
2179  void operator()(const ordered_var_decl& x) const {
+ +
2181  }
+
2182  void operator()(const positive_ordered_var_decl& x) const {
+ +
2184  }
+
2185  void operator()(const cholesky_factor_var_decl& x) const {
+
2186  o_ << INDENT2 << "num_params_r__ += ((";
+
2187  // N * (N + 1) / 2 + (M - N) * M
+ +
2189  o_ << " * (";
+ +
2191  o_ << " + 1)) / 2 + (";
+ +
2193  o_ << " - ";
+ +
2195  o_ << ") * ";
+ +
2197  o_ << ")";
+
2198  for (size_t i = 0; i < x.dims_.size(); ++i) {
+
2199  o_ << " * ";
+ +
2201  }
+
2202  o_ << ";" << EOL;
+
2203  }
+
2204  void operator()(const cov_matrix_var_decl& x) const {
+
2205  // (K * (K - 1))/2 + K ?? define fun(K) = ??
+
2206  o_ << INDENT2 << "num_params_r__ += ((";
+ +
2208  o_ << " * (";
+ +
2210  o_ << " - 1)) / 2 + ";
+ +
2212  o_ << ")";
+
2213  for (size_t i = 0; i < x.dims_.size(); ++i) {
+
2214  o_ << " * ";
+ +
2216  }
+
2217  o_ << ";" << EOL;
+
2218  }
+
2219  void operator()(const corr_matrix_var_decl& x) const {
+
2220  o_ << INDENT2 << "num_params_r__ += ((";
+ +
2222  o_ << " * (";
+ +
2224  o_ << " - 1)) / 2)";
+
2225  for (size_t i = 0; i < x.dims_.size(); ++i) {
+
2226  o_ << " * ";
+ +
2228  }
+
2229  o_ << ";" << EOL;
+
2230  }
+
2231  // cut-and-paste from next for r
+
2232  void generate_increment_i(std::vector<expression> dims) const {
+
2233  if (dims.size() == 0) {
+
2234  o_ << INDENT2 << "++num_params_i__;" << EOL;
+
2235  return;
+
2236  }
+
2237  o_ << INDENT2 << "num_params_r__ += ";
+
2238  for (size_t i = 0; i < dims.size(); ++i) {
+
2239  if (i > 0) o_ << " * ";
+
2240  generate_expression(dims[i],o_);
+
2241  }
+
2242  o_ << ";" << EOL;
+
2243  }
+
2244  void generate_increment(std::vector<expression> dims) const {
+
2245  if (dims.size() == 0) {
+
2246  o_ << INDENT2 << "++num_params_r__;" << EOL;
+
2247  return;
+
2248  }
+
2249  o_ << INDENT2 << "num_params_r__ += ";
+
2250  for (size_t i = 0; i < dims.size(); ++i) {
+
2251  if (i > 0) o_ << " * ";
+
2252  generate_expression(dims[i],o_);
+
2253  }
+
2254  o_ << ";" << EOL;
+
2255  }
+ +
2257  std::vector<expression> dims) const {
+
2258  o_ << INDENT2 << "num_params_r__ += ";
+ +
2260  for (size_t i = 0; i < dims.size(); ++i) {
+
2261  o_ << " * ";
+
2262  generate_expression(dims[i],o_);
+
2263  }
+
2264  o_ << ";" << EOL;
+
2265 
+
2266  }
+ +
2268  std::vector<expression> dims) const {
+
2269  o_ << INDENT2 << "num_params_r__ += ";
+ +
2271  o_ << " * ";
+ +
2273  for (size_t i = 0; i < dims.size(); ++i) {
+
2274  o_ << " * ";
+
2275  generate_expression(dims[i],o_);
+
2276  }
+
2277  o_ << ";" << EOL;
+
2278  }
+
2279  };
+
2280 
+
2281  void generate_set_param_ranges(const std::vector<var_decl>& var_decls,
+
2282  std::ostream& o) {
+
2283  // o << EOL;
+
2284  // o << INDENT << "void set_param_ranges() {" << EOL;
+
2285  o << INDENT2 << "num_params_r__ = 0U;" << EOL;
+
2286  o << INDENT2 << "param_ranges_i__.clear();" << EOL;
+
2287  set_param_ranges_visgen vis(o);
+
2288  for (size_t i = 0; i < var_decls.size(); ++i)
+
2289  boost::apply_visitor(vis,var_decls[i].decl_);
+
2290  // o << INDENT << "}" << EOL;
+
2291  }
+
2292 
+
2293  void generate_constructor(const program& prog,
+
2294  const std::string& model_name,
+
2295  std::ostream& o) {
+
2296  o << INDENT << model_name << "(stan::io::var_context& context__," << EOL;
+
2297  o << INDENT << " std::ostream* pstream__ = 0)"
+
2298  << EOL;
+
2299  o << INDENT2 << ": prob_grad::prob_grad(0) {"
+
2300  << EOL; // resize 0 with var_resizing
+
2301  o << INDENT2 << "static const char* function__ = \""
+
2302  << model_name << "_namespace::" << model_name << "(%1%)\";" << EOL;
+
2303  suppress_warning(INDENT2, "function__", o);
+
2304  o << INDENT2 << "size_t pos__;" << EOL;
+
2305  suppress_warning(INDENT2, "pos__", o);
+
2306  o << INDENT2 << "std::vector<int> vals_i__;" << EOL;
+
2307  o << INDENT2 << "std::vector<double> vals_r__;" << EOL;
+
2308 
+ +
2310 
+
2311  o << EOL;
+
2312  generate_comment("validate data",2,o);
+ +
2314 
+ +
2316  o << EOL;
+
2317  bool include_sampling = false;
+
2318  bool is_var = false;
+
2319  for (size_t i = 0; i < prog.derived_data_decl_.second.size(); ++i)
+
2320  generate_statement(prog.derived_data_decl_.second[i],
+
2321  2,o,include_sampling,is_var);
+
2322 
+
2323  o << EOL;
+
2324  generate_comment("validate transformed data",2,o);
+ +
2326 
+
2327  o << EOL;
+
2328  generate_comment("set parameter ranges",2,o);
+ +
2330  // o << EOL << INDENT2 << "set_param_ranges();" << EOL;
+
2331 
+
2332  o << INDENT << "}" << EOL;
+
2333  }
+
2334 
+
2335  struct generate_init_visgen : public visgen {
+ +
2337  generate_init_visgen(std::ostream& o)
+
2338  : visgen(o),
+
2339  var_size_validator_(o,"initialization") {
+
2340  }
+
2341  void operator()(nil const& /*x*/) const { } // dummy
+
2342  void operator()(int_var_decl const& x) const {
+
2343  generate_check_int(x.name_,x.dims_.size());
+ +
2345  generate_declaration(x.name_,"int",x.dims_);
+
2346  generate_buffer_loop("i",x.name_, x.dims_);
+
2347  generate_write_loop("integer(",x.name_,x.dims_);
+
2348  }
+
2349  template <typename D>
+
2350  std::string function_args(const std::string& fun_prefix,
+
2351  const D& x) const {
+
2352  std::stringstream ss;
+
2353  ss << fun_prefix;
+
2354  if (has_lub(x)) {
+
2355  ss << "_lub_unconstrain(";
+
2356  generate_expression(x.range_.low_.expr_,ss);
+
2357  ss << ',';
+
2358  generate_expression(x.range_.high_.expr_,ss);
+
2359  ss << ',';
+
2360  } else if (has_lb(x)) {
+
2361  ss << "_lb_unconstrain(";
+
2362  generate_expression(x.range_.low_.expr_,ss);
+
2363  ss << ',';
+
2364  } else if (has_ub(x)) {
+
2365  ss << "_ub_unconstrain(";
+
2366  generate_expression(x.range_.high_.expr_,ss);
+
2367  ss << ',';
+
2368  } else {
+
2369  ss << "_unconstrain(";
+
2370  }
+
2371  return ss.str();
+
2372  }
+
2373 
+
2374  void operator()(double_var_decl const& x) const {
+
2375  generate_check_double(x.name_,x.dims_.size());
+ +
2377  generate_declaration(x.name_,"double",x.dims_);
+
2378  generate_buffer_loop("r",x.name_,x.dims_);
+
2379  generate_write_loop(function_args("scalar",x),
+
2380  x.name_, x.dims_);
+
2381  }
+
2382  void operator()(vector_var_decl const& x) const {
+
2383  generate_check_double(x.name_,x.dims_.size() + 1);
+ +
2385  generate_declaration(x.name_,"vector_d",x.dims_,x.M_);
+
2386  generate_buffer_loop("r",x.name_,x.dims_,x.M_);
+
2387  generate_write_loop(function_args("vector",x),
+
2388  x.name_,x.dims_);
+
2389  }
+
2390  void operator()(row_vector_var_decl const& x) const {
+
2391  generate_check_double(x.name_,x.dims_.size() + 1);
+ +
2393  generate_declaration(x.name_,"row_vector_d",x.dims_,x.N_);
+
2394  generate_buffer_loop("r",x.name_,x.dims_,x.N_);
+
2395  generate_write_loop(function_args("row_vector",x),
+
2396  x.name_,x.dims_);
+
2397  }
+
2398  void operator()(matrix_var_decl const& x) const {
+
2399  generate_check_double(x.name_,x.dims_.size() + 2);
+ +
2401  generate_declaration(x.name_,"matrix_d",x.dims_,x.M_,x.N_);
+
2402  generate_buffer_loop("r",x.name_,x.dims_,x.M_,x.N_);
+
2403  generate_write_loop(function_args("matrix",x),
+
2404  x.name_,x.dims_);
+
2405  }
+
2406  void operator()(unit_vector_var_decl const& x) const {
+
2407  generate_check_double(x.name_,x.dims_.size() + 1);
+ +
2409  generate_declaration(x.name_,"vector_d",x.dims_,x.K_);
+
2410  generate_buffer_loop("r",x.name_,x.dims_,x.K_);
+
2411  generate_write_loop("unit_vector_unconstrain(",x.name_,x.dims_);
+
2412  }
+
2413  void operator()(simplex_var_decl const& x) const {
+
2414  generate_check_double(x.name_,x.dims_.size() + 1);
+ +
2416  generate_declaration(x.name_,"vector_d",x.dims_,x.K_);
+
2417  generate_buffer_loop("r",x.name_,x.dims_,x.K_);
+
2418  generate_write_loop("simplex_unconstrain(",x.name_,x.dims_);
+
2419  }
+
2420  void operator()(ordered_var_decl const& x) const {
+
2421  generate_check_double(x.name_,x.dims_.size() + 1);
+ +
2423  generate_declaration(x.name_,"vector_d",x.dims_,x.K_);
+
2424  generate_buffer_loop("r",x.name_,x.dims_,x.K_);
+
2425  generate_write_loop("ordered_unconstrain(",x.name_,x.dims_);
+
2426  }
+
2427  void operator()(positive_ordered_var_decl const& x) const {
+
2428  generate_check_double(x.name_,x.dims_.size() + 1);
+ +
2430  generate_declaration(x.name_,"vector_d",x.dims_,x.K_);
+
2431  generate_buffer_loop("r",x.name_,x.dims_,x.K_);
+
2432  generate_write_loop("positive_ordered_unconstrain(",x.name_,x.dims_);
+
2433  }
+
2434  void operator()(cholesky_factor_var_decl const& x) const {
+
2435  generate_check_double(x.name_,x.dims_.size() + 2);
+ +
2437  generate_declaration(x.name_,"matrix_d",x.dims_,x.M_,x.N_);
+
2438  generate_buffer_loop("r",x.name_,x.dims_,x.M_,x.N_);
+
2439  generate_write_loop("cholesky_factor_unconstrain(",x.name_,x.dims_);
+
2440  }
+
2441  void operator()(cov_matrix_var_decl const& x) const {
+
2442  generate_check_double(x.name_,x.dims_.size() + 2);
+ +
2444  generate_declaration(x.name_,"matrix_d",x.dims_,x.K_,x.K_);
+
2445  generate_buffer_loop("r",x.name_,x.dims_,x.K_,x.K_);
+
2446  generate_write_loop("cov_matrix_unconstrain(",x.name_,x.dims_);
+
2447  }
+
2448  void operator()(corr_matrix_var_decl const& x) const {
+
2449  generate_check_double(x.name_,x.dims_.size() + 2);
+ +
2451  generate_declaration(x.name_,"matrix_d",x.dims_,x.K_,x.K_);
+
2452  generate_buffer_loop("r",x.name_,x.dims_,x.K_,x.K_);
+
2453  generate_write_loop("corr_matrix_unconstrain(",x.name_,x.dims_);
+
2454  }
+
2455  void generate_write_loop(const std::string& write_method_name,
+
2456  const std::string& var_name,
+
2457  const std::vector<expression>& dims) const {
+
2458  generate_dims_loop_fwd(dims);
+
2459  o_ << "try { writer__." << write_method_name;
+
2460  generate_name_dims(var_name,dims.size());
+
2461  o_ << "); } catch (const std::exception& e) { "
+
2462  " throw std::runtime_error(std::string(\"Error transforming variable "
+
2463  << var_name << ": \") + e.what()); }" << EOL;
+
2464  }
+
2465  void generate_name_dims(const std::string name,
+
2466  size_t num_dims) const {
+
2467  o_ << name;
+
2468  for (size_t i = 0; i < num_dims; ++i)
+
2469  o_ << "[i" << i << "__]";
+
2470  }
+
2471  void generate_declaration(const std::string& name,
+
2472  const std::string& base_type,
+
2473  const std::vector<expression>& dims,
+
2474  const expression& type_arg1 = expression(),
+
2475  const expression& type_arg2 = expression()) const {
+
2476  o_ << INDENT2;
+
2477  generate_type(base_type,dims,dims.size(),o_);
+
2478  o_ << ' ' << name;
+
2479 
+
2480  generate_initializer(o_,base_type,dims,type_arg1,type_arg2);
+
2481  }
+
2482  void generate_indent_num_dims(size_t base_indent,
+
2483  const std::vector<expression>& dims,
+
2484  const expression& dim1,
+
2485  const expression& dim2) const {
+
2486  generate_indent(dims.size() + base_indent,o_);
+
2487  if (!is_nil(dim1)) o_ << INDENT;
+
2488  if (!is_nil(dim2)) o_ << INDENT;
+
2489  }
+
2490  void generate_buffer_loop(const std::string& base_type,
+
2491  const std::string& name,
+
2492  const std::vector<expression>& dims,
+
2493  const expression& dim1 = expression(),
+
2494  const expression& dim2 = expression(),
+
2495  int indent = 2U) const {
+
2496  size_t size = dims.size();
+
2497  bool is_matrix = !is_nil(dim1) && !is_nil(dim2);
+
2498  bool is_vector = !is_nil(dim1) && is_nil(dim2);
+
2499  int extra_indent = is_matrix ? 2U : is_vector ? 1U : 0U;
+
2500  if (is_matrix) {
+
2501  generate_indent(indent,o_);
+
2502  o_ << "for (int j2__ = 0U; j2__ < ";
+
2503  generate_expression(dim2.expr_,o_);
+
2504  o_ << "; ++j2__)" << EOL;
+
2505 
+
2506  generate_indent(indent+1,o_);
+
2507  o_ << "for (int j1__ = 0U; j1__ < ";
+
2508  generate_expression(dim1.expr_,o_);
+
2509  o_ << "; ++j1__)" << EOL;
+
2510  } else if (is_vector) {
+
2511  generate_indent(indent,o_);
+
2512  o_ << "for (int j1__ = 0U; j1__ < ";
+
2513  generate_expression(dim1.expr_,o_);
+
2514  o_ << "; ++j1__)" << EOL;
+
2515  }
+
2516  for (size_t i = 0; i < size; ++i) {
+
2517  size_t idx = size - i - 1;
+
2518  generate_indent(i + indent + extra_indent, o_);
+
2519  o_ << "for (int i" << idx << "__ = 0U; i" << idx << "__ < ";
+
2520  generate_expression(dims[idx].expr_,o_);
+
2521  o_ << "; ++i" << idx << "__)" << EOL;
+
2522  }
+
2523  generate_indent_num_dims(2U,dims,dim1,dim2);
+
2524  o_ << name;
+
2525  for (size_t i = 0; i < dims.size(); ++i)
+
2526  o_ << "[i" << i << "__]";
+
2527  if (is_matrix)
+
2528  o_ << "(j1__,j2__)";
+
2529  else if (is_vector)
+
2530  o_ << "(j1__)";
+
2531  o_ << " = vals_" << base_type << "__[pos__++];" << EOL;
+
2532  }
+
2533  void generate_dims_loop_fwd(const std::vector<expression>& dims,
+
2534  int indent = 2U) const {
+
2535  size_t size = dims.size();
+
2536  for (size_t i = 0; i < size; ++i) {
+
2537  generate_indent(i + indent, o_);
+
2538  o_ << "for (int i" << i << "__ = 0U; i" << i << "__ < ";
+
2539  generate_expression(dims[i].expr_,o_);
+
2540  o_ << "; ++i" << i << "__)" << EOL;
+
2541  }
+
2542  generate_indent(2U + dims.size(),o_);
+
2543  }
+
2544  void generate_check_int(const std::string& name, size_t /*n*/) const {
+
2545  o_ << EOL << INDENT2
+
2546  << "if (!(context__.contains_i(\"" << name << "\")))"
+
2547  << EOL << INDENT3
+
2548  << "throw std::runtime_error(\"variable " << name << " missing\");" << EOL;
+
2549  o_ << INDENT2 << "vals_i__ = context__.vals_i(\"" << name << "\");" << EOL;
+
2550  o_ << INDENT2 << "pos__ = 0U;" << EOL;
+
2551  }
+
2552  void generate_check_double(const std::string& name, size_t /*n*/) const {
+
2553  o_ << EOL << INDENT2
+
2554  << "if (!(context__.contains_r(\"" << name << "\")))"
+
2555  << EOL << INDENT3
+
2556  << "throw std::runtime_error(\"variable " << name << " missing\");" << EOL;
+
2557  o_ << INDENT2 << "vals_r__ = context__.vals_r(\"" << name << "\");" << EOL;
+
2558  o_ << INDENT2 << "pos__ = 0U;" << EOL;
+
2559  }
+
2560  };
+
2561 
+
2562 
+
2563  void generate_init_method(const std::vector<var_decl>& vs,
+
2564  std::ostream& o) {
+
2565  o << EOL;
+
2566  o << INDENT << "void transform_inits(const stan::io::var_context& context__," << EOL;
+
2567  o << INDENT << " std::vector<int>& params_i__," << EOL;
+
2568  o << INDENT << " std::vector<double>& params_r__) const {" << EOL;
+
2569  o << INDENT2 << "stan::io::writer<double> writer__(params_r__,params_i__);" << EOL;
+
2570  o << INDENT2 << "size_t pos__;" << EOL;
+
2571  o << INDENT2 << "(void) pos__; // dummy call to supress warning" << EOL;
+
2572  o << INDENT2 << "std::vector<double> vals_r__;" << EOL;
+
2573  o << INDENT2 << "std::vector<int> vals_i__;" << EOL;
+
2574  o << EOL;
+
2575  generate_init_visgen vis(o);
+
2576  for (size_t i = 0; i < vs.size(); ++i)
+
2577  boost::apply_visitor(vis, vs[i].decl_);
+
2578 
+
2579  o << INDENT2 << "params_r__ = writer__.data_r();" << EOL;
+
2580  o << INDENT2 << "params_i__ = writer__.data_i();" << EOL;
+
2581  o << INDENT << "}" << EOL2;
+
2582 
+
2583  o << INDENT << "void transform_inits(const stan::io::var_context& context," << EOL;
+
2584  o << INDENT << " Eigen::Matrix<double,Eigen::Dynamic,1>& params_r) const {" << EOL;
+
2585  o << INDENT << " std::vector<double> params_r_vec;" << EOL;
+
2586  o << INDENT << " std::vector<int> params_i_vec;" << EOL;
+
2587  o << INDENT << " transform_inits(context, params_i_vec, params_r_vec);" << EOL;
+
2588  o << INDENT << " params_r.resize(params_r_vec.size());" << EOL;
+
2589  o << INDENT << " for (int i = 0; i < params_r.size(); ++i)" << EOL;
+
2590  o << INDENT << " params_r(i) = params_r_vec[i];" << EOL;
+
2591  o << INDENT << "}" << EOL2;
+
2592  }
+
2593 
+
2594  // see write_csv_visgen for similar structure
+
2595  struct write_dims_visgen : public visgen {
+
2596  write_dims_visgen(std::ostream& o)
+
2597  : visgen(o) {
+
2598  }
+
2599  void operator()(const nil& /*x*/) const { }
+
2600  void operator()(const int_var_decl& x) const {
+ +
2602  }
+
2603  void operator()(const double_var_decl& x) const {
+ +
2605  }
+
2606  void operator()(const vector_var_decl& x) const {
+
2607  std::vector<expression> matrix_args;
+
2608  matrix_args.push_back(x.M_);
+
2609  generate_dims_array(matrix_args,x.dims_);
+
2610  }
+
2611  void operator()(const row_vector_var_decl& x) const {
+
2612  std::vector<expression> matrix_args;
+
2613  matrix_args.push_back(x.N_);
+
2614  generate_dims_array(matrix_args,x.dims_);
+
2615  }
+
2616  void operator()(const matrix_var_decl& x) const {
+
2617  std::vector<expression> matrix_args;
+
2618  matrix_args.push_back(x.M_);
+
2619  matrix_args.push_back(x.N_);
+
2620  generate_dims_array(matrix_args,x.dims_);
+
2621  }
+
2622  void operator()(const unit_vector_var_decl& x) const {
+
2623  std::vector<expression> matrix_args;
+
2624  matrix_args.push_back(x.K_);
+
2625  generate_dims_array(matrix_args,x.dims_);
+
2626  }
+
2627  void operator()(const simplex_var_decl& x) const {
+
2628  std::vector<expression> matrix_args;
+
2629  matrix_args.push_back(x.K_);
+
2630  generate_dims_array(matrix_args,x.dims_);
+
2631  }
+
2632  void operator()(const ordered_var_decl& x) const {
+
2633  std::vector<expression> matrix_args;
+
2634  matrix_args.push_back(x.K_);
+
2635  generate_dims_array(matrix_args,x.dims_);
+
2636  }
+
2637  void operator()(const positive_ordered_var_decl& x) const {
+
2638  std::vector<expression> matrix_args;
+
2639  matrix_args.push_back(x.K_);
+
2640  generate_dims_array(matrix_args,x.dims_);
+
2641  }
+
2642  void operator()(const cholesky_factor_var_decl& x) const {
+
2643  std::vector<expression> matrix_args;
+
2644  matrix_args.push_back(x.M_);
+
2645  matrix_args.push_back(x.N_);
+
2646  generate_dims_array(matrix_args,x.dims_);
+
2647  }
+
2648  void operator()(const cov_matrix_var_decl& x) const {
+
2649  std::vector<expression> matrix_args;
+
2650  matrix_args.push_back(x.K_);
+
2651  matrix_args.push_back(x.K_);
+
2652  generate_dims_array(matrix_args,x.dims_);
+
2653  }
+
2654  void operator()(const corr_matrix_var_decl& x) const {
+
2655  std::vector<expression> matrix_args;
+
2656  matrix_args.push_back(x.K_);
+
2657  matrix_args.push_back(x.K_);
+
2658  generate_dims_array(matrix_args,x.dims_);
+
2659  }
+
2660  void
+
2661  generate_dims_array(const std::vector<expression>& matrix_dims_exprs,
+
2662  const std::vector<expression>& array_dims_exprs)
+
2663  const {
+
2664 
+
2665  o_ << INDENT2 << "dims__.resize(0);" << EOL;
+
2666  for (size_t i = 0; i < array_dims_exprs.size(); ++i) {
+
2667  o_ << INDENT2 << "dims__.push_back(";
+
2668  generate_expression(array_dims_exprs[i].expr_, o_);
+
2669  o_ << ");" << EOL;
+
2670  }
+
2671  // cut and paste above with matrix_dims_exprs
+
2672  for (size_t i = 0; i < matrix_dims_exprs.size(); ++i) {
+
2673  o_ << INDENT2 << "dims__.push_back(";
+
2674  generate_expression(matrix_dims_exprs[i].expr_, o_);
+
2675  o_ << ");" << EOL;
+
2676  }
+
2677  o_ << INDENT2 << "dimss__.push_back(dims__);" << EOL;
+
2678  }
+
2679 
+
2680  };
+
2681 
+
2682  void generate_dims_method(const program& prog,
+
2683  std::ostream& o) {
+
2684  write_dims_visgen vis(o);
+
2685  o << EOL << INDENT
+
2686  << "void get_dims(std::vector<std::vector<size_t> >& dimss__) const {"
+
2687  << EOL;
+
2688 
+
2689  o << INDENT2 << "dimss__.resize(0);" << EOL;
+
2690  o << INDENT2 << "std::vector<size_t> dims__;" << EOL;
+
2691 
+
2692  // parameters
+
2693  for (size_t i = 0; i < prog.parameter_decl_.size(); ++i) {
+
2694  boost::apply_visitor(vis,prog.parameter_decl_[i].decl_);
+
2695  }
+
2696  // transformed parameters
+
2697  for (size_t i = 0; i < prog.derived_decl_.first.size(); ++i) {
+
2698  boost::apply_visitor(vis,prog.derived_decl_.first[i].decl_);
+
2699  }
+
2700  // generated quantities
+
2701  for (size_t i = 0; i < prog.generated_decl_.first.size(); ++i) {
+
2702  boost::apply_visitor(vis,prog.generated_decl_.first[i].decl_);
+
2703  }
+
2704  o << INDENT << "}" << EOL2;
+
2705  }
+
2706 
+
2707 
+
2708 
+
2709  // see write_csv_visgen for similar structure
+ +
2711  write_param_names_visgen(std::ostream& o)
+
2712  : visgen(o) {
+
2713  }
+
2714  void operator()(const nil& /*x*/) const { }
+
2715  void operator()(const int_var_decl& x) const {
+ +
2717  }
+
2718  void operator()(const double_var_decl& x) const {
+ +
2720  }
+
2721  void operator()(const vector_var_decl& x) const {
+ +
2723  }
+
2724  void operator()(const row_vector_var_decl& x) const {
+ +
2726  }
+
2727  void operator()(const matrix_var_decl& x) const {
+ +
2729  }
+
2730  void operator()(const unit_vector_var_decl& x) const {
+ +
2732  }
+
2733  void operator()(const simplex_var_decl& x) const {
+ +
2735  }
+
2736  void operator()(const ordered_var_decl& x) const {
+ +
2738  }
+
2739  void operator()(const positive_ordered_var_decl& x) const {
+ +
2741  }
+
2742  void operator()(const cholesky_factor_var_decl& x) const {
+ +
2744  }
+
2745  void operator()(const cov_matrix_var_decl& x) const {
+ +
2747  }
+
2748  void operator()(const corr_matrix_var_decl& x) const {
+ +
2750  }
+
2751  void
+
2752  generate_param_names(const std::string& name) const {
+
2753  o_ << INDENT2
+
2754  << "names__.push_back(\"" << name << "\");"
+
2755  << EOL;
+
2756  }
+
2757  };
+
2758 
+
2759 
+ +
2761  std::ostream& o) {
+
2762  write_param_names_visgen vis(o);
+
2763  o << EOL << INDENT
+
2764  << "void get_param_names(std::vector<std::string>& names__) const {"
+
2765  << EOL;
+
2766 
+
2767  o << INDENT2
+
2768  << "names__.resize(0);"
+
2769  << EOL;
+
2770 
+
2771  // parameters
+
2772  for (size_t i = 0; i < prog.parameter_decl_.size(); ++i) {
+
2773  boost::apply_visitor(vis,prog.parameter_decl_[i].decl_);
+
2774  }
+
2775  // transformed parameters
+
2776  for (size_t i = 0; i < prog.derived_decl_.first.size(); ++i) {
+
2777  boost::apply_visitor(vis,prog.derived_decl_.first[i].decl_);
+
2778  }
+
2779  // generated quantities
+
2780  for (size_t i = 0; i < prog.generated_decl_.first.size(); ++i) {
+
2781  boost::apply_visitor(vis,prog.generated_decl_.first[i].decl_);
+
2782  }
+
2783 
+
2784  o << INDENT << "}" << EOL2;
+
2785  }
+
2786 
+
2787 
+
2788 
+
2789  // see write_csv_visgen for similar structure
+ +
2791  write_csv_header_visgen(std::ostream& o)
+
2792  : visgen(o) {
+
2793  }
+
2794  void operator()(const nil& /*x*/) const { }
+
2795  void operator()(const int_var_decl& x) const {
+ +
2797  }
+
2798  void operator()(const double_var_decl& x) const {
+ +
2800  }
+
2801  void operator()(const vector_var_decl& x) const {
+
2802  std::vector<expression> matrix_args;
+
2803  matrix_args.push_back(x.M_);
+
2804  generate_csv_header_array(matrix_args,x.name_,x.dims_);
+
2805  }
+
2806  void operator()(const row_vector_var_decl& x) const {
+
2807  std::vector<expression> matrix_args;
+
2808  matrix_args.push_back(x.N_);
+
2809  generate_csv_header_array(matrix_args,x.name_,x.dims_);
+
2810  }
+
2811  void operator()(const matrix_var_decl& x) const {
+
2812  std::vector<expression> matrix_args;
+
2813  matrix_args.push_back(x.M_);
+
2814  matrix_args.push_back(x.N_);
+
2815  generate_csv_header_array(matrix_args,x.name_,x.dims_);
+
2816  }
+
2817  void operator()(const unit_vector_var_decl& x) const {
+
2818  std::vector<expression> matrix_args;
+
2819  matrix_args.push_back(x.K_);
+
2820  generate_csv_header_array(matrix_args,x.name_,x.dims_);
+
2821  }
+
2822  void operator()(const simplex_var_decl& x) const {
+
2823  std::vector<expression> matrix_args;
+
2824  matrix_args.push_back(x.K_);
+
2825  generate_csv_header_array(matrix_args,x.name_,x.dims_);
+
2826  }
+
2827  void operator()(const ordered_var_decl& x) const {
+
2828  std::vector<expression> matrix_args;
+
2829  matrix_args.push_back(x.K_);
+
2830  generate_csv_header_array(matrix_args,x.name_,x.dims_);
+
2831  }
+
2832  void operator()(const positive_ordered_var_decl& x) const {
+
2833  std::vector<expression> matrix_args;
+
2834  matrix_args.push_back(x.K_);
+
2835  generate_csv_header_array(matrix_args,x.name_,x.dims_);
+
2836  }
+
2837  void operator()(const cholesky_factor_var_decl& x) const {
+
2838  std::vector<expression> matrix_args;
+
2839  matrix_args.push_back(x.M_);
+
2840  matrix_args.push_back(x.N_);
+
2841  generate_csv_header_array(matrix_args,x.name_,x.dims_);
+
2842  }
+
2843  void operator()(const cov_matrix_var_decl& x) const {
+
2844  std::vector<expression> matrix_args;
+
2845  matrix_args.push_back(x.K_);
+
2846  matrix_args.push_back(x.K_);
+
2847  generate_csv_header_array(matrix_args,x.name_,x.dims_);
+
2848  }
+
2849  void operator()(const corr_matrix_var_decl& x) const {
+
2850  std::vector<expression> matrix_args;
+
2851  matrix_args.push_back(x.K_);
+
2852  matrix_args.push_back(x.K_);
+
2853  generate_csv_header_array(matrix_args,x.name_,x.dims_);
+
2854  }
+
2855  void
+
2856  generate_csv_header_array(const std::vector<expression>& matrix_dims,
+
2857  const std::string& name,
+
2858  const std::vector<expression>& dims) const {
+
2859 
+
2860  // begin for loop dims
+
2861  std::vector<expression> combo_dims(dims);
+
2862  for (size_t i = 0; i < matrix_dims.size(); ++i)
+
2863  combo_dims.push_back(matrix_dims[i]);
+
2864 
+
2865  for (size_t i = combo_dims.size(); i-- > 0; ) {
+
2866  generate_indent(1 + combo_dims.size() - i,o_);
+
2867  o_ << "for (int k_" << i << "__ = 1;"
+
2868  << " k_" << i << "__ <= ";
+
2869  generate_expression(combo_dims[i].expr_,o_);
+
2870  o_ << "; ++k_" << i << "__) {" << EOL; // begin (1)
+
2871  }
+
2872 
+
2873  // variable + indices
+
2874  generate_indent(2 + combo_dims.size(),o_);
+
2875  o_ << "writer__.comma();" << EOL; // only writes comma after first call
+
2876 
+
2877  generate_indent(2 + combo_dims.size(),o_);
+
2878  o_ << "o__ << \"" << name << '"';
+
2879  for (size_t i = 0; i < combo_dims.size(); ++i)
+
2880  o_ << " << '.' << k_" << i << "__";
+
2881  o_ << ';' << EOL;
+
2882 
+
2883  // end for loop dims
+
2884  for (size_t i = 0; i < combo_dims.size(); ++i) {
+
2885  generate_indent(1 + combo_dims.size() - i,o_);
+
2886  o_ << "}" << EOL; // end (1)
+
2887  }
+
2888  }
+
2889  // void
+
2890  // generate_csv_header_array(const std::vector<expression>& matrix_dims,
+
2891  // const std::string& name,
+
2892  // const std::vector<expression>& dims) const {
+
2893 
+
2894  // // begin for loop dims
+
2895  // std::vector<expression> combo_dims(dims);
+
2896  // for (size_t i = 0; i < matrix_dims.size(); ++i)
+
2897  // combo_dims.push_back(matrix_dims[i]);
+
2898 
+
2899  // for (size_t i = 0; i < combo_dims.size(); ++i) {
+
2900  // generate_indent(2 + i,o_);
+
2901  // o_ << "for (int k_" << i << "__ = 1;"
+
2902  // << " k_" << i << "__ <= ";
+
2903  // generate_expression(combo_dims[i].expr_,o_);
+
2904  // o_ << "; ++k_" << i << "__) {" << EOL; // begin (1)
+
2905  // }
+
2906 
+
2907  // // variable + indices
+
2908  // generate_indent(2 + combo_dims.size(),o_);
+
2909  // o_ << "writer__.comma();" << EOL; // only writes comma after first call
+
2910 
+
2911  // generate_indent(2 + combo_dims.size(),o_);
+
2912  // o_ << "o__ << \"" << name << '"';
+
2913  // for (size_t i = 0; i < combo_dims.size(); ++i)
+
2914  // o_ << " << '.' << k_" << i << "__";
+
2915  // o_ << ';' << EOL;
+
2916 
+
2917  // // end for loop dims
+
2918  // for (size_t i = 0; i < combo_dims.size(); ++i) {
+
2919  // generate_indent(1 + combo_dims.size() - i,o_);
+
2920  // o_ << "}" << EOL; // end (1)
+
2921  // }
+
2922  // }
+
2923  };
+
2924 
+
2925 
+ +
2927  std::ostream& o) {
+
2928  write_csv_header_visgen vis(o);
+
2929  o << EOL << INDENT << "void write_csv_header(std::ostream& o__) const {" << EOL;
+
2930  o << INDENT2 << "stan::io::csv_writer writer__(o__);" << EOL;
+
2931 
+
2932  // parameters
+
2933  for (size_t i = 0; i < prog.parameter_decl_.size(); ++i) {
+
2934  boost::apply_visitor(vis,prog.parameter_decl_[i].decl_);
+
2935  }
+
2936  // transformed parameters
+
2937  for (size_t i = 0; i < prog.derived_decl_.first.size(); ++i) {
+
2938  boost::apply_visitor(vis,prog.derived_decl_.first[i].decl_);
+
2939  }
+
2940  // generated quantities
+
2941  for (size_t i = 0; i < prog.generated_decl_.first.size(); ++i) {
+
2942  boost::apply_visitor(vis,prog.generated_decl_.first[i].decl_);
+
2943  }
+
2944  o << INDENT2 << "writer__.newline();" << EOL;
+
2945  o << INDENT << "}" << EOL2;
+
2946  }
+
2947 
+
2948  // see write_csv_visgen for similar structure
+ + +
2951  : visgen(o) {
+
2952  }
+
2953  void operator()(const nil& /*x*/) const { }
+
2954  void operator()(const int_var_decl& x) const {
+ +
2956  }
+
2957  void operator()(const double_var_decl& x) const {
+ +
2959  }
+
2960  void operator()(const vector_var_decl& x) const {
+
2961  std::vector<expression> matrix_args;
+
2962  matrix_args.push_back(x.M_);
+
2963  generate_param_names_array(matrix_args,x.name_,x.dims_);
+
2964  }
+
2965  void operator()(const row_vector_var_decl& x) const {
+
2966  std::vector<expression> matrix_args;
+
2967  matrix_args.push_back(x.N_);
+
2968  generate_param_names_array(matrix_args,x.name_,x.dims_);
+
2969  }
+
2970  void operator()(const matrix_var_decl& x) const {
+
2971  std::vector<expression> matrix_args;
+
2972  matrix_args.push_back(x.M_);
+
2973  matrix_args.push_back(x.N_);
+
2974  generate_param_names_array(matrix_args,x.name_,x.dims_);
+
2975  }
+
2976  void operator()(const unit_vector_var_decl& x) const {
+
2977  std::vector<expression> matrix_args;
+
2978  matrix_args.push_back(x.K_);
+
2979  generate_param_names_array(matrix_args,x.name_,x.dims_);
+
2980  }
+
2981  void operator()(const simplex_var_decl& x) const {
+
2982  std::vector<expression> matrix_args;
+
2983  matrix_args.push_back(x.K_);
+
2984  generate_param_names_array(matrix_args,x.name_,x.dims_);
+
2985  }
+
2986  void operator()(const ordered_var_decl& x) const {
+
2987  std::vector<expression> matrix_args;
+
2988  matrix_args.push_back(x.K_);
+
2989  generate_param_names_array(matrix_args,x.name_,x.dims_);
+
2990  }
+
2991  void operator()(const positive_ordered_var_decl& x) const {
+
2992  std::vector<expression> matrix_args;
+
2993  matrix_args.push_back(x.K_);
+
2994  generate_param_names_array(matrix_args,x.name_,x.dims_);
+
2995  }
+
2996  void operator()(const cholesky_factor_var_decl& x) const {
+
2997  std::vector<expression> matrix_args;
+
2998  matrix_args.push_back(x.M_);
+
2999  matrix_args.push_back(x.N_);
+
3000  generate_param_names_array(matrix_args,x.name_,x.dims_);
+
3001  }
+
3002  void operator()(const cov_matrix_var_decl& x) const {
+
3003  std::vector<expression> matrix_args;
+
3004  matrix_args.push_back(x.K_);
+
3005  matrix_args.push_back(x.K_);
+
3006  generate_param_names_array(matrix_args,x.name_,x.dims_);
+
3007  }
+
3008  void operator()(const corr_matrix_var_decl& x) const {
+
3009  std::vector<expression> matrix_args;
+
3010  matrix_args.push_back(x.K_);
+
3011  matrix_args.push_back(x.K_);
+
3012  generate_param_names_array(matrix_args,x.name_,x.dims_);
+
3013  }
+
3014  void
+
3015  generate_param_names_array(const std::vector<expression>& matrix_dims,
+
3016  const std::string& name,
+
3017  const std::vector<expression>& dims) const {
+
3018 
+
3019  // begin for loop dims
+
3020  std::vector<expression> combo_dims(dims);
+
3021  for (size_t i = 0; i < matrix_dims.size(); ++i)
+
3022  combo_dims.push_back(matrix_dims[i]);
+
3023 
+
3024  for (size_t i = combo_dims.size(); i-- > 0; ) {
+
3025  generate_indent(1 + combo_dims.size() - i,o_);
+
3026  o_ << "for (int k_" << i << "__ = 1;"
+
3027  << " k_" << i << "__ <= ";
+
3028  generate_expression(combo_dims[i].expr_,o_);
+
3029  o_ << "; ++k_" << i << "__) {" << EOL; // begin (1)
+
3030  }
+
3031 
+
3032  generate_indent(2 + combo_dims.size(),o_);
+
3033  o_ << "param_name_stream__.str(std::string());" << EOL;
+
3034 
+
3035  generate_indent(2 + combo_dims.size(),o_);
+
3036  o_ << "param_name_stream__ << \"" << name << '"';
+
3037 
+
3038  for (size_t i = 0; i < combo_dims.size(); ++i)
+
3039  o_ << " << '.' << k_" << i << "__";
+
3040  o_ << ';' << EOL;
+
3041 
+
3042  generate_indent(2 + combo_dims.size(),o_);
+
3043  o_ << "param_names__.push_back(param_name_stream__.str());" << EOL;
+
3044 
+
3045  // end for loop dims
+
3046  for (size_t i = 0; i < combo_dims.size(); ++i) {
+
3047  generate_indent(1 + combo_dims.size() - i,o_);
+
3048  o_ << "}" << EOL; // end (1)
+
3049  }
+
3050  }
+
3051 
+
3052  };
+
3053 
+
3054 
+ +
3056  std::ostream& o) {
+
3057  o << EOL << INDENT
+
3058  << "void constrained_param_names(std::vector<std::string>& param_names__,"
+
3059  << EOL << INDENT
+
3060  << " bool include_tparams__ = true,"
+
3061  << EOL << INDENT
+
3062  << " bool include_gqs__ = true) const {"
+
3063  << EOL << INDENT2
+
3064  << "std::stringstream param_name_stream__;" << EOL;
+
3065 
+ +
3067  // parameters
+
3068  for (size_t i = 0; i < prog.parameter_decl_.size(); ++i) {
+
3069  boost::apply_visitor(vis,prog.parameter_decl_[i].decl_);
+
3070  }
+
3071 
+
3072  o << EOL << INDENT2
+
3073  << "if (!include_gqs__ && !include_tparams__) return;"
+
3074  << EOL;
+
3075 
+
3076  // transformed parameters
+
3077  for (size_t i = 0; i < prog.derived_decl_.first.size(); ++i) {
+
3078  boost::apply_visitor(vis,prog.derived_decl_.first[i].decl_);
+
3079  }
+
3080 
+
3081  o << EOL << INDENT2
+
3082  << "if (!include_gqs__) return;"
+
3083  << EOL;
+
3084 
+
3085  // generated quantities
+
3086  for (size_t i = 0; i < prog.generated_decl_.first.size(); ++i) {
+
3087  boost::apply_visitor(vis,prog.generated_decl_.first[i].decl_);
+
3088  }
+
3089 
+
3090  o << INDENT << "}" << EOL2;
+
3091  }
+
3092 
+
3093  // see write_csv_visgen for similar structure
+ + +
3096  : visgen(o) {
+
3097  }
+
3098  void operator()(const nil& /*x*/) const { }
+
3099  void operator()(const int_var_decl& x) const {
+ +
3101  }
+
3102  void operator()(const double_var_decl& x) const {
+ +
3104  }
+
3105  void operator()(const vector_var_decl& x) const {
+
3106  std::vector<expression> matrix_args;
+
3107  matrix_args.push_back(x.M_);
+
3108  generate_param_names_array(matrix_args,x.name_,x.dims_);
+
3109  }
+
3110  void operator()(const row_vector_var_decl& x) const {
+
3111  std::vector<expression> matrix_args;
+
3112  matrix_args.push_back(x.N_);
+
3113  generate_param_names_array(matrix_args,x.name_,x.dims_);
+
3114  }
+
3115  void operator()(const matrix_var_decl& x) const {
+
3116  std::vector<expression> matrix_args;
+
3117  matrix_args.push_back(x.M_);
+
3118  matrix_args.push_back(x.N_);
+
3119  generate_param_names_array(matrix_args,x.name_,x.dims_);
+
3120  }
+
3121  void operator()(const unit_vector_var_decl& x) const {
+
3122  std::vector<expression> matrix_args;
+
3123  matrix_args.push_back(binary_op(x.K_,"-",int_literal(1)));
+
3124  generate_param_names_array(matrix_args,x.name_,x.dims_);
+
3125  }
+
3126  void operator()(const simplex_var_decl& x) const {
+
3127  std::vector<expression> matrix_args;
+
3128  matrix_args.push_back(binary_op(x.K_,"-",int_literal(1)));
+
3129  generate_param_names_array(matrix_args,x.name_,x.dims_);
+
3130  }
+
3131  void operator()(const ordered_var_decl& x) const {
+
3132  std::vector<expression> matrix_args;
+
3133  matrix_args.push_back(x.K_);
+
3134  generate_param_names_array(matrix_args,x.name_,x.dims_);
+
3135  }
+
3136  void operator()(const positive_ordered_var_decl& x) const {
+
3137  std::vector<expression> matrix_args;
+
3138  matrix_args.push_back(x.K_);
+
3139  generate_param_names_array(matrix_args,x.name_,x.dims_);
+
3140  }
+
3141  void operator()(const cholesky_factor_var_decl& x) const {
+
3142  // FIXME: cut-and-paste of cov_matrix
+
3143  std::vector<expression> matrix_args;
+
3144  // (N * (N + 1)) / 2 + (M - N) * N
+
3145  matrix_args.push_back(binary_op(binary_op(binary_op(x.N_,
+
3146  "*",
+
3147  binary_op(x.N_,
+
3148  "+",
+
3149  int_literal(1))),
+
3150  "/",
+
3151  int_literal(2)),
+
3152  "+",
+ +
3154  "-",
+
3155  x.N_),
+
3156  "*",
+
3157  x.N_)));
+
3158  generate_param_names_array(matrix_args,x.name_,x.dims_);
+
3159  }
+
3160  void operator()(const cov_matrix_var_decl& x) const {
+
3161  std::vector<expression> matrix_args;
+
3162  matrix_args.push_back(binary_op(x.K_,
+
3163  "+",
+ +
3165  "*",
+
3166  binary_op(x.K_,
+
3167  "-",
+
3168  int_literal(1))),
+
3169  "/",
+
3170  int_literal(2))));
+
3171  generate_param_names_array(matrix_args,x.name_,x.dims_);
+
3172  }
+
3173  void operator()(const corr_matrix_var_decl& x) const {
+
3174  std::vector<expression> matrix_args;
+
3175  matrix_args.push_back(binary_op(binary_op(x.K_,
+
3176  "*",
+
3177  binary_op(x.K_,
+
3178  "-",
+
3179  int_literal(1))),
+
3180  "/",
+
3181  int_literal(2)));
+
3182  generate_param_names_array(matrix_args,x.name_,x.dims_);
+
3183  }
+
3184  // FIXME: sharing instead of cut-and-paste from constrained
+
3185  void
+
3186  generate_param_names_array(const std::vector<expression>& matrix_dims,
+
3187  const std::string& name,
+
3188  const std::vector<expression>& dims) const {
+
3189 
+
3190  // begin for loop dims
+
3191  std::vector<expression> combo_dims(dims);
+
3192  for (size_t i = 0; i < matrix_dims.size(); ++i)
+
3193  combo_dims.push_back(matrix_dims[i]);
+
3194 
+
3195  for (size_t i = combo_dims.size(); i-- > 0; ) {
+
3196  generate_indent(1 + combo_dims.size() - i,o_);
+
3197  o_ << "for (int k_" << i << "__ = 1;"
+
3198  << " k_" << i << "__ <= ";
+
3199  generate_expression(combo_dims[i].expr_,o_);
+
3200  o_ << "; ++k_" << i << "__) {" << EOL; // begin (1)
+
3201  }
+
3202 
+
3203  generate_indent(2 + combo_dims.size(),o_);
+
3204  o_ << "param_name_stream__.str(std::string());" << EOL;
+
3205 
+
3206  generate_indent(2 + combo_dims.size(),o_);
+
3207  o_ << "param_name_stream__ << \"" << name << '"';
+
3208 
+
3209  for (size_t i = 0; i < combo_dims.size(); ++i)
+
3210  o_ << " << '.' << k_" << i << "__";
+
3211  o_ << ';' << EOL;
+
3212 
+
3213  generate_indent(2 + combo_dims.size(),o_);
+
3214  o_ << "param_names__.push_back(param_name_stream__.str());" << EOL;
+
3215 
+
3216  // end for loop dims
+
3217  for (size_t i = 0; i < combo_dims.size(); ++i) {
+
3218  generate_indent(1 + combo_dims.size() - i,o_);
+
3219  o_ << "}" << EOL; // end (1)
+
3220  }
+
3221  }
+
3222  };
+
3223 
+
3224 
+ +
3226  std::ostream& o) {
+
3227  o << EOL << INDENT
+
3228  << "void unconstrained_param_names(std::vector<std::string>& param_names__,"
+
3229  << EOL << INDENT
+
3230  << " bool include_tparams__ = true,"
+
3231  << EOL << INDENT
+
3232  << " bool include_gqs__ = true) const {"
+
3233  << EOL << INDENT2
+
3234  << "std::stringstream param_name_stream__;" << EOL;
+
3235 
+ +
3237  // parameters
+
3238  for (size_t i = 0; i < prog.parameter_decl_.size(); ++i) {
+
3239  boost::apply_visitor(vis,prog.parameter_decl_[i].decl_);
+
3240  }
+
3241 
+
3242  o << EOL << INDENT2
+
3243  << "if (!include_gqs__ && !include_tparams__) return;"
+
3244  << EOL;
+
3245 
+
3246  // transformed parameters
+
3247  for (size_t i = 0; i < prog.derived_decl_.first.size(); ++i) {
+
3248  boost::apply_visitor(vis,prog.derived_decl_.first[i].decl_);
+
3249  }
+
3250 
+
3251  o << EOL << INDENT2
+
3252  << "if (!include_gqs__) return;"
+
3253  << EOL;
+
3254 
+
3255  // generated quantities
+
3256  for (size_t i = 0; i < prog.generated_decl_.first.size(); ++i) {
+
3257  boost::apply_visitor(vis,prog.generated_decl_.first[i].decl_);
+
3258  }
+
3259 
+
3260  o << INDENT << "}" << EOL2;
+
3261  }
+
3262 
+
3263 
+
3264  // see init_member_var_visgen for cut & paste
+
3265  struct write_csv_visgen : public visgen {
+
3266  write_csv_visgen(std::ostream& o)
+
3267  : visgen(o) {
+
3268  }
+
3269  template <typename D>
+
3270  void generate_initialize_array_bounded(const D& x, const std::string& base_type,
+
3271  const std::string& read_fun_prefix,
+
3272  const std::vector<expression>& dim_args) const {
+
3273  std::vector<expression> read_args;
+
3274  std::string read_fun(read_fun_prefix);
+
3275  if (has_lub(x)) {
+
3276  read_fun += "_lub";
+
3277  read_args.push_back(x.range_.low_);
+
3278  read_args.push_back(x.range_.high_);
+
3279  } else if (has_lb(x)) {
+
3280  read_fun += "_lb";
+
3281  read_args.push_back(x.range_.low_);
+
3282  } else if (has_ub(x)) {
+
3283  read_fun += "_ub";
+
3284  read_args.push_back(x.range_.high_);
+
3285  }
+
3286  for (size_t i = 0; i < dim_args.size(); ++i)
+
3287  read_args.push_back(dim_args[i]);
+
3288  generate_initialize_array(base_type,read_fun,read_args,x.name_,x.dims_);
+
3289  }
+
3290  void operator()(const nil& /*x*/) const { }
+
3291  void operator()(const int_var_decl& x) const {
+ +
3293  x.name_,x.dims_);
+
3294  }
+
3295  void operator()(const double_var_decl& x) const {
+
3296  std::vector<expression> read_args;
+
3297  generate_initialize_array_bounded(x,"double","scalar",read_args);
+
3298  }
+
3299  void operator()(const vector_var_decl& x) const {
+
3300  std::vector<expression> read_args;
+
3301  read_args.push_back(x.M_);
+
3302  generate_initialize_array_bounded(x,"vector_d","vector",read_args);
+
3303  }
+
3304  void operator()(const row_vector_var_decl& x) const {
+
3305  std::vector<expression> read_args;
+
3306  read_args.push_back(x.N_);
+
3307  generate_initialize_array_bounded(x,"row_vector_d","row_vector",read_args);
+
3308  }
+
3309  void operator()(const matrix_var_decl& x) const {
+
3310  std::vector<expression> read_args;
+
3311  read_args.push_back(x.M_);
+
3312  read_args.push_back(x.N_);
+
3313  generate_initialize_array_bounded(x,"matrix_d","matrix",read_args);
+
3314  }
+
3315  void operator()(const unit_vector_var_decl& x) const {
+
3316  std::vector<expression> read_args;
+
3317  read_args.push_back(x.K_);
+
3318  generate_initialize_array("vector_d","unit_vector",read_args,x.name_,x.dims_);
+
3319  }
+
3320  void operator()(const simplex_var_decl& x) const {
+
3321  std::vector<expression> read_args;
+
3322  read_args.push_back(x.K_);
+
3323  generate_initialize_array("vector_d","simplex",read_args,x.name_,x.dims_);
+
3324  }
+
3325  void operator()(const ordered_var_decl& x) const {
+
3326  std::vector<expression> read_args;
+
3327  read_args.push_back(x.K_);
+
3328  generate_initialize_array("vector_d","ordered",read_args,x.name_,x.dims_);
+
3329  }
+
3330  void operator()(const positive_ordered_var_decl& x) const {
+
3331  std::vector<expression> read_args;
+
3332  read_args.push_back(x.K_);
+
3333  generate_initialize_array("vector_d","positive_ordered",read_args,x.name_,x.dims_);
+
3334  }
+
3335  void operator()(const cholesky_factor_var_decl& x) const {
+
3336  std::vector<expression> read_args;
+
3337  read_args.push_back(x.M_);
+
3338  read_args.push_back(x.N_);
+
3339  generate_initialize_array("matrix_d","cholesky_factor",read_args,x.name_,x.dims_);
+
3340  }
+
3341  void operator()(const cov_matrix_var_decl& x) const {
+
3342  std::vector<expression> read_args;
+
3343  read_args.push_back(x.K_);
+
3344  generate_initialize_array("matrix_d","cov_matrix",read_args,x.name_,x.dims_);
+
3345  }
+
3346  void operator()(const corr_matrix_var_decl& x) const {
+
3347  std::vector<expression> read_args;
+
3348  read_args.push_back(x.K_);
+
3349  generate_initialize_array("matrix_d","corr_matrix",read_args,x.name_,x.dims_);
+
3350  }
+
3351  void generate_initialize_array(const std::string& var_type,
+
3352  const std::string& read_type,
+
3353  const std::vector<expression>& read_args,
+
3354  const std::string& name,
+
3355  const std::vector<expression>& dims) const {
+
3356  if (dims.size() == 0) {
+
3357  generate_indent(2,o_);
+
3358  o_ << var_type << " ";
+
3359  o_ << name << " = in__." << read_type << "_constrain(";
+
3360  for (size_t j = 0; j < read_args.size(); ++j) {
+
3361  if (j > 0) o_ << ",";
+
3362  generate_expression(read_args[j],o_);
+
3363  }
+
3364  o_ << ");" << EOL;
+
3365  o_ << INDENT2 << "writer__.write(" << name << ");" << EOL;
+
3366  return;
+
3367  }
+
3368  o_ << INDENT2;
+
3369  for (size_t i = 0; i < dims.size(); ++i) o_ << "vector<";
+
3370  o_ << var_type;
+
3371  for (size_t i = 0; i < dims.size(); ++i) o_ << "> ";
+
3372  o_ << name << ";" << EOL;
+
3373  std::string name_dims(name);
+
3374  for (size_t i = 0; i < dims.size(); ++i) {
+
3375  generate_indent(i + 2, o_);
+
3376  o_ << "size_t dim_" << name << "_" << i << "__ = ";
+
3377  generate_expression(dims[i],o_);
+
3378  o_ << ";" << EOL;
+
3379  if (i < dims.size() - 1) {
+
3380  generate_indent(i + 2, o_);
+
3381  o_ << name_dims << ".resize(dim_" << name << "_" << i << "__);"
+
3382  << EOL;
+
3383  name_dims.append("[k_").append(to_string(i)).append("__]");
+
3384  }
+
3385  generate_indent(i + 2, o_);
+
3386  o_ << "for (size_t k_" << i << "__ = 0;"
+
3387  << " k_" << i << "__ < dim_" << name << "_" << i << "__;"
+
3388  << " ++k_" << i << "__) {" << EOL;
+
3389  if (i == dims.size() - 1) {
+
3390  generate_indent(i + 3, o_);
+
3391  o_ << name_dims << ".push_back(in__." << read_type << "_constrain(";
+
3392  for (size_t j = 0; j < read_args.size(); ++j) {
+
3393  if (j > 0) o_ << ",";
+
3394  generate_expression(read_args[j],o_);
+
3395  }
+
3396  o_ << "));" << EOL;
+
3397  }
+
3398  }
+
3399  generate_indent(dims.size() + 2, o_);
+
3400  o_ << "writer__.write(" << name;
+
3401  if (dims.size() > 0) {
+
3402  o_ << '[';
+
3403  for (size_t i = 0; i < dims.size(); ++i) {
+
3404  if (i > 0) o_ << "][";
+
3405  o_ << "k_" << i << "__";
+
3406  }
+
3407  o_ << ']';
+
3408  }
+
3409  o_ << ");" << EOL;
+
3410 
+
3411  for (size_t i = dims.size(); i > 0; --i) {
+
3412  generate_indent(i + 1, o_);
+
3413  o_ << "}" << EOL;
+
3414  }
+
3415  }
+
3416  };
+
3417 
+
3418 
+
3419 
+
3420 
+
3421  struct write_csv_vars_visgen : public visgen {
+
3422  write_csv_vars_visgen(std::ostream& o)
+
3423  : visgen(o) {
+
3424  }
+
3425  void operator()(const nil& /*x*/) const { }
+
3426  // FIXME: template these out
+
3427  void operator()(const int_var_decl& x) const {
+
3428  write_array(x.name_,x.dims_);
+
3429  }
+
3430  void operator()(const double_var_decl& x) const {
+
3431  write_array(x.name_,x.dims_);
+
3432  }
+
3433  void operator()(const vector_var_decl& x) const {
+
3434  write_array(x.name_,x.dims_);
+
3435  }
+
3436  void operator()(const row_vector_var_decl& x) const {
+
3437  write_array(x.name_,x.dims_);
+
3438  }
+
3439  void operator()(const matrix_var_decl& x) const {
+
3440  write_array(x.name_,x.dims_);
+
3441  }
+
3442  void operator()(const unit_vector_var_decl& x) const {
+
3443  write_array(x.name_,x.dims_);
+
3444  }
+
3445  void operator()(const simplex_var_decl& x) const {
+
3446  write_array(x.name_,x.dims_);
+
3447  }
+
3448  void operator()(const ordered_var_decl& x) const {
+
3449  write_array(x.name_,x.dims_);
+
3450  }
+
3451  void operator()(const positive_ordered_var_decl& x) const {
+
3452  write_array(x.name_,x.dims_);
+
3453  }
+
3454  void operator()(const cholesky_factor_var_decl& x) const {
+
3455  write_array(x.name_,x.dims_);
+
3456  }
+
3457  void operator()(const cov_matrix_var_decl& x) const {
+
3458  write_array(x.name_,x.dims_);
+
3459  }
+
3460  void operator()(const corr_matrix_var_decl& x) const {
+
3461  write_array(x.name_,x.dims_);
+
3462  }
+
3463  void write_array(const std::string& name,
+
3464  const std::vector<expression>& dims) const {
+
3465  if (dims.size() == 0) {
+
3466  o_ << INDENT2 << "writer__.write(" << name << ");" << EOL;
+
3467  return;
+
3468  }
+
3469  for (size_t i = 0; i < dims.size(); ++i) {
+
3470  generate_indent(i + 2, o_);
+
3471  o_ << "for (int k_" << i << "__ = 0;"
+
3472  << " k_" << i << "__ < ";
+
3473  generate_expression(dims[i],o_);
+
3474  o_ << "; ++k_" << i << "__) {" << EOL;
+
3475  }
+
3476 
+
3477  generate_indent(dims.size() + 2, o_);
+
3478  o_ << "writer__.write(" << name;
+
3479  if (dims.size() > 0) {
+
3480  o_ << '[';
+
3481  for (size_t i = 0; i < dims.size(); ++i) {
+
3482  if (i > 0) o_ << "][";
+
3483  o_ << "k_" << i << "__";
+
3484  }
+
3485  o_ << ']';
+
3486  }
+
3487  o_ << ");" << EOL;
+
3488 
+
3489  for (size_t i = dims.size(); i > 0; --i) {
+
3490  generate_indent(i + 1, o_);
+
3491  o_ << "}" << EOL;
+
3492  }
+
3493  }
+
3494  };
+
3495 
+
3496 
+ +
3498  const std::string& model_name,
+
3499  std::ostream& o) {
+
3500  o << INDENT << "template <typename RNG>" << EOL;
+
3501  o << INDENT << "void write_csv(RNG& base_rng__," << EOL;
+
3502  o << INDENT << " std::vector<double>& params_r__," << EOL;
+
3503  o << INDENT << " std::vector<int>& params_i__," << EOL;
+
3504  o << INDENT << " std::ostream& o__," << EOL;
+
3505  o << INDENT << " std::ostream* pstream__ = 0) const {" << EOL;
+
3506  o << INDENT2 << "stan::io::reader<double> in__(params_r__,params_i__);"
+
3507  << EOL;
+
3508  o << INDENT2 << "stan::io::csv_writer writer__(o__);" << EOL;
+
3509  o << INDENT2 << "static const char* function__ = \""
+
3510  << model_name << "_namespace::write_csv(%1%)\";" << EOL;
+
3511  suppress_warning(INDENT2, "function__", o);
+
3512 
+
3513  // declares, reads, and writes parameters
+
3514  generate_comment("read-transform, write parameters",2,o);
+
3515  write_csv_visgen vis(o);
+
3516  for (size_t i = 0; i < prog.parameter_decl_.size(); ++i)
+
3517  boost::apply_visitor(vis,prog.parameter_decl_[i].decl_);
+
3518 
+
3519  // this is for all other values
+
3520  write_csv_vars_visgen vis_writer(o);
+
3521 
+
3522  // parameters are guaranteed to satisfy constraints
+
3523 
+
3524  o << EOL;
+
3525  generate_comment("declare, define and validate transformed parameters",
+
3526  2,o);
+
3527  o << INDENT2 << "double lp__ = 0.0;" << EOL;
+
3528  suppress_warning(INDENT2, "lp__", o);
+
3529  o << INDENT2 << "stan::math::accumulator<double> lp_accum__;" << EOL2;
+
3530  bool is_var = false;
+
3531  generate_local_var_decls(prog.derived_decl_.first,2,o,is_var);
+
3532  o << EOL;
+
3533  bool include_sampling = false;
+
3534  generate_statements(prog.derived_decl_.second,2,o,include_sampling,is_var);
+
3535  o << EOL;
+
3536 
+ +
3538  o << EOL;
+
3539 
+
3540  generate_comment("write transformed parameters",2,o);
+
3541  for (size_t i = 0; i < prog.derived_decl_.first.size(); ++i)
+
3542  boost::apply_visitor(vis_writer, prog.derived_decl_.first[i].decl_);
+
3543  o << EOL;
+
3544 
+
3545  generate_comment("declare and define generated quantities",2,o);
+
3546  generate_local_var_decls(prog.generated_decl_.first,2,o,is_var);
+
3547  o << EOL;
+
3548  generate_statements(prog.generated_decl_.second,2,o,include_sampling,is_var);
+
3549  o << EOL;
+
3550 
+
3551  generate_comment("validate generated quantities",2,o);
+ +
3553  o << EOL;
+
3554 
+
3555  generate_comment("write generated quantities",2,o);
+
3556  for (size_t i = 0; i < prog.generated_decl_.first.size(); ++i)
+
3557  boost::apply_visitor(vis_writer, prog.generated_decl_.first[i].decl_);
+
3558  if (prog.generated_decl_.first.size() > 0)
+
3559  o << EOL;
+
3560 
+
3561  o << INDENT2 << "writer__.newline();" << EOL;
+
3562  o << INDENT << "}" << EOL2;
+
3563 
+
3564  o << INDENT << "template <typename RNG>" << EOL;
+
3565  o << INDENT << "void write_csv(RNG& base_rng," << EOL;
+
3566  o << INDENT << " Eigen::Matrix<double,Eigen::Dynamic,1>& params_r," << EOL;
+
3567  o << INDENT << " std::ostream& o," << EOL;
+
3568  o << INDENT << " std::ostream* pstream = 0) const {" << EOL;
+
3569  o << INDENT << " std::vector<double> params_r_vec(params_r.size());" << EOL;
+
3570  o << INDENT << " for (int i = 0; i < params_r.size(); ++i)" << EOL;
+
3571  o << INDENT << " params_r_vec[i] = params_r(i);" << EOL;
+
3572  o << INDENT << " std::vector<int> params_i_vec; // dummy" << EOL;
+
3573  o << INDENT << " write_csv(base_rng, params_r_vec, params_i_vec, o, pstream);" << EOL;
+
3574  o << INDENT << "}" << EOL2;
+
3575  }
+
3576 
+
3577 
+
3578  // see init_member_var_visgen for cut & paste
+
3579  struct write_array_visgen : public visgen {
+
3580  write_array_visgen(std::ostream& o)
+
3581  : visgen(o) {
+
3582  }
+
3583  void operator()(const nil& /*x*/) const { }
+
3584  void operator()(const int_var_decl& x) const {
+ +
3586  x.name_,x.dims_);
+
3587  }
+
3588  // fixme -- reuse cut-and-pasted from other lub reader case
+
3589  template <typename D>
+
3590  void generate_initialize_array_bounded(const D& x, const std::string& base_type,
+
3591  const std::string& read_fun_prefix,
+
3592  const std::vector<expression>& dim_args) const {
+
3593  std::vector<expression> read_args;
+
3594  std::string read_fun(read_fun_prefix);
+
3595  if (has_lub(x)) {
+
3596  read_fun += "_lub";
+
3597  read_args.push_back(x.range_.low_);
+
3598  read_args.push_back(x.range_.high_);
+
3599  } else if (has_lb(x)) {
+
3600  read_fun += "_lb";
+
3601  read_args.push_back(x.range_.low_);
+
3602  } else if (has_ub(x)) {
+
3603  read_fun += "_ub";
+
3604  read_args.push_back(x.range_.high_);
+
3605  }
+
3606  for (size_t i = 0; i < dim_args.size(); ++i)
+
3607  read_args.push_back(dim_args[i]);
+
3608  generate_initialize_array(base_type,read_fun,read_args,x.name_,x.dims_);
+
3609  }
+
3610 
+
3611  void operator()(const double_var_decl& x) const {
+
3612  std::vector<expression> read_args;
+
3613  generate_initialize_array_bounded(x,"double","scalar",read_args);
+
3614  }
+
3615  void operator()(const vector_var_decl& x) const {
+
3616  std::vector<expression> read_args;
+
3617  read_args.push_back(x.M_);
+
3618  generate_initialize_array_bounded(x,"vector_d","vector",read_args);
+
3619  }
+
3620  void operator()(const row_vector_var_decl& x) const {
+
3621  std::vector<expression> read_args;
+
3622  read_args.push_back(x.N_);
+
3623  generate_initialize_array_bounded(x,"row_vector_d","row_vector",read_args);
+
3624  }
+
3625  void operator()(const matrix_var_decl& x) const {
+
3626  std::vector<expression> read_args;
+
3627  read_args.push_back(x.M_);
+
3628  read_args.push_back(x.N_);
+
3629  generate_initialize_array_bounded(x,"matrix_d","matrix",read_args);
+
3630  }
+
3631  void operator()(const unit_vector_var_decl& x) const {
+
3632  std::vector<expression> read_args;
+
3633  read_args.push_back(x.K_);
+
3634  generate_initialize_array("vector_d","unit_vector",read_args,x.name_,x.dims_);
+
3635  }
+
3636  void operator()(const simplex_var_decl& x) const {
+
3637  std::vector<expression> read_args;
+
3638  read_args.push_back(x.K_);
+
3639  generate_initialize_array("vector_d","simplex",read_args,x.name_,x.dims_);
+
3640  }
+
3641  void operator()(const ordered_var_decl& x) const {
+
3642  std::vector<expression> read_args;
+
3643  read_args.push_back(x.K_);
+
3644  generate_initialize_array("vector_d","ordered",read_args,x.name_,x.dims_);
+
3645  }
+
3646  void operator()(const positive_ordered_var_decl& x) const {
+
3647  std::vector<expression> read_args;
+
3648  read_args.push_back(x.K_);
+
3649  generate_initialize_array("vector_d","positive_ordered",read_args,x.name_,x.dims_);
+
3650  }
+
3651  void operator()(const cholesky_factor_var_decl& x) const {
+
3652  std::vector<expression> read_args;
+
3653  read_args.push_back(x.M_);
+
3654  read_args.push_back(x.N_);
+
3655  generate_initialize_array("matrix_d","cholesky_factor",read_args,x.name_,x.dims_);
+
3656  }
+
3657  void operator()(const cov_matrix_var_decl& x) const {
+
3658  std::vector<expression> read_args;
+
3659  read_args.push_back(x.K_);
+
3660  generate_initialize_array("matrix_d","cov_matrix",read_args,x.name_,x.dims_);
+
3661  }
+
3662  void operator()(const corr_matrix_var_decl& x) const {
+
3663  std::vector<expression> read_args;
+
3664  read_args.push_back(x.K_);
+
3665  generate_initialize_array("matrix_d","corr_matrix",read_args,x.name_,x.dims_);
+
3666  }
+
3667  void generate_initialize_array(const std::string& var_type,
+
3668  const std::string& read_type,
+
3669  const std::vector<expression>& read_args,
+
3670  const std::string& name,
+
3671  const std::vector<expression>& dims) const {
+
3672  if (dims.size() == 0) {
+
3673  generate_indent(2,o_);
+
3674  o_ << var_type << " ";
+
3675  o_ << name << " = in__." << read_type << "_constrain(";
+
3676  for (size_t j = 0; j < read_args.size(); ++j) {
+
3677  if (j > 0) o_ << ",";
+
3678  generate_expression(read_args[j],o_);
+
3679  }
+
3680  o_ << ");" << EOL;
+
3681  return;
+
3682  }
+
3683  o_ << INDENT2;
+
3684  for (size_t i = 0; i < dims.size(); ++i) o_ << "vector<";
+
3685  o_ << var_type;
+
3686  for (size_t i = 0; i < dims.size(); ++i) o_ << "> ";
+
3687  o_ << name << ";" << EOL;
+
3688  std::string name_dims(name);
+
3689  for (size_t i = 0; i < dims.size(); ++i) {
+
3690  generate_indent(i + 2, o_);
+
3691  o_ << "size_t dim_" << name << "_" << i << "__ = ";
+
3692  generate_expression(dims[i],o_);
+
3693  o_ << ";" << EOL;
+
3694  if (i < dims.size() - 1) {
+
3695  generate_indent(i + 2, o_);
+
3696  o_ << name_dims << ".resize(dim_" << name << "_" << i << "__);"
+
3697  << EOL;
+
3698  name_dims.append("[k_").append(to_string(i)).append("__]");
+
3699  }
+
3700  generate_indent(i + 2, o_);
+
3701  o_ << "for (size_t k_" << i << "__ = 0;"
+
3702  << " k_" << i << "__ < dim_" << name << "_" << i << "__;"
+
3703  << " ++k_" << i << "__) {" << EOL;
+
3704  if (i == dims.size() - 1) {
+
3705  generate_indent(i + 3, o_);
+
3706  o_ << name_dims << ".push_back(in__." << read_type << "_constrain(";
+
3707  for (size_t j = 0; j < read_args.size(); ++j) {
+
3708  if (j > 0) o_ << ",";
+
3709  generate_expression(read_args[j],o_);
+
3710  }
+
3711  o_ << "));" << EOL;
+
3712  }
+
3713  }
+
3714 
+
3715  for (size_t i = dims.size(); i > 0; --i) {
+
3716  generate_indent(i + 1, o_);
+
3717  o_ << "}" << EOL;
+
3718  }
+
3719 
+
3720 
+
3721  }
+
3722  };
+
3723 
+
3724 
+
3725 
+
3726 
+ +
3728  write_array_vars_visgen(std::ostream& o)
+
3729  : visgen(o) {
+
3730  }
+
3731  void operator()(const nil& /*x*/) const { }
+
3732  // FIXME: template these out
+
3733  void operator()(const int_var_decl& x) const {
+ +
3735  }
+
3736  void operator()(const double_var_decl& x) const {
+ +
3738  }
+
3739  void operator()(const vector_var_decl& x) const {
+
3740  std::vector<expression> dims(x.dims_);
+
3741  dims.push_back(x.M_);
+ +
3743  }
+
3744  void operator()(const row_vector_var_decl& x) const {
+
3745  std::vector<expression> dims(x.dims_);
+
3746  dims.push_back(x.N_);
+ +
3748  }
+
3749  void operator()(const matrix_var_decl& x) const {
+
3750  std::vector<expression> matdims;
+
3751  matdims.push_back(x.M_);
+
3752  matdims.push_back(x.N_);
+
3753  write_array(x.name_,x.dims_,matdims);
+
3754  }
+
3755  void operator()(const unit_vector_var_decl& x) const {
+
3756  std::vector<expression> dims(x.dims_);
+
3757  dims.push_back(x.K_);
+ +
3759  }
+
3760  void operator()(const simplex_var_decl& x) const {
+
3761  std::vector<expression> dims(x.dims_);
+
3762  dims.push_back(x.K_);
+ +
3764  }
+
3765  void operator()(const ordered_var_decl& x) const {
+
3766  std::vector<expression> dims(x.dims_);
+
3767  dims.push_back(x.K_);
+ +
3769  }
+
3770  void operator()(const positive_ordered_var_decl& x) const {
+
3771  std::vector<expression> dims(x.dims_);
+
3772  dims.push_back(x.K_);
+ +
3774  }
+
3775  void operator()(const cholesky_factor_var_decl& x) const {
+
3776  std::vector<expression> matdims;
+
3777  matdims.push_back(x.M_);
+
3778  matdims.push_back(x.N_);
+
3779  write_array(x.name_,x.dims_,matdims);
+
3780  }
+
3781  void operator()(const cov_matrix_var_decl& x) const {
+
3782  std::vector<expression> matdims;
+
3783  matdims.push_back(x.K_);
+
3784  matdims.push_back(x.K_);
+
3785  write_array(x.name_,x.dims_,matdims);
+
3786  }
+
3787  void operator()(const corr_matrix_var_decl& x) const {
+
3788  std::vector<expression> matdims;
+
3789  matdims.push_back(x.K_);
+
3790  matdims.push_back(x.K_);
+
3791  write_array(x.name_,x.dims_,matdims);
+
3792  }
+
3793  void write_array(const std::string& name,
+
3794  const std::vector<expression>& arraydims,
+
3795  const std::vector<expression>& matdims) const {
+
3796 
+
3797  std::vector<expression> dims(arraydims);
+
3798  for (size_t i = 0; i < matdims.size(); ++i)
+
3799  dims.push_back(matdims[i]);
+
3800 
+
3801  if (dims.size() == 0) {
+
3802  o_ << INDENT2 << "vars__.push_back(" << name << ");" << EOL;
+
3803  return;
+
3804  }
+
3805 
+
3806  // for (size_t i = 0; i < dims.size(); ++i) {
+
3807  for (size_t i = dims.size(); i > 0; ) {
+
3808  --i;
+
3809  generate_indent((dims.size() - i) + 1, o_);
+
3810  o_ << "for (int k_" << i << "__ = 0;"
+
3811  << " k_" << i << "__ < ";
+
3812  generate_expression(dims[i],o_);
+
3813  o_ << "; ++k_" << i << "__) {" << EOL;
+
3814  }
+
3815 
+
3816  generate_indent(dims.size() + 2, o_);
+
3817  o_ << "vars__.push_back(" << name;
+
3818  if (arraydims.size() > 0) {
+
3819  o_ << '[';
+
3820  for (size_t i = 0; i < arraydims.size(); ++i) {
+
3821  if (i > 0) o_ << "][";
+
3822  o_ << "k_" << i << "__";
+
3823  }
+
3824  o_ << ']';
+
3825  }
+
3826  if (matdims.size() > 0) {
+
3827  o_ << "(k_" << arraydims.size() << "__";
+
3828  if (matdims.size() > 1)
+
3829  o_ << ", k_" << (arraydims.size() + 1) << "__";
+
3830  o_ << ")";
+
3831  }
+
3832  o_ << ");" << EOL;
+
3833 
+
3834  for (size_t i = dims.size(); i > 0; --i) {
+
3835  generate_indent(i + 1, o_);
+
3836  o_ << "}" << EOL;
+
3837  }
+
3838  }
+
3839  };
+
3840 
+
3841 
+ +
3843  const std::string& model_name,
+
3844  std::ostream& o) {
+
3845  o << INDENT << "template <typename RNG>" << EOL;
+
3846  o << INDENT << "void write_array(RNG& base_rng__," << EOL;
+
3847  o << INDENT << " std::vector<double>& params_r__," << EOL;
+
3848  o << INDENT << " std::vector<int>& params_i__," << EOL;
+
3849  o << INDENT << " std::vector<double>& vars__," << EOL;
+
3850  o << INDENT << " bool include_tparams__ = true," << EOL;
+
3851  o << INDENT << " bool include_gqs__ = true," << EOL;
+
3852  o << INDENT << " std::ostream* pstream__ = 0) const {" << EOL;
+
3853  o << INDENT2 << "vars__.resize(0);" << EOL;
+
3854  o << INDENT2 << "stan::io::reader<double> in__(params_r__,params_i__);" << EOL;
+
3855  o << INDENT2 << "static const char* function__ = \""
+
3856  << model_name << "_namespace::write_array(%1%)\";" << EOL;
+
3857  suppress_warning(INDENT2, "function__", o);
+
3858 
+
3859  // declares, reads, and sets parameters
+
3860  generate_comment("read-transform, write parameters",2,o);
+
3861  write_array_visgen vis(o);
+
3862  for (size_t i = 0; i < prog.parameter_decl_.size(); ++i)
+
3863  boost::apply_visitor(vis,prog.parameter_decl_[i].decl_);
+
3864 
+
3865  // this is for all other values
+
3866  write_array_vars_visgen vis_writer(o);
+
3867 
+
3868  // writes parameters
+
3869  for (size_t i = 0; i < prog.parameter_decl_.size(); ++i)
+
3870  boost::apply_visitor(vis_writer,prog.parameter_decl_[i].decl_);
+
3871  o << EOL;
+
3872 
+
3873  o << INDENT2 << "if (!include_tparams__) return;"
+
3874  << EOL;
+
3875  generate_comment("declare and define transformed parameters",2,o);
+
3876  o << INDENT2 << "double lp__ = 0.0;" << EOL;
+
3877  suppress_warning(INDENT2, "lp__", o);
+
3878  o << INDENT2 << "stan::math::accumulator<double> lp_accum__;" << EOL2;
+
3879  bool is_var = false;
+
3880  generate_local_var_decls(prog.derived_decl_.first,2,o,is_var);
+
3881  o << EOL;
+
3882  bool include_sampling = false;
+
3883  generate_statements(prog.derived_decl_.second,2,o,include_sampling,is_var);
+
3884  o << EOL;
+
3885 
+
3886  generate_comment("validate transformed parameters",2,o);
+ +
3888  o << EOL;
+
3889 
+
3890  generate_comment("write transformed parameters",2,o);
+
3891  for (size_t i = 0; i < prog.derived_decl_.first.size(); ++i)
+
3892  boost::apply_visitor(vis_writer, prog.derived_decl_.first[i].decl_);
+
3893  o << EOL;
+
3894 
+
3895  o << INDENT2 << "if (!include_gqs__) return;"
+
3896  << EOL;
+
3897  generate_comment("declare and define generated quantities",2,o);
+
3898  generate_local_var_decls(prog.generated_decl_.first,2,o,is_var);
+
3899  o << EOL;
+
3900  generate_statements(prog.generated_decl_.second,2,o,include_sampling,is_var);
+
3901  o << EOL;
+
3902 
+
3903  generate_comment("validate generated quantities",2,o);
+ +
3905  o << EOL;
+
3906 
+
3907  generate_comment("write generated quantities",2,o);
+
3908  for (size_t i = 0; i < prog.generated_decl_.first.size(); ++i)
+
3909  boost::apply_visitor(vis_writer, prog.generated_decl_.first[i].decl_);
+
3910  if (prog.generated_decl_.first.size() > 0)
+
3911  o << EOL;
+
3912 
+
3913  o << INDENT << "}" << EOL2;
+
3914 
+
3915  o << INDENT << "template <typename RNG>" << EOL;
+
3916  o << INDENT << "void write_array(RNG& base_rng," << EOL;
+
3917  o << INDENT << " Eigen::Matrix<double,Eigen::Dynamic,1>& params_r," << EOL;
+
3918  o << INDENT << " Eigen::Matrix<double,Eigen::Dynamic,1>& vars," << EOL;
+
3919  o << INDENT << " bool include_tparams = true," << EOL;
+
3920  o << INDENT << " bool include_gqs = true," << EOL;
+
3921  o << INDENT << " std::ostream* pstream = 0) const {" << EOL;
+
3922  o << INDENT << " std::vector<double> params_r_vec(params_r.size());" << EOL;
+
3923  o << INDENT << " for (int i = 0; i < params_r.size(); ++i)" << EOL;
+
3924  o << INDENT << " params_r_vec[i] = params_r(i);" << EOL;
+
3925  o << INDENT << " std::vector<double> vars_vec;" << EOL;
+
3926  o << INDENT << " std::vector<int> params_i_vec;" << EOL;
+
3927  o << INDENT << " write_array(base_rng,params_r_vec,params_i_vec,vars_vec,include_tparams,include_gqs,pstream);" << EOL;
+
3928  o << INDENT << " vars.resize(vars_vec.size());" << EOL;
+
3929  o << INDENT << " for (int i = 0; i < vars.size(); ++i)" << EOL;
+
3930  o << INDENT << " vars(i) = vars_vec[i];" << EOL;
+
3931  o << INDENT << "}" << EOL2;
+
3932 
+
3933  }
+
3934 
+
3935 
+
3936  void generate_main(const std::string& model_name,
+
3937  std::ostream& out) {
+
3938  out << "int main(int argc, const char* argv[]) {" << EOL;
+
3939  out << INDENT << "try {" << EOL;
+
3940  out << INDENT2 << "return stan::gm::command<" << model_name
+
3941  << "_namespace::" << model_name << ">(argc,argv);" << EOL;
+
3942  out << INDENT << "} catch (const std::exception& e) {" << EOL;
+
3943  out << INDENT2
+
3944  << "std::cerr << std::endl << \"Exception: \" << e.what() << std::endl;"
+
3945  << EOL;
+
3946  out << INDENT2
+
3947  << "std::cerr << \"Diagnostic information: \" << std::endl << boost::diagnostic_information(e) << std::endl;"
+
3948  << EOL;
+
3949  out << INDENT2 << "return -1;" << EOL;
+
3950  out << INDENT << "}" << EOL;
+
3951 
+
3952  out << "}" << EOL2;
+
3953  }
+
3954 
+
3955  void generate_model_name_method(const std::string& model_name,
+
3956  std::ostream& out) {
+
3957  out << INDENT << "static std::string model_name() {" << EOL
+
3958  << INDENT2 << "return \"" << model_name << "\";" << EOL
+
3959  << INDENT << "}" << EOL2;
+
3960  }
+
3961 
+
3962  void generate_cpp(const program& prog,
+
3963  const std::string& model_name,
+
3964  std::ostream& out,
+
3965  bool include_main = true) {
+ +
3967  generate_includes(out);
+
3968  generate_start_namespace(model_name,out);
+
3969  generate_usings(out);
+
3970  generate_typedefs(out);
+
3971  generate_class_decl(model_name,out);
+
3972  generate_private_decl(out);
+ + +
3975  generate_public_decl(out);
+
3976  generate_constructor(prog,model_name,out);
+
3977  generate_destructor(model_name,out);
+
3978  // generate_set_param_ranges(prog.parameter_decl_,out);
+ +
3980  generate_log_prob(prog,out);
+
3981  generate_param_names_method(prog,out);
+
3982  generate_dims_method(prog,out);
+
3983  generate_write_array_method(prog,model_name,out);
+ +
3985  generate_write_csv_method(prog,model_name,out);
+
3986  generate_model_name_method(model_name,out);
+ + + + +
3991  if (include_main)
+
3992  generate_main(model_name,out);
+
3993  }
+
3994 
+
3995  }
+
3996 
+
3997 }
+
3998 
+
3999 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/get__base1_8hpp.html b/doc/api/html/get__base1_8hpp.html new file mode 100644 index 00000000000..c104cef8116 --- /dev/null +++ b/doc/api/html/get__base1_8hpp.html @@ -0,0 +1,177 @@ + + + + + +Stan: src/stan/math/matrix/get_base1.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
get_base1.hpp File Reference
+
+
+
#include <vector>
+#include <stan/math/matrix/Eigen.hpp>
+#include <stan/math/matrix/check_range.hpp>
+
+

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::math
 Matrices and templated mathematical functions.
 
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Functions

template<typename T >
const T & stan::math::get_base1 (const std::vector< T > &x, size_t i, const char *error_msg, size_t idx)
 Return a reference to the value of the specified vector at the specified base-one index.
 
template<typename T >
const T & stan::math::get_base1 (const std::vector< std::vector< T > > &x, size_t i1, size_t i2, const char *error_msg, size_t idx)
 Return a reference to the value of the specified vector at the specified base-one indexes.
 
template<typename T >
const T & stan::math::get_base1 (const std::vector< std::vector< std::vector< T > > > &x, size_t i1, size_t i2, size_t i3, const char *error_msg, size_t idx)
 Return a reference to the value of the specified vector at the specified base-one indexes.
 
template<typename T >
const T & stan::math::get_base1 (const std::vector< std::vector< std::vector< std::vector< T > > > > &x, size_t i1, size_t i2, size_t i3, size_t i4, const char *error_msg, size_t idx)
 Return a reference to the value of the specified vector at the specified base-one indexes.
 
template<typename T >
const T & stan::math::get_base1 (const std::vector< std::vector< std::vector< std::vector< std::vector< T > > > > > &x, size_t i1, size_t i2, size_t i3, size_t i4, size_t i5, const char *error_msg, size_t idx)
 Return a reference to the value of the specified vector at the specified base-one indexes.
 
template<typename T >
const T & stan::math::get_base1 (const std::vector< std::vector< std::vector< std::vector< std::vector< std::vector< T > > > > > > &x, size_t i1, size_t i2, size_t i3, size_t i4, size_t i5, size_t i6, const char *error_msg, size_t idx)
 Return a reference to the value of the specified vector at the specified base-one indexes.
 
template<typename T >
const T & stan::math::get_base1 (const std::vector< std::vector< std::vector< std::vector< std::vector< std::vector< std::vector< T > > > > > > > &x, size_t i1, size_t i2, size_t i3, size_t i4, size_t i5, size_t i6, size_t i7, const char *error_msg, size_t idx)
 Return a reference to the value of the specified vector at the specified base-one indexes.
 
template<typename T >
const T & stan::math::get_base1 (const std::vector< std::vector< std::vector< std::vector< std::vector< std::vector< std::vector< std::vector< T > > > > > > > > &x, size_t i1, size_t i2, size_t i3, size_t i4, size_t i5, size_t i6, size_t i7, size_t i8, const char *error_msg, size_t idx)
 Return a reference to the value of the specified vector at the specified base-one indexes.
 
template<typename T >
Eigen::Matrix< T,
+1, Eigen::Dynamic > 
stan::math::get_base1 (const Eigen::Matrix< T, Eigen::Dynamic, Eigen::Dynamic > &x, size_t m, const char *error_msg, size_t idx)
 Return a copy of the row of the specified vector at the specified base-one row index.
 
template<typename T >
const T & stan::math::get_base1 (const Eigen::Matrix< T, Eigen::Dynamic, Eigen::Dynamic > &x, size_t m, size_t n, const char *error_msg, size_t idx)
 Return a reference to the value of the specified matrix at the specified base-one row and column indexes.
 
template<typename T >
const T & stan::math::get_base1 (const Eigen::Matrix< T, Eigen::Dynamic, 1 > &x, size_t m, const char *error_msg, size_t idx)
 Return a reference to the value of the specified column vector at the specified base-one index.
 
template<typename T >
const T & stan::math::get_base1 (const Eigen::Matrix< T, 1, Eigen::Dynamic > &x, size_t n, const char *error_msg, size_t idx)
 Return a reference to the value of the specified row vector at the specified base-one index.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/get__base1_8hpp_source.html b/doc/api/html/get__base1_8hpp_source.html new file mode 100644 index 00000000000..23d07c9036f --- /dev/null +++ b/doc/api/html/get__base1_8hpp_source.html @@ -0,0 +1,274 @@ + + + + + +Stan: src/stan/math/matrix/get_base1.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
get_base1.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MATH__MATRIX__GET_BASE1_HPP__
+
2 #define __STAN__MATH__MATRIX__GET_BASE1_HPP__
+
3 
+
4 #include <vector>
+ + +
7 
+
8 namespace stan {
+
9  namespace math {
+
10 
+
25  template <typename T>
+
26  inline const T&
+
27  get_base1(const std::vector<T>& x,
+
28  size_t i,
+
29  const char* error_msg,
+
30  size_t idx) {
+
31  check_range(x.size(),i,error_msg,idx);
+
32  return x[i - 1];
+
33  }
+
34 
+
50  template <typename T>
+
51  inline const T&
+
52  get_base1(const std::vector<std::vector<T> >& x,
+
53  size_t i1,
+
54  size_t i2,
+
55  const char* error_msg,
+
56  size_t idx) {
+
57  check_range(x.size(),i1,error_msg,idx);
+
58  return get_base1(x[i1 - 1],i2,error_msg,idx+1);
+
59  }
+
60 
+
77  template <typename T>
+
78  inline const T&
+
79  get_base1(const std::vector<std::vector<std::vector<T> > >& x,
+
80  size_t i1,
+
81  size_t i2,
+
82  size_t i3,
+
83  const char* error_msg,
+
84  size_t idx) {
+
85  check_range(x.size(),i1,error_msg,idx);
+
86  return get_base1(x[i1 - 1],i2,i3,error_msg,idx+1);
+
87  }
+
88 
+
106  template <typename T>
+
107  inline const T&
+
108  get_base1(const std::vector<std::vector<std::vector<std::vector<T> > > >& x,
+
109  size_t i1,
+
110  size_t i2,
+
111  size_t i3,
+
112  size_t i4,
+
113  const char* error_msg,
+
114  size_t idx) {
+
115  check_range(x.size(),i1,error_msg,idx);
+
116  return get_base1(x[i1 - 1],i2,i3,i4,error_msg,idx+1);
+
117  }
+
118 
+
137  template <typename T>
+
138  inline const T&
+
139  get_base1(const std::vector<std::vector<std::vector<std::vector<std::vector<T> > > > >& x,
+
140  size_t i1,
+
141  size_t i2,
+
142  size_t i3,
+
143  size_t i4,
+
144  size_t i5,
+
145  const char* error_msg,
+
146  size_t idx) {
+
147  check_range(x.size(),i1,error_msg,idx);
+
148  return get_base1(x[i1 - 1],i2,i3,i4,i5,error_msg,idx+1);
+
149  }
+
150 
+
170  template <typename T>
+
171  inline const T&
+
172  get_base1(const std::vector<std::vector<std::vector<std::vector<std::vector<std::vector<T> > > > > >& x,
+
173  size_t i1,
+
174  size_t i2,
+
175  size_t i3,
+
176  size_t i4,
+
177  size_t i5,
+
178  size_t i6,
+
179  const char* error_msg,
+
180  size_t idx) {
+
181  check_range(x.size(),i1,error_msg,idx);
+
182  return get_base1(x[i1 - 1],i2,i3,i4,i5,i6,error_msg,idx+1);
+
183  }
+
184 
+
185 
+
206  template <typename T>
+
207  inline const T&
+
208  get_base1(const std::vector<std::vector<std::vector<std::vector<std::vector<std::vector<std::vector<T> > > > > > >& x,
+
209  size_t i1,
+
210  size_t i2,
+
211  size_t i3,
+
212  size_t i4,
+
213  size_t i5,
+
214  size_t i6,
+
215  size_t i7,
+
216  const char* error_msg,
+
217  size_t idx) {
+
218  check_range(x.size(),i1,error_msg,idx);
+
219  return get_base1(x[i1 - 1],i2,i3,i4,i5,i6,i7,error_msg,idx+1);
+
220  }
+
221 
+
222 
+
244  template <typename T>
+
245  inline const T&
+
246  get_base1(const std::vector<std::vector<std::vector<std::vector<std::vector<std::vector<std::vector<std::vector<T> > > > > > > >& x,
+
247  size_t i1,
+
248  size_t i2,
+
249  size_t i3,
+
250  size_t i4,
+
251  size_t i5,
+
252  size_t i6,
+
253  size_t i7,
+
254  size_t i8,
+
255  const char* error_msg,
+
256  size_t idx) {
+
257  check_range(x.size(),i1,error_msg,idx);
+
258  return get_base1(x[i1 - 1],i2,i3,i4,i5,i6,i7,i8,error_msg,idx+1);
+
259  }
+
260 
+
261 
+
262 
+
282  template <typename T>
+
283  inline Eigen::Matrix<T,1,Eigen::Dynamic>
+
284  get_base1(const Eigen::Matrix<T,Eigen::Dynamic,Eigen::Dynamic>& x,
+
285  size_t m,
+
286  const char* error_msg,
+
287  size_t idx) {
+
288  check_range(x.rows(),m,error_msg,idx);
+
289  return x.block(m-1,0,1,x.cols());
+
290  }
+
291 
+
308  template <typename T>
+
309  inline const T&
+
310  get_base1(const Eigen::Matrix<T,Eigen::Dynamic,Eigen::Dynamic>& x,
+
311  size_t m,
+
312  size_t n,
+
313  const char* error_msg,
+
314  size_t idx) {
+
315  check_range(x.rows(),m,error_msg,idx);
+
316  check_range(x.cols(),n,error_msg,idx + 1);
+
317  return x(m - 1, n - 1);
+
318  }
+
319 
+
334  template <typename T>
+
335  inline
+
336  const T& get_base1(const Eigen::Matrix<T,Eigen::Dynamic,1>& x,
+
337  size_t m,
+
338  const char* error_msg,
+
339  size_t idx) {
+
340  check_range(x.size(),m,error_msg,idx);
+
341  return x(m - 1);
+
342  }
+
343 
+
358  template <typename T>
+
359  inline const T&
+
360  get_base1(const Eigen::Matrix<T,1,Eigen::Dynamic>& x,
+
361  size_t n,
+
362  const char* error_msg,
+
363  size_t idx) {
+
364  check_range(x.size(),n,error_msg,idx);
+
365  return x(n - 1);
+
366  }
+
367 
+
368  }
+
369 }
+
370 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/get__base1__lhs_8hpp.html b/doc/api/html/get__base1__lhs_8hpp.html new file mode 100644 index 00000000000..9781e271b45 --- /dev/null +++ b/doc/api/html/get__base1__lhs_8hpp.html @@ -0,0 +1,177 @@ + + + + + +Stan: src/stan/math/matrix/get_base1_lhs.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
get_base1_lhs.hpp File Reference
+
+
+
#include <vector>
+#include <stan/math/matrix/Eigen.hpp>
+#include <stan/math/matrix/check_range.hpp>
+
+

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::math
 Matrices and templated mathematical functions.
 
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Functions

template<typename T >
T & stan::math::get_base1_lhs (std::vector< T > &x, size_t i, const char *error_msg, size_t idx)
 Return a reference to the value of the specified vector at the specified base-one index.
 
template<typename T >
T & stan::math::get_base1_lhs (std::vector< std::vector< T > > &x, size_t i1, size_t i2, const char *error_msg, size_t idx)
 Return a reference to the value of the specified vector at the specified base-one indexes.
 
template<typename T >
T & stan::math::get_base1_lhs (std::vector< std::vector< std::vector< T > > > &x, size_t i1, size_t i2, size_t i3, const char *error_msg, size_t idx)
 Return a reference to the value of the specified vector at the specified base-one indexes.
 
template<typename T >
T & stan::math::get_base1_lhs (std::vector< std::vector< std::vector< std::vector< T > > > > &x, size_t i1, size_t i2, size_t i3, size_t i4, const char *error_msg, size_t idx)
 Return a reference to the value of the specified vector at the specified base-one indexes.
 
template<typename T >
T & stan::math::get_base1_lhs (std::vector< std::vector< std::vector< std::vector< std::vector< T > > > > > &x, size_t i1, size_t i2, size_t i3, size_t i4, size_t i5, const char *error_msg, size_t idx)
 Return a reference to the value of the specified vector at the specified base-one indexes.
 
template<typename T >
T & stan::math::get_base1_lhs (std::vector< std::vector< std::vector< std::vector< std::vector< std::vector< T > > > > > > &x, size_t i1, size_t i2, size_t i3, size_t i4, size_t i5, size_t i6, const char *error_msg, size_t idx)
 Return a reference to the value of the specified vector at the specified base-one indexes.
 
template<typename T >
T & stan::math::get_base1_lhs (std::vector< std::vector< std::vector< std::vector< std::vector< std::vector< std::vector< T > > > > > > > &x, size_t i1, size_t i2, size_t i3, size_t i4, size_t i5, size_t i6, size_t i7, const char *error_msg, size_t idx)
 Return a reference to the value of the specified vector at the specified base-one indexes.
 
template<typename T >
T & stan::math::get_base1_lhs (std::vector< std::vector< std::vector< std::vector< std::vector< std::vector< std::vector< std::vector< T > > > > > > > > &x, size_t i1, size_t i2, size_t i3, size_t i4, size_t i5, size_t i6, size_t i7, size_t i8, const char *error_msg, size_t idx)
 Return a reference to the value of the specified vector at the specified base-one indexes.
 
template<typename T >
Eigen::Block< Eigen::Matrix< T,
+Eigen::Dynamic, Eigen::Dynamic > > 
stan::math::get_base1_lhs (Eigen::Matrix< T, Eigen::Dynamic, Eigen::Dynamic > &x, size_t m, const char *error_msg, size_t idx)
 Return a copy of the row of the specified vector at the specified base-one row index.
 
template<typename T >
T & stan::math::get_base1_lhs (Eigen::Matrix< T, Eigen::Dynamic, Eigen::Dynamic > &x, size_t m, size_t n, const char *error_msg, size_t idx)
 Return a reference to the value of the specified matrix at the specified base-one row and column indexes.
 
template<typename T >
T & stan::math::get_base1_lhs (Eigen::Matrix< T, Eigen::Dynamic, 1 > &x, size_t m, const char *error_msg, size_t idx)
 Return a reference to the value of the specified column vector at the specified base-one index.
 
template<typename T >
T & stan::math::get_base1_lhs (Eigen::Matrix< T, 1, Eigen::Dynamic > &x, size_t n, const char *error_msg, size_t idx)
 Return a reference to the value of the specified row vector at the specified base-one index.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/get__base1__lhs_8hpp_source.html b/doc/api/html/get__base1__lhs_8hpp_source.html new file mode 100644 index 00000000000..61d9de2bb28 --- /dev/null +++ b/doc/api/html/get__base1__lhs_8hpp_source.html @@ -0,0 +1,276 @@ + + + + + +Stan: src/stan/math/matrix/get_base1_lhs.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
get_base1_lhs.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MATH__MATRIX__GET_BASE1_LHS_HPP__
+
2 #define __STAN__MATH__MATRIX__GET_BASE1_LHS_HPP__
+
3 
+
4 #include <vector>
+ + +
7 
+
8 namespace stan {
+
9  namespace math {
+
10 
+
25  template <typename T>
+
26  inline
+
27  T& get_base1_lhs(std::vector<T>& x,
+
28  size_t i,
+
29  const char* error_msg,
+
30  size_t idx) {
+
31  check_range(x.size(),i,error_msg,idx);
+
32  return x[i - 1];
+
33  }
+
34 
+
50  template <typename T>
+
51  inline
+
52  T& get_base1_lhs(std::vector<std::vector<T> >& x,
+
53  size_t i1,
+
54  size_t i2,
+
55  const char* error_msg,
+
56  size_t idx) {
+
57  check_range(x.size(),i1,error_msg,idx);
+
58  return get_base1_lhs(x[i1 - 1],i2,error_msg,idx+1);
+
59  }
+
60 
+
77  template <typename T>
+
78  inline
+
79  T& get_base1_lhs(std::vector<std::vector<std::vector<T> > >& x,
+
80  size_t i1,
+
81  size_t i2,
+
82  size_t i3,
+
83  const char* error_msg,
+
84  size_t idx) {
+
85  check_range(x.size(),i1,error_msg,idx);
+
86  return get_base1_lhs(x[i1 - 1],i2,i3,error_msg,idx+1);
+
87  }
+
88 
+
106  template <typename T>
+
107  inline
+
108  T& get_base1_lhs(std::vector<std::vector<std::vector<std::vector<T> > > >& x,
+
109  size_t i1,
+
110  size_t i2,
+
111  size_t i3,
+
112  size_t i4,
+
113  const char* error_msg,
+
114  size_t idx) {
+
115  check_range(x.size(),i1,error_msg,idx);
+
116  return get_base1_lhs(x[i1 - 1],i2,i3,i4,error_msg,idx+1);
+
117  }
+
118 
+
137  template <typename T>
+
138  inline
+
139  T& get_base1_lhs(std::vector<std::vector<std::vector<std::vector<std::vector<T> > > > >& x,
+
140  size_t i1,
+
141  size_t i2,
+
142  size_t i3,
+
143  size_t i4,
+
144  size_t i5,
+
145  const char* error_msg,
+
146  size_t idx) {
+
147  check_range(x.size(),i1,error_msg,idx);
+
148  return get_base1_lhs(x[i1 - 1],i2,i3,i4,i5,error_msg,idx+1);
+
149  }
+
150 
+
170  template <typename T>
+
171  inline
+
172  T& get_base1_lhs(std::vector<std::vector<std::vector<std::vector<std::vector<std::vector<T> > > > > >& x,
+
173  size_t i1,
+
174  size_t i2,
+
175  size_t i3,
+
176  size_t i4,
+
177  size_t i5,
+
178  size_t i6,
+
179  const char* error_msg,
+
180  size_t idx) {
+
181  check_range(x.size(),i1,error_msg,idx);
+
182  return get_base1_lhs(x[i1 - 1],i2,i3,i4,i5,i6,error_msg,idx+1);
+
183  }
+
184 
+
185 
+
206  template <typename T>
+
207  inline
+
208  T& get_base1_lhs(std::vector<std::vector<std::vector<std::vector<std::vector<std::vector<std::vector<T> > > > > > >& x,
+
209  size_t i1,
+
210  size_t i2,
+
211  size_t i3,
+
212  size_t i4,
+
213  size_t i5,
+
214  size_t i6,
+
215  size_t i7,
+
216  const char* error_msg,
+
217  size_t idx) {
+
218  check_range(x.size(),i1,error_msg,idx);
+
219  return get_base1_lhs(x[i1 - 1],i2,i3,i4,i5,i6,i7,error_msg,idx+1);
+
220  }
+
221 
+
222 
+
244  template <typename T>
+
245  inline
+
246  T& get_base1_lhs(std::vector<std::vector<std::vector<std::vector<std::vector<std::vector<std::vector<std::vector<T> > > > > > > >& x,
+
247  size_t i1,
+
248  size_t i2,
+
249  size_t i3,
+
250  size_t i4,
+
251  size_t i5,
+
252  size_t i6,
+
253  size_t i7,
+
254  size_t i8,
+
255  const char* error_msg,
+
256  size_t idx) {
+
257  check_range(x.size(),i1,error_msg,idx);
+
258  return get_base1_lhs(x[i1 - 1],i2,i3,i4,i5,i6,i7,i8,error_msg,idx+1);
+
259  }
+
260 
+
261 
+
262 
+
282  template <typename T>
+
283  inline
+
284  Eigen::Block<Eigen::Matrix<T,Eigen::Dynamic,Eigen::Dynamic> >
+
285  get_base1_lhs(Eigen::Matrix<T,Eigen::Dynamic,Eigen::Dynamic>& x,
+
286  size_t m,
+
287  const char* error_msg,
+
288  size_t idx) {
+
289  check_range(x.rows(),m,error_msg,idx);
+
290  return x.block(m-1,0,1,x.cols());
+
291  }
+
292 
+
309  template <typename T>
+
310  inline
+
311  T& get_base1_lhs(Eigen::Matrix<T,Eigen::Dynamic,Eigen::Dynamic>& x,
+
312  size_t m,
+
313  size_t n,
+
314  const char* error_msg,
+
315  size_t idx) {
+
316  check_range(x.rows(),m,error_msg,idx);
+
317  check_range(x.cols(),n,error_msg,idx + 1);
+
318  return x(m - 1, n - 1);
+
319  }
+
320 
+
335  template <typename T>
+
336  inline
+
337  T& get_base1_lhs(Eigen::Matrix<T,Eigen::Dynamic,1>& x,
+
338  size_t m,
+
339  const char* error_msg,
+
340  size_t idx) {
+
341  check_range(x.size(),m,error_msg,idx);
+
342  return x(m - 1);
+
343 
+
344  }
+
345 
+
360  template <typename T>
+
361  inline
+
362  T& get_base1_lhs(Eigen::Matrix<T,1,Eigen::Dynamic>& x,
+
363  size_t n,
+
364  const char* error_msg,
+
365  size_t idx) {
+
366  check_range(x.size(),n,error_msg,idx);
+
367  return x(n - 1);
+
368  }
+
369 
+
370  }
+
371 }
+
372 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/globals.html b/doc/api/html/globals.html new file mode 100644 index 00000000000..1f87cf8c527 --- /dev/null +++ b/doc/api/html/globals.html @@ -0,0 +1,439 @@ + + + + + +Stan: File Members + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + +
+ + + + +
+ +
+ +
+
Here is a list of all file members with links to the files they belong to:
+ +

- _ -

+ + +

- a -

+ + +

- b -

+ + +

- c -

+ + +

- d -

+ + +

- e -

+ + +

- i -

+ + +

- l -

+ + +

- m -

+ + +

- n -

+ + +

- p -

+ + +

- s -

+ + +

- u -

+ + +

- v -

+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/globals_defs.html b/doc/api/html/globals_defs.html new file mode 100644 index 00000000000..89b6d205e4c --- /dev/null +++ b/doc/api/html/globals_defs.html @@ -0,0 +1,127 @@ + + + + + +Stan: File Members + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + +
+ + + + +
+ +
+ +
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/globals_func.html b/doc/api/html/globals_func.html new file mode 100644 index 00000000000..0b39a7d007b --- /dev/null +++ b/doc/api/html/globals_func.html @@ -0,0 +1,206 @@ + + + + + +Stan: File Members + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + +
+ + + + +
+ +
+ +
+  + +

- b -

+ + +

- c -

+ + +

- d -

+ + +

- i -

+ + +

- m -

+ + +

- n -

+ + +

- p -

+ + +

- s -

+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/globals_vars.html b/doc/api/html/globals_vars.html new file mode 100644 index 00000000000..de1ef68f464 --- /dev/null +++ b/doc/api/html/globals_vars.html @@ -0,0 +1,355 @@ + + + + + +Stan: File Members + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + +
+ + + + +
+ +
+ +
+  + +

- _ -

+ + +

- a -

+ + +

- b -

+ + +

- c -

+ + +

- d -

+ + +

- e -

+ + +

- i -

+ + +

- l -

+ + +

- m -

+ + +

- n -

+ + +

- s -

+ + +

- v -

+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/gm_8hpp.html b/doc/api/html/gm_8hpp.html new file mode 100644 index 00000000000..b08e7def4dc --- /dev/null +++ b/doc/api/html/gm_8hpp.html @@ -0,0 +1,111 @@ + + + + + +Stan: src/stan/gm.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
gm.hpp File Reference
+
+ +
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/gm_8hpp_source.html b/doc/api/html/gm_8hpp_source.html new file mode 100644 index 00000000000..a02dd7e1f6c --- /dev/null +++ b/doc/api/html/gm_8hpp_source.html @@ -0,0 +1,114 @@ + + + + + +Stan: src/stan/gm.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
gm.hpp
+
+
+Go to the documentation of this file.
1 #ifndef STAN_GM_HPP
+
2 #define STAN_GM_HPP
+
3 
+
4 #include <stan/gm/ast.hpp>
+
5 #include <stan/gm/command.hpp>
+
6 
+
7 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/grad_8hpp.html b/doc/api/html/grad_8hpp.html new file mode 100644 index 00000000000..8ca7a157437 --- /dev/null +++ b/doc/api/html/grad_8hpp.html @@ -0,0 +1,130 @@ + + + + + +Stan: src/stan/agrad/rev/matrix/grad.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
grad.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+ + + +

+Functions

void stan::agrad::grad (var &v, Eigen::Matrix< var, Eigen::Dynamic, 1 > &x, Eigen::VectorXd &g)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/grad_8hpp_source.html b/doc/api/html/grad_8hpp_source.html new file mode 100644 index 00000000000..4009a2deacd --- /dev/null +++ b/doc/api/html/grad_8hpp_source.html @@ -0,0 +1,133 @@ + + + + + +Stan: src/stan/agrad/rev/matrix/grad.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
grad.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__REV__MATRIX__GRAD_HPP__
+
2 #define __STAN__AGRAD__REV__MATRIX__GRAD_HPP__
+
3 
+
4 
+ + +
7 #include <stan/agrad/rev/var.hpp>
+
8 
+
9 namespace stan {
+
10 
+
11  namespace agrad {
+
12 
+
13  void grad(var& v,
+
14  Eigen::Matrix<var,Eigen::Dynamic,1>& x,
+
15  Eigen::VectorXd& g) {
+ +
17  g.resize(x.size());
+
18  for (int i = 0; i < x.size(); ++i)
+
19  g(i) = x(i).vi_->adj_;
+ +
21  }
+
22 
+
23  }
+
24 }
+
25 
+
26 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/gumbel_8hpp.html b/doc/api/html/gumbel_8hpp.html new file mode 100644 index 00000000000..80a694fadb5 --- /dev/null +++ b/doc/api/html/gumbel_8hpp.html @@ -0,0 +1,157 @@ + + + + + +Stan: src/stan/prob/distributions/univariate/continuous/gumbel.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
gumbel.hpp File Reference
+
+
+
#include <boost/random/uniform_01.hpp>
+#include <boost/random/variate_generator.hpp>
+#include <stan/agrad/partials_vari.hpp>
+#include <stan/math/error_handling.hpp>
+#include <stan/meta/traits.hpp>
+#include <stan/prob/constants.hpp>
+#include <stan/prob/traits.hpp>
+#include <stan/prob/internal_math.hpp>
+#include <stan/math/functions/value_of.hpp>
+
+

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::prob
 Templated probability distributions.
 
+ + + + + + + + + + + + + + + + + + + +

+Functions

template<bool propto, typename T_y , typename T_loc , typename T_scale >
return_type< T_y, T_loc,
+T_scale >::type 
stan::prob::gumbel_log (const T_y &y, const T_loc &mu, const T_scale &beta)
 
template<typename T_y , typename T_loc , typename T_scale >
return_type< T_y, T_loc,
+T_scale >::type 
stan::prob::gumbel_log (const T_y &y, const T_loc &mu, const T_scale &beta)
 
template<typename T_y , typename T_loc , typename T_scale >
return_type< T_y, T_loc,
+T_scale >::type 
stan::prob::gumbel_cdf (const T_y &y, const T_loc &mu, const T_scale &beta)
 
template<typename T_y , typename T_loc , typename T_scale >
return_type< T_y, T_loc,
+T_scale >::type 
stan::prob::gumbel_cdf_log (const T_y &y, const T_loc &mu, const T_scale &beta)
 
template<typename T_y , typename T_loc , typename T_scale >
return_type< T_y, T_loc,
+T_scale >::type 
stan::prob::gumbel_ccdf_log (const T_y &y, const T_loc &mu, const T_scale &beta)
 
template<class RNG >
double stan::prob::gumbel_rng (const double mu, const double beta, RNG &rng)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/gumbel_8hpp_source.html b/doc/api/html/gumbel_8hpp_source.html new file mode 100644 index 00000000000..eed473ead18 --- /dev/null +++ b/doc/api/html/gumbel_8hpp_source.html @@ -0,0 +1,440 @@ + + + + + +Stan: src/stan/prob/distributions/univariate/continuous/gumbel.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
gumbel.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__PROB__DISTRIBUTIONS__UNIVARIATE__CONTINUOUS__GUMBEL_HPP__
+
2 #define __STAN__PROB__DISTRIBUTIONS__UNIVARIATE__CONTINUOUS__GUMBEL_HPP__
+
3 
+
4 #include <boost/random/uniform_01.hpp>
+
5 #include <boost/random/variate_generator.hpp>
+
6 
+ + +
9 #include <stan/meta/traits.hpp>
+
10 #include <stan/prob/constants.hpp>
+
11 #include <stan/prob/traits.hpp>
+ + +
14 
+
15 namespace stan {
+
16 
+
17  namespace prob {
+
18 
+
19  template <bool propto, typename T_y, typename T_loc, typename T_scale>
+
20  typename return_type<T_y,T_loc,T_scale>::type
+
21  gumbel_log(const T_y& y, const T_loc& mu, const T_scale& beta) {
+
22  static const char* function = "stan::prob::gumbel_log(%1%)";
+
23 
+
24  using std::log;
+
25  using std::exp;
+ + + + + + + +
33 
+
34  // check if any vectors are zero length
+
35  if (!(stan::length(y)
+
36  && stan::length(mu)
+
37  && stan::length(beta)))
+
38  return 0.0;
+
39 
+
40  // set up return value accumulator
+
41  double logp(0.0);
+
42 
+
43  // validate args (here done over var, which should be OK)
+
44  if (!check_not_nan(function, y, "Random variable", &logp))
+
45  return logp;
+
46  if (!check_finite(function, mu, "Location parameter",
+
47  &logp))
+
48  return logp;
+
49  if (!check_positive(function, beta, "Scale parameter",
+
50  &logp))
+
51  return logp;
+
52  if (!(check_consistent_sizes(function,
+
53  y,mu,beta,
+
54  "Random variable","Location parameter","Scale parameter",
+
55  &logp)))
+
56  return logp;
+
57 
+
58  // check if no variables are involved and prop-to
+ +
60  return 0.0;
+
61 
+
62  // set up template expressions wrapping scalars into vector views
+ +
64  operands_and_partials(y, mu, beta);
+
65 
+
66  VectorView<const T_y> y_vec(y);
+
67  VectorView<const T_loc> mu_vec(mu);
+
68  VectorView<const T_scale> beta_vec(beta);
+
69  size_t N = max_size(y, mu, beta);
+
70 
+ + +
73  is_vector<T_scale>::value> log_beta(length(beta));
+
74  for (size_t i = 0; i < length(beta); i++) {
+
75  inv_beta[i] = 1.0 / value_of(beta_vec[i]);
+ +
77  log_beta[i] = log(value_of(beta_vec[i]));
+
78  }
+
79 
+
80  for (size_t n = 0; n < N; n++) {
+
81  // pull out values of arguments
+
82  const double y_dbl = value_of(y_vec[n]);
+
83  const double mu_dbl = value_of(mu_vec[n]);
+
84 
+
85  // reusable subexpression values
+
86  const double y_minus_mu_over_beta
+
87  = (y_dbl - mu_dbl) * inv_beta[n];
+
88 
+
89  // log probability
+ +
91  logp -= log_beta[n];
+ +
93  logp += -y_minus_mu_over_beta - exp(-y_minus_mu_over_beta);
+
94 
+
95  // gradients
+
96  double scaled_diff = inv_beta[n] * exp(-y_minus_mu_over_beta);
+ +
98  operands_and_partials.d_x1[n] -= inv_beta[n] - scaled_diff;
+ +
100  operands_and_partials.d_x2[n] += inv_beta[n] - scaled_diff;
+ +
102  operands_and_partials.d_x3[n]
+
103  += -inv_beta[n] + y_minus_mu_over_beta * inv_beta[n]
+
104  - scaled_diff * y_minus_mu_over_beta;
+
105  }
+
106  return operands_and_partials.to_var(logp);
+
107  }
+
108 
+
109  template <typename T_y, typename T_loc, typename T_scale>
+
110  inline
+ +
112  gumbel_log(const T_y& y, const T_loc& mu, const T_scale& beta) {
+
113  return gumbel_log<false>(y,mu,beta);
+
114  }
+
115 
+
116  template <typename T_y, typename T_loc, typename T_scale>
+ +
118  gumbel_cdf(const T_y& y, const T_loc& mu, const T_scale& beta) {
+
119  static const char* function = "stan::prob::gumbel_cdf(%1%)";
+
120 
+ + + + +
125  using stan::math::value_of;
+
126 
+
127  double cdf(1.0);
+
128  // check if any vectors are zero length
+
129  if (!(stan::length(y)
+
130  && stan::length(mu)
+
131  && stan::length(beta)))
+
132  return cdf;
+
133 
+
134  if (!check_not_nan(function, y, "Random variable", &cdf))
+
135  return cdf;
+
136  if (!check_finite(function, mu, "Location parameter", &cdf))
+
137  return cdf;
+
138  if (!check_not_nan(function, beta, "Scale parameter", &cdf))
+
139  return cdf;
+
140  if (!check_positive(function, beta, "Scale parameter", &cdf))
+
141  return cdf;
+
142  if (!(check_consistent_sizes(function, y,mu,beta,
+
143  "Random variable","Location parameter",
+
144  "Scale parameter", &cdf)))
+
145  return cdf;
+
146 
+ +
148  operands_and_partials(y, mu, beta);
+
149 
+
150  VectorView<const T_y> y_vec(y);
+
151  VectorView<const T_loc> mu_vec(mu);
+
152  VectorView<const T_scale> beta_vec(beta);
+
153  size_t N = max_size(y, mu, beta);
+
154 
+
155  for (size_t n = 0; n < N; n++) {
+
156  const double y_dbl = value_of(y_vec[n]);
+
157  const double mu_dbl = value_of(mu_vec[n]);
+
158  const double beta_dbl = value_of(beta_vec[n]);
+
159  const double scaled_diff = (y_dbl - mu_dbl) / beta_dbl;
+
160  const double rep_deriv = exp(-scaled_diff - exp(-scaled_diff))
+
161  / beta_dbl;
+
162  const double cdf_ = exp(-exp(-scaled_diff));
+
163  cdf *= cdf_;
+
164 
+ +
166  operands_and_partials.d_x1[n] += rep_deriv / cdf_;
+ +
168  operands_and_partials.d_x2[n] -= rep_deriv / cdf_;
+ +
170  operands_and_partials.d_x3[n] -= rep_deriv * scaled_diff / cdf_;
+
171  }
+
172 
+ +
174  for(size_t n = 0; n < stan::length(y); ++n)
+
175  operands_and_partials.d_x1[n] *= cdf;
+
176  }
+ +
178  for(size_t n = 0; n < stan::length(mu); ++n)
+
179  operands_and_partials.d_x2[n] *= cdf;
+
180  }
+ +
182  for(size_t n = 0; n < stan::length(beta); ++n)
+
183  operands_and_partials.d_x3[n] *= cdf;
+
184  }
+
185 
+
186  return operands_and_partials.to_var(cdf);
+
187  }
+
188 
+
189  template <typename T_y, typename T_loc, typename T_scale>
+ +
191  gumbel_cdf_log(const T_y& y, const T_loc& mu, const T_scale& beta) {
+
192  static const char* function = "stan::prob::gumbel_cdf_log(%1%)";
+
193 
+ + + + +
198  using stan::math::value_of;
+
199 
+
200  double cdf_log(0.0);
+
201  // check if any vectors are zero length
+
202  if (!(stan::length(y)
+
203  && stan::length(mu)
+
204  && stan::length(beta)))
+
205  return cdf_log;
+
206 
+
207  if (!check_not_nan(function, y, "Random variable", &cdf_log))
+
208  return cdf_log;
+
209  if (!check_finite(function, mu, "Location parameter", &cdf_log))
+
210  return cdf_log;
+
211  if (!check_not_nan(function, beta, "Scale parameter", &cdf_log))
+
212  return cdf_log;
+
213  if (!check_positive(function, beta, "Scale parameter", &cdf_log))
+
214  return cdf_log;
+
215  if (!(check_consistent_sizes(function, y,mu,beta,
+
216  "Random variable","Location parameter",
+
217  "Scale parameter", &cdf_log)))
+
218  return cdf_log;
+
219 
+ +
221  operands_and_partials(y, mu, beta);
+
222 
+
223  VectorView<const T_y> y_vec(y);
+
224  VectorView<const T_loc> mu_vec(mu);
+
225  VectorView<const T_scale> beta_vec(beta);
+
226  size_t N = max_size(y, mu, beta);
+
227 
+
228  for (size_t n = 0; n < N; n++) {
+
229  const double y_dbl = value_of(y_vec[n]);
+
230  const double mu_dbl = value_of(mu_vec[n]);
+
231  const double beta_dbl = value_of(beta_vec[n]);
+
232  const double scaled_diff = (y_dbl - mu_dbl) / beta_dbl;
+
233  const double rep_deriv = exp(-scaled_diff) / beta_dbl;
+
234  cdf_log -= exp(-scaled_diff);
+
235 
+ +
237  operands_and_partials.d_x1[n] += rep_deriv;
+ +
239  operands_and_partials.d_x2[n] -= rep_deriv;
+ +
241  operands_and_partials.d_x3[n] -= rep_deriv * scaled_diff;
+
242  }
+
243 
+
244  return operands_and_partials.to_var(cdf_log);
+
245  }
+
246 
+
247  template <typename T_y, typename T_loc, typename T_scale>
+ +
249  gumbel_ccdf_log(const T_y& y, const T_loc& mu, const T_scale& beta) {
+
250  static const char* function = "stan::prob::gumbel_ccdf_log(%1%)";
+
251 
+ + + + +
256  using stan::math::value_of;
+
257 
+
258  double ccdf_log(0.0);
+
259  // check if any vectors are zero length
+
260  if (!(stan::length(y)
+
261  && stan::length(mu)
+
262  && stan::length(beta)))
+
263  return ccdf_log;
+
264 
+
265  if (!check_not_nan(function, y, "Random variable", &ccdf_log))
+
266  return ccdf_log;
+
267  if (!check_finite(function, mu, "Location parameter", &ccdf_log))
+
268  return ccdf_log;
+
269  if (!check_not_nan(function, beta, "Scale parameter", &ccdf_log))
+
270  return ccdf_log;
+
271  if (!check_positive(function, beta, "Scale parameter", &ccdf_log))
+
272  return ccdf_log;
+
273  if (!(check_consistent_sizes(function, y,mu,beta,
+
274  "Random variable","Location parameter",
+
275  "Scale parameter", &ccdf_log)))
+
276  return ccdf_log;
+
277 
+ +
279  operands_and_partials(y, mu, beta);
+
280 
+
281  VectorView<const T_y> y_vec(y);
+
282  VectorView<const T_loc> mu_vec(mu);
+
283  VectorView<const T_scale> beta_vec(beta);
+
284  size_t N = max_size(y, mu, beta);
+
285 
+
286  for (size_t n = 0; n < N; n++) {
+
287  const double y_dbl = value_of(y_vec[n]);
+
288  const double mu_dbl = value_of(mu_vec[n]);
+
289  const double beta_dbl = value_of(beta_vec[n]);
+
290  const double scaled_diff = (y_dbl - mu_dbl) / beta_dbl;
+
291  const double rep_deriv = exp(-scaled_diff - exp(-scaled_diff))
+
292  / beta_dbl;
+
293  const double ccdf_log_ = 1.0 - exp(-exp(-scaled_diff));
+
294  ccdf_log += log(ccdf_log_);
+
295 
+ +
297  operands_and_partials.d_x1[n] -= rep_deriv / ccdf_log_;
+ +
299  operands_and_partials.d_x2[n] += rep_deriv / ccdf_log_;
+ +
301  operands_and_partials.d_x3[n] += rep_deriv * scaled_diff / ccdf_log_;
+
302  }
+
303 
+
304  return operands_and_partials.to_var(ccdf_log);
+
305  }
+
306 
+
307  template <class RNG>
+
308  inline double
+
309  gumbel_rng(const double mu,
+
310  const double beta,
+
311  RNG& rng) {
+
312  using boost::variate_generator;
+
313  using boost::uniform_01;
+
314 
+
315  static const char* function = "stan::prob::gumbel_rng(%1%)";
+
316 
+ + +
319 
+
320 
+
321  if (!check_finite(function, mu, "Location parameter"))
+
322  return 0;
+
323  if (!check_positive(function, beta, "Scale parameter"))
+
324  return 0;
+
325 
+
326  variate_generator<RNG&, uniform_01<> >
+
327  uniform01_rng(rng, uniform_01<>());
+
328  return mu - beta * std::log(-std::log(uniform01_rng()));
+
329  }
+
330  }
+
331 }
+
332 #endif
+
333 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/head_8hpp.html b/doc/api/html/head_8hpp.html new file mode 100644 index 00000000000..330d5a5096e --- /dev/null +++ b/doc/api/html/head_8hpp.html @@ -0,0 +1,144 @@ + + + + + +Stan: src/stan/math/matrix/head.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
head.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::math
 Matrices and templated mathematical functions.
 
+ + + + + + + + + + + + + +

+Functions

template<typename T >
Eigen::Matrix< T,
+Eigen::Dynamic, 1 > 
stan::math::head (const Eigen::Matrix< T, Eigen::Dynamic, 1 > &v, size_t n)
 Return the specified number of elements as a vector from the front of the specified vector.
 
template<typename T >
Eigen::Matrix< T,
+1, Eigen::Dynamic > 
stan::math::head (const Eigen::Matrix< T, 1, Eigen::Dynamic > &rv, size_t n)
 Return the specified number of elements as a row vector from the front of the specified row vector.
 
template<typename T >
std::vector< T > stan::math::head (const std::vector< T > &sv, size_t n)
 Return the specified number of elements as a standard vector from the front of the specified standard vector.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/head_8hpp_source.html b/doc/api/html/head_8hpp_source.html new file mode 100644 index 00000000000..5a58ad23603 --- /dev/null +++ b/doc/api/html/head_8hpp_source.html @@ -0,0 +1,156 @@ + + + + + +Stan: src/stan/math/matrix/head.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
head.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MATH__MATRIX__HEAD_HPP__
+
2 #define __STAN__MATH__MATRIX__HEAD_HPP__
+
3 
+
4 #include <vector>
+
5 
+ + + + +
10 
+
11 namespace stan {
+
12  namespace math {
+
13 
+
22  template <typename T>
+
23  inline
+
24  Eigen::Matrix<T,Eigen::Dynamic,1>
+
25  head(const Eigen::Matrix<T,Eigen::Dynamic,1>& v,
+
26  size_t n) {
+
27  if (n != 0)
+
28  validate_row_index(v, n, "head");
+
29  return v.head(n);
+
30  }
+
31 
+
40  template <typename T>
+
41  inline
+
42  Eigen::Matrix<T,1,Eigen::Dynamic>
+
43  head(const Eigen::Matrix<T,1,Eigen::Dynamic>& rv,
+
44  size_t n) {
+
45  if (n != 0)
+
46  validate_column_index(rv, n, "head");
+
47  return rv.head(n);
+
48  }
+
49 
+
58  template <typename T>
+
59  std::vector<T> head(const std::vector<T>& sv,
+
60  size_t n) {
+
61  if (n != 0)
+
62  validate_std_vector_index(sv, n, "head");
+
63  std::vector<T> s;
+
64  for (size_t i = 0; i < n; ++i)
+
65  s.push_back(sv[i]);
+
66  return s;
+
67  }
+
68 
+
69 
+
70  }
+
71 }
+
72 
+
73 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/hessian_8hpp.html b/doc/api/html/hessian_8hpp.html new file mode 100644 index 00000000000..7a3bba88296 --- /dev/null +++ b/doc/api/html/hessian_8hpp.html @@ -0,0 +1,132 @@ + + + + + +Stan: src/stan/agrad/hessian.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
hessian.hpp File Reference
+
+
+
#include <vector>
+#include <stan/agrad/rev.hpp>
+#include <stan/agrad/fwd.hpp>
+#include <stan/math/matrix/Eigen.hpp>
+
+

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+ + + + +

+Functions

template<class F >
double stan::agrad::hessian (const F &f, const std::vector< double > &x, const std::vector< double > &v, std::vector< double > &Hv)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/hessian_8hpp_source.html b/doc/api/html/hessian_8hpp_source.html new file mode 100644 index 00000000000..f4b9491a1cb --- /dev/null +++ b/doc/api/html/hessian_8hpp_source.html @@ -0,0 +1,151 @@ + + + + + +Stan: src/stan/agrad/hessian.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
hessian.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__HESSIAN_HPP__
+
2 #define __STAN__AGRAD__HESSIAN_HPP__
+
3 
+
4 #include <vector>
+
5 
+
6 #include <stan/agrad/rev.hpp>
+
7 #include <stan/agrad/fwd.hpp>
+
8 
+ +
10 
+
11 namespace stan {
+
12 
+
13  namespace agrad {
+
14 
+
15  // f: vector<T> -> T
+
16  // Hv = H(f(x)) * v; return f(x)
+
17 
+
18  template <class F>
+
19  double
+
20  hessian(const F& f,
+
21  const std::vector<double>& x,
+
22  const std::vector<double>& v,
+
23  std::vector<double>& Hv) {
+
24 
+
25  using stan::agrad::var;
+
26  using stan::agrad::fvar;
+
27 
+
28  std::vector<var> x_var(x.size());
+
29  for (int i = 0; i < x_var.size(); ++i)
+
30  x_var[i] = x[i];
+
31 
+
32  std::vector<fvar<var> > x_fvar(x.size());
+
33  for (int i = 0; i < x_fvar.size(); ++i)
+
34  x_fvar[i] = fvar<var>(x_var[i], v[i]);
+
35  fvar<var> y = f(x_fvar);
+
36  y.d_.grad(x_var,Hv);
+
37  return y.val_.val();
+
38  }
+
39 
+
40  }
+
41 }
+
42 
+
43 
+
44 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/hierarchy.html b/doc/api/html/hierarchy.html new file mode 100644 index 00000000000..c2259ab88cb --- /dev/null +++ b/doc/api/html/hierarchy.html @@ -0,0 +1,539 @@ + + + + + +Stan: Class Hierarchy + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + +
+ + + + +
+ +
+ +
+
+
Class Hierarchy
+
+
+
This inheritance list is sorted roughly, but not completely, alphabetically:
+
[detail level 12345]
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
oCstan::math::accumulator< T >Class to accumulate values and eventually return their sum
oCstan::gm::add_conditional_body
oCstan::gm::add_conditional_condition
oCstan::gm::add_expression_dimss
oCstan::gm::add_loop_identifier
oCstan::gm::add_while_body
oCstan::gm::add_while_condition
oCstan::gm::addition_expr
oCstan::gm::argument
oCstan::gm::argument_parser
oCstan::gm::argument_probe
oCstan::math::array_builder< T >Structure for building up arrays in an expression (rather than in statements) using an argumentchaining add() method and a getter method array() to return the result
oCstan::gm::array_literal
oCstan::gm::assignment
oCstan::mcmc::base_adaptation
oCstan::mcmc::base_adapter
oCstan::mcmc::base_hamiltonian< M, P, BaseRNG >
oCstan::mcmc::base_hamiltonian< M, dense_e_point, BaseRNG >
oCstan::mcmc::base_hamiltonian< M, diag_e_point, BaseRNG >
oCstan::mcmc::base_hamiltonian< M, unit_e_point, BaseRNG >
oCstan::mcmc::base_integrator< H, P >
oCstan::mcmc::base_integrator< dense_e_metric< M, BaseRNG >, dense_e_point >
oCstan::mcmc::base_integrator< diag_e_metric< M, BaseRNG >, diag_e_point >
oCstan::mcmc::base_integrator< unit_e_metric< M, BaseRNG >, unit_e_point >
oCstan::mcmc::base_mcmc
oCstan::gm::base_var_decl
oCstan::optimization::BFGSMinimizer< FunctorType, Scalar, DimAtCompile, LineSearchMethod >
oCstan::optimization::BFGSMinimizer< ModelAdaptor< M > >
oCstan::optimization::BFGSMinimizer< FunctorType, Scalar, DimAtCompile, LineSearchMethod >::BFGSOptions
oCstan::gm::binary_op
oCstan::gm::binary_op_expr
oCstan::agrad::chainableAbstract base class for variable implementations that handles memory management and applying the chain rule
oCstan::agrad::chainable_allocA chainable_alloc is an object which is constructed and destructed normally but the memory lifespan is managed along with the arena allocator for the gradient calculation
oCstan::mcmc::chains< RNG >An mcmc::chains object stores parameter names and dimensionalities along with samples from multiple chains
oCstan::memory::chunk_alloc< T, Tnchunks_per_block >
oCstan::io::cmd_lineParses and stores command-line arguments
oCstan::math::common_type< T1, T2 >
oCstan::math::common_type< Eigen::Matrix< T1, R, C >, Eigen::Matrix< T2, R, C > >
oCstan::math::common_type< std::vector< T1 >, std::vector< T2 > >
oCstan::gm::conditional_statement
oCstan::contains_fvar< T1, T2, T3, T4, T5, T6 >Metaprogram to calculate the base scalar return type resulting from promoting all the scalar types of the template parameters
oCstan::io::csv_writerWrites Stan variables in comma-separated-value format to an output stream
oCstan::gm::distribution
oCstan::gm::division_expr
oCdot_product_store_type< T >
oCstan::gm::double_literal
oCstan::DoubleVectorView< used, is_vec >DoubleVectorView allocates double values to be used as intermediate values
oCstan::DoubleVectorView< true, false >
oCstan::DoubleVectorView< true, true >
oCstan::io::dump_readerReads data from S-plus dump format
oCstan::io::dump_writerWrites data into the S-plus dump format
oCstan::gm::elt_division_expr
oCstan::gm::elt_multiplication_expr
oCstan::gm::error_codes
oCstan::gm::expr_type
oCstan::gm::expression
oCstan::gm::expression_as_statement
oCexpression_grammar< Iterator >
oCstan::gm::for_statement
oCstan::gm::fun
oCstan::gm::function_signatures
oCstan::agrad::fvar< T >
oCEigen::internal::general_matrix_matrix_product< Index, stan::agrad::var, LhsStorageOrder, ConjugateLhs, stan::agrad::var, RhsStorageOrder, ConjugateRhs, ColMajor >
oCEigen::internal::general_matrix_vector_product< Index, stan::agrad::var, ColMajor, ConjugateLhs, stan::agrad::var, ConjugateRhs >Override matrix-vector and matrix-matrix products to use more efficient implementation
oCEigen::internal::general_matrix_vector_product< Index, stan::agrad::var, RowMajor, ConjugateLhs, stan::agrad::var, ConjugateRhs >
oCgrammar
oCstan::prob::include_summand< propto, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10 >Template metaprogram to calculate whether a summand needs to be included in a proportional (log) probability calculation
oCstan::gm::increment_log_prob_statement
oCstan::gm::index_op
oCstan::gm::int_literal
oCstan::is_constant< T >Metaprogramming struct to detect whether a given type is constant in the mathematical sense (not the C++ const sense)
oCstan::is_constant_struct< T >Metaprogram to determine if a type has a base scalar type that can be assigned to type double
oCstan::is_constant_struct< Eigen::Block< T > >
oCstan::is_constant_struct< Eigen::Matrix< T, R, C > >
oCstan::is_constant_struct< std::vector< T > >
oCstan::is_fvar< T >
oCstan::is_fvar< stan::agrad::fvar< T > >
oCstan::is_var< T >
oCstan::is_var< stan::agrad::var >
oCstan::is_var_or_arithmetic< T1, T2, T3, T4, T5, T6 >
oCstan::is_vector< T >
oCstan::is_vector< const T >
oCstan::is_vector< Eigen::Matrix< T, 1, Eigen::Dynamic > >
oCstan::is_vector< Eigen::Matrix< T, Eigen::Dynamic, 1 > >
oCstan::is_vector< std::vector< T > >
oCstan::is_vector_like< T >
oCstan::is_vector_like< const T >
oCstan::is_vector_like< Eigen::Matrix< T, Eigen::Dynamic, Eigen::Dynamic > >
oCstan::is_vector_like< T * >
oCLDLT_factor< T, R, C >
oCstan::math::LDLT_factor< double, R, C >LDLT_factor is a thin wrapper on Eigen::LDLT to allow for reusing factorizations and efficient autodiff of things like log determinants and solutions to linear systems
oCstan::math::LDLT_factor< stan::agrad::var, R, C >A template specialization of src/stan/math/matrix/LDLT_factor.hpp for stan::agrad::var which can be used with all the *_ldlt functions
oCstan::gm::left_division_expr
oCstan::gm::logical_negate_expr
oCstan::io::mcmc_writer< M >
oCstan::model::model_functional< M >
oCstan::optimization::ModelAdaptor< M >
oCstan::gm::multiplication_expr
oCstan::gm::negate_expr
oCstan::optimization::NesterovGradient< M >
oCstan::gm::nilPlaceholder struct for boost::variant default ctors
oCstan::gm::no_op_statement
oCstd::numeric_limits< stan::agrad::fvar< T > >
oCstd::numeric_limits< stan::agrad::var >Specialization of numeric limits for var objects
oCEigen::NumTraits< stan::agrad::var >Numerical traits template override for Eigen for automatic gradient variables
oCstan::mcmc::nuts_util
oCstan::agrad::OperandsAndPartials< T1, T2, T3, T4, T5, T6, T_return_type >A variable implementation that stores operands and derivatives with respect to the variable
oCstan::math::pass_type< T >
oCstan::math::pass_type< double >
oCstan::math::pass_type< int >
oCstan::agrad::precomp_v_vari
oCstan::gm::print_statement
oCstan::gm::printable
oCstan::model::prob_gradThe prob_grad class represents the basic parameter holders for a model
oCstan::gm::program
oCstan::math::promoter< F, T >
oCstan::math::promoter< Eigen::Matrix< F, R, C >, Eigen::Matrix< T, R, C > >
oCstan::math::promoter< Eigen::Matrix< T, R, C >, Eigen::Matrix< T, R, C > >
oCstan::math::promoter< std::vector< F >, std::vector< T > >
oCstan::math::promoter< std::vector< T >, std::vector< T > >
oCstan::math::promoter< T, T >
oCstan::mcmc::ps_point
oCstan::gm::range
oCstan::io::reader< T >A stream-based reader for integer, scalar, vector, matrix and array data types, with Jacobian calculations
oCstan::gm::remove_loop_identifier
oCstan::gm::remove_loop_identifier::result< T1, T2 >
oCstan::gm::validate_int_expr3::result< T1, T2 >
oCstan::gm::add_while_body::result< T1, T2 >
oCstan::gm::expression_as_statement::result< T1, T2, T3 >
oCstan::gm::validate_int_expr2::result< T1, T2 >
oCstan::gm::division_expr::result< T1, T2, T3 >
oCstan::gm::set_fun_type2::result< T1, T2 >
oCstan::gm::add_while_condition::result< T1, T2, T3 >
oCstan::gm::binary_op_expr::result< T1, T2, T3, T4, T5 >
oCstan::gm::add_conditional_condition::result< T1, T2, T3 >
oCstan::gm::add_conditional_body::result< T1, T2 >
oCstan::gm::unscope_locals::result< T1, T2 >
oCstan::gm::add_loop_identifier::result< T1, T2, T3, T4 >
oCstan::gm::set_fun_type_named::result< T1, T2, T3, T4 >
oCstan::gm::validate_expr_type2::result< T1, T2 >
oCstan::gm::subtraction_expr::result< T1, T2, T3 >
oCstan::gm::addition_expr::result< T1, T2, T3 >
oCstan::gm::validate_sample::result< T1, T2, T3 >
oCstan::gm::validate_assignment::result< T1, T2, T3, T4 >
oCstan::gm::multiplication_expr::result< T1, T2, T3 >
oCstan::gm::left_division_expr::result< T1, T2, T3 >
oCstan::gm::elt_multiplication_expr::result< T1, T2, T3 >
oCstan::gm::elt_division_expr::result< T1, T2, T3 >
oCstan::gm::negate_expr::result< T1, T2 >
oCstan::gm::transpose_expr::result< T1, T2 >
oCstan::gm::add_expression_dimss::result< T1, T2, T3, T4 >
oCstan::gm::validate_allow_sample::result< T1, T2 >
oCstan::gm::validate_expr_type::result< T1, T2 >
oCstan::gm::set_fun_type::result< T1, T2 >
oCstan::gm::set_var_type::result< T1, T2, T3, T4 >
oCstan::gm::logical_negate_expr::result< T1, T2 >
oCstan::return_type< T1, T2, T3, T4, T5, T6 >Metaprogram to calculate the base scalar return type resulting from promoting all the scalar types of the template parameters
oCstan::gm::sample
oCstan::mcmc::sample
oCEigen::internal::scalar_product_traits< double, stan::agrad::var >Scalar product traits override for Eigen for automatic gradient variables
oCEigen::internal::scalar_product_traits< stan::agrad::var, double >Scalar product traits override for Eigen for automatic gradient variables
oCstan::scalar_type< T >Metaprogram structure to determine the base scalar type of a template argument
oCstan::scalar_type< Eigen::Matrix< T, Eigen::Dynamic, Eigen::Dynamic > >
oCstan::scalar_type< T * >
oCstan::math::seq_view< T, S >
oCstan::math::seq_view< double, std::vector< int > >
oCstan::math::seq_view< T, Eigen::Matrix< S, 1, Eigen::Dynamic > >
oCstan::math::seq_view< T, Eigen::Matrix< S, Eigen::Dynamic, 1 > >
oCstan::math::seq_view< T, Eigen::Matrix< S, Eigen::Dynamic, Eigen::Dynamic > >
oCstan::math::seq_view< T, std::vector< S > >
oCstan::math::seq_view< T, std::vector< std::vector< T > > >
oCstan::math::seq_view< T, std::vector< T > >
oCstan::gm::set_fun_type
oCstan::gm::set_fun_type2
oCstan::gm::set_fun_type_named
oCstan::gm::set_var_type
oCEigen::internal::significant_decimals_default_impl< stan::agrad::var, false >Implemented this for printing to stream
oCstan::size_of_helper< T, is_vec >
oCstan::size_of_helper< T, true >
oCstan::memory::stack_allocAn instance of this class provides a memory pool through which blocks of raw memory may be allocated and then collected simultaneously
oCstan::io::stan_csv
oCstan::io::stan_csv_adaptation
oCstan::io::stan_csv_metadata
oCstan::io::stan_csv_readerReads from a Stan output csv file
oCstan::io::stan_csv_timing
oCstan::gm::statement
oCstatement_grammar< Iterator >
oCstan::gm::statements
oCstatic_visitor
oCstan::math::store_type< T >
oCstan::math::store_type< double >
oCstan::math::store_type< Eigen::Matrix< S, 1, Eigen::Dynamic > >
oCstan::math::store_type< Eigen::Matrix< S, Eigen::Dynamic, 1 > >
oCstan::math::store_type< Eigen::Matrix< S, Eigen::Dynamic, Eigen::Dynamic > >
oCstan::math::store_type< int >
oCstan::math::store_type< S >
oCstan::math::store_type< std::vector< int > >
oCstan::math::store_type< std::vector< S > >
oCstan::math::store_type< std::vector< std::vector< T > > >
oCstan::math::store_type< std::vector< T > >
oCstan::gm::subtraction_expr
oCterm_grammar< Iterator >
oCterm_grammar< Iterator >
oCstan::gm::transpose_expr
oCstan::gm::type_name< T >
oCstan::gm::type_name< bool >
oCstan::gm::type_name< double >
oCstan::gm::type_name< int >
oCstan::gm::type_name< std::string >
oCstan::gm::type_name< unsigned int >
oCstan::gm::unary_op
oCstan::gm::unscope_locals
oCstan::gm::validate_allow_sample
oCstan::gm::validate_assignment
oCstan::gm::validate_expr_type
oCstan::gm::validate_expr_type2
oCstan::gm::validate_int_expr2
oCstan::gm::validate_int_expr3
oCstan::gm::validate_sample
oCstan::agrad::varIndependent (input) and dependent (output) variables for gradients
oCstan::io::var_contextA var_reader reads array variables of integer and floating point type by name and dimension
oCstan::gm::var_decl
oCstan::gm::variable
oCstan::gm::variable_dims
oCstan::gm::variable_map
oCstan::VectorView< T, is_array, throw_if_accessed >VectorView is a template metaprogram that takes its argument and allows it to be used like a vector
oCstan::VectorView< const double, false, false >
oCstan::VectorView< const T, is_array, throw_if_accessed >VectorView that has const correctness
oCstan::VectorView< double *, is_vector< T1 >::value, is_constant_struct< T1 >::value >
oCstan::VectorView< double *, is_vector< T2 >::value, is_constant_struct< T2 >::value >
oCstan::VectorView< double *, is_vector< T3 >::value, is_constant_struct< T3 >::value >
oCstan::VectorView< double *, is_vector< T4 >::value, is_constant_struct< T4 >::value >
oCstan::VectorView< double *, is_vector< T5 >::value, is_constant_struct< T5 >::value >
oCstan::VectorView< double *, is_vector< T6 >::value, is_constant_struct< T6 >::value >
oCstan::gm::visgenGeneric visitor with output for extension
oCstan::prob::welford_covar_estimator
oCstan::prob::welford_var_estimator
oCstan::gm::while_statement
\Cstan::io::writer< T >A stream-based writer for integer, scalar, vector, matrix and array data types, which transforms from constrained to a sequence of constrained variables
+
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/hypergeometric_8hpp.html b/doc/api/html/hypergeometric_8hpp.html new file mode 100644 index 00000000000..ae20ad90d3d --- /dev/null +++ b/doc/api/html/hypergeometric_8hpp.html @@ -0,0 +1,143 @@ + + + + + +Stan: src/stan/prob/distributions/univariate/discrete/hypergeometric.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
hypergeometric.hpp File Reference
+
+
+
#include <boost/math/distributions.hpp>
+#include <stan/prob/distributions/univariate/continuous/uniform.hpp>
+#include <stan/agrad/partials_vari.hpp>
+#include <stan/math.hpp>
+#include <stan/math/error_handling.hpp>
+#include <stan/meta/traits.hpp>
+#include <stan/prob/traits.hpp>
+#include <stan/prob/constants.hpp>
+#include <vector>
+
+

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::prob
 Templated probability distributions.
 
+ + + + + + + + + + +

+Functions

template<bool propto, typename T_n , typename T_N , typename T_a , typename T_b >
double stan::prob::hypergeometric_log (const T_n &n, const T_N &N, const T_a &a, const T_b &b)
 
template<typename T_n , typename T_N , typename T_a , typename T_b >
double stan::prob::hypergeometric_log (const T_n &n, const T_N &N, const T_a &a, const T_b &b)
 
template<class RNG >
int stan::prob::hypergeometric_rng (const int N, const int a, const int b, RNG &rng)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/hypergeometric_8hpp_source.html b/doc/api/html/hypergeometric_8hpp_source.html new file mode 100644 index 00000000000..cc9ff112eb1 --- /dev/null +++ b/doc/api/html/hypergeometric_8hpp_source.html @@ -0,0 +1,240 @@ + + + + + +Stan: src/stan/prob/distributions/univariate/discrete/hypergeometric.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
hypergeometric.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__PROB__DISTRIBUTIONS__UNIVARIATE__DISCRETE__HYPERGEOMETRIC_HPP__
+
2 #define __STAN__PROB__DISTRIBUTIONS__UNIVARIATE__DISCRETE__HYPERGEOMETRIC_HPP__
+
3 
+
4 #include <boost/math/distributions.hpp>
+ + +
7 #include <stan/math.hpp>
+ +
9 #include <stan/meta/traits.hpp>
+
10 #include <stan/prob/traits.hpp>
+
11 #include <stan/prob/constants.hpp>
+
12 #include <vector>
+
13 
+
14 namespace stan {
+
15 
+
16  namespace prob {
+
17 
+
18  // Hypergeometric(n|N,a,b) [0 <= n <= a; 0 <= N-n <= b; 0 <= N <= a+b]
+
19  // n: #white balls drawn; N: #balls drawn;
+
20  // a: #white balls; b: #black balls
+
21  template <bool propto,
+
22  typename T_n, typename T_N,
+
23  typename T_a, typename T_b>
+
24  double
+
25  hypergeometric_log(const T_n& n, const T_N& N,
+
26  const T_a& a, const T_b& b) {
+
27  static const char* function = "stan::prob::hypergeometric_log(%1%)";
+
28 
+ + + + + +
34 
+
35  // check if any vectors are zero length
+
36  if (!(stan::length(n)
+
37  && stan::length(N)
+
38  && stan::length(a)
+
39  && stan::length(b)))
+
40  return 0.0;
+
41 
+
42 
+
43  VectorView<const T_n> n_vec(n);
+
44  VectorView<const T_N> N_vec(N);
+
45  VectorView<const T_a> a_vec(a);
+
46  VectorView<const T_b> b_vec(b);
+
47  size_t size = max_size(n, N, a, b);
+
48 
+
49  double logp(0.0);
+
50  if (!check_bounded(function, n, 0, a, "Successes variable", &logp))
+
51  return logp;
+
52  if (!check_greater(function, N, n, "Draws parameter", &logp))
+
53  return logp;
+
54  for (size_t i = 0; i < size; i++) {
+
55  if (!check_bounded(function, N_vec[i]-n_vec[i], 0, b_vec[i], "Draws parameter minus successes variable", &logp))
+
56  return logp;
+
57  if (!check_bounded(function, N_vec[i], 0, a_vec[i]+b_vec[i], "Draws parameter", &logp))
+
58  return logp;
+
59  }
+
60  if (!(check_consistent_sizes(function,
+
61  n,N,a,b,
+
62  "Successes variable","Draws parameter","Successes in population parameter","Failures in population parameter",
+
63  &logp)))
+
64  return logp;
+
65 
+
66  // check if no variables are involved and prop-to
+ +
68  return 0.0;
+
69 
+
70 
+
71  for (size_t i = 0; i < size; i++)
+
72  logp += math::binomial_coefficient_log(a_vec[i],n_vec[i])
+
73  + math::binomial_coefficient_log(b_vec[i],N_vec[i]-n_vec[i])
+
74  - math::binomial_coefficient_log(a_vec[i]+b_vec[i],N_vec[i]);
+
75  return logp;
+
76  }
+
77 
+
78  template <typename T_n,
+
79  typename T_N,
+
80  typename T_a,
+
81  typename T_b>
+
82  inline
+
83  double
+
84  hypergeometric_log(const T_n& n,
+
85  const T_N& N,
+
86  const T_a& a,
+
87  const T_b& b) {
+
88  return hypergeometric_log<false>(n,N,a,b);
+
89  }
+
90 
+
91  template <class RNG>
+
92  inline int
+
93  hypergeometric_rng(const int N,
+
94  const int a,
+
95  const int b,
+
96  RNG& rng) {
+
97  using boost::variate_generator;
+
98 
+
99  static const char* function = "stan::prob::hypergeometric_rng(%1%)";
+
100 
+ + +
103 
+
104  if (!check_bounded(function, N, 0, a+b, "Draws parameter"))
+
105  return 0;
+
106  if (!check_positive(function,N,"Draws parameter"))
+
107  return 0;
+
108  if (!check_positive(function,a,"Successes in population parameter"))
+
109  return 0;
+
110  if (!check_positive(function,b,"Failures in population parameter"))
+
111  return 0;
+
112 
+
113  boost::math::hypergeometric_distribution<>dist (b, N, a + b);
+
114  std::vector<double> index(a);
+
115  for(int i = 0; i < a; i++)
+
116  index[i] = cdf(dist, i + 1);
+
117 
+
118  double c = uniform_rng(0.0, 1.0, rng);
+
119  int min = 0;
+
120  int max = a - 1;
+
121  int mid = 0;
+
122  while(min < max) {
+
123  mid = (min + max) / 2;
+
124  if(index[mid] > c)
+
125  max = mid;
+
126  else
+
127  min = mid + 1;
+
128  }
+
129  return min + 1;
+
130  }
+
131  }
+
132 }
+
133 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/index.html b/doc/api/html/index.html new file mode 100644 index 00000000000..3a41cb589f1 --- /dev/null +++ b/doc/api/html/index.html @@ -0,0 +1,102 @@ + + + + + +Stan: Main Page + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + +
+ + + + +
+ +
+ +
+
+
Stan Documentation
+
+
+

This is the API documentation for Stan's C++ code.

+

What is Stan?

+
Stan is a C++ library for computations involving probability, sampling, and optimization.
Stan includes full algorithmic differentiation for gradients implementing a library of matrix, linear algebra, and probability mass, density, and distribution functions, along with code for adaptive Hamiltonian Monte Carlo sampling.

More Information

+
For more information, including pointers to narrative documentation, please visit Stan's home page at:

http://mc-stan.org/

+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/initialize_8hpp.html b/doc/api/html/initialize_8hpp.html new file mode 100644 index 00000000000..f022e5b75fe --- /dev/null +++ b/doc/api/html/initialize_8hpp.html @@ -0,0 +1,143 @@ + + + + + +Stan: src/stan/math/matrix/initialize.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
initialize.hpp File Reference
+
+
+
#include <vector>
+#include <boost/type_traits/is_arithmetic.hpp>
+#include <boost/utility/enable_if.hpp>
+#include <stan/math/matrix/Eigen.hpp>
+
+

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::math
 Matrices and templated mathematical functions.
 
+ + + + + + + + + + + + + +

+Functions

template<typename T >
void stan::math::initialize (T &x, const T &v)
 
template<typename T , typename V >
boost::enable_if_c
+< boost::is_arithmetic< V >
+::value, void > 
stan::math::initialize (T &x, V v)
 
template<typename T , int R, int C>
void stan::math::initialize (Eigen::Matrix< T, R, C > &x, const T &v)
 
template<typename T , typename V >
void stan::math::initialize (std::vector< T > &x, const V &v)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/initialize_8hpp_source.html b/doc/api/html/initialize_8hpp_source.html new file mode 100644 index 00000000000..a922e167a46 --- /dev/null +++ b/doc/api/html/initialize_8hpp_source.html @@ -0,0 +1,145 @@ + + + + + +Stan: src/stan/math/matrix/initialize.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
initialize.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MATH__MATRIX__INITIALIZE_HPP__
+
2 #define __STAN__MATH__MATRIX__INITIALIZE_HPP__
+
3 
+
4 #include <vector>
+
5 #include <boost/type_traits/is_arithmetic.hpp>
+
6 #include <boost/utility/enable_if.hpp>
+ +
8 
+
9 namespace stan {
+
10  namespace math {
+
11 
+
12  // initializations called for local variables generate in Stan
+
13  // code; fills in all cells in first arg with second arg
+
14 
+
15  template <typename T>
+
16  inline void initialize(T& x, const T& v) {
+
17  x = v;
+
18  }
+
19  template <typename T, typename V>
+
20  inline
+
21  typename boost::enable_if_c<boost::is_arithmetic<V>::value, void>
+
22  initialize(T& x, V v) {
+
23  x = v;
+
24  }
+
25  template <typename T, int R, int C>
+
26  inline void initialize(Eigen::Matrix<T,R,C>& x, const T& v) {
+
27  for (int i = 0; i < x.size(); ++i)
+
28  initialize(x(i),v);
+
29  }
+
30  template <typename T, typename V>
+
31  inline void initialize(std::vector<T>& x, const V& v) {
+
32  for (size_t i = 0; i < x.size(); ++i)
+
33  initialize(x[i],v);
+
34  }
+
35 
+
36  }
+
37 }
+
38 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/initialize__variable_8hpp.html b/doc/api/html/initialize__variable_8hpp.html new file mode 100644 index 00000000000..d89bc4dd8b2 --- /dev/null +++ b/doc/api/html/initialize__variable_8hpp.html @@ -0,0 +1,139 @@ + + + + + +Stan: src/stan/agrad/rev/matrix/initialize_variable.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
initialize_variable.hpp File Reference
+
+
+
#include <vector>
+#include <stan/math/matrix/Eigen.hpp>
+#include <stan/agrad/rev/var.hpp>
+
+

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+ + + + + + + + + + + + +

+Functions

void stan::agrad::initialize_variable (var &variable, const var &value)
 Initialize variable to value.
 
template<int R, int C>
void stan::agrad::initialize_variable (Eigen::Matrix< var, R, C > &matrix, const var &value)
 Initialize every cell in the matrix to the specified value.
 
template<typename T >
void stan::agrad::initialize_variable (std::vector< T > &variables, const var &value)
 Initialize the variables in the standard vector recursively.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/initialize__variable_8hpp_source.html b/doc/api/html/initialize__variable_8hpp_source.html new file mode 100644 index 00000000000..0649e525c57 --- /dev/null +++ b/doc/api/html/initialize__variable_8hpp_source.html @@ -0,0 +1,137 @@ + + + + + +Stan: src/stan/agrad/rev/matrix/initialize_variable.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
initialize_variable.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__REV__MATRIX__INITIALIZE_VARIABLE_HPP__
+
2 #define __STAN__AGRAD__REV__MATRIX__INITIALIZE_VARIABLE_HPP__
+
3 
+
4 #include <vector>
+ +
6 #include <stan/agrad/rev/var.hpp>
+
7 
+
8 namespace stan {
+
9  namespace agrad {
+
10 
+
15  inline void initialize_variable(var& variable, const var& value) {
+
16  variable = value;
+
17  }
+
18 
+
23  template <int R, int C>
+
24  inline void initialize_variable(Eigen::Matrix<var,R,C>& matrix, const var& value) {
+
25  for (int i = 0; i < matrix.size(); ++i)
+
26  matrix(i) = value;
+
27  }
+
28 
+
32  template <typename T>
+
33  inline void initialize_variable(std::vector<T>& variables, const var& value) {
+
34  for (size_t i = 0; i < variables.size(); ++i)
+
35  initialize_variable(variables[i],value);
+
36  }
+
37 
+
38  }
+
39 }
+
40 
+
41 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/int__step_8hpp.html b/doc/api/html/int__step_8hpp.html new file mode 100644 index 00000000000..0130b36b907 --- /dev/null +++ b/doc/api/html/int__step_8hpp.html @@ -0,0 +1,129 @@ + + + + + +Stan: src/stan/math/functions/int_step.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
int_step.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::math
 Matrices and templated mathematical functions.
 
+ + + + + +

+Functions

template<typename T >
unsigned int stan::math::int_step (const T y)
 The integer step, or Heaviside, function.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/int__step_8hpp_source.html b/doc/api/html/int__step_8hpp_source.html new file mode 100644 index 00000000000..d1462669b91 --- /dev/null +++ b/doc/api/html/int__step_8hpp_source.html @@ -0,0 +1,120 @@ + + + + + +Stan: src/stan/math/functions/int_step.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
int_step.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MATH__FUNCTIONS__INT_STEP_HPP__
+
2 #define __STAN__MATH__FUNCTIONS__INT_STEP_HPP__
+
3 
+
4 namespace stan {
+
5  namespace math {
+
13  template <typename T>
+
14  unsigned int int_step(const T y) {
+
15  return y > 0;
+
16  }
+
17  }
+
18 }
+
19 
+
20 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/internal_8hpp.html b/doc/api/html/internal_8hpp.html new file mode 100644 index 00000000000..1bbeeb25d91 --- /dev/null +++ b/doc/api/html/internal_8hpp.html @@ -0,0 +1,123 @@ + + + + + +Stan: src/stan/agrad/rev/internal.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
internal.hpp File Reference
+
+ +
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/internal_8hpp_source.html b/doc/api/html/internal_8hpp_source.html new file mode 100644 index 00000000000..771be3ce654 --- /dev/null +++ b/doc/api/html/internal_8hpp_source.html @@ -0,0 +1,126 @@ + + + + + +Stan: src/stan/agrad/rev/internal.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
internal.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__REV__INTERNAL_HPP__
+
2 #define __STAN__AGRAD__REV__INTERNAL_HPP__
+
3 
+ + + + + + + + + + + + + + +
18 
+
19 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/internal__math_8hpp.html b/doc/api/html/internal__math_8hpp.html new file mode 100644 index 00000000000..2da8f31a937 --- /dev/null +++ b/doc/api/html/internal__math_8hpp.html @@ -0,0 +1,141 @@ + + + + + +Stan: src/stan/prob/internal_math.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
internal_math.hpp File Reference
+
+
+
#include <math.h>
+#include <boost/math/special_functions/gamma.hpp>
+#include <boost/math/special_functions/beta.hpp>
+#include <boost/math/special_functions/fpclassify.hpp>
+
+

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::math
 Matrices and templated mathematical functions.
 
+ + + + + + + + + + + + + +

+Functions

double stan::math::F32 (double a, double b, double c, double d, double e, double z, double precision=1e-6)
 
void stan::math::gradF32 (double *g, double a, double b, double c, double d, double e, double z, double precision=1e-6)
 
void stan::math::grad2F1 (double &gradA, double &gradC, double a, double b, double c, double z, double precision=1e-6)
 
void stan::math::gradIncBeta (double &g1, double &g2, double a, double b, double z)
 
void stan::math::gradRegIncBeta (double &g1, double &g2, double a, double b, double z, double digammaA, double digammaB, double digammaSum, double betaAB)
 
double stan::math::gradRegIncGamma (double a, double z, double g, double dig, double precision=1e-6)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/internal__math_8hpp_source.html b/doc/api/html/internal__math_8hpp_source.html new file mode 100644 index 00000000000..46d694f8467 --- /dev/null +++ b/doc/api/html/internal__math_8hpp_source.html @@ -0,0 +1,314 @@ + + + + + +Stan: src/stan/prob/internal_math.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
internal_math.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__PROB__INTERNAL_MATH_HPP__
+
2 #define __STAN__PROB__INTERNAL_MATH_HPP__
+
3 
+
4 #include <math.h>
+
5 #include <boost/math/special_functions/gamma.hpp>
+
6 #include <boost/math/special_functions/beta.hpp>
+
7 #include <boost/math/special_functions/fpclassify.hpp>
+
8 
+
9 namespace stan {
+
10 
+
11  namespace math {
+
12 
+
13 
+
14  double F32(double a, double b, double c, double d, double e, double z, double precision = 1e-6)
+
15  {
+
16 
+
17  double F = 1;
+
18 
+
19  double tNew = 0;
+
20 
+
21  double logT = 0;
+
22 
+
23  double logZ = std::log(z);
+
24 
+
25  int k = 0;
+
26 
+
27  while( (fabs(tNew) > precision) || (k == 0) )
+
28  {
+
29 
+
30  double p = (a + k) * (b + k) * (c + k) / ( (d + k) * (e + k) * (k + 1) );
+
31 
+
32  // If a, b, or c is a negative integer then the series terminates
+
33  // after a finite number of interations
+
34  if(p == 0) break;
+
35 
+
36  logT += (p > 0 ? 1 : -1) * std::log(fabs(p)) + logZ;
+
37 
+
38  tNew = std::exp(logT);
+
39 
+
40  F += tNew;
+
41 
+
42  ++k;
+
43 
+
44  }
+
45 
+
46  return F;
+
47 
+
48  }
+
49 
+
50  void gradF32(double* g, double a, double b, double c, double d, double e, double z, double precision = 1e-6)
+
51  {
+
52 
+
53  double gOld[6];
+
54 
+
55  for(double *p = g; p != g + 6; ++p) *p = 0;
+
56  for(double *p = gOld; p != gOld + 6; ++p) *p = 0;
+
57 
+
58  double tOld = 1;
+
59  double tNew = 0;
+
60 
+
61  double logT = 0;
+
62 
+
63  double logZ = std::log(z);
+
64 
+
65  int k = 0;
+
66 
+
67  while( (fabs(tNew) > precision) || (k == 0) )
+
68  {
+
69 
+
70  double C = (a + k) / (d + k);
+
71  C *= (b + k) / (e + k);
+
72  C *= (c + k) / (1 + k);
+
73 
+
74  // If a, b, or c is a negative integer then the series terminates
+
75  // after a finite number of interations
+
76  if(C == 0) break;
+
77 
+
78  logT += (C > 0 ? 1 : -1) * std::log(fabs(C)) + logZ;
+
79 
+
80  tNew = std::exp(logT);
+
81 
+
82  gOld[0] = tNew * (gOld[0] / tOld + 1.0 / (a + k) );
+
83  gOld[1] = tNew * (gOld[1] / tOld + 1.0 / (b + k) );
+
84  gOld[2] = tNew * (gOld[2] / tOld + 1.0 / (c + k) );
+
85 
+
86  gOld[3] = tNew * (gOld[3] / tOld - 1.0 / (d + k) );
+
87  gOld[4] = tNew * (gOld[4] / tOld - 1.0 / (e + k) );
+
88 
+
89  gOld[5] = tNew * ( gOld[5] / tOld + 1.0 / z );
+
90 
+
91  for(int i = 0; i < 6; ++i) g[i] += gOld[i];
+
92 
+
93  tOld = tNew;
+
94 
+
95  ++k;
+
96 
+
97  }
+
98 
+
99  }
+
100 
+
101  // Gradient of the hypergeometric function 2F1(a, b | c | z) with respect to a and c
+
102  void grad2F1(double& gradA, double& gradC, double a, double b, double c, double z, double precision = 1e-6)
+
103  {
+
104 
+
105  gradA = 0;
+
106  gradC = 0;
+
107 
+
108  double gradAold = 0;
+
109  double gradCold = 0;
+
110 
+
111  int k = 0;
+
112  double tDak = 1.0 / (a - 1);
+
113 
+
114  while( (fabs(tDak * (a + (k - 1)) ) > precision) || (k == 0) )
+
115  {
+
116 
+
117  const double r = ( (a + k) / (c + k) ) * ( (b + k) / (double)(k + 1) ) * z;
+
118  tDak = r * tDak * (a + (k - 1)) / (a + k);
+
119 
+
120  if(r == 0) break;
+
121 
+
122  gradAold = r * gradAold + tDak;
+
123  gradCold = r * gradCold - tDak * ((a + k) / (c + k));
+
124 
+
125  gradA += gradAold;
+
126  gradC += gradCold;
+
127 
+
128  ++k;
+
129 
+
130  if(k > 200) break;
+
131 
+
132  }
+
133 
+
134  }
+
135 
+
136  // Gradient of the incomplete beta function beta(a, b, z)
+
137  // with respect to the first two arguments, using the
+
138  // equivalence to a hypergeometric function.
+
139  // See http://dlmf.nist.gov/8.17#ii
+
140  void gradIncBeta(double& g1, double& g2, double a, double b, double z)
+
141  {
+
142 
+
143  double c1 = std::log(z);
+
144  double c2 = std::log(1 - z);
+
145  double c3 = boost::math::beta(a, b, z);
+
146 
+
147  double C = std::exp( a * c1 + b * c2 ) / a;
+
148 
+
149  double dF1 = 0;
+
150  double dF2 = 0;
+
151 
+
152  if(C) grad2F1(dF1, dF2, a + b, 1, a + 1, z);
+
153 
+
154 
+
155  g1 = (c1 - 1.0 / a) * c3 + C * (dF1 + dF2);
+
156  g2 = c2 * c3 + C * dF1;
+
157 
+
158  }
+
159 
+
160  // Gradient of the regularized incomplete beta function ibeta(a, b, z)
+
161  void gradRegIncBeta(double& g1, double& g2, double a, double b, double z,
+
162  double digammaA, double digammaB, double digammaSum, double betaAB)
+
163  {
+
164 
+
165  double dBda = 0;
+
166  double dBdb = 0;
+
167 
+
168  gradIncBeta(dBda, dBdb, a, b, z);
+
169 
+
170  double b1 = boost::math::beta(a, b, z);
+
171 
+
172  g1 = ( dBda - b1 * (digammaA - digammaSum) ) / betaAB;
+
173  g2 = ( dBdb - b1 * (digammaB - digammaSum) ) / betaAB;
+
174 
+
175  }
+
176 
+
177  // Gradient of the regularized incomplete gamma functions igamma(a, g)
+
178  // Precomputed values
+
179  // g = boost::math::tgamma(a)
+
180  // dig = boost::math::digamma(a)
+
181  double gradRegIncGamma(double a, double z, double g, double dig,
+
182  double precision = 1e-6) {
+
183  using boost::math::gamma_p;
+
184 
+
185  double S = 0;
+
186  double s = 1;
+
187  double l = std::log(z);
+
188 
+
189  int k = 0;
+
190  double delta = s / (a * a);
+
191 
+
192  while (fabs(delta) > precision) {
+
193  S += delta;
+
194  ++k;
+
195  s *= - z / k;
+
196  delta = s / ((k + a) * (k + a));
+
197  if (boost::math::isinf(delta))
+
198  throw std::domain_error("stan::math::gradRegIncGamma not converging");
+
199  }
+
200  return gamma_p(a, z) * ( dig - l ) + std::exp( a * l ) * S / g;
+
201  }
+
202 
+
203  }
+
204 
+
205 }
+
206 
+
207 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/inv__chi__square_8hpp.html b/doc/api/html/inv__chi__square_8hpp.html new file mode 100644 index 00000000000..116a1eed34d --- /dev/null +++ b/doc/api/html/inv__chi__square_8hpp.html @@ -0,0 +1,155 @@ + + + + + +Stan: src/stan/prob/distributions/univariate/continuous/inv_chi_square.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
inv_chi_square.hpp File Reference
+
+
+
#include <boost/random/chi_squared_distribution.hpp>
+#include <boost/random/variate_generator.hpp>
+#include <stan/agrad/partials_vari.hpp>
+#include <stan/math/error_handling.hpp>
+#include <stan/math/constants.hpp>
+#include <stan/math/functions/multiply_log.hpp>
+#include <stan/math/functions/value_of.hpp>
+#include <stan/meta/traits.hpp>
+#include <stan/prob/constants.hpp>
+#include <stan/prob/traits.hpp>
+#include <stan/prob/internal_math.hpp>
+
+

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::prob
 Templated probability distributions.
 
+ + + + + + + + + + + + + + + + + + + + +

+Functions

template<bool propto, typename T_y , typename T_dof >
return_type< T_y, T_dof >::type stan::prob::inv_chi_square_log (const T_y &y, const T_dof &nu)
 The log of an inverse chi-squared density for y with the specified degrees of freedom parameter.
 
template<typename T_y , typename T_dof >
return_type< T_y, T_dof >::type stan::prob::inv_chi_square_log (const T_y &y, const T_dof &nu)
 
template<typename T_y , typename T_dof >
return_type< T_y, T_dof >::type stan::prob::inv_chi_square_cdf (const T_y &y, const T_dof &nu)
 
template<typename T_y , typename T_dof >
return_type< T_y, T_dof >::type stan::prob::inv_chi_square_cdf_log (const T_y &y, const T_dof &nu)
 
template<typename T_y , typename T_dof >
return_type< T_y, T_dof >::type stan::prob::inv_chi_square_ccdf_log (const T_y &y, const T_dof &nu)
 
template<class RNG >
double stan::prob::inv_chi_square_rng (const double nu, RNG &rng)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/inv__chi__square_8hpp_source.html b/doc/api/html/inv__chi__square_8hpp_source.html new file mode 100644 index 00000000000..afd3fe7f841 --- /dev/null +++ b/doc/api/html/inv__chi__square_8hpp_source.html @@ -0,0 +1,563 @@ + + + + + +Stan: src/stan/prob/distributions/univariate/continuous/inv_chi_square.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
inv_chi_square.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__PROB__DIST__UNI__CONTINUOUS__INV_CHI_SQUARE_HPP__
+
2 #define __STAN__PROB__DIST__UNI__CONTINUOUS__INV_CHI_SQUARE_HPP__
+
3 
+
4 #include <boost/random/chi_squared_distribution.hpp>
+
5 #include <boost/random/variate_generator.hpp>
+
6 
+ + + + + +
12 #include <stan/meta/traits.hpp>
+
13 #include <stan/prob/constants.hpp>
+
14 #include <stan/prob/traits.hpp>
+ +
16 
+
17 namespace stan {
+
18 
+
19  namespace prob {
+
20 
+
40  template <bool propto,
+
41  typename T_y, typename T_dof>
+
42  typename return_type<T_y,T_dof>::type
+
43  inv_chi_square_log(const T_y& y, const T_dof& nu) {
+
44  static const char* function = "stan::prob::inv_chi_square_log(%1%)";
+
45 
+
46  // check if any vectors are zero length
+
47  if (!(stan::length(y)
+
48  && stan::length(nu)))
+
49  return 0.0;
+
50 
+ + + + + +
56 
+
57  double logp(0.0);
+
58  if (!check_finite(function, nu, "Degrees of freedom parameter", &logp))
+
59  return logp;
+
60  if (!check_positive(function, nu, "Degrees of freedom parameter", &logp))
+
61  return logp;
+
62  if (!check_not_nan(function, y, "Random variable", &logp))
+
63  return logp;
+
64  if (!(check_consistent_sizes(function,
+
65  y,nu,
+
66  "Random variable","Degrees of freedom parameter",
+
67  &logp)))
+
68  return logp;
+
69 
+
70 
+
71  // set up template expressions wrapping scalars into vector views
+
72  VectorView<const T_y> y_vec(y);
+
73  VectorView<const T_dof> nu_vec(nu);
+
74  size_t N = max_size(y, nu);
+
75 
+
76  for (size_t n = 0; n < length(y); n++)
+
77  if (value_of(y_vec[n]) <= 0)
+
78  return LOG_ZERO;
+
79 
+ +
81  using boost::math::lgamma;
+ +
83 
+ +
85  is_vector<T_y>::value> log_y(length(y));
+
86  for (size_t i = 0; i < length(y); i++)
+ +
88  log_y[i] = log(value_of(y_vec[i]));
+
89 
+ +
91  is_vector<T_y>::value> inv_y(length(y));
+
92  for (size_t i = 0; i < length(y); i++)
+ +
94  inv_y[i] = 1.0 / value_of(y_vec[i]);
+
95 
+ +
97  is_vector<T_dof>::value> lgamma_half_nu(length(nu));
+ +
99  is_vector<T_dof>::value> digamma_half_nu_over_two(length(nu));
+
100  for (size_t i = 0; i < length(nu); i++) {
+
101  double half_nu = 0.5 * value_of(nu_vec[i]);
+ +
103  lgamma_half_nu[i] = lgamma(half_nu);
+ +
105  digamma_half_nu_over_two[i] = digamma(half_nu) * 0.5;
+
106  }
+
107 
+
108  agrad::OperandsAndPartials<T_y, T_dof> operands_and_partials(y, nu);
+
109  for (size_t n = 0; n < N; n++) {
+
110  const double nu_dbl = value_of(nu_vec[n]);
+
111  const double half_nu = 0.5 * nu_dbl;
+
112 
+ +
114  logp += nu_dbl * NEG_LOG_TWO_OVER_TWO - lgamma_half_nu[n];
+ +
116  logp -= (half_nu+1.0) * log_y[n];
+ +
118  logp -= 0.5 * inv_y[n];
+
119 
+ +
121  operands_and_partials.d_x1[n]
+
122  += -(half_nu+1.0) * inv_y[n] + 0.5 * inv_y[n] * inv_y[n];
+
123  }
+ +
125  operands_and_partials.d_x2[n]
+
126  += NEG_LOG_TWO_OVER_TWO - digamma_half_nu_over_two[n]
+
127  - 0.5*log_y[n];
+
128  }
+
129  }
+
130  return operands_and_partials.to_var(logp);
+
131  }
+
132 
+
133  template <typename T_y, typename T_dof>
+
134  inline
+ +
136  inv_chi_square_log(const T_y& y, const T_dof& nu) {
+
137  return inv_chi_square_log<false>(y,nu);
+
138  }
+
139 
+
140  template <typename T_y, typename T_dof>
+ +
142  inv_chi_square_cdf(const T_y& y, const T_dof& nu) {
+
143 
+
144  // Size checks
+
145  if ( !( stan::length(y) && stan::length(nu) ) ) return 1.0;
+
146 
+
147  // Error checks
+
148  static const char* function = "stan::prob::inv_chi_square_cdf(%1%)";
+
149 
+ + + + + +
155  using boost::math::tools::promote_args;
+
156  using stan::math::value_of;
+
157 
+
158  double P(1.0);
+
159 
+
160  if (!check_finite(function, nu, "Degrees of freedom parameter", &P))
+
161  return P;
+
162  if (!check_positive(function, nu, "Degrees of freedom parameter", &P))
+
163  return P;
+
164  if (!check_not_nan(function, y, "Random variable", &P))
+
165  return P;
+
166  if (!check_nonnegative(function, y, "Random variable", &P))
+
167  return P;
+
168  if (!(check_consistent_sizes(function, y, nu,
+
169  "Random variable",
+
170  "Degrees of freedom parameter",
+
171  &P)))
+
172  return P;
+
173 
+
174  // Wrap arguments in vectors
+
175  VectorView<const T_y> y_vec(y);
+
176  VectorView<const T_dof> nu_vec(nu);
+
177  size_t N = max_size(y, nu);
+
178 
+
179  agrad::OperandsAndPartials<T_y, T_dof> operands_and_partials(y, nu);
+
180 
+
181  // Explicit return for extreme values
+
182  // The gradients are technically ill-defined, but treated as zero
+
183 
+
184  for (size_t i = 0; i < stan::length(y); i++)
+
185  if (value_of(y_vec[i]) == 0)
+
186  return operands_and_partials.to_var(0.0);
+
187 
+
188  // Compute CDF and its gradients
+
189  using boost::math::gamma_p_derivative;
+
190  using boost::math::gamma_q;
+
191  using boost::math::tgamma;
+
192  using boost::math::digamma;
+
193 
+
194  // Cache a few expensive function calls if nu is a parameter
+ +
196  is_vector<T_dof>::value> gamma_vec(stan::length(nu));
+ +
198  is_vector<T_dof>::value> digamma_vec(stan::length(nu));
+
199 
+ +
201  for (size_t i = 0; i < stan::length(nu); i++) {
+
202  const double nu_dbl = value_of(nu_vec[i]);
+
203  gamma_vec[i] = tgamma(0.5 * nu_dbl);
+
204  digamma_vec[i] = digamma(0.5 * nu_dbl);
+
205  }
+
206  }
+
207 
+
208  // Compute vectorized CDF and gradient
+
209  for (size_t n = 0; n < N; n++) {
+
210 
+
211  // Explicit results for extreme values
+
212  // The gradients are technically ill-defined, but treated as zero
+
213  if (value_of(y_vec[n]) == std::numeric_limits<double>::infinity()) {
+
214  continue;
+
215  }
+
216 
+
217  // Pull out values
+
218  const double y_dbl = value_of(y_vec[n]);
+
219  const double y_inv_dbl = 1.0 / y_dbl;
+
220  const double nu_dbl = value_of(nu_vec[n]);
+
221 
+
222  // Compute
+
223  const double Pn = gamma_q(0.5 * nu_dbl, 0.5 * y_inv_dbl);
+
224 
+
225  P *= Pn;
+
226 
+ +
228  operands_and_partials.d_x1[n]
+
229  += 0.5 * y_inv_dbl * y_inv_dbl
+
230  * gamma_p_derivative(0.5 * nu_dbl, 0.5 * y_inv_dbl) / Pn;
+ +
232  operands_and_partials.d_x2[n]
+
233  += 0.5 * stan::math::gradRegIncGamma(0.5 * nu_dbl,
+
234  0.5 * y_inv_dbl,
+
235  gamma_vec[n],
+
236  digamma_vec[n]) / Pn;
+
237  }
+
238 
+ +
240  for (size_t n = 0; n < stan::length(y); ++n)
+
241  operands_and_partials.d_x1[n] *= P;
+ +
243  for (size_t n = 0; n < stan::length(nu); ++n)
+
244  operands_and_partials.d_x2[n] *= P;
+
245 
+
246  return operands_and_partials.to_var(P);
+
247  }
+
248 
+
249  template <typename T_y, typename T_dof>
+ +
251  inv_chi_square_cdf_log(const T_y& y, const T_dof& nu) {
+
252 
+
253  // Size checks
+
254  if ( !( stan::length(y) && stan::length(nu) ) ) return 0.0;
+
255 
+
256  // Error checks
+
257  static const char* function = "stan::prob::inv_chi_square_cdf_log(%1%)";
+
258 
+ + + + + +
264  using boost::math::tools::promote_args;
+
265  using stan::math::value_of;
+
266 
+
267  double P(0.0);
+
268 
+
269  if (!check_finite(function, nu, "Degrees of freedom parameter", &P))
+
270  return P;
+
271  if (!check_positive(function, nu, "Degrees of freedom parameter", &P))
+
272  return P;
+
273  if (!check_not_nan(function, y, "Random variable", &P))
+
274  return P;
+
275  if (!check_nonnegative(function, y, "Random variable", &P))
+
276  return P;
+
277  if (!(check_consistent_sizes(function, y, nu,
+
278  "Random variable",
+
279  "Degrees of freedom parameter", &P)))
+
280  return P;
+
281 
+
282  // Wrap arguments in vectors
+
283  VectorView<const T_y> y_vec(y);
+
284  VectorView<const T_dof> nu_vec(nu);
+
285  size_t N = max_size(y, nu);
+
286 
+
287  agrad::OperandsAndPartials<T_y, T_dof> operands_and_partials(y, nu);
+
288 
+
289  // Explicit return for extreme values
+
290  // The gradients are technically ill-defined, but treated as zero
+
291 
+
292  for (size_t i = 0; i < stan::length(y); i++)
+
293  if (value_of(y_vec[i]) == 0)
+
294  return operands_and_partials.to_var(stan::math::negative_infinity());
+
295 
+
296  // Compute cdf_log and its gradients
+
297  using boost::math::gamma_p_derivative;
+
298  using boost::math::gamma_q;
+
299  using boost::math::tgamma;
+
300  using boost::math::digamma;
+
301 
+
302  // Cache a few expensive function calls if nu is a parameter
+ +
304  is_vector<T_dof>::value> gamma_vec(stan::length(nu));
+ +
306  is_vector<T_dof>::value> digamma_vec(stan::length(nu));
+
307 
+ +
309  for (size_t i = 0; i < stan::length(nu); i++) {
+
310  const double nu_dbl = value_of(nu_vec[i]);
+
311  gamma_vec[i] = tgamma(0.5 * nu_dbl);
+
312  digamma_vec[i] = digamma(0.5 * nu_dbl);
+
313  }
+
314  }
+
315 
+
316  // Compute vectorized cdf_log and gradient
+
317  for (size_t n = 0; n < N; n++) {
+
318 
+
319  // Explicit results for extreme values
+
320  // The gradients are technically ill-defined, but treated as zero
+
321  if (value_of(y_vec[n]) == std::numeric_limits<double>::infinity()) {
+
322  continue;
+
323  }
+
324 
+
325  // Pull out values
+
326  const double y_dbl = value_of(y_vec[n]);
+
327  const double y_inv_dbl = 1.0 / y_dbl;
+
328  const double nu_dbl = value_of(nu_vec[n]);
+
329 
+
330  // Compute
+
331  const double Pn = gamma_q(0.5 * nu_dbl, 0.5 * y_inv_dbl);
+
332 
+
333  P += log(Pn);
+
334 
+ +
336  operands_and_partials.d_x1[n] += 0.5 * y_inv_dbl * y_inv_dbl
+
337  * gamma_p_derivative(0.5 * nu_dbl, 0.5 * y_inv_dbl) / Pn;
+ +
339  operands_and_partials.d_x2[n]
+
340  += 0.5 * stan::math::gradRegIncGamma(0.5 * nu_dbl,
+
341  0.5 * y_inv_dbl,
+
342  gamma_vec[n],
+
343  digamma_vec[n]) / Pn;
+
344  }
+
345 
+
346  return operands_and_partials.to_var(P);
+
347  }
+
348 
+
349  template <typename T_y, typename T_dof>
+ +
351  inv_chi_square_ccdf_log(const T_y& y, const T_dof& nu) {
+
352 
+
353  // Size checks
+
354  if ( !( stan::length(y) && stan::length(nu) ) ) return 0.0;
+
355 
+
356  // Error checks
+
357  static const char* function = "stan::prob::inv_chi_square_ccdf_log(%1%)";
+
358 
+ + + + + +
364  using boost::math::tools::promote_args;
+
365  using stan::math::value_of;
+
366 
+
367  double P(0.0);
+
368 
+
369  if (!check_finite(function, nu, "Degrees of freedom parameter", &P))
+
370  return P;
+
371  if (!check_positive(function, nu, "Degrees of freedom parameter", &P))
+
372  return P;
+
373  if (!check_not_nan(function, y, "Random variable", &P))
+
374  return P;
+
375  if (!check_nonnegative(function, y, "Random variable", &P))
+
376  return P;
+
377  if (!(check_consistent_sizes(function, y, nu,
+
378  "Random variable",
+
379  "Degrees of freedom parameter", &P)))
+
380  return P;
+
381 
+
382  // Wrap arguments in vectors
+
383  VectorView<const T_y> y_vec(y);
+
384  VectorView<const T_dof> nu_vec(nu);
+
385  size_t N = max_size(y, nu);
+
386 
+
387  agrad::OperandsAndPartials<T_y, T_dof> operands_and_partials(y, nu);
+
388 
+
389  // Explicit return for extreme values
+
390  // The gradients are technically ill-defined, but treated as zero
+
391 
+
392  for (size_t i = 0; i < stan::length(y); i++)
+
393  if (value_of(y_vec[i]) == 0)
+
394  return operands_and_partials.to_var(0.0);
+
395 
+
396  // Compute ccdf_log and its gradients
+
397  using boost::math::gamma_p_derivative;
+
398  using boost::math::gamma_q;
+
399  using boost::math::tgamma;
+
400  using boost::math::digamma;
+
401 
+
402  // Cache a few expensive function calls if nu is a parameter
+ +
404  is_vector<T_dof>::value> gamma_vec(stan::length(nu));
+ +
406  is_vector<T_dof>::value> digamma_vec(stan::length(nu));
+
407 
+ +
409  for (size_t i = 0; i < stan::length(nu); i++) {
+
410  const double nu_dbl = value_of(nu_vec[i]);
+
411  gamma_vec[i] = tgamma(0.5 * nu_dbl);
+
412  digamma_vec[i] = digamma(0.5 * nu_dbl);
+
413  }
+
414  }
+
415 
+
416  // Compute vectorized ccdf_log and gradient
+
417  for (size_t n = 0; n < N; n++) {
+
418 
+
419  // Explicit results for extreme values
+
420  // The gradients are technically ill-defined, but treated as zero
+
421  if (value_of(y_vec[n]) == std::numeric_limits<double>::infinity()) {
+
422  return operands_and_partials.to_var(stan::math::negative_infinity());
+
423  }
+
424 
+
425  // Pull out values
+
426  const double y_dbl = value_of(y_vec[n]);
+
427  const double y_inv_dbl = 1.0 / y_dbl;
+
428  const double nu_dbl = value_of(nu_vec[n]);
+
429 
+
430  // Compute
+
431  const double Pn = 1.0 - gamma_q(0.5 * nu_dbl, 0.5 * y_inv_dbl);
+
432 
+
433  P += log(Pn);
+
434 
+ +
436  operands_and_partials.d_x1[n] -= 0.5 * y_inv_dbl * y_inv_dbl
+
437  * gamma_p_derivative(0.5 * nu_dbl, 0.5 * y_inv_dbl) / Pn;
+ +
439  operands_and_partials.d_x2[n]
+
440  -= 0.5 * stan::math::gradRegIncGamma(0.5 * nu_dbl,
+
441  0.5 * y_inv_dbl,
+
442  gamma_vec[n],
+
443  digamma_vec[n]) / Pn;
+
444  }
+
445 
+
446  return operands_and_partials.to_var(P);
+
447  }
+
448 
+
449  template <class RNG>
+
450  inline double
+
451  inv_chi_square_rng(const double nu,
+
452  RNG& rng) {
+
453  using boost::variate_generator;
+
454  using boost::random::chi_squared_distribution;
+
455 
+
456  static const char* function = "stan::prob::inv_chi_square_rng(%1%)";
+
457 
+ + +
460 
+
461  if (!check_finite(function, nu, "Degrees of freedom parameter"))
+
462  return 0;
+
463  if (!check_positive(function, nu, "Degrees of freedom parameter"))
+
464  return 0;
+
465 
+
466  variate_generator<RNG&, chi_squared_distribution<> >
+
467  chi_square_rng(rng, chi_squared_distribution<>(nu));
+
468  return 1 / chi_square_rng();
+
469  }
+
470 
+
471  }
+
472 }
+
473 
+
474 #endif
+
475 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/inv__gamma_8hpp.html b/doc/api/html/inv__gamma_8hpp.html new file mode 100644 index 00000000000..b963216717e --- /dev/null +++ b/doc/api/html/inv__gamma_8hpp.html @@ -0,0 +1,161 @@ + + + + + +Stan: src/stan/prob/distributions/univariate/continuous/inv_gamma.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
inv_gamma.hpp File Reference
+
+
+
#include <boost/random/gamma_distribution.hpp>
+#include <boost/random/variate_generator.hpp>
+#include <stan/agrad/partials_vari.hpp>
+#include <stan/math/error_handling.hpp>
+#include <stan/math/constants.hpp>
+#include <stan/math/functions/multiply_log.hpp>
+#include <stan/math/functions/value_of.hpp>
+#include <stan/meta/traits.hpp>
+#include <stan/prob/constants.hpp>
+#include <stan/prob/traits.hpp>
+#include <stan/prob/internal_math.hpp>
+
+

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::prob
 Templated probability distributions.
 
+ + + + + + + + + + + + + + + + + + + + + +

+Functions

template<bool propto, typename T_y , typename T_shape , typename T_scale >
return_type< T_y, T_shape,
+T_scale >::type 
stan::prob::inv_gamma_log (const T_y &y, const T_shape &alpha, const T_scale &beta)
 The log of an inverse gamma density for y with the specified shape and scale parameters.
 
template<typename T_y , typename T_shape , typename T_scale >
return_type< T_y, T_shape,
+T_scale >::type 
stan::prob::inv_gamma_log (const T_y &y, const T_shape &alpha, const T_scale &beta)
 
template<typename T_y , typename T_shape , typename T_scale >
return_type< T_y, T_shape,
+T_scale >::type 
stan::prob::inv_gamma_cdf (const T_y &y, const T_shape &alpha, const T_scale &beta)
 The CDF of an inverse gamma density for y with the specified shape and scale parameters.
 
template<typename T_y , typename T_shape , typename T_scale >
return_type< T_y, T_shape,
+T_scale >::type 
stan::prob::inv_gamma_cdf_log (const T_y &y, const T_shape &alpha, const T_scale &beta)
 
template<typename T_y , typename T_shape , typename T_scale >
return_type< T_y, T_shape,
+T_scale >::type 
stan::prob::inv_gamma_ccdf_log (const T_y &y, const T_shape &alpha, const T_scale &beta)
 
template<class RNG >
double stan::prob::inv_gamma_rng (const double alpha, const double beta, RNG &rng)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/inv__gamma_8hpp_source.html b/doc/api/html/inv__gamma_8hpp_source.html new file mode 100644 index 00000000000..7b3f8748b49 --- /dev/null +++ b/doc/api/html/inv__gamma_8hpp_source.html @@ -0,0 +1,653 @@ + + + + + +Stan: src/stan/prob/distributions/univariate/continuous/inv_gamma.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
inv_gamma.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__PROB__DISTRIBUTIONS__UNIVARIATE__CONTINUOUS__INV_GAMMA_HPP__
+
2 #define __STAN__PROB__DISTRIBUTIONS__UNIVARIATE__CONTINUOUS__INV_GAMMA_HPP__
+
3 
+
4 #include <boost/random/gamma_distribution.hpp>
+
5 #include <boost/random/variate_generator.hpp>
+
6 
+ + + + + +
12 #include <stan/meta/traits.hpp>
+
13 #include <stan/prob/constants.hpp>
+
14 #include <stan/prob/traits.hpp>
+ +
16 
+
17 namespace stan {
+
18 
+
19  namespace prob {
+
20 
+
37  template <bool propto,
+
38  typename T_y, typename T_shape, typename T_scale>
+
39  typename return_type<T_y,T_shape,T_scale>::type
+
40  inv_gamma_log(const T_y& y, const T_shape& alpha, const T_scale& beta) {
+
41  static const char* function = "stan::prob::inv_gamma_log(%1%)";
+
42 
+ + + + +
47  using boost::math::tools::promote_args;
+ + +
50 
+
51  // check if any vectors are zero length
+
52  if (!(stan::length(y)
+
53  && stan::length(alpha)
+
54  && stan::length(beta)))
+
55  return 0.0;
+
56 
+
57  // set up return value accumulator
+
58  double logp(0.0);
+
59 
+
60  if (!check_not_nan(function, y, "Random variable", &logp))
+
61  return logp;
+
62  if (!check_finite(function, alpha, "Shape parameter",
+
63  &logp))
+
64  return logp;
+
65  if (!check_positive(function, alpha, "Shape parameter",
+
66  &logp))
+
67  return logp;
+
68  if (!check_finite(function, beta, "Scale parameter",
+
69  &logp))
+
70  return logp;
+
71  if (!check_positive(function, beta, "Scale parameter",
+
72  &logp))
+
73  return logp;
+
74  if (!(check_consistent_sizes(function,
+
75  y,alpha,beta,
+
76  "Random variable","Shape parameter",
+
77  "Scale parameter",
+
78  &logp)))
+
79  return logp;
+
80 
+
81  // check if no variables are involved and prop-to
+ +
83  return 0.0;
+
84 
+
85  // set up template expressions wrapping scalars into vector views
+
86  VectorView<const T_y> y_vec(y);
+
87  VectorView<const T_shape> alpha_vec(alpha);
+
88  VectorView<const T_scale> beta_vec(beta);
+
89 
+
90  for (size_t n = 0; n < length(y); n++) {
+
91  const double y_dbl = value_of(y_vec[n]);
+
92  if (y_dbl <= 0)
+
93  return LOG_ZERO;
+
94  }
+
95 
+
96  size_t N = max_size(y, alpha, beta);
+ +
98  operands_and_partials(y, alpha, beta);
+
99 
+
100  using boost::math::lgamma;
+ +
102  using boost::math::digamma;
+
103 
+ + +
106  log_y(length(y));
+ + +
109  inv_y(length(y));
+
110  for(size_t n = 0; n < length(y); n++) {
+ +
112  if (value_of(y_vec[n]) > 0)
+
113  log_y[n] = log(value_of(y_vec[n]));
+ +
115  inv_y[n] = 1.0 / value_of(y_vec[n]);
+
116  }
+
117 
+ + +
120  lgamma_alpha(length(alpha));
+ + +
123  digamma_alpha(length(alpha));
+
124  for (size_t n = 0; n < length(alpha); n++) {
+ +
126  lgamma_alpha[n] = lgamma(value_of(alpha_vec[n]));
+ +
128  digamma_alpha[n] = digamma(value_of(alpha_vec[n]));
+
129  }
+
130 
+ + +
133  log_beta(length(beta));
+ +
135  for (size_t n = 0; n < length(beta); n++)
+
136  log_beta[n] = log(value_of(beta_vec[n]));
+
137 
+
138  for (size_t n = 0; n < N; n++) {
+
139  // pull out values of arguments
+
140  const double alpha_dbl = value_of(alpha_vec[n]);
+
141  const double beta_dbl = value_of(beta_vec[n]);
+
142 
+ +
144  logp -= lgamma_alpha[n];
+ +
146  logp += alpha_dbl * log_beta[n];
+ +
148  logp -= (alpha_dbl+1.0) * log_y[n];
+ +
150  logp -= beta_dbl * inv_y[n];
+
151 
+
152  // gradients
+
153  if (!is_constant<typename is_vector<T_y>::type>::value)
+
154  operands_and_partials.d_x1[n]
+
155  += -(alpha_dbl+1) * inv_y[n] + beta_dbl * inv_y[n] * inv_y[n];
+
156  if (!is_constant<typename is_vector<T_shape>::type>::value)
+
157  operands_and_partials.d_x2[n]
+
158  += -digamma_alpha[n] + log_beta[n] - log_y[n];
+
159  if (!is_constant<typename is_vector<T_scale>::type>::value)
+
160  operands_and_partials.d_x3[n] += alpha_dbl / beta_dbl - inv_y[n];
+
161  }
+
162  return operands_and_partials.to_var(logp);
+
163  }
+
164 
+
165  template <typename T_y, typename T_shape, typename T_scale>
+
166  inline
+ +
168  inv_gamma_log(const T_y& y, const T_shape& alpha, const T_scale& beta) {
+
169  return inv_gamma_log<false>(y,alpha,beta);
+
170  }
+
171 
+
188  template <typename T_y, typename T_shape, typename T_scale>
+ +
190  inv_gamma_cdf(const T_y& y, const T_shape& alpha, const T_scale& beta) {
+
191 
+
192  // Size checks
+
193  if (!(stan::length(y) && stan::length(alpha) && stan::length(beta)))
+
194  return 1.0;
+
195 
+
196  // Error checks
+
197  static const char* function = "stan::prob::inv_gamma_cdf(%1%)";
+
198 
+ + + + + + + +
206  using stan::math::value_of;
+
207  using boost::math::tools::promote_args;
+
208 
+
209  double P(1.0);
+
210 
+
211  if (!check_finite(function, alpha, "Shape parameter", &P))
+
212  return P;
+
213  if (!check_positive(function, alpha, "Shape parameter", &P))
+
214  return P;
+
215  if (!check_finite(function, beta, "Scale parameter", &P))
+
216  return P;
+
217  if (!check_positive(function, beta, "Scale parameter", &P))
+
218  return P;
+
219  if (!check_not_nan(function, y, "Random variable", &P))
+
220  return P;
+
221  if (!check_nonnegative(function, y, "Random variable", &P))
+
222  return P;
+
223  if (!(check_consistent_sizes(function, y, alpha, beta,
+
224  "Random variable", "Shape parameter",
+
225  "Scale Parameter",
+
226  &P)))
+
227  return P;
+
228 
+
229  // Wrap arguments in vectors
+
230  VectorView<const T_y> y_vec(y);
+
231  VectorView<const T_shape> alpha_vec(alpha);
+
232  VectorView<const T_scale> beta_vec(beta);
+
233  size_t N = max_size(y, alpha, beta);
+
234 
+ +
236  operands_and_partials(y, alpha, beta);
+
237 
+
238  // Explicit return for extreme values
+
239  // The gradients are technically ill-defined, but treated as zero
+
240 
+
241  for (size_t i = 0; i < stan::length(y); i++) {
+
242  if (value_of(y_vec[i]) == 0)
+
243  return operands_and_partials.to_var(0.0);
+
244  }
+
245 
+
246  // Compute CDF and its gradients
+
247  using boost::math::gamma_p_derivative;
+
248  using boost::math::gamma_q;
+
249  using boost::math::digamma;
+
250  using boost::math::tgamma;
+
251 
+
252  // Cache a few expensive function calls if nu is a parameter
+ + +
255  gamma_vec(stan::length(alpha));
+ + +
258  digamma_vec(stan::length(alpha));
+
259 
+ +
261  for (size_t i = 0; i < stan::length(alpha); i++) {
+
262  const double alpha_dbl = value_of(alpha_vec[i]);
+
263  gamma_vec[i] = tgamma(alpha_dbl);
+
264  digamma_vec[i] = digamma(alpha_dbl);
+
265  }
+
266  }
+
267 
+
268  // Compute vectorized CDF and gradient
+
269  for (size_t n = 0; n < N; n++) {
+
270  // Explicit results for extreme values
+
271  // The gradients are technically ill-defined, but treated as zero
+
272  if (value_of(y_vec[n]) == std::numeric_limits<double>::infinity())
+
273  continue;
+
274 
+
275  // Pull out values
+
276  const double y_dbl = value_of(y_vec[n]);
+
277  const double y_inv_dbl = 1.0 / y_dbl;
+
278  const double alpha_dbl = value_of(alpha_vec[n]);
+
279  const double beta_dbl = value_of(beta_vec[n]);
+
280 
+
281  // Compute
+
282  const double Pn = gamma_q(alpha_dbl, beta_dbl * y_inv_dbl);
+
283 
+
284  P *= Pn;
+
285 
+ +
287  operands_and_partials.d_x1[n]
+
288  += beta_dbl * y_inv_dbl * y_inv_dbl
+
289  * gamma_p_derivative(alpha_dbl, beta_dbl * y_inv_dbl)
+
290  / Pn;
+ +
292  operands_and_partials.d_x2[n]
+
293  += stan::math::gradRegIncGamma(alpha_dbl, beta_dbl
+
294  * y_inv_dbl, gamma_vec[n],
+
295  digamma_vec[n]) / Pn;
+ +
297  operands_and_partials.d_x3[n]
+
298  += - y_inv_dbl * gamma_p_derivative(alpha_dbl,
+
299  beta_dbl * y_inv_dbl) / Pn;
+
300  }
+
301 
+ +
303  for (size_t n = 0; n < stan::length(y); ++n)
+
304  operands_and_partials.d_x1[n] *= P;
+ +
306  for (size_t n = 0; n < stan::length(alpha); ++n)
+
307  operands_and_partials.d_x2[n] *= P;
+ +
309  for (size_t n = 0; n < stan::length(beta); ++n)
+
310  operands_and_partials.d_x3[n] *= P;
+
311 
+
312  return operands_and_partials.to_var(P);
+
313  }
+
314 
+
315  template <typename T_y, typename T_shape, typename T_scale>
+ +
317  inv_gamma_cdf_log(const T_y& y, const T_shape& alpha, const T_scale& beta) {
+
318 
+
319  // Size checks
+
320  if (!(stan::length(y) && stan::length(alpha) && stan::length(beta)))
+
321  return 0.0;
+
322 
+
323  // Error checks
+
324  static const char* function = "stan::prob::inv_gamma_cdf_log(%1%)";
+
325 
+ + + + + + + +
333  using stan::math::value_of;
+
334  using boost::math::tools::promote_args;
+
335 
+
336  double P(0.0);
+
337 
+
338  if (!check_finite(function, alpha, "Shape parameter", &P))
+
339  return P;
+
340  if (!check_positive(function, alpha, "Shape parameter", &P))
+
341  return P;
+
342  if (!check_finite(function, beta, "Scale parameter", &P))
+
343  return P;
+
344  if (!check_positive(function, beta, "Scale parameter", &P))
+
345  return P;
+
346  if (!check_not_nan(function, y, "Random variable", &P))
+
347  return P;
+
348  if (!check_nonnegative(function, y, "Random variable", &P))
+
349  return P;
+
350  if (!(check_consistent_sizes(function, y, alpha, beta,
+
351  "Random variable", "Shape parameter",
+
352  "Scale Parameter",
+
353  &P)))
+
354  return P;
+
355 
+
356  // Wrap arguments in vectors
+
357  VectorView<const T_y> y_vec(y);
+
358  VectorView<const T_shape> alpha_vec(alpha);
+
359  VectorView<const T_scale> beta_vec(beta);
+
360  size_t N = max_size(y, alpha, beta);
+
361 
+ +
363  operands_and_partials(y, alpha, beta);
+
364 
+
365  // Explicit return for extreme values
+
366  // The gradients are technically ill-defined, but treated as zero
+
367 
+
368  for (size_t i = 0; i < stan::length(y); i++) {
+
369  if (value_of(y_vec[i]) == 0)
+
370  return operands_and_partials.to_var(stan::math::negative_infinity());
+
371  }
+
372 
+
373  // Compute cdf_log and its gradients
+
374  using boost::math::gamma_p_derivative;
+
375  using boost::math::gamma_q;
+
376  using boost::math::digamma;
+
377  using boost::math::tgamma;
+
378 
+
379  // Cache a few expensive function calls if nu is a parameter
+ + +
382  gamma_vec(stan::length(alpha));
+ + +
385  digamma_vec(stan::length(alpha));
+
386 
+ +
388  for (size_t i = 0; i < stan::length(alpha); i++) {
+
389  const double alpha_dbl = value_of(alpha_vec[i]);
+
390  gamma_vec[i] = tgamma(alpha_dbl);
+
391  digamma_vec[i] = digamma(alpha_dbl);
+
392  }
+
393  }
+
394 
+
395  // Compute vectorized cdf_log and gradient
+
396  for (size_t n = 0; n < N; n++) {
+
397  // Explicit results for extreme values
+
398  // The gradients are technically ill-defined, but treated as zero
+
399  if (value_of(y_vec[n]) == std::numeric_limits<double>::infinity())
+
400  continue;
+
401 
+
402  // Pull out values
+
403  const double y_dbl = value_of(y_vec[n]);
+
404  const double y_inv_dbl = 1.0 / y_dbl;
+
405  const double alpha_dbl = value_of(alpha_vec[n]);
+
406  const double beta_dbl = value_of(beta_vec[n]);
+
407 
+
408  // Compute
+
409  const double Pn = gamma_q(alpha_dbl, beta_dbl * y_inv_dbl);
+
410 
+
411  P += log(Pn);
+
412 
+ +
414  operands_and_partials.d_x1[n]
+
415  += beta_dbl * y_inv_dbl * y_inv_dbl
+
416  * gamma_p_derivative(alpha_dbl, beta_dbl * y_inv_dbl)
+
417  / Pn;
+ +
419  operands_and_partials.d_x2[n]
+
420  += stan::math::gradRegIncGamma(alpha_dbl, beta_dbl
+
421  * y_inv_dbl, gamma_vec[n],
+
422  digamma_vec[n]) / Pn;
+ +
424  operands_and_partials.d_x3[n]
+
425  += - y_inv_dbl * gamma_p_derivative(alpha_dbl,
+
426  beta_dbl * y_inv_dbl) / Pn;
+
427  }
+
428 
+
429  return operands_and_partials.to_var(P);
+
430  }
+
431 
+
432  template <typename T_y, typename T_shape, typename T_scale>
+ +
434  inv_gamma_ccdf_log(const T_y& y, const T_shape& alpha, const T_scale& beta) {
+
435 
+
436  // Size checks
+
437  if (!(stan::length(y) && stan::length(alpha) && stan::length(beta)))
+
438  return 0.0;
+
439 
+
440  // Error checks
+
441  static const char* function = "stan::prob::inv_gamma_ccdf_log(%1%)";
+
442 
+ + + + + + + +
450  using stan::math::value_of;
+
451  using boost::math::tools::promote_args;
+
452 
+
453  double P(0.0);
+
454 
+
455  if (!check_finite(function, alpha, "Shape parameter", &P))
+
456  return P;
+
457  if (!check_positive(function, alpha, "Shape parameter", &P))
+
458  return P;
+
459  if (!check_finite(function, beta, "Scale parameter", &P))
+
460  return P;
+
461  if (!check_positive(function, beta, "Scale parameter", &P))
+
462  return P;
+
463  if (!check_not_nan(function, y, "Random variable", &P))
+
464  return P;
+
465  if (!check_nonnegative(function, y, "Random variable", &P))
+
466  return P;
+
467  if (!(check_consistent_sizes(function, y, alpha, beta,
+
468  "Random variable", "Shape parameter",
+
469  "Scale Parameter",
+
470  &P)))
+
471  return P;
+
472 
+
473  // Wrap arguments in vectors
+
474  VectorView<const T_y> y_vec(y);
+
475  VectorView<const T_shape> alpha_vec(alpha);
+
476  VectorView<const T_scale> beta_vec(beta);
+
477  size_t N = max_size(y, alpha, beta);
+
478 
+ +
480  operands_and_partials(y, alpha, beta);
+
481 
+
482  // Explicit return for extreme values
+
483  // The gradients are technically ill-defined, but treated as zero
+
484 
+
485  for (size_t i = 0; i < stan::length(y); i++) {
+
486  if (value_of(y_vec[i]) == 0)
+
487  return operands_and_partials.to_var(0.0);
+
488  }
+
489 
+
490  // Compute ccdf_log and its gradients
+
491  using boost::math::gamma_p_derivative;
+
492  using boost::math::gamma_q;
+
493  using boost::math::digamma;
+
494  using boost::math::tgamma;
+
495 
+
496  // Cache a few expensive function calls if nu is a parameter
+ + +
499  gamma_vec(stan::length(alpha));
+ + +
502  digamma_vec(stan::length(alpha));
+
503 
+ +
505  for (size_t i = 0; i < stan::length(alpha); i++) {
+
506  const double alpha_dbl = value_of(alpha_vec[i]);
+
507  gamma_vec[i] = tgamma(alpha_dbl);
+
508  digamma_vec[i] = digamma(alpha_dbl);
+
509  }
+
510  }
+
511 
+
512  // Compute vectorized ccdf_log and gradient
+
513  for (size_t n = 0; n < N; n++) {
+
514  // Explicit results for extreme values
+
515  // The gradients are technically ill-defined, but treated as zero
+
516  if (value_of(y_vec[n]) == std::numeric_limits<double>::infinity())
+
517  return operands_and_partials.to_var(stan::math::negative_infinity());
+
518 
+
519  // Pull out values
+
520  const double y_dbl = value_of(y_vec[n]);
+
521  const double y_inv_dbl = 1.0 / y_dbl;
+
522  const double alpha_dbl = value_of(alpha_vec[n]);
+
523  const double beta_dbl = value_of(beta_vec[n]);
+
524 
+
525  // Compute
+
526  const double Pn = 1.0 - gamma_q(alpha_dbl, beta_dbl * y_inv_dbl);
+
527 
+
528  P += log(Pn);
+
529 
+ +
531  operands_and_partials.d_x1[n]
+
532  -= beta_dbl * y_inv_dbl * y_inv_dbl
+
533  * gamma_p_derivative(alpha_dbl, beta_dbl * y_inv_dbl)
+
534  / Pn;
+ +
536  operands_and_partials.d_x2[n]
+
537  -= stan::math::gradRegIncGamma(alpha_dbl, beta_dbl
+
538  * y_inv_dbl, gamma_vec[n],
+
539  digamma_vec[n]) / Pn;
+ +
541  operands_and_partials.d_x3[n]
+
542  -= - y_inv_dbl * gamma_p_derivative(alpha_dbl,
+
543  beta_dbl * y_inv_dbl) / Pn;
+
544  }
+
545 
+
546  return operands_and_partials.to_var(P);
+
547  }
+
548 
+
549  template <class RNG>
+
550  inline double
+
551  inv_gamma_rng(const double alpha,
+
552  const double beta,
+
553  RNG& rng) {
+
554  using boost::variate_generator;
+
555  using boost::random::gamma_distribution;
+
556 
+
557  static const char* function = "stan::prob::inv_gamma_rng(%1%)";
+
558 
+ + +
561 
+
562  if (!check_finite(function, alpha, "Shape parameter"))
+
563  return 0;
+
564  if (!check_positive(function, alpha, "Shape parameter"))
+
565  return 0;
+
566  if (!check_finite(function, beta, "Scale parameter"))
+
567  return 0;
+
568  if (!check_positive(function, beta, "Scale parameter"))
+
569  return 0;
+
570 
+
571  variate_generator<RNG&, gamma_distribution<> >
+
572  gamma_rng(rng, gamma_distribution<>(alpha, 1 / beta));
+
573  return 1 / gamma_rng();
+
574  }
+
575  }
+
576 }
+
577 
+
578 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/inv__wishart_8hpp.html b/doc/api/html/inv__wishart_8hpp.html new file mode 100644 index 00000000000..24fb6fb9cbc --- /dev/null +++ b/doc/api/html/inv__wishart_8hpp.html @@ -0,0 +1,149 @@ + + + + + +Stan: src/stan/prob/distributions/multivariate/continuous/inv_wishart.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
inv_wishart.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::prob
 Templated probability distributions.
 
+ + + + + + + + + + + +

+Functions

template<bool propto, typename T_y , typename T_dof , typename T_scale >
boost::math::tools::promote_args
+< T_y, T_dof, T_scale >::type 
stan::prob::inv_wishart_log (const Eigen::Matrix< T_y, Eigen::Dynamic, Eigen::Dynamic > &W, const T_dof &nu, const Eigen::Matrix< T_scale, Eigen::Dynamic, Eigen::Dynamic > &S)
 The log of the Inverse-Wishart density for the given W, degrees of freedom, and scale matrix.
 
template<typename T_y , typename T_dof , typename T_scale >
boost::math::tools::promote_args
+< T_y, T_dof, T_scale >::type 
stan::prob::inv_wishart_log (const Eigen::Matrix< T_y, Eigen::Dynamic, Eigen::Dynamic > &W, const T_dof &nu, const Eigen::Matrix< T_scale, Eigen::Dynamic, Eigen::Dynamic > &S)
 
template<class RNG >
Eigen::Matrix< double,
+Eigen::Dynamic, Eigen::Dynamic > 
stan::prob::inv_wishart_rng (const double nu, const Eigen::Matrix< double, Eigen::Dynamic, Eigen::Dynamic > &S, RNG &rng)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/inv__wishart_8hpp_source.html b/doc/api/html/inv__wishart_8hpp_source.html new file mode 100644 index 00000000000..dcaed981942 --- /dev/null +++ b/doc/api/html/inv__wishart_8hpp_source.html @@ -0,0 +1,237 @@ + + + + + +Stan: src/stan/prob/distributions/multivariate/continuous/inv_wishart.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
inv_wishart.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__PROB__DISTRIBUTIONS__MULTIVARIATE__CONTINUOUS__INV_WISHART_HPP__
+
2 #define __STAN__PROB__DISTRIBUTIONS__MULTIVARIATE__CONTINUOUS__INV_WISHART_HPP__
+
3 
+ + + +
7 #include <stan/prob/traits.hpp>
+
8 #include <stan/meta/traits.hpp>
+
9 #include <stan/agrad/rev.hpp>
+ + + + + +
15 
+
16 namespace stan {
+
17  namespace prob {
+
18  // InvWishart(Sigma|n,Omega) [W, S symmetric, non-neg, definite;
+
19  // W.dims() = S.dims();
+
20  // n > S.rows() - 1]
+
48  template <bool propto,
+
49  typename T_y, typename T_dof, typename T_scale>
+
50  typename boost::math::tools::promote_args<T_y,T_dof,T_scale>::type
+
51  inv_wishart_log(const Eigen::Matrix<T_y,Eigen::Dynamic,Eigen::Dynamic>& W,
+
52  const T_dof& nu,
+
53  const Eigen::Matrix<T_scale,Eigen::Dynamic,Eigen::Dynamic>& S) {
+
54  static const char* function = "stan::prob::inv_wishart_log(%1%)";
+
55 
+ + +
58  using boost::math::tools::promote_args;
+
59 
+ +
61  typename promote_args<T_y,T_dof,T_scale>::type lp(0.0);
+
62  if(!check_greater(function, nu, k-1, "Degrees of freedom parameter",
+
63  &lp))
+
64  return lp;
+
65  if (!check_size_match(function,
+
66  W.rows(), "Rows of random variable",
+
67  W.cols(), "columns of random variable",
+
68  &lp))
+
69  return lp;
+
70  if (!check_size_match(function,
+
71  S.rows(), "Rows of scale parameter",
+
72  S.cols(), "columns of scale parameter",
+
73  &lp))
+
74  return lp;
+
75  if (!check_size_match(function,
+
76  W.rows(), "Rows of random variable",
+
77  S.rows(), "columns of scale parameter",
+
78  &lp))
+
79  return lp;
+
80  // FIXME: domain checks
+
81 
+
82  using stan::math::lmgamma;
+ + +
85  using stan::math::trace;
+
86  using stan::math::LDLT_factor;
+ +
88 
+ +
90  if (!check_ldlt_factor(function,ldlt_W,"LDLT_Factor of random variable",&lp)) {
+
91  return lp;
+
92  }
+ +
94  if (!check_ldlt_factor(function,ldlt_S,"LDLT_Factor of scale parameter",&lp)) {
+
95  return lp;
+
96  }
+
97 
+ +
99  lp -= lmgamma(k, 0.5 * nu);
+ +
101  lp += 0.5 * nu * log_determinant_ldlt(ldlt_S);
+
102  }
+ +
104  lp -= 0.5 * (nu + k + 1.0) * log_determinant_ldlt(ldlt_W);
+
105  }
+ +
107 // L = crossprod(mdivide_left_tri_low(L));
+
108 // Eigen::Matrix<T_y,Eigen::Dynamic,1> W_inv_vec = Eigen::Map<
+
109 // const Eigen::Matrix<T_y,Eigen::Dynamic,Eigen::Dynamic> >(
+
110 // &L(0), L.size(), 1);
+
111 // Eigen::Matrix<T_scale,Eigen::Dynamic,1> S_vec = Eigen::Map<
+
112 // const Eigen::Matrix<T_scale,Eigen::Dynamic,Eigen::Dynamic> >(
+
113 // &S(0), S.size(), 1);
+
114 // lp -= 0.5 * dot_product(S_vec, W_inv_vec); // trace(S * W^-1)
+
115  Eigen::Matrix<typename promote_args<T_y,T_scale>::type,Eigen::Dynamic,Eigen::Dynamic> Winv_S(mdivide_left_ldlt(ldlt_W,S));
+
116  lp -= 0.5*trace(Winv_S);
+
117  }
+ +
119  lp += nu * k * NEG_LOG_TWO_OVER_TWO;
+
120  return lp;
+
121  }
+
122 
+
123  template <typename T_y, typename T_dof, typename T_scale>
+
124  inline
+
125  typename boost::math::tools::promote_args<T_y,T_dof,T_scale>::type
+
126  inv_wishart_log(const Eigen::Matrix<T_y,Eigen::Dynamic,Eigen::Dynamic>& W,
+
127  const T_dof& nu,
+
128  const Eigen::Matrix<T_scale,Eigen::Dynamic,Eigen::Dynamic>& S) {
+
129  return inv_wishart_log<false>(W,nu,S);
+
130  }
+
131 
+
132  template <class RNG>
+
133  inline Eigen::Matrix<double, Eigen::Dynamic, Eigen::Dynamic>
+
134  inv_wishart_rng(const double nu,
+
135  const Eigen::Matrix<double,Eigen::Dynamic,Eigen::Dynamic>& S,
+
136  RNG& rng) {
+
137 
+
138  static const char* function = "stan::prob::inv_wishart_rng(%1%)";
+
139 
+ + +
142 
+ +
144  check_greater(function, nu, k-1, "Degrees of freedom parameter");
+
145  check_size_match(function,
+
146  S.rows(), "Rows of scale parameter",
+
147  S.cols(), "columns of scale parameter");
+
148 
+
149  Eigen::Matrix<double,Eigen::Dynamic,Eigen::Dynamic> S_inv(S.rows(), S.cols());
+
150  S_inv = Eigen::MatrixXd::Identity(S.cols(),S.cols());
+
151  S_inv = S.ldlt().solve(S_inv);
+
152 
+
153  return wishart_rng(nu, S_inv, rng).inverse();
+
154  }
+
155  }
+
156 }
+
157 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/inverse__softmax_8hpp.html b/doc/api/html/inverse__softmax_8hpp.html new file mode 100644 index 00000000000..cc34c7a128f --- /dev/null +++ b/doc/api/html/inverse__softmax_8hpp.html @@ -0,0 +1,132 @@ + + + + + +Stan: src/stan/math/functions/inverse_softmax.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
inverse_softmax.hpp File Reference
+
+
+
#include <boost/math/tools/promotion.hpp>
+#include <stdexcept>
+#include <boost/throw_exception.hpp>
+
+

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::math
 Matrices and templated mathematical functions.
 
+ + + + + +

+Functions

template<typename Vector >
void stan::math::inverse_softmax (const Vector &simplex, Vector &y)
 Writes the inverse softmax of the simplex argument into the second argument.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/inverse__softmax_8hpp_source.html b/doc/api/html/inverse__softmax_8hpp_source.html new file mode 100644 index 00000000000..e25872e7386 --- /dev/null +++ b/doc/api/html/inverse__softmax_8hpp_source.html @@ -0,0 +1,130 @@ + + + + + +Stan: src/stan/math/functions/inverse_softmax.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
inverse_softmax.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MATH__FUNCTIONS__INVERSE_SOFTMAX_HPP__
+
2 #define __STAN__MATH__FUNCTIONS__INVERSE_SOFTMAX_HPP__
+
3 
+
4 #include <boost/math/tools/promotion.hpp>
+
5 #include <stdexcept>
+
6 #include <boost/throw_exception.hpp>
+
7 
+
8 namespace stan {
+
9  namespace math {
+
10 
+
33  template <typename Vector>
+
34  void inverse_softmax(const Vector& simplex, Vector& y) {
+
35  using std::log;
+
36  if(simplex.size() != y.size())
+
37  BOOST_THROW_EXCEPTION(std::invalid_argument ("simplex.size() != y.size()"));
+
38  for (size_t i = 0; i < simplex.size(); ++i)
+
39  y[i] = log(simplex[i]);
+
40  }
+
41 
+
42  }
+
43 }
+
44 
+
45 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/inverse__spd_8hpp.html b/doc/api/html/inverse__spd_8hpp.html new file mode 100644 index 00000000000..3c265755575 --- /dev/null +++ b/doc/api/html/inverse__spd_8hpp.html @@ -0,0 +1,133 @@ + + + + + +Stan: src/stan/math/matrix/inverse_spd.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
inverse_spd.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::math
 Matrices and templated mathematical functions.
 
+ + + + + +

+Functions

template<typename T >
Eigen::Matrix< T,
+Eigen::Dynamic, Eigen::Dynamic > 
stan::math::inverse_spd (const Eigen::Matrix< T, Eigen::Dynamic, Eigen::Dynamic > &m)
 Returns the inverse of the specified symmetric, pos/neg-definite matrix.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/inverse__spd_8hpp_source.html b/doc/api/html/inverse__spd_8hpp_source.html new file mode 100644 index 00000000000..2595f4fb870 --- /dev/null +++ b/doc/api/html/inverse__spd_8hpp_source.html @@ -0,0 +1,134 @@ + + + + + +Stan: src/stan/math/matrix/inverse_spd.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
inverse_spd.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MATH__MATRIX__INVERSE_SPD_HPP__
+
2 #define __STAN__MATH__MATRIX__INVERSE_SPD_HPP__
+
3 
+ + + +
7 
+
8 namespace stan {
+
9  namespace math {
+
10 
+
16  template <typename T>
+
17  inline
+
18  Eigen::Matrix<T,Eigen::Dynamic,Eigen::Dynamic>
+
19  inverse_spd(const Eigen::Matrix<T,Eigen::Dynamic,Eigen::Dynamic>& m) {
+
20  validate_square(m,"inverse_spd");
+
21  validate_symmetric(m,"inverse_spd");
+
22  Eigen::LDLT< Eigen::Matrix<T,Eigen::Dynamic,Eigen::Dynamic> > ldlt(0.5*(m+m.transpose()));
+
23  if (ldlt.info() != Eigen::Success)
+
24  throw std::domain_error("Error in inverse_spd, LDLT factorization failed");
+
25  if (!ldlt.isPositive() || (ldlt.vectorD().array() <= 0).any())
+
26  throw std::domain_error("Error in inverse_spd, matrix not positive definite");
+
27  return ldlt.solve(Eigen::Matrix<T,Eigen::Dynamic,Eigen::Dynamic>::Identity(m.rows(),m.cols()));
+
28  }
+
29 
+
30  }
+
31 }
+
32 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/io_2util_8hpp.html b/doc/api/html/io_2util_8hpp.html new file mode 100644 index 00000000000..a6d11e69e3c --- /dev/null +++ b/doc/api/html/io_2util_8hpp.html @@ -0,0 +1,130 @@ + + + + + +Stan: src/stan/io/util.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
util.hpp File Reference
+
+
+
#include <string>
+#include <ctime>
+
+

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::io
 Input/output utilities.
 
+ + + + +

+Functions

std::string stan::io::utc_time_string ()
 Return the current coordinated universal time (UTC) as a string.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/io_2util_8hpp_source.html b/doc/api/html/io_2util_8hpp_source.html new file mode 100644 index 00000000000..eb533ddcb27 --- /dev/null +++ b/doc/api/html/io_2util_8hpp_source.html @@ -0,0 +1,140 @@ + + + + + +Stan: src/stan/io/util.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
util.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__IO__UTIL_HPP__
+
2 #define __STAN__IO__UTIL_HPP__
+
3 
+
4 #include <string>
+
5 #include <ctime>
+
6 
+
7 namespace stan {
+
8 
+
9  namespace io {
+
10 
+
18  std::string utc_time_string() {
+
19  // FIXME: use std::strftime
+
20 
+
21  // original with asctime
+
22  // std::time_t rawtime = time(0);
+
23  // std::tm *time = gmtime(&rawtime);
+
24  // return std::string(asctime(time));
+
25 
+
26  // new with strfitime
+
27  time_t rawtime;
+
28  std::time(&rawtime);
+
29 
+
30  char cbuf[80];
+
31  std::strftime(cbuf,80,"%a %b %d %Y %H:%M:%S",
+
32  std::localtime(&rawtime));
+
33 
+
34  return std::string(cbuf);
+
35  }
+
36 
+
37  }
+
38 }
+
39 
+
40 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/io_8hpp.html b/doc/api/html/io_8hpp.html new file mode 100644 index 00000000000..12c4a773fe9 --- /dev/null +++ b/doc/api/html/io_8hpp.html @@ -0,0 +1,115 @@ + + + + + +Stan: src/stan/io.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
io.hpp File Reference
+
+ +
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/io_8hpp_source.html b/doc/api/html/io_8hpp_source.html new file mode 100644 index 00000000000..efb25cf1b71 --- /dev/null +++ b/doc/api/html/io_8hpp_source.html @@ -0,0 +1,118 @@ + + + + + +Stan: src/stan/io.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
io.hpp
+
+
+Go to the documentation of this file.
1 #ifndef STAN_IO_HPP
+
2 #define STAN_IO_HPP
+
3 
+
4 #include "stan/io/cmd_line.hpp"
+
5 #include "stan/io/csv_writer.hpp"
+
6 #include "stan/io/dump.hpp"
+
7 #include "stan/io/reader.hpp"
+ +
9 #include "stan/io/writer.hpp"
+
10 
+
11 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/iterator__typedefs_8hpp.html b/doc/api/html/iterator__typedefs_8hpp.html new file mode 100644 index 00000000000..f0dc2299c20 --- /dev/null +++ b/doc/api/html/iterator__typedefs_8hpp.html @@ -0,0 +1,139 @@ + + + + + +Stan: src/stan/gm/grammars/iterator_typedefs.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
iterator_typedefs.hpp File Reference
+
+
+
#include <boost/spirit/include/support_multi_pass.hpp>
+#include <boost/spirit/include/classic_position_iterator.hpp>
+#include <iterator>
+
+

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::gm
 Directed graphical model compiler.
 
+ + + + + + + +

+Typedefs

typedef
+std::istreambuf_iterator< char > 
stan::gm::base_iterator_t
 
typedef
+boost::spirit::multi_pass
+< base_iterator_t > 
stan::gm::forward_iterator_t
 
typedef
+boost::spirit::classic::position_iterator2
+< forward_iterator_t > 
stan::gm::pos_iterator_t
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/iterator__typedefs_8hpp_source.html b/doc/api/html/iterator__typedefs_8hpp_source.html new file mode 100644 index 00000000000..e3e92d9b977 --- /dev/null +++ b/doc/api/html/iterator__typedefs_8hpp_source.html @@ -0,0 +1,122 @@ + + + + + +Stan: src/stan/gm/grammars/iterator_typedefs.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
iterator_typedefs.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__GM__PARSER__PARSER__ITERATOR_TYPEDEFS__HPP__
+
2 #define __STAN__GM__PARSER__PARSER__ITERATOR_TYPEDEFS__HPP__
+
3 
+
4 #include <boost/spirit/include/support_multi_pass.hpp>
+
5 #include <boost/spirit/include/classic_position_iterator.hpp>
+
6 #include <iterator>
+
7 
+
8 namespace stan {
+
9  namespace gm {
+
10  typedef std::istreambuf_iterator<char> base_iterator_t;
+
11  typedef boost::spirit::multi_pass<base_iterator_t> forward_iterator_t;
+
12  typedef boost::spirit::classic::position_iterator2<forward_iterator_t> pos_iterator_t;
+
13  }
+
14 }
+
15 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/jacobian_8hpp.html b/doc/api/html/jacobian_8hpp.html new file mode 100644 index 00000000000..b000acbadb5 --- /dev/null +++ b/doc/api/html/jacobian_8hpp.html @@ -0,0 +1,130 @@ + + + + + +Stan: src/stan/agrad/rev/jacobian.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
jacobian.hpp File Reference
+
+
+
#include <vector>
+#include <stan/agrad/rev/var.hpp>
+
+

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+ + + + +

+Functions

void stan::agrad::jacobian (std::vector< var > &dependents, std::vector< var > &independents, std::vector< std::vector< double > > &jacobian)
 Return the Jacobian of the function producing the specified dependent variables with respect to the specified independent variables.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/jacobian_8hpp_source.html b/doc/api/html/jacobian_8hpp_source.html new file mode 100644 index 00000000000..bf8372f823f --- /dev/null +++ b/doc/api/html/jacobian_8hpp_source.html @@ -0,0 +1,134 @@ + + + + + +Stan: src/stan/agrad/rev/jacobian.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
jacobian.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__REV__JACOBIAN_HPP__
+
2 #define __STAN__AGRAD__REV__JACOBIAN_HPP__
+
3 
+
4 #include <vector>
+
5 #include <stan/agrad/rev/var.hpp>
+
6 
+
7 namespace stan {
+
8  namespace agrad {
+
9 
+
36  inline void jacobian(std::vector<var>& dependents,
+
37  std::vector<var>& independents,
+
38  std::vector<std::vector<double> >& jacobian) {
+
39  jacobian.resize(dependents.size());
+
40  for (size_t i = 0; i < dependents.size(); ++i) {
+
41  jacobian[i].resize(independents.size());
+
42  if (i > 0)
+ +
44  jacobian.push_back(std::vector<double>(0));
+
45  grad(dependents[i].vi_);
+
46  for (size_t j = 0; j < independents.size(); ++j)
+
47  jacobian[i][j] = independents[j].adj();
+
48  }
+
49  }
+
50 
+
51  }
+
52 }
+
53 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/jquery.js b/doc/api/html/jquery.js new file mode 100644 index 00000000000..63939e76dd2 --- /dev/null +++ b/doc/api/html/jquery.js @@ -0,0 +1,8 @@ +/*! jQuery v1.7.1 jquery.com | jquery.org/license */ +(function(a,b){function cy(a){return f.isWindow(a)?a:a.nodeType===9?a.defaultView||a.parentWindow:!1}function cv(a){if(!ck[a]){var b=c.body,d=f("<"+a+">").appendTo(b),e=d.css("display");d.remove();if(e==="none"||e===""){cl||(cl=c.createElement("iframe"),cl.frameBorder=cl.width=cl.height=0),b.appendChild(cl);if(!cm||!cl.createElement)cm=(cl.contentWindow||cl.contentDocument).document,cm.write((c.compatMode==="CSS1Compat"?"":"")+""),cm.close();d=cm.createElement(a),cm.body.appendChild(d),e=f.css(d,"display"),b.removeChild(cl)}ck[a]=e}return ck[a]}function cu(a,b){var c={};f.each(cq.concat.apply([],cq.slice(0,b)),function(){c[this]=a});return c}function ct(){cr=b}function cs(){setTimeout(ct,0);return cr=f.now()}function cj(){try{return new a.ActiveXObject("Microsoft.XMLHTTP")}catch(b){}}function ci(){try{return new a.XMLHttpRequest}catch(b){}}function cc(a,c){a.dataFilter&&(c=a.dataFilter(c,a.dataType));var d=a.dataTypes,e={},g,h,i=d.length,j,k=d[0],l,m,n,o,p;for(g=1;g0){if(c!=="border")for(;g=0===c})}function S(a){return!a||!a.parentNode||a.parentNode.nodeType===11}function K(){return!0}function J(){return!1}function n(a,b,c){var d=b+"defer",e=b+"queue",g=b+"mark",h=f._data(a,d);h&&(c==="queue"||!f._data(a,e))&&(c==="mark"||!f._data(a,g))&&setTimeout(function(){!f._data(a,e)&&!f._data(a,g)&&(f.removeData(a,d,!0),h.fire())},0)}function m(a){for(var b in a){if(b==="data"&&f.isEmptyObject(a[b]))continue;if(b!=="toJSON")return!1}return!0}function l(a,c,d){if(d===b&&a.nodeType===1){var e="data-"+c.replace(k,"-$1").toLowerCase();d=a.getAttribute(e);if(typeof d=="string"){try{d=d==="true"?!0:d==="false"?!1:d==="null"?null:f.isNumeric(d)?parseFloat(d):j.test(d)?f.parseJSON(d):d}catch(g){}f.data(a,c,d)}else d=b}return d}function h(a){var b=g[a]={},c,d;a=a.split(/\s+/);for(c=0,d=a.length;c)[^>]*$|#([\w\-]*)$)/,j=/\S/,k=/^\s+/,l=/\s+$/,m=/^<(\w+)\s*\/?>(?:<\/\1>)?$/,n=/^[\],:{}\s]*$/,o=/\\(?:["\\\/bfnrt]|u[0-9a-fA-F]{4})/g,p=/"[^"\\\n\r]*"|true|false|null|-?\d+(?:\.\d*)?(?:[eE][+\-]?\d+)?/g,q=/(?:^|:|,)(?:\s*\[)+/g,r=/(webkit)[ \/]([\w.]+)/,s=/(opera)(?:.*version)?[ \/]([\w.]+)/,t=/(msie) ([\w.]+)/,u=/(mozilla)(?:.*? rv:([\w.]+))?/,v=/-([a-z]|[0-9])/ig,w=/^-ms-/,x=function(a,b){return(b+"").toUpperCase()},y=d.userAgent,z,A,B,C=Object.prototype.toString,D=Object.prototype.hasOwnProperty,E=Array.prototype.push,F=Array.prototype.slice,G=String.prototype.trim,H=Array.prototype.indexOf,I={};e.fn=e.prototype={constructor:e,init:function(a,d,f){var g,h,j,k;if(!a)return this;if(a.nodeType){this.context=this[0]=a,this.length=1;return this}if(a==="body"&&!d&&c.body){this.context=c,this[0]=c.body,this.selector=a,this.length=1;return this}if(typeof a=="string"){a.charAt(0)!=="<"||a.charAt(a.length-1)!==">"||a.length<3?g=i.exec(a):g=[null,a,null];if(g&&(g[1]||!d)){if(g[1]){d=d instanceof e?d[0]:d,k=d?d.ownerDocument||d:c,j=m.exec(a),j?e.isPlainObject(d)?(a=[c.createElement(j[1])],e.fn.attr.call(a,d,!0)):a=[k.createElement(j[1])]:(j=e.buildFragment([g[1]],[k]),a=(j.cacheable?e.clone(j.fragment):j.fragment).childNodes);return e.merge(this,a)}h=c.getElementById(g[2]);if(h&&h.parentNode){if(h.id!==g[2])return f.find(a);this.length=1,this[0]=h}this.context=c,this.selector=a;return this}return!d||d.jquery?(d||f).find(a):this.constructor(d).find(a)}if(e.isFunction(a))return f.ready(a);a.selector!==b&&(this.selector=a.selector,this.context=a.context);return e.makeArray(a,this)},selector:"",jquery:"1.7.1",length:0,size:function(){return this.length},toArray:function(){return F.call(this,0)},get:function(a){return a==null?this.toArray():a<0?this[this.length+a]:this[a]},pushStack:function(a,b,c){var d=this.constructor();e.isArray(a)?E.apply(d,a):e.merge(d,a),d.prevObject=this,d.context=this.context,b==="find"?d.selector=this.selector+(this.selector?" ":"")+c:b&&(d.selector=this.selector+"."+b+"("+c+")");return d},each:function(a,b){return e.each(this,a,b)},ready:function(a){e.bindReady(),A.add(a);return this},eq:function(a){a=+a;return a===-1?this.slice(a):this.slice(a,a+1)},first:function(){return this.eq(0)},last:function(){return this.eq(-1)},slice:function(){return this.pushStack(F.apply(this,arguments),"slice",F.call(arguments).join(","))},map:function(a){return this.pushStack(e.map(this,function(b,c){return a.call(b,c,b)}))},end:function(){return this.prevObject||this.constructor(null)},push:E,sort:[].sort,splice:[].splice},e.fn.init.prototype=e.fn,e.extend=e.fn.extend=function(){var a,c,d,f,g,h,i=arguments[0]||{},j=1,k=arguments.length,l=!1;typeof i=="boolean"&&(l=i,i=arguments[1]||{},j=2),typeof i!="object"&&!e.isFunction(i)&&(i={}),k===j&&(i=this,--j);for(;j0)return;A.fireWith(c,[e]),e.fn.trigger&&e(c).trigger("ready").off("ready")}},bindReady:function(){if(!A){A=e.Callbacks("once memory");if(c.readyState==="complete")return setTimeout(e.ready,1);if(c.addEventListener)c.addEventListener("DOMContentLoaded",B,!1),a.addEventListener("load",e.ready,!1);else if(c.attachEvent){c.attachEvent("onreadystatechange",B),a.attachEvent("onload",e.ready);var b=!1;try{b=a.frameElement==null}catch(d){}c.documentElement.doScroll&&b&&J()}}},isFunction:function(a){return e.type(a)==="function"},isArray:Array.isArray||function(a){return e.type(a)==="array"},isWindow:function(a){return a&&typeof a=="object"&&"setInterval"in a},isNumeric:function(a){return!isNaN(parseFloat(a))&&isFinite(a)},type:function(a){return a==null?String(a):I[C.call(a)]||"object"},isPlainObject:function(a){if(!a||e.type(a)!=="object"||a.nodeType||e.isWindow(a))return!1;try{if(a.constructor&&!D.call(a,"constructor")&&!D.call(a.constructor.prototype,"isPrototypeOf"))return!1}catch(c){return!1}var d;for(d in a);return d===b||D.call(a,d)},isEmptyObject:function(a){for(var b in a)return!1;return!0},error:function(a){throw new Error(a)},parseJSON:function(b){if(typeof b!="string"||!b)return null;b=e.trim(b);if(a.JSON&&a.JSON.parse)return a.JSON.parse(b);if(n.test(b.replace(o,"@").replace(p,"]").replace(q,"")))return(new Function("return "+b))();e.error("Invalid JSON: "+b)},parseXML:function(c){var d,f;try{a.DOMParser?(f=new DOMParser,d=f.parseFromString(c,"text/xml")):(d=new ActiveXObject("Microsoft.XMLDOM"),d.async="false",d.loadXML(c))}catch(g){d=b}(!d||!d.documentElement||d.getElementsByTagName("parsererror").length)&&e.error("Invalid XML: "+c);return d},noop:function(){},globalEval:function(b){b&&j.test(b)&&(a.execScript||function(b){a.eval.call(a,b)})(b)},camelCase:function(a){return a.replace(w,"ms-").replace(v,x)},nodeName:function(a,b){return a.nodeName&&a.nodeName.toUpperCase()===b.toUpperCase()},each:function(a,c,d){var f,g=0,h=a.length,i=h===b||e.isFunction(a);if(d){if(i){for(f in a)if(c.apply(a[f],d)===!1)break}else for(;g0&&a[0]&&a[j-1]||j===0||e.isArray(a));if(k)for(;i1?i.call(arguments,0):b,j.notifyWith(k,e)}}function l(a){return function(c){b[a]=arguments.length>1?i.call(arguments,0):c,--g||j.resolveWith(j,b)}}var b=i.call(arguments,0),c=0,d=b.length,e=Array(d),g=d,h=d,j=d<=1&&a&&f.isFunction(a.promise)?a:f.Deferred(),k=j.promise();if(d>1){for(;c
a",d=q.getElementsByTagName("*"),e=q.getElementsByTagName("a")[0];if(!d||!d.length||!e)return{};g=c.createElement("select"),h=g.appendChild(c.createElement("option")),i=q.getElementsByTagName("input")[0],b={leadingWhitespace:q.firstChild.nodeType===3,tbody:!q.getElementsByTagName("tbody").length,htmlSerialize:!!q.getElementsByTagName("link").length,style:/top/.test(e.getAttribute("style")),hrefNormalized:e.getAttribute("href")==="/a",opacity:/^0.55/.test(e.style.opacity),cssFloat:!!e.style.cssFloat,checkOn:i.value==="on",optSelected:h.selected,getSetAttribute:q.className!=="t",enctype:!!c.createElement("form").enctype,html5Clone:c.createElement("nav").cloneNode(!0).outerHTML!=="<:nav>",submitBubbles:!0,changeBubbles:!0,focusinBubbles:!1,deleteExpando:!0,noCloneEvent:!0,inlineBlockNeedsLayout:!1,shrinkWrapBlocks:!1,reliableMarginRight:!0},i.checked=!0,b.noCloneChecked=i.cloneNode(!0).checked,g.disabled=!0,b.optDisabled=!h.disabled;try{delete q.test}catch(s){b.deleteExpando=!1}!q.addEventListener&&q.attachEvent&&q.fireEvent&&(q.attachEvent("onclick",function(){b.noCloneEvent=!1}),q.cloneNode(!0).fireEvent("onclick")),i=c.createElement("input"),i.value="t",i.setAttribute("type","radio"),b.radioValue=i.value==="t",i.setAttribute("checked","checked"),q.appendChild(i),k=c.createDocumentFragment(),k.appendChild(q.lastChild),b.checkClone=k.cloneNode(!0).cloneNode(!0).lastChild.checked,b.appendChecked=i.checked,k.removeChild(i),k.appendChild(q),q.innerHTML="",a.getComputedStyle&&(j=c.createElement("div"),j.style.width="0",j.style.marginRight="0",q.style.width="2px",q.appendChild(j),b.reliableMarginRight=(parseInt((a.getComputedStyle(j,null)||{marginRight:0}).marginRight,10)||0)===0);if(q.attachEvent)for(o in{submit:1,change:1,focusin:1})n="on"+o,p=n in q,p||(q.setAttribute(n,"return;"),p=typeof q[n]=="function"),b[o+"Bubbles"]=p;k.removeChild(q),k=g=h=j=q=i=null,f(function(){var a,d,e,g,h,i,j,k,m,n,o,r=c.getElementsByTagName("body")[0];!r||(j=1,k="position:absolute;top:0;left:0;width:1px;height:1px;margin:0;",m="visibility:hidden;border:0;",n="style='"+k+"border:5px solid #000;padding:0;'",o="
"+""+"
",a=c.createElement("div"),a.style.cssText=m+"width:0;height:0;position:static;top:0;margin-top:"+j+"px",r.insertBefore(a,r.firstChild),q=c.createElement("div"),a.appendChild(q),q.innerHTML="
t
",l=q.getElementsByTagName("td"),p=l[0].offsetHeight===0,l[0].style.display="",l[1].style.display="none",b.reliableHiddenOffsets=p&&l[0].offsetHeight===0,q.innerHTML="",q.style.width=q.style.paddingLeft="1px",f.boxModel=b.boxModel=q.offsetWidth===2,typeof q.style.zoom!="undefined"&&(q.style.display="inline",q.style.zoom=1,b.inlineBlockNeedsLayout=q.offsetWidth===2,q.style.display="",q.innerHTML="
",b.shrinkWrapBlocks=q.offsetWidth!==2),q.style.cssText=k+m,q.innerHTML=o,d=q.firstChild,e=d.firstChild,h=d.nextSibling.firstChild.firstChild,i={doesNotAddBorder:e.offsetTop!==5,doesAddBorderForTableAndCells:h.offsetTop===5},e.style.position="fixed",e.style.top="20px",i.fixedPosition=e.offsetTop===20||e.offsetTop===15,e.style.position=e.style.top="",d.style.overflow="hidden",d.style.position="relative",i.subtractsBorderForOverflowNotVisible=e.offsetTop===-5,i.doesNotIncludeMarginInBodyOffset=r.offsetTop!==j,r.removeChild(a),q=a=null,f.extend(b,i))});return b}();var j=/^(?:\{.*\}|\[.*\])$/,k=/([A-Z])/g;f.extend({cache:{},uuid:0,expando:"jQuery"+(f.fn.jquery+Math.random()).replace(/\D/g,""),noData:{embed:!0,object:"clsid:D27CDB6E-AE6D-11cf-96B8-444553540000",applet:!0},hasData:function(a){a=a.nodeType?f.cache[a[f.expando]]:a[f.expando];return!!a&&!m(a)},data:function(a,c,d,e){if(!!f.acceptData(a)){var g,h,i,j=f.expando,k=typeof c=="string",l=a.nodeType,m=l?f.cache:a,n=l?a[j]:a[j]&&j,o=c==="events";if((!n||!m[n]||!o&&!e&&!m[n].data)&&k&&d===b)return;n||(l?a[j]=n=++f.uuid:n=j),m[n]||(m[n]={},l||(m[n].toJSON=f.noop));if(typeof c=="object"||typeof c=="function")e?m[n]=f.extend(m[n],c):m[n].data=f.extend(m[n].data,c);g=h=m[n],e||(h.data||(h.data={}),h=h.data),d!==b&&(h[f.camelCase(c)]=d);if(o&&!h[c])return g.events;k?(i=h[c],i==null&&(i=h[f.camelCase(c)])):i=h;return i}},removeData:function(a,b,c){if(!!f.acceptData(a)){var d,e,g,h=f.expando,i=a.nodeType,j=i?f.cache:a,k=i?a[h]:h;if(!j[k])return;if(b){d=c?j[k]:j[k].data;if(d){f.isArray(b)||(b in d?b=[b]:(b=f.camelCase(b),b in d?b=[b]:b=b.split(" ")));for(e=0,g=b.length;e-1)return!0;return!1},val:function(a){var c,d,e,g=this[0];{if(!!arguments.length){e=f.isFunction(a);return this.each(function(d){var g=f(this),h;if(this.nodeType===1){e?h=a.call(this,d,g.val()):h=a,h==null?h="":typeof h=="number"?h+="":f.isArray(h)&&(h=f.map(h,function(a){return a==null?"":a+""})),c=f.valHooks[this.nodeName.toLowerCase()]||f.valHooks[this.type];if(!c||!("set"in c)||c.set(this,h,"value")===b)this.value=h}})}if(g){c=f.valHooks[g.nodeName.toLowerCase()]||f.valHooks[g.type];if(c&&"get"in c&&(d=c.get(g,"value"))!==b)return d;d=g.value;return typeof d=="string"?d.replace(q,""):d==null?"":d}}}}),f.extend({valHooks:{option:{get:function(a){var b=a.attributes.value;return!b||b.specified?a.value:a.text}},select:{get:function(a){var b,c,d,e,g=a.selectedIndex,h=[],i=a.options,j=a.type==="select-one";if(g<0)return null;c=j?g:0,d=j?g+1:i.length;for(;c=0}),c.length||(a.selectedIndex=-1);return c}}},attrFn:{val:!0,css:!0,html:!0,text:!0,data:!0,width:!0,height:!0,offset:!0},attr:function(a,c,d,e){var g,h,i,j=a.nodeType;if(!!a&&j!==3&&j!==8&&j!==2){if(e&&c in f.attrFn)return f(a)[c](d);if(typeof a.getAttribute=="undefined")return f.prop(a,c,d);i=j!==1||!f.isXMLDoc(a),i&&(c=c.toLowerCase(),h=f.attrHooks[c]||(u.test(c)?x:w));if(d!==b){if(d===null){f.removeAttr(a,c);return}if(h&&"set"in h&&i&&(g=h.set(a,d,c))!==b)return g;a.setAttribute(c,""+d);return d}if(h&&"get"in h&&i&&(g=h.get(a,c))!==null)return g;g=a.getAttribute(c);return g===null?b:g}},removeAttr:function(a,b){var c,d,e,g,h=0;if(b&&a.nodeType===1){d=b.toLowerCase().split(p),g=d.length;for(;h=0}})});var z=/^(?:textarea|input|select)$/i,A=/^([^\.]*)?(?:\.(.+))?$/,B=/\bhover(\.\S+)?\b/,C=/^key/,D=/^(?:mouse|contextmenu)|click/,E=/^(?:focusinfocus|focusoutblur)$/,F=/^(\w*)(?:#([\w\-]+))?(?:\.([\w\-]+))?$/,G=function(a){var b=F.exec(a);b&&(b[1]=(b[1]||"").toLowerCase(),b[3]=b[3]&&new RegExp("(?:^|\\s)"+b[3]+"(?:\\s|$)"));return b},H=function(a,b){var c=a.attributes||{};return(!b[1]||a.nodeName.toLowerCase()===b[1])&&(!b[2]||(c.id||{}).value===b[2])&&(!b[3]||b[3].test((c["class"]||{}).value))},I=function(a){return f.event.special.hover?a:a.replace(B,"mouseenter$1 mouseleave$1")}; +f.event={add:function(a,c,d,e,g){var h,i,j,k,l,m,n,o,p,q,r,s;if(!(a.nodeType===3||a.nodeType===8||!c||!d||!(h=f._data(a)))){d.handler&&(p=d,d=p.handler),d.guid||(d.guid=f.guid++),j=h.events,j||(h.events=j={}),i=h.handle,i||(h.handle=i=function(a){return typeof f!="undefined"&&(!a||f.event.triggered!==a.type)?f.event.dispatch.apply(i.elem,arguments):b},i.elem=a),c=f.trim(I(c)).split(" ");for(k=0;k=0&&(h=h.slice(0,-1),k=!0),h.indexOf(".")>=0&&(i=h.split("."),h=i.shift(),i.sort());if((!e||f.event.customEvent[h])&&!f.event.global[h])return;c=typeof c=="object"?c[f.expando]?c:new f.Event(h,c):new f.Event(h),c.type=h,c.isTrigger=!0,c.exclusive=k,c.namespace=i.join("."),c.namespace_re=c.namespace?new RegExp("(^|\\.)"+i.join("\\.(?:.*\\.)?")+"(\\.|$)"):null,o=h.indexOf(":")<0?"on"+h:"";if(!e){j=f.cache;for(l in j)j[l].events&&j[l].events[h]&&f.event.trigger(c,d,j[l].handle.elem,!0);return}c.result=b,c.target||(c.target=e),d=d!=null?f.makeArray(d):[],d.unshift(c),p=f.event.special[h]||{};if(p.trigger&&p.trigger.apply(e,d)===!1)return;r=[[e,p.bindType||h]];if(!g&&!p.noBubble&&!f.isWindow(e)){s=p.delegateType||h,m=E.test(s+h)?e:e.parentNode,n=null;for(;m;m=m.parentNode)r.push([m,s]),n=m;n&&n===e.ownerDocument&&r.push([n.defaultView||n.parentWindow||a,s])}for(l=0;le&&i.push({elem:this,matches:d.slice(e)});for(j=0;j0?this.on(b,null,a,c):this.trigger(b)},f.attrFn&&(f.attrFn[b]=!0),C.test(b)&&(f.event.fixHooks[b]=f.event.keyHooks),D.test(b)&&(f.event.fixHooks[b]=f.event.mouseHooks)}),function(){function x(a,b,c,e,f,g){for(var h=0,i=e.length;h0){k=j;break}}j=j[a]}e[h]=k}}}function w(a,b,c,e,f,g){for(var h=0,i=e.length;h+~,(\[\\]+)+|[>+~])(\s*,\s*)?((?:.|\r|\n)*)/g,d="sizcache"+(Math.random()+"").replace(".",""),e=0,g=Object.prototype.toString,h=!1,i=!0,j=/\\/g,k=/\r\n/g,l=/\W/;[0,0].sort(function(){i=!1;return 0});var m=function(b,d,e,f){e=e||[],d=d||c;var h=d;if(d.nodeType!==1&&d.nodeType!==9)return[];if(!b||typeof b!="string")return e;var i,j,k,l,n,q,r,t,u=!0,v=m.isXML(d),w=[],x=b;do{a.exec(""),i=a.exec(x);if(i){x=i[3],w.push(i[1]);if(i[2]){l=i[3];break}}}while(i);if(w.length>1&&p.exec(b))if(w.length===2&&o.relative[w[0]])j=y(w[0]+w[1],d,f);else{j=o.relative[w[0]]?[d]:m(w.shift(),d);while(w.length)b=w.shift(),o.relative[b]&&(b+=w.shift()),j=y(b,j,f)}else{!f&&w.length>1&&d.nodeType===9&&!v&&o.match.ID.test(w[0])&&!o.match.ID.test(w[w.length-1])&&(n=m.find(w.shift(),d,v),d=n.expr?m.filter(n.expr,n.set)[0]:n.set[0]);if(d){n=f?{expr:w.pop(),set:s(f)}:m.find(w.pop(),w.length===1&&(w[0]==="~"||w[0]==="+")&&d.parentNode?d.parentNode:d,v),j=n.expr?m.filter(n.expr,n.set):n.set,w.length>0?k=s(j):u=!1;while(w.length)q=w.pop(),r=q,o.relative[q]?r=w.pop():q="",r==null&&(r=d),o.relative[q](k,r,v)}else k=w=[]}k||(k=j),k||m.error(q||b);if(g.call(k)==="[object Array]")if(!u)e.push.apply(e,k);else if(d&&d.nodeType===1)for(t=0;k[t]!=null;t++)k[t]&&(k[t]===!0||k[t].nodeType===1&&m.contains(d,k[t]))&&e.push(j[t]);else for(t=0;k[t]!=null;t++)k[t]&&k[t].nodeType===1&&e.push(j[t]);else s(k,e);l&&(m(l,h,e,f),m.uniqueSort(e));return e};m.uniqueSort=function(a){if(u){h=i,a.sort(u);if(h)for(var b=1;b0},m.find=function(a,b,c){var d,e,f,g,h,i;if(!a)return[];for(e=0,f=o.order.length;e":function(a,b){var c,d=typeof b=="string",e=0,f=a.length;if(d&&!l.test(b)){b=b.toLowerCase();for(;e=0)?c||d.push(h):c&&(b[g]=!1));return!1},ID:function(a){return a[1].replace(j,"")},TAG:function(a,b){return a[1].replace(j,"").toLowerCase()},CHILD:function(a){if(a[1]==="nth"){a[2]||m.error(a[0]),a[2]=a[2].replace(/^\+|\s*/g,"");var b=/(-?)(\d*)(?:n([+\-]?\d*))?/.exec(a[2]==="even"&&"2n"||a[2]==="odd"&&"2n+1"||!/\D/.test(a[2])&&"0n+"+a[2]||a[2]);a[2]=b[1]+(b[2]||1)-0,a[3]=b[3]-0}else a[2]&&m.error(a[0]);a[0]=e++;return a},ATTR:function(a,b,c,d,e,f){var g=a[1]=a[1].replace(j,"");!f&&o.attrMap[g]&&(a[1]=o.attrMap[g]),a[4]=(a[4]||a[5]||"").replace(j,""),a[2]==="~="&&(a[4]=" "+a[4]+" ");return a},PSEUDO:function(b,c,d,e,f){if(b[1]==="not")if((a.exec(b[3])||"").length>1||/^\w/.test(b[3]))b[3]=m(b[3],null,null,c);else{var g=m.filter(b[3],c,d,!0^f);d||e.push.apply(e,g);return!1}else if(o.match.POS.test(b[0])||o.match.CHILD.test(b[0]))return!0;return b},POS:function(a){a.unshift(!0);return a}},filters:{enabled:function(a){return a.disabled===!1&&a.type!=="hidden"},disabled:function(a){return a.disabled===!0},checked:function(a){return a.checked===!0},selected:function(a){a.parentNode&&a.parentNode.selectedIndex;return a.selected===!0},parent:function(a){return!!a.firstChild},empty:function(a){return!a.firstChild},has:function(a,b,c){return!!m(c[3],a).length},header:function(a){return/h\d/i.test(a.nodeName)},text:function(a){var b=a.getAttribute("type"),c=a.type;return a.nodeName.toLowerCase()==="input"&&"text"===c&&(b===c||b===null)},radio:function(a){return a.nodeName.toLowerCase()==="input"&&"radio"===a.type},checkbox:function(a){return a.nodeName.toLowerCase()==="input"&&"checkbox"===a.type},file:function(a){return a.nodeName.toLowerCase()==="input"&&"file"===a.type},password:function(a){return a.nodeName.toLowerCase()==="input"&&"password"===a.type},submit:function(a){var b=a.nodeName.toLowerCase();return(b==="input"||b==="button")&&"submit"===a.type},image:function(a){return a.nodeName.toLowerCase()==="input"&&"image"===a.type},reset:function(a){var b=a.nodeName.toLowerCase();return(b==="input"||b==="button")&&"reset"===a.type},button:function(a){var b=a.nodeName.toLowerCase();return b==="input"&&"button"===a.type||b==="button"},input:function(a){return/input|select|textarea|button/i.test(a.nodeName)},focus:function(a){return a===a.ownerDocument.activeElement}},setFilters:{first:function(a,b){return b===0},last:function(a,b,c,d){return b===d.length-1},even:function(a,b){return b%2===0},odd:function(a,b){return b%2===1},lt:function(a,b,c){return bc[3]-0},nth:function(a,b,c){return c[3]-0===b},eq:function(a,b,c){return c[3]-0===b}},filter:{PSEUDO:function(a,b,c,d){var e=b[1],f=o.filters[e];if(f)return f(a,c,b,d);if(e==="contains")return(a.textContent||a.innerText||n([a])||"").indexOf(b[3])>=0;if(e==="not"){var g=b[3];for(var h=0,i=g.length;h=0}},ID:function(a,b){return a.nodeType===1&&a.getAttribute("id")===b},TAG:function(a,b){return b==="*"&&a.nodeType===1||!!a.nodeName&&a.nodeName.toLowerCase()===b},CLASS:function(a,b){return(" "+(a.className||a.getAttribute("class"))+" ").indexOf(b)>-1},ATTR:function(a,b){var c=b[1],d=m.attr?m.attr(a,c):o.attrHandle[c]?o.attrHandle[c](a):a[c]!=null?a[c]:a.getAttribute(c),e=d+"",f=b[2],g=b[4];return d==null?f==="!=":!f&&m.attr?d!=null:f==="="?e===g:f==="*="?e.indexOf(g)>=0:f==="~="?(" "+e+" ").indexOf(g)>=0:g?f==="!="?e!==g:f==="^="?e.indexOf(g)===0:f==="$="?e.substr(e.length-g.length)===g:f==="|="?e===g||e.substr(0,g.length+1)===g+"-":!1:e&&d!==!1},POS:function(a,b,c,d){var e=b[2],f=o.setFilters[e];if(f)return f(a,c,b,d)}}},p=o.match.POS,q=function(a,b){return"\\"+(b-0+1)};for(var r in o.match)o.match[r]=new RegExp(o.match[r].source+/(?![^\[]*\])(?![^\(]*\))/.source),o.leftMatch[r]=new RegExp(/(^(?:.|\r|\n)*?)/.source+o.match[r].source.replace(/\\(\d+)/g,q));var s=function(a,b){a=Array.prototype.slice.call(a,0);if(b){b.push.apply(b,a);return b}return a};try{Array.prototype.slice.call(c.documentElement.childNodes,0)[0].nodeType}catch(t){s=function(a,b){var c=0,d=b||[];if(g.call(a)==="[object Array]")Array.prototype.push.apply(d,a);else if(typeof a.length=="number")for(var e=a.length;c",e.insertBefore(a,e.firstChild),c.getElementById(d)&&(o.find.ID=function(a,c,d){if(typeof c.getElementById!="undefined"&&!d){var e=c.getElementById(a[1]);return e?e.id===a[1]||typeof e.getAttributeNode!="undefined"&&e.getAttributeNode("id").nodeValue===a[1]?[e]:b:[]}},o.filter.ID=function(a,b){var c=typeof a.getAttributeNode!="undefined"&&a.getAttributeNode("id");return a.nodeType===1&&c&&c.nodeValue===b}),e.removeChild(a),e=a=null}(),function(){var a=c.createElement("div");a.appendChild(c.createComment("")),a.getElementsByTagName("*").length>0&&(o.find.TAG=function(a,b){var c=b.getElementsByTagName(a[1]);if(a[1]==="*"){var d=[];for(var e=0;c[e];e++)c[e].nodeType===1&&d.push(c[e]);c=d}return c}),a.innerHTML="",a.firstChild&&typeof a.firstChild.getAttribute!="undefined"&&a.firstChild.getAttribute("href")!=="#"&&(o.attrHandle.href=function(a){return a.getAttribute("href",2)}),a=null}(),c.querySelectorAll&&function(){var a=m,b=c.createElement("div"),d="__sizzle__";b.innerHTML="

";if(!b.querySelectorAll||b.querySelectorAll(".TEST").length!==0){m=function(b,e,f,g){e=e||c;if(!g&&!m.isXML(e)){var h=/^(\w+$)|^\.([\w\-]+$)|^#([\w\-]+$)/.exec(b);if(h&&(e.nodeType===1||e.nodeType===9)){if(h[1])return s(e.getElementsByTagName(b),f);if(h[2]&&o.find.CLASS&&e.getElementsByClassName)return s(e.getElementsByClassName(h[2]),f)}if(e.nodeType===9){if(b==="body"&&e.body)return s([e.body],f);if(h&&h[3]){var i=e.getElementById(h[3]);if(!i||!i.parentNode)return s([],f);if(i.id===h[3])return s([i],f)}try{return s(e.querySelectorAll(b),f)}catch(j){}}else if(e.nodeType===1&&e.nodeName.toLowerCase()!=="object"){var k=e,l=e.getAttribute("id"),n=l||d,p=e.parentNode,q=/^\s*[+~]/.test(b);l?n=n.replace(/'/g,"\\$&"):e.setAttribute("id",n),q&&p&&(e=e.parentNode);try{if(!q||p)return s(e.querySelectorAll("[id='"+n+"'] "+b),f)}catch(r){}finally{l||k.removeAttribute("id")}}}return a(b,e,f,g)};for(var e in a)m[e]=a[e];b=null}}(),function(){var a=c.documentElement,b=a.matchesSelector||a.mozMatchesSelector||a.webkitMatchesSelector||a.msMatchesSelector;if(b){var d=!b.call(c.createElement("div"),"div"),e=!1;try{b.call(c.documentElement,"[test!='']:sizzle")}catch(f){e=!0}m.matchesSelector=function(a,c){c=c.replace(/\=\s*([^'"\]]*)\s*\]/g,"='$1']");if(!m.isXML(a))try{if(e||!o.match.PSEUDO.test(c)&&!/!=/.test(c)){var f=b.call(a,c);if(f||!d||a.document&&a.document.nodeType!==11)return f}}catch(g){}return m(c,null,null,[a]).length>0}}}(),function(){var a=c.createElement("div");a.innerHTML="
";if(!!a.getElementsByClassName&&a.getElementsByClassName("e").length!==0){a.lastChild.className="e";if(a.getElementsByClassName("e").length===1)return;o.order.splice(1,0,"CLASS"),o.find.CLASS=function(a,b,c){if(typeof b.getElementsByClassName!="undefined"&&!c)return b.getElementsByClassName(a[1])},a=null}}(),c.documentElement.contains?m.contains=function(a,b){return a!==b&&(a.contains?a.contains(b):!0)}:c.documentElement.compareDocumentPosition?m.contains=function(a,b){return!!(a.compareDocumentPosition(b)&16)}:m.contains=function(){return!1},m.isXML=function(a){var b=(a?a.ownerDocument||a:0).documentElement;return b?b.nodeName!=="HTML":!1};var y=function(a,b,c){var d,e=[],f="",g=b.nodeType?[b]:b;while(d=o.match.PSEUDO.exec(a))f+=d[0],a=a.replace(o.match.PSEUDO,"");a=o.relative[a]?a+"*":a;for(var h=0,i=g.length;h0)for(h=g;h=0:f.filter(a,this).length>0:this.filter(a).length>0)},closest:function(a,b){var c=[],d,e,g=this[0];if(f.isArray(a)){var h=1;while(g&&g.ownerDocument&&g!==b){for(d=0;d-1:f.find.matchesSelector(g,a)){c.push(g);break}g=g.parentNode;if(!g||!g.ownerDocument||g===b||g.nodeType===11)break}}c=c.length>1?f.unique(c):c;return this.pushStack(c,"closest",a)},index:function(a){if(!a)return this[0]&&this[0].parentNode?this.prevAll().length:-1;if(typeof a=="string")return f.inArray(this[0],f(a));return f.inArray(a.jquery?a[0]:a,this)},add:function(a,b){var c=typeof a=="string"?f(a,b):f.makeArray(a&&a.nodeType?[a]:a),d=f.merge(this.get(),c);return this.pushStack(S(c[0])||S(d[0])?d:f.unique(d))},andSelf:function(){return this.add(this.prevObject)}}),f.each({parent:function(a){var b=a.parentNode;return b&&b.nodeType!==11?b:null},parents:function(a){return f.dir(a,"parentNode")},parentsUntil:function(a,b,c){return f.dir(a,"parentNode",c)},next:function(a){return f.nth(a,2,"nextSibling")},prev:function(a){return f.nth(a,2,"previousSibling")},nextAll:function(a){return f.dir(a,"nextSibling")},prevAll:function(a){return f.dir(a,"previousSibling")},nextUntil:function(a,b,c){return f.dir(a,"nextSibling",c)},prevUntil:function(a,b,c){return f.dir(a,"previousSibling",c)},siblings:function(a){return f.sibling(a.parentNode.firstChild,a)},children:function(a){return f.sibling(a.firstChild)},contents:function(a){return f.nodeName(a,"iframe")?a.contentDocument||a.contentWindow.document:f.makeArray(a.childNodes)}},function(a,b){f.fn[a]=function(c,d){var e=f.map(this,b,c);L.test(a)||(d=c),d&&typeof d=="string"&&(e=f.filter(d,e)),e=this.length>1&&!R[a]?f.unique(e):e,(this.length>1||N.test(d))&&M.test(a)&&(e=e.reverse());return this.pushStack(e,a,P.call(arguments).join(","))}}),f.extend({filter:function(a,b,c){c&&(a=":not("+a+")");return b.length===1?f.find.matchesSelector(b[0],a)?[b[0]]:[]:f.find.matches(a,b)},dir:function(a,c,d){var e=[],g=a[c];while(g&&g.nodeType!==9&&(d===b||g.nodeType!==1||!f(g).is(d)))g.nodeType===1&&e.push(g),g=g[c];return e},nth:function(a,b,c,d){b=b||1;var e=0;for(;a;a=a[c])if(a.nodeType===1&&++e===b)break;return a},sibling:function(a,b){var c=[];for(;a;a=a.nextSibling)a.nodeType===1&&a!==b&&c.push(a);return c}});var V="abbr|article|aside|audio|canvas|datalist|details|figcaption|figure|footer|header|hgroup|mark|meter|nav|output|progress|section|summary|time|video",W=/ jQuery\d+="(?:\d+|null)"/g,X=/^\s+/,Y=/<(?!area|br|col|embed|hr|img|input|link|meta|param)(([\w:]+)[^>]*)\/>/ig,Z=/<([\w:]+)/,$=/",""],legend:[1,"
","
"],thead:[1,"","
"],tr:[2,"","
"],td:[3,"","
"],col:[2,"","
"],area:[1,"",""],_default:[0,"",""]},bh=U(c);bg.optgroup=bg.option,bg.tbody=bg.tfoot=bg.colgroup=bg.caption=bg.thead,bg.th=bg.td,f.support.htmlSerialize||(bg._default=[1,"div
","
"]),f.fn.extend({text:function(a){if(f.isFunction(a))return this.each(function(b){var c=f(this);c.text(a.call(this,b,c.text()))});if(typeof a!="object"&&a!==b)return this.empty().append((this[0]&&this[0].ownerDocument||c).createTextNode(a));return f.text(this)},wrapAll:function(a){if(f.isFunction(a))return this.each(function(b){f(this).wrapAll(a.call(this,b))});if(this[0]){var b=f(a,this[0].ownerDocument).eq(0).clone(!0);this[0].parentNode&&b.insertBefore(this[0]),b.map(function(){var a=this;while(a.firstChild&&a.firstChild.nodeType===1)a=a.firstChild;return a}).append(this)}return this},wrapInner:function(a){if(f.isFunction(a))return this.each(function(b){f(this).wrapInner(a.call(this,b))});return this.each(function(){var b=f(this),c=b.contents();c.length?c.wrapAll(a):b.append(a)})},wrap:function(a){var b=f.isFunction(a);return this.each(function(c){f(this).wrapAll(b?a.call(this,c):a)})},unwrap:function(){return this.parent().each(function(){f.nodeName(this,"body")||f(this).replaceWith(this.childNodes)}).end()},append:function(){return this.domManip(arguments,!0,function(a){this.nodeType===1&&this.appendChild(a)})},prepend:function(){return this.domManip(arguments,!0,function(a){this.nodeType===1&&this.insertBefore(a,this.firstChild)})},before:function(){if(this[0]&&this[0].parentNode)return this.domManip(arguments,!1,function(a){this.parentNode.insertBefore(a,this)});if(arguments.length){var a=f.clean(arguments);a.push.apply(a,this.toArray());return this.pushStack(a,"before",arguments)}},after:function(){if(this[0]&&this[0].parentNode)return this.domManip(arguments,!1,function(a){this.parentNode.insertBefore(a,this.nextSibling)});if(arguments.length){var a=this.pushStack(this,"after",arguments);a.push.apply(a,f.clean(arguments));return a}},remove:function(a,b){for(var c=0,d;(d=this[c])!=null;c++)if(!a||f.filter(a,[d]).length)!b&&d.nodeType===1&&(f.cleanData(d.getElementsByTagName("*")), +f.cleanData([d])),d.parentNode&&d.parentNode.removeChild(d);return this},empty:function() +{for(var a=0,b;(b=this[a])!=null;a++){b.nodeType===1&&f.cleanData(b.getElementsByTagName("*"));while(b.firstChild)b.removeChild(b.firstChild)}return this},clone:function(a,b){a=a==null?!1:a,b=b==null?a:b;return this.map(function(){return f.clone(this,a,b)})},html:function(a){if(a===b)return this[0]&&this[0].nodeType===1?this[0].innerHTML.replace(W,""):null;if(typeof a=="string"&&!ba.test(a)&&(f.support.leadingWhitespace||!X.test(a))&&!bg[(Z.exec(a)||["",""])[1].toLowerCase()]){a=a.replace(Y,"<$1>");try{for(var c=0,d=this.length;c1&&l0?this.clone(!0):this).get();f(e[h])[b](j),d=d.concat(j)}return this.pushStack(d,a,e.selector)}}),f.extend({clone:function(a,b,c){var d,e,g,h=f.support.html5Clone||!bc.test("<"+a.nodeName)?a.cloneNode(!0):bo(a);if((!f.support.noCloneEvent||!f.support.noCloneChecked)&&(a.nodeType===1||a.nodeType===11)&&!f.isXMLDoc(a)){bk(a,h),d=bl(a),e=bl(h);for(g=0;d[g];++g)e[g]&&bk(d[g],e[g])}if(b){bj(a,h);if(c){d=bl(a),e=bl(h);for(g=0;d[g];++g)bj(d[g],e[g])}}d=e=null;return h},clean:function(a,b,d,e){var g;b=b||c,typeof b.createElement=="undefined"&&(b=b.ownerDocument||b[0]&&b[0].ownerDocument||c);var h=[],i;for(var j=0,k;(k=a[j])!=null;j++){typeof k=="number"&&(k+="");if(!k)continue;if(typeof k=="string")if(!_.test(k))k=b.createTextNode(k);else{k=k.replace(Y,"<$1>");var l=(Z.exec(k)||["",""])[1].toLowerCase(),m=bg[l]||bg._default,n=m[0],o=b.createElement("div");b===c?bh.appendChild(o):U(b).appendChild(o),o.innerHTML=m[1]+k+m[2];while(n--)o=o.lastChild;if(!f.support.tbody){var p=$.test(k),q=l==="table"&&!p?o.firstChild&&o.firstChild.childNodes:m[1]===""&&!p?o.childNodes:[];for(i=q.length-1;i>=0;--i)f.nodeName(q[i],"tbody")&&!q[i].childNodes.length&&q[i].parentNode.removeChild(q[i])}!f.support.leadingWhitespace&&X.test(k)&&o.insertBefore(b.createTextNode(X.exec(k)[0]),o.firstChild),k=o.childNodes}var r;if(!f.support.appendChecked)if(k[0]&&typeof (r=k.length)=="number")for(i=0;i=0)return b+"px"}}}),f.support.opacity||(f.cssHooks.opacity={get:function(a,b){return br.test((b&&a.currentStyle?a.currentStyle.filter:a.style.filter)||"")?parseFloat(RegExp.$1)/100+"":b?"1":""},set:function(a,b){var c=a.style,d=a.currentStyle,e=f.isNumeric(b)?"alpha(opacity="+b*100+")":"",g=d&&d.filter||c.filter||"";c.zoom=1;if(b>=1&&f.trim(g.replace(bq,""))===""){c.removeAttribute("filter");if(d&&!d.filter)return}c.filter=bq.test(g)?g.replace(bq,e):g+" "+e}}),f(function(){f.support.reliableMarginRight||(f.cssHooks.marginRight={get:function(a,b){var c;f.swap(a,{display:"inline-block"},function(){b?c=bz(a,"margin-right","marginRight"):c=a.style.marginRight});return c}})}),c.defaultView&&c.defaultView.getComputedStyle&&(bA=function(a,b){var c,d,e;b=b.replace(bs,"-$1").toLowerCase(),(d=a.ownerDocument.defaultView)&&(e=d.getComputedStyle(a,null))&&(c=e.getPropertyValue(b),c===""&&!f.contains(a.ownerDocument.documentElement,a)&&(c=f.style(a,b)));return c}),c.documentElement.currentStyle&&(bB=function(a,b){var c,d,e,f=a.currentStyle&&a.currentStyle[b],g=a.style;f===null&&g&&(e=g[b])&&(f=e),!bt.test(f)&&bu.test(f)&&(c=g.left,d=a.runtimeStyle&&a.runtimeStyle.left,d&&(a.runtimeStyle.left=a.currentStyle.left),g.left=b==="fontSize"?"1em":f||0,f=g.pixelLeft+"px",g.left=c,d&&(a.runtimeStyle.left=d));return f===""?"auto":f}),bz=bA||bB,f.expr&&f.expr.filters&&(f.expr.filters.hidden=function(a){var b=a.offsetWidth,c=a.offsetHeight;return b===0&&c===0||!f.support.reliableHiddenOffsets&&(a.style&&a.style.display||f.css(a,"display"))==="none"},f.expr.filters.visible=function(a){return!f.expr.filters.hidden(a)});var bD=/%20/g,bE=/\[\]$/,bF=/\r?\n/g,bG=/#.*$/,bH=/^(.*?):[ \t]*([^\r\n]*)\r?$/mg,bI=/^(?:color|date|datetime|datetime-local|email|hidden|month|number|password|range|search|tel|text|time|url|week)$/i,bJ=/^(?:about|app|app\-storage|.+\-extension|file|res|widget):$/,bK=/^(?:GET|HEAD)$/,bL=/^\/\//,bM=/\?/,bN=/)<[^<]*)*<\/script>/gi,bO=/^(?:select|textarea)/i,bP=/\s+/,bQ=/([?&])_=[^&]*/,bR=/^([\w\+\.\-]+:)(?:\/\/([^\/?#:]*)(?::(\d+))?)?/,bS=f.fn.load,bT={},bU={},bV,bW,bX=["*/"]+["*"];try{bV=e.href}catch(bY){bV=c.createElement("a"),bV.href="",bV=bV.href}bW=bR.exec(bV.toLowerCase())||[],f.fn.extend({load:function(a,c,d){if(typeof a!="string"&&bS)return bS.apply(this,arguments);if(!this.length)return this;var e=a.indexOf(" ");if(e>=0){var g=a.slice(e,a.length);a=a.slice(0,e)}var h="GET";c&&(f.isFunction(c)?(d=c,c=b):typeof c=="object"&&(c=f.param(c,f.ajaxSettings.traditional),h="POST"));var i=this;f.ajax({url:a,type:h,dataType:"html",data:c,complete:function(a,b,c){c=a.responseText,a.isResolved()&&(a.done(function(a){c=a}),i.html(g?f("
").append(c.replace(bN,"")).find(g):c)),d&&i.each(d,[c,b,a])}});return this},serialize:function(){return f.param(this.serializeArray())},serializeArray:function(){return this.map(function(){return this.elements?f.makeArray(this.elements):this}).filter(function(){return this.name&&!this.disabled&&(this.checked||bO.test(this.nodeName)||bI.test(this.type))}).map(function(a,b){var c=f(this).val();return c==null?null:f.isArray(c)?f.map(c,function(a,c){return{name:b.name,value:a.replace(bF,"\r\n")}}):{name:b.name,value:c.replace(bF,"\r\n")}}).get()}}),f.each("ajaxStart ajaxStop ajaxComplete ajaxError ajaxSuccess ajaxSend".split(" "),function(a,b){f.fn[b]=function(a){return this.on(b,a)}}),f.each(["get","post"],function(a,c){f[c]=function(a,d,e,g){f.isFunction(d)&&(g=g||e,e=d,d=b);return f.ajax({type:c,url:a,data:d,success:e,dataType:g})}}),f.extend({getScript:function(a,c){return f.get(a,b,c,"script")},getJSON:function(a,b,c){return f.get(a,b,c,"json")},ajaxSetup:function(a,b){b?b_(a,f.ajaxSettings):(b=a,a=f.ajaxSettings),b_(a,b);return a},ajaxSettings:{url:bV,isLocal:bJ.test(bW[1]),global:!0,type:"GET",contentType:"application/x-www-form-urlencoded",processData:!0,async:!0,accepts:{xml:"application/xml, text/xml",html:"text/html",text:"text/plain",json:"application/json, text/javascript","*":bX},contents:{xml:/xml/,html:/html/,json:/json/},responseFields:{xml:"responseXML",text:"responseText"},converters:{"* text":a.String,"text html":!0,"text json":f.parseJSON,"text xml":f.parseXML},flatOptions:{context:!0,url:!0}},ajaxPrefilter:bZ(bT),ajaxTransport:bZ(bU),ajax:function(a,c){function w(a,c,l,m){if(s!==2){s=2,q&&clearTimeout(q),p=b,n=m||"",v.readyState=a>0?4:0;var o,r,u,w=c,x=l?cb(d,v,l):b,y,z;if(a>=200&&a<300||a===304){if(d.ifModified){if(y=v.getResponseHeader("Last-Modified"))f.lastModified[k]=y;if(z=v.getResponseHeader("Etag"))f.etag[k]=z}if(a===304)w="notmodified",o=!0;else try{r=cc(d,x),w="success",o=!0}catch(A){w="parsererror",u=A}}else{u=w;if(!w||a)w="error",a<0&&(a=0)}v.status=a,v.statusText=""+(c||w),o?h.resolveWith(e,[r,w,v]):h.rejectWith(e,[v,w,u]),v.statusCode(j),j=b,t&&g.trigger("ajax"+(o?"Success":"Error"),[v,d,o?r:u]),i.fireWith(e,[v,w]),t&&(g.trigger("ajaxComplete",[v,d]),--f.active||f.event.trigger("ajaxStop"))}}typeof a=="object"&&(c=a,a=b),c=c||{};var d=f.ajaxSetup({},c),e=d.context||d,g=e!==d&&(e.nodeType||e instanceof f)?f(e):f.event,h=f.Deferred(),i=f.Callbacks("once memory"),j=d.statusCode||{},k,l={},m={},n,o,p,q,r,s=0,t,u,v={readyState:0,setRequestHeader:function(a,b){if(!s){var c=a.toLowerCase();a=m[c]=m[c]||a,l[a]=b}return this},getAllResponseHeaders:function(){return s===2?n:null},getResponseHeader:function(a){var c;if(s===2){if(!o){o={};while(c=bH.exec(n))o[c[1].toLowerCase()]=c[2]}c=o[a.toLowerCase()]}return c===b?null:c},overrideMimeType:function(a){s||(d.mimeType=a);return this},abort:function(a){a=a||"abort",p&&p.abort(a),w(0,a);return this}};h.promise(v),v.success=v.done,v.error=v.fail,v.complete=i.add,v.statusCode=function(a){if(a){var b;if(s<2)for(b in a)j[b]=[j[b],a[b]];else b=a[v.status],v.then(b,b)}return this},d.url=((a||d.url)+"").replace(bG,"").replace(bL,bW[1]+"//"),d.dataTypes=f.trim(d.dataType||"*").toLowerCase().split(bP),d.crossDomain==null&&(r=bR.exec(d.url.toLowerCase()),d.crossDomain=!(!r||r[1]==bW[1]&&r[2]==bW[2]&&(r[3]||(r[1]==="http:"?80:443))==(bW[3]||(bW[1]==="http:"?80:443)))),d.data&&d.processData&&typeof d.data!="string"&&(d.data=f.param(d.data,d.traditional)),b$(bT,d,c,v);if(s===2)return!1;t=d.global,d.type=d.type.toUpperCase(),d.hasContent=!bK.test(d.type),t&&f.active++===0&&f.event.trigger("ajaxStart");if(!d.hasContent){d.data&&(d.url+=(bM.test(d.url)?"&":"?")+d.data,delete d.data),k=d.url;if(d.cache===!1){var x=f.now(),y=d.url.replace(bQ,"$1_="+x);d.url=y+(y===d.url?(bM.test(d.url)?"&":"?")+"_="+x:"")}}(d.data&&d.hasContent&&d.contentType!==!1||c.contentType)&&v.setRequestHeader("Content-Type",d.contentType),d.ifModified&&(k=k||d.url,f.lastModified[k]&&v.setRequestHeader("If-Modified-Since",f.lastModified[k]),f.etag[k]&&v.setRequestHeader("If-None-Match",f.etag[k])),v.setRequestHeader("Accept",d.dataTypes[0]&&d.accepts[d.dataTypes[0]]?d.accepts[d.dataTypes[0]]+(d.dataTypes[0]!=="*"?", "+bX+"; q=0.01":""):d.accepts["*"]);for(u in d.headers)v.setRequestHeader(u,d.headers[u]);if(d.beforeSend&&(d.beforeSend.call(e,v,d)===!1||s===2)){v.abort();return!1}for(u in{success:1,error:1,complete:1})v[u](d[u]);p=b$(bU,d,c,v);if(!p)w(-1,"No Transport");else{v.readyState=1,t&&g.trigger("ajaxSend",[v,d]),d.async&&d.timeout>0&&(q=setTimeout(function(){v.abort("timeout")},d.timeout));try{s=1,p.send(l,w)}catch(z){if(s<2)w(-1,z);else throw z}}return v},param:function(a,c){var d=[],e=function(a,b){b=f.isFunction(b)?b():b,d[d.length]=encodeURIComponent(a)+"="+encodeURIComponent(b)};c===b&&(c=f.ajaxSettings.traditional);if(f.isArray(a)||a.jquery&&!f.isPlainObject(a))f.each(a,function(){e(this.name,this.value)});else for(var g in a)ca(g,a[g],c,e);return d.join("&").replace(bD,"+")}}),f.extend({active:0,lastModified:{},etag:{}});var cd=f.now(),ce=/(\=)\?(&|$)|\?\?/i;f.ajaxSetup({jsonp:"callback",jsonpCallback:function(){return f.expando+"_"+cd++}}),f.ajaxPrefilter("json jsonp",function(b,c,d){var e=b.contentType==="application/x-www-form-urlencoded"&&typeof b.data=="string";if(b.dataTypes[0]==="jsonp"||b.jsonp!==!1&&(ce.test(b.url)||e&&ce.test(b.data))){var g,h=b.jsonpCallback=f.isFunction(b.jsonpCallback)?b.jsonpCallback():b.jsonpCallback,i=a[h],j=b.url,k=b.data,l="$1"+h+"$2";b.jsonp!==!1&&(j=j.replace(ce,l),b.url===j&&(e&&(k=k.replace(ce,l)),b.data===k&&(j+=(/\?/.test(j)?"&":"?")+b.jsonp+"="+h))),b.url=j,b.data=k,a[h]=function(a){g=[a]},d.always(function(){a[h]=i,g&&f.isFunction(i)&&a[h](g[0])}),b.converters["script json"]=function(){g||f.error(h+" was not called");return g[0]},b.dataTypes[0]="json";return"script"}}),f.ajaxSetup({accepts:{script:"text/javascript, application/javascript, application/ecmascript, application/x-ecmascript"},contents:{script:/javascript|ecmascript/},converters:{"text script":function(a){f.globalEval(a);return a}}}),f.ajaxPrefilter("script",function(a){a.cache===b&&(a.cache=!1),a.crossDomain&&(a.type="GET",a.global=!1)}),f.ajaxTransport("script",function(a){if(a.crossDomain){var d,e=c.head||c.getElementsByTagName("head")[0]||c.documentElement;return{send:function(f,g){d=c.createElement("script"),d.async="async",a.scriptCharset&&(d.charset=a.scriptCharset),d.src=a.url,d.onload=d.onreadystatechange=function(a,c){if(c||!d.readyState||/loaded|complete/.test(d.readyState))d.onload=d.onreadystatechange=null,e&&d.parentNode&&e.removeChild(d),d=b,c||g(200,"success")},e.insertBefore(d,e.firstChild)},abort:function(){d&&d.onload(0,1)}}}});var cf=a.ActiveXObject?function(){for(var a in ch)ch[a](0,1)}:!1,cg=0,ch;f.ajaxSettings.xhr=a.ActiveXObject?function(){return!this.isLocal&&ci()||cj()}:ci,function(a){f.extend(f.support,{ajax:!!a,cors:!!a&&"withCredentials"in a})}(f.ajaxSettings.xhr()),f.support.ajax&&f.ajaxTransport(function(c) +{if(!c.crossDomain||f.support.cors){var d;return{send:function(e,g){var h=c.xhr(),i,j;c.username?h.open(c.type,c.url,c.async,c.username,c.password):h.open(c.type,c.url,c.async);if(c.xhrFields)for(j in c.xhrFields)h[j]=c.xhrFields[j];c.mimeType&&h.overrideMimeType&&h.overrideMimeType(c.mimeType),!c.crossDomain&&!e["X-Requested-With"]&&(e["X-Requested-With"]="XMLHttpRequest");try{for(j in e)h.setRequestHeader(j,e[j])}catch(k){}h.send(c.hasContent&&c.data||null),d=function(a,e){var j,k,l,m,n;try{if(d&&(e||h.readyState===4)){d=b,i&&(h.onreadystatechange=f.noop,cf&&delete ch[i]);if(e)h.readyState!==4&&h.abort();else{j=h.status,l=h.getAllResponseHeaders(),m={},n=h.responseXML,n&&n.documentElement&&(m.xml=n),m.text=h.responseText;try{k=h.statusText}catch(o){k=""}!j&&c.isLocal&&!c.crossDomain?j=m.text?200:404:j===1223&&(j=204)}}}catch(p){e||g(-1,p)}m&&g(j,k,m,l)},!c.async||h.readyState===4?d():(i=++cg,cf&&(ch||(ch={},f(a).unload(cf)),ch[i]=d),h.onreadystatechange=d)},abort:function(){d&&d(0,1)}}}});var ck={},cl,cm,cn=/^(?:toggle|show|hide)$/,co=/^([+\-]=)?([\d+.\-]+)([a-z%]*)$/i,cp,cq=[["height","marginTop","marginBottom","paddingTop","paddingBottom"],["width","marginLeft","marginRight","paddingLeft","paddingRight"],["opacity"]],cr;f.fn.extend({show:function(a,b,c){var d,e;if(a||a===0)return this.animate(cu("show",3),a,b,c);for(var g=0,h=this.length;g=i.duration+this.startTime){this.now=this.end,this.pos=this.state=1,this.update(),i.animatedProperties[this.prop]=!0;for(b in i.animatedProperties)i.animatedProperties[b]!==!0&&(g=!1);if(g){i.overflow!=null&&!f.support.shrinkWrapBlocks&&f.each(["","X","Y"],function(a,b){h.style["overflow"+b]=i.overflow[a]}),i.hide&&f(h).hide();if(i.hide||i.show)for(b in i.animatedProperties)f.style(h,b,i.orig[b]),f.removeData(h,"fxshow"+b,!0),f.removeData(h,"toggle"+b,!0);d=i.complete,d&&(i.complete=!1,d.call(h))}return!1}i.duration==Infinity?this.now=e:(c=e-this.startTime,this.state=c/i.duration,this.pos=f.easing[i.animatedProperties[this.prop]](this.state,c,0,1,i.duration),this.now=this.start+(this.end-this.start)*this.pos),this.update();return!0}},f.extend(f.fx,{tick:function(){var a,b=f.timers,c=0;for(;c-1,k={},l={},m,n;j?(l=e.position(),m=l.top,n=l.left):(m=parseFloat(h)||0,n=parseFloat(i)||0),f.isFunction(b)&&(b=b.call(a,c,g)),b.top!=null&&(k.top=b.top-g.top+m),b.left!=null&&(k.left=b.left-g.left+n),"using"in b?b.using.call(a,k):e.css(k)}},f.fn.extend({position:function(){if(!this[0])return null;var a=this[0],b=this.offsetParent(),c=this.offset(),d=cx.test(b[0].nodeName)?{top:0,left:0}:b.offset();c.top-=parseFloat(f.css(a,"marginTop"))||0,c.left-=parseFloat(f.css(a,"marginLeft"))||0,d.top+=parseFloat(f.css(b[0],"borderTopWidth"))||0,d.left+=parseFloat(f.css(b[0],"borderLeftWidth"))||0;return{top:c.top-d.top,left:c.left-d.left}},offsetParent:function(){return this.map(function(){var a=this.offsetParent||c.body;while(a&&!cx.test(a.nodeName)&&f.css(a,"position")==="static")a=a.offsetParent;return a})}}),f.each(["Left","Top"],function(a,c){var d="scroll"+c;f.fn[d]=function(c){var e,g;if(c===b){e=this[0];if(!e)return null;g=cy(e);return g?"pageXOffset"in g?g[a?"pageYOffset":"pageXOffset"]:f.support.boxModel&&g.document.documentElement[d]||g.document.body[d]:e[d]}return this.each(function(){g=cy(this),g?g.scrollTo(a?f(g).scrollLeft():c,a?c:f(g).scrollTop()):this[d]=c})}}),f.each(["Height","Width"],function(a,c){var d=c.toLowerCase();f.fn["inner"+c]=function(){var a=this[0];return a?a.style?parseFloat(f.css(a,d,"padding")):this[d]():null},f.fn["outer"+c]=function(a){var b=this[0];return b?b.style?parseFloat(f.css(b,d,a?"margin":"border")):this[d]():null},f.fn[d]=function(a){var e=this[0];if(!e)return a==null?null:this;if(f.isFunction(a))return this.each(function(b){var c=f(this);c[d](a.call(this,b,c[d]()))});if(f.isWindow(e)){var g=e.document.documentElement["client"+c],h=e.document.body;return e.document.compatMode==="CSS1Compat"&&g||h&&h["client"+c]||g}if(e.nodeType===9)return Math.max(e.documentElement["client"+c],e.body["scroll"+c],e.documentElement["scroll"+c],e.body["offset"+c],e.documentElement["offset"+c]);if(a===b){var i=f.css(e,d),j=parseFloat(i);return f.isNumeric(j)?j:i}return this.css(d,typeof a=="string"?a:a+"px")}}),a.jQuery=a.$=f,typeof define=="function"&&define.amd&&define.amd.jQuery&&define("jquery",[],function(){return f})})(window); diff --git a/doc/api/html/list__argument_8hpp.html b/doc/api/html/list__argument_8hpp.html new file mode 100644 index 00000000000..623cb1704ce --- /dev/null +++ b/doc/api/html/list__argument_8hpp.html @@ -0,0 +1,130 @@ + + + + + +Stan: src/stan/gm/arguments/list_argument.hpp File Reference + + + + + + + + + +
+
+
+ + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+ + + + + + + + + + +
+ +
+ + + +
+ +
+
list_argument.hpp File Reference
+
+
+
#include <iostream>
+#include <stan/gm/arguments/valued_argument.hpp>
+#include <stan/gm/arguments/arg_fail.hpp>
+
+

Go to the source code of this file.

+ + + + +

+Classes

class  stan::gm::list_argument
 
+ + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::gm
 Directed graphical model compiler.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/list__argument_8hpp_source.html b/doc/api/html/list__argument_8hpp_source.html new file mode 100644 index 00000000000..5ca423067ff --- /dev/null +++ b/doc/api/html/list__argument_8hpp_source.html @@ -0,0 +1,300 @@ + + + + + +Stan: src/stan/gm/arguments/list_argument.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
list_argument.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__GM__ARGUMENTS__LIST__ARGUMENT__BETA__
+
2 #define __STAN__GM__ARGUMENTS__LIST__ARGUMENT__BETA__
+
3 
+
4 #include <iostream>
+ + +
7 
+
8 namespace stan {
+
9 
+
10  namespace gm {
+
11 
+ +
13 
+
14  public:
+
15 
+ +
17  _value_type = "list element";
+
18  }
+
19 
+ +
21 
+
22  for (std::vector<argument*>::iterator it = _values.begin();
+
23  it != _values.end(); ++it) {
+
24  delete *it;
+
25  }
+
26 
+
27  _values.clear();
+
28 
+
29  }
+
30 
+
31  void print(std::ostream* s, int depth, const std::string prefix) {
+
32  valued_argument::print(s, depth, prefix);
+
33  _values.at(_cursor)->print(s, depth + 1, prefix);
+
34  }
+
35 
+
36  void print_help(std::ostream* s, int depth, bool recurse) {
+
37  _default = _values.at(_default_cursor)->name();
+
38 
+ +
40 
+
41  if (recurse) {
+
42  for (std::vector<argument*>::iterator it = _values.begin();
+
43  it != _values.end(); ++it)
+
44  (*it)->print_help(s, depth + 1, true);
+
45  }
+
46  }
+
47 
+
48  bool parse_args(std::vector<std::string>& args, std::ostream* out,
+
49  std::ostream* err, bool& help_flag) {
+
50 
+
51  if(args.size() == 0) return true;
+
52 
+
53  std::string name;
+
54  std::string value;
+
55  split_arg(args.back(), name, value);
+
56 
+
57  if(_name == "help") {
+
58  print_help(out, 0, false);
+
59  help_flag |= true;
+
60  args.clear();
+
61  return false;
+
62  }
+
63  else if(_name == "help-all") {
+
64  print_help(out, 0, true);
+
65  help_flag |= true;
+
66  args.clear();
+
67  return false;
+
68  }
+
69  else if(_name == name) {
+
70 
+
71  args.pop_back();
+
72 
+
73  bool good_arg = false;
+
74  bool valid_arg = true;
+
75 
+
76  for (size_t i = 0; i < _values.size(); ++i) {
+
77  if( _values.at(i)->name() != value) continue;
+
78 
+
79  _cursor = i;
+
80  valid_arg &= _values.at(_cursor)->parse_args(args, out, err, help_flag);
+
81  good_arg = true;
+
82  break;
+
83  }
+
84 
+
85  if(!good_arg) {
+
86 
+
87  if(err) {
+
88  *err << value << " is not a valid value for \"" << _name << "\"" << std::endl;
+
89  *err << std::string(indent_width, ' ') << "Valid values:" << print_valid() << std::endl;
+
90  }
+
91 
+
92  args.clear();
+
93  }
+
94 
+
95  return valid_arg && good_arg;
+
96 
+
97  }
+
98 
+
99  return true;
+
100 
+
101  };
+
102 
+
103  virtual void probe_args(argument* base_arg, std::stringstream& s) {
+
104 
+
105  for (size_t i = 0; i < _values.size(); ++i) {
+
106  _cursor = i;
+
107 
+
108  s << "good" << std::endl;
+
109  base_arg->print(&s, 0, "");
+
110  s << std::endl;
+
111 
+
112  _values.at(i)->probe_args(base_arg, s);
+
113  }
+
114 
+
115  _values.push_back(new arg_fail);
+
116  _cursor = _values.size() - 1;
+
117  s << "bad" << std::endl;
+
118  base_arg->print(&s, 0, "");
+
119  s << std::endl;
+
120 
+
121  _values.pop_back();
+ +
123 
+
124  }
+
125 
+
126  void find_arg(std::string name,
+
127  std::string prefix,
+
128  std::vector<std::string>& valid_paths) {
+
129 
+
130  if (name == _name) {
+
131  valid_paths.push_back(prefix + _name + "=<list_element>");
+
132  }
+
133 
+
134  prefix += _name + "=";
+
135  for (std::vector<argument*>::iterator it = _values.begin();
+
136  it != _values.end(); ++it) {
+
137  std::string value_prefix = prefix + (*it)->name() + " ";
+
138  (*it)->find_arg(name, prefix, valid_paths);
+
139  }
+
140 
+
141  }
+
142 
+
143  bool valid_value(std::string name) {
+
144  for (std::vector<argument*>::iterator it = _values.begin();
+
145  it != _values.end(); ++it)
+
146  if (name == (*it)->name())
+
147  return true;
+
148  return false;
+
149  }
+
150 
+
151  argument* arg(std::string name) {
+
152  if(name == _values.at(_cursor)->name())
+
153  return _values.at(_cursor);
+
154  else
+
155  return 0;
+
156  }
+
157 
+
158  std::vector<argument*>& values() { return _values; }
+
159 
+
160  std::string value() { return _values.at(_cursor)->name(); }
+
161 
+
162  std::string print_value() { return _values.at(_cursor)->name(); }
+
163 
+
164  std::string print_valid() {
+
165  std::string valid_values;
+
166 
+
167  std::vector<argument*>::iterator it = _values.begin();
+
168  valid_values += " " + (*it)->name();
+
169  ++it;
+
170 
+
171  for (; it != _values.end(); ++it)
+
172  valid_values += ", " + (*it)->name();
+
173 
+
174  return valid_values;
+
175 
+
176  }
+
177 
+
178  bool is_default() { return _cursor == _default_cursor; }
+
179 
+
180  protected:
+
181 
+
182  int _cursor;
+ +
184 
+
185  std::vector<argument*> _values;
+
186 
+
187  };
+
188 
+
189  } // gm
+
190 
+
191 } // stan
+
192 
+
193 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/lkj__corr_8hpp.html b/doc/api/html/lkj__corr_8hpp.html new file mode 100644 index 00000000000..7e92ea595bc --- /dev/null +++ b/doc/api/html/lkj__corr_8hpp.html @@ -0,0 +1,156 @@ + + + + + +Stan: src/stan/prob/distributions/multivariate/continuous/lkj_corr.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
lkj_corr.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::prob
 Templated probability distributions.
 
+ + + + + + + + + + + + + + + + + + + + + + +

+Functions

template<typename T_shape >
T_shape stan::prob::do_lkj_constant (const T_shape &eta, const unsigned int &K)
 
template<bool propto, typename T_covar , typename T_shape >
boost::math::tools::promote_args
+< T_covar, T_shape >::type 
stan::prob::lkj_corr_cholesky_log (const Eigen::Matrix< T_covar, Eigen::Dynamic, Eigen::Dynamic > &L, const T_shape &eta)
 
template<typename T_covar , typename T_shape >
boost::math::tools::promote_args
+< T_covar, T_shape >::type 
stan::prob::lkj_corr_cholesky_log (const Eigen::Matrix< T_covar, Eigen::Dynamic, Eigen::Dynamic > &L, const T_shape &eta)
 
template<bool propto, typename T_y , typename T_shape >
boost::math::tools::promote_args
+< T_y, T_shape >::type 
stan::prob::lkj_corr_log (const Eigen::Matrix< T_y, Eigen::Dynamic, Eigen::Dynamic > &y, const T_shape &eta)
 
template<typename T_y , typename T_shape >
boost::math::tools::promote_args
+< T_y, T_shape >::type 
stan::prob::lkj_corr_log (const Eigen::Matrix< T_y, Eigen::Dynamic, Eigen::Dynamic > &y, const T_shape &eta)
 
template<class RNG >
Eigen::MatrixXd stan::prob::lkj_corr_cholesky_rng (const size_t K, const double eta, RNG &rng)
 
template<class RNG >
Eigen::MatrixXd stan::prob::lkj_corr_rng (const size_t K, const double eta, RNG &rng)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/lkj__corr_8hpp_source.html b/doc/api/html/lkj__corr_8hpp_source.html new file mode 100644 index 00000000000..5e034ce058c --- /dev/null +++ b/doc/api/html/lkj__corr_8hpp_source.html @@ -0,0 +1,291 @@ + + + + + +Stan: src/stan/prob/distributions/multivariate/continuous/lkj_corr.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
lkj_corr.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__PROB__DISTRIBUTIONS__MULTIVARIATE__CONTINUOUS__LKJ_CORR_HPP__
+
2 #define __STAN__PROB__DISTRIBUTIONS__MULTIVARIATE__CONTINUOUS__LKJ_CORR_HPP__
+
3 
+ + + +
7 #include <stan/prob/traits.hpp>
+ + +
10 
+
11 namespace stan {
+
12  namespace prob {
+
13 
+
14  template <typename T_shape>
+
15  T_shape do_lkj_constant(const T_shape& eta, const unsigned int& K) {
+
16 
+
17  // Lewandowski, Kurowicka, and Joe (2009) equations 15 and 16
+
18 
+
19  if (stan::is_constant<typename stan::scalar_type<T_shape> >::value
+
20  && eta == 1.0) {
+
21  double sum = 0.0;
+
22  double constant = 0.0;
+
23  double beta_arg = 0.0;
+
24  for (unsigned int k = 1; k < K; k++) { // yes, go from 1 to K - 1
+
25  beta_arg = 0.5 * (k + 1.0);
+
26  constant += k * (2.0 * lgamma(beta_arg) - lgamma(2.0 * beta_arg));
+
27  sum += pow(static_cast<double>(k),2.0);
+
28  }
+
29  constant += sum * LOG_TWO;
+
30  return constant;
+
31  }
+
32  T_shape sum = 0.0;
+
33  T_shape constant = 0.0;
+
34  T_shape beta_arg;
+
35  for (unsigned int k = 1; k < K; k++) { // yes, go from 1 to K - 1
+
36  unsigned int diff = K - k;
+
37  beta_arg = eta + 0.5 * (diff - 1);
+
38  constant += diff * (2.0 * lgamma(beta_arg) - lgamma(2.0 * beta_arg));
+
39  sum += (2.0 * eta - 2.0 + diff) * diff;
+
40  }
+
41  constant += sum * LOG_TWO;
+
42  return constant;
+
43  }
+
44 
+
45  // LKJ_Corr(L|eta) [ L Cholesky factor of correlation matrix
+
46  // eta > 0; eta == 1 <-> uniform]
+
47  template <bool propto,
+
48  typename T_covar, typename T_shape>
+
49  typename boost::math::tools::promote_args<T_covar, T_shape>::type
+ +
51  const Eigen::Matrix<T_covar,Eigen::Dynamic,Eigen::Dynamic>& L,
+
52  const T_shape& eta) {
+
53 
+
54  static const char* function
+
55  = "stan::prob::lkj_corr_cholesky_log(%1%)";
+
56 
+
57  using boost::math::tools::promote_args;
+ +
59 
+
60  typename promote_args<T_covar,T_shape>::type lp(0.0);
+
61  if (!check_positive(function, eta, "Shape parameter", &lp))
+
62  return lp;
+
63 
+
64  const unsigned int K = L.rows();
+
65  if (K == 0)
+
66  return 0.0;
+
67 
+ +
69  lp += do_lkj_constant(eta, K);
+ +
71  if ( (eta == 1.0) &&
+ +
73  return lp;
+
74  lp += (eta - 1.0) * 2.0 * L.diagonal().array().log().sum();
+
75  }
+
76 
+
77  return lp;
+
78  }
+
79 
+
80  template <typename T_covar, typename T_shape>
+
81  inline
+
82  typename boost::math::tools::promote_args<T_covar, T_shape>::type
+ +
84  const Eigen::Matrix<T_covar,Eigen::Dynamic,Eigen::Dynamic>& L,
+
85  const T_shape& eta) {
+
86  return lkj_corr_cholesky_log<false>(L,eta);
+
87  }
+
88 
+
89  // LKJ_Corr(y|eta) [ y correlation matrix (not covariance matrix)
+
90  // eta > 0; eta == 1 <-> uniform]
+
91  template <bool propto,
+
92  typename T_y, typename T_shape>
+
93  typename boost::math::tools::promote_args<T_y, T_shape>::type
+
94  lkj_corr_log(const Eigen::Matrix<T_y,Eigen::Dynamic,Eigen::Dynamic>& y,
+
95  const T_shape& eta) {
+
96  static const char* function = "stan::prob::lkj_corr_log(%1%)";
+
97 
+ + + + +
102  using boost::math::tools::promote_args;
+
103 
+
104  typename promote_args<T_y,T_shape>::type lp;
+
105  if (!check_positive(function, eta, "Shape parameter", &lp))
+
106  return lp;
+
107  if (!check_size_match(function,
+
108  y.rows(), "Rows of correlation matrix",
+
109  y.cols(), "columns of correlation matrix",
+
110  &lp))
+
111  return lp;
+
112  if (!check_not_nan(function, y, "Correlation matrix", &lp))
+
113  return lp;
+
114  if (!check_corr_matrix(function, y, "Correlation matrix", &lp)) {
+
115  return lp;
+
116  }
+
117 
+
118  const unsigned int K = y.rows();
+
119  if (K == 0)
+
120  return 0.0;
+
121 
+
122  Eigen::LLT< Eigen::Matrix<T_y, Eigen::Dynamic, Eigen::Dynamic> > Cholesky = y.llt();
+
123  // FIXME: check_numerical_issue function?
+
124  if (Cholesky.info() == Eigen::NumericalIssue)
+
125  return lp;
+
126 
+
127  Eigen::Matrix<T_y,Eigen::Dynamic,Eigen::Dynamic> L = Cholesky.matrixL();
+
128  return lkj_corr_cholesky_log<propto>(L, eta);
+
129  }
+
130 
+
131  template <typename T_y, typename T_shape>
+
132  inline
+
133  typename boost::math::tools::promote_args<T_y, T_shape>::type
+
134  lkj_corr_log(const Eigen::Matrix<T_y,Eigen::Dynamic,Eigen::Dynamic>& y,
+
135  const T_shape& eta) {
+
136  return lkj_corr_log<false>(y,eta);
+
137  }
+
138 
+
139  template <class RNG>
+
140  inline Eigen::MatrixXd
+
141  lkj_corr_cholesky_rng(const size_t K,
+
142  const double eta,
+
143  RNG& rng) {
+
144  static const char* function
+
145  = "stan::prob::lkj_corr_cholesky_rng(%1%)";
+
146 
+ +
148 
+
149  check_positive(function, eta, "Shape parameter");
+
150 
+
151  Eigen::ArrayXd CPCs( (K * (K - 1)) / 2 );
+
152  double alpha = eta + 0.5 * (K - 1);
+
153  unsigned int count = 0;
+
154  for (size_t i = 0; i < (K - 1); i++) {
+
155  alpha -= 0.5;
+
156  for (size_t j = i + 1; j < K; j++) {
+
157  CPCs(count) = 2.0 * stan::prob::beta_rng(alpha,alpha,rng) - 1.0;
+
158  count++;
+
159  }
+
160  }
+
161  return stan::prob::read_corr_L(CPCs, K);
+
162  }
+
163 
+
164  template <class RNG>
+
165  inline Eigen::MatrixXd
+
166  lkj_corr_rng(const size_t K,
+
167  const double eta,
+
168  RNG& rng) {
+
169 
+
170  static const char* function
+
171  = "stan::prob::lkj_corr_rng(%1%)";
+
172 
+ +
174 
+
175  check_positive(function, eta, "Shape parameter");
+
176 
+ + +
179  lkj_corr_cholesky_rng(K, eta, rng) );
+
180  }
+
181 
+
182  }
+
183 }
+
184 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/lkj__cov_8hpp.html b/doc/api/html/lkj__cov_8hpp.html new file mode 100644 index 00000000000..265b4510dba --- /dev/null +++ b/doc/api/html/lkj__cov_8hpp.html @@ -0,0 +1,153 @@ + + + + + +Stan: src/stan/prob/distributions/multivariate/continuous/lkj_cov.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
lkj_cov.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::prob
 Templated probability distributions.
 
+ + + + + + + + + + + + + +

+Functions

template<bool propto, typename T_y , typename T_loc , typename T_scale , typename T_shape >
boost::math::tools::promote_args
+< T_y, T_loc, T_scale, T_shape >
+::type 
stan::prob::lkj_cov_log (const Eigen::Matrix< T_y, Eigen::Dynamic, Eigen::Dynamic > &y, const Eigen::Matrix< T_loc, Eigen::Dynamic, 1 > &mu, const Eigen::Matrix< T_scale, Eigen::Dynamic, 1 > &sigma, const T_shape &eta)
 
template<typename T_y , typename T_loc , typename T_scale , typename T_shape >
boost::math::tools::promote_args
+< T_y, T_loc, T_scale, T_shape >
+::type 
stan::prob::lkj_cov_log (const Eigen::Matrix< T_y, Eigen::Dynamic, Eigen::Dynamic > &y, const Eigen::Matrix< T_loc, Eigen::Dynamic, 1 > &mu, const Eigen::Matrix< T_scale, Eigen::Dynamic, 1 > &sigma, const T_shape &eta)
 
template<bool propto, typename T_y , typename T_loc , typename T_scale , typename T_shape >
boost::math::tools::promote_args
+< T_y, T_loc, T_scale, T_shape >
+::type 
stan::prob::lkj_cov_log (const Eigen::Matrix< T_y, Eigen::Dynamic, Eigen::Dynamic > &y, const T_loc &mu, const T_scale &sigma, const T_shape &eta)
 
template<typename T_y , typename T_loc , typename T_scale , typename T_shape >
boost::math::tools::promote_args
+< T_y, T_loc, T_scale, T_shape >
+::type 
stan::prob::lkj_cov_log (const Eigen::Matrix< T_y, Eigen::Dynamic, Eigen::Dynamic > &y, const T_loc &mu, const T_scale &sigma, const T_shape &eta)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/lkj__cov_8hpp_source.html b/doc/api/html/lkj__cov_8hpp_source.html new file mode 100644 index 00000000000..167a5124100 --- /dev/null +++ b/doc/api/html/lkj__cov_8hpp_source.html @@ -0,0 +1,252 @@ + + + + + +Stan: src/stan/prob/distributions/multivariate/continuous/lkj_cov.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
lkj_cov.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__PROB__DISTRIBUTIONS__MULTIVARIATE__CONTINUOUS__LKJ_COV_HPP__
+
2 #define __STAN__PROB__DISTRIBUTIONS__MULTIVARIATE__CONTINUOUS__LKJ_COV_HPP__
+
3 
+ +
5 #include <stan/math/matrix.hpp>
+ + +
8 #include <stan/meta/traits.hpp>
+
9 #include <stan/prob/traits.hpp>
+
10 
+ + +
13 
+
14 namespace stan {
+
15 
+
16  namespace prob {
+
17 
+
18  // LKJ_cov(y|mu,sigma,eta) [ y covariance matrix (not correlation matrix)
+
19  // mu vector, sigma > 0 vector, eta > 0 ]
+
20  template <bool propto,
+
21  typename T_y, typename T_loc, typename T_scale, typename T_shape>
+
22  typename boost::math::tools::promote_args<T_y,T_loc,T_scale,T_shape>::type
+
23  lkj_cov_log(const Eigen::Matrix<T_y,Eigen::Dynamic,Eigen::Dynamic>& y,
+
24  const Eigen::Matrix<T_loc,Eigen::Dynamic,1>& mu,
+
25  const Eigen::Matrix<T_scale,Eigen::Dynamic,1>& sigma,
+
26  const T_shape& eta) {
+
27  static const char* function = "stan::prob::lkj_cov_log(%1%)";
+
28 
+ + + +
32  using boost::math::tools::promote_args;
+
33 
+
34  typename promote_args<T_y,T_loc,T_scale,T_shape>::type lp(0.0);
+
35  if (!check_size_match(function,
+
36  mu.rows(), "Rows of location parameter",
+
37  sigma.rows(), "columns of scale parameter",
+
38  &lp))
+
39  return lp;
+
40  if (!check_size_match(function,
+
41  y.rows(), "Rows of random variable",
+
42  y.cols(), "columns of random variable",
+
43  &lp))
+
44  return lp;
+
45  if (!check_size_match(function,
+
46  y.rows(), "Rows of random variable",
+
47  mu.rows(), "rows of location parameter",
+
48  &lp))
+
49  return lp;
+
50  if (!check_positive(function, eta, "Shape parameter", &lp))
+
51  return lp;
+
52  if (!check_finite(function, mu, "Location parameter", &lp))
+
53  return lp;
+
54  if (!check_finite(function, sigma, "Scale parameter", &lp))
+
55  return lp;
+
56  // FIXME: build vectorized versions
+
57  for (int m = 0; m < y.rows(); ++m)
+
58  for (int n = 0; n < y.cols(); ++n)
+
59  if (!check_finite(function, y(m,n), "Covariance matrix", &lp))
+
60  return lp;
+
61 
+
62  const unsigned int K = y.rows();
+
63  const Eigen::Array<T_y,Eigen::Dynamic,1> sds
+
64  = y.diagonal().array().sqrt();
+
65  for (unsigned int k = 0; k < K; k++) {
+
66  lp += lognormal_log<propto>(sds(k), mu(k), sigma(k));
+
67  }
+
68  if (stan::is_constant<typename stan::scalar_type<T_shape> >::value
+
69  && eta == 1.0) {
+
70  // no need to rescale y into a correlation matrix
+
71  lp += lkj_corr_log<propto,T_y,T_shape>(y, eta);
+
72  return lp;
+
73  }
+
74  Eigen::DiagonalMatrix<T_y,Eigen::Dynamic> D(K);
+
75  D.diagonal() = sds.inverse();
+
76  lp += lkj_corr_log<propto,T_y,T_shape>(D * y * D, eta);
+
77  return lp;
+
78  }
+
79 
+
80  template <typename T_y, typename T_loc, typename T_scale, typename T_shape>
+
81  inline
+
82  typename boost::math::tools::promote_args<T_y,T_loc,T_scale,T_shape>::type
+
83  lkj_cov_log(const Eigen::Matrix<T_y,Eigen::Dynamic,Eigen::Dynamic>& y,
+
84  const Eigen::Matrix<T_loc,Eigen::Dynamic,1>& mu,
+
85  const Eigen::Matrix<T_scale,Eigen::Dynamic,1>& sigma,
+
86  const T_shape& eta) {
+
87  return lkj_cov_log<false>(y,mu,sigma,eta);
+
88  }
+
89 
+
90  // LKJ_Cov(y|mu,sigma,eta) [ y covariance matrix (not correlation matrix)
+
91  // mu scalar, sigma > 0 scalar, eta > 0 ]
+
92  template <bool propto,
+
93  typename T_y, typename T_loc, typename T_scale, typename T_shape>
+
94  typename boost::math::tools::promote_args<T_y,T_loc,T_scale,T_shape>::type
+
95  lkj_cov_log(const Eigen::Matrix<T_y,Eigen::Dynamic,Eigen::Dynamic>& y,
+
96  const T_loc& mu,
+
97  const T_scale& sigma,
+
98  const T_shape& eta) {
+
99  static const char* function = "stan::prob::lkj_cov_log(%1%)";
+
100 
+ + +
103  using boost::math::tools::promote_args;
+
104 
+
105  typename promote_args<T_y,T_loc,T_scale,T_shape>::type lp(0.0);
+
106  if (!check_positive(function, eta, "Shape parameter", &lp))
+
107  return lp;
+
108  if (!check_finite(function, mu, "Location parameter", &lp))
+
109  return lp;
+
110  if (!check_finite(function, sigma, "Scale parameter",
+
111  &lp))
+
112  return lp;
+
113 
+
114  const unsigned int K = y.rows();
+
115  const Eigen::Array<T_y,Eigen::Dynamic,1> sds
+
116  = y.diagonal().array().sqrt();
+
117  for (unsigned int k = 0; k < K; k++) {
+
118  lp += lognormal_log<propto>(sds(k), mu, sigma);
+
119  }
+
120  if (stan::is_constant<typename stan::scalar_type<T_shape> >::value
+
121  && eta == 1.0) {
+
122  // no need to rescale y into a correlation matrix
+
123  lp += lkj_corr_log<propto>(y,eta);
+
124  return lp;
+
125  }
+
126  Eigen::DiagonalMatrix<T_y,Eigen::Dynamic> D(K);
+
127  D.diagonal() = sds.inverse();
+
128  lp += lkj_corr_log<propto,T_y,T_shape>(D * y * D, eta);
+
129  return lp;
+
130  }
+
131 
+
132  template <typename T_y, typename T_loc, typename T_scale, typename T_shape>
+
133  inline
+
134  typename boost::math::tools::promote_args<T_y,T_loc,T_scale,T_shape>::type
+
135  lkj_cov_log(const Eigen::Matrix<T_y,Eigen::Dynamic,Eigen::Dynamic>& y,
+
136  const T_loc& mu,
+
137  const T_scale& sigma,
+
138  const T_shape& eta) {
+
139  return lkj_cov_log<false>(y,mu,sigma,eta);
+
140  }
+
141 
+
142 
+
143  }
+
144 }
+
145 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/logical__and_8hpp.html b/doc/api/html/logical__and_8hpp.html new file mode 100644 index 00000000000..ed1dc875c9d --- /dev/null +++ b/doc/api/html/logical__and_8hpp.html @@ -0,0 +1,129 @@ + + + + + +Stan: src/stan/math/functions/logical_and.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
logical_and.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::math
 Matrices and templated mathematical functions.
 
+ + + + + +

+Functions

template<typename T1 , typename T2 >
int stan::math::logical_and (const T1 x1, const T2 x2)
 The logical and function which returns 1 if both arguments are unequal to zero and 0 otherwise.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/logical__and_8hpp_source.html b/doc/api/html/logical__and_8hpp_source.html new file mode 100644 index 00000000000..d5a6bd29136 --- /dev/null +++ b/doc/api/html/logical__and_8hpp_source.html @@ -0,0 +1,123 @@ + + + + + +Stan: src/stan/math/functions/logical_and.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
logical_and.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MATH__FUNCTIONS__LOGICAL_AND_HPP__
+
2 #define __STAN__MATH__FUNCTIONS__LOGICAL_AND_HPP__
+
3 
+
4 namespace stan {
+
5  namespace math {
+
6 
+
19  template <typename T1, typename T2>
+
20  inline int
+
21  logical_and(const T1 x1, const T2 x2) {
+
22  return (x1 != 0) && (x2 != 0);
+
23  }
+
24 
+
25  }
+
26 }
+
27 
+
28 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/logical__eq_8hpp.html b/doc/api/html/logical__eq_8hpp.html new file mode 100644 index 00000000000..6943215faef --- /dev/null +++ b/doc/api/html/logical__eq_8hpp.html @@ -0,0 +1,129 @@ + + + + + +Stan: src/stan/math/functions/logical_eq.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
logical_eq.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::math
 Matrices and templated mathematical functions.
 
+ + + + + +

+Functions

template<typename T1 , typename T2 >
int stan::math::logical_eq (const T1 x1, const T2 x2)
 Return 1 if the first argument is equal to the second.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/logical__eq_8hpp_source.html b/doc/api/html/logical__eq_8hpp_source.html new file mode 100644 index 00000000000..3399961ee14 --- /dev/null +++ b/doc/api/html/logical__eq_8hpp_source.html @@ -0,0 +1,123 @@ + + + + + +Stan: src/stan/math/functions/logical_eq.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
logical_eq.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MATH__FUNCTIONS__LOGICAL_EQ_HPP__
+
2 #define __STAN__MATH__FUNCTIONS__LOGICAL_EQ_HPP__
+
3 
+
4 namespace stan {
+
5  namespace math {
+
6 
+
17  template <typename T1, typename T2>
+
18  inline int
+
19  logical_eq(const T1 x1, const T2 x2) {
+
20  return x1 == x2;
+
21  }
+
22 
+
23  }
+
24 }
+
25 
+
26 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/logical__gt_8hpp.html b/doc/api/html/logical__gt_8hpp.html new file mode 100644 index 00000000000..a4c080cc740 --- /dev/null +++ b/doc/api/html/logical__gt_8hpp.html @@ -0,0 +1,129 @@ + + + + + +Stan: src/stan/math/functions/logical_gt.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
logical_gt.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::math
 Matrices and templated mathematical functions.
 
+ + + + + +

+Functions

template<typename T1 , typename T2 >
int stan::math::logical_gt (const T1 x1, const T2 x2)
 Return 1 if the first argument is strictly greater than the second.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/logical__gt_8hpp_source.html b/doc/api/html/logical__gt_8hpp_source.html new file mode 100644 index 00000000000..77e420a7263 --- /dev/null +++ b/doc/api/html/logical__gt_8hpp_source.html @@ -0,0 +1,123 @@ + + + + + +Stan: src/stan/math/functions/logical_gt.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
logical_gt.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MATH__FUNCTIONS__LOGICAL_GT_HPP__
+
2 #define __STAN__MATH__FUNCTIONS__LOGICAL_GT_HPP__
+
3 
+
4 namespace stan {
+
5  namespace math {
+
6 
+
17  template <typename T1, typename T2>
+
18  inline int
+
19  logical_gt(const T1 x1, const T2 x2) {
+
20  return x1 > x2;
+
21  }
+
22 
+
23  }
+
24 }
+
25 
+
26 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/logical__gte_8hpp.html b/doc/api/html/logical__gte_8hpp.html new file mode 100644 index 00000000000..3fcf5d40649 --- /dev/null +++ b/doc/api/html/logical__gte_8hpp.html @@ -0,0 +1,129 @@ + + + + + +Stan: src/stan/math/functions/logical_gte.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
logical_gte.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::math
 Matrices and templated mathematical functions.
 
+ + + + + +

+Functions

template<typename T1 , typename T2 >
int stan::math::logical_gte (const T1 x1, const T2 x2)
 Return 1 if the first argument is greater than or equal to the second.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/logical__gte_8hpp_source.html b/doc/api/html/logical__gte_8hpp_source.html new file mode 100644 index 00000000000..42f3d19aa4d --- /dev/null +++ b/doc/api/html/logical__gte_8hpp_source.html @@ -0,0 +1,123 @@ + + + + + +Stan: src/stan/math/functions/logical_gte.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
logical_gte.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MATH__FUNCTIONS__LOGICAL_GTE_HPP__
+
2 #define __STAN__MATH__FUNCTIONS__LOGICAL_GTE_HPP__
+
3 
+
4 namespace stan {
+
5  namespace math {
+
6 
+
17  template <typename T1, typename T2>
+
18  inline int
+
19  logical_gte(const T1 x1, const T2 x2) {
+
20  return x1 >= x2;
+
21  }
+
22 
+
23  }
+
24 }
+
25 
+
26 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/logical__lt_8hpp.html b/doc/api/html/logical__lt_8hpp.html new file mode 100644 index 00000000000..d3e60d36483 --- /dev/null +++ b/doc/api/html/logical__lt_8hpp.html @@ -0,0 +1,129 @@ + + + + + +Stan: src/stan/math/functions/logical_lt.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
logical_lt.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::math
 Matrices and templated mathematical functions.
 
+ + + + + +

+Functions

template<typename T1 , typename T2 >
int stan::math::logical_lt (T1 x1, T2 x2)
 Return 1 if the first argument is strictly less than the second.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/logical__lt_8hpp_source.html b/doc/api/html/logical__lt_8hpp_source.html new file mode 100644 index 00000000000..8a58f7fd625 --- /dev/null +++ b/doc/api/html/logical__lt_8hpp_source.html @@ -0,0 +1,124 @@ + + + + + +Stan: src/stan/math/functions/logical_lt.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
logical_lt.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MATH__FUNCTIONS__LOGICAL_LT_HPP__
+
2 #define __STAN__MATH__FUNCTIONS__LOGICAL_LT_HPP__
+
3 
+
4 namespace stan {
+
5  namespace math {
+
6 
+
17  template <typename T1, typename T2>
+
18  inline
+
19  int
+
20  logical_lt(T1 x1, T2 x2) {
+
21  return x1 < x2;
+
22  }
+
23 
+
24  }
+
25 }
+
26 
+
27 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/logical__lte_8hpp.html b/doc/api/html/logical__lte_8hpp.html new file mode 100644 index 00000000000..2bc6de0f5b2 --- /dev/null +++ b/doc/api/html/logical__lte_8hpp.html @@ -0,0 +1,129 @@ + + + + + +Stan: src/stan/math/functions/logical_lte.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
logical_lte.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::math
 Matrices and templated mathematical functions.
 
+ + + + + +

+Functions

template<typename T1 , typename T2 >
int stan::math::logical_lte (const T1 x1, const T2 x2)
 Return 1 if the first argument is less than or equal to the second.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/logical__lte_8hpp_source.html b/doc/api/html/logical__lte_8hpp_source.html new file mode 100644 index 00000000000..e2fc99e19f8 --- /dev/null +++ b/doc/api/html/logical__lte_8hpp_source.html @@ -0,0 +1,123 @@ + + + + + +Stan: src/stan/math/functions/logical_lte.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
logical_lte.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MATH__FUNCTIONS__LOGICAL_LTE_HPP__
+
2 #define __STAN__MATH__FUNCTIONS__LOGICAL_LTE_HPP__
+
3 
+
4 namespace stan {
+
5  namespace math {
+
6 
+
17  template <typename T1, typename T2>
+
18  inline int
+
19  logical_lte(const T1 x1, const T2 x2) {
+
20  return x1 <= x2;
+
21  }
+
22 
+
23  }
+
24 }
+
25 
+
26 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/logical__negation_8hpp.html b/doc/api/html/logical__negation_8hpp.html new file mode 100644 index 00000000000..bd4de8ef699 --- /dev/null +++ b/doc/api/html/logical__negation_8hpp.html @@ -0,0 +1,129 @@ + + + + + +Stan: src/stan/math/functions/logical_negation.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
logical_negation.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::math
 Matrices and templated mathematical functions.
 
+ + + + + +

+Functions

template<typename T >
int stan::math::logical_negation (const T x)
 The logical negation function which returns 1 if the input is equal to zero and 0 otherwise.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/logical__negation_8hpp_source.html b/doc/api/html/logical__negation_8hpp_source.html new file mode 100644 index 00000000000..3a329e902c8 --- /dev/null +++ b/doc/api/html/logical__negation_8hpp_source.html @@ -0,0 +1,123 @@ + + + + + +Stan: src/stan/math/functions/logical_negation.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
logical_negation.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MATH__FUNCTIONS__LOGICAL_NEGATION_HPP__
+
2 #define __STAN__MATH__FUNCTIONS__LOGICAL_NEGATION_HPP__
+
3 
+
4 namespace stan {
+
5  namespace math {
+
6 
+
15  template <typename T>
+
16  inline int
+
17  logical_negation(const T x) {
+
18  return (x == 0);
+
19  }
+
20 
+
21  }
+
22 }
+
23 
+
24 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/logical__neq_8hpp.html b/doc/api/html/logical__neq_8hpp.html new file mode 100644 index 00000000000..dcab8810403 --- /dev/null +++ b/doc/api/html/logical__neq_8hpp.html @@ -0,0 +1,129 @@ + + + + + +Stan: src/stan/math/functions/logical_neq.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
logical_neq.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::math
 Matrices and templated mathematical functions.
 
+ + + + + +

+Functions

template<typename T1 , typename T2 >
int stan::math::logical_neq (const T1 x1, const T2 x2)
 Return 1 if the first argument is unequal to the second.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/logical__neq_8hpp_source.html b/doc/api/html/logical__neq_8hpp_source.html new file mode 100644 index 00000000000..ffe05ee1dce --- /dev/null +++ b/doc/api/html/logical__neq_8hpp_source.html @@ -0,0 +1,122 @@ + + + + + +Stan: src/stan/math/functions/logical_neq.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
logical_neq.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MATH__FUNCTIONS__LOGICAL_NEQ_HPP__
+
2 #define __STAN__MATH__FUNCTIONS__LOGICAL_NEQ_HPP__
+
3 
+
4 namespace stan {
+
5  namespace math {
+
6 
+
17  template <typename T1, typename T2>
+
18  inline int
+
19  logical_neq(const T1 x1, const T2 x2) {
+
20  return x1 != x2;
+
21  }
+
22 
+
23  }
+
24 }
+
25 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/logical__or_8hpp.html b/doc/api/html/logical__or_8hpp.html new file mode 100644 index 00000000000..1372e097c33 --- /dev/null +++ b/doc/api/html/logical__or_8hpp.html @@ -0,0 +1,129 @@ + + + + + +Stan: src/stan/math/functions/logical_or.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
logical_or.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::math
 Matrices and templated mathematical functions.
 
+ + + + + +

+Functions

template<typename T1 , typename T2 >
int stan::math::logical_or (T1 x1, T2 x2)
 The logical or function which returns 1 if either argument is unequal to zero and 0 otherwise.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/logical__or_8hpp_source.html b/doc/api/html/logical__or_8hpp_source.html new file mode 100644 index 00000000000..4d7ba02b5cd --- /dev/null +++ b/doc/api/html/logical__or_8hpp_source.html @@ -0,0 +1,123 @@ + + + + + +Stan: src/stan/math/functions/logical_or.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
logical_or.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MATH__FUNCTIONS__LOGICAL_OR_HPP__
+
2 #define __STAN__MATH__FUNCTIONS__LOGICAL_OR_HPP__
+
3 
+
4 namespace stan {
+
5  namespace math {
+
6 
+
18  template <typename T1, typename T2>
+
19  inline int
+
20  logical_or(T1 x1, T2 x2) {
+
21  return (x1 != 0) || (x2 != 0);
+
22  }
+
23 
+
24  }
+
25 }
+
26 
+
27 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/logistic_8hpp.html b/doc/api/html/logistic_8hpp.html new file mode 100644 index 00000000000..e082308baec --- /dev/null +++ b/doc/api/html/logistic_8hpp.html @@ -0,0 +1,157 @@ + + + + + +Stan: src/stan/prob/distributions/univariate/continuous/logistic.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
logistic.hpp File Reference
+
+
+
#include <boost/random/exponential_distribution.hpp>
+#include <boost/random/variate_generator.hpp>
+#include <stan/agrad/partials_vari.hpp>
+#include <stan/math/error_handling.hpp>
+#include <stan/math/constants.hpp>
+#include <stan/math/functions/value_of.hpp>
+#include <stan/meta/traits.hpp>
+#include <stan/prob/constants.hpp>
+#include <stan/prob/traits.hpp>
+
+

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::prob
 Templated probability distributions.
 
+ + + + + + + + + + + + + + + + + + + +

+Functions

template<bool propto, typename T_y , typename T_loc , typename T_scale >
return_type< T_y, T_loc,
+T_scale >::type 
stan::prob::logistic_log (const T_y &y, const T_loc &mu, const T_scale &sigma)
 
template<typename T_y , typename T_loc , typename T_scale >
return_type< T_y, T_loc,
+T_scale >::type 
stan::prob::logistic_log (const T_y &y, const T_loc &mu, const T_scale &sigma)
 
template<typename T_y , typename T_loc , typename T_scale >
return_type< T_y, T_loc,
+T_scale >::type 
stan::prob::logistic_cdf (const T_y &y, const T_loc &mu, const T_scale &sigma)
 
template<typename T_y , typename T_loc , typename T_scale >
return_type< T_y, T_loc,
+T_scale >::type 
stan::prob::logistic_cdf_log (const T_y &y, const T_loc &mu, const T_scale &sigma)
 
template<typename T_y , typename T_loc , typename T_scale >
return_type< T_y, T_loc,
+T_scale >::type 
stan::prob::logistic_ccdf_log (const T_y &y, const T_loc &mu, const T_scale &sigma)
 
template<class RNG >
double stan::prob::logistic_rng (const double mu, const double sigma, RNG &rng)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/logistic_8hpp_source.html b/doc/api/html/logistic_8hpp_source.html new file mode 100644 index 00000000000..5b29573630a --- /dev/null +++ b/doc/api/html/logistic_8hpp_source.html @@ -0,0 +1,546 @@ + + + + + +Stan: src/stan/prob/distributions/univariate/continuous/logistic.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
logistic.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__PROB__DISTRIBUTIONS__UNIVARIATE__CONTINUOUS__LOGISTIC_HPP__
+
2 #define __STAN__PROB__DISTRIBUTIONS__UNIVARIATE__CONTINUOUS__LOGISTIC_HPP__
+
3 
+
4 #include <boost/random/exponential_distribution.hpp>
+
5 #include <boost/random/variate_generator.hpp>
+
6 
+ + + + +
11 #include <stan/meta/traits.hpp>
+
12 #include <stan/prob/constants.hpp>
+
13 #include <stan/prob/traits.hpp>
+
14 
+
15 namespace stan {
+
16  namespace prob {
+
17 
+
18  // Logistic(y|mu,sigma) [sigma > 0]
+
19  // FIXME: document
+
20  template <bool propto,
+
21  typename T_y, typename T_loc, typename T_scale>
+
22  typename return_type<T_y,T_loc,T_scale>::type
+
23  logistic_log(const T_y& y, const T_loc& mu, const T_scale& sigma) {
+
24  static const char* function = "stan::prob::logistic_log(%1%)";
+
25 
+ + + + + +
31 
+
32  // check if any vectors are zero length
+
33  if (!(stan::length(y)
+
34  && stan::length(mu)
+
35  && stan::length(sigma)))
+
36  return 0.0;
+
37 
+
38 
+
39  // set up return value accumulator
+
40  double logp(0.0);
+
41 
+
42  // validate args (here done over var, which should be OK)
+
43  if (!check_finite(function, y, "Random variable", &logp))
+
44  return logp;
+
45  if (!check_finite(function, mu, "Location parameter",
+
46  &logp))
+
47  return logp;
+
48  if (!check_finite(function, sigma, "Scale parameter", &logp))
+
49  return logp;
+
50  if (!check_positive(function, sigma, "Scale parameter",
+
51  &logp))
+
52  return logp;
+
53  if (!(check_consistent_sizes(function,
+
54  y,mu,sigma,
+
55  "Random variable","Location parameter",
+
56  "Scale parameter",
+
57  &logp)))
+
58  return logp;
+
59 
+
60  // check if no variables are involved and prop-to
+ +
62  return 0.0;
+
63 
+
64 
+
65  // set up template expressions wrapping scalars into vector views
+ +
67  operands_and_partials(y, mu, sigma);
+
68 
+
69  VectorView<const T_y> y_vec(y);
+
70  VectorView<const T_loc> mu_vec(mu);
+
71  VectorView<const T_scale> sigma_vec(sigma);
+
72  size_t N = max_size(y, mu, sigma);
+
73 
+ +
75  inv_sigma(length(sigma));
+ +
77  is_vector<T_scale>::value> log_sigma(length(sigma));
+
78  for (size_t i = 0; i < length(sigma); i++) {
+
79  inv_sigma[i] = 1.0 / value_of(sigma_vec[i]);
+ +
81  log_sigma[i] = log(value_of(sigma_vec[i]));
+
82  }
+
83 
+ + +
86  exp_mu_div_sigma(max_size(mu,sigma));
+ + +
89  exp_y_div_sigma(max_size(y,sigma));
+ +
91  for (size_t n = 0; n < max_size(mu,sigma); n++)
+
92  exp_mu_div_sigma[n] = exp(value_of(mu_vec[n])
+
93  / value_of(sigma_vec[n]));
+
94  for (size_t n = 0; n < max_size(y,sigma); n++)
+
95  exp_y_div_sigma[n] = exp(value_of(y_vec[n])
+
96  / value_of(sigma_vec[n]));
+
97  }
+
98 
+
99  using stan::math::log1p;
+
100  for (size_t n = 0; n < N; n++) {
+
101  const double y_dbl = value_of(y_vec[n]);
+
102  const double mu_dbl = value_of(mu_vec[n]);
+
103 
+
104  const double y_minus_mu = y_dbl - mu_dbl;
+
105  const double y_minus_mu_div_sigma = y_minus_mu * inv_sigma[n];
+
106  double exp_m_y_minus_mu_div_sigma(0);
+ +
108  exp_m_y_minus_mu_div_sigma = exp(-y_minus_mu_div_sigma);
+
109  double inv_1p_exp_y_minus_mu_div_sigma(0);
+ + +
112  inv_1p_exp_y_minus_mu_div_sigma = 1 / (1 + exp(y_minus_mu_div_sigma));
+
113 
+ +
115  logp -= y_minus_mu_div_sigma;
+ +
117  logp -= log_sigma[n];
+ +
119  logp -= 2.0 * log1p(exp_m_y_minus_mu_div_sigma);
+
120 
+ +
122  operands_and_partials.d_x1[n]
+
123  += (2 * inv_1p_exp_y_minus_mu_div_sigma - 1) * inv_sigma[n];
+ +
125  operands_and_partials.d_x2[n] +=
+
126  (1 - 2 * exp_mu_div_sigma[n] / (exp_mu_div_sigma[n]
+
127  + exp_y_div_sigma[n]))
+
128  * inv_sigma[n];
+ +
130  operands_and_partials.d_x3[n] +=
+
131  ((1 - 2 * inv_1p_exp_y_minus_mu_div_sigma)
+
132  *y_minus_mu*inv_sigma[n] - 1) * inv_sigma[n];
+
133  }
+
134  return operands_and_partials.to_var(logp);
+
135  }
+
136 
+
137  template <typename T_y, typename T_loc, typename T_scale>
+
138  inline
+ +
140  logistic_log(const T_y& y, const T_loc& mu, const T_scale& sigma) {
+
141  return logistic_log<false>(y,mu,sigma);
+
142  }
+
143 
+
144  // Logistic(y|mu,sigma) [sigma > 0]
+
145  template <typename T_y, typename T_loc, typename T_scale>
+ +
147  logistic_cdf(const T_y& y, const T_loc& mu, const T_scale& sigma) {
+
148 
+
149  // Size checks
+
150  if ( !( stan::length(y) && stan::length(mu)
+
151  && stan::length(sigma) ) )
+
152  return 1.0;
+
153 
+
154  // Error checks
+
155  static const char* function = "stan::prob::logistic_cdf(%1%)";
+
156 
+ + + + +
161  using stan::math::value_of;
+
162  using boost::math::tools::promote_args;
+
163 
+
164  double P(1.0);
+
165 
+
166  if (!check_not_nan(function, y, "Random variable", &P))
+
167  return P;
+
168  if (!check_finite(function, mu, "Location parameter", &P))
+
169  return P;
+
170  if (!check_finite(function, sigma, "Scale parameter", &P))
+
171  return P;
+
172  if (!check_positive(function, sigma, "Scale parameter", &P))
+
173  return P;
+
174  if (!(check_consistent_sizes(function, y, mu, sigma,
+
175  "Random variable", "Location parameter",
+
176  "Scale parameter", &P)))
+
177  return P;
+
178 
+
179  // Wrap arguments in vectors
+
180  VectorView<const T_y> y_vec(y);
+
181  VectorView<const T_loc> mu_vec(mu);
+
182  VectorView<const T_scale> sigma_vec(sigma);
+
183  size_t N = max_size(y, mu, sigma);
+
184 
+ +
186  operands_and_partials(y, mu, sigma);
+
187 
+
188  // Explicit return for extreme values
+
189  // The gradients are technically ill-defined, but treated as zero
+
190 
+
191  for (size_t i = 0; i < stan::length(y); i++) {
+
192  if (value_of(y_vec[i]) == -std::numeric_limits<double>::infinity())
+
193  return operands_and_partials.to_var(0.0);
+
194  }
+
195 
+
196  // Compute vectorized CDF and its gradients
+
197  for (size_t n = 0; n < N; n++) {
+
198 
+
199  // Explicit results for extreme values
+
200  // The gradients are technically ill-defined, but treated as zero
+
201  if (value_of(y_vec[n]) == std::numeric_limits<double>::infinity()) {
+
202  continue;
+
203  }
+
204 
+
205  // Pull out values
+
206  const double y_dbl = value_of(y_vec[n]);
+
207  const double mu_dbl = value_of(mu_vec[n]);
+
208  const double sigma_dbl = value_of(sigma_vec[n]);
+
209  const double sigma_inv_vec = 1.0 / value_of(sigma_vec[n]);
+
210 
+
211  // Compute
+
212  const double Pn = 1.0 / ( 1.0 + exp( - (y_dbl - mu_dbl)
+
213  * sigma_inv_vec ) );
+
214 
+
215  P *= Pn;
+
216 
+ +
218  operands_and_partials.d_x1[n]
+
219  += exp(logistic_log(y_dbl, mu_dbl, sigma_dbl)) / Pn;
+ +
221  operands_and_partials.d_x2[n]
+
222  += - exp(logistic_log(y_dbl, mu_dbl, sigma_dbl)) / Pn;
+ +
224  operands_and_partials.d_x3[n] += - (y_dbl - mu_dbl) * sigma_inv_vec
+
225  * exp(logistic_log(y_dbl, mu_dbl, sigma_dbl)) / Pn;
+
226  }
+
227 
+ +
229  for(size_t n = 0; n < stan::length(y); ++n)
+
230  operands_and_partials.d_x1[n] *= P;
+
231  }
+ +
233  for(size_t n = 0; n < stan::length(mu); ++n)
+
234  operands_and_partials.d_x2[n] *= P;
+
235  }
+ +
237  for(size_t n = 0; n < stan::length(sigma); ++n)
+
238  operands_and_partials.d_x3[n] *= P;
+
239  }
+
240 
+
241  return operands_and_partials.to_var(P);
+
242 
+
243  }
+
244 
+
245  template <typename T_y, typename T_loc, typename T_scale>
+ +
247  logistic_cdf_log(const T_y& y, const T_loc& mu, const T_scale& sigma) {
+
248 
+
249  // Size checks
+
250  if ( !( stan::length(y) && stan::length(mu) && stan::length(sigma) ) )
+
251  return 0.0;
+
252 
+
253  // Error checks
+
254  static const char* function = "stan::prob::logistic_cdf_log(%1%)";
+
255 
+ + + + +
260  using stan::math::value_of;
+
261  using boost::math::tools::promote_args;
+
262 
+
263  double P(0.0);
+
264 
+
265  if (!check_not_nan(function, y, "Random variable", &P))
+
266  return P;
+
267  if (!check_finite(function, mu, "Location parameter", &P))
+
268  return P;
+
269  if (!check_finite(function, sigma, "Scale parameter", &P))
+
270  return P;
+
271  if (!check_positive(function, sigma, "Scale parameter", &P))
+
272  return P;
+
273  if (!(check_consistent_sizes(function, y, mu, sigma,
+
274  "Random variable", "Location parameter",
+
275  "Scale parameter", &P)))
+
276  return P;
+
277 
+
278  // Wrap arguments in vectors
+
279  VectorView<const T_y> y_vec(y);
+
280  VectorView<const T_loc> mu_vec(mu);
+
281  VectorView<const T_scale> sigma_vec(sigma);
+
282  size_t N = max_size(y, mu, sigma);
+
283 
+ +
285  operands_and_partials(y, mu, sigma);
+
286 
+
287  // Explicit return for extreme values
+
288  // The gradients are technically ill-defined, but treated as zero
+
289 
+
290  for (size_t i = 0; i < stan::length(y); i++) {
+
291  if (value_of(y_vec[i]) == -std::numeric_limits<double>::infinity())
+
292  return operands_and_partials.to_var(-std::numeric_limits<double>::infinity());
+
293  }
+
294 
+
295  // Compute vectorized cdf_log and its gradients
+
296  for (size_t n = 0; n < N; n++) {
+
297 
+
298  // Explicit results for extreme values
+
299  // The gradients are technically ill-defined, but treated as zero
+
300  if (value_of(y_vec[n]) == std::numeric_limits<double>::infinity()) {
+
301  continue;
+
302  }
+
303 
+
304  // Pull out values
+
305  const double y_dbl = value_of(y_vec[n]);
+
306  const double mu_dbl = value_of(mu_vec[n]);
+
307  const double sigma_dbl = value_of(sigma_vec[n]);
+
308  const double sigma_inv_vec = 1.0 / value_of(sigma_vec[n]);
+
309 
+
310  // Compute
+
311  const double Pn = 1.0 / ( 1.0 + exp( - (y_dbl - mu_dbl)
+
312  * sigma_inv_vec ) );
+
313  P += log(Pn);
+
314 
+ +
316  operands_and_partials.d_x1[n]
+
317  += exp(logistic_log(y_dbl, mu_dbl, sigma_dbl)) / Pn;
+ +
319  operands_and_partials.d_x2[n]
+
320  += - exp(logistic_log(y_dbl, mu_dbl, sigma_dbl)) / Pn;
+ +
322  operands_and_partials.d_x3[n] += - (y_dbl - mu_dbl) * sigma_inv_vec
+
323  * exp(logistic_log(y_dbl, mu_dbl, sigma_dbl)) / Pn;
+
324  }
+
325 
+
326  return operands_and_partials.to_var(P);
+
327  }
+
328 
+
329  template <typename T_y, typename T_loc, typename T_scale>
+ +
331  logistic_ccdf_log(const T_y& y, const T_loc& mu, const T_scale& sigma) {
+
332 
+
333  // Size checks
+
334  if ( !( stan::length(y) && stan::length(mu) && stan::length(sigma) ) )
+
335  return 0.0;
+
336 
+
337  // Error checks
+
338  static const char* function = "stan::prob::logistic_cdf_log(%1%)";
+
339 
+ + + + +
344  using stan::math::value_of;
+
345  using boost::math::tools::promote_args;
+
346 
+
347  double P(0.0);
+
348 
+
349  if (!check_not_nan(function, y, "Random variable", &P))
+
350  return P;
+
351  if (!check_finite(function, mu, "Location parameter", &P))
+
352  return P;
+
353  if (!check_finite(function, sigma, "Scale parameter", &P))
+
354  return P;
+
355  if (!check_positive(function, sigma, "Scale parameter", &P))
+
356  return P;
+
357  if (!(check_consistent_sizes(function, y, mu, sigma,
+
358  "Random variable", "Location parameter",
+
359  "Scale parameter", &P)))
+
360  return P;
+
361 
+
362  // Wrap arguments in vectors
+
363  VectorView<const T_y> y_vec(y);
+
364  VectorView<const T_loc> mu_vec(mu);
+
365  VectorView<const T_scale> sigma_vec(sigma);
+
366  size_t N = max_size(y, mu, sigma);
+
367 
+ +
369  operands_and_partials(y, mu, sigma);
+
370 
+
371  // Explicit return for extreme values
+
372  // The gradients are technically ill-defined, but treated as zero
+
373 
+
374  for (size_t i = 0; i < stan::length(y); i++) {
+
375  if (value_of(y_vec[i]) == -std::numeric_limits<double>::infinity())
+
376  return operands_and_partials.to_var(0.0);
+
377  }
+
378 
+
379  // Compute vectorized cdf_log and its gradients
+
380  for (size_t n = 0; n < N; n++) {
+
381 
+
382  // Explicit results for extreme values
+
383  // The gradients are technically ill-defined, but treated as zero
+
384  if (value_of(y_vec[n]) == std::numeric_limits<double>::infinity()) {
+
385  return operands_and_partials.to_var(stan::math::negative_infinity());
+
386  }
+
387 
+
388  // Pull out values
+
389  const double y_dbl = value_of(y_vec[n]);
+
390  const double mu_dbl = value_of(mu_vec[n]);
+
391  const double sigma_dbl = value_of(sigma_vec[n]);
+
392  const double sigma_inv_vec = 1.0 / value_of(sigma_vec[n]);
+
393 
+
394  // Compute
+
395  const double Pn = 1.0 - 1.0 / ( 1.0 + exp( - (y_dbl - mu_dbl)
+
396  * sigma_inv_vec ) );
+
397  P += log(Pn);
+
398 
+ +
400  operands_and_partials.d_x1[n]
+
401  -= exp(logistic_log(y_dbl, mu_dbl, sigma_dbl)) / Pn;
+ +
403  operands_and_partials.d_x2[n]
+
404  -= - exp(logistic_log(y_dbl, mu_dbl, sigma_dbl)) / Pn;
+ +
406  operands_and_partials.d_x3[n] -= - (y_dbl - mu_dbl) * sigma_inv_vec
+
407  * exp(logistic_log(y_dbl, mu_dbl, sigma_dbl)) / Pn;
+
408  }
+
409 
+
410  return operands_and_partials.to_var(P);
+
411  }
+
412 
+
413  template <class RNG>
+
414  inline double
+
415  logistic_rng(const double mu,
+
416  const double sigma,
+
417  RNG& rng) {
+
418  using boost::variate_generator;
+
419  using boost::random::exponential_distribution;
+
420 
+
421  static const char* function = "stan::prob::logistic_rng(%1%)";
+
422 
+ + +
425 
+
426  if (!check_finite(function, mu, "Location parameter"))
+
427  return 0;
+
428  if (!check_finite(function, sigma, "Scale parameter"))
+
429  return 0;
+
430  if (!check_positive(function, sigma, "Scale parameter"))
+
431  return 0;
+
432 
+
433  variate_generator<RNG&, exponential_distribution<> >
+
434  exp_rng(rng, exponential_distribution<>(1));
+
435  return mu - sigma * std::log(exp_rng() / exp_rng());
+
436  }
+
437  }
+
438 }
+
439 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/lognormal_8hpp.html b/doc/api/html/lognormal_8hpp.html new file mode 100644 index 00000000000..d75c906197a --- /dev/null +++ b/doc/api/html/lognormal_8hpp.html @@ -0,0 +1,158 @@ + + + + + +Stan: src/stan/prob/distributions/univariate/continuous/lognormal.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
lognormal.hpp File Reference
+
+
+
#include <boost/random/lognormal_distribution.hpp>
+#include <boost/random/variate_generator.hpp>
+#include <stan/agrad/partials_vari.hpp>
+#include <stan/math/error_handling.hpp>
+#include <stan/math/constants.hpp>
+#include <stan/math/functions/value_of.hpp>
+#include <stan/math/functions/square.hpp>
+#include <stan/meta/traits.hpp>
+#include <stan/prob/constants.hpp>
+#include <stan/prob/traits.hpp>
+
+

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::prob
 Templated probability distributions.
 
+ + + + + + + + + + + + + + + + + + + +

+Functions

template<bool propto, typename T_y , typename T_loc , typename T_scale >
return_type< T_y, T_loc,
+T_scale >::type 
stan::prob::lognormal_log (const T_y &y, const T_loc &mu, const T_scale &sigma)
 
template<typename T_y , typename T_loc , typename T_scale >
return_type< T_y, T_loc,
+T_scale >::type 
stan::prob::lognormal_log (const T_y &y, const T_loc &mu, const T_scale &sigma)
 
template<typename T_y , typename T_loc , typename T_scale >
return_type< T_y, T_loc,
+T_scale >::type 
stan::prob::lognormal_cdf (const T_y &y, const T_loc &mu, const T_scale &sigma)
 
template<typename T_y , typename T_loc , typename T_scale >
return_type< T_y, T_loc,
+T_scale >::type 
stan::prob::lognormal_cdf_log (const T_y &y, const T_loc &mu, const T_scale &sigma)
 
template<typename T_y , typename T_loc , typename T_scale >
return_type< T_y, T_loc,
+T_scale >::type 
stan::prob::lognormal_ccdf_log (const T_y &y, const T_loc &mu, const T_scale &sigma)
 
template<class RNG >
double stan::prob::lognormal_rng (const double mu, const double sigma, RNG &rng)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/lognormal_8hpp_source.html b/doc/api/html/lognormal_8hpp_source.html new file mode 100644 index 00000000000..d44ee0ec19c --- /dev/null +++ b/doc/api/html/lognormal_8hpp_source.html @@ -0,0 +1,519 @@ + + + + + +Stan: src/stan/prob/distributions/univariate/continuous/lognormal.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
lognormal.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__PROB__DISTRIBUTIONS__UNIVARIATE__CONTINUOUS__LOGNORMAL_HPP__
+
2 #define __STAN__PROB__DISTRIBUTIONS__UNIVARIATE__CONTINUOUS__LOGNORMAL_HPP__
+
3 
+
4 #include <boost/random/lognormal_distribution.hpp>
+
5 #include <boost/random/variate_generator.hpp>
+
6 
+ + + + + +
12 #include <stan/meta/traits.hpp>
+
13 #include <stan/prob/constants.hpp>
+
14 #include <stan/prob/traits.hpp>
+
15 
+
16 namespace stan {
+
17  namespace prob {
+
18 
+
19  // LogNormal(y|mu,sigma) [y >= 0; sigma > 0]
+
20  // FIXME: document
+
21  template <bool propto,
+
22  typename T_y, typename T_loc, typename T_scale>
+
23  typename return_type<T_y,T_loc,T_scale>::type
+
24  lognormal_log(const T_y& y, const T_loc& mu, const T_scale& sigma) {
+
25  static const char* function = "stan::prob::lognormal_log(%1%)";
+
26 
+ + + + + + + + +
35 
+
36 
+
37  // check if any vectors are zero length
+
38  if (!(stan::length(y)
+
39  && stan::length(mu)
+
40  && stan::length(sigma)))
+
41  return 0.0;
+
42 
+
43  // set up return value accumulator
+
44  double logp(0.0);
+
45 
+
46  // validate args (here done over var, which should be OK)
+
47  if (!check_not_nan(function, y, "Random variable", &logp))
+
48  return logp;
+
49  if (!check_nonnegative(function, y, "Random variable", &logp))
+
50  return logp;
+
51  if (!check_finite(function, mu, "Location parameter",
+
52  &logp))
+
53  return logp;
+
54  if (!check_finite(function, sigma, "Scale parameter",
+
55  &logp))
+
56  return logp;
+
57  if (!check_positive(function, sigma, "Scale parameter",
+
58  &logp))
+
59  return logp;
+
60  if (!(check_consistent_sizes(function,
+
61  y,mu,sigma,
+
62  "Random variable","Location parameter","Scale parameter",
+
63  &logp)))
+
64  return logp;
+
65 
+
66 
+
67  VectorView<const T_y> y_vec(y);
+
68  VectorView<const T_loc> mu_vec(mu);
+
69  VectorView<const T_scale> sigma_vec(sigma);
+
70  size_t N = max_size(y, mu, sigma);
+
71 
+
72  for (size_t n = 0; n < length(y); n++)
+
73  if (value_of(y_vec[n]) <= 0)
+
74  return LOG_ZERO;
+
75 
+ +
77  operands_and_partials(y, mu, sigma);
+
78 
+
79  using stan::math::square;
+
80  using std::log;
+
81  using stan::prob::NEG_LOG_SQRT_TWO_PI;
+
82 
+
83 
+ +
85  is_vector<T_scale>::value> log_sigma(length(sigma));
+ +
87  for (size_t n = 0; n < length(sigma); n++)
+
88  log_sigma[n] = log(value_of(sigma_vec[n]));
+ +
90  is_vector<T_scale>::value> inv_sigma(length(sigma));
+ +
92  is_vector<T_scale>::value> inv_sigma_sq(length(sigma));
+ +
94  for (size_t n = 0; n < length(sigma); n++)
+
95  inv_sigma[n] = 1 / value_of(sigma_vec[n]);
+ +
97  for (size_t n = 0; n < length(sigma); n++)
+
98  inv_sigma_sq[n] = inv_sigma[n] * inv_sigma[n];
+
99 
+ +
101  is_vector<T_y>::value> log_y(length(y));
+ +
103  for (size_t n = 0; n < length(y); n++)
+
104  log_y[n] = log(value_of(y_vec[n]));
+ +
106  is_vector<T_y>::value> inv_y(length(y));
+ +
108  for (size_t n = 0; n < length(y); n++)
+
109  inv_y[n] = 1 / value_of(y_vec[n]);
+
110 
+ +
112  logp += N * NEG_LOG_SQRT_TWO_PI;
+
113 
+
114  for (size_t n = 0; n < N; n++) {
+
115  const double mu_dbl = value_of(mu_vec[n]);
+
116 
+
117  double logy_m_mu(0);
+ + +
120  logy_m_mu = log_y[n] - mu_dbl;
+
121 
+
122  double logy_m_mu_sq = logy_m_mu * logy_m_mu;
+
123  double logy_m_mu_div_sigma(0);
+ + + +
127  logy_m_mu_div_sigma = logy_m_mu * inv_sigma_sq[n];
+
128 
+
129 
+
130  // log probability
+ +
132  logp -= log_sigma[n];
+ +
134  logp -= log_y[n];
+ +
136  logp -= 0.5 * logy_m_mu_sq * inv_sigma_sq[n];
+
137 
+
138  // gradients
+ +
140  operands_and_partials.d_x1[n] -= (1 + logy_m_mu_div_sigma) * inv_y[n];
+ +
142  operands_and_partials.d_x2[n] += logy_m_mu_div_sigma;
+ +
144  operands_and_partials.d_x3[n]
+
145  += (logy_m_mu_div_sigma * logy_m_mu - 1) * inv_sigma[n];
+
146  }
+
147  return operands_and_partials.to_var(logp);
+
148  }
+
149 
+
150  template <typename T_y, typename T_loc, typename T_scale>
+
151  inline
+ +
153  lognormal_log(const T_y& y, const T_loc& mu, const T_scale& sigma) {
+
154  return lognormal_log<false>(y,mu,sigma);
+
155  }
+
156 
+
157 
+
158  template <typename T_y, typename T_loc, typename T_scale>
+ +
160  lognormal_cdf(const T_y& y, const T_loc& mu, const T_scale& sigma) {
+
161  static const char* function = "stan::prob::lognormal_cdf(%1%)";
+
162 
+
163  double cdf = 1.0;
+
164 
+ + + + +
169  using boost::math::tools::promote_args;
+
170  using stan::math::value_of;
+
171 
+
172  // check if any vectors are zero length
+
173  if (!(stan::length(y)
+
174  && stan::length(mu)
+
175  && stan::length(sigma)))
+
176  return cdf;
+
177 
+
178  if (!check_not_nan(function, y, "Random variable", &cdf))
+
179  return cdf;
+
180  if (!check_nonnegative(function, y, "Random variable", &cdf))
+
181  return cdf;
+
182  if (!check_finite(function, mu, "Location parameter", &cdf))
+
183  return cdf;
+
184  if (!check_finite(function, sigma, "Scale parameter", &cdf))
+
185  return cdf;
+
186  if (!check_positive(function, sigma, "Scale parameter", &cdf))
+
187  return cdf;
+
188 
+ +
190  operands_and_partials(y, mu, sigma);
+
191 
+
192  VectorView<const T_y> y_vec(y);
+
193  VectorView<const T_loc> mu_vec(mu);
+
194  VectorView<const T_scale> sigma_vec(sigma);
+
195  size_t N = max_size(y, mu, sigma);
+
196 
+
197  const double sqrt_pi = std::sqrt(stan::math::pi());
+
198 
+
199  for (size_t i = 0; i < stan::length(y); i++) {
+
200  if (value_of(y_vec[i]) == 0.0)
+
201  return operands_and_partials.to_var(0.0);
+
202  }
+
203 
+
204  for (size_t n = 0; n < N; n++) {
+
205  const double y_dbl = value_of(y_vec[n]);
+
206  const double mu_dbl = value_of(mu_vec[n]);
+
207  const double sigma_dbl = value_of(sigma_vec[n]);
+
208  const double scaled_diff = (log(y_dbl) - mu_dbl) / (sigma_dbl * SQRT_2);
+
209  const double rep_deriv = SQRT_2 * 0.5 / sqrt_pi
+
210  * exp(-scaled_diff * scaled_diff) / sigma_dbl;
+
211 
+
212  //cdf
+
213  const double cdf_ = 0.5 * erfc(-scaled_diff);
+
214  cdf *= cdf_;
+
215 
+
216  //gradients
+ +
218  operands_and_partials.d_x1[n] += rep_deriv / cdf_ / y_dbl ;
+ +
220  operands_and_partials.d_x2[n] -= rep_deriv / cdf_ ;
+ +
222  operands_and_partials.d_x3[n] -= rep_deriv * scaled_diff * SQRT_2
+
223  / cdf_;
+
224  }
+
225 
+ +
227  for (size_t n = 0; n < stan::length(y); ++n)
+
228  operands_and_partials.d_x1[n] *= cdf;
+ +
230  for (size_t n = 0; n < stan::length(mu); ++n)
+
231  operands_and_partials.d_x2[n] *= cdf;
+ +
233  for (size_t n = 0; n < stan::length(sigma); ++n)
+
234  operands_and_partials.d_x3[n] *= cdf;
+
235 
+
236  return operands_and_partials.to_var(cdf);
+
237  }
+
238 
+
239  template <typename T_y, typename T_loc, typename T_scale>
+ +
241  lognormal_cdf_log(const T_y& y, const T_loc& mu, const T_scale& sigma) {
+
242  static const char* function = "stan::prob::lognormal_cdf_log(%1%)";
+
243 
+
244  double cdf_log = 0.0;
+
245 
+ + + + +
250  using boost::math::tools::promote_args;
+
251  using stan::math::value_of;
+
252 
+
253  // check if any vectors are zero length
+
254  if (!(stan::length(y)
+
255  && stan::length(mu)
+
256  && stan::length(sigma)))
+
257  return cdf_log;
+
258 
+
259  if (!check_not_nan(function, y, "Random variable", &cdf_log))
+
260  return cdf_log;
+
261  if (!check_nonnegative(function, y, "Random variable", &cdf_log))
+
262  return cdf_log;
+
263  if (!check_finite(function, mu, "Location parameter", &cdf_log))
+
264  return cdf_log;
+
265  if (!check_finite(function, sigma, "Scale parameter", &cdf_log))
+
266  return cdf_log;
+
267  if (!check_positive(function, sigma, "Scale parameter", &cdf_log))
+
268  return cdf_log;
+
269 
+ +
271  operands_and_partials(y, mu, sigma);
+
272 
+
273  VectorView<const T_y> y_vec(y);
+
274  VectorView<const T_loc> mu_vec(mu);
+
275  VectorView<const T_scale> sigma_vec(sigma);
+
276  size_t N = max_size(y, mu, sigma);
+
277 
+
278  const double sqrt_pi = std::sqrt(stan::math::pi());
+
279 
+
280  for (size_t i = 0; i < stan::length(y); i++) {
+
281  if (value_of(y_vec[i]) == 0.0)
+
282  return operands_and_partials.to_var(stan::math::negative_infinity());
+
283  }
+
284 
+
285  const double log_half = std::log(0.5);
+
286 
+
287  for (size_t n = 0; n < N; n++) {
+
288  const double y_dbl = value_of(y_vec[n]);
+
289  const double mu_dbl = value_of(mu_vec[n]);
+
290  const double sigma_dbl = value_of(sigma_vec[n]);
+
291  const double scaled_diff = (log(y_dbl) - mu_dbl) / (sigma_dbl * SQRT_2);
+
292  const double rep_deriv = SQRT_2 / sqrt_pi
+
293  * exp(-scaled_diff * scaled_diff) / sigma_dbl;
+
294 
+
295  //cdf_log
+
296  const double erfc_calc = erfc(-scaled_diff);
+
297  cdf_log += log_half + log(erfc_calc);
+
298 
+
299  //gradients
+ +
301  operands_and_partials.d_x1[n] += rep_deriv / erfc_calc / y_dbl ;
+ +
303  operands_and_partials.d_x2[n] -= rep_deriv / erfc_calc;
+ +
305  operands_and_partials.d_x3[n] -= rep_deriv * scaled_diff * SQRT_2
+
306  / erfc_calc;
+
307  }
+
308 
+
309  return operands_and_partials.to_var(cdf_log);
+
310  }
+
311 
+
312  template <typename T_y, typename T_loc, typename T_scale>
+ +
314  lognormal_ccdf_log(const T_y& y, const T_loc& mu, const T_scale& sigma) {
+
315  static const char* function = "stan::prob::lognormal_ccdf_log(%1%)";
+
316 
+
317  double ccdf_log = 0.0;
+
318 
+ + + + +
323  using boost::math::tools::promote_args;
+
324  using stan::math::value_of;
+
325 
+
326  // check if any vectors are zero length
+
327  if (!(stan::length(y)
+
328  && stan::length(mu)
+
329  && stan::length(sigma)))
+
330  return ccdf_log;
+
331 
+
332  if (!check_not_nan(function, y, "Random variable", &ccdf_log))
+
333  return ccdf_log;
+
334  if (!check_nonnegative(function, y, "Random variable", &ccdf_log))
+
335  return ccdf_log;
+
336  if (!check_finite(function, mu, "Location parameter", &ccdf_log))
+
337  return ccdf_log;
+
338  if (!check_finite(function, sigma, "Scale parameter", &ccdf_log))
+
339  return ccdf_log;
+
340  if (!check_positive(function, sigma, "Scale parameter", &ccdf_log))
+
341  return ccdf_log;
+
342 
+ +
344  operands_and_partials(y, mu, sigma);
+
345 
+
346  VectorView<const T_y> y_vec(y);
+
347  VectorView<const T_loc> mu_vec(mu);
+
348  VectorView<const T_scale> sigma_vec(sigma);
+
349  size_t N = max_size(y, mu, sigma);
+
350 
+
351  const double sqrt_pi = std::sqrt(stan::math::pi());
+
352 
+
353  for (size_t i = 0; i < stan::length(y); i++) {
+
354  if (value_of(y_vec[i]) == 0.0)
+
355  return operands_and_partials.to_var(0.0);
+
356  }
+
357 
+
358  const double log_half = std::log(0.5);
+
359 
+
360  for (size_t n = 0; n < N; n++) {
+
361  const double y_dbl = value_of(y_vec[n]);
+
362  const double mu_dbl = value_of(mu_vec[n]);
+
363  const double sigma_dbl = value_of(sigma_vec[n]);
+
364  const double scaled_diff = (log(y_dbl) - mu_dbl) / (sigma_dbl * SQRT_2);
+
365  const double rep_deriv = SQRT_2 / sqrt_pi
+
366  * exp(-scaled_diff * scaled_diff) / sigma_dbl;
+
367 
+
368  //ccdf_log
+
369  const double erfc_calc = erfc(scaled_diff);
+
370  ccdf_log += log_half + log(erfc_calc);
+
371 
+
372  //gradients
+ +
374  operands_and_partials.d_x1[n] -= rep_deriv / erfc_calc / y_dbl ;
+ +
376  operands_and_partials.d_x2[n] += rep_deriv / erfc_calc;
+ +
378  operands_and_partials.d_x3[n] += rep_deriv * scaled_diff * SQRT_2
+
379  / erfc_calc;
+
380  }
+
381 
+
382  return operands_and_partials.to_var(ccdf_log);
+
383  }
+
384 
+
385 
+
386  template <class RNG>
+
387  inline double
+
388  lognormal_rng(const double mu,
+
389  const double sigma,
+
390  RNG& rng) {
+
391  using boost::variate_generator;
+
392  using boost::random::lognormal_distribution;
+
393 
+
394  static const char* function = "stan::prob::lognormal_rng(%1%)";
+
395 
+ + +
398 
+
399  if (!check_finite(function, mu, "Location parameter"))
+
400  return 0;
+
401  if (!check_finite(function, sigma, "Scale parameter"))
+
402  return 0;
+
403  if (!check_positive(function, sigma, "Scale parameter"))
+
404  return 0;
+
405 
+
406  variate_generator<RNG&, lognormal_distribution<> >
+
407  lognorm_rng(rng, lognormal_distribution<>(mu, sigma));
+
408  return lognorm_rng();
+
409  }
+
410  }
+
411 }
+
412 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/mainpage_8dox.html b/doc/api/html/mainpage_8dox.html new file mode 100644 index 00000000000..91d22b02030 --- /dev/null +++ b/doc/api/html/mainpage_8dox.html @@ -0,0 +1,103 @@ + + + + + +Stan: src/doxygen/mainpage.dox File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ +
+
+
+
src/doxygen/mainpage.dox File Reference
+
+
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/math_2constants_8hpp.html b/doc/api/html/math_2constants_8hpp.html new file mode 100644 index 00000000000..04a3e9ed467 --- /dev/null +++ b/doc/api/html/math_2constants_8hpp.html @@ -0,0 +1,192 @@ + + + + + +Stan: src/stan/math/constants.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
constants.hpp File Reference
+
+
+
#include <boost/math/constants/constants.hpp>
+
+

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::math
 Matrices and templated mathematical functions.
 
+ + + + + + + + + + + + + + + + + + + + + + + + + +

+Functions

double stan::math::pi ()
 Return the value of pi.
 
double stan::math::e ()
 Return the base of the natural logarithm.
 
double stan::math::sqrt2 ()
 Return the square root of two.
 
double stan::math::log10 ()
 Return natural logarithm of ten.
 
double stan::math::positive_infinity ()
 Return positive infinity.
 
double stan::math::negative_infinity ()
 Return negative infinity.
 
double stan::math::not_a_number ()
 Return (quiet) not-a-number.
 
double stan::math::machine_precision ()
 Returns the difference between 1.0 and the next value representable.
 
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Variables

const double stan::math::E = boost::math::constants::e<double>()
 The base of the natural logarithm, $ e $.
 
const double stan::math::SQRT_2 = std::sqrt(2.0)
 The value of the square root of 2, $ \sqrt{2} $.
 
const double stan::math::INV_SQRT_2 = 1.0 / SQRT_2
 The value of 1 over the square root of 2, $ 1 / \sqrt{2} $.
 
const double stan::math::LOG_2 = std::log(2.0)
 The natural logarithm of 2, $ \log 2 $.
 
const double stan::math::LOG_10 = std::log(10.0)
 The natural logarithm of 10, $ \log 10 $.
 
const double stan::math::INFTY = std::numeric_limits<double>::infinity()
 Positive infinity.
 
const double stan::math::NEGATIVE_INFTY = - std::numeric_limits<double>::infinity()
 Negative infinity.
 
const double stan::math::NOT_A_NUMBER = std::numeric_limits<double>::quiet_NaN()
 (Quiet) not-a-number value.
 
const double stan::math::EPSILON = std::numeric_limits<double>::epsilon()
 Smallest positive value.
 
const double stan::math::NEGATIVE_EPSILON = - std::numeric_limits<double>::epsilon()
 Largest negative value (i.e., smallest absolute value).
 
const double stan::math::LOG_PI_OVER_FOUR = std::log(boost::math::constants::pi<double>()) / 4.0
 
const double stan::math::TWO_OVER_SQRT_PI = 2.0 / std::sqrt(boost::math::constants::pi<double>())
 
const double stan::math::NEG_TWO_OVER_SQRT_PI = -TWO_OVER_SQRT_PI
 
const double stan::math::INV_SQRT_TWO_PI = 1.0 / std::sqrt(2.0 * boost::math::constants::pi<double>())
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/math_2constants_8hpp_source.html b/doc/api/html/math_2constants_8hpp_source.html new file mode 100644 index 00000000000..4d0e7e6a37e --- /dev/null +++ b/doc/api/html/math_2constants_8hpp_source.html @@ -0,0 +1,186 @@ + + + + + +Stan: src/stan/math/constants.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
constants.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MATH__CONSTANTS_HPP__
+
2 #define __STAN__MATH__CONSTANTS_HPP__
+
3 
+
4 #include <boost/math/constants/constants.hpp>
+
5 
+
6 namespace stan {
+
7 
+
8  namespace math {
+
9 
+
14  const double E = boost::math::constants::e<double>();
+
15 
+
20  const double SQRT_2 = std::sqrt(2.0);
+
21 
+
26  const double INV_SQRT_2 = 1.0 / SQRT_2;
+
27 
+
32  const double LOG_2 = std::log(2.0);
+
33 
+
38  const double LOG_10 = std::log(10.0);
+
39 
+
43  const double INFTY = std::numeric_limits<double>::infinity();
+
44 
+
48  const double NEGATIVE_INFTY = - std::numeric_limits<double>::infinity();
+
49 
+
53  const double NOT_A_NUMBER = std::numeric_limits<double>::quiet_NaN();
+
54 
+
58  const double EPSILON = std::numeric_limits<double>::epsilon();
+
59 
+
63  const double NEGATIVE_EPSILON = - std::numeric_limits<double>::epsilon();
+
64 
+
65 
+
66  /*
+
67  * Log pi divided by 4
+
68  * \f$ \log \pi / 4 \f$
+
69  */
+
70  const double LOG_PI_OVER_FOUR = std::log(boost::math::constants::pi<double>()) / 4.0;
+
71 
+
77  inline double pi() {
+
78  return boost::math::constants::pi<double>();
+
79  }
+
80 
+
86  inline double e() {
+
87  return E;
+
88  }
+
89 
+
95  inline double sqrt2() {
+
96  return SQRT_2;
+
97  }
+
98 
+
99 
+
105  inline double log10() {
+
106  return LOG_10;
+
107  }
+
108 
+
114  inline double positive_infinity() {
+
115  return INFTY;
+
116  }
+
117 
+
123  inline double negative_infinity() {
+
124  return NEGATIVE_INFTY;
+
125  }
+
126 
+
132  inline double not_a_number() {
+
133  return NOT_A_NUMBER;
+
134  }
+
135 
+
142  inline double machine_precision() {
+
143  return EPSILON;
+
144  }
+
145 
+
146  const double TWO_OVER_SQRT_PI = 2.0 / std::sqrt(boost::math::constants::pi<double>());
+
147 
+ +
149 
+
150  const double INV_SQRT_TWO_PI = 1.0 / std::sqrt(2.0 * boost::math::constants::pi<double>());
+
151 
+
152  }
+
153 }
+
154 
+
155 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/math_2error__handling_2matrix_2check__pos__definite_8hpp.html b/doc/api/html/math_2error__handling_2matrix_2check__pos__definite_8hpp.html new file mode 100644 index 00000000000..fdd7126acbd --- /dev/null +++ b/doc/api/html/math_2error__handling_2matrix_2check__pos__definite_8hpp.html @@ -0,0 +1,136 @@ + + + + + +Stan: src/stan/math/error_handling/matrix/check_pos_definite.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
check_pos_definite.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::math
 Matrices and templated mathematical functions.
 
+ + + + + + + + +

+Functions

template<typename T_y , typename T_result >
bool stan::math::check_pos_definite (const char *function, const Eigen::Matrix< T_y, Eigen::Dynamic, Eigen::Dynamic > &y, const char *name, T_result *result)
 Return true if the specified matrix is positive definite.
 
template<typename T >
bool stan::math::check_pos_definite (const char *function, const Eigen::Matrix< T, Eigen::Dynamic, Eigen::Dynamic > &y, const char *name, T *result=0)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/math_2error__handling_2matrix_2check__pos__definite_8hpp_source.html b/doc/api/html/math_2error__handling_2matrix_2check__pos__definite_8hpp_source.html new file mode 100644 index 00000000000..852e774e393 --- /dev/null +++ b/doc/api/html/math_2error__handling_2matrix_2check__pos__definite_8hpp_source.html @@ -0,0 +1,159 @@ + + + + + +Stan: src/stan/math/error_handling/matrix/check_pos_definite.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
check_pos_definite.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MATH__ERROR_HANDLING__MATRIX__CHECK_POS_DEFINITE_HPP__
+
2 #define __STAN__MATH__ERROR_HANDLING__MATRIX__CHECK_POS_DEFINITE_HPP__
+
3 
+
4 #include <sstream>
+ + + +
8 
+
9 namespace stan {
+
10  namespace math {
+
11 
+
24  // FIXME: update warnings (message has (0,0) item)
+
25  template <typename T_y, typename T_result>
+
26  inline bool check_pos_definite(const char* function,
+
27  const Eigen::Matrix<T_y,Eigen::Dynamic,Eigen::Dynamic>& y,
+
28  const char* name,
+
29  T_result* result) {
+
30  typedef
+ +
32  size_type;
+
33  if (y.rows() == 1 && y(0,0) <= CONSTRAINT_TOLERANCE) {
+
34  std::ostringstream message;
+
35  message << name << " is not positive definite. "
+
36  << name << "(0,0) is %1%.";
+
37  std::string msg(message.str());
+
38  return dom_err(function,y(0,0),name,msg.c_str(),"",result);
+
39  }
+
40  Eigen::LDLT< Eigen::Matrix<T_y,Eigen::Dynamic,Eigen::Dynamic> > cholesky
+
41  = y.ldlt();
+
42  if(cholesky.info() != Eigen::Success ||
+
43  cholesky.isNegative() ||
+
44  (cholesky.vectorD().array() <= CONSTRAINT_TOLERANCE).any()) {
+
45  std::ostringstream message;
+
46  message << name << " is not positive definite. "
+
47  << name << "(0,0) is %1%.";
+
48  std::string msg(message.str());
+
49  return dom_err(function,y(0,0),name,msg.c_str(),"",result);
+
50  }
+
51  return true;
+
52  }
+
53 
+
54  template <typename T>
+
55  inline bool check_pos_definite(const char* function,
+
56  const Eigen::Matrix<T,Eigen::Dynamic,Eigen::Dynamic>& y,
+
57  const char* name,
+
58  T* result = 0) {
+
59  return check_pos_definite<T,T>(function,y,name,result);
+
60  }
+
61 
+
62  }
+
63 }
+
64 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/math_2error__handling_8hpp.html b/doc/api/html/math_2error__handling_8hpp.html new file mode 100644 index 00000000000..29d6cf0c620 --- /dev/null +++ b/doc/api/html/math_2error__handling_8hpp.html @@ -0,0 +1,130 @@ + + + + + +Stan: src/stan/math/error_handling.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
error_handling.hpp File Reference
+
+ +
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/math_2error__handling_8hpp_source.html b/doc/api/html/math_2error__handling_8hpp_source.html new file mode 100644 index 00000000000..f80d4239f7b --- /dev/null +++ b/doc/api/html/math_2error__handling_8hpp_source.html @@ -0,0 +1,136 @@ + + + + + +Stan: src/stan/math/error_handling.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
error_handling.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MATH__ERROR_HANDLING_HPP__
+
2 #define __STAN__MATH__ERROR_HANDLING_HPP__
+
3 
+
4 #include <algorithm>
+
5 #include <cstddef>
+
6 #include <limits>
+
7 #include <utility>
+
8 #include <iostream>
+
9 
+
10 #include <boost/type_traits/is_unsigned.hpp>
+
11 
+
12 #include <stan/meta/traits.hpp>
+ + + + + + + + + + + + + + +
27 
+
28 #endif
+
29 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/math_2functions_2_phi_8hpp.html b/doc/api/html/math_2functions_2_phi_8hpp.html new file mode 100644 index 00000000000..451a2eace96 --- /dev/null +++ b/doc/api/html/math_2functions_2_phi_8hpp.html @@ -0,0 +1,133 @@ + + + + + +Stan: src/stan/math/functions/Phi.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
Phi.hpp File Reference
+
+
+
#include <boost/math/tools/promotion.hpp>
+#include <boost/math/special_functions/erf.hpp>
+#include <stan/math/constants.hpp>
+
+

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::math
 Matrices and templated mathematical functions.
 
+ + + + + +

+Functions

template<typename T >
boost::math::tools::promote_args
+< T >::type 
stan::math::Phi (const T x)
 The unit normal cumulative distribution function.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/math_2functions_2_phi_8hpp_source.html b/doc/api/html/math_2functions_2_phi_8hpp_source.html new file mode 100644 index 00000000000..1ab195dfefe --- /dev/null +++ b/doc/api/html/math_2functions_2_phi_8hpp_source.html @@ -0,0 +1,136 @@ + + + + + +Stan: src/stan/math/functions/Phi.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
Phi.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MATH__FUNCTIONS__PHI_HPP__
+
2 #define __STAN__MATH__FUNCTIONS__PHI_HPP__
+
3 
+
4 #include <boost/math/tools/promotion.hpp>
+
5 #include <boost/math/special_functions/erf.hpp>
+ +
7 
+
8 namespace stan {
+
9  namespace math {
+
10 
+
28  template <typename T>
+
29  inline typename boost::math::tools::promote_args<T>::type
+
30  Phi(const T x) {
+
31  // overridden in fvar and var, so can hard-code boost versions
+
32  // here for scalars only
+
33  if (x < -37.5)
+
34  return 0;
+
35  else if (x < -5.0)
+
36  return 0.5 * boost::math::erfc(-INV_SQRT_2 * x);
+
37  else if (x > 8.25)
+
38  return 1;
+
39  else
+
40  return 0.5 * (1.0 + boost::math::erf(INV_SQRT_2 * x));
+
41  }
+
42 
+
43  }
+
44 }
+
45 
+
46 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/math_2functions_2_phi__approx_8hpp.html b/doc/api/html/math_2functions_2_phi__approx_8hpp.html new file mode 100644 index 00000000000..77e095745bc --- /dev/null +++ b/doc/api/html/math_2functions_2_phi__approx_8hpp.html @@ -0,0 +1,132 @@ + + + + + +Stan: src/stan/math/functions/Phi_approx.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
Phi_approx.hpp File Reference
+
+
+
#include <boost/math/tools/promotion.hpp>
+#include <stan/math/functions/inv_logit.hpp>
+
+

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::math
 Matrices and templated mathematical functions.
 
+ + + + + +

+Functions

template<typename T >
boost::math::tools::promote_args
+< T >::type 
stan::math::Phi_approx (T x)
 Approximation of the unit normal CDF.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/math_2functions_2_phi__approx_8hpp_source.html b/doc/api/html/math_2functions_2_phi__approx_8hpp_source.html new file mode 100644 index 00000000000..bc1c5361923 --- /dev/null +++ b/doc/api/html/math_2functions_2_phi__approx_8hpp_source.html @@ -0,0 +1,126 @@ + + + + + +Stan: src/stan/math/functions/Phi_approx.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
Phi_approx.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MATH__FUNCTIONS__PHI_APPROX_HPP__
+
2 #define __STAN__MATH__FUNCTIONS__PHI_APPROX_HPP__
+
3 
+
4 #include <boost/math/tools/promotion.hpp>
+ +
6 
+
7 namespace stan {
+
8  namespace math {
+
9 
+
21  template <typename T>
+
22  inline typename boost::math::tools::promote_args<T>::type
+
23  Phi_approx(T x) {
+
24  return inv_logit(0.07056 * std::pow(x,3.0) + 1.5976 * x);
+
25  }
+
26 
+
27  }
+
28 }
+
29 
+
30 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/math_2functions_2abs_8hpp.html b/doc/api/html/math_2functions_2abs_8hpp.html new file mode 100644 index 00000000000..c33541f9339 --- /dev/null +++ b/doc/api/html/math_2functions_2abs_8hpp.html @@ -0,0 +1,129 @@ + + + + + +Stan: src/stan/math/functions/abs.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
abs.hpp File Reference
+
+
+
#include <cmath>
+
+

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::math
 Matrices and templated mathematical functions.
 
+ + + + +

+Functions

double stan::math::abs (double x)
 Return floating-point absolute value.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/math_2functions_2abs_8hpp_source.html b/doc/api/html/math_2functions_2abs_8hpp_source.html new file mode 100644 index 00000000000..fef3a44b211 --- /dev/null +++ b/doc/api/html/math_2functions_2abs_8hpp_source.html @@ -0,0 +1,124 @@ + + + + + +Stan: src/stan/math/functions/abs.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
abs.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MATH__FUNCTIONS__ABS_HPP__
+
2 #define __STAN__MATH__FUNCTIONS__ABS_HPP__
+
3 
+
4 #include <cmath>
+
5 
+
6 namespace stan {
+
7 
+
8  namespace math {
+
9 
+
19  double abs(double x) {
+
20  return std::fabs(x);
+
21  }
+
22 
+
23  }
+
24 }
+
25 
+
26 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/math_2functions_2as__bool_8hpp.html b/doc/api/html/math_2functions_2as__bool_8hpp.html new file mode 100644 index 00000000000..9fd8d3a4d65 --- /dev/null +++ b/doc/api/html/math_2functions_2as__bool_8hpp.html @@ -0,0 +1,133 @@ + + + + + +Stan: src/stan/math/functions/as_bool.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
as_bool.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::math
 Matrices and templated mathematical functions.
 
+ + + + + + + + + +

+Functions

template<typename T >
int stan::math::as_bool (const T x)
 Return 1 if the argument is unequal to zero and 0 otherwise.
 
template<>
int stan::math::as_bool< int > (const int x)
 Return an integer with an equivalent boolean value to specified input.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/math_2functions_2as__bool_8hpp_source.html b/doc/api/html/math_2functions_2as__bool_8hpp_source.html new file mode 100644 index 00000000000..f6a6cdbf614 --- /dev/null +++ b/doc/api/html/math_2functions_2as__bool_8hpp_source.html @@ -0,0 +1,128 @@ + + + + + +Stan: src/stan/math/functions/as_bool.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
as_bool.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MATH__FUNCTIONS__AS_BOOL_HPP__
+
2 #define __STAN__MATH__FUNCTIONS__AS_BOOL_HPP__
+
3 
+
4 namespace stan {
+
5  namespace math {
+
6 
+
13  template <typename T>
+
14  inline int as_bool(const T x) {
+
15  return x != 0.0;
+
16  }
+
17 
+
25  template <>
+
26  inline int as_bool<int>(const int x) {
+
27  return x;
+
28  }
+
29 
+
30 
+
31  }
+
32 }
+
33 
+
34 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/math_2functions_2bessel__first__kind_8hpp.html b/doc/api/html/math_2functions_2bessel__first__kind_8hpp.html new file mode 100644 index 00000000000..00acf5ffa68 --- /dev/null +++ b/doc/api/html/math_2functions_2bessel__first__kind_8hpp.html @@ -0,0 +1,129 @@ + + + + + +Stan: src/stan/math/functions/bessel_first_kind.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
bessel_first_kind.hpp File Reference
+
+
+
#include <boost/math/special_functions/bessel.hpp>
+
+

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::math
 Matrices and templated mathematical functions.
 
+ + + + +

+Functions

template<typename T2 >
T2 stan::math::bessel_first_kind (const int v, const T2 z)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/math_2functions_2bessel__first__kind_8hpp_source.html b/doc/api/html/math_2functions_2bessel__first__kind_8hpp_source.html new file mode 100644 index 00000000000..8bd92cae4ad --- /dev/null +++ b/doc/api/html/math_2functions_2bessel__first__kind_8hpp_source.html @@ -0,0 +1,125 @@ + + + + + +Stan: src/stan/math/functions/bessel_first_kind.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
bessel_first_kind.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MATH__FUNCTIONS__BESSEL_FIRST_KIND_HPP__
+
2 #define __STAN__MATH__FUNCTIONS__BESSEL_FIRST_KIND_HPP__
+
3 
+
4 #include <boost/math/special_functions/bessel.hpp>
+
5 
+
6 namespace stan {
+
7  namespace math {
+
8 
+
9  template<typename T2>
+
10  inline T2
+
11  bessel_first_kind(const int v, const T2 z) {
+
12  return boost::math::cyl_bessel_j(v,z);
+
13  }
+
14 
+
15  }
+
16 }
+
17 
+
18 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/math_2functions_2bessel__second__kind_8hpp.html b/doc/api/html/math_2functions_2bessel__second__kind_8hpp.html new file mode 100644 index 00000000000..15684512dc7 --- /dev/null +++ b/doc/api/html/math_2functions_2bessel__second__kind_8hpp.html @@ -0,0 +1,129 @@ + + + + + +Stan: src/stan/math/functions/bessel_second_kind.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
bessel_second_kind.hpp File Reference
+
+
+
#include <boost/math/special_functions/bessel.hpp>
+
+

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::math
 Matrices and templated mathematical functions.
 
+ + + + +

+Functions

template<typename T2 >
T2 stan::math::bessel_second_kind (const int v, const T2 z)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/math_2functions_2bessel__second__kind_8hpp_source.html b/doc/api/html/math_2functions_2bessel__second__kind_8hpp_source.html new file mode 100644 index 00000000000..9cd0c6098e2 --- /dev/null +++ b/doc/api/html/math_2functions_2bessel__second__kind_8hpp_source.html @@ -0,0 +1,125 @@ + + + + + +Stan: src/stan/math/functions/bessel_second_kind.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
bessel_second_kind.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MATH__FUNCTIONS__BESSEL_SECOND_KIND_HPP__
+
2 #define __STAN__MATH__FUNCTIONS__BESSEL_SECOND_KIND_HPP__
+
3 
+
4 #include <boost/math/special_functions/bessel.hpp>
+
5 
+
6 namespace stan {
+
7  namespace math {
+
8 
+
9  template <typename T2>
+
10  inline T2
+
11  bessel_second_kind(const int v, const T2 z) {
+
12  return boost::math::cyl_neumann(v,z);
+
13  }
+
14 
+
15  }
+
16 }
+
17 
+
18 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/math_2functions_2binary__log__loss_8hpp.html b/doc/api/html/math_2functions_2binary__log__loss_8hpp.html new file mode 100644 index 00000000000..fb6e8739211 --- /dev/null +++ b/doc/api/html/math_2functions_2binary__log__loss_8hpp.html @@ -0,0 +1,131 @@ + + + + + +Stan: src/stan/math/functions/binary_log_loss.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
binary_log_loss.hpp File Reference
+
+
+
#include <boost/math/tools/promotion.hpp>
+
+

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::math
 Matrices and templated mathematical functions.
 
+ + + + + +

+Functions

template<typename T >
boost::math::tools::promote_args
+< T >::type 
stan::math::binary_log_loss (const int y, const T y_hat)
 Returns the log loss function for binary classification with specified reference and response values.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/math_2functions_2binary__log__loss_8hpp_source.html b/doc/api/html/math_2functions_2binary__log__loss_8hpp_source.html new file mode 100644 index 00000000000..586509d9669 --- /dev/null +++ b/doc/api/html/math_2functions_2binary__log__loss_8hpp_source.html @@ -0,0 +1,126 @@ + + + + + +Stan: src/stan/math/functions/binary_log_loss.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
binary_log_loss.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MATH__FUNCTIONS__BINARY_LOG_LOSS_HPP__
+
2 #define __STAN__MATH__FUNCTIONS__BINARY_LOG_LOSS_HPP__
+
3 
+
4 #include <boost/math/tools/promotion.hpp>
+
5 
+
6 namespace stan {
+
7  namespace math {
+
8 
+
24  template <typename T>
+
25  inline typename boost::math::tools::promote_args<T>::type
+
26  binary_log_loss(const int y, const T y_hat) {
+
27  using std::log;
+
28  return -log(y ? y_hat : (1.0 - y_hat));
+
29  }
+
30 
+
31  }
+
32 }
+
33 
+
34 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/math_2functions_2binomial__coefficient__log_8hpp.html b/doc/api/html/math_2functions_2binomial__coefficient__log_8hpp.html new file mode 100644 index 00000000000..747a2d271e0 --- /dev/null +++ b/doc/api/html/math_2functions_2binomial__coefficient__log_8hpp.html @@ -0,0 +1,132 @@ + + + + + +Stan: src/stan/math/functions/binomial_coefficient_log.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
binomial_coefficient_log.hpp File Reference
+
+
+
#include <boost/math/special_functions/gamma.hpp>
+#include <boost/math/tools/promotion.hpp>
+
+

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::math
 Matrices and templated mathematical functions.
 
+ + + + + +

+Functions

template<typename T_N , typename T_n >
boost::math::tools::promote_args
+< T_N, T_n >::type 
stan::math::binomial_coefficient_log (const T_N N, const T_n n)
 Return the log of the binomial coefficient for the specified arguments.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/math_2functions_2binomial__coefficient__log_8hpp_source.html b/doc/api/html/math_2functions_2binomial__coefficient__log_8hpp_source.html new file mode 100644 index 00000000000..c5f2a7c5d3c --- /dev/null +++ b/doc/api/html/math_2functions_2binomial__coefficient__log_8hpp_source.html @@ -0,0 +1,136 @@ + + + + + +Stan: src/stan/math/functions/binomial_coefficient_log.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
binomial_coefficient_log.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MATH__FUNCTIONS__BINOMIAL_COEFFICIENT_LOG_HPP__
+
2 #define __STAN__MATH__FUNCTIONS__BINOMIAL_COEFFICIENT_LOG_HPP__
+
3 
+
4 #include <boost/math/special_functions/gamma.hpp>
+
5 #include <boost/math/tools/promotion.hpp>
+
6 
+
7 namespace stan {
+
8 
+
9  namespace math {
+
10 
+
29  template <typename T_N, typename T_n>
+
30  inline typename boost::math::tools::promote_args<T_N, T_n>::type
+
31  binomial_coefficient_log(const T_N N, const T_n n) {
+
32  using std::log;
+
33  using boost::math::lgamma;
+
34 
+
35  const double cutoff = 1000;
+
36  if ((N < cutoff) || (N - n < cutoff)) {
+
37  return lgamma(N + 1.0) - lgamma(n + 1.0) - lgamma(N - n + 1.0);
+
38  } else {
+
39  return n * log(N - n) + (N + 0.5) * log(N/(N-n))
+
40  + 1/(12*N) - n - 1/(12*(N-n)) - lgamma(n + 1.0);
+
41  }
+
42  }
+
43 
+
44  }
+
45 }
+
46 
+
47 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/math_2functions_2digamma_8hpp.html b/doc/api/html/math_2functions_2digamma_8hpp.html new file mode 100644 index 00000000000..bdd03e8ea2f --- /dev/null +++ b/doc/api/html/math_2functions_2digamma_8hpp.html @@ -0,0 +1,128 @@ + + + + + +Stan: src/stan/math/functions/digamma.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
digamma.hpp File Reference
+
+
+
#include <boost/math/special_functions/digamma.hpp>
+
+

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::math
 Matrices and templated mathematical functions.
 
+ + + +

+Functions

double stan::math::digamma (double x)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/math_2functions_2digamma_8hpp_source.html b/doc/api/html/math_2functions_2digamma_8hpp_source.html new file mode 100644 index 00000000000..276c02fb7fa --- /dev/null +++ b/doc/api/html/math_2functions_2digamma_8hpp_source.html @@ -0,0 +1,124 @@ + + + + + +Stan: src/stan/math/functions/digamma.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
digamma.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MATH__FUNCTIONS__DIGAMMA_HPP__
+
2 #define __STAN__MATH__FUNCTIONS__DIGAMMA_HPP__
+
3 
+
4 #include <boost/math/special_functions/digamma.hpp>
+
5 
+
6 namespace stan {
+
7 
+
8  namespace math {
+
9 
+
10  double digamma(double x) {
+
11  return boost::math::digamma(x);
+
12  }
+
13 
+
14  }
+
15 }
+
16 
+
17 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/math_2functions_2dot__self_8hpp.html b/doc/api/html/math_2functions_2dot__self_8hpp.html new file mode 100644 index 00000000000..b6d9f3690c8 --- /dev/null +++ b/doc/api/html/math_2functions_2dot__self_8hpp.html @@ -0,0 +1,129 @@ + + + + + +Stan: src/stan/math/functions/dot_self.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
dot_self.hpp File Reference
+
+
+
#include <vector>
+#include <cstddef>
+
+

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::math
 Matrices and templated mathematical functions.
 
+ + + +

+Functions

double stan::math::dot_self (const std::vector< double > &x)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/math_2functions_2dot__self_8hpp_source.html b/doc/api/html/math_2functions_2dot__self_8hpp_source.html new file mode 100644 index 00000000000..8bce1b9d2c6 --- /dev/null +++ b/doc/api/html/math_2functions_2dot__self_8hpp_source.html @@ -0,0 +1,128 @@ + + + + + +Stan: src/stan/math/functions/dot_self.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
dot_self.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MATH__FUNCTIONS__DOT_SELF_HPP__
+
2 #define __STAN__MATH__FUNCTIONS__DOT_SELF_HPP__
+
3 
+
4 #include <vector>
+
5 #include <cstddef>
+
6 
+
7 namespace stan {
+
8  namespace math {
+
9 
+
10  // x' * x
+
11  inline double dot_self(const std::vector<double>& x) {
+
12  double sum = 0.0;
+
13  for (size_t i = 0; i < x.size(); ++i)
+
14  sum += x[i] * x[i];
+
15  return sum;
+
16  }
+
17 
+
18  }
+
19 }
+
20 
+
21 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/math_2functions_2exp2_8hpp.html b/doc/api/html/math_2functions_2exp2_8hpp.html new file mode 100644 index 00000000000..b6dccf59cb9 --- /dev/null +++ b/doc/api/html/math_2functions_2exp2_8hpp.html @@ -0,0 +1,131 @@ + + + + + +Stan: src/stan/math/functions/exp2.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
exp2.hpp File Reference
+
+
+
#include <boost/math/tools/promotion.hpp>
+
+

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::math
 Matrices and templated mathematical functions.
 
+ + + + + +

+Functions

template<typename T >
boost::math::tools::promote_args
+< T >::type 
stan::math::exp2 (const T y)
 Return the exponent base 2 of the specified argument (C99).
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/math_2functions_2exp2_8hpp_source.html b/doc/api/html/math_2functions_2exp2_8hpp_source.html new file mode 100644 index 00000000000..d2bb316ee57 --- /dev/null +++ b/doc/api/html/math_2functions_2exp2_8hpp_source.html @@ -0,0 +1,126 @@ + + + + + +Stan: src/stan/math/functions/exp2.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
exp2.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MATH__FUNCTIONS__EXP2_HPP__
+
2 #define __STAN__MATH__FUNCTIONS__EXP2_HPP__
+
3 
+
4 #include <boost/math/tools/promotion.hpp>
+
5 
+
6 namespace stan {
+
7 
+
8  namespace math {
+
9 
+
21  template <typename T>
+
22  inline typename boost::math::tools::promote_args<T>::type
+
23  exp2(const T y) {
+
24  using std::pow;
+
25  return pow(2.0,y);
+
26  }
+
27  }
+
28 }
+
29 
+
30 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/math_2functions_2falling__factorial_8hpp.html b/doc/api/html/math_2functions_2falling__factorial_8hpp.html new file mode 100644 index 00000000000..24a88a2bc6c --- /dev/null +++ b/doc/api/html/math_2functions_2falling__factorial_8hpp.html @@ -0,0 +1,130 @@ + + + + + +Stan: src/stan/math/functions/falling_factorial.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
falling_factorial.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::math
 Matrices and templated mathematical functions.
 
+ + + + +

+Functions

template<typename T1 , typename T2 >
boost::math::tools::promote_args
+< T1, T2 >::type 
stan::math::falling_factorial (const T1 x, const T2 n)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/math_2functions_2falling__factorial_8hpp_source.html b/doc/api/html/math_2functions_2falling__factorial_8hpp_source.html new file mode 100644 index 00000000000..1765d116972 --- /dev/null +++ b/doc/api/html/math_2functions_2falling__factorial_8hpp_source.html @@ -0,0 +1,125 @@ + + + + + +Stan: src/stan/math/functions/falling_factorial.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
falling_factorial.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MATH__FUNCTIONS__FALLING_FACTORIAL_HPP__
+
2 #define __STAN__MATH__FUNCTIONS__FALLING_FACTORIAL_HPP__
+
3 
+ +
5 
+
6 namespace stan {
+
7  namespace math {
+
8 
+
9  template<typename T1, typename T2>
+
10  inline typename boost::math::tools::promote_args<T1,T2>::type
+
11  falling_factorial(const T1 x, const T2 n) {
+ +
13  }
+
14 
+
15  }
+
16 }
+
17 
+
18 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/math_2functions_2fdim_8hpp.html b/doc/api/html/math_2functions_2fdim_8hpp.html new file mode 100644 index 00000000000..ae717d6e777 --- /dev/null +++ b/doc/api/html/math_2functions_2fdim_8hpp.html @@ -0,0 +1,131 @@ + + + + + +Stan: src/stan/math/functions/fdim.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
fdim.hpp File Reference
+
+
+
#include <boost/math/tools/promotion.hpp>
+
+

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::math
 Matrices and templated mathematical functions.
 
+ + + + + +

+Functions

template<typename T1 , typename T2 >
boost::math::tools::promote_args
+< T1, T2 >::type 
stan::math::fdim (T1 a, T2 b)
 The positive difference function (C99).
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/math_2functions_2fdim_8hpp_source.html b/doc/api/html/math_2functions_2fdim_8hpp_source.html new file mode 100644 index 00000000000..cc36be04817 --- /dev/null +++ b/doc/api/html/math_2functions_2fdim_8hpp_source.html @@ -0,0 +1,123 @@ + + + + + +Stan: src/stan/math/functions/fdim.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
fdim.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MATH__FUNCTIONS__FDIM_HPP__
+
2 #define __STAN__MATH__FUNCTIONS__FDIM_HPP__
+
3 
+
4 #include <boost/math/tools/promotion.hpp>
+
5 
+
6 namespace stan {
+
7  namespace math {
+
19  template <typename T1, typename T2>
+
20  inline typename boost::math::tools::promote_args<T1, T2>::type
+
21  fdim(T1 a, T2 b) {
+
22  return (a > b) ? (a - b) : 0.0;
+
23  }
+
24  }
+
25 }
+
26 
+
27 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/math_2functions_2fma_8hpp.html b/doc/api/html/math_2functions_2fma_8hpp.html new file mode 100644 index 00000000000..7ffab21cc1d --- /dev/null +++ b/doc/api/html/math_2functions_2fma_8hpp.html @@ -0,0 +1,131 @@ + + + + + +Stan: src/stan/math/functions/fma.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
fma.hpp File Reference
+
+
+
#include <boost/math/tools/promotion.hpp>
+
+

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::math
 Matrices and templated mathematical functions.
 
+ + + + + +

+Functions

template<typename T1 , typename T2 , typename T3 >
boost::math::tools::promote_args
+< T1, T2, T3 >::type 
stan::math::fma (const T1 a, const T2 b, const T3 c)
 The fused multiply-add operation (C99).
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/math_2functions_2fma_8hpp_source.html b/doc/api/html/math_2functions_2fma_8hpp_source.html new file mode 100644 index 00000000000..ef78cd12c25 --- /dev/null +++ b/doc/api/html/math_2functions_2fma_8hpp_source.html @@ -0,0 +1,124 @@ + + + + + +Stan: src/stan/math/functions/fma.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
fma.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MATH__FUNCTIONS__FMA_HPP__
+
2 #define __STAN__MATH__FUNCTIONS__FMA_HPP__
+
3 
+
4 #include <boost/math/tools/promotion.hpp>
+
5 
+
6 namespace stan {
+
7  namespace math {
+
8 
+
21  template <typename T1, typename T2, typename T3>
+
22  inline typename boost::math::tools::promote_args<T1,T2,T3>::type
+
23  fma(const T1 a, const T2 b, const T3 c) {
+
24  return (a * b) + c;
+
25  }
+
26 
+
27  }
+
28 }
+
29 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/math_2functions_2gamma__p_8hpp.html b/doc/api/html/math_2functions_2gamma__p_8hpp.html new file mode 100644 index 00000000000..8e0296c53cc --- /dev/null +++ b/doc/api/html/math_2functions_2gamma__p_8hpp.html @@ -0,0 +1,128 @@ + + + + + +Stan: src/stan/math/functions/gamma_p.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
gamma_p.hpp File Reference
+
+
+
#include <boost/math/special_functions/gamma.hpp>
+
+

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::math
 Matrices and templated mathematical functions.
 
+ + + +

+Functions

double stan::math::gamma_p (double x, double a)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/math_2functions_2gamma__p_8hpp_source.html b/doc/api/html/math_2functions_2gamma__p_8hpp_source.html new file mode 100644 index 00000000000..afef259a36b --- /dev/null +++ b/doc/api/html/math_2functions_2gamma__p_8hpp_source.html @@ -0,0 +1,125 @@ + + + + + +Stan: src/stan/math/functions/gamma_p.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
gamma_p.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MATH__FUNCTIONS__GAMMA_P_HPP__
+
2 #define __STAN__MATH__FUNCTIONS__GAMMA_P_HPP__
+
3 
+
4 #include <boost/math/special_functions/gamma.hpp>
+
5 
+
6 namespace stan {
+
7 
+
8  namespace math {
+
9 
+
10  // throws domain_error if x is at pole
+
11  double gamma_p(double x, double a) {
+
12  return boost::math::gamma_p(x,a);
+
13  }
+
14 
+
15  }
+
16 }
+
17 
+
18 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/math_2functions_2gamma__q_8hpp.html b/doc/api/html/math_2functions_2gamma__q_8hpp.html new file mode 100644 index 00000000000..822ff54c2b8 --- /dev/null +++ b/doc/api/html/math_2functions_2gamma__q_8hpp.html @@ -0,0 +1,128 @@ + + + + + +Stan: src/stan/math/functions/gamma_q.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
gamma_q.hpp File Reference
+
+
+
#include <boost/math/special_functions/gamma.hpp>
+
+

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::math
 Matrices and templated mathematical functions.
 
+ + + +

+Functions

double stan::math::gamma_q (double x, double a)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/math_2functions_2gamma__q_8hpp_source.html b/doc/api/html/math_2functions_2gamma__q_8hpp_source.html new file mode 100644 index 00000000000..961e5f23e14 --- /dev/null +++ b/doc/api/html/math_2functions_2gamma__q_8hpp_source.html @@ -0,0 +1,125 @@ + + + + + +Stan: src/stan/math/functions/gamma_q.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
gamma_q.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MATH__FUNCTIONS__GAMMA_Q_HPP__
+
2 #define __STAN__MATH__FUNCTIONS__GAMMA_Q_HPP__
+
3 
+
4 #include <boost/math/special_functions/gamma.hpp>
+
5 
+
6 namespace stan {
+
7 
+
8  namespace math {
+
9 
+
10  // throws domain_error if x is at pole
+
11  double gamma_q(double x, double a) {
+
12  return boost::math::gamma_q(x,a);
+
13  }
+
14 
+
15  }
+
16 }
+
17 
+
18 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/math_2functions_2ibeta_8hpp.html b/doc/api/html/math_2functions_2ibeta_8hpp.html new file mode 100644 index 00000000000..134ea2aead0 --- /dev/null +++ b/doc/api/html/math_2functions_2ibeta_8hpp.html @@ -0,0 +1,129 @@ + + + + + +Stan: src/stan/math/functions/ibeta.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
ibeta.hpp File Reference
+
+
+
#include <boost/math/special_functions/beta.hpp>
+
+

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::math
 Matrices and templated mathematical functions.
 
+ + + + +

+Functions

double stan::math::ibeta (const double a, const double b, const double x)
 The normalized incomplete beta function of a, b, and x.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/math_2functions_2ibeta_8hpp_source.html b/doc/api/html/math_2functions_2ibeta_8hpp_source.html new file mode 100644 index 00000000000..b89c7649fd3 --- /dev/null +++ b/doc/api/html/math_2functions_2ibeta_8hpp_source.html @@ -0,0 +1,125 @@ + + + + + +Stan: src/stan/math/functions/ibeta.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
ibeta.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MATH__FUNCTIONS__IBETA_HPP__
+
2 #define __STAN__MATH__FUNCTIONS__IBETA_HPP__
+
3 
+
4 #include <boost/math/special_functions/beta.hpp>
+
5 
+
6 namespace stan {
+
7  namespace math {
+
8 
+
21  inline double ibeta(const double a,
+
22  const double b,
+
23  const double x) {
+
24  return boost::math::ibeta(a, b, x);
+
25  }
+
26 
+
27  }
+
28 }
+
29 
+
30 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/math_2functions_2if__else_8hpp.html b/doc/api/html/math_2functions_2if__else_8hpp.html new file mode 100644 index 00000000000..016e4827c3e --- /dev/null +++ b/doc/api/html/math_2functions_2if__else_8hpp.html @@ -0,0 +1,131 @@ + + + + + +Stan: src/stan/math/functions/if_else.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
if_else.hpp File Reference
+
+
+
#include <boost/math/tools/promotion.hpp>
+
+

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::math
 Matrices and templated mathematical functions.
 
+ + + + + +

+Functions

template<typename T_true , typename T_false >
boost::math::tools::promote_args
+< T_true, T_false >::type 
stan::math::if_else (const bool c, const T_true y_true, const T_false y_false)
 Return the second argument if the first argument is true and otherwise return the second argument.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/math_2functions_2if__else_8hpp_source.html b/doc/api/html/math_2functions_2if__else_8hpp_source.html new file mode 100644 index 00000000000..c8249cc8009 --- /dev/null +++ b/doc/api/html/math_2functions_2if__else_8hpp_source.html @@ -0,0 +1,125 @@ + + + + + +Stan: src/stan/math/functions/if_else.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
if_else.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MATH__FUNCTIONS__IF_ELSE_HPP__
+
2 #define __STAN__MATH__FUNCTIONS__IF_ELSE_HPP__
+
3 
+
4 #include <boost/math/tools/promotion.hpp>
+
5 
+
6 namespace stan {
+
7  namespace math {
+
8 
+
23  template <typename T_true, typename T_false>
+
24  inline typename boost::math::tools::promote_args<T_true,T_false>::type
+
25  if_else(const bool c, const T_true y_true, const T_false y_false) {
+
26  return c ? y_true : y_false;
+
27  }
+
28 
+
29  }
+
30 }
+
31 
+
32 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/math_2functions_2inv_8hpp.html b/doc/api/html/math_2functions_2inv_8hpp.html new file mode 100644 index 00000000000..ceaf4577e0e --- /dev/null +++ b/doc/api/html/math_2functions_2inv_8hpp.html @@ -0,0 +1,130 @@ + + + + + +Stan: src/stan/math/functions/inv.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
inv.hpp File Reference
+
+
+
#include <boost/math/tools/promotion.hpp>
+
+

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::math
 Matrices and templated mathematical functions.
 
+ + + + +

+Functions

template<typename T >
boost::math::tools::promote_args
+< T >::type 
stan::math::inv (const T x)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/math_2functions_2inv_8hpp_source.html b/doc/api/html/math_2functions_2inv_8hpp_source.html new file mode 100644 index 00000000000..613020c3912 --- /dev/null +++ b/doc/api/html/math_2functions_2inv_8hpp_source.html @@ -0,0 +1,126 @@ + + + + + +Stan: src/stan/math/functions/inv.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
inv.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MATH__FUNCTIONS__INV_HPP__
+
2 #define __STAN__MATH__FUNCTIONS__INV_HPP__
+
3 
+
4 #include <boost/math/tools/promotion.hpp>
+
5 
+
6 namespace stan {
+
7  namespace math {
+
8 
+
9  template <typename T>
+
10  inline
+
11  typename boost::math::tools::promote_args<T>::type
+
12  inv(const T x) {
+
13  return 1.0 / x;
+
14  }
+
15 
+
16  }
+
17 }
+
18 
+
19 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/math_2functions_2inv__cloglog_8hpp.html b/doc/api/html/math_2functions_2inv__cloglog_8hpp.html new file mode 100644 index 00000000000..7298ed27221 --- /dev/null +++ b/doc/api/html/math_2functions_2inv__cloglog_8hpp.html @@ -0,0 +1,131 @@ + + + + + +Stan: src/stan/math/functions/inv_cloglog.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
inv_cloglog.hpp File Reference
+
+
+
#include <boost/math/tools/promotion.hpp>
+
+

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::math
 Matrices and templated mathematical functions.
 
+ + + + + +

+Functions

template<typename T >
boost::math::tools::promote_args
+< T >::type 
stan::math::inv_cloglog (T x)
 The inverse complementary log-log function.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/math_2functions_2inv__cloglog_8hpp_source.html b/doc/api/html/math_2functions_2inv__cloglog_8hpp_source.html new file mode 100644 index 00000000000..72abf8b4c10 --- /dev/null +++ b/doc/api/html/math_2functions_2inv__cloglog_8hpp_source.html @@ -0,0 +1,126 @@ + + + + + +Stan: src/stan/math/functions/inv_cloglog.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
inv_cloglog.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MATH__FUNCTIONS__INV_CLOGLOG_HPP__
+
2 #define __STAN__MATH__FUNCTIONS__INV_CLOGLOG_HPP__
+
3 
+
4 #include <boost/math/tools/promotion.hpp>
+
5 
+
6 namespace stan {
+
7  namespace math {
+
8 
+
22  template <typename T>
+
23  inline typename boost::math::tools::promote_args<T>::type
+
24  inv_cloglog(T x) {
+
25  using std::exp;
+
26  return 1 - exp(-exp(x));
+
27  }
+
28 
+
29  }
+
30 }
+
31 
+
32 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/math_2functions_2inv__logit_8hpp.html b/doc/api/html/math_2functions_2inv__logit_8hpp.html new file mode 100644 index 00000000000..6c017e15313 --- /dev/null +++ b/doc/api/html/math_2functions_2inv__logit_8hpp.html @@ -0,0 +1,131 @@ + + + + + +Stan: src/stan/math/functions/inv_logit.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
inv_logit.hpp File Reference
+
+
+
#include <boost/math/tools/promotion.hpp>
+
+

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::math
 Matrices and templated mathematical functions.
 
+ + + + + +

+Functions

template<typename T >
boost::math::tools::promote_args
+< T >::type 
stan::math::inv_logit (const T a)
 Returns the inverse logit function applied to the argument.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/math_2functions_2inv__logit_8hpp_source.html b/doc/api/html/math_2functions_2inv__logit_8hpp_source.html new file mode 100644 index 00000000000..90dabe0d569 --- /dev/null +++ b/doc/api/html/math_2functions_2inv__logit_8hpp_source.html @@ -0,0 +1,127 @@ + + + + + +Stan: src/stan/math/functions/inv_logit.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
inv_logit.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MATH__FUNCTIONS__INV_LOGIT_HPP__
+
2 #define __STAN__MATH__FUNCTIONS__INV_LOGIT_HPP__
+
3 
+
4 #include <boost/math/tools/promotion.hpp>
+
5 
+
6 namespace stan {
+
7 
+
8  namespace math {
+
9 
+
25  template <typename T>
+
26  inline typename boost::math::tools::promote_args<T>::type
+
27  inv_logit(const T a) {
+
28  using std::exp;
+
29  return 1.0 / (1.0 + exp(-a));
+
30  }
+
31 
+
32  }
+
33 }
+
34 
+
35 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/math_2functions_2inv__sqrt_8hpp.html b/doc/api/html/math_2functions_2inv__sqrt_8hpp.html new file mode 100644 index 00000000000..d61e1b3e967 --- /dev/null +++ b/doc/api/html/math_2functions_2inv__sqrt_8hpp.html @@ -0,0 +1,130 @@ + + + + + +Stan: src/stan/math/functions/inv_sqrt.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
inv_sqrt.hpp File Reference
+
+
+
#include <boost/math/tools/promotion.hpp>
+
+

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::math
 Matrices and templated mathematical functions.
 
+ + + + +

+Functions

template<typename T >
boost::math::tools::promote_args
+< T >::type 
stan::math::inv_sqrt (const T x)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/math_2functions_2inv__sqrt_8hpp_source.html b/doc/api/html/math_2functions_2inv__sqrt_8hpp_source.html new file mode 100644 index 00000000000..e39fbda709b --- /dev/null +++ b/doc/api/html/math_2functions_2inv__sqrt_8hpp_source.html @@ -0,0 +1,128 @@ + + + + + +Stan: src/stan/math/functions/inv_sqrt.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
inv_sqrt.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MATH__FUNCTIONS__INV_SQRT_HPP__
+
2 #define __STAN__MATH__FUNCTIONS__INV_SQRT_HPP__
+
3 
+
4 #include <boost/math/tools/promotion.hpp>
+
5 
+
6 namespace stan {
+
7  namespace math {
+
8 
+
9  template <typename T>
+
10  inline
+
11  typename boost::math::tools::promote_args<T>::type
+
12  inv_sqrt(const T x) {
+
13  using std::sqrt;
+
14 
+
15  return 1.0 / sqrt(x);
+
16  }
+
17 
+
18  }
+
19 }
+
20 
+
21 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/math_2functions_2inv__square_8hpp.html b/doc/api/html/math_2functions_2inv__square_8hpp.html new file mode 100644 index 00000000000..5a45aa7f6a9 --- /dev/null +++ b/doc/api/html/math_2functions_2inv__square_8hpp.html @@ -0,0 +1,130 @@ + + + + + +Stan: src/stan/math/functions/inv_square.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
inv_square.hpp File Reference
+
+
+
#include <boost/math/tools/promotion.hpp>
+
+

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::math
 Matrices and templated mathematical functions.
 
+ + + + +

+Functions

template<typename T >
boost::math::tools::promote_args
+< T >::type 
stan::math::inv_square (const T x)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/math_2functions_2inv__square_8hpp_source.html b/doc/api/html/math_2functions_2inv__square_8hpp_source.html new file mode 100644 index 00000000000..a7cd5e595f5 --- /dev/null +++ b/doc/api/html/math_2functions_2inv__square_8hpp_source.html @@ -0,0 +1,125 @@ + + + + + +Stan: src/stan/math/functions/inv_square.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
inv_square.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MATH__FUNCTIONS__INV_SQUARE_HPP__
+
2 #define __STAN__MATH__FUNCTIONS__INV_SQUARE_HPP__
+
3 
+
4 #include <boost/math/tools/promotion.hpp>
+
5 
+
6 namespace stan {
+
7  namespace math {
+
8 
+
9  template <typename T>
+
10  inline
+
11  typename boost::math::tools::promote_args<T>::type
+
12  inv_square(const T x) {
+
13  return 1.0 / (x * x);
+
14  }
+
15  }
+
16 }
+
17 
+
18 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/math_2functions_2is__uninitialized_8hpp.html b/doc/api/html/math_2functions_2is__uninitialized_8hpp.html new file mode 100644 index 00000000000..284ef49e01c --- /dev/null +++ b/doc/api/html/math_2functions_2is__uninitialized_8hpp.html @@ -0,0 +1,129 @@ + + + + + +Stan: src/stan/math/functions/is_uninitialized.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
is_uninitialized.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::math
 Matrices and templated mathematical functions.
 
+ + + + + +

+Functions

template<typename T >
bool stan::math::is_uninitialized (T x)
 Returns true if the specified variable is uninitialized.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/math_2functions_2is__uninitialized_8hpp_source.html b/doc/api/html/math_2functions_2is__uninitialized_8hpp_source.html new file mode 100644 index 00000000000..35a7cc2ed8a --- /dev/null +++ b/doc/api/html/math_2functions_2is__uninitialized_8hpp_source.html @@ -0,0 +1,122 @@ + + + + + +Stan: src/stan/math/functions/is_uninitialized.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
is_uninitialized.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MATH__FUNCTIONS__IS_UNINITIALIZED_HPP__
+
2 #define __STAN__MATH__FUNCTIONS__IS_UNINITIALIZED_HPP__
+
3 
+
4 namespace stan {
+
5 
+
6  namespace math {
+
7 
+
17  template <typename T>
+
18  inline bool is_uninitialized(T x) {
+
19  return false;
+
20  }
+
21 
+
22  }
+
23 }
+
24 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/math_2functions_2lbeta_8hpp.html b/doc/api/html/math_2functions_2lbeta_8hpp.html new file mode 100644 index 00000000000..fac6c90221d --- /dev/null +++ b/doc/api/html/math_2functions_2lbeta_8hpp.html @@ -0,0 +1,132 @@ + + + + + +Stan: src/stan/math/functions/lbeta.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
lbeta.hpp File Reference
+
+
+
#include <boost/math/tools/promotion.hpp>
+#include <boost/math/special_functions/gamma.hpp>
+
+

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::math
 Matrices and templated mathematical functions.
 
+ + + + + +

+Functions

template<typename T1 , typename T2 >
boost::math::tools::promote_args
+< T1, T2 >::type 
stan::math::lbeta (const T1 a, const T2 b)
 Return the log of the beta function applied to the specified arguments.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/math_2functions_2lbeta_8hpp_source.html b/doc/api/html/math_2functions_2lbeta_8hpp_source.html new file mode 100644 index 00000000000..bbbdee2734c --- /dev/null +++ b/doc/api/html/math_2functions_2lbeta_8hpp_source.html @@ -0,0 +1,130 @@ + + + + + +Stan: src/stan/math/functions/lbeta.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
lbeta.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MATH__FUNCTIONS__LBETA_HPP__
+
2 #define __STAN__MATH__FUNCTIONS__LBETA_HPP__
+
3 
+
4 #include <boost/math/tools/promotion.hpp>
+
5 
+
6 #include <boost/math/special_functions/gamma.hpp>
+
7 
+
8 namespace stan {
+
9  namespace math {
+
10 
+
32  template <typename T1, typename T2>
+
33  inline typename boost::math::tools::promote_args<T1,T2>::type
+
34  lbeta(const T1 a, const T2 b) {
+
35  using boost::math::lgamma;
+
36  return lgamma(a)
+
37  + lgamma(b)
+
38  - lgamma(a + b);
+
39  }
+
40 
+
41  }
+
42 }
+
43 
+
44 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/math_2functions_2lgamma_8hpp.html b/doc/api/html/math_2functions_2lgamma_8hpp.html new file mode 100644 index 00000000000..b095dd0020c --- /dev/null +++ b/doc/api/html/math_2functions_2lgamma_8hpp.html @@ -0,0 +1,128 @@ + + + + + +Stan: src/stan/math/functions/lgamma.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
lgamma.hpp File Reference
+
+
+
#include <boost/math/special_functions/gamma.hpp>
+
+

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::math
 Matrices and templated mathematical functions.
 
+ + + +

+Functions

double stan::math::lgamma (double x)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/math_2functions_2lgamma_8hpp_source.html b/doc/api/html/math_2functions_2lgamma_8hpp_source.html new file mode 100644 index 00000000000..e5022ac510e --- /dev/null +++ b/doc/api/html/math_2functions_2lgamma_8hpp_source.html @@ -0,0 +1,125 @@ + + + + + +Stan: src/stan/math/functions/lgamma.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
lgamma.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MATH__FUNCTIONS__LGAMMA_HPP__
+
2 #define __STAN__MATH__FUNCTIONS__LGAMMA_HPP__
+
3 
+
4 #include <boost/math/special_functions/gamma.hpp>
+
5 
+
6 namespace stan {
+
7 
+
8  namespace math {
+
9 
+
10  // throws domain_error if x is at pole
+
11  double lgamma(double x) {
+
12  return boost::math::lgamma(x);
+
13  }
+
14 
+
15  }
+
16 }
+
17 
+
18 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/math_2functions_2lmgamma_8hpp.html b/doc/api/html/math_2functions_2lmgamma_8hpp.html new file mode 100644 index 00000000000..04de95f1069 --- /dev/null +++ b/doc/api/html/math_2functions_2lmgamma_8hpp.html @@ -0,0 +1,133 @@ + + + + + +Stan: src/stan/math/functions/lmgamma.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
lmgamma.hpp File Reference
+
+
+
#include <boost/math/tools/promotion.hpp>
+#include <stan/math/constants.hpp>
+#include <boost/math/special_functions/gamma.hpp>
+
+

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::math
 Matrices and templated mathematical functions.
 
+ + + + + +

+Functions

template<typename T >
boost::math::tools::promote_args
+< T >::type 
stan::math::lmgamma (const int k, T x)
 Return the natural logarithm of the multivariate gamma function with the speciifed dimensions and argument.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/math_2functions_2lmgamma_8hpp_source.html b/doc/api/html/math_2functions_2lmgamma_8hpp_source.html new file mode 100644 index 00000000000..660b4fcf8f0 --- /dev/null +++ b/doc/api/html/math_2functions_2lmgamma_8hpp_source.html @@ -0,0 +1,133 @@ + + + + + +Stan: src/stan/math/functions/lmgamma.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
lmgamma.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MATH__FUNCTIONS__LMGAMMA_HPP__
+
2 #define __STAN__MATH__FUNCTIONS__LMGAMMA_HPP__
+
3 
+
4 #include <boost/math/tools/promotion.hpp>
+ +
6 #include <boost/math/special_functions/gamma.hpp>
+
7 
+
8 namespace stan {
+
9 
+
10  namespace math {
+
11 
+
28  template <typename T>
+
29  inline typename boost::math::tools::promote_args<T>::type
+
30  lmgamma(const int k, T x) {
+
31  using boost::math::lgamma;
+
32  typename boost::math::tools::promote_args<T>::type result
+
33  = k * (k - 1) * LOG_PI_OVER_FOUR;
+
34 
+
35  for (int j = 1; j <= k; ++j)
+
36  result += lgamma(x + (1.0 - j) / 2.0);
+
37  return result;
+
38  }
+
39 
+
40  }
+
41 }
+
42 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/math_2functions_2log1m_8hpp.html b/doc/api/html/math_2functions_2log1m_8hpp.html new file mode 100644 index 00000000000..e40ce1f5365 --- /dev/null +++ b/doc/api/html/math_2functions_2log1m_8hpp.html @@ -0,0 +1,132 @@ + + + + + +Stan: src/stan/math/functions/log1m.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
log1m.hpp File Reference
+
+
+
#include <boost/math/tools/promotion.hpp>
+#include <stan/math/functions/log1p.hpp>
+
+

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::math
 Matrices and templated mathematical functions.
 
+ + + + + +

+Functions

template<typename T >
boost::math::tools::promote_args
+< T >::type 
stan::math::log1m (T x)
 Return the natural logarithm of one minus the specified value.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/math_2functions_2log1m_8hpp_source.html b/doc/api/html/math_2functions_2log1m_8hpp_source.html new file mode 100644 index 00000000000..6467acb1142 --- /dev/null +++ b/doc/api/html/math_2functions_2log1m_8hpp_source.html @@ -0,0 +1,126 @@ + + + + + +Stan: src/stan/math/functions/log1m.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
log1m.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MATH__FUNCTIONS__LOG1M_HPP__
+
2 #define __STAN__MATH__FUNCTIONS__LOG1M_HPP__
+
3 
+
4 #include <boost/math/tools/promotion.hpp>
+ +
6 
+
7 namespace stan {
+
8  namespace math {
+
9 
+
19  template <typename T>
+
20  inline typename boost::math::tools::promote_args<T>::type
+
21  log1m(T x) {
+
22  return log1p(-x);
+
23  }
+
24 
+
25  }
+
26 }
+
27 
+
28 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/math_2functions_2log1m__exp_8hpp.html b/doc/api/html/math_2functions_2log1m__exp_8hpp.html new file mode 100644 index 00000000000..623b1118e51 --- /dev/null +++ b/doc/api/html/math_2functions_2log1m__exp_8hpp.html @@ -0,0 +1,135 @@ + + + + + +Stan: src/stan/math/functions/log1m_exp.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
log1m_exp.hpp File Reference
+
+
+
#include <boost/math/tools/promotion.hpp>
+#include <stdexcept>
+#include <boost/throw_exception.hpp>
+#include <boost/math/special_functions/expm1.hpp>
+#include <stan/math/functions/log1m.hpp>
+
+

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::math
 Matrices and templated mathematical functions.
 
+ + + + + +

+Functions

template<typename T >
boost::math::tools::promote_args
+< T >::type 
stan::math::log1m_exp (const T a)
 Calculates the log of 1 minus the exponential of the specified value without overflow log1m_exp(x) = log(1-exp(x)).
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/math_2functions_2log1m__exp_8hpp_source.html b/doc/api/html/math_2functions_2log1m__exp_8hpp_source.html new file mode 100644 index 00000000000..3f1ef9f6b7c --- /dev/null +++ b/doc/api/html/math_2functions_2log1m__exp_8hpp_source.html @@ -0,0 +1,134 @@ + + + + + +Stan: src/stan/math/functions/log1m_exp.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
log1m_exp.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MATH__FUNCTIONS__LOG1M_EXP_HPP__
+
2 #define __STAN__MATH__FUNCTIONS__LOG1M_EXP_HPP__
+
3 
+
4 #include <boost/math/tools/promotion.hpp>
+
5 #include <stdexcept>
+
6 #include <boost/throw_exception.hpp>
+
7 #include <boost/math/special_functions/expm1.hpp>
+ +
9 
+
10 namespace stan {
+
11  namespace math {
+
12 
+
20  template <typename T>
+
21  inline typename boost::math::tools::promote_args<T>::type
+
22  log1m_exp(const T a) {
+
23  if (a >= 0)
+
24  return std::numeric_limits<double>::quiet_NaN();
+
25  else if (a > -0.693147)
+
26  return std::log(-boost::math::expm1(a)); //0.693147 is approximatelly equal to log(2)
+
27  else
+
28  return log1m(std::exp(a));
+
29  }
+
30 
+
31  }
+
32 }
+
33 
+
34 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/math_2functions_2log1m__inv__logit_8hpp.html b/doc/api/html/math_2functions_2log1m__inv__logit_8hpp.html new file mode 100644 index 00000000000..27ffe9a242d --- /dev/null +++ b/doc/api/html/math_2functions_2log1m__inv__logit_8hpp.html @@ -0,0 +1,131 @@ + + + + + +Stan: src/stan/math/functions/log1m_inv_logit.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
log1m_inv_logit.hpp File Reference
+
+
+
#include <boost/math/tools/promotion.hpp>
+
+

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::math
 Matrices and templated mathematical functions.
 
+ + + + + +

+Functions

template<typename T >
boost::math::tools::promote_args
+< T >::type 
stan::math::log1m_inv_logit (const T u)
 Returns the natural logarithm of 1 minus the inverse logit of the specified argument.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/math_2functions_2log1m__inv__logit_8hpp_source.html b/doc/api/html/math_2functions_2log1m__inv__logit_8hpp_source.html new file mode 100644 index 00000000000..50311a2485f --- /dev/null +++ b/doc/api/html/math_2functions_2log1m__inv__logit_8hpp_source.html @@ -0,0 +1,128 @@ + + + + + +Stan: src/stan/math/functions/log1m_inv_logit.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
log1m_inv_logit.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MATH__FUNCTIONS__LOG1M_INV_LOGIT_HPP__
+
2 #define __STAN__MATH__FUNCTIONS__LOG1M_INV_LOGIT_HPP__
+
3 
+
4 #include <boost/math/tools/promotion.hpp>
+
5 
+
6 namespace stan {
+
7  namespace math {
+
8 
+
17  template <typename T>
+
18  inline typename boost::math::tools::promote_args<T>::type
+
19  log1m_inv_logit(const T u) {
+
20  using std::exp;
+
21  if (u > 0.0)
+
22  return -u - log1p(exp(-u)); // prevent underflow
+
23  return -log1p(exp(u));
+
24  }
+
25 
+
26  }
+
27 }
+
28 
+
29 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/math_2functions_2log1p_8hpp.html b/doc/api/html/math_2functions_2log1p_8hpp.html new file mode 100644 index 00000000000..48b8595c894 --- /dev/null +++ b/doc/api/html/math_2functions_2log1p_8hpp.html @@ -0,0 +1,132 @@ + + + + + +Stan: src/stan/math/functions/log1p.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
log1p.hpp File Reference
+
+
+
#include <limits>
+#include <boost/math/tools/promotion.hpp>
+
+

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::math
 Matrices and templated mathematical functions.
 
+ + + + + +

+Functions

template<typename T >
boost::math::tools::promote_args
+< T >::type 
stan::math::log1p (const T x)
 Return the natural logarithm of one plus the specified value.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/math_2functions_2log1p_8hpp_source.html b/doc/api/html/math_2functions_2log1p_8hpp_source.html new file mode 100644 index 00000000000..13721eb51ff --- /dev/null +++ b/doc/api/html/math_2functions_2log1p_8hpp_source.html @@ -0,0 +1,135 @@ + + + + + +Stan: src/stan/math/functions/log1p.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
log1p.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MATH__FUNCTIONS__LOG1P_HPP__
+
2 #define __STAN__MATH__FUNCTIONS__LOG1P_HPP__
+
3 
+
4 #include <limits>
+
5 #include <boost/math/tools/promotion.hpp>
+
6 
+
7 namespace stan {
+
8  namespace math {
+
9 
+
19  template <typename T>
+
20  inline typename boost::math::tools::promote_args<T>::type
+
21  log1p(const T x) {
+
22  using std::log;
+
23  if (!(x >= -1.0))
+
24  return std::numeric_limits<double>::quiet_NaN();
+
25 
+
26  if (x > 1e-9 || x < -1e-9)
+
27  return log(1.0 + x); // direct, if distant from 1
+
28  else if (x > 1e-16 || x < -1e-16)
+
29  return x - 0.5 * x * x; // 2nd order Taylor, if close to 1
+
30  else
+
31  return x; // 1st order Taylor, if very close to 1
+
32  }
+
33 
+
34  }
+
35 }
+
36 
+
37 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/math_2functions_2log1p__exp_8hpp.html b/doc/api/html/math_2functions_2log1p__exp_8hpp.html new file mode 100644 index 00000000000..2024114f996 --- /dev/null +++ b/doc/api/html/math_2functions_2log1p__exp_8hpp.html @@ -0,0 +1,132 @@ + + + + + +Stan: src/stan/math/functions/log1p_exp.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
log1p_exp.hpp File Reference
+
+
+
#include <boost/math/tools/promotion.hpp>
+#include <stan/math/functions/log1p.hpp>
+
+

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::math
 Matrices and templated mathematical functions.
 
+ + + + + +

+Functions

template<typename T >
boost::math::tools::promote_args
+< T >::type 
stan::math::log1p_exp (const T a)
 Calculates the log of 1 plus the exponential of the specified value without overflow.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/math_2functions_2log1p__exp_8hpp_source.html b/doc/api/html/math_2functions_2log1p__exp_8hpp_source.html new file mode 100644 index 00000000000..a812d3697b1 --- /dev/null +++ b/doc/api/html/math_2functions_2log1p__exp_8hpp_source.html @@ -0,0 +1,130 @@ + + + + + +Stan: src/stan/math/functions/log1p_exp.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
log1p_exp.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MATH__FUNCTIONS__LOG1P_EXP_HPP__
+
2 #define __STAN__MATH__FUNCTIONS__LOG1P_EXP_HPP__
+
3 
+
4 #include <boost/math/tools/promotion.hpp>
+ +
6 
+
7 namespace stan {
+
8  namespace math {
+
9 
+
24  template <typename T>
+
25  inline typename boost::math::tools::promote_args<T>::type
+
26  log1p_exp(const T a) {
+
27  using std::exp;
+
28  // like log_sum_exp below with b=0.0; prevents underflow
+
29  if (a > 0.0)
+
30  return a + log1p(exp(-a));
+
31  return log1p(exp(a));
+
32  }
+
33 
+
34  }
+
35 }
+
36 
+
37 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/math_2functions_2log2_8hpp.html b/doc/api/html/math_2functions_2log2_8hpp.html new file mode 100644 index 00000000000..116bd735370 --- /dev/null +++ b/doc/api/html/math_2functions_2log2_8hpp.html @@ -0,0 +1,136 @@ + + + + + +Stan: src/stan/math/functions/log2.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
log2.hpp File Reference
+
+
+
#include <stdexcept>
+#include <boost/math/tools/promotion.hpp>
+#include <stan/math/constants.hpp>
+
+

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::math
 Matrices and templated mathematical functions.
 
+ + + + + + + + +

+Functions

template<typename T >
boost::math::tools::promote_args
+< T >::type 
stan::math::log2 (const T a)
 Returns the base 2 logarithm of the argument (C99).
 
double stan::math::log2 ()
 Return natural logarithm of two.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/math_2functions_2log2_8hpp_source.html b/doc/api/html/math_2functions_2log2_8hpp_source.html new file mode 100644 index 00000000000..acf06f172d6 --- /dev/null +++ b/doc/api/html/math_2functions_2log2_8hpp_source.html @@ -0,0 +1,133 @@ + + + + + +Stan: src/stan/math/functions/log2.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
log2.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MATH__FUNCTIONS__LOG2_HPP__
+
2 #define __STAN__MATH__FUNCTIONS__LOG2_HPP__
+
3 
+
4 #include <stdexcept>
+
5 #include <boost/math/tools/promotion.hpp>
+ +
7 
+
8 namespace stan {
+
9 
+
10  namespace math {
+
11 
+
23  template <typename T>
+
24  inline typename boost::math::tools::promote_args<T>::type
+
25  log2(const T a) {
+
26  using std::log;
+
27  return log(a) / LOG_2;
+
28  }
+
29 
+
35  inline double log2() {
+
36  return LOG_2;
+
37  }
+
38 
+
39  }
+
40 }
+
41 
+
42 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/math_2functions_2log__diff__exp_8hpp.html b/doc/api/html/math_2functions_2log__diff__exp_8hpp.html new file mode 100644 index 00000000000..e2cf60342aa --- /dev/null +++ b/doc/api/html/math_2functions_2log__diff__exp_8hpp.html @@ -0,0 +1,134 @@ + + + + + +Stan: src/stan/math/functions/log_diff_exp.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
log_diff_exp.hpp File Reference
+
+
+
#include <boost/math/tools/promotion.hpp>
+#include <stdexcept>
+#include <boost/throw_exception.hpp>
+#include <stan/math/functions/log1m_exp.hpp>
+
+

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::math
 Matrices and templated mathematical functions.
 
+ + + + + +

+Functions

template<typename T1 , typename T2 >
boost::math::tools::promote_args
+< T1, T2 >::type 
stan::math::log_diff_exp (const T1 x, const T2 y)
 The natural logarithm of the difference of the natural exponentiation of x1 and the natural exponentiation of x2.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/math_2functions_2log__diff__exp_8hpp_source.html b/doc/api/html/math_2functions_2log__diff__exp_8hpp_source.html new file mode 100644 index 00000000000..5f74415d4f9 --- /dev/null +++ b/doc/api/html/math_2functions_2log__diff__exp_8hpp_source.html @@ -0,0 +1,130 @@ + + + + + +Stan: src/stan/math/functions/log_diff_exp.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
log_diff_exp.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MATH__FUNCTIONS__LOG_DIFF_EXP_HPP__
+
2 #define __STAN__MATH__FUNCTIONS__LOG_DIFF_EXP_HPP__
+
3 
+
4 #include <boost/math/tools/promotion.hpp>
+
5 #include <stdexcept>
+
6 #include <boost/throw_exception.hpp>
+ +
8 
+
9 namespace stan {
+
10  namespace math {
+
11 
+
19  template <typename T1, typename T2>
+
20  inline typename boost::math::tools::promote_args<T1,T2>::type
+
21  log_diff_exp(const T1 x, const T2 y) {
+
22  if (x <= y)
+
23  return std::numeric_limits<double>::quiet_NaN();
+
24  return x + log1m_exp(y - x);
+
25  }
+
26 
+
27  }
+
28 }
+
29 
+
30 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/math_2functions_2log__falling__factorial_8hpp.html b/doc/api/html/math_2functions_2log__falling__factorial_8hpp.html new file mode 100644 index 00000000000..a158e2410ec --- /dev/null +++ b/doc/api/html/math_2functions_2log__falling__factorial_8hpp.html @@ -0,0 +1,130 @@ + + + + + +Stan: src/stan/math/functions/log_falling_factorial.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
log_falling_factorial.hpp File Reference
+
+
+
#include <boost/math/special_functions/gamma.hpp>
+
+

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::math
 Matrices and templated mathematical functions.
 
+ + + + +

+Functions

template<typename T1 , typename T2 >
boost::math::tools::promote_args
+< T1, T2 >::type 
stan::math::log_falling_factorial (const T1 x, const T2 n)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/math_2functions_2log__falling__factorial_8hpp_source.html b/doc/api/html/math_2functions_2log__falling__factorial_8hpp_source.html new file mode 100644 index 00000000000..69a4dd7949a --- /dev/null +++ b/doc/api/html/math_2functions_2log__falling__factorial_8hpp_source.html @@ -0,0 +1,126 @@ + + + + + +Stan: src/stan/math/functions/log_falling_factorial.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
log_falling_factorial.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MATH__FUNCTIONS__LOG_FALLING_FACTORIAL_HPP__
+
2 #define __STAN__MATH__FUNCTIONS__LOG_FALLING_FACTORIAL_HPP__
+
3 
+
4 #include <boost/math/special_functions/gamma.hpp>
+
5 
+
6 namespace stan {
+
7  namespace math {
+
8 
+
9  template<typename T1, typename T2>
+
10  inline typename boost::math::tools::promote_args<T1,T2>::type
+
11  log_falling_factorial(const T1 x, const T2 n) {
+
12  using boost::math::lgamma;
+
13  return lgamma(x + 1) - lgamma(n + 1);
+
14  }
+
15 
+
16  }
+
17 }
+
18 
+
19 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/math_2functions_2log__inv__logit_8hpp.html b/doc/api/html/math_2functions_2log__inv__logit_8hpp.html new file mode 100644 index 00000000000..44a9bdad355 --- /dev/null +++ b/doc/api/html/math_2functions_2log__inv__logit_8hpp.html @@ -0,0 +1,131 @@ + + + + + +Stan: src/stan/math/functions/log_inv_logit.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
log_inv_logit.hpp File Reference
+
+
+
#include <boost/math/tools/promotion.hpp>
+
+

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::math
 Matrices and templated mathematical functions.
 
+ + + + + +

+Functions

template<typename T >
boost::math::tools::promote_args
+< T >::type 
stan::math::log_inv_logit (const T &u)
 Returns the natural logarithm of the inverse logit of the specified argument.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/math_2functions_2log__inv__logit_8hpp_source.html b/doc/api/html/math_2functions_2log__inv__logit_8hpp_source.html new file mode 100644 index 00000000000..8a3788f5e90 --- /dev/null +++ b/doc/api/html/math_2functions_2log__inv__logit_8hpp_source.html @@ -0,0 +1,128 @@ + + + + + +Stan: src/stan/math/functions/log_inv_logit.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
log_inv_logit.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MATH__FUNCTIONS__LOG_INV_LOGIT_HPP__
+
2 #define __STAN__MATH__FUNCTIONS__LOG_INV_LOGIT_HPP__
+
3 
+
4 #include <boost/math/tools/promotion.hpp>
+
5 
+
6 namespace stan {
+
7  namespace math {
+
8 
+
17  template <typename T>
+
18  inline typename boost::math::tools::promote_args<T>::type
+
19  log_inv_logit(const T& u) {
+
20  using std::exp;
+
21  if (u < 0.0)
+
22  return u - log1p(exp(u)); // prevent underflow
+
23  return -log1p(exp(-u));
+
24  }
+
25 
+
26  }
+
27 }
+
28 
+
29 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/math_2functions_2log__rising__factorial_8hpp.html b/doc/api/html/math_2functions_2log__rising__factorial_8hpp.html new file mode 100644 index 00000000000..90a51f5a2cb --- /dev/null +++ b/doc/api/html/math_2functions_2log__rising__factorial_8hpp.html @@ -0,0 +1,130 @@ + + + + + +Stan: src/stan/math/functions/log_rising_factorial.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
log_rising_factorial.hpp File Reference
+
+
+
#include <boost/math/special_functions/gamma.hpp>
+
+

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::math
 Matrices and templated mathematical functions.
 
+ + + + +

+Functions

template<typename T1 , typename T2 >
boost::math::tools::promote_args
+< T1, T2 >::type 
stan::math::log_rising_factorial (const T1 x, const T2 n)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/math_2functions_2log__rising__factorial_8hpp_source.html b/doc/api/html/math_2functions_2log__rising__factorial_8hpp_source.html new file mode 100644 index 00000000000..d4f38c3c69e --- /dev/null +++ b/doc/api/html/math_2functions_2log__rising__factorial_8hpp_source.html @@ -0,0 +1,126 @@ + + + + + +Stan: src/stan/math/functions/log_rising_factorial.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
log_rising_factorial.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MATH__FUNCTIONS__LOG_RISING_FACTORIAL_HPP__
+
2 #define __STAN__MATH__FUNCTIONS__LOG_RISING_FACTORIAL_HPP__
+
3 
+
4 #include <boost/math/special_functions/gamma.hpp>
+
5 
+
6 namespace stan {
+
7  namespace math {
+
8 
+
9  template<typename T1, typename T2>
+
10  inline typename boost::math::tools::promote_args<T1,T2>::type
+
11  log_rising_factorial(const T1 x, const T2 n) {
+
12  using boost::math::lgamma;
+
13  return lgamma(x + n) - lgamma(x);
+
14  }
+
15 
+
16  }
+
17 }
+
18 
+
19 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/math_2functions_2log__sum__exp_8hpp.html b/doc/api/html/math_2functions_2log__sum__exp_8hpp.html new file mode 100644 index 00000000000..8b795f7f17a --- /dev/null +++ b/doc/api/html/math_2functions_2log__sum__exp_8hpp.html @@ -0,0 +1,138 @@ + + + + + +Stan: src/stan/math/functions/log_sum_exp.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
log_sum_exp.hpp File Reference
+
+
+
#include <stan/math/functions/log1p.hpp>
+#include <vector>
+#include <boost/math/tools/promotion.hpp>
+#include <limits>
+
+

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::math
 Matrices and templated mathematical functions.
 
+ + + + + + + + + +

+Functions

template<typename T1 , typename T2 >
boost::math::tools::promote_args
+< T1, T2 >::type 
stan::math::log_sum_exp (const T2 &a, const T1 &b)
 Calculates the log sum of exponetials without overflow.
 
template<typename T >
stan::math::log_sum_exp (const std::vector< T > &x)
 Return the log of the sum of the exponentiated values of the specified sequence of values.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/math_2functions_2log__sum__exp_8hpp_source.html b/doc/api/html/math_2functions_2log__sum__exp_8hpp_source.html new file mode 100644 index 00000000000..e2de58ecd17 --- /dev/null +++ b/doc/api/html/math_2functions_2log__sum__exp_8hpp_source.html @@ -0,0 +1,150 @@ + + + + + +Stan: src/stan/math/functions/log_sum_exp.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
log_sum_exp.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MATH__FUNCTIONS__LOG_SUM_EXP_HPP__
+
2 #define __STAN__MATH__FUNCTIONS__LOG_SUM_EXP_HPP__
+
3 
+ +
5 #include <vector>
+
6 #include <boost/math/tools/promotion.hpp>
+
7 #include <limits>
+
8 
+
9 namespace stan {
+
10  namespace math {
+
11 
+
22  template <typename T1, typename T2>
+
23  inline typename boost::math::tools::promote_args<T1,T2>::type
+
24  log_sum_exp(const T2& a, const T1& b) {
+
25  using std::exp;
+
26  if (a > b)
+
27  return a + log1p(exp(b - a));
+
28  return b + log1p(exp(a - b));
+
29  }
+
30 
+
43  template <typename T>
+
44  T log_sum_exp(const std::vector<T>& x) {
+
45  using std::numeric_limits;
+
46  using std::log;
+
47  using std::exp;
+
48  T max = -numeric_limits<T>::infinity();
+
49  for (size_t ii = 0; ii < x.size(); ii++)
+
50  if (x[ii] > max)
+
51  max = x[ii];
+
52 
+
53  T sum = 0.0;
+
54  for (size_t ii = 0; ii < x.size(); ii++)
+
55  if (x[ii] != -numeric_limits<double>::infinity())
+
56  sum += exp(x[ii] - max);
+
57 
+
58  return max + log(sum);
+
59  }
+
60 
+
61 
+
62  }
+
63 }
+
64 
+
65 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/math_2functions_2logit_8hpp.html b/doc/api/html/math_2functions_2logit_8hpp.html new file mode 100644 index 00000000000..71032b71fae --- /dev/null +++ b/doc/api/html/math_2functions_2logit_8hpp.html @@ -0,0 +1,131 @@ + + + + + +Stan: src/stan/math/functions/logit.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
logit.hpp File Reference
+
+
+
#include <boost/math/tools/promotion.hpp>
+
+

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::math
 Matrices and templated mathematical functions.
 
+ + + + + +

+Functions

template<typename T >
boost::math::tools::promote_args
+< T >::type 
stan::math::logit (const T a)
 Returns the logit function applied to the argument.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/math_2functions_2logit_8hpp_source.html b/doc/api/html/math_2functions_2logit_8hpp_source.html new file mode 100644 index 00000000000..f8dc151f0ee --- /dev/null +++ b/doc/api/html/math_2functions_2logit_8hpp_source.html @@ -0,0 +1,126 @@ + + + + + +Stan: src/stan/math/functions/logit.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
logit.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MATH__FUNCTIONS__LOGIT_HPP__
+
2 #define __STAN__MATH__FUNCTIONS__LOGIT_HPP__
+
3 
+
4 #include <boost/math/tools/promotion.hpp>
+
5 
+
6 namespace stan {
+
7  namespace math {
+
8 
+
23  template <typename T>
+
24  inline typename boost::math::tools::promote_args<T>::type
+
25  logit(const T a) {
+
26  using std::log;
+
27  return log(a / (1.0 - a));
+
28  }
+
29 
+
30  }
+
31 }
+
32 
+
33 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/math_2functions_2modified__bessel__first__kind_8hpp.html b/doc/api/html/math_2functions_2modified__bessel__first__kind_8hpp.html new file mode 100644 index 00000000000..c814c760e69 --- /dev/null +++ b/doc/api/html/math_2functions_2modified__bessel__first__kind_8hpp.html @@ -0,0 +1,129 @@ + + + + + +Stan: src/stan/math/functions/modified_bessel_first_kind.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
modified_bessel_first_kind.hpp File Reference
+
+
+
#include <boost/math/special_functions/bessel.hpp>
+
+

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::math
 Matrices and templated mathematical functions.
 
+ + + + +

+Functions

template<typename T2 >
T2 stan::math::modified_bessel_first_kind (const int v, const T2 z)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/math_2functions_2modified__bessel__first__kind_8hpp_source.html b/doc/api/html/math_2functions_2modified__bessel__first__kind_8hpp_source.html new file mode 100644 index 00000000000..4e7193a579b --- /dev/null +++ b/doc/api/html/math_2functions_2modified__bessel__first__kind_8hpp_source.html @@ -0,0 +1,125 @@ + + + + + +Stan: src/stan/math/functions/modified_bessel_first_kind.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
modified_bessel_first_kind.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MATH__FUNCTIONS__MODIFIED_BESSEL_FIRST_KIND_HPP__
+
2 #define __STAN__MATH__FUNCTIONS__MODIFIED_BESSEL_FIRST_KIND_HPP__
+
3 
+
4 #include <boost/math/special_functions/bessel.hpp>
+
5 
+
6 namespace stan {
+
7  namespace math {
+
8 
+
9  template<typename T2>
+
10  inline T2
+
11  modified_bessel_first_kind(const int v, const T2 z) {
+
12  return boost::math::cyl_bessel_i(v,z);
+
13  }
+
14 
+
15  }
+
16 }
+
17 
+
18 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/math_2functions_2modified__bessel__second__kind_8hpp.html b/doc/api/html/math_2functions_2modified__bessel__second__kind_8hpp.html new file mode 100644 index 00000000000..60f8cfacb60 --- /dev/null +++ b/doc/api/html/math_2functions_2modified__bessel__second__kind_8hpp.html @@ -0,0 +1,129 @@ + + + + + +Stan: src/stan/math/functions/modified_bessel_second_kind.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
modified_bessel_second_kind.hpp File Reference
+
+
+
#include <boost/math/special_functions/bessel.hpp>
+
+

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::math
 Matrices and templated mathematical functions.
 
+ + + + +

+Functions

template<typename T2 >
T2 stan::math::modified_bessel_second_kind (const int v, const T2 z)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/math_2functions_2modified__bessel__second__kind_8hpp_source.html b/doc/api/html/math_2functions_2modified__bessel__second__kind_8hpp_source.html new file mode 100644 index 00000000000..2763e0f9423 --- /dev/null +++ b/doc/api/html/math_2functions_2modified__bessel__second__kind_8hpp_source.html @@ -0,0 +1,125 @@ + + + + + +Stan: src/stan/math/functions/modified_bessel_second_kind.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
modified_bessel_second_kind.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MATH__FUNCTIONS__MODIFIED_BESSEL_SECOND_KIND_HPP__
+
2 #define __STAN__MATH__FUNCTIONS__MODIFIED_BESSEL_SECOND_KIND_HPP__
+
3 
+
4 #include <boost/math/special_functions/bessel.hpp>
+
5 
+
6 namespace stan {
+
7  namespace math {
+
8 
+
9  template<typename T2>
+
10  inline T2
+
11  modified_bessel_second_kind(const int v, const T2 z) {
+
12  return boost::math::cyl_bessel_k(v,z);
+
13  }
+
14 
+
15  }
+
16 }
+
17 
+
18 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/math_2functions_2multiply__log_8hpp.html b/doc/api/html/math_2functions_2multiply__log_8hpp.html new file mode 100644 index 00000000000..0e50312718f --- /dev/null +++ b/doc/api/html/math_2functions_2multiply__log_8hpp.html @@ -0,0 +1,131 @@ + + + + + +Stan: src/stan/math/functions/multiply_log.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
multiply_log.hpp File Reference
+
+
+
#include <boost/math/tools/promotion.hpp>
+
+

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::math
 Matrices and templated mathematical functions.
 
+ + + + + +

+Functions

template<typename T_a , typename T_b >
boost::math::tools::promote_args
+< T_a, T_b >::type 
stan::math::multiply_log (const T_a a, const T_b b)
 Calculated the value of the first argument times log of the second argument while behaving properly with 0 inputs.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/math_2functions_2multiply__log_8hpp_source.html b/doc/api/html/math_2functions_2multiply__log_8hpp_source.html new file mode 100644 index 00000000000..1184fb20a79 --- /dev/null +++ b/doc/api/html/math_2functions_2multiply__log_8hpp_source.html @@ -0,0 +1,128 @@ + + + + + +Stan: src/stan/math/functions/multiply_log.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
multiply_log.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MATH__FUNCTIONS__MULTIPLY_LOG_HPP__
+
2 #define __STAN__MATH__FUNCTIONS__MULTIPLY_LOG_HPP__
+
3 
+
4 #include <boost/math/tools/promotion.hpp>
+
5 
+
6 namespace stan {
+
7  namespace math {
+
8 
+
21  template <typename T_a, typename T_b>
+
22  inline typename boost::math::tools::promote_args<T_a,T_b>::type
+
23  multiply_log(const T_a a, const T_b b) {
+
24  using std::log;
+
25  if (b == 0.0 && a == 0.0)
+
26  return 0.0;
+
27  return a * log(b);
+
28  }
+
29 
+
30  }
+
31 }
+
32 
+
33 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/math_2functions_2owens__t_8hpp.html b/doc/api/html/math_2functions_2owens__t_8hpp.html new file mode 100644 index 00000000000..7ffa07394a1 --- /dev/null +++ b/doc/api/html/math_2functions_2owens__t_8hpp.html @@ -0,0 +1,132 @@ + + + + + +Stan: src/stan/math/functions/owens_t.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
owens_t.hpp File Reference
+
+
+
#include <boost/math/tools/promotion.hpp>
+#include <boost/math/special_functions/owens_t.hpp>
+
+

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::math
 Matrices and templated mathematical functions.
 
+ + + + + +

+Functions

template<typename T1 , typename T2 >
boost::math::tools::promote_args
+< T1, T2 >::type 
stan::math::owens_t (const T1 &h, const T2 &a)
 The Owen's T function of h and a.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/math_2functions_2owens__t_8hpp_source.html b/doc/api/html/math_2functions_2owens__t_8hpp_source.html new file mode 100644 index 00000000000..38aba199cfb --- /dev/null +++ b/doc/api/html/math_2functions_2owens__t_8hpp_source.html @@ -0,0 +1,126 @@ + + + + + +Stan: src/stan/math/functions/owens_t.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
owens_t.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MATH__FUNCTIONS__OWENS__T_HPP__
+
2 #define __STAN__MATH__FUNCTIONS__OWENS__T_HPP__
+
3 
+
4 #include <boost/math/tools/promotion.hpp>
+
5 #include <boost/math/special_functions/owens_t.hpp>
+
6 
+
7 namespace stan {
+
8  namespace math {
+
9 
+
10 
+
23  template <typename T1, typename T2>
+
24  inline typename boost::math::tools::promote_args<T1,T2>::type
+
25  owens_t(const T1& h, const T2& a) {
+
26  return boost::math::owens_t(h, a);
+
27  }
+
28  }
+
29 }
+
30 
+
31 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/math_2functions_2rising__factorial_8hpp.html b/doc/api/html/math_2functions_2rising__factorial_8hpp.html new file mode 100644 index 00000000000..e2aa1f3fccd --- /dev/null +++ b/doc/api/html/math_2functions_2rising__factorial_8hpp.html @@ -0,0 +1,130 @@ + + + + + +Stan: src/stan/math/functions/rising_factorial.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
rising_factorial.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::math
 Matrices and templated mathematical functions.
 
+ + + + +

+Functions

template<typename T1 , typename T2 >
boost::math::tools::promote_args
+< T1, T2 >::type 
stan::math::rising_factorial (const T1 x, const T2 n)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/math_2functions_2rising__factorial_8hpp_source.html b/doc/api/html/math_2functions_2rising__factorial_8hpp_source.html new file mode 100644 index 00000000000..288dab15454 --- /dev/null +++ b/doc/api/html/math_2functions_2rising__factorial_8hpp_source.html @@ -0,0 +1,125 @@ + + + + + +Stan: src/stan/math/functions/rising_factorial.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
rising_factorial.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MATH__FUNCTIONS__RISING_FACTORIAL_HPP__
+
2 #define __STAN__MATH__FUNCTIONS__RISING_FACTORIAL_HPP__
+
3 
+ +
5 
+
6 namespace stan {
+
7  namespace math {
+
8 
+
9  template<typename T1, typename T2>
+
10  inline typename boost::math::tools::promote_args<T1,T2>::type
+
11  rising_factorial(const T1 x, const T2 n) {
+ +
13  }
+
14 
+
15  }
+
16 }
+
17 
+
18 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/math_2functions_2square_8hpp.html b/doc/api/html/math_2functions_2square_8hpp.html new file mode 100644 index 00000000000..de4f0c84a80 --- /dev/null +++ b/doc/api/html/math_2functions_2square_8hpp.html @@ -0,0 +1,129 @@ + + + + + +Stan: src/stan/math/functions/square.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
square.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::math
 Matrices and templated mathematical functions.
 
+ + + + + +

+Functions

template<typename T >
stan::math::square (const T x)
 Return the square of the specified argument.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/math_2functions_2square_8hpp_source.html b/doc/api/html/math_2functions_2square_8hpp_source.html new file mode 100644 index 00000000000..1c4fd3a1712 --- /dev/null +++ b/doc/api/html/math_2functions_2square_8hpp_source.html @@ -0,0 +1,122 @@ + + + + + +Stan: src/stan/math/functions/square.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
square.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MATH__FUNCTIONS__SQUARE_HPP__
+
2 #define __STAN__MATH__FUNCTIONS__SQUARE_HPP__
+
3 
+
4 namespace stan {
+
5  namespace math {
+
6 
+
21  template <typename T>
+
22  inline T square(const T x) {
+
23  return x * x;
+
24  }
+
25 
+
26  }
+
27 }
+
28 
+
29 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/math_2functions_2step_8hpp.html b/doc/api/html/math_2functions_2step_8hpp.html new file mode 100644 index 00000000000..592a937666f --- /dev/null +++ b/doc/api/html/math_2functions_2step_8hpp.html @@ -0,0 +1,129 @@ + + + + + +Stan: src/stan/math/functions/step.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
step.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::math
 Matrices and templated mathematical functions.
 
+ + + + + +

+Functions

template<typename T >
int stan::math::step (const T y)
 The step, or Heaviside, function.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/math_2functions_2step_8hpp_source.html b/doc/api/html/math_2functions_2step_8hpp_source.html new file mode 100644 index 00000000000..26a61564d81 --- /dev/null +++ b/doc/api/html/math_2functions_2step_8hpp_source.html @@ -0,0 +1,122 @@ + + + + + +Stan: src/stan/math/functions/step.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
step.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MATH__FUNCTIONS__STEP_HPP__
+
2 #define __STAN__MATH__FUNCTIONS__STEP_HPP__
+
3 
+
4 namespace stan {
+
5  namespace math {
+
6 
+
19  template <typename T>
+
20  inline int step(const T y) {
+
21  return y < 0.0 ? 0 : 1;
+
22  }
+
23 
+
24  }
+
25 }
+
26 
+
27 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/math_2functions_2sum_8hpp.html b/doc/api/html/math_2functions_2sum_8hpp.html new file mode 100644 index 00000000000..9a0af3c29cc --- /dev/null +++ b/doc/api/html/math_2functions_2sum_8hpp.html @@ -0,0 +1,129 @@ + + + + + +Stan: src/stan/math/functions/sum.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
sum.hpp File Reference
+
+
+
#include <vector>
+#include <cstddef>
+
+

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::math
 Matrices and templated mathematical functions.
 
+ + + +

+Functions

double stan::math::sum (std::vector< double > &x)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/math_2functions_2sum_8hpp_source.html b/doc/api/html/math_2functions_2sum_8hpp_source.html new file mode 100644 index 00000000000..85ef56905c0 --- /dev/null +++ b/doc/api/html/math_2functions_2sum_8hpp_source.html @@ -0,0 +1,127 @@ + + + + + +Stan: src/stan/math/functions/sum.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
sum.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MATH__FUNCTIONS__SUM_HPP__
+
2 #define __STAN__MATH__FUNCTIONS__SUM_HPP__
+
3 
+
4 #include <vector>
+
5 #include <cstddef>
+
6 
+
7 namespace stan {
+
8  namespace math {
+
9 
+
10  inline double sum(std::vector<double>& x) {
+
11  double sum = x[0];
+
12  for (size_t i = 1; i < x.size(); ++i)
+
13  sum += x[i];
+
14  return sum;
+
15  }
+
16 
+
17  }
+
18 }
+
19 
+
20 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/math_2functions_2value__of_8hpp.html b/doc/api/html/math_2functions_2value__of_8hpp.html new file mode 100644 index 00000000000..7573fa67490 --- /dev/null +++ b/doc/api/html/math_2functions_2value__of_8hpp.html @@ -0,0 +1,133 @@ + + + + + +Stan: src/stan/math/functions/value_of.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
value_of.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::math
 Matrices and templated mathematical functions.
 
+ + + + + + + + + +

+Functions

template<typename T >
double stan::math::value_of (const T x)
 Return the value of the specified scalar argument converted to a double value.
 
template<>
double stan::math::value_of< double > (const double x)
 Return the specified argument.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/math_2functions_2value__of_8hpp_source.html b/doc/api/html/math_2functions_2value__of_8hpp_source.html new file mode 100644 index 00000000000..fe8f773f288 --- /dev/null +++ b/doc/api/html/math_2functions_2value__of_8hpp_source.html @@ -0,0 +1,127 @@ + + + + + +Stan: src/stan/math/functions/value_of.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
value_of.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MATH__FUNCTIONS__VALUE_OF_HPP__
+
2 #define __STAN__MATH__FUNCTIONS__VALUE_OF_HPP__
+
3 
+
4 namespace stan {
+
5  namespace math {
+
6 
+
19  template <typename T>
+
20  inline double value_of(const T x) {
+
21  return static_cast<double>(x);
+
22  }
+
23 
+
35  template <>
+
36  inline double value_of<double>(const double x) {
+
37  return x;
+
38  }
+
39 
+
40  }
+
41 }
+
42 
+
43 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/math_2functions_8hpp.html b/doc/api/html/math_2functions_8hpp.html new file mode 100644 index 00000000000..6e8647ccdbd --- /dev/null +++ b/doc/api/html/math_2functions_8hpp.html @@ -0,0 +1,175 @@ + + + + + +Stan: src/stan/math/functions.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
functions.hpp File Reference
+
+
+
#include <stan/math/functions/Phi.hpp>
+#include <stan/math/functions/Phi_approx.hpp>
+#include <stan/math/functions/abs.hpp>
+#include <stan/math/functions/as_bool.hpp>
+#include <stan/math/functions/bessel_first_kind.hpp>
+#include <stan/math/functions/bessel_second_kind.hpp>
+#include <stan/math/functions/binary_log_loss.hpp>
+#include <stan/math/functions/binomial_coefficient_log.hpp>
+#include <stan/math/functions/digamma.hpp>
+#include <stan/math/functions/dist.hpp>
+#include <stan/math/functions/dot.hpp>
+#include <stan/math/functions/dot_self.hpp>
+#include <stan/math/functions/exp2.hpp>
+#include <stan/math/functions/falling_factorial.hpp>
+#include <stan/math/functions/fdim.hpp>
+#include <stan/math/functions/fma.hpp>
+#include <stan/math/functions/gamma_p.hpp>
+#include <stan/math/functions/gamma_q.hpp>
+#include <stan/math/functions/ibeta.hpp>
+#include <stan/math/functions/if_else.hpp>
+#include <stan/math/functions/int_step.hpp>
+#include <stan/math/functions/inv.hpp>
+#include <stan/math/functions/inv_cloglog.hpp>
+#include <stan/math/functions/inv_logit.hpp>
+#include <stan/math/functions/inv_sqrt.hpp>
+#include <stan/math/functions/inv_square.hpp>
+#include <stan/math/functions/inverse_softmax.hpp>
+#include <stan/math/functions/is_uninitialized.hpp>
+#include <stan/math/functions/lbeta.hpp>
+#include <stan/math/functions/lgamma.hpp>
+#include <stan/math/functions/lmgamma.hpp>
+#include <stan/math/functions/log1m.hpp>
+#include <stan/math/functions/log1m_exp.hpp>
+#include <stan/math/functions/log1m_inv_logit.hpp>
+#include <stan/math/functions/log1p.hpp>
+#include <stan/math/functions/log1p_exp.hpp>
+#include <stan/math/functions/log2.hpp>
+#include <stan/math/functions/log_diff_exp.hpp>
+#include <stan/math/functions/log_falling_factorial.hpp>
+#include <stan/math/functions/log_inv_logit.hpp>
+#include <stan/math/functions/log_rising_factorial.hpp>
+#include <stan/math/functions/log_sum_exp.hpp>
+#include <stan/math/functions/logical_and.hpp>
+#include <stan/math/functions/logical_eq.hpp>
+#include <stan/math/functions/logical_gt.hpp>
+#include <stan/math/functions/logical_gte.hpp>
+#include <stan/math/functions/logical_lt.hpp>
+#include <stan/math/functions/logical_lte.hpp>
+#include <stan/math/functions/logical_negation.hpp>
+#include <stan/math/functions/logical_neq.hpp>
+#include <stan/math/functions/logical_or.hpp>
+#include <stan/math/functions/logit.hpp>
+#include <stan/math/functions/max.hpp>
+#include <stan/math/functions/min.hpp>
+#include <stan/math/functions/modified_bessel_first_kind.hpp>
+#include <stan/math/functions/modified_bessel_second_kind.hpp>
+#include <stan/math/functions/multiply_log.hpp>
+#include <stan/math/functions/owens_t.hpp>
+#include <stan/math/functions/rising_factorial.hpp>
+#include <stan/math/functions/scaled_add.hpp>
+#include <stan/math/functions/square.hpp>
+#include <stan/math/functions/step.hpp>
+#include <stan/math/functions/sub.hpp>
+#include <stan/math/functions/sum.hpp>
+#include <stan/math/functions/trigamma.hpp>
+#include <stan/math/functions/value_of.hpp>
+
+

Go to the source code of this file.

+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/math_2functions_8hpp_source.html b/doc/api/html/math_2functions_8hpp_source.html new file mode 100644 index 00000000000..3d8e07b4de8 --- /dev/null +++ b/doc/api/html/math_2functions_8hpp_source.html @@ -0,0 +1,178 @@ + + + + + +Stan: src/stan/math/functions.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
functions.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MATH__FUNCTIONS_HPP__
+
2 #define __STAN__MATH__FUNCTIONS_HPP__
+
3 
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
70 
+
71 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/math_2matrix_2_l_d_l_t__factor_8hpp.html b/doc/api/html/math_2matrix_2_l_d_l_t__factor_8hpp.html new file mode 100644 index 00000000000..36909e47c68 --- /dev/null +++ b/doc/api/html/math_2matrix_2_l_d_l_t__factor_8hpp.html @@ -0,0 +1,133 @@ + + + + + +Stan: src/stan/math/matrix/LDLT_factor.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
LDLT_factor.hpp File Reference
+
+
+
#include <stan/math/matrix/Eigen.hpp>
+#include <boost/shared_ptr.hpp>
+#include <stan/math/matrix/validate_square.hpp>
+
+

Go to the source code of this file.

+ + + + + + + +

+Classes

class  LDLT_factor< T, R, C >
 
class  stan::math::LDLT_factor< double, R, C >
 LDLT_factor is a thin wrapper on Eigen::LDLT to allow for reusing factorizations and efficient autodiff of things like log determinants and solutions to linear systems. More...
 
+ + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::math
 Matrices and templated mathematical functions.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/math_2matrix_2_l_d_l_t__factor_8hpp_source.html b/doc/api/html/math_2matrix_2_l_d_l_t__factor_8hpp_source.html new file mode 100644 index 00000000000..4c4dc28353b --- /dev/null +++ b/doc/api/html/math_2matrix_2_l_d_l_t__factor_8hpp_source.html @@ -0,0 +1,184 @@ + + + + + +Stan: src/stan/math/matrix/LDLT_factor.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
LDLT_factor.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MATH__MATRIX__LDLT_FACTOR_HPP__
+
2 #define __STAN__MATH__MATRIX__LDLT_FACTOR_HPP__
+
3 
+ +
5 #include <boost/shared_ptr.hpp>
+ +
7 
+
8 namespace stan {
+
9  namespace math {
+
10 
+
11  // This class is conceptually similar to the corresponding Eigen class
+
12  // Any spd matrix A can be decomposed as LDL' where L is unit lower-triangular
+
13  // and D is diagonal with positive diagonal elements
+
14 
+
15  template<typename T, int R, int C>
+
16  class LDLT_factor;
+
17 
+
55  template<int R, int C>
+
56  class LDLT_factor<double,R,C> {
+
57  public:
+ +
59  : N_(0), _ldltP(new Eigen::LDLT< Eigen::Matrix<double,R,C> >()) {}
+
60 
+
61  LDLT_factor(const Eigen::Matrix<double,R,C> &A)
+
62  : N_(0), _ldltP(new Eigen::LDLT< Eigen::Matrix<double,R,C> >())
+
63  {
+
64  compute(A);
+
65  }
+
66 
+
67  inline void compute(const Eigen::Matrix<double,R,C> &A) {
+
68  stan::math::validate_square(A,"LDLT_factor<double>::compute");
+
69  N_ = A.rows();
+
70  _ldltP->compute(A);
+
71  }
+
72 
+
73  inline bool success() const {
+
74  bool ret;
+
75  ret = _ldltP->info() == Eigen::Success;
+
76  ret = ret && _ldltP->isPositive();
+
77  ret = ret && (_ldltP->vectorD().array() > 0).all();
+
78  return ret;
+
79  }
+
80 
+
81  inline double log_abs_det() const {
+
82  return _ldltP->vectorD().array().log().sum();
+
83  }
+
84 
+
85  inline void inverse(Eigen::Matrix<double,R,C> &invA) const {
+
86  invA.setIdentity(N_);
+
87  _ldltP->solveInPlace(invA);
+
88  }
+
89 
+
90  template<typename Rhs>
+
91  inline const Eigen::internal::solve_retval<Eigen::LDLT< Eigen::Matrix<double,R,C> >, Rhs>
+
92  solve(const Eigen::MatrixBase<Rhs>& b) const {
+
93  return _ldltP->solve(b);
+
94  }
+
95 
+
96  inline Eigen::Matrix<double,R,C> solveRight(const Eigen::Matrix<double,R,C> &B) const {
+
97  return _ldltP->solve(B.transpose()).transpose();
+
98  }
+
99 
+
100  inline Eigen::VectorXd vectorD() const {
+
101  return _ldltP->vectorD();
+
102  }
+
103 
+
104  inline size_t rows() const { return N_; }
+
105  inline size_t cols() const { return N_; }
+
106 
+
107  typedef size_t size_type;
+
108 
+
109  size_t N_;
+
110  boost::shared_ptr< Eigen::LDLT< Eigen::Matrix<double,R,C> > > _ldltP;
+
111  };
+
112  }
+
113 }
+
114 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/math_2matrix_2columns__dot__product_8hpp.html b/doc/api/html/math_2matrix_2columns__dot__product_8hpp.html new file mode 100644 index 00000000000..0ed6ed334c8 --- /dev/null +++ b/doc/api/html/math_2matrix_2columns__dot__product_8hpp.html @@ -0,0 +1,132 @@ + + + + + +Stan: src/stan/math/matrix/columns_dot_product.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
columns_dot_product.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::math
 Matrices and templated mathematical functions.
 
+ + + + + +

+Functions

template<int R1, int C1, int R2, int C2>
Eigen::Matrix< double, 1, C1 > stan::math::columns_dot_product (const Eigen::Matrix< double, R1, C1 > &v1, const Eigen::Matrix< double, R2, C2 > &v2)
 Returns the dot product of the specified vectors.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/math_2matrix_2columns__dot__product_8hpp_source.html b/doc/api/html/math_2matrix_2columns__dot__product_8hpp_source.html new file mode 100644 index 00000000000..2ec54f50500 --- /dev/null +++ b/doc/api/html/math_2matrix_2columns__dot__product_8hpp_source.html @@ -0,0 +1,132 @@ + + + + + +Stan: src/stan/math/matrix/columns_dot_product.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
columns_dot_product.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MATH__MATRIX__COLUMNS_DOT_PRODUCT_HPP__
+
2 #define __STAN__MATH__MATRIX__COLUMNS_DOT_PRODUCT_HPP__
+
3 
+ + + +
7 
+
8 namespace stan {
+
9  namespace math {
+
10 
+
20  template<int R1,int C1,int R2, int C2>
+
21  inline Eigen::Matrix<double, 1, C1>
+
22  columns_dot_product(const Eigen::Matrix<double, R1, C1>& v1,
+
23  const Eigen::Matrix<double, R2, C2>& v2) {
+
24  validate_matching_sizes(v1,v2,"columns_dot_product");
+
25  Eigen::Matrix<double, 1, C1> ret(1,v1.cols());
+
26  for (size_type j = 0; j < v1.cols(); ++j) {
+
27  ret(j) = v1.col(j).dot(v2.col(j));
+
28  }
+
29  return ret;
+
30  }
+
31 
+
32  }
+
33 }
+
34 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/math_2matrix_2columns__dot__self_8hpp.html b/doc/api/html/math_2matrix_2columns__dot__self_8hpp.html new file mode 100644 index 00000000000..7abcd068770 --- /dev/null +++ b/doc/api/html/math_2matrix_2columns__dot__self_8hpp.html @@ -0,0 +1,130 @@ + + + + + +Stan: src/stan/math/matrix/columns_dot_self.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
columns_dot_self.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::math
 Matrices and templated mathematical functions.
 
+ + + + + +

+Functions

template<typename T , int R, int C>
Eigen::Matrix< T, 1, C > stan::math::columns_dot_self (const Eigen::Matrix< T, R, C > &x)
 Returns the dot product of each column of a matrix with itself.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/math_2matrix_2columns__dot__self_8hpp_source.html b/doc/api/html/math_2matrix_2columns__dot__self_8hpp_source.html new file mode 100644 index 00000000000..bffa5d63a8b --- /dev/null +++ b/doc/api/html/math_2matrix_2columns__dot__self_8hpp_source.html @@ -0,0 +1,124 @@ + + + + + +Stan: src/stan/math/matrix/columns_dot_self.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
columns_dot_self.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MATH__MATRIX__COLUMNS_DOT_SELF_HPP__
+
2 #define __STAN__MATH__MATRIX__COLUMNS_DOT_SELF_HPP__
+
3 
+ +
5 
+
6 namespace stan {
+
7  namespace math {
+
8 
+
14  template<typename T,int R,int C>
+
15  inline Eigen::Matrix<T,1,C>
+
16  columns_dot_self(const Eigen::Matrix<T,R,C>& x) {
+
17  return x.colwise().squaredNorm();
+
18  }
+
19 
+
20  }
+
21 }
+
22 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/math_2matrix_2crossprod_8hpp.html b/doc/api/html/math_2matrix_2crossprod_8hpp.html new file mode 100644 index 00000000000..255b3b882c8 --- /dev/null +++ b/doc/api/html/math_2matrix_2crossprod_8hpp.html @@ -0,0 +1,130 @@ + + + + + +Stan: src/stan/math/matrix/crossprod.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
crossprod.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::math
 Matrices and templated mathematical functions.
 
+ + + + +

+Functions

matrix_d stan::math::crossprod (const matrix_d &M)
 Returns the result of pre-multiplying a matrix by its own transpose.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/math_2matrix_2crossprod_8hpp_source.html b/doc/api/html/math_2matrix_2crossprod_8hpp_source.html new file mode 100644 index 00000000000..7531c3e4791 --- /dev/null +++ b/doc/api/html/math_2matrix_2crossprod_8hpp_source.html @@ -0,0 +1,124 @@ + + + + + +Stan: src/stan/math/matrix/crossprod.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
crossprod.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MATH__MATRIX__CROSSPROD_HPP__
+
2 #define __STAN__MATH__MATRIX__CROSSPROD_HPP__
+
3 
+ + +
6 
+
7 namespace stan {
+
8  namespace math {
+
9 
+
16  inline matrix_d
+
17  crossprod(const matrix_d& M) {
+
18  return tcrossprod(M.transpose());
+
19  }
+
20 
+
21  }
+
22 }
+
23 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/math_2matrix_2determinant_8hpp.html b/doc/api/html/math_2matrix_2determinant_8hpp.html new file mode 100644 index 00000000000..07be9e7afd3 --- /dev/null +++ b/doc/api/html/math_2matrix_2determinant_8hpp.html @@ -0,0 +1,131 @@ + + + + + +Stan: src/stan/math/matrix/determinant.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
determinant.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::math
 Matrices and templated mathematical functions.
 
+ + + + + +

+Functions

template<typename T , int R, int C>
stan::math::determinant (const Eigen::Matrix< T, R, C > &m)
 Returns the determinant of the specified square matrix.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/math_2matrix_2determinant_8hpp_source.html b/doc/api/html/math_2matrix_2determinant_8hpp_source.html new file mode 100644 index 00000000000..0c2a1da622d --- /dev/null +++ b/doc/api/html/math_2matrix_2determinant_8hpp_source.html @@ -0,0 +1,125 @@ + + + + + +Stan: src/stan/math/matrix/determinant.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
determinant.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MATH__MATRIX__DETERMINANT_HPP__
+
2 #define __STAN__MATH__MATRIX__DETERMINANT_HPP__
+
3 
+ + +
6 
+
7 namespace stan {
+
8  namespace math {
+
9 
+
17  template <typename T,int R, int C>
+
18  inline T determinant(const Eigen::Matrix<T,R,C>& m) {
+
19  stan::math::validate_square(m,"determinant");
+
20  return m.determinant();
+
21  }
+
22 
+
23  }
+
24 }
+
25 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/math_2matrix_2divide_8hpp.html b/doc/api/html/math_2matrix_2divide_8hpp.html new file mode 100644 index 00000000000..8c7d9fa8bfb --- /dev/null +++ b/doc/api/html/math_2matrix_2divide_8hpp.html @@ -0,0 +1,135 @@ + + + + + +Stan: src/stan/math/matrix/divide.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
divide.hpp File Reference
+
+
+
#include <boost/type_traits/is_arithmetic.hpp>
+#include <boost/utility/enable_if.hpp>
+#include <stan/math/matrix/Eigen.hpp>
+
+

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::math
 Matrices and templated mathematical functions.
 
+ + + + + +

+Functions

template<int R, int C, typename T >
boost::enable_if_c
+< boost::is_arithmetic< T >
+::value, Eigen::Matrix< double,
+R, C > >::type 
stan::math::divide (const Eigen::Matrix< double, R, C > &m, T c)
 Return specified matrix divided by specified scalar.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/math_2matrix_2divide_8hpp_source.html b/doc/api/html/math_2matrix_2divide_8hpp_source.html new file mode 100644 index 00000000000..0c57424e0b8 --- /dev/null +++ b/doc/api/html/math_2matrix_2divide_8hpp_source.html @@ -0,0 +1,129 @@ + + + + + +Stan: src/stan/math/matrix/divide.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
divide.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MATH__MATRIX__DIVIDE_HPP__
+
2 #define __STAN__MATH__MATRIX__DIVIDE_HPP__
+
3 
+
4 #include <boost/type_traits/is_arithmetic.hpp>
+
5 #include <boost/utility/enable_if.hpp>
+ +
7 
+
8 namespace stan {
+
9  namespace math {
+
10 
+
19  template <int R, int C, typename T>
+
20  inline
+
21  typename boost::enable_if_c<boost::is_arithmetic<T>::value,
+
22  Eigen::Matrix<double, R, C> >::type
+
23  divide(const Eigen::Matrix<double,R,C>& m,
+
24  T c) {
+
25  return m / c;
+
26  }
+
27 
+
28  }
+
29 }
+
30 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/math_2matrix_2dot__product_8hpp.html b/doc/api/html/math_2matrix_2dot__product_8hpp.html new file mode 100644 index 00000000000..5aee0fdaa76 --- /dev/null +++ b/doc/api/html/math_2matrix_2dot__product_8hpp.html @@ -0,0 +1,139 @@ + + + + + +Stan: src/stan/math/matrix/dot_product.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
dot_product.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::math
 Matrices and templated mathematical functions.
 
+ + + + + + + + + + + +

+Functions

template<int R1, int C1, int R2, int C2>
double stan::math::dot_product (const Eigen::Matrix< double, R1, C1 > &v1, const Eigen::Matrix< double, R2, C2 > &v2)
 Returns the dot product of the specified vectors.
 
double stan::math::dot_product (const double *v1, const double *v2, size_t length)
 Returns the dot product of the specified arrays of doubles.
 
double stan::math::dot_product (const std::vector< double > &v1, const std::vector< double > &v2)
 Returns the dot product of the specified arrays of doubles.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/math_2matrix_2dot__product_8hpp_source.html b/doc/api/html/math_2matrix_2dot__product_8hpp_source.html new file mode 100644 index 00000000000..d3239ef1e4c --- /dev/null +++ b/doc/api/html/math_2matrix_2dot__product_8hpp_source.html @@ -0,0 +1,142 @@ + + + + + +Stan: src/stan/math/matrix/dot_product.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
dot_product.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MATH__MATRIX__DOT_PRODUCT_HPP__
+
2 #define __STAN__MATH__MATRIX__DOT_PRODUCT_HPP__
+
3 
+
4 #include <vector>
+ + + +
8 
+
9 namespace stan {
+
10  namespace math {
+
11 
+
21  template<int R1,int C1,int R2, int C2>
+
22  inline double dot_product(const Eigen::Matrix<double, R1, C1>& v1,
+
23  const Eigen::Matrix<double, R2, C2>& v2) {
+
24  validate_vector(v1,"dot_product");
+
25  validate_vector(v2,"dot_product");
+
26  validate_matching_sizes(v1,v2,"dot_product");
+
27  return v1.dot(v2);
+
28  }
+
35  inline double dot_product(const double* v1, const double* v2,
+
36  size_t length) {
+
37  double result = 0;
+
38  for (size_t i = 0; i < length; i++)
+
39  result += v1[i] * v2[i];
+
40  return result;
+
41  }
+
48  inline double dot_product(const std::vector<double>& v1,
+
49  const std::vector<double>& v2) {
+
50  validate_matching_sizes(v1,v2,"dot_product");
+
51  return dot_product(&v1[0], &v2[0], v1.size());
+
52  }
+
53 
+
54  }
+
55 }
+
56 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/math_2matrix_2dot__self_8hpp.html b/doc/api/html/math_2matrix_2dot__self_8hpp.html new file mode 100644 index 00000000000..3af331102fc --- /dev/null +++ b/doc/api/html/math_2matrix_2dot__self_8hpp.html @@ -0,0 +1,131 @@ + + + + + +Stan: src/stan/math/matrix/dot_self.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
dot_self.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::math
 Matrices and templated mathematical functions.
 
+ + + + + +

+Functions

template<int R, int C>
double stan::math::dot_self (const Eigen::Matrix< double, R, C > &v)
 Returns the dot product of the specified vector with itself.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/math_2matrix_2dot__self_8hpp_source.html b/doc/api/html/math_2matrix_2dot__self_8hpp_source.html new file mode 100644 index 00000000000..c5021adcb35 --- /dev/null +++ b/doc/api/html/math_2matrix_2dot__self_8hpp_source.html @@ -0,0 +1,125 @@ + + + + + +Stan: src/stan/math/matrix/dot_self.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
dot_self.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MATH__MATRIX__DOT_SELF_HPP__
+
2 #define __STAN__MATH__MATRIX__DOT_SELF_HPP__
+
3 
+ + +
6 
+
7 namespace stan {
+
8  namespace math {
+
9 
+
17  template <int R, int C>
+
18  inline double dot_self(const Eigen::Matrix<double, R, C>& v) {
+
19  validate_vector(v,"dot_self");
+
20  return v.squaredNorm();
+
21  }
+
22 
+
23  }
+
24 }
+
25 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/math_2matrix_2exp_8hpp.html b/doc/api/html/math_2matrix_2exp_8hpp.html new file mode 100644 index 00000000000..e31cd9b625f --- /dev/null +++ b/doc/api/html/math_2matrix_2exp_8hpp.html @@ -0,0 +1,130 @@ + + + + + +Stan: src/stan/math/matrix/exp.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
exp.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::math
 Matrices and templated mathematical functions.
 
+ + + + + +

+Functions

template<typename T , int Rows, int Cols>
Eigen::Matrix< T, Rows, Cols > stan::math::exp (const Eigen::Matrix< T, Rows, Cols > &m)
 Return the element-wise exponentiation of the matrix or vector.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/math_2matrix_2exp_8hpp_source.html b/doc/api/html/math_2matrix_2exp_8hpp_source.html new file mode 100644 index 00000000000..9e8f4862ab4 --- /dev/null +++ b/doc/api/html/math_2matrix_2exp_8hpp_source.html @@ -0,0 +1,123 @@ + + + + + +Stan: src/stan/math/matrix/exp.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
exp.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MATH__MATRIX__EXP_HPP__
+
2 #define __STAN__MATH__MATRIX__EXP_HPP__
+
3 
+ +
5 
+
6 namespace stan {
+
7  namespace math {
+
8 
+
15  template<typename T, int Rows, int Cols>
+
16  inline Eigen::Matrix<T,Rows,Cols> exp(const Eigen::Matrix<T,Rows,Cols>& m) {
+
17  return m.array().exp().matrix();
+
18  }
+
19 
+
20  }
+
21 }
+
22 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/math_2matrix_2inverse_8hpp.html b/doc/api/html/math_2matrix_2inverse_8hpp.html new file mode 100644 index 00000000000..60c0cbe7e69 --- /dev/null +++ b/doc/api/html/math_2matrix_2inverse_8hpp.html @@ -0,0 +1,132 @@ + + + + + +Stan: src/stan/math/matrix/inverse.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
inverse.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::math
 Matrices and templated mathematical functions.
 
+ + + + + +

+Functions

template<typename T >
Eigen::Matrix< T,
+Eigen::Dynamic, Eigen::Dynamic > 
stan::math::inverse (const Eigen::Matrix< T, Eigen::Dynamic, Eigen::Dynamic > &m)
 Returns the inverse of the specified matrix.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/math_2matrix_2inverse_8hpp_source.html b/doc/api/html/math_2matrix_2inverse_8hpp_source.html new file mode 100644 index 00000000000..62d0a19c931 --- /dev/null +++ b/doc/api/html/math_2matrix_2inverse_8hpp_source.html @@ -0,0 +1,127 @@ + + + + + +Stan: src/stan/math/matrix/inverse.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
inverse.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MATH__MATRIX__INVERSE_HPP__
+
2 #define __STAN__MATH__MATRIX__INVERSE_HPP__
+
3 
+ + +
6 
+
7 namespace stan {
+
8  namespace math {
+
9 
+
15  template <typename T>
+
16  inline
+
17  Eigen::Matrix<T,Eigen::Dynamic,Eigen::Dynamic>
+
18  inverse(const Eigen::Matrix<T,Eigen::Dynamic,Eigen::Dynamic>& m) {
+
19  validate_square(m,"matrix inverse");
+
20  return m.inverse();
+
21  }
+
22 
+
23  }
+
24 }
+
25 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/math_2matrix_2log_8hpp.html b/doc/api/html/math_2matrix_2log_8hpp.html new file mode 100644 index 00000000000..5ef2c47e27b --- /dev/null +++ b/doc/api/html/math_2matrix_2log_8hpp.html @@ -0,0 +1,130 @@ + + + + + +Stan: src/stan/math/matrix/log.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
log.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::math
 Matrices and templated mathematical functions.
 
+ + + + + +

+Functions

template<typename T , int Rows, int Cols>
Eigen::Matrix< T, Rows, Cols > stan::math::log (const Eigen::Matrix< T, Rows, Cols > &m)
 Return the element-wise logarithm of the matrix or vector.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/math_2matrix_2log_8hpp_source.html b/doc/api/html/math_2matrix_2log_8hpp_source.html new file mode 100644 index 00000000000..da0f8d45fb9 --- /dev/null +++ b/doc/api/html/math_2matrix_2log_8hpp_source.html @@ -0,0 +1,124 @@ + + + + + +Stan: src/stan/math/matrix/log.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
log.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MATH__MATRIX__LOG_HPP__
+
2 #define __STAN__MATH__MATRIX__LOG_HPP__
+
3 
+ +
5 
+
6 namespace stan {
+
7  namespace math {
+
8 
+
15  template<typename T, int Rows, int Cols>
+
16  inline Eigen::Matrix<T,Rows,Cols> log(const Eigen::Matrix<T,Rows,Cols>& m) {
+
17  return m.array().log().matrix();
+
18  }
+
19 
+
20 
+
21  }
+
22 }
+
23 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/math_2matrix_2log__determinant_8hpp.html b/doc/api/html/math_2matrix_2log__determinant_8hpp.html new file mode 100644 index 00000000000..cb0fb6db8ed --- /dev/null +++ b/doc/api/html/math_2matrix_2log__determinant_8hpp.html @@ -0,0 +1,131 @@ + + + + + +Stan: src/stan/math/matrix/log_determinant.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
log_determinant.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::math
 Matrices and templated mathematical functions.
 
+ + + + + +

+Functions

template<typename T , int R, int C>
stan::math::log_determinant (const Eigen::Matrix< T, R, C > &m)
 Returns the log absolute determinant of the specified square matrix.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/math_2matrix_2log__determinant_8hpp_source.html b/doc/api/html/math_2matrix_2log__determinant_8hpp_source.html new file mode 100644 index 00000000000..b3dd0656e7a --- /dev/null +++ b/doc/api/html/math_2matrix_2log__determinant_8hpp_source.html @@ -0,0 +1,125 @@ + + + + + +Stan: src/stan/math/matrix/log_determinant.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
log_determinant.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MATH__MATRIX__LOG_DETERMINANT_HPP__
+
2 #define __STAN__MATH__MATRIX__LOG_DETERMINANT_HPP__
+
3 
+ + +
6 
+
7 namespace stan {
+
8  namespace math {
+
9 
+
17  template <typename T,int R, int C>
+
18  inline T log_determinant(const Eigen::Matrix<T,R,C>& m) {
+
19  stan::math::validate_square(m,"log_determinant");
+
20  return m.colPivHouseholderQr().logAbsDeterminant();
+
21  }
+
22 
+
23  }
+
24 }
+
25 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/math_2matrix_2log__determinant__ldlt_8hpp.html b/doc/api/html/math_2matrix_2log__determinant__ldlt_8hpp.html new file mode 100644 index 00000000000..973707e4146 --- /dev/null +++ b/doc/api/html/math_2matrix_2log__determinant__ldlt_8hpp.html @@ -0,0 +1,129 @@ + + + + + +Stan: src/stan/math/matrix/log_determinant_ldlt.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
log_determinant_ldlt.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::math
 Matrices and templated mathematical functions.
 
+ + + + +

+Functions

template<int R, int C>
double stan::math::log_determinant_ldlt (stan::math::LDLT_factor< double, R, C > &A)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/math_2matrix_2log__determinant__ldlt_8hpp_source.html b/doc/api/html/math_2matrix_2log__determinant__ldlt_8hpp_source.html new file mode 100644 index 00000000000..14993017d25 --- /dev/null +++ b/doc/api/html/math_2matrix_2log__determinant__ldlt_8hpp_source.html @@ -0,0 +1,125 @@ + + + + + +Stan: src/stan/math/matrix/log_determinant_ldlt.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
log_determinant_ldlt.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MATH__MATRIX__LOG_DETERMINANT_LDLT_HPP__
+
2 #define __STAN__MATH__MATRIX__LOG_DETERMINANT_LDLT_HPP__
+
3 
+ +
5 
+
6 namespace stan {
+
7  namespace math {
+
8 
+
9  // Returns log(abs(det(A))) given a LDLT_factor of A
+
10  template<int R, int C>
+
11  inline double
+ +
13  return A.log_abs_det();
+
14  }
+
15 
+
16  }
+
17 }
+
18 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/math_2matrix_2log__determinant__spd_8hpp.html b/doc/api/html/math_2matrix_2log__determinant__spd_8hpp.html new file mode 100644 index 00000000000..b1220c0bdf0 --- /dev/null +++ b/doc/api/html/math_2matrix_2log__determinant__spd_8hpp.html @@ -0,0 +1,132 @@ + + + + + +Stan: src/stan/math/matrix/log_determinant_spd.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
log_determinant_spd.hpp File Reference
+
+
+
#include <cmath>
+#include <stan/math/matrix/Eigen.hpp>
+#include <stan/math/matrix/validate_square.hpp>
+
+

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::math
 Matrices and templated mathematical functions.
 
+ + + + + +

+Functions

template<typename T , int R, int C>
stan::math::log_determinant_spd (const Eigen::Matrix< T, R, C > &m)
 Returns the log absolute determinant of the specified square matrix.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/math_2matrix_2log__determinant__spd_8hpp_source.html b/doc/api/html/math_2matrix_2log__determinant__spd_8hpp_source.html new file mode 100644 index 00000000000..3a59bdcea9e --- /dev/null +++ b/doc/api/html/math_2matrix_2log__determinant__spd_8hpp_source.html @@ -0,0 +1,133 @@ + + + + + +Stan: src/stan/math/matrix/log_determinant_spd.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
log_determinant_spd.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MATH__MATRIX__LOG_DETERMINANT_SPD_HPP__
+
2 #define __STAN__MATH__MATRIX__LOG_DETERMINANT_SPD_HPP__
+
3 
+
4 
+
5 #include <cmath>
+ + +
8 
+
9 namespace stan {
+
10  namespace math {
+
11 
+
19  template <typename T,int R, int C>
+
20  inline T log_determinant_spd(const Eigen::Matrix<T,R,C>& m) {
+
21  using std::log;
+
22  stan::math::validate_square(m,"log_determinant_spd");
+
23 // Eigen::TriangularView< Eigen::Matrix<T,R,C>, Eigen::Lower > L(m.llt().matrixL());
+
24 // T ret(0.0);
+
25 // for (size_t i = 0; i < L.rows(); i++)
+
26 // ret += log(L(i,i));
+
27 // return 2*ret;
+
28  return m.ldlt().vectorD().array().log().sum();
+
29  }
+
30 
+
31  }
+
32 }
+
33 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/math_2matrix_2log__softmax_8hpp.html b/doc/api/html/math_2matrix_2log__softmax_8hpp.html new file mode 100644 index 00000000000..07b2ab4eb32 --- /dev/null +++ b/doc/api/html/math_2matrix_2log__softmax_8hpp.html @@ -0,0 +1,136 @@ + + + + + +Stan: src/stan/math/matrix/log_softmax.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
log_softmax.hpp File Reference
+
+
+
#include <cmath>
+#include <sstream>
+#include <stdexcept>
+#include <stan/math/matrix/Eigen.hpp>
+#include <stan/math/matrix/log_sum_exp.hpp>
+#include <stan/math/matrix/validate_nonzero_size.hpp>
+
+

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::math
 Matrices and templated mathematical functions.
 
+ + + + + +

+Functions

template<typename T >
Eigen::Matrix< T,
+Eigen::Dynamic, 1 > 
stan::math::log_softmax (const Eigen::Matrix< T, Eigen::Dynamic, 1 > &v)
 Return the natural logarithm of the softmax of the specified vector.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/math_2matrix_2log__softmax_8hpp_source.html b/doc/api/html/math_2matrix_2log__softmax_8hpp_source.html new file mode 100644 index 00000000000..30dcd46d4d7 --- /dev/null +++ b/doc/api/html/math_2matrix_2log__softmax_8hpp_source.html @@ -0,0 +1,145 @@ + + + + + +Stan: src/stan/math/matrix/log_softmax.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
log_softmax.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MATH__MATRIX__LOG_SOFTMAX_HPP__
+
2 #define __STAN__MATH__MATRIX__LOG_SOFTMAX_HPP__
+
3 
+
4 #include <cmath>
+
5 #include <sstream>
+
6 #include <stdexcept>
+ + + +
10 
+
11 namespace stan {
+
12  namespace math {
+
13 
+
21  template <typename T>
+
22  inline Eigen::Matrix<T,Eigen::Dynamic,1>
+
23  log_softmax(const Eigen::Matrix<T,Eigen::Dynamic,1>& v) {
+
24  using std::exp;
+
25  using std::log;
+ +
27  stan::math::validate_nonzero_size(v,"vector softmax");
+
28  Eigen::Matrix<T,Eigen::Dynamic,1> theta(v.size());
+
29  T z = log_sum_exp(v);
+
30  for (int i = 0; i < v.size(); ++i)
+
31  theta(i) = v(i) - z;
+
32  return theta;
+
33  // T sum(0.0);
+
34  // T max_v = v.maxCoeff();
+
35  // for (int i = 0; i < v.size(); ++i)
+
36  // sum += exp(v(i) - max_v); // log_sum_exp trick
+
37  // T log_sum = log(sum);
+
38  // for (int i = 0; i < v.size(); ++i)
+
39  // theta(i) = (v(i) - max_v) - log_sum;
+
40  // return theta;
+
41  }
+
42 
+
43  }
+
44 }
+
45 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/math_2matrix_2log__sum__exp_8hpp.html b/doc/api/html/math_2matrix_2log__sum__exp_8hpp.html new file mode 100644 index 00000000000..0b4c590eb8d --- /dev/null +++ b/doc/api/html/math_2matrix_2log__sum__exp_8hpp.html @@ -0,0 +1,134 @@ + + + + + +Stan: src/stan/math/matrix/log_sum_exp.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
log_sum_exp.hpp File Reference
+
+
+
#include <limits>
+#include <vector>
+#include <boost/math/tools/promotion.hpp>
+#include <stan/math/functions/log1p.hpp>
+#include <stan/math/matrix/Eigen.hpp>
+
+

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::math
 Matrices and templated mathematical functions.
 
+ + + + + +

+Functions

template<typename T , int R, int C>
stan::math::log_sum_exp (const Eigen::Matrix< T, R, C > &x)
 Return the log of the sum of the exponentiated values of the specified matrix of values.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/math_2matrix_2log__sum__exp_8hpp_source.html b/doc/api/html/math_2matrix_2log__sum__exp_8hpp_source.html new file mode 100644 index 00000000000..7956d7e12b2 --- /dev/null +++ b/doc/api/html/math_2matrix_2log__sum__exp_8hpp_source.html @@ -0,0 +1,143 @@ + + + + + +Stan: src/stan/math/matrix/log_sum_exp.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
log_sum_exp.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MATH__MATRIX__LOG_SUM_EXP_HPP__
+
2 #define __STAN__MATH__MATRIX__LOG_SUM_EXP_HPP__
+
3 
+
4 #include <limits>
+
5 #include <vector>
+
6 #include <boost/math/tools/promotion.hpp>
+ + +
9 
+
10 
+
11 namespace stan {
+
12 
+
13  namespace math {
+
14 
+
28  template <typename T, int R, int C>
+
29  T log_sum_exp(const Eigen::Matrix<T,R,C>& x) {
+
30  using std::numeric_limits;
+
31  using std::log;
+
32  using std::exp;
+
33  T max = -numeric_limits<T>::infinity();
+
34  for (int i = 0; i < x.size(); i++)
+
35  if (x(i) > max)
+
36  max = x(i);
+
37 
+
38  T sum = 0.0;
+
39  for (int i = 0; i < x.size(); i++)
+
40  if (x(i) != -numeric_limits<double>::infinity())
+
41  sum += exp(x(i) - max);
+
42 
+
43  return max + log(sum);
+
44  }
+
45 
+
46  }
+
47 }
+
48 
+
49 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/math_2matrix_2mdivide__left_8hpp.html b/doc/api/html/math_2matrix_2mdivide__left_8hpp.html new file mode 100644 index 00000000000..2e41303a006 --- /dev/null +++ b/doc/api/html/math_2matrix_2mdivide__left_8hpp.html @@ -0,0 +1,136 @@ + + + + + +Stan: src/stan/math/matrix/mdivide_left.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
mdivide_left.hpp File Reference
+
+
+
#include <boost/math/tools/promotion.hpp>
+#include <stan/math/matrix/Eigen.hpp>
+#include <stan/math/matrix/promote_common.hpp>
+#include <stan/math/matrix/validate_multiplicable.hpp>
+#include <stan/math/matrix/validate_square.hpp>
+
+

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::math
 Matrices and templated mathematical functions.
 
+ + + + + +

+Functions

template<typename T1 , typename T2 , int R1, int C1, int R2, int C2>
Eigen::Matrix< typename
+boost::math::tools::promote_args
+< T1, T2 >::type, R1, C2 > 
stan::math::mdivide_left (const Eigen::Matrix< T1, R1, C1 > &A, const Eigen::Matrix< T2, R2, C2 > &b)
 Returns the solution of the system Ax=b.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/math_2matrix_2mdivide__left_8hpp_source.html b/doc/api/html/math_2matrix_2mdivide__left_8hpp_source.html new file mode 100644 index 00000000000..ae6be09a79c --- /dev/null +++ b/doc/api/html/math_2matrix_2mdivide__left_8hpp_source.html @@ -0,0 +1,136 @@ + + + + + +Stan: src/stan/math/matrix/mdivide_left.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
mdivide_left.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MATH__MATRIX__MDIVIDE_LEFT_HPP__
+
2 #define __STAN__MATH__MATRIX__MDIVIDE_LEFT_HPP__
+
3 
+
4 #include <boost/math/tools/promotion.hpp>
+ + + + +
9 
+
10 namespace stan {
+
11  namespace math {
+
12 
+
21  template <typename T1, typename T2, int R1, int C1, int R2, int C2>
+
22  inline
+
23  Eigen::Matrix<typename boost::math::tools::promote_args<T1,T2>::type,R1,C2>
+
24  mdivide_left(const Eigen::Matrix<T1,R1,C1> &A,
+
25  const Eigen::Matrix<T2,R2,C2> &b) {
+
26  stan::math::validate_square(A,"mdivide_left");
+
27  stan::math::validate_multiplicable(A,b,"mdivide_left");
+
28  return promote_common<Eigen::Matrix<T1,R1,C1>,
+
29  Eigen::Matrix<T2,R1,C1> >(A)
+
30  .lu()
+
31  .solve( promote_common<Eigen::Matrix<T1,R2,C2>,
+
32  Eigen::Matrix<T2,R2,C2> >(b) );
+
33  }
+
34 
+
35  }
+
36 }
+
37 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/math_2matrix_2mdivide__left__ldlt_8hpp.html b/doc/api/html/math_2matrix_2mdivide__left__ldlt_8hpp.html new file mode 100644 index 00000000000..83267cef373 --- /dev/null +++ b/doc/api/html/math_2matrix_2mdivide__left__ldlt_8hpp.html @@ -0,0 +1,132 @@ + + + + + +Stan: src/stan/math/matrix/mdivide_left_ldlt.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
mdivide_left_ldlt.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::math
 Matrices and templated mathematical functions.
 
+ + + + + +

+Functions

template<int R1, int C1, int R2, int C2>
Eigen::Matrix< double, R1, C2 > stan::math::mdivide_left_ldlt (const stan::math::LDLT_factor< double, R1, C1 > &A, const Eigen::Matrix< double, R2, C2 > &b)
 Returns the solution of the system Ax=b given an LDLT_factor of A.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/math_2matrix_2mdivide__left__ldlt_8hpp_source.html b/doc/api/html/math_2matrix_2mdivide__left__ldlt_8hpp_source.html new file mode 100644 index 00000000000..af222199c48 --- /dev/null +++ b/doc/api/html/math_2matrix_2mdivide__left__ldlt_8hpp_source.html @@ -0,0 +1,129 @@ + + + + + +Stan: src/stan/math/matrix/mdivide_left_ldlt.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
mdivide_left_ldlt.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MATH__MATRIX__MDIVIDE_LEFT_LDLT_HPP__
+
2 #define __STAN__MATH__MATRIX__MDIVIDE_LEFT_LDLT_HPP__
+
3 
+ + + +
7 
+
8 namespace stan {
+
9  namespace math {
+
10 
+
19  template <int R1,int C1,int R2,int C2>
+
20  inline Eigen::Matrix<double,R1,C2>
+
21  mdivide_left_ldlt(const stan::math::LDLT_factor<double,R1,C1> &A,
+
22  const Eigen::Matrix<double,R2,C2> &b) {
+
23  stan::math::validate_multiplicable(A,b,"mdivide_left_ldlt");
+
24 
+
25  return A.solve(b);
+
26  }
+
27 
+
28  }
+
29 }
+
30 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/math_2matrix_2mdivide__left__spd_8hpp.html b/doc/api/html/math_2matrix_2mdivide__left__spd_8hpp.html new file mode 100644 index 00000000000..8728e440daa --- /dev/null +++ b/doc/api/html/math_2matrix_2mdivide__left__spd_8hpp.html @@ -0,0 +1,136 @@ + + + + + +Stan: src/stan/math/matrix/mdivide_left_spd.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
mdivide_left_spd.hpp File Reference
+
+
+
#include <boost/math/tools/promotion.hpp>
+#include <stan/math/matrix/Eigen.hpp>
+#include <stan/math/matrix/promote_common.hpp>
+#include <stan/math/matrix/validate_multiplicable.hpp>
+#include <stan/math/matrix/validate_square.hpp>
+
+

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::math
 Matrices and templated mathematical functions.
 
+ + + + + +

+Functions

template<typename T1 , typename T2 , int R1, int C1, int R2, int C2>
Eigen::Matrix< typename
+boost::math::tools::promote_args
+< T1, T2 >::type, R1, C2 > 
stan::math::mdivide_left_spd (const Eigen::Matrix< T1, R1, C1 > &A, const Eigen::Matrix< T2, R2, C2 > &b)
 Returns the solution of the system Ax=b where A is symmetric positive definite.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/math_2matrix_2mdivide__left__spd_8hpp_source.html b/doc/api/html/math_2matrix_2mdivide__left__spd_8hpp_source.html new file mode 100644 index 00000000000..9f9e00a586d --- /dev/null +++ b/doc/api/html/math_2matrix_2mdivide__left__spd_8hpp_source.html @@ -0,0 +1,136 @@ + + + + + +Stan: src/stan/math/matrix/mdivide_left_spd.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
mdivide_left_spd.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MATH__MATRIX__MDIVIDE_LEFT_SPD_HPP__
+
2 #define __STAN__MATH__MATRIX__MDIVIDE_LEFT_SPD_HPP__
+
3 
+
4 #include <boost/math/tools/promotion.hpp>
+ + + + +
9 
+
10 namespace stan {
+
11  namespace math {
+
12 
+
22  template <typename T1, typename T2, int R1, int C1, int R2, int C2>
+
23  inline
+
24  Eigen::Matrix<typename boost::math::tools::promote_args<T1,T2>::type,R1,C2>
+
25  mdivide_left_spd(const Eigen::Matrix<T1,R1,C1> &A,
+
26  const Eigen::Matrix<T2,R2,C2> &b) {
+
27  stan::math::validate_square(A,"mdivide_left_spd");
+
28  stan::math::validate_multiplicable(A,b,"mdivide_left_spd");
+
29  return promote_common<Eigen::Matrix<T1,R1,C1>,
+
30  Eigen::Matrix<T2,R1,C1> >(A)
+
31  .llt()
+
32  .solve( promote_common<Eigen::Matrix<T1,R2,C2>,
+
33  Eigen::Matrix<T2,R2,C2> >(b) );
+
34  }
+
35 
+
36  }
+
37 }
+
38 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/math_2matrix_2mdivide__left__tri_8hpp.html b/doc/api/html/math_2matrix_2mdivide__left__tri_8hpp.html new file mode 100644 index 00000000000..b4ad5038a32 --- /dev/null +++ b/doc/api/html/math_2matrix_2mdivide__left__tri_8hpp.html @@ -0,0 +1,140 @@ + + + + + +Stan: src/stan/math/matrix/mdivide_left_tri.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
mdivide_left_tri.hpp File Reference
+
+
+
#include <boost/math/tools/promotion.hpp>
+#include <stan/math/matrix/Eigen.hpp>
+#include <stan/math/matrix/promote_common.hpp>
+#include <stan/math/matrix/validate_multiplicable.hpp>
+#include <stan/math/matrix/validate_square.hpp>
+
+

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::math
 Matrices and templated mathematical functions.
 
+ + + + + + + + + +

+Functions

template<int TriView, typename T1 , typename T2 , int R1, int C1, int R2, int C2>
Eigen::Matrix< typename
+boost::math::tools::promote_args
+< T1, T2 >::type, R1, C2 > 
stan::math::mdivide_left_tri (const Eigen::Matrix< T1, R1, C1 > &A, const Eigen::Matrix< T2, R2, C2 > &b)
 Returns the solution of the system Ax=b when A is triangular.
 
template<int TriView, typename T , int R1, int C1>
Eigen::Matrix< T, R1, C1 > stan::math::mdivide_left_tri (const Eigen::Matrix< T, R1, C1 > &A)
 Returns the solution of the system Ax=b when A is triangular and b=I.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/math_2matrix_2mdivide__left__tri_8hpp_source.html b/doc/api/html/math_2matrix_2mdivide__left__tri_8hpp_source.html new file mode 100644 index 00000000000..f03726d7562 --- /dev/null +++ b/doc/api/html/math_2matrix_2mdivide__left__tri_8hpp_source.html @@ -0,0 +1,149 @@ + + + + + +Stan: src/stan/math/matrix/mdivide_left_tri.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
mdivide_left_tri.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MATH__MATRIX__MDIVIDE_LEFT_TRI_HPP__
+
2 #define __STAN__MATH__MATRIX__MDIVIDE_LEFT_TRI_HPP__
+
3 
+
4 #include <boost/math/tools/promotion.hpp>
+ + + + +
9 
+
10 namespace stan {
+
11  namespace math {
+
12 
+
22  template <int TriView, typename T1, typename T2,
+
23  int R1, int C1, int R2, int C2>
+
24  inline
+
25  Eigen::Matrix<typename boost::math::tools::promote_args<T1,T2>::type,
+
26  R1,C2>
+
27  mdivide_left_tri(const Eigen::Matrix<T1,R1,C1> &A,
+
28  const Eigen::Matrix<T2,R2,C2> &b) {
+
29  stan::math::validate_square(A,"mdivide_left_tri");
+
30  stan::math::validate_multiplicable(A,b,"mdivide_left_tri");
+
31  return promote_common<Eigen::Matrix<T1,R1,C1>,Eigen::Matrix<T2,R1,C1> >(A)
+
32  .template triangularView<TriView>()
+
33  .solve( promote_common<Eigen::Matrix<T1,R2,C2>,
+
34  Eigen::Matrix<T2,R2,C2> >(b) );
+
35  }
+
36 
+
44  template<int TriView, typename T,int R1, int C1>
+
45  inline
+
46  Eigen::Matrix<T,R1,C1>
+
47  mdivide_left_tri(const Eigen::Matrix<T,R1,C1> &A) {
+
48  stan::math::validate_square(A,"mdivide_left_tri");
+
49  int n = A.rows();
+
50  Eigen::Matrix<T,Eigen::Dynamic,Eigen::Dynamic> b;
+
51  b.setIdentity(n,n);
+
52  A.template triangularView<TriView>().solveInPlace(b);
+
53  return b;
+
54  }
+
55 
+
56  }
+
57 }
+
58 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/math_2matrix_2mdivide__left__tri__low_8hpp.html b/doc/api/html/math_2matrix_2mdivide__left__tri__low_8hpp.html new file mode 100644 index 00000000000..7f4d12e4313 --- /dev/null +++ b/doc/api/html/math_2matrix_2mdivide__left__tri__low_8hpp.html @@ -0,0 +1,136 @@ + + + + + +Stan: src/stan/math/matrix/mdivide_left_tri_low.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
mdivide_left_tri_low.hpp File Reference
+
+
+
#include <boost/math/tools/promotion.hpp>
+#include <stan/math/matrix/Eigen.hpp>
+#include <stan/math/matrix/mdivide_left_tri.hpp>
+
+

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::math
 Matrices and templated mathematical functions.
 
+ + + + + + + +

+Functions

template<typename T1 , typename T2 , int R1, int C1, int R2, int C2>
Eigen::Matrix< typename
+boost::math::tools::promote_args
+< T1, T2 >::type, R1, C2 > 
stan::math::mdivide_left_tri_low (const Eigen::Matrix< T1, R1, C1 > &A, const Eigen::Matrix< T2, R2, C2 > &b)
 
template<typename T , int R1, int C1>
Eigen::Matrix< T, R1, C1 > stan::math::mdivide_left_tri_low (const Eigen::Matrix< T, R1, C1 > &A)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/math_2matrix_2mdivide__left__tri__low_8hpp_source.html b/doc/api/html/math_2matrix_2mdivide__left__tri__low_8hpp_source.html new file mode 100644 index 00000000000..1dcb01ffdda --- /dev/null +++ b/doc/api/html/math_2matrix_2mdivide__left__tri__low_8hpp_source.html @@ -0,0 +1,149 @@ + + + + + +Stan: src/stan/math/matrix/mdivide_left_tri_low.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
mdivide_left_tri_low.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MATH__MATRIX__MDIVIDE_LEFT_TRI_LOW_HPP__
+
2 #define __STAN__MATH__MATRIX__MDIVIDE_LEFT_TRI_LOW_HPP__
+
3 
+
4 #include <boost/math/tools/promotion.hpp>
+ + +
7 
+
8 namespace stan {
+
9  namespace math {
+
10 
+
11  template <typename T1, typename T2, int R1,int C1,int R2,int C2>
+
12  inline
+
13  Eigen::Matrix<typename boost::math::tools::promote_args<T1,T2>::type,
+
14  R1,C2>
+
15  mdivide_left_tri_low(const Eigen::Matrix<T1,R1,C1> &A,
+
16  const Eigen::Matrix<T2,R2,C2> &b) {
+
17 // stan::math::validate_square(A,"mdivide_left_tri_low/2");
+
18 // stan::math::validate_multiplicable(A,b,"mdivide_left_tri_low");
+
19 // return promote_common<Eigen::Matrix<T1,R1,C1>,
+
20 // Eigen::Matrix<T2,R1,C1> >(A)
+
21 // .template triangularView<Eigen::Lower>()
+
22 // .solve( promote_common<Eigen::Matrix<T1,R2,C2>,
+
23 // Eigen::Matrix<T2,R2,C2> >(b) );
+
24  return mdivide_left_tri<Eigen::Lower,T1,T2,R1,C1,R2,C2>(A,b);
+
25  }
+
26  template <typename T,int R1, int C1>
+
27  inline
+
28  Eigen::Matrix<T,R1,C1>
+ +
30  Eigen::Matrix<T,R1,C1> &A) {
+
31 // stan::math::validate_square(A,"mdivide_left_tri_low/1");
+
32 // int n = A.rows();
+
33 // Eigen::Matrix<T,Eigen::Dynamic,Eigen::Dynamic> b;
+
34 // b.setIdentity(n,n);
+
35 // A.template triangularView<Eigen::Lower>().solveInPlace(b);
+
36 // return b;
+
37  return mdivide_left_tri<Eigen::Lower,T,R1,C1>(A);
+
38  }
+
39 
+
40  }
+
41 }
+
42 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/math_2matrix_2mdivide__right_8hpp.html b/doc/api/html/math_2matrix_2mdivide__right_8hpp.html new file mode 100644 index 00000000000..4147b70b302 --- /dev/null +++ b/doc/api/html/math_2matrix_2mdivide__right_8hpp.html @@ -0,0 +1,137 @@ + + + + + +Stan: src/stan/math/matrix/mdivide_right.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
mdivide_right.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::math
 Matrices and templated mathematical functions.
 
+ + + + + +

+Functions

template<typename T1 , typename T2 , int R1, int C1, int R2, int C2>
Eigen::Matrix< typename
+boost::math::tools::promote_args
+< T1, T2 >::type, R1, C2 > 
stan::math::mdivide_right (const Eigen::Matrix< T1, R1, C1 > &b, const Eigen::Matrix< T2, R2, C2 > &A)
 Returns the solution of the system Ax=b.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/math_2matrix_2mdivide__right_8hpp_source.html b/doc/api/html/math_2matrix_2mdivide__right_8hpp_source.html new file mode 100644 index 00000000000..802c374c0b0 --- /dev/null +++ b/doc/api/html/math_2matrix_2mdivide__right_8hpp_source.html @@ -0,0 +1,142 @@ + + + + + +Stan: src/stan/math/matrix/mdivide_right.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
mdivide_right.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MATH__MATRIX__MDIVIDE_RIGHT_HPP__
+
2 #define __STAN__MATH__MATRIX__MDIVIDE_RIGHT_HPP__
+
3 
+
4 #include <boost/math/tools/promotion.hpp>
+ + + + + +
10 
+
11 namespace stan {
+
12  namespace math {
+
13 
+
22  template <typename T1, typename T2, int R1, int C1, int R2, int C2>
+
23  inline
+
24  Eigen::Matrix<typename boost::math::tools::promote_args<T1,T2>::type,R1,C2>
+
25  mdivide_right(const Eigen::Matrix<T1,R1,C1> &b,
+
26  const Eigen::Matrix<T2,R2,C2> &A) {
+
27  stan::math::validate_square(A,"mdivide_right");
+
28  stan::math::validate_multiplicable(b,A,"mdivide_right");
+
29  // FIXME: This is nice and general but likely slow.
+ +
31 // return promote_common<Eigen::Matrix<T1,R2,C2>,
+
32 // Eigen::Matrix<T2,R2,C2> >(A)
+
33 // .transpose()
+
34 // .lu()
+
35 // .solve(promote_common<Eigen::Matrix<T1,R1,C1>,
+
36 // Eigen::Matrix<T2,R1,C1> >(b)
+
37 // .transpose())
+
38 // .transpose();
+
39  }
+
40 
+
41  }
+
42 }
+
43 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/math_2matrix_2mdivide__right__tri__low_8hpp.html b/doc/api/html/math_2matrix_2mdivide__right__tri__low_8hpp.html new file mode 100644 index 00000000000..77cc03bfddd --- /dev/null +++ b/doc/api/html/math_2matrix_2mdivide__right__tri__low_8hpp.html @@ -0,0 +1,135 @@ + + + + + +Stan: src/stan/math/matrix/mdivide_right_tri_low.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
mdivide_right_tri_low.hpp File Reference
+
+
+
#include <boost/math/tools/promotion.hpp>
+#include <stan/math/matrix/Eigen.hpp>
+#include <stan/math/matrix/mdivide_right_tri.hpp>
+#include <stan/math/matrix/promote_common.hpp>
+
+

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::math
 Matrices and templated mathematical functions.
 
+ + + + + +

+Functions

template<typename T1 , typename T2 , int R1, int C1, int R2, int C2>
Eigen::Matrix< typename
+boost::math::tools::promote_args
+< T1, T2 >::type, R1, C2 > 
stan::math::mdivide_right_tri_low (const Eigen::Matrix< T1, R1, C1 > &b, const Eigen::Matrix< T2, R2, C2 > &A)
 Returns the solution of the system tri(A)x=b when tri(A) is a lower triangular view of the matrix A.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/math_2matrix_2mdivide__right__tri__low_8hpp_source.html b/doc/api/html/math_2matrix_2mdivide__right__tri__low_8hpp_source.html new file mode 100644 index 00000000000..f28ce578e26 --- /dev/null +++ b/doc/api/html/math_2matrix_2mdivide__right__tri__low_8hpp_source.html @@ -0,0 +1,133 @@ + + + + + +Stan: src/stan/math/matrix/mdivide_right_tri_low.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
mdivide_right_tri_low.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MATH__MATRIX__MDIVIDE_RIGHT_TRI_LOW_HPP__
+
2 #define __STAN__MATH__MATRIX__MDIVIDE_RIGHT_TRI_LOW_HPP__
+
3 
+
4 #include <boost/math/tools/promotion.hpp>
+ + + +
8 
+
9 namespace stan {
+
10  namespace math {
+
11 
+
21  template <typename T1, typename T2, int R1,int C1,int R2,int C2>
+
22  inline
+
23  Eigen::Matrix<typename boost::math::tools::promote_args<T1,T2>::type,R1,C2>
+
24  mdivide_right_tri_low(const Eigen::Matrix<T1,R1,C1> &b,
+
25  const Eigen::Matrix<T2,R2,C2> &A) {
+
26  return mdivide_right_tri<Eigen::Lower>
+
27  (promote_common<Eigen::Matrix<T1,R1,C1>,
+
28  Eigen::Matrix<T2,R1,C1> >(b),
+
29  promote_common<Eigen::Matrix<T1,R2,C2>,
+
30  Eigen::Matrix<T2,R2,C2> >(A));
+
31  }
+
32 
+
33  }
+
34 }
+
35 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/math_2matrix_2multiply_8hpp.html b/doc/api/html/math_2matrix_2multiply_8hpp.html new file mode 100644 index 00000000000..3a2cbc96459 --- /dev/null +++ b/doc/api/html/math_2matrix_2multiply_8hpp.html @@ -0,0 +1,152 @@ + + + + + +Stan: src/stan/math/matrix/multiply.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
multiply.hpp File Reference
+
+
+
#include <boost/type_traits/is_arithmetic.hpp>
+#include <boost/utility/enable_if.hpp>
+#include <stan/math/matrix/Eigen.hpp>
+#include <stan/math/matrix/validate_matching_sizes.hpp>
+#include <stan/math/matrix/validate_multiplicable.hpp>
+
+

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::math
 Matrices and templated mathematical functions.
 
+ + + + + + + + + + + + + + + + + +

+Functions

template<int R, int C, typename T >
boost::enable_if_c
+< boost::is_arithmetic< T >
+::value, Eigen::Matrix< double,
+R, C > >::type 
stan::math::multiply (const Eigen::Matrix< double, R, C > &m, T c)
 Return specified matrix multiplied by specified scalar.
 
template<int R, int C, typename T >
boost::enable_if_c
+< boost::is_arithmetic< T >
+::value, Eigen::Matrix< double,
+R, C > >::type 
stan::math::multiply (T c, const Eigen::Matrix< double, R, C > &m)
 Return specified scalar multiplied by specified matrix.
 
template<int R1, int C1, int R2, int C2>
Eigen::Matrix< double, R1, C2 > stan::math::multiply (const Eigen::Matrix< double, R1, C1 > &m1, const Eigen::Matrix< double, R2, C2 > &m2)
 Return the product of the specified matrices.
 
template<int C1, int R2>
double stan::math::multiply (const Eigen::Matrix< double, 1, C1 > &rv, const Eigen::Matrix< double, R2, 1 > &v)
 Return the scalar product of the specified row vector and specified column vector.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/math_2matrix_2multiply_8hpp_source.html b/doc/api/html/math_2matrix_2multiply_8hpp_source.html new file mode 100644 index 00000000000..37b39267b65 --- /dev/null +++ b/doc/api/html/math_2matrix_2multiply_8hpp_source.html @@ -0,0 +1,160 @@ + + + + + +Stan: src/stan/math/matrix/multiply.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
multiply.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MATH__MATRIX__MULTIPLY_HPP__
+
2 #define __STAN__MATH__MATRIX__MULTIPLY_HPP__
+
3 
+
4 #include <boost/type_traits/is_arithmetic.hpp>
+
5 #include <boost/utility/enable_if.hpp>
+ + + +
9 
+
10 namespace stan {
+
11  namespace math {
+
12 
+
21  template <int R, int C, typename T>
+
22  inline
+
23  typename boost::enable_if_c<boost::is_arithmetic<T>::value,
+
24  Eigen::Matrix<double, R, C> >::type
+
25  multiply(const Eigen::Matrix<double, R, C>& m,
+
26  T c) {
+
27  return c * m;
+
28  }
+
29 
+
30  // FIXME: apply above pattern everywhere below to remove
+
31  // extra defs, etc.
+
32 
+
41  template <int R, int C, typename T>
+
42  inline
+
43  typename boost::enable_if_c<boost::is_arithmetic<T>::value,
+
44  Eigen::Matrix<double, R, C> >::type
+
45  multiply(T c,
+
46  const Eigen::Matrix<double,R,C>& m) {
+
47  return c * m;
+
48  }
+
49 
+
60  template<int R1,int C1,int R2,int C2>
+
61  inline Eigen::Matrix<double,R1,C2> multiply(const Eigen::Matrix<double,R1,C1>& m1,
+
62  const Eigen::Matrix<double,R2,C2>& m2) {
+
63 
+
64  validate_multiplicable(m1,m2,"multiply");
+
65  return m1*m2;
+
66  }
+
67 
+
77  template<int C1,int R2>
+
78  inline double multiply(const Eigen::Matrix<double,1,C1>& rv,
+
79  const Eigen::Matrix<double,R2,1>& v) {
+
80  stan::math::validate_matching_sizes(rv,v,"multiply");
+
81  if (rv.size() != v.size())
+
82  throw std::domain_error("rv.size() != v.size()");
+
83  return rv.dot(v);
+
84  }
+
85 
+
86  }
+
87 }
+
88 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/math_2matrix_2multiply__lower__tri__self__transpose_8hpp.html b/doc/api/html/math_2matrix_2multiply__lower__tri__self__transpose_8hpp.html new file mode 100644 index 00000000000..9ee7cf78871 --- /dev/null +++ b/doc/api/html/math_2matrix_2multiply__lower__tri__self__transpose_8hpp.html @@ -0,0 +1,129 @@ + + + + + +Stan: src/stan/math/matrix/multiply_lower_tri_self_transpose.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
multiply_lower_tri_self_transpose.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::math
 Matrices and templated mathematical functions.
 
+ + + + +

+Functions

matrix_d stan::math::multiply_lower_tri_self_transpose (const matrix_d &L)
 Returns the result of multiplying the lower triangular portion of the input matrix by its own transpose.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/math_2matrix_2multiply__lower__tri__self__transpose_8hpp_source.html b/doc/api/html/math_2matrix_2multiply__lower__tri__self__transpose_8hpp_source.html new file mode 100644 index 00000000000..90e8e8144e5 --- /dev/null +++ b/doc/api/html/math_2matrix_2multiply__lower__tri__self__transpose_8hpp_source.html @@ -0,0 +1,133 @@ + + + + + +Stan: src/stan/math/matrix/multiply_lower_tri_self_transpose.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
multiply_lower_tri_self_transpose.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MATH__MATRIX__MULTIPLY_LOWER_TRI_SELF_HPP__
+
2 #define __STAN__MATH__MATRIX__MULTIPLY_LOWER_TRI_SELF_HPP__
+
3 
+ +
5 
+
6 namespace stan {
+
7  namespace math {
+
8 
+
17  inline matrix_d
+ +
19  if (L.rows() == 0)
+
20  return matrix_d(0,0);
+
21  if (L.rows() == 1) {
+
22  matrix_d result(1,1);
+
23  result(0,0) = L(0,0) * L(0,0);
+
24  return result;
+
25  }
+
26  // FIXME: write custom following agrad/matrix because can't get L_tri into
+
27  // multiplication as no template support for tri * tri
+
28  matrix_d L_tri = L.transpose().triangularView<Eigen::Upper>();
+
29  return L.triangularView<Eigen::Lower>() * L_tri;
+
30  }
+
31 
+
32  }
+
33 }
+
34 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/math_2matrix_2quad__form_8hpp.html b/doc/api/html/math_2matrix_2quad__form_8hpp.html new file mode 100644 index 00000000000..dabc8b9ee10 --- /dev/null +++ b/doc/api/html/math_2matrix_2quad__form_8hpp.html @@ -0,0 +1,144 @@ + + + + + +Stan: src/stan/math/matrix/quad_form.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
quad_form.hpp File Reference
+
+
+
#include <boost/utility/enable_if.hpp>
+#include <boost/type_traits.hpp>
+#include <stan/math/matrix/Eigen.hpp>
+#include <stan/math/matrix/validate_multiplicable.hpp>
+#include <stan/math/matrix/validate_square.hpp>
+#include <stan/math/matrix/validate_symmetric.hpp>
+
+

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::math
 Matrices and templated mathematical functions.
 
+ + + + + + + + + + + + + + +

+Functions

template<int RA, int CA, int RB, int CB>
Eigen::Matrix< double, CB, CB > stan::math::quad_form (const Eigen::Matrix< double, RA, CA > &A, const Eigen::Matrix< double, RB, CB > &B)
 Compute B^T A B.
 
template<int RA, int CA, int RB>
double stan::math::quad_form (const Eigen::Matrix< double, RA, CA > &A, const Eigen::Matrix< double, RB, 1 > &B)
 
template<int RA, int CA, int RB, int CB>
Eigen::Matrix< double, CB, CB > stan::math::quad_form_sym (const Eigen::Matrix< double, RA, CA > &A, const Eigen::Matrix< double, RB, CB > &B)
 
template<int RA, int CA, int RB>
double stan::math::quad_form_sym (const Eigen::Matrix< double, RA, CA > &A, const Eigen::Matrix< double, RB, 1 > &B)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/math_2matrix_2quad__form_8hpp_source.html b/doc/api/html/math_2matrix_2quad__form_8hpp_source.html new file mode 100644 index 00000000000..eb1f9f1e4e9 --- /dev/null +++ b/doc/api/html/math_2matrix_2quad__form_8hpp_source.html @@ -0,0 +1,166 @@ + + + + + +Stan: src/stan/math/matrix/quad_form.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
quad_form.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MATH__MATRIX__QUAD_FORM_HPP__
+
2 #define __STAN__MATH__MATRIX__QUAD_FORM_HPP__
+
3 
+
4 #include <boost/utility/enable_if.hpp>
+
5 #include <boost/type_traits.hpp>
+ + + + +
10 
+
11 namespace stan {
+
12  namespace math {
+
16  template<int RA,int CA,int RB,int CB>
+
17  inline Eigen::Matrix<double,CB,CB>
+
18  quad_form(const Eigen::Matrix<double,RA,CA> &A,
+
19  const Eigen::Matrix<double,RB,CB> &B)
+
20  {
+
21  validate_square(A,"quad_form");
+
22  validate_multiplicable(A,B,"quad_form");
+
23  return B.transpose()*A*B;
+
24  }
+
25 
+
26  template<int RA,int CA,int RB>
+
27  inline double
+
28  quad_form(const Eigen::Matrix<double,RA,CA> &A,
+
29  const Eigen::Matrix<double,RB,1> &B)
+
30  {
+
31  validate_square(A,"quad_form");
+
32  validate_multiplicable(A,B,"quad_form");
+
33  return B.dot(A*B);
+
34  }
+
35 
+
36  template<int RA,int CA,int RB,int CB>
+
37  inline Eigen::Matrix<double,CB,CB>
+
38  quad_form_sym(const Eigen::Matrix<double,RA,CA> &A,
+
39  const Eigen::Matrix<double,RB,CB> &B)
+
40  {
+
41  validate_square(A,"quad_form_sym");
+
42  validate_multiplicable(A,B,"quad_form_sym");
+
43  validate_symmetric(A,"quad_form_sym");
+
44  Eigen::Matrix<double,CB,CB> ret(B.transpose()*A*B);
+
45  return 0.5*(ret + ret.transpose());
+
46  }
+
47 
+
48  template<int RA,int CA,int RB>
+
49  inline double
+
50  quad_form_sym(const Eigen::Matrix<double,RA,CA> &A,
+
51  const Eigen::Matrix<double,RB,1> &B)
+
52  {
+
53  validate_square(A,"quad_form_sym");
+
54  validate_multiplicable(A,B,"quad_form_sym");
+
55  validate_symmetric(A,"quad_form_sym");
+
56  return B.dot(A*B);
+
57  }
+
58  }
+
59 }
+
60 
+
61 #endif
+
62 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/math_2matrix_2rows__dot__product_8hpp.html b/doc/api/html/math_2matrix_2rows__dot__product_8hpp.html new file mode 100644 index 00000000000..041fafe3d5a --- /dev/null +++ b/doc/api/html/math_2matrix_2rows__dot__product_8hpp.html @@ -0,0 +1,132 @@ + + + + + +Stan: src/stan/math/matrix/rows_dot_product.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
rows_dot_product.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::math
 Matrices and templated mathematical functions.
 
+ + + + + +

+Functions

template<int R1, int C1, int R2, int C2>
Eigen::Matrix< double, R1, 1 > stan::math::rows_dot_product (const Eigen::Matrix< double, R1, C1 > &v1, const Eigen::Matrix< double, R2, C2 > &v2)
 Returns the dot product of the specified vectors.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/math_2matrix_2rows__dot__product_8hpp_source.html b/doc/api/html/math_2matrix_2rows__dot__product_8hpp_source.html new file mode 100644 index 00000000000..17ac764e1a8 --- /dev/null +++ b/doc/api/html/math_2matrix_2rows__dot__product_8hpp_source.html @@ -0,0 +1,132 @@ + + + + + +Stan: src/stan/math/matrix/rows_dot_product.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
rows_dot_product.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MATH__MATRIX__ROWS_DOT_PRODUCT_HPP__
+
2 #define __STAN__MATH__MATRIX__ROWS_DOT_PRODUCT_HPP__
+
3 
+ + + +
7 
+
8 namespace stan {
+
9  namespace math {
+
10 
+
20  template<int R1,int C1,int R2, int C2>
+
21  inline Eigen::Matrix<double, R1, 1>
+
22  rows_dot_product(const Eigen::Matrix<double, R1, C1>& v1,
+
23  const Eigen::Matrix<double, R2, C2>& v2) {
+
24  validate_matching_sizes(v1,v2,"rows_dot_product");
+
25  Eigen::Matrix<double, R1, 1> ret(v1.rows(),1);
+
26  for (size_type j = 0; j < v1.rows(); ++j) {
+
27  ret(j) = v1.row(j).dot(v2.row(j));
+
28  }
+
29  return ret;
+
30  }
+
31 
+
32  }
+
33 }
+
34 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/math_2matrix_2rows__dot__self_8hpp.html b/doc/api/html/math_2matrix_2rows__dot__self_8hpp.html new file mode 100644 index 00000000000..e40b892c495 --- /dev/null +++ b/doc/api/html/math_2matrix_2rows__dot__self_8hpp.html @@ -0,0 +1,130 @@ + + + + + +Stan: src/stan/math/matrix/rows_dot_self.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
rows_dot_self.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::math
 Matrices and templated mathematical functions.
 
+ + + + + +

+Functions

template<typename T , int R, int C>
Eigen::Matrix< T, R, 1 > stan::math::rows_dot_self (const Eigen::Matrix< T, R, C > &x)
 Returns the dot product of each row of a matrix with itself.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/math_2matrix_2rows__dot__self_8hpp_source.html b/doc/api/html/math_2matrix_2rows__dot__self_8hpp_source.html new file mode 100644 index 00000000000..dd61f4dfcab --- /dev/null +++ b/doc/api/html/math_2matrix_2rows__dot__self_8hpp_source.html @@ -0,0 +1,124 @@ + + + + + +Stan: src/stan/math/matrix/rows_dot_self.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
rows_dot_self.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MATH__MATRIX__ROWS_DOT_SELF_HPP__
+
2 #define __STAN__MATH__MATRIX__ROWS_DOT_SELF_HPP__
+
3 
+ +
5 
+
6 namespace stan {
+
7  namespace math {
+
8 
+
14  template<typename T,int R,int C>
+
15  inline Eigen::Matrix<T,R,1>
+
16  rows_dot_self(const Eigen::Matrix<T,R,C>& x) {
+
17  return x.rowwise().squaredNorm();
+
18  }
+
19 
+
20  }
+
21 }
+
22 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/math_2matrix_2sd_8hpp.html b/doc/api/html/math_2matrix_2sd_8hpp.html new file mode 100644 index 00000000000..89be0969b3a --- /dev/null +++ b/doc/api/html/math_2matrix_2sd_8hpp.html @@ -0,0 +1,140 @@ + + + + + +Stan: src/stan/math/matrix/sd.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
sd.hpp File Reference
+
+
+
#include <vector>
+#include <boost/math/tools/promotion.hpp>
+#include <stan/math/matrix/Eigen.hpp>
+#include <stan/math/matrix/variance.hpp>
+#include <stan/math/matrix/validate_nonzero_size.hpp>
+
+

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::math
 Matrices and templated mathematical functions.
 
+ + + + + + + + + +

+Functions

template<typename T >
boost::math::tools::promote_args
+< T >::type 
stan::math::sd (const std::vector< T > &v)
 Returns the unbiased sample standard deviation of the coefficients in the specified column vector.
 
template<typename T , int R, int C>
boost::math::tools::promote_args
+< T >::type 
stan::math::sd (const Eigen::Matrix< T, R, C > &m)
 Returns the unbiased sample standard deviation of the coefficients in the specified vector, row vector, or matrix.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/math_2matrix_2sd_8hpp_source.html b/doc/api/html/math_2matrix_2sd_8hpp_source.html new file mode 100644 index 00000000000..6fff620ddab --- /dev/null +++ b/doc/api/html/math_2matrix_2sd_8hpp_source.html @@ -0,0 +1,141 @@ + + + + + +Stan: src/stan/math/matrix/sd.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
sd.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MATH__MATRIX__SD_HPP__
+
2 #define __STAN__MATH__MATRIX__SD_HPP__
+
3 
+
4 #include <vector>
+
5 #include <boost/math/tools/promotion.hpp>
+ + + +
9 
+
10 namespace stan {
+
11  namespace math {
+
12 
+
19  template <typename T>
+
20  inline
+
21  typename boost::math::tools::promote_args<T>::type
+
22  sd(const std::vector<T>& v) {
+
23  validate_nonzero_size(v,"sd");
+
24  if (v.size() == 1) return 0.0;
+
25  return sqrt(variance(v));
+
26  }
+
27 
+
34  template <typename T, int R, int C>
+
35  inline
+
36  typename boost::math::tools::promote_args<T>::type
+
37  sd(const Eigen::Matrix<T,R,C>& m) {
+
38  // FIXME: redundant with test in variance; second line saves sqrt
+
39  validate_nonzero_size(m,"sd");
+
40  if (m.size() == 1) return 0.0;
+
41  return sqrt(variance(m));
+
42  }
+
43 
+
44  }
+
45 }
+
46 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/math_2matrix_2softmax_8hpp.html b/doc/api/html/math_2matrix_2softmax_8hpp.html new file mode 100644 index 00000000000..adacc0baf7c --- /dev/null +++ b/doc/api/html/math_2matrix_2softmax_8hpp.html @@ -0,0 +1,133 @@ + + + + + +Stan: src/stan/math/matrix/softmax.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
softmax.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::math
 Matrices and templated mathematical functions.
 
+ + + + + +

+Functions

template<typename T >
Eigen::Matrix< T,
+Eigen::Dynamic, 1 > 
stan::math::softmax (const Eigen::Matrix< T, Eigen::Dynamic, 1 > &v)
 Return the softmax of the specified vector.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/math_2matrix_2softmax_8hpp_source.html b/doc/api/html/math_2matrix_2softmax_8hpp_source.html new file mode 100644 index 00000000000..abe07820cf1 --- /dev/null +++ b/doc/api/html/math_2matrix_2softmax_8hpp_source.html @@ -0,0 +1,137 @@ + + + + + +Stan: src/stan/math/matrix/softmax.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
softmax.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MATH__MATRIX__SOFTMAX_HPP__
+
2 #define __STAN__MATH__MATRIX__SOFTMAX_HPP__
+
3 
+
4 #include <cmath>
+ + +
7 
+
8 namespace stan {
+
9  namespace math {
+
10 
+
18  template <typename T>
+
19  inline Eigen::Matrix<T,Eigen::Dynamic,1>
+
20  softmax(const Eigen::Matrix<T,Eigen::Dynamic,1>& v) {
+
21  using std::exp;
+
22  stan::math::validate_nonzero_size(v,"vector softmax");
+
23  Eigen::Matrix<T,Eigen::Dynamic,1> theta(v.size());
+
24  T sum(0.0);
+
25  T max_v = v.maxCoeff();
+
26  for (int i = 0; i < v.size(); ++i) {
+
27  theta(i) = exp(v(i) - max_v); // extra work for (v[i] == max_v)
+
28  sum += theta(i); // extra work vs. sum() w. auto-diff
+
29  }
+
30  for (int i = 0; i < v.size(); ++i)
+
31  theta(i) /= sum;
+
32  return theta;
+
33  }
+
34 
+
35  }
+
36 }
+
37 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/math_2matrix_2sort_8hpp.html b/doc/api/html/math_2matrix_2sort_8hpp.html new file mode 100644 index 00000000000..e418c26bbdb --- /dev/null +++ b/doc/api/html/math_2matrix_2sort_8hpp.html @@ -0,0 +1,145 @@ + + + + + +Stan: src/stan/math/matrix/sort.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
sort.hpp File Reference
+
+
+
#include <stan/math/matrix/Eigen.hpp>
+#include <vector>
+#include <algorithm>
+#include <functional>
+
+

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::math
 Matrices and templated mathematical functions.
 
+ + + + + + + + + + + + + + + + + +

+Functions

template<typename T >
std::vector< T > stan::math::sort_asc (std::vector< T > xs)
 Return the specified standard vector in ascending order.
 
template<typename T >
std::vector< T > stan::math::sort_desc (std::vector< T > xs)
 Return the specified standard vector in descending order.
 
template<typename T , int R, int C>
Eigen::Matrix< T, R, C > stan::math::sort_asc (Eigen::Matrix< T, R, C > xs)
 Return the specified eigen vector in ascending order.
 
template<typename T , int R, int C>
Eigen::Matrix< T, R, C > stan::math::sort_desc (Eigen::Matrix< T, R, C > xs)
 Return the specified eigen vector in descending order.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/math_2matrix_2sort_8hpp_source.html b/doc/api/html/math_2matrix_2sort_8hpp_source.html new file mode 100644 index 00000000000..b95b847b736 --- /dev/null +++ b/doc/api/html/math_2matrix_2sort_8hpp_source.html @@ -0,0 +1,145 @@ + + + + + +Stan: src/stan/math/matrix/sort.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
sort.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MATH__MATRIX__SORT_HPP__
+
2 #define __STAN__MATH__MATRIX__SORT_HPP__
+
3 
+ +
5 #include <vector>
+
6 #include <algorithm> // std::sort
+
7 #include <functional> // std::greater
+
8 
+
9 namespace stan {
+
10  namespace math {
+
11 
+
19  template <typename T>
+
20  inline typename std::vector<T> sort_asc(std::vector<T> xs) {
+
21  std::sort(xs.begin(), xs.end());
+
22  return xs;
+
23  }
+
24 
+
32  template <typename T>
+
33  inline typename std::vector<T> sort_desc(std::vector<T> xs) {
+
34  std::sort(xs.begin(), xs.end(), std::greater<T>());
+
35  return xs;
+
36  }
+
37 
+
45  template <typename T, int R, int C>
+
46  inline typename Eigen::Matrix<T,R,C> sort_asc(Eigen::Matrix<T,R,C> xs) {
+
47  std::sort(xs.data(), xs.data()+xs.size());
+
48  return xs;
+
49  }
+
50 
+
58  template <typename T, int R, int C>
+
59  inline typename Eigen::Matrix<T,R,C> sort_desc(Eigen::Matrix<T,R,C> xs) {
+
60  std::sort(xs.data(), xs.data()+xs.size(), std::greater<T>());
+
61  return xs;
+
62  }
+
63 
+
64  }
+
65 }
+
66 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/math_2matrix_2squared__distance_8hpp.html b/doc/api/html/math_2matrix_2squared__distance_8hpp.html new file mode 100644 index 00000000000..0759042da64 --- /dev/null +++ b/doc/api/html/math_2matrix_2squared__distance_8hpp.html @@ -0,0 +1,132 @@ + + + + + +Stan: src/stan/math/matrix/squared_distance.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
squared_distance.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::math
 Matrices and templated mathematical functions.
 
+ + + + + +

+Functions

template<int R1, int C1, int R2, int C2>
double stan::math::squared_distance (const Eigen::Matrix< double, R1, C1 > &v1, const Eigen::Matrix< double, R2, C2 > &v2)
 Returns the squared distance between the specified vectors.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/math_2matrix_2squared__distance_8hpp_source.html b/doc/api/html/math_2matrix_2squared__distance_8hpp_source.html new file mode 100644 index 00000000000..700668d5f43 --- /dev/null +++ b/doc/api/html/math_2matrix_2squared__distance_8hpp_source.html @@ -0,0 +1,131 @@ + + + + + +Stan: src/stan/math/matrix/squared_distance.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
squared_distance.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MATH__MATRIX__SQUARED_DISTANCE_HPP__
+
2 #define __STAN__MATH__MATRIX__SQUARED_DISTANCE_HPP__
+
3 
+ + + +
7 
+
8 namespace stan {
+
9  namespace math {
+
10 
+
20  template<int R1,int C1,int R2, int C2>
+
21  inline double squared_distance(const Eigen::Matrix<double, R1, C1>& v1,
+
22  const Eigen::Matrix<double, R2, C2>& v2) {
+
23  validate_vector(v1,"squared_distance");
+
24  validate_vector(v2,"squared_distance");
+
25  validate_matching_sizes(v1,v2,"squared_distance");
+
26  if (v1.rows() != v2.rows())
+
27  return (v1.transpose()-v2).squaredNorm();
+
28  else
+
29  return (v1-v2).squaredNorm();
+
30  }
+
31  }
+
32 }
+
33 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/math_2matrix_2stan__print_8hpp.html b/doc/api/html/math_2matrix_2stan__print_8hpp.html new file mode 100644 index 00000000000..5d8b014629a --- /dev/null +++ b/doc/api/html/math_2matrix_2stan__print_8hpp.html @@ -0,0 +1,142 @@ + + + + + +Stan: src/stan/math/matrix/stan_print.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan_print.hpp File Reference
+
+
+
#include <vector>
+#include <stan/math/matrix/Eigen.hpp>
+
+

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::math
 Matrices and templated mathematical functions.
 
+ + + + + + + + + + + + + + + + +

+Functions

template<typename T >
void stan::math::stan_print (std::ostream *o, const T &x)
 
template<typename T >
void stan::math::stan_print (std::ostream *o, const std::vector< T > &x)
 
template<typename T >
void stan::math::stan_print (std::ostream *o, const Eigen::Matrix< T, Eigen::Dynamic, 1 > &x)
 
template<typename T >
void stan::math::stan_print (std::ostream *o, const Eigen::Matrix< T, 1, Eigen::Dynamic > &x)
 
template<typename T >
void stan::math::stan_print (std::ostream *o, const Eigen::Matrix< T, Eigen::Dynamic, Eigen::Dynamic > &x)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/math_2matrix_2stan__print_8hpp_source.html b/doc/api/html/math_2matrix_2stan__print_8hpp_source.html new file mode 100644 index 00000000000..bd60aacb00d --- /dev/null +++ b/doc/api/html/math_2matrix_2stan__print_8hpp_source.html @@ -0,0 +1,166 @@ + + + + + +Stan: src/stan/math/matrix/stan_print.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan_print.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MATH__MATRIX__STAN_PRINT_HPP__
+
2 #define __STAN__MATH__MATRIX__STAN_PRINT_HPP__
+
3 
+
4 #include <vector>
+ +
6 
+
7 namespace stan {
+
8  namespace math {
+
9  // prints used in generator for print() statements in modeling language
+
10 
+
11  template <typename T>
+
12  void stan_print(std::ostream* o, const T& x) {
+
13  *o << x;
+
14  }
+
15 
+
16  template <typename T>
+
17  void stan_print(std::ostream* o, const std::vector<T>& x) {
+
18  *o << '[';
+
19  for (int i = 0; i < x.size(); ++i) {
+
20  if (i > 0) *o << ',';
+
21  stan_print(o,x[i]);
+
22  }
+
23  *o << ']';
+
24  }
+
25 
+
26  template <typename T>
+
27  void stan_print(std::ostream* o, const Eigen::Matrix<T,Eigen::Dynamic,1>& x) {
+
28  *o << '[';
+
29  for (int i = 0; i < x.size(); ++i) {
+
30  if (i > 0) *o << ',';
+
31  stan_print(o,x(i));
+
32  }
+
33  *o << ']';
+
34  }
+
35 
+
36  template <typename T>
+
37  void stan_print(std::ostream* o, const Eigen::Matrix<T,1,Eigen::Dynamic>& x) {
+
38  *o << '[';
+
39  for (int i = 0; i < x.size(); ++i) {
+
40  if (i > 0) *o << ',';
+
41  stan_print(o,x(i));
+
42  }
+
43  *o << ']';
+
44  }
+
45 
+
46  template <typename T>
+
47  void stan_print(std::ostream* o,
+
48  const Eigen::Matrix<T,Eigen::Dynamic,Eigen::Dynamic>& x) {
+
49  *o << '[';
+
50  for (int i = 0; i < x.rows(); ++i) {
+
51  if (i > 0) *o << ',';
+
52  stan_print(o,x.row(i));
+
53  }
+
54  *o << ']';
+
55  }
+
56 
+
57  }
+
58 }
+
59 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/math_2matrix_2sum_8hpp.html b/doc/api/html/math_2matrix_2sum_8hpp.html new file mode 100644 index 00000000000..c6b0cf6dab7 --- /dev/null +++ b/doc/api/html/math_2matrix_2sum_8hpp.html @@ -0,0 +1,135 @@ + + + + + +Stan: src/stan/math/matrix/sum.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
sum.hpp File Reference
+
+
+
#include <vector>
+#include <stan/math/matrix/Eigen.hpp>
+
+

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::math
 Matrices and templated mathematical functions.
 
+ + + + + + + + + +

+Functions

template<typename T >
stan::math::sum (const std::vector< T > &xs)
 Return the sum of the values in the specified standard vector.
 
template<typename T , int R, int C>
double stan::math::sum (const Eigen::Matrix< T, R, C > &v)
 Returns the sum of the coefficients of the specified column vector.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/math_2matrix_2sum_8hpp_source.html b/doc/api/html/math_2matrix_2sum_8hpp_source.html new file mode 100644 index 00000000000..68c49fd2ee9 --- /dev/null +++ b/doc/api/html/math_2matrix_2sum_8hpp_source.html @@ -0,0 +1,133 @@ + + + + + +Stan: src/stan/math/matrix/sum.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
sum.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MATH__MATRIX__SUM_HPP__
+
2 #define __STAN__MATH__MATRIX__SUM_HPP__
+
3 
+
4 #include <vector>
+ +
6 
+
7 namespace stan {
+
8  namespace math {
+
9 
+
18  template <typename T>
+
19  inline T sum(const std::vector<T>& xs) {
+
20  if (xs.size() == 0) return 0;
+
21  T sum(xs[0]);
+
22  for (size_t i = 1; i < xs.size(); ++i)
+
23  sum += xs[i];
+
24  return sum;
+
25  }
+
26 
+
33  template <typename T, int R, int C>
+
34  inline double sum(const Eigen::Matrix<T,R,C>& v) {
+
35  return v.sum();
+
36  }
+
37 
+
38  }
+
39 }
+
40 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/math_2matrix_2tcrossprod_8hpp.html b/doc/api/html/math_2matrix_2tcrossprod_8hpp.html new file mode 100644 index 00000000000..14986b93a27 --- /dev/null +++ b/doc/api/html/math_2matrix_2tcrossprod_8hpp.html @@ -0,0 +1,130 @@ + + + + + +Stan: src/stan/math/matrix/tcrossprod.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
tcrossprod.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::math
 Matrices and templated mathematical functions.
 
+ + + + +

+Functions

matrix_d stan::math::tcrossprod (const matrix_d &M)
 Returns the result of post-multiplying a matrix by its own transpose.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/math_2matrix_2tcrossprod_8hpp_source.html b/doc/api/html/math_2matrix_2tcrossprod_8hpp_source.html new file mode 100644 index 00000000000..e3f5eeddc7c --- /dev/null +++ b/doc/api/html/math_2matrix_2tcrossprod_8hpp_source.html @@ -0,0 +1,132 @@ + + + + + +Stan: src/stan/math/matrix/tcrossprod.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
tcrossprod.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MATH__MATRIX__TCROSSPROD_HPP__
+
2 #define __STAN__MATH__MATRIX__TCROSSPROD_HPP__
+
3 
+ + +
6 
+
7 namespace stan {
+
8  namespace math {
+
9 
+
16  inline matrix_d
+
17  tcrossprod(const matrix_d& M) {
+
18  if (M.rows() == 0)
+
19  return matrix_d(0,0);
+
20  if (M.rows() == 1)
+
21  return M * M.transpose();
+
22  matrix_d result(M.rows(),M.rows());
+
23  return result
+
24  .setZero()
+
25  .selfadjointView<Eigen::Upper>()
+
26  .rankUpdate(M);
+
27  }
+
28 
+
29  }
+
30 }
+
31 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/math_2matrix_2trace__gen__inv__quad__form__ldlt_8hpp.html b/doc/api/html/math_2matrix_2trace__gen__inv__quad__form__ldlt_8hpp.html new file mode 100644 index 00000000000..827aab05d58 --- /dev/null +++ b/doc/api/html/math_2matrix_2trace__gen__inv__quad__form__ldlt_8hpp.html @@ -0,0 +1,132 @@ + + + + + +Stan: src/stan/math/matrix/trace_gen_inv_quad_form_ldlt.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
trace_gen_inv_quad_form_ldlt.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::math
 Matrices and templated mathematical functions.
 
+ + + + +

+Functions

template<int R1, int C1, int R2, int C2, int R3, int C3>
double stan::math::trace_gen_inv_quad_form_ldlt (const Eigen::Matrix< double, R1, C1 > &D, const stan::math::LDLT_factor< double, R2, C2 > &A, const Eigen::Matrix< double, R3, C3 > &B)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/math_2matrix_2trace__gen__inv__quad__form__ldlt_8hpp_source.html b/doc/api/html/math_2matrix_2trace__gen__inv__quad__form__ldlt_8hpp_source.html new file mode 100644 index 00000000000..c0a6148db98 --- /dev/null +++ b/doc/api/html/math_2matrix_2trace__gen__inv__quad__form__ldlt_8hpp_source.html @@ -0,0 +1,139 @@ + + + + + +Stan: src/stan/math/matrix/trace_gen_inv_quad_form_ldlt.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
trace_gen_inv_quad_form_ldlt.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MATH__MATRIX__TRACE_GEN_INV_QUAD_FORM_LDLT_HPP__
+
2 #define __STAN__MATH__MATRIX__TRACE_GEN_INV_QUAD_FORM_LDLT_HPP__
+
3 
+ + + + +
8 
+
9 namespace stan {
+
10  namespace math {
+
11 
+
12  /*
+
13  * Compute the trace of an inverse quadratic form. I.E., this computes
+
14  * trace(D B^T A^-1 B)
+
15  * where D is a square matrix and the LDLT_factor of A is provided.
+
16  */
+
17  template <int R1,int C1,int R2,int C2,int R3,int C3>
+
18  inline double
+
19  trace_gen_inv_quad_form_ldlt(const Eigen::Matrix<double,R1,C1> &D,
+
20  const stan::math::LDLT_factor<double,R2,C2> &A,
+
21  const Eigen::Matrix<double,R3,C3> &B) {
+
22 
+
23  stan::math::validate_square(D,"trace_gen_inv_quad_form_ldlt");
+
24  stan::math::validate_multiplicable(A,B,"trace_gen_inv_quad_form_ldlt");
+
25  stan::math::validate_multiplicable(B,D,"trace_gen_inv_quad_form_ldlt");
+
26 
+
27  return (D*B.transpose()*A._ldltP->solve(B)).trace();
+
28  }
+
29 
+
30  }
+
31 }
+
32 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/math_2matrix_2trace__gen__quad__form_8hpp.html b/doc/api/html/math_2matrix_2trace__gen__quad__form_8hpp.html new file mode 100644 index 00000000000..eab6b32cd1c --- /dev/null +++ b/doc/api/html/math_2matrix_2trace__gen__quad__form_8hpp.html @@ -0,0 +1,134 @@ + + + + + +Stan: src/stan/math/matrix/trace_gen_quad_form.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
trace_gen_quad_form.hpp File Reference
+
+
+
#include <boost/utility/enable_if.hpp>
+#include <boost/type_traits.hpp>
+#include <stan/math/matrix/Eigen.hpp>
+#include <stan/math/matrix/validate_multiplicable.hpp>
+#include <stan/math/matrix/validate_square.hpp>
+
+

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::math
 Matrices and templated mathematical functions.
 
+ + + + + +

+Functions

template<int RD, int CD, int RA, int CA, int RB, int CB>
double stan::math::trace_gen_quad_form (const Eigen::Matrix< double, RD, CD > &D, const Eigen::Matrix< double, RA, CA > &A, const Eigen::Matrix< double, RB, CB > &B)
 Compute trace(D B^T A B).
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/math_2matrix_2trace__gen__quad__form_8hpp_source.html b/doc/api/html/math_2matrix_2trace__gen__quad__form_8hpp_source.html new file mode 100644 index 00000000000..4a5b21e2dba --- /dev/null +++ b/doc/api/html/math_2matrix_2trace__gen__quad__form_8hpp_source.html @@ -0,0 +1,135 @@ + + + + + +Stan: src/stan/math/matrix/trace_gen_quad_form.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
trace_gen_quad_form.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MATH__MATRIX__TRACE_GEN_QUAD_FORM_HPP__
+
2 #define __STAN__MATH__MATRIX__TRACE_GEN_QUAD_FORM_HPP__
+
3 
+
4 #include <boost/utility/enable_if.hpp>
+
5 #include <boost/type_traits.hpp>
+ + + +
9 
+
10 namespace stan {
+
11  namespace math {
+
15  template<int RD,int CD,int RA,int CA,int RB,int CB>
+
16  inline double
+
17  trace_gen_quad_form(const Eigen::Matrix<double,RD,CD> &D,
+
18  const Eigen::Matrix<double,RA,CA> &A,
+
19  const Eigen::Matrix<double,RB,CB> &B)
+
20  {
+
21  validate_square(A,"trace_gen_quad_form");
+
22  validate_square(D,"trace_gen_quad_form");
+
23  validate_multiplicable(A,B,"trace_gen_quad_form");
+
24  validate_multiplicable(B,D,"trace_gen_quad_form");
+
25  return (D*B.transpose()*A*B).trace();
+
26  }
+
27  }
+
28 }
+
29 
+
30 #endif
+
31 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/math_2matrix_2trace__inv__quad__form__ldlt_8hpp.html b/doc/api/html/math_2matrix_2trace__inv__quad__form__ldlt_8hpp.html new file mode 100644 index 00000000000..255ddd94435 --- /dev/null +++ b/doc/api/html/math_2matrix_2trace__inv__quad__form__ldlt_8hpp.html @@ -0,0 +1,131 @@ + + + + + +Stan: src/stan/math/matrix/trace_inv_quad_form_ldlt.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
trace_inv_quad_form_ldlt.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::math
 Matrices and templated mathematical functions.
 
+ + + + +

+Functions

template<int R2, int C2, int R3, int C3>
double stan::math::trace_inv_quad_form_ldlt (const stan::math::LDLT_factor< double, R2, C2 > &A, const Eigen::Matrix< double, R3, C3 > &B)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/math_2matrix_2trace__inv__quad__form__ldlt_8hpp_source.html b/doc/api/html/math_2matrix_2trace__inv__quad__form__ldlt_8hpp_source.html new file mode 100644 index 00000000000..710737744fd --- /dev/null +++ b/doc/api/html/math_2matrix_2trace__inv__quad__form__ldlt_8hpp_source.html @@ -0,0 +1,134 @@ + + + + + +Stan: src/stan/math/matrix/trace_inv_quad_form_ldlt.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
trace_inv_quad_form_ldlt.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MATH__MATRIX__TRACE_INV_QUAD_FORM_LDLT_HPP__
+
2 #define __STAN__MATH__MATRIX__TRACE_INV_QUAD_FORM_LDLT_HPP__
+
3 
+ + + +
7 
+
8 namespace stan {
+
9  namespace math {
+
10 
+
11  /*
+
12  * Compute the trace of an inverse quadratic form. I.E., this computes
+
13  * trace(B^T A^-1 B)
+
14  * where the LDLT_factor of A is provided.
+
15  */
+
16  template <int R2,int C2,int R3,int C3>
+
17  inline double
+
18  trace_inv_quad_form_ldlt(const stan::math::LDLT_factor<double,R2,C2> &A,
+
19  const Eigen::Matrix<double,R3,C3> &B) {
+
20  stan::math::validate_multiplicable(A,B,"trace_inv_quad_form_ldlt");
+
21 
+
22  return (B.transpose()*A._ldltP->solve(B)).trace();
+
23  }
+
24  }
+
25 }
+
26 
+
27 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/math_2matrix_2trace__quad__form_8hpp.html b/doc/api/html/math_2matrix_2trace__quad__form_8hpp.html new file mode 100644 index 00000000000..dc3f8027e1f --- /dev/null +++ b/doc/api/html/math_2matrix_2trace__quad__form_8hpp.html @@ -0,0 +1,134 @@ + + + + + +Stan: src/stan/math/matrix/trace_quad_form.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
trace_quad_form.hpp File Reference
+
+
+
#include <boost/utility/enable_if.hpp>
+#include <boost/type_traits.hpp>
+#include <stan/math/matrix/Eigen.hpp>
+#include <stan/math/matrix/validate_multiplicable.hpp>
+#include <stan/math/matrix/validate_square.hpp>
+
+

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::math
 Matrices and templated mathematical functions.
 
+ + + + + +

+Functions

template<int RA, int CA, int RB, int CB>
double stan::math::trace_quad_form (const Eigen::Matrix< double, RA, CA > &A, const Eigen::Matrix< double, RB, CB > &B)
 Compute trace(B^T A B).
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/math_2matrix_2trace__quad__form_8hpp_source.html b/doc/api/html/math_2matrix_2trace__quad__form_8hpp_source.html new file mode 100644 index 00000000000..2b2e9f69e52 --- /dev/null +++ b/doc/api/html/math_2matrix_2trace__quad__form_8hpp_source.html @@ -0,0 +1,132 @@ + + + + + +Stan: src/stan/math/matrix/trace_quad_form.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
trace_quad_form.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MATH__MATRIX__TRACE_QUAD_FORM_HPP__
+
2 #define __STAN__MATH__MATRIX__TRACE_QUAD_FORM_HPP__
+
3 
+
4 #include <boost/utility/enable_if.hpp>
+
5 #include <boost/type_traits.hpp>
+ + + +
9 
+
10 namespace stan {
+
11  namespace math {
+
15  template<int RA,int CA,int RB,int CB>
+
16  inline double
+
17  trace_quad_form(const Eigen::Matrix<double,RA,CA> &A,
+
18  const Eigen::Matrix<double,RB,CB> &B)
+
19  {
+
20  validate_square(A,"trace_quad_form");
+
21  validate_multiplicable(A,B,"trace_quad_form");
+
22  return (B.transpose()*A*B).trace();
+
23  }
+
24  }
+
25 }
+
26 
+
27 #endif
+
28 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/math_2matrix_2typedefs_8hpp.html b/doc/api/html/math_2matrix_2typedefs_8hpp.html new file mode 100644 index 00000000000..327b3a1d6d7 --- /dev/null +++ b/doc/api/html/math_2matrix_2typedefs_8hpp.html @@ -0,0 +1,142 @@ + + + + + +Stan: src/stan/math/matrix/typedefs.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
typedefs.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::math
 Matrices and templated mathematical functions.
 
+ + + + + + + + + + + + +

+Typedefs

typedef Eigen::Matrix< double,
+Eigen::Dynamic, Eigen::Dynamic >
+::Index 
stan::math::size_type
 
typedef Eigen::Matrix< double,
+Eigen::Dynamic, Eigen::Dynamic > 
stan::math::matrix_d
 Type for matrix of double values.
 
typedef Eigen::Matrix< double,
+Eigen::Dynamic, 1 > 
stan::math::vector_d
 Type for (column) vector of double values.
 
typedef Eigen::Matrix< double,
+1, Eigen::Dynamic > 
stan::math::row_vector_d
 Type for (row) vector of double values.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/math_2matrix_2typedefs_8hpp_source.html b/doc/api/html/math_2matrix_2typedefs_8hpp_source.html new file mode 100644 index 00000000000..f0609b53058 --- /dev/null +++ b/doc/api/html/math_2matrix_2typedefs_8hpp_source.html @@ -0,0 +1,134 @@ + + + + + +Stan: src/stan/math/matrix/typedefs.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
typedefs.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MATH__MATRIX__TYPEDEFS_HPP__
+
2 #define __STAN__MATH__MATRIX__TYPEDEFS_HPP__
+
3 
+ +
5 
+
6 namespace stan {
+
7  namespace math {
+
8 
+
9  // typedef Eigen::Matrix<double,Eigen::Dynamic,Eigen::Dynamic>::size_type size_type;
+
10  typedef Eigen::Matrix<double,Eigen::Dynamic,Eigen::Dynamic>::Index size_type;
+
11 
+
15  typedef
+
16  Eigen::Matrix<double,Eigen::Dynamic,Eigen::Dynamic>
+ +
18 
+
22  typedef
+
23  Eigen::Matrix<double,Eigen::Dynamic,1>
+ +
25 
+
29  typedef
+
30  Eigen::Matrix<double,1,Eigen::Dynamic>
+ +
32 
+
33  }
+
34 }
+
35 
+
36 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/math_2matrix_2variance_8hpp.html b/doc/api/html/math_2matrix_2variance_8hpp.html new file mode 100644 index 00000000000..41d6cb5c1ec --- /dev/null +++ b/doc/api/html/math_2matrix_2variance_8hpp.html @@ -0,0 +1,139 @@ + + + + + +Stan: src/stan/math/matrix/variance.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
variance.hpp File Reference
+
+
+
#include <vector>
+#include <boost/math/tools/promotion.hpp>
+#include <stan/math/matrix/Eigen.hpp>
+#include <stan/math/matrix/mean.hpp>
+
+

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::math
 Matrices and templated mathematical functions.
 
+ + + + + + + + + +

+Functions

template<typename T >
boost::math::tools::promote_args
+< T >::type 
stan::math::variance (const std::vector< T > &v)
 Returns the sample variance (divide by length - 1) of the coefficients in the specified standard vector.
 
template<typename T , int R, int C>
boost::math::tools::promote_args
+< T >::type 
stan::math::variance (const Eigen::Matrix< T, R, C > &m)
 Returns the sample variance (divide by length - 1) of the coefficients in the specified column vector.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/math_2matrix_2variance_8hpp_source.html b/doc/api/html/math_2matrix_2variance_8hpp_source.html new file mode 100644 index 00000000000..7ce455183fa --- /dev/null +++ b/doc/api/html/math_2matrix_2variance_8hpp_source.html @@ -0,0 +1,156 @@ + + + + + +Stan: src/stan/math/matrix/variance.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
variance.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MATH__MATRIX__VARIANCE_HPP__
+
2 #define __STAN__MATH__MATRIX__VARIANCE_HPP__
+
3 
+
4 #include <vector>
+
5 #include <boost/math/tools/promotion.hpp>
+ + +
8 
+
9 namespace stan {
+
10  namespace math {
+
11 
+
20  template <typename T>
+
21  inline
+
22  typename boost::math::tools::promote_args<T>::type
+
23  variance(const std::vector<T>& v) {
+
24  validate_nonzero_size(v,"variance");
+
25  if (v.size() == 1)
+
26  return 0.0;
+
27  T v_mean(mean(v));
+
28  T sum_sq_diff(0);
+
29  for (size_t i = 0; i < v.size(); ++i) {
+
30  T diff = v[i] - v_mean;
+
31  sum_sq_diff += diff * diff;
+
32  }
+
33  return sum_sq_diff / (v.size() - 1);
+
34  }
+
35 
+
42  template <typename T, int R, int C>
+
43  inline
+
44  typename boost::math::tools::promote_args<T>::type
+
45  variance(const Eigen::Matrix<T,R,C>& m) {
+
46  validate_nonzero_size(m,"variance");
+
47  if (m.size() == 1)
+
48  return 0.0;
+
49  typename boost::math::tools::promote_args<T>::type
+
50  mn(mean(m));
+
51  typename boost::math::tools::promote_args<T>::type
+
52  sum_sq_diff(0);
+
53  for (int i = 0; i < m.size(); ++i) {
+
54  typename boost::math::tools::promote_args<T>::type
+
55  diff = m(i) - mn;
+
56  sum_sq_diff += diff * diff;
+
57  }
+
58  return sum_sq_diff / (m.size() - 1);
+
59  }
+
60 
+
61  }
+
62 }
+
63 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/math_2matrix_8hpp.html b/doc/api/html/math_2matrix_8hpp.html new file mode 100644 index 00000000000..dc2326e2b7d --- /dev/null +++ b/doc/api/html/math_2matrix_8hpp.html @@ -0,0 +1,213 @@ + + + + + +Stan: src/stan/math/matrix.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
matrix.hpp File Reference
+
+
+
#include <stan/math/matrix/Eigen.hpp>
+#include <stan/math/matrix/accumulator.hpp>
+#include <stan/math/matrix/add.hpp>
+#include <stan/math/matrix/array_builder.hpp>
+#include <stan/math/matrix/assign.hpp>
+#include <stan/math/matrix/block.hpp>
+#include <stan/math/matrix/check_range.hpp>
+#include <stan/math/matrix/cholesky_decompose.hpp>
+#include <stan/math/matrix/col.hpp>
+#include <stan/math/matrix/cols.hpp>
+#include <stan/math/matrix/columns_dot_product.hpp>
+#include <stan/math/matrix/columns_dot_self.hpp>
+#include <stan/math/matrix/common_type.hpp>
+#include <stan/math/matrix/crossprod.hpp>
+#include <stan/math/matrix/cumulative_sum.hpp>
+#include <stan/math/matrix/determinant.hpp>
+#include <stan/math/matrix/diag_matrix.hpp>
+#include <stan/math/matrix/diag_post_multiply.hpp>
+#include <stan/math/matrix/diag_pre_multiply.hpp>
+#include <stan/math/matrix/diagonal.hpp>
+#include <stan/math/matrix/dims.hpp>
+#include <stan/math/matrix/distance.hpp>
+#include <stan/math/matrix/squared_distance.hpp>
+#include <stan/math/matrix/divide.hpp>
+#include <stan/math/matrix/dot_product.hpp>
+#include <stan/math/matrix/dot_self.hpp>
+#include <stan/math/matrix/eigenvalues_sym.hpp>
+#include <stan/math/matrix/eigenvectors_sym.hpp>
+#include <stan/math/matrix/elt_divide.hpp>
+#include <stan/math/matrix/elt_multiply.hpp>
+#include <stan/math/matrix/exp.hpp>
+#include <stan/math/matrix/fill.hpp>
+#include <stan/math/matrix/get_base1.hpp>
+#include <stan/math/matrix/get_base1_lhs.hpp>
+#include <stan/math/matrix/head.hpp>
+#include <stan/math/matrix/initialize.hpp>
+#include <stan/math/matrix/inverse.hpp>
+#include <stan/math/matrix/inverse_spd.hpp>
+#include <stan/math/matrix/log.hpp>
+#include <stan/math/matrix/log_determinant.hpp>
+#include <stan/math/matrix/log_determinant_ldlt.hpp>
+#include <stan/math/matrix/log_determinant_spd.hpp>
+#include <stan/math/matrix/log_softmax.hpp>
+#include <stan/math/matrix/log_sum_exp.hpp>
+#include <stan/math/matrix/max.hpp>
+#include <stan/math/matrix/mdivide_left.hpp>
+#include <stan/math/matrix/mdivide_left_ldlt.hpp>
+#include <stan/math/matrix/mdivide_left_tri.hpp>
+#include <stan/math/matrix/mdivide_left_tri_low.hpp>
+#include <stan/math/matrix/mdivide_right.hpp>
+#include <stan/math/matrix/mdivide_right_ldlt.hpp>
+#include <stan/math/matrix/mdivide_right_tri.hpp>
+#include <stan/math/matrix/mdivide_right_tri_low.hpp>
+#include <stan/math/matrix/mean.hpp>
+#include <stan/math/matrix/min.hpp>
+#include <stan/math/matrix/minus.hpp>
+#include <stan/math/matrix/multiply.hpp>
+#include <stan/math/matrix/multiply_lower_tri_self_transpose.hpp>
+#include <stan/math/matrix/prod.hpp>
+#include <stan/math/matrix/promote_common.hpp>
+#include <stan/math/matrix/promoter.hpp>
+#include <stan/math/matrix/quad_form.hpp>
+#include <stan/math/matrix/rank.hpp>
+#include <stan/math/matrix/resize.hpp>
+#include <stan/math/matrix/row.hpp>
+#include <stan/math/matrix/rows.hpp>
+#include <stan/math/matrix/rows_dot_product.hpp>
+#include <stan/math/matrix/rows_dot_self.hpp>
+#include <stan/math/matrix/sd.hpp>
+#include <stan/math/matrix/segment.hpp>
+#include <stan/math/matrix/singular_values.hpp>
+#include <stan/math/matrix/size.hpp>
+#include <stan/math/matrix/softmax.hpp>
+#include <stan/math/matrix/sort.hpp>
+#include <stan/math/matrix/stan_print.hpp>
+#include <stan/math/matrix/sub_col.hpp>
+#include <stan/math/matrix/sub_row.hpp>
+#include <stan/math/matrix/subtract.hpp>
+#include <stan/math/matrix/sum.hpp>
+#include <stan/math/matrix/tail.hpp>
+#include <stan/math/matrix/tcrossprod.hpp>
+#include <stan/math/matrix/to_vector.hpp>
+#include <stan/math/matrix/trace.hpp>
+#include <stan/math/matrix/trace_gen_inv_quad_form_ldlt.hpp>
+#include <stan/math/matrix/trace_gen_quad_form.hpp>
+#include <stan/math/matrix/trace_inv_quad_form_ldlt.hpp>
+#include <stan/math/matrix/trace_quad_form.hpp>
+#include <stan/math/matrix/transpose.hpp>
+#include <stan/math/matrix/typedefs.hpp>
+#include <stan/math/matrix/validate_column_index.hpp>
+#include <stan/math/matrix/validate_greater.hpp>
+#include <stan/math/matrix/validate_greater_or_equal.hpp>
+#include <stan/math/matrix/validate_less.hpp>
+#include <stan/math/matrix/validate_less_or_equal.hpp>
+#include <stan/math/matrix/validate_matching_dims.hpp>
+#include <stan/math/matrix/validate_matching_sizes.hpp>
+#include <stan/math/matrix/validate_multiplicable.hpp>
+#include <stan/math/matrix/validate_nonzero_size.hpp>
+#include <stan/math/matrix/validate_row_index.hpp>
+#include <stan/math/matrix/validate_square.hpp>
+#include <stan/math/matrix/validate_std_vector_index.hpp>
+#include <stan/math/matrix/validate_symmetric.hpp>
+#include <stan/math/matrix/validate_vector.hpp>
+#include <stan/math/matrix/variance.hpp>
+
+

Go to the source code of this file.

+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/math_2matrix_8hpp_source.html b/doc/api/html/math_2matrix_8hpp_source.html new file mode 100644 index 00000000000..b3f7ce5ce99 --- /dev/null +++ b/doc/api/html/math_2matrix_8hpp_source.html @@ -0,0 +1,217 @@ + + + + + +Stan: src/stan/math/matrix.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
matrix.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MATH__MATRIX_HPP__
+
2 #define __STAN__MATH__MATRIX_HPP__
+
3 
+ + + + + + + + +
12 #include <stan/math/matrix/col.hpp>
+ + + + + + + + + + + + + + + + + + + + + +
34 #include <stan/math/matrix/exp.hpp>
+ + + + + + + +
42 #include <stan/math/matrix/log.hpp>
+ + + + + +
48 #include <stan/math/matrix/max.hpp>
+ + + + + + + + + +
58 #include <stan/math/matrix/min.hpp>
+ + + + + + + + + +
68 #include <stan/math/matrix/row.hpp>
+ + + +
72 #include <stan/math/matrix/sd.hpp>
+ + + + + + + + + +
82 #include <stan/math/matrix/sum.hpp>
+ + + + + + + + + + + + + + + + + + + + + + + + + +
108 
+
109 #endif
+
110 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/math_8hpp.html b/doc/api/html/math_8hpp.html new file mode 100644 index 00000000000..7714c313942 --- /dev/null +++ b/doc/api/html/math_8hpp.html @@ -0,0 +1,115 @@ + + + + + +Stan: src/stan/math.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
math.hpp File Reference
+
+ +
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/math_8hpp_source.html b/doc/api/html/math_8hpp_source.html new file mode 100644 index 00000000000..8c12dd4f659 --- /dev/null +++ b/doc/api/html/math_8hpp_source.html @@ -0,0 +1,118 @@ + + + + + +Stan: src/stan/math.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
math.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MATH_HPP__
+
2 #define __STAN__MATH_HPP__
+
3 
+ + + + + + +
10 
+
11 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/matrix_2max_8hpp.html b/doc/api/html/matrix_2max_8hpp.html new file mode 100644 index 00000000000..fa6c1d3957d --- /dev/null +++ b/doc/api/html/matrix_2max_8hpp.html @@ -0,0 +1,139 @@ + + + + + +Stan: src/stan/math/matrix/max.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
max.hpp File Reference
+
+
+
#include <stdexcept>
+#include <vector>
+#include <stan/math/matrix/Eigen.hpp>
+
+

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::math
 Matrices and templated mathematical functions.
 
+ + + + + + + + + + + + +

+Functions

int stan::math::max (const std::vector< int > &x)
 Returns the maximum coefficient in the specified column vector.
 
template<typename T >
stan::math::max (const std::vector< T > &x)
 Returns the maximum coefficient in the specified column vector.
 
template<typename T , int R, int C>
stan::math::max (const Eigen::Matrix< T, R, C > &m)
 Returns the maximum coefficient in the specified vector, row vector, or matrix.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/matrix_2max_8hpp_source.html b/doc/api/html/matrix_2max_8hpp_source.html new file mode 100644 index 00000000000..f57b1c587d7 --- /dev/null +++ b/doc/api/html/matrix_2max_8hpp_source.html @@ -0,0 +1,148 @@ + + + + + +Stan: src/stan/math/matrix/max.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
max.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MATH__MATRIX__MAX_HPP__
+
2 #define __STAN__MATH__MATRIX__MAX_HPP__
+
3 
+
4 #include <stdexcept>
+
5 #include <vector>
+ +
7 
+
8 namespace stan {
+
9  namespace math {
+
10 
+
19  inline int max(const std::vector<int>& x) {
+
20  if (x.size() == 0)
+
21  throw std::domain_error("error: cannot take max of empty int vector");
+
22  int max = x[0];
+
23  for (size_t i = 1; i < x.size(); ++i)
+
24  if (x[i] > max)
+
25  max = x[i];
+
26  return max;
+
27  }
+
28 
+
36  template <typename T>
+
37  inline T max(const std::vector<T>& x) {
+
38  if (x.size() == 0)
+
39  return -std::numeric_limits<T>::infinity();
+
40  T max = x[0];
+
41  for (size_t i = 1; i < x.size(); ++i)
+
42  if (x[i] > max)
+
43  max = x[i];
+
44  return max;
+
45  }
+
46 
+
53  template <typename T, int R, int C>
+
54  inline T max(const Eigen::Matrix<T,R,C>& m) {
+
55  if (m.size() == 0)
+
56  return -std::numeric_limits<double>::infinity();
+
57  return m.maxCoeff();
+
58  }
+
59 
+
60  }
+
61 }
+
62 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/matrix_2min_8hpp.html b/doc/api/html/matrix_2min_8hpp.html new file mode 100644 index 00000000000..ce028bd1a3e --- /dev/null +++ b/doc/api/html/matrix_2min_8hpp.html @@ -0,0 +1,139 @@ + + + + + +Stan: src/stan/math/matrix/min.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
min.hpp File Reference
+
+
+
#include <stdexcept>
+#include <vector>
+#include <stan/math/matrix/Eigen.hpp>
+
+

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::math
 Matrices and templated mathematical functions.
 
+ + + + + + + + + + + + +

+Functions

int stan::math::min (const std::vector< int > &x)
 Returns the minimum coefficient in the specified column vector.
 
template<typename T >
stan::math::min (const std::vector< T > &x)
 Returns the minimum coefficient in the specified column vector.
 
template<typename T , int R, int C>
stan::math::min (const Eigen::Matrix< T, R, C > &m)
 Returns the minimum coefficient in the specified matrix, vector, or row vector.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/matrix_2min_8hpp_source.html b/doc/api/html/matrix_2min_8hpp_source.html new file mode 100644 index 00000000000..7cbe66fbfc1 --- /dev/null +++ b/doc/api/html/matrix_2min_8hpp_source.html @@ -0,0 +1,148 @@ + + + + + +Stan: src/stan/math/matrix/min.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
min.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MATH__MATRIX__MIN_HPP__
+
2 #define __STAN__MATH__MATRIX__MIN_HPP__
+
3 
+
4 #include <stdexcept>
+
5 #include <vector>
+ +
7 
+
8 namespace stan {
+
9  namespace math {
+
10 
+
18  inline int min(const std::vector<int>& x) {
+
19  if (x.size() == 0)
+
20  throw std::domain_error("error: cannot take min of empty int vector");
+
21  int min = x[0];
+
22  for (size_t i = 1; i < x.size(); ++i)
+
23  if (x[i] < min)
+
24  min = x[i];
+
25  return min;
+
26  }
+
27 
+
35  template <typename T>
+
36  inline T min(const std::vector<T>& x) {
+
37  if (x.size() == 0)
+
38  return std::numeric_limits<T>::infinity();
+
39  T min = x[0];
+
40  for (size_t i = 1; i < x.size(); ++i)
+
41  if (x[i] < min)
+
42  min = x[i];
+
43  return min;
+
44  }
+
45 
+
52  template <typename T, int R, int C>
+
53  inline T min(const Eigen::Matrix<T,R,C>& m) {
+
54  if (m.size() == 0)
+
55  return std::numeric_limits<double>::infinity();
+
56  return m.minCoeff();
+
57  }
+
58 
+
59  }
+
60 }
+
61 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/matrix__error__handling_8hpp.html b/doc/api/html/matrix__error__handling_8hpp.html new file mode 100644 index 00000000000..7540c806669 --- /dev/null +++ b/doc/api/html/matrix__error__handling_8hpp.html @@ -0,0 +1,125 @@ + + + + + +Stan: src/stan/math/matrix_error_handling.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
matrix_error_handling.hpp File Reference
+
+ +
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/matrix__error__handling_8hpp_source.html b/doc/api/html/matrix__error__handling_8hpp_source.html new file mode 100644 index 00000000000..fc373738ab9 --- /dev/null +++ b/doc/api/html/matrix__error__handling_8hpp_source.html @@ -0,0 +1,128 @@ + + + + + +Stan: src/stan/math/matrix_error_handling.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
matrix_error_handling.hpp
+
+ +
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/matrix__normal_8hpp.html b/doc/api/html/matrix__normal_8hpp.html new file mode 100644 index 00000000000..b17749ae8e0 --- /dev/null +++ b/doc/api/html/matrix__normal_8hpp.html @@ -0,0 +1,149 @@ + + + + + +Stan: src/stan/prob/distributions/multivariate/continuous/matrix_normal.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
matrix_normal.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::prob
 Templated probability distributions.
 
+ + + + + + + + +

+Functions

template<bool propto, typename T_y , typename T_Mu , typename T_Sigma , typename T_D >
boost::math::tools::promote_args
+< T_y, T_Mu, T_Sigma, T_D >
+::type 
stan::prob::matrix_normal_prec_log (const Eigen::Matrix< T_y, Eigen::Dynamic, Eigen::Dynamic > &y, const Eigen::Matrix< T_Mu, Eigen::Dynamic, Eigen::Dynamic > &Mu, const Eigen::Matrix< T_Sigma, Eigen::Dynamic, Eigen::Dynamic > &Sigma, const Eigen::Matrix< T_D, Eigen::Dynamic, Eigen::Dynamic > &D)
 The log of the matrix normal density for the given y, mu, Sigma and D where Sigma and D are given as precision matrices, not covariance matrices.
 
template<typename T_y , typename T_Mu , typename T_Sigma , typename T_D >
boost::math::tools::promote_args
+< T_y, T_Mu, T_Sigma, T_D >
+::type 
stan::prob::matrix_normal_prec_log (const Eigen::Matrix< T_y, Eigen::Dynamic, Eigen::Dynamic > &y, const Eigen::Matrix< T_Mu, Eigen::Dynamic, Eigen::Dynamic > &Mu, const Eigen::Matrix< T_Sigma, Eigen::Dynamic, Eigen::Dynamic > &Sigma, const Eigen::Matrix< T_D, Eigen::Dynamic, Eigen::Dynamic > &D)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/matrix__normal_8hpp_source.html b/doc/api/html/matrix__normal_8hpp_source.html new file mode 100644 index 00000000000..9d5fc8d9a16 --- /dev/null +++ b/doc/api/html/matrix__normal_8hpp_source.html @@ -0,0 +1,233 @@ + + + + + +Stan: src/stan/prob/distributions/multivariate/continuous/matrix_normal.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
matrix_normal.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__PROB__DISTRIBUTIONS__MULTIVARIATE__CONTINUOUS__MATRIX_NORMAL_HPP__
+
2 #define __STAN__PROB__DISTRIBUTIONS__MULTIVARIATE__CONTINUOUS__MATRIX_NORMAL_HPP__
+
3 
+ + + +
7 #include <stan/prob/traits.hpp>
+
8 #include <stan/agrad/rev.hpp>
+
9 #include <stan/meta/traits.hpp>
+ +
11 #include <stan/math/matrix/log.hpp>
+ + + + + +
17 
+
18 namespace stan {
+
19  namespace prob {
+
38  template <bool propto,
+
39  typename T_y, typename T_Mu, typename T_Sigma, typename T_D>
+
40  typename boost::math::tools::promote_args<T_y,T_Mu,T_Sigma,T_D>::type
+
41  matrix_normal_prec_log(const Eigen::Matrix<T_y,Eigen::Dynamic,Eigen::Dynamic>& y,
+
42  const Eigen::Matrix<T_Mu,Eigen::Dynamic,Eigen::Dynamic>& Mu,
+
43  const Eigen::Matrix<T_Sigma,Eigen::Dynamic,Eigen::Dynamic>& Sigma,
+
44  const Eigen::Matrix<T_D,Eigen::Dynamic,Eigen::Dynamic>& D) {
+
45  static const char* function = "stan::prob::matrix_normal_prec_log(%1%)";
+
46  typename boost::math::tools::promote_args<T_y,T_Mu,T_Sigma,T_D>::type lp(0.0);
+
47 
+ + + + + + + + +
56  using stan::math::LDLT_factor;
+ +
58 
+
59  if (!check_size_match(function,
+
60  Sigma.rows(), "Rows of Sigma",
+
61  Sigma.cols(), "columns of Sigma",
+
62  &lp))
+
63  return lp;
+
64  if (!check_positive(function, Sigma.rows(), "Sigma rows", &lp))
+
65  return lp;
+
66  if (!check_finite(function, Sigma, "Sigma", &lp))
+
67  return lp;
+
68  if (!check_symmetric(function, Sigma, "Sigma", &lp))
+
69  return lp;
+
70 
+ +
72  if(!check_ldlt_factor(function,ldlt_Sigma,"LDLT_Factor of Sigma",&lp))
+
73  return lp;
+
74 
+
75  if (!check_size_match(function,
+
76  D.rows(), "Rows of D",
+
77  D.cols(), "Columns of D",
+
78  &lp))
+
79  return lp;
+
80  if (!check_positive(function, D.rows(), "D rows", &lp))
+
81  return lp;
+
82  if (!check_finite(function, D, "D", &lp))
+
83  return lp;
+
84  if (!check_symmetric(function, D, "Sigma", &lp))
+
85  return lp;
+
86 
+ +
88  if(!check_ldlt_factor(function,ldlt_D,"LDLT_Factor of D",&lp))
+
89  return lp;
+
90 
+
91  if (!check_size_match(function,
+
92  y.rows(), "Rows of random variable",
+
93  Mu.rows(), "Rows of location parameter",
+
94  &lp))
+
95  return lp;
+
96  if (!check_size_match(function,
+
97  y.cols(), "Columns of random variable",
+
98  Mu.cols(), "Columns of location parameter",
+
99  &lp))
+
100  return lp;
+
101  if (!check_size_match(function,
+
102  y.rows(), "Rows of random variable",
+
103  Sigma.rows(), "Rows of Sigma",
+
104  &lp))
+
105  return lp;
+
106  if (!check_size_match(function,
+
107  y.cols(), "Columns of random variable",
+
108  D.rows(), "Rows of D",
+
109  &lp))
+
110  return lp;
+
111  if (!check_finite(function, Mu, "Location parameter", &lp))
+
112  return lp;
+
113  if (!check_finite(function, y, "Random variable", &lp))
+
114  return lp;
+
115 
+ +
117  lp += NEG_LOG_SQRT_TWO_PI * y.cols() * y.rows();
+
118 
+ +
120  lp += log_determinant_ldlt(ldlt_Sigma) * (0.5 * y.rows());
+
121  }
+
122 
+ +
124  lp += log_determinant_ldlt(ldlt_D) * (0.5 * y.cols());
+
125  }
+
126 
+ +
128  lp -= 0.5 * trace_gen_quad_form(D,Sigma,subtract(y,Mu));
+
129  }
+
130  return lp;
+
131  }
+
132 
+
133  template <typename T_y, typename T_Mu, typename T_Sigma, typename T_D>
+
134  typename boost::math::tools::promote_args<T_y,T_Mu,T_Sigma,T_D>::type
+
135  matrix_normal_prec_log(const Eigen::Matrix<T_y,Eigen::Dynamic,Eigen::Dynamic>& y,
+
136  const Eigen::Matrix<T_Mu,Eigen::Dynamic,Eigen::Dynamic>& Mu,
+
137  const Eigen::Matrix<T_Sigma,Eigen::Dynamic,Eigen::Dynamic>& Sigma,
+
138  const Eigen::Matrix<T_D,Eigen::Dynamic,Eigen::Dynamic>& D) {
+
139  return matrix_normal_prec_log<false>(y,Mu,Sigma,D);
+
140  }
+
141  }
+
142 }
+
143 
+
144 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/matrix__vari_8hpp.html b/doc/api/html/matrix__vari_8hpp.html new file mode 100644 index 00000000000..98b575b94d8 --- /dev/null +++ b/doc/api/html/matrix__vari_8hpp.html @@ -0,0 +1,130 @@ + + + + + +Stan: src/stan/agrad/rev/internal/matrix_vari.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
matrix_vari.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + +

+Classes

class  stan::agrad::op_matrix_vari
 
+ + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/matrix__vari_8hpp_source.html b/doc/api/html/matrix__vari_8hpp_source.html new file mode 100644 index 00000000000..de39b1e8f8a --- /dev/null +++ b/doc/api/html/matrix__vari_8hpp_source.html @@ -0,0 +1,142 @@ + + + + + +Stan: src/stan/agrad/rev/internal/matrix_vari.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
matrix_vari.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__REV__INTERNAL__MATRIX_VARI_HPP__
+
2 #define __STAN__AGRAD__REV__INTERNAL__MATRIX_VARI_HPP__
+
3 
+ +
5 #include <stan/agrad/rev/var.hpp>
+ +
7 
+
8 namespace stan {
+
9  namespace agrad {
+
10 
+
11  class op_matrix_vari : public vari {
+
12  protected:
+
13  const size_t size_;
+ +
15  public:
+
16  template <int R, int C>
+
17  op_matrix_vari(double f, const Eigen::Matrix<stan::agrad::var,R,C>& vs) :
+
18  vari(f),
+
19  size_(vs.size()) {
+
20 
+
21  vis_ = (vari**) operator new(sizeof(vari*) * vs.size());
+
22  for (int i = 0; i < vs.size(); ++i)
+
23  vis_[i] = vs(i).vi_;
+
24  }
+
25  vari* operator[](size_t n) const {
+
26  return vis_[n];
+
27  }
+
28  size_t size() {
+
29  return size_;
+
30  }
+
31  };
+
32 
+
33  }
+
34 }
+
35 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/mcmc_8hpp.html b/doc/api/html/mcmc_8hpp.html new file mode 100644 index 00000000000..67287aa362f --- /dev/null +++ b/doc/api/html/mcmc_8hpp.html @@ -0,0 +1,123 @@ + + + + + +Stan: src/stan/mcmc.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
mcmc.hpp File Reference
+
+ +
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/mcmc_8hpp_source.html b/doc/api/html/mcmc_8hpp_source.html new file mode 100644 index 00000000000..2fa27873f26 --- /dev/null +++ b/doc/api/html/mcmc_8hpp_source.html @@ -0,0 +1,128 @@ + + + + + +Stan: src/stan/mcmc.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
mcmc.hpp
+
+ +
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/mcmc__writer_8hpp.html b/doc/api/html/mcmc__writer_8hpp.html new file mode 100644 index 00000000000..fd2f6dda222 --- /dev/null +++ b/doc/api/html/mcmc__writer_8hpp.html @@ -0,0 +1,134 @@ + + + + + +Stan: src/stan/io/mcmc_writer.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
mcmc_writer.hpp File Reference
+
+
+
#include <ostream>
+#include <iomanip>
+#include <string>
+#include <vector>
+#include <stan/mcmc/base_mcmc.hpp>
+#include <stan/mcmc/sample.hpp>
+#include <stan/model/prob_grad.hpp>
+
+

Go to the source code of this file.

+ + + + +

+Classes

class  stan::io::mcmc_writer< M >
 
+ + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::io
 Input/output utilities.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/mcmc__writer_8hpp_source.html b/doc/api/html/mcmc__writer_8hpp_source.html new file mode 100644 index 00000000000..73a31edc7ed --- /dev/null +++ b/doc/api/html/mcmc__writer_8hpp_source.html @@ -0,0 +1,281 @@ + + + + + +Stan: src/stan/io/mcmc_writer.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
mcmc_writer.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__IO__MCMC__WRITER__HPP
+
2 #define __STAN__IO__MCMC__WRITER__HPP
+
3 
+
4 #include <ostream>
+
5 #include <iomanip>
+
6 #include <string>
+
7 #include <vector>
+
8 
+ +
10 #include <stan/mcmc/sample.hpp>
+
11 #include <stan/model/prob_grad.hpp>
+
12 
+
13 namespace stan {
+
14 
+
15  namespace io {
+
16 
+
17  template <class M>
+
18  class mcmc_writer {
+
19 
+
20  public:
+
21 
+
22  mcmc_writer(std::ostream* sample_stream,
+
23  std::ostream* diagnostic_stream,
+
24  std::ostream* msg_stream = 0)
+
25  : sample_stream_(sample_stream),
+
26  diagnostic_stream_(diagnostic_stream),
+
27  msg_stream_(msg_stream) {
+
28  }
+
29 
+ +
31  stan::mcmc::base_mcmc* sampler,
+
32  M& model) {
+
33 
+
34  if (!sample_stream_) return;
+
35 
+
36  std::vector<std::string> names;
+
37 
+
38  sample.get_sample_param_names(names);
+
39  sampler->get_sampler_param_names(names);
+
40  model.constrained_param_names(names, true, true);
+
41 
+
42  (*sample_stream_) << names.at(0);
+
43  for (size_t i = 1; i < names.size(); ++i) {
+
44  (*sample_stream_) << "," << names.at(i);
+
45  }
+
46  (*sample_stream_) << std::endl;
+
47 
+
48  }
+
49 
+
50  template <class RNG>
+
51  void print_sample_params(RNG& rng,
+ +
53  stan::mcmc::base_mcmc& sampler,
+
54  M& model) {
+
55 
+
56  if (!sample_stream_) return;
+
57 
+
58  std::vector<double> values;
+
59 
+
60  sample.get_sample_params(values);
+
61  sampler.get_sampler_params(values);
+
62 
+
63  Eigen::VectorXd model_values;
+
64 
+
65  model.write_array(rng,
+
66  const_cast<Eigen::VectorXd&>(sample.cont_params()),
+
67  model_values,
+
68  true, true,
+
69  msg_stream_);
+
70 
+
71  for (int i = 0; i < model_values.size(); ++i)
+
72  values.push_back(model_values(i));
+
73 
+
74  (*sample_stream_) << values.at(0);
+
75  for (size_t i = 1; i < values.size(); ++i) {
+
76  (*sample_stream_) << "," << values.at(i);
+
77  }
+
78  (*sample_stream_) << std::endl;
+
79 
+
80  }
+
81 
+
82  void print_adapt_finish(stan::mcmc::base_mcmc* sampler, std::ostream* stream) {
+
83 
+
84  if (!stream) return;
+
85 
+
86  *stream << "# Adaptation terminated" << std::endl;
+
87  sampler->write_sampler_state(stream);
+
88 
+
89  }
+
90 
+ +
92  print_adapt_finish(sampler, sample_stream_);
+
93  print_adapt_finish(sampler, diagnostic_stream_);
+
94  }
+
95 
+ +
97  stan::mcmc::base_mcmc* sampler,
+
98  M& model) {
+
99 
+
100  if (!diagnostic_stream_) return;
+
101 
+
102  std::vector<std::string> names;
+
103 
+
104  sample.get_sample_param_names(names);
+
105  sampler->get_sampler_param_names(names);
+
106 
+
107  std::vector<std::string> model_names;
+
108  model.unconstrained_param_names(model_names, false, false);
+
109 
+
110  sampler->get_sampler_diagnostic_names(model_names, names);
+
111 
+
112  for (size_t i = 0; i < names.size(); ++i) {
+
113  if (i > 0) *diagnostic_stream_ << ",";
+
114  *diagnostic_stream_ << names.at(i);
+
115  }
+
116  *diagnostic_stream_ << std::endl;
+
117 
+
118  }
+
119 
+ +
121  stan::mcmc::base_mcmc* sampler) {
+
122 
+
123  if (!diagnostic_stream_) return;
+
124 
+
125  std::vector<double> values;
+
126 
+
127  sample.get_sample_params(values);
+
128  sampler->get_sampler_params(values);
+
129  sampler->get_sampler_diagnostics(values);
+
130 
+
131  (*diagnostic_stream_) << values.at(0);
+
132  for (size_t i = 1; i < values.size(); ++i) {
+
133  (*diagnostic_stream_) << "," << values.at(i);
+
134  }
+
135  (*diagnostic_stream_) << std::endl;
+
136 
+
137  }
+
138 
+
139  void print_timing(double warmDeltaT, double sampleDeltaT,
+
140  std::ostream* stream, const std::string& prefix = "") {
+
141  if (!stream) return;
+
142 
+
143  std::string title(" Elapsed Time: ");
+
144 
+
145  *stream << std::endl
+
146  << prefix << " " << title << warmDeltaT
+
147  << " seconds (Warm-up)" << std::endl
+
148  << prefix << " " << std::string(title.size(), ' ') << sampleDeltaT
+
149  << " seconds (Sampling)" << std::endl
+
150  << prefix << " " << std::string(title.size(), ' ')
+
151  << warmDeltaT + sampleDeltaT
+
152  << " seconds (Total)" << std::endl
+
153  << std::endl;
+
154  }
+
155 
+
156  void print_timing(double warmDeltaT, double sampleDeltaT) {
+
157  print_timing(warmDeltaT, sampleDeltaT, sample_stream_, "#");
+
158  print_timing(warmDeltaT, sampleDeltaT, diagnostic_stream_, "#");
+
159  print_timing(warmDeltaT, sampleDeltaT, &std::cout);
+
160  }
+
161 
+
162  private:
+
163 
+
164  std::ostream* sample_stream_;
+
165  std::ostream* diagnostic_stream_;
+
166  std::ostream* msg_stream_;
+
167 
+
168  };
+
169 
+
170  } //io
+
171 
+
172 } // stan
+
173 
+
174 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/mdivide__right__ldlt_8hpp.html b/doc/api/html/mdivide__right__ldlt_8hpp.html new file mode 100644 index 00000000000..1f4bc2358f0 --- /dev/null +++ b/doc/api/html/mdivide__right__ldlt_8hpp.html @@ -0,0 +1,140 @@ + + + + + +Stan: src/stan/math/matrix/mdivide_right_ldlt.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
mdivide_right_ldlt.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::math
 Matrices and templated mathematical functions.
 
+ + + + + + + + +

+Functions

template<typename T1 , typename T2 , int R1, int C1, int R2, int C2>
Eigen::Matrix< typename
+boost::math::tools::promote_args
+< T1, T2 >::type, R1, C2 > 
stan::math::mdivide_right_ldlt (const Eigen::Matrix< T1, R1, C1 > &b, const stan::math::LDLT_factor< T2, R2, C2 > &A)
 Returns the solution of the system xA=b given an LDLT_factor of A.
 
template<int R1, int C1, int R2, int C2>
Eigen::Matrix< double, R1, C2 > stan::math::mdivide_right_ldlt (const Eigen::Matrix< double, R1, C1 > &b, const stan::math::LDLT_factor< double, R2, C2 > &A)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/mdivide__right__ldlt_8hpp_source.html b/doc/api/html/mdivide__right__ldlt_8hpp_source.html new file mode 100644 index 00000000000..2f9b0696614 --- /dev/null +++ b/doc/api/html/mdivide__right__ldlt_8hpp_source.html @@ -0,0 +1,143 @@ + + + + + +Stan: src/stan/math/matrix/mdivide_right_ldlt.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
mdivide_right_ldlt.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MATH__MATRIX__MDIVIDE_RIGHT_LDLT_HPP__
+
2 #define __STAN__MATH__MATRIX__MDIVIDE_RIGHT_LDLT_HPP__
+
3 
+ + + + + +
9 #include <boost/math/tools/promotion.hpp>
+
10 
+
11 namespace stan {
+
12  namespace math {
+
13 
+
22  template <typename T1, typename T2, int R1, int C1, int R2, int C2>
+
23  inline
+
24  Eigen::Matrix<typename boost::math::tools::promote_args<T1,T2>::type,R1,C2>
+
25  mdivide_right_ldlt(const Eigen::Matrix<T1,R1,C1> &b,
+
26  const stan::math::LDLT_factor<T2,R2,C2> &A) {
+ +
28  stan::math::validate_multiplicable(b,A,"mdivide_right_ldlt");
+
29 
+ +
31  }
+
32 
+
33  template <int R1, int C1, int R2, int C2>
+
34  inline Eigen::Matrix<double,R1,C2>
+
35  mdivide_right_ldlt(const Eigen::Matrix<double,R1,C1> &b,
+
36  const stan::math::LDLT_factor<double,R2,C2> &A) {
+
37  stan::math::validate_multiplicable(b,A,"mdivide_right_ldlt");
+
38 
+
39  return A.solveRight(b);
+
40  }
+
41 
+
42  }
+
43 }
+
44 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/mdivide__right__spd_8hpp.html b/doc/api/html/mdivide__right__spd_8hpp.html new file mode 100644 index 00000000000..2cf29b0ca9f --- /dev/null +++ b/doc/api/html/mdivide__right__spd_8hpp.html @@ -0,0 +1,137 @@ + + + + + +Stan: src/stan/math/matrix/mdivide_right_spd.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
mdivide_right_spd.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::math
 Matrices and templated mathematical functions.
 
+ + + + + +

+Functions

template<typename T1 , typename T2 , int R1, int C1, int R2, int C2>
Eigen::Matrix< typename
+boost::math::tools::promote_args
+< T1, T2 >::type, R1, C2 > 
stan::math::mdivide_right_spd (const Eigen::Matrix< T1, R1, C1 > &b, const Eigen::Matrix< T2, R2, C2 > &A)
 Returns the solution of the system Ax=b where A is symmetric positive definite.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/mdivide__right__spd_8hpp_source.html b/doc/api/html/mdivide__right__spd_8hpp_source.html new file mode 100644 index 00000000000..50a8db25261 --- /dev/null +++ b/doc/api/html/mdivide__right__spd_8hpp_source.html @@ -0,0 +1,134 @@ + + + + + +Stan: src/stan/math/matrix/mdivide_right_spd.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
mdivide_right_spd.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MATH__MATRIX__MDIVIDE_RIGHT_SPD_HPP__
+
2 #define __STAN__MATH__MATRIX__MDIVIDE_RIGHT_SPD_HPP__
+
3 
+
4 #include <boost/math/tools/promotion.hpp>
+ + + + + +
10 
+
11 namespace stan {
+
12  namespace math {
+
13 
+
23  template <typename T1, typename T2, int R1, int C1, int R2, int C2>
+
24  inline
+
25  Eigen::Matrix<typename boost::math::tools::promote_args<T1,T2>::type,R1,C2>
+
26  mdivide_right_spd(const Eigen::Matrix<T1,R1,C1> &b,
+
27  const Eigen::Matrix<T2,R2,C2> &A) {
+
28  stan::math::validate_square(A,"mdivide_right_spd");
+
29  stan::math::validate_multiplicable(b,A,"mdivide_right_spd");
+
30  // FIXME: This is nice and general but likely slow.
+
31  return transpose(mdivide_left_spd(A,transpose(b)));
+
32  }
+
33 
+
34  }
+
35 }
+
36 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/mdivide__right__tri_8hpp.html b/doc/api/html/mdivide__right__tri_8hpp.html new file mode 100644 index 00000000000..a5115ff865a --- /dev/null +++ b/doc/api/html/mdivide__right__tri_8hpp.html @@ -0,0 +1,138 @@ + + + + + +Stan: src/stan/math/matrix/mdivide_right_tri.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
mdivide_right_tri.hpp File Reference
+
+
+
#include <stdexcept>
+#include <boost/math/tools/promotion.hpp>
+#include <stan/math/matrix/Eigen.hpp>
+#include <stan/math/matrix/mdivide_left_tri.hpp>
+#include <stan/math/matrix/transpose.hpp>
+#include <stan/math/matrix/validate_multiplicable.hpp>
+#include <stan/math/matrix/validate_square.hpp>
+
+

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::math
 Matrices and templated mathematical functions.
 
+ + + + + +

+Functions

template<int TriView, typename T1 , typename T2 , int R1, int C1, int R2, int C2>
Eigen::Matrix< typename
+boost::math::tools::promote_args
+< T1, T2 >::type, R1, C2 > 
stan::math::mdivide_right_tri (const Eigen::Matrix< T1, R1, C1 > &b, const Eigen::Matrix< T2, R2, C2 > &A)
 Returns the solution of the system Ax=b when A is triangular.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/mdivide__right__tri_8hpp_source.html b/doc/api/html/mdivide__right__tri_8hpp_source.html new file mode 100644 index 00000000000..af6aa31bf76 --- /dev/null +++ b/doc/api/html/mdivide__right__tri_8hpp_source.html @@ -0,0 +1,144 @@ + + + + + +Stan: src/stan/math/matrix/mdivide_right_tri.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
mdivide_right_tri.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MATH__MATRIX__MDIVIDE_RIGHT_TRI_HPP__
+
2 #define __STAN__MATH__MATRIX__MDIVIDE_RIGHT_TRI_HPP__
+
3 
+
4 #include <stdexcept>
+
5 #include <boost/math/tools/promotion.hpp>
+ + + + + +
11 
+
12 namespace stan {
+
13  namespace math {
+
14 
+
24  template <int TriView, typename T1, typename T2,
+
25  int R1, int C1, int R2, int C2>
+
26  inline
+
27  Eigen::Matrix<typename boost::math::tools::promote_args<T1,T2>::type,R1,C2>
+
28  mdivide_right_tri(const Eigen::Matrix<T1,R1,C1> &b,
+
29  const Eigen::Matrix<T2,R2,C2> &A) {
+
30  stan::math::validate_square(A,"mdivide_left_tri_low");
+
31  stan::math::validate_multiplicable(b,A,"mdivide_right_tri");
+
32  // FIXME: This is nice and general but requires some extra memory and copying.
+
33  if (TriView == Eigen::Lower) {
+
34  return transpose(mdivide_left_tri<Eigen::Upper>(transpose(A),transpose(b)));
+
35  }
+
36  else if (TriView == Eigen::Upper) {
+
37  return transpose(mdivide_left_tri<Eigen::Lower>(transpose(A),transpose(b)));
+
38  }
+
39  else {
+
40  throw std::domain_error("triangular view must be Eigen::Lower or Eigen::Upper");
+
41  }
+
42  }
+
43 
+
44  }
+
45 }
+
46 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/mean_8hpp.html b/doc/api/html/mean_8hpp.html new file mode 100644 index 00000000000..4352e3b8619 --- /dev/null +++ b/doc/api/html/mean_8hpp.html @@ -0,0 +1,139 @@ + + + + + +Stan: src/stan/math/matrix/mean.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
mean.hpp File Reference
+
+
+
#include <vector>
+#include <boost/math/tools/promotion.hpp>
+#include <stan/math/matrix/Eigen.hpp>
+#include <stan/math/matrix/validate_nonzero_size.hpp>
+
+

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::math
 Matrices and templated mathematical functions.
 
+ + + + + + + + + +

+Functions

template<typename T >
boost::math::tools::promote_args
+< T >::type 
stan::math::mean (const std::vector< T > &v)
 Returns the sample mean (i.e., average) of the coefficients in the specified standard vector.
 
template<typename T , int R, int C>
boost::math::tools::promote_args
+< T >::type 
stan::math::mean (const Eigen::Matrix< T, R, C > &m)
 Returns the sample mean (i.e., average) of the coefficients in the specified vector, row vector, or matrix.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/mean_8hpp_source.html b/doc/api/html/mean_8hpp_source.html new file mode 100644 index 00000000000..287d53c2d47 --- /dev/null +++ b/doc/api/html/mean_8hpp_source.html @@ -0,0 +1,140 @@ + + + + + +Stan: src/stan/math/matrix/mean.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
mean.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MATH__MATRIX__MEAN_HPP__
+
2 #define __STAN__MATH__MATRIX__MEAN_HPP__
+
3 
+
4 #include <vector>
+
5 #include <boost/math/tools/promotion.hpp>
+ + +
8 
+
9 namespace stan {
+
10  namespace math {
+
11 
+
20  template <typename T>
+
21  inline
+
22  typename boost::math::tools::promote_args<T>::type
+
23  mean(const std::vector<T>& v) {
+
24  validate_nonzero_size(v,"mean");
+
25  T sum(v[0]);
+
26  for (size_t i = 1; i < v.size(); ++i)
+
27  sum += v[i];
+
28  return sum / v.size();
+
29  }
+
30 
+
37  template <typename T, int R, int C>
+
38  inline
+
39  typename boost::math::tools::promote_args<T>::type
+
40  mean(const Eigen::Matrix<T,R,C>& m) {
+
41  validate_nonzero_size(m,"mean");
+
42  return m.mean();
+
43  }
+
44 
+
45  }
+
46 }
+
47 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/memory_8hpp.html b/doc/api/html/memory_8hpp.html new file mode 100644 index 00000000000..b960e0461b3 --- /dev/null +++ b/doc/api/html/memory_8hpp.html @@ -0,0 +1,110 @@ + + + + + +Stan: src/stan/memory.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
memory.hpp File Reference
+
+ +
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/memory_8hpp_source.html b/doc/api/html/memory_8hpp_source.html new file mode 100644 index 00000000000..fb8d61774b5 --- /dev/null +++ b/doc/api/html/memory_8hpp_source.html @@ -0,0 +1,114 @@ + + + + + +Stan: src/stan/memory.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
memory.hpp
+
+
+Go to the documentation of this file.
1 #ifndef STAN_MEMORY_HPP
+
2 #define STAN_MEMORY_HPP
+
3 
+ +
5 
+
6 #endif
+
7 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/meta_2traits_8hpp.html b/doc/api/html/meta_2traits_8hpp.html new file mode 100644 index 00000000000..dc311ee09ad --- /dev/null +++ b/doc/api/html/meta_2traits_8hpp.html @@ -0,0 +1,235 @@ + + + + + +Stan: src/stan/meta/traits.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
traits.hpp File Reference
+
+
+
#include <stan/agrad/fwd/fvar.hpp>
+#include <stan/agrad/rev/var.hpp>
+#include <vector>
+#include <boost/type_traits.hpp>
+#include <boost/type_traits/is_arithmetic.hpp>
+#include <boost/math/tools/promotion.hpp>
+#include <stan/math/matrix.hpp>
+
+

Go to the source code of this file.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Classes

struct  stan::is_constant< T >
 Metaprogramming struct to detect whether a given type is constant in the mathematical sense (not the C++ const sense). More...
 
struct  stan::is_constant_struct< T >
 Metaprogram to determine if a type has a base scalar type that can be assigned to type double. More...
 
struct  stan::is_constant_struct< std::vector< T > >
 
struct  stan::is_constant_struct< Eigen::Matrix< T, R, C > >
 
struct  stan::is_constant_struct< Eigen::Block< T > >
 
struct  stan::is_vector< T >
 
struct  stan::is_vector< const T >
 
struct  stan::is_vector< std::vector< T > >
 
struct  stan::is_vector< Eigen::Matrix< T, Eigen::Dynamic, 1 > >
 
struct  stan::is_vector< Eigen::Matrix< T, 1, Eigen::Dynamic > >
 
struct  stan::scalar_type< T >
 Metaprogram structure to determine the base scalar type of a template argument. More...
 
struct  stan::size_of_helper< T, is_vec >
 
struct  stan::size_of_helper< T, true >
 
struct  stan::scalar_type< Eigen::Matrix< T, Eigen::Dynamic, Eigen::Dynamic > >
 
struct  stan::scalar_type< T * >
 
struct  stan::is_vector_like< T >
 
struct  stan::is_vector_like< T * >
 
struct  stan::is_vector_like< const T >
 
struct  stan::is_vector_like< Eigen::Matrix< T, Eigen::Dynamic, Eigen::Dynamic > >
 
class  stan::VectorView< T, is_array, throw_if_accessed >
 VectorView is a template metaprogram that takes its argument and allows it to be used like a vector. More...
 
class  stan::VectorView< const T, is_array, throw_if_accessed >
 VectorView that has const correctness. More...
 
class  stan::VectorView< const double, false, false >
 
class  stan::DoubleVectorView< used, is_vec >
 DoubleVectorView allocates double values to be used as intermediate values. More...
 
class  stan::DoubleVectorView< true, false >
 
class  stan::DoubleVectorView< true, true >
 
struct  stan::return_type< T1, T2, T3, T4, T5, T6 >
 Metaprogram to calculate the base scalar return type resulting from promoting all the scalar types of the template parameters. More...
 
struct  stan::is_fvar< T >
 
struct  stan::is_fvar< stan::agrad::fvar< T > >
 
struct  stan::is_var< T >
 
struct  stan::is_var< stan::agrad::var >
 
struct  stan::contains_fvar< T1, T2, T3, T4, T5, T6 >
 Metaprogram to calculate the base scalar return type resulting from promoting all the scalar types of the template parameters. More...
 
struct  stan::is_var_or_arithmetic< T1, T2, T3, T4, T5, T6 >
 
+ + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Functions

template<typename T >
stan::get (const T &x, size_t n)
 
template<typename T >
stan::get (const std::vector< T > &x, size_t n)
 
template<typename T , int R, int C>
stan::get (const Eigen::Matrix< T, R, C > &m, size_t n)
 
template<typename T >
size_t stan::length (const T &)
 
template<typename T >
size_t stan::length (const std::vector< T > &x)
 
template<typename T , int R, int C>
size_t stan::length (const Eigen::Matrix< T, R, C > &m)
 
template<typename T >
size_t stan::size_of (const T &x)
 
template<typename T1 , typename T2 >
size_t stan::max_size (const T1 &x1, const T2 &x2)
 
template<typename T1 , typename T2 , typename T3 >
size_t stan::max_size (const T1 &x1, const T2 &x2, const T3 &x3)
 
template<typename T1 , typename T2 , typename T3 , typename T4 >
size_t stan::max_size (const T1 &x1, const T2 &x2, const T3 &x3, const T4 &x4)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/meta_2traits_8hpp_source.html b/doc/api/html/meta_2traits_8hpp_source.html new file mode 100644 index 00000000000..1307f8ffd8e --- /dev/null +++ b/doc/api/html/meta_2traits_8hpp_source.html @@ -0,0 +1,482 @@ + + + + + +Stan: src/stan/meta/traits.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
traits.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__META__TRAITS_HPP__
+
2 #define __STAN__META__TRAITS_HPP__
+
3 
+ +
5 // #include <stan/agrad/partials_vari.hpp>
+
6 #include <stan/agrad/rev/var.hpp>
+
7 #include <vector>
+
8 #include <boost/type_traits.hpp>
+
9 #include <boost/type_traits/is_arithmetic.hpp>
+
10 
+
11 #include <boost/math/tools/promotion.hpp>
+
12 #include <stan/math/matrix.hpp>
+
13 
+
14 namespace stan {
+
15 
+
29  template <typename T>
+
30  struct is_constant {
+
35  enum { value = boost::is_convertible<T,double>::value };
+
36  };
+
37 
+
38 
+
43  template <typename T>
+ + +
46  };
+
47 
+
48 
+
49  template <typename T>
+
50  struct is_constant_struct<std::vector<T> > {
+ +
52  };
+
53 
+
54  template <typename T, int R, int C>
+
55  struct is_constant_struct<Eigen::Matrix<T,R,C> > {
+ +
57  };
+
58 
+
59  template <typename T>
+
60  struct is_constant_struct<Eigen::Block<T> > {
+ +
62  };
+
63 
+
64 
+
65 
+
66 
+
67  // FIXME: use boost::type_traits::remove_all_extents to extend to array/ptr types
+
68 
+
69  template <typename T>
+
70  struct is_vector {
+
71  enum { value = 0 };
+
72  typedef T type;
+
73  };
+
74  template <typename T>
+
75  struct is_vector<const T> {
+ +
77  typedef T type;
+
78  };
+
79  template <typename T>
+
80  struct is_vector<std::vector<T> > {
+
81  enum { value = 1 };
+
82  typedef T type;
+
83  };
+
84 
+
85  template <typename T>
+
86  struct is_vector<Eigen::Matrix<T,Eigen::Dynamic,1> > {
+
87  enum { value = 1 };
+
88  typedef T type;
+
89  };
+
90  template <typename T>
+
91  struct is_vector<Eigen::Matrix<T,1,Eigen::Dynamic> > {
+
92  enum { value = 1 };
+
93  typedef T type;
+
94  };
+
95 
+
96  namespace {
+
97  template <bool is_vec, typename T>
+
98  struct scalar_type_helper {
+
99  typedef T type;
+
100  };
+
101 
+
102  template <typename T>
+
103  struct scalar_type_helper<true, T> {
+
104  typedef typename scalar_type_helper<is_vector<typename T::value_type>::value, typename T::value_type>::type type;
+
105  };
+
106  }
+
115  template <typename T>
+
116  struct scalar_type {
+
117  typedef typename scalar_type_helper<is_vector<T>::value, T>::type type;
+
118  };
+
119 
+
120  template <typename T>
+
121  inline T get(const T& x, size_t n) {
+
122  return x;
+
123  }
+
124  template <typename T>
+
125  inline T get(const std::vector<T>& x, size_t n) {
+
126  return x[n];
+
127  }
+
128  template <typename T, int R, int C>
+
129  inline T get(const Eigen::Matrix<T,R,C>& m, size_t n) {
+
130  return m(static_cast<int>(n));
+
131  }
+
132 
+
133 
+
134 
+
135  // length() should only be applied to primitive or std vector or Eigen vector
+
136  template <typename T>
+
137  size_t length(const T& /*x*/) {
+
138  return 1U;
+
139  }
+
140  template <typename T>
+
141  size_t length(const std::vector<T>& x) {
+
142  return x.size();
+
143  }
+
144  template <typename T, int R, int C>
+
145  size_t length(const Eigen::Matrix<T,R,C>& m) {
+
146  return m.size();
+
147  }
+
148 
+
149  template<typename T, bool is_vec>
+
150  struct size_of_helper {
+
151  static size_t size_of(const T& /*x*/) {
+
152  return 1U;
+
153  }
+
154  };
+
155 
+
156  template<typename T>
+
157  struct size_of_helper<T, true> {
+
158  static size_t size_of(const T& x) {
+
159  return x.size();
+
160  }
+
161  };
+
162 
+
163  template <typename T>
+
164  size_t size_of(const T& x) {
+ +
166  }
+
167 
+
168  template <typename T1, typename T2>
+
169  size_t max_size(const T1& x1, const T2& x2) {
+
170  size_t result = length(x1);
+
171  result = result > length(x2) ? result : length(x2);
+
172  return result;
+
173  }
+
174 
+
175  template <typename T1, typename T2, typename T3>
+
176  size_t max_size(const T1& x1, const T2& x2, const T3& x3) {
+
177  size_t result = length(x1);
+
178  result = result > length(x2) ? result : length(x2);
+
179  result = result > length(x3) ? result : length(x3);
+
180  return result;
+
181  }
+
182 
+
183  template <typename T1, typename T2, typename T3, typename T4>
+
184  size_t max_size(const T1& x1, const T2& x2, const T3& x3, const T4& x4) {
+
185  size_t result = length(x1);
+
186  result = result > length(x2) ? result : length(x2);
+
187  result = result > length(x3) ? result : length(x3);
+
188  result = result > length(x4) ? result : length(x4);
+
189  return result;
+
190  }
+
191 
+
192  // ****************** additions for new VV *************************
+
193  template <typename T>
+
194  struct scalar_type<Eigen::Matrix<T,Eigen::Dynamic,Eigen::Dynamic> > {
+
195  typedef typename scalar_type<T>::type type;
+
196  };
+
197 
+
198  template <typename T>
+
199  struct scalar_type<T*> {
+
200  typedef typename scalar_type<T>::type type;
+
201  };
+
202 
+
203 
+
204  // handles scalar, eigen vec, eigen row vec, std vec
+
205  template <typename T>
+
206  struct is_vector_like {
+ +
208  };
+
209  template <typename T>
+
210  struct is_vector_like<T*> {
+
211  enum { value = true };
+
212  };
+
213  // handles const
+
214  template <typename T>
+
215  struct is_vector_like<const T> {
+ +
217  };
+
218  // handles eigen matrix
+
219  template <typename T>
+
220  struct is_vector_like<Eigen::Matrix<T,Eigen::Dynamic,Eigen::Dynamic> > {
+
221  enum { value = true };
+
222  };
+
223 
+
224 
+
250  template <typename T,
+
251  bool is_array = stan::is_vector_like<T>::value,
+
252  bool throw_if_accessed = false>
+
253  class VectorView {
+
254  public:
+
255  typedef typename scalar_type<T>::type scalar_t;
+
256 
+
257  VectorView(scalar_t& c) : x_(&c) { }
+
258 
+
259  VectorView(std::vector<scalar_t>& v) : x_(&v[0]) { }
+
260 
+
261  template <int R, int C>
+
262  VectorView(Eigen::Matrix<scalar_t,R,C>& m) : x_(&m(0)) { }
+
263 
+
264  VectorView(scalar_t* x) : x_(x) { }
+
265 
+ +
267  if (throw_if_accessed)
+
268  throw std::out_of_range("VectorView: this cannot be accessed");
+
269  if (is_array)
+
270  return x_[i];
+
271  else
+
272  return x_[0];
+
273  }
+
274  private:
+
275  scalar_t* x_;
+
276  };
+
277 
+
282  template <typename T, bool is_array, bool throw_if_accessed>
+
283  class VectorView<const T, is_array, throw_if_accessed> {
+
284  public:
+
285  typedef typename scalar_type<T>::type scalar_t;
+
286 
+
287  VectorView(const scalar_t& c) : x_(&c) { }
+
288 
+
289  VectorView(const scalar_t* x) : x_(x) { }
+
290 
+
291  VectorView(const std::vector<scalar_t>& v) : x_(&v[0]) { }
+
292 
+
293  template <int R, int C>
+
294  VectorView(const Eigen::Matrix<scalar_t,R,C>& m) : x_(&m(0)) { }
+
295 
+
296  const scalar_t& operator[](int i) const {
+
297  if (throw_if_accessed)
+
298  throw std::out_of_range("VectorView: this cannot be accessed");
+
299  if (is_array)
+
300  return x_[i];
+
301  else
+
302  return x_[0];
+
303  }
+
304  private:
+
305  const scalar_t* x_;
+
306  };
+
307 
+
308  // simplify to hold value in common case where it's more efficient
+
309  template <>
+
310  class VectorView<const double, false, false> {
+
311  public:
+
312  VectorView(double x) : x_(x) { }
+
313  double operator[](int /* i */) const {
+
314  return x_;
+
315  }
+
316  private:
+
317  const double x_;
+
318  };
+
319 
+
320 
+
335  template<bool used, bool is_vec>
+ +
337  public:
+
338  DoubleVectorView(size_t /* n */) { }
+
339  double& operator[](size_t /* i */) {
+
340  throw std::runtime_error("used is false. this should never be called");
+
341  }
+
342  };
+
343 
+
344  template<>
+
345  class DoubleVectorView<true, false> {
+
346  private:
+
347  double x_;
+
348  public:
+
349  DoubleVectorView(size_t /* n */) : x_(0.0) { }
+
350  double& operator[](size_t /* i */) {
+
351  return x_;
+
352  }
+
353  };
+
354 
+
355  template<>
+
356  class DoubleVectorView<true, true> {
+
357  private:
+
358  std::vector<double> x_;
+
359  public:
+
360  DoubleVectorView(size_t n) : x_(n) { }
+
361  double& operator[](size_t i) {
+
362  return x_[i];
+
363  }
+
364  };
+
365 
+
370  template <typename T1,
+
371  typename T2 = double,
+
372  typename T3 = double,
+
373  typename T4 = double,
+
374  typename T5 = double,
+
375  typename T6 = double>
+
376  struct return_type {
+
377  typedef typename
+
378  boost::math::tools::promote_args<typename scalar_type<T1>::type,
+
379  typename scalar_type<T2>::type,
+
380  typename scalar_type<T3>::type,
+
381  typename scalar_type<T4>::type,
+
382  typename scalar_type<T5>::type,
+ + +
385  };
+
386 
+
387 
+
388  template <typename T>
+
389  struct is_fvar {
+
390  enum { value = false };
+
391  };
+
392  template <typename T>
+
393  struct is_fvar<stan::agrad::fvar<T> > {
+
394  enum { value = true };
+
395  };
+
396 
+
397 
+
398  template <typename T>
+
399  struct is_var {
+
400  enum { value = false };
+
401  };
+
402  template <>
+
403  struct is_var<stan::agrad::var> {
+
404  enum { value = true };
+
405  };
+
406 
+
407 
+
408 
+
409  // FIXME: pull out scalar types
+
410 
+
415  template <typename T1,
+
416  typename T2 = double,
+
417  typename T3 = double,
+
418  typename T4 = double,
+
419  typename T5 = double,
+
420  typename T6 = double>
+
421  struct contains_fvar {
+
422  enum {
+ + + + + + +
429  };
+
430  };
+
431 
+
432 
+
433  template <typename T1,
+
434  typename T2 = double,
+
435  typename T3 = double,
+
436  typename T4 = double,
+
437  typename T5 = double,
+
438  typename T6 = double>
+ +
440  enum {
+
441  value = (is_var<typename scalar_type<T1>::type>::value || boost::is_arithmetic<typename scalar_type<T1>::type>::value)
+
442  && (is_var<typename scalar_type<T2>::type>::value || boost::is_arithmetic<typename scalar_type<T2>::type>::value)
+
443  && (is_var<typename scalar_type<T3>::type>::value || boost::is_arithmetic<typename scalar_type<T3>::type>::value)
+
444  && (is_var<typename scalar_type<T4>::type>::value || boost::is_arithmetic<typename scalar_type<T4>::type>::value)
+
445  && (is_var<typename scalar_type<T5>::type>::value || boost::is_arithmetic<typename scalar_type<T5>::type>::value)
+
446  && (is_var<typename scalar_type<T6>::type>::value || boost::is_arithmetic<typename scalar_type<T6>::type>::value)
+
447  };
+
448  };
+
449 
+
450 
+
451 
+
452 
+
453 }
+
454 
+
455 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/meta_8hpp.html b/doc/api/html/meta_8hpp.html new file mode 100644 index 00000000000..df09e026b42 --- /dev/null +++ b/doc/api/html/meta_8hpp.html @@ -0,0 +1,110 @@ + + + + + +Stan: src/stan/meta.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
meta.hpp File Reference
+
+ +
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/meta_8hpp_source.html b/doc/api/html/meta_8hpp_source.html new file mode 100644 index 00000000000..918b8175efb --- /dev/null +++ b/doc/api/html/meta_8hpp_source.html @@ -0,0 +1,113 @@ + + + + + +Stan: src/stan/meta.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
meta.hpp
+
+
+Go to the documentation of this file.
1 #ifndef STAN_META_HPP
+
2 #define STAN_META_HPP
+
3 
+
4 #include "stan/meta/traits.hpp"
+
5 
+
6 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/minus_8hpp.html b/doc/api/html/minus_8hpp.html new file mode 100644 index 00000000000..4cd06f1c838 --- /dev/null +++ b/doc/api/html/minus_8hpp.html @@ -0,0 +1,129 @@ + + + + + +Stan: src/stan/math/matrix/minus.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
minus.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::math
 Matrices and templated mathematical functions.
 
+ + + + + +

+Functions

template<typename T >
stan::math::minus (const T &x)
 Returns the negation of the specified scalar or matrix.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/minus_8hpp_source.html b/doc/api/html/minus_8hpp_source.html new file mode 100644 index 00000000000..b2ae168590e --- /dev/null +++ b/doc/api/html/minus_8hpp_source.html @@ -0,0 +1,122 @@ + + + + + +Stan: src/stan/math/matrix/minus.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
minus.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MATH__MATRIX__MINUS_HPP__
+
2 #define __STAN__MATH__MATRIX__MINUS_HPP__
+
3 
+
4 namespace stan {
+
5  namespace math {
+
6 
+
14  template <typename T>
+
15  inline
+
16  T minus(const T& x) {
+
17  return -x;
+
18  }
+
19 
+
20  }
+
21 }
+
22 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/model_2util_8hpp.html b/doc/api/html/model_2util_8hpp.html new file mode 100644 index 00000000000..d2b08c8379b --- /dev/null +++ b/doc/api/html/model_2util_8hpp.html @@ -0,0 +1,182 @@ + + + + + +Stan: src/stan/model/util.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
util.hpp File Reference
+
+
+
#include <cmath>
+#include <iomanip>
+#include <iostream>
+#include <vector>
+#include <stan/math/matrix/Eigen.hpp>
+#include <stan/agrad/rev/matrix/grad.hpp>
+#include <stan/agrad/rev/var.hpp>
+#include <stan/agrad/autodiff.hpp>
+
+

Go to the source code of this file.

+ + + + +

+Classes

struct  stan::model::model_functional< M >
 
+ + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::model
 For compiling models.
 
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Functions

template<bool jacobian_adjust_transform, class M >
double stan::model::log_prob_propto (const M &model, std::vector< double > &params_r, std::vector< int > &params_i, std::ostream *msgs=0)
 Helper function to calculate log probability for double scalars up to a proportion.
 
template<bool propto, bool jacobian_adjust_transform, class M >
double stan::model::log_prob_grad (const M &model, std::vector< double > &params_r, std::vector< int > &params_i, std::vector< double > &gradient, std::ostream *msgs=0)
 Compute the gradient using reverse-mode automatic differentiation, writing the result into the specified gradient, using the specified perturbation.
 
template<bool jacobian_adjust_transform, class M >
double stan::model::log_prob_propto (const M &model, Eigen::VectorXd &params_r, std::ostream *msgs=0)
 Helper function to calculate log probability for double scalars up to a proportion.
 
template<bool propto, bool jacobian_adjust_transform, class M >
double stan::model::log_prob_grad (const M &model, Eigen::VectorXd &params_r, Eigen::VectorXd &gradient, std::ostream *msgs=0)
 Compute the gradient using reverse-mode automatic differentiation, writing the result into the specified gradient, using the specified perturbation.
 
template<bool propto, bool jacobian_adjust_transform, class M >
void stan::model::finite_diff_grad (const M &model, std::vector< double > &params_r, std::vector< int > &params_i, std::vector< double > &grad, double epsilon=1e-6, std::ostream *msgs=0)
 Compute the gradient using finite differences for the specified parameters, writing the result into the specified gradient, using the specified perturbation.
 
template<bool propto, bool jacobian_adjust_transform, class M >
int stan::model::test_gradients (const M &model, std::vector< double > &params_r, std::vector< int > &params_i, double epsilon=1e-6, double error=1e-6, std::ostream &o=std::cout, std::ostream *msgs=0)
 Test the log_prob_grad() function's ability to produce accurate gradients using finite differences.
 
template<bool propto, bool jacobian_adjust_transform, class M >
double stan::model::grad_hess_log_prob (const M &model, std::vector< double > &params_r, std::vector< int > &params_i, std::vector< double > &gradient, std::vector< double > &hessian, std::ostream *msgs=0)
 Evaluate the log-probability, its gradient, and its Hessian at params_r.
 
template<class M >
void stan::model::gradient (const M &model, const Eigen::Matrix< double, Eigen::Dynamic, 1 > &x, double &f, Eigen::Matrix< double, Eigen::Dynamic, 1 > &grad_f, std::ostream *msgs=0)
 
template<class M >
void stan::model::hessian (const M &model, const Eigen::Matrix< double, Eigen::Dynamic, 1 > &x, double &f, Eigen::Matrix< double, Eigen::Dynamic, 1 > &grad_f, Eigen::Matrix< double, Eigen::Dynamic, Eigen::Dynamic > &hess_f, std::ostream *msgs=0)
 
template<class M >
void stan::model::gradient_dot_vector (const M &model, const Eigen::Matrix< double, Eigen::Dynamic, 1 > &x, const Eigen::Matrix< double, Eigen::Dynamic, 1 > &v, double &f, double &grad_f_dot_v, std::ostream *msgs=0)
 
template<class M >
void stan::model::hessian_times_vector (const M &model, const Eigen::Matrix< double, Eigen::Dynamic, 1 > &x, const Eigen::Matrix< double, Eigen::Dynamic, 1 > &v, double &f, Eigen::Matrix< double, Eigen::Dynamic, 1 > &hess_f_dot_v, std::ostream *msgs=0)
 
template<class M >
void stan::model::grad_tr_mat_times_hessian (const M &model, const Eigen::Matrix< double, Eigen::Dynamic, 1 > &x, const Eigen::Matrix< double, Eigen::Dynamic, Eigen::Dynamic > &X, Eigen::Matrix< double, Eigen::Dynamic, 1 > &grad_tr_X_hess_f, std::ostream *msgs=0)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/model_2util_8hpp_source.html b/doc/api/html/model_2util_8hpp_source.html new file mode 100644 index 00000000000..1ae2bd9a397 --- /dev/null +++ b/doc/api/html/model_2util_8hpp_source.html @@ -0,0 +1,436 @@ + + + + + +Stan: src/stan/model/util.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
util.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MODEL__UTIL_HPP__
+
2 #define __STAN__MODEL__UTIL_HPP__
+
3 
+
4 #include <cmath>
+
5 #include <iomanip>
+
6 #include <iostream>
+
7 #include <vector>
+
8 
+ + +
11 #include <stan/agrad/rev/var.hpp>
+
12 #include <stan/agrad/rev/var.hpp>
+
13 #include <stan/agrad/autodiff.hpp>
+
14 
+
15 namespace stan {
+
16 
+
17  namespace model {
+
18 
+
40  template <bool jacobian_adjust_transform, class M>
+
41  double log_prob_propto(const M& model,
+
42  std::vector<double>& params_r,
+
43  std::vector<int>& params_i,
+
44  std::ostream* msgs = 0) {
+
45  using stan::agrad::var;
+
46  using std::vector;
+
47  vector<var> ad_params_r;
+
48  for (size_t i = 0; i < model.num_params_r(); ++i)
+
49  ad_params_r.push_back(params_r[i]);
+
50  try {
+
51  double lp
+
52  = model
+
53  .template log_prob<true,
+
54  jacobian_adjust_transform>(ad_params_r,params_i,
+
55  msgs)
+
56  .val();
+ +
58  return lp;
+
59  } catch (std::exception &ex) {
+ +
61  throw;
+
62  }
+
63  }
+
64 
+
82  template <bool propto, bool jacobian_adjust_transform, class M>
+
83  double log_prob_grad(const M& model,
+
84  std::vector<double>& params_r,
+
85  std::vector<int>& params_i,
+
86  std::vector<double>& gradient,
+
87  std::ostream* msgs = 0) {
+
88  using std::vector;
+
89  using stan::agrad::var;
+
90  vector<var> ad_params_r(params_r.size());
+
91  for (size_t i = 0; i < model.num_params_r(); ++i) {
+
92  stan::agrad::var var_i(params_r[i]);
+
93  ad_params_r[i] = var_i;
+
94  }
+
95  try {
+
96  var adLogProb
+
97  = model
+
98  .template log_prob<propto,
+
99  jacobian_adjust_transform>(ad_params_r,
+
100  params_i,msgs);
+
101  double val = adLogProb.val();
+
102  adLogProb.grad(ad_params_r,gradient);
+
103  return val;
+
104  } catch (std::exception &ex) {
+ +
106  throw;
+
107  }
+
108  }
+
109 
+
130  template <bool jacobian_adjust_transform, class M>
+
131  double log_prob_propto(const M& model,
+
132  Eigen::VectorXd& params_r,
+
133  std::ostream* msgs = 0) {
+
134  using stan::agrad::var;
+
135  using std::vector;
+
136  vector<var> ad_params_r;
+
137  for (size_t i = 0; i < model.num_params_r(); ++i)
+
138  ad_params_r.push_back(params_r(i));
+
139  try {
+
140  double lp
+
141  = model
+
142  .template log_prob<true,
+
143  jacobian_adjust_transform>(ad_params_r, msgs)
+
144  .val();
+ +
146  return lp;
+
147  } catch (std::exception &ex) {
+ +
149  throw;
+
150  }
+
151  }
+
152 
+
169  template <bool propto, bool jacobian_adjust_transform, class M>
+
170  double log_prob_grad(const M& model,
+
171  Eigen::VectorXd& params_r,
+
172  Eigen::VectorXd& gradient,
+
173  std::ostream* msgs = 0) {
+
174  using std::vector;
+
175  using stan::agrad::var;
+
176  Eigen::Matrix<var,Eigen::Dynamic,1> ad_params_r(params_r.size());
+
177  for (size_t i = 0; i < model.num_params_r(); ++i) {
+
178  stan::agrad::var var_i(params_r[i]);
+
179  ad_params_r[i] = var_i;
+
180  }
+
181  try {
+
182  var adLogProb
+
183  = model
+
184  .template log_prob<propto,
+
185  jacobian_adjust_transform>(ad_params_r, msgs);
+
186  double val = adLogProb.val();
+
187  stan::agrad::grad(adLogProb, ad_params_r, gradient);
+
188  return val;
+
189  } catch (std::exception &ex) {
+ +
191  throw;
+
192  }
+
193  }
+
194 
+
213  template <bool propto, bool jacobian_adjust_transform, class M>
+
214  void finite_diff_grad(const M& model,
+
215  std::vector<double>& params_r,
+
216  std::vector<int>& params_i,
+
217  std::vector<double>& grad,
+
218  double epsilon = 1e-6,
+
219  std::ostream* msgs = 0) {
+
220  std::vector<double> perturbed(params_r);
+
221  grad.resize(params_r.size());
+
222  for (size_t k = 0; k < params_r.size(); k++) {
+
223  perturbed[k] += epsilon;
+
224  double logp_plus
+
225  = model
+
226  .template log_prob<propto,
+
227  jacobian_adjust_transform>(perturbed, params_i,
+
228  msgs);
+
229  perturbed[k] = params_r[k] - epsilon;
+
230  double logp_minus
+
231  = model
+
232  .template log_prob<propto,
+
233  jacobian_adjust_transform>(perturbed, params_i,
+
234  msgs);
+
235  double gradest = (logp_plus - logp_minus) / (2*epsilon);
+
236  grad[k] = gradest;
+
237  perturbed[k] = params_r[k];
+
238  }
+
239  }
+
240 
+
241 
+
264  template <bool propto, bool jacobian_adjust_transform, class M>
+
265  int test_gradients(const M& model,
+
266  std::vector<double>& params_r,
+
267  std::vector<int>& params_i,
+
268  double epsilon = 1e-6,
+
269  double error = 1e-6,
+
270  std::ostream& o = std::cout,
+
271  std::ostream* msgs = 0) {
+
272  std::vector<double> grad;
+
273  double lp
+ +
275  jacobian_adjust_transform>(model,
+
276  params_r,
+
277  params_i,
+
278  grad,msgs);
+
279 
+
280  std::vector<double> grad_fd;
+
281  finite_diff_grad<false,
+
282  true,
+
283  M>(model,
+
284  params_r, params_i,
+
285  grad_fd, epsilon,
+
286  msgs);
+
287 
+
288  int num_failed = 0;
+
289 
+
290  o << std::endl
+
291  << " Log probability=" << lp
+
292  << std::endl;
+
293 
+
294  o << std::endl
+
295  << std::setw(10) << "param idx"
+
296  << std::setw(16) << "value"
+
297  << std::setw(16) << "model"
+
298  << std::setw(16) << "finite diff"
+
299  << std::setw(16) << "error"
+
300  << std::endl;
+
301  for (size_t k = 0; k < params_r.size(); k++) {
+
302  o << std::setw(10) << k
+
303  << std::setw(16) << params_r[k]
+
304  << std::setw(16) << grad[k]
+
305  << std::setw(16) << grad_fd[k]
+
306  << std::setw(16) << (grad[k] - grad_fd[k])
+
307  << std::endl;
+
308  if (std::fabs(grad[k] - grad_fd[k]) > error)
+
309  num_failed++;
+
310  }
+
311  return num_failed;
+
312  }
+
313 
+
314 
+
337  template <bool propto, bool jacobian_adjust_transform, class M>
+
338  double grad_hess_log_prob(const M& model,
+
339  std::vector<double>& params_r,
+
340  std::vector<int>& params_i,
+
341  std::vector<double>& gradient,
+
342  std::vector<double>& hessian,
+
343  std::ostream* msgs = 0) {
+
344  const double epsilon = 1e-3;
+
345  const int order = 4;
+
346  const double perturbations[order]
+
347  = {-2*epsilon, -1*epsilon, epsilon, 2*epsilon};
+
348  const double coefficients[order]
+
349  = { 1.0 / 12.0,
+
350  -2.0 / 3.0,
+
351  2.0 / 3.0,
+
352  -1.0 / 12.0 };
+
353 
+
354  double result
+ +
356  jacobian_adjust_transform>(model,
+
357  params_r,
+
358  params_i,
+
359  gradient,
+
360  msgs);
+
361  hessian.assign(params_r.size() * params_r.size(), 0);
+
362  std::vector<double> temp_grad(params_r.size());
+
363  std::vector<double> perturbed_params(params_r.begin(), params_r.end());
+
364  for (size_t d = 0; d < params_r.size(); d++) {
+
365  double* row = &hessian[d*params_r.size()];
+
366  for (int i = 0; i < order; i++) {
+
367  perturbed_params[d] = params_r[d] + perturbations[i];
+ +
369  jacobian_adjust_transform>(model,
+
370  perturbed_params,
+
371  params_i,
+
372  temp_grad);
+
373  for (size_t dd = 0; dd < params_r.size(); dd++) {
+
374  row[dd] += 0.5 * coefficients[i] * temp_grad[dd] / epsilon;
+
375  hessian[d + dd*params_r.size()]
+
376  += 0.5 * coefficients[i] * temp_grad[dd] / epsilon;
+
377  }
+
378  }
+
379  perturbed_params[d] = params_r[d];
+
380  }
+
381  return result;
+
382  }
+
383 
+
384  // Interface for automatic differentiation of models
+
385 
+
386  template <class M>
+ +
388 
+
389  const M& model;
+
390  std::ostream* o;
+
391 
+
392  model_functional(const M& m, std::ostream* out): model(m), o(out) {};
+
393 
+
394  template <typename T>
+
395  T operator()(Eigen::Matrix<T, Eigen::Dynamic, 1>& x) const {
+
396  return model.template log_prob<true, true, T>(x, o);
+
397  }
+
398 
+
399  };
+
400 
+
401  template <class M>
+
402  void gradient(const M& model,
+
403  const Eigen::Matrix<double, Eigen::Dynamic, 1>& x,
+
404  double& f,
+
405  Eigen::Matrix<double, Eigen::Dynamic, 1>& grad_f,
+
406  std::ostream* msgs = 0) {
+
407 
+
408  stan::agrad::gradient(model_functional<M>(model, msgs), x, f, grad_f);
+
409 
+
410  }
+
411 
+
412  template <class M>
+
413  void hessian(const M& model,
+
414  const Eigen::Matrix<double, Eigen::Dynamic, 1>& x,
+
415  double& f,
+
416  Eigen::Matrix<double, Eigen::Dynamic, 1>& grad_f,
+
417  Eigen::Matrix<double, Eigen::Dynamic, Eigen::Dynamic>& hess_f,
+
418  std::ostream* msgs = 0) {
+
419 
+
420  stan::agrad::hessian(model_functional<M>(model, msgs), x, f, grad_f, hess_f);
+
421 
+
422  }
+
423 
+
424  template <class M>
+
425  void gradient_dot_vector(const M& model,
+
426  const Eigen::Matrix<double, Eigen::Dynamic, 1>& x,
+
427  const Eigen::Matrix<double, Eigen::Dynamic, 1>& v,
+
428  double& f,
+
429  double& grad_f_dot_v,
+
430  std::ostream* msgs = 0) {
+
431 
+
432  stan::agrad::gradient_dot_vector(model_functional<M>(model, msgs), x, v, f, grad_f_dot_v);
+
433 
+
434  }
+
435 
+
436  template <class M>
+
437  void hessian_times_vector(const M& model,
+
438  const Eigen::Matrix<double, Eigen::Dynamic, 1>& x,
+
439  const Eigen::Matrix<double, Eigen::Dynamic, 1>& v,
+
440  double& f,
+
441  Eigen::Matrix<double, Eigen::Dynamic, 1>& hess_f_dot_v,
+
442  std::ostream* msgs = 0) {
+
443 
+
444  stan::agrad::hessian_times_vector(model_functional<M>(model, msgs), x, v, f, hess_f_dot_v);
+
445 
+
446  }
+
447 
+
448  template <class M>
+
449  void grad_tr_mat_times_hessian(const M& model,
+
450  const Eigen::Matrix<double, Eigen::Dynamic, 1>& x,
+
451  const Eigen::Matrix<double, Eigen::Dynamic, Eigen::Dynamic>& X,
+
452  Eigen::Matrix<double, Eigen::Dynamic, 1>& grad_tr_X_hess_f,
+
453  std::ostream* msgs = 0) {
+
454 
+
455  stan::agrad::grad_tr_mat_times_hessian(model_functional<M>(model, msgs), x, X, grad_tr_X_hess_f);
+
456 
+
457  }
+
458 
+
459 
+
460  }
+
461 }
+
462 
+
463 
+
464 
+
465 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/model_8hpp.html b/doc/api/html/model_8hpp.html new file mode 100644 index 00000000000..6a390e77c8e --- /dev/null +++ b/doc/api/html/model_8hpp.html @@ -0,0 +1,111 @@ + + + + + +Stan: src/stan/model.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
model.hpp File Reference
+
+ +
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/model_8hpp_source.html b/doc/api/html/model_8hpp_source.html new file mode 100644 index 00000000000..d179843d61c --- /dev/null +++ b/doc/api/html/model_8hpp_source.html @@ -0,0 +1,114 @@ + + + + + +Stan: src/stan/model.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
model.hpp
+
+
+Go to the documentation of this file.
1 #ifndef STAN_MODEL_HPP
+
2 #define STAN_MODEL_HPP
+
3 
+ +
5 #include "stan/model/util.hpp"
+
6 
+
7 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/model__header_8hpp.html b/doc/api/html/model__header_8hpp.html new file mode 100644 index 00000000000..1fb83b9f3b3 --- /dev/null +++ b/doc/api/html/model__header_8hpp.html @@ -0,0 +1,135 @@ + + + + + +Stan: src/stan/model/model_header.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
model_header.hpp File Reference
+
+
+
#include <cmath>
+#include <cstddef>
+#include <fstream>
+#include <iostream>
+#include <sstream>
+#include <stdexcept>
+#include <utility>
+#include <vector>
+#include <boost/exception/all.hpp>
+#include <boost/random/linear_congruential.hpp>
+#include <stan/agrad/rev.hpp>
+#include <stan/agrad/rev/matrix.hpp>
+#include <stan/gm/command.hpp>
+#include <stan/io/cmd_line.hpp>
+#include <stan/io/dump.hpp>
+#include <stan/io/reader.hpp>
+#include <stan/io/writer.hpp>
+#include <stan/io/csv_writer.hpp>
+#include <stan/math/matrix.hpp>
+#include <stan/math.hpp>
+#include <stan/math/rep_array.hpp>
+#include <stan/math/rep_vector.hpp>
+#include <stan/math/rep_row_vector.hpp>
+#include <stan/math/rep_matrix.hpp>
+#include <stan/model/prob_grad.hpp>
+#include <stan/prob/distributions.hpp>
+
+

Go to the source code of this file.

+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/model__header_8hpp_source.html b/doc/api/html/model__header_8hpp_source.html new file mode 100644 index 00000000000..00efaa1e527 --- /dev/null +++ b/doc/api/html/model__header_8hpp_source.html @@ -0,0 +1,144 @@ + + + + + +Stan: src/stan/model/model_header.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
model_header.hpp
+
+
+Go to the documentation of this file.
1 #ifndef STAN__MODEL__MODEL__HEADER_HPP__
+
2 #define STAN__MODEL__MODEL__HEADER_HPP__
+
3 
+
4 #include <cmath>
+
5 #include <cstddef>
+
6 #include <fstream>
+
7 #include <iostream>
+
8 #include <sstream>
+
9 #include <stdexcept>
+
10 #include <utility>
+
11 #include <vector>
+
12 
+
13 #include <boost/exception/all.hpp>
+
14 #include <boost/random/linear_congruential.hpp>
+
15 
+
16 #include <stan/agrad/rev.hpp>
+ +
18 
+
19 #include <stan/gm/command.hpp>
+
20 #include <stan/io/cmd_line.hpp>
+
21 #include <stan/io/dump.hpp>
+
22 #include <stan/io/reader.hpp>
+
23 #include <stan/io/writer.hpp>
+
24 #include <stan/io/csv_writer.hpp>
+
25 
+
26 #include <stan/math/matrix.hpp>
+
27 #include <stan/math.hpp>
+
28 
+
29 #include <stan/math/rep_array.hpp>
+
30 #include <stan/math/rep_vector.hpp>
+ +
32 #include <stan/math/rep_matrix.hpp>
+
33 
+
34 #include <stan/model/prob_grad.hpp>
+ +
36 
+
37 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/multi__gp_8hpp.html b/doc/api/html/multi__gp_8hpp.html new file mode 100644 index 00000000000..ffa1ef00b34 --- /dev/null +++ b/doc/api/html/multi__gp_8hpp.html @@ -0,0 +1,154 @@ + + + + + +Stan: src/stan/prob/distributions/multivariate/continuous/multi_gp.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
multi_gp.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::prob
 Templated probability distributions.
 
+ + + + + + + + +

+Functions

template<bool propto, typename T_y , typename T_covar , typename T_w >
boost::math::tools::promote_args
+< T_y, T_w, T_covar >::type 
stan::prob::multi_gp_log (const Eigen::Matrix< T_y, Eigen::Dynamic, Eigen::Dynamic > &y, const Eigen::Matrix< T_covar, Eigen::Dynamic, Eigen::Dynamic > &Sigma, const Eigen::Matrix< T_w, Eigen::Dynamic, 1 > &w)
 The log of a multivariate Gaussian Process for the given y, Sigma, and w.
 
template<typename T_y , typename T_loc , typename T_covar >
boost::math::tools::promote_args
+< T_y, T_loc, T_covar >::type 
stan::prob::multi_gp_log (const Eigen::Matrix< T_y, Eigen::Dynamic, Eigen::Dynamic > &y, const Eigen::Matrix< T_covar, Eigen::Dynamic, Eigen::Dynamic > &Sigma, const Eigen::Matrix< T_loc, Eigen::Dynamic, 1 > &w)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/multi__gp_8hpp_source.html b/doc/api/html/multi__gp_8hpp_source.html new file mode 100644 index 00000000000..9ac01bbf5e0 --- /dev/null +++ b/doc/api/html/multi__gp_8hpp_source.html @@ -0,0 +1,231 @@ + + + + + +Stan: src/stan/prob/distributions/multivariate/continuous/multi_gp.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
multi_gp.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__PROB__DISTRIBUTIONS__MULTIVARIATE__CONTINUOUS__MULTI_GP_HPP__
+
2 #define __STAN__PROB__DISTRIBUTIONS__MULTIVARIATE__CONTINUOUS__MULTI_GP_HPP__
+
3 
+
4 #include <boost/random/normal_distribution.hpp>
+
5 #include <boost/random/variate_generator.hpp>
+
6 
+ + + +
10 #include <stan/prob/constants.hpp>
+
11 #include <stan/prob/traits.hpp>
+
12 #include <stan/agrad/rev.hpp>
+
13 #include <stan/meta/traits.hpp>
+ + +
16 #include <stan/math/matrix/log.hpp>
+ + + +
20 #include <stan/math/matrix/sum.hpp>
+
21 
+ + + + +
26 
+
27 namespace stan {
+
28  namespace prob {
+
29  // MultiGP(y|Sigma,w) [y.rows() = w.size(), y.cols() = Sigma.rows();
+
30  // Sigma symmetric, non-negative, definite]
+
49  template <bool propto,
+
50  typename T_y, typename T_covar, typename T_w>
+
51  typename boost::math::tools::promote_args<T_y,T_w,T_covar>::type
+
52  multi_gp_log(const Eigen::Matrix<T_y,Eigen::Dynamic,Eigen::Dynamic>& y,
+
53  const Eigen::Matrix<T_covar,Eigen::Dynamic,Eigen::Dynamic>& Sigma,
+
54  const Eigen::Matrix<T_w,Eigen::Dynamic,1>& w) {
+
55  static const char* function = "stan::prob::multi_gp_log(%1%)";
+
56  typedef typename boost::math::tools::promote_args<T_y,T_w,T_covar>::type T_lp;
+
57  T_lp lp(0.0);
+
58 
+
59  using stan::math::log;
+
60  using stan::math::sum;
+ + + + + + + + + + +
71  using stan::math::LDLT_factor;
+ +
73 
+
74  if (!check_size_match(function,
+
75  Sigma.rows(), "Rows of kernel matrix",
+
76  Sigma.cols(), "columns of kernel matrix",
+
77  &lp))
+
78  return lp;
+
79  if (!check_positive(function, Sigma.rows(), "Kernel rows", &lp))
+
80  return lp;
+
81  if (!check_finite(function, Sigma, "Kernel", &lp))
+
82  return lp;
+
83  if (!check_symmetric(function, Sigma, "Kernel", &lp))
+
84  return lp;
+
85 
+ +
87  if(!check_ldlt_factor(function,ldlt_Sigma,"LDLT_Factor of Sigma",&lp))
+
88  return lp;
+
89 
+
90  if (!check_size_match(function,
+
91  y.rows(), "Size of random variable (rows y)",
+
92  w.size(), "Size of kernel scales (w)",
+
93  &lp))
+
94  return lp;
+
95  if (!check_size_match(function,
+
96  y.cols(), "Size of random variable",
+
97  Sigma.rows(), "rows of covariance parameter",
+
98  &lp))
+
99  return lp;
+
100  if (!check_finite(function, w, "Kernel scales", &lp))
+
101  return lp;
+
102  if (!check_positive(function, w, "Kernel scales", &lp))
+
103  return lp;
+
104  if (!check_finite(function, y, "Random variable", &lp))
+
105  return lp;
+
106 
+
107  if (y.rows() == 0)
+
108  return lp;
+
109 
+ +
111  lp += NEG_LOG_SQRT_TWO_PI * y.rows() * y.cols();
+
112  }
+
113 
+ +
115  lp -= (0.5 * y.rows()) * log_determinant_ldlt(ldlt_Sigma);
+
116  }
+
117 
+ +
119  lp += (0.5 * y.cols()) * sum(log(w));
+
120  }
+
121 
+ +
123  Eigen::Matrix<T_w,Eigen::Dynamic,Eigen::Dynamic> w_mat(w.asDiagonal());
+
124  Eigen::Matrix<T_y,Eigen::Dynamic,Eigen::Dynamic> yT(y.transpose());
+
125  lp -= 0.5 * trace_gen_inv_quad_form_ldlt(w_mat,ldlt_Sigma,yT);
+
126  }
+
127 
+
128  return lp;
+
129  }
+
130 
+
131  template <typename T_y, typename T_loc, typename T_covar>
+
132  inline
+
133  typename boost::math::tools::promote_args<T_y,T_loc,T_covar>::type
+
134  multi_gp_log(const Eigen::Matrix<T_y,Eigen::Dynamic,Eigen::Dynamic>& y,
+
135  const Eigen::Matrix<T_covar,Eigen::Dynamic,Eigen::Dynamic>& Sigma,
+
136  const Eigen::Matrix<T_loc,Eigen::Dynamic,1>& w) {
+
137  return multi_gp_log<false>(y,Sigma,w);
+
138  }
+
139  }
+
140 }
+
141 
+
142 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/multi__normal_8hpp.html b/doc/api/html/multi__normal_8hpp.html new file mode 100644 index 00000000000..d7ae339a2df --- /dev/null +++ b/doc/api/html/multi__normal_8hpp.html @@ -0,0 +1,155 @@ + + + + + +Stan: src/stan/prob/distributions/multivariate/continuous/multi_normal.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
multi_normal.hpp File Reference
+
+
+
#include <boost/random/normal_distribution.hpp>
+#include <boost/random/variate_generator.hpp>
+#include <stan/agrad/rev.hpp>
+#include <stan/agrad/rev/matrix.hpp>
+#include <stan/math/error_handling.hpp>
+#include <stan/math/matrix_error_handling.hpp>
+#include <stan/math/matrix/log_determinant_ldlt.hpp>
+#include <stan/meta/traits.hpp>
+#include <stan/prob/constants.hpp>
+#include <stan/prob/traits.hpp>
+#include <stan/math/error_handling/matrix/check_ldlt_factor.hpp>
+
+

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::prob
 Templated probability distributions.
 
+ + + + + + + + + + + + + + + + +

+Functions

template<bool propto, typename T_y , typename T_loc , typename T_covar >
boost::math::tools::promote_args
+< T_y, T_loc, T_covar >::type 
stan::prob::multi_normal_log (const Eigen::Matrix< T_y, Eigen::Dynamic, 1 > &y, const Eigen::Matrix< T_loc, Eigen::Dynamic, 1 > &mu, const Eigen::Matrix< T_covar, Eigen::Dynamic, Eigen::Dynamic > &Sigma)
 
template<typename T_y , typename T_loc , typename T_covar >
boost::math::tools::promote_args
+< T_y, T_loc, T_covar >::type 
stan::prob::multi_normal_log (const Eigen::Matrix< T_y, Eigen::Dynamic, 1 > &y, const Eigen::Matrix< T_loc, Eigen::Dynamic, 1 > &mu, const Eigen::Matrix< T_covar, Eigen::Dynamic, Eigen::Dynamic > &Sigma)
 
template<bool propto, typename T_y , typename T_loc , typename T_covar >
boost::math::tools::promote_args
+< T_y, T_loc, T_covar >::type 
stan::prob::multi_normal_log (const Eigen::Matrix< T_y, Eigen::Dynamic, Eigen::Dynamic > &y, const Eigen::Matrix< T_loc, Eigen::Dynamic, 1 > &mu, const Eigen::Matrix< T_covar, Eigen::Dynamic, Eigen::Dynamic > &Sigma)
 
template<typename T_y , typename T_loc , typename T_covar >
boost::math::tools::promote_args
+< T_y, T_loc, T_covar >::type 
stan::prob::multi_normal_log (const Eigen::Matrix< T_y, Eigen::Dynamic, Eigen::Dynamic > &y, const Eigen::Matrix< T_loc, Eigen::Dynamic, 1 > &mu, const Eigen::Matrix< T_covar, Eigen::Dynamic, Eigen::Dynamic > &Sigma)
 
template<class RNG >
Eigen::VectorXd stan::prob::multi_normal_rng (const Eigen::Matrix< double, Eigen::Dynamic, 1 > &mu, const Eigen::Matrix< double, Eigen::Dynamic, Eigen::Dynamic > &S, RNG &rng)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/multi__normal_8hpp_source.html b/doc/api/html/multi__normal_8hpp_source.html new file mode 100644 index 00000000000..fbb60f14037 --- /dev/null +++ b/doc/api/html/multi__normal_8hpp_source.html @@ -0,0 +1,340 @@ + + + + + +Stan: src/stan/prob/distributions/multivariate/continuous/multi_normal.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
multi_normal.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__PROB__DISTRIBUTIONS__MULTIVARIATE__CONTINUOUS__MULTI_NORMAL_HPP__
+
2 #define __STAN__PROB__DISTRIBUTIONS__MULTIVARIATE__CONTINUOUS__MULTI_NORMAL_HPP__
+
3 
+
4 #include <boost/random/normal_distribution.hpp>
+
5 #include <boost/random/variate_generator.hpp>
+
6 
+
7 #include <stan/agrad/rev.hpp>
+ + + + +
12 #include <stan/meta/traits.hpp>
+
13 #include <stan/prob/constants.hpp>
+
14 #include <stan/prob/traits.hpp>
+ +
16 
+
17 namespace stan {
+
18 
+
19  namespace prob {
+
20 
+
21  template <bool propto,
+
22  typename T_y, typename T_loc, typename T_covar>
+
23  typename boost::math::tools::promote_args<T_y,T_loc,T_covar>::type
+
24  multi_normal_log(const Eigen::Matrix<T_y,Eigen::Dynamic,1>& y,
+
25  const Eigen::Matrix<T_loc,Eigen::Dynamic,1>& mu,
+
26  const Eigen::Matrix<T_covar,Eigen::Dynamic,Eigen::Dynamic>& Sigma) {
+
27  static const char* function = "stan::prob::multi_normal_log(%1%)";
+
28  typename boost::math::tools::promote_args<T_y,T_loc,T_covar>::type lp(0.0);
+
29 
+ + + + + + +
36 
+
37  if (!check_size_match(function,
+
38  Sigma.rows(), "Rows of covariance parameter",
+
39  Sigma.cols(), "columns of covariance parameter",
+
40  &lp))
+
41  return lp;
+
42  if (!check_positive(function, Sigma.rows(), "Covariance matrix rows", &lp))
+
43  return lp;
+
44  if (!check_symmetric(function, Sigma, "Covariance matrix", &lp))
+
45  return lp;
+
46 
+
47  stan::math::LDLT_factor<T_covar,Eigen::Dynamic,Eigen::Dynamic> ldlt_Sigma(Sigma);
+
48  if(!check_ldlt_factor(function,ldlt_Sigma,"LDLT_Factor of covariance parameter",&lp))
+
49  return lp;
+
50 
+
51  if (!check_size_match(function,
+
52  y.size(), "Size of random variable",
+
53  mu.size(), "size of location parameter",
+
54  &lp))
+
55  return lp;
+
56  if (!check_size_match(function,
+
57  y.size(), "Size of random variable",
+
58  Sigma.rows(), "rows of covariance parameter",
+
59  &lp))
+
60  return lp;
+
61  if (!check_size_match(function,
+
62  y.size(), "Size of random variable",
+
63  Sigma.cols(), "columns of covariance parameter",
+
64  &lp))
+
65  return lp;
+
66  if (!check_finite(function, mu, "Location parameter", &lp))
+
67  return lp;
+
68  if (!check_not_nan(function, y, "Random variable", &lp))
+
69  return lp;
+
70 
+
71  if (y.rows() == 0)
+
72  return lp;
+
73 
+ +
75  lp += NEG_LOG_SQRT_TWO_PI * y.rows();
+
76 
+ +
78  lp -= 0.5 * log_determinant_ldlt(ldlt_Sigma);
+
79  }
+
80 
+ +
82  Eigen::Matrix<typename
+
83  boost::math::tools::promote_args<T_y,T_loc>::type,
+
84  Eigen::Dynamic, 1> y_minus_mu(y.size());
+
85  for (int i = 0; i < y.size(); i++)
+
86  y_minus_mu(i) = y(i)-mu(i);
+
87  lp -= 0.5 * trace_inv_quad_form_ldlt(ldlt_Sigma,y_minus_mu);
+
88  }
+
89  return lp;
+
90  }
+
91 
+
92  template <typename T_y, typename T_loc, typename T_covar>
+
93  inline
+
94  typename boost::math::tools::promote_args<T_y,T_loc,T_covar>::type
+
95  multi_normal_log(const Eigen::Matrix<T_y,Eigen::Dynamic,1>& y,
+
96  const Eigen::Matrix<T_loc,Eigen::Dynamic,1>& mu,
+
97  const Eigen::Matrix<T_covar,Eigen::Dynamic,Eigen::Dynamic>& Sigma) {
+
98  return multi_normal_log<false>(y,mu,Sigma);
+
99  }
+
100 
+
101 
+
102 
+
103 
+
104  template <bool propto,
+
105  typename T_y, typename T_loc, typename T_covar>
+
106  typename boost::math::tools::promote_args<T_y,T_loc,T_covar>::type
+
107  multi_normal_log(const Eigen::Matrix<T_y,Eigen::Dynamic,Eigen::Dynamic>& y,
+
108  const Eigen::Matrix<T_loc,Eigen::Dynamic,1>& mu,
+
109  const Eigen::Matrix<T_covar,Eigen::Dynamic,Eigen::Dynamic>& Sigma) {
+
110  static const char* function = "stan::prob::multi_normal_log(%1%)";
+
111  typename boost::math::tools::promote_args<T_y,T_loc,T_covar>::type lp(0.0);
+
112 
+ + + + + + +
119 
+
120  if (!check_size_match(function,
+
121  Sigma.rows(), "Rows of covariance matrix",
+
122  Sigma.cols(), "columns of covariance matrix",
+
123  &lp))
+
124  return lp;
+
125  if (!check_positive(function, Sigma.rows(), "Covariance matrix rows", &lp))
+
126  return lp;
+
127  if (!check_symmetric(function, Sigma, "Covariance matrix", &lp))
+
128  return lp;
+
129 
+
130  stan::math::LDLT_factor<T_covar,Eigen::Dynamic,Eigen::Dynamic> ldlt_Sigma(Sigma);
+
131  if(!check_ldlt_factor(function,ldlt_Sigma,"LDLT_Factor of Sigma",&lp))
+
132  return lp;
+
133 
+
134  if (!check_size_match(function,
+
135  y.cols(), "Columns of random variable",
+
136  mu.rows(), "rows of location parameter",
+
137  &lp))
+
138  return lp;
+
139  if (!check_size_match(function,
+
140  y.cols(), "Columns of random variable",
+
141  Sigma.rows(), "rows of covariance parameter",
+
142  &lp))
+
143  return lp;
+
144  if (!check_size_match(function,
+
145  y.cols(), "Columns of random variable",
+
146  Sigma.cols(), "columns of covariance parameter",
+
147  &lp))
+
148  return lp;
+
149  if (!check_finite(function, mu, "Location parameter", &lp))
+
150  return lp;
+
151  if (!check_not_nan(function, y, "Random variable", &lp))
+
152  return lp;
+
153 
+
154  if (y.cols() == 0)
+
155  return lp;
+
156 
+ +
158  lp += NEG_LOG_SQRT_TWO_PI * y.cols() * y.rows();
+
159 
+ +
161  lp -= 0.5 * log_determinant_ldlt(ldlt_Sigma) * y.rows();
+
162  }
+
163 
+ +
165  Eigen::Matrix<T_loc, Eigen::Dynamic, Eigen::Dynamic> MU(y.rows(),y.cols());
+ +
167  i < y.rows();
+
168  i++)
+
169  MU.row(i) = mu;
+
170 
+
171  Eigen::Matrix<typename
+
172  boost::math::tools::promote_args<T_loc,T_y>::type,
+
173  Eigen::Dynamic,Eigen::Dynamic> y_minus_MU(y.rows(), y.cols());
+
174 
+
175  for (int i = 0; i < y.size(); i++)
+
176  y_minus_MU(i) = y(i)-MU(i);
+
177 
+
178  Eigen::Matrix<typename
+
179  boost::math::tools::promote_args<T_loc,T_y>::type,
+
180  Eigen::Dynamic,Eigen::Dynamic> z(y_minus_MU.transpose()); // was =
+
181 
+
182  // Eigen::Matrix<typename
+
183  // boost::math::tools::promote_args<T_loc,T_y>::type,
+
184  // Eigen::Dynamic,Eigen::Dynamic>
+
185  // z(subtract(y,MU).transpose()); // was =
+
186 
+
187  lp -= 0.5 * trace_inv_quad_form_ldlt(ldlt_Sigma,z);
+
188  }
+
189  return lp;
+
190  }
+
191 
+
192  template <typename T_y, typename T_loc, typename T_covar>
+
193  inline
+
194  typename boost::math::tools::promote_args<T_y,T_loc,T_covar>::type
+
195  multi_normal_log(const Eigen::Matrix<T_y,Eigen::Dynamic,Eigen::Dynamic>& y,
+
196  const Eigen::Matrix<T_loc,Eigen::Dynamic,1>& mu,
+
197  const Eigen::Matrix<T_covar,Eigen::Dynamic,Eigen::Dynamic>& Sigma) {
+
198  return multi_normal_log<false>(y,mu,Sigma);
+
199  }
+
200 
+
201 
+
202  template <class RNG>
+
203  inline Eigen::VectorXd
+
204  multi_normal_rng(const Eigen::Matrix<double,Eigen::Dynamic,1>& mu,
+
205  const Eigen::Matrix<double,Eigen::Dynamic,Eigen::Dynamic>& S,
+
206  RNG& rng) {
+
207  using boost::variate_generator;
+
208  using boost::normal_distribution;
+
209 
+
210  static const char* function = "stan::prob::multi_normal_rng(%1%)";
+
211 
+ + + +
215 
+
216  check_positive(function, S.rows(), "Covariance matrix rows");
+
217  check_symmetric(function, S, "Covariance matrix");
+
218  check_finite(function, mu, "Location parameter");
+
219 
+
220  variate_generator<RNG&, normal_distribution<> >
+
221  std_normal_rng(rng, normal_distribution<>(0,1));
+
222 
+
223  Eigen::VectorXd z(S.cols());
+
224  for(int i = 0; i < S.cols(); i++)
+
225  z(i) = std_normal_rng();
+
226 
+
227  return mu + S.llt().matrixL() * z;
+
228  }
+
229  }
+
230 }
+
231 
+
232 #endif
+
233 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/multi__normal__cholesky_8hpp.html b/doc/api/html/multi__normal__cholesky_8hpp.html new file mode 100644 index 00000000000..29f64ee7cf8 --- /dev/null +++ b/doc/api/html/multi__normal__cholesky_8hpp.html @@ -0,0 +1,162 @@ + + + + + +Stan: src/stan/prob/distributions/multivariate/continuous/multi_normal_cholesky.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
multi_normal_cholesky.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::prob
 Templated probability distributions.
 
+ + + + + + + + + + + + + + + +

+Functions

template<bool propto, typename T_y , typename T_loc , typename T_covar >
boost::math::tools::promote_args
+< T_y, T_loc, T_covar >::type 
stan::prob::multi_normal_cholesky_log (const Eigen::Matrix< T_y, Eigen::Dynamic, 1 > &y, const Eigen::Matrix< T_loc, Eigen::Dynamic, 1 > &mu, const Eigen::Matrix< T_covar, Eigen::Dynamic, Eigen::Dynamic > &L)
 The log of the multivariate normal density for the given y, mu, and a Cholesky factor L of the variance matrix.
 
template<typename T_y , typename T_loc , typename T_covar >
boost::math::tools::promote_args
+< T_y, T_loc, T_covar >::type 
stan::prob::multi_normal_cholesky_log (const Eigen::Matrix< T_y, Eigen::Dynamic, 1 > &y, const Eigen::Matrix< T_loc, Eigen::Dynamic, 1 > &mu, const Eigen::Matrix< T_covar, Eigen::Dynamic, Eigen::Dynamic > &L)
 
template<bool propto, typename T_y , typename T_loc , typename T_covar >
boost::math::tools::promote_args
+< T_y, T_loc, T_covar >::type 
stan::prob::multi_normal_cholesky_log (const Eigen::Matrix< T_y, Eigen::Dynamic, Eigen::Dynamic > &y, const Eigen::Matrix< T_loc, Eigen::Dynamic, 1 > &mu, const Eigen::Matrix< T_covar, Eigen::Dynamic, Eigen::Dynamic > &L)
 y can have multiple rows (observations) and columns (on variables)
 
template<typename T_y , typename T_loc , typename T_covar >
boost::math::tools::promote_args
+< T_y, T_loc, T_covar >::type 
stan::prob::multi_normal_cholesky_log (const Eigen::Matrix< T_y, Eigen::Dynamic, Eigen::Dynamic > &y, const Eigen::Matrix< T_loc, Eigen::Dynamic, 1 > &mu, const Eigen::Matrix< T_covar, Eigen::Dynamic, Eigen::Dynamic > &L)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/multi__normal__cholesky_8hpp_source.html b/doc/api/html/multi__normal__cholesky_8hpp_source.html new file mode 100644 index 00000000000..6c5623200ed --- /dev/null +++ b/doc/api/html/multi__normal__cholesky_8hpp_source.html @@ -0,0 +1,317 @@ + + + + + +Stan: src/stan/prob/distributions/multivariate/continuous/multi_normal_cholesky.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
multi_normal_cholesky.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__PROB__DISTRIBUTIONS__MULTIVARIATE__CONTINUOUS__MULTI_NORMAL_CHOLESKY_HPP__
+
2 #define __STAN__PROB__DISTRIBUTIONS__MULTIVARIATE__CONTINUOUS__MULTI_NORMAL_CHOLESKY_HPP__
+
3 
+
4 #include <stan/agrad/rev.hpp>
+ + + + + + + +
12 #include <stan/math/matrix/log.hpp>
+ + + + + +
18 #include <stan/math/matrix/sum.hpp>
+ +
20 #include <stan/meta/traits.hpp>
+
21 #include <stan/prob/constants.hpp>
+
22 #include <stan/prob/traits.hpp>
+
23 
+
24 namespace stan {
+
25 
+
26  namespace prob {
+
27 
+
45  template <bool propto,
+
46  typename T_y, typename T_loc, typename T_covar>
+
47  typename boost::math::tools::promote_args<T_y,T_loc,T_covar>::type
+
48  multi_normal_cholesky_log(const Eigen::Matrix<T_y,Eigen::Dynamic,1>& y,
+
49  const Eigen::Matrix<T_loc,Eigen::Dynamic,1>& mu,
+
50  const Eigen::Matrix<T_covar,Eigen::Dynamic,Eigen::Dynamic>& L) {
+
51  static const char* function = "stan::prob::multi_normal_cholesky_log(%1%)";
+
52 
+ + + + +
57  using stan::math::sum;
+
58 
+ + + + +
63  using boost::math::tools::promote_args;
+
64 
+
65  typename promote_args<T_y,T_loc,T_covar>::type lp(0.0);
+
66 
+
67  if (!check_size_match(function,
+
68  y.size(), "Size of random variable",
+
69  mu.size(), "size of location parameter",
+
70  &lp))
+
71  return lp;
+
72  if (!check_size_match(function,
+
73  y.size(), "Size of random variable",
+
74  L.rows(), "rows of covariance parameter",
+
75  &lp))
+
76  return lp;
+
77  if (!check_size_match(function,
+
78  y.size(), "Size of random variable",
+
79  L.cols(), "columns of covariance parameter",
+
80  &lp))
+
81  return lp;
+
82  if (!check_finite(function, mu, "Location parameter", &lp))
+
83  return lp;
+
84  if (!check_not_nan(function, y, "Random variable", &lp))
+
85  return lp;
+
86 
+
87  if (y.rows() == 0)
+
88  return lp;
+
89 
+ +
91  lp += NEG_LOG_SQRT_TWO_PI * y.rows();
+
92 
+ +
94  Eigen::Matrix<T_covar,Eigen::Dynamic,1> L_log_diag = L.diagonal().array().log().matrix();
+
95  lp -= sum(L_log_diag);
+
96  }
+
97 
+ +
99  Eigen::Matrix<typename
+
100  boost::math::tools::promote_args<T_y,T_loc>::type,
+
101  Eigen::Dynamic, 1> y_minus_mu(y.size());
+
102  for (int i = 0; i < y.size(); i++)
+
103  y_minus_mu(i) = y(i)-mu(i);
+
104  Eigen::Matrix<typename
+
105  boost::math::tools::promote_args<T_covar,T_loc,T_y>::type,
+
106  Eigen::Dynamic, 1>
+
107  half(mdivide_left_tri_low(L,y_minus_mu));
+
108  // FIXME: this code does not compile. revert after fixing subtract()
+
109  // Eigen::Matrix<typename
+
110  // boost::math::tools::promote_args<T_covar,T_loc,T_y>::type,
+
111  // Eigen::Dynamic, 1>
+
112  // half(mdivide_left_tri_low(L,subtract(y,mu)));
+
113  lp -= 0.5 * dot_self(half);
+
114  }
+
115  return lp;
+
116  }
+
117 
+
118  template <typename T_y, typename T_loc, typename T_covar>
+
119  inline
+
120  typename boost::math::tools::promote_args<T_y,T_loc,T_covar>::type
+
121  multi_normal_cholesky_log(const Eigen::Matrix<T_y,Eigen::Dynamic,1>& y,
+
122  const Eigen::Matrix<T_loc,Eigen::Dynamic,1>& mu,
+
123  const Eigen::Matrix<T_covar,Eigen::Dynamic,Eigen::Dynamic>& L) {
+
124  return multi_normal_cholesky_log<false>(y,mu,L);
+
125  }
+
126 
+
129  template <bool propto,
+
130  typename T_y, typename T_loc, typename T_covar>
+
131  typename boost::math::tools::promote_args<T_y,T_loc,T_covar>::type
+
132  multi_normal_cholesky_log(const Eigen::Matrix<T_y,Eigen::Dynamic,Eigen::Dynamic>& y,
+
133  const Eigen::Matrix<T_loc,Eigen::Dynamic,1>& mu,
+
134  const Eigen::Matrix<T_covar,Eigen::Dynamic,Eigen::Dynamic>& L) {
+
135  static const char* function = "stan::prob::multi_normal_cholesky_log(%1%)";
+
136 
+ + +
139  using stan::math::multiply;
+
140  using stan::math::subtract;
+
141  using stan::math::sum;
+
142  using stan::math::log;
+
143 
+ + + + +
148  using boost::math::tools::promote_args;
+
149 
+
150  typename promote_args<T_y,T_loc,T_covar>::type lp(0.0);
+
151 
+
152  if (!check_size_match(function,
+
153  y.cols(), "Columns of random variable",
+
154  mu.rows(), "rows of location parameter",
+
155  &lp))
+
156  return lp;
+
157  if (!check_size_match(function,
+
158  y.cols(), "Columns of random variable",
+
159  L.rows(), "rows of covariance parameter",
+
160  &lp))
+
161  return lp;
+
162  if (!check_size_match(function,
+
163  y.cols(), "Columns of random variable",
+
164  L.cols(), "columns of covariance parameter",
+
165  &lp))
+
166  return lp;
+
167  if (!check_finite(function, mu, "Location parameter", &lp))
+
168  return lp;
+
169  if (!check_not_nan(function, y, "Random variable", &lp))
+
170  return lp;
+
171 
+
172  if (y.cols() == 0)
+
173  return lp;
+
174 
+ +
176  lp += NEG_LOG_SQRT_TWO_PI * y.cols() * y.rows();
+
177 
+ +
179  Eigen::Matrix<T_covar,Eigen::Dynamic,1> L_log_diag = L.diagonal().array().log().matrix();
+
180  lp -= sum(L_log_diag) * y.rows();
+
181  }
+
182 
+ +
184  Eigen::Matrix<T_loc, Eigen::Dynamic, Eigen::Dynamic> MU(y.rows(),y.cols());
+ +
186  i < y.rows(); i++)
+
187  MU.row(i) = mu;
+
188 
+
189  Eigen::Matrix<typename
+
190  boost::math::tools::promote_args<T_loc,T_y>::type,
+
191  Eigen::Dynamic,Eigen::Dynamic>
+
192  y_minus_MU(y.rows(), y.cols());
+
193  for (int i = 0; i < y.size(); i++)
+
194  y_minus_MU(i) = y(i)-MU(i);
+
195 
+
196  Eigen::Matrix<typename
+
197  boost::math::tools::promote_args<T_loc,T_y>::type,
+
198  Eigen::Dynamic,Eigen::Dynamic>
+
199  z(y_minus_MU.transpose()); // was =
+
200 
+
201  // FIXME: revert this code when subtract() is fixed.
+
202  // Eigen::Matrix<typename
+
203  // boost::math::tools::promote_args<T_loc,T_y>::type,
+
204  // Eigen::Dynamic,Eigen::Dynamic>
+
205  // z(subtract(y,MU).transpose()); // was =
+
206 
+
207  Eigen::Matrix<typename
+
208  boost::math::tools::promote_args<T_covar,T_loc,T_y>::type,
+
209  Eigen::Dynamic,Eigen::Dynamic>
+
210  half(mdivide_left_tri_low(L,z));
+
211 
+
212  lp -= 0.5 * sum(columns_dot_self(half));
+
213  }
+
214  return lp;
+
215  }
+
216 
+
217  template <typename T_y, typename T_loc, typename T_covar>
+
218  inline
+
219  typename boost::math::tools::promote_args<T_y,T_loc,T_covar>::type
+
220  multi_normal_cholesky_log(const Eigen::Matrix<T_y,Eigen::Dynamic,Eigen::Dynamic>& y,
+
221  const Eigen::Matrix<T_loc,Eigen::Dynamic,1>& mu,
+
222  const Eigen::Matrix<T_covar,Eigen::Dynamic,Eigen::Dynamic>& L) {
+
223  return multi_normal_cholesky_log<false>(y,mu,L);
+
224  }
+
225 
+
226  }
+
227 }
+
228 
+
229 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/multi__normal__prec_8hpp.html b/doc/api/html/multi__normal__prec_8hpp.html new file mode 100644 index 00000000000..d5a2b05a362 --- /dev/null +++ b/doc/api/html/multi__normal__prec_8hpp.html @@ -0,0 +1,163 @@ + + + + + +Stan: src/stan/prob/distributions/multivariate/continuous/multi_normal_prec.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
multi_normal_prec.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::prob
 Templated probability distributions.
 
+ + + + + + + + + + + + + + +

+Functions

template<bool propto, typename T_y , typename T_loc , typename T_covar >
boost::math::tools::promote_args
+< T_y, T_loc, T_covar >::type 
stan::prob::multi_normal_prec_log (const Eigen::Matrix< T_y, Eigen::Dynamic, 1 > &y, const Eigen::Matrix< T_loc, Eigen::Dynamic, 1 > &mu, const Eigen::Matrix< T_covar, Eigen::Dynamic, Eigen::Dynamic > &Sigma)
 
template<typename T_y , typename T_loc , typename T_covar >
boost::math::tools::promote_args
+< T_y, T_loc, T_covar >::type 
stan::prob::multi_normal_prec_log (const Eigen::Matrix< T_y, Eigen::Dynamic, 1 > &y, const Eigen::Matrix< T_loc, Eigen::Dynamic, 1 > &mu, const Eigen::Matrix< T_covar, Eigen::Dynamic, Eigen::Dynamic > &Sigma)
 
template<bool propto, typename T_y , typename T_loc , typename T_covar >
boost::math::tools::promote_args
+< T_y, T_loc, T_covar >::type 
stan::prob::multi_normal_prec_log (const Eigen::Matrix< T_y, Eigen::Dynamic, Eigen::Dynamic > &y, const Eigen::Matrix< T_loc, Eigen::Dynamic, 1 > &mu, const Eigen::Matrix< T_covar, Eigen::Dynamic, Eigen::Dynamic > &Sigma)
 y can have multiple rows (observations) and columns (on variables)
 
template<typename T_y , typename T_loc , typename T_covar >
boost::math::tools::promote_args
+< T_y, T_loc, T_covar >::type 
stan::prob::multi_normal_prec_log (const Eigen::Matrix< T_y, Eigen::Dynamic, Eigen::Dynamic > &y, const Eigen::Matrix< T_loc, Eigen::Dynamic, 1 > &mu, const Eigen::Matrix< T_covar, Eigen::Dynamic, Eigen::Dynamic > &Sigma)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/multi__normal__prec_8hpp_source.html b/doc/api/html/multi__normal__prec_8hpp_source.html new file mode 100644 index 00000000000..027423757f9 --- /dev/null +++ b/doc/api/html/multi__normal__prec_8hpp_source.html @@ -0,0 +1,318 @@ + + + + + +Stan: src/stan/prob/distributions/multivariate/continuous/multi_normal_prec.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
multi_normal_prec.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__PROB__DISTRIBUTIONS__MULTIVARIATE__CONTINUOUS__MULTI_NORMAL_PREC_HPP__
+
2 #define __STAN__PROB__DISTRIBUTIONS__MULTIVARIATE__CONTINUOUS__MULTI_NORMAL_PREC_HPP__
+
3 
+
4 #include <stan/agrad/rev.hpp>
+ + + + + + + + +
13 #include <stan/math/matrix/log.hpp>
+ + + + + +
19 #include <stan/math/matrix/sum.hpp>
+ +
21 #include <stan/meta/traits.hpp>
+
22 #include <stan/prob/constants.hpp>
+
23 #include <stan/prob/traits.hpp>
+ +
25 
+
26 namespace stan {
+
27 
+
28  namespace prob {
+
29 
+
30  template <bool propto,
+
31  typename T_y, typename T_loc, typename T_covar>
+
32  typename boost::math::tools::promote_args<T_y,T_loc,T_covar>::type
+
33  multi_normal_prec_log(const Eigen::Matrix<T_y,Eigen::Dynamic,1>& y,
+
34  const Eigen::Matrix<T_loc,Eigen::Dynamic,1>& mu,
+
35  const Eigen::Matrix<T_covar,Eigen::Dynamic,Eigen::Dynamic>& Sigma) {
+
36  static const char* function = "stan::prob::multi_normal_prec_log(%1%)";
+
37  typename boost::math::tools::promote_args<T_y,T_loc,T_covar>::type lp(0.0);
+
38 
+ + + + + +
44  using stan::math::sum;
+ + +
47  using stan::math::LDLT_factor;
+ +
49 
+
50  if (!check_size_match(function,
+
51  Sigma.rows(), "Rows of precision parameter",
+
52  Sigma.cols(), "columns of precision parameter",
+
53  &lp))
+
54  return lp;
+
55  if (!check_positive(function, Sigma.rows(), "Precision matrix rows", &lp))
+
56  return lp;
+
57  if (!check_symmetric(function, Sigma, "Precision matrix", &lp))
+
58  return lp;
+
59 
+ +
61  if(!check_ldlt_factor(function,ldlt_Sigma,"LDLT_Factor of precision parameter",&lp))
+
62  return lp;
+
63 
+
64  if (!check_size_match(function,
+
65  y.size(), "Size of random variable",
+
66  mu.size(), "size of location parameter",
+
67  &lp))
+
68  return lp;
+
69  if (!check_size_match(function,
+
70  y.size(), "Size of random variable",
+
71  Sigma.rows(), "rows of covariance parameter",
+
72  &lp))
+
73  return lp;
+
74  if (!check_size_match(function,
+
75  y.size(), "Size of random variable",
+
76  Sigma.cols(), "columns of covariance parameter",
+
77  &lp))
+
78  return lp;
+
79  if (!check_finite(function, mu, "Location parameter", &lp))
+
80  return lp;
+
81  if (!check_not_nan(function, y, "Random variable", &lp))
+
82  return lp;
+
83 
+
84  if (y.rows() == 0)
+
85  return lp;
+
86 
+ +
88  lp += NEG_LOG_SQRT_TWO_PI * y.rows();
+
89 
+ +
91  lp += 0.5*log_determinant_ldlt(ldlt_Sigma);
+
92 
+ +
94  Eigen::Matrix<typename
+
95  boost::math::tools::promote_args<T_y,T_loc>::type,
+
96  Eigen::Dynamic, 1> y_minus_mu(y.size());
+
97  for (int i = 0; i < y.size(); i++)
+
98  y_minus_mu(i) = y(i)-mu(i);
+
99  lp -= 0.5 * trace_quad_form(Sigma,y_minus_mu);
+
100  }
+
101  return lp;
+
102  }
+
103 
+
104  template <typename T_y, typename T_loc, typename T_covar>
+
105  inline
+
106  typename boost::math::tools::promote_args<T_y,T_loc,T_covar>::type
+
107  multi_normal_prec_log(const Eigen::Matrix<T_y,Eigen::Dynamic,1>& y,
+
108  const Eigen::Matrix<T_loc,Eigen::Dynamic,1>& mu,
+
109  const Eigen::Matrix<T_covar,Eigen::Dynamic,Eigen::Dynamic>& Sigma) {
+
110  return multi_normal_prec_log<false>(y,mu,Sigma);
+
111  }
+
112 
+
116  template <bool propto,
+
117  typename T_y, typename T_loc, typename T_covar>
+
118  typename boost::math::tools::promote_args<T_y,T_loc,T_covar>::type
+
119  multi_normal_prec_log(const Eigen::Matrix<T_y,Eigen::Dynamic,Eigen::Dynamic>& y,
+
120  const Eigen::Matrix<T_loc,Eigen::Dynamic,1>& mu,
+
121  const Eigen::Matrix<T_covar,Eigen::Dynamic,Eigen::Dynamic>& Sigma) {
+
122  static const char* function = "stan::prob::multi_normal_prec_log(%1%)";
+
123  typename boost::math::tools::promote_args<T_y,T_loc,T_covar>::type lp(0.0);
+
124 
+ + + + + +
130  using stan::math::sum;
+ + +
133  using stan::math::LDLT_factor;
+ +
135 
+
136  if (!check_size_match(function,
+
137  Sigma.rows(), "Rows of precision matrix",
+
138  Sigma.cols(), "columns of precision matrix",
+
139  &lp))
+
140  return lp;
+
141  if (!check_positive(function, Sigma.rows(), "Precision matrix rows", &lp))
+
142  return lp;
+
143  if (!check_symmetric(function, Sigma, "Precision matrix", &lp))
+
144  return lp;
+
145 
+ +
147  if(!check_ldlt_factor(function,ldlt_Sigma,"LDLT_Factor of precision matrix",&lp))
+
148  return lp;
+
149 
+
150  if (!check_size_match(function,
+
151  y.cols(), "Columns of random variable",
+
152  mu.rows(), "rows of location parameter",
+
153  &lp))
+
154  return lp;
+
155  if (!check_size_match(function,
+
156  y.cols(), "Columns of random variable",
+
157  Sigma.rows(), "rows of covariance parameter",
+
158  &lp))
+
159  return lp;
+
160  if (!check_size_match(function,
+
161  y.cols(), "Columns of random variable",
+
162  Sigma.cols(), "columns of covariance parameter",
+
163  &lp))
+
164  return lp;
+
165  if (!check_finite(function, mu, "Location parameter", &lp))
+
166  return lp;
+
167  if (!check_not_nan(function, y, "Random variable", &lp))
+
168  return lp;
+
169 
+
170  if (y.cols() == 0)
+
171  return lp;
+
172 
+ +
174  lp += NEG_LOG_SQRT_TWO_PI * y.cols() * y.rows();
+
175 
+ +
177  lp += log_determinant_ldlt(ldlt_Sigma) * (0.5 * y.cols());
+
178  }
+
179 
+ +
181  Eigen::Matrix<T_loc, Eigen::Dynamic, Eigen::Dynamic> MU(y.rows(),y.cols());
+ +
183  i < y.rows(); i++)
+
184  MU.row(i) = mu;
+
185 
+
186  Eigen::Matrix<typename
+
187  boost::math::tools::promote_args<T_loc,T_y>::type,
+
188  Eigen::Dynamic,Eigen::Dynamic> y_minus_MU(y.rows(), y.cols());
+
189 
+
190  for (int i = 0; i < y.size(); i++)
+
191  y_minus_MU(i) = y(i)-MU(i);
+
192 
+
193  Eigen::Matrix<typename
+
194  boost::math::tools::promote_args<T_loc,T_y>::type,
+
195  Eigen::Dynamic,Eigen::Dynamic> z(y_minus_MU.transpose()); // was =
+
196 
+
197  lp -= 0.5 * trace_quad_form(Sigma,z);
+
198  }
+
199  return lp;
+
200  }
+
201 
+
202  template <typename T_y, typename T_loc, typename T_covar>
+
203  inline
+
204  typename boost::math::tools::promote_args<T_y,T_loc,T_covar>::type
+
205  multi_normal_prec_log(const Eigen::Matrix<T_y,Eigen::Dynamic,Eigen::Dynamic>& y,
+
206  const Eigen::Matrix<T_loc,Eigen::Dynamic,1>& mu,
+
207  const Eigen::Matrix<T_covar,Eigen::Dynamic,Eigen::Dynamic>& Sigma) {
+
208  return multi_normal_prec_log<false>(y,mu,Sigma);
+
209  }
+
210 
+
211  }
+
212 }
+
213 #endif
+
214 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/multi__student__t_8hpp.html b/doc/api/html/multi__student__t_8hpp.html new file mode 100644 index 00000000000..42c632befd2 --- /dev/null +++ b/doc/api/html/multi__student__t_8hpp.html @@ -0,0 +1,150 @@ + + + + + +Stan: src/stan/prob/distributions/multivariate/continuous/multi_student_t.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
multi_student_t.hpp File Reference
+
+
+
#include <cstdlib>
+#include <boost/math/special_functions/gamma.hpp>
+#include <boost/math/special_functions/fpclassify.hpp>
+#include <stan/math/error_handling.hpp>
+#include <stan/math/matrix_error_handling.hpp>
+#include <stan/prob/constants.hpp>
+#include <stan/prob/traits.hpp>
+#include <stan/prob/distributions/multivariate/continuous/multi_normal.hpp>
+#include <stan/prob/distributions/univariate/continuous/inv_gamma.hpp>
+#include <stan/math/error_handling/matrix/check_ldlt_factor.hpp>
+#include <boost/random/variate_generator.hpp>
+
+

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::prob
 Templated probability distributions.
 
+ + + + + + + + + + + +

+Functions

template<bool propto, typename T_y , typename T_dof , typename T_loc , typename T_scale >
boost::math::tools::promote_args
+< T_y, T_dof, T_loc, T_scale >
+::type 
stan::prob::multi_student_t_log (const Eigen::Matrix< T_y, Eigen::Dynamic, 1 > &y, const T_dof &nu, const Eigen::Matrix< T_loc, Eigen::Dynamic, 1 > &mu, const Eigen::Matrix< T_scale, Eigen::Dynamic, Eigen::Dynamic > &Sigma)
 Return the log of the multivariate Student t distribution at the specified arguments.
 
template<typename T_y , typename T_dof , typename T_loc , typename T_scale >
boost::math::tools::promote_args
+< T_y, T_dof, T_loc, T_scale >
+::type 
stan::prob::multi_student_t_log (const Eigen::Matrix< T_y, Eigen::Dynamic, 1 > &y, const T_dof &nu, const Eigen::Matrix< T_loc, Eigen::Dynamic, 1 > &mu, const Eigen::Matrix< T_scale, Eigen::Dynamic, Eigen::Dynamic > &Sigma)
 
template<class RNG >
Eigen::VectorXd stan::prob::multi_student_t_rng (const double nu, const Eigen::Matrix< double, Eigen::Dynamic, 1 > &mu, const Eigen::Matrix< double, Eigen::Dynamic, Eigen::Dynamic > &s, RNG &rng)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/multi__student__t_8hpp_source.html b/doc/api/html/multi__student__t_8hpp_source.html new file mode 100644 index 00000000000..e5ee0864f44 --- /dev/null +++ b/doc/api/html/multi__student__t_8hpp_source.html @@ -0,0 +1,267 @@ + + + + + +Stan: src/stan/prob/distributions/multivariate/continuous/multi_student_t.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
multi_student_t.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__PROB__DISTRIBUTIONS__MULTI_STUDENT_T_HPP__
+
2 #define __STAN__PROB__DISTRIBUTIONS__MULTI_STUDENT_T_HPP__
+
3 
+
4 #include <cstdlib>
+
5 
+
6 #include <boost/math/special_functions/gamma.hpp>
+
7 #include <boost/math/special_functions/fpclassify.hpp>
+
8 
+ + +
11 #include <stan/prob/constants.hpp>
+
12 #include <stan/prob/traits.hpp>
+ + + +
16 #include <boost/random/variate_generator.hpp>
+
17 
+
18 namespace stan {
+
19 
+
20  namespace prob {
+
21 
+
28  template <bool propto,
+
29  typename T_y, typename T_dof, typename T_loc, typename T_scale>
+
30  typename boost::math::tools::promote_args<T_y,T_dof,T_loc,T_scale>::type
+
31  multi_student_t_log(const Eigen::Matrix<T_y,Eigen::Dynamic,1>& y,
+
32  const T_dof& nu,
+
33  const Eigen::Matrix<T_loc,Eigen::Dynamic,1>& mu,
+
34  const
+
35  Eigen::Matrix<T_scale,
+
36  Eigen::Dynamic,Eigen::Dynamic>& Sigma) {
+
37  static const char* function = "stan::prob::multi_student_t(%1%)";
+
38 
+ + + + + +
44  using boost::math::tools::promote_args;
+
45  using boost::math::lgamma;
+ +
47  using stan::math::LDLT_factor;
+ +
49 
+
50  typename promote_args<T_y,T_dof,T_loc,T_scale>::type lp(0.0);
+
51 
+
52  // allows infinities
+
53  if (!check_not_nan(function, nu,
+
54  "Degrees of freedom parameter", &lp))
+
55  return lp;
+
56  if (!check_positive(function, nu,
+
57  "Degrees of freedom parameter", &lp))
+
58  return lp;
+
59 
+
60  using boost::math::isinf;
+
61 
+
62  if (isinf(nu)) // already checked nu > 0
+
63  return multi_normal_log(y,mu,Sigma);
+
64 
+
65  if (!check_size_match(function,
+
66  y.size(), "Size of random variable",
+
67  mu.size(), "size of location parameter",
+
68  &lp))
+
69  return lp;
+
70  if (!check_size_match(function,
+
71  y.size(), "Size of random variable",
+
72  Sigma.rows(), "rows of scale parameter",
+
73  &lp))
+
74  return lp;
+
75  if (!check_size_match(function,
+
76  y.size(), "Size of random variable",
+
77  Sigma.cols(), "columns of scale parameter",
+
78  &lp))
+
79  return lp;
+
80  if (!check_finite(function, mu, "Location parameter", &lp))
+
81  return lp;
+
82  if (!check_not_nan(function, y, "Random variable", &lp))
+
83  return lp;
+
84  if (!check_symmetric(function, Sigma, "Scale parameter", &lp))
+
85  return lp;
+
86 
+ +
88  if(!check_ldlt_factor(function,ldlt_Sigma,"LDLT_Factor of scale parameter",&lp))
+
89  return lp;
+
90 
+
91  double d = y.size();
+
92 
+ +
94  lp += lgamma(0.5 * (nu + d));
+
95  lp -= lgamma(0.5 * nu);
+
96  lp -= (0.5 * d) * log(nu);
+
97  }
+
98 
+ +
100  lp -= (0.5 * d) * LOG_PI;
+
101 
+
102  using stan::math::multiply;
+ +
104  using stan::math::subtract;
+
105  using Eigen::Array;
+
106 
+
107 
+ +
109  lp -= 0.5*log_determinant_ldlt(ldlt_Sigma);
+
110  }
+
111 
+ +
113 
+
114  Eigen::Matrix<typename promote_args<T_y,T_loc>::type,
+
115  Eigen::Dynamic,
+
116  1> y_minus_mu = subtract(y,mu);
+
117  lp -= 0.5
+
118  * (nu + d)
+
119  * log(1.0 + trace_inv_quad_form_ldlt(ldlt_Sigma,y_minus_mu) / nu);
+
120  }
+
121  return lp;
+
122  }
+
123 
+
124  template <typename T_y, typename T_dof, typename T_loc, typename T_scale>
+
125  inline
+
126  typename boost::math::tools::promote_args<T_y,T_dof,T_loc,T_scale>::type
+
127  multi_student_t_log(const Eigen::Matrix<T_y,Eigen::Dynamic,1>& y,
+
128  const T_dof& nu,
+
129  const Eigen::Matrix<T_loc,Eigen::Dynamic,1>& mu,
+
130  const
+
131  Eigen::Matrix<T_scale,
+
132  Eigen::Dynamic,Eigen::Dynamic>& Sigma) {
+
133  return multi_student_t_log<false>(y,nu,mu,Sigma);
+
134  }
+
135 
+
136 
+
137  template <class RNG>
+
138  inline Eigen::VectorXd
+
139  multi_student_t_rng(const double nu,
+
140  const Eigen::Matrix<double,Eigen::Dynamic,1>& mu,
+
141  const Eigen::Matrix<double,Eigen::Dynamic,Eigen::Dynamic>& s,
+
142  RNG& rng) {
+
143 
+
144  static const char* function = "stan::prob::multi_student_t_rng(%1%)";
+
145 
+ + + + +
150 
+
151  check_finite(function, mu, "Location parameter");
+
152  check_symmetric(function, s, "Scale parameter");
+
153  check_not_nan(function, nu,
+
154  "Degrees of freedom parameter");
+
155  check_positive(function, nu,
+
156  "Degrees of freedom parameter");
+
157 
+
158  Eigen::VectorXd z(s.cols());
+
159  z.setZero();
+
160 
+
161  double w = stan::prob::inv_gamma_rng(nu / 2, nu / 2, rng);
+
162  return mu + std::sqrt(w) * stan::prob::multi_normal_rng(z, s, rng);
+
163  }
+
164  }
+
165 }
+
166 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/multinomial_8hpp.html b/doc/api/html/multinomial_8hpp.html new file mode 100644 index 00000000000..f9ff2cbd9f0 --- /dev/null +++ b/doc/api/html/multinomial_8hpp.html @@ -0,0 +1,146 @@ + + + + + +Stan: src/stan/prob/distributions/multivariate/discrete/multinomial.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
multinomial.hpp File Reference
+
+
+
#include <boost/math/special_functions/gamma.hpp>
+#include <boost/random/uniform_01.hpp>
+#include <boost/random/variate_generator.hpp>
+#include <stan/math/error_handling.hpp>
+#include <stan/math/functions/multiply_log.hpp>
+#include <stan/math/matrix_error_handling.hpp>
+#include <stan/prob/constants.hpp>
+#include <stan/prob/distributions/univariate/discrete/binomial.hpp>
+#include <stan/prob/distributions/multivariate/discrete/categorical.hpp>
+#include <stan/prob/traits.hpp>
+
+

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::prob
 Templated probability distributions.
 
+ + + + + + + + + + +

+Functions

template<bool propto, typename T_prob >
boost::math::tools::promote_args
+< T_prob >::type 
stan::prob::multinomial_log (const std::vector< int > &ns, const Eigen::Matrix< T_prob, Eigen::Dynamic, 1 > &theta)
 
template<typename T_prob >
boost::math::tools::promote_args
+< T_prob >::type 
stan::prob::multinomial_log (const std::vector< int > &ns, const Eigen::Matrix< T_prob, Eigen::Dynamic, 1 > &theta)
 
template<class RNG >
std::vector< int > stan::prob::multinomial_rng (const Eigen::Matrix< double, Eigen::Dynamic, 1 > &theta, const int N, RNG &rng)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/multinomial_8hpp_source.html b/doc/api/html/multinomial_8hpp_source.html new file mode 100644 index 00000000000..ca340d85e22 --- /dev/null +++ b/doc/api/html/multinomial_8hpp_source.html @@ -0,0 +1,204 @@ + + + + + +Stan: src/stan/prob/distributions/multivariate/discrete/multinomial.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
multinomial.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__PROB__DISTRIBUTIONS__MULTIVARIATE__DISCRETE__MULTINOMIAL_HPP__
+
2 #define __STAN__PROB__DISTRIBUTIONS__MULTIVARIATE__DISCRETE__MULTINOMIAL_HPP__
+
3 
+
4 #include <boost/math/special_functions/gamma.hpp>
+
5 #include <boost/random/uniform_01.hpp>
+
6 #include <boost/random/variate_generator.hpp>
+
7 
+ + + + +
12 #include <stan/prob/constants.hpp>
+ + +
15 #include <stan/prob/traits.hpp>
+
16 
+
17 namespace stan {
+
18 
+
19  namespace prob {
+
20  // Multinomial(ns|N,theta) [0 <= n <= N; SUM ns = N;
+
21  // 0 <= theta[n] <= 1; SUM theta = 1]
+
22  template <bool propto,
+
23  typename T_prob>
+
24  typename boost::math::tools::promote_args<T_prob>::type
+
25  multinomial_log(const std::vector<int>& ns,
+
26  const Eigen::Matrix<T_prob,Eigen::Dynamic,1>& theta) {
+
27  static const char* function = "stan::prob::multinomial_log(%1%)";
+
28 
+ + + +
32  using boost::math::tools::promote_args;
+
33  using boost::math::lgamma;
+
34 
+
35  typename promote_args<T_prob>::type lp(0.0);
+
36  if (!check_nonnegative(function, ns, "Number of trials variable", &lp))
+
37  return lp;
+
38  if (!check_simplex(function, theta, "Probabilites parameter",
+
39  &lp))
+
40  return lp;
+
41  if (!check_size_match(function,
+
42  ns.size(), "Size of number of trials variable",
+
43  theta.rows(), "rows of probabilities parameter",
+
44  &lp))
+
45  return lp;
+ +
47 
+ +
49  double sum = 1.0;
+
50  for (unsigned int i = 0; i < ns.size(); ++i)
+
51  sum += ns[i];
+
52  lp += lgamma(sum);
+
53  for (unsigned int i = 0; i < ns.size(); ++i)
+
54  lp -= lgamma(ns[i] + 1.0);
+
55  }
+ +
57  for (unsigned int i = 0; i < ns.size(); ++i)
+
58  lp += multiply_log(ns[i], theta[i]);
+
59  return lp;
+
60  }
+
61 
+
62  template <typename T_prob>
+
63  typename boost::math::tools::promote_args<T_prob>::type
+
64  multinomial_log(const std::vector<int>& ns,
+
65  const Eigen::Matrix<T_prob,Eigen::Dynamic,1>& theta) {
+
66  return multinomial_log<false>(ns,theta);
+
67  }
+
68 
+
69  template <class RNG>
+
70  inline std::vector<int>
+
71  multinomial_rng(const Eigen::Matrix<double,Eigen::Dynamic,1>& theta,
+
72  const int N,
+
73  RNG& rng) {
+
74  static const char* function = "stan::prob::multinomial_rng(%1%)";
+ + +
77 
+
78  check_simplex(function, theta, "Probabilites parameter");
+
79  check_positive(function,N,"number of trials variables");
+
80 
+
81  std::vector<int> result(theta.size(),0);
+
82  double mass_left = 1.0;
+
83  int n_left = N;
+
84  for (int k = 0; n_left > 0 && k < theta.size(); ++k) {
+
85  double p = theta[k] / mass_left;
+
86  if (p > 1.0) p = 1.0;
+
87  result[k] = binomial_rng(n_left,p,rng);
+
88  n_left -= result[k];
+
89  mass_left -= theta[k];
+
90  }
+
91  return result;
+
92  }
+
93 
+
94 
+
95  }
+
96 }
+
97 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/multivariate_2continuous_8hpp.html b/doc/api/html/multivariate_2continuous_8hpp.html new file mode 100644 index 00000000000..95d7ed10919 --- /dev/null +++ b/doc/api/html/multivariate_2continuous_8hpp.html @@ -0,0 +1,121 @@ + + + + + +Stan: src/stan/prob/distributions/multivariate/continuous.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
continuous.hpp File Reference
+
+ +
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/multivariate_2continuous_8hpp_source.html b/doc/api/html/multivariate_2continuous_8hpp_source.html new file mode 100644 index 00000000000..6cadc93d425 --- /dev/null +++ b/doc/api/html/multivariate_2continuous_8hpp_source.html @@ -0,0 +1,124 @@ + + + + + +Stan: src/stan/prob/distributions/multivariate/continuous.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
continuous.hpp
+
+ +
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/multivariate_2discrete_8hpp.html b/doc/api/html/multivariate_2discrete_8hpp.html new file mode 100644 index 00000000000..0be7c07619f --- /dev/null +++ b/doc/api/html/multivariate_2discrete_8hpp.html @@ -0,0 +1,112 @@ + + + + + +Stan: src/stan/prob/distributions/multivariate/discrete.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
discrete.hpp File Reference
+
+ +
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/multivariate_2discrete_8hpp_source.html b/doc/api/html/multivariate_2discrete_8hpp_source.html new file mode 100644 index 00000000000..6d6309a8895 --- /dev/null +++ b/doc/api/html/multivariate_2discrete_8hpp_source.html @@ -0,0 +1,114 @@ + + + + + +Stan: src/stan/prob/distributions/multivariate/discrete.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
discrete.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__PROB__DISTRIBUTIONS__MULTIVARIATE__DISCRETE_HPP__
+
2 #define __STAN__PROB__DISTRIBUTIONS__MULTIVARIATE__DISCRETE_HPP__
+
3 
+ + + +
7 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/multivariate_8hpp.html b/doc/api/html/multivariate_8hpp.html new file mode 100644 index 00000000000..c8359aff12c --- /dev/null +++ b/doc/api/html/multivariate_8hpp.html @@ -0,0 +1,111 @@ + + + + + +Stan: src/stan/prob/distributions/multivariate.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
multivariate.hpp File Reference
+
+ +
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/multivariate_8hpp_source.html b/doc/api/html/multivariate_8hpp_source.html new file mode 100644 index 00000000000..4b8944ca238 --- /dev/null +++ b/doc/api/html/multivariate_8hpp_source.html @@ -0,0 +1,114 @@ + + + + + +Stan: src/stan/prob/distributions/multivariate.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
multivariate.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__PROB__DISTRIBUTIONS__MULTIVARIATE_HPP__
+
2 #define __STAN__PROB__DISTRIBUTIONS__MULTIVARIATE_HPP__
+
3 
+ + +
6 
+
7 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/namespace_eigen.html b/doc/api/html/namespace_eigen.html new file mode 100644 index 00000000000..e3573e1581e --- /dev/null +++ b/doc/api/html/namespace_eigen.html @@ -0,0 +1,124 @@ + + + + + +Stan: Eigen Namespace Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ +
+
+ +
+
Eigen Namespace Reference
+
+
+ +

(Expert) Numerical traits for algorithmic differentiation variables. +More...

+ + + + + +

+Namespaces

namespace  internal
 (Expert) Product traits for algorithmic differentiation variables.
 
+ + + + +

+Classes

struct  NumTraits< stan::agrad::var >
 Numerical traits template override for Eigen for automatic gradient variables. More...
 
+

Detailed Description

+

(Expert) Numerical traits for algorithmic differentiation variables.

+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/namespace_eigen_1_1internal.html b/doc/api/html/namespace_eigen_1_1internal.html new file mode 100644 index 00000000000..993b6d86eab --- /dev/null +++ b/doc/api/html/namespace_eigen_1_1internal.html @@ -0,0 +1,134 @@ + + + + + +Stan: Eigen::internal Namespace Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
Eigen::internal Namespace Reference
+
+
+ +

(Expert) Product traits for algorithmic differentiation variables. +More...

+ + + + + + + + + + + + + + + + + + +

+Classes

struct  significant_decimals_default_impl< stan::agrad::var, false >
 Implemented this for printing to stream. More...
 
struct  scalar_product_traits< stan::agrad::var, double >
 Scalar product traits override for Eigen for automatic gradient variables. More...
 
struct  scalar_product_traits< double, stan::agrad::var >
 Scalar product traits override for Eigen for automatic gradient variables. More...
 
struct  general_matrix_vector_product< Index, stan::agrad::var, ColMajor, ConjugateLhs, stan::agrad::var, ConjugateRhs >
 Override matrix-vector and matrix-matrix products to use more efficient implementation. More...
 
struct  general_matrix_vector_product< Index, stan::agrad::var, RowMajor, ConjugateLhs, stan::agrad::var, ConjugateRhs >
 
struct  general_matrix_matrix_product< Index, stan::agrad::var, LhsStorageOrder, ConjugateLhs, stan::agrad::var, RhsStorageOrder, ConjugateRhs, ColMajor >
 
+

Detailed Description

+

(Expert) Product traits for algorithmic differentiation variables.

+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/namespaceboost.html b/doc/api/html/namespaceboost.html new file mode 100644 index 00000000000..162305c8ae6 --- /dev/null +++ b/doc/api/html/namespaceboost.html @@ -0,0 +1,117 @@ + + + + + +Stan: boost Namespace Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ +
+
+ +
+
boost Namespace Reference
+
+
+ +

Reimplementing boost functionality. +More...

+ + + + + +

+Namespaces

namespace  math
 Reimplmeneting boost functionality for stan::agrad::var and and bugs in classification of integer types.
 
+

Detailed Description

+

Reimplementing boost functionality.

+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/namespaceboost_1_1math.html b/doc/api/html/namespaceboost_1_1math.html new file mode 100644 index 00000000000..927cd5e11b2 --- /dev/null +++ b/doc/api/html/namespaceboost_1_1math.html @@ -0,0 +1,330 @@ + + + + + +Stan: boost::math Namespace Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
boost::math Namespace Reference
+
+
+ +

Reimplmeneting boost functionality for stan::agrad::var and and bugs in classification of integer types. +More...

+ + + + + + + + + + + + + + + + + + + + + + +

+Functions

template<>
int fpclassify (const stan::agrad::var &v)
 Categorizes the given stan::agrad::var value.
 
template<>
bool isfinite (const stan::agrad::var &v)
 Checks if the given number has finite value.
 
template<>
bool isinf (const stan::agrad::var &v)
 Checks if the given number is infinite.
 
template<>
bool isnan (const stan::agrad::var &v)
 Checks if the given number is NaN.
 
template<>
bool isnormal (const stan::agrad::var &v)
 Checks if the given number is normal.
 
+

Detailed Description

+

Reimplmeneting boost functionality for stan::agrad::var and and bugs in classification of integer types.

+

FIXME: remove when BOOST fixes isfinite(). See ticket #6517. (Boost 1.48.0) https://svn.boost.org/trac/boost/ticket/6517

+

Function Documentation

+ +
+
+
+template<>
+ + + + + +
+ + + + + + + + +
int boost::math::fpclassify (const stan::agrad::varv)
+
+inline
+
+ +

Categorizes the given stan::agrad::var value.

+

Categorizes the stan::agrad::var value, v, into the following categories: zero, subnormal, normal, infinite, or NAN.

+
Parameters
+ + +
vVariable to classify.
+
+
+
Returns
One of FP_ZERO, FP_NORMAL, FP_FINITE, FP_INFINITE, FP_NAN, or FP_SUBZERO, specifying the category of v.
+ +

Definition at line 24 of file boost_fpclassify.hpp.

+ +
+
+ +
+
+
+template<>
+ + + + + +
+ + + + + + + + +
bool boost::math::isfinite (const stan::agrad::varv)
+
+inline
+
+ +

Checks if the given number has finite value.

+

Return true if the specified variable's value is finite.

+
Parameters
+ + +
vVariable to test.
+
+
+
Returns
true if variable is finite.
+ +

Definition at line 39 of file boost_fpclassify.hpp.

+ +
+
+ +
+
+
+template<>
+ + + + + +
+ + + + + + + + +
bool boost::math::isinf (const stan::agrad::varv)
+
+inline
+
+ +

Checks if the given number is infinite.

+

Return true if the specified variable's value is infinite.

+
Parameters
+ + +
vVariable to test.
+
+
+
Returns
true if variable is infinite.
+ +

Definition at line 54 of file boost_fpclassify.hpp.

+ +
+
+ +
+
+
+template<>
+ + + + + +
+ + + + + + + + +
bool boost::math::isnan (const stan::agrad::varv)
+
+inline
+
+ +

Checks if the given number is NaN.

+

Return true if the specified variable has a value that is NaN.

+
Parameters
+ + +
vVariable to test.
+
+
+
Returns
true if variable is NaN.
+ +

Definition at line 69 of file boost_fpclassify.hpp.

+ +
+
+ +
+
+
+template<>
+ + + + + +
+ + + + + + + + +
bool boost::math::isnormal (const stan::agrad::varv)
+
+inline
+
+ +

Checks if the given number is normal.

+

Return true if the specified variable has a value that is normal.

+
Parameters
+ + +
vVariable to test.
+
+
+
Returns
true if variable is normal.
+ +

Definition at line 84 of file boost_fpclassify.hpp.

+ +
+
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/namespacemembers.html b/doc/api/html/namespacemembers.html new file mode 100644 index 00000000000..52d6415a8c7 --- /dev/null +++ b/doc/api/html/namespacemembers.html @@ -0,0 +1,205 @@ + + + + + +Stan: Namespace Members + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + +
+ + + + +
+ +
+ +
+
Here is a list of all namespace members with links to the namespace documentation for each member:
+ +

- a -

+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/namespacemembers_0x62.html b/doc/api/html/namespacemembers_0x62.html new file mode 100644 index 00000000000..07a60895cdf --- /dev/null +++ b/doc/api/html/namespacemembers_0x62.html @@ -0,0 +1,240 @@ + + + + + +Stan: Namespace Members + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + +
+ + + + +
+ +
+ +
+
Here is a list of all namespace members with links to the namespace documentation for each member:
+ +

- b -

+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/namespacemembers_0x63.html b/doc/api/html/namespacemembers_0x63.html new file mode 100644 index 00000000000..bab2d681310 --- /dev/null +++ b/doc/api/html/namespacemembers_0x63.html @@ -0,0 +1,344 @@ + + + + + +Stan: Namespace Members + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + +
+ + + + +
+ +
+ +
+
Here is a list of all namespace members with links to the namespace documentation for each member:
+ +

- c -

+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/namespacemembers_0x64.html b/doc/api/html/namespacemembers_0x64.html new file mode 100644 index 00000000000..49ca39b4116 --- /dev/null +++ b/doc/api/html/namespacemembers_0x64.html @@ -0,0 +1,234 @@ + + + + + +Stan: Namespace Members + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + +
+ + + + +
+ +
+ +
+
Here is a list of all namespace members with links to the namespace documentation for each member:
+ +

- d -

+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/namespacemembers_0x65.html b/doc/api/html/namespacemembers_0x65.html new file mode 100644 index 00000000000..9a434bf5575 --- /dev/null +++ b/doc/api/html/namespacemembers_0x65.html @@ -0,0 +1,223 @@ + + + + + +Stan: Namespace Members + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + +
+ + + + +
+ +
+ +
+
Here is a list of all namespace members with links to the namespace documentation for each member:
+ +

- e -

+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/namespacemembers_0x66.html b/doc/api/html/namespacemembers_0x66.html new file mode 100644 index 00000000000..cba73da54f6 --- /dev/null +++ b/doc/api/html/namespacemembers_0x66.html @@ -0,0 +1,191 @@ + + + + + +Stan: Namespace Members + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + +
+ + + + +
+ +
+ +
+
Here is a list of all namespace members with links to the namespace documentation for each member:
+ +

- f -

+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/namespacemembers_0x67.html b/doc/api/html/namespacemembers_0x67.html new file mode 100644 index 00000000000..75fcf14c314 --- /dev/null +++ b/doc/api/html/namespacemembers_0x67.html @@ -0,0 +1,378 @@ + + + + + +Stan: Namespace Members + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + +
+ + + + +
+ +
+ +
+
Here is a list of all namespace members with links to the namespace documentation for each member:
+ +

- g -

+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/namespacemembers_0x68.html b/doc/api/html/namespacemembers_0x68.html new file mode 100644 index 00000000000..c84aead390b --- /dev/null +++ b/doc/api/html/namespacemembers_0x68.html @@ -0,0 +1,175 @@ + + + + + +Stan: Namespace Members + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + +
+ + + + +
+ +
+ +
+
Here is a list of all namespace members with links to the namespace documentation for each member:
+ +

- h -

+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/namespacemembers_0x69.html b/doc/api/html/namespacemembers_0x69.html new file mode 100644 index 00000000000..170a46ee15a --- /dev/null +++ b/doc/api/html/namespacemembers_0x69.html @@ -0,0 +1,300 @@ + + + + + +Stan: Namespace Members + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + +
+ + + + +
+ +
+ +
+
Here is a list of all namespace members with links to the namespace documentation for each member:
+ +

- i -

+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/namespacemembers_0x6a.html b/doc/api/html/namespacemembers_0x6a.html new file mode 100644 index 00000000000..0536dd003c3 --- /dev/null +++ b/doc/api/html/namespacemembers_0x6a.html @@ -0,0 +1,140 @@ + + + + + +Stan: Namespace Members + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + +
+ + + + +
+ +
+ +
+
Here is a list of all namespace members with links to the namespace documentation for each member:
+ +

- j -

+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/namespacemembers_0x6c.html b/doc/api/html/namespacemembers_0x6c.html new file mode 100644 index 00000000000..6027b29929c --- /dev/null +++ b/doc/api/html/namespacemembers_0x6c.html @@ -0,0 +1,343 @@ + + + + + +Stan: Namespace Members + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + +
+ + + + +
+ +
+ +
+
Here is a list of all namespace members with links to the namespace documentation for each member:
+ +

- l -

+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/namespacemembers_0x6d.html b/doc/api/html/namespacemembers_0x6d.html new file mode 100644 index 00000000000..e99b230195c --- /dev/null +++ b/doc/api/html/namespacemembers_0x6d.html @@ -0,0 +1,286 @@ + + + + + +Stan: Namespace Members + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + +
+ + + + +
+ +
+ +
+
Here is a list of all namespace members with links to the namespace documentation for each member:
+ +

- m -

+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/namespacemembers_0x6e.html b/doc/api/html/namespacemembers_0x6e.html new file mode 100644 index 00000000000..4874671587c --- /dev/null +++ b/doc/api/html/namespacemembers_0x6e.html @@ -0,0 +1,191 @@ + + + + + +Stan: Namespace Members + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + +
+ + + + +
+ +
+ +
+
Here is a list of all namespace members with links to the namespace documentation for each member:
+ +

- n -

+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/namespacemembers_0x6f.html b/doc/api/html/namespacemembers_0x6f.html new file mode 100644 index 00000000000..8f876532cae --- /dev/null +++ b/doc/api/html/namespacemembers_0x6f.html @@ -0,0 +1,195 @@ + + + + + +Stan: Namespace Members + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + +
+ + + + +
+ +
+ +
+
Here is a list of all namespace members with links to the namespace documentation for each member:
+ +

- o -

+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/namespacemembers_0x70.html b/doc/api/html/namespacemembers_0x70.html new file mode 100644 index 00000000000..f8977d308ed --- /dev/null +++ b/doc/api/html/namespacemembers_0x70.html @@ -0,0 +1,256 @@ + + + + + +Stan: Namespace Members + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + +
+ + + + +
+ +
+ +
+
Here is a list of all namespace members with links to the namespace documentation for each member:
+ +

- p -

+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/namespacemembers_0x71.html b/doc/api/html/namespacemembers_0x71.html new file mode 100644 index 00000000000..947d38cdf02 --- /dev/null +++ b/doc/api/html/namespacemembers_0x71.html @@ -0,0 +1,147 @@ + + + + + +Stan: Namespace Members + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + +
+ + + + +
+ +
+ +
+
Here is a list of all namespace members with links to the namespace documentation for each member:
+ +

- q -

+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/namespacemembers_0x72.html b/doc/api/html/namespacemembers_0x72.html new file mode 100644 index 00000000000..a8b741d2857 --- /dev/null +++ b/doc/api/html/namespacemembers_0x72.html @@ -0,0 +1,242 @@ + + + + + +Stan: Namespace Members + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + +
+ + + + +
+ +
+ +
+
Here is a list of all namespace members with links to the namespace documentation for each member:
+ +

- r -

+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/namespacemembers_0x73.html b/doc/api/html/namespacemembers_0x73.html new file mode 100644 index 00000000000..4bd0e17bb12 --- /dev/null +++ b/doc/api/html/namespacemembers_0x73.html @@ -0,0 +1,303 @@ + + + + + +Stan: Namespace Members + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + +
+ + + + +
+ +
+ +
+
Here is a list of all namespace members with links to the namespace documentation for each member:
+ +

- s -

+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/namespacemembers_0x74.html b/doc/api/html/namespacemembers_0x74.html new file mode 100644 index 00000000000..1129acb65fc --- /dev/null +++ b/doc/api/html/namespacemembers_0x74.html @@ -0,0 +1,211 @@ + + + + + +Stan: Namespace Members + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + +
+ + + + +
+ +
+ +
+
Here is a list of all namespace members with links to the namespace documentation for each member:
+ +

- t -

+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/namespacemembers_0x75.html b/doc/api/html/namespacemembers_0x75.html new file mode 100644 index 00000000000..2ff9d0e41e8 --- /dev/null +++ b/doc/api/html/namespacemembers_0x75.html @@ -0,0 +1,173 @@ + + + + + +Stan: Namespace Members + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + +
+ + + + +
+ +
+ +
+
Here is a list of all namespace members with links to the namespace documentation for each member:
+ +

- u -

+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/namespacemembers_0x76.html b/doc/api/html/namespacemembers_0x76.html new file mode 100644 index 00000000000..14db7fc72d9 --- /dev/null +++ b/doc/api/html/namespacemembers_0x76.html @@ -0,0 +1,255 @@ + + + + + +Stan: Namespace Members + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + +
+ + + + +
+ +
+ +
+
Here is a list of all namespace members with links to the namespace documentation for each member:
+ +

- v -

+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/namespacemembers_0x77.html b/doc/api/html/namespacemembers_0x77.html new file mode 100644 index 00000000000..2a8085cbffa --- /dev/null +++ b/doc/api/html/namespacemembers_0x77.html @@ -0,0 +1,179 @@ + + + + + +Stan: Namespace Members + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + +
+ + + + +
+ +
+ +
+
Here is a list of all namespace members with links to the namespace documentation for each member:
+ +

- w -

+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/namespacemembers_func.html b/doc/api/html/namespacemembers_func.html new file mode 100644 index 00000000000..a01e3bf05c0 --- /dev/null +++ b/doc/api/html/namespacemembers_func.html @@ -0,0 +1,184 @@ + + + + + +Stan: Namespace Members + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + +
+ + + + +
+ +
+ +
+  + +

- a -

+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/namespacemembers_func_0x62.html b/doc/api/html/namespacemembers_func_0x62.html new file mode 100644 index 00000000000..ee8df47f5a4 --- /dev/null +++ b/doc/api/html/namespacemembers_func_0x62.html @@ -0,0 +1,226 @@ + + + + + +Stan: Namespace Members + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + +
+ + + + +
+ +
+ +
+  + +

- b -

+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/namespacemembers_func_0x63.html b/doc/api/html/namespacemembers_func_0x63.html new file mode 100644 index 00000000000..f557abde841 --- /dev/null +++ b/doc/api/html/namespacemembers_func_0x63.html @@ -0,0 +1,341 @@ + + + + + +Stan: Namespace Members + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + +
+ + + + +
+ +
+ +
+  + +

- c -

+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/namespacemembers_func_0x64.html b/doc/api/html/namespacemembers_func_0x64.html new file mode 100644 index 00000000000..f581c36de4f --- /dev/null +++ b/doc/api/html/namespacemembers_func_0x64.html @@ -0,0 +1,220 @@ + + + + + +Stan: Namespace Members + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + +
+ + + + +
+ +
+ +
+  + +

- d -

+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/namespacemembers_func_0x65.html b/doc/api/html/namespacemembers_func_0x65.html new file mode 100644 index 00000000000..9f838686ecc --- /dev/null +++ b/doc/api/html/namespacemembers_func_0x65.html @@ -0,0 +1,208 @@ + + + + + +Stan: Namespace Members + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + +
+ + + + +
+ +
+ +
+  + +

- e -

+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/namespacemembers_func_0x66.html b/doc/api/html/namespacemembers_func_0x66.html new file mode 100644 index 00000000000..9d5e841fec4 --- /dev/null +++ b/doc/api/html/namespacemembers_func_0x66.html @@ -0,0 +1,185 @@ + + + + + +Stan: Namespace Members + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + +
+ + + + +
+ +
+ +
+  + +

- f -

+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/namespacemembers_func_0x67.html b/doc/api/html/namespacemembers_func_0x67.html new file mode 100644 index 00000000000..7d83dd63a64 --- /dev/null +++ b/doc/api/html/namespacemembers_func_0x67.html @@ -0,0 +1,378 @@ + + + + + +Stan: Namespace Members + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + +
+ + + + +
+ +
+ +
+  + +

- g -

+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/namespacemembers_func_0x68.html b/doc/api/html/namespacemembers_func_0x68.html new file mode 100644 index 00000000000..75c9fedafea --- /dev/null +++ b/doc/api/html/namespacemembers_func_0x68.html @@ -0,0 +1,175 @@ + + + + + +Stan: Namespace Members + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + +
+ + + + +
+ +
+ +
+  + +

- h -

+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/namespacemembers_func_0x69.html b/doc/api/html/namespacemembers_func_0x69.html new file mode 100644 index 00000000000..f2fb1df4521 --- /dev/null +++ b/doc/api/html/namespacemembers_func_0x69.html @@ -0,0 +1,282 @@ + + + + + +Stan: Namespace Members + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + +
+ + + + +
+ +
+ +
+  + +

- i -

+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/namespacemembers_func_0x6a.html b/doc/api/html/namespacemembers_func_0x6a.html new file mode 100644 index 00000000000..a904310979f --- /dev/null +++ b/doc/api/html/namespacemembers_func_0x6a.html @@ -0,0 +1,140 @@ + + + + + +Stan: Namespace Members + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + +
+ + + + +
+ +
+ +
+  + +

- j -

+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/namespacemembers_func_0x6c.html b/doc/api/html/namespacemembers_func_0x6c.html new file mode 100644 index 00000000000..bd7899870aa --- /dev/null +++ b/doc/api/html/namespacemembers_func_0x6c.html @@ -0,0 +1,324 @@ + + + + + +Stan: Namespace Members + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + +
+ + + + +
+ +
+ +
+  + +

- l -

+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/namespacemembers_func_0x6d.html b/doc/api/html/namespacemembers_func_0x6d.html new file mode 100644 index 00000000000..cc447f0483e --- /dev/null +++ b/doc/api/html/namespacemembers_func_0x6d.html @@ -0,0 +1,251 @@ + + + + + +Stan: Namespace Members + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + +
+ + + + +
+ +
+ +
+  + +

- m -

+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/namespacemembers_func_0x6e.html b/doc/api/html/namespacemembers_func_0x6e.html new file mode 100644 index 00000000000..832d16fa167 --- /dev/null +++ b/doc/api/html/namespacemembers_func_0x6e.html @@ -0,0 +1,176 @@ + + + + + +Stan: Namespace Members + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + +
+ + + + +
+ +
+ +
+  + +

- n -

+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/namespacemembers_func_0x6f.html b/doc/api/html/namespacemembers_func_0x6f.html new file mode 100644 index 00000000000..1ab6777ad0d --- /dev/null +++ b/doc/api/html/namespacemembers_func_0x6f.html @@ -0,0 +1,195 @@ + + + + + +Stan: Namespace Members + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + +
+ + + + +
+ +
+ +
+  + +

- o -

+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/namespacemembers_func_0x70.html b/doc/api/html/namespacemembers_func_0x70.html new file mode 100644 index 00000000000..282daa76a8f --- /dev/null +++ b/doc/api/html/namespacemembers_func_0x70.html @@ -0,0 +1,247 @@ + + + + + +Stan: Namespace Members + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + +
+ + + + +
+ +
+ +
+  + +

- p -

+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/namespacemembers_func_0x71.html b/doc/api/html/namespacemembers_func_0x71.html new file mode 100644 index 00000000000..96a5124bf60 --- /dev/null +++ b/doc/api/html/namespacemembers_func_0x71.html @@ -0,0 +1,147 @@ + + + + + +Stan: Namespace Members + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + +
+ + + + +
+ +
+ +
+  + +

- q -

+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/namespacemembers_func_0x72.html b/doc/api/html/namespacemembers_func_0x72.html new file mode 100644 index 00000000000..449172e1c1d --- /dev/null +++ b/doc/api/html/namespacemembers_func_0x72.html @@ -0,0 +1,216 @@ + + + + + +Stan: Namespace Members + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + +
+ + + + +
+ +
+ +
+  + +

- r -

+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/namespacemembers_func_0x73.html b/doc/api/html/namespacemembers_func_0x73.html new file mode 100644 index 00000000000..1866708af48 --- /dev/null +++ b/doc/api/html/namespacemembers_func_0x73.html @@ -0,0 +1,277 @@ + + + + + +Stan: Namespace Members + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + +
+ + + + +
+ +
+ +
+  + +

- s -

+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/namespacemembers_func_0x74.html b/doc/api/html/namespacemembers_func_0x74.html new file mode 100644 index 00000000000..17e345e8bb2 --- /dev/null +++ b/doc/api/html/namespacemembers_func_0x74.html @@ -0,0 +1,199 @@ + + + + + +Stan: Namespace Members + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + +
+ + + + +
+ +
+ +
+  + +

- t -

+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/namespacemembers_func_0x75.html b/doc/api/html/namespacemembers_func_0x75.html new file mode 100644 index 00000000000..2cafef6ad49 --- /dev/null +++ b/doc/api/html/namespacemembers_func_0x75.html @@ -0,0 +1,167 @@ + + + + + +Stan: Namespace Members + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + +
+ + + + +
+ +
+ +
+  + +

- u -

+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/namespacemembers_func_0x76.html b/doc/api/html/namespacemembers_func_0x76.html new file mode 100644 index 00000000000..467b4915e90 --- /dev/null +++ b/doc/api/html/namespacemembers_func_0x76.html @@ -0,0 +1,199 @@ + + + + + +Stan: Namespace Members + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + +
+ + + + +
+ +
+ +
+  + +

- v -

+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/namespacemembers_func_0x77.html b/doc/api/html/namespacemembers_func_0x77.html new file mode 100644 index 00000000000..e654a493ffc --- /dev/null +++ b/doc/api/html/namespacemembers_func_0x77.html @@ -0,0 +1,179 @@ + + + + + +Stan: Namespace Members + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + +
+ + + + +
+ +
+ +
+  + +

- w -

+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/namespacemembers_type.html b/doc/api/html/namespacemembers_type.html new file mode 100644 index 00000000000..9cd11fcf435 --- /dev/null +++ b/doc/api/html/namespacemembers_type.html @@ -0,0 +1,249 @@ + + + + + +Stan: Namespace Members + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + +
+ + + + +
+ +
+ +
+  + +

- b -

+ + +

- f -

+ + +

- i -

+ + +

- m -

+ + +

- p -

+ + +

- r -

+ + +

- s -

+ + +

- u -

+ + +

- v -

+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/namespacemembers_vars.html b/doc/api/html/namespacemembers_vars.html new file mode 100644 index 00000000000..7ad898d32c9 --- /dev/null +++ b/doc/api/html/namespacemembers_vars.html @@ -0,0 +1,385 @@ + + + + + +Stan: Namespace Members + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + +
+ + + + +
+ +
+ +
+  + +

- a -

+ + +

- b -

+ + +

- c -

+ + +

- d -

+ + +

- e -

+ + +

- i -

+ + +

- l -

+ + +

- m -

+ + +

- n -

+ + +

- p -

+ + +

- r -

+ + +

- s -

+ + +

- t -

+ + +

- u -

+ + +

- v -

+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/namespaces.html b/doc/api/html/namespaces.html new file mode 100644 index 00000000000..5ae1e14c016 --- /dev/null +++ b/doc/api/html/namespaces.html @@ -0,0 +1,124 @@ + + + + + +Stan: Namespace List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + +
+ + + + +
+ +
+ +
+
+
Namespace List
+
+
+
Here is a list of all namespaces with brief descriptions:
+
[detail level 1234]
+ + + + + + + + + + + + + + + + + +
oNboostReimplementing boost functionality
|\NmathReimplmeneting boost functionality for stan::agrad::var and and bugs in classification of integer types
oNEigen(Expert) Numerical traits for algorithmic differentiation variables
|\Ninternal(Expert) Product traits for algorithmic differentiation variables
oNstanProbability, optimization and sampling library
|oNagradFunction gradients via reverse-mode automatic differentiation
|oNgmDirected graphical model compiler
|oNioInput/output utilities
|oNmathMatrices and templated mathematical functions
||\NpoliciesExtending boost functionality
|| \NdetailReimplementing boost::math::policies::detail::raise_domain_error
|oNmcmcMarkov chain Monte Carlo samplers
|oNmemory(Expert) Allocate, free, and manage underlying system memory
|oNmodelFor compiling models
|oNoptimization
|\NprobTemplated probability distributions
\NstdTemplate specification of functions in std for Stan
+
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/namespacestan.html b/doc/api/html/namespacestan.html new file mode 100644 index 00000000000..5fa7fc9b24b --- /dev/null +++ b/doc/api/html/namespacestan.html @@ -0,0 +1,615 @@ + + + + + +Stan: stan Namespace Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ +
+
+ +
+
stan Namespace Reference
+
+
+ +

Probability, optimization and sampling library. +More...

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Namespaces

namespace  agrad
 Function gradients via reverse-mode automatic differentiation.
 
namespace  gm
 Directed graphical model compiler.
 
namespace  io
 Input/output utilities.
 
namespace  math
 Matrices and templated mathematical functions.
 
namespace  mcmc
 Markov chain Monte Carlo samplers.
 
namespace  memory
 (Expert) Allocate, free, and manage underlying system memory.
 
namespace  model
 For compiling models.
 
namespace  optimization
 
namespace  prob
 Templated probability distributions.
 
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Classes

struct  is_constant
 Metaprogramming struct to detect whether a given type is constant in the mathematical sense (not the C++ const sense). More...
 
struct  is_constant_struct
 Metaprogram to determine if a type has a base scalar type that can be assigned to type double. More...
 
struct  is_constant_struct< std::vector< T > >
 
struct  is_constant_struct< Eigen::Matrix< T, R, C > >
 
struct  is_constant_struct< Eigen::Block< T > >
 
struct  is_vector
 
struct  is_vector< const T >
 
struct  is_vector< std::vector< T > >
 
struct  is_vector< Eigen::Matrix< T, Eigen::Dynamic, 1 > >
 
struct  is_vector< Eigen::Matrix< T, 1, Eigen::Dynamic > >
 
struct  scalar_type
 Metaprogram structure to determine the base scalar type of a template argument. More...
 
struct  size_of_helper
 
struct  size_of_helper< T, true >
 
struct  scalar_type< Eigen::Matrix< T, Eigen::Dynamic, Eigen::Dynamic > >
 
struct  scalar_type< T * >
 
struct  is_vector_like
 
struct  is_vector_like< T * >
 
struct  is_vector_like< const T >
 
struct  is_vector_like< Eigen::Matrix< T, Eigen::Dynamic, Eigen::Dynamic > >
 
class  VectorView
 VectorView is a template metaprogram that takes its argument and allows it to be used like a vector. More...
 
class  VectorView< const T, is_array, throw_if_accessed >
 VectorView that has const correctness. More...
 
class  VectorView< const double, false, false >
 
class  DoubleVectorView
 DoubleVectorView allocates double values to be used as intermediate values. More...
 
class  DoubleVectorView< true, false >
 
class  DoubleVectorView< true, true >
 
struct  return_type
 Metaprogram to calculate the base scalar return type resulting from promoting all the scalar types of the template parameters. More...
 
struct  is_fvar
 
struct  is_fvar< stan::agrad::fvar< T > >
 
struct  is_var
 
struct  is_var< stan::agrad::var >
 
struct  contains_fvar
 Metaprogram to calculate the base scalar return type resulting from promoting all the scalar types of the template parameters. More...
 
struct  is_var_or_arithmetic
 
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Functions

template<typename T >
get (const T &x, size_t n)
 
template<typename T >
get (const std::vector< T > &x, size_t n)
 
template<typename T , int R, int C>
get (const Eigen::Matrix< T, R, C > &m, size_t n)
 
template<typename T >
size_t length (const T &)
 
template<typename T >
size_t length (const std::vector< T > &x)
 
template<typename T , int R, int C>
size_t length (const Eigen::Matrix< T, R, C > &m)
 
template<typename T >
size_t size_of (const T &x)
 
template<typename T1 , typename T2 >
size_t max_size (const T1 &x1, const T2 &x2)
 
template<typename T1 , typename T2 , typename T3 >
size_t max_size (const T1 &x1, const T2 &x2, const T3 &x3)
 
template<typename T1 , typename T2 , typename T3 , typename T4 >
size_t max_size (const T1 &x1, const T2 &x2, const T3 &x3, const T4 &x4)
 
+ + + + + + + + + + +

+Variables

const std::string MAJOR_VERSION = "2"
 Major version number for Stan package.
 
const std::string MINOR_VERSION = "2"
 Minor version number for Stan package.
 
const std::string PATCH_VERSION = "0"
 Patch version for Stan package.
 
+

Detailed Description

+

Probability, optimization and sampling library.

+

Function Documentation

+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
T stan::get (const T & x,
size_t n 
)
+
+inline
+
+ +

Definition at line 121 of file traits.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
T stan::get (const std::vector< T > & x,
size_t n 
)
+
+inline
+
+ +

Definition at line 125 of file traits.hpp.

+ +
+
+ +
+
+
+template<typename T , int R, int C>
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
T stan::get (const Eigen::Matrix< T, R, C > & m,
size_t n 
)
+
+inline
+
+ +

Definition at line 129 of file traits.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + + + + +
size_t stan::length (const T & )
+
+ +

Definition at line 137 of file traits.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + + + + +
size_t stan::length (const std::vector< T > & x)
+
+ +

Definition at line 141 of file traits.hpp.

+ +
+
+ +
+
+
+template<typename T , int R, int C>
+ + + + + + + + +
size_t stan::length (const Eigen::Matrix< T, R, C > & m)
+
+ +

Definition at line 145 of file traits.hpp.

+ +
+
+ +
+
+
+template<typename T1 , typename T2 >
+ + + + + + + + + + + + + + + + + + +
size_t stan::max_size (const T1 & x1,
const T2 & x2 
)
+
+ +

Definition at line 169 of file traits.hpp.

+ +
+
+ +
+
+
+template<typename T1 , typename T2 , typename T3 >
+ + + + + + + + + + + + + + + + + + + + + + + + +
size_t stan::max_size (const T1 & x1,
const T2 & x2,
const T3 & x3 
)
+
+ +

Definition at line 176 of file traits.hpp.

+ +
+
+ +
+
+
+template<typename T1 , typename T2 , typename T3 , typename T4 >
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
size_t stan::max_size (const T1 & x1,
const T2 & x2,
const T3 & x3,
const T4 & x4 
)
+
+ +

Definition at line 184 of file traits.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + + + + +
size_t stan::size_of (const T & x)
+
+ +

Definition at line 164 of file traits.hpp.

+ +
+
+

Variable Documentation

+ +
+
+ + + + +
const std::string stan::MAJOR_VERSION = "2"
+
+ +

Major version number for Stan package.

+ +

Definition at line 9 of file version.hpp.

+ +
+
+ +
+
+ + + + +
const std::string stan::MINOR_VERSION = "2"
+
+ +

Minor version number for Stan package.

+ +

Definition at line 12 of file version.hpp.

+ +
+
+ +
+
+ + + + +
const std::string stan::PATCH_VERSION = "0"
+
+ +

Patch version for Stan package.

+ +

Definition at line 15 of file version.hpp.

+ +
+
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/namespacestan_1_1agrad.html b/doc/api/html/namespacestan_1_1agrad.html new file mode 100644 index 00000000000..f6901b7989d --- /dev/null +++ b/doc/api/html/namespacestan_1_1agrad.html @@ -0,0 +1,21688 @@ + + + + + +Stan: stan::agrad Namespace Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::agrad Namespace Reference
+
+
+ +

Function gradients via reverse-mode automatic differentiation. +More...

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Classes

class  vari
 The variable implementation base class. More...
 
class  var
 Independent (input) and dependent (output) variables for gradients. More...
 
struct  fvar
 
class  partials_vari
 
struct  OperandsAndPartials
 A variable implementation that stores operands and derivatives with respect to the variable. More...
 
class  chainable
 Abstract base class for variable implementations that handles memory management and applying the chain rule. More...
 
class  op_ddv_vari
 
class  op_dv_vari
 
class  op_dvd_vari
 
class  op_dvv_vari
 
class  op_matrix_vari
 
class  precomp_v_vari
 
class  precomputed_gradients_vari
 This is a var implementation class that takes precomputed gradient values. More...
 
class  op_v_vari
 
class  op_vd_vari
 
class  op_vdd_vari
 
class  op_vdv_vari
 
class  op_vector_vari
 
class  op_vv_vari
 
class  op_vvd_vari
 
class  op_vvv_vari
 
class  LDLT_alloc
 This object stores the actual (double typed) LDLT factorization of an Eigen::Matrix<var> along with pointers to its vari's which allow the *_ldlt functions to save memory. More...
 
class  stored_gradient_vari
 A var implementation that stores the daughter variable implementation pointers and the partial derivative with respect to the result explicitly in arrays constructed on the auto-diff memory stack. More...
 
class  chainable_alloc
 A chainable_alloc is an object which is constructed and destructed normally but the memory lifespan is managed along with the arena allocator for the gradient calculation. More...
 
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Typedefs

typedef Eigen::Matrix< double,
+Eigen::Dynamic, Eigen::Dynamic >
+::Index 
size_type
 
typedef Eigen::Matrix< fvar
+< double >, Eigen::Dynamic,
+Eigen::Dynamic > 
matrix_fd
 
typedef Eigen::Matrix< fvar
+< var >, Eigen::Dynamic,
+Eigen::Dynamic > 
matrix_fv
 
typedef Eigen::Matrix< fvar
+< fvar< double >
+ >, Eigen::Dynamic,
+Eigen::Dynamic > 
matrix_ffd
 
typedef Eigen::Matrix< fvar
+< fvar< var >
+ >, Eigen::Dynamic,
+Eigen::Dynamic > 
matrix_ffv
 
typedef Eigen::Matrix< fvar
+< double >, Eigen::Dynamic, 1 > 
vector_fd
 
typedef Eigen::Matrix< fvar
+< var >, Eigen::Dynamic, 1 > 
vector_fv
 
typedef Eigen::Matrix< fvar
+< fvar< double >
+ >, Eigen::Dynamic, 1 > 
vector_ffd
 
typedef Eigen::Matrix< fvar
+< fvar< var >
+ >, Eigen::Dynamic, 1 > 
vector_ffv
 
typedef Eigen::Matrix< fvar
+< double >, 1, Eigen::Dynamic > 
row_vector_fd
 
typedef Eigen::Matrix< fvar
+< var >, 1, Eigen::Dynamic > 
row_vector_fv
 
typedef Eigen::Matrix< fvar
+< fvar< double >
+ >, 1, Eigen::Dynamic > 
row_vector_ffd
 
typedef Eigen::Matrix< fvar
+< fvar< var >
+ >, 1, Eigen::Dynamic > 
row_vector_ffv
 
typedef Eigen::Matrix< var,
+Eigen::Dynamic, Eigen::Dynamic > 
matrix_v
 The type of a matrix holding stan::agrad::var values.
 
typedef Eigen::Matrix< var,
+Eigen::Dynamic, 1 > 
vector_v
 The type of a (column) vector holding stan::agrad::var values.
 
typedef Eigen::Matrix< var,
+1, Eigen::Dynamic > 
row_vector_v
 The type of a row vector holding stan::agrad::var values.
 
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Functions

bool operator== (const var &a, const var &b)
 Equality operator comparing two variables' values (C++).
 
bool operator== (const var &a, const double &b)
 Equality operator comparing a variable's value and a double (C++).
 
bool operator== (const double &a, const var &b)
 Equality operator comparing a scalar and a variable's value (C++).
 
bool operator!= (const var &a, const var &b)
 Inequality operator comparing two variables' values (C++).
 
bool operator!= (const var &a, const double &b)
 Inequality operator comparing a variable's value and a double (C++).
 
bool operator!= (const double &a, const var &b)
 Inequality operator comparing a double and a variable's value (C++).
 
bool operator< (const var &a, const var &b)
 Less than operator comparing variables' values (C++).
 
bool operator< (const var &a, const double &b)
 Less than operator comparing variable's value and a double (C++).
 
bool operator< (const double &a, const var &b)
 Less than operator comparing a double and variable's value (C++).
 
bool operator> (const var &a, const var &b)
 Greater than operator comparing variables' values (C++).
 
bool operator> (const var &a, const double &b)
 Greater than operator comparing variable's value and double (C++).
 
bool operator> (const double &a, const var &b)
 Greater than operator comparing a double and a variable's value (C++).
 
bool operator<= (const var &a, const var &b)
 Less than or equal operator comparing two variables' values (C++).
 
bool operator<= (const var &a, const double &b)
 Less than or equal operator comparing a variable's value and a scalar (C++).
 
bool operator<= (const double &a, const var &b)
 Less than or equal operator comparing a double and variable's value (C++).
 
bool operator>= (const var &a, const var &b)
 Greater than or equal operator comparing two variables' values (C++).
 
bool operator>= (const var &a, const double &b)
 Greater than or equal operator comparing variable's value and double (C++).
 
bool operator>= (const double &a, const var &b)
 Greater than or equal operator comparing double and variable's value (C++).
 
bool operator! (const var &a)
 Prefix logical negation for the value of variables (C++).
 
var operator+ (const var &a)
 Unary plus operator for variables (C++).
 
var operator- (const var &a)
 Unary negation operator for variables (C++).
 
var operator+ (const var &a, const var &b)
 Addition operator for variables (C++).
 
var operator+ (const var &a, const double &b)
 Addition operator for variable and scalar (C++).
 
var operator+ (const double &a, const var &b)
 Addition operator for scalar and variable (C++).
 
var operator- (const var &a, const var &b)
 Subtraction operator for variables (C++).
 
var operator- (const var &a, const double &b)
 Subtraction operator for variable and scalar (C++).
 
var operator- (const double &a, const var &b)
 Subtraction operator for scalar and variable (C++).
 
var operator* (const var &a, const var &b)
 Multiplication operator for two variables (C++).
 
var operator* (const var &a, const double &b)
 Multiplication operator for a variable and a scalar (C++).
 
var operator* (const double &a, const var &b)
 Multiplication operator for a scalar and a variable (C++).
 
var operator/ (const var &a, const var &b)
 Division operator for two variables (C++).
 
var operator/ (const var &a, const double &b)
 Division operator for dividing a variable by a scalar (C++).
 
var operator/ (const double &a, const var &b)
 Division operator for dividing a scalar by a variable (C++).
 
varoperator++ (var &a)
 Prefix increment operator for variables (C++).
 
var operator++ (var &a, int)
 Postfix increment operator for variables (C++).
 
varoperator-- (var &a)
 Prefix decrement operator for variables (C++).
 
var operator-- (var &a, int)
 Postfix decrement operator for variables (C++).
 
var exp (const var &a)
 Return the exponentiation of the specified variable (cmath).
 
var log (const var &a)
 Return the natural log of the specified variable (cmath).
 
var log10 (const var &a)
 Return the base 10 log of the specified variable (cmath).
 
var sqrt (const var &a)
 Return the square root of the specified variable (cmath).
 
var pow (const var &base, const var &exponent)
 Return the base raised to the power of the exponent (cmath).
 
var pow (const var &base, const double &exponent)
 Return the base variable raised to the power of the exponent scalar (cmath).
 
var pow (const double &base, const var &exponent)
 Return the base scalar raised to the power of the exponent variable (cmath).
 
var cos (const var &a)
 Return the cosine of a radian-scaled variable (cmath).
 
var sin (const var &a)
 Return the sine of a radian-scaled variable (cmath).
 
var tan (const var &a)
 Return the tangent of a radian-scaled variable (cmath).
 
var acos (const var &a)
 Return the principal value of the arc cosine of a variable, in radians (cmath).
 
var asin (const var &a)
 Return the principal value of the arc sine, in radians, of the specified variable (cmath).
 
var atan (const var &a)
 Return the principal value of the arc tangent, in radians, of the specified variable (cmath).
 
var atan2 (const var &a, const var &b)
 Return the principal value of the arc tangent, in radians, of the first variable divided by the second (cmath).
 
var atan2 (const var &a, const double &b)
 Return the principal value of the arc tangent, in radians, of the first variable divided by the second scalar (cmath).
 
var atan2 (const double &a, const var &b)
 Return the principal value of the arc tangent, in radians, of the first scalar divided by the second variable (cmath).
 
var cosh (const var &a)
 Return the hyperbolic cosine of the specified variable (cmath).
 
var sinh (const var &a)
 Return the hyperbolic sine of the specified variable (cmath).
 
var tanh (const var &a)
 Return the hyperbolic tangent of the specified variable (cmath).
 
var fabs (const var &a)
 Return the absolute value of the variable (cmath).
 
var floor (const var &a)
 Return the floor of the specified variable (cmath).
 
var ceil (const var &a)
 Return the ceiling of the specified variable (cmath).
 
var fmod (const var &a, const var &b)
 Return the floating point remainder after dividing the first variable by the second (cmath).
 
var fmod (const var &a, const double &b)
 Return the floating point remainder after dividing the the first variable by the second scalar (cmath).
 
var fmod (const double &a, const var &b)
 Return the floating point remainder after dividing the first scalar by the second variable (cmath).
 
var abs (const var &a)
 Return the absolute value of the variable (std).
 
template<typename R , typename F , typename T >
apply_recover (const F &f, T &x)
 Apply the specified function to the specified argument and return the result; if the function throws an exception, recover reverse-mode memory and rethrow.
 
template<typename T , typename F >
void derivative (const F &f, const T &x, T &fx, T &dfx_dx)
 Return the derivative of the specified univariate function at the specified argument.
 
template<typename T , typename F >
void partial_derivative (const F &f, const Eigen::Matrix< T, Eigen::Dynamic, 1 > &x, int n, T &fx, T &dfx_dxn)
 Return the partial derivative of the specified multiivariate function at the specified argument.
 
template<typename F >
void gradient (const F &f, const Eigen::Matrix< double, Eigen::Dynamic, 1 > &x, double &fx, Eigen::Matrix< double, Eigen::Dynamic, 1 > &grad_fx)
 Calculate the value and the gradient of the specified function at the specified argument.
 
template<typename T , typename F >
void gradient (const F &f, const Eigen::Matrix< T, Eigen::Dynamic, 1 > &x, T &fx, Eigen::Matrix< T, Eigen::Dynamic, 1 > &grad_fx)
 
template<typename F >
void jacobian (const F &f, const Eigen::Matrix< double, Eigen::Dynamic, 1 > &x, Eigen::Matrix< double, Eigen::Dynamic, 1 > &fx, Eigen::Matrix< double, Eigen::Dynamic, Eigen::Dynamic > &J)
 
template<typename T , typename F >
void jacobian (const F &f, const Eigen::Matrix< T, Eigen::Dynamic, 1 > &x, Eigen::Matrix< T, Eigen::Dynamic, 1 > &fx, Eigen::Matrix< T, Eigen::Dynamic, Eigen::Dynamic > &J)
 
template<typename F >
void hessian (const F &f, const Eigen::Matrix< double, Eigen::Dynamic, 1 > &x, double &fx, Eigen::Matrix< double, Eigen::Dynamic, 1 > &grad, Eigen::Matrix< double, Eigen::Dynamic, Eigen::Dynamic > &H)
 
template<typename T , typename F >
void hessian (const F &f, const Eigen::Matrix< T, Eigen::Dynamic, 1 > &x, T &fx, Eigen::Matrix< T, Eigen::Dynamic, 1 > &grad, Eigen::Matrix< T, Eigen::Dynamic, Eigen::Dynamic > &H)
 
template<typename T1 , typename T2 , typename F >
void gradient_dot_vector (const F &f, const Eigen::Matrix< T1, Eigen::Dynamic, 1 > &x, const Eigen::Matrix< T2, Eigen::Dynamic, 1 > &v, T1 &fx, T1 &grad_fx_dot_v)
 
template<typename F >
void hessian_times_vector (const F &f, const Eigen::Matrix< double, Eigen::Dynamic, 1 > &x, const Eigen::Matrix< double, Eigen::Dynamic, 1 > &v, double &fx, Eigen::Matrix< double, Eigen::Dynamic, 1 > &Hv)
 
template<typename T , typename F >
void hessian_times_vector (const F &f, const Eigen::Matrix< T, Eigen::Dynamic, 1 > &x, const Eigen::Matrix< T, Eigen::Dynamic, 1 > &v, T &fx, Eigen::Matrix< T, Eigen::Dynamic, 1 > &Hv)
 
template<typename F >
void grad_tr_mat_times_hessian (const F &f, const Eigen::Matrix< double, Eigen::Dynamic, 1 > &x, const Eigen::Matrix< double, Eigen::Dynamic, Eigen::Dynamic > &M, Eigen::Matrix< double, Eigen::Dynamic, 1 > &grad_tr_MH)
 
template<typename T >
fvar< T > abs (const fvar< T > &x)
 
template<typename T >
fvar< T > acos (const fvar< T > &x)
 
template<typename T >
fvar< T > acosh (const fvar< T > &x)
 
template<typename T >
fvar< T > asin (const fvar< T > &x)
 
template<typename T >
fvar< T > asinh (const fvar< T > &x)
 
template<typename T >
fvar< T > atan (const fvar< T > &x)
 
template<typename T >
fvar< T > atan2 (const fvar< T > &x1, const fvar< T > &x2)
 
template<typename T >
fvar< T > atan2 (const double x1, const fvar< T > &x2)
 
template<typename T >
fvar< T > atan2 (const fvar< T > &x1, const double x2)
 
template<typename T >
fvar< T > atanh (const fvar< T > &x)
 
template<typename T >
fvar< T > bessel_first_kind (int v, const fvar< T > &z)
 
template<typename T >
fvar< T > bessel_second_kind (int v, const fvar< T > &z)
 
template<typename T >
fvar< T > binary_log_loss (const int y, const fvar< T > &y_hat)
 
template<typename T >
fvar< T > binomial_coefficient_log (const fvar< T > &x1, const fvar< T > &x2)
 
template<typename T >
fvar< T > binomial_coefficient_log (const fvar< T > &x1, const double x2)
 
template<typename T >
fvar< T > binomial_coefficient_log (const double x1, const fvar< T > &x2)
 
template<typename T >
fvar< T > cbrt (const fvar< T > &x)
 
template<typename T >
fvar< T > ceil (const fvar< T > &x)
 
template<typename T >
fvar< T > cos (const fvar< T > &x)
 
template<typename T >
fvar< T > cosh (const fvar< T > &x)
 
template<typename T >
fvar< T > digamma (const fvar< T > &x)
 
template<typename T >
fvar< T > erf (const fvar< T > &x)
 
template<typename T >
fvar< T > erfc (const fvar< T > &x)
 
template<typename T >
fvar< T > exp (const fvar< T > &x)
 
template<typename T >
fvar< T > exp2 (const fvar< T > &x)
 
template<typename T >
fvar< T > expm1 (const fvar< T > &x)
 
template<typename T >
fvar< T > fabs (const fvar< T > &x)
 
template<typename T >
fvar< T > falling_factorial (const fvar< T > &x, const fvar< T > &n)
 
template<typename T >
fvar< T > falling_factorial (const fvar< T > &x, const double n)
 
template<typename T >
fvar< T > falling_factorial (const double x, const fvar< T > &n)
 
template<typename T >
fvar< T > fdim (const fvar< T > &x1, const fvar< T > &x2)
 
template<typename T >
fvar< T > fdim (const fvar< T > &x1, const double x2)
 
template<typename T >
fvar< T > fdim (const double x1, const fvar< T > &x2)
 
template<typename T >
fvar< T > floor (const fvar< T > &x)
 
template<typename T1 , typename T2 , typename T3 >
fvar< typename
+stan::return_type< T1, T2, T3 >
+::type > 
fma (const fvar< T1 > &x1, const fvar< T2 > &x2, const fvar< T3 > &x3)
 
template<typename T1 , typename T2 , typename T3 >
fvar< typename
+stan::return_type< T1, T2, T3 >
+::type > 
fma (const T1 &x1, const fvar< T2 > &x2, const fvar< T3 > &x3)
 
template<typename T1 , typename T2 , typename T3 >
fvar< typename
+stan::return_type< T1, T2, T3 >
+::type > 
fma (const fvar< T1 > &x1, const T2 &x2, const fvar< T3 > &x3)
 
template<typename T1 , typename T2 , typename T3 >
fvar< typename
+stan::return_type< T1, T2, T3 >
+::type > 
fma (const fvar< T1 > &x1, const fvar< T2 > &x2, const T3 &x3)
 
template<typename T1 , typename T2 , typename T3 >
fvar< typename
+stan::return_type< T1, T2, T3 >
+::type > 
fma (const T1 &x1, const T2 &x2, const fvar< T3 > &x3)
 
template<typename T1 , typename T2 , typename T3 >
fvar< typename
+stan::return_type< T1, T2, T3 >
+::type > 
fma (const fvar< T1 > &x1, const T2 &x2, const T3 &x3)
 
template<typename T1 , typename T2 , typename T3 >
fvar< typename
+stan::return_type< T1, T2, T3 >
+::type > 
fma (const T1 &x1, const fvar< T2 > &x2, const T3 &x3)
 
template<typename T >
fvar< T > fmax (const fvar< T > &x1, const fvar< T > &x2)
 
template<typename T >
fvar< T > fmax (const double x1, const fvar< T > &x2)
 
template<typename T >
fvar< T > fmax (const fvar< T > &x1, const double x2)
 
template<typename T >
fvar< T > fmin (const fvar< T > &x1, const fvar< T > &x2)
 
template<typename T >
fvar< T > fmin (const double x1, const fvar< T > &x2)
 
template<typename T >
fvar< T > fmin (const fvar< T > &x1, const double x2)
 
template<typename T >
fvar< T > fmod (const fvar< T > &x1, const fvar< T > &x2)
 
template<typename T >
fvar< T > fmod (const fvar< T > &x1, const double x2)
 
template<typename T >
fvar< T > fmod (const double x1, const fvar< T > &x2)
 
template<typename T >
fvar< T > gamma_p (const fvar< T > &x1, const fvar< T > &x2)
 
template<typename T >
fvar< T > gamma_p (const fvar< T > &x1, const double x2)
 
template<typename T >
fvar< T > gamma_p (const double x1, const fvar< T > &x2)
 
template<typename T >
fvar< T > gamma_q (const fvar< T > &x1, const fvar< T > &x2)
 
template<typename T >
fvar< T > gamma_q (const fvar< T > &x1, const double x2)
 
template<typename T >
fvar< T > gamma_q (const double x1, const fvar< T > &x2)
 
template<typename T >
fvar< T > hypot (const fvar< T > &x1, const fvar< T > &x2)
 
template<typename T >
fvar< T > hypot (const fvar< T > &x1, const double x2)
 
template<typename T >
fvar< T > hypot (const double x1, const fvar< T > &x2)
 
template<typename T >
fvar< T > inv (const fvar< T > &x)
 
template<typename T >
fvar< T > inv_cloglog (const fvar< T > &x)
 
template<typename T >
fvar< T > inv_logit (const fvar< T > &x)
 
template<typename T >
fvar< T > inv_sqrt (const fvar< T > &x)
 
template<typename T >
fvar< T > inv_square (const fvar< T > &x)
 
template<typename T >
fvar< T > lbeta (const fvar< T > &x1, const fvar< T > &x2)
 
template<typename T >
fvar< T > lbeta (const double x1, const fvar< T > &x2)
 
template<typename T >
fvar< T > lbeta (const fvar< T > &x1, const double x2)
 
template<typename T >
fvar< T > lgamma (const fvar< T > &x)
 
template<typename T >
fvar< typename
+stan::return_type< T, int >
+::type > 
lmgamma (int x1, const fvar< T > &x2)
 
template<typename T >
fvar< T > log (const fvar< T > &x)
 
template<typename T >
fvar< T > log10 (const fvar< T > &x)
 
template<typename T >
fvar< T > log1m (const fvar< T > &x)
 
template<typename T >
fvar< T > log1m_exp (const fvar< T > &x)
 
template<typename T >
fvar< T > log1m_inv_logit (const fvar< T > &x)
 
template<typename T >
fvar< T > log1p (const fvar< T > &x)
 
template<typename T >
fvar< T > log1p_exp (const fvar< T > &x)
 
template<typename T >
fvar< T > log2 (const fvar< T > &x)
 
template<typename T >
fvar< T > log_diff_exp (const fvar< T > &x1, const fvar< T > &x2)
 
template<typename T1 , typename T2 >
fvar< T2 > log_diff_exp (const T1 &x1, const fvar< T2 > &x2)
 
template<typename T1 , typename T2 >
fvar< T1 > log_diff_exp (const fvar< T1 > &x1, const T2 &x2)
 
template<typename T >
fvar< T > log_falling_factorial (const fvar< T > &x, const fvar< T > &n)
 
template<typename T >
fvar< T > log_falling_factorial (const double x, const fvar< T > &n)
 
template<typename T >
fvar< T > log_falling_factorial (const fvar< T > &x, const double n)
 
template<typename T >
fvar< T > log_inv_logit (const fvar< T > &x)
 
template<typename T >
fvar< T > log_rising_factorial (const fvar< T > &x, const fvar< T > &n)
 
template<typename T >
fvar< T > log_rising_factorial (const fvar< T > &x, const double n)
 
template<typename T >
fvar< T > log_rising_factorial (const double x, const fvar< T > &n)
 
template<typename T >
fvar< T > log_sum_exp (const fvar< T > &x1, const fvar< T > &x2)
 
template<typename T >
fvar< T > log_sum_exp (const double x1, const fvar< T > &x2)
 
template<typename T >
fvar< T > log_sum_exp (const fvar< T > &x1, const double x2)
 
template<typename T >
fvar< T > log_sum_exp (const std::vector< fvar< T > > &v)
 
template<typename T >
fvar< T > logit (const fvar< T > &x)
 
template<typename T >
fvar< T > modified_bessel_first_kind (int v, const fvar< T > &z)
 
template<typename T >
fvar< T > modified_bessel_second_kind (int v, const fvar< T > &z)
 
template<typename T >
fvar< T > multiply_log (const fvar< T > &x1, const fvar< T > &x2)
 
template<typename T >
fvar< T > multiply_log (const double x1, const fvar< T > &x2)
 
template<typename T >
fvar< T > multiply_log (const fvar< T > &x1, const double x2)
 
template<typename T >
fvar< T > owens_t (const fvar< T > &x1, const fvar< T > &x2)
 
template<typename T >
fvar< T > owens_t (const double x1, const fvar< T > &x2)
 
template<typename T >
fvar< T > owens_t (const fvar< T > &x1, const double x2)
 
template<typename T >
fvar< T > Phi (const fvar< T > &x)
 
template<typename T >
fvar< T > pow (const fvar< T > &x1, const fvar< T > &x2)
 
template<typename T >
fvar< T > pow (const double x1, const fvar< T > &x2)
 
template<typename T >
fvar< T > pow (const fvar< T > &x1, const double x2)
 
template<typename T >
fvar< T > rising_factorial (const fvar< T > &x, const fvar< T > &n)
 
template<typename T >
fvar< T > rising_factorial (const fvar< T > &x, const double n)
 
template<typename T >
fvar< T > rising_factorial (const double x, const fvar< T > &n)
 
template<typename T >
fvar< T > round (const fvar< T > &x)
 
template<typename T >
fvar< T > sin (const fvar< T > &x)
 
template<typename T >
fvar< T > sinh (const fvar< T > &x)
 
template<typename T >
fvar< T > sqrt (const fvar< T > &x)
 
template<typename T >
fvar< T > square (const fvar< T > &x)
 
template<typename T >
fvar< T > tan (const fvar< T > &x)
 
template<typename T >
fvar< T > tanh (const fvar< T > &x)
 
template<typename T >
fvar< T > tgamma (const fvar< T > &x)
 
template<typename T >
fvar< T > trunc (const fvar< T > &x)
 
template<typename T , int R1, int C1, int R2, int C2>
Eigen::Matrix< fvar< T >, 1, C1 > columns_dot_product (const Eigen::Matrix< fvar< T >, R1, C1 > &v1, const Eigen::Matrix< fvar< T >, R2, C2 > &v2)
 
template<typename T , int R1, int C1, int R2, int C2>
Eigen::Matrix< fvar< T >, 1, C1 > columns_dot_product (const Eigen::Matrix< fvar< T >, R1, C1 > &v1, const Eigen::Matrix< double, R2, C2 > &v2)
 
template<typename T , int R1, int C1, int R2, int C2>
Eigen::Matrix< fvar< T >, 1, C1 > columns_dot_product (const Eigen::Matrix< double, R1, C1 > &v1, const Eigen::Matrix< fvar< T >, R2, C2 > &v2)
 
template<typename T , int R, int C>
Eigen::Matrix< fvar< T >, 1, C > columns_dot_self (const Eigen::Matrix< fvar< T >, R, C > &x)
 
template<typename T , int R, int C>
Eigen::Matrix< fvar< T >, C, C > crossprod (const Eigen::Matrix< fvar< T >, R, C > &m)
 
template<typename T , int R, int C>
fvar< T > determinant (const Eigen::Matrix< fvar< T >, R, C > &m)
 
template<typename T1 , typename T2 >
stan::return_type< T1, T2 >::type divide (const T1 &v, const T2 &c)
 
template<typename T , int R, int C>
Eigen::Matrix< fvar< T >, R, C > divide (const Eigen::Matrix< fvar< T >, R, C > &v, const fvar< T > &c)
 
template<typename T , int R, int C>
Eigen::Matrix< fvar< T >, R, C > divide (const Eigen::Matrix< fvar< T >, R, C > &v, const double c)
 
template<typename T , int R, int C>
Eigen::Matrix< fvar< T >, R, C > divide (const Eigen::Matrix< double, R, C > &v, const fvar< T > &c)
 
template<typename T , int R, int C>
Eigen::Matrix< fvar< T >, R, C > operator/ (const Eigen::Matrix< fvar< T >, R, C > &v, const fvar< T > &c)
 
template<typename T , int R, int C>
Eigen::Matrix< fvar< T >, R, C > operator/ (const Eigen::Matrix< fvar< T >, R, C > &v, const double c)
 
template<typename T , int R, int C>
Eigen::Matrix< fvar< T >, R, C > operator/ (const Eigen::Matrix< double, R, C > &v, const fvar< T > &c)
 
template<typename T , int R1, int C1, int R2, int C2>
fvar< T > dot_product (const Eigen::Matrix< fvar< T >, R1, C1 > &v1, const Eigen::Matrix< fvar< T >, R2, C2 > &v2)
 
template<typename T , int R1, int C1, int R2, int C2>
fvar< T > dot_product (const Eigen::Matrix< fvar< T >, R1, C1 > &v1, const Eigen::Matrix< double, R2, C2 > &v2)
 
template<typename T , int R1, int C1, int R2, int C2>
fvar< T > dot_product (const Eigen::Matrix< double, R1, C1 > &v1, const Eigen::Matrix< fvar< T >, R2, C2 > &v2)
 
template<typename T , int R1, int C1, int R2, int C2>
fvar< T > dot_product (const Eigen::Matrix< fvar< T >, R1, C1 > &v1, const Eigen::Matrix< fvar< T >, R2, C2 > &v2, size_type &length)
 
template<typename T , int R1, int C1, int R2, int C2>
fvar< T > dot_product (const Eigen::Matrix< fvar< T >, R1, C1 > &v1, const Eigen::Matrix< double, R2, C2 > &v2, size_type &length)
 
template<typename T , int R1, int C1, int R2, int C2>
fvar< T > dot_product (const Eigen::Matrix< double, R1, C1 > &v1, const Eigen::Matrix< fvar< T >, R2, C2 > &v2, size_type &length)
 
template<typename T >
fvar< T > dot_product (const std::vector< fvar< T > > &v1, const std::vector< fvar< T > > &v2)
 
template<typename T >
fvar< T > dot_product (const std::vector< double > &v1, const std::vector< fvar< T > > &v2)
 
template<typename T >
fvar< T > dot_product (const std::vector< fvar< T > > &v1, const std::vector< double > &v2)
 
template<typename T >
fvar< T > dot_product (const std::vector< fvar< T > > &v1, const std::vector< fvar< T > > &v2, size_type &length)
 
template<typename T >
fvar< T > dot_product (const std::vector< double > &v1, const std::vector< fvar< T > > &v2, size_type &length)
 
template<typename T >
fvar< T > dot_product (const std::vector< fvar< T > > &v1, const std::vector< double > &v2, size_type &length)
 
template<typename T , int R, int C>
fvar< T > dot_self (const Eigen::Matrix< fvar< T >, R, C > &v)
 
template<typename T , int R, int C>
Eigen::Matrix< fvar< T >, R, C > inverse (const Eigen::Matrix< fvar< T >, R, C > &m)
 
template<typename T , int R, int C>
fvar< T > log_determinant (const Eigen::Matrix< fvar< T >, R, C > &m)
 
template<typename T >
Eigen::Matrix< fvar< T >
+, Eigen::Dynamic, 1 > 
log_softmax (const Eigen::Matrix< fvar< T >, Eigen::Dynamic, 1 > &alpha)
 
template<typename T , int R, int C>
fvar< T > log_sum_exp (const Eigen::Matrix< fvar< T >, R, C > &v)
 
template<typename T , int R1, int C1, int R2, int C2>
Eigen::Matrix< fvar< T >, R1, C2 > mdivide_left (const Eigen::Matrix< fvar< T >, R1, C1 > &A, const Eigen::Matrix< fvar< T >, R2, C2 > &b)
 
template<typename T , int R1, int C1, int R2, int C2>
Eigen::Matrix< fvar< T >, R1, C2 > mdivide_left (const Eigen::Matrix< double, R1, C1 > &A, const Eigen::Matrix< fvar< T >, R2, C2 > &b)
 
template<typename T , int R1, int C1, int R2, int C2>
Eigen::Matrix< fvar< T >, R1, C2 > mdivide_left (const Eigen::Matrix< fvar< T >, R1, C1 > &A, const Eigen::Matrix< double, R2, C2 > &b)
 
template<typename T , int R1, int C1, int R2, int C2>
Eigen::Matrix< fvar< T >, R1, C1 > mdivide_left_tri_low (const Eigen::Matrix< fvar< T >, R1, C1 > &A, const Eigen::Matrix< fvar< T >, R2, C2 > &b)
 
template<typename T , int R1, int C1, int R2, int C2>
Eigen::Matrix< fvar< T >, R1, C1 > mdivide_left_tri_low (const Eigen::Matrix< double, R1, C1 > &A, const Eigen::Matrix< fvar< T >, R2, C2 > &b)
 
template<typename T , int R1, int C1, int R2, int C2>
Eigen::Matrix< fvar< T >, R1, C1 > mdivide_left_tri_low (const Eigen::Matrix< fvar< T >, R1, C1 > &A, const Eigen::Matrix< double, R2, C2 > &b)
 
template<typename T , int R1, int C1, int R2, int C2>
Eigen::Matrix< fvar< T >, R1, C2 > mdivide_right (const Eigen::Matrix< fvar< T >, R1, C1 > &A, const Eigen::Matrix< fvar< T >, R2, C2 > &b)
 
template<typename T , int R1, int C1, int R2, int C2>
Eigen::Matrix< fvar< T >, R1, C2 > mdivide_right (const Eigen::Matrix< fvar< T >, R1, C1 > &A, const Eigen::Matrix< double, R2, C2 > &b)
 
template<typename T , int R1, int C1, int R2, int C2>
Eigen::Matrix< fvar< T >, R1, C2 > mdivide_right (const Eigen::Matrix< double, R1, C1 > &A, const Eigen::Matrix< fvar< T >, R2, C2 > &b)
 
template<typename T , int R1, int C1, int R2, int C2>
Eigen::Matrix< fvar< T >, R1, C1 > mdivide_right_tri_low (const Eigen::Matrix< fvar< T >, R1, C1 > &A, const Eigen::Matrix< fvar< T >, R2, C2 > &b)
 
template<typename T , int R1, int C1, int R2, int C2>
Eigen::Matrix< fvar< T >, R1, C2 > mdivide_right_tri_low (const Eigen::Matrix< fvar< T >, R1, C1 > &A, const Eigen::Matrix< double, R2, C2 > &b)
 
template<typename T , int R1, int C1, int R2, int C2>
Eigen::Matrix< fvar< T >, R1, C2 > mdivide_right_tri_low (const Eigen::Matrix< double, R1, C1 > &A, const Eigen::Matrix< fvar< T >, R2, C2 > &b)
 
template<typename T , int R1, int C1>
Eigen::Matrix< fvar< T >, R1, C1 > multiply (const Eigen::Matrix< fvar< T >, R1, C1 > &m, const fvar< T > &c)
 
template<typename T , int R2, int C2>
Eigen::Matrix< fvar< T >, R2, C2 > multiply (const Eigen::Matrix< fvar< T >, R2, C2 > &m, const double c)
 
template<typename T , int R1, int C1>
Eigen::Matrix< fvar< T >, R1, C1 > multiply (const Eigen::Matrix< double, R1, C1 > &m, const fvar< T > &c)
 
template<typename T , int R1, int C1>
Eigen::Matrix< fvar< T >, R1, C1 > multiply (const fvar< T > &c, const Eigen::Matrix< fvar< T >, R1, C1 > &m)
 
template<typename T , int R1, int C1>
Eigen::Matrix< fvar< T >, R1, C1 > multiply (const double c, const Eigen::Matrix< fvar< T >, R1, C1 > &m)
 
template<typename T , int R1, int C1>
Eigen::Matrix< fvar< T >, R1, C1 > multiply (const fvar< T > &c, const Eigen::Matrix< double, R1, C1 > &m)
 
template<typename T , int R1, int C1, int R2, int C2>
Eigen::Matrix< fvar< T >, R1, C2 > multiply (const Eigen::Matrix< fvar< T >, R1, C1 > &m1, const Eigen::Matrix< fvar< T >, R2, C2 > &m2)
 
template<typename T , int R1, int C1, int R2, int C2>
Eigen::Matrix< fvar< T >, R1, C2 > multiply (const Eigen::Matrix< fvar< T >, R1, C1 > &m1, const Eigen::Matrix< double, R2, C2 > &m2)
 
template<typename T , int R1, int C1, int R2, int C2>
Eigen::Matrix< fvar< T >, R1, C2 > multiply (const Eigen::Matrix< double, R1, C1 > &m1, const Eigen::Matrix< fvar< T >, R2, C2 > &m2)
 
template<typename T , int C1, int R2>
fvar< T > multiply (const Eigen::Matrix< fvar< T >, 1, C1 > &rv, const Eigen::Matrix< fvar< T >, R2, 1 > &v)
 
template<typename T , int C1, int R2>
fvar< T > multiply (const Eigen::Matrix< fvar< T >, 1, C1 > &rv, const Eigen::Matrix< double, R2, 1 > &v)
 
template<typename T , int C1, int R2>
fvar< T > multiply (const Eigen::Matrix< double, 1, C1 > &rv, const Eigen::Matrix< fvar< T >, R2, 1 > &v)
 
template<typename T , int R, int C>
Eigen::Matrix< fvar< T >, R, R > multiply_lower_tri_self_transpose (const Eigen::Matrix< fvar< T >, R, C > &m)
 
template<typename T , int R1, int C1, int R2, int C2>
Eigen::Matrix< fvar< T >, R1, 1 > rows_dot_product (const Eigen::Matrix< fvar< T >, R1, C1 > &v1, const Eigen::Matrix< fvar< T >, R2, C2 > &v2)
 
template<typename T , int R1, int C1, int R2, int C2>
Eigen::Matrix< fvar< T >, R1, 1 > rows_dot_product (const Eigen::Matrix< double, R1, C1 > &v1, const Eigen::Matrix< fvar< T >, R2, C2 > &v2)
 
template<typename T , int R1, int C1, int R2, int C2>
Eigen::Matrix< fvar< T >, R1, 1 > rows_dot_product (const Eigen::Matrix< fvar< T >, R1, C1 > &v1, const Eigen::Matrix< double, R2, C2 > &v2)
 
template<typename T , int R, int C>
Eigen::Matrix< fvar< T >, R, 1 > rows_dot_self (const Eigen::Matrix< fvar< T >, R, C > &x)
 
template<typename T >
Eigen::Matrix< fvar< T >
+, Eigen::Dynamic, 1 > 
softmax (const Eigen::Matrix< fvar< T >, Eigen::Dynamic, 1 > &alpha)
 
template<typename T >
std::vector< fvar< T > > sort_asc (std::vector< fvar< T > > xs)
 
template<typename T >
std::vector< fvar< T > > sort_desc (std::vector< fvar< T > > xs)
 
template<typename T , int R, int C>
Eigen::Matrix< fvar< T >, R, C > sort_asc (Eigen::Matrix< fvar< T >, R, C > xs)
 
template<typename T , int R, int C>
Eigen::Matrix< fvar< T >, R, C > sort_desc (Eigen::Matrix< fvar< T >, R, C > xs)
 
template<typename T , int R, int C>
fvar< T > sum (const Eigen::Matrix< fvar< T >, R, C > &m)
 
template<typename T , int R, int C>
Eigen::Matrix< fvar< T >, R, R > tcrossprod (const Eigen::Matrix< fvar< T >, R, C > &m)
 
template<typename T >
fvar< T > to_fvar (const T &x)
 
template<typename T >
fvar< T > to_fvar (const fvar< T > &x)
 
matrix_fd to_fvar (const stan::math::matrix_d &m)
 
matrix_fd to_fvar (const matrix_fd &m)
 
matrix_fv to_fvar (const matrix_fv &m)
 
matrix_ffd to_fvar (const matrix_ffd &m)
 
matrix_ffv to_fvar (const matrix_ffv &m)
 
vector_fd to_fvar (const stan::math::vector_d &v)
 
vector_fd to_fvar (const vector_fd &v)
 
vector_fv to_fvar (const vector_fv &v)
 
vector_ffd to_fvar (const vector_ffd &v)
 
vector_ffv to_fvar (const vector_ffv &v)
 
row_vector_fd to_fvar (const stan::math::row_vector_d &rv)
 
row_vector_fd to_fvar (const row_vector_fd &rv)
 
row_vector_fv to_fvar (const row_vector_fv &rv)
 
row_vector_ffd to_fvar (const row_vector_ffd &rv)
 
row_vector_ffv to_fvar (const row_vector_ffv &rv)
 
template<typename T , int R, int C>
Eigen::Matrix< fvar< T >, R, C > to_fvar (const Eigen::Matrix< T, R, C > &val, const Eigen::Matrix< T, R, C > &deriv)
 
template<typename T >
fvar< T > operator+ (const fvar< T > &x1, const fvar< T > &x2)
 
template<typename T >
fvar< T > operator+ (const double x1, const fvar< T > &x2)
 
template<typename T >
fvar< T > operator+ (const fvar< T > &x1, const double x2)
 
template<typename T >
fvar< T > operator/ (const fvar< T > &x1, const fvar< T > &x2)
 
template<typename T >
fvar< T > operator/ (const fvar< T > &x1, const double x2)
 
template<typename T >
fvar< T > operator/ (const double x1, const fvar< T > &x2)
 
template<typename T >
bool operator== (const fvar< T > &x, const fvar< T > &y)
 
template<typename T >
bool operator== (const fvar< T > &x, double y)
 
template<typename T >
bool operator== (double x, const fvar< T > &y)
 
template<typename T >
bool operator> (const fvar< T > &x, const fvar< T > &y)
 
template<typename T >
bool operator> (const fvar< T > &x, double y)
 
template<typename T >
bool operator> (double x, const fvar< T > &y)
 
template<typename T >
bool operator>= (const fvar< T > &x, const fvar< T > &y)
 
template<typename T >
bool operator>= (const fvar< T > &x, double y)
 
template<typename T >
bool operator>= (double x, const fvar< T > &y)
 
template<typename T >
bool operator< (const fvar< T > &x, double y)
 
template<typename T >
bool operator< (double x, const fvar< T > &y)
 
template<typename T >
bool operator< (const fvar< T > &x, const fvar< T > &y)
 
template<typename T >
bool operator<= (const fvar< T > &x, const fvar< T > &y)
 
template<typename T >
bool operator<= (const fvar< T > &x, double y)
 
template<typename T >
bool operator<= (double x, const fvar< T > &y)
 
template<typename T >
fvar< T > operator* (const fvar< T > &x1, const fvar< T > &x2)
 
template<typename T >
fvar< T > operator* (const double x1, const fvar< T > &x2)
 
template<typename T >
fvar< T > operator* (const fvar< T > &x1, const double x2)
 
template<typename T >
bool operator!= (const fvar< T > &x, const fvar< T > &y)
 
template<typename T >
bool operator!= (const fvar< T > &x, double y)
 
template<typename T >
bool operator!= (double x, const fvar< T > &y)
 
template<typename T >
fvar< T > operator- (const fvar< T > &x1, const fvar< T > &x2)
 
template<typename T >
fvar< T > operator- (const double x1, const fvar< T > &x2)
 
template<typename T >
fvar< T > operator- (const fvar< T > &x1, const double x2)
 
template<typename T >
fvar< T > operator- (const fvar< T > &x)
 
template<class F >
double hessian (const F &f, const std::vector< double > &x, const std::vector< double > &v, std::vector< double > &Hv)
 
double calculate_chain (const double &x, const double &val)
 
static void set_zero_all_adjoints ()
 Reset all adjoint values in the stack to zero.
 
static void grad (chainable *vi)
 Compute the gradient for all variables starting from the specified root variable implementation.
 
template<typename T_result , class Policy >
bool check_pos_definite (const char *function, const Eigen::Matrix< var, Eigen::Dynamic, Eigen::Dynamic > &y, const char *name, T_result *result, const Policy &)
 
var acosh (const stan::agrad::var &a)
 The inverse hyperbolic cosine function for variables (C99).
 
int as_bool (const agrad::var &v)
 Return 1 if the argument is unequal to zero and 0 otherwise.
 
var asinh (const stan::agrad::var &a)
 The inverse hyperbolic sine function for variables (C99).
 
var atan2 (const var &a, const double b)
 Return the principal value of the arc tangent, in radians, of the first variable divided by the second scalar (cmath).
 
var atan2 (const double a, const var &b)
 Return the principal value of the arc tangent, in radians, of the first scalar divided by the second variable (cmath).
 
var atanh (const stan::agrad::var &a)
 The inverse hyperbolic tangent function for variables (C99).
 
var bessel_first_kind (const int &v, const var &a)
 
var bessel_second_kind (const int &v, const var &a)
 
var binary_log_loss (const int y, const stan::agrad::var &y_hat)
 The log loss function for variables (stan).
 
var cbrt (const stan::agrad::var &a)
 Returns the cube root of the specified variable (C99).
 
var digamma (const stan::agrad::var &a)
 
var erf (const stan::agrad::var &a)
 The error function for variables (C99).
 
var erfc (const stan::agrad::var &a)
 The complementary error function for variables (C99).
 
var exp2 (const stan::agrad::var &a)
 Exponentiation base 2 function for variables (C99).
 
var expm1 (const stan::agrad::var &a)
 The exponentiation of the specified variable minus 1 (C99).
 
var falling_factorial (const var &a, const double &b)
 
var falling_factorial (const var &a, const var &b)
 
var falling_factorial (const double &a, const var &b)
 
var fdim (const stan::agrad::var &a, const stan::agrad::var &b)
 Return the positive difference between the first variable's the value and the second's (C99).
 
var fdim (const double &a, const stan::agrad::var &b)
 Return the positive difference between the first value and the value of the second variable (C99).
 
var fdim (const stan::agrad::var &a, const double &b)
 Return the positive difference between the first variable's value and the second value (C99).
 
var fma (const stan::agrad::var &a, const stan::agrad::var &b, const stan::agrad::var &c)
 The fused multiply-add function for three variables (C99).
 
var fma (const stan::agrad::var &a, const stan::agrad::var &b, const double &c)
 The fused multiply-add function for two variables and a value (C99).
 
var fma (const stan::agrad::var &a, const double &b, const stan::agrad::var &c)
 The fused multiply-add function for a variable, value, and variable (C99).
 
var fma (const stan::agrad::var &a, const double &b, const double &c)
 The fused multiply-add function for a variable and two values (C99).
 
var fma (const double &a, const stan::agrad::var &b, const double &c)
 The fused multiply-add function for a value, variable, and value (C99).
 
var fma (const double &a, const double &b, const stan::agrad::var &c)
 The fused multiply-add function for two values and a variable, and value (C99).
 
var fma (const double &a, const stan::agrad::var &b, const stan::agrad::var &c)
 The fused multiply-add function for a value and two variables (C99).
 
var fmax (const stan::agrad::var &a, const stan::agrad::var &b)
 Returns the maximum of the two variable arguments (C99).
 
var fmax (const stan::agrad::var &a, const double &b)
 Returns the maximum of the variable and scalar, promoting the scalar to a variable if it is larger (C99).
 
var fmax (const double &a, const stan::agrad::var &b)
 Returns the maximum of a scalar and variable, promoting the scalar to a variable if it is larger (C99).
 
var fmin (const stan::agrad::var &a, const stan::agrad::var &b)
 Returns the minimum of the two variable arguments (C99).
 
var fmin (const stan::agrad::var &a, const double &b)
 Returns the minimum of the variable and scalar, promoting the scalar to a variable if it is larger (C99).
 
var fmin (const double &a, const stan::agrad::var &b)
 Returns the minimum of a scalar and variable, promoting the scalar to a variable if it is larger (C99).
 
var fmod (const var &a, const double b)
 Return the floating point remainder after dividing the the first variable by the second scalar (cmath).
 
var fmod (const double a, const var &b)
 Return the floating point remainder after dividing the first scalar by the second variable (cmath).
 
var gamma_p (const stan::agrad::var &a, const stan::agrad::var &b)
 
var gamma_p (const stan::agrad::var &a, const double &b)
 
var gamma_p (const double &a, const stan::agrad::var &b)
 
var gamma_q (const stan::agrad::var &a, const stan::agrad::var &b)
 
var gamma_q (const stan::agrad::var &a, const double &b)
 
var gamma_q (const double &a, const stan::agrad::var &b)
 
var hypot (const stan::agrad::var &a, const stan::agrad::var &b)
 Returns the length of the hypoteneuse of a right triangle with sides of the specified lengths (C99).
 
var hypot (const stan::agrad::var &a, const double &b)
 Returns the length of the hypoteneuse of a right triangle with sides of the specified lengths (C99).
 
var hypot (const double &a, const stan::agrad::var &b)
 Returns the length of the hypoteneuse of a right triangle with sides of the specified lengths (C99).
 
var ibeta (const var &a, const var &b, const var &x)
 The normalized incomplete beta function of a, b, and x.
 
var if_else (bool c, const var &y_true, const var &y_false)
 If the specified condition is true, return the first variable, otherwise return the second variable.
 
var if_else (bool c, double y_true, const var &y_false)
 If the specified condition is true, return a new variable constructed from the first scalar, otherwise return the second variable.
 
var if_else (bool c, const var &y_true, const double y_false)
 If the specified condition is true, return the first variable, otherwise return a new variable constructed from the second scalar.
 
var inv (const var &a)
 
var inv_cloglog (const stan::agrad::var &a)
 Return the inverse complementary log-log function applied specified variable (stan).
 
var inv_logit (const stan::agrad::var &a)
 The inverse logit function for variables (stan).
 
var inv_sqrt (const var &a)
 
var inv_square (const var &a)
 
bool is_uninitialized (var x)
 Returns true if the specified variable is uninitialized.
 
var lgamma (const stan::agrad::var &a)
 The log gamma function for variables (C99).
 
var lmgamma (int a, const stan::agrad::var &b)
 
var log1m (const stan::agrad::var &a)
 The log (1 - x) function for variables.
 
var log1m_exp (const stan::agrad::var &a)
 Return the log of 1 minus the exponential of the specified variable.
 
var log1p (const stan::agrad::var &a)
 The log (1 + x) function for variables (C99).
 
var log1p_exp (const stan::agrad::var &a)
 Return the log of 1 plus the exponential of the specified variable.
 
var log2 (const stan::agrad::var &a)
 Returns the base 2 logarithm of the specified variable (C99).
 
var log_diff_exp (const stan::agrad::var &a, const stan::agrad::var &b)
 Returns the log sum of exponentials.
 
var log_diff_exp (const stan::agrad::var &a, const double &b)
 Returns the log sum of exponentials.
 
var log_diff_exp (const double &a, const stan::agrad::var &b)
 Returns the log sum of exponentials.
 
var log_falling_factorial (const var &a, const double &b)
 
var log_falling_factorial (const var &a, const var &b)
 
var log_falling_factorial (const double &a, const var &b)
 
var log_rising_factorial (const var &a, const double &b)
 
var log_rising_factorial (const var &a, const var &b)
 
var log_rising_factorial (const double &a, const var &b)
 
var log_sum_exp (const stan::agrad::var &a, const stan::agrad::var &b)
 Returns the log sum of exponentials.
 
var log_sum_exp (const stan::agrad::var &a, const double &b)
 Returns the log sum of exponentials.
 
var log_sum_exp (const double &a, const stan::agrad::var &b)
 Returns the log sum of exponentials.
 
var log_sum_exp (const std::vector< var > &x)
 Returns the log sum of exponentials.
 
var modified_bessel_first_kind (const int &v, const var &a)
 
var modified_bessel_second_kind (const int &v, const var &a)
 
var multiply_log (const var &a, const var &b)
 Return the value of a*log(b).
 
var multiply_log (const var &a, const double b)
 Return the value of a*log(b).
 
var multiply_log (const double a, const var &b)
 Return the value of a*log(b).
 
var owens_t (const var &h, const var &a)
 The Owen's T function of h and a.
 
var owens_t (const var &h, const double &a)
 The Owen's T function of h and a.
 
var owens_t (const double &h, const var &a)
 The Owen's T function of h and a.
 
var Phi (const stan::agrad::var &a)
 The unit normal cumulative density function for variables (stan).
 
var Phi_approx (const stan::agrad::var &a)
 Approximation of the unit normal CDF for variables (stan).
 
var pow (const var &base, const double exponent)
 Return the base variable raised to the power of the exponent scalar (cmath).
 
var pow (const double base, const var &exponent)
 Return the base scalar raised to the power of the exponent variable (cmath).
 
var rising_factorial (const var &a, const double &b)
 
var rising_factorial (const var &a, const var &b)
 
var rising_factorial (const double &a, const var &b)
 
var round (const stan::agrad::var &a)
 Returns the rounded form of the specified variable (C99).
 
var square (const var &x)
 Return the square of the input variable.
 
var step (const stan::agrad::var &a)
 Return the step, or heaviside, function applied to the specified variable (stan).
 
var tgamma (const stan::agrad::var &a)
 Return the Gamma function applied to the specified variable (C99).
 
var trunc (const stan::agrad::var &a)
 Returns the truncatation of the specified variable (C99).
 
double value_of (const agrad::var &v)
 Return the value of the specified variable.
 
var precomputed_gradients (const double value, const std::vector< var > &vars, const std::vector< double > &gradients)
 This function is provided for Stan users that want to compute gradients without using Stan's auto-diff.
 
void jacobian (std::vector< var > &dependents, std::vector< var > &independents, std::vector< std::vector< double > > &jacobian)
 Return the Jacobian of the function producing the specified dependent variables with respect to the specified independent variables.
 
matrix_v crossprod (const matrix_v &M)
 Returns the result of pre-multiplying a matrix by its own transpose.
 
template<int R, int C>
var determinant (const Eigen::Matrix< var, R, C > &m)
 
double divide (double x, double y)
 Return the division of the first scalar by the second scalar.
 
template<typename T1 , typename T2 , int R, int C>
Eigen::Matrix< var, R, C > divide (const Eigen::Matrix< T1, R, C > &v, const T2 &c)
 Return the division of the specified column vector by the specified scalar.
 
template<typename T1 , int R1, int C1, typename T2 , int R2, int C2>
boost::enable_if_c
+< boost::is_same< T1, var >
+::value||boost::is_same< T2,
+var >::value, var >::type 
dot_product (const Eigen::Matrix< T1, R1, C1 > &v1, const Eigen::Matrix< T2, R2, C2 > &v2)
 Returns the dot product.
 
template<typename T1 , typename T2 >
boost::enable_if_c
+< boost::is_same< T1, var >
+::value||boost::is_same< T2,
+var >::value, var >::type 
dot_product (const T1 *v1, const T2 *v2, size_t length)
 Returns the dot product.
 
template<typename T1 , typename T2 >
boost::enable_if_c
+< boost::is_same< T1, var >
+::value||boost::is_same< T2,
+var >::value, var >::type 
dot_product (const std::vector< T1 > &v1, const std::vector< T2 > &v2)
 Returns the dot product.
 
template<typename T1 , int R1, int C1, typename T2 , int R2, int C2>
boost::enable_if_c
+< boost::is_same< T1, var >
+::value||boost::is_same< T2,
+var >::value, Eigen::Matrix
+< var, 1, C1 > >::type 
columns_dot_product (const Eigen::Matrix< T1, R1, C1 > &v1, const Eigen::Matrix< T2, R2, C2 > &v2)
 
template<typename T1 , int R1, int C1, typename T2 , int R2, int C2>
boost::enable_if_c
+< boost::is_same< T1, var >
+::value||boost::is_same< T2,
+var >::value, Eigen::Matrix
+< var, R1, 1 > >::type 
rows_dot_product (const Eigen::Matrix< T1, R1, C1 > &v1, const Eigen::Matrix< T2, R2, C2 > &v2)
 
template<int R, int C>
var dot_self (const Eigen::Matrix< var, R, C > &v)
 Returns the dot product of a vector with itself.
 
template<int R, int C>
Eigen::Matrix< var, 1, C > columns_dot_self (const Eigen::Matrix< var, R, C > &x)
 Returns the dot product of each column of a matrix with itself.
 
void grad (var &v, Eigen::Matrix< var, Eigen::Dynamic, 1 > &x, Eigen::VectorXd &g)
 
void initialize_variable (var &variable, const var &value)
 Initialize variable to value.
 
template<int R, int C>
void initialize_variable (Eigen::Matrix< var, R, C > &matrix, const var &value)
 Initialize every cell in the matrix to the specified value.
 
template<typename T >
void initialize_variable (std::vector< T > &variables, const var &value)
 Initialize the variables in the standard vector recursively.
 
template<int R, int C>
var log_determinant (const Eigen::Matrix< var, R, C > &m)
 
template<int R, int C>
var log_determinant_ldlt (stan::math::LDLT_factor< var, R, C > &A)
 
template<int R, int C>
var log_determinant_spd (const Eigen::Matrix< var, R, C > &m)
 
Eigen::Matrix< var,
+Eigen::Dynamic, 1 > 
log_softmax (const Eigen::Matrix< var, Eigen::Dynamic, 1 > &alpha)
 Return the softmax of the specified Eigen vector.
 
template<int R, int C>
var log_sum_exp (const Eigen::Matrix< var, R, C > &x)
 Returns the log sum of exponentials.
 
template<int R1, int C1, int R2, int C2>
Eigen::Matrix< var, R1, C2 > mdivide_left (const Eigen::Matrix< var, R1, C1 > &A, const Eigen::Matrix< var, R2, C2 > &b)
 
template<int R1, int C1, int R2, int C2>
Eigen::Matrix< var, R1, C2 > mdivide_left (const Eigen::Matrix< var, R1, C1 > &A, const Eigen::Matrix< double, R2, C2 > &b)
 
template<int R1, int C1, int R2, int C2>
Eigen::Matrix< var, R1, C2 > mdivide_left (const Eigen::Matrix< double, R1, C1 > &A, const Eigen::Matrix< var, R2, C2 > &b)
 
template<int R1, int C1, int R2, int C2>
Eigen::Matrix< var, R1, C2 > mdivide_left_ldlt (const stan::math::LDLT_factor< var, R1, C1 > &A, const Eigen::Matrix< var, R2, C2 > &b)
 Returns the solution of the system Ax=b given an LDLT_factor of A.
 
template<int R1, int C1, int R2, int C2>
Eigen::Matrix< var, R1, C2 > mdivide_left_ldlt (const stan::math::LDLT_factor< var, R1, C1 > &A, const Eigen::Matrix< double, R2, C2 > &b)
 Returns the solution of the system Ax=b given an LDLT_factor of A.
 
template<int R1, int C1, int R2, int C2>
Eigen::Matrix< var, R1, C2 > mdivide_left_ldlt (const stan::math::LDLT_factor< double, R1, C1 > &A, const Eigen::Matrix< var, R2, C2 > &b)
 Returns the solution of the system Ax=b given an LDLT_factor of A.
 
template<int R1, int C1, int R2, int C2>
Eigen::Matrix< var, R1, C2 > mdivide_left_spd (const Eigen::Matrix< var, R1, C1 > &A, const Eigen::Matrix< var, R2, C2 > &b)
 
template<int R1, int C1, int R2, int C2>
Eigen::Matrix< var, R1, C2 > mdivide_left_spd (const Eigen::Matrix< var, R1, C1 > &A, const Eigen::Matrix< double, R2, C2 > &b)
 
template<int R1, int C1, int R2, int C2>
Eigen::Matrix< var, R1, C2 > mdivide_left_spd (const Eigen::Matrix< double, R1, C1 > &A, const Eigen::Matrix< var, R2, C2 > &b)
 
template<int TriView, int R1, int C1, int R2, int C2>
Eigen::Matrix< var, R1, C2 > mdivide_left_tri (const Eigen::Matrix< var, R1, C1 > &A, const Eigen::Matrix< var, R2, C2 > &b)
 
template<int TriView, int R1, int C1, int R2, int C2>
Eigen::Matrix< var, R1, C2 > mdivide_left_tri (const Eigen::Matrix< double, R1, C1 > &A, const Eigen::Matrix< var, R2, C2 > &b)
 
template<int TriView, int R1, int C1, int R2, int C2>
Eigen::Matrix< var, R1, C2 > mdivide_left_tri (const Eigen::Matrix< var, R1, C1 > &A, const Eigen::Matrix< double, R2, C2 > &b)
 
template<typename T1 , typename T2 >
boost::enable_if_c
+< (boost::is_scalar< T1 >
+::value||boost::is_same< T1,
+var >::value)&&(boost::is_scalar
+< T2 >::value||boost::is_same
+< T2, var >::value), typename
+boost::math::tools::promote_args
+< T1, T2 >::type >::type 
multiply (const T1 &v, const T2 &c)
 Return the product of two scalars.
 
template<typename T1 , typename T2 , int R2, int C2>
Eigen::Matrix< var, R2, C2 > multiply (const T1 &c, const Eigen::Matrix< T2, R2, C2 > &m)
 Return the product of scalar and matrix.
 
template<typename T1 , int R1, int C1, typename T2 >
Eigen::Matrix< var, R1, C1 > multiply (const Eigen::Matrix< T1, R1, C1 > &m, const T2 &c)
 Return the product of scalar and matrix.
 
template<typename T1 , int R1, int C1, typename T2 , int R2, int C2>
boost::enable_if_c
+< boost::is_same< T1, var >
+::value||boost::is_same< T2,
+var >::value, Eigen::Matrix
+< var, R1, C2 > >::type 
multiply (const Eigen::Matrix< T1, R1, C1 > &m1, const Eigen::Matrix< T2, R2, C2 > &m2)
 Return the product of the specified matrices.
 
template<typename T1 , int C1, typename T2 , int R2>
boost::enable_if_c
+< boost::is_same< T1, var >
+::value||boost::is_same< T2,
+var >::value, var >::type 
multiply (const Eigen::Matrix< T1, 1, C1 > &rv, const Eigen::Matrix< T2, R2, 1 > &v)
 Return the scalar product of the specified row vector and specified column vector.
 
matrix_v multiply_lower_tri_self_transpose (const matrix_v &L)
 
template<typename TA , int RA, int CA, typename TB , int RB, int CB>
boost::enable_if_c
+< boost::is_same< TA, var >
+::value||boost::is_same< TB,
+var >::value, Eigen::Matrix
+< var, CB, CB > >::type 
quad_form (const Eigen::Matrix< TA, RA, CA > &A, const Eigen::Matrix< TB, RB, CB > &B)
 
template<typename TA , int RA, int CA, typename TB , int RB>
boost::enable_if_c
+< boost::is_same< TA, var >
+::value||boost::is_same< TB,
+var >::value, var >::type 
quad_form (const Eigen::Matrix< TA, RA, CA > &A, const Eigen::Matrix< TB, RB, 1 > &B)
 
template<typename TA , int RA, int CA, typename TB , int RB, int CB>
boost::enable_if_c
+< boost::is_same< TA, var >
+::value||boost::is_same< TB,
+var >::value, Eigen::Matrix
+< var, CB, CB > >::type 
quad_form_sym (const Eigen::Matrix< TA, RA, CA > &A, const Eigen::Matrix< TB, RB, CB > &B)
 
template<typename TA , int RA, int CA, typename TB , int RB>
boost::enable_if_c
+< boost::is_same< TA, var >
+::value||boost::is_same< TB,
+var >::value, var >::type 
quad_form_sym (const Eigen::Matrix< TA, RA, CA > &A, const Eigen::Matrix< TB, RB, 1 > &B)
 
var sd (const std::vector< var > &v)
 Return the sample standard deviation of the specified standard vector.
 
template<int R, int C>
var sd (const Eigen::Matrix< var, R, C > &m)
 
Eigen::Matrix< var,
+Eigen::Dynamic, 1 > 
softmax (const Eigen::Matrix< var, Eigen::Dynamic, 1 > &alpha)
 Return the softmax of the specified Eigen vector.
 
std::vector< varsort_asc (std::vector< var > xs)
 Return the specified standard vector in ascending order with gradients kept.
 
std::vector< varsort_desc (std::vector< var > xs)
 Return the specified standard vector in descending order with gradients kept.
 
template<int R, int C>
Eigen::Matrix< var, R, C > sort_asc (Eigen::Matrix< var, R, C > xs)
 Return the specified eigen vector in ascending order with gradients kept.
 
template<int R, int C>
Eigen::Matrix< var, R, C > sort_desc (Eigen::Matrix< var, R, C > xs)
 Return the specified eigen vector in descending order with gradients kept.
 
template<int R1, int C1, int R2, int C2>
var squared_distance (const Eigen::Matrix< var, R1, C1 > &v1, const Eigen::Matrix< var, R2, C2 > &v2)
 
template<int R1, int C1, int R2, int C2>
var squared_distance (const Eigen::Matrix< var, R1, C1 > &v1, const Eigen::Matrix< double, R2, C2 > &v2)
 
template<int R1, int C1, int R2, int C2>
var squared_distance (const Eigen::Matrix< double, R1, C1 > &v1, const Eigen::Matrix< var, R2, C2 > &v2)
 
void stan_print (std::ostream *o, const var &x)
 
template<int R, int C>
var sum (const Eigen::Matrix< var, R, C > &m)
 Returns the sum of the coefficients of the specified matrix, column vector or row vector.
 
matrix_v tcrossprod (const matrix_v &M)
 Returns the result of post-multiplying a matrix by its own transpose.
 
var to_var (const double &x)
 Converts argument to an automatic differentiation variable.
 
var to_var (const var &x)
 Converts argument to an automatic differentiation variable.
 
matrix_v to_var (const stan::math::matrix_d &m)
 Converts argument to an automatic differentiation variable.
 
matrix_v to_var (const matrix_v &m)
 Converts argument to an automatic differentiation variable.
 
vector_v to_var (const stan::math::vector_d &v)
 Converts argument to an automatic differentiation variable.
 
vector_v to_var (const vector_v &v)
 Converts argument to an automatic differentiation variable.
 
row_vector_v to_var (const stan::math::row_vector_d &rv)
 Converts argument to an automatic differentiation variable.
 
row_vector_v to_var (const row_vector_v &rv)
 Converts argument to an automatic differentiation variable.
 
template<typename T1 , int R1, int C1, typename T2 , int R2, int C2, typename T3 , int R3, int C3>
boost::enable_if_c
+< boost::is_same< T1, var >
+::value||boost::is_same< T2,
+var >::value||boost::is_same
+< T3, var >::value, var >
+::type 
trace_gen_inv_quad_form_ldlt (const Eigen::Matrix< T1, R1, C1 > &D, const stan::math::LDLT_factor< T2, R2, C2 > &A, const Eigen::Matrix< T3, R3, C3 > &B)
 Compute the trace of an inverse quadratic form.
 
template<typename TD , int RD, int CD, typename TA , int RA, int CA, typename TB , int RB, int CB>
boost::enable_if_c
+< boost::is_same< TD, var >
+::value||boost::is_same< TA,
+var >::value||boost::is_same
+< TB, var >::value, var >
+::type 
trace_gen_quad_form (const Eigen::Matrix< TD, RD, CD > &D, const Eigen::Matrix< TA, RA, CA > &A, const Eigen::Matrix< TB, RB, CB > &B)
 
template<typename T2 , int R2, int C2, typename T3 , int R3, int C3>
boost::enable_if_c
+< boost::is_same< T2, var >
+::value||boost::is_same< T3,
+var >::value, var >::type 
trace_inv_quad_form_ldlt (const stan::math::LDLT_factor< T2, R2, C2 > &A, const Eigen::Matrix< T3, R3, C3 > &B)
 Compute the trace of an inverse quadratic form.
 
template<typename TA , int RA, int CA, typename TB , int RB, int CB>
boost::enable_if_c
+< boost::is_same< TA, var >
+::value||boost::is_same< TB,
+var >::value, var >::type 
trace_quad_form (const Eigen::Matrix< TA, RA, CA > &A, const Eigen::Matrix< TB, RB, CB > &B)
 
template<int R, int C>
const Eigen::Matrix< double, R,
+C > & 
value_of (const Eigen::Matrix< double, R, C > &M)
 Convert a matrix to a matrix of doubles.
 
template<int R, int C>
Eigen::Matrix< double, R, C > value_of (const Eigen::Matrix< var, R, C > &M)
 Convert a matrix to a matrix of doubles.
 
var variance (const std::vector< var > &v)
 Return the sample variance of the specified standard vector.
 
template<int R, int C>
var variance (const Eigen::Matrix< var, R, C > &m)
 
var operator+ (const var &a, const double b)
 Addition operator for variable and scalar (C++).
 
var operator+ (const double a, const var &b)
 Addition operator for scalar and variable (C++).
 
var operator/ (const var &a, const double b)
 Division operator for dividing a variable by a scalar (C++).
 
var operator/ (const double a, const var &b)
 Division operator for dividing a scalar by a variable (C++).
 
bool operator== (const var &a, const double b)
 Equality operator comparing a variable's value and a double (C++).
 
bool operator== (const double a, const var &b)
 Equality operator comparing a scalar and a variable's value (C++).
 
bool operator> (const var &a, const double b)
 Greater than operator comparing variable's value and double (C++).
 
bool operator> (const double a, const var &b)
 Greater than operator comparing a double and a variable's value (C++).
 
bool operator>= (const var &a, const double b)
 Greater than or equal operator comparing variable's value and double (C++).
 
bool operator>= (const double a, const var &b)
 Greater than or equal operator comparing double and variable's value (C++).
 
bool operator< (const var &a, const double b)
 Less than operator comparing variable's value and a double (C++).
 
bool operator< (const double a, const var &b)
 Less than operator comparing a double and variable's value (C++).
 
bool operator<= (const var &a, const double b)
 Less than or equal operator comparing a variable's value and a scalar (C++).
 
bool operator<= (const double a, const var &b)
 Less than or equal operator comparing a double and variable's value (C++).
 
var operator* (const var &a, const double b)
 Multiplication operator for a variable and a scalar (C++).
 
var operator* (const double a, const var &b)
 Multiplication operator for a scalar and a variable (C++).
 
bool operator!= (const var &a, const double b)
 Inequality operator comparing a variable's value and a double (C++).
 
bool operator!= (const double a, const var &b)
 Inequality operator comparing a double and a variable's value (C++).
 
var operator- (const var &a, const double b)
 Subtraction operator for variable and scalar (C++).
 
var operator- (const double a, const var &b)
 Subtraction operator for scalar and variable (C++).
 
void print_stack (std::ostream &o)
 Prints the auto-dif variable stack.
 
static void recover_memory ()
 
static void grad (chainable *vi)
 
static void recover_memory ()
 Recover memory used for all variables for reuse.
 
static void free_memory ()
 Return all memory used for gradients back to the system.
 
+ + + + + + + + + +

+Variables

std::vector< chainable * > var_stack_
 
std::vector< chainable * > var_nochain_stack_
 
std::vector< chainable_alloc * > var_alloc_stack_
 
memory::stack_alloc memalloc_
 
+

Detailed Description

+

Function gradients via reverse-mode automatic differentiation.

+

Typedef Documentation

+ +
+
+ + + + +
typedef Eigen::Matrix<fvar<double>,Eigen::Dynamic,Eigen::Dynamic> stan::agrad::matrix_fd
+
+ +

Definition at line 18 of file typedefs.hpp.

+ +
+
+ +
+
+ + + + +
typedef Eigen::Matrix<fvar<fvar<double> >,Eigen::Dynamic,Eigen::Dynamic> stan::agrad::matrix_ffd
+
+ +

Definition at line 26 of file typedefs.hpp.

+ +
+
+ +
+
+ + + + +
typedef Eigen::Matrix<fvar<fvar<var> >,Eigen::Dynamic,Eigen::Dynamic> stan::agrad::matrix_ffv
+
+ +

Definition at line 30 of file typedefs.hpp.

+ +
+
+ +
+
+ + + + +
typedef Eigen::Matrix<fvar<var>,Eigen::Dynamic,Eigen::Dynamic> stan::agrad::matrix_fv
+
+ +

Definition at line 22 of file typedefs.hpp.

+ +
+
+ +
+
+ + + + +
typedef Eigen::Matrix<var,Eigen::Dynamic,Eigen::Dynamic> stan::agrad::matrix_v
+
+ +

The type of a matrix holding stan::agrad::var values.

+ +

Definition at line 17 of file typedefs.hpp.

+ +
+
+ +
+
+ + + + +
typedef Eigen::Matrix<fvar<double>,1,Eigen::Dynamic> stan::agrad::row_vector_fd
+
+ +

Definition at line 50 of file typedefs.hpp.

+ +
+
+ +
+
+ + + + +
typedef Eigen::Matrix<fvar<fvar<double> >,1,Eigen::Dynamic> stan::agrad::row_vector_ffd
+
+ +

Definition at line 58 of file typedefs.hpp.

+ +
+
+ +
+
+ + + + +
typedef Eigen::Matrix<fvar<fvar<var> >,1,Eigen::Dynamic> stan::agrad::row_vector_ffv
+
+ +

Definition at line 62 of file typedefs.hpp.

+ +
+
+ +
+
+ + + + +
typedef Eigen::Matrix<fvar<var>,1,Eigen::Dynamic> stan::agrad::row_vector_fv
+
+ +

Definition at line 54 of file typedefs.hpp.

+ +
+
+ +
+
+ + + + +
typedef Eigen::Matrix<var,1,Eigen::Dynamic> stan::agrad::row_vector_v
+
+ +

The type of a row vector holding stan::agrad::var values.

+ +

Definition at line 33 of file typedefs.hpp.

+ +
+
+ +
+
+ + + + +
typedef Eigen::Matrix< double, Eigen::Dynamic, Eigen::Dynamic >::size_type stan::agrad::size_type
+
+ +

Definition at line 14 of file typedefs.hpp.

+ +
+
+ +
+
+ + + + +
typedef Eigen::Matrix<fvar<double>,Eigen::Dynamic,1> stan::agrad::vector_fd
+
+ +

Definition at line 34 of file typedefs.hpp.

+ +
+
+ +
+
+ + + + +
typedef Eigen::Matrix<fvar<fvar<double> >,Eigen::Dynamic,1> stan::agrad::vector_ffd
+
+ +

Definition at line 42 of file typedefs.hpp.

+ +
+
+ +
+
+ + + + +
typedef Eigen::Matrix<fvar<fvar<var> >,Eigen::Dynamic,1> stan::agrad::vector_ffv
+
+ +

Definition at line 46 of file typedefs.hpp.

+ +
+
+ +
+
+ + + + +
typedef Eigen::Matrix<fvar<var>,Eigen::Dynamic,1> stan::agrad::vector_fv
+
+ +

Definition at line 38 of file typedefs.hpp.

+ +
+
+ +
+
+ + + + +
typedef Eigen::Matrix<var,Eigen::Dynamic,1> stan::agrad::vector_v
+
+ +

The type of a (column) vector holding stan::agrad::var values.

+ +

Definition at line 25 of file typedefs.hpp.

+ +
+
+

Function Documentation

+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + +
fvar<T> stan::agrad::abs (const fvar< T > & x)
+
+inline
+
+ +

Definition at line 15 of file abs.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
var stan::agrad::abs (const var & a)
+
+inline
+
+ +

Return the absolute value of the variable (std).

+

The value at the undifferentiable point 0 is conveniently set 0, so that

+

$\frac{d}{dx}|x| = \mbox{sgn}(x)$.

+

The function fabs() provides identical behavior, with abs() defined in stdlib.h and fabs() defined in cmath.

+
Parameters
+ + +
aVariable input.
+
+
+
Returns
Absolute value of variable.
+

Delegates to fabs() (see for doc).

+
Parameters
+ + +
aVariable input.
+
+
+
Returns
Absolute value of variable.
+ +

Definition at line 1998 of file agrad_thread_safe.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + +
fvar<T> stan::agrad::acos (const fvar< T > & x)
+
+inline
+
+ +

Definition at line 15 of file acos.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
var stan::agrad::acos (const var & a)
+
+inline
+
+ +

Return the principal value of the arc cosine of a variable, in radians (cmath).

+

The derivative is defined by

+

$\frac{d}{dx} \arccos x = \frac{-1}{\sqrt{1 - x^2}}$.

+
Parameters
+ + +
aVariable in range [-1,1].
+
+
+
Returns
Arc cosine of variable, in radians.
+ +

Definition at line 1725 of file agrad_thread_safe.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + +
fvar<T> stan::agrad::acosh (const fvar< T > & x)
+
+inline
+
+ +

Definition at line 17 of file acosh.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
var stan::agrad::acosh (const stan::agrad::vara)
+
+inline
+
+ +

The inverse hyperbolic cosine function for variables (C99).

+

For non-variable function, see boost::math::acosh().

+

The derivative is defined by

+

$\frac{d}{dx} \mbox{acosh}(x) = \frac{x}{x^2 - 1}$.

+
Parameters
+ + +
aThe variable.
+
+
+
Returns
Inverse hyperbolic cosine of the variable.
+ +

Definition at line 40 of file acosh.hpp.

+ +
+
+ +
+
+
+template<typename R , typename F , typename T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
R stan::agrad::apply_recover (const F & f,
T & x 
)
+
+inline
+
+ +

Apply the specified function to the specified argument and return the result; if the function throws an exception, recover reverse-mode memory and rethrow.

+
Template Parameters
+ + + + +
FFunction type
TArgument type of function
RReturn type of function
+
+
+
Parameters
+ + + +
[in]fFunction
[in]xArgument
+
+
+
Returns
Value of applying function to argument
+ +

Definition at line 27 of file autodiff.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
int stan::agrad::as_bool (const agrad::var & v)
+
+inline
+
+ +

Return 1 if the argument is unequal to zero and 0 otherwise.

+
Parameters
+ + +
vValue.
+
+
+
Returns
1 if argument is equal to zero and 0 otherwise.
+ +

Definition at line 15 of file as_bool.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + +
fvar<T> stan::agrad::asin (const fvar< T > & x)
+
+inline
+
+ +

Definition at line 15 of file asin.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
var stan::agrad::asin (const var & a)
+
+inline
+
+ +

Return the principal value of the arc sine, in radians, of the specified variable (cmath).

+

The derivative is defined by

+

$\frac{d}{dx} \arcsin x = \frac{1}{\sqrt{1 - x^2}}$.

+
Parameters
+ + +
aVariable in range [-1,1].
+
+
+
Returns
Arc sine of variable, in radians.
+ +

Definition at line 1740 of file agrad_thread_safe.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + +
fvar<T> stan::agrad::asinh (const fvar< T > & x)
+
+inline
+
+ +

Definition at line 16 of file asinh.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
var stan::agrad::asinh (const stan::agrad::vara)
+
+inline
+
+ +

The inverse hyperbolic sine function for variables (C99).

+

For non-variable function, see boost::math::asinh().

+

The derivative is defined by

+

$\frac{d}{dx} \mbox{asinh}(x) = \frac{x}{x^2 + 1}$.

+
Parameters
+ + +
aThe variable.
+
+
+
Returns
Inverse hyperbolic sine of the variable.
+ +

Definition at line 40 of file asinh.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + +
fvar<T> stan::agrad::atan (const fvar< T > & x)
+
+inline
+
+ +

Definition at line 15 of file atan.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
var stan::agrad::atan (const var & a)
+
+inline
+
+ +

Return the principal value of the arc tangent, in radians, of the specified variable (cmath).

+

The derivative is defined by

+

$\frac{d}{dx} \arctan x = \frac{1}{1 + x^2}$.

+
Parameters
+ + +
aVariable in range [-1,1].
+
+
+
Returns
Arc tangent of variable, in radians.
+ +

Definition at line 1755 of file agrad_thread_safe.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
fvar<T> stan::agrad::atan2 (const fvar< T > & x1,
const fvar< T > & x2 
)
+
+inline
+
+ +

Definition at line 15 of file atan2.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
fvar<T> stan::agrad::atan2 (const double x1,
const fvar< T > & x2 
)
+
+inline
+
+ +

Definition at line 26 of file atan2.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
fvar<T> stan::agrad::atan2 (const fvar< T > & x1,
const double x2 
)
+
+inline
+
+ +

Definition at line 36 of file atan2.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
var stan::agrad::atan2 (const var & a,
const double b 
)
+
+inline
+
+ +

Return the principal value of the arc tangent, in radians, of the first variable divided by the second scalar (cmath).

+

The derivative with respect to the variable is

+

$ $ \frac{d}{d x} \arctan \frac{x}{c} = \frac{c}{x^2 + c^2}$.

+
Parameters
+ + + +
aNumerator variable.
bDenominator scalar.
+
+
+
Returns
The arc tangent of the fraction, in radians.
+ +

Definition at line 79 of file atan2.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
var stan::agrad::atan2 (const double a,
const var & b 
)
+
+inline
+
+ +

Return the principal value of the arc tangent, in radians, of the first scalar divided by the second variable (cmath).

+

The derivative with respect to the variable is

+

$ $ \frac{\partial}{\partial y} \arctan \frac{c}{y} = \frac{-c}{c^2 + y^2}$.

+
Parameters
+ + + +
aNumerator scalar.
bDenominator variable.
+
+
+
Returns
The arc tangent of the fraction, in radians.
+ +

Definition at line 95 of file atan2.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
var stan::agrad::atan2 (const var & a,
const var & b 
)
+
+inline
+
+ +

Return the principal value of the arc tangent, in radians, of the first variable divided by the second (cmath).

+

The partial derivatives are defined by

+

$ $ \frac{\partial}{\partial x} \arctan \frac{x}{y} = \frac{y}{x^2 + y^2}$, and

+

$ $ \frac{\partial}{\partial y} \arctan \frac{x}{y} = \frac{-x}{x^2 + y^2}$.

+
Parameters
+ + + +
aNumerator variable.
bDenominator variable.
+
+
+
Returns
The arc tangent of the fraction, in radians.
+ +

Definition at line 1774 of file agrad_thread_safe.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
var stan::agrad::atan2 (const var & a,
const double & b 
)
+
+inline
+
+ +

Return the principal value of the arc tangent, in radians, of the first variable divided by the second scalar (cmath).

+

The derivative with respect to the variable is

+

$ $ \frac{d}{d x} \arctan \frac{x}{c} = \frac{c}{x^2 + c^2}$.

+
Parameters
+ + + +
aNumerator variable.
bDenominator scalar.
+
+
+
Returns
The arc tangent of the fraction, in radians.
+ +

Definition at line 1790 of file agrad_thread_safe.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
var stan::agrad::atan2 (const double & a,
const var & b 
)
+
+inline
+
+ +

Return the principal value of the arc tangent, in radians, of the first scalar divided by the second variable (cmath).

+

The derivative with respect to the variable is

+

$ $ \frac{\partial}{\partial y} \arctan \frac{c}{y} = \frac{-c}{c^2 + y^2}$.

+
Parameters
+ + + +
aNumerator scalar.
bDenominator variable.
+
+
+
Returns
The arc tangent of the fraction, in radians.
+ +

Definition at line 1806 of file agrad_thread_safe.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + +
fvar<T> stan::agrad::atanh (const fvar< T > & x)
+
+inline
+
+ +

Definition at line 16 of file atanh.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
var stan::agrad::atanh (const stan::agrad::vara)
+
+inline
+
+ +

The inverse hyperbolic tangent function for variables (C99).

+

For non-variable function, see boost::math::atanh().

+

The derivative is defined by

+

$\frac{d}{dx} \mbox{atanh}(x) = \frac{1}{1 - x^2}$.

+
Parameters
+ + +
aThe variable.
+
+
+
Returns
Inverse hyperbolic tangent of the variable.
+ +

Definition at line 36 of file atanh.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
fvar<T> stan::agrad::bessel_first_kind (int v,
const fvar< T > & z 
)
+
+inline
+
+ +

Definition at line 15 of file bessel_first_kind.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
var stan::agrad::bessel_first_kind (const int & v,
const var & a 
)
+
+inline
+
+ +

Definition at line 27 of file bessel_first_kind.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
fvar<T> stan::agrad::bessel_second_kind (int v,
const fvar< T > & z 
)
+
+inline
+
+ +

Definition at line 15 of file bessel_second_kind.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
var stan::agrad::bessel_second_kind (const int & v,
const var & a 
)
+
+inline
+
+ +

Definition at line 27 of file bessel_second_kind.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
fvar<T> stan::agrad::binary_log_loss (const int y,
const fvar< T > & y_hat 
)
+
+inline
+
+ +

Definition at line 15 of file binary_log_loss.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
var stan::agrad::binary_log_loss (const int y,
const stan::agrad::vary_hat 
)
+
+inline
+
+ +

The log loss function for variables (stan).

+

See stan::math::binary_log_loss() for the double-based version.

+

The derivative with respect to the variable $\hat{y}$ is

+

$\frac{d}{d\hat{y}} \mbox{logloss}(1,\hat{y}) = - \frac{1}{\hat{y}}$, and

+

$\frac{d}{d\hat{y}} \mbox{logloss}(0,\hat{y}) = \frac{1}{1 - \hat{y}}$.

+
Parameters
+ + + +
yReference value.
y_hatResponse variable.
+
+
+
Returns
Log loss of response versus reference value.
+ +

Definition at line 50 of file binary_log_loss.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
fvar<T> stan::agrad::binomial_coefficient_log (const fvar< T > & x1,
const fvar< T > & x2 
)
+
+inline
+
+ +

Definition at line 16 of file binomial_coefficient_log.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
fvar<T> stan::agrad::binomial_coefficient_log (const fvar< T > & x1,
const double x2 
)
+
+inline
+
+ +

Definition at line 45 of file binomial_coefficient_log.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
fvar<T> stan::agrad::binomial_coefficient_log (const double x1,
const fvar< T > & x2 
)
+
+inline
+
+ +

Definition at line 69 of file binomial_coefficient_log.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
double stan::agrad::calculate_chain (const double & x,
const double & val 
)
+
+inline
+
+ +

Definition at line 8 of file calculate_chain.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + +
fvar<T> stan::agrad::cbrt (const fvar< T > & x)
+
+inline
+
+ +

Definition at line 16 of file cbrt.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
var stan::agrad::cbrt (const stan::agrad::vara)
+
+inline
+
+ +

Returns the cube root of the specified variable (C99).

+

See boost::math::cbrt() for the double-based version.

+

The derivative is

+

$\frac{d}{dx} x^{1/3} = \frac{1}{3 x^{2/3}}$.

+
Parameters
+ + +
aSpecified variable.
+
+
+
Returns
Cube root of the variable.
+ +

Definition at line 35 of file cbrt.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + +
fvar<T> stan::agrad::ceil (const fvar< T > & x)
+
+inline
+
+ +

Definition at line 14 of file ceil.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
var stan::agrad::ceil (const var & a)
+
+inline
+
+ +

Return the ceiling of the specified variable (cmath).

+

The derivative of the ceiling function is defined and zero everywhere but at integers, and we set them to zero for convenience,

+

$\frac{d}{dx} {\lceil x \rceil} = 0$.

+

The ceiling function rounds up. For double values, this is the smallest integral value that is not less than the specified value. Although this function is not differentiable because it is discontinuous at integral values, its gradient is returned as zero everywhere.

+
Parameters
+ + +
aInput variable.
+
+
+
Returns
Ceiling of the variable.
+ +

Definition at line 1922 of file agrad_thread_safe.hpp.

+ +
+
+ +
+
+
+template<typename T_result , class Policy >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
bool stan::agrad::check_pos_definite (const char * function,
const Eigen::Matrix< var, Eigen::Dynamic, Eigen::Dynamic > & y,
const char * name,
T_result * result,
const Policy &  
)
+
+inline
+
+ +

Definition at line 14 of file check_pos_definite.hpp.

+ +
+
+ +
+
+
+template<typename T , int R1, int C1, int R2, int C2>
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
Eigen::Matrix<fvar<T>, 1, C1> stan::agrad::columns_dot_product (const Eigen::Matrix< fvar< T >, R1, C1 > & v1,
const Eigen::Matrix< fvar< T >, R2, C2 > & v2 
)
+
+inline
+
+ +

Definition at line 18 of file columns_dot_product.hpp.

+ +
+
+ +
+
+
+template<typename T , int R1, int C1, int R2, int C2>
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
Eigen::Matrix<fvar<T>, 1, C1> stan::agrad::columns_dot_product (const Eigen::Matrix< fvar< T >, R1, C1 > & v1,
const Eigen::Matrix< double, R2, C2 > & v2 
)
+
+inline
+
+ +

Definition at line 33 of file columns_dot_product.hpp.

+ +
+
+ +
+
+
+template<typename T , int R1, int C1, int R2, int C2>
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
Eigen::Matrix<fvar<T>, 1, C1> stan::agrad::columns_dot_product (const Eigen::Matrix< double, R1, C1 > & v1,
const Eigen::Matrix< fvar< T >, R2, C2 > & v2 
)
+
+inline
+
+ +

Definition at line 49 of file columns_dot_product.hpp.

+ +
+
+ +
+
+
+template<typename T1 , int R1, int C1, typename T2 , int R2, int C2>
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
boost::enable_if_c<boost::is_same<T1,var>::value || boost::is_same<T2,var>::value, Eigen::Matrix<var, 1, C1> >::type stan::agrad::columns_dot_product (const Eigen::Matrix< T1, R1, C1 > & v1,
const Eigen::Matrix< T2, R2, C2 > & v2 
)
+
+inline
+
+ +

Definition at line 259 of file dot_product.hpp.

+ +
+
+ +
+
+
+template<typename T , int R, int C>
+ + + + + +
+ + + + + + + + +
Eigen::Matrix<fvar<T>,1,C> stan::agrad::columns_dot_self (const Eigen::Matrix< fvar< T >, R, C > & x)
+
+inline
+
+ +

Definition at line 16 of file columns_dot_self.hpp.

+ +
+
+ +
+
+
+template<int R, int C>
+ + + + + +
+ + + + + + + + +
Eigen::Matrix<var,1,C> stan::agrad::columns_dot_self (const Eigen::Matrix< var, R, C > & x)
+
+inline
+
+ +

Returns the dot product of each column of a matrix with itself.

+
Parameters
+ + +
xMatrix.
+
+
+
Template Parameters
+ + +
Tscalar type
+
+
+ +

Definition at line 89 of file dot_self.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + +
fvar<T> stan::agrad::cos (const fvar< T > & x)
+
+inline
+
+ +

Definition at line 14 of file cos.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
var stan::agrad::cos (const var & a)
+
+inline
+
+ +

Return the cosine of a radian-scaled variable (cmath).

+

The derivative is defined by

+

$\frac{d}{dx} \cos x = - \sin x$.

+
Parameters
+ + +
aVariable for radians of angle.
+
+
+
Returns
Cosine of variable.
+ +

Definition at line 1682 of file agrad_thread_safe.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + +
fvar<T> stan::agrad::cosh (const fvar< T > & x)
+
+inline
+
+ +

Definition at line 14 of file cosh.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
var stan::agrad::cosh (const var & a)
+
+inline
+
+ +

Return the hyperbolic cosine of the specified variable (cmath).

+

The derivative is defined by

+

$\frac{d}{dx} \cosh x = \sinh x$.

+
Parameters
+ + +
aVariable.
+
+
+
Returns
Hyperbolic cosine of variable.
+ +

Definition at line 1822 of file agrad_thread_safe.hpp.

+ +
+
+ +
+
+
+template<typename T , int R, int C>
+ + + + + +
+ + + + + + + + +
Eigen::Matrix<fvar<T>,C,C> stan::agrad::crossprod (const Eigen::Matrix< fvar< T >, R, C > & m)
+
+inline
+
+ +

Definition at line 17 of file crossprod.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
matrix_v stan::agrad::crossprod (const matrix_v & M)
+
+inline
+
+ +

Returns the result of pre-multiplying a matrix by its own transpose.

+
Parameters
+ + +
MMatrix to multiply.
+
+
+
Returns
Transpose of M times M
+ +

Definition at line 17 of file crossprod.hpp.

+ +
+
+ +
+
+
+template<typename T , typename F >
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
void stan::agrad::derivative (const F & f,
const T & x,
T & fx,
T & dfx_dx 
)
+
+ +

Return the derivative of the specified univariate function at the specified argument.

+
Template Parameters
+ + + +
TArgument type
FFunction type
+
+
+
Parameters
+ + + + + +
[in]fFunction
[in]xArgument
[out]fxValue of function applied to argument
[out]dfx_dxValue of derivative
+
+
+ +

Definition at line 50 of file autodiff.hpp.

+ +
+
+ +
+
+
+template<typename T , int R, int C>
+ + + + + +
+ + + + + + + + +
fvar<T> stan::agrad::determinant (const Eigen::Matrix< fvar< T >, R, C > & m)
+
+inline
+
+ +

Definition at line 20 of file determinant.hpp.

+ +
+
+ +
+
+
+template<int R, int C>
+ + + + + +
+ + + + + + + + +
var stan::agrad::determinant (const Eigen::Matrix< var, R, C > & m)
+
+inline
+
+ +

Definition at line 68 of file determinant.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + +
fvar<T> stan::agrad::digamma (const fvar< T > & x)
+
+inline
+
+ +

Definition at line 16 of file digamma.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
var stan::agrad::digamma (const stan::agrad::vara)
+
+inline
+
+ +

Definition at line 25 of file digamma.hpp.

+ +
+
+ +
+
+
+template<typename T1 , typename T2 >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
var stan::agrad::divide (const T1 & v,
const T2 & c 
)
+
+inline
+
+ +

Definition at line 17 of file divide.hpp.

+ +
+
+ +
+
+
+template<typename T , int R, int C>
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
Eigen::Matrix<fvar<T>,R,C> stan::agrad::divide (const Eigen::Matrix< fvar< T >, R, C > & v,
const fvar< T > & c 
)
+
+inline
+
+ +

Definition at line 23 of file divide.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
double stan::agrad::divide (double x,
double y 
)
+
+inline
+
+ +

Return the division of the first scalar by the second scalar.

+
Parameters
+ + + +
[in]xSpecified vector.
[in]ySpecified scalar.
+
+
+
Returns
Vector divided by the scalar.
+ +

Definition at line 25 of file divide.hpp.

+ +
+
+ +
+
+
+template<typename T , int R, int C>
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
Eigen::Matrix<fvar<T>,R,C> stan::agrad::divide (const Eigen::Matrix< fvar< T >, R, C > & v,
const double c 
)
+
+inline
+
+ +

Definition at line 34 of file divide.hpp.

+ +
+
+ +
+
+
+template<typename T1 , typename T2 , int R, int C>
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
Eigen::Matrix<var,R,C> stan::agrad::divide (const Eigen::Matrix< T1, R, C > & v,
const T2 & c 
)
+
+inline
+
+ +

Return the division of the specified column vector by the specified scalar.

+
Parameters
+ + + +
[in]vSpecified vector.
[in]cSpecified scalar.
+
+
+
Returns
Vector divided by the scalar.
+ +

Definition at line 42 of file divide.hpp.

+ +
+
+ +
+
+
+template<typename T , int R, int C>
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
Eigen::Matrix<fvar<T>,R,C> stan::agrad::divide (const Eigen::Matrix< double, R, C > & v,
const fvar< T > & c 
)
+
+inline
+
+ +

Definition at line 46 of file divide.hpp.

+ +
+
+ +
+
+
+template<typename T , int R1, int C1, int R2, int C2>
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
fvar<T> stan::agrad::dot_product (const Eigen::Matrix< fvar< T >, R1, C1 > & v1,
const Eigen::Matrix< fvar< T >, R2, C2 > & v2 
)
+
+inline
+
+ +

Definition at line 20 of file dot_product.hpp.

+ +
+
+ +
+
+
+template<typename T , int R1, int C1, int R2, int C2>
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
fvar<T> stan::agrad::dot_product (const Eigen::Matrix< fvar< T >, R1, C1 > & v1,
const Eigen::Matrix< double, R2, C2 > & v2 
)
+
+inline
+
+ +

Definition at line 35 of file dot_product.hpp.

+ +
+
+ +
+
+
+template<typename T , int R1, int C1, int R2, int C2>
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
fvar<T> stan::agrad::dot_product (const Eigen::Matrix< double, R1, C1 > & v1,
const Eigen::Matrix< fvar< T >, R2, C2 > & v2 
)
+
+inline
+
+ +

Definition at line 50 of file dot_product.hpp.

+ +
+
+ +
+
+
+template<typename T , int R1, int C1, int R2, int C2>
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
fvar<T> stan::agrad::dot_product (const Eigen::Matrix< fvar< T >, R1, C1 > & v1,
const Eigen::Matrix< fvar< T >, R2, C2 > & v2,
size_type & length 
)
+
+inline
+
+ +

Definition at line 65 of file dot_product.hpp.

+ +
+
+ +
+
+
+template<typename T , int R1, int C1, int R2, int C2>
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
fvar<T> stan::agrad::dot_product (const Eigen::Matrix< fvar< T >, R1, C1 > & v1,
const Eigen::Matrix< double, R2, C2 > & v2,
size_type & length 
)
+
+inline
+
+ +

Definition at line 80 of file dot_product.hpp.

+ +
+
+ +
+
+
+template<typename T , int R1, int C1, int R2, int C2>
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
fvar<T> stan::agrad::dot_product (const Eigen::Matrix< double, R1, C1 > & v1,
const Eigen::Matrix< fvar< T >, R2, C2 > & v2,
size_type & length 
)
+
+inline
+
+ +

Definition at line 95 of file dot_product.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
fvar<T> stan::agrad::dot_product (const std::vector< fvar< T > > & v1,
const std::vector< fvar< T > > & v2 
)
+
+inline
+
+ +

Definition at line 110 of file dot_product.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
fvar<T> stan::agrad::dot_product (const std::vector< double > & v1,
const std::vector< fvar< T > > & v2 
)
+
+inline
+
+ +

Definition at line 122 of file dot_product.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
fvar<T> stan::agrad::dot_product (const std::vector< fvar< T > > & v1,
const std::vector< double > & v2 
)
+
+inline
+
+ +

Definition at line 134 of file dot_product.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
fvar<T> stan::agrad::dot_product (const std::vector< fvar< T > > & v1,
const std::vector< fvar< T > > & v2,
size_type & length 
)
+
+inline
+
+ +

Definition at line 146 of file dot_product.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
fvar<T> stan::agrad::dot_product (const std::vector< double > & v1,
const std::vector< fvar< T > > & v2,
size_type & length 
)
+
+inline
+
+ +

Definition at line 158 of file dot_product.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
fvar<T> stan::agrad::dot_product (const std::vector< fvar< T > > & v1,
const std::vector< double > & v2,
size_type & length 
)
+
+inline
+
+ +

Definition at line 170 of file dot_product.hpp.

+ +
+
+ +
+
+
+template<typename T1 , int R1, int C1, typename T2 , int R2, int C2>
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
boost::enable_if_c<boost::is_same<T1,var>::value || boost::is_same<T2,var>::value, var>::type stan::agrad::dot_product (const Eigen::Matrix< T1, R1, C1 > & v1,
const Eigen::Matrix< T2, R2, C2 > & v2 
)
+
+inline
+
+ +

Returns the dot product.

+
Parameters
+ + + +
[in]v1First column vector.
[in]v2Second column vector.
+
+
+
Returns
Dot product of the vectors.
+
Exceptions
+ + +
std::domain_errorif length of v1 is not equal to length of v2.
+
+
+ +

Definition at line 213 of file dot_product.hpp.

+ +
+
+ +
+
+
+template<typename T1 , typename T2 >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
boost::enable_if_c<boost::is_same<T1,var>::value || boost::is_same<T2,var>::value, var>::type stan::agrad::dot_product (const T1 * v1,
const T2 * v2,
size_t length 
)
+
+inline
+
+ +

Returns the dot product.

+
Parameters
+ + + + +
[in]v1First array.
[in]v2Second array.
[in]lengthLength of both arrays.
+
+
+
Returns
Dot product of the arrays.
+ +

Definition at line 232 of file dot_product.hpp.

+ +
+
+ +
+
+
+template<typename T1 , typename T2 >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
boost::enable_if_c<boost::is_same<T1,var>::value || boost::is_same<T2,var>::value, var>::type stan::agrad::dot_product (const std::vector< T1 > & v1,
const std::vector< T2 > & v2 
)
+
+inline
+
+ +

Returns the dot product.

+
Parameters
+ + + +
[in]v1First vector.
[in]v2Second vector.
+
+
+
Returns
Dot product of the vectors.
+
Exceptions
+ + +
std::domain_errorif sizes of v1 and v2 do not match.
+
+
+ +

Definition at line 248 of file dot_product.hpp.

+ +
+
+ +
+
+
+template<typename T , int R, int C>
+ + + + + +
+ + + + + + + + +
fvar<T> stan::agrad::dot_self (const Eigen::Matrix< fvar< T >, R, C > & v)
+
+inline
+
+ +

Definition at line 16 of file dot_self.hpp.

+ +
+
+ +
+
+
+template<int R, int C>
+ + + + + +
+ + + + + + + + +
var stan::agrad::dot_self (const Eigen::Matrix< var, R, C > & v)
+
+inline
+
+ +

Returns the dot product of a vector with itself.

+
Parameters
+ + +
[in]vVector.
+
+
+
Returns
Dot product of the vector with itself.
+
Template Parameters
+ + + +
Rnumber of rows or Eigen::Dynamic for dynamic; one of R or C must be 1
Cnumber of rows or Eigen::Dyanmic for dynamic; one of R or C must be 1
+
+
+ +

Definition at line 77 of file dot_self.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + +
fvar<T> stan::agrad::erf (const fvar< T > & x)
+
+inline
+
+ +

Definition at line 17 of file erf.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
var stan::agrad::erf (const stan::agrad::vara)
+
+inline
+
+ +

The error function for variables (C99).

+

For non-variable function, see boost::math::erf()

+

The derivative is

+

$\frac{d}{dx} \mbox{erf}(x) = \frac{2}{\sqrt{\pi}} \exp(-x^2)$.

+
Parameters
+ + +
aThe variable.
+
+
+
Returns
Error function applied to the variable.
+ +

Definition at line 37 of file erf.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + +
fvar<T> stan::agrad::erfc (const fvar< T > & x)
+
+inline
+
+ +

Definition at line 17 of file erfc.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
var stan::agrad::erfc (const stan::agrad::vara)
+
+inline
+
+ +

The complementary error function for variables (C99).

+

For non-variable function, see boost::math::erfc().

+

The derivative is

+

$\frac{d}{dx} \mbox{erfc}(x) = - \frac{2}{\sqrt{\pi}} \exp(-x^2)$.

+
Parameters
+ + +
aThe variable.
+
+
+
Returns
Complementary error function applied to the variable.
+ +

Definition at line 37 of file erfc.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + +
fvar<T> stan::agrad::exp (const fvar< T > & x)
+
+inline
+
+ +

Definition at line 15 of file exp.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
var stan::agrad::exp (const var & a)
+
+inline
+
+ +

Return the exponentiation of the specified variable (cmath).

+
Parameters
+ + +
aVariable to exponentiate.
+
+
+
Returns
Exponentiated variable.
+ +

Definition at line 1571 of file agrad_thread_safe.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + +
fvar<T> stan::agrad::exp2 (const fvar< T > & x)
+
+inline
+
+ +

Definition at line 16 of file exp2.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
var stan::agrad::exp2 (const stan::agrad::vara)
+
+inline
+
+ +

Exponentiation base 2 function for variables (C99).

+

For non-variable function, see boost::math::exp2().

+

The derivatie is

+

$\frac{d}{dx} 2^x = (\log 2) 2^x$.

+
Parameters
+ + +
aThe variable.
+
+
+
Returns
Two to the power of the specified variable.
+ +

Definition at line 36 of file exp2.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + +
fvar<T> stan::agrad::expm1 (const fvar< T > & x)
+
+inline
+
+ +

Definition at line 15 of file expm1.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
var stan::agrad::expm1 (const stan::agrad::vara)
+
+inline
+
+ +

The exponentiation of the specified variable minus 1 (C99).

+

For non-variable function, see boost::math::expm1().

+

The derivative is given by

+

$\frac{d}{dx} \exp(a) - 1 = \exp(a)$.

+
Parameters
+ + +
aThe variable.
+
+
+
Returns
Two to the power of the specified variable.
+ +

Definition at line 36 of file expm1.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + +
fvar<T> stan::agrad::fabs (const fvar< T > & x)
+
+inline
+
+ +

Definition at line 15 of file fabs.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
var stan::agrad::fabs (const var & a)
+
+inline
+
+ +

Return the absolute value of the variable (cmath).

+

Choosing an arbitrary value at the non-differentiable point 0,

+

$\frac{d}{dx}|x| = \mbox{sgn}(x)$.

+

where $\mbox{sgn}(x)$ is the signum function, taking values -1 if $x < 0$, 0 if $x == 0$, and 1 if $x == 1$.

+

The function abs() provides the same behavior, with abs() defined in stdlib.h and fabs() defined in cmath.

+
Parameters
+ + +
aInput variable.
+
+
+
Returns
Absolute value of variable.
+

Choosing an arbitrary value at the non-differentiable point 0,

+

$\frac{d}{dx}|x| = \mbox{sgn}(x)$.

+

where $\mbox{sgn}(x)$ is the signum function, taking values -1 if $x < 0$, 0 if $x == 0$, and 1 if $x == 1$.

+

The function abs() provides the same behavior, with abs() defined in stdlib.h and fabs() defined in cmath. The derivative is 0 if the input is 0.

+

Returns std::numeric_limits<double>::quiet_NaN() for NaN inputs.

+
Parameters
+ + +
aInput variable.
+
+
+
Returns
Absolute value of variable.
+ +

Definition at line 1873 of file agrad_thread_safe.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
fvar<T> stan::agrad::falling_factorial (const fvar< T > & x,
const fvar< T > & n 
)
+
+inline
+
+ +

Definition at line 15 of file falling_factorial.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
fvar<T> stan::agrad::falling_factorial (const fvar< T > & x,
const double n 
)
+
+inline
+
+ +

Definition at line 26 of file falling_factorial.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
fvar<T> stan::agrad::falling_factorial (const double x,
const fvar< T > & n 
)
+
+inline
+
+ +

Definition at line 37 of file falling_factorial.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
var stan::agrad::falling_factorial (const var & a,
const double & b 
)
+
+inline
+
+ +

Definition at line 48 of file falling_factorial.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
var stan::agrad::falling_factorial (const var & a,
const var & b 
)
+
+inline
+
+ +

Definition at line 53 of file falling_factorial.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
var stan::agrad::falling_factorial (const double & a,
const var & b 
)
+
+inline
+
+ +

Definition at line 58 of file falling_factorial.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
fvar<T> stan::agrad::fdim (const fvar< T > & x1,
const fvar< T > & x2 
)
+
+inline
+
+ +

Definition at line 15 of file fdim.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
fvar<T> stan::agrad::fdim (const fvar< T > & x1,
const double x2 
)
+
+inline
+
+ +

Definition at line 28 of file fdim.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
fvar<T> stan::agrad::fdim (const double x1,
const fvar< T > & x2 
)
+
+inline
+
+ +

Definition at line 40 of file fdim.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
var stan::agrad::fdim (const stan::agrad::vara,
const stan::agrad::varb 
)
+
+inline
+
+ +

Return the positive difference between the first variable's the value and the second's (C99).

+

See stan::math::fdim() for the double-based version.

+

The partial derivative with respect to the first argument is

+

$\frac{\partial}{\partial x} \mbox{fdim}(x,y) = 0.0$ if $x < y$, and

+

$\frac{\partial}{\partial x} \mbox{fdim}(x,y) = 1.0$ if $x \geq y$.

+

With respect to the second argument, the partial is

+

$\frac{\partial}{\partial y} \mbox{fdim}(x,y) = 0.0$ if $x < y$, and

+

$\frac{\partial}{\partial y} \mbox{fdim}(x,y) = -\lfloor\frac{x}{y}\rfloor$ if $x \geq y$.

+
Parameters
+ + + +
aFirst variable.
bSecond variable.
+
+
+
Returns
The positive difference between the first and second variable.
+ +

Definition at line 68 of file fdim.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
var stan::agrad::fdim (const double & a,
const stan::agrad::varb 
)
+
+inline
+
+ +

Return the positive difference between the first value and the value of the second variable (C99).

+

See fdim(var,var) for definitions of values and derivatives.

+

The derivative with respect to the variable is

+

$\frac{d}{d y} \mbox{fdim}(c,y) = 0.0$ if $c < y$, and

+

$\frac{d}{d y} \mbox{fdim}(c,y) = -\lfloor\frac{c}{y}\rfloor$ if $c \geq y$.

+
Parameters
+ + + +
aFirst value.
bSecond variable.
+
+
+
Returns
The positive difference between the first and second arguments.
+ +

Definition at line 93 of file fdim.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
var stan::agrad::fdim (const stan::agrad::vara,
const double & b 
)
+
+inline
+
+ +

Return the positive difference between the first variable's value and the second value (C99).

+

See fdim(var,var) for definitions of values and derivatives.

+

The derivative with respect to the variable is

+

$\frac{d}{d x} \mbox{fdim}(x,c) = 0.0$ if $x < c$, and

+

$\frac{d}{d x} \mbox{fdim}(x,c) = 1.0$ if $x \geq yc$.

+
Parameters
+ + + +
aFirst value.
bSecond variable.
+
+
+
Returns
The positive difference between the first and second arguments.
+ +

Definition at line 116 of file fdim.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + +
fvar<T> stan::agrad::floor (const fvar< T > & x)
+
+inline
+
+ +

Definition at line 14 of file floor.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
var stan::agrad::floor (const var & a)
+
+inline
+
+ +

Return the floor of the specified variable (cmath).

+

The derivative of the floor function is defined and zero everywhere but at integers, so we set these derivatives to zero for convenience,

+

$\frac{d}{dx} {\lfloor x \rfloor} = 0$.

+

The floor function rounds down. For double values, this is the largest integral value that is not greater than the specified value. Although this function is not differentiable because it is discontinuous at integral values, its gradient is returned as zero everywhere.

+
Parameters
+ + +
aInput variable.
+
+
+
Returns
Floor of the variable.
+ +

Definition at line 1900 of file agrad_thread_safe.hpp.

+ +
+
+ +
+
+
+template<typename T1 , typename T2 , typename T3 >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
fvar<typename stan::return_type<T1,T2,T3>::type> stan::agrad::fma (const fvar< T1 > & x1,
const fvar< T2 > & x2,
const fvar< T3 > & x3 
)
+
+inline
+
+ +

Definition at line 15 of file fma.hpp.

+ +
+
+ +
+
+
+template<typename T1 , typename T2 , typename T3 >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
fvar<typename stan::return_type<T1,T2,T3>::type> stan::agrad::fma (const T1 & x1,
const fvar< T2 > & x2,
const fvar< T3 > & x3 
)
+
+inline
+
+ +

Definition at line 25 of file fma.hpp.

+ +
+
+ +
+
+
+template<typename T1 , typename T2 , typename T3 >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
fvar<typename stan::return_type<T1,T2,T3>::type> stan::agrad::fma (const fvar< T1 > & x1,
const T2 & x2,
const fvar< T3 > & x3 
)
+
+inline
+
+ +

Definition at line 35 of file fma.hpp.

+ +
+
+ +
+
+
+template<typename T1 , typename T2 , typename T3 >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
fvar<typename stan::return_type<T1,T2,T3>::type> stan::agrad::fma (const fvar< T1 > & x1,
const fvar< T2 > & x2,
const T3 & x3 
)
+
+inline
+
+ +

Definition at line 45 of file fma.hpp.

+ +
+
+ +
+
+
+template<typename T1 , typename T2 , typename T3 >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
fvar<typename stan::return_type<T1,T2,T3>::type> stan::agrad::fma (const T1 & x1,
const T2 & x2,
const fvar< T3 > & x3 
)
+
+inline
+
+ +

Definition at line 55 of file fma.hpp.

+ +
+
+ +
+
+
+template<typename T1 , typename T2 , typename T3 >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
fvar<typename stan::return_type<T1,T2,T3>::type> stan::agrad::fma (const fvar< T1 > & x1,
const T2 & x2,
const T3 & x3 
)
+
+inline
+
+ +

Definition at line 65 of file fma.hpp.

+ +
+
+ +
+
+
+template<typename T1 , typename T2 , typename T3 >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
fvar<typename stan::return_type<T1,T2,T3>::type> stan::agrad::fma (const T1 & x1,
const fvar< T2 > & x2,
const T3 & x3 
)
+
+inline
+
+ +

Definition at line 75 of file fma.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
var stan::agrad::fma (const stan::agrad::vara,
const stan::agrad::varb,
const stan::agrad::varc 
)
+
+inline
+
+ +

The fused multiply-add function for three variables (C99).

+

This function returns the product of the first two arguments plus the third argument.

+

See boost::math::fma() for the double-based version.

+

The partial derivatives are

+

$\frac{\partial}{\partial x} (x * y) + z = y$, and

+

$\frac{\partial}{\partial y} (x * y) + z = x$, and

+

$\frac{\partial}{\partial z} (x * y) + z = 1$.

+
Parameters
+ + + + +
aFirst multiplicand.
bSecond multiplicand.
cSummand.
+
+
+
Returns
Product of the multiplicands plus the summand, ($a * $b) + $c.
+ +

Definition at line 98 of file fma.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
var stan::agrad::fma (const stan::agrad::vara,
const stan::agrad::varb,
const double & c 
)
+
+inline
+
+ +

The fused multiply-add function for two variables and a value (C99).

+

This function returns the product of the first two arguments plus the third argument.

+

See boost::math::fma() for the double-based version.

+

The partial derivatives are

+

$\frac{\partial}{\partial x} (x * y) + c = y$, and

+

$\frac{\partial}{\partial y} (x * y) + c = x$.

+
Parameters
+ + + + +
aFirst multiplicand.
bSecond multiplicand.
cSummand.
+
+
+
Returns
Product of the multiplicands plus the summand, ($a * $b) + $c.
+ +

Definition at line 122 of file fma.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
var stan::agrad::fma (const stan::agrad::vara,
const double & b,
const stan::agrad::varc 
)
+
+inline
+
+ +

The fused multiply-add function for a variable, value, and variable (C99).

+

This function returns the product of the first two arguments plus the third argument.

+

See boost::math::fma() for the double-based version.

+

The partial derivatives are

+

$\frac{\partial}{\partial x} (x * c) + z = c$, and

+

$\frac{\partial}{\partial z} (x * c) + z = 1$.

+
Parameters
+ + + + +
aFirst multiplicand.
bSecond multiplicand.
cSummand.
+
+
+
Returns
Product of the multiplicands plus the summand, ($a * $b) + $c.
+ +

Definition at line 146 of file fma.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
var stan::agrad::fma (const stan::agrad::vara,
const double & b,
const double & c 
)
+
+inline
+
+ +

The fused multiply-add function for a variable and two values (C99).

+

This function returns the product of the first two arguments plus the third argument.

+

See boost::math::fma() for the double-based version.

+

The derivative is

+

$\frac{d}{d x} (x * c) + d = c$.

+
Parameters
+ + + + +
aFirst multiplicand.
bSecond multiplicand.
cSummand.
+
+
+
Returns
Product of the multiplicands plus the summand, ($a * $b) + $c.
+ +

Definition at line 168 of file fma.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
var stan::agrad::fma (const double & a,
const stan::agrad::varb,
const double & c 
)
+
+inline
+
+ +

The fused multiply-add function for a value, variable, and value (C99).

+

This function returns the product of the first two arguments plus the third argument.

+

See boost::math::fma() for the double-based version.

+

The derivative is

+

$\frac{d}{d y} (c * y) + d = c$, and

+
Parameters
+ + + + +
aFirst multiplicand.
bSecond multiplicand.
cSummand.
+
+
+
Returns
Product of the multiplicands plus the summand, ($a * $b) + $c.
+ +

Definition at line 190 of file fma.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
var stan::agrad::fma (const double & a,
const double & b,
const stan::agrad::varc 
)
+
+inline
+
+ +

The fused multiply-add function for two values and a variable, and value (C99).

+

This function returns the product of the first two arguments plus the third argument.

+

See boost::math::fma() for the double-based version.

+

The derivative is

+

$\frac{\partial}{\partial z} (c * d) + z = 1$.

+
Parameters
+ + + + +
aFirst multiplicand.
bSecond multiplicand.
cSummand.
+
+
+
Returns
Product of the multiplicands plus the summand, ($a * $b) + $c.
+ +

Definition at line 212 of file fma.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
var stan::agrad::fma (const double & a,
const stan::agrad::varb,
const stan::agrad::varc 
)
+
+inline
+
+ +

The fused multiply-add function for a value and two variables (C99).

+

This function returns the product of the first two arguments plus the third argument.

+

See boost::math::fma() for the double-based version.

+

The partial derivaties are

+

$\frac{\partial}{\partial y} (c * y) + z = c$, and

+

$\frac{\partial}{\partial z} (c * y) + z = 1$.

+
Parameters
+ + + + +
aFirst multiplicand.
bSecond multiplicand.
cSummand.
+
+
+
Returns
Product of the multiplicands plus the summand, ($a * $b) + $c.
+ +

Definition at line 236 of file fma.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
fvar<T> stan::agrad::fmax (const fvar< T > & x1,
const fvar< T > & x2 
)
+
+inline
+
+ +

Definition at line 15 of file fmax.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
var stan::agrad::fmax (const stan::agrad::vara,
const stan::agrad::varb 
)
+
+inline
+
+ +

Returns the maximum of the two variable arguments (C99).

+

See boost::math::fmax() for the double-based version.

+

No new variable implementations are created, with this function defined as if by

+

fmax(a,b) = a if a's value is greater than b's, and .

+

fmax(a,b) = b if b's value is greater than or equal to a's.

+
Parameters
+ + + +
aFirst variable.
bSecond variable.
+
+
+
Returns
If the first variable's value is larger than the second's, the first variable, otherwise the second variable.
+ +

Definition at line 26 of file fmax.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
fvar<T> stan::agrad::fmax (const double x1,
const fvar< T > & x2 
)
+
+inline
+
+ +

Definition at line 29 of file fmax.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
fvar<T> stan::agrad::fmax (const fvar< T > & x1,
const double x2 
)
+
+inline
+
+ +

Definition at line 43 of file fmax.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
var stan::agrad::fmax (const stan::agrad::vara,
const double & b 
)
+
+inline
+
+ +

Returns the maximum of the variable and scalar, promoting the scalar to a variable if it is larger (C99).

+

See boost::math::fmax() for the double-based version.

+

For fmax(a,b), if a's value is greater than b, then a is returned, otherwise a fesh variable implementation wrapping the value b is returned.

+
Parameters
+ + + +
aFirst variable.
bSecond value
+
+
+
Returns
If the first variable's value is larger than or equal to the second value, the first variable, otherwise the second value promoted to a fresh variable.
+ +

Definition at line 47 of file fmax.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
var stan::agrad::fmax (const double & a,
const stan::agrad::varb 
)
+
+inline
+
+ +

Returns the maximum of a scalar and variable, promoting the scalar to a variable if it is larger (C99).

+

See boost::math::fmax() for the double-based version.

+

For fmax(a,b), if a is greater than b's value, then a fresh variable implementation wrapping a is returned, otherwise b is returned.

+
Parameters
+ + + +
aFirst value.
bSecond variable.
+
+
+
Returns
If the first value is larger than the second variable's value, return the first value promoted to a variable, otherwise return the second variable.
+ +

Definition at line 68 of file fmax.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
fvar<T> stan::agrad::fmin (const fvar< T > & x1,
const fvar< T > & x2 
)
+
+inline
+
+ +

Definition at line 15 of file fmin.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
var stan::agrad::fmin (const stan::agrad::vara,
const stan::agrad::varb 
)
+
+inline
+
+ +

Returns the minimum of the two variable arguments (C99).

+

See boost::math::fmin() for the double-based version.

+

For fmin(a,b), if a's value is less than b's, then a is returned, otherwise b is returned.

+
Parameters
+ + + +
aFirst variable.
bSecond variable.
+
+
+
Returns
If the first variable's value is smaller than the second's, the first variable, otherwise the second variable.
+ +

Definition at line 22 of file fmin.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
fvar<T> stan::agrad::fmin (const double x1,
const fvar< T > & x2 
)
+
+inline
+
+ +

Definition at line 29 of file fmin.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
var stan::agrad::fmin (const stan::agrad::vara,
const double & b 
)
+
+inline
+
+ +

Returns the minimum of the variable and scalar, promoting the scalar to a variable if it is larger (C99).

+

See boost::math::fmin() for the double-based version.

+

For fmin(a,b), if a's value is less than b, then a is returned, otherwise a fresh variable wrapping b is returned.

+
Parameters
+ + + +
aFirst variable.
bSecond value
+
+
+
Returns
If the first variable's value is less than or equal to the second value, the first variable, otherwise the second value promoted to a fresh variable.
+ +

Definition at line 41 of file fmin.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
fvar<T> stan::agrad::fmin (const fvar< T > & x1,
const double x2 
)
+
+inline
+
+ +

Definition at line 43 of file fmin.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
var stan::agrad::fmin (const double & a,
const stan::agrad::varb 
)
+
+inline
+
+ +

Returns the minimum of a scalar and variable, promoting the scalar to a variable if it is larger (C99).

+

See boost::math::fmin() for the double-based version.

+

For fmin(a,b), if a is less than b's value, then a fresh variable implementation wrapping a is returned, otherwise b is returned.

+
Parameters
+ + + +
aFirst value.
bSecond variable.
+
+
+
Returns
If the first value is smaller than the second variable's value, return the first value promoted to a variable, otherwise return the second variable.
+ +

Definition at line 62 of file fmin.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
fvar<T> stan::agrad::fmod (const fvar< T > & x1,
const fvar< T > & x2 
)
+
+inline
+
+ +

Definition at line 14 of file fmod.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
fvar<T> stan::agrad::fmod (const fvar< T > & x1,
const double x2 
)
+
+inline
+
+ +

Definition at line 24 of file fmod.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
fvar<T> stan::agrad::fmod (const double x1,
const fvar< T > & x2 
)
+
+inline
+
+ +

Definition at line 32 of file fmod.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
var stan::agrad::fmod (const var & a,
const double b 
)
+
+inline
+
+ +

Return the floating point remainder after dividing the the first variable by the second scalar (cmath).

+

The derivative with respect to the variable is

+

$\frac{d}{d x} \mbox{fmod}(x,c) = \frac{1}{c}$.

+
Parameters
+ + + +
aFirst variable.
bSecond scalar.
+
+
+
Returns
Floating pointer remainder of dividing the first variable by the second scalar.
+ +

Definition at line 81 of file fmod.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
var stan::agrad::fmod (const double a,
const var & b 
)
+
+inline
+
+ +

Return the floating point remainder after dividing the first scalar by the second variable (cmath).

+

The derivative with respect to the variable is

+

$\frac{d}{d y} \mbox{fmod}(c,y) = -\lfloor \frac{c}{y} \rfloor$.

+
Parameters
+ + + +
aFirst scalar.
bSecond variable.
+
+
+
Returns
Floating pointer remainder of dividing first scalar by the second variable.
+ +

Definition at line 98 of file fmod.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
var stan::agrad::fmod (const var & a,
const var & b 
)
+
+inline
+
+ +

Return the floating point remainder after dividing the first variable by the second (cmath).

+

The partial derivatives with respect to the variables are defined everywhere but where $x = y$, but we set these to match other values, with

+

$\frac{\partial}{\partial x} \mbox{fmod}(x,y) = 1$, and

+

$\frac{\partial}{\partial y} \mbox{fmod}(x,y) = -\lfloor \frac{x}{y} \rfloor$.

+
Parameters
+ + + +
aFirst variable.
bSecond variable.
+
+
+
Returns
Floating pointer remainder of dividing the first variable by the second.
+ +

Definition at line 1943 of file agrad_thread_safe.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
var stan::agrad::fmod (const var & a,
const double & b 
)
+
+inline
+
+ +

Return the floating point remainder after dividing the the first variable by the second scalar (cmath).

+

The derivative with respect to the variable is

+

$\frac{d}{d x} \mbox{fmod}(x,c) = \frac{1}{c}$.

+
Parameters
+ + + +
aFirst variable.
bSecond scalar.
+
+
+
Returns
Floating pointer remainder of dividing the first variable by the second scalar.
+ +

Definition at line 1960 of file agrad_thread_safe.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
var stan::agrad::fmod (const double & a,
const var & b 
)
+
+inline
+
+ +

Return the floating point remainder after dividing the first scalar by the second variable (cmath).

+

The derivative with respect to the variable is

+

$\frac{d}{d y} \mbox{fmod}(c,y) = -\lfloor \frac{c}{y} \rfloor$.

+
Parameters
+ + + +
aFirst scalar.
bSecond variable.
+
+
+
Returns
Floating pointer remainder of dividing first scalar by the second variable.
+ +

Definition at line 1977 of file agrad_thread_safe.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
static void stan::agrad::free_memory ()
+
+static
+
+ +

Return all memory used for gradients back to the system.

+ +

Definition at line 49 of file var_stack.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
fvar<T> stan::agrad::gamma_p (const fvar< T > & x1,
const fvar< T > & x2 
)
+
+inline
+
+ +

Definition at line 16 of file gamma_p.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
fvar<T> stan::agrad::gamma_p (const fvar< T > & x1,
const double x2 
)
+
+inline
+
+ +

Definition at line 52 of file gamma_p.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
fvar<T> stan::agrad::gamma_p (const double x1,
const fvar< T > & x2 
)
+
+inline
+
+ +

Definition at line 87 of file gamma_p.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
var stan::agrad::gamma_p (const stan::agrad::vara,
const stan::agrad::varb 
)
+
+inline
+
+ +

Definition at line 91 of file gamma_p.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
var stan::agrad::gamma_p (const stan::agrad::vara,
const double & b 
)
+
+inline
+
+ +

Definition at line 96 of file gamma_p.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
var stan::agrad::gamma_p (const double & a,
const stan::agrad::varb 
)
+
+inline
+
+ +

Definition at line 101 of file gamma_p.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
fvar<T> stan::agrad::gamma_q (const fvar< T > & x1,
const fvar< T > & x2 
)
+
+inline
+
+ +

Definition at line 15 of file gamma_q.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
fvar<T> stan::agrad::gamma_q (const fvar< T > & x1,
const double x2 
)
+
+inline
+
+ +

Definition at line 51 of file gamma_q.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
var stan::agrad::gamma_q (const stan::agrad::vara,
const stan::agrad::varb 
)
+
+inline
+
+ +

Definition at line 61 of file gamma_q.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
var stan::agrad::gamma_q (const stan::agrad::vara,
const double & b 
)
+
+inline
+
+ +

Definition at line 66 of file gamma_q.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
var stan::agrad::gamma_q (const double & a,
const stan::agrad::varb 
)
+
+inline
+
+ +

Definition at line 71 of file gamma_q.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
fvar<T> stan::agrad::gamma_q (const double x1,
const fvar< T > & x2 
)
+
+inline
+
+ +

Definition at line 86 of file gamma_q.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
static void stan::agrad::grad (chainable * vi)
+
+static
+
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
void stan::agrad::grad (var & v,
Eigen::Matrix< var, Eigen::Dynamic, 1 > & x,
Eigen::VectorXd & g 
)
+
+ +

Definition at line 13 of file grad.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
static void stan::agrad::grad (chainable * vi)
+
+static
+
+ +

Compute the gradient for all variables starting from the specified root variable implementation.

+

Does not recover memory. This chainable variable's adjoint is initialized using the method init_dependent() and then the chain rule is applied working down the stack from this chainable and calling each chainable's chain() method in turn.

+
Parameters
+ + +
viVariable implementation for root of partial derivative propagation.
+
+
+ +

Definition at line 106 of file chainable.hpp.

+ +
+
+ +
+
+
+template<typename F >
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
void stan::agrad::grad_tr_mat_times_hessian (const F & f,
const Eigen::Matrix< double, Eigen::Dynamic, 1 > & x,
const Eigen::Matrix< double, Eigen::Dynamic, Eigen::Dynamic > & M,
Eigen::Matrix< double, Eigen::Dynamic, 1 > & grad_tr_MH 
)
+
+ +

Definition at line 321 of file autodiff.hpp.

+ +
+
+ +
+
+
+template<typename F >
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
void stan::agrad::gradient (const F & f,
const Eigen::Matrix< double, Eigen::Dynamic, 1 > & x,
double & fx,
Eigen::Matrix< double, Eigen::Dynamic, 1 > & grad_fx 
)
+
+ +

Calculate the value and the gradient of the specified function at the specified argument.

+

The functor must implement

+

stan::agrad::var operator()(const Eigen::Matrix<stan::agrad::var,Eigen::Dynamic,1>&)

+

using only operations that are defined for stan::agrad::var. This latter constraint usually requires the functions to be defined in terms of the libraries defined in Stan or in terms of functions with appropriately general namespace imports that eventually depend on functions defined in Stan.

+

Time and memory usage is on the order of the size of the fully unfolded expression for the function applied to the argument, independently of dimension.

+
Template Parameters
+ + +
FType of function
+
+
+
Parameters
+ + + + + +
[in]fFunction
[in]xArgument to function
[out]fxFunction applied to argument
[out]grad_fxGradient of function at argument
+
+
+ +

Definition at line 118 of file autodiff.hpp.

+ +
+
+ +
+
+
+template<typename T , typename F >
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
void stan::agrad::gradient (const F & f,
const Eigen::Matrix< T, Eigen::Dynamic, 1 > & x,
T & fx,
Eigen::Matrix< T, Eigen::Dynamic, 1 > & grad_fx 
)
+
+ +

Definition at line 136 of file autodiff.hpp.

+ +
+
+ +
+
+
+template<typename T1 , typename T2 , typename F >
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
void stan::agrad::gradient_dot_vector (const F & f,
const Eigen::Matrix< T1, Eigen::Dynamic, 1 > & x,
const Eigen::Matrix< T2, Eigen::Dynamic, 1 > & v,
T1 & fx,
T1 & grad_fx_dot_v 
)
+
+ +

Definition at line 259 of file autodiff.hpp.

+ +
+
+ +
+
+
+template<class F >
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
double stan::agrad::hessian (const F & f,
const std::vector< double > & x,
const std::vector< double > & v,
std::vector< double > & Hv 
)
+
+ +

Definition at line 20 of file hessian.hpp.

+ +
+
+ +
+
+
+template<typename F >
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
void stan::agrad::hessian (const F & f,
const Eigen::Matrix< double, Eigen::Dynamic, 1 > & x,
double & fx,
Eigen::Matrix< double, Eigen::Dynamic, 1 > & grad,
Eigen::Matrix< double, Eigen::Dynamic, Eigen::Dynamic > & H 
)
+
+ +

Definition at line 207 of file autodiff.hpp.

+ +
+
+ +
+
+
+template<typename T , typename F >
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
void stan::agrad::hessian (const F & f,
const Eigen::Matrix< T, Eigen::Dynamic, 1 > & x,
T & fx,
Eigen::Matrix< T, Eigen::Dynamic, 1 > & grad,
Eigen::Matrix< T, Eigen::Dynamic, Eigen::Dynamic > & H 
)
+
+ +

Definition at line 229 of file autodiff.hpp.

+ +
+
+ +
+
+
+template<typename F >
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
void stan::agrad::hessian_times_vector (const F & f,
const Eigen::Matrix< double, Eigen::Dynamic, 1 > & x,
const Eigen::Matrix< double, Eigen::Dynamic, 1 > & v,
double & fx,
Eigen::Matrix< double, Eigen::Dynamic, 1 > & Hv 
)
+
+ +

Definition at line 281 of file autodiff.hpp.

+ +
+
+ +
+
+
+template<typename T , typename F >
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
void stan::agrad::hessian_times_vector (const F & f,
const Eigen::Matrix< T, Eigen::Dynamic, 1 > & x,
const Eigen::Matrix< T, Eigen::Dynamic, 1 > & v,
T & fx,
Eigen::Matrix< T, Eigen::Dynamic, 1 > & Hv 
)
+
+ +

Definition at line 304 of file autodiff.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
fvar<T> stan::agrad::hypot (const fvar< T > & x1,
const fvar< T > & x2 
)
+
+inline
+
+ +

Definition at line 16 of file hypot.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
fvar<T> stan::agrad::hypot (const fvar< T > & x1,
const double x2 
)
+
+inline
+
+ +

Definition at line 27 of file hypot.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
fvar<T> stan::agrad::hypot (const double x1,
const fvar< T > & x2 
)
+
+inline
+
+ +

Definition at line 37 of file hypot.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
var stan::agrad::hypot (const stan::agrad::vara,
const stan::agrad::varb 
)
+
+inline
+
+ +

Returns the length of the hypoteneuse of a right triangle with sides of the specified lengths (C99).

+

See boost::math::hypot() for double-based function.

+

The partial derivatives are given by

+

$\frac{\partial}{\partial x} \sqrt{x^2 + y^2} = \frac{x}{\sqrt{x^2 + y^2}}$, and

+

$\frac{\partial}{\partial y} \sqrt{x^2 + y^2} = \frac{y}{\sqrt{x^2 + y^2}}$.

+
Parameters
+ + + +
aLength of first side.
bLength of second side.
+
+
+
Returns
Length of hypoteneuse.
+ +

Definition at line 54 of file hypot.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
var stan::agrad::hypot (const stan::agrad::vara,
const double & b 
)
+
+inline
+
+ +

Returns the length of the hypoteneuse of a right triangle with sides of the specified lengths (C99).

+

See boost::math::hypot() for double-based function.

+

The derivative is

+

$\frac{d}{d x} \sqrt{x^2 + c^2} = \frac{x}{\sqrt{x^2 + c^2}}$.

+
Parameters
+ + + +
aLength of first side.
bLength of second side.
+
+
+
Returns
Length of hypoteneuse.
+ +

Definition at line 73 of file hypot.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
var stan::agrad::hypot (const double & a,
const stan::agrad::varb 
)
+
+inline
+
+ +

Returns the length of the hypoteneuse of a right triangle with sides of the specified lengths (C99).

+

See boost::math::hypot() for double-based function.

+

The derivative is

+

$\frac{d}{d y} \sqrt{c^2 + y^2} = \frac{y}{\sqrt{c^2 + y^2}}$.

+
Parameters
+ + + +
aLength of first side.
bLength of second side.
+
+
+
Returns
Length of hypoteneuse.
+ +

Definition at line 92 of file hypot.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
var stan::agrad::ibeta (const var & a,
const var & b,
const var & x 
)
+
+inline
+
+ +

The normalized incomplete beta function of a, b, and x.

+

Used to compute the cumulative density function for the beta distribution.

+

Partial derivatives are those specified by wolfram alpha. The values were checked using both finite differences and by independent code for calculating the derivatives found in JSS (paper by Boik and Robison-Cox).

+
Parameters
+ + + + +
aShape parameter.
bShape parameter.
xRandom variate.
+
+
+
Returns
The normalized incomplete beta function.
+ +

Definition at line 222 of file ibeta.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
var stan::agrad::if_else (bool c,
const var & y_true,
const var & y_false 
)
+
+inline
+
+ +

If the specified condition is true, return the first variable, otherwise return the second variable.

+
Parameters
+ + + + +
cBoolean condition.
y_trueVariable to return if condition is true.
y_falseVariable to return if condition is false.
+
+
+ +

Definition at line 17 of file if_else.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
var stan::agrad::if_else (bool c,
double y_true,
const var & y_false 
)
+
+inline
+
+ +

If the specified condition is true, return a new variable constructed from the first scalar, otherwise return the second variable.

+
Parameters
+ + + + +
cBoolean condition.
y_trueValue to promote to variable and return if condition is true.
y_falseVariable to return if condition is false.
+
+
+ +

Definition at line 29 of file if_else.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
var stan::agrad::if_else (bool c,
const var & y_true,
const double y_false 
)
+
+inline
+
+ +

If the specified condition is true, return the first variable, otherwise return a new variable constructed from the second scalar.

+
Parameters
+ + + + +
cBoolean condition.
y_trueVariable to return if condition is true.
y_falseValue to promote to variable and return if condition is false.
+
+
+ +

Definition at line 44 of file if_else.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
void stan::agrad::initialize_variable (var & variable,
const var & value 
)
+
+inline
+
+ +

Initialize variable to value.

+

(Function may look pointless, but its needed to bottom out recursion.)

+ +

Definition at line 15 of file initialize_variable.hpp.

+ +
+
+ +
+
+
+template<int R, int C>
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
void stan::agrad::initialize_variable (Eigen::Matrix< var, R, C > & matrix,
const var & value 
)
+
+inline
+
+ +

Initialize every cell in the matrix to the specified value.

+ +

Definition at line 24 of file initialize_variable.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
void stan::agrad::initialize_variable (std::vector< T > & variables,
const var & value 
)
+
+inline
+
+ +

Initialize the variables in the standard vector recursively.

+ +

Definition at line 33 of file initialize_variable.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + +
fvar<T> stan::agrad::inv (const fvar< T > & x)
+
+inline
+
+ +

Definition at line 15 of file inv.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
var stan::agrad::inv (const var & a)
+
+inline
+
+ +

Definition at line 24 of file inv.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + +
fvar<T> stan::agrad::inv_cloglog (const fvar< T > & x)
+
+inline
+
+ +

Definition at line 15 of file inv_cloglog.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
var stan::agrad::inv_cloglog (const stan::agrad::vara)
+
+inline
+
+ +

Return the inverse complementary log-log function applied specified variable (stan).

+

See stan::math::inv_cloglog() for the double-based version.

+

The derivative is given by

+

$\frac{d}{dx} \mbox{cloglog}^{-1}(x) = \exp (x - \exp (x))$.

+
Parameters
+ + +
aVariable argument.
+
+
+
Returns
The inverse complementary log-log of the specified argument.
+ +

Definition at line 37 of file inv_cloglog.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + +
fvar<T> stan::agrad::inv_logit (const fvar< T > & x)
+
+inline
+
+ +

Definition at line 15 of file inv_logit.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
var stan::agrad::inv_logit (const stan::agrad::vara)
+
+inline
+
+ +

The inverse logit function for variables (stan).

+

See stan::math::inv_logit() for the double-based version.

+

The derivative of inverse logit is

+

$\frac{d}{dx} \mbox{logit}^{-1}(x) = \mbox{logit}^{-1}(x) (1 - \mbox{logit}^{-1}(x))$.

+
Parameters
+ + +
aArgument variable.
+
+
+
Returns
Inverse logit of argument.
+ +

Definition at line 35 of file inv_logit.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + +
fvar<T> stan::agrad::inv_sqrt (const fvar< T > & x)
+
+inline
+
+ +

Definition at line 15 of file inv_sqrt.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
var stan::agrad::inv_sqrt (const var & a)
+
+inline
+
+ +

Definition at line 24 of file inv_sqrt.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + +
fvar<T> stan::agrad::inv_square (const fvar< T > & x)
+
+inline
+
+ +

Definition at line 15 of file inv_square.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
var stan::agrad::inv_square (const var & a)
+
+inline
+
+ +

Definition at line 24 of file inv_square.hpp.

+ +
+
+ +
+
+
+template<typename T , int R, int C>
+ + + + + +
+ + + + + + + + +
Eigen::Matrix<fvar<T>,R,C> stan::agrad::inverse (const Eigen::Matrix< fvar< T >, R, C > & m)
+
+inline
+
+ +

Definition at line 21 of file inverse.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
bool stan::agrad::is_uninitialized (var x)
+
+inline
+
+ +

Returns true if the specified variable is uninitialized.

+

This overload of the stan::math::is_uninitialized() function delegates the return to the is_uninitialized() method on the specified variable.

+
Parameters
+ + +
xObject to test.
+
+
+
Returns
true if the specified object is uninitialized.
+ +

Definition at line 25 of file is_uninitialized.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
void stan::agrad::jacobian (std::vector< var > & dependents,
std::vector< var > & independents,
std::vector< std::vector< double > > & jacobian 
)
+
+inline
+
+ +

Return the Jacobian of the function producing the specified dependent variables with respect to the specified independent variables.

+

A typical use case would be to take the Jacobian of a function from independent variables to dependentant variables. For instance,

+
+std::vector<var> f(std::vector<var>& x) { ... }
+std::vector<var> x = ...;
+std::vector<var> y = f(x);
+std::vector<std::vector<double> > J;
+jacobian(y,x,J);
+

After executing this code, J will contain the Jacobian, stored as a standard vector of gradients. Specifically, J[m] will be the gradient of y[m] with respect to x, and thus J[m][n] will be dy[m]/dx[n].

+
Parameters
+ + + + +
[in]dependentsDependent (output) variables.
[in]independentsIndepent (input) variables.
[out]jacobianJacobian of the transform.
+
+
+ +

Definition at line 36 of file jacobian.hpp.

+ +
+
+ +
+
+
+template<typename F >
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
void stan::agrad::jacobian (const F & f,
const Eigen::Matrix< double, Eigen::Dynamic, 1 > & x,
Eigen::Matrix< double, Eigen::Dynamic, 1 > & fx,
Eigen::Matrix< double, Eigen::Dynamic, Eigen::Dynamic > & J 
)
+
+ +

Definition at line 154 of file autodiff.hpp.

+ +
+
+ +
+
+
+template<typename T , typename F >
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
void stan::agrad::jacobian (const F & f,
const Eigen::Matrix< T, Eigen::Dynamic, 1 > & x,
Eigen::Matrix< T, Eigen::Dynamic, 1 > & fx,
Eigen::Matrix< T, Eigen::Dynamic, Eigen::Dynamic > & J 
)
+
+ +

Definition at line 179 of file autodiff.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
fvar<T> stan::agrad::lbeta (const fvar< T > & x1,
const fvar< T > & x2 
)
+
+inline
+
+ +

Definition at line 16 of file lbeta.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
fvar<T> stan::agrad::lbeta (const double x1,
const fvar< T > & x2 
)
+
+inline
+
+ +

Definition at line 28 of file lbeta.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
fvar<T> stan::agrad::lbeta (const fvar< T > & x1,
const double x2 
)
+
+inline
+
+ +

Definition at line 38 of file lbeta.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + +
fvar<T> stan::agrad::lgamma (const fvar< T > & x)
+
+inline
+
+ +

Definition at line 15 of file lgamma.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
var stan::agrad::lgamma (const stan::agrad::vara)
+
+inline
+
+ +

The log gamma function for variables (C99).

+

The derivatie is the digamma function,

+

$\frac{d}{dx} \Gamma(x) = \psi^{(0)}(x)$.

+
Parameters
+ + +
aThe variable.
+
+
+
Returns
Log gamma of the variable.
+ +

Definition at line 36 of file lgamma.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
fvar<typename stan::return_type<T,int>::type> stan::agrad::lmgamma (int x1,
const fvar< T > & x2 
)
+
+inline
+
+ +

Definition at line 16 of file lmgamma.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
var stan::agrad::lmgamma (int a,
const stan::agrad::varb 
)
+
+inline
+
+ +

Definition at line 29 of file lmgamma.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + +
fvar<T> stan::agrad::log (const fvar< T > & x)
+
+inline
+
+ +

Definition at line 15 of file log.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
var stan::agrad::log (const var & a)
+
+inline
+
+ +

Return the natural log of the specified variable (cmath).

+

The derivative is defined by

+

$\frac{d}{dx} \log x = \frac{1}{x}$.

+
Parameters
+ + +
aVariable whose log is taken.
+
+
+
Returns
Natural log of variable.
+ +

Definition at line 1585 of file agrad_thread_safe.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + +
fvar<T> stan::agrad::log10 (const fvar< T > & x)
+
+inline
+
+ +

Definition at line 15 of file log10.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
var stan::agrad::log10 (const var & a)
+
+inline
+
+ +

Return the base 10 log of the specified variable (cmath).

+

The derivative is defined by

+

$\frac{d}{dx} \log_{10} x = \frac{1}{x \log 10}$.

+
Parameters
+ + +
aVariable whose log is taken.
+
+
+
Returns
Base 10 log of variable.
+ +

Definition at line 1599 of file agrad_thread_safe.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + +
fvar<T> stan::agrad::log1m (const fvar< T > & x)
+
+inline
+
+ +

Definition at line 16 of file log1m.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
var stan::agrad::log1m (const stan::agrad::vara)
+
+inline
+
+ +

The log (1 - x) function for variables.

+

The derivative is given by

+

$\frac{d}{dx} \log (1 - x) = -\frac{1}{1 - x}$.

+
Parameters
+ + +
aThe variable.
+
+
+
Returns
The variable representing log of 1 minus the variable.
+ +

Definition at line 33 of file log1m.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + +
fvar<T> stan::agrad::log1m_exp (const fvar< T > & x)
+
+inline
+
+ +

Definition at line 17 of file log1m_exp.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
var stan::agrad::log1m_exp (const stan::agrad::vara)
+
+inline
+
+ +

Return the log of 1 minus the exponential of the specified variable.

+ +

Definition at line 31 of file log1m_exp.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + +
fvar<T> stan::agrad::log1m_inv_logit (const fvar< T > & x)
+
+inline
+
+ +

Definition at line 15 of file log1m_inv_logit.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + +
fvar<T> stan::agrad::log1p (const fvar< T > & x)
+
+inline
+
+ +

Definition at line 16 of file log1p.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
var stan::agrad::log1p (const stan::agrad::vara)
+
+inline
+
+ +

The log (1 + x) function for variables (C99).

+

The derivative is given by

+

$\frac{d}{dx} \log (1 + x) = \frac{1}{1 + x}$.

+
Parameters
+ + +
aThe variable.
+
+
+
Returns
The log of 1 plus the variable.
+ +

Definition at line 35 of file log1p.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + +
fvar<T> stan::agrad::log1p_exp (const fvar< T > & x)
+
+inline
+
+ +

Definition at line 15 of file log1p_exp.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
var stan::agrad::log1p_exp (const stan::agrad::vara)
+
+inline
+
+ +

Return the log of 1 plus the exponential of the specified variable.

+ +

Definition at line 29 of file log1p_exp.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + +
fvar<T> stan::agrad::log2 (const fvar< T > & x)
+
+inline
+
+ +

Definition at line 17 of file log2.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
var stan::agrad::log2 (const stan::agrad::vara)
+
+inline
+
+ +

Returns the base 2 logarithm of the specified variable (C99).

+

See stan::math::log2() for the double-based version.

+

The derivative is

+

$\frac{d}{dx} \log_2 x = \frac{1}{x \log 2}$.

+
Parameters
+ + +
aSpecified variable.
+
+
+
Returns
Base 2 logarithm of the variable.
+ +

Definition at line 36 of file log2.hpp.

+ +
+
+ +
+
+
+template<typename T , int R, int C>
+ + + + + +
+ + + + + + + + +
fvar<T> stan::agrad::log_determinant (const Eigen::Matrix< fvar< T >, R, C > & m)
+
+inline
+
+ +

Definition at line 19 of file log_determinant.hpp.

+ +
+
+ +
+
+
+template<int R, int C>
+ + + + + +
+ + + + + + + + +
var stan::agrad::log_determinant (const Eigen::Matrix< var, R, C > & m)
+
+inline
+
+ +

Definition at line 70 of file log_determinant.hpp.

+ +
+
+ +
+
+
+template<int R, int C>
+ + + + + + + + +
var stan::agrad::log_determinant_ldlt (stan::math::LDLT_factor< var, R, C > & A)
+
+ +

Definition at line 48 of file log_determinant_ldlt.hpp.

+ +
+
+ +
+
+
+template<int R, int C>
+ + + + + +
+ + + + + + + + +
var stan::agrad::log_determinant_spd (const Eigen::Matrix< var, R, C > & m)
+
+inline
+
+ +

Definition at line 117 of file log_determinant_spd.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
fvar<T> stan::agrad::log_diff_exp (const fvar< T > & x1,
const fvar< T > & x2 
)
+
+inline
+
+ +

Definition at line 14 of file log_diff_exp.hpp.

+ +
+
+ +
+
+
+template<typename T1 , typename T2 >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
fvar<T2> stan::agrad::log_diff_exp (const T1 & x1,
const fvar< T2 > & x2 
)
+
+inline
+
+ +

Definition at line 25 of file log_diff_exp.hpp.

+ +
+
+ +
+
+
+template<typename T1 , typename T2 >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
fvar<T1> stan::agrad::log_diff_exp (const fvar< T1 > & x1,
const T2 & x2 
)
+
+inline
+
+ +

Definition at line 36 of file log_diff_exp.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
var stan::agrad::log_diff_exp (const stan::agrad::vara,
const stan::agrad::varb 
)
+
+inline
+
+ +

Returns the log sum of exponentials.

+ +

Definition at line 55 of file log_diff_exp.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
var stan::agrad::log_diff_exp (const stan::agrad::vara,
const double & b 
)
+
+inline
+
+ +

Returns the log sum of exponentials.

+ +

Definition at line 62 of file log_diff_exp.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
var stan::agrad::log_diff_exp (const double & a,
const stan::agrad::varb 
)
+
+inline
+
+ +

Returns the log sum of exponentials.

+ +

Definition at line 69 of file log_diff_exp.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
fvar<T> stan::agrad::log_falling_factorial (const fvar< T > & x,
const fvar< T > & n 
)
+
+inline
+
+ +

Definition at line 15 of file log_falling_factorial.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
fvar<T> stan::agrad::log_falling_factorial (const double x,
const fvar< T > & n 
)
+
+inline
+
+ +

Definition at line 25 of file log_falling_factorial.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
fvar<T> stan::agrad::log_falling_factorial (const fvar< T > & x,
const double n 
)
+
+inline
+
+ +

Definition at line 35 of file log_falling_factorial.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
var stan::agrad::log_falling_factorial (const var & a,
const double & b 
)
+
+inline
+
+ +

Definition at line 48 of file log_falling_factorial.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
var stan::agrad::log_falling_factorial (const var & a,
const var & b 
)
+
+inline
+
+ +

Definition at line 53 of file log_falling_factorial.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
var stan::agrad::log_falling_factorial (const double & a,
const var & b 
)
+
+inline
+
+ +

Definition at line 58 of file log_falling_factorial.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + +
fvar<T> stan::agrad::log_inv_logit (const fvar< T > & x)
+
+inline
+
+ +

Definition at line 15 of file log_inv_logit.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
fvar<T> stan::agrad::log_rising_factorial (const fvar< T > & x,
const fvar< T > & n 
)
+
+inline
+
+ +

Definition at line 16 of file log_rising_factorial.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
fvar<T> stan::agrad::log_rising_factorial (const fvar< T > & x,
const double n 
)
+
+inline
+
+ +

Definition at line 27 of file log_rising_factorial.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
fvar<T> stan::agrad::log_rising_factorial (const double x,
const fvar< T > & n 
)
+
+inline
+
+ +

Definition at line 39 of file log_rising_factorial.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
var stan::agrad::log_rising_factorial (const var & a,
const double & b 
)
+
+inline
+
+ +

Definition at line 49 of file log_rising_factorial.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
var stan::agrad::log_rising_factorial (const var & a,
const var & b 
)
+
+inline
+
+ +

Definition at line 54 of file log_rising_factorial.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
var stan::agrad::log_rising_factorial (const double & a,
const var & b 
)
+
+inline
+
+ +

Definition at line 59 of file log_rising_factorial.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + +
Eigen::Matrix<fvar<T>,Eigen::Dynamic,1> stan::agrad::log_softmax (const Eigen::Matrix< fvar< T >, Eigen::Dynamic, 1 > & alpha)
+
+inline
+
+ +

Definition at line 16 of file log_softmax.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
Eigen::Matrix<var,Eigen::Dynamic,1> stan::agrad::log_softmax (const Eigen::Matrix< var, Eigen::Dynamic, 1 > & alpha)
+
+inline
+
+ +

Return the softmax of the specified Eigen vector.

+

Softmax is guaranteed to return a simplex.

+

The gradient calculations are unfolded.

+
Parameters
+ + +
alphaUnconstrained input vector.
+
+
+
Returns
Softmax of the input.
+
Exceptions
+ + +
std::domain_errorIf the input vector is size 0.
+
+
+ +

Definition at line 59 of file log_softmax.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
fvar<T> stan::agrad::log_sum_exp (const fvar< T > & x1,
const fvar< T > & x2 
)
+
+inline
+
+ +

Definition at line 15 of file log_sum_exp.hpp.

+ +
+
+ +
+
+
+template<typename T , int R, int C>
+ + + + + + + + +
fvar<T> stan::agrad::log_sum_exp (const Eigen::Matrix< fvar< T >, R, C > & v)
+
+ +

Definition at line 17 of file log_sum_exp.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
fvar<T> stan::agrad::log_sum_exp (const double x1,
const fvar< T > & x2 
)
+
+inline
+
+ +

Definition at line 26 of file log_sum_exp.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
fvar<T> stan::agrad::log_sum_exp (const fvar< T > & x1,
const double x2 
)
+
+inline
+
+ +

Definition at line 36 of file log_sum_exp.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + + + + +
fvar<T> stan::agrad::log_sum_exp (const std::vector< fvar< T > > & v)
+
+ +

Definition at line 45 of file log_sum_exp.hpp.

+ +
+
+ +
+
+
+template<int R, int C>
+ + + + + +
+ + + + + + + + +
var stan::agrad::log_sum_exp (const Eigen::Matrix< var, R, C > & x)
+
+inline
+
+ +

Returns the log sum of exponentials.

+
Parameters
+ + +
xmatrix
+
+
+ +

Definition at line 59 of file log_sum_exp.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
var stan::agrad::log_sum_exp (const stan::agrad::vara,
const stan::agrad::varb 
)
+
+inline
+
+ +

Returns the log sum of exponentials.

+ +

Definition at line 81 of file log_sum_exp.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
var stan::agrad::log_sum_exp (const stan::agrad::vara,
const double & b 
)
+
+inline
+
+ +

Returns the log sum of exponentials.

+ +

Definition at line 88 of file log_sum_exp.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
var stan::agrad::log_sum_exp (const double & a,
const stan::agrad::varb 
)
+
+inline
+
+ +

Returns the log sum of exponentials.

+ +

Definition at line 95 of file log_sum_exp.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
var stan::agrad::log_sum_exp (const std::vector< var > & x)
+
+inline
+
+ +

Returns the log sum of exponentials.

+ +

Definition at line 102 of file log_sum_exp.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + +
fvar<T> stan::agrad::logit (const fvar< T > & x)
+
+inline
+
+ +

Definition at line 17 of file logit.hpp.

+ +
+
+ +
+
+
+template<typename T , int R1, int C1, int R2, int C2>
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
Eigen::Matrix<fvar<T>,R1,C2> stan::agrad::mdivide_left (const Eigen::Matrix< fvar< T >, R1, C1 > & A,
const Eigen::Matrix< fvar< T >, R2, C2 > & b 
)
+
+inline
+
+ +

Definition at line 25 of file mdivide_left.hpp.

+ +
+
+ +
+
+
+template<typename T , int R1, int C1, int R2, int C2>
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
Eigen::Matrix<fvar<T>,R1,C2> stan::agrad::mdivide_left (const Eigen::Matrix< double, R1, C1 > & A,
const Eigen::Matrix< fvar< T >, R2, C2 > & b 
)
+
+inline
+
+ +

Definition at line 68 of file mdivide_left.hpp.

+ +
+
+ +
+
+
+template<typename T , int R1, int C1, int R2, int C2>
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
Eigen::Matrix<fvar<T>,R1,C2> stan::agrad::mdivide_left (const Eigen::Matrix< fvar< T >, R1, C1 > & A,
const Eigen::Matrix< double, R2, C2 > & b 
)
+
+inline
+
+ +

Definition at line 93 of file mdivide_left.hpp.

+ +
+
+ +
+
+
+template<int R1, int C1, int R2, int C2>
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
Eigen::Matrix<var,R1,C2> stan::agrad::mdivide_left (const Eigen::Matrix< var, R1, C1 > & A,
const Eigen::Matrix< var, R2, C2 > & b 
)
+
+inline
+
+ +

Definition at line 264 of file mdivide_left.hpp.

+ +
+
+ +
+
+
+template<int R1, int C1, int R2, int C2>
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
Eigen::Matrix<var,R1,C2> stan::agrad::mdivide_left (const Eigen::Matrix< var, R1, C1 > & A,
const Eigen::Matrix< double, R2, C2 > & b 
)
+
+inline
+
+ +

Definition at line 287 of file mdivide_left.hpp.

+ +
+
+ +
+
+
+template<int R1, int C1, int R2, int C2>
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
Eigen::Matrix<var,R1,C2> stan::agrad::mdivide_left (const Eigen::Matrix< double, R1, C1 > & A,
const Eigen::Matrix< var, R2, C2 > & b 
)
+
+inline
+
+ +

Definition at line 310 of file mdivide_left.hpp.

+ +
+
+ +
+
+
+template<int R1, int C1, int R2, int C2>
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
Eigen::Matrix<var,R1,C2> stan::agrad::mdivide_left_ldlt (const stan::math::LDLT_factor< var, R1, C1 > & A,
const Eigen::Matrix< var, R2, C2 > & b 
)
+
+inline
+
+ +

Returns the solution of the system Ax=b given an LDLT_factor of A.

+
Parameters
+ + + +
ALDLT_factor
bRight hand side matrix or vector.
+
+
+
Returns
x = b A^-1, solution of the linear system.
+
Exceptions
+ + +
std::domain_errorif rows of b don't match the size of A.
+
+
+ +

Definition at line 243 of file mdivide_left_ldlt.hpp.

+ +
+
+ +
+
+
+template<int R1, int C1, int R2, int C2>
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
Eigen::Matrix<var,R1,C2> stan::agrad::mdivide_left_ldlt (const stan::math::LDLT_factor< var, R1, C1 > & A,
const Eigen::Matrix< double, R2, C2 > & b 
)
+
+inline
+
+ +

Returns the solution of the system Ax=b given an LDLT_factor of A.

+
Parameters
+ + + +
ALDLT_factor
bRight hand side matrix or vector.
+
+
+
Returns
x = b A^-1, solution of the linear system.
+
Exceptions
+ + +
std::domain_errorif rows of b don't match the size of A.
+
+
+ +

Definition at line 268 of file mdivide_left_ldlt.hpp.

+ +
+
+ +
+
+
+template<int R1, int C1, int R2, int C2>
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
Eigen::Matrix<var,R1,C2> stan::agrad::mdivide_left_ldlt (const stan::math::LDLT_factor< double, R1, C1 > & A,
const Eigen::Matrix< var, R2, C2 > & b 
)
+
+inline
+
+ +

Returns the solution of the system Ax=b given an LDLT_factor of A.

+
Parameters
+ + + +
ALDLT_factor
bRight hand side matrix or vector.
+
+
+
Returns
x = b A^-1, solution of the linear system.
+
Exceptions
+ + +
std::domain_errorif rows of b don't match the size of A.
+
+
+ +

Definition at line 293 of file mdivide_left_ldlt.hpp.

+ +
+
+ +
+
+
+template<int R1, int C1, int R2, int C2>
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
Eigen::Matrix<var,R1,C2> stan::agrad::mdivide_left_spd (const Eigen::Matrix< var, R1, C1 > & A,
const Eigen::Matrix< var, R2, C2 > & b 
)
+
+inline
+
+ +

Definition at line 244 of file mdivide_left_spd.hpp.

+ +
+
+ +
+
+
+template<int R1, int C1, int R2, int C2>
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
Eigen::Matrix<var,R1,C2> stan::agrad::mdivide_left_spd (const Eigen::Matrix< var, R1, C1 > & A,
const Eigen::Matrix< double, R2, C2 > & b 
)
+
+inline
+
+ +

Definition at line 267 of file mdivide_left_spd.hpp.

+ +
+
+ +
+
+
+template<int R1, int C1, int R2, int C2>
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
Eigen::Matrix<var,R1,C2> stan::agrad::mdivide_left_spd (const Eigen::Matrix< double, R1, C1 > & A,
const Eigen::Matrix< var, R2, C2 > & b 
)
+
+inline
+
+ +

Definition at line 290 of file mdivide_left_spd.hpp.

+ +
+
+ +
+
+
+template<int TriView, int R1, int C1, int R2, int C2>
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
Eigen::Matrix<var,R1,C2> stan::agrad::mdivide_left_tri (const Eigen::Matrix< var, R1, C1 > & A,
const Eigen::Matrix< var, R2, C2 > & b 
)
+
+inline
+
+ +

Definition at line 296 of file mdivide_left_tri.hpp.

+ +
+
+ +
+
+
+template<int TriView, int R1, int C1, int R2, int C2>
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
Eigen::Matrix<var,R1,C2> stan::agrad::mdivide_left_tri (const Eigen::Matrix< double, R1, C1 > & A,
const Eigen::Matrix< var, R2, C2 > & b 
)
+
+inline
+
+ +

Definition at line 318 of file mdivide_left_tri.hpp.

+ +
+
+ +
+
+
+template<int TriView, int R1, int C1, int R2, int C2>
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
Eigen::Matrix<var,R1,C2> stan::agrad::mdivide_left_tri (const Eigen::Matrix< var, R1, C1 > & A,
const Eigen::Matrix< double, R2, C2 > & b 
)
+
+inline
+
+ +

Definition at line 340 of file mdivide_left_tri.hpp.

+ +
+
+ +
+
+
+template<typename T , int R1, int C1, int R2, int C2>
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
Eigen::Matrix<fvar<T>,R1,C1> stan::agrad::mdivide_left_tri_low (const Eigen::Matrix< fvar< T >, R1, C1 > & A,
const Eigen::Matrix< fvar< T >, R2, C2 > & b 
)
+
+inline
+
+ +

Definition at line 21 of file mdivide_left_tri_low.hpp.

+ +
+
+ +
+
+
+template<typename T , int R1, int C1, int R2, int C2>
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
Eigen::Matrix<fvar<T>,R1,C1> stan::agrad::mdivide_left_tri_low (const Eigen::Matrix< double, R1, C1 > & A,
const Eigen::Matrix< fvar< T >, R2, C2 > & b 
)
+
+inline
+
+ +

Definition at line 65 of file mdivide_left_tri_low.hpp.

+ +
+
+ +
+
+
+template<typename T , int R1, int C1, int R2, int C2>
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
Eigen::Matrix<fvar<T>,R1,C1> stan::agrad::mdivide_left_tri_low (const Eigen::Matrix< fvar< T >, R1, C1 > & A,
const Eigen::Matrix< double, R2, C2 > & b 
)
+
+inline
+
+ +

Definition at line 104 of file mdivide_left_tri_low.hpp.

+ +
+
+ +
+
+
+template<typename T , int R1, int C1, int R2, int C2>
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
Eigen::Matrix<fvar<T>,R1,C2> stan::agrad::mdivide_right (const Eigen::Matrix< fvar< T >, R1, C1 > & A,
const Eigen::Matrix< fvar< T >, R2, C2 > & b 
)
+
+inline
+
+ +

Definition at line 20 of file mdivide_right.hpp.

+ +
+
+ +
+
+
+template<typename T , int R1, int C1, int R2, int C2>
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
Eigen::Matrix<fvar<T>,R1,C2> stan::agrad::mdivide_right (const Eigen::Matrix< fvar< T >, R1, C1 > & A,
const Eigen::Matrix< double, R2, C2 > & b 
)
+
+inline
+
+ +

Definition at line 63 of file mdivide_right.hpp.

+ +
+
+ +
+
+
+template<typename T , int R1, int C1, int R2, int C2>
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
Eigen::Matrix<fvar<T>,R1,C2> stan::agrad::mdivide_right (const Eigen::Matrix< double, R1, C1 > & A,
const Eigen::Matrix< fvar< T >, R2, C2 > & b 
)
+
+inline
+
+ +

Definition at line 89 of file mdivide_right.hpp.

+ +
+
+ +
+
+
+template<typename T , int R1, int C1, int R2, int C2>
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
Eigen::Matrix<fvar<T>,R1,C1> stan::agrad::mdivide_right_tri_low (const Eigen::Matrix< fvar< T >, R1, C1 > & A,
const Eigen::Matrix< fvar< T >, R2, C2 > & b 
)
+
+inline
+
+ +

Definition at line 21 of file mdivide_right_tri_low.hpp.

+ +
+
+ +
+
+
+template<typename T , int R1, int C1, int R2, int C2>
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
Eigen::Matrix<fvar<T>,R1,C2> stan::agrad::mdivide_right_tri_low (const Eigen::Matrix< fvar< T >, R1, C1 > & A,
const Eigen::Matrix< double, R2, C2 > & b 
)
+
+inline
+
+ +

Definition at line 65 of file mdivide_right_tri_low.hpp.

+ +
+
+ +
+
+
+template<typename T , int R1, int C1, int R2, int C2>
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
Eigen::Matrix<fvar<T>,R1,C2> stan::agrad::mdivide_right_tri_low (const Eigen::Matrix< double, R1, C1 > & A,
const Eigen::Matrix< fvar< T >, R2, C2 > & b 
)
+
+inline
+
+ +

Definition at line 99 of file mdivide_right_tri_low.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
fvar<T> stan::agrad::modified_bessel_first_kind (int v,
const fvar< T > & z 
)
+
+inline
+
+ +

Definition at line 15 of file modified_bessel_first_kind.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
var stan::agrad::modified_bessel_first_kind (const int & v,
const var & a 
)
+
+inline
+
+ +

Definition at line 24 of file modified_bessel_first_kind.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
fvar<T> stan::agrad::modified_bessel_second_kind (int v,
const fvar< T > & z 
)
+
+inline
+
+ +

Definition at line 15 of file modified_bessel_second_kind.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
var stan::agrad::modified_bessel_second_kind (const int & v,
const var & a 
)
+
+inline
+
+ +

Definition at line 24 of file modified_bessel_second_kind.hpp.

+ +
+
+ +
+
+
+template<typename T , int R1, int C1>
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
Eigen::Matrix<fvar<T>,R1,C1> stan::agrad::multiply (const Eigen::Matrix< fvar< T >, R1, C1 > & m,
const fvar< T > & c 
)
+
+inline
+
+ +

Definition at line 21 of file multiply.hpp.

+ +
+
+ +
+
+
+template<typename T1 , typename T2 >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
boost::enable_if_c< (boost::is_scalar<T1>::value || boost::is_same<T1,var>::value) && (boost::is_scalar<T2>::value || boost::is_same<T2,var>::value), typename boost::math::tools::promote_args<T1,T2>::type>::type stan::agrad::multiply (const T1 & v,
const T2 & c 
)
+
+inline
+
+ +

Return the product of two scalars.

+
Parameters
+ + + +
[in]vFirst scalar.
[in]cSpecified scalar.
+
+
+
Returns
Product of scalars.
+ +

Definition at line 33 of file multiply.hpp.

+ +
+
+ +
+
+
+template<typename T , int R2, int C2>
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
Eigen::Matrix<fvar<T>, R2, C2> stan::agrad::multiply (const Eigen::Matrix< fvar< T >, R2, C2 > & m,
const double c 
)
+
+inline
+
+ +

Definition at line 33 of file multiply.hpp.

+ +
+
+ +
+
+
+template<typename T1 , typename T2 , int R2, int C2>
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
Eigen::Matrix<var,R2,C2> stan::agrad::multiply (const T1 & c,
const Eigen::Matrix< T2, R2, C2 > & m 
)
+
+inline
+
+ +

Return the product of scalar and matrix.

+
Parameters
+ + + +
[in]cSpecified scalar.
[in]mMatrix.
+
+
+
Returns
Product of scalar and matrix.
+ +

Definition at line 44 of file multiply.hpp.

+ +
+
+ +
+
+
+template<typename T , int R1, int C1>
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
Eigen::Matrix<fvar<T>,R1,C1> stan::agrad::multiply (const Eigen::Matrix< double, R1, C1 > & m,
const fvar< T > & c 
)
+
+inline
+
+ +

Definition at line 46 of file multiply.hpp.

+ +
+
+ +
+
+
+template<typename T1 , int R1, int C1, typename T2 >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
Eigen::Matrix<var,R1,C1> stan::agrad::multiply (const Eigen::Matrix< T1, R1, C1 > & m,
const T2 & c 
)
+
+inline
+
+ +

Return the product of scalar and matrix.

+
Parameters
+ + + +
[in]mMatrix.
[in]cSpecified scalar.
+
+
+
Returns
Product of scalar and matrix.
+ +

Definition at line 58 of file multiply.hpp.

+ +
+
+ +
+
+
+template<typename T , int R1, int C1>
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
Eigen::Matrix<fvar<T>,R1,C1> stan::agrad::multiply (const fvar< T > & c,
const Eigen::Matrix< fvar< T >, R1, C1 > & m 
)
+
+inline
+
+ +

Definition at line 59 of file multiply.hpp.

+ +
+
+ +
+
+
+template<typename T , int R1, int C1>
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
Eigen::Matrix<fvar<T>,R1,C1> stan::agrad::multiply (const double c,
const Eigen::Matrix< fvar< T >, R1, C1 > & m 
)
+
+inline
+
+ +

Definition at line 66 of file multiply.hpp.

+ +
+
+ +
+
+
+template<typename T , int R1, int C1>
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
Eigen::Matrix<fvar<T>,R1,C1> stan::agrad::multiply (const fvar< T > & c,
const Eigen::Matrix< double, R1, C1 > & m 
)
+
+inline
+
+ +

Definition at line 73 of file multiply.hpp.

+ +
+
+ +
+
+
+template<typename T1 , int R1, int C1, typename T2 , int R2, int C2>
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
boost::enable_if_c< boost::is_same<T1,var>::value || boost::is_same<T2,var>::value, Eigen::Matrix<var,R1,C2> >::type stan::agrad::multiply (const Eigen::Matrix< T1, R1, C1 > & m1,
const Eigen::Matrix< T2, R2, C2 > & m2 
)
+
+inline
+
+ +

Return the product of the specified matrices.

+

The number of columns in the first matrix must be the same as the number of rows in the second matrix.

+
Parameters
+ + + +
[in]m1First matrix.
[in]m2Second matrix.
+
+
+
Returns
The product of the first and second matrices.
+
Exceptions
+ + +
std::domain_errorif the number of columns of m1 does not match the number of rows of m2.
+
+
+ +

Definition at line 78 of file multiply.hpp.

+ +
+
+ +
+
+
+template<typename T , int R1, int C1, int R2, int C2>
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
Eigen::Matrix<fvar<T>,R1,C2> stan::agrad::multiply (const Eigen::Matrix< fvar< T >, R1, C1 > & m1,
const Eigen::Matrix< fvar< T >, R2, C2 > & m2 
)
+
+inline
+
+ +

Definition at line 80 of file multiply.hpp.

+ +
+
+ +
+
+
+template<typename T , int R1, int C1, int R2, int C2>
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
Eigen::Matrix<fvar<T>,R1,C2> stan::agrad::multiply (const Eigen::Matrix< fvar< T >, R1, C1 > & m1,
const Eigen::Matrix< double, R2, C2 > & m2 
)
+
+inline
+
+ +

Definition at line 97 of file multiply.hpp.

+ +
+
+ +
+
+
+template<typename T , int R1, int C1, int R2, int C2>
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
Eigen::Matrix<fvar<T>,R1,C2> stan::agrad::multiply (const Eigen::Matrix< double, R1, C1 > & m1,
const Eigen::Matrix< fvar< T >, R2, C2 > & m2 
)
+
+inline
+
+ +

Definition at line 115 of file multiply.hpp.

+ +
+
+ +
+
+
+template<typename T1 , int C1, typename T2 , int R2>
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
boost::enable_if_c< boost::is_same<T1,var>::value || boost::is_same<T2,var>::value, var >::type stan::agrad::multiply (const Eigen::Matrix< T1, 1, C1 > & rv,
const Eigen::Matrix< T2, R2, 1 > & v 
)
+
+inline
+
+ +

Return the scalar product of the specified row vector and specified column vector.

+

The return is the same as the dot product. The two vectors must be the same size.

+
Parameters
+ + + +
[in]rvRow vector.
[in]vColumn vector.
+
+
+
Returns
Scalar result of multiplying row vector by column vector.
+
Exceptions
+ + +
std::domain_errorif rv and v are not the same size
+
+
+ +

Definition at line 124 of file multiply.hpp.

+ +
+
+ +
+
+
+template<typename T , int C1, int R2>
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
fvar<T> stan::agrad::multiply (const Eigen::Matrix< fvar< T >, 1, C1 > & rv,
const Eigen::Matrix< fvar< T >, R2, 1 > & v 
)
+
+inline
+
+ +

Definition at line 133 of file multiply.hpp.

+ +
+
+ +
+
+
+template<typename T , int C1, int R2>
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
fvar<T> stan::agrad::multiply (const Eigen::Matrix< fvar< T >, 1, C1 > & rv,
const Eigen::Matrix< double, R2, 1 > & v 
)
+
+inline
+
+ +

Definition at line 143 of file multiply.hpp.

+ +
+
+ +
+
+
+template<typename T , int C1, int R2>
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
fvar<T> stan::agrad::multiply (const Eigen::Matrix< double, 1, C1 > & rv,
const Eigen::Matrix< fvar< T >, R2, 1 > & v 
)
+
+inline
+
+ +

Definition at line 153 of file multiply.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
fvar<T> stan::agrad::multiply_log (const fvar< T > & x1,
const fvar< T > & x2 
)
+
+inline
+
+ +

Definition at line 15 of file multiply_log.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
fvar<T> stan::agrad::multiply_log (const double x1,
const fvar< T > & x2 
)
+
+inline
+
+ +

Definition at line 25 of file multiply_log.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
fvar<T> stan::agrad::multiply_log (const fvar< T > & x1,
const double x2 
)
+
+inline
+
+ +

Definition at line 35 of file multiply_log.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
var stan::agrad::multiply_log (const var & a,
const var & b 
)
+
+inline
+
+ +

Return the value of a*log(b).

+

When both a and b are 0, the value returned is 0. The partial deriviative with respect to a is log(b). The partial deriviative with respect to b is a/b. When a and b are both 0, this is set to Inf.

+
Parameters
+ + + +
aFirst variable.
bSecond variable.
+
+
+
Returns
Value of a*log(b)
+ +

Definition at line 66 of file multiply_log.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
var stan::agrad::multiply_log (const var & a,
const double b 
)
+
+inline
+
+ +

Return the value of a*log(b).

+

When both a and b are 0, the value returned is 0. The partial deriviative with respect to a is log(b).

+
Parameters
+ + + +
aFirst variable.
bSecond scalar.
+
+
+
Returns
Value of a*log(b)
+ +

Definition at line 79 of file multiply_log.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
var stan::agrad::multiply_log (const double a,
const var & b 
)
+
+inline
+
+ +

Return the value of a*log(b).

+

When both a and b are 0, the value returned is 0. The partial deriviative with respect to b is a/b. When a and b are both 0, this is set to Inf.

+
Parameters
+ + + +
aFirst scalar.
bSecond variable.
+
+
+
Returns
Value of a*log(b)
+ +

Definition at line 93 of file multiply_log.hpp.

+ +
+
+ +
+
+
+template<typename T , int R, int C>
+ + + + + +
+ + + + + + + + +
Eigen::Matrix<fvar<T>,R,R> stan::agrad::multiply_lower_tri_self_transpose (const Eigen::Matrix< fvar< T >, R, C > & m)
+
+inline
+
+ +

Definition at line 17 of file multiply_lower_tri_self_transpose.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
matrix_v stan::agrad::multiply_lower_tri_self_transpose (const matrix_v & L)
+
+inline
+
+ +

Definition at line 21 of file multiply_lower_tri_self_transpose.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
bool stan::agrad::operator! (const var & a)
+
+inline
+
+ +

Prefix logical negation for the value of variables (C++).

+

The expression (!a) is equivalent to negating the scalar value of the variable a.

+

Note that this is the only logical operator defined for variables. Overridden logical conjunction (&&) and disjunction (||) operators do not apply the same "short circuit" rules as the built-in logical operators.

+
Parameters
+ + +
aVariable to negate.
+
+
+
Returns
True if variable is non-zero.
+ +

Definition at line 1265 of file agrad_thread_safe.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
bool stan::agrad::operator!= (const fvar< T > & x,
const fvar< T > & y 
)
+
+inline
+
+ +

Definition at line 14 of file operator_not_equal.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
bool stan::agrad::operator!= (const fvar< T > & x,
double y 
)
+
+inline
+
+ +

Definition at line 21 of file operator_not_equal.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
bool stan::agrad::operator!= (double x,
const fvar< T > & y 
)
+
+inline
+
+ +

Definition at line 28 of file operator_not_equal.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
bool stan::agrad::operator!= (const var & a,
const double b 
)
+
+inline
+
+ +

Inequality operator comparing a variable's value and a double (C++).

+
Parameters
+ + + +
aFirst variable.
bSecond value.
+
+
+
Returns
True if the first variable's value is not the same as the second value.
+ +

Definition at line 30 of file operator_not_equal.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
bool stan::agrad::operator!= (const double a,
const var & b 
)
+
+inline
+
+ +

Inequality operator comparing a double and a variable's value (C++).

+
Parameters
+ + + +
aFirst value.
bSecond variable.
+
+
+
Returns
True if the first value is not the same as the second variable's value.
+ +

Definition at line 43 of file operator_not_equal.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
bool stan::agrad::operator!= (const var & a,
const var & b 
)
+
+inline
+
+ +

Inequality operator comparing two variables' values (C++).

+
Parameters
+ + + +
aFirst variable.
bSecond variable.
+
+
+
Returns
True if the first variable's value is not the same as the second's.
+ +

Definition at line 1072 of file agrad_thread_safe.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
bool stan::agrad::operator!= (const var & a,
const double & b 
)
+
+inline
+
+ +

Inequality operator comparing a variable's value and a double (C++).

+
Parameters
+ + + +
aFirst variable.
bSecond value.
+
+
+
Returns
True if the first variable's value is not the same as the second value.
+ +

Definition at line 1085 of file agrad_thread_safe.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
bool stan::agrad::operator!= (const double & a,
const var & b 
)
+
+inline
+
+ +

Inequality operator comparing a double and a variable's value (C++).

+
Parameters
+ + + +
aFirst value.
bSecond variable.
+
+
+
Returns
True if the first value is not the same as the second variable's value.
+ +

Definition at line 1098 of file agrad_thread_safe.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
fvar<T> stan::agrad::operator* (const fvar< T > & x1,
const fvar< T > & x2 
)
+
+inline
+
+ +

Definition at line 14 of file operator_multiplication.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
fvar<T> stan::agrad::operator* (const double x1,
const fvar< T > & x2 
)
+
+inline
+
+ +

Definition at line 22 of file operator_multiplication.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
fvar<T> stan::agrad::operator* (const fvar< T > & x1,
const double x2 
)
+
+inline
+
+ +

Definition at line 29 of file operator_multiplication.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
var stan::agrad::operator* (const var & a,
const double b 
)
+
+inline
+
+ +

Multiplication operator for a variable and a scalar (C++).

+

The partial derivative for the variable is

+

$\frac{\partial}{\partial x} (x * c) = c$, and

+
Parameters
+ + + +
aVariable operand.
bScalar operand.
+
+
+
Returns
Variable result of multiplying operands.
+ +

Definition at line 62 of file operator_multiplication.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
var stan::agrad::operator* (const double a,
const var & b 
)
+
+inline
+
+ +

Multiplication operator for a scalar and a variable (C++).

+

The partial derivative for the variable is

+

$\frac{\partial}{\partial y} (c * y) = c$.

+
Parameters
+ + + +
aScalar operand.
bVariable operand.
+
+
+
Returns
Variable result of multiplying the operands.
+ +

Definition at line 79 of file operator_multiplication.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
var stan::agrad::operator* (const var & a,
const var & b 
)
+
+inline
+
+ +

Multiplication operator for two variables (C++).

+

The partial derivatives are

+

$\frac{\partial}{\partial x} (x * y) = y$, and

+

$\frac{\partial}{\partial y} (x * y) = x$.

+
Parameters
+ + + +
aFirst variable operand.
bSecond variable operand.
+
+
+
Returns
Variable result of multiplying operands.
+ +

Definition at line 1411 of file agrad_thread_safe.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
var stan::agrad::operator* (const var & a,
const double & b 
)
+
+inline
+
+ +

Multiplication operator for a variable and a scalar (C++).

+

The partial derivative for the variable is

+

$\frac{\partial}{\partial x} (x * c) = c$, and

+
Parameters
+ + + +
aVariable operand.
bScalar operand.
+
+
+
Returns
Variable result of multiplying operands.
+ +

Definition at line 1426 of file agrad_thread_safe.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
var stan::agrad::operator* (const double & a,
const var & b 
)
+
+inline
+
+ +

Multiplication operator for a scalar and a variable (C++).

+

The partial derivative for the variable is

+

$\frac{\partial}{\partial y} (c * y) = c$.

+
Parameters
+ + + +
aScalar operand.
bVariable operand.
+
+
+
Returns
Variable result of multiplying the operands.
+ +

Definition at line 1441 of file agrad_thread_safe.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
fvar<T> stan::agrad::operator+ (const fvar< T > & x1,
const fvar< T > & x2 
)
+
+inline
+
+ +

Definition at line 14 of file operator_addition.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
fvar<T> stan::agrad::operator+ (const double x1,
const fvar< T > & x2 
)
+
+inline
+
+ +

Definition at line 21 of file operator_addition.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
fvar<T> stan::agrad::operator+ (const fvar< T > & x1,
const double x2 
)
+
+inline
+
+ +

Definition at line 28 of file operator_addition.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
var stan::agrad::operator+ (const var & a,
const double b 
)
+
+inline
+
+ +

Addition operator for variable and scalar (C++).

+

The derivative with respect to the variable is

+

$\frac{d}{dx} (x + c) = 1$.

+
Parameters
+ + + +
aFirst variable operand.
bSecond scalar operand.
+
+
+
Returns
Result of adding variable and scalar.
+ +

Definition at line 62 of file operator_addition.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
var stan::agrad::operator+ (const double a,
const var & b 
)
+
+inline
+
+ +

Addition operator for scalar and variable (C++).

+

The derivative with respect to the variable is

+

$\frac{d}{dy} (c + y) = 1$.

+
Parameters
+ + + +
aFirst scalar operand.
bSecond variable operand.
+
+
+
Returns
Result of adding variable and scalar.
+ +

Definition at line 79 of file operator_addition.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
var stan::agrad::operator+ (const var & a)
+
+inline
+
+ +

Unary plus operator for variables (C++).

+

The function simply returns its input, because

+

$\frac{d}{dx} +x = \frac{d}{dx} x = 1$.

+

The effect of unary plus on a built-in C++ scalar type is integer promotion. Because variables are all double-precision floating point already, promotion is not necessary.

+
Parameters
+ + +
aArgument variable.
+
+
+
Returns
The input reference.
+ +

Definition at line 1286 of file agrad_thread_safe.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
var stan::agrad::operator+ (const var & a,
const var & b 
)
+
+inline
+
+ +

Addition operator for variables (C++).

+

The partial derivatives are defined by

+

$\frac{\partial}{\partial x} (x+y) = 1$, and

+

$\frac{\partial}{\partial y} (x+y) = 1$.

+
Parameters
+ + + +
aFirst variable operand.
bSecond variable operand.
+
+
+
Returns
Variable result of adding two variables.
+ +

Definition at line 1315 of file agrad_thread_safe.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
var stan::agrad::operator+ (const var & a,
const double & b 
)
+
+inline
+
+ +

Addition operator for variable and scalar (C++).

+

The derivative with respect to the variable is

+

$\frac{d}{dx} (x + c) = 1$.

+
Parameters
+ + + +
aFirst variable operand.
bSecond scalar operand.
+
+
+
Returns
Result of adding variable and scalar.
+ +

Definition at line 1331 of file agrad_thread_safe.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
var stan::agrad::operator+ (const double & a,
const var & b 
)
+
+inline
+
+ +

Addition operator for scalar and variable (C++).

+

The derivative with respect to the variable is

+

$\frac{d}{dy} (c + y) = 1$.

+
Parameters
+ + + +
aFirst scalar operand.
bSecond variable operand.
+
+
+
Returns
Result of adding variable and scalar.
+ +

Definition at line 1346 of file agrad_thread_safe.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
var & stan::agrad::operator++ (var & a)
+
+inline
+
+ +

Prefix increment operator for variables (C++).

+

Following C++, (++a) is defined to behave exactly as (a = a + 1.0) does, but is faster and uses less memory. In particular, the result is an assignable lvalue.

+
Parameters
+ + +
aVariable to increment.
+
+
+
Returns
Reference the result of incrementing this input variable.
+ +

Definition at line 1502 of file agrad_thread_safe.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
var stan::agrad::operator++ (var & a,
int  
)
+
+inline
+
+ +

Postfix increment operator for variables (C++).

+

Following C++, the expression (a++) i s defined to behave like the sequence of operations

+

var temp = a; a = a + 1.0; return temp;

+
Parameters
+ + + +
aVariable to increment.
dummyUnused dummy variable used to distinguish postfix operator from prefix operator.
+
+
+
Returns
Input variable.
+

Following C++, the expression (a++) is defined to behave like the sequence of operations

+

var temp = a; a = a + 1.0; return temp;

+
Parameters
+ + +
aVariable to increment.
+
+
+
Returns
Input variable.
+ +

Definition at line 1520 of file agrad_thread_safe.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
fvar<T> stan::agrad::operator- (const fvar< T > & x1,
const fvar< T > & x2 
)
+
+inline
+
+ +

Definition at line 14 of file operator_subtraction.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + +
fvar<T> stan::agrad::operator- (const fvar< T > & x)
+
+inline
+
+ +

Definition at line 14 of file operator_unary_minus.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
fvar<T> stan::agrad::operator- (const double x1,
const fvar< T > & x2 
)
+
+inline
+
+ +

Definition at line 21 of file operator_subtraction.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
fvar<T> stan::agrad::operator- (const fvar< T > & x1,
const double x2 
)
+
+inline
+
+ +

Definition at line 28 of file operator_subtraction.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
var stan::agrad::operator- (const var & a,
const double b 
)
+
+inline
+
+ +

Subtraction operator for variable and scalar (C++).

+

The derivative for the variable is

+

$\frac{\partial}{\partial x} (x-c) = 1$, and

+
Parameters
+ + + +
aFirst variable operand.
bSecond scalar operand.
+
+
+
Returns
Result of subtracting the scalar from the variable.
+ +

Definition at line 74 of file operator_subtraction.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
var stan::agrad::operator- (const double a,
const var & b 
)
+
+inline
+
+ +

Subtraction operator for scalar and variable (C++).

+

The derivative for the variable is

+

$\frac{\partial}{\partial y} (c-y) = -1$, and

+
Parameters
+ + + +
aFirst scalar operand.
bSecond variable operand.
+
+
+
Returns
Result of sutracting a variable from a scalar.
+ +

Definition at line 91 of file operator_subtraction.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
var stan::agrad::operator- (const var & a)
+
+inline
+
+ +

Unary negation operator for variables (C++).

+

$\frac{d}{dx} -x = -1$.

+
Parameters
+ + +
aArgument variable.
+
+
+
Returns
Negation of variable.
+ +

Definition at line 1298 of file agrad_thread_safe.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
var stan::agrad::operator- (const var & a,
const var & b 
)
+
+inline
+
+ +

Subtraction operator for variables (C++).

+

The partial derivatives are defined by

+

$\frac{\partial}{\partial x} (x-y) = 1$, and

+

$\frac{\partial}{\partial y} (x-y) = -1$.

+
Parameters
+ + + +
aFirst variable operand.
bSecond variable operand.
+
+
+
Returns
Variable result of subtracting the second variable from the first.
+ +

Definition at line 1364 of file agrad_thread_safe.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
var stan::agrad::operator- (const var & a,
const double & b 
)
+
+inline
+
+ +

Subtraction operator for variable and scalar (C++).

+

The derivative for the variable is

+

$\frac{\partial}{\partial x} (x-c) = 1$, and

+
Parameters
+ + + +
aFirst variable operand.
bSecond scalar operand.
+
+
+
Returns
Result of subtracting the scalar from the variable.
+ +

Definition at line 1379 of file agrad_thread_safe.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
var stan::agrad::operator- (const double & a,
const var & b 
)
+
+inline
+
+ +

Subtraction operator for scalar and variable (C++).

+

The derivative for the variable is

+

$\frac{\partial}{\partial y} (c-y) = -1$, and

+
Parameters
+ + + +
aFirst scalar operand.
bSecond variable operand.
+
+
+
Returns
Result of sutracting a variable from a scalar.
+ +

Definition at line 1394 of file agrad_thread_safe.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
var & stan::agrad::operator-- (var & a)
+
+inline
+
+ +

Prefix decrement operator for variables (C++).

+

Following C++, (–a) is defined to behave exactly as

+

a = a - 1.0)

+

does, but is faster and uses less memory. In particular, the result is an assignable lvalue.

+
Parameters
+ + +
aVariable to decrement.
+
+
+
Returns
Reference the result of decrementing this input variable.
+ +

Definition at line 1539 of file agrad_thread_safe.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
var stan::agrad::operator-- (var & a,
int  
)
+
+inline
+
+ +

Postfix decrement operator for variables (C++).

+

Following C++, the expression (a–) is defined to behave like the sequence of operations

+

var temp = a; a = a - 1.0; return temp;

+
Parameters
+ + + +
aVariable to decrement.
dummyUnused dummy variable used to distinguish suffix operator from prefix operator.
+
+
+
Returns
Input variable.
+

Following C++, the expression (a–) is defined to behave like the sequence of operations

+

var temp = a; a = a - 1.0; return temp;

+
Parameters
+ + +
aVariable to decrement.
+
+
+
Returns
Input variable.
+ +

Definition at line 1557 of file agrad_thread_safe.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
fvar<T> stan::agrad::operator/ (const fvar< T > & x1,
const fvar< T > & x2 
)
+
+inline
+
+ +

Definition at line 14 of file operator_division.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
fvar<T> stan::agrad::operator/ (const fvar< T > & x1,
const double x2 
)
+
+inline
+
+ +

Definition at line 22 of file operator_division.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
fvar<T> stan::agrad::operator/ (const double x1,
const fvar< T > & x2 
)
+
+inline
+
+ +

Definition at line 30 of file operator_division.hpp.

+ +
+
+ +
+
+
+template<typename T , int R, int C>
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
Eigen::Matrix<fvar<T>,R,C> stan::agrad::operator/ (const Eigen::Matrix< fvar< T >, R, C > & v,
const fvar< T > & c 
)
+
+inline
+
+ +

Definition at line 58 of file divide.hpp.

+ +
+
+ +
+
+
+template<typename T , int R, int C>
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
Eigen::Matrix<fvar<T>,R,C> stan::agrad::operator/ (const Eigen::Matrix< fvar< T >, R, C > & v,
const double c 
)
+
+inline
+
+ +

Definition at line 64 of file divide.hpp.

+ +
+
+ +
+
+
+template<typename T , int R, int C>
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
Eigen::Matrix<fvar<T>,R,C> stan::agrad::operator/ (const Eigen::Matrix< double, R, C > & v,
const fvar< T > & c 
)
+
+inline
+
+ +

Definition at line 70 of file divide.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
var stan::agrad::operator/ (const var & a,
const double b 
)
+
+inline
+
+ +

Division operator for dividing a variable by a scalar (C++).

+

The derivative with respect to the variable is

+

$\frac{\partial}{\partial x} (x/c) = 1/c$.

+
Parameters
+ + + +
aVariable operand.
bScalar operand.
+
+
+
Returns
Variable result of dividing the variable by the scalar.
+ +

Definition at line 75 of file operator_division.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
var stan::agrad::operator/ (const double a,
const var & b 
)
+
+inline
+
+ +

Division operator for dividing a scalar by a variable (C++).

+

The derivative with respect to the variable is

+

$\frac{d}{d y} (c/y) = -c / y^2$.

+
Parameters
+ + + +
aScalar operand.
bVariable operand.
+
+
+
Returns
Variable result of dividing the scalar by the variable.
+ +

Definition at line 92 of file operator_division.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
var stan::agrad::operator/ (const var & a,
const var & b 
)
+
+inline
+
+ +

Division operator for two variables (C++).

+

The partial derivatives for the variables are

+

$\frac{\partial}{\partial x} (x/y) = 1/y$, and

+

$\frac{\partial}{\partial y} (x/y) = -x / y^2$.

+
Parameters
+ + + +
aFirst variable operand.
bSecond variable operand.
+
+
+
Returns
Variable result of dividing the first variable by the second.
+ +

Definition at line 1459 of file agrad_thread_safe.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
var stan::agrad::operator/ (const var & a,
const double & b 
)
+
+inline
+
+ +

Division operator for dividing a variable by a scalar (C++).

+

The derivative with respect to the variable is

+

$\frac{\partial}{\partial x} (x/c) = 1/c$.

+
Parameters
+ + + +
aVariable operand.
bScalar operand.
+
+
+
Returns
Variable result of dividing the variable by the scalar.
+ +

Definition at line 1474 of file agrad_thread_safe.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
var stan::agrad::operator/ (const double & a,
const var & b 
)
+
+inline
+
+ +

Division operator for dividing a scalar by a variable (C++).

+

The derivative with respect to the variable is

+

$\frac{d}{d y} (c/y) = -c / y^2$.

+
Parameters
+ + + +
aScalar operand.
bVariable operand.
+
+
+
Returns
Variable result of dividing the scalar by the variable.
+ +

Definition at line 1489 of file agrad_thread_safe.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
bool stan::agrad::operator< (const fvar< T > & x,
double y 
)
+
+inline
+
+ +

Definition at line 12 of file operator_less_than.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
bool stan::agrad::operator< (double x,
const fvar< T > & y 
)
+
+inline
+
+ +

Definition at line 18 of file operator_less_than.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
bool stan::agrad::operator< (const fvar< T > & x,
const fvar< T > & y 
)
+
+inline
+
+ +

Definition at line 24 of file operator_less_than.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
bool stan::agrad::operator< (const var & a,
const double b 
)
+
+inline
+
+ +

Less than operator comparing variable's value and a double (C++).

+
Parameters
+ + + +
aFirst variable.
bSecond value.
+
+
+
Returns
True if first variable's value is less than second value.
+ +

Definition at line 28 of file operator_less_than.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
bool stan::agrad::operator< (const double a,
const var & b 
)
+
+inline
+
+ +

Less than operator comparing a double and variable's value (C++).

+
Parameters
+ + + +
aFirst value.
bSecond variable.
+
+
+
Returns
True if first value is less than second variable's value.
+ +

Definition at line 40 of file operator_less_than.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
bool stan::agrad::operator< (const var & a,
const var & b 
)
+
+inline
+
+ +

Less than operator comparing variables' values (C++).

+
Parameters
+ + + +
aFirst variable.
bSecond variable.
+
+
+
Returns
True if first variable's value is less than second's.
+ +

Definition at line 1109 of file agrad_thread_safe.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
bool stan::agrad::operator< (const var & a,
const double & b 
)
+
+inline
+
+ +

Less than operator comparing variable's value and a double (C++).

+
Parameters
+ + + +
aFirst variable.
bSecond value.
+
+
+
Returns
True if first variable's value is less than second value.
+ +

Definition at line 1121 of file agrad_thread_safe.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
bool stan::agrad::operator< (const double & a,
const var & b 
)
+
+inline
+
+ +

Less than operator comparing a double and variable's value (C++).

+
Parameters
+ + + +
aFirst value.
bSecond variable.
+
+
+
Returns
True if first value is less than second variable's value.
+ +

Definition at line 1133 of file agrad_thread_safe.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
bool stan::agrad::operator<= (const fvar< T > & x,
const fvar< T > & y 
)
+
+inline
+
+ +

Definition at line 14 of file operator_less_than_or_equal.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
bool stan::agrad::operator<= (const fvar< T > & x,
double y 
)
+
+inline
+
+ +

Definition at line 21 of file operator_less_than_or_equal.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
bool stan::agrad::operator<= (double x,
const fvar< T > & y 
)
+
+inline
+
+ +

Definition at line 28 of file operator_less_than_or_equal.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
bool stan::agrad::operator<= (const var & a,
const double b 
)
+
+inline
+
+ +

Less than or equal operator comparing a variable's value and a scalar (C++).

+
Parameters
+ + + +
aFirst variable.
bSecond value.
+
+
+
Returns
True if first variable's value is less than or equal to the second value.
+ +

Definition at line 31 of file operator_less_than_or_equal.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
bool stan::agrad::operator<= (const double a,
const var & b 
)
+
+inline
+
+ +

Less than or equal operator comparing a double and variable's value (C++).

+
Parameters
+ + + +
aFirst value.
bSecond variable.
+
+
+
Returns
True if first value is less than or equal to the second variable's value.
+ +

Definition at line 44 of file operator_less_than_or_equal.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
bool stan::agrad::operator<= (const var & a,
const var & b 
)
+
+inline
+
+ +

Less than or equal operator comparing two variables' values (C++).

+
Parameters
+ + + +
aFirst variable.
bSecond variable.
+
+
+
Returns
True if first variable's value is less than or equal to the second's.
+ +

Definition at line 1181 of file agrad_thread_safe.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
bool stan::agrad::operator<= (const var & a,
const double & b 
)
+
+inline
+
+ +

Less than or equal operator comparing a variable's value and a scalar (C++).

+
Parameters
+ + + +
aFirst variable.
bSecond value.
+
+
+
Returns
True if first variable's value is less than or equal to the second value.
+ +

Definition at line 1194 of file agrad_thread_safe.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
bool stan::agrad::operator<= (const double & a,
const var & b 
)
+
+inline
+
+ +

Less than or equal operator comparing a double and variable's value (C++).

+
Parameters
+ + + +
aFirst value.
bSecond variable.
+
+
+
Returns
True if first value is less than or equal to the second variable's value.
+ +

Definition at line 1207 of file agrad_thread_safe.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
bool stan::agrad::operator== (const fvar< T > & x,
const fvar< T > & y 
)
+
+inline
+
+ +

Definition at line 14 of file operator_equal.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
bool stan::agrad::operator== (const fvar< T > & x,
double y 
)
+
+inline
+
+ +

Definition at line 21 of file operator_equal.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
bool stan::agrad::operator== (double x,
const fvar< T > & y 
)
+
+inline
+
+ +

Definition at line 28 of file operator_equal.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
bool stan::agrad::operator== (const var & a,
const double b 
)
+
+inline
+
+ +

Equality operator comparing a variable's value and a double (C++).

+
Parameters
+ + + +
aFirst variable.
bSecond value.
+
+
+
Returns
True if the first variable's value is the same as the second value.
+ +

Definition at line 30 of file operator_equal.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
bool stan::agrad::operator== (const double a,
const var & b 
)
+
+inline
+
+ +

Equality operator comparing a scalar and a variable's value (C++).

+
Parameters
+ + + +
aFirst scalar.
bSecond variable.
+
+
+
Returns
True if the variable's value is equal to the scalar.
+ +

Definition at line 42 of file operator_equal.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
bool stan::agrad::operator== (const var & a,
const var & b 
)
+
+inline
+
+ +

Equality operator comparing two variables' values (C++).

+
Parameters
+ + + +
aFirst variable.
bSecond variable.
+
+
+
Returns
True if the first variable's value is the same as the second's.
+ +

Definition at line 1035 of file agrad_thread_safe.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
bool stan::agrad::operator== (const var & a,
const double & b 
)
+
+inline
+
+ +

Equality operator comparing a variable's value and a double (C++).

+
Parameters
+ + + +
aFirst variable.
bSecond value.
+
+
+
Returns
True if the first variable's value is the same as the second value.
+ +

Definition at line 1048 of file agrad_thread_safe.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
bool stan::agrad::operator== (const double & a,
const var & b 
)
+
+inline
+
+ +

Equality operator comparing a scalar and a variable's value (C++).

+
Parameters
+ + + +
aFirst scalar.
bSecond variable.
+
+
+
Returns
True if the variable's value is equal to the scalar.
+ +

Definition at line 1060 of file agrad_thread_safe.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
bool stan::agrad::operator> (const fvar< T > & x,
const fvar< T > & y 
)
+
+inline
+
+ +

Definition at line 14 of file operator_greater_than.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
bool stan::agrad::operator> (const fvar< T > & x,
double y 
)
+
+inline
+
+ +

Definition at line 21 of file operator_greater_than.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
bool stan::agrad::operator> (double x,
const fvar< T > & y 
)
+
+inline
+
+ +

Definition at line 28 of file operator_greater_than.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
bool stan::agrad::operator> (const var & a,
const double b 
)
+
+inline
+
+ +

Greater than operator comparing variable's value and double (C++).

+
Parameters
+ + + +
aFirst variable.
bSecond value.
+
+
+
Returns
True if first variable's value is greater than second value.
+ +

Definition at line 28 of file operator_greater_than.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
bool stan::agrad::operator> (const double a,
const var & b 
)
+
+inline
+
+ +

Greater than operator comparing a double and a variable's value (C++).

+
Parameters
+ + + +
aFirst value.
bSecond variable.
+
+
+
Returns
True if first value is greater than second variable's value.
+ +

Definition at line 40 of file operator_greater_than.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
bool stan::agrad::operator> (const var & a,
const var & b 
)
+
+inline
+
+ +

Greater than operator comparing variables' values (C++).

+
Parameters
+ + + +
aFirst variable.
bSecond variable.
+
+
+
Returns
True if first variable's value is greater than second's.
+ +

Definition at line 1144 of file agrad_thread_safe.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
bool stan::agrad::operator> (const var & a,
const double & b 
)
+
+inline
+
+ +

Greater than operator comparing variable's value and double (C++).

+
Parameters
+ + + +
aFirst variable.
bSecond value.
+
+
+
Returns
True if first variable's value is greater than second value.
+ +

Definition at line 1156 of file agrad_thread_safe.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
bool stan::agrad::operator> (const double & a,
const var & b 
)
+
+inline
+
+ +

Greater than operator comparing a double and a variable's value (C++).

+
Parameters
+ + + +
aFirst value.
bSecond variable.
+
+
+
Returns
True if first value is greater than second variable's value.
+ +

Definition at line 1168 of file agrad_thread_safe.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
bool stan::agrad::operator>= (const fvar< T > & x,
const fvar< T > & y 
)
+
+inline
+
+ +

Definition at line 14 of file operator_greater_than_or_equal.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
bool stan::agrad::operator>= (const fvar< T > & x,
double y 
)
+
+inline
+
+ +

Definition at line 21 of file operator_greater_than_or_equal.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
bool stan::agrad::operator>= (double x,
const fvar< T > & y 
)
+
+inline
+
+ +

Definition at line 28 of file operator_greater_than_or_equal.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
bool stan::agrad::operator>= (const var & a,
const double b 
)
+
+inline
+
+ +

Greater than or equal operator comparing variable's value and double (C++).

+
Parameters
+ + + +
aFirst variable.
bSecond value.
+
+
+
Returns
True if first variable's value is greater than or equal to second value.
+ +

Definition at line 31 of file operator_greater_than_or_equal.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
bool stan::agrad::operator>= (const double a,
const var & b 
)
+
+inline
+
+ +

Greater than or equal operator comparing double and variable's value (C++).

+
Parameters
+ + + +
aFirst value.
bSecond variable.
+
+
+
Returns
True if the first value is greater than or equal to the second variable's value.
+ +

Definition at line 44 of file operator_greater_than_or_equal.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
bool stan::agrad::operator>= (const var & a,
const var & b 
)
+
+inline
+
+ +

Greater than or equal operator comparing two variables' values (C++).

+
Parameters
+ + + +
aFirst variable.
bSecond variable.
+
+
+
Returns
True if first variable's value is greater than or equal to the second's.
+ +

Definition at line 1220 of file agrad_thread_safe.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
bool stan::agrad::operator>= (const var & a,
const double & b 
)
+
+inline
+
+ +

Greater than or equal operator comparing variable's value and double (C++).

+
Parameters
+ + + +
aFirst variable.
bSecond value.
+
+
+
Returns
True if first variable's value is greater than or equal to second value.
+ +

Definition at line 1233 of file agrad_thread_safe.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
bool stan::agrad::operator>= (const double & a,
const var & b 
)
+
+inline
+
+ +

Greater than or equal operator comparing double and variable's value (C++).

+
Parameters
+ + + +
aFirst value.
bSecond variable.
+
+
+
Returns
True if the first value is greater than or equal to the second variable's value.
+ +

Definition at line 1246 of file agrad_thread_safe.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
fvar<T> stan::agrad::owens_t (const fvar< T > & x1,
const fvar< T > & x2 
)
+
+inline
+
+ +

Definition at line 15 of file owens_t.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
fvar<T> stan::agrad::owens_t (const double x1,
const fvar< T > & x2 
)
+
+inline
+
+ +

Definition at line 35 of file owens_t.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
fvar<T> stan::agrad::owens_t (const fvar< T > & x1,
const double x2 
)
+
+inline
+
+ +

Definition at line 52 of file owens_t.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
var stan::agrad::owens_t (const var & h,
const var & a 
)
+
+inline
+
+ +

The Owen's T function of h and a.

+

Used to compute the cumulative density function for the skew normal distribution.

+
Parameters
+ + + +
hvar parameter.
avar parameter.
+
+
+
Returns
The Owen's T function.
+ +

Definition at line 60 of file owens_t.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
var stan::agrad::owens_t (const var & h,
const double & a 
)
+
+inline
+
+ +

The Owen's T function of h and a.

+

Used to compute the cumulative density function for the skew normal distribution.

+
Parameters
+ + + +
hvar parameter.
adouble parameter.
+
+
+
Returns
The Owen's T function.
+ +

Definition at line 76 of file owens_t.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
var stan::agrad::owens_t (const double & h,
const var & a 
)
+
+inline
+
+ +

The Owen's T function of h and a.

+

Used to compute the cumulative density function for the skew normal distribution.

+
Parameters
+ + + +
hdouble parameter.
avar parameter.
+
+
+
Returns
The Owen's T function.
+ +

Definition at line 92 of file owens_t.hpp.

+ +
+
+ +
+
+
+template<typename T , typename F >
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
void stan::agrad::partial_derivative (const F & f,
const Eigen::Matrix< T, Eigen::Dynamic, 1 > & x,
int n,
T & fx,
T & dfx_dxn 
)
+
+ +

Return the partial derivative of the specified multiivariate function at the specified argument.

+
Template Parameters
+ + + +
TArgument type
FFunction type
+
+
+
Parameters
+ + + + + + +
fFunction
[in]xArgument vector
[in]nIndex of argument with which to take derivative
[out]fxValue of function applied to argument
[out]dfx_dxnValue of partial derivative
+
+
+ +

Definition at line 74 of file autodiff.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + +
fvar<T> stan::agrad::Phi (const fvar< T > & x)
+
+inline
+
+ +

Definition at line 14 of file Phi.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
var stan::agrad::Phi (const stan::agrad::vara)
+
+inline
+
+ +

The unit normal cumulative density function for variables (stan).

+

See stan::math::Phi() for the double-based version.

+

The derivative is the unit normal density function,

+

$\frac{d}{dx} \Phi(x) = \mbox{\sf Norm}(x|0,1) = \frac{1}{\sqrt{2\pi}} \exp(-\frac{1}{2} x^2)$.

+
Parameters
+ + +
aVariable argument.
+
+
+
Returns
The unit normal cdf evaluated at the specified argument.
+ +

Definition at line 37 of file Phi.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
var stan::agrad::Phi_approx (const stan::agrad::vara)
+
+inline
+
+ +

Approximation of the unit normal CDF for variables (stan).

+

http://www.jiem.org/index.php/jiem/article/download/60/27

+
Parameters
+ + +
aVariable argument.
+
+
+
Returns
The corresponding unit normal cdf approximation.
+ +

Definition at line 19 of file Phi_approx.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
fvar<T> stan::agrad::pow (const fvar< T > & x1,
const fvar< T > & x2 
)
+
+inline
+
+ +

Definition at line 17 of file pow.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
fvar<T> stan::agrad::pow (const double x1,
const fvar< T > & x2 
)
+
+inline
+
+ +

Definition at line 29 of file pow.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
fvar<T> stan::agrad::pow (const fvar< T > & x1,
const double x2 
)
+
+inline
+
+ +

Definition at line 39 of file pow.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
var stan::agrad::pow (const var & base,
const double exponent 
)
+
+inline
+
+ +

Return the base variable raised to the power of the exponent scalar (cmath).

+

The derivative for the variable is

+

$\frac{d}{dx} \mbox{pow}(x,c) = c x^{c-1}$.

+
Parameters
+ + + +
baseBase variable.
exponentExponent scalar.
+
+
+
Returns
Base raised to the exponent.
+ +

Definition at line 80 of file pow.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
var stan::agrad::pow (const double base,
const var & exponent 
)
+
+inline
+
+ +

Return the base scalar raised to the power of the exponent variable (cmath).

+

The derivative for the variable is

+

$\frac{d}{d y} \mbox{pow}(c,y) = c^y \log c $.

+
Parameters
+ + + +
baseBase scalar.
exponentExponent variable.
+
+
+
Returns
Base raised to the exponent.
+ +

Definition at line 102 of file pow.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
var stan::agrad::pow (const var & base,
const var & exponent 
)
+
+inline
+
+ +

Return the base raised to the power of the exponent (cmath).

+

The partial derivatives are

+

$\frac{\partial}{\partial x} \mbox{pow}(x,y) = y x^{y-1}$, and

+

$\frac{\partial}{\partial y} \mbox{pow}(x,y) = x^y \ \log x$.

+
Parameters
+ + + +
baseBase variable.
exponentExponent variable.
+
+
+
Returns
Base raised to the exponent.
+ +

Definition at line 1633 of file agrad_thread_safe.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
var stan::agrad::pow (const var & base,
const double & exponent 
)
+
+inline
+
+ +

Return the base variable raised to the power of the exponent scalar (cmath).

+

The derivative for the variable is

+

$\frac{d}{dx} \mbox{pow}(x,c) = c x^{c-1}$.

+
Parameters
+ + + +
baseBase variable.
exponentExponent scalar.
+
+
+
Returns
Base raised to the exponent.
+ +

Definition at line 1649 of file agrad_thread_safe.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
var stan::agrad::pow (const double & base,
const var & exponent 
)
+
+inline
+
+ +

Return the base scalar raised to the power of the exponent variable (cmath).

+

The derivative for the variable is

+

$\frac{d}{d y} \mbox{pow}(c,y) = c^y \log c $.

+
Parameters
+ + + +
baseBase scalar.
exponentExponent variable.
+
+
+
Returns
Base raised to the exponent.
+ +

Definition at line 1665 of file agrad_thread_safe.hpp.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
var stan::agrad::precomputed_gradients (const double value,
const std::vector< var > & vars,
const std::vector< double > & gradients 
)
+
+ +

This function is provided for Stan users that want to compute gradients without using Stan's auto-diff.

+

Users need to provide the value, the independent variables, and the gradients of this expression with respect to the indepedent variables.

+

(For advanced users, a faster version that doesn't involve copying vectors exists can be written.)

+
Parameters
+ + + + +
valueThe value of the resulting dependent variable.
varsThe independent variables.
gradientsThe value of the gradients of the dependent variable with respect to the independent variables.
+
+
+
Returns
An auto-diff variable that uses the precomputed gradients provided.
+ +

Definition at line 86 of file precomputed_gradients.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::agrad::print_stack (std::ostream & o)
+
+inline
+
+ +

Prints the auto-dif variable stack.

+

This function is used for debugging purposes.

+

Only works if all members of stack are vari* as it casts to vari*.

+
Parameters
+ + +
oostream to modify
+
+
+ +

Definition at line 20 of file print_stack.hpp.

+ +
+
+ +
+
+
+template<typename TA , int RA, int CA, typename TB , int RB, int CB>
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
boost::enable_if_c< boost::is_same<TA,var>::value || boost::is_same<TB,var>::value, Eigen::Matrix<var,CB,CB> >::type stan::agrad::quad_form (const Eigen::Matrix< TA, RA, CA > & A,
const Eigen::Matrix< TB, RB, CB > & B 
)
+
+inline
+
+ +

Definition at line 129 of file quad_form.hpp.

+ +
+
+ +
+
+
+template<typename TA , int RA, int CA, typename TB , int RB>
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
boost::enable_if_c< boost::is_same<TA,var>::value || boost::is_same<TB,var>::value, var >::type stan::agrad::quad_form (const Eigen::Matrix< TA, RA, CA > & A,
const Eigen::Matrix< TB, RB, 1 > & B 
)
+
+inline
+
+ +

Definition at line 144 of file quad_form.hpp.

+ +
+
+ +
+
+
+template<typename TA , int RA, int CA, typename TB , int RB, int CB>
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
boost::enable_if_c< boost::is_same<TA,var>::value || boost::is_same<TB,var>::value, Eigen::Matrix<var,CB,CB> >::type stan::agrad::quad_form_sym (const Eigen::Matrix< TA, RA, CA > & A,
const Eigen::Matrix< TB, RB, CB > & B 
)
+
+inline
+
+ +

Definition at line 160 of file quad_form.hpp.

+ +
+
+ +
+
+
+template<typename TA , int RA, int CA, typename TB , int RB>
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
boost::enable_if_c< boost::is_same<TA,var>::value || boost::is_same<TB,var>::value, var >::type stan::agrad::quad_form_sym (const Eigen::Matrix< TA, RA, CA > & A,
const Eigen::Matrix< TB, RB, 1 > & B 
)
+
+inline
+
+ +

Definition at line 176 of file quad_form.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
static void stan::agrad::recover_memory ()
+
+static
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
static void stan::agrad::recover_memory ()
+
+static
+
+ +

Recover memory used for all variables for reuse.

+ +

Definition at line 37 of file var_stack.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
fvar<T> stan::agrad::rising_factorial (const fvar< T > & x,
const fvar< T > & n 
)
+
+inline
+
+ +

Definition at line 16 of file rising_factorial.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
fvar<T> stan::agrad::rising_factorial (const fvar< T > & x,
const double n 
)
+
+inline
+
+ +

Definition at line 28 of file rising_factorial.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
fvar<T> stan::agrad::rising_factorial (const double x,
const fvar< T > & n 
)
+
+inline
+
+ +

Definition at line 40 of file rising_factorial.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
var stan::agrad::rising_factorial (const var & a,
const double & b 
)
+
+inline
+
+ +

Definition at line 48 of file rising_factorial.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
var stan::agrad::rising_factorial (const var & a,
const var & b 
)
+
+inline
+
+ +

Definition at line 53 of file rising_factorial.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
var stan::agrad::rising_factorial (const double & a,
const var & b 
)
+
+inline
+
+ +

Definition at line 58 of file rising_factorial.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + +
fvar<T> stan::agrad::round (const fvar< T > & x)
+
+inline
+
+ +

Definition at line 15 of file round.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
var stan::agrad::round (const stan::agrad::vara)
+
+inline
+
+ +

Returns the rounded form of the specified variable (C99).

+

See boost::math::round() for the double-based version.

+

The derivative is zero everywhere but numbers half way between whole numbers, so for convenience the derivative is defined to be everywhere zero,

+

$\frac{d}{dx} \mbox{round}(x) = 0$.

+
Parameters
+ + +
aSpecified variable.
+
+
+
Returns
Rounded variable.
+ +

Definition at line 35 of file round.hpp.

+ +
+
+ +
+
+
+template<typename T , int R1, int C1, int R2, int C2>
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
Eigen::Matrix<fvar<T>, R1, 1> stan::agrad::rows_dot_product (const Eigen::Matrix< fvar< T >, R1, C1 > & v1,
const Eigen::Matrix< fvar< T >, R2, C2 > & v2 
)
+
+inline
+
+ +

Definition at line 19 of file rows_dot_product.hpp.

+ +
+
+ +
+
+
+template<typename T , int R1, int C1, int R2, int C2>
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
Eigen::Matrix<fvar<T>, R1, 1> stan::agrad::rows_dot_product (const Eigen::Matrix< double, R1, C1 > & v1,
const Eigen::Matrix< fvar< T >, R2, C2 > & v2 
)
+
+inline
+
+ +

Definition at line 34 of file rows_dot_product.hpp.

+ +
+
+ +
+
+
+template<typename T , int R1, int C1, int R2, int C2>
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
Eigen::Matrix<fvar<T>, R1, 1> stan::agrad::rows_dot_product (const Eigen::Matrix< fvar< T >, R1, C1 > & v1,
const Eigen::Matrix< double, R2, C2 > & v2 
)
+
+inline
+
+ +

Definition at line 50 of file rows_dot_product.hpp.

+ +
+
+ +
+
+
+template<typename T1 , int R1, int C1, typename T2 , int R2, int C2>
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
boost::enable_if_c<boost::is_same<T1,var>::value || boost::is_same<T2,var>::value, Eigen::Matrix<var, R1, 1> >::type stan::agrad::rows_dot_product (const Eigen::Matrix< T1, R1, C1 > & v1,
const Eigen::Matrix< T2, R2, C2 > & v2 
)
+
+inline
+
+ +

Definition at line 274 of file dot_product.hpp.

+ +
+
+ +
+
+
+template<typename T , int R, int C>
+ + + + + +
+ + + + + + + + +
Eigen::Matrix<fvar<T>,R,1> stan::agrad::rows_dot_self (const Eigen::Matrix< fvar< T >, R, C > & x)
+
+inline
+
+ +

Definition at line 16 of file rows_dot_self.hpp.

+ +
+
+ +
+
+ + + + + + + + +
var stan::agrad::sd (const std::vector< var > & v)
+
+ +

Return the sample standard deviation of the specified standard vector.

+

Raise domain error if size is not greater than zero.

+
Parameters
+ + +
[in]va vector
+
+
+
Returns
sample standard deviation of specified vector
+ +

Definition at line 62 of file sd.hpp.

+ +
+
+ +
+
+
+template<int R, int C>
+ + + + + + + + +
var stan::agrad::sd (const Eigen::Matrix< var, R, C > & m)
+
+ +

Definition at line 79 of file sd.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
static void stan::agrad::set_zero_all_adjoints ()
+
+static
+
+ +

Reset all adjoint values in the stack to zero.

+ +

Definition at line 87 of file chainable.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + +
fvar<T> stan::agrad::sin (const fvar< T > & x)
+
+inline
+
+ +

Definition at line 14 of file sin.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
var stan::agrad::sin (const var & a)
+
+inline
+
+ +

Return the sine of a radian-scaled variable (cmath).

+

The derivative is defined by

+

$\frac{d}{dx} \sin x = \cos x$.

+
Parameters
+ + +
aVariable for radians of angle.
+
+
+
Returns
Sine of variable.
+ +

Definition at line 1696 of file agrad_thread_safe.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + +
fvar<T> stan::agrad::sinh (const fvar< T > & x)
+
+inline
+
+ +

Definition at line 14 of file sinh.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
var stan::agrad::sinh (const var & a)
+
+inline
+
+ +

Return the hyperbolic sine of the specified variable (cmath).

+

The derivative is defined by

+

$\frac{d}{dx} \sinh x = \cosh x$.

+
Parameters
+ + +
aVariable.
+
+
+
Returns
Hyperbolic sine of variable.
+ +

Definition at line 1836 of file agrad_thread_safe.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + +
Eigen::Matrix<fvar<T>,Eigen::Dynamic,1> stan::agrad::softmax (const Eigen::Matrix< fvar< T >, Eigen::Dynamic, 1 > & alpha)
+
+inline
+
+ +

Definition at line 14 of file softmax.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
Eigen::Matrix<var,Eigen::Dynamic,1> stan::agrad::softmax (const Eigen::Matrix< var, Eigen::Dynamic, 1 > & alpha)
+
+inline
+
+ +

Return the softmax of the specified Eigen vector.

+

Softmax is guaranteed to return a simplex.

+

The gradient calculations are unfolded.

+
Parameters
+ + +
alphaUnconstrained input vector.
+
+
+
Returns
Softmax of the input.
+
Exceptions
+ + +
std::domain_errorIf the input vector is size 0.
+
+
+ +

Definition at line 57 of file softmax.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + +
std::vector< fvar<T> > stan::agrad::sort_asc (std::vector< fvar< T > > xs)
+
+inline
+
+ +

Definition at line 18 of file sort.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
std::vector<var> stan::agrad::sort_asc (std::vector< var > xs)
+
+inline
+
+ +

Return the specified standard vector in ascending order with gradients kept.

+
Parameters
+ + +
xsStandard vector to order.
+
+
+
Returns
Standard vector ordered.
+
Template Parameters
+ + +
TType of elements of the vector.
+
+
+ +

Definition at line 24 of file sort.hpp.

+ +
+
+ +
+
+
+template<typename T , int R, int C>
+ + + + + +
+ + + + + + + + +
Eigen::Matrix<fvar<T>,R,C> stan::agrad::sort_asc (Eigen::Matrix< fvar< T >, R, C > xs)
+
+inline
+
+ +

Definition at line 34 of file sort.hpp.

+ +
+
+ +
+
+
+template<int R, int C>
+ + + + + +
+ + + + + + + + +
Eigen::Matrix<var,R,C> stan::agrad::sort_asc (Eigen::Matrix< var, R, C > xs)
+
+inline
+
+ +

Return the specified eigen vector in ascending order with gradients kept.

+
Parameters
+ + +
xsEigen vector to order.
+
+
+
Returns
Eigen vector ordered.
+
Template Parameters
+ + +
TType of elements of the vector.
+
+
+ +

Definition at line 49 of file sort.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + +
std::vector< fvar<T> > stan::agrad::sort_desc (std::vector< fvar< T > > xs)
+
+inline
+
+ +

Definition at line 26 of file sort.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
std::vector<var> stan::agrad::sort_desc (std::vector< var > xs)
+
+inline
+
+ +

Return the specified standard vector in descending order with gradients kept.

+
Parameters
+ + +
xsStandard vector to order.
+
+
+
Returns
Standard vector ordered.
+
Template Parameters
+ + +
TType of elements of the vector.
+
+
+ +

Definition at line 36 of file sort.hpp.

+ +
+
+ +
+
+
+template<typename T , int R, int C>
+ + + + + +
+ + + + + + + + +
Eigen::Matrix<fvar<T>,R,C> stan::agrad::sort_desc (Eigen::Matrix< fvar< T >, R, C > xs)
+
+inline
+
+ +

Definition at line 42 of file sort.hpp.

+ +
+
+ +
+
+
+template<int R, int C>
+ + + + + +
+ + + + + + + + +
Eigen::Matrix<var,R,C> stan::agrad::sort_desc (Eigen::Matrix< var, R, C > xs)
+
+inline
+
+ +

Return the specified eigen vector in descending order with gradients kept.

+
Parameters
+ + +
xsEigen vector to order.
+
+
+
Returns
Eigen vector ordered.
+
Template Parameters
+ + +
TType of elements of the vector.
+
+
+ +

Definition at line 62 of file sort.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + +
fvar<T> stan::agrad::sqrt (const fvar< T > & x)
+
+inline
+
+ +

Definition at line 15 of file sqrt.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
var stan::agrad::sqrt (const var & a)
+
+inline
+
+ +

Return the square root of the specified variable (cmath).

+

The derivative is defined by

+

$\frac{d}{dx} \sqrt{x} = \frac{1}{2 \sqrt{x}}$.

+
Parameters
+ + +
aVariable whose square root is taken.
+
+
+
Returns
Square root of variable.
+ +

Definition at line 1616 of file agrad_thread_safe.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + +
fvar<T> stan::agrad::square (const fvar< T > & x)
+
+inline
+
+ +

Definition at line 15 of file square.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
var stan::agrad::square (const var & x)
+
+inline
+
+ +

Return the square of the input variable.

+

Using square(x) is more efficient than using x * x.

+
Parameters
+ + +
xVariable to square.
+
+
+
Returns
Square of variable.
+ +

Definition at line 31 of file square.hpp.

+ +
+
+ +
+
+
+template<int R1, int C1, int R2, int C2>
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
var stan::agrad::squared_distance (const Eigen::Matrix< var, R1, C1 > & v1,
const Eigen::Matrix< var, R2, C2 > & v2 
)
+
+inline
+
+ +

Definition at line 96 of file squared_distance.hpp.

+ +
+
+ +
+
+
+template<int R1, int C1, int R2, int C2>
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
var stan::agrad::squared_distance (const Eigen::Matrix< var, R1, C1 > & v1,
const Eigen::Matrix< double, R2, C2 > & v2 
)
+
+inline
+
+ +

Definition at line 104 of file squared_distance.hpp.

+ +
+
+ +
+
+
+template<int R1, int C1, int R2, int C2>
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
var stan::agrad::squared_distance (const Eigen::Matrix< double, R1, C1 > & v1,
const Eigen::Matrix< var, R2, C2 > & v2 
)
+
+inline
+
+ +

Definition at line 112 of file squared_distance.hpp.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
void stan::agrad::stan_print (std::ostream * o,
const var & x 
)
+
+ +

Definition at line 10 of file stan_print.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
var stan::agrad::step (const stan::agrad::vara)
+
+inline
+
+ +

Return the step, or heaviside, function applied to the specified variable (stan).

+

See stan::math::step() for the double-based version.

+

The derivative of the step function is zero everywhere but at 0, so for convenience, it is taken to be everywhere zero,

+

$\mbox{step}(x) = 0$.

+
Parameters
+ + +
aVariable argument.
+
+
+
Returns
The constant variable with value 1.0 if the argument's value is greater than or equal to 0.0, and value 0.0 otherwise.
+ +

Definition at line 25 of file step.hpp.

+ +
+
+ +
+
+
+template<typename T , int R, int C>
+ + + + + +
+ + + + + + + + +
fvar<T> stan::agrad::sum (const Eigen::Matrix< fvar< T >, R, C > & m)
+
+inline
+
+ +

Definition at line 14 of file sum.hpp.

+ +
+
+ +
+
+
+template<int R, int C>
+ + + + + +
+ + + + + + + + +
var stan::agrad::sum (const Eigen::Matrix< var, R, C > & m)
+
+inline
+
+ +

Returns the sum of the coefficients of the specified matrix, column vector or row vector.

+
Parameters
+ + +
mSpecified matrix or vector.
+
+
+
Returns
Sum of coefficients of matrix.
+ +

Definition at line 68 of file sum.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + +
fvar<T> stan::agrad::tan (const fvar< T > & x)
+
+inline
+
+ +

Definition at line 14 of file tan.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
var stan::agrad::tan (const var & a)
+
+inline
+
+ +

Return the tangent of a radian-scaled variable (cmath).

+

The derivative is defined by

+

$\frac{d}{dx} \tan x = \sec^2 x$.

+
Parameters
+ + +
aVariable for radians of angle.
+
+
+
Returns
Tangent of variable.
+ +

Definition at line 1710 of file agrad_thread_safe.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + +
fvar<T> stan::agrad::tanh (const fvar< T > & x)
+
+inline
+
+ +

Definition at line 14 of file tanh.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
var stan::agrad::tanh (const var & a)
+
+inline
+
+ +

Return the hyperbolic tangent of the specified variable (cmath).

+

The derivative is defined by

+

$\frac{d}{dx} \tanh x = \frac{1}{\cosh^2 x}$.

+
Parameters
+ + +
aVariable.
+
+
+
Returns
Hyperbolic tangent of variable.
+ +

Definition at line 1850 of file agrad_thread_safe.hpp.

+ +
+
+ +
+
+
+template<typename T , int R, int C>
+ + + + + +
+ + + + + + + + +
Eigen::Matrix<fvar<T>,R,R> stan::agrad::tcrossprod (const Eigen::Matrix< fvar< T >, R, C > & m)
+
+inline
+
+ +

Definition at line 17 of file tcrossprod.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
matrix_v stan::agrad::tcrossprod (const matrix_v & M)
+
+inline
+
+ +

Returns the result of post-multiplying a matrix by its own transpose.

+
Parameters
+ + +
MMatrix to multiply.
+
+
+
Returns
M times its transpose.
+ +

Definition at line 27 of file tcrossprod.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + +
fvar<T> stan::agrad::tgamma (const fvar< T > & x)
+
+inline
+
+ +

Definition at line 15 of file tgamma.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
var stan::agrad::tgamma (const stan::agrad::vara)
+
+inline
+
+ +

Return the Gamma function applied to the specified variable (C99).

+

See boost::math::tgamma() for the double-based version.

+

The derivative with respect to the argument is

+

$\frac{d}{dx} \Gamma(x) = \Gamma(x) \Psi^{(0)}(x)$

+

where $\Psi^{(0)}(x)$ is the digamma function.

+

See boost::math::digamma() for the double-based version.

+
Parameters
+ + +
aArgument to function.
+
+
+
Returns
The Gamma function applied to the specified argument.
+ +

Definition at line 39 of file tgamma.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + +
fvar<T> stan::agrad::to_fvar (const T & x)
+
+inline
+
+ +

Definition at line 17 of file to_fvar.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + +
fvar<T> stan::agrad::to_fvar (const fvar< T > & x)
+
+inline
+
+ +

Definition at line 24 of file to_fvar.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
matrix_fd stan::agrad::to_fvar (const stan::math::matrix_dm)
+
+inline
+
+ +

Definition at line 30 of file to_fvar.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
matrix_fd stan::agrad::to_fvar (const matrix_fd & m)
+
+inline
+
+ +

Definition at line 40 of file to_fvar.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
matrix_fv stan::agrad::to_fvar (const matrix_fv & m)
+
+inline
+
+ +

Definition at line 46 of file to_fvar.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
matrix_ffd stan::agrad::to_fvar (const matrix_ffd & m)
+
+inline
+
+ +

Definition at line 52 of file to_fvar.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
matrix_ffv stan::agrad::to_fvar (const matrix_ffv & m)
+
+inline
+
+ +

Definition at line 58 of file to_fvar.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
vector_fd stan::agrad::to_fvar (const stan::math::vector_dv)
+
+inline
+
+ +

Definition at line 64 of file to_fvar.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
vector_fd stan::agrad::to_fvar (const vector_fd & v)
+
+inline
+
+ +

Definition at line 73 of file to_fvar.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
vector_fv stan::agrad::to_fvar (const vector_fv & v)
+
+inline
+
+ +

Definition at line 79 of file to_fvar.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
vector_ffd stan::agrad::to_fvar (const vector_ffd & v)
+
+inline
+
+ +

Definition at line 85 of file to_fvar.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
vector_ffv stan::agrad::to_fvar (const vector_ffv & v)
+
+inline
+
+ +

Definition at line 91 of file to_fvar.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
row_vector_fd stan::agrad::to_fvar (const stan::math::row_vector_drv)
+
+inline
+
+ +

Definition at line 97 of file to_fvar.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
row_vector_fd stan::agrad::to_fvar (const row_vector_fd & rv)
+
+inline
+
+ +

Definition at line 106 of file to_fvar.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
row_vector_fv stan::agrad::to_fvar (const row_vector_fv & rv)
+
+inline
+
+ +

Definition at line 112 of file to_fvar.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
row_vector_ffd stan::agrad::to_fvar (const row_vector_ffd & rv)
+
+inline
+
+ +

Definition at line 118 of file to_fvar.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
row_vector_ffv stan::agrad::to_fvar (const row_vector_ffv & rv)
+
+inline
+
+ +

Definition at line 124 of file to_fvar.hpp.

+ +
+
+ +
+
+
+template<typename T , int R, int C>
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
Eigen::Matrix<fvar<T>, R, C> stan::agrad::to_fvar (const Eigen::Matrix< T, R, C > & val,
const Eigen::Matrix< T, R, C > & deriv 
)
+
+inline
+
+ +

Definition at line 131 of file to_fvar.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
var stan::agrad::to_var (const double & x)
+
+inline
+
+ +

Converts argument to an automatic differentiation variable.

+

Returns a stan::agrad::var variable with the input value.

+
Parameters
+ + +
[in]xA scalar value
+
+
+
Returns
An automatic differentiation variable with the input value.
+ +

Definition at line 21 of file to_var.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
var stan::agrad::to_var (const var & x)
+
+inline
+
+ +

Converts argument to an automatic differentiation variable.

+

Returns a stan::agrad::var variable with the input value.

+
Parameters
+ + +
[in]xAn automatic differentiation variable.
+
+
+
Returns
An automatic differentiation variable with the input value.
+ +

Definition at line 32 of file to_var.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
matrix_v stan::agrad::to_var (const stan::math::matrix_dm)
+
+inline
+
+ +

Converts argument to an automatic differentiation variable.

+

Returns a stan::agrad::var variable with the input value.

+
Parameters
+ + +
[in]mA Matrix with scalars
+
+
+
Returns
A Matrix with automatic differentiation variables
+ +

Definition at line 43 of file to_var.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
matrix_v stan::agrad::to_var (const matrix_v & m)
+
+inline
+
+ +

Converts argument to an automatic differentiation variable.

+

Returns a stan::agrad::var variable with the input value.

+
Parameters
+ + +
[in]mA Matrix with automatic differentiation variables.
+
+
+
Returns
A Matrix with automatic differentiation variables.
+ +

Definition at line 58 of file to_var.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
vector_v stan::agrad::to_var (const stan::math::vector_dv)
+
+inline
+
+ +

Converts argument to an automatic differentiation variable.

+

Returns a stan::agrad::var variable with the input value.

+
Parameters
+ + +
[in]vA Vector of scalars
+
+
+
Returns
A Vector of automatic differentiation variables with values of v
+ +

Definition at line 70 of file to_var.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
vector_v stan::agrad::to_var (const vector_v & v)
+
+inline
+
+ +

Converts argument to an automatic differentiation variable.

+

Returns a stan::agrad::var variable with the input value.

+
Parameters
+ + +
[in]vA Vector of automatic differentiation variables
+
+
+
Returns
A Vector of automatic differentiation variables with values of v
+ +

Definition at line 85 of file to_var.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
row_vector_v stan::agrad::to_var (const stan::math::row_vector_drv)
+
+inline
+
+ +

Converts argument to an automatic differentiation variable.

+

Returns a stan::agrad::var variable with the input value.

+
Parameters
+ + +
[in]rvA row vector of scalars
+
+
+
Returns
A row vector of automatic differentation variables with values of rv.
+ +

Definition at line 97 of file to_var.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
row_vector_v stan::agrad::to_var (const row_vector_v & rv)
+
+inline
+
+ +

Converts argument to an automatic differentiation variable.

+

Returns a stan::agrad::var variable with the input value.

+
Parameters
+ + +
[in]rvA row vector with automatic differentiation variables
+
+
+
Returns
A row vector with automatic differentiation variables with values of rv.
+ +

Definition at line 112 of file to_var.hpp.

+ +
+
+ +
+
+
+template<typename T1 , int R1, int C1, typename T2 , int R2, int C2, typename T3 , int R3, int C3>
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
boost::enable_if_c<boost::is_same<T1,var>::value || boost::is_same<T2,var>::value || boost::is_same<T3,var>::value, var>::type stan::agrad::trace_gen_inv_quad_form_ldlt (const Eigen::Matrix< T1, R1, C1 > & D,
const stan::math::LDLT_factor< T2, R2, C2 > & A,
const Eigen::Matrix< T3, R3, C3 > & B 
)
+
+inline
+
+ +

Compute the trace of an inverse quadratic form.

+

I.E., this computes trace(D B^T A^-1 B) where D is a square matrix and the LDLT_factor of A is provided.

+ +

Definition at line 25 of file trace_gen_inv_quad_form_ldlt.hpp.

+ +
+
+ +
+
+
+template<typename TD , int RD, int CD, typename TA , int RA, int CA, typename TB , int RB, int CB>
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
boost::enable_if_c< boost::is_same<TD,var>::value || boost::is_same<TA,var>::value || boost::is_same<TB,var>::value, var >::type stan::agrad::trace_gen_quad_form (const Eigen::Matrix< TD, RD, CD > & D,
const Eigen::Matrix< TA, RA, CA > & A,
const Eigen::Matrix< TB, RB, CB > & B 
)
+
+inline
+
+ +

Definition at line 111 of file trace_gen_quad_form.hpp.

+ +
+
+ +
+
+
+template<typename T2 , int R2, int C2, typename T3 , int R3, int C3>
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
boost::enable_if_c<boost::is_same<T2,var>::value || boost::is_same<T3,var>::value, var>::type stan::agrad::trace_inv_quad_form_ldlt (const stan::math::LDLT_factor< T2, R2, C2 > & A,
const Eigen::Matrix< T3, R3, C3 > & B 
)
+
+inline
+
+ +

Compute the trace of an inverse quadratic form.

+

I.E., this computes trace(B^T A^-1 B) where the LDLT_factor of A is provided.

+ +

Definition at line 162 of file trace_inv_quad_form_ldlt.hpp.

+ +
+
+ +
+
+
+template<typename TA , int RA, int CA, typename TB , int RB, int CB>
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
boost::enable_if_c< boost::is_same<TA,var>::value || boost::is_same<TB,var>::value, var >::type stan::agrad::trace_quad_form (const Eigen::Matrix< TA, RA, CA > & A,
const Eigen::Matrix< TB, RB, CB > & B 
)
+
+inline
+
+ +

Definition at line 99 of file trace_quad_form.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + +
fvar<T> stan::agrad::trunc (const fvar< T > & x)
+
+inline
+
+ +

Definition at line 15 of file trunc.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
var stan::agrad::trunc (const stan::agrad::vara)
+
+inline
+
+ +

Returns the truncatation of the specified variable (C99).

+

See boost::math::trunc() for the double-based version.

+

The derivative is zero everywhere but at integer values, so for convenience the derivative is defined to be everywhere zero,

+

$\frac{d}{dx} \mbox{trunc}(x) = 0$.

+
Parameters
+ + +
aSpecified variable.
+
+
+
Returns
Truncation of the variable.
+ +

Definition at line 34 of file trunc.hpp.

+ +
+
+ +
+
+
+template<int R, int C>
+ + + + + +
+ + + + + + + + +
const Eigen::Matrix<double,R,C>& stan::agrad::value_of (const Eigen::Matrix< double, R, C > & M)
+
+inline
+
+ +

Convert a matrix to a matrix of doubles.

+

When the input is already a matrix of doubles a reference is returned.

+

This is used as a convenience function for implementing varis of matrix operations.

+ +

Definition at line 16 of file value_of.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
double stan::agrad::value_of (const agrad::var & v)
+
+inline
+
+ +

Return the value of the specified variable.

+

This function is used internally by auto-dif functions along with stan::math::value_of(T x) to extract the double value of either a scalar or an auto-dif variable. This function will be called when the argument is a stan::agrad::var even if the function is not referred to by namespace because of argument-dependent lookup.

+
Parameters
+ + +
vVariable.
+
+
+
Returns
Value of variable.
+ +

Definition at line 22 of file value_of.hpp.

+ +
+
+ +
+
+
+template<int R, int C>
+ + + + + +
+ + + + + + + + +
Eigen::Matrix<double,R,C> stan::agrad::value_of (const Eigen::Matrix< var, R, C > & M)
+
+inline
+
+ +

Convert a matrix to a matrix of doubles.

+

When the input is already a matrix of vars a new matrix is returned with the value of the constituent vars.

+

This is used as a convenience function for implementing varis of matrix operations.

+ +

Definition at line 27 of file value_of.hpp.

+ +
+
+ +
+
+ + + + + + + + +
var stan::agrad::variance (const std::vector< var > & v)
+
+ +

Return the sample variance of the specified standard vector.

+

Raise domain error if size is not greater than zero.

+
Parameters
+ + +
[in]va vector
+
+
+
Returns
sample variance of specified vector
+ +

Definition at line 50 of file variance.hpp.

+ +
+
+ +
+
+
+template<int R, int C>
+ + + + + + + + +
var stan::agrad::variance (const Eigen::Matrix< var, R, C > & m)
+
+ +

Definition at line 67 of file variance.hpp.

+ +
+
+

Variable Documentation

+ +
+
+ + + + +
memory::stack_alloc stan::agrad::memalloc_
+
+ +

Definition at line 13 of file var_stack.cpp.

+ +
+
+ +
+
+ + + + +
std::vector< chainable_alloc * > stan::agrad::var_alloc_stack_
+
+ +

Definition at line 12 of file var_stack.cpp.

+ +
+
+ +
+
+ + + + +
std::vector< chainable * > stan::agrad::var_nochain_stack_
+
+ +

Definition at line 11 of file var_stack.cpp.

+ +
+
+ +
+
+ + + + +
std::vector< chainable * > stan::agrad::var_stack_
+
+ +

Definition at line 10 of file var_stack.cpp.

+ +
+
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/namespacestan_1_1gm.html b/doc/api/html/namespacestan_1_1gm.html new file mode 100644 index 00000000000..e16a02d0099 --- /dev/null +++ b/doc/api/html/namespacestan_1_1gm.html @@ -0,0 +1,4811 @@ + + + + + +Stan: stan::gm Namespace Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::gm Namespace Reference
+
+
+ +

Directed graphical model compiler. +More...

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Classes

class  arg_adapt
 
class  arg_adapt_delta
 
class  arg_adapt_engaged
 
class  arg_adapt_gamma
 
class  arg_adapt_init_buffer
 
class  arg_adapt_kappa
 
class  arg_adapt_t0
 
class  arg_adapt_term_buffer
 
class  arg_adapt_window
 
class  arg_bfgs
 
class  arg_data
 
class  arg_data_file
 
class  arg_dense_e
 
class  arg_diag_e
 
class  arg_diagnose
 
class  arg_diagnostic_file
 
class  arg_engine
 
class  arg_fail
 
class  arg_fixed_param
 
class  arg_hmc
 
class  arg_id
 
class  arg_init
 
class  arg_init_alpha
 
class  arg_int_time
 
class  arg_iter
 
class  arg_max_depth
 
class  arg_method
 
class  arg_metric
 
class  arg_nesterov
 
class  arg_newton
 
class  arg_num_samples
 
class  arg_num_warmup
 
class  arg_nuts
 
class  arg_optimize
 
class  arg_optimize_algo
 
class  arg_output
 
class  arg_output_file
 
class  arg_random
 
class  arg_refresh
 
class  arg_rwm
 
class  arg_sample
 
class  arg_sample_algo
 
class  arg_save_iterations
 
class  arg_save_warmup
 
class  arg_seed
 
class  arg_static
 
class  arg_stepsize
 
class  arg_stepsize_jitter
 
class  arg_test
 
class  arg_test_grad_eps
 
class  arg_test_grad_err
 
class  arg_test_gradient
 
class  arg_thin
 
class  arg_tolerance
 
class  arg_unit_e
 
class  argument
 
class  argument_parser
 
class  argument_probe
 
class  categorical_argument
 
class  list_argument
 
struct  type_name
 
struct  type_name< int >
 
struct  type_name< unsigned int >
 
struct  type_name< double >
 
struct  type_name< bool >
 
struct  type_name< std::string >
 
class  singleton_argument
 
class  unvalued_argument
 
class  valued_argument
 
struct  nil
 Placeholder struct for boost::variant default ctors. More...
 
struct  expr_type
 
class  function_signatures
 
struct  statements
 
struct  distribution
 
struct  expression_type_vis
 
struct  expression
 
struct  printable
 
struct  is_nil_op
 
struct  variable_dims
 
struct  int_literal
 
struct  double_literal
 
struct  array_literal
 
struct  variable
 
struct  fun
 
struct  index_op
 
struct  binary_op
 
struct  unary_op
 
struct  range
 
struct  base_var_decl
 
struct  variable_map
 
struct  int_var_decl
 
struct  double_var_decl
 
struct  unit_vector_var_decl
 
struct  simplex_var_decl
 
struct  ordered_var_decl
 
struct  positive_ordered_var_decl
 
struct  vector_var_decl
 
struct  row_vector_var_decl
 
struct  matrix_var_decl
 
struct  cholesky_factor_var_decl
 
struct  cov_matrix_var_decl
 
struct  corr_matrix_var_decl
 
struct  name_vis
 
struct  var_decl
 
struct  statement
 
struct  increment_log_prob_statement
 
struct  for_statement
 
struct  conditional_statement
 
struct  while_statement
 
struct  print_statement
 
struct  no_op_statement
 
struct  program
 
struct  sample
 
struct  assignment
 
struct  contains_var
 
struct  contains_nonparam_var
 
struct  error_codes
 
struct  visgen
 generic visitor with output for extension More...
 
struct  expression_visgen
 
struct  printable_visgen
 
struct  var_size_validating_visgen
 
struct  var_resizing_visgen
 
struct  init_local_var_visgen
 
struct  validate_var_decl_visgen
 
struct  member_var_decl_visgen
 
struct  local_var_decl_visgen
 
struct  generate_local_var_init_nan_visgen
 
struct  generate_init_vars_visgen
 
struct  validate_transformed_params_visgen
 
struct  statement_visgen
 
struct  dump_member_var_visgen
 
struct  set_param_ranges_visgen
 
struct  generate_init_visgen
 
struct  write_dims_visgen
 
struct  write_param_names_visgen
 
struct  write_csv_header_visgen
 
struct  constrained_param_names_visgen
 
struct  unconstrained_param_names_visgen
 
struct  write_csv_visgen
 
struct  write_csv_vars_visgen
 
struct  write_array_visgen
 
struct  write_array_vars_visgen
 
struct  expression_grammar
 
struct  validate_expr_type2
 
struct  set_fun_type2
 
struct  binary_op_expr
 
struct  addition_expr
 
struct  subtraction_expr
 
struct  program_grammar
 
struct  statement_2_grammar
 
struct  add_conditional_condition
 
struct  add_conditional_body
 
struct  statement_grammar
 
struct  validate_assignment
 
struct  validate_sample
 
struct  expression_as_statement
 
struct  unscope_locals
 
struct  add_while_condition
 
struct  add_while_body
 
struct  add_loop_identifier
 
struct  remove_loop_identifier
 
struct  validate_int_expr2
 
struct  validate_allow_sample
 
struct  term_grammar
 
struct  set_fun_type
 
struct  set_fun_type_named
 
struct  multiplication_expr
 
struct  division_expr
 
struct  left_division_expr
 
struct  elt_multiplication_expr
 
struct  elt_division_expr
 
struct  negate_expr
 
struct  logical_negate_expr
 
struct  transpose_expr
 
struct  add_expression_dimss
 
struct  set_var_type
 
struct  validate_int_expr3
 
struct  validate_expr_type
 
struct  var_decls_grammar
 
struct  whitespace_grammar
 
+ + + + + + + + + + + + + + + + + + + + + + + +

+Typedefs

typedef singleton_argument
+< double > 
real_argument
 
typedef singleton_argument< int > int_argument
 
typedef singleton_argument
+< unsigned int > 
u_int_argument
 
typedef singleton_argument< bool > bool_argument
 
typedef singleton_argument
+< std::string > 
string_argument
 
typedef int base_expr_type
 
typedef std::pair< expr_type,
+std::vector< expr_type > > 
function_signature_t
 
typedef int var_origin
 
typedef
+std::istreambuf_iterator< char > 
base_iterator_t
 
typedef
+boost::spirit::multi_pass
+< base_iterator_t
forward_iterator_t
 
typedef
+boost::spirit::classic::position_iterator2
+< forward_iterator_t
pos_iterator_t
 
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Functions

std::ostream & write_base_expr_type (std::ostream &o, base_expr_type type)
 
std::ostream & operator<< (std::ostream &o, const expr_type &et)
 
expr_type promote_primitive (const expr_type &et)
 
expr_type promote_primitive (const expr_type &et1, const expr_type &et2)
 
bool is_nil (const expression &e)
 
size_t total_dims (const std::vector< std::vector< expression > > &dimss)
 
expr_type infer_type_indexing (const base_expr_type &expr_base_type, size_t num_expr_dims, size_t num_index_dims)
 
expr_type infer_type_indexing (const expression &expr, size_t num_index_dims)
 
void print_var_origin (std::ostream &o, const var_origin &vo)
 
void generate_expression (const expression &e, std::ostream &o)
 
bool has_rng_suffix (const std::string &s)
 
bool has_var (const expression &e, const variable_map &var_map)
 
bool has_non_param_var (const expression &e, const variable_map &var_map)
 
void write_iteration_csv (std::ostream &output_stream, const double lp, const std::vector< double > &model_values)
 
template<class Model , class RNG >
void write_iteration (std::ostream &output_stream, Model &model, RNG &base_rng, double lp, std::vector< double > &cont_vector, std::vector< int > &disc_vector)
 
void write_stan (std::ostream *s, const std::string prefix="")
 
void write_model (std::ostream *s, const std::string model_name, const std::string prefix="")
 
void write_error_msg (std::ostream *error_stream, const std::exception &e)
 
bool do_print (int n, bool special, int refresh)
 Indicates whether it should print on the current iteration.
 
bool do_print (int n, int refresh)
 Indicates whether it should print on the current iteration.
 
void print_progress (int m, int start, int finish, int refresh, bool warmup)
 
template<class Model , class RNG >
void run_markov_chain (stan::mcmc::base_mcmc *sampler, int num_iterations, int start, int finish, int num_thin, int refresh, bool save, bool warmup, stan::io::mcmc_writer< Model > &writer, stan::mcmc::sample &init_s, Model &model, RNG &base_rng)
 
template<class Model , class RNG >
void warmup (stan::mcmc::base_mcmc *sampler, int num_warmup, int num_samples, int num_thin, int refresh, bool save, stan::io::mcmc_writer< Model > &writer, stan::mcmc::sample &init_s, Model &model, RNG &base_rng)
 
template<class Model , class RNG >
void sample (stan::mcmc::base_mcmc *sampler, int num_warmup, int num_samples, int num_thin, int refresh, bool save, stan::io::mcmc_writer< Model > &writer, stan::mcmc::sample &init_s, Model &model, RNG &base_rng)
 
template<class Sampler >
bool init_static_hmc (stan::mcmc::base_mcmc *sampler, argument *algorithm)
 
template<class Sampler >
bool init_nuts (stan::mcmc::base_mcmc *sampler, argument *algorithm)
 
template<class Sampler >
bool init_adapt (Sampler *sampler, const double delta, const double gamma, const double kappa, const double t0, const Eigen::VectorXd &cont_params)
 
template<class Sampler >
bool init_adapt (stan::mcmc::base_mcmc *sampler, categorical_argument *adapt, const Eigen::VectorXd &cont_params)
 
template<class Sampler >
bool init_windowed_adapt (stan::mcmc::base_mcmc *sampler, categorical_argument *adapt, unsigned int num_warmup, const Eigen::VectorXd &cont_params)
 
template<class Model >
int command (int argc, const char *argv[])
 
bool compile (std::ostream *msgs, std::istream &stan_gm_in, std::ostream &cpp_out, const std::string &model_name, bool include_main=true, const std::string &in_file_name="input")
 Read a Stan model specification from the specified input, parse it, and write the C++ code for it to the specified output.
 
const std::string EOL ("\n")
 
const std::string EOL2 ("\n\n")
 
const std::string INDENT (" ")
 
const std::string INDENT2 (" ")
 
const std::string INDENT3 (" ")
 
template<typename D >
bool has_lub (const D &x)
 
template<typename D >
bool has_ub (const D &x)
 
template<typename D >
bool has_lb (const D &x)
 
template<typename T >
std::string to_string (T i)
 
void generate_indent (size_t indent, std::ostream &o)
 
void generate_void_statement (const std::string &name, const size_t indent, std::ostream &o)
 
void generate_start_namespace (std::string name, std::ostream &o)
 
void generate_end_namespace (std::ostream &o)
 
void generate_comment (std::string const &msg, int indent, std::ostream &o)
 
template<bool isLHS>
void generate_indexed_expr (const std::string &expr, const std::vector< expression > indexes, base_expr_type base_type, size_t e_num_dims, std::ostream &o)
 
void generate_type (const std::string &base_type, const std::vector< expression > &, size_t end, std::ostream &o)
 
std::string base_type_to_string (const base_expr_type &bt)
 
static void print_string_literal (std::ostream &o, const std::string &s)
 
static void print_quoted_expression (std::ostream &o, const expression &e)
 
void generate_printable (const printable &p, std::ostream &o)
 
void generate_using (const std::string &type, std::ostream &o)
 
void generate_using_namespace (const std::string &ns, std::ostream &o)
 
void generate_usings (std::ostream &o)
 
void generate_typedef (const std::string &type, const std::string &abbrev, std::ostream &o)
 
void generate_typedefs (std::ostream &o)
 
void generate_include (const std::string &lib_name, std::ostream &o)
 
void generate_includes (std::ostream &o)
 
void generate_version_comment (std::ostream &o)
 
void generate_class_decl (const std::string &model_name, std::ostream &o)
 
void generate_end_class_decl (std::ostream &o)
 
void generate_initializer (std::ostream &o, const std::string &base_type, const std::vector< expression > &dims, const expression &type_arg1=expression(), const expression &type_arg2=expression())
 
void generate_validate_context_size (std::ostream &o, const std::string &stage, const std::string &var_name, const std::string &base_type, const std::vector< expression > &dims, const expression &type_arg1=expression(), const expression &type_arg2=expression())
 
void generate_validate_positive (const std::string &var_name, const expression &expr, std::ostream &o)
 
void generate_initialization (std::ostream &o, const std::string &var_name, const std::string &base_type, const std::vector< expression > &dims, const expression &type_arg1=expression(), const expression &type_arg2=expression())
 
void generate_var_resizing (const std::vector< var_decl > &vs, std::ostream &o)
 
const std::vector< expressionEMPTY_EXP_VECTOR (0)
 
void generate_local_var_inits (std::vector< var_decl > vs, bool is_var, bool declare_vars, std::ostream &o)
 
void generate_public_decl (std::ostream &o)
 
void generate_private_decl (std::ostream &o)
 
void generate_validate_var_decl (const var_decl &decl, int indent, std::ostream &o)
 
void generate_validate_var_decls (const std::vector< var_decl > decls, int indent, std::ostream &o)
 
void generate_member_var_decls (const std::vector< var_decl > &vs, int indent, std::ostream &o)
 
void generate_local_var_decls (const std::vector< var_decl > &vs, int indent, std::ostream &o, bool is_var)
 
void generate_local_var_init_nan (const std::vector< var_decl > &vs, int indent, std::ostream &o, bool is_var)
 
void generate_init_vars (const std::vector< var_decl > &vs, int indent, std::ostream &o)
 
void generate_validate_transformed_params (const std::vector< var_decl > &vs, int indent, std::ostream &o)
 
void generate_statement (statement const &s, int indent, std::ostream &o, bool include_sampling, bool is_var)
 
void generate_statements (const std::vector< statement > &ss, int indent, std::ostream &o, bool include_sampling, bool is_var)
 
void generate_log_prob (program const &p, std::ostream &o)
 
void suppress_warning (const std::string &indent, const std::string &var_name, std::ostream &o)
 
void generate_member_var_inits (const std::vector< var_decl > &vs, std::ostream &o)
 
void generate_destructor (const std::string &model_name, std::ostream &o)
 
void generate_set_param_ranges (const std::vector< var_decl > &var_decls, std::ostream &o)
 
void generate_constructor (const program &prog, const std::string &model_name, std::ostream &o)
 
void generate_init_method (const std::vector< var_decl > &vs, std::ostream &o)
 
void generate_dims_method (const program &prog, std::ostream &o)
 
void generate_param_names_method (const program &prog, std::ostream &o)
 
void generate_write_csv_header_method (const program &prog, std::ostream &o)
 
void generate_constrained_param_names_method (const program &prog, std::ostream &o)
 
void generate_unconstrained_param_names_method (const program &prog, std::ostream &o)
 
void generate_write_csv_method (const program &prog, const std::string &model_name, std::ostream &o)
 
void generate_write_array_method (const program &prog, const std::string &model_name, std::ostream &o)
 
void generate_main (const std::string &model_name, std::ostream &out)
 
void generate_model_name_method (const std::string &model_name, std::ostream &out)
 
void generate_cpp (const program &prog, const std::string &model_name, std::ostream &out, bool include_main=true)
 
bool is_space (char c)
 
bool is_nonempty (std::string &s)
 
bool parse (std::ostream *output_stream, std::istream &input, const std::string &filename, const std::string &model_name, program &result)
 
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Variables

const int INT_T = 1
 
const int DOUBLE_T = 2
 
const int VECTOR_T = 3
 
const int ROW_VECTOR_T = 4
 
const int MATRIX_T = 5
 
const int ILL_FORMED_T = 6
 
const int model_name_origin = 0
 
const int data_origin = 1
 
const int transformed_data_origin = 2
 
const int parameter_origin = 3
 
const int transformed_parameter_origin = 4
 
const int derived_origin = 5
 
const int local_origin = 6
 
boost::phoenix::function
+< validate_expr_type2
validate_expr_type2_f
 
boost::phoenix::function
+< set_fun_type2
set_fun_type2_f
 
boost::phoenix::function
+< binary_op_expr
binary_op_f
 
boost::phoenix::function
+< addition_expr
addition
 
boost::phoenix::function
+< subtraction_expr
subtraction
 
boost::phoenix::function
+< add_conditional_condition
add_conditional_condition_f
 
boost::phoenix::function
+< add_conditional_body
add_conditional_body_f
 
boost::phoenix::function
+< validate_assignment
validate_assignment_f
 
boost::phoenix::function
+< validate_sample
validate_sample_f
 
boost::phoenix::function
+< expression_as_statement
expression_as_statement_f
 
boost::phoenix::function
+< unscope_locals
unscope_locals_f
 
boost::phoenix::function
+< add_while_condition
add_while_condition_f
 
boost::phoenix::function
+< add_while_body
add_while_body_f
 
boost::phoenix::function
+< add_loop_identifier
add_loop_identifier_f
 
boost::phoenix::function
+< remove_loop_identifier
remove_loop_identifier_f
 
boost::phoenix::function
+< validate_int_expr2
validate_int_expr2_f
 
boost::phoenix::function
+< validate_allow_sample
validate_allow_sample_f
 
boost::phoenix::function
+< set_fun_type
set_fun_type_f
 
boost::phoenix::function
+< set_fun_type_named
set_fun_type_named_f
 
boost::phoenix::function
+< multiplication_expr
multiplication
 
boost::phoenix::function
+< division_expr
division
 
boost::phoenix::function
+< left_division_expr
left_division
 
boost::phoenix::function
+< elt_multiplication_expr
elt_multiplication
 
boost::phoenix::function
+< elt_division_expr
elt_division
 
boost::phoenix::function
+< negate_expr
negate_expr_f
 
boost::phoenix::function
+< logical_negate_expr
logical_negate_expr_f
 
boost::phoenix::function
+< transpose_expr
transpose_f
 
boost::phoenix::function
+< add_expression_dimss
add_expression_dimss_f
 
boost::phoenix::function
+< set_var_type
set_var_type_f
 
boost::phoenix::function
+< validate_int_expr3
validate_int_expr3_f
 
boost::phoenix::function
+< validate_expr_type
validate_expr_type_f
 
+

Detailed Description

+

Directed graphical model compiler.

+

Typedef Documentation

+ +
+
+ + + + +
typedef int stan::gm::base_expr_type
+
+ +

Definition at line 55 of file ast.hpp.

+ +
+
+ +
+
+ + + + +
typedef std::istreambuf_iterator<char> stan::gm::base_iterator_t
+
+ +

Definition at line 10 of file iterator_typedefs.hpp.

+ +
+
+ +
+
+ + + + +
typedef singleton_argument<bool> stan::gm::bool_argument
+
+ +

Definition at line 167 of file singleton_argument.hpp.

+ +
+
+ +
+
+ + + + +
typedef boost::spirit::multi_pass<base_iterator_t> stan::gm::forward_iterator_t
+
+ +

Definition at line 11 of file iterator_typedefs.hpp.

+ +
+
+ +
+
+ + + + +
typedef std::pair<expr_type, std::vector<expr_type> > stan::gm::function_signature_t
+
+ +

Definition at line 92 of file ast.hpp.

+ +
+
+ +
+
+ + + + +
typedef singleton_argument<int> stan::gm::int_argument
+
+ +

Definition at line 165 of file singleton_argument.hpp.

+ +
+
+ +
+
+ + + + +
typedef boost::spirit::classic::position_iterator2<forward_iterator_t> stan::gm::pos_iterator_t
+
+ +

Definition at line 12 of file iterator_typedefs.hpp.

+ +
+
+ +
+
+ + + + +
typedef singleton_argument<double> stan::gm::real_argument
+
+ +

Definition at line 164 of file singleton_argument.hpp.

+ +
+
+ +
+
+ + + + +
typedef singleton_argument<std::string> stan::gm::string_argument
+
+ +

Definition at line 168 of file singleton_argument.hpp.

+ +
+
+ +
+
+ + + + +
typedef singleton_argument<unsigned int> stan::gm::u_int_argument
+
+ +

Definition at line 166 of file singleton_argument.hpp.

+ +
+
+ +
+
+ + + + +
typedef int stan::gm::var_origin
+
+ +

Definition at line 368 of file ast.hpp.

+ +
+
+

Function Documentation

+ +
+
+ + + + + + + + +
std::string stan::gm::base_type_to_string (const base_expr_type & bt)
+
+ +

Definition at line 135 of file generator.hpp.

+ +
+
+ +
+
+
+template<class Model >
+ + + + + + + + + + + + + + + + + + +
int stan::gm::command (int argc,
const char * argv[] 
)
+
+ +

Definition at line 335 of file command.hpp.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
bool stan::gm::compile (std::ostream * msgs,
std::istream & stan_gm_in,
std::ostream & cpp_out,
const std::string & model_name,
bool include_main = true,
const std::string & in_file_name = "input" 
)
+
+ +

Read a Stan model specification from the specified input, parse it, and write the C++ code for it to the specified output.

+
Parameters
+ + + + + + + +
msgsOutput stream for warning messages
stan_gm_inStan model specification
cpp_outC++ code output stream
model_nameName of model class
include_mainIndicates whether to generate a main function
in_file_nameName of input file to use in error messages; defaults to input.
+
+
+
Returns
false if code could not be generated due to syntax error in the Stan model; true otherwise.
+
Parameters
+ + + + + + + +
msgs
stan_gm_in
cpp_out
model_name
include_main
in_file_name
+
+
+ +

Definition at line 38 of file compiler.hpp.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
bool stan::gm::do_print (int n,
bool special,
int refresh 
)
+
+ +

Indicates whether it should print on the current iteration.

+

The function returns: true if refresh > 0 and (n == 0 or (n + 1) % refresh == 0 or special == true) false otherwise. Examples: if refresh = 0, always returns false. if refresh = 10 and special == false, returns true for n = {0, 9, 19, ...}, returns false for n = {1 - 8, 10 - 18, 20 - 28, ...}. if refresh = 10 and special == true, returns true for all n.

+
Parameters
+ + + + +
nIteration number
specialWhen true, returns true
refreshNumber of iterations to refresh
+
+
+ +

Definition at line 118 of file command.hpp.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
bool stan::gm::do_print (int n,
int refresh 
)
+
+ +

Indicates whether it should print on the current iteration.

+

The function returns: true if refresh > 0 and (n == 0 or (n + 1) % refresh == 0) false otherwise. Examples: if refresh = 0, always returns false. if refresh = 10, returns true for n = {0, 9, 19, ...}, returns false for n = {1 - 8, 10 - 18, 20 - 28, ...}.

+
Parameters
+ + + +
nIteration number
refreshNumber of iterations to refresh
+
+
+ +

Definition at line 136 of file command.hpp.

+ +
+
+ +
+
+ + + + + + + + +
const std::vector<expression> stan::gm::EMPTY_EXP_VECTOR ()
+
+ +
+
+ +
+
+ + + + + + + + +
const std::string stan::gm::EOL ("\n" )
+
+ +
+
+ +
+
+ + + + + + + + +
const std::string stan::gm::EOL2 ("\n\n" )
+
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
void stan::gm::generate_class_decl (const std::string & model_name,
std::ostream & o 
)
+
+ +

Definition at line 300 of file generator.hpp.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
void stan::gm::generate_comment (std::string const & msg,
int indent,
std::ostream & o 
)
+
+ +

Definition at line 76 of file generator.hpp.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
void stan::gm::generate_constrained_param_names_method (const program & prog,
std::ostream & o 
)
+
+ +

Definition at line 3055 of file generator.hpp.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
void stan::gm::generate_constructor (const program & prog,
const std::string & model_name,
std::ostream & o 
)
+
+ +

Definition at line 2293 of file generator.hpp.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
void stan::gm::generate_cpp (const program & prog,
const std::string & model_name,
std::ostream & out,
bool include_main = true 
)
+
+ +

Definition at line 3962 of file generator.hpp.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
void stan::gm::generate_destructor (const std::string & model_name,
std::ostream & o 
)
+
+ +

Definition at line 2109 of file generator.hpp.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
void stan::gm::generate_dims_method (const program & prog,
std::ostream & o 
)
+
+ +

Definition at line 2682 of file generator.hpp.

+ +
+
+ +
+
+ + + + + + + + +
void stan::gm::generate_end_class_decl (std::ostream & o)
+
+ +

Definition at line 305 of file generator.hpp.

+ +
+
+ +
+
+ + + + + + + + +
void stan::gm::generate_end_namespace (std::ostream & o)
+
+ +

Definition at line 72 of file generator.hpp.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
void stan::gm::generate_expression (const expression & e,
std::ostream & o 
)
+
+ +

Definition at line 208 of file generator.hpp.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
void stan::gm::generate_include (const std::string & lib_name,
std::ostream & o 
)
+
+ +

Definition at line 285 of file generator.hpp.

+ +
+
+ +
+
+ + + + + + + + +
void stan::gm::generate_includes (std::ostream & o)
+
+ +

Definition at line 289 of file generator.hpp.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
void stan::gm::generate_indent (size_t indent,
std::ostream & o 
)
+
+ +

Definition at line 47 of file generator.hpp.

+ +
+
+ +
+
+
+template<bool isLHS>
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
void stan::gm::generate_indexed_expr (const std::string & expr,
const std::vector< expression > indexes,
base_expr_type base_type,
size_t e_num_dims,
std::ostream & o 
)
+
+ +

Definition at line 84 of file generator.hpp.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
void stan::gm::generate_init_method (const std::vector< var_decl > & vs,
std::ostream & o 
)
+
+ +

Definition at line 2563 of file generator.hpp.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
void stan::gm::generate_init_vars (const std::vector< var_decl > & vs,
int indent,
std::ostream & o 
)
+
+ +

Definition at line 1253 of file generator.hpp.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
void stan::gm::generate_initialization (std::ostream & o,
const std::string & var_name,
const std::string & base_type,
const std::vector< expression > & dims,
const expression & type_arg1 = expression(),
const expression & type_arg2 = expression() 
)
+
+ +

Definition at line 427 of file generator.hpp.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
void stan::gm::generate_initializer (std::ostream & o,
const std::string & base_type,
const std::vector< expression > & dims,
const expression & type_arg1 = expression(),
const expression & type_arg2 = expression() 
)
+
+ +

Definition at line 309 of file generator.hpp.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
void stan::gm::generate_local_var_decls (const std::vector< var_decl > & vs,
int indent,
std::ostream & o,
bool is_var 
)
+
+ +

Definition at line 1111 of file generator.hpp.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
void stan::gm::generate_local_var_init_nan (const std::vector< var_decl > & vs,
int indent,
std::ostream & o,
bool is_var 
)
+
+ +

Definition at line 1184 of file generator.hpp.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
void stan::gm::generate_local_var_inits (std::vector< var_decl > vs,
bool is_var,
bool declare_vars,
std::ostream & o 
)
+
+ +

Definition at line 704 of file generator.hpp.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
void stan::gm::generate_log_prob (program const & p,
std::ostream & o 
)
+
+ +

Definition at line 1605 of file generator.hpp.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
void stan::gm::generate_main (const std::string & model_name,
std::ostream & out 
)
+
+ +

Definition at line 3936 of file generator.hpp.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
void stan::gm::generate_member_var_decls (const std::vector< var_decl > & vs,
int indent,
std::ostream & o 
)
+
+ +

Definition at line 927 of file generator.hpp.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
void stan::gm::generate_member_var_inits (const std::vector< var_decl > & vs,
std::ostream & o 
)
+
+ +

Definition at line 2102 of file generator.hpp.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
void stan::gm::generate_model_name_method (const std::string & model_name,
std::ostream & out 
)
+
+ +

Definition at line 3955 of file generator.hpp.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
void stan::gm::generate_param_names_method (const program & prog,
std::ostream & o 
)
+
+ +

Definition at line 2760 of file generator.hpp.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
void stan::gm::generate_printable (const printable & p,
std::ostream & o 
)
+
+ +

Definition at line 242 of file generator.hpp.

+ +
+
+ +
+
+ + + + + + + + +
void stan::gm::generate_private_decl (std::ostream & o)
+
+ +

Definition at line 724 of file generator.hpp.

+ +
+
+ +
+
+ + + + + + + + +
void stan::gm::generate_public_decl (std::ostream & o)
+
+ +

Definition at line 720 of file generator.hpp.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
void stan::gm::generate_set_param_ranges (const std::vector< var_decl > & var_decls,
std::ostream & o 
)
+
+ +

Definition at line 2281 of file generator.hpp.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
void stan::gm::generate_start_namespace (std::string name,
std::ostream & o 
)
+
+ +

Definition at line 67 of file generator.hpp.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
void stan::gm::generate_statement (statement const & s,
int indent,
std::ostream & o,
bool include_sampling,
bool is_var 
)
+
+ +

Definition at line 1585 of file generator.hpp.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
void stan::gm::generate_statements (const std::vector< statement > & ss,
int indent,
std::ostream & o,
bool include_sampling,
bool is_var 
)
+
+ +

Definition at line 1594 of file generator.hpp.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
void stan::gm::generate_type (const std::string & base_type,
const std::vector< expression > & ,
size_t end,
std::ostream & o 
)
+
+ +

Definition at line 123 of file generator.hpp.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
void stan::gm::generate_typedef (const std::string & type,
const std::string & abbrev,
std::ostream & o 
)
+
+ +

Definition at line 272 of file generator.hpp.

+ +
+
+ +
+
+ + + + + + + + +
void stan::gm::generate_typedefs (std::ostream & o)
+
+ +

Definition at line 278 of file generator.hpp.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
void stan::gm::generate_unconstrained_param_names_method (const program & prog,
std::ostream & o 
)
+
+ +

Definition at line 3225 of file generator.hpp.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
void stan::gm::generate_using (const std::string & type,
std::ostream & o 
)
+
+ +

Definition at line 247 of file generator.hpp.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
void stan::gm::generate_using_namespace (const std::string & ns,
std::ostream & o 
)
+
+ +

Definition at line 251 of file generator.hpp.

+ +
+
+ +
+
+ + + + + + + + +
void stan::gm::generate_usings (std::ostream & o)
+
+ +

Definition at line 256 of file generator.hpp.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
void stan::gm::generate_validate_context_size (std::ostream & o,
const std::string & stage,
const std::string & var_name,
const std::string & base_type,
const std::vector< expression > & dims,
const expression & type_arg1 = expression(),
const expression & type_arg2 = expression() 
)
+
+ +

Definition at line 341 of file generator.hpp.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
void stan::gm::generate_validate_positive (const std::string & var_name,
const expression & expr,
std::ostream & o 
)
+
+ +

Definition at line 416 of file generator.hpp.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
void stan::gm::generate_validate_transformed_params (const std::vector< var_decl > & vs,
int indent,
std::ostream & o 
)
+
+ +

Definition at line 1383 of file generator.hpp.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
void stan::gm::generate_validate_var_decl (const var_decl & decl,
int indent,
std::ostream & o 
)
+
+ +

Definition at line 850 of file generator.hpp.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
void stan::gm::generate_validate_var_decls (const std::vector< var_decl > decls,
int indent,
std::ostream & o 
)
+
+ +

Definition at line 857 of file generator.hpp.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
void stan::gm::generate_var_resizing (const std::vector< var_decl > & vs,
std::ostream & o 
)
+
+ +

Definition at line 492 of file generator.hpp.

+ +
+
+ +
+
+ + + + + + + + +
void stan::gm::generate_version_comment (std::ostream & o)
+
+ +

Definition at line 295 of file generator.hpp.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
void stan::gm::generate_void_statement (const std::string & name,
const size_t indent,
std::ostream & o 
)
+
+ +

Definition at line 52 of file generator.hpp.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
void stan::gm::generate_write_array_method (const program & prog,
const std::string & model_name,
std::ostream & o 
)
+
+ +

Definition at line 3842 of file generator.hpp.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
void stan::gm::generate_write_csv_header_method (const program & prog,
std::ostream & o 
)
+
+ +

Definition at line 2926 of file generator.hpp.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
void stan::gm::generate_write_csv_method (const program & prog,
const std::string & model_name,
std::ostream & o 
)
+
+ +

Definition at line 3497 of file generator.hpp.

+ +
+
+ +
+
+
+template<typename D >
+ + + + + + + + +
bool stan::gm::has_lb (const D & x)
+
+ +

Definition at line 36 of file generator.hpp.

+ +
+
+ +
+
+
+template<typename D >
+ + + + + + + + +
bool stan::gm::has_lub (const D & x)
+
+ +

Definition at line 28 of file generator.hpp.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
bool stan::gm::has_non_param_var (const expression & e,
const variable_map & var_map 
)
+
+ +

Definition at line 481 of file ast_def.cpp.

+ +
+
+ +
+
+ + + + + + + + +
bool stan::gm::has_rng_suffix (const std::string & s)
+
+ +

Definition at line 1039 of file ast_def.cpp.

+ +
+
+ +
+
+
+template<typename D >
+ + + + + + + + +
bool stan::gm::has_ub (const D & x)
+
+ +

Definition at line 32 of file generator.hpp.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
bool stan::gm::has_var (const expression & e,
const variable_map & var_map 
)
+
+ +

Definition at line 435 of file ast_def.cpp.

+ +
+
+ +
+
+ + + + + + + + +
const std::string stan::gm::INDENT (" " )
+
+ +
+
+ +
+
+ + + + + + + + +
const std::string stan::gm::INDENT2 (" " )
+
+ +
+
+ +
+
+ + + + + + + + +
const std::string stan::gm::INDENT3 (" " )
+
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
expr_type stan::gm::infer_type_indexing (const base_expr_type & expr_base_type,
size_t num_expr_dims,
size_t num_index_dims 
)
+
+ +

Definition at line 587 of file ast_def.cpp.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
expr_type stan::gm::infer_type_indexing (const expression & expr,
size_t num_index_dims 
)
+
+ +

Definition at line 606 of file ast_def.cpp.

+ +
+
+ +
+
+
+template<class Sampler >
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
bool stan::gm::init_adapt (Sampler * sampler,
const double delta,
const double gamma,
const double kappa,
const double t0,
const Eigen::VectorXd & cont_params 
)
+
+ +

Definition at line 273 of file command.hpp.

+ +
+
+ +
+
+
+template<class Sampler >
+ + + + + + + + + + + + + + + + + + + + + + + + +
bool stan::gm::init_adapt (stan::mcmc::base_mcmcsampler,
categorical_argument * adapt,
const Eigen::VectorXd & cont_params 
)
+
+ +

Definition at line 302 of file command.hpp.

+ +
+
+ +
+
+
+template<class Sampler >
+ + + + + + + + + + + + + + + + + + +
bool stan::gm::init_nuts (stan::mcmc::base_mcmcsampler,
argument * algorithm 
)
+
+ +

Definition at line 251 of file command.hpp.

+ +
+
+ +
+
+
+template<class Sampler >
+ + + + + + + + + + + + + + + + + + +
bool stan::gm::init_static_hmc (stan::mcmc::base_mcmcsampler,
argument * algorithm 
)
+
+ +

Definition at line 229 of file command.hpp.

+ +
+
+ +
+
+
+template<class Sampler >
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
bool stan::gm::init_windowed_adapt (stan::mcmc::base_mcmcsampler,
categorical_argument * adapt,
unsigned int num_warmup,
const Eigen::VectorXd & cont_params 
)
+
+ +

Definition at line 316 of file command.hpp.

+ +
+
+ +
+
+ + + + + + + + +
bool stan::gm::is_nil (const expression & e)
+
+ +

Definition at line 500 of file ast_def.cpp.

+ +
+
+ +
+
+ + + + + + + + +
bool stan::gm::is_nonempty (std::string & s)
+
+ +

Definition at line 50 of file parser.hpp.

+ +
+
+ +
+
+ + + + + + + + +
bool stan::gm::is_space (char c)
+
+ +

Definition at line 46 of file parser.hpp.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
std::ostream & stan::gm::operator<< (std::ostream & o,
const expr_type & et 
)
+
+ +

Definition at line 92 of file ast_def.cpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
bool stan::gm::parse (std::ostream * output_stream,
std::istream & input,
const std::string & filename,
const std::string & model_name,
program & result 
)
+
+inline
+
+ +

Definition at line 62 of file parser.hpp.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
void stan::gm::print_progress (int m,
int start,
int finish,
int refresh,
bool warmup 
)
+
+ +

Definition at line 140 of file command.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
static void stan::gm::print_quoted_expression (std::ostream & o,
const expression & e 
)
+
+static
+
+ +

Definition at line 224 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
static void stan::gm::print_string_literal (std::ostream & o,
const std::string & s 
)
+
+static
+
+ +

Definition at line 213 of file generator.hpp.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
void stan::gm::print_var_origin (std::ostream & o,
const var_origin & vo 
)
+
+ +

Definition at line 658 of file ast_def.cpp.

+ +
+
+ +
+
+ + + + + + + + +
expr_type stan::gm::promote_primitive (const expr_type & et)
+
+ +

Definition at line 99 of file ast_def.cpp.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
expr_type stan::gm::promote_primitive (const expr_type & et1,
const expr_type & et2 
)
+
+ +

Definition at line 105 of file ast_def.cpp.

+ +
+
+ +
+
+
+template<class Model , class RNG >
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
void stan::gm::run_markov_chain (stan::mcmc::base_mcmcsampler,
int num_iterations,
int start,
int finish,
int num_thin,
int refresh,
bool save,
bool warmup,
stan::io::mcmc_writer< Model > & writer,
stan::mcmc::sampleinit_s,
Model & model,
RNG & base_rng 
)
+
+ +

Definition at line 160 of file command.hpp.

+ +
+
+ +
+
+
+template<class Model , class RNG >
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
void stan::gm::sample (stan::mcmc::base_mcmcsampler,
int num_warmup,
int num_samples,
int num_thin,
int refresh,
bool save,
stan::io::mcmc_writer< Model > & writer,
stan::mcmc::sampleinit_s,
Model & model,
RNG & base_rng 
)
+
+ +

Definition at line 208 of file command.hpp.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
void stan::gm::suppress_warning (const std::string & indent,
const std::string & var_name,
std::ostream & o 
)
+
+ +

Definition at line 2093 of file generator.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + + + + +
std::string stan::gm::to_string (i)
+
+ +

Definition at line 41 of file generator.hpp.

+ +
+
+ +
+
+ + + + + + + + +
size_t stan::gm::total_dims (const std::vector< std::vector< expression > > & dimss)
+
+ +

Definition at line 579 of file ast_def.cpp.

+ +
+
+ +
+
+
+template<class Model , class RNG >
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
void stan::gm::warmup (stan::mcmc::base_mcmcsampler,
int num_warmup,
int num_samples,
int num_thin,
int refresh,
bool save,
stan::io::mcmc_writer< Model > & writer,
stan::mcmc::sampleinit_s,
Model & model,
RNG & base_rng 
)
+
+ +

Definition at line 189 of file command.hpp.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
std::ostream & stan::gm::write_base_expr_type (std::ostream & o,
base_expr_type type 
)
+
+ +

Definition at line 23 of file ast_def.cpp.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
void stan::gm::write_error_msg (std::ostream * error_stream,
const std::exception & e 
)
+
+ +

Definition at line 82 of file command.hpp.

+ +
+
+ +
+
+
+template<class Model , class RNG >
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
void stan::gm::write_iteration (std::ostream & output_stream,
Model & model,
RNG & base_rng,
double lp,
std::vector< double > & cont_vector,
std::vector< int > & disc_vector 
)
+
+ +

Definition at line 53 of file command.hpp.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
void stan::gm::write_iteration_csv (std::ostream & output_stream,
const double lp,
const std::vector< double > & model_values 
)
+
+ +

Definition at line 42 of file command.hpp.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
void stan::gm::write_model (std::ostream * s,
const std::string model_name,
const std::string prefix = "" 
)
+
+ +

Definition at line 75 of file command.hpp.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
void stan::gm::write_stan (std::ostream * s,
const std::string prefix = "" 
)
+
+ +

Definition at line 66 of file command.hpp.

+ +
+
+

Variable Documentation

+ +
+
+ + + + +
boost::phoenix::function<add_conditional_body> stan::gm::add_conditional_body_f
+
+ +

Definition at line 83 of file statement_2_grammar_def.hpp.

+ +
+
+ +
+
+ + + + +
boost::phoenix::function<add_conditional_condition> stan::gm::add_conditional_condition_f
+
+ +

Definition at line 73 of file statement_2_grammar_def.hpp.

+ +
+
+ +
+
+ + + + +
boost::phoenix::function<add_expression_dimss> stan::gm::add_expression_dimss_f
+
+ +

Definition at line 361 of file term_grammar_def.hpp.

+ +
+
+ +
+
+ + + + +
boost::phoenix::function<add_loop_identifier> stan::gm::add_loop_identifier_f
+
+ +

Definition at line 383 of file statement_grammar_def.hpp.

+ +
+
+ +
+
+ + + + +
boost::phoenix::function<add_while_body> stan::gm::add_while_body_f
+
+ +

Definition at line 361 of file statement_grammar_def.hpp.

+ +
+
+ +
+
+ + + + +
boost::phoenix::function<add_while_condition> stan::gm::add_while_condition_f
+
+ +

Definition at line 351 of file statement_grammar_def.hpp.

+ +
+
+ +
+
+ + + + +
boost::phoenix::function<addition_expr> stan::gm::addition
+
+ +

Definition at line 140 of file expression_grammar_def.hpp.

+ +
+
+ +
+
+ + + + +
boost::phoenix::function<binary_op_expr> stan::gm::binary_op_f
+
+ +

Definition at line 116 of file expression_grammar_def.hpp.

+ +
+
+ +
+
+ + + + +
const int stan::gm::data_origin = 1
+
+ +

Definition at line 370 of file ast.hpp.

+ +
+
+ +
+
+ + + + +
const int stan::gm::derived_origin = 5
+
+ +

Definition at line 374 of file ast.hpp.

+ +
+
+ +
+
+ + + + +
boost::phoenix::function<division_expr> stan::gm::division
+
+ +

Definition at line 200 of file term_grammar_def.hpp.

+ +
+
+ +
+
+ + + + +
const int stan::gm::DOUBLE_T = 2
+
+ +

Definition at line 60 of file ast.hpp.

+ +
+
+ +
+
+ + + + +
boost::phoenix::function<elt_division_expr> stan::gm::elt_division
+
+ +

Definition at line 278 of file term_grammar_def.hpp.

+ +
+
+ +
+
+ + + + +
boost::phoenix::function<elt_multiplication_expr> stan::gm::elt_multiplication
+
+ +

Definition at line 254 of file term_grammar_def.hpp.

+ +
+
+ +
+
+ + + + +
boost::phoenix::function<expression_as_statement> stan::gm::expression_as_statement_f
+
+ +

Definition at line 323 of file statement_grammar_def.hpp.

+ +
+
+ +
+
+ + + + +
const int stan::gm::ILL_FORMED_T = 6
+
+ +

Definition at line 64 of file ast.hpp.

+ +
+
+ +
+
+ + + + +
const int stan::gm::INT_T = 1
+
+ +

Definition at line 59 of file ast.hpp.

+ +
+
+ +
+
+ + + + +
boost::phoenix::function<left_division_expr> stan::gm::left_division
+
+ +

Definition at line 230 of file term_grammar_def.hpp.

+ +
+
+ +
+
+ + + + +
const int stan::gm::local_origin = 6
+
+ +

Definition at line 375 of file ast.hpp.

+ +
+
+ +
+
+ + + + +
boost::phoenix::function<logical_negate_expr> stan::gm::logical_negate_expr_f
+
+ +

Definition at line 322 of file term_grammar_def.hpp.

+ +
+
+ +
+
+ + + + +
const int stan::gm::MATRIX_T = 5
+
+ +

Definition at line 63 of file ast.hpp.

+ +
+
+ +
+
+ + + + +
const int stan::gm::model_name_origin = 0
+
+ +

Definition at line 369 of file ast.hpp.

+ +
+
+ +
+
+ + + + +
boost::phoenix::function<multiplication_expr> stan::gm::multiplication
+
+ +

Definition at line 154 of file term_grammar_def.hpp.

+ +
+
+ +
+
+ + + + +
boost::phoenix::function<negate_expr> stan::gm::negate_expr_f
+
+ +

Definition at line 302 of file term_grammar_def.hpp.

+ +
+
+ +
+
+ + + + +
const int stan::gm::parameter_origin = 3
+
+ +

Definition at line 372 of file ast.hpp.

+ +
+
+ +
+
+ + + + +
boost::phoenix::function<remove_loop_identifier> stan::gm::remove_loop_identifier_f
+
+ +

Definition at line 393 of file statement_grammar_def.hpp.

+ +
+
+ +
+
+ + + + +
const int stan::gm::ROW_VECTOR_T = 4
+
+ +

Definition at line 62 of file ast.hpp.

+ +
+
+ +
+
+ + + + +
boost::phoenix::function<set_fun_type2> stan::gm::set_fun_type2_f
+
+ +

Definition at line 85 of file expression_grammar_def.hpp.

+ +
+
+ +
+
+ + + + +
boost::phoenix::function<set_fun_type> stan::gm::set_fun_type_f
+
+ +

Definition at line 88 of file term_grammar_def.hpp.

+ +
+
+ +
+
+ + + + +
boost::phoenix::function<set_fun_type_named> stan::gm::set_fun_type_named_f
+
+ +

Definition at line 129 of file term_grammar_def.hpp.

+ +
+
+ +
+
+ + + + +
boost::phoenix::function<set_var_type> stan::gm::set_var_type_f
+
+ +

Definition at line 391 of file term_grammar_def.hpp.

+ +
+
+ +
+
+ + + + +
boost::phoenix::function<subtraction_expr> stan::gm::subtraction
+
+ +

Definition at line 163 of file expression_grammar_def.hpp.

+ +
+
+ +
+
+ + + + +
const int stan::gm::transformed_data_origin = 2
+
+ +

Definition at line 371 of file ast.hpp.

+ +
+
+ +
+
+ + + + +
const int stan::gm::transformed_parameter_origin = 4
+
+ +

Definition at line 373 of file ast.hpp.

+ +
+
+ +
+
+ + + + +
boost::phoenix::function<transpose_expr> stan::gm::transpose_f
+
+ +

Definition at line 341 of file term_grammar_def.hpp.

+ +
+
+ +
+
+ + + + +
boost::phoenix::function<unscope_locals> stan::gm::unscope_locals_f
+
+ +

Definition at line 334 of file statement_grammar_def.hpp.

+ +
+
+ +
+
+ + + + +
boost::phoenix::function<validate_allow_sample> stan::gm::validate_allow_sample_f
+
+ +

Definition at line 425 of file statement_grammar_def.hpp.

+ +
+
+ +
+
+ + + + +
boost::phoenix::function<validate_assignment> stan::gm::validate_assignment_f
+
+ +

Definition at line 158 of file statement_grammar_def.hpp.

+ +
+
+ +
+
+ + + + +
boost::phoenix::function<validate_expr_type2> stan::gm::validate_expr_type2_f
+
+ +

Definition at line 67 of file expression_grammar_def.hpp.

+ +
+
+ +
+
+ + + + +
boost::phoenix::function<validate_expr_type> stan::gm::validate_expr_type_f
+
+ +

Definition at line 423 of file term_grammar_def.hpp.

+ +
+
+ +
+
+ + + + +
boost::phoenix::function<validate_int_expr2> stan::gm::validate_int_expr2_f
+
+ +

Definition at line 409 of file statement_grammar_def.hpp.

+ +
+
+ +
+
+ + + + +
boost::phoenix::function<validate_int_expr3> stan::gm::validate_int_expr3_f
+
+ +

Definition at line 407 of file term_grammar_def.hpp.

+ +
+
+ +
+
+ + + + +
boost::phoenix::function<validate_sample> stan::gm::validate_sample_f
+
+ +

Definition at line 295 of file statement_grammar_def.hpp.

+ +
+
+ +
+
+ + + + +
const int stan::gm::VECTOR_T = 3
+
+ +

Definition at line 61 of file ast.hpp.

+ +
+
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/namespacestan_1_1io.html b/doc/api/html/namespacestan_1_1io.html new file mode 100644 index 00000000000..a21a4852ed7 --- /dev/null +++ b/doc/api/html/namespacestan_1_1io.html @@ -0,0 +1,413 @@ + + + + + +Stan: stan::io Namespace Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::io Namespace Reference
+
+
+ +

Input/output utilities. +More...

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Classes

class  cmd_line
 Parses and stores command-line arguments. More...
 
class  csv_writer
 Writes Stan variables in comma-separated-value format to an output stream. More...
 
class  dump_writer
 Writes data into the S-plus dump format. More...
 
class  dump_reader
 Reads data from S-plus dump format. More...
 
class  dump
 Represents named arrays with dimensions. More...
 
class  mcmc_writer
 
class  reader
 A stream-based reader for integer, scalar, vector, matrix and array data types, with Jacobian calculations. More...
 
struct  stan_csv_metadata
 
struct  stan_csv_adaptation
 
struct  stan_csv_timing
 
struct  stan_csv
 
class  stan_csv_reader
 Reads from a Stan output csv file. More...
 
class  var_context
 A var_reader reads array variables of integer and floating point type by name and dimension. More...
 
class  writer
 A stream-based writer for integer, scalar, vector, matrix and array data types, which transforms from constrained to a sequence of constrained variables. More...
 
+ + + + + + + + + + + + + + + + + + + +

+Functions

void pad_help_option (std::ostream *o, const std::string &option="", unsigned int width=20)
 Print help option with padding.
 
void print_help_helper (std::ostream *o, const std::string &key_val, const std::string &msg, const std::string &note="")
 Prints single print option to output ptr if non-null.
 
void print_help_option (std::ostream *o, const std::string &key, const std::string &value_type, const std::string &msg, const std::string &note="")
 Prints single print option to output ptr if non-null.
 
template<>
bool cmd_line::bare< std::string > (size_t n, std::string &x) const
 
template<>
bool cmd_line::val< std::string > (const std::string &key, std::string &x) const
 
std::string utc_time_string ()
 Return the current coordinated universal time (UTC) as a string.
 
+

Detailed Description

+

Input/output utilities.

+

Function Documentation

+ +
+
+
+template<>
+ + + + + + + + + + + + + + + + + + +
bool stan::io::cmd_line::bare< std::string > (size_t n,
std::string & x 
) const
+
+ +

Definition at line 274 of file cmd_line.hpp.

+ +
+
+ +
+
+
+template<>
+ + + + + + + + + + + + + + + + + + +
bool stan::io::cmd_line::val< std::string > (const std::string & key,
std::string & x 
) const
+
+ +

Definition at line 284 of file cmd_line.hpp.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
void stan::io::pad_help_option (std::ostream * o,
const std::string & option = "",
unsigned int width = 20 
)
+
+ +

Print help option with padding.

+

Print 2 spaces, the specified help option, then pad to the specified width with spaces. If there is not room for at least 2 padding spaces, start a new line and pad out to width.

+
Parameters
+ + + + +
optionOption to print (default to empty string).
widthWidth of option (defaults to 20).
oOutput stream ptr, default to null
+
+
+ +

Definition at line 27 of file cmd_line.hpp.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
void stan::io::print_help_helper (std::ostream * o,
const std::string & key_val,
const std::string & msg,
const std::string & note = "" 
)
+
+ +

Prints single print option to output ptr if non-null.

+
Parameters
+ + + + + +
o
key_val
msg
note
+
+
+ +

Definition at line 49 of file cmd_line.hpp.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
void stan::io::print_help_option (std::ostream * o,
const std::string & key,
const std::string & value_type,
const std::string & msg,
const std::string & note = "" 
)
+
+ +

Prints single print option to output ptr if non-null.

+
Parameters
+ + + + + + +
o
key
value_type
msg
note
+
+
+ +

Definition at line 74 of file cmd_line.hpp.

+ +
+
+ +
+
+ + + + + + + +
std::string stan::io::utc_time_string ()
+
+ +

Return the current coordinated universal time (UTC) as a string.

+

Output is of the form "Fri Feb 24 21:15:36 2012"

+
Returns
String representation of current UTC.
+ +

Definition at line 18 of file util.hpp.

+ +
+
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/namespacestan_1_1math.html b/doc/api/html/namespacestan_1_1math.html new file mode 100644 index 00000000000..a137e1d4388 --- /dev/null +++ b/doc/api/html/namespacestan_1_1math.html @@ -0,0 +1,17659 @@ + + + + + +Stan: stan::math Namespace Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::math Namespace Reference
+
+
+ +

Matrices and templated mathematical functions. +More...

+ + + + + +

+Namespaces

namespace  policies
 Extending boost functionality.
 
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Classes

class  LDLT_factor< stan::agrad::var, R, C >
 A template specialization of src/stan/math/matrix/LDLT_factor.hpp for stan::agrad::var which can be used with all the *_ldlt functions. More...
 
class  accumulator
 Class to accumulate values and eventually return their sum. More...
 
struct  array_builder
 Structure for building up arrays in an expression (rather than in statements) using an argumentchaining add() method and a getter method array() to return the result. More...
 
struct  common_type
 
struct  common_type< std::vector< T1 >, std::vector< T2 > >
 
struct  common_type< Eigen::Matrix< T1, R, C >, Eigen::Matrix< T2, R, C > >
 
class  LDLT_factor< double, R, C >
 LDLT_factor is a thin wrapper on Eigen::LDLT to allow for reusing factorizations and efficient autodiff of things like log determinants and solutions to linear systems. More...
 
struct  promoter
 
struct  promoter< T, T >
 
struct  promoter< std::vector< F >, std::vector< T > >
 
struct  promoter< std::vector< T >, std::vector< T > >
 
struct  promoter< Eigen::Matrix< F, R, C >, Eigen::Matrix< T, R, C > >
 
struct  promoter< Eigen::Matrix< T, R, C >, Eigen::Matrix< T, R, C > >
 
struct  store_type
 
struct  store_type< double >
 
struct  store_type< int >
 
struct  pass_type
 
struct  pass_type< double >
 
struct  pass_type< int >
 
class  seq_view
 
class  seq_view< T, Eigen::Matrix< S, Eigen::Dynamic, 1 > >
 
class  seq_view< T, Eigen::Matrix< S, 1, Eigen::Dynamic > >
 
class  seq_view< T, Eigen::Matrix< S, Eigen::Dynamic, Eigen::Dynamic > >
 
class  seq_view< T, std::vector< S > >
 
class  seq_view< T, std::vector< T > >
 
class  seq_view< T, std::vector< std::vector< T > > >
 
class  seq_view< double, std::vector< int > >
 
+ + + + + + + + + + + + +

+Typedefs

typedef Eigen::Matrix< double,
+Eigen::Dynamic, Eigen::Dynamic >
+::Index 
size_type
 
typedef Eigen::Matrix< double,
+Eigen::Dynamic, Eigen::Dynamic > 
matrix_d
 Type for matrix of double values.
 
typedef Eigen::Matrix< double,
+Eigen::Dynamic, 1 > 
vector_d
 Type for (column) vector of double values.
 
typedef Eigen::Matrix< double,
+1, Eigen::Dynamic > 
row_vector_d
 Type for (row) vector of double values.
 
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Functions

double pi ()
 Return the value of pi.
 
double e ()
 Return the base of the natural logarithm.
 
double sqrt2 ()
 Return the square root of two.
 
double log10 ()
 Return natural logarithm of ten.
 
double positive_infinity ()
 Return positive infinity.
 
double negative_infinity ()
 Return negative infinity.
 
double not_a_number ()
 Return (quiet) not-a-number.
 
double machine_precision ()
 Returns the difference between 1.0 and the next value representable.
 
template<typename T_y , typename T_low , typename T_high , typename T_result >
bool check_bounded (const char *function, const T_y &y, const T_low &low, const T_high &high, const char *name, T_result *result)
 
template<typename T_y , typename T_low , typename T_high >
bool check_bounded (const char *function, const T_y &y, const T_low &low, const T_high &high, const char *name)
 
template<typename T , typename T_result >
bool check_consistent_size (size_t max_size, const char *function, const T &x, const char *name, T_result *result)
 
template<typename T1 , typename T2 , typename T_result >
bool check_consistent_sizes (const char *function, const T1 &x1, const T2 &x2, const char *name1, const char *name2, T_result *result)
 
template<typename T1 , typename T2 , typename T3 , typename T_result >
bool check_consistent_sizes (const char *function, const T1 &x1, const T2 &x2, const T3 &x3, const char *name1, const char *name2, const char *name3, T_result *result)
 
template<typename T1 , typename T2 , typename T3 , typename T4 , typename T_result >
bool check_consistent_sizes (const char *function, const T1 &x1, const T2 &x2, const T3 &x3, const T4 &x4, const char *name1, const char *name2, const char *name3, const char *name4, T_result *result)
 
template<typename T_y , typename T_result >
bool check_finite (const char *function, const T_y &y, const char *name, T_result *result)
 Checks if the variable y is finite.
 
template<typename T >
bool check_finite (const char *function, const T &y, const char *name)
 
template<typename T_y , typename T_low , typename T_result >
bool check_greater (const char *function, const T_y &y, const T_low &low, const char *name, T_result *result)
 
template<typename T_y , typename T_low >
bool check_greater (const char *function, const T_y &y, const T_low &low, const char *name)
 
template<typename T_y , typename T_low , typename T_result >
bool check_greater_or_equal (const char *function, const T_y &y, const T_low &low, const char *name, T_result *result)
 
template<typename T_y , typename T_low >
bool check_greater_or_equal (const char *function, const T_y &y, const T_low &low, const char *name)
 
template<typename T_y , typename T_high , typename T_result >
bool check_less (const char *function, const T_y &y, const T_high &high, const char *name, T_result *result)
 
template<typename T_y , typename T_high >
bool check_less (const char *function, const T_y &y, const T_high &high, const char *name)
 
template<typename T_y , typename T_high , typename T_result >
bool check_less_or_equal (const char *function, const T_y &y, const T_high &high, const char *name, T_result *result)
 
template<typename T_y , typename T_high >
bool check_less_or_equal (const char *function, const T_y &y, const T_high &high, const char *name)
 
template<typename T_y , typename T_result >
bool check_nonnegative (const char *function, const T_y &y, const char *name, T_result *result)
 
template<typename T_y >
bool check_nonnegative (const char *function, const T_y &y, const char *name)
 
template<typename T_y , typename T_result >
bool check_not_nan (const char *function, const T_y &y, const char *name, T_result *result=0)
 Checks if the variable y is nan.
 
template<typename T >
bool check_not_nan (const char *function, const T &y, const char *name)
 
template<typename T_y , typename T_result >
bool check_positive (const char *function, const T_y &y, const char *name, T_result *result)
 
template<typename T >
bool check_positive (const char *function, const T &x, const char *name)
 
template<typename T_y , typename T_result , typename T_msg2 >
bool dom_err (const char *function, const T_y &y, const char *name, const char *error_msg, T_msg2 error_msg2, T_result *result)
 
template<typename T_y , typename T_result , typename T_msg2 >
bool dom_err_vec (size_t i, const char *function, const T_y &y, const char *name, const char *error_msg, T_msg2 error_msg2, T_result *result)
 
template<typename T_y , typename T_result >
bool check_cholesky_factor (const char *function, const Eigen::Matrix< T_y, Eigen::Dynamic, Eigen::Dynamic > &y, const char *name, T_result *result)
 Return true if the specified matrix is a valid Cholesky factor.
 
template<typename T >
bool check_cholesky_factor (const char *function, const Eigen::Matrix< T, Eigen::Dynamic, Eigen::Dynamic > &y, const char *name, T *result=0)
 
template<typename T_y , typename T_result >
bool check_cholesky_factor (const char *function, const Eigen::Matrix< T_y, Eigen::Dynamic, Eigen::Dynamic > &y, T_result *result)
 Return true if the specified matrix is a valid Cholesky factor (lower triangular, positive diagonal).
 
template<typename T >
bool check_cholesky_factor (const char *function, const Eigen::Matrix< T, Eigen::Dynamic, Eigen::Dynamic > &y, T *result=0)
 
template<typename T_y , typename T_result >
bool check_corr_matrix (const char *function, const Eigen::Matrix< T_y, Eigen::Dynamic, Eigen::Dynamic > &y, const char *name, T_result *result)
 Return true if the specified matrix is a valid correlation matrix.
 
template<typename T >
bool check_corr_matrix (const char *function, const Eigen::Matrix< T, Eigen::Dynamic, Eigen::Dynamic > &y, const char *name, T *result=0)
 
template<typename T_y , typename T_result >
bool check_cov_matrix (const char *function, const Eigen::Matrix< T_y, Eigen::Dynamic, Eigen::Dynamic > &y, const char *name, T_result *result)
 Return true if the specified matrix is a valid covariance matrix.
 
template<typename T >
bool check_cov_matrix (const char *function, const Eigen::Matrix< T, Eigen::Dynamic, Eigen::Dynamic > &y, const char *name, T *result=0)
 
template<typename T_covar , typename T_result >
bool check_cov_matrix (const char *function, const Eigen::Matrix< T_covar, Eigen::Dynamic, Eigen::Dynamic > &Sigma, T_result *result)
 Return true if the specified matrix is a valid covariance matrix.
 
template<typename T >
bool check_cov_matrix (const char *function, const Eigen::Matrix< T, Eigen::Dynamic, Eigen::Dynamic > &Sigma, T *result=0)
 
template<typename T , int R, int C, typename T_result >
bool check_ldlt_factor (const char *function, stan::math::LDLT_factor< T, R, C > &A, const char *name, T_result *result)
 Return true if the underlying matrix is positive definite.
 
template<typename T , int R, int C>
bool check_ldlt_factor (const char *function, stan::math::LDLT_factor< T, R, C > &A, const char *name, T *result=0)
 
template<typename T_y , typename T_result >
bool check_lower_triangular (const char *function, const Eigen::Matrix< T_y, Eigen::Dynamic, Eigen::Dynamic > &y, const char *name, T_result *result)
 Return true if the specified matrix is lower triangular.
 
template<typename T >
bool check_lower_triangular (const char *function, const Eigen::Matrix< T, Eigen::Dynamic, Eigen::Dynamic > &y, const char *name, T *result=0)
 
template<typename T_y , typename T_result >
bool check_ordered (const char *function, const Eigen::Matrix< T_y, Eigen::Dynamic, 1 > &y, const char *name, T_result *result)
 Return true if the specified vector is sorted into increasing order.
 
template<typename T >
bool check_ordered (const char *function, const Eigen::Matrix< T, Eigen::Dynamic, 1 > &y, const char *name, T *result=0)
 
template<typename T_y , typename T_result >
bool check_pos_definite (const char *function, const Eigen::Matrix< T_y, Eigen::Dynamic, Eigen::Dynamic > &y, const char *name, T_result *result)
 Return true if the specified matrix is positive definite.
 
template<typename T >
bool check_pos_definite (const char *function, const Eigen::Matrix< T, Eigen::Dynamic, Eigen::Dynamic > &y, const char *name, T *result=0)
 
template<typename T_y , typename T_result >
bool check_pos_semidefinite (const char *function, const Eigen::Matrix< T_y, Eigen::Dynamic, Eigen::Dynamic > &y, const char *name, T_result *result)
 Return true if the specified matrix is positive definite.
 
template<typename T >
bool check_pos_semidefinite (const char *function, const Eigen::Matrix< T, Eigen::Dynamic, Eigen::Dynamic > &y, const char *name, T *result=0)
 
template<typename T_y , typename T_result >
bool check_positive_ordered (const char *function, const Eigen::Matrix< T_y, Eigen::Dynamic, 1 > &y, const char *name, T_result *result)
 Return true if the specified vector contains only non-negative values and is sorted into increasing order.
 
template<typename T >
bool check_positive_ordered (const char *function, const Eigen::Matrix< T, Eigen::Dynamic, 1 > &y, const char *name, T *result=0)
 
template<typename T_prob , typename T_result >
bool check_simplex (const char *function, const Eigen::Matrix< T_prob, Eigen::Dynamic, 1 > &theta, const char *name, T_result *result)
 Return true if the specified vector is simplex.
 
template<typename T >
bool check_simplex (const char *function, const Eigen::Matrix< T, Eigen::Dynamic, 1 > &theta, const char *name, T *result=0)
 
template<typename T_size1 , typename T_size2 , typename T_result >
bool check_size_match (const char *function, T_size1 i, const char *name_i, T_size2 j, const char *name_j, T_result *result)
 
template<typename T_size1 , typename T_size2 >
bool check_size_match (const char *function, T_size1 i, const char *name_i, T_size2 j, const char *name_j, T_size1 *result=0)
 
template<typename T_y , typename T_result >
bool check_spsd_matrix (const char *function, const Eigen::Matrix< T_y, Eigen::Dynamic, Eigen::Dynamic > &y, const char *name, T_result *result)
 Return true if the specified matrix is a square, symmetric, and positive semi-definite.
 
template<typename T >
bool check_spsd_matrix (const char *function, const Eigen::Matrix< T, Eigen::Dynamic, Eigen::Dynamic > &y, const char *name, T *result=0)
 
template<typename T_y , typename T_result >
bool check_square (const char *function, const Eigen::Matrix< T_y, Eigen::Dynamic, Eigen::Dynamic > &y, const char *name, T_result *result)
 Return true if the specified matrix is square.
 
template<typename T >
bool check_square (const char *function, const Eigen::Matrix< T, Eigen::Dynamic, Eigen::Dynamic > &y, const char *name, T *result=0)
 
template<typename T_y , typename T_result >
bool check_symmetric (const char *function, const Eigen::Matrix< T_y, Eigen::Dynamic, Eigen::Dynamic > &y, const char *name, T_result *result)
 Return true if the specified matrix is symmetric.
 
template<typename T >
bool check_symmetric (const char *function, const Eigen::Matrix< T, Eigen::Dynamic, Eigen::Dynamic > &y, const char *name, T *result=0)
 
template<typename T_prob , typename T_result >
bool check_unit_vector (const char *function, const Eigen::Matrix< T_prob, Eigen::Dynamic, 1 > &theta, const char *name, T_result *result)
 Return true if the specified vector is unit vector.
 
template<typename T >
bool check_unit_vector (const char *function, const Eigen::Matrix< T, Eigen::Dynamic, 1 > &theta, const char *name, T *result=0)
 
void validate_non_negative_index (const std::string &var_name, const std::string &expr, int val)
 
double abs (double x)
 Return floating-point absolute value.
 
template<typename T >
int as_bool (const T x)
 Return 1 if the argument is unequal to zero and 0 otherwise.
 
template<>
int as_bool< int > (const int x)
 Return an integer with an equivalent boolean value to specified input.
 
template<typename T2 >
T2 bessel_first_kind (const int v, const T2 z)
 
template<typename T2 >
T2 bessel_second_kind (const int v, const T2 z)
 
template<typename T >
boost::math::tools::promote_args
+< T >::type 
binary_log_loss (const int y, const T y_hat)
 Returns the log loss function for binary classification with specified reference and response values.
 
template<typename T_N , typename T_n >
boost::math::tools::promote_args
+< T_N, T_n >::type 
binomial_coefficient_log (const T_N N, const T_n n)
 Return the log of the binomial coefficient for the specified arguments.
 
double digamma (double x)
 
double dist (const std::vector< double > &x, const std::vector< double > &y)
 
double dot (const std::vector< double > &x, const std::vector< double > &y)
 
double dot_self (const std::vector< double > &x)
 
template<typename T >
boost::math::tools::promote_args
+< T >::type 
exp2 (const T y)
 Return the exponent base 2 of the specified argument (C99).
 
template<typename T1 , typename T2 >
boost::math::tools::promote_args
+< T1, T2 >::type 
falling_factorial (const T1 x, const T2 n)
 
template<typename T1 , typename T2 >
boost::math::tools::promote_args
+< T1, T2 >::type 
fdim (T1 a, T2 b)
 The positive difference function (C99).
 
template<typename T1 , typename T2 , typename T3 >
boost::math::tools::promote_args
+< T1, T2, T3 >::type 
fma (const T1 a, const T2 b, const T3 c)
 The fused multiply-add operation (C99).
 
double gamma_p (double x, double a)
 
double gamma_q (double x, double a)
 
double ibeta (const double a, const double b, const double x)
 The normalized incomplete beta function of a, b, and x.
 
template<typename T_true , typename T_false >
boost::math::tools::promote_args
+< T_true, T_false >::type 
if_else (const bool c, const T_true y_true, const T_false y_false)
 Return the second argument if the first argument is true and otherwise return the second argument.
 
template<typename T >
unsigned int int_step (const T y)
 The integer step, or Heaviside, function.
 
template<typename T >
boost::math::tools::promote_args
+< T >::type 
inv (const T x)
 
template<typename T >
boost::math::tools::promote_args
+< T >::type 
inv_cloglog (T x)
 The inverse complementary log-log function.
 
template<typename T >
boost::math::tools::promote_args
+< T >::type 
inv_logit (const T a)
 Returns the inverse logit function applied to the argument.
 
template<typename T >
boost::math::tools::promote_args
+< T >::type 
inv_sqrt (const T x)
 
template<typename T >
boost::math::tools::promote_args
+< T >::type 
inv_square (const T x)
 
template<typename Vector >
void inverse_softmax (const Vector &simplex, Vector &y)
 Writes the inverse softmax of the simplex argument into the second argument.
 
template<typename T >
bool is_uninitialized (T x)
 Returns true if the specified variable is uninitialized.
 
template<typename T1 , typename T2 >
boost::math::tools::promote_args
+< T1, T2 >::type 
lbeta (const T1 a, const T2 b)
 Return the log of the beta function applied to the specified arguments.
 
double lgamma (double x)
 
template<typename T >
boost::math::tools::promote_args
+< T >::type 
lmgamma (const int k, T x)
 Return the natural logarithm of the multivariate gamma function with the speciifed dimensions and argument.
 
template<typename T >
boost::math::tools::promote_args
+< T >::type 
log1m (T x)
 Return the natural logarithm of one minus the specified value.
 
template<typename T >
boost::math::tools::promote_args
+< T >::type 
log1m_exp (const T a)
 Calculates the log of 1 minus the exponential of the specified value without overflow log1m_exp(x) = log(1-exp(x)).
 
template<typename T >
boost::math::tools::promote_args
+< T >::type 
log1m_inv_logit (const T u)
 Returns the natural logarithm of 1 minus the inverse logit of the specified argument.
 
template<typename T >
boost::math::tools::promote_args
+< T >::type 
log1p (const T x)
 Return the natural logarithm of one plus the specified value.
 
template<typename T >
boost::math::tools::promote_args
+< T >::type 
log1p_exp (const T a)
 Calculates the log of 1 plus the exponential of the specified value without overflow.
 
template<typename T >
boost::math::tools::promote_args
+< T >::type 
log2 (const T a)
 Returns the base 2 logarithm of the argument (C99).
 
double log2 ()
 Return natural logarithm of two.
 
template<typename T1 , typename T2 >
boost::math::tools::promote_args
+< T1, T2 >::type 
log_diff_exp (const T1 x, const T2 y)
 The natural logarithm of the difference of the natural exponentiation of x1 and the natural exponentiation of x2.
 
template<typename T1 , typename T2 >
boost::math::tools::promote_args
+< T1, T2 >::type 
log_falling_factorial (const T1 x, const T2 n)
 
template<typename T >
boost::math::tools::promote_args
+< T >::type 
log_inv_logit (const T &u)
 Returns the natural logarithm of the inverse logit of the specified argument.
 
template<typename T1 , typename T2 >
boost::math::tools::promote_args
+< T1, T2 >::type 
log_rising_factorial (const T1 x, const T2 n)
 
template<typename T1 , typename T2 >
boost::math::tools::promote_args
+< T1, T2 >::type 
log_sum_exp (const T2 &a, const T1 &b)
 Calculates the log sum of exponetials without overflow.
 
template<typename T >
log_sum_exp (const std::vector< T > &x)
 Return the log of the sum of the exponentiated values of the specified sequence of values.
 
template<typename T1 , typename T2 >
int logical_and (const T1 x1, const T2 x2)
 The logical and function which returns 1 if both arguments are unequal to zero and 0 otherwise.
 
template<typename T1 , typename T2 >
int logical_eq (const T1 x1, const T2 x2)
 Return 1 if the first argument is equal to the second.
 
template<typename T1 , typename T2 >
int logical_gt (const T1 x1, const T2 x2)
 Return 1 if the first argument is strictly greater than the second.
 
template<typename T1 , typename T2 >
int logical_gte (const T1 x1, const T2 x2)
 Return 1 if the first argument is greater than or equal to the second.
 
template<typename T1 , typename T2 >
int logical_lt (T1 x1, T2 x2)
 Return 1 if the first argument is strictly less than the second.
 
template<typename T1 , typename T2 >
int logical_lte (const T1 x1, const T2 x2)
 Return 1 if the first argument is less than or equal to the second.
 
template<typename T >
int logical_negation (const T x)
 The logical negation function which returns 1 if the input is equal to zero and 0 otherwise.
 
template<typename T1 , typename T2 >
int logical_neq (const T1 x1, const T2 x2)
 Return 1 if the first argument is unequal to the second.
 
template<typename T1 , typename T2 >
int logical_or (T1 x1, T2 x2)
 The logical or function which returns 1 if either argument is unequal to zero and 0 otherwise.
 
template<typename T >
boost::math::tools::promote_args
+< T >::type 
logit (const T a)
 Returns the logit function applied to the argument.
 
double max (const double a, const double b)
 
double min (const double a, const double b)
 
template<typename T2 >
T2 modified_bessel_first_kind (const int v, const T2 z)
 
template<typename T2 >
T2 modified_bessel_second_kind (const int v, const T2 z)
 
template<typename T_a , typename T_b >
boost::math::tools::promote_args
+< T_a, T_b >::type 
multiply_log (const T_a a, const T_b b)
 Calculated the value of the first argument times log of the second argument while behaving properly with 0 inputs.
 
template<typename T1 , typename T2 >
boost::math::tools::promote_args
+< T1, T2 >::type 
owens_t (const T1 &h, const T2 &a)
 The Owen's T function of h and a.
 
template<typename T >
boost::math::tools::promote_args
+< T >::type 
Phi (const T x)
 The unit normal cumulative distribution function.
 
template<typename T >
boost::math::tools::promote_args
+< T >::type 
Phi_approx (T x)
 Approximation of the unit normal CDF.
 
template<typename T1 , typename T2 >
boost::math::tools::promote_args
+< T1, T2 >::type 
rising_factorial (const T1 x, const T2 n)
 
void scaled_add (std::vector< double > &x, const std::vector< double > &y, const double lambda)
 
template<typename T >
square (const T x)
 Return the square of the specified argument.
 
template<typename T >
int step (const T y)
 The step, or Heaviside, function.
 
void sub (std::vector< double > &x, std::vector< double > &y, std::vector< double > &result)
 
double sum (std::vector< double > &x)
 
template<typename T >
trigamma (T x)
 
template<typename T >
double value_of (const T x)
 Return the value of the specified scalar argument converted to a double value.
 
template<>
double value_of< double > (const double x)
 Return the specified argument.
 
template<typename T1 , typename T2 , int R, int C>
Eigen::Matrix< typename
+boost::math::tools::promote_args
+< T1, T2 >::type, R, C > 
add (const Eigen::Matrix< T1, R, C > &m1, const Eigen::Matrix< T2, R, C > &m2)
 Return the sum of the specified matrices.
 
template<typename T1 , typename T2 , int R, int C>
Eigen::Matrix< typename
+boost::math::tools::promote_args
+< T1, T2 >::type, R, C > 
add (const Eigen::Matrix< T1, R, C > &m, const T2 &c)
 Return the sum of the specified matrix and specified scalar.
 
template<typename T1 , typename T2 , int R, int C>
Eigen::Matrix< typename
+boost::math::tools::promote_args
+< T1, T2 >::type, R, C > 
add (const T1 &c, const Eigen::Matrix< T2, R, C > &m)
 Return the sum of the specified scalar and specified matrix.
 
template<typename LHS , typename RHS >
void assign (LHS &lhs, const RHS &rhs)
 Copy the right-hand side's value to the left-hand side variable.
 
template<typename LHS , typename RHS , int R1, int C1, int R2, int C2>
void assign (Eigen::Matrix< LHS, R1, C1 > &x, const Eigen::Matrix< RHS, R2, C2 > &y)
 Copy the right-hand side's value to the left-hand side variable.
 
template<typename LHS , typename RHS , int R, int C>
void assign (Eigen::Matrix< LHS, R, C > &x, const Eigen::Matrix< RHS, R, C > &y)
 Copy the right-hand side's value to the left-hand side variable.
 
template<typename LHS , typename RHS , int R, int C>
void assign (Eigen::Block< LHS > x, const Eigen::Matrix< RHS, R, C > &y)
 Copy the right-hand side's value to the left-hand side variable.
 
template<typename LHS , typename RHS >
void assign (std::vector< LHS > &x, const std::vector< RHS > &y)
 Copy the right-hand side's value to the left-hand side variable.
 
template<typename T >
Eigen::Matrix< T,
+Eigen::Dynamic, Eigen::Dynamic > 
block (const Eigen::Matrix< T, Eigen::Dynamic, Eigen::Dynamic > &m, size_t i, size_t j, size_t nrows, size_t ncols)
 Return a nrows x ncols submatrix starting at (i-1,j-1).
 
void check_range (size_t max, size_t i, const char *msg, size_t idx)
 
template<typename T >
Eigen::Matrix< T,
+Eigen::Dynamic, Eigen::Dynamic > 
cholesky_decompose (const Eigen::Matrix< T, Eigen::Dynamic, Eigen::Dynamic > &m)
 Return the lower-triangular Cholesky factor (i.e., matrix square root) of the specified square, symmetric matrix.
 
template<typename T >
Eigen::Matrix< T,
+Eigen::Dynamic, 1 > 
col (const Eigen::Matrix< T, Eigen::Dynamic, Eigen::Dynamic > &m, size_t j)
 Return the specified column of the specified matrix using start-at-1 indexing.
 
template<typename T , int R, int C>
size_t cols (const Eigen::Matrix< T, R, C > &m)
 
template<int R1, int C1, int R2, int C2>
Eigen::Matrix< double, 1, C1 > columns_dot_product (const Eigen::Matrix< double, R1, C1 > &v1, const Eigen::Matrix< double, R2, C2 > &v2)
 Returns the dot product of the specified vectors.
 
template<typename T , int R, int C>
Eigen::Matrix< T, 1, C > columns_dot_self (const Eigen::Matrix< T, R, C > &x)
 Returns the dot product of each column of a matrix with itself.
 
matrix_d crossprod (const matrix_d &M)
 Returns the result of pre-multiplying a matrix by its own transpose.
 
template<typename T >
std::vector< T > cumulative_sum (const std::vector< T > &x)
 Return the cumulative sum of the specified vector.
 
template<typename T , int R, int C>
Eigen::Matrix< T, R, C > cumulative_sum (const Eigen::Matrix< T, R, C > &m)
 Return the cumulative sum of the specified matrix.
 
template<typename T , int R, int C>
determinant (const Eigen::Matrix< T, R, C > &m)
 Returns the determinant of the specified square matrix.
 
template<typename T >
Eigen::Matrix< T,
+Eigen::Dynamic, Eigen::Dynamic > 
diag_matrix (const Eigen::Matrix< T, Eigen::Dynamic, 1 > &v)
 Return a square diagonal matrix with the specified vector of coefficients as the diagonal values.
 
template<typename T1 , typename T2 , int R1, int C1, int R2, int C2>
Eigen::Matrix< typename
+boost::math::tools::promote_args
+< T1, T2 >::type, R1, C1 > 
diag_post_multiply (const Eigen::Matrix< T1, R1, C1 > &m1, const Eigen::Matrix< T2, R2, C2 > &m2)
 
template<typename T1 , typename T2 , int R1, int C1, int R2, int C2>
Eigen::Matrix< typename
+boost::math::tools::promote_args
+< T1, T2 >::type, R2, C2 > 
diag_pre_multiply (const Eigen::Matrix< T1, R1, C1 > &m1, const Eigen::Matrix< T2, R2, C2 > &m2)
 
template<typename T >
Eigen::Matrix< T,
+Eigen::Dynamic, 1 > 
diagonal (const Eigen::Matrix< T, Eigen::Dynamic, Eigen::Dynamic > &m)
 Return a column vector of the diagonal elements of the specified matrix.
 
template<typename T >
void dims (const T &x, std::vector< int > &result)
 
template<typename T , int R, int C>
void dims (const Eigen::Matrix< T, R, C > &x, std::vector< int > &result)
 
template<typename T >
void dims (const std::vector< T > &x, std::vector< int > &result)
 
template<typename T >
std::vector< int > dims (const T &x)
 
template<typename T1 , int R1, int C1, typename T2 , int R2, int C2>
boost::math::tools::promote_args
+< T1, T2 >::type 
distance (const Eigen::Matrix< T1, R1, C1 > &v1, const Eigen::Matrix< T2, R2, C2 > &v2)
 Returns the distance between the specified vectors.
 
template<int R, int C, typename T >
boost::enable_if_c
+< boost::is_arithmetic< T >
+::value, Eigen::Matrix< double,
+R, C > >::type 
divide (const Eigen::Matrix< double, R, C > &m, T c)
 Return specified matrix divided by specified scalar.
 
template<int R1, int C1, int R2, int C2>
double dot_product (const Eigen::Matrix< double, R1, C1 > &v1, const Eigen::Matrix< double, R2, C2 > &v2)
 Returns the dot product of the specified vectors.
 
double dot_product (const double *v1, const double *v2, size_t length)
 Returns the dot product of the specified arrays of doubles.
 
double dot_product (const std::vector< double > &v1, const std::vector< double > &v2)
 Returns the dot product of the specified arrays of doubles.
 
template<int R, int C>
double dot_self (const Eigen::Matrix< double, R, C > &v)
 Returns the dot product of the specified vector with itself.
 
template<typename T >
Eigen::Matrix< T,
+Eigen::Dynamic, 1 > 
eigenvalues_sym (const Eigen::Matrix< T, Eigen::Dynamic, Eigen::Dynamic > &m)
 Return the eigenvalues of the specified symmetric matrix in descending order of magnitude.
 
template<typename T >
Eigen::Matrix< T,
+Eigen::Dynamic, Eigen::Dynamic > 
eigenvectors_sym (const Eigen::Matrix< T, Eigen::Dynamic, Eigen::Dynamic > &m)
 
template<typename T1 , typename T2 , int R, int C>
Eigen::Matrix< typename
+boost::math::tools::promote_args
+< T1, T2 >::type, R, C > 
elt_divide (const Eigen::Matrix< T1, R, C > &m1, const Eigen::Matrix< T2, R, C > &m2)
 Return the elementwise division of the specified matrices matrices.
 
template<typename T1 , typename T2 , int R, int C>
Eigen::Matrix< typename
+boost::math::tools::promote_args
+< T1, T2 >::type, R, C > 
elt_multiply (const Eigen::Matrix< T1, R, C > &m1, const Eigen::Matrix< T2, R, C > &m2)
 Return the elementwise multiplication of the specified matrices.
 
template<typename T , int Rows, int Cols>
Eigen::Matrix< T, Rows, Cols > exp (const Eigen::Matrix< T, Rows, Cols > &m)
 Return the element-wise exponentiation of the matrix or vector.
 
template<typename T , typename S >
void fill (T &x, const S &y)
 Fill the specified container with the specified value.
 
template<typename T , int R, int C, typename S >
void fill (Eigen::Matrix< T, R, C > &x, const S &y)
 Fill the specified container with the specified value.
 
template<typename T , typename S >
void fill (std::vector< T > &x, const S &y)
 Fill the specified container with the specified value.
 
template<typename T >
const T & get_base1 (const std::vector< T > &x, size_t i, const char *error_msg, size_t idx)
 Return a reference to the value of the specified vector at the specified base-one index.
 
template<typename T >
const T & get_base1 (const std::vector< std::vector< T > > &x, size_t i1, size_t i2, const char *error_msg, size_t idx)
 Return a reference to the value of the specified vector at the specified base-one indexes.
 
template<typename T >
const T & get_base1 (const std::vector< std::vector< std::vector< T > > > &x, size_t i1, size_t i2, size_t i3, const char *error_msg, size_t idx)
 Return a reference to the value of the specified vector at the specified base-one indexes.
 
template<typename T >
const T & get_base1 (const std::vector< std::vector< std::vector< std::vector< T > > > > &x, size_t i1, size_t i2, size_t i3, size_t i4, const char *error_msg, size_t idx)
 Return a reference to the value of the specified vector at the specified base-one indexes.
 
template<typename T >
const T & get_base1 (const std::vector< std::vector< std::vector< std::vector< std::vector< T > > > > > &x, size_t i1, size_t i2, size_t i3, size_t i4, size_t i5, const char *error_msg, size_t idx)
 Return a reference to the value of the specified vector at the specified base-one indexes.
 
template<typename T >
const T & get_base1 (const std::vector< std::vector< std::vector< std::vector< std::vector< std::vector< T > > > > > > &x, size_t i1, size_t i2, size_t i3, size_t i4, size_t i5, size_t i6, const char *error_msg, size_t idx)
 Return a reference to the value of the specified vector at the specified base-one indexes.
 
template<typename T >
const T & get_base1 (const std::vector< std::vector< std::vector< std::vector< std::vector< std::vector< std::vector< T > > > > > > > &x, size_t i1, size_t i2, size_t i3, size_t i4, size_t i5, size_t i6, size_t i7, const char *error_msg, size_t idx)
 Return a reference to the value of the specified vector at the specified base-one indexes.
 
template<typename T >
const T & get_base1 (const std::vector< std::vector< std::vector< std::vector< std::vector< std::vector< std::vector< std::vector< T > > > > > > > > &x, size_t i1, size_t i2, size_t i3, size_t i4, size_t i5, size_t i6, size_t i7, size_t i8, const char *error_msg, size_t idx)
 Return a reference to the value of the specified vector at the specified base-one indexes.
 
template<typename T >
Eigen::Matrix< T,
+1, Eigen::Dynamic > 
get_base1 (const Eigen::Matrix< T, Eigen::Dynamic, Eigen::Dynamic > &x, size_t m, const char *error_msg, size_t idx)
 Return a copy of the row of the specified vector at the specified base-one row index.
 
template<typename T >
const T & get_base1 (const Eigen::Matrix< T, Eigen::Dynamic, Eigen::Dynamic > &x, size_t m, size_t n, const char *error_msg, size_t idx)
 Return a reference to the value of the specified matrix at the specified base-one row and column indexes.
 
template<typename T >
const T & get_base1 (const Eigen::Matrix< T, Eigen::Dynamic, 1 > &x, size_t m, const char *error_msg, size_t idx)
 Return a reference to the value of the specified column vector at the specified base-one index.
 
template<typename T >
const T & get_base1 (const Eigen::Matrix< T, 1, Eigen::Dynamic > &x, size_t n, const char *error_msg, size_t idx)
 Return a reference to the value of the specified row vector at the specified base-one index.
 
template<typename T >
T & get_base1_lhs (std::vector< T > &x, size_t i, const char *error_msg, size_t idx)
 Return a reference to the value of the specified vector at the specified base-one index.
 
template<typename T >
T & get_base1_lhs (std::vector< std::vector< T > > &x, size_t i1, size_t i2, const char *error_msg, size_t idx)
 Return a reference to the value of the specified vector at the specified base-one indexes.
 
template<typename T >
T & get_base1_lhs (std::vector< std::vector< std::vector< T > > > &x, size_t i1, size_t i2, size_t i3, const char *error_msg, size_t idx)
 Return a reference to the value of the specified vector at the specified base-one indexes.
 
template<typename T >
T & get_base1_lhs (std::vector< std::vector< std::vector< std::vector< T > > > > &x, size_t i1, size_t i2, size_t i3, size_t i4, const char *error_msg, size_t idx)
 Return a reference to the value of the specified vector at the specified base-one indexes.
 
template<typename T >
T & get_base1_lhs (std::vector< std::vector< std::vector< std::vector< std::vector< T > > > > > &x, size_t i1, size_t i2, size_t i3, size_t i4, size_t i5, const char *error_msg, size_t idx)
 Return a reference to the value of the specified vector at the specified base-one indexes.
 
template<typename T >
T & get_base1_lhs (std::vector< std::vector< std::vector< std::vector< std::vector< std::vector< T > > > > > > &x, size_t i1, size_t i2, size_t i3, size_t i4, size_t i5, size_t i6, const char *error_msg, size_t idx)
 Return a reference to the value of the specified vector at the specified base-one indexes.
 
template<typename T >
T & get_base1_lhs (std::vector< std::vector< std::vector< std::vector< std::vector< std::vector< std::vector< T > > > > > > > &x, size_t i1, size_t i2, size_t i3, size_t i4, size_t i5, size_t i6, size_t i7, const char *error_msg, size_t idx)
 Return a reference to the value of the specified vector at the specified base-one indexes.
 
template<typename T >
T & get_base1_lhs (std::vector< std::vector< std::vector< std::vector< std::vector< std::vector< std::vector< std::vector< T > > > > > > > > &x, size_t i1, size_t i2, size_t i3, size_t i4, size_t i5, size_t i6, size_t i7, size_t i8, const char *error_msg, size_t idx)
 Return a reference to the value of the specified vector at the specified base-one indexes.
 
template<typename T >
Eigen::Block< Eigen::Matrix< T,
+Eigen::Dynamic, Eigen::Dynamic > > 
get_base1_lhs (Eigen::Matrix< T, Eigen::Dynamic, Eigen::Dynamic > &x, size_t m, const char *error_msg, size_t idx)
 Return a copy of the row of the specified vector at the specified base-one row index.
 
template<typename T >
T & get_base1_lhs (Eigen::Matrix< T, Eigen::Dynamic, Eigen::Dynamic > &x, size_t m, size_t n, const char *error_msg, size_t idx)
 Return a reference to the value of the specified matrix at the specified base-one row and column indexes.
 
template<typename T >
T & get_base1_lhs (Eigen::Matrix< T, Eigen::Dynamic, 1 > &x, size_t m, const char *error_msg, size_t idx)
 Return a reference to the value of the specified column vector at the specified base-one index.
 
template<typename T >
T & get_base1_lhs (Eigen::Matrix< T, 1, Eigen::Dynamic > &x, size_t n, const char *error_msg, size_t idx)
 Return a reference to the value of the specified row vector at the specified base-one index.
 
template<typename T >
Eigen::Matrix< T,
+Eigen::Dynamic, 1 > 
head (const Eigen::Matrix< T, Eigen::Dynamic, 1 > &v, size_t n)
 Return the specified number of elements as a vector from the front of the specified vector.
 
template<typename T >
Eigen::Matrix< T,
+1, Eigen::Dynamic > 
head (const Eigen::Matrix< T, 1, Eigen::Dynamic > &rv, size_t n)
 Return the specified number of elements as a row vector from the front of the specified row vector.
 
template<typename T >
std::vector< T > head (const std::vector< T > &sv, size_t n)
 Return the specified number of elements as a standard vector from the front of the specified standard vector.
 
template<typename T >
void initialize (T &x, const T &v)
 
template<typename T , typename V >
boost::enable_if_c
+< boost::is_arithmetic< V >
+::value, void > 
initialize (T &x, V v)
 
template<typename T , int R, int C>
void initialize (Eigen::Matrix< T, R, C > &x, const T &v)
 
template<typename T , typename V >
void initialize (std::vector< T > &x, const V &v)
 
template<typename T >
Eigen::Matrix< T,
+Eigen::Dynamic, Eigen::Dynamic > 
inverse (const Eigen::Matrix< T, Eigen::Dynamic, Eigen::Dynamic > &m)
 Returns the inverse of the specified matrix.
 
template<typename T >
Eigen::Matrix< T,
+Eigen::Dynamic, Eigen::Dynamic > 
inverse_spd (const Eigen::Matrix< T, Eigen::Dynamic, Eigen::Dynamic > &m)
 Returns the inverse of the specified symmetric, pos/neg-definite matrix.
 
template<typename T , int Rows, int Cols>
Eigen::Matrix< T, Rows, Cols > log (const Eigen::Matrix< T, Rows, Cols > &m)
 Return the element-wise logarithm of the matrix or vector.
 
template<typename T , int R, int C>
log_determinant (const Eigen::Matrix< T, R, C > &m)
 Returns the log absolute determinant of the specified square matrix.
 
template<int R, int C>
double log_determinant_ldlt (stan::math::LDLT_factor< double, R, C > &A)
 
template<typename T , int R, int C>
log_determinant_spd (const Eigen::Matrix< T, R, C > &m)
 Returns the log absolute determinant of the specified square matrix.
 
template<typename T >
Eigen::Matrix< T,
+Eigen::Dynamic, 1 > 
log_softmax (const Eigen::Matrix< T, Eigen::Dynamic, 1 > &v)
 Return the natural logarithm of the softmax of the specified vector.
 
template<typename T , int R, int C>
log_sum_exp (const Eigen::Matrix< T, R, C > &x)
 Return the log of the sum of the exponentiated values of the specified matrix of values.
 
int max (const std::vector< int > &x)
 Returns the maximum coefficient in the specified column vector.
 
template<typename T >
max (const std::vector< T > &x)
 Returns the maximum coefficient in the specified column vector.
 
template<typename T , int R, int C>
max (const Eigen::Matrix< T, R, C > &m)
 Returns the maximum coefficient in the specified vector, row vector, or matrix.
 
template<typename T1 , typename T2 , int R1, int C1, int R2, int C2>
Eigen::Matrix< typename
+boost::math::tools::promote_args
+< T1, T2 >::type, R1, C2 > 
mdivide_left (const Eigen::Matrix< T1, R1, C1 > &A, const Eigen::Matrix< T2, R2, C2 > &b)
 Returns the solution of the system Ax=b.
 
template<int R1, int C1, int R2, int C2>
Eigen::Matrix< double, R1, C2 > mdivide_left_ldlt (const stan::math::LDLT_factor< double, R1, C1 > &A, const Eigen::Matrix< double, R2, C2 > &b)
 Returns the solution of the system Ax=b given an LDLT_factor of A.
 
template<typename T1 , typename T2 , int R1, int C1, int R2, int C2>
Eigen::Matrix< typename
+boost::math::tools::promote_args
+< T1, T2 >::type, R1, C2 > 
mdivide_left_spd (const Eigen::Matrix< T1, R1, C1 > &A, const Eigen::Matrix< T2, R2, C2 > &b)
 Returns the solution of the system Ax=b where A is symmetric positive definite.
 
template<int TriView, typename T1 , typename T2 , int R1, int C1, int R2, int C2>
Eigen::Matrix< typename
+boost::math::tools::promote_args
+< T1, T2 >::type, R1, C2 > 
mdivide_left_tri (const Eigen::Matrix< T1, R1, C1 > &A, const Eigen::Matrix< T2, R2, C2 > &b)
 Returns the solution of the system Ax=b when A is triangular.
 
template<int TriView, typename T , int R1, int C1>
Eigen::Matrix< T, R1, C1 > mdivide_left_tri (const Eigen::Matrix< T, R1, C1 > &A)
 Returns the solution of the system Ax=b when A is triangular and b=I.
 
template<typename T1 , typename T2 , int R1, int C1, int R2, int C2>
Eigen::Matrix< typename
+boost::math::tools::promote_args
+< T1, T2 >::type, R1, C2 > 
mdivide_left_tri_low (const Eigen::Matrix< T1, R1, C1 > &A, const Eigen::Matrix< T2, R2, C2 > &b)
 
template<typename T , int R1, int C1>
Eigen::Matrix< T, R1, C1 > mdivide_left_tri_low (const Eigen::Matrix< T, R1, C1 > &A)
 
template<typename T1 , typename T2 , int R1, int C1, int R2, int C2>
Eigen::Matrix< typename
+boost::math::tools::promote_args
+< T1, T2 >::type, R1, C2 > 
mdivide_right (const Eigen::Matrix< T1, R1, C1 > &b, const Eigen::Matrix< T2, R2, C2 > &A)
 Returns the solution of the system Ax=b.
 
template<typename T1 , typename T2 , int R1, int C1, int R2, int C2>
Eigen::Matrix< typename
+boost::math::tools::promote_args
+< T1, T2 >::type, R1, C2 > 
mdivide_right_ldlt (const Eigen::Matrix< T1, R1, C1 > &b, const stan::math::LDLT_factor< T2, R2, C2 > &A)
 Returns the solution of the system xA=b given an LDLT_factor of A.
 
template<int R1, int C1, int R2, int C2>
Eigen::Matrix< double, R1, C2 > mdivide_right_ldlt (const Eigen::Matrix< double, R1, C1 > &b, const stan::math::LDLT_factor< double, R2, C2 > &A)
 
template<typename T1 , typename T2 , int R1, int C1, int R2, int C2>
Eigen::Matrix< typename
+boost::math::tools::promote_args
+< T1, T2 >::type, R1, C2 > 
mdivide_right_spd (const Eigen::Matrix< T1, R1, C1 > &b, const Eigen::Matrix< T2, R2, C2 > &A)
 Returns the solution of the system Ax=b where A is symmetric positive definite.
 
template<int TriView, typename T1 , typename T2 , int R1, int C1, int R2, int C2>
Eigen::Matrix< typename
+boost::math::tools::promote_args
+< T1, T2 >::type, R1, C2 > 
mdivide_right_tri (const Eigen::Matrix< T1, R1, C1 > &b, const Eigen::Matrix< T2, R2, C2 > &A)
 Returns the solution of the system Ax=b when A is triangular.
 
template<typename T1 , typename T2 , int R1, int C1, int R2, int C2>
Eigen::Matrix< typename
+boost::math::tools::promote_args
+< T1, T2 >::type, R1, C2 > 
mdivide_right_tri_low (const Eigen::Matrix< T1, R1, C1 > &b, const Eigen::Matrix< T2, R2, C2 > &A)
 Returns the solution of the system tri(A)x=b when tri(A) is a lower triangular view of the matrix A.
 
template<typename T >
boost::math::tools::promote_args
+< T >::type 
mean (const std::vector< T > &v)
 Returns the sample mean (i.e., average) of the coefficients in the specified standard vector.
 
template<typename T , int R, int C>
boost::math::tools::promote_args
+< T >::type 
mean (const Eigen::Matrix< T, R, C > &m)
 Returns the sample mean (i.e., average) of the coefficients in the specified vector, row vector, or matrix.
 
int min (const std::vector< int > &x)
 Returns the minimum coefficient in the specified column vector.
 
template<typename T >
min (const std::vector< T > &x)
 Returns the minimum coefficient in the specified column vector.
 
template<typename T , int R, int C>
min (const Eigen::Matrix< T, R, C > &m)
 Returns the minimum coefficient in the specified matrix, vector, or row vector.
 
template<typename T >
minus (const T &x)
 Returns the negation of the specified scalar or matrix.
 
template<int R, int C, typename T >
boost::enable_if_c
+< boost::is_arithmetic< T >
+::value, Eigen::Matrix< double,
+R, C > >::type 
multiply (const Eigen::Matrix< double, R, C > &m, T c)
 Return specified matrix multiplied by specified scalar.
 
template<int R, int C, typename T >
boost::enable_if_c
+< boost::is_arithmetic< T >
+::value, Eigen::Matrix< double,
+R, C > >::type 
multiply (T c, const Eigen::Matrix< double, R, C > &m)
 Return specified scalar multiplied by specified matrix.
 
template<int R1, int C1, int R2, int C2>
Eigen::Matrix< double, R1, C2 > multiply (const Eigen::Matrix< double, R1, C1 > &m1, const Eigen::Matrix< double, R2, C2 > &m2)
 Return the product of the specified matrices.
 
template<int C1, int R2>
double multiply (const Eigen::Matrix< double, 1, C1 > &rv, const Eigen::Matrix< double, R2, 1 > &v)
 Return the scalar product of the specified row vector and specified column vector.
 
matrix_d multiply_lower_tri_self_transpose (const matrix_d &L)
 Returns the result of multiplying the lower triangular portion of the input matrix by its own transpose.
 
template<typename T >
prod (const std::vector< T > &v)
 Returns the product of the coefficients of the specified standard vector.
 
template<typename T , int R, int C>
prod (const Eigen::Matrix< T, R, C > &v)
 Returns the product of the coefficients of the specified column vector.
 
template<typename T1 , typename T2 , typename F >
common_type< T1, T2 >::type promote_common (const F &u)
 
template<int RA, int CA, int RB, int CB>
Eigen::Matrix< double, CB, CB > quad_form (const Eigen::Matrix< double, RA, CA > &A, const Eigen::Matrix< double, RB, CB > &B)
 Compute B^T A B.
 
template<int RA, int CA, int RB>
double quad_form (const Eigen::Matrix< double, RA, CA > &A, const Eigen::Matrix< double, RB, 1 > &B)
 
template<int RA, int CA, int RB, int CB>
Eigen::Matrix< double, CB, CB > quad_form_sym (const Eigen::Matrix< double, RA, CA > &A, const Eigen::Matrix< double, RB, CB > &B)
 
template<int RA, int CA, int RB>
double quad_form_sym (const Eigen::Matrix< double, RA, CA > &A, const Eigen::Matrix< double, RB, 1 > &B)
 
template<typename T >
size_t rank (const std::vector< T > &v, int s)
 Return the number of components of v less than v[s].
 
template<typename T , int R, int C>
size_t rank (const Eigen::Matrix< T, R, C > &v, int s)
 Return the number of components of v less than v[s].
 
template<typename T >
void resize (T &x, std::vector< size_t > dims)
 Recursively resize the specified vector of vectors, which must bottom out at scalar values, Eigen vectors or Eigen matrices.
 
template<typename T >
Eigen::Matrix< T,
+1, Eigen::Dynamic > 
row (const Eigen::Matrix< T, Eigen::Dynamic, Eigen::Dynamic > &m, size_t i)
 Return the specified row of the specified matrix, using start-at-1 indexing.
 
template<typename T , int R, int C>
size_t rows (const Eigen::Matrix< T, R, C > &m)
 
template<int R1, int C1, int R2, int C2>
Eigen::Matrix< double, R1, 1 > rows_dot_product (const Eigen::Matrix< double, R1, C1 > &v1, const Eigen::Matrix< double, R2, C2 > &v2)
 Returns the dot product of the specified vectors.
 
template<typename T , int R, int C>
Eigen::Matrix< T, R, 1 > rows_dot_self (const Eigen::Matrix< T, R, C > &x)
 Returns the dot product of each row of a matrix with itself.
 
template<typename T >
boost::math::tools::promote_args
+< T >::type 
sd (const std::vector< T > &v)
 Returns the unbiased sample standard deviation of the coefficients in the specified column vector.
 
template<typename T , int R, int C>
boost::math::tools::promote_args
+< T >::type 
sd (const Eigen::Matrix< T, R, C > &m)
 Returns the unbiased sample standard deviation of the coefficients in the specified vector, row vector, or matrix.
 
template<typename T >
Eigen::Matrix< T,
+Eigen::Dynamic, 1 > 
segment (const Eigen::Matrix< T, Eigen::Dynamic, 1 > &v, size_t i, size_t n)
 Return the specified number of elements as a vector starting from the specified element - 1 of the specified vector.
 
template<typename T >
Eigen::Matrix< T,
+1, Eigen::Dynamic > 
segment (const Eigen::Matrix< T, 1, Eigen::Dynamic > &v, size_t i, size_t n)
 
template<typename T >
std::vector< T > segment (const std::vector< T > &sv, size_t i, size_t n)
 
template<typename T >
Eigen::Matrix< T,
+Eigen::Dynamic, 1 > 
singular_values (const Eigen::Matrix< T, Eigen::Dynamic, Eigen::Dynamic > &m)
 Return the vector of the singular values of the specified matrix in decreasing order of magnitude.
 
template<typename T >
int size (const std::vector< T > &x)
 
template<typename T >
Eigen::Matrix< T,
+Eigen::Dynamic, 1 > 
softmax (const Eigen::Matrix< T, Eigen::Dynamic, 1 > &v)
 Return the softmax of the specified vector.
 
template<typename T >
std::vector< T > sort_asc (std::vector< T > xs)
 Return the specified standard vector in ascending order.
 
template<typename T >
std::vector< T > sort_desc (std::vector< T > xs)
 Return the specified standard vector in descending order.
 
template<typename T , int R, int C>
Eigen::Matrix< T, R, C > sort_asc (Eigen::Matrix< T, R, C > xs)
 Return the specified eigen vector in ascending order.
 
template<typename T , int R, int C>
Eigen::Matrix< T, R, C > sort_desc (Eigen::Matrix< T, R, C > xs)
 Return the specified eigen vector in descending order.
 
template<int R1, int C1, int R2, int C2>
double squared_distance (const Eigen::Matrix< double, R1, C1 > &v1, const Eigen::Matrix< double, R2, C2 > &v2)
 Returns the squared distance between the specified vectors.
 
template<typename T >
void stan_print (std::ostream *o, const T &x)
 
template<typename T >
void stan_print (std::ostream *o, const std::vector< T > &x)
 
template<typename T >
void stan_print (std::ostream *o, const Eigen::Matrix< T, Eigen::Dynamic, 1 > &x)
 
template<typename T >
void stan_print (std::ostream *o, const Eigen::Matrix< T, 1, Eigen::Dynamic > &x)
 
template<typename T >
void stan_print (std::ostream *o, const Eigen::Matrix< T, Eigen::Dynamic, Eigen::Dynamic > &x)
 
template<typename T >
Eigen::Matrix< T,
+Eigen::Dynamic, 1 > 
sub_col (const Eigen::Matrix< T, Eigen::Dynamic, Eigen::Dynamic > &m, size_t i, size_t j, size_t nrows)
 Return a nrows x 1 subcolumn starting at (i-1,j-1).
 
template<typename T >
Eigen::Matrix< T,
+1, Eigen::Dynamic > 
sub_row (const Eigen::Matrix< T, Eigen::Dynamic, Eigen::Dynamic > &m, size_t i, size_t j, size_t ncols)
 Return a 1 x nrows subrow starting at (i-1,j-1).
 
template<typename T1 , typename T2 , int R, int C>
Eigen::Matrix< typename
+boost::math::tools::promote_args
+< T1, T2 >::type, R, C > 
subtract (const Eigen::Matrix< T1, R, C > &m1, const Eigen::Matrix< T2, R, C > &m2)
 Return the result of subtracting the second specified matrix from the first specified matrix.
 
template<typename T1 , typename T2 , int R, int C>
Eigen::Matrix< typename
+boost::math::tools::promote_args
+< T1, T2 >::type, R, C > 
subtract (const T1 &c, const Eigen::Matrix< T2, R, C > &m)
 
template<typename T1 , typename T2 , int R, int C>
Eigen::Matrix< typename
+boost::math::tools::promote_args
+< T1, T2 >::type, R, C > 
subtract (const Eigen::Matrix< T1, R, C > &m, const T2 &c)
 
template<typename T >
sum (const std::vector< T > &xs)
 Return the sum of the values in the specified standard vector.
 
template<typename T , int R, int C>
double sum (const Eigen::Matrix< T, R, C > &v)
 Returns the sum of the coefficients of the specified column vector.
 
template<typename T >
Eigen::Matrix< T,
+Eigen::Dynamic, 1 > 
tail (const Eigen::Matrix< T, Eigen::Dynamic, 1 > &v, size_t n)
 Return the specified number of elements as a vector from the back of the specified vector.
 
template<typename T >
Eigen::Matrix< T,
+1, Eigen::Dynamic > 
tail (const Eigen::Matrix< T, 1, Eigen::Dynamic > &rv, size_t n)
 Return the specified number of elements as a row vector from the back of the specified row vector.
 
template<typename T >
std::vector< T > tail (const std::vector< T > &sv, size_t n)
 
matrix_d tcrossprod (const matrix_d &M)
 Returns the result of post-multiplying a matrix by its own transpose.
 
template<typename T , int R1, int R2>
Eigen::Matrix< T,
+Eigen::Dynamic, 1 > 
to_vector (const Eigen::Matrix< T, R1, R2 > &m)
 
template<typename T >
trace (const Eigen::Matrix< T, Eigen::Dynamic, Eigen::Dynamic > &m)
 Returns the trace of the specified matrix.
 
template<int R1, int C1, int R2, int C2, int R3, int C3>
double trace_gen_inv_quad_form_ldlt (const Eigen::Matrix< double, R1, C1 > &D, const stan::math::LDLT_factor< double, R2, C2 > &A, const Eigen::Matrix< double, R3, C3 > &B)
 
template<int RD, int CD, int RA, int CA, int RB, int CB>
double trace_gen_quad_form (const Eigen::Matrix< double, RD, CD > &D, const Eigen::Matrix< double, RA, CA > &A, const Eigen::Matrix< double, RB, CB > &B)
 Compute trace(D B^T A B).
 
template<int R2, int C2, int R3, int C3>
double trace_inv_quad_form_ldlt (const stan::math::LDLT_factor< double, R2, C2 > &A, const Eigen::Matrix< double, R3, C3 > &B)
 
template<int RA, int CA, int RB, int CB>
double trace_quad_form (const Eigen::Matrix< double, RA, CA > &A, const Eigen::Matrix< double, RB, CB > &B)
 Compute trace(B^T A B).
 
template<typename T , int R, int C>
Eigen::Matrix< T, C, R > transpose (const Eigen::Matrix< T, R, C > &m)
 
template<typename T , int R, int C>
void validate_column_index (const Eigen::Matrix< T, R, C > &m, size_t j, const char *msg)
 
template<typename T1 , typename T2 >
void validate_greater (const T1 &x, const T2 &y, const char *x_name, const char *y_name, const char *fun_name)
 
template<typename T1 , typename T2 >
void validate_greater_or_equal (const T1 &x, const T2 &y, const char *x_name, const char *y_name, const char *fun_name)
 
template<typename T1 , typename T2 >
void validate_less (const T1 &x, const T2 &y, const char *x_name, const char *y_name, const char *fun_name)
 
template<typename T1 , typename T2 >
void validate_less_or_equal (const T1 &x, const T2 &y, const char *x_name, const char *y_name, const char *fun_name)
 
template<typename T1 , int R1, int C1, typename T2 , int R2, int C2>
void validate_matching_dims (const Eigen::Matrix< T1, R1, C1 > &x1, const Eigen::Matrix< T2, R2, C2 > &x2, const char *msg)
 
template<typename T1 , typename T2 >
void validate_matching_sizes (const std::vector< T1 > &x1, const std::vector< T2 > &x2, const char *msg)
 
template<typename T1 , int R1, int C1, typename T2 , int R2, int C2>
void validate_matching_sizes (const Eigen::Matrix< T1, R1, C1 > &x1, const Eigen::Matrix< T2, R2, C2 > &x2, const char *msg)
 
template<typename Derived , typename T2 , int R2, int C2>
void validate_matching_sizes (const Eigen::Block< Derived > &x1, const Eigen::Matrix< T2, R2, C2 > &x2, const char *msg)
 
template<typename T1 , int R1, int C1, typename Derived >
void validate_matching_sizes (const Eigen::Matrix< T1, R1, C1 > &x1, const Eigen::Block< Derived > &x2, const char *msg)
 
template<typename Derived1 , typename Derived2 >
void validate_matching_sizes (const Eigen::Block< Derived1 > &x1, const Eigen::Block< Derived2 > &x2, const char *msg)
 
template<typename T1 , typename T2 >
void validate_multiplicable (const T1 &x1, const T2 &x2, const char *msg)
 
template<typename T >
void validate_nonzero_size (const T &x, const char *msg)
 
template<typename T , int R, int C>
void validate_row_index (const Eigen::Matrix< T, R, C > &m, size_t i, const char *msg)
 
template<typename T , int R, int C>
void validate_square (const Eigen::Matrix< T, R, C > &x, const char *msg)
 
template<typename T >
void validate_std_vector_index (const std::vector< T > &sv, size_t j, const char *msg)
 
template<typename T , int R, int C>
void validate_symmetric (const Eigen::Matrix< T, R, C > &x, const char *msg)
 
template<typename T , int R, int C>
void validate_vector (const Eigen::Matrix< T, R, C > &x, const char *msg)
 
template<typename T >
boost::math::tools::promote_args
+< T >::type 
variance (const std::vector< T > &v)
 Returns the sample variance (divide by length - 1) of the coefficients in the specified standard vector.
 
template<typename T , int R, int C>
boost::math::tools::promote_args
+< T >::type 
variance (const Eigen::Matrix< T, R, C > &m)
 Returns the sample variance (divide by length - 1) of the coefficients in the specified column vector.
 
template<typename T >
std::vector< T > rep_array (const T &x, int n)
 
template<typename T >
std::vector< std::vector< T > > rep_array (const T &x, int m, int n)
 
template<typename T >
std::vector< std::vector
+< std::vector< T > > > 
rep_array (const T &x, int k, int m, int n)
 
template<typename T >
Eigen::Matrix< typename
+boost::math::tools::promote_args
+< T >::type, Eigen::Dynamic,
+Eigen::Dynamic > 
rep_matrix (const T &x, int m, int n)
 
template<typename T >
Eigen::Matrix< T,
+Eigen::Dynamic, Eigen::Dynamic > 
rep_matrix (const Eigen::Matrix< T, Eigen::Dynamic, 1 > &v, int n)
 
template<typename T >
Eigen::Matrix< T,
+Eigen::Dynamic, Eigen::Dynamic > 
rep_matrix (const Eigen::Matrix< T, 1, Eigen::Dynamic > &rv, int m)
 
template<typename T >
Eigen::Matrix< typename
+boost::math::tools::promote_args
+< T >::type, 1, Eigen::Dynamic > 
rep_row_vector (const T &x, int m)
 
template<typename T >
Eigen::Matrix< typename
+boost::math::tools::promote_args
+< T >::type, Eigen::Dynamic, 1 > 
rep_vector (const T &x, int n)
 
void validate_non_negative_rep (int n, const std::string &fun)
 If argument is negative, throw a domain error indicating the function with the specified name.
 
double F32 (double a, double b, double c, double d, double e, double z, double precision=1e-6)
 
void gradF32 (double *g, double a, double b, double c, double d, double e, double z, double precision=1e-6)
 
void grad2F1 (double &gradA, double &gradC, double a, double b, double c, double z, double precision=1e-6)
 
void gradIncBeta (double &g1, double &g2, double a, double b, double z)
 
void gradRegIncBeta (double &g1, double &g2, double a, double b, double z, double digammaA, double digammaB, double digammaSum, double betaAB)
 
double gradRegIncGamma (double a, double z, double g, double dig, double precision=1e-6)
 
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Variables

const double E = boost::math::constants::e<double>()
 The base of the natural logarithm, $ e $.
 
const double SQRT_2 = std::sqrt(2.0)
 The value of the square root of 2, $ \sqrt{2} $.
 
const double INV_SQRT_2 = 1.0 / SQRT_2
 The value of 1 over the square root of 2, $ 1 / \sqrt{2} $.
 
const double LOG_2 = std::log(2.0)
 The natural logarithm of 2, $ \log 2 $.
 
const double LOG_10 = std::log(10.0)
 The natural logarithm of 10, $ \log 10 $.
 
const double INFTY = std::numeric_limits<double>::infinity()
 Positive infinity.
 
const double NEGATIVE_INFTY = - std::numeric_limits<double>::infinity()
 Negative infinity.
 
const double NOT_A_NUMBER = std::numeric_limits<double>::quiet_NaN()
 (Quiet) not-a-number value.
 
const double EPSILON = std::numeric_limits<double>::epsilon()
 Smallest positive value.
 
const double NEGATIVE_EPSILON = - std::numeric_limits<double>::epsilon()
 Largest negative value (i.e., smallest absolute value).
 
const double LOG_PI_OVER_FOUR = std::log(boost::math::constants::pi<double>()) / 4.0
 
const double TWO_OVER_SQRT_PI = 2.0 / std::sqrt(boost::math::constants::pi<double>())
 
const double NEG_TWO_OVER_SQRT_PI = -TWO_OVER_SQRT_PI
 
const double INV_SQRT_TWO_PI = 1.0 / std::sqrt(2.0 * boost::math::constants::pi<double>())
 
const double CONSTRAINT_TOLERANCE = 1E-8
 The tolerance for checking arithmetic bounds In rank and in simplexes.
 
+

Detailed Description

+

Matrices and templated mathematical functions.

+

Typedef Documentation

+ +
+
+ + + + +
typedef Eigen::Matrix<double,Eigen::Dynamic,Eigen::Dynamic> stan::math::matrix_d
+
+ +

Type for matrix of double values.

+ +

Definition at line 17 of file typedefs.hpp.

+ +
+
+ +
+
+ + + + +
typedef Eigen::Matrix<double,1,Eigen::Dynamic> stan::math::row_vector_d
+
+ +

Type for (row) vector of double values.

+ +

Definition at line 31 of file typedefs.hpp.

+ +
+
+ +
+
+ + + + +
typedef Eigen::Matrix<double,Eigen::Dynamic,Eigen::Dynamic>::Index stan::math::size_type
+
+ +

Definition at line 10 of file typedefs.hpp.

+ +
+
+ +
+
+ + + + +
typedef Eigen::Matrix<double,Eigen::Dynamic,1> stan::math::vector_d
+
+ +

Type for (column) vector of double values.

+ +

Definition at line 24 of file typedefs.hpp.

+ +
+
+

Function Documentation

+ +
+
+ + + + + + + + +
double stan::math::abs (double x)
+
+ +

Return floating-point absolute value.

+

Delegates to fabs(double) rather than std::abs(int).

+
Parameters
+ + +
xscalar
+
+
+
Returns
absolute value of scalar
+ +

Definition at line 19 of file abs.hpp.

+ +
+
+ +
+
+
+template<typename T1 , typename T2 , int R, int C>
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
Eigen::Matrix<typename boost::math::tools::promote_args<T1,T2>::type,R,C> stan::math::add (const Eigen::Matrix< T1, R, C > & m1,
const Eigen::Matrix< T2, R, C > & m2 
)
+
+inline
+
+ +

Return the sum of the specified matrices.

+

The two matrices must have the same dimensions.

+
Template Parameters
+ + + + + +
T1Scalar type of first matrix.
T2Scalar type of second matrix.
RRow type of matrices.
CColumn type of matrices.
+
+
+
Parameters
+ + + +
m1First matrix.
m2Second matrix.
+
+
+
Returns
Sum of the matrices.
+
Exceptions
+ + +
std::domain_errorif m1 and m2 do not have the same dimensions.
+
+
+ +

Definition at line 27 of file add.hpp.

+ +
+
+ +
+
+
+template<typename T1 , typename T2 , int R, int C>
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
Eigen::Matrix<typename boost::math::tools::promote_args<T1,T2>::type,R,C> stan::math::add (const Eigen::Matrix< T1, R, C > & m,
const T2 & c 
)
+
+inline
+
+ +

Return the sum of the specified matrix and specified scalar.

+
Template Parameters
+ + + +
T1Scalar type of matrix.
T2Type of scalar.
+
+
+
Parameters
+ + + +
mMatrix.
cScalar.
+
+
+
Returns
The matrix plus the scalar.
+ +

Definition at line 49 of file add.hpp.

+ +
+
+ +
+
+
+template<typename T1 , typename T2 , int R, int C>
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
Eigen::Matrix<typename boost::math::tools::promote_args<T1,T2>::type,R,C> stan::math::add (const T1 & c,
const Eigen::Matrix< T2, R, C > & m 
)
+
+inline
+
+ +

Return the sum of the specified scalar and specified matrix.

+
Template Parameters
+ + + +
T1Type of scalar.
T2Scalar type of matrix.
+
+
+
Parameters
+ + + +
cScalar.
mMatrix.
+
+
+
Returns
The scalar plus the matrix.
+ +

Definition at line 70 of file add.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + +
int stan::math::as_bool (const T x)
+
+inline
+
+ +

Return 1 if the argument is unequal to zero and 0 otherwise.

+
Parameters
+ + +
xValue.
+
+
+
Returns
1 if argument is equal to zero and 0 otherwise.
+ +

Definition at line 14 of file as_bool.hpp.

+ +
+
+ +
+
+
+template<>
+ + + + + +
+ + + + + + + + +
int stan::math::as_bool< int > (const int x)
+
+inline
+
+ +

Return an integer with an equivalent boolean value to specified input.

+

For integers, this reduces to the identity function.

+
Parameters
+ + +
xvalue.
+
+
+
Returns
The value.
+ +

Definition at line 26 of file as_bool.hpp.

+ +
+
+ +
+
+
+template<typename LHS , typename RHS >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
void stan::math::assign (LHS & lhs,
const RHS & rhs 
)
+
+inline
+
+ +

Copy the right-hand side's value to the left-hand side variable.

+

The assign() function is overloaded. This instance will match arguments where the right-hand side is assignable to the left and they are not both std::vector or Eigen::Matrix types.

+
Template Parameters
+ + + +
LHSType of left-hand side.
RHSType of right-hand side.
+
+
+
Parameters
+ + + +
lhsLeft-hand side.
rhsRight-hand side.
+
+
+ +

Definition at line 39 of file assign.hpp.

+ +
+
+ +
+
+
+template<typename LHS , typename RHS , int R1, int C1, int R2, int C2>
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
void stan::math::assign (Eigen::Matrix< LHS, R1, C1 > & x,
const Eigen::Matrix< RHS, R2, C2 > & y 
)
+
+inline
+
+ +

Copy the right-hand side's value to the left-hand side variable.

+

The assign() function is overloaded. This instance will be called for arguments that are both Eigen::Matrix types, but whose shapes are not compatible. The shapes are specified in the row and column template parameters.

+
Template Parameters
+ + + + + + + +
LHSType of left-hand side matrix elements.
RHSType of right-hand side matrix elements.
R1Row shape of left-hand side matrix.
C1Column shape of left-hand side matrix.
R2Row shape of right-hand side matrix.
C2Column shape of right-hand side matrix.
+
+
+
Parameters
+ + + +
xLeft-hand side matrix.
yRight-hand side matrix.
+
+
+
Exceptions
+ + +
std::domain_errorif sizes do not match.
+
+
+ +

Definition at line 65 of file assign.hpp.

+ +
+
+ +
+
+
+template<typename LHS , typename RHS , int R, int C>
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
void stan::math::assign (Eigen::Matrix< LHS, R, C > & x,
const Eigen::Matrix< RHS, R, C > & y 
)
+
+inline
+
+ +

Copy the right-hand side's value to the left-hand side variable.

+

The assign() function is overloaded. This instance will be called for arguments that are both Eigen::Matrix types and whose shapes match. The shapes are specified in the row and column template parameters.

+
Template Parameters
+ + + + + +
LHSType of left-hand side matrix elements.
RHSType of right-hand side matrix elements.
RRow shape of both matrices.
CColumn shape of both mtarices.
+
+
+
Parameters
+ + + +
xLeft-hand side matrix.
yRight-hand side matrix.
+
+
+
Exceptions
+ + +
std::domain_errorif sizes do not match.
+
+
+ +

Definition at line 96 of file assign.hpp.

+ +
+
+ +
+
+
+template<typename LHS , typename RHS , int R, int C>
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
void stan::math::assign (Eigen::Block< LHS > x,
const Eigen::Matrix< RHS, R, C > & y 
)
+
+inline
+
+ +

Copy the right-hand side's value to the left-hand side variable.

+

The assign() function is overloaded. This instance will be called for arguments that are both Eigen::Matrix types and whose shapes match. The shape of the right-hand side matrix is specified in the row and column shape template parameters.

+
Template Parameters
+ + + + + +
LHSType of matrix block elements.
RHSType of right-hand side matrix elements.
RRow shape for right-hand side matrix.
CColumn shape for right-hand side matrix.
+
+
+
Parameters
+ + + +
xLeft-hand side block view of matrix.
yRight-hand side matrix.
+
+
+
Exceptions
+ + +
std::domain_errorif sizes do not match.
+
+
+ +

Definition at line 123 of file assign.hpp.

+ +
+
+ +
+
+
+template<typename LHS , typename RHS >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
void stan::math::assign (std::vector< LHS > & x,
const std::vector< RHS > & y 
)
+
+inline
+
+ +

Copy the right-hand side's value to the left-hand side variable.

+

The assign() function is overloaded. This instance will be called for arguments that are both std::vector, and will call assign() element-by element.

+

For example, a std::vector<int> can be assigned to a std::vector<double> using this function.

+
Template Parameters
+ + + +
LHSType of left-hand side vector elements.
RHSType of right-hand side vector elements.
+
+
+
Parameters
+ + + +
xLeft-hand side vector.
yRight-hand side vector.
+
+
+
Exceptions
+ + +
std::domain_errorif sizes do not match.
+
+
+ +

Definition at line 153 of file assign.hpp.

+ +
+
+ +
+
+
+template<typename T2 >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
T2 stan::math::bessel_first_kind (const int v,
const T2 z 
)
+
+inline
+
+ +

Definition at line 11 of file bessel_first_kind.hpp.

+ +
+
+ +
+
+
+template<typename T2 >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
T2 stan::math::bessel_second_kind (const int v,
const T2 z 
)
+
+inline
+
+ +

Definition at line 11 of file bessel_second_kind.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
boost::math::tools::promote_args<T>::type stan::math::binary_log_loss (const int y,
const T y_hat 
)
+
+inline
+
+ +

Returns the log loss function for binary classification with specified reference and response values.

+

The log loss function for prediction $\hat{y} \in [0, 1]$ given outcome $y \in \{ 0, 1 \}$ is

+

$\mbox{logloss}(1,\hat{y}) = -\log \hat{y} $, and

+

$\mbox{logloss}(0,\hat{y}) = -\log (1 - \hat{y}) $.

+
Parameters
+ + + +
yReference value in { 0 , 1 }.
y_hatResponse value in [0,1].
+
+
+
Returns
Log loss for response given reference value.
+ +

Definition at line 26 of file binary_log_loss.hpp.

+ +
+
+ +
+
+
+template<typename T_N , typename T_n >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
boost::math::tools::promote_args<T_N, T_n>::type stan::math::binomial_coefficient_log (const T_N N,
const T_n n 
)
+
+inline
+
+ +

Return the log of the binomial coefficient for the specified arguments.

+

The binomial coefficient, ${N \choose n}$, read "N choose n", is defined for $0 \leq n \leq N$ by

+

${N \choose n} = \frac{N!}{n! (N-n)!}$.

+

This function uses Gamma functions to define the log and generalize the arguments to continuous N and n.

+

$ \log {N \choose n} = \log \ \Gamma(N+1) - \log \Gamma(n+1) - \log \Gamma(N-n+1)$.

+
Parameters
+ + + +
Ntotal number of objects.
nnumber of objects chosen.
+
+
+
Returns
log (N choose n).
+ +

Definition at line 31 of file binomial_coefficient_log.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Eigen::Matrix<T,Eigen::Dynamic,Eigen::Dynamic> stan::math::block (const Eigen::Matrix< T, Eigen::Dynamic, Eigen::Dynamic > & m,
size_t i,
size_t j,
size_t nrows,
size_t ncols 
)
+
+inline
+
+ +

Return a nrows x ncols submatrix starting at (i-1,j-1).

+
Parameters
+ + + + + + +
mMatrix
iStarting row
jStarting column
nrowsNumber of rows in block
ncolsNumber of columns in block
+
+
+ +

Definition at line 23 of file block.hpp.

+ +
+
+ +
+
+
+template<typename T_y , typename T_low , typename T_high , typename T_result >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
bool stan::math::check_bounded (const char * function,
const T_y & y,
const T_low & low,
const T_high & high,
const char * name,
T_result * result 
)
+
+inline
+
+ +

Definition at line 68 of file check_bounded.hpp.

+ +
+
+ +
+
+
+template<typename T_y , typename T_low , typename T_high >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
bool stan::math::check_bounded (const char * function,
const T_y & y,
const T_low & low,
const T_high & high,
const char * name 
)
+
+inline
+
+ +

Definition at line 79 of file check_bounded.hpp.

+ +
+
+ +
+
+
+template<typename T_y , typename T_result >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
bool stan::math::check_cholesky_factor (const char * function,
const Eigen::Matrix< T_y, Eigen::Dynamic, Eigen::Dynamic > & y,
const char * name,
T_result * result 
)
+
+inline
+
+ +

Return true if the specified matrix is a valid Cholesky factor.

+

A Cholesky factor is a lower triangular matrix whose diagonal elements are all positive. Note that Cholesky factors need not be square, but require at least as many rows M as columns N (i.e., M >= N).

+
Parameters
+ + + + + +
function
yMatrix to test.
name
result
+
+
+
Returns
true if the matrix is a valid Cholesky factor.
+
Template Parameters
+ + + +
T_yType of elements of Cholesky factor
T_resultType of result.
+
+
+ +

Definition at line 30 of file check_cholesky_factor.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
bool stan::math::check_cholesky_factor (const char * function,
const Eigen::Matrix< T, Eigen::Dynamic, Eigen::Dynamic > & y,
const char * name,
T * result = 0 
)
+
+inline
+
+ +

Definition at line 51 of file check_cholesky_factor.hpp.

+ +
+
+ +
+
+
+template<typename T_y , typename T_result >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
bool stan::math::check_cholesky_factor (const char * function,
const Eigen::Matrix< T_y, Eigen::Dynamic, Eigen::Dynamic > & y,
T_result * result 
)
+
+inline
+
+ +

Return true if the specified matrix is a valid Cholesky factor (lower triangular, positive diagonal).

+
Parameters
+ + + + +
functionName of function.
yMatrix to test.
resultPointer into which to write result.
+
+
+
Returns
true if the matrix is a valid Cholesky factor.
+
Template Parameters
+ + + +
T_yType of elements of Cholesky factor
T_resultType of result.
+
+
+ +

Definition at line 71 of file check_cholesky_factor.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
bool stan::math::check_cholesky_factor (const char * function,
const Eigen::Matrix< T, Eigen::Dynamic, Eigen::Dynamic > & y,
T * result = 0 
)
+
+inline
+
+ +

Definition at line 78 of file check_cholesky_factor.hpp.

+ +
+
+ +
+
+
+template<typename T , typename T_result >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
bool stan::math::check_consistent_size (size_t max_size,
const char * function,
const T & x,
const char * name,
T_result * result 
)
+
+inline
+
+ +

Definition at line 11 of file check_consistent_size.hpp.

+ +
+
+ +
+
+
+template<typename T1 , typename T2 , typename T_result >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
bool stan::math::check_consistent_sizes (const char * function,
const T1 & x1,
const T2 & x2,
const char * name1,
const char * name2,
T_result * result 
)
+
+inline
+
+ +

Definition at line 12 of file check_consistent_sizes.hpp.

+ +
+
+ +
+
+
+template<typename T1 , typename T2 , typename T3 , typename T_result >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
bool stan::math::check_consistent_sizes (const char * function,
const T1 & x1,
const T2 & x2,
const T3 & x3,
const char * name1,
const char * name2,
const char * name3,
T_result * result 
)
+
+inline
+
+ +

Definition at line 25 of file check_consistent_sizes.hpp.

+ +
+
+ +
+
+
+template<typename T1 , typename T2 , typename T3 , typename T4 , typename T_result >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
bool stan::math::check_consistent_sizes (const char * function,
const T1 & x1,
const T2 & x2,
const T3 & x3,
const T4 & x4,
const char * name1,
const char * name2,
const char * name3,
const char * name4,
T_result * result 
)
+
+inline
+
+ +

Definition at line 40 of file check_consistent_sizes.hpp.

+ +
+
+ +
+
+
+template<typename T_y , typename T_result >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
bool stan::math::check_corr_matrix (const char * function,
const Eigen::Matrix< T_y, Eigen::Dynamic, Eigen::Dynamic > & y,
const char * name,
T_result * result 
)
+
+inline
+
+ +

Return true if the specified matrix is a valid correlation matrix.

+

A valid correlation matrix is symmetric, has a unit diagonal (all 1 values), and has all values between -1 and 1 (inclussive).

+
Parameters
+ + + + + +
function
yMatrix to test.
name
result
+
+
+
Returns
true if the specified matrix is a valid correlation matrix.
+
Template Parameters
+ + +
TType of scalar.
+
+
+ +

Definition at line 32 of file check_corr_matrix.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
bool stan::math::check_corr_matrix (const char * function,
const Eigen::Matrix< T, Eigen::Dynamic, Eigen::Dynamic > & y,
const char * name,
T * result = 0 
)
+
+inline
+
+ +

Definition at line 62 of file check_corr_matrix.hpp.

+ +
+
+ +
+
+
+template<typename T_y , typename T_result >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
bool stan::math::check_cov_matrix (const char * function,
const Eigen::Matrix< T_y, Eigen::Dynamic, Eigen::Dynamic > & y,
const char * name,
T_result * result 
)
+
+inline
+
+ +

Return true if the specified matrix is a valid covariance matrix.

+

A valid covariance matrix must be square, symmetric, and positive definite.

+
Parameters
+ + + + + +
function
yMatrix to test.
name
result
+
+
+
Returns
true if the matrix is a valid covariance matrix.
+
Template Parameters
+ + +
TType of scalar.
+
+
+ +

Definition at line 29 of file check_cov_matrix.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
bool stan::math::check_cov_matrix (const char * function,
const Eigen::Matrix< T, Eigen::Dynamic, Eigen::Dynamic > & y,
const char * name,
T * result = 0 
)
+
+inline
+
+ +

Definition at line 48 of file check_cov_matrix.hpp.

+ +
+
+ +
+
+
+template<typename T_covar , typename T_result >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
bool stan::math::check_cov_matrix (const char * function,
const Eigen::Matrix< T_covar, Eigen::Dynamic, Eigen::Dynamic > & Sigma,
T_result * result 
)
+
+inline
+
+ +

Return true if the specified matrix is a valid covariance matrix.

+

A valid covariance matrix must be symmetric and positive definite.

+
Parameters
+ + + + +
function
SigmaMatrix to test.
result
+
+
+
Returns
true if the matrix is a valid covariance matrix.
+
Template Parameters
+ + +
TType of scalar.
+
+
+ +

Definition at line 70 of file check_cov_matrix.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
bool stan::math::check_cov_matrix (const char * function,
const Eigen::Matrix< T, Eigen::Dynamic, Eigen::Dynamic > & Sigma,
T * result = 0 
)
+
+inline
+
+ +

Definition at line 85 of file check_cov_matrix.hpp.

+ +
+
+ +
+
+
+template<typename T_y , typename T_result >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
bool stan::math::check_finite (const char * function,
const T_y & y,
const char * name,
T_result * result 
)
+
+inline
+
+ +

Checks if the variable y is finite.

+ +

Definition at line 49 of file check_finite.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
bool stan::math::check_finite (const char * function,
const T & y,
const char * name 
)
+
+inline
+
+ +

Definition at line 58 of file check_finite.hpp.

+ +
+
+ +
+
+
+template<typename T_y , typename T_low , typename T_result >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
bool stan::math::check_greater (const char * function,
const T_y & y,
const T_low & low,
const char * name,
T_result * result 
)
+
+inline
+
+ +

Definition at line 56 of file check_greater.hpp.

+ +
+
+ +
+
+
+template<typename T_y , typename T_low >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
bool stan::math::check_greater (const char * function,
const T_y & y,
const T_low & low,
const char * name 
)
+
+inline
+
+ +

Definition at line 65 of file check_greater.hpp.

+ +
+
+ +
+
+
+template<typename T_y , typename T_low , typename T_result >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
bool stan::math::check_greater_or_equal (const char * function,
const T_y & y,
const T_low & low,
const char * name,
T_result * result 
)
+
+inline
+
+ +

Definition at line 56 of file check_greater_or_equal.hpp.

+ +
+
+ +
+
+
+template<typename T_y , typename T_low >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
bool stan::math::check_greater_or_equal (const char * function,
const T_y & y,
const T_low & low,
const char * name 
)
+
+inline
+
+ +

Definition at line 65 of file check_greater_or_equal.hpp.

+ +
+
+ +
+
+
+template<typename T , int R, int C, typename T_result >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
bool stan::math::check_ldlt_factor (const char * function,
stan::math::LDLT_factor< T, R, C > & A,
const char * name,
T_result * result 
)
+
+inline
+
+ +

Return true if the underlying matrix is positive definite.

+
Parameters
+ + + + + +
function
A
name
result
+
+
+
Returns
true if the matrix is positive definite.
+
Template Parameters
+ + +
TType of scalar.
+
+
+ +

Definition at line 23 of file check_ldlt_factor.hpp.

+ +
+
+ +
+
+
+template<typename T , int R, int C>
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
bool stan::math::check_ldlt_factor (const char * function,
stan::math::LDLT_factor< T, R, C > & A,
const char * name,
T * result = 0 
)
+
+inline
+
+ +

Definition at line 40 of file check_ldlt_factor.hpp.

+ +
+
+ +
+
+
+template<typename T_y , typename T_high , typename T_result >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
bool stan::math::check_less (const char * function,
const T_y & y,
const T_high & high,
const char * name,
T_result * result 
)
+
+inline
+
+ +

Definition at line 55 of file check_less.hpp.

+ +
+
+ +
+
+
+template<typename T_y , typename T_high >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
bool stan::math::check_less (const char * function,
const T_y & y,
const T_high & high,
const char * name 
)
+
+inline
+
+ +

Definition at line 64 of file check_less.hpp.

+ +
+
+ +
+
+
+template<typename T_y , typename T_high , typename T_result >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
bool stan::math::check_less_or_equal (const char * function,
const T_y & y,
const T_high & high,
const char * name,
T_result * result 
)
+
+inline
+
+ +

Definition at line 50 of file check_less_or_equal.hpp.

+ +
+
+ +
+
+
+template<typename T_y , typename T_high >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
bool stan::math::check_less_or_equal (const char * function,
const T_y & y,
const T_high & high,
const char * name 
)
+
+inline
+
+ +

Definition at line 59 of file check_less_or_equal.hpp.

+ +
+
+ +
+
+
+template<typename T_y , typename T_result >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
bool stan::math::check_lower_triangular (const char * function,
const Eigen::Matrix< T_y, Eigen::Dynamic, Eigen::Dynamic > & y,
const char * name,
T_result * result 
)
+
+inline
+
+ +

Return true if the specified matrix is lower triangular.

+

A matrix x is not lower triangular if there is a non-zero entry x[m,n] with m < n.

+
Parameters
+ + + + + +
function
yMatrix to test.
name
result
+
+
+
Returns
true if the matrix is symmetric.
+
Template Parameters
+ + +
TType of scalar.
+
+
+ +

Definition at line 26 of file check_lower_triangular.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
bool stan::math::check_lower_triangular (const char * function,
const Eigen::Matrix< T, Eigen::Dynamic, Eigen::Dynamic > & y,
const char * name,
T * result = 0 
)
+
+inline
+
+ +

Definition at line 46 of file check_lower_triangular.hpp.

+ +
+
+ +
+
+
+template<typename T_y , typename T_result >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
bool stan::math::check_nonnegative (const char * function,
const T_y & y,
const char * name,
T_result * result 
)
+
+inline
+
+ +

Definition at line 46 of file check_nonnegative.hpp.

+ +
+
+ +
+
+
+template<typename T_y >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
bool stan::math::check_nonnegative (const char * function,
const T_y & y,
const char * name 
)
+
+inline
+
+ +

Definition at line 54 of file check_nonnegative.hpp.

+ +
+
+ +
+
+
+template<typename T_y , typename T_result >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
bool stan::math::check_not_nan (const char * function,
const T_y & y,
const char * name,
T_result * result = 0 
)
+
+inline
+
+ +

Checks if the variable y is nan.

+
Parameters
+ + + + + +
functionName of function being invoked.
yReference to variable being tested.
nameName of variable being tested.
resultPointer to resulting value after test.
+
+
+
Template Parameters
+ + + +
T_yType of variable being tested.
T_resultType of result returned.
+
+
+ +

Definition at line 54 of file check_not_nan.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
bool stan::math::check_not_nan (const char * function,
const T & y,
const char * name 
)
+
+inline
+
+ +

Definition at line 64 of file check_not_nan.hpp.

+ +
+
+ +
+
+
+template<typename T_y , typename T_result >
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
bool stan::math::check_ordered (const char * function,
const Eigen::Matrix< T_y, Eigen::Dynamic, 1 > & y,
const char * name,
T_result * result 
)
+
+ +

Return true if the specified vector is sorted into increasing order.

+

There may be duplicate values. Otherwise, raise a domain error according to the specified policy.

+
Parameters
+ + + + + +
function
yVector to test.
name
result
+
+
+
Returns
true if the vector has positive, ordered values.
+ +

Definition at line 25 of file check_ordered.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
bool stan::math::check_ordered (const char * function,
const Eigen::Matrix< T, Eigen::Dynamic, 1 > & y,
const char * name,
T * result = 0 
)
+
+ +

Definition at line 50 of file check_ordered.hpp.

+ +
+
+ +
+
+
+template<typename T_y , typename T_result >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
bool stan::math::check_pos_definite (const char * function,
const Eigen::Matrix< T_y, Eigen::Dynamic, Eigen::Dynamic > & y,
const char * name,
T_result * result 
)
+
+inline
+
+ +

Return true if the specified matrix is positive definite.

+

NOTE: symmetry is NOT checked by this function

+
Parameters
+ + + + + +
function
yMatrix to test.
name
result
+
+
+
Returns
true if the matrix is positive definite.
+
Template Parameters
+ + +
TType of scalar.
+
+
+ +

Definition at line 26 of file check_pos_definite.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
bool stan::math::check_pos_definite (const char * function,
const Eigen::Matrix< T, Eigen::Dynamic, Eigen::Dynamic > & y,
const char * name,
T * result = 0 
)
+
+inline
+
+ +

Definition at line 55 of file check_pos_definite.hpp.

+ +
+
+ +
+
+
+template<typename T_y , typename T_result >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
bool stan::math::check_pos_semidefinite (const char * function,
const Eigen::Matrix< T_y, Eigen::Dynamic, Eigen::Dynamic > & y,
const char * name,
T_result * result 
)
+
+inline
+
+ +

Return true if the specified matrix is positive definite.

+

NOTE: symmetry is NOT checked by this function

+
Parameters
+ + + + + +
function
yMatrix to test.
name
result
+
+
+
Returns
true if the matrix is positive semi-definite.
+
Template Parameters
+ + +
TType of scalar.
+
+
+ +

Definition at line 26 of file check_pos_semidefinite.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
bool stan::math::check_pos_semidefinite (const char * function,
const Eigen::Matrix< T, Eigen::Dynamic, Eigen::Dynamic > & y,
const char * name,
T * result = 0 
)
+
+inline
+
+ +

Definition at line 53 of file check_pos_semidefinite.hpp.

+ +
+
+ +
+
+
+template<typename T_y , typename T_result >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
bool stan::math::check_positive (const char * function,
const T_y & y,
const char * name,
T_result * result 
)
+
+inline
+
+ +

Definition at line 48 of file check_positive.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
bool stan::math::check_positive (const char * function,
const T & x,
const char * name 
)
+
+inline
+
+ +

Definition at line 56 of file check_positive.hpp.

+ +
+
+ +
+
+
+template<typename T_y , typename T_result >
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
bool stan::math::check_positive_ordered (const char * function,
const Eigen::Matrix< T_y, Eigen::Dynamic, 1 > & y,
const char * name,
T_result * result 
)
+
+ +

Return true if the specified vector contains only non-negative values and is sorted into increasing order.

+

There may be duplicate values. Otherwise, raise a domain error according to the specified policy.

+
Parameters
+ + + + + +
function
yVector to test.
name
result
+
+
+
Returns
true if the vector has positive, ordered values.
+ +

Definition at line 25 of file check_positive_ordered.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
bool stan::math::check_positive_ordered (const char * function,
const Eigen::Matrix< T, Eigen::Dynamic, 1 > & y,
const char * name,
T * result = 0 
)
+
+ +

Definition at line 59 of file check_positive_ordered.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
void stan::math::check_range (size_t max,
size_t i,
const char * msg,
size_t idx 
)
+
+inline
+
+ +

Definition at line 30 of file check_range.hpp.

+ +
+
+ +
+
+
+template<typename T_prob , typename T_result >
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
bool stan::math::check_simplex (const char * function,
const Eigen::Matrix< T_prob, Eigen::Dynamic, 1 > & theta,
const char * name,
T_result * result 
)
+
+ +

Return true if the specified vector is simplex.

+

To be a simplex, all values must be greater than or equal to 0 and the values must sum to 1.

+

The test that the values sum to 1 is done to within the tolerance specified by CONSTRAINT_TOLERANCE.

+
Parameters
+ + + + + +
function
thetaVector to test.
name
result
+
+
+
Returns
true if the vector is a simplex.
+ +

Definition at line 27 of file check_simplex.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
bool stan::math::check_simplex (const char * function,
const Eigen::Matrix< T, Eigen::Dynamic, 1 > & theta,
const char * name,
T * result = 0 
)
+
+inline
+
+ +

Definition at line 67 of file check_simplex.hpp.

+ +
+
+ +
+
+
+template<typename T_size1 , typename T_size2 , typename T_result >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
bool stan::math::check_size_match (const char * function,
T_size1 i,
const char * name_i,
T_size2 j,
const char * name_j,
T_result * result 
)
+
+inline
+
+ +

Definition at line 13 of file check_size_match.hpp.

+ +
+
+ +
+
+
+template<typename T_size1 , typename T_size2 >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
bool stan::math::check_size_match (const char * function,
T_size1 i,
const char * name_i,
T_size2 j,
const char * name_j,
T_size1 * result = 0 
)
+
+inline
+
+ +

Definition at line 34 of file check_size_match.hpp.

+ +
+
+ +
+
+
+template<typename T_y , typename T_result >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
bool stan::math::check_spsd_matrix (const char * function,
const Eigen::Matrix< T_y, Eigen::Dynamic, Eigen::Dynamic > & y,
const char * name,
T_result * result 
)
+
+inline
+
+ +

Return true if the specified matrix is a square, symmetric, and positive semi-definite.

+
Parameters
+ + + + + +
function
yMatrix to test.
name
result
+
+
+
Returns
true if the matrix is a square, symmetric, and positive semi-definite.
+
Template Parameters
+ + +
TType of scalar.
+
+
+ +

Definition at line 29 of file check_spsd_matrix.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
bool stan::math::check_spsd_matrix (const char * function,
const Eigen::Matrix< T, Eigen::Dynamic, Eigen::Dynamic > & y,
const char * name,
T * result = 0 
)
+
+inline
+
+ +

Definition at line 45 of file check_spsd_matrix.hpp.

+ +
+
+ +
+
+
+template<typename T_y , typename T_result >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
bool stan::math::check_square (const char * function,
const Eigen::Matrix< T_y, Eigen::Dynamic, Eigen::Dynamic > & y,
const char * name,
T_result * result 
)
+
+inline
+
+ +

Return true if the specified matrix is square.

+
Parameters
+ + + + + +
function
yMatrix to test.
name
result
+
+
+
Returns
true if the matrix is a square matrix.
+
Template Parameters
+ + +
TType of scalar.
+
+
+ +

Definition at line 26 of file check_square.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
bool stan::math::check_square (const char * function,
const Eigen::Matrix< T, Eigen::Dynamic, Eigen::Dynamic > & y,
const char * name,
T * result = 0 
)
+
+inline
+
+ +

Definition at line 39 of file check_square.hpp.

+ +
+
+ +
+
+
+template<typename T_y , typename T_result >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
bool stan::math::check_symmetric (const char * function,
const Eigen::Matrix< T_y, Eigen::Dynamic, Eigen::Dynamic > & y,
const char * name,
T_result * result 
)
+
+inline
+
+ +

Return true if the specified matrix is symmetric.

+

NOTE: squareness is not checked by this function

+
Parameters
+ + + + + +
function
yMatrix to test.
name
result
+
+
+
Returns
true if the matrix is symmetric.
+
Template Parameters
+ + +
TType of scalar.
+
+
+ +

Definition at line 26 of file check_symmetric.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
bool stan::math::check_symmetric (const char * function,
const Eigen::Matrix< T, Eigen::Dynamic, Eigen::Dynamic > & y,
const char * name,
T * result = 0 
)
+
+inline
+
+ +

Definition at line 55 of file check_symmetric.hpp.

+ +
+
+ +
+
+
+template<typename T_prob , typename T_result >
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
bool stan::math::check_unit_vector (const char * function,
const Eigen::Matrix< T_prob, Eigen::Dynamic, 1 > & theta,
const char * name,
T_result * result 
)
+
+ +

Return true if the specified vector is unit vector.

+

The test that the values sum to 1 is done to within the tolerance specified by CONSTRAINT_TOLERANCE.

+
Parameters
+ + + + + +
function
thetaVector to test.
name
result
+
+
+
Returns
true if the vector is a unit vector.
+ +

Definition at line 25 of file check_unit_vector.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
bool stan::math::check_unit_vector (const char * function,
const Eigen::Matrix< T, Eigen::Dynamic, 1 > & theta,
const char * name,
T * result = 0 
)
+
+inline
+
+ +

Definition at line 52 of file check_unit_vector.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + + + + +
Eigen::Matrix<T,Eigen::Dynamic,Eigen::Dynamic> stan::math::cholesky_decompose (const Eigen::Matrix< T, Eigen::Dynamic, Eigen::Dynamic > & m)
+
+ +

Return the lower-triangular Cholesky factor (i.e., matrix square root) of the specified square, symmetric matrix.

+

The return value $L$ will be a lower-traingular matrix such that the original matrix $A$ is given by

+

$A = L \times L^T$.

+
Parameters
+ + +
mSymmetrix matrix.
+
+
+
Returns
Square root of matrix.
+
Exceptions
+ + +
std::domain_errorif m is not a symmetric matrix.
+
+
+ +

Definition at line 22 of file cholesky_decompose.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
Eigen::Matrix<T,Eigen::Dynamic,1> stan::math::col (const Eigen::Matrix< T, Eigen::Dynamic, Eigen::Dynamic > & m,
size_t j 
)
+
+inline
+
+ +

Return the specified column of the specified matrix using start-at-1 indexing.

+

This is equivalent to calling m.col(i - 1) and assigning the resulting template expression to a column vector.

+
Parameters
+ + + +
mMatrix.
jColumn index (count from 1).
+
+
+
Returns
Specified column of the matrix.
+ +

Definition at line 24 of file col.hpp.

+ +
+
+ +
+
+
+template<typename T , int R, int C>
+ + + + + +
+ + + + + + + + +
size_t stan::math::cols (const Eigen::Matrix< T, R, C > & m)
+
+inline
+
+ +

Definition at line 12 of file cols.hpp.

+ +
+
+ +
+
+
+template<int R1, int C1, int R2, int C2>
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
Eigen::Matrix<double, 1, C1> stan::math::columns_dot_product (const Eigen::Matrix< double, R1, C1 > & v1,
const Eigen::Matrix< double, R2, C2 > & v2 
)
+
+inline
+
+ +

Returns the dot product of the specified vectors.

+
Parameters
+ + + +
v1First vector.
v2Second vector.
+
+
+
Returns
Dot product of the vectors.
+
Exceptions
+ + +
std::domain_errorIf the vectors are not the same size or if they are both not vector dimensioned.
+
+
+ +

Definition at line 22 of file columns_dot_product.hpp.

+ +
+
+ +
+
+
+template<typename T , int R, int C>
+ + + + + +
+ + + + + + + + +
Eigen::Matrix<T,1,C> stan::math::columns_dot_self (const Eigen::Matrix< T, R, C > & x)
+
+inline
+
+ +

Returns the dot product of each column of a matrix with itself.

+
Parameters
+ + +
xMatrix.
+
+
+
Template Parameters
+ + +
Tscalar type
+
+
+ +

Definition at line 16 of file columns_dot_self.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
matrix_d stan::math::crossprod (const matrix_d & M)
+
+inline
+
+ +

Returns the result of pre-multiplying a matrix by its own transpose.

+
Parameters
+ + +
MMatrix to multiply.
+
+
+
Returns
Transpose of M times M
+ +

Definition at line 17 of file crossprod.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + +
std::vector<T> stan::math::cumulative_sum (const std::vector< T > & x)
+
+inline
+
+ +

Return the cumulative sum of the specified vector.

+

The cumulative sum of a vector of values

+
is the
+
+
@code x[0], x[1] + x[2], ..., x[1] + ,..., + x[x.size()-1]
+
Template Parameters
+ + +
TScalar type of vector.
+
+
+
Parameters
+ + +
xVector of values.
+
+
+
Returns
Cumulative sum of values.
+ +

Definition at line 23 of file cumulative_sum.hpp.

+ +
+
+ +
+
+
+template<typename T , int R, int C>
+ + + + + +
+ + + + + + + + +
Eigen::Matrix<T,R,C> stan::math::cumulative_sum (const Eigen::Matrix< T, R, C > & m)
+
+inline
+
+ +

Return the cumulative sum of the specified matrix.

+

The cumulative sum is of the same type as the input and has values defined by

+
x(0), x(1) + x(2), ..., x(1) + ,..., + x(x.size()-1)
+
Template Parameters
+ + + + +
TScalar type of matrix.
RRow type of matrix.
CColumn type of matrix.
+
+
+
Parameters
+ + +
mMatrix of values.
+
+
+
Returns
Cumulative sum of values.
+ +

Definition at line 49 of file cumulative_sum.hpp.

+ +
+
+ +
+
+
+template<typename T , int R, int C>
+ + + + + +
+ + + + + + + + +
T stan::math::determinant (const Eigen::Matrix< T, R, C > & m)
+
+inline
+
+ +

Returns the determinant of the specified square matrix.

+
Parameters
+ + +
mSpecified matrix.
+
+
+
Returns
Determinant of the matrix.
+
Exceptions
+ + +
std::domain_errorif matrix is not square.
+
+
+ +

Definition at line 18 of file determinant.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + +
Eigen::Matrix<T,Eigen::Dynamic,Eigen::Dynamic> stan::math::diag_matrix (const Eigen::Matrix< T, Eigen::Dynamic, 1 > & v)
+
+inline
+
+ +

Return a square diagonal matrix with the specified vector of coefficients as the diagonal values.

+
Parameters
+ + +
[in]vSpecified vector.
+
+
+
Returns
Diagonal matrix with vector as diagonal values.
+ +

Definition at line 18 of file diag_matrix.hpp.

+ +
+
+ +
+
+
+template<typename T1 , typename T2 , int R1, int C1, int R2, int C2>
+ + + + + + + + + + + + + + + + + + +
Eigen::Matrix<typename boost::math::tools::promote_args<T1,T2>::type, R1, C1> stan::math::diag_post_multiply (const Eigen::Matrix< T1, R1, C1 > & m1,
const Eigen::Matrix< T2, R2, C2 > & m2 
)
+
+ +

Definition at line 13 of file diag_post_multiply.hpp.

+ +
+
+ +
+
+
+template<typename T1 , typename T2 , int R1, int C1, int R2, int C2>
+ + + + + + + + + + + + + + + + + + +
Eigen::Matrix<typename boost::math::tools::promote_args<T1,T2>::type, R2, C2> stan::math::diag_pre_multiply (const Eigen::Matrix< T1, R1, C1 > & m1,
const Eigen::Matrix< T2, R2, C2 > & m2 
)
+
+ +

Definition at line 13 of file diag_pre_multiply.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + +
Eigen::Matrix<T,Eigen::Dynamic,1> stan::math::diagonal (const Eigen::Matrix< T, Eigen::Dynamic, Eigen::Dynamic > & m)
+
+inline
+
+ +

Return a column vector of the diagonal elements of the specified matrix.

+

The matrix is not required to be square.

+
Parameters
+ + +
mSpecified matrix.
+
+
+
Returns
Diagonal of the matrix.
+ +

Definition at line 18 of file diagonal.hpp.

+ +
+
+ +
+
+ + + + + + + + +
double stan::math::digamma (double x)
+
+ +

Definition at line 10 of file digamma.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
void stan::math::dims (const T & x,
std::vector< int > & result 
)
+
+inline
+
+ +

Definition at line 13 of file dims.hpp.

+ +
+
+ +
+
+
+template<typename T , int R, int C>
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
void stan::math::dims (const Eigen::Matrix< T, R, C > & x,
std::vector< int > & result 
)
+
+inline
+
+ +

Definition at line 18 of file dims.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
void stan::math::dims (const std::vector< T > & x,
std::vector< int > & result 
)
+
+inline
+
+ +

Definition at line 25 of file dims.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + +
std::vector<int> stan::math::dims (const T & x)
+
+inline
+
+ +

Definition at line 34 of file dims.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
double stan::math::dist (const std::vector< double > & x,
const std::vector< double > & y 
)
+
+inline
+
+ +

Definition at line 11 of file dist.hpp.

+ +
+
+ +
+
+
+template<typename T1 , int R1, int C1, typename T2 , int R2, int C2>
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
boost::math::tools::promote_args<T1,T2>::type stan::math::distance (const Eigen::Matrix< T1, R1, C1 > & v1,
const Eigen::Matrix< T2, R2, C2 > & v2 
)
+
+inline
+
+ +

Returns the distance between the specified vectors.

+
Parameters
+ + + +
v1First vector.
v2Second vector.
+
+
+
Returns
Dot product of the vectors.
+
Exceptions
+ + +
std::domain_errorIf the vectors are not the same size or if they are both not vector dimensioned.
+
+
+ +

Definition at line 23 of file distance.hpp.

+ +
+
+ +
+
+
+template<int R, int C, typename T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
boost::enable_if_c<boost::is_arithmetic<T>::value, Eigen::Matrix<double, R, C> >::type stan::math::divide (const Eigen::Matrix< double, R, C > & m,
c 
)
+
+inline
+
+ +

Return specified matrix divided by specified scalar.

+
Template Parameters
+ + + +
RRow type for matrix.
CColumn type for matrix.
+
+
+
Parameters
+ + + +
mMatrix.
cScalar.
+
+
+
Returns
Matrix divided by scalar.
+ +

Definition at line 23 of file divide.hpp.

+ +
+
+ +
+
+
+template<typename T_y , typename T_result , typename T_msg2 >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
bool stan::math::dom_err (const char * function,
const T_y & y,
const char * name,
const char * error_msg,
T_msg2 error_msg2,
T_result * result 
)
+
+inline
+
+ +

Definition at line 25 of file dom_err.hpp.

+ +
+
+ +
+
+
+template<typename T_y , typename T_result , typename T_msg2 >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
bool stan::math::dom_err_vec (size_t i,
const char * function,
const T_y & y,
const char * name,
const char * error_msg,
T_msg2 error_msg2,
T_result * result 
)
+
+inline
+
+ +

Definition at line 15 of file dom_err_vec.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
double stan::math::dot (const std::vector< double > & x,
const std::vector< double > & y 
)
+
+inline
+
+ +

Definition at line 11 of file dot.hpp.

+ +
+
+ +
+
+
+template<int R1, int C1, int R2, int C2>
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
double stan::math::dot_product (const Eigen::Matrix< double, R1, C1 > & v1,
const Eigen::Matrix< double, R2, C2 > & v2 
)
+
+inline
+
+ +

Returns the dot product of the specified vectors.

+
Parameters
+ + + +
v1First vector.
v2Second vector.
+
+
+
Returns
Dot product of the vectors.
+
Exceptions
+ + +
std::domain_errorIf the vectors are not the same size or if they are both not vector dimensioned.
+
+
+ +

Definition at line 22 of file dot_product.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
double stan::math::dot_product (const double * v1,
const double * v2,
size_t length 
)
+
+inline
+
+ +

Returns the dot product of the specified arrays of doubles.

+
Parameters
+ + + + +
v1First array.
v2Second array.
lengthLength of both arrays.
+
+
+ +

Definition at line 35 of file dot_product.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
double stan::math::dot_product (const std::vector< double > & v1,
const std::vector< double > & v2 
)
+
+inline
+
+ +

Returns the dot product of the specified arrays of doubles.

+
Parameters
+ + + +
v1First array.
v2Second array.
+
+
+
Exceptions
+ + +
std::domain_errorif the vectors are not the same size.
+
+
+ +

Definition at line 48 of file dot_product.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
double stan::math::dot_self (const std::vector< double > & x)
+
+inline
+
+ +

Definition at line 11 of file dot_self.hpp.

+ +
+
+ +
+
+
+template<int R, int C>
+ + + + + +
+ + + + + + + + +
double stan::math::dot_self (const Eigen::Matrix< double, R, C > & v)
+
+inline
+
+ +

Returns the dot product of the specified vector with itself.

+
Parameters
+ + +
vVector.
+
+
+
Template Parameters
+ + + +
Rnumber of rows or Eigen::Dynamic for dynamic
Cnumber of rows or Eigen::Dyanmic for dynamic
+
+
+
Exceptions
+ + +
std::domain_errorIf v is not vector dimensioned.
+
+
+ +

Definition at line 18 of file dot_self.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
double stan::math::e ()
+
+inline
+
+ +

Return the base of the natural logarithm.

+
Returns
Base of natural logarithm.
+ +

Definition at line 86 of file constants.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + + + + +
Eigen::Matrix<T,Eigen::Dynamic,1> stan::math::eigenvalues_sym (const Eigen::Matrix< T, Eigen::Dynamic, Eigen::Dynamic > & m)
+
+ +

Return the eigenvalues of the specified symmetric matrix in descending order of magnitude.

+

This function is more efficient than the general eigenvalues function for symmetric matrices.

+

See eigen_decompose() for more information.

+
Parameters
+ + +
mSpecified matrix.
+
+
+
Returns
Eigenvalues of matrix.
+ +

Definition at line 22 of file eigenvalues_sym.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + + + + +
Eigen::Matrix<T,Eigen::Dynamic,Eigen::Dynamic> stan::math::eigenvectors_sym (const Eigen::Matrix< T, Eigen::Dynamic, Eigen::Dynamic > & m)
+
+ +

Definition at line 13 of file eigenvectors_sym.hpp.

+ +
+
+ +
+
+
+template<typename T1 , typename T2 , int R, int C>
+ + + + + + + + + + + + + + + + + + +
Eigen::Matrix<typename boost::math::tools::promote_args<T1,T2>::type, R, C> stan::math::elt_divide (const Eigen::Matrix< T1, R, C > & m1,
const Eigen::Matrix< T2, R, C > & m2 
)
+
+ +

Return the elementwise division of the specified matrices matrices.

+
Template Parameters
+ + + + + +
T1Type of scalars in first matrix.
T2Type of scalars in second matrix.
RRow type of both matrices.
CColumn type of both matrices.
+
+
+
Parameters
+ + + +
m1First matrix
m2Second matrix
+
+
+
Returns
Elementwise division of matrices.
+ +

Definition at line 25 of file elt_divide.hpp.

+ +
+
+ +
+
+
+template<typename T1 , typename T2 , int R, int C>
+ + + + + + + + + + + + + + + + + + +
Eigen::Matrix<typename boost::math::tools::promote_args<T1,T2>::type, R, C> stan::math::elt_multiply (const Eigen::Matrix< T1, R, C > & m1,
const Eigen::Matrix< T2, R, C > & m2 
)
+
+ +

Return the elementwise multiplication of the specified matrices.

+
Template Parameters
+ + + + + +
T1Type of scalars in first matrix.
T2Type of scalars in second matrix.
RRow type of both matrices.
CColumn type of both matrices.
+
+
+
Parameters
+ + + +
m1First matrix
m2Second matrix
+
+
+
Returns
Elementwise product of matrices.
+ +

Definition at line 25 of file elt_multiply.hpp.

+ +
+
+ +
+
+
+template<typename T , int Rows, int Cols>
+ + + + + +
+ + + + + + + + +
Eigen::Matrix<T,Rows,Cols> stan::math::exp (const Eigen::Matrix< T, Rows, Cols > & m)
+
+inline
+
+ +

Return the element-wise exponentiation of the matrix or vector.

+
Parameters
+ + +
mThe matrix or vector.
+
+
+
Returns
ret(i,j) = exp(m(i,j))
+ +

Definition at line 16 of file exp.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + +
boost::math::tools::promote_args<T>::type stan::math::exp2 (const T y)
+
+inline
+
+ +

Return the exponent base 2 of the specified argument (C99).

+

The exponent base 2 function is defined by

+

exp2(y) = pow(2.0,y).

+
Parameters
+ + +
yValue.
+
+
+
Template Parameters
+ + +
TType of scalar.
+
+
+
Returns
Exponent base 2 of value.
+ +

Definition at line 23 of file exp2.hpp.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
double stan::math::F32 (double a,
double b,
double c,
double d,
double e,
double z,
double precision = 1e-6 
)
+
+ +

Definition at line 14 of file internal_math.hpp.

+ +
+
+ +
+
+
+template<typename T1 , typename T2 >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
boost::math::tools::promote_args<T1,T2>::type stan::math::falling_factorial (const T1 x,
const T2 n 
)
+
+inline
+
+ +

Definition at line 11 of file falling_factorial.hpp.

+ +
+
+ +
+
+
+template<typename T1 , typename T2 >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
boost::math::tools::promote_args<T1, T2>::type stan::math::fdim (T1 a,
T2 b 
)
+
+inline
+
+ +

The positive difference function (C99).

+

The function is defined by

+

fdim(a,b) = (a > b) ? (a - b) : 0.0.

+
Parameters
+ + + +
aFirst value.
bSecond value.
+
+
+
Returns
Returns min(a - b, 0.0).
+ +

Definition at line 21 of file fdim.hpp.

+ +
+
+ +
+
+
+template<typename T , typename S >
+ + + + + + + + + + + + + + + + + + +
void stan::math::fill (T & x,
const S & y 
)
+
+ +

Fill the specified container with the specified value.

+

This base case simply assigns the value to the container.

+
Template Parameters
+ + + +
TType of reference container.
SType of value.
+
+
+
Parameters
+ + + +
xContainer.
yValue.
+
+
+ +

Definition at line 22 of file fill.hpp.

+ +
+
+ +
+
+
+template<typename T , int R, int C, typename S >
+ + + + + + + + + + + + + + + + + + +
void stan::math::fill (Eigen::Matrix< T, R, C > & x,
const S & y 
)
+
+ +

Fill the specified container with the specified value.

+

The specified matrix is filled by element.

+
Template Parameters
+ + + + + +
TType of scalar for matrix container.
RRow type of matrix.
CColumn type of matrix.
SType of value.
+
+
+
Parameters
+ + + +
xContainer.
yValue.
+
+
+ +

Definition at line 39 of file fill.hpp.

+ +
+
+ +
+
+
+template<typename T , typename S >
+ + + + + + + + + + + + + + + + + + +
void stan::math::fill (std::vector< T > & x,
const S & y 
)
+
+ +

Fill the specified container with the specified value.

+

Each container in the specified standard vector is filled recursively by calling fill.

+
Template Parameters
+ + + +
TType of container in vector.
SType of value.
+
+
+
Parameters
+ + + +
xContainer.
yValue.
+
+
+ +

Definition at line 55 of file fill.hpp.

+ +
+
+ +
+
+
+template<typename T1 , typename T2 , typename T3 >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
boost::math::tools::promote_args<T1,T2,T3>::type stan::math::fma (const T1 a,
const T2 b,
const T3 c 
)
+
+inline
+
+ +

The fused multiply-add operation (C99).

+

The function is defined by

+

fma(a,b,c) = (a * b) + c.

+
Parameters
+ + + + +
aFirst value.
bSecond value.
cThird value.
+
+
+
Returns
Product of the first two values plust the third.
+ +

Definition at line 23 of file fma.hpp.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
double stan::math::gamma_p (double x,
double a 
)
+
+ +

Definition at line 11 of file gamma_p.hpp.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
double stan::math::gamma_q (double x,
double a 
)
+
+ +

Definition at line 11 of file gamma_q.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
const T& stan::math::get_base1 (const std::vector< T > & x,
size_t i,
const char * error_msg,
size_t idx 
)
+
+inline
+
+ +

Return a reference to the value of the specified vector at the specified base-one index.

+

If the index is out of range, throw a std::out_of_range exception with the specified error message and index indicated.

+
Parameters
+ + + + + +
xVector from which to get a value.
iIndex into vector plus 1.
error_msgError message if the index is out of range.
idxNested index level to report in error message if the index is out of range.
+
+
+
Returns
Value of vector at i - 1
+
Template Parameters
+ + +
Ttype of value.
+
+
+ +

Definition at line 27 of file get_base1.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
const T& stan::math::get_base1 (const std::vector< std::vector< T > > & x,
size_t i1,
size_t i2,
const char * error_msg,
size_t idx 
)
+
+inline
+
+ +

Return a reference to the value of the specified vector at the specified base-one indexes.

+

If an index is out of range, throw a std::out_of_range exception with the specified error message and index indicated.

+
Parameters
+ + + + + + +
xVector from which to get a value.
i1First index plus 1.
i2Second index plus 1.
error_msgError message if an index is out of range.
idxNested index level to report in error message if the index is out of range.
+
+
+
Returns
Value of vector at indexes.
+
Template Parameters
+ + +
Ttype of value.
+
+
+ +

Definition at line 52 of file get_base1.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
const T& stan::math::get_base1 (const std::vector< std::vector< std::vector< T > > > & x,
size_t i1,
size_t i2,
size_t i3,
const char * error_msg,
size_t idx 
)
+
+inline
+
+ +

Return a reference to the value of the specified vector at the specified base-one indexes.

+

If an index is out of range, throw a std::out_of_range exception with the specified error message and index indicated.

+
Parameters
+ + + + + + + +
xVector from which to get a value.
i1First index plus 1.
i2Second index plus 1.
i3Third index plus 1.
error_msgError message if an index is out of range.
idxNested index level to report in error message if the index is out of range.
+
+
+
Returns
Value of vector at indexes.
+
Template Parameters
+ + +
Ttype of value.
+
+
+ +

Definition at line 79 of file get_base1.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
const T& stan::math::get_base1 (const std::vector< std::vector< std::vector< std::vector< T > > > > & x,
size_t i1,
size_t i2,
size_t i3,
size_t i4,
const char * error_msg,
size_t idx 
)
+
+inline
+
+ +

Return a reference to the value of the specified vector at the specified base-one indexes.

+

If an index is out of range, throw a std::out_of_range exception with the specified error message and index indicated.

+
Parameters
+ + + + + + + + +
xVector from which to get a value.
i1First index plus 1.
i2Second index plus 1.
i3Third index plus 1.
i4Fourth index plus 1.
error_msgError message if an index is out of range.
idxNested index level to report in error message if the index is out of range.
+
+
+
Returns
Value of vector at indexes.
+
Template Parameters
+ + +
Ttype of value.
+
+
+ +

Definition at line 108 of file get_base1.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
const T& stan::math::get_base1 (const std::vector< std::vector< std::vector< std::vector< std::vector< T > > > > > & x,
size_t i1,
size_t i2,
size_t i3,
size_t i4,
size_t i5,
const char * error_msg,
size_t idx 
)
+
+inline
+
+ +

Return a reference to the value of the specified vector at the specified base-one indexes.

+

If an index is out of range, throw a std::out_of_range exception with the specified error message and index indicated.

+
Parameters
+ + + + + + + + + +
xVector from which to get a value.
i1First index plus 1.
i2Second index plus 1.
i3Third index plus 1.
i4Fourth index plus 1.
i5Fifth index plus 1.
error_msgError message if an index is out of range.
idxNested index level to report in error message if the index is out of range.
+
+
+
Returns
Value of vector at indexes.
+
Template Parameters
+ + +
Ttype of value.
+
+
+ +

Definition at line 139 of file get_base1.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
const T& stan::math::get_base1 (const std::vector< std::vector< std::vector< std::vector< std::vector< std::vector< T > > > > > > & x,
size_t i1,
size_t i2,
size_t i3,
size_t i4,
size_t i5,
size_t i6,
const char * error_msg,
size_t idx 
)
+
+inline
+
+ +

Return a reference to the value of the specified vector at the specified base-one indexes.

+

If an index is out of range, throw a std::out_of_range exception with the specified error message and index indicated.

+
Parameters
+ + + + + + + + + + +
xVector from which to get a value.
i1First index plus 1.
i2Second index plus 1.
i3Third index plus 1.
i4Fourth index plus 1.
i5Fifth index plus 1.
i6Sixth index plus 1.
error_msgError message if an index is out of range.
idxNested index level to report in error message if the index is out of range.
+
+
+
Returns
Value of vector at indexes.
+
Template Parameters
+ + +
Ttype of value.
+
+
+ +

Definition at line 172 of file get_base1.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
const T& stan::math::get_base1 (const std::vector< std::vector< std::vector< std::vector< std::vector< std::vector< std::vector< T > > > > > > > & x,
size_t i1,
size_t i2,
size_t i3,
size_t i4,
size_t i5,
size_t i6,
size_t i7,
const char * error_msg,
size_t idx 
)
+
+inline
+
+ +

Return a reference to the value of the specified vector at the specified base-one indexes.

+

If an index is out of range, throw a std::out_of_range exception with the specified error message and index indicated.

+
Parameters
+ + + + + + + + + + + +
xVector from which to get a value.
i1First index plus 1.
i2Second index plus 1.
i3Third index plus 1.
i4Fourth index plus 1.
i5Fifth index plus 1.
i6Sixth index plus 1.
i7Seventh index plus 1.
error_msgError message if an index is out of range.
idxNested index level to report in error message if the index is out of range.
+
+
+
Returns
Value of vector at indexes.
+
Template Parameters
+ + +
Ttype of value.
+
+
+ +

Definition at line 208 of file get_base1.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
const T& stan::math::get_base1 (const std::vector< std::vector< std::vector< std::vector< std::vector< std::vector< std::vector< std::vector< T > > > > > > > > & x,
size_t i1,
size_t i2,
size_t i3,
size_t i4,
size_t i5,
size_t i6,
size_t i7,
size_t i8,
const char * error_msg,
size_t idx 
)
+
+inline
+
+ +

Return a reference to the value of the specified vector at the specified base-one indexes.

+

If an index is out of range, throw a std::out_of_range exception with the specified error message and index indicated.

+
Parameters
+ + + + + + + + + + + + +
xVector from which to get a value.
i1First index plus 1.
i2Second index plus 1.
i3Third index plus 1.
i4Fourth index plus 1.
i5Fifth index plus 1.
i6Sixth index plus 1.
i7Seventh index plus 1.
i8Eigth index plus 1.
error_msgError message if an index is out of range.
idxNested index level to report in error message if the index is out of range.
+
+
+
Returns
Value of vector at indexes.
+
Template Parameters
+ + +
Ttype of value.
+
+
+ +

Definition at line 246 of file get_base1.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Eigen::Matrix<T,1,Eigen::Dynamic> stan::math::get_base1 (const Eigen::Matrix< T, Eigen::Dynamic, Eigen::Dynamic > & x,
size_t m,
const char * error_msg,
size_t idx 
)
+
+inline
+
+ +

Return a copy of the row of the specified vector at the specified base-one row index.

+

If the index is out of range, throw a std::out_of_range exception with the specified error message and index indicated.

+

Warning: Because a copy is involved, it is inefficient to access element of matrices by first using this method to get a row then using a second call to get the value at a specified column.

+
Parameters
+ + + + + +
xMatrix from which to get a row
mIndex into matrix plus 1.
error_msgError message if the index is out of range.
idxNested index level to report in error message if the index is out of range.
+
+
+
Returns
Row of matrix at i - 1.
+
Template Parameters
+ + +
Ttype of value.
+
+
+ +

Definition at line 284 of file get_base1.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
const T& stan::math::get_base1 (const Eigen::Matrix< T, Eigen::Dynamic, Eigen::Dynamic > & x,
size_t m,
size_t n,
const char * error_msg,
size_t idx 
)
+
+inline
+
+ +

Return a reference to the value of the specified matrix at the specified base-one row and column indexes.

+

If either index is out of range, throw a std::out_of_range exception with the specified error message and index indicated.

+
Parameters
+ + + + + + +
xMatrix from which to get a row
mRow index plus 1.
nColumn index plus 1.
error_msgError message if either index is out of range.
idxNested index level to report in error message if either index is out of range.
+
+
+
Returns
Value of matrix at row m - 1 and column n - 1.
+
Template Parameters
+ + +
Ttype of value.
+
+
+ +

Definition at line 310 of file get_base1.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
const T& stan::math::get_base1 (const Eigen::Matrix< T, Eigen::Dynamic, 1 > & x,
size_t m,
const char * error_msg,
size_t idx 
)
+
+inline
+
+ +

Return a reference to the value of the specified column vector at the specified base-one index.

+

If the index is out of range, throw a std::out_of_range exception with the specified error message and index indicated.

+
Parameters
+ + + + + +
xColumn vector from which to get a value.
mRow index plus 1.
error_msgError message if the index is out of range.
idxNested index level to report in error message if the index is out of range.
+
+
+
Returns
Value of column vector at row m - 1.
+
Template Parameters
+ + +
Ttype of value.
+
+
+ +

Definition at line 336 of file get_base1.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
const T& stan::math::get_base1 (const Eigen::Matrix< T, 1, Eigen::Dynamic > & x,
size_t n,
const char * error_msg,
size_t idx 
)
+
+inline
+
+ +

Return a reference to the value of the specified row vector at the specified base-one index.

+

If the index is out of range, throw a std::out_of_range exception with the specified error message and index indicated.

+
Parameters
+ + + + + +
xRow vector from which to get a value.
nColumn index plus 1.
error_msgError message if the index is out of range.
idxNested index level to report in error message if the index is out of range.
+
+
+
Returns
Value of row vector at column n - 1.
+
Template Parameters
+ + +
Ttype of value.
+
+
+ +

Definition at line 360 of file get_base1.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
T& stan::math::get_base1_lhs (std::vector< T > & x,
size_t i,
const char * error_msg,
size_t idx 
)
+
+inline
+
+ +

Return a reference to the value of the specified vector at the specified base-one index.

+

If the index is out of range, throw a std::out_of_range exception with the specified error message and index indicated.

+
Parameters
+ + + + + +
xVector from which to get a value.
iIndex into vector plus 1.
error_msgError message if the index is out of range.
idxNested index level to report in error message if the index is out of range.
+
+
+
Returns
Value of vector at i - 1
+
Template Parameters
+ + +
Ttype of value.
+
+
+ +

Definition at line 27 of file get_base1_lhs.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
T& stan::math::get_base1_lhs (std::vector< std::vector< T > > & x,
size_t i1,
size_t i2,
const char * error_msg,
size_t idx 
)
+
+inline
+
+ +

Return a reference to the value of the specified vector at the specified base-one indexes.

+

If an index is out of range, throw a std::out_of_range exception with the specified error message and index indicated.

+
Parameters
+ + + + + + +
xVector from which to get a value.
i1First index plus 1.
i2Second index plus 1.
error_msgError message if an index is out of range.
idxNested index level to report in error message if the index is out of range.
+
+
+
Returns
Value of vector at indexes.
+
Template Parameters
+ + +
Ttype of value.
+
+
+ +

Definition at line 52 of file get_base1_lhs.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
T& stan::math::get_base1_lhs (std::vector< std::vector< std::vector< T > > > & x,
size_t i1,
size_t i2,
size_t i3,
const char * error_msg,
size_t idx 
)
+
+inline
+
+ +

Return a reference to the value of the specified vector at the specified base-one indexes.

+

If an index is out of range, throw a std::out_of_range exception with the specified error message and index indicated.

+
Parameters
+ + + + + + + +
xVector from which to get a value.
i1First index plus 1.
i2Second index plus 1.
i3Third index plus 1.
error_msgError message if an index is out of range.
idxNested index level to report in error message if the index is out of range.
+
+
+
Returns
Value of vector at indexes.
+
Template Parameters
+ + +
Ttype of value.
+
+
+ +

Definition at line 79 of file get_base1_lhs.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
T& stan::math::get_base1_lhs (std::vector< std::vector< std::vector< std::vector< T > > > > & x,
size_t i1,
size_t i2,
size_t i3,
size_t i4,
const char * error_msg,
size_t idx 
)
+
+inline
+
+ +

Return a reference to the value of the specified vector at the specified base-one indexes.

+

If an index is out of range, throw a std::out_of_range exception with the specified error message and index indicated.

+
Parameters
+ + + + + + + + +
xVector from which to get a value.
i1First index plus 1.
i2Second index plus 1.
i3Third index plus 1.
i4Fourth index plus 1.
error_msgError message if an index is out of range.
idxNested index level to report in error message if the index is out of range.
+
+
+
Returns
Value of vector at indexes.
+
Template Parameters
+ + +
Ttype of value.
+
+
+ +

Definition at line 108 of file get_base1_lhs.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
T& stan::math::get_base1_lhs (std::vector< std::vector< std::vector< std::vector< std::vector< T > > > > > & x,
size_t i1,
size_t i2,
size_t i3,
size_t i4,
size_t i5,
const char * error_msg,
size_t idx 
)
+
+inline
+
+ +

Return a reference to the value of the specified vector at the specified base-one indexes.

+

If an index is out of range, throw a std::out_of_range exception with the specified error message and index indicated.

+
Parameters
+ + + + + + + + + +
xVector from which to get a value.
i1First index plus 1.
i2Second index plus 1.
i3Third index plus 1.
i4Fourth index plus 1.
i5Fifth index plus 1.
error_msgError message if an index is out of range.
idxNested index level to report in error message if the index is out of range.
+
+
+
Returns
Value of vector at indexes.
+
Template Parameters
+ + +
Ttype of value.
+
+
+ +

Definition at line 139 of file get_base1_lhs.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
T& stan::math::get_base1_lhs (std::vector< std::vector< std::vector< std::vector< std::vector< std::vector< T > > > > > > & x,
size_t i1,
size_t i2,
size_t i3,
size_t i4,
size_t i5,
size_t i6,
const char * error_msg,
size_t idx 
)
+
+inline
+
+ +

Return a reference to the value of the specified vector at the specified base-one indexes.

+

If an index is out of range, throw a std::out_of_range exception with the specified error message and index indicated.

+
Parameters
+ + + + + + + + + + +
xVector from which to get a value.
i1First index plus 1.
i2Second index plus 1.
i3Third index plus 1.
i4Fourth index plus 1.
i5Fifth index plus 1.
i6Sixth index plus 1.
error_msgError message if an index is out of range.
idxNested index level to report in error message if the index is out of range.
+
+
+
Returns
Value of vector at indexes.
+
Template Parameters
+ + +
Ttype of value.
+
+
+ +

Definition at line 172 of file get_base1_lhs.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
T& stan::math::get_base1_lhs (std::vector< std::vector< std::vector< std::vector< std::vector< std::vector< std::vector< T > > > > > > > & x,
size_t i1,
size_t i2,
size_t i3,
size_t i4,
size_t i5,
size_t i6,
size_t i7,
const char * error_msg,
size_t idx 
)
+
+inline
+
+ +

Return a reference to the value of the specified vector at the specified base-one indexes.

+

If an index is out of range, throw a std::out_of_range exception with the specified error message and index indicated.

+
Parameters
+ + + + + + + + + + + +
xVector from which to get a value.
i1First index plus 1.
i2Second index plus 1.
i3Third index plus 1.
i4Fourth index plus 1.
i5Fifth index plus 1.
i6Sixth index plus 1.
i7Seventh index plus 1.
error_msgError message if an index is out of range.
idxNested index level to report in error message if the index is out of range.
+
+
+
Returns
Value of vector at indexes.
+
Template Parameters
+ + +
Ttype of value.
+
+
+ +

Definition at line 208 of file get_base1_lhs.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
T& stan::math::get_base1_lhs (std::vector< std::vector< std::vector< std::vector< std::vector< std::vector< std::vector< std::vector< T > > > > > > > > & x,
size_t i1,
size_t i2,
size_t i3,
size_t i4,
size_t i5,
size_t i6,
size_t i7,
size_t i8,
const char * error_msg,
size_t idx 
)
+
+inline
+
+ +

Return a reference to the value of the specified vector at the specified base-one indexes.

+

If an index is out of range, throw a std::out_of_range exception with the specified error message and index indicated.

+
Parameters
+ + + + + + + + + + + + +
xVector from which to get a value.
i1First index plus 1.
i2Second index plus 1.
i3Third index plus 1.
i4Fourth index plus 1.
i5Fifth index plus 1.
i6Sixth index plus 1.
i7Seventh index plus 1.
i8Eigth index plus 1.
error_msgError message if an index is out of range.
idxNested index level to report in error message if the index is out of range.
+
+
+
Returns
Value of vector at indexes.
+
Template Parameters
+ + +
Ttype of value.
+
+
+ +

Definition at line 246 of file get_base1_lhs.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Eigen::Block<Eigen::Matrix<T,Eigen::Dynamic,Eigen::Dynamic> > stan::math::get_base1_lhs (Eigen::Matrix< T, Eigen::Dynamic, Eigen::Dynamic > & x,
size_t m,
const char * error_msg,
size_t idx 
)
+
+inline
+
+ +

Return a copy of the row of the specified vector at the specified base-one row index.

+

If the index is out of range, throw a std::out_of_range exception with the specified error message and index indicated.

+

Warning: Because a copy is involved, it is inefficient to access element of matrices by first using this method to get a row then using a second call to get the value at a specified column.

+
Parameters
+ + + + + +
xMatrix from which to get a row
mIndex into matrix plus 1.
error_msgError message if the index is out of range.
idxNested index level to report in error message if the index is out of range.
+
+
+
Returns
Row of matrix at i - 1.
+
Template Parameters
+ + +
Ttype of value.
+
+
+ +

Definition at line 285 of file get_base1_lhs.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
T& stan::math::get_base1_lhs (Eigen::Matrix< T, Eigen::Dynamic, Eigen::Dynamic > & x,
size_t m,
size_t n,
const char * error_msg,
size_t idx 
)
+
+inline
+
+ +

Return a reference to the value of the specified matrix at the specified base-one row and column indexes.

+

If either index is out of range, throw a std::out_of_range exception with the specified error message and index indicated.

+
Parameters
+ + + + + + +
xMatrix from which to get a row
mRow index plus 1.
nColumn index plus 1.
error_msgError message if either index is out of range.
idxNested index level to report in error message if either index is out of range.
+
+
+
Returns
Value of matrix at row m - 1 and column n - 1.
+
Template Parameters
+ + +
Ttype of value.
+
+
+ +

Definition at line 311 of file get_base1_lhs.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
T& stan::math::get_base1_lhs (Eigen::Matrix< T, Eigen::Dynamic, 1 > & x,
size_t m,
const char * error_msg,
size_t idx 
)
+
+inline
+
+ +

Return a reference to the value of the specified column vector at the specified base-one index.

+

If the index is out of range, throw a std::out_of_range exception with the specified error message and index indicated.

+
Parameters
+ + + + + +
xColumn vector from which to get a value.
mRow index plus 1.
error_msgError message if the index is out of range.
idxNested index level to report in error message if the index is out of range.
+
+
+
Returns
Value of column vector at row m - 1.
+
Template Parameters
+ + +
Ttype of value.
+
+
+ +

Definition at line 337 of file get_base1_lhs.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
T& stan::math::get_base1_lhs (Eigen::Matrix< T, 1, Eigen::Dynamic > & x,
size_t n,
const char * error_msg,
size_t idx 
)
+
+inline
+
+ +

Return a reference to the value of the specified row vector at the specified base-one index.

+

If the index is out of range, throw a std::out_of_range exception with the specified error message and index indicated.

+
Parameters
+ + + + + +
xRow vector from which to get a value.
nColumn index plus 1.
error_msgError message if the index is out of range.
idxNested index level to report in error message if the index is out of range.
+
+
+
Returns
Value of row vector at column n - 1.
+
Template Parameters
+ + +
Ttype of value.
+
+
+ +

Definition at line 362 of file get_base1_lhs.hpp.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
void stan::math::grad2F1 (double & gradA,
double & gradC,
double a,
double b,
double c,
double z,
double precision = 1e-6 
)
+
+ +

Definition at line 102 of file internal_math.hpp.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
void stan::math::gradF32 (double * g,
double a,
double b,
double c,
double d,
double e,
double z,
double precision = 1e-6 
)
+
+ +

Definition at line 50 of file internal_math.hpp.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
void stan::math::gradIncBeta (double & g1,
double & g2,
double a,
double b,
double z 
)
+
+ +

Definition at line 140 of file internal_math.hpp.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
void stan::math::gradRegIncBeta (double & g1,
double & g2,
double a,
double b,
double z,
double digammaA,
double digammaB,
double digammaSum,
double betaAB 
)
+
+ +

Definition at line 161 of file internal_math.hpp.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
double stan::math::gradRegIncGamma (double a,
double z,
double g,
double dig,
double precision = 1e-6 
)
+
+ +

Definition at line 181 of file internal_math.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
Eigen::Matrix<T,Eigen::Dynamic,1> stan::math::head (const Eigen::Matrix< T, Eigen::Dynamic, 1 > & v,
size_t n 
)
+
+inline
+
+ +

Return the specified number of elements as a vector from the front of the specified vector.

+
Template Parameters
+ + +
TType of value in vector
+
+
+
Parameters
+ + + +
vVector input
nSize of return
+
+
+
Returns
The first n elements of v
+ +

Definition at line 25 of file head.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
Eigen::Matrix<T,1,Eigen::Dynamic> stan::math::head (const Eigen::Matrix< T, 1, Eigen::Dynamic > & rv,
size_t n 
)
+
+inline
+
+ +

Return the specified number of elements as a row vector from the front of the specified row vector.

+
Template Parameters
+ + +
TType of value in vector
+
+
+
Parameters
+ + + +
rvRow vector
nSize of return row vector
+
+
+
Returns
The first n elements of rv
+ +

Definition at line 43 of file head.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + + + + + + + + + + + + + + +
std::vector<T> stan::math::head (const std::vector< T > & sv,
size_t n 
)
+
+ +

Return the specified number of elements as a standard vector from the front of the specified standard vector.

+
Template Parameters
+ + +
TType of value in vector
+
+
+
Parameters
+ + + +
svStandard vector
nSize of return
+
+
+
Returns
The first n elements of sv
+ +

Definition at line 59 of file head.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
double stan::math::ibeta (const double a,
const double b,
const double x 
)
+
+inline
+
+ +

The normalized incomplete beta function of a, b, and x.

+

Used to compute the cumulative density function for the beta distribution.

+
Parameters
+ + + + +
aShape parameter.
bShape parameter.
xRandom variate.
+
+
+
Returns
The normalized incomplete beta function.
+ +

Definition at line 21 of file ibeta.hpp.

+ +
+
+ +
+
+
+template<typename T_true , typename T_false >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
boost::math::tools::promote_args<T_true,T_false>::type stan::math::if_else (const bool c,
const T_true y_true,
const T_false y_false 
)
+
+inline
+
+ +

Return the second argument if the first argument is true and otherwise return the second argument.

+

This is just a convenience method to provide a function with the same behavior as the built-in ternary operator. In general, this function behaves as if defined by

+

if_else(c,y1,y0) = c ? y1 : y0.

+
Parameters
+ + + + +
cBoolean condition value.
y_trueValue to return if condition is true.
y_falseValue to return if condition is false.
+
+
+ +

Definition at line 25 of file if_else.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
void stan::math::initialize (T & x,
const T & v 
)
+
+inline
+
+ +

Definition at line 16 of file initialize.hpp.

+ +
+
+ +
+
+
+template<typename T , typename V >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
boost::enable_if_c<boost::is_arithmetic<V>::value, void> stan::math::initialize (T & x,
v 
)
+
+inline
+
+ +

Definition at line 22 of file initialize.hpp.

+ +
+
+ +
+
+
+template<typename T , int R, int C>
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
void stan::math::initialize (Eigen::Matrix< T, R, C > & x,
const T & v 
)
+
+inline
+
+ +

Definition at line 26 of file initialize.hpp.

+ +
+
+ +
+
+
+template<typename T , typename V >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
void stan::math::initialize (std::vector< T > & x,
const V & v 
)
+
+inline
+
+ +

Definition at line 31 of file initialize.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + + + + +
unsigned int stan::math::int_step (const T y)
+
+ +

The integer step, or Heaviside, function.

+
Parameters
+ + +
yValue to test.
+
+
+
Returns
1 if value is greater than 0 and 0 otherwise
+
Template Parameters
+ + +
TScalar argument type.
+
+
+ +

Definition at line 14 of file int_step.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + +
boost::math::tools::promote_args<T>::type stan::math::inv (const T x)
+
+inline
+
+ +

Definition at line 12 of file inv.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + +
boost::math::tools::promote_args<T>::type stan::math::inv_cloglog (x)
+
+inline
+
+ +

The inverse complementary log-log function.

+

The function is defined by

+

inv_cloglog(x) = 1 - exp(-exp(x)).

+

This function can be used to implement the inverse link function for complementary-log-log regression.

+
Parameters
+ + +
xArgument.
+
+
+
Returns
Inverse complementary log-log of the argument.
+ +

Definition at line 24 of file inv_cloglog.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + +
boost::math::tools::promote_args<T>::type stan::math::inv_logit (const T a)
+
+inline
+
+ +

Returns the inverse logit function applied to the argument.

+

The inverse logit function is defined by

+

$\mbox{logit}^{-1}(x) = \frac{1}{1 + \exp(-x)}$.

+

This function can be used to implement the inverse link function for logistic regression.

+

The inverse to this function is stan::math::logit.

+
Parameters
+ + +
aArgument.
+
+
+
Returns
Inverse logit of argument.
+ +

Definition at line 27 of file inv_logit.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + +
boost::math::tools::promote_args<T>::type stan::math::inv_sqrt (const T x)
+
+inline
+
+ +

Definition at line 12 of file inv_sqrt.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + +
boost::math::tools::promote_args<T>::type stan::math::inv_square (const T x)
+
+inline
+
+ +

Definition at line 12 of file inv_square.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + +
Eigen::Matrix<T,Eigen::Dynamic,Eigen::Dynamic> stan::math::inverse (const Eigen::Matrix< T, Eigen::Dynamic, Eigen::Dynamic > & m)
+
+inline
+
+ +

Returns the inverse of the specified matrix.

+
Parameters
+ + +
mSpecified matrix.
+
+
+
Returns
Inverse of the matrix.
+ +

Definition at line 18 of file inverse.hpp.

+ +
+
+ +
+
+
+template<typename Vector >
+ + + + + + + + + + + + + + + + + + +
void stan::math::inverse_softmax (const Vector & simplex,
Vector & y 
)
+
+ +

Writes the inverse softmax of the simplex argument into the second argument.

+

See stan::math::softmax for the inverse function and a definition of the relation.

+

The inverse softmax function is defined by

+

$\mbox{inverse\_softmax}(x)[i] = \log x[i]$.

+

This function defines the inverse of stan::math::softmax up to a scaling factor.

+

Because of the definition, values of 0.0 in the simplex are converted to negative infinity, and values of 1.0 are converted to 0.0.

+

There is no check that the input vector is a valid simplex vector.

+
Parameters
+ + + +
simplexSimplex vector input.
yVector into which the inverse softmax is written.
+
+
+
Exceptions
+ + +
std::invalid_argumentif size of the input and output vectors differ.
+
+
+ +

Definition at line 34 of file inverse_softmax.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + +
Eigen::Matrix<T,Eigen::Dynamic,Eigen::Dynamic> stan::math::inverse_spd (const Eigen::Matrix< T, Eigen::Dynamic, Eigen::Dynamic > & m)
+
+inline
+
+ +

Returns the inverse of the specified symmetric, pos/neg-definite matrix.

+
Parameters
+ + +
mSpecified matrix.
+
+
+
Returns
Inverse of the matrix.
+ +

Definition at line 19 of file inverse_spd.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + +
bool stan::math::is_uninitialized (x)
+
+inline
+
+ +

Returns true if the specified variable is uninitialized.

+

Arithmetic types are always initialized by definition (the value is not specified).

+
Template Parameters
+ + +
TType of object to test.
+
+
+
Parameters
+ + +
xObject to test.
+
+
+
Returns
true if the specified object is uninitialized.
+ +

Definition at line 18 of file is_uninitialized.hpp.

+ +
+
+ +
+
+
+template<typename T1 , typename T2 >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
boost::math::tools::promote_args<T1,T2>::type stan::math::lbeta (const T1 a,
const T2 b 
)
+
+inline
+
+ +

Return the log of the beta function applied to the specified arguments.

+

The beta function is defined for $a > 0$ and $b > 0$ by

+

$\mbox{B}(a,b) = \frac{\Gamma(a) \Gamma(b)}{\Gamma(a+b)}$.

+

This function returns its log,

+

$\log \mbox{B}(a,b) = \log \Gamma(a) + \log \Gamma(b) - \log \Gamma(a+b)$.

+

See boost::math::lgamma() for the double-based and stan::agrad for the variable-based log Gamma function.

+
Parameters
+ + + +
aFirst value
bSecond value
+
+
+
Returns
Log of the beta function applied to the two values.
+
Template Parameters
+ + + +
T1Type of first value.
T2Type of second value.
+
+
+ +

Definition at line 34 of file lbeta.hpp.

+ +
+
+ +
+
+ + + + + + + + +
double stan::math::lgamma (double x)
+
+ +

Definition at line 11 of file lgamma.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
boost::math::tools::promote_args<T>::type stan::math::lmgamma (const int k,
x 
)
+
+inline
+
+ +

Return the natural logarithm of the multivariate gamma function with the speciifed dimensions and argument.

+

The multivariate gamma function $\Gamma_k(x)$ for dimensionality $k$ and argument $x$ is defined by

+

$\Gamma_k(x) = \pi^{k(k-1)/4} \, \prod_{j=1}^k \Gamma(x + (1 - j)/2)$,

+

where $\Gamma()$ is the gamma function.

+
Parameters
+ + + +
kNumber of dimensions.
xFunction argument.
+
+
+
Returns
Natural log of the multivariate gamma function.
+
Template Parameters
+ + +
TType of scalar.
+
+
+ +

Definition at line 30 of file lmgamma.hpp.

+ +
+
+ +
+
+
+template<typename T , int Rows, int Cols>
+ + + + + +
+ + + + + + + + +
Eigen::Matrix<T,Rows,Cols> stan::math::log (const Eigen::Matrix< T, Rows, Cols > & m)
+
+inline
+
+ +

Return the element-wise logarithm of the matrix or vector.

+
Parameters
+ + +
mThe matrix or vector.
+
+
+
Returns
ret(i,j) = log(m(i,j))
+ +

Definition at line 16 of file log.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
double stan::math::log10 ()
+
+inline
+
+ +

Return natural logarithm of ten.

+
Returns
Natural logarithm of ten.
+ +

Definition at line 105 of file constants.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + +
boost::math::tools::promote_args<T>::type stan::math::log1m (x)
+
+inline
+
+ +

Return the natural logarithm of one minus the specified value.

+

The main use of this function is to cut down on intermediate values during algorithmic differentiation.

+
Parameters
+ + +
xSpecified value.
+
+
+
Returns
Natural log of one minus x.
+ +

Definition at line 21 of file log1m.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + +
boost::math::tools::promote_args<T>::type stan::math::log1m_exp (const T a)
+
+inline
+
+ +

Calculates the log of 1 minus the exponential of the specified value without overflow log1m_exp(x) = log(1-exp(x)).

+

This function is only defined for x<0

+ +

Definition at line 22 of file log1m_exp.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + +
boost::math::tools::promote_args<T>::type stan::math::log1m_inv_logit (const T u)
+
+inline
+
+ +

Returns the natural logarithm of 1 minus the inverse logit of the specified argument.

+
Template Parameters
+ + +
TScalar type
+
+
+
Parameters
+ + +
uInput.
+
+
+
Returns
log of 1 minus the inverse logit of the input.
+ +

Definition at line 19 of file log1m_inv_logit.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + +
boost::math::tools::promote_args<T>::type stan::math::log1p (const T x)
+
+inline
+
+ +

Return the natural logarithm of one plus the specified value.

+

The main use of this function is to cut down on intermediate values during algorithmic differentiation.

+
Parameters
+ + +
xSpecified value.
+
+
+
Returns
Natural log of one plus x.
+ +

Definition at line 21 of file log1p.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + +
boost::math::tools::promote_args<T>::type stan::math::log1p_exp (const T a)
+
+inline
+
+ +

Calculates the log of 1 plus the exponential of the specified value without overflow.

+

This function is related to other special functions by:

+

log1p_exp(x)

+

= log1p(exp(a))

+

= log(1 + exp(x))

+

= log_sum_exp(0,x).

+ +

Definition at line 26 of file log1p_exp.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + +
boost::math::tools::promote_args<T>::type stan::math::log2 (const T a)
+
+inline
+
+ +

Returns the base 2 logarithm of the argument (C99).

+

The function is defined by:

+

log2(a) = log(a) / std::log(2.0).

+
Template Parameters
+ + +
Ttype of scalar
+
+
+
Parameters
+ + +
aValue.
+
+
+
Returns
Base 2 logarithm of the value.
+ +

Definition at line 25 of file log2.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
double stan::math::log2 ()
+
+inline
+
+ +

Return natural logarithm of two.

+
Returns
Natural logarithm of two.
+ +

Definition at line 35 of file log2.hpp.

+ +
+
+ +
+
+
+template<typename T , int R, int C>
+ + + + + +
+ + + + + + + + +
T stan::math::log_determinant (const Eigen::Matrix< T, R, C > & m)
+
+inline
+
+ +

Returns the log absolute determinant of the specified square matrix.

+
Parameters
+ + +
mSpecified matrix.
+
+
+
Returns
log absolute determinant of the matrix.
+
Exceptions
+ + +
std::domain_errorif matrix is not square.
+
+
+ +

Definition at line 18 of file log_determinant.hpp.

+ +
+
+ +
+
+
+template<int R, int C>
+ + + + + +
+ + + + + + + + +
double stan::math::log_determinant_ldlt (stan::math::LDLT_factor< double, R, C > & A)
+
+inline
+
+ +

Definition at line 12 of file log_determinant_ldlt.hpp.

+ +
+
+ +
+
+
+template<typename T , int R, int C>
+ + + + + +
+ + + + + + + + +
T stan::math::log_determinant_spd (const Eigen::Matrix< T, R, C > & m)
+
+inline
+
+ +

Returns the log absolute determinant of the specified square matrix.

+
Parameters
+ + +
mSpecified matrix.
+
+
+
Returns
log absolute determinant of the matrix.
+
Exceptions
+ + +
std::domain_errorif matrix is not square.
+
+
+ +

Definition at line 20 of file log_determinant_spd.hpp.

+ +
+
+ +
+
+
+template<typename T1 , typename T2 >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
boost::math::tools::promote_args<T1,T2>::type stan::math::log_diff_exp (const T1 x,
const T2 y 
)
+
+inline
+
+ +

The natural logarithm of the difference of the natural exponentiation of x1 and the natural exponentiation of x2.

+

This function is only defined for x<0

+ +

Definition at line 21 of file log_diff_exp.hpp.

+ +
+
+ +
+
+
+template<typename T1 , typename T2 >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
boost::math::tools::promote_args<T1,T2>::type stan::math::log_falling_factorial (const T1 x,
const T2 n 
)
+
+inline
+
+ +

Definition at line 11 of file log_falling_factorial.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + +
boost::math::tools::promote_args<T>::type stan::math::log_inv_logit (const T & u)
+
+inline
+
+ +

Returns the natural logarithm of the inverse logit of the specified argument.

+
Template Parameters
+ + +
TScalar type
+
+
+
Parameters
+ + +
uInput.
+
+
+
Returns
log of the inverse logit of the input.
+ +

Definition at line 19 of file log_inv_logit.hpp.

+ +
+
+ +
+
+
+template<typename T1 , typename T2 >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
boost::math::tools::promote_args<T1,T2>::type stan::math::log_rising_factorial (const T1 x,
const T2 n 
)
+
+inline
+
+ +

Definition at line 11 of file log_rising_factorial.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + +
Eigen::Matrix<T,Eigen::Dynamic,1> stan::math::log_softmax (const Eigen::Matrix< T, Eigen::Dynamic, 1 > & v)
+
+inline
+
+ +

Return the natural logarithm of the softmax of the specified vector.

+
Template Parameters
+ + +
TScalar type of values in vector.
+
+
+
Parameters
+ + +
[in]vVector to transform.
+
+
+
Returns
Unit simplex result of the softmax transform of the vector.
+ +

Definition at line 23 of file log_softmax.hpp.

+ +
+
+ +
+
+
+template<typename T1 , typename T2 >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
boost::math::tools::promote_args<T1,T2>::type stan::math::log_sum_exp (const T2 & a,
const T1 & b 
)
+
+inline
+
+ +

Calculates the log sum of exponetials without overflow.

+

$\log (\exp(a) + \exp(b)) = m + \log(\exp(a-m) + \exp(b-m))$,

+

where $m = max(a,b)$.

+
Parameters
+ + + +
athe first variable
bthe second variable
+
+
+ +

Definition at line 24 of file log_sum_exp.hpp.

+ +
+
+ +
+
+
+template<typename T , int R, int C>
+ + + + + + + + +
T stan::math::log_sum_exp (const Eigen::Matrix< T, R, C > & x)
+
+ +

Return the log of the sum of the exponentiated values of the specified matrix of values.

+

The matrix may be a full matrix, a vector, or a row vector.

+

The function is defined as follows to prevent overflow in exponential calculations.

+

$\log \sum_{n=1}^N \exp(x_n) = \max(x) + \log \sum_{n=1}^N \exp(x_n - \max(x))$.

+
Parameters
+ + +
[in]xMatrix of specified values
+
+
+
Returns
The log of the sum of the exponentiated vector values.
+ +

Definition at line 29 of file log_sum_exp.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + + + + +
T stan::math::log_sum_exp (const std::vector< T > & x)
+
+ +

Return the log of the sum of the exponentiated values of the specified sequence of values.

+

The function is defined as follows to prevent overflow in exponential calculations.

+

$\log \sum_{n=1}^N \exp(x_n) = \max(x) + \log \sum_{n=1}^N \exp(x_n - \max(x))$.

+
Parameters
+ + +
[in]xarray of specified values
+
+
+
Returns
The log of the sum of the exponentiated vector values.
+ +

Definition at line 44 of file log_sum_exp.hpp.

+ +
+
+ +
+
+
+template<typename T1 , typename T2 >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
int stan::math::logical_and (const T1 x1,
const T2 x2 
)
+
+inline
+
+ +

The logical and function which returns 1 if both arguments are unequal to zero and 0 otherwise.

+

Equivalent to x1 != 0 && x2 != 0.

+
Template Parameters
+ + + +
T1Type of first argument.
T2Type of second argument.
+
+
+
Parameters
+ + + +
x1First argument
x2Second argument
+
+
+
Returns
true if both x1 and x2 are not equal to 0.
+ +

Definition at line 21 of file logical_and.hpp.

+ +
+
+ +
+
+
+template<typename T1 , typename T2 >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
int stan::math::logical_eq (const T1 x1,
const T2 x2 
)
+
+inline
+
+ +

Return 1 if the first argument is equal to the second.

+

Equivalent to x1 == x2.

+
Template Parameters
+ + + +
T1Type of first argument.
T2Type of second argument.
+
+
+
Parameters
+ + + +
x1First argument
x2Second argument
+
+
+
Returns
true iff x1 == x2
+ +

Definition at line 19 of file logical_eq.hpp.

+ +
+
+ +
+
+
+template<typename T1 , typename T2 >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
int stan::math::logical_gt (const T1 x1,
const T2 x2 
)
+
+inline
+
+ +

Return 1 if the first argument is strictly greater than the second.

+

Equivalent to x1 < x2.

+
Template Parameters
+ + + +
T1Type of first argument.
T2Type of second argument.
+
+
+
Parameters
+ + + +
x1First argument
x2Second argument
+
+
+
Returns
true iff x1 > x2
+ +

Definition at line 19 of file logical_gt.hpp.

+ +
+
+ +
+
+
+template<typename T1 , typename T2 >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
int stan::math::logical_gte (const T1 x1,
const T2 x2 
)
+
+inline
+
+ +

Return 1 if the first argument is greater than or equal to the second.

+

Equivalent to x1 >= x2.

+
Template Parameters
+ + + +
T1Type of first argument.
T2Type of second argument.
+
+
+
Parameters
+ + + +
x1First argument
x2Second argument
+
+
+
Returns
true iff x1 >= x2
+ +

Definition at line 19 of file logical_gte.hpp.

+ +
+
+ +
+
+
+template<typename T1 , typename T2 >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
int stan::math::logical_lt (T1 x1,
T2 x2 
)
+
+inline
+
+ +

Return 1 if the first argument is strictly less than the second.

+

Equivalent to x1 < x2.

+
Template Parameters
+ + + +
T1Type of first argument.
T2Type of second argument.
+
+
+
Parameters
+ + + +
x1First argument
x2Second argument
+
+
+
Returns
true iff x1 < x2
+ +

Definition at line 20 of file logical_lt.hpp.

+ +
+
+ +
+
+
+template<typename T1 , typename T2 >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
int stan::math::logical_lte (const T1 x1,
const T2 x2 
)
+
+inline
+
+ +

Return 1 if the first argument is less than or equal to the second.

+

Equivalent to x1 <= x2.

+
Template Parameters
+ + + +
T1Type of first argument.
T2Type of second argument.
+
+
+
Parameters
+ + + +
x1First argument
x2Second argument
+
+
+
Returns
true iff x1 <= x2
+ +

Definition at line 19 of file logical_lte.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + +
int stan::math::logical_negation (const T x)
+
+inline
+
+ +

The logical negation function which returns 1 if the input is equal to zero and 0 otherwise.

+
Template Parameters
+ + +
TType to compare to zero.
+
+
+
Parameters
+ + +
xValue to compare to zero.
+
+
+
Returns
1 if input is equal to zero.
+ +

Definition at line 17 of file logical_negation.hpp.

+ +
+
+ +
+
+
+template<typename T1 , typename T2 >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
int stan::math::logical_neq (const T1 x1,
const T2 x2 
)
+
+inline
+
+ +

Return 1 if the first argument is unequal to the second.

+

Equivalent to x1 != x2.

+
Template Parameters
+ + + +
T1Type of first argument.
T2Type of second argument.
+
+
+
Parameters
+ + + +
x1First argument
x2Second argument
+
+
+
Returns
true iff x1 != x2
+ +

Definition at line 19 of file logical_neq.hpp.

+ +
+
+ +
+
+
+template<typename T1 , typename T2 >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
int stan::math::logical_or (T1 x1,
T2 x2 
)
+
+inline
+
+ +

The logical or function which returns 1 if either argument is unequal to zero and 0 otherwise.

+

Equivalent to x1 != 0 || x2 != 0.

+
Template Parameters
+ + + +
T1Type of first argument.
T2Type of second argument.
+
+
+
Parameters
+ + + +
x1First argument
x2Second argument
+
+
+
Returns
true if either x1 or x2 is not equal to 0.
+ +

Definition at line 20 of file logical_or.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + +
boost::math::tools::promote_args<T>::type stan::math::logit (const T a)
+
+inline
+
+ +

Returns the logit function applied to the argument.

+

The logit function is defined as for $x \in [0,1]$ by returning the log odds of $x$ treated as a probability,

+

$\mbox{logit}(x) = \log \left( \frac{x}{1 - x} \right)$.

+

The inverse to this function is stan::math::inv_logit.

+
Parameters
+ + +
aArgument.
+
+
+
Returns
Logit of the argument.
+ +

Definition at line 25 of file logit.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
double stan::math::machine_precision ()
+
+inline
+
+ +

Returns the difference between 1.0 and the next value representable.

+
Returns
Minimum positive number.
+ +

Definition at line 142 of file constants.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
double stan::math::max (const double a,
const double b 
)
+
+inline
+
+ +

Definition at line 7 of file max.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
int stan::math::max (const std::vector< int > & x)
+
+inline
+
+ +

Returns the maximum coefficient in the specified column vector.

+
Parameters
+ + +
xSpecified vector.
+
+
+
Returns
Maximum coefficient value in the vector.
+
Template Parameters
+ + +
Typeof values being compared and returned
+
+
+
Exceptions
+ + +
std::domain_errorIf the size of the vector is zero.
+
+
+ +

Definition at line 19 of file max.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + +
T stan::math::max (const std::vector< T > & x)
+
+inline
+
+ +

Returns the maximum coefficient in the specified column vector.

+
Parameters
+ + +
xSpecified vector.
+
+
+
Returns
Maximum coefficient value in the vector.
+
Template Parameters
+ + +
TType of values being compared and returned
+
+
+ +

Definition at line 37 of file max.hpp.

+ +
+
+ +
+
+
+template<typename T , int R, int C>
+ + + + + +
+ + + + + + + + +
T stan::math::max (const Eigen::Matrix< T, R, C > & m)
+
+inline
+
+ +

Returns the maximum coefficient in the specified vector, row vector, or matrix.

+
Parameters
+ + +
mSpecified vector, row vector, or matrix.
+
+
+
Returns
Maximum coefficient value in the vector.
+ +

Definition at line 54 of file max.hpp.

+ +
+
+ +
+
+
+template<typename T1 , typename T2 , int R1, int C1, int R2, int C2>
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
Eigen::Matrix<typename boost::math::tools::promote_args<T1,T2>::type,R1,C2> stan::math::mdivide_left (const Eigen::Matrix< T1, R1, C1 > & A,
const Eigen::Matrix< T2, R2, C2 > & b 
)
+
+inline
+
+ +

Returns the solution of the system Ax=b.

+
Parameters
+ + + +
AMatrix.
bRight hand side matrix or vector.
+
+
+
Returns
x = A^-1 b, solution of the linear system.
+
Exceptions
+ + +
std::domain_errorif A is not square or the rows of b don't match the size of A.
+
+
+ +

Definition at line 24 of file mdivide_left.hpp.

+ +
+
+ +
+
+
+template<int R1, int C1, int R2, int C2>
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
Eigen::Matrix<double,R1,C2> stan::math::mdivide_left_ldlt (const stan::math::LDLT_factor< double, R1, C1 > & A,
const Eigen::Matrix< double, R2, C2 > & b 
)
+
+inline
+
+ +

Returns the solution of the system Ax=b given an LDLT_factor of A.

+
Parameters
+ + + +
ALDLT_factor
bRight hand side matrix or vector.
+
+
+
Returns
x = b A^-1, solution of the linear system.
+
Exceptions
+ + +
std::domain_errorif rows of b don't match the size of A.
+
+
+ +

Definition at line 21 of file mdivide_left_ldlt.hpp.

+ +
+
+ +
+
+
+template<typename T1 , typename T2 , int R1, int C1, int R2, int C2>
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
Eigen::Matrix<typename boost::math::tools::promote_args<T1,T2>::type,R1,C2> stan::math::mdivide_left_spd (const Eigen::Matrix< T1, R1, C1 > & A,
const Eigen::Matrix< T2, R2, C2 > & b 
)
+
+inline
+
+ +

Returns the solution of the system Ax=b where A is symmetric positive definite.

+
Parameters
+ + + +
AMatrix.
bRight hand side matrix or vector.
+
+
+
Returns
x = A^-1 b, solution of the linear system.
+
Exceptions
+ + +
std::domain_errorif A is not square or the rows of b don't match the size of A.
+
+
+ +

Definition at line 25 of file mdivide_left_spd.hpp.

+ +
+
+ +
+
+
+template<int TriView, typename T1 , typename T2 , int R1, int C1, int R2, int C2>
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
Eigen::Matrix<typename boost::math::tools::promote_args<T1,T2>::type, R1,C2> stan::math::mdivide_left_tri (const Eigen::Matrix< T1, R1, C1 > & A,
const Eigen::Matrix< T2, R2, C2 > & b 
)
+
+inline
+
+ +

Returns the solution of the system Ax=b when A is triangular.

+
Parameters
+ + + +
ATriangular matrix. Specify upper or lower with TriView being Eigen::Upper or Eigen::Lower.
bRight hand side matrix or vector.
+
+
+
Returns
x = A^-1 b, solution of the linear system.
+
Exceptions
+ + +
std::domain_errorif A is not square or the rows of b don't match the size of A.
+
+
+ +

Definition at line 27 of file mdivide_left_tri.hpp.

+ +
+
+ +
+
+
+template<int TriView, typename T , int R1, int C1>
+ + + + + +
+ + + + + + + + +
Eigen::Matrix<T,R1,C1> stan::math::mdivide_left_tri (const Eigen::Matrix< T, R1, C1 > & A)
+
+inline
+
+ +

Returns the solution of the system Ax=b when A is triangular and b=I.

+
Parameters
+ + +
ATriangular matrix. Specify upper or lower with TriView being Eigen::Upper or Eigen::Lower.
+
+
+
Returns
x = A^-1 .
+
Exceptions
+ + +
std::domain_errorif A is not square
+
+
+ +

Definition at line 47 of file mdivide_left_tri.hpp.

+ +
+
+ +
+
+
+template<typename T1 , typename T2 , int R1, int C1, int R2, int C2>
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
Eigen::Matrix<typename boost::math::tools::promote_args<T1,T2>::type, R1,C2> stan::math::mdivide_left_tri_low (const Eigen::Matrix< T1, R1, C1 > & A,
const Eigen::Matrix< T2, R2, C2 > & b 
)
+
+inline
+
+ +

Definition at line 15 of file mdivide_left_tri_low.hpp.

+ +
+
+ +
+
+
+template<typename T , int R1, int C1>
+ + + + + +
+ + + + + + + + +
Eigen::Matrix<T,R1,C1> stan::math::mdivide_left_tri_low (const Eigen::Matrix< T, R1, C1 > & A)
+
+inline
+
+ +

Definition at line 29 of file mdivide_left_tri_low.hpp.

+ +
+
+ +
+
+
+template<typename T1 , typename T2 , int R1, int C1, int R2, int C2>
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
Eigen::Matrix<typename boost::math::tools::promote_args<T1,T2>::type,R1,C2> stan::math::mdivide_right (const Eigen::Matrix< T1, R1, C1 > & b,
const Eigen::Matrix< T2, R2, C2 > & A 
)
+
+inline
+
+ +

Returns the solution of the system Ax=b.

+
Parameters
+ + + +
AMatrix.
bRight hand side matrix or vector.
+
+
+
Returns
x = b A^-1, solution of the linear system.
+
Exceptions
+ + +
std::domain_errorif A is not square or the rows of b don't match the size of A.
+
+
+ +

Definition at line 25 of file mdivide_right.hpp.

+ +
+
+ +
+
+
+template<typename T1 , typename T2 , int R1, int C1, int R2, int C2>
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
Eigen::Matrix<typename boost::math::tools::promote_args<T1,T2>::type,R1,C2> stan::math::mdivide_right_ldlt (const Eigen::Matrix< T1, R1, C1 > & b,
const stan::math::LDLT_factor< T2, R2, C2 > & A 
)
+
+inline
+
+ +

Returns the solution of the system xA=b given an LDLT_factor of A.

+
Parameters
+ + + +
ALDLT_factor
bRight hand side matrix or vector.
+
+
+
Returns
x = A^-1 b, solution of the linear system.
+
Exceptions
+ + +
std::domain_errorif rows of b don't match the size of A.
+
+
+ +

Definition at line 25 of file mdivide_right_ldlt.hpp.

+ +
+
+ +
+
+
+template<int R1, int C1, int R2, int C2>
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
Eigen::Matrix<double,R1,C2> stan::math::mdivide_right_ldlt (const Eigen::Matrix< double, R1, C1 > & b,
const stan::math::LDLT_factor< double, R2, C2 > & A 
)
+
+inline
+
+ +

Definition at line 35 of file mdivide_right_ldlt.hpp.

+ +
+
+ +
+
+
+template<typename T1 , typename T2 , int R1, int C1, int R2, int C2>
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
Eigen::Matrix<typename boost::math::tools::promote_args<T1,T2>::type,R1,C2> stan::math::mdivide_right_spd (const Eigen::Matrix< T1, R1, C1 > & b,
const Eigen::Matrix< T2, R2, C2 > & A 
)
+
+inline
+
+ +

Returns the solution of the system Ax=b where A is symmetric positive definite.

+
Parameters
+ + + +
AMatrix.
bRight hand side matrix or vector.
+
+
+
Returns
x = b A^-1, solution of the linear system.
+
Exceptions
+ + +
std::domain_errorif A is not square or the rows of b don't match the size of A.
+
+
+ +

Definition at line 26 of file mdivide_right_spd.hpp.

+ +
+
+ +
+
+
+template<int TriView, typename T1 , typename T2 , int R1, int C1, int R2, int C2>
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
Eigen::Matrix<typename boost::math::tools::promote_args<T1,T2>::type,R1,C2> stan::math::mdivide_right_tri (const Eigen::Matrix< T1, R1, C1 > & b,
const Eigen::Matrix< T2, R2, C2 > & A 
)
+
+inline
+
+ +

Returns the solution of the system Ax=b when A is triangular.

+
Parameters
+ + + +
ATriangular matrix. Specify upper or lower with TriView being Eigen::Upper or Eigen::Lower.
bRight hand side matrix or vector.
+
+
+
Returns
x = b A^-1, solution of the linear system.
+
Exceptions
+ + +
std::domain_errorif A is not square or the rows of b don't match the size of A.
+
+
+ +

Definition at line 28 of file mdivide_right_tri.hpp.

+ +
+
+ +
+
+
+template<typename T1 , typename T2 , int R1, int C1, int R2, int C2>
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
Eigen::Matrix<typename boost::math::tools::promote_args<T1,T2>::type,R1,C2> stan::math::mdivide_right_tri_low (const Eigen::Matrix< T1, R1, C1 > & b,
const Eigen::Matrix< T2, R2, C2 > & A 
)
+
+inline
+
+ +

Returns the solution of the system tri(A)x=b when tri(A) is a lower triangular view of the matrix A.

+
Parameters
+ + + +
AMatrix.
bRight hand side matrix or vector.
+
+
+
Returns
x = b * tri(A)^-1, solution of the linear system.
+
Exceptions
+ + +
std::domain_errorif A is not square or the rows of b don't match the size of A.
+
+
+ +

Definition at line 24 of file mdivide_right_tri_low.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + +
boost::math::tools::promote_args<T>::type stan::math::mean (const std::vector< T > & v)
+
+inline
+
+ +

Returns the sample mean (i.e., average) of the coefficients in the specified standard vector.

+
Parameters
+ + +
vSpecified vector.
+
+
+
Returns
Sample mean of vector coefficients.
+
Exceptions
+ + +
std::domain_errorif the size of the vector is less than 1.
+
+
+ +

Definition at line 23 of file mean.hpp.

+ +
+
+ +
+
+
+template<typename T , int R, int C>
+ + + + + +
+ + + + + + + + +
boost::math::tools::promote_args<T>::type stan::math::mean (const Eigen::Matrix< T, R, C > & m)
+
+inline
+
+ +

Returns the sample mean (i.e., average) of the coefficients in the specified vector, row vector, or matrix.

+
Parameters
+ + +
mSpecified vector, row vector, or matrix.
+
+
+
Returns
Sample mean of vector coefficients.
+ +

Definition at line 40 of file mean.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
double stan::math::min (const double a,
const double b 
)
+
+inline
+
+ +

Definition at line 7 of file min.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
int stan::math::min (const std::vector< int > & x)
+
+inline
+
+ +

Returns the minimum coefficient in the specified column vector.

+
Parameters
+ + +
xSpecified vector.
+
+
+
Returns
Minimum coefficient value in the vector.
+
Template Parameters
+ + +
Typeof values being compared and returned
+
+
+ +

Definition at line 18 of file min.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + +
T stan::math::min (const std::vector< T > & x)
+
+inline
+
+ +

Returns the minimum coefficient in the specified column vector.

+
Parameters
+ + +
xSpecified vector.
+
+
+
Returns
Minimum coefficient value in the vector.
+
Template Parameters
+ + +
Typeof values being compared and returned
+
+
+ +

Definition at line 36 of file min.hpp.

+ +
+
+ +
+
+
+template<typename T , int R, int C>
+ + + + + +
+ + + + + + + + +
T stan::math::min (const Eigen::Matrix< T, R, C > & m)
+
+inline
+
+ +

Returns the minimum coefficient in the specified matrix, vector, or row vector.

+
Parameters
+ + +
mSpecified matrix, vector, or row vector.
+
+
+
Returns
Minimum coefficient value in the vector.
+ +

Definition at line 53 of file min.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + +
T stan::math::minus (const T & x)
+
+inline
+
+ +

Returns the negation of the specified scalar or matrix.

+
Template Parameters
+ + +
TType of subtrahend.
+
+
+
Parameters
+ + +
xSubtrahend.
+
+
+
Returns
Negation of subtrahend.
+ +

Definition at line 16 of file minus.hpp.

+ +
+
+ +
+
+
+template<typename T2 >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
T2 stan::math::modified_bessel_first_kind (const int v,
const T2 z 
)
+
+inline
+
+ +

Definition at line 11 of file modified_bessel_first_kind.hpp.

+ +
+
+ +
+
+
+template<typename T2 >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
T2 stan::math::modified_bessel_second_kind (const int v,
const T2 z 
)
+
+inline
+
+ +

Definition at line 11 of file modified_bessel_second_kind.hpp.

+ +
+
+ +
+
+
+template<int R, int C, typename T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
boost::enable_if_c<boost::is_arithmetic<T>::value, Eigen::Matrix<double, R, C> >::type stan::math::multiply (const Eigen::Matrix< double, R, C > & m,
c 
)
+
+inline
+
+ +

Return specified matrix multiplied by specified scalar.

+
Template Parameters
+ + + +
RRow type for matrix.
CColumn type for matrix.
+
+
+
Parameters
+ + + +
mMatrix.
cScalar.
+
+
+
Returns
Product of matrix and scalar.
+ +

Definition at line 25 of file multiply.hpp.

+ +
+
+ +
+
+
+template<int R, int C, typename T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
boost::enable_if_c<boost::is_arithmetic<T>::value, Eigen::Matrix<double, R, C> >::type stan::math::multiply (c,
const Eigen::Matrix< double, R, C > & m 
)
+
+inline
+
+ +

Return specified scalar multiplied by specified matrix.

+
Template Parameters
+ + + +
RRow type for matrix.
CColumn type for matrix.
+
+
+
Parameters
+ + + +
cScalar.
mMatrix.
+
+
+
Returns
Product of scalar and matrix.
+ +

Definition at line 45 of file multiply.hpp.

+ +
+
+ +
+
+
+template<int R1, int C1, int R2, int C2>
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
Eigen::Matrix<double,R1,C2> stan::math::multiply (const Eigen::Matrix< double, R1, C1 > & m1,
const Eigen::Matrix< double, R2, C2 > & m2 
)
+
+inline
+
+ +

Return the product of the specified matrices.

+

The number of columns in the first matrix must be the same as the number of rows in the second matrix.

+
Parameters
+ + + +
m1First matrix.
m2Second matrix.
+
+
+
Returns
The product of the first and second matrices.
+
Exceptions
+ + +
std::domain_errorif the number of columns of m1 does not match the number of rows of m2.
+
+
+ +

Definition at line 61 of file multiply.hpp.

+ +
+
+ +
+
+
+template<int C1, int R2>
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
double stan::math::multiply (const Eigen::Matrix< double, 1, C1 > & rv,
const Eigen::Matrix< double, R2, 1 > & v 
)
+
+inline
+
+ +

Return the scalar product of the specified row vector and specified column vector.

+

The return is the same as the dot product. The two vectors must be the same size.

+
Parameters
+ + + +
rvRow vector.
vColumn vector.
+
+
+
Returns
Scalar result of multiplying row vector by column vector.
+
Exceptions
+ + +
std::domain_errorif rv and v are not the same size.
+
+
+ +

Definition at line 78 of file multiply.hpp.

+ +
+
+ +
+
+
+template<typename T_a , typename T_b >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
boost::math::tools::promote_args<T_a,T_b>::type stan::math::multiply_log (const T_a a,
const T_b b 
)
+
+inline
+
+ +

Calculated the value of the first argument times log of the second argument while behaving properly with 0 inputs.

+

$ a * \log b $.

+
Parameters
+ + + +
athe first variable
bthe second variable
+
+
+
Returns
a * log(b)
+ +

Definition at line 23 of file multiply_log.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
matrix_d stan::math::multiply_lower_tri_self_transpose (const matrix_d & L)
+
+inline
+
+ +

Returns the result of multiplying the lower triangular portion of the input matrix by its own transpose.

+
Parameters
+ + +
LMatrix to multiply.
+
+
+
Returns
The lower triangular values in L times their own transpose.
+
Exceptions
+ + +
std::domain_errorIf the input matrix is not square.
+
+
+ +

Definition at line 18 of file multiply_lower_tri_self_transpose.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
double stan::math::negative_infinity ()
+
+inline
+
+ +

Return negative infinity.

+
Returns
Negative infinity.
+ +

Definition at line 123 of file constants.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
double stan::math::not_a_number ()
+
+inline
+
+ +

Return (quiet) not-a-number.

+
Returns
Quiet not-a-number.
+ +

Definition at line 132 of file constants.hpp.

+ +
+
+ +
+
+
+template<typename T1 , typename T2 >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
boost::math::tools::promote_args<T1,T2>::type stan::math::owens_t (const T1 & h,
const T2 & a 
)
+
+inline
+
+ +

The Owen's T function of h and a.

+

Used to compute the cumulative density function for the skew normal distribution.

+
Template Parameters
+ + + +
T1Type of first argument.
T2Type of second argument.
+
+
+
Parameters
+ + + +
hFirst argument
aSecond argument
+
+
+
Returns
The Owen's T function.
+ +

Definition at line 25 of file owens_t.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + +
boost::math::tools::promote_args<T>::type stan::math::Phi (const T x)
+
+inline
+
+ +

The unit normal cumulative distribution function.

+

The return value for a specified input is the probability that a random unit normal variate is less than or equal to the specified value, defined by

+

$\Phi(x) = \int_{-\infty}^x \mbox{\sf Norm}(x|0,1) \ dx$

+

This function can be used to implement the inverse link function for probit regression.

+

Phi will underflow to 0 below -37.5 and overflow to 1 above 8

+
Parameters
+ + +
xArgument.
+
+
+
Returns
Probability random sample is less than or equal to argument.
+ +

Definition at line 30 of file Phi.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + +
boost::math::tools::promote_args<T>::type stan::math::Phi_approx (x)
+
+inline
+
+ +

Approximation of the unit normal CDF.

+

http://www.jiem.org/index.php/jiem/article/download/60/27

+

This function can be used to implement the inverse link function for probit regression.

+
Parameters
+ + +
xArgument.
+
+
+
Returns
Probability random sample is less than or equal to argument.
+ +

Definition at line 23 of file Phi_approx.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
double stan::math::pi ()
+
+inline
+
+ +

Return the value of pi.

+
Returns
Pi.
+ +

Definition at line 77 of file constants.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
double stan::math::positive_infinity ()
+
+inline
+
+ +

Return positive infinity.

+
Returns
Positive infinity.
+ +

Definition at line 114 of file constants.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + +
T stan::math::prod (const std::vector< T > & v)
+
+inline
+
+ +

Returns the product of the coefficients of the specified standard vector.

+
Parameters
+ + +
vSpecified vector.
+
+
+
Returns
Product of coefficients of vector.
+ +

Definition at line 17 of file prod.hpp.

+ +
+
+ +
+
+
+template<typename T , int R, int C>
+ + + + + +
+ + + + + + + + +
T stan::math::prod (const Eigen::Matrix< T, R, C > & v)
+
+inline
+
+ +

Returns the product of the coefficients of the specified column vector.

+
Parameters
+ + +
vSpecified vector.
+
+
+
Returns
Product of coefficients of vector.
+ +

Definition at line 32 of file prod.hpp.

+ +
+
+ +
+
+
+template<typename T1 , typename T2 , typename F >
+ + + + + +
+ + + + + + + + +
common_type<T1,T2>::type stan::math::promote_common (const F & u)
+
+inline
+
+ +

Definition at line 14 of file promote_common.hpp.

+ +
+
+ +
+
+
+template<int RA, int CA, int RB, int CB>
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
Eigen::Matrix<double,CB,CB> stan::math::quad_form (const Eigen::Matrix< double, RA, CA > & A,
const Eigen::Matrix< double, RB, CB > & B 
)
+
+inline
+
+ +

Compute B^T A B.

+ +

Definition at line 18 of file quad_form.hpp.

+ +
+
+ +
+
+
+template<int RA, int CA, int RB>
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
double stan::math::quad_form (const Eigen::Matrix< double, RA, CA > & A,
const Eigen::Matrix< double, RB, 1 > & B 
)
+
+inline
+
+ +

Definition at line 28 of file quad_form.hpp.

+ +
+
+ +
+
+
+template<int RA, int CA, int RB, int CB>
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
Eigen::Matrix<double,CB,CB> stan::math::quad_form_sym (const Eigen::Matrix< double, RA, CA > & A,
const Eigen::Matrix< double, RB, CB > & B 
)
+
+inline
+
+ +

Definition at line 38 of file quad_form.hpp.

+ +
+
+ +
+
+
+template<int RA, int CA, int RB>
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
double stan::math::quad_form_sym (const Eigen::Matrix< double, RA, CA > & A,
const Eigen::Matrix< double, RB, 1 > & B 
)
+
+inline
+
+ +

Definition at line 50 of file quad_form.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
size_t stan::math::rank (const std::vector< T > & v,
int s 
)
+
+inline
+
+ +

Return the number of components of v less than v[s].

+
Returns
Number of components of v less than v[s].
+
Template Parameters
+ + +
TType of elements of the vector.
+
+
+ +

Definition at line 18 of file rank.hpp.

+ +
+
+ +
+
+
+template<typename T , int R, int C>
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
size_t stan::math::rank (const Eigen::Matrix< T, R, C > & v,
int s 
)
+
+inline
+
+ +

Return the number of components of v less than v[s].

+
Returns
Number of components of v less than v[s].
+
Template Parameters
+ + +
TType of elements of the vector.
+
+
+ +

Definition at line 36 of file rank.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
std::vector<T> stan::math::rep_array (const T & x,
int n 
)
+
+inline
+
+ +

Definition at line 14 of file rep_array.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
std::vector<std::vector<T> > stan::math::rep_array (const T & x,
int m,
int n 
)
+
+inline
+
+ +

Definition at line 21 of file rep_array.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
std::vector<std::vector<std::vector<T> > > stan::math::rep_array (const T & x,
int k,
int m,
int n 
)
+
+inline
+
+ +

Definition at line 30 of file rep_array.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
Eigen::Matrix<typename boost::math::tools::promote_args<T>::type, Eigen::Dynamic,Eigen::Dynamic> stan::math::rep_matrix (const T & x,
int m,
int n 
)
+
+inline
+
+ +

Definition at line 16 of file rep_matrix.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
Eigen::Matrix<T,Eigen::Dynamic,Eigen::Dynamic> stan::math::rep_matrix (const Eigen::Matrix< T, Eigen::Dynamic, 1 > & v,
int n 
)
+
+inline
+
+ +

Definition at line 25 of file rep_matrix.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
Eigen::Matrix<T,Eigen::Dynamic,Eigen::Dynamic> stan::math::rep_matrix (const Eigen::Matrix< T, 1, Eigen::Dynamic > & rv,
int m 
)
+
+inline
+
+ +

Definition at line 34 of file rep_matrix.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
Eigen::Matrix<typename boost::math::tools::promote_args<T>::type, 1,Eigen::Dynamic> stan::math::rep_row_vector (const T & x,
int m 
)
+
+inline
+
+ +

Definition at line 15 of file rep_row_vector.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
Eigen::Matrix<typename boost::math::tools::promote_args<T>::type, Eigen::Dynamic,1> stan::math::rep_vector (const T & x,
int n 
)
+
+inline
+
+ +

Definition at line 16 of file rep_vector.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
void stan::math::resize (T & x,
std::vector< size_t > dims 
)
+
+inline
+
+ +

Recursively resize the specified vector of vectors, which must bottom out at scalar values, Eigen vectors or Eigen matrices.

+
Parameters
+ + + +
xArray-like object to resize.
dimsNew dimensions.
+
+
+
Template Parameters
+ + +
TType of object being resized.
+
+
+ +

Definition at line 63 of file resize.hpp.

+ +
+
+ +
+
+
+template<typename T1 , typename T2 >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
boost::math::tools::promote_args<T1,T2>::type stan::math::rising_factorial (const T1 x,
const T2 n 
)
+
+inline
+
+ +

Definition at line 11 of file rising_factorial.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
Eigen::Matrix<T,1,Eigen::Dynamic> stan::math::row (const Eigen::Matrix< T, Eigen::Dynamic, Eigen::Dynamic > & m,
size_t i 
)
+
+inline
+
+ +

Return the specified row of the specified matrix, using start-at-1 indexing.

+

This is equivalent to calling m.row(i - 1) and assigning the resulting template expression to a row vector.

+
Template Parameters
+ + +
TScalar value type for matrix.
+
+
+
Parameters
+ + + +
mMatrix.
iRow index (count from 1).
+
+
+
Returns
Specified row of the matrix.
+ +

Definition at line 25 of file row.hpp.

+ +
+
+ +
+
+
+template<typename T , int R, int C>
+ + + + + +
+ + + + + + + + +
size_t stan::math::rows (const Eigen::Matrix< T, R, C > & m)
+
+inline
+
+ +

Definition at line 12 of file rows.hpp.

+ +
+
+ +
+
+
+template<int R1, int C1, int R2, int C2>
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
Eigen::Matrix<double, R1, 1> stan::math::rows_dot_product (const Eigen::Matrix< double, R1, C1 > & v1,
const Eigen::Matrix< double, R2, C2 > & v2 
)
+
+inline
+
+ +

Returns the dot product of the specified vectors.

+
Parameters
+ + + +
v1First vector.
v2Second vector.
+
+
+
Returns
Dot product of the vectors.
+
Exceptions
+ + +
std::domain_errorIf the vectors are not the same size or if they are both not vector dimensioned.
+
+
+ +

Definition at line 22 of file rows_dot_product.hpp.

+ +
+
+ +
+
+
+template<typename T , int R, int C>
+ + + + + +
+ + + + + + + + +
Eigen::Matrix<T,R,1> stan::math::rows_dot_self (const Eigen::Matrix< T, R, C > & x)
+
+inline
+
+ +

Returns the dot product of each row of a matrix with itself.

+
Parameters
+ + +
xMatrix.
+
+
+
Template Parameters
+ + +
Tscalar type
+
+
+ +

Definition at line 16 of file rows_dot_self.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
void stan::math::scaled_add (std::vector< double > & x,
const std::vector< double > & y,
const double lambda 
)
+
+inline
+
+ +

Definition at line 11 of file scaled_add.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + +
boost::math::tools::promote_args<T>::type stan::math::sd (const std::vector< T > & v)
+
+inline
+
+ +

Returns the unbiased sample standard deviation of the coefficients in the specified column vector.

+
Parameters
+ + +
vSpecified vector.
+
+
+
Returns
Sample variance of vector.
+ +

Definition at line 22 of file sd.hpp.

+ +
+
+ +
+
+
+template<typename T , int R, int C>
+ + + + + +
+ + + + + + + + +
boost::math::tools::promote_args<T>::type stan::math::sd (const Eigen::Matrix< T, R, C > & m)
+
+inline
+
+ +

Returns the unbiased sample standard deviation of the coefficients in the specified vector, row vector, or matrix.

+
Parameters
+ + +
mSpecified vector, row vector or matrix.
+
+
+
Returns
Sample variance.
+ +

Definition at line 37 of file sd.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
Eigen::Matrix<T,Eigen::Dynamic,1> stan::math::segment (const Eigen::Matrix< T, Eigen::Dynamic, 1 > & v,
size_t i,
size_t n 
)
+
+inline
+
+ +

Return the specified number of elements as a vector starting from the specified element - 1 of the specified vector.

+ +

Definition at line 20 of file segment.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
Eigen::Matrix<T,1,Eigen::Dynamic> stan::math::segment (const Eigen::Matrix< T, 1, Eigen::Dynamic > & v,
size_t i,
size_t n 
)
+
+inline
+
+ +

Definition at line 30 of file segment.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + + + + + + + + + + + + + + + + + + + + +
std::vector<T> stan::math::segment (const std::vector< T > & sv,
size_t i,
size_t n 
)
+
+ +

Definition at line 40 of file segment.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + + + + +
Eigen::Matrix<T,Eigen::Dynamic,1> stan::math::singular_values (const Eigen::Matrix< T, Eigen::Dynamic, Eigen::Dynamic > & m)
+
+ +

Return the vector of the singular values of the specified matrix in decreasing order of magnitude.

+

See the documentation for svd() for information on the signular values.

+
Parameters
+ + +
mSpecified matrix.
+
+
+
Returns
Singular values of the matrix.
+ +

Definition at line 19 of file singular_values.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + +
int stan::math::size (const std::vector< T > & x)
+
+inline
+
+ +

Definition at line 11 of file size.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + +
Eigen::Matrix<T,Eigen::Dynamic,1> stan::math::softmax (const Eigen::Matrix< T, Eigen::Dynamic, 1 > & v)
+
+inline
+
+ +

Return the softmax of the specified vector.

+
Template Parameters
+ + +
TScalar type of values in vector.
+
+
+
Parameters
+ + +
[in]vVector to transform.
+
+
+
Returns
Unit simplex result of the softmax transform of the vector.
+ +

Definition at line 20 of file softmax.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + +
std::vector<T> stan::math::sort_asc (std::vector< T > xs)
+
+inline
+
+ +

Return the specified standard vector in ascending order.

+
Parameters
+ + +
xsStandard vector to order.
+
+
+
Returns
Standard vector ordered.
+
Template Parameters
+ + +
TType of elements of the vector.
+
+
+ +

Definition at line 20 of file sort.hpp.

+ +
+
+ +
+
+
+template<typename T , int R, int C>
+ + + + + +
+ + + + + + + + +
Eigen::Matrix<T,R,C> stan::math::sort_asc (Eigen::Matrix< T, R, C > xs)
+
+inline
+
+ +

Return the specified eigen vector in ascending order.

+
Parameters
+ + +
xsEigen vector to order.
+
+
+
Returns
Eigen vector ordered.
+
Template Parameters
+ + +
TType of elements of the vector.
+
+
+ +

Definition at line 46 of file sort.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + +
std::vector<T> stan::math::sort_desc (std::vector< T > xs)
+
+inline
+
+ +

Return the specified standard vector in descending order.

+
Parameters
+ + +
xsStandard vector to order.
+
+
+
Returns
Standard vector ordered.
+
Template Parameters
+ + +
TType of elements of the vector.
+
+
+ +

Definition at line 33 of file sort.hpp.

+ +
+
+ +
+
+
+template<typename T , int R, int C>
+ + + + + +
+ + + + + + + + +
Eigen::Matrix<T,R,C> stan::math::sort_desc (Eigen::Matrix< T, R, C > xs)
+
+inline
+
+ +

Return the specified eigen vector in descending order.

+
Parameters
+ + +
xsEigen vector to order.
+
+
+
Returns
Eigen vector ordered.
+
Template Parameters
+ + +
TType of elements of the vector.
+
+
+ +

Definition at line 59 of file sort.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
double stan::math::sqrt2 ()
+
+inline
+
+ +

Return the square root of two.

+
Returns
Square root of two.
+ +

Definition at line 95 of file constants.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + +
T stan::math::square (const T x)
+
+inline
+
+ +

Return the square of the specified argument.

+

$\mbox{square}(x) = x^2$.

+

The implementation of square(x) is just x * x. Given this, this method is mainly useful in cases where x is not a simple primitive type, particularly when it is an auto-dif type.

+
Parameters
+ + +
xInput to square.
+
+
+
Returns
Square of input.
+
Template Parameters
+ + +
TType of scalar.
+
+
+ +

Definition at line 22 of file square.hpp.

+ +
+
+ +
+
+
+template<int R1, int C1, int R2, int C2>
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
double stan::math::squared_distance (const Eigen::Matrix< double, R1, C1 > & v1,
const Eigen::Matrix< double, R2, C2 > & v2 
)
+
+inline
+
+ +

Returns the squared distance between the specified vectors.

+
Parameters
+ + + +
v1First vector.
v2Second vector.
+
+
+
Returns
Dot product of the vectors.
+
Exceptions
+ + +
std::domain_errorIf the vectors are not the same size or if they are both not vector dimensioned.
+
+
+ +

Definition at line 21 of file squared_distance.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + + + + + + + + + + + + + + +
void stan::math::stan_print (std::ostream * o,
const T & x 
)
+
+ +

Definition at line 12 of file stan_print.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + + + + + + + + + + + + + + +
void stan::math::stan_print (std::ostream * o,
const std::vector< T > & x 
)
+
+ +

Definition at line 17 of file stan_print.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + + + + + + + + + + + + + + +
void stan::math::stan_print (std::ostream * o,
const Eigen::Matrix< T, Eigen::Dynamic, 1 > & x 
)
+
+ +

Definition at line 27 of file stan_print.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + + + + + + + + + + + + + + +
void stan::math::stan_print (std::ostream * o,
const Eigen::Matrix< T, 1, Eigen::Dynamic > & x 
)
+
+ +

Definition at line 37 of file stan_print.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + + + + + + + + + + + + + + +
void stan::math::stan_print (std::ostream * o,
const Eigen::Matrix< T, Eigen::Dynamic, Eigen::Dynamic > & x 
)
+
+ +

Definition at line 47 of file stan_print.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + +
int stan::math::step (const T y)
+
+inline
+
+ +

The step, or Heaviside, function.

+

The function is defined by

+

step(y) = (y < 0.0) ? 0 : 1.

+
Parameters
+ + +
yScalar argument.
+
+
+
Returns
1 if the specified argument is greater than or equal to 0.0, and 0 otherwise.
+ +

Definition at line 20 of file step.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
void stan::math::sub (std::vector< double > & x,
std::vector< double > & y,
std::vector< double > & result 
)
+
+inline
+
+ +

Definition at line 10 of file sub.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Eigen::Matrix<T,Eigen::Dynamic,1> stan::math::sub_col (const Eigen::Matrix< T, Eigen::Dynamic, Eigen::Dynamic > & m,
size_t i,
size_t j,
size_t nrows 
)
+
+inline
+
+ +

Return a nrows x 1 subcolumn starting at (i-1,j-1).

+
Parameters
+ + + + + +
mMatrix
iStarting row + 1
jStarting column + 1
nrowsNumber of rows in block
+
+
+ +

Definition at line 22 of file sub_col.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Eigen::Matrix<T,1,Eigen::Dynamic> stan::math::sub_row (const Eigen::Matrix< T, Eigen::Dynamic, Eigen::Dynamic > & m,
size_t i,
size_t j,
size_t ncols 
)
+
+inline
+
+ +

Return a 1 x nrows subrow starting at (i-1,j-1).

+
Parameters
+ + + + + +
mMatrix
iStarting row + 1
jStarting column + 1
ncolsNumber of columns in block
+
+
+ +

Definition at line 23 of file sub_row.hpp.

+ +
+
+ +
+
+
+template<typename T1 , typename T2 , int R, int C>
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
Eigen::Matrix<typename boost::math::tools::promote_args<T1,T2>::type, R, C> stan::math::subtract (const Eigen::Matrix< T1, R, C > & m1,
const Eigen::Matrix< T2, R, C > & m2 
)
+
+inline
+
+ +

Return the result of subtracting the second specified matrix from the first specified matrix.

+

The return scalar type is the promotion of the input types.

+
Template Parameters
+ + + + + +
T1Scalar type of first matrix.
T2Scalar type of second matrix.
RRow type of matrices.
CColumn type of matrices.
+
+
+
Parameters
+ + + +
m1First matrix.
m2Second matrix.
+
+
+
Returns
Difference between first matrix and second matrix.
+ +

Definition at line 27 of file subtract.hpp.

+ +
+
+ +
+
+
+template<typename T1 , typename T2 , int R, int C>
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
Eigen::Matrix<typename boost::math::tools::promote_args<T1,T2>::type, R, C> stan::math::subtract (const T1 & c,
const Eigen::Matrix< T2, R, C > & m 
)
+
+inline
+
+ +

Definition at line 40 of file subtract.hpp.

+ +
+
+ +
+
+
+template<typename T1 , typename T2 , int R, int C>
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
Eigen::Matrix<typename boost::math::tools::promote_args<T1,T2>::type, R, C> stan::math::subtract (const Eigen::Matrix< T1, R, C > & m,
const T2 & c 
)
+
+inline
+
+ +

Definition at line 52 of file subtract.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
double stan::math::sum (std::vector< double > & x)
+
+inline
+
+ +

Definition at line 10 of file sum.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + +
T stan::math::sum (const std::vector< T > & xs)
+
+inline
+
+ +

Return the sum of the values in the specified standard vector.

+
Parameters
+ + +
xsStandard vector to sum.
+
+
+
Returns
Sum of elements.
+
Template Parameters
+ + +
TType of elements summed.
+
+
+ +

Definition at line 19 of file sum.hpp.

+ +
+
+ +
+
+
+template<typename T , int R, int C>
+ + + + + +
+ + + + + + + + +
double stan::math::sum (const Eigen::Matrix< T, R, C > & v)
+
+inline
+
+ +

Returns the sum of the coefficients of the specified column vector.

+
Parameters
+ + +
vSpecified vector.
+
+
+
Returns
Sum of coefficients of vector.
+ +

Definition at line 34 of file sum.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
Eigen::Matrix<T,Eigen::Dynamic,1> stan::math::tail (const Eigen::Matrix< T, Eigen::Dynamic, 1 > & v,
size_t n 
)
+
+inline
+
+ +

Return the specified number of elements as a vector from the back of the specified vector.

+ +

Definition at line 20 of file tail.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
Eigen::Matrix<T,1,Eigen::Dynamic> stan::math::tail (const Eigen::Matrix< T, 1, Eigen::Dynamic > & rv,
size_t n 
)
+
+inline
+
+ +

Return the specified number of elements as a row vector from the back of the specified row vector.

+ +

Definition at line 35 of file tail.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + + + + + + + + + + + + + + +
std::vector<T> stan::math::tail (const std::vector< T > & sv,
size_t n 
)
+
+ +

Definition at line 43 of file tail.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
matrix_d stan::math::tcrossprod (const matrix_d & M)
+
+inline
+
+ +

Returns the result of post-multiplying a matrix by its own transpose.

+
Parameters
+ + +
MMatrix to multiply.
+
+
+
Returns
M times its transpose.
+ +

Definition at line 17 of file tcrossprod.hpp.

+ +
+
+ +
+
+
+template<typename T , int R1, int R2>
+ + + + + +
+ + + + + + + + +
Eigen::Matrix<T,Eigen::Dynamic,1> stan::math::to_vector (const Eigen::Matrix< T, R1, R2 > & m)
+
+inline
+
+ +

Definition at line 12 of file to_vector.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + +
T stan::math::trace (const Eigen::Matrix< T, Eigen::Dynamic, Eigen::Dynamic > & m)
+
+inline
+
+ +

Returns the trace of the specified matrix.

+

The trace is defined as the sum of the elements on the diagonal. The matrix is not required to be square. Returns 0 if matrix is empty.

+
Parameters
+ + +
[in]mSpecified matrix.
+
+
+
Returns
Trace of the matrix.
+ +

Definition at line 19 of file trace.hpp.

+ +
+
+ +
+
+
+template<int R1, int C1, int R2, int C2, int R3, int C3>
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
double stan::math::trace_gen_inv_quad_form_ldlt (const Eigen::Matrix< double, R1, C1 > & D,
const stan::math::LDLT_factor< double, R2, C2 > & A,
const Eigen::Matrix< double, R3, C3 > & B 
)
+
+inline
+
+ +

Definition at line 19 of file trace_gen_inv_quad_form_ldlt.hpp.

+ +
+
+ +
+
+
+template<int RD, int CD, int RA, int CA, int RB, int CB>
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
double stan::math::trace_gen_quad_form (const Eigen::Matrix< double, RD, CD > & D,
const Eigen::Matrix< double, RA, CA > & A,
const Eigen::Matrix< double, RB, CB > & B 
)
+
+inline
+
+ +

Compute trace(D B^T A B).

+ +

Definition at line 17 of file trace_gen_quad_form.hpp.

+ +
+
+ +
+
+
+template<int R2, int C2, int R3, int C3>
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
double stan::math::trace_inv_quad_form_ldlt (const stan::math::LDLT_factor< double, R2, C2 > & A,
const Eigen::Matrix< double, R3, C3 > & B 
)
+
+inline
+
+ +

Definition at line 18 of file trace_inv_quad_form_ldlt.hpp.

+ +
+
+ +
+
+
+template<int RA, int CA, int RB, int CB>
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
double stan::math::trace_quad_form (const Eigen::Matrix< double, RA, CA > & A,
const Eigen::Matrix< double, RB, CB > & B 
)
+
+inline
+
+ +

Compute trace(B^T A B).

+ +

Definition at line 17 of file trace_quad_form.hpp.

+ +
+
+ +
+
+
+template<typename T , int R, int C>
+ + + + + +
+ + + + + + + + +
Eigen::Matrix<T,C,R> stan::math::transpose (const Eigen::Matrix< T, R, C > & m)
+
+inline
+
+ +

Definition at line 12 of file transpose.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + +
T stan::math::trigamma (x)
+
+inline
+
+ +

Definition at line 20 of file trigamma.hpp.

+ +
+
+ +
+
+
+template<typename T , int R, int C>
+ + + + + + + + + + + + + + + + + + + + + + + + +
void stan::math::validate_column_index (const Eigen::Matrix< T, R, C > & m,
size_t j,
const char * msg 
)
+
+ +

Definition at line 12 of file validate_column_index.hpp.

+ +
+
+ +
+
+
+template<typename T1 , typename T2 >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
void stan::math::validate_greater (const T1 & x,
const T2 & y,
const char * x_name,
const char * y_name,
const char * fun_name 
)
+
+inline
+
+ +

Definition at line 12 of file validate_greater.hpp.

+ +
+
+ +
+
+
+template<typename T1 , typename T2 >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
void stan::math::validate_greater_or_equal (const T1 & x,
const T2 & y,
const char * x_name,
const char * y_name,
const char * fun_name 
)
+
+inline
+
+ +

Definition at line 12 of file validate_greater_or_equal.hpp.

+ +
+
+ +
+
+
+template<typename T1 , typename T2 >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
void stan::math::validate_less (const T1 & x,
const T2 & y,
const char * x_name,
const char * y_name,
const char * fun_name 
)
+
+inline
+
+ +

Definition at line 12 of file validate_less.hpp.

+ +
+
+ +
+
+
+template<typename T1 , typename T2 >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
void stan::math::validate_less_or_equal (const T1 & x,
const T2 & y,
const char * x_name,
const char * y_name,
const char * fun_name 
)
+
+inline
+
+ +

Definition at line 12 of file validate_less_or_equal.hpp.

+ +
+
+ +
+
+
+template<typename T1 , int R1, int C1, typename T2 , int R2, int C2>
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
void stan::math::validate_matching_dims (const Eigen::Matrix< T1, R1, C1 > & x1,
const Eigen::Matrix< T2, R2, C2 > & x2,
const char * msg 
)
+
+inline
+
+ +

Definition at line 12 of file validate_matching_dims.hpp.

+ +
+
+ +
+
+
+template<typename T1 , typename T2 >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
void stan::math::validate_matching_sizes (const std::vector< T1 > & x1,
const std::vector< T2 > & x2,
const char * msg 
)
+
+inline
+
+ +

Definition at line 13 of file validate_matching_sizes.hpp.

+ +
+
+ +
+
+
+template<typename T1 , int R1, int C1, typename T2 , int R2, int C2>
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
void stan::math::validate_matching_sizes (const Eigen::Matrix< T1, R1, C1 > & x1,
const Eigen::Matrix< T2, R2, C2 > & x2,
const char * msg 
)
+
+inline
+
+ +

Definition at line 26 of file validate_matching_sizes.hpp.

+ +
+
+ +
+
+
+template<typename Derived , typename T2 , int R2, int C2>
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
void stan::math::validate_matching_sizes (const Eigen::Block< Derived > & x1,
const Eigen::Matrix< T2, R2, C2 > & x2,
const char * msg 
)
+
+inline
+
+ +

Definition at line 41 of file validate_matching_sizes.hpp.

+ +
+
+ +
+
+
+template<typename T1 , int R1, int C1, typename Derived >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
void stan::math::validate_matching_sizes (const Eigen::Matrix< T1, R1, C1 > & x1,
const Eigen::Block< Derived > & x2,
const char * msg 
)
+
+inline
+
+ +

Definition at line 56 of file validate_matching_sizes.hpp.

+ +
+
+ +
+
+
+template<typename Derived1 , typename Derived2 >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
void stan::math::validate_matching_sizes (const Eigen::Block< Derived1 > & x1,
const Eigen::Block< Derived2 > & x2,
const char * msg 
)
+
+inline
+
+ +

Definition at line 71 of file validate_matching_sizes.hpp.

+ +
+
+ +
+
+
+template<typename T1 , typename T2 >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
void stan::math::validate_multiplicable (const T1 & x1,
const T2 & x2,
const char * msg 
)
+
+inline
+
+ +

Definition at line 12 of file validate_multiplicable.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
void stan::math::validate_non_negative_index (const std::string & var_name,
const std::string & expr,
int val 
)
+
+inline
+
+ +

Definition at line 12 of file validate_non_negative_index.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
void stan::math::validate_non_negative_rep (int n,
const std::string & fun 
)
+
+inline
+
+ +

If argument is negative, throw a domain error indicating the function with the specified name.

+
Parameters
+ + + +
nInteger to test for non-negativity.
funName of function in which test is being done.
+
+
+
Exceptions
+ + +
std::domain_errorIf integer is negative.
+
+
+ +

Definition at line 20 of file validate_non_negative_rep.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
void stan::math::validate_nonzero_size (const T & x,
const char * msg 
)
+
+inline
+
+ +

Definition at line 11 of file validate_nonzero_size.hpp.

+ +
+
+ +
+
+
+template<typename T , int R, int C>
+ + + + + + + + + + + + + + + + + + + + + + + + +
void stan::math::validate_row_index (const Eigen::Matrix< T, R, C > & m,
size_t i,
const char * msg 
)
+
+ +

Definition at line 13 of file validate_row_index.hpp.

+ +
+
+ +
+
+
+template<typename T , int R, int C>
+ + + + + + + + + + + + + + + + + + +
void stan::math::validate_square (const Eigen::Matrix< T, R, C > & x,
const char * msg 
)
+
+ +

Definition at line 12 of file validate_square.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + + + + + + + + + + + + + + + + + + + + +
void stan::math::validate_std_vector_index (const std::vector< T > & sv,
size_t j,
const char * msg 
)
+
+ +

Definition at line 12 of file validate_std_vector_index.hpp.

+ +
+
+ +
+
+
+template<typename T , int R, int C>
+ + + + + + + + + + + + + + + + + + +
void stan::math::validate_symmetric (const Eigen::Matrix< T, R, C > & x,
const char * msg 
)
+
+ +

Definition at line 13 of file validate_symmetric.hpp.

+ +
+
+ +
+
+
+template<typename T , int R, int C>
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
void stan::math::validate_vector (const Eigen::Matrix< T, R, C > & x,
const char * msg 
)
+
+inline
+
+ +

Definition at line 12 of file validate_vector.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + +
double stan::math::value_of (const T x)
+
+inline
+
+ +

Return the value of the specified scalar argument converted to a double value.

+

This function is meant to cover the primitive types. For types requiring pass-by-reference, this template function should be specialized.

+
Template Parameters
+ + +
TType of scalar.
+
+
+
Parameters
+ + +
xScalar to convert to double.
+
+
+
Returns
Value of scalar cast to a double.
+ +

Definition at line 20 of file value_of.hpp.

+ +
+
+ +
+
+
+template<>
+ + + + + +
+ + + + + + + + +
double stan::math::value_of< double > (const double x)
+
+inline
+
+ +

Return the specified argument.

+

See value_of(T) for a polymorphic implementation using static casts.

+

This inline pass-through no-op should be compiled away.

+
Parameters
+ + +
xSpecified value.
+
+
+
Returns
Specified value.
+ +

Definition at line 36 of file value_of.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + +
boost::math::tools::promote_args<T>::type stan::math::variance (const std::vector< T > & v)
+
+inline
+
+ +

Returns the sample variance (divide by length - 1) of the coefficients in the specified standard vector.

+
Parameters
+ + +
vSpecified vector.
+
+
+
Returns
Sample variance of vector.
+
Exceptions
+ + +
std::domain_errorif the size of the vector is less than 1.
+
+
+ +

Definition at line 23 of file variance.hpp.

+ +
+
+ +
+
+
+template<typename T , int R, int C>
+ + + + + +
+ + + + + + + + +
boost::math::tools::promote_args<T>::type stan::math::variance (const Eigen::Matrix< T, R, C > & m)
+
+inline
+
+ +

Returns the sample variance (divide by length - 1) of the coefficients in the specified column vector.

+
Parameters
+ + +
mSpecified vector.
+
+
+
Returns
Sample variance of vector.
+ +

Definition at line 45 of file variance.hpp.

+ +
+
+

Variable Documentation

+ +
+
+ + + + +
const double stan::math::CONSTRAINT_TOLERANCE = 1E-8
+
+ +

The tolerance for checking arithmetic bounds In rank and in simplexes.

+

The default value is 1E-8.

+ +

Definition at line 11 of file constraint_tolerance.hpp.

+ +
+
+ +
+
+ + + + +
const double stan::math::E = boost::math::constants::e<double>()
+
+ +

The base of the natural logarithm, $ e $.

+ +

Definition at line 14 of file constants.hpp.

+ +
+
+ +
+
+ + + + +
const double stan::math::EPSILON = std::numeric_limits<double>::epsilon()
+
+ +

Smallest positive value.

+ +

Definition at line 58 of file constants.hpp.

+ +
+
+ +
+
+ + + + +
const double stan::math::INFTY = std::numeric_limits<double>::infinity()
+
+ +

Positive infinity.

+ +

Definition at line 43 of file constants.hpp.

+ +
+
+ +
+
+ + + + +
const double stan::math::INV_SQRT_2 = 1.0 / SQRT_2
+
+ +

The value of 1 over the square root of 2, $ 1 / \sqrt{2} $.

+ +

Definition at line 26 of file constants.hpp.

+ +
+
+ +
+
+ + + + +
const double stan::math::INV_SQRT_TWO_PI = 1.0 / std::sqrt(2.0 * boost::math::constants::pi<double>())
+
+ +

Definition at line 150 of file constants.hpp.

+ +
+
+ +
+
+ + + + +
const double stan::math::LOG_10 = std::log(10.0)
+
+ +

The natural logarithm of 10, $ \log 10 $.

+ +

Definition at line 38 of file constants.hpp.

+ +
+
+ +
+
+ + + + +
const double stan::math::LOG_2 = std::log(2.0)
+
+ +

The natural logarithm of 2, $ \log 2 $.

+ +

Definition at line 32 of file constants.hpp.

+ +
+
+ +
+
+ + + + +
const double stan::math::LOG_PI_OVER_FOUR = std::log(boost::math::constants::pi<double>()) / 4.0
+
+ +

Definition at line 70 of file constants.hpp.

+ +
+
+ +
+
+ + + + +
const double stan::math::NEG_TWO_OVER_SQRT_PI = -TWO_OVER_SQRT_PI
+
+ +

Definition at line 148 of file constants.hpp.

+ +
+
+ +
+
+ + + + +
const double stan::math::NEGATIVE_EPSILON = - std::numeric_limits<double>::epsilon()
+
+ +

Largest negative value (i.e., smallest absolute value).

+ +

Definition at line 63 of file constants.hpp.

+ +
+
+ +
+
+ + + + +
const double stan::math::NEGATIVE_INFTY = - std::numeric_limits<double>::infinity()
+
+ +

Negative infinity.

+ +

Definition at line 48 of file constants.hpp.

+ +
+
+ +
+
+ + + + +
const double stan::math::NOT_A_NUMBER = std::numeric_limits<double>::quiet_NaN()
+
+ +

(Quiet) not-a-number value.

+ +

Definition at line 53 of file constants.hpp.

+ +
+
+ +
+
+ + + + +
const double stan::math::SQRT_2 = std::sqrt(2.0)
+
+ +

The value of the square root of 2, $ \sqrt{2} $.

+ +

Definition at line 20 of file constants.hpp.

+ +
+
+ +
+
+ + + + +
const double stan::math::TWO_OVER_SQRT_PI = 2.0 / std::sqrt(boost::math::constants::pi<double>())
+
+ +

Definition at line 146 of file constants.hpp.

+ +
+
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/namespacestan_1_1math_1_1policies.html b/doc/api/html/namespacestan_1_1math_1_1policies.html new file mode 100644 index 00000000000..2a17bd5e69e --- /dev/null +++ b/doc/api/html/namespacestan_1_1math_1_1policies.html @@ -0,0 +1,179 @@ + + + + + +Stan: stan::math::policies Namespace Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::math::policies Namespace Reference
+
+
+ +

Extending boost functionality. +More...

+ + + + + +

+Namespaces

namespace  detail
 Reimplementing boost::math::policies::detail::raise_domain_error.
 
+ + + + +

+Functions

template<class T_result , class T_val , class Policy >
T_result raise_domain_error (const char *function, const char *message, const T_val &val, const Policy &)
 
+

Detailed Description

+

Extending boost functionality.

+

Function Documentation

+ +
+
+
+template<class T_result , class T_val , class Policy >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
T_result stan::math::policies::raise_domain_error (const char * function,
const char * message,
const T_val & val,
const Policy &  
)
+
+inline
+
+ +

Definition at line 55 of file raise_domain_error.hpp.

+ +
+
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/namespacestan_1_1math_1_1policies_1_1detail.html b/doc/api/html/namespacestan_1_1math_1_1policies_1_1detail.html new file mode 100644 index 00000000000..dbf89853218 --- /dev/null +++ b/doc/api/html/namespacestan_1_1math_1_1policies_1_1detail.html @@ -0,0 +1,335 @@ + + + + + +Stan: stan::math::policies::detail Namespace Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::math::policies::detail Namespace Reference
+
+
+ +

Reimplementing boost::math::policies::detail::raise_domain_error. +More...

+ + + + + + + + + + + + + + +

+Functions

template<class T_result , class T_val >
T_result raise_domain_error (const char *function, const char *message, const T_val &val, const ::boost::math::policies::domain_error< ::boost::math::policies::throw_on_error > &)
 
template<class T_result , class T_val >
T_result raise_domain_error (const char *, const char *, const T_val &, const ::boost::math::policies::domain_error< ::boost::math::policies::ignore_error > &)
 
template<class T_result , class T_val >
T_result raise_domain_error (const char *, const char *, const T_val &, const ::boost::math::policies::domain_error< ::boost::math::policies::errno_on_error > &)
 
template<class T_result , class T_val >
T_result raise_domain_error (const char *function, const char *message, const T_val &val, const ::boost::math::policies::domain_error< ::boost::math::policies::user_error > &)
 
+

Detailed Description

+

Reimplementing boost::math::policies::detail::raise_domain_error.

+

For error handling, Stan requires raise_domain_error to handle two template parameters, one for the return type and the other for the input type.

+

In boost, these functions are in namespace boost::math::policies:details. Since reimplementing these functions in that namespace could lead to ambiguous functions calls, they are placed in stan::math::policies::details.

+

These functions still rely on boost::math::policies::detail::raise_error.

+

TODO: user_error may need to be refactored to include the two template parameters.

+

Function Documentation

+ +
+
+
+template<class T_result , class T_val >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
T_result stan::math::policies::detail::raise_domain_error (const char * function,
const char * message,
const T_val & val,
const ::boost::math::policies::domain_error< ::boost::math::policies::throw_on_error > &  
)
+
+inline
+
+ +

Definition at line 14 of file raise_domain_error.hpp.

+ +
+
+ +
+
+
+template<class T_result , class T_val >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
T_result stan::math::policies::detail::raise_domain_error (const char * ,
const char * ,
const T_val & ,
const ::boost::math::policies::domain_error< ::boost::math::policies::ignore_error > &  
)
+
+inline
+
+ +

Definition at line 24 of file raise_domain_error.hpp.

+ +
+
+ +
+
+
+template<class T_result , class T_val >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
T_result stan::math::policies::detail::raise_domain_error (const char * ,
const char * ,
const T_val & ,
const ::boost::math::policies::domain_error< ::boost::math::policies::errno_on_error > &  
)
+
+inline
+
+ +

Definition at line 34 of file raise_domain_error.hpp.

+ +
+
+ +
+
+
+template<class T_result , class T_val >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
T_result stan::math::policies::detail::raise_domain_error (const char * function,
const char * message,
const T_val & val,
const ::boost::math::policies::domain_error< ::boost::math::policies::user_error > &  
)
+
+inline
+
+ +

Definition at line 45 of file raise_domain_error.hpp.

+ +
+
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/namespacestan_1_1mcmc.html b/doc/api/html/namespacestan_1_1mcmc.html new file mode 100644 index 00000000000..1391cf42fa1 --- /dev/null +++ b/doc/api/html/namespacestan_1_1mcmc.html @@ -0,0 +1,199 @@ + + + + + +Stan: stan::mcmc Namespace Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::mcmc Namespace Reference
+
+
+ +

Markov chain Monte Carlo samplers. +More...

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Classes

class  base_adaptation
 
class  base_adapter
 
class  base_mcmc
 
class  chains
 An mcmc::chains object stores parameter names and dimensionalities along with samples from multiple chains. More...
 
class  covar_adaptation
 
class  fixed_param_sampler
 
class  base_hmc
 
class  base_hamiltonian
 
class  dense_e_metric
 
class  dense_e_point
 
class  diag_e_metric
 
class  diag_e_point
 
class  ps_point
 
class  unit_e_metric
 
class  unit_e_point
 
class  base_integrator
 
class  base_leapfrog
 
class  expl_leapfrog
 
class  adapt_dense_e_nuts
 
class  adapt_diag_e_nuts
 
class  adapt_unit_e_nuts
 
struct  nuts_util
 
class  base_nuts
 
class  dense_e_nuts
 
class  diag_e_nuts
 
class  unit_e_nuts
 
class  adapt_dense_e_static_hmc
 
class  adapt_diag_e_static_hmc
 
class  adapt_unit_e_static_hmc
 
class  base_static_hmc
 
class  dense_e_static_hmc
 
class  diag_e_static_hmc
 
class  unit_e_static_hmc
 
class  sample
 
class  stepsize_adaptation
 
class  stepsize_adapter
 
class  stepsize_covar_adapter
 
class  stepsize_var_adapter
 
class  var_adaptation
 
class  windowed_adaptation
 
+

Detailed Description

+

Markov chain Monte Carlo samplers.

+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/namespacestan_1_1memory.html b/doc/api/html/namespacestan_1_1memory.html new file mode 100644 index 00000000000..a1b21ab4d6a --- /dev/null +++ b/doc/api/html/namespacestan_1_1memory.html @@ -0,0 +1,179 @@ + + + + + +Stan: stan::memory Namespace Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::memory Namespace Reference
+
+
+ +

(Expert) Allocate, free, and manage underlying system memory. +More...

+ + + + + + + +

+Classes

class  chunk_alloc
 
class  stack_alloc
 An instance of this class provides a memory pool through which blocks of raw memory may be allocated and then collected simultaneously. More...
 
+ + + + + +

+Functions

template<typename T >
bool is_aligned (T *ptr, unsigned int bytes_aligned)
 Return true if the specified pointer is aligned on the number of bytes.
 
+

Detailed Description

+

(Expert) Allocate, free, and manage underlying system memory.

+

Function Documentation

+ +
+
+
+template<typename T >
+ + + + + + + + + + + + + + + + + + +
bool stan::memory::is_aligned (T * ptr,
unsigned int bytes_aligned 
)
+
+ +

Return true if the specified pointer is aligned on the number of bytes.

+

This doesn't really make sense other than for powers of 2.

+
Parameters
+ + + +
ptrPointer to test.
bytes_alignedNumber of bytes of alignment required.
+
+
+
Returns
true if pointer is aligned.
+
Template Parameters
+ + +
Typeof object to which pointer points.
+
+
+ +

Definition at line 35 of file stack_alloc.hpp.

+ +
+
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/namespacestan_1_1model.html b/doc/api/html/namespacestan_1_1model.html new file mode 100644 index 00000000000..83eacd839f9 --- /dev/null +++ b/doc/api/html/namespacestan_1_1model.html @@ -0,0 +1,910 @@ + + + + + +Stan: stan::model Namespace Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::model Namespace Reference
+
+
+ +

For compiling models. +More...

+ + + + + + + +

+Classes

class  prob_grad
 The prob_grad class represents the basic parameter holders for a model. More...
 
struct  model_functional
 
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Functions

template<bool jacobian_adjust_transform, class M >
double log_prob_propto (const M &model, std::vector< double > &params_r, std::vector< int > &params_i, std::ostream *msgs=0)
 Helper function to calculate log probability for double scalars up to a proportion.
 
template<bool propto, bool jacobian_adjust_transform, class M >
double log_prob_grad (const M &model, std::vector< double > &params_r, std::vector< int > &params_i, std::vector< double > &gradient, std::ostream *msgs=0)
 Compute the gradient using reverse-mode automatic differentiation, writing the result into the specified gradient, using the specified perturbation.
 
template<bool jacobian_adjust_transform, class M >
double log_prob_propto (const M &model, Eigen::VectorXd &params_r, std::ostream *msgs=0)
 Helper function to calculate log probability for double scalars up to a proportion.
 
template<bool propto, bool jacobian_adjust_transform, class M >
double log_prob_grad (const M &model, Eigen::VectorXd &params_r, Eigen::VectorXd &gradient, std::ostream *msgs=0)
 Compute the gradient using reverse-mode automatic differentiation, writing the result into the specified gradient, using the specified perturbation.
 
template<bool propto, bool jacobian_adjust_transform, class M >
void finite_diff_grad (const M &model, std::vector< double > &params_r, std::vector< int > &params_i, std::vector< double > &grad, double epsilon=1e-6, std::ostream *msgs=0)
 Compute the gradient using finite differences for the specified parameters, writing the result into the specified gradient, using the specified perturbation.
 
template<bool propto, bool jacobian_adjust_transform, class M >
int test_gradients (const M &model, std::vector< double > &params_r, std::vector< int > &params_i, double epsilon=1e-6, double error=1e-6, std::ostream &o=std::cout, std::ostream *msgs=0)
 Test the log_prob_grad() function's ability to produce accurate gradients using finite differences.
 
template<bool propto, bool jacobian_adjust_transform, class M >
double grad_hess_log_prob (const M &model, std::vector< double > &params_r, std::vector< int > &params_i, std::vector< double > &gradient, std::vector< double > &hessian, std::ostream *msgs=0)
 Evaluate the log-probability, its gradient, and its Hessian at params_r.
 
template<class M >
void gradient (const M &model, const Eigen::Matrix< double, Eigen::Dynamic, 1 > &x, double &f, Eigen::Matrix< double, Eigen::Dynamic, 1 > &grad_f, std::ostream *msgs=0)
 
template<class M >
void hessian (const M &model, const Eigen::Matrix< double, Eigen::Dynamic, 1 > &x, double &f, Eigen::Matrix< double, Eigen::Dynamic, 1 > &grad_f, Eigen::Matrix< double, Eigen::Dynamic, Eigen::Dynamic > &hess_f, std::ostream *msgs=0)
 
template<class M >
void gradient_dot_vector (const M &model, const Eigen::Matrix< double, Eigen::Dynamic, 1 > &x, const Eigen::Matrix< double, Eigen::Dynamic, 1 > &v, double &f, double &grad_f_dot_v, std::ostream *msgs=0)
 
template<class M >
void hessian_times_vector (const M &model, const Eigen::Matrix< double, Eigen::Dynamic, 1 > &x, const Eigen::Matrix< double, Eigen::Dynamic, 1 > &v, double &f, Eigen::Matrix< double, Eigen::Dynamic, 1 > &hess_f_dot_v, std::ostream *msgs=0)
 
template<class M >
void grad_tr_mat_times_hessian (const M &model, const Eigen::Matrix< double, Eigen::Dynamic, 1 > &x, const Eigen::Matrix< double, Eigen::Dynamic, Eigen::Dynamic > &X, Eigen::Matrix< double, Eigen::Dynamic, 1 > &grad_tr_X_hess_f, std::ostream *msgs=0)
 
+

Detailed Description

+

For compiling models.

+

Function Documentation

+ +
+
+
+template<bool propto, bool jacobian_adjust_transform, class M >
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
void stan::model::finite_diff_grad (const M & model,
std::vector< double > & params_r,
std::vector< int > & params_i,
std::vector< double > & grad,
double epsilon = 1e-6,
std::ostream * msgs = 0 
)
+
+ +

Compute the gradient using finite differences for the specified parameters, writing the result into the specified gradient, using the specified perturbation.

+
Template Parameters
+ + + + +
proptoTrue if calculation is up to proportion (double-only terms dropped).
jacobian_adjust_transformTrue if the log absolute Jacobian determinant of inverse parameter transforms is added to the log probability.
MClass of model.
+
+
+
Parameters
+ + + + + + + +
modelModel.
params_rReal-valued parameters.
params_iInteger-valued parameters.
[out]gradVector into which gradient is written.
epsilon
[in,out]msgs
+
+
+ +

Definition at line 214 of file util.hpp.

+ +
+
+ +
+
+
+template<bool propto, bool jacobian_adjust_transform, class M >
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
double stan::model::grad_hess_log_prob (const M & model,
std::vector< double > & params_r,
std::vector< int > & params_i,
std::vector< double > & gradient,
std::vector< double > & hessian,
std::ostream * msgs = 0 
)
+
+ +

Evaluate the log-probability, its gradient, and its Hessian at params_r.

+

This default version computes the Hessian numerically by finite-differencing the gradient, at a cost of O(params_r.size()^2).

+
Template Parameters
+ + + + +
proptoTrue if calculation is up to proportion (double-only terms dropped).
jacobian_adjust_transformTrue if the log absolute Jacobian determinant of inverse parameter transforms is added to the log probability.
MClass of model.
+
+
+
Parameters
+ + + + + + + +
modelModel.
params_rReal-valued parameter vector.
params_iInteger-valued parameter vector.
gradientVector to write gradient to.
hessianVector to write gradient to. hessian[i*D + j] gives the element at the ith row and jth column of the Hessian (where D=params_r.size()).
msgsStream to which print statements in Stan programs are written, default is 0
+
+
+ +

Definition at line 338 of file util.hpp.

+ +
+
+ +
+
+
+template<class M >
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
void stan::model::grad_tr_mat_times_hessian (const M & model,
const Eigen::Matrix< double, Eigen::Dynamic, 1 > & x,
const Eigen::Matrix< double, Eigen::Dynamic, Eigen::Dynamic > & X,
Eigen::Matrix< double, Eigen::Dynamic, 1 > & grad_tr_X_hess_f,
std::ostream * msgs = 0 
)
+
+ +

Definition at line 449 of file util.hpp.

+ +
+
+ +
+
+
+template<class M >
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
void stan::model::gradient (const M & model,
const Eigen::Matrix< double, Eigen::Dynamic, 1 > & x,
double & f,
Eigen::Matrix< double, Eigen::Dynamic, 1 > & grad_f,
std::ostream * msgs = 0 
)
+
+ +

Definition at line 402 of file util.hpp.

+ +
+
+ +
+
+
+template<class M >
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
void stan::model::gradient_dot_vector (const M & model,
const Eigen::Matrix< double, Eigen::Dynamic, 1 > & x,
const Eigen::Matrix< double, Eigen::Dynamic, 1 > & v,
double & f,
double & grad_f_dot_v,
std::ostream * msgs = 0 
)
+
+ +

Definition at line 425 of file util.hpp.

+ +
+
+ +
+
+
+template<class M >
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
void stan::model::hessian (const M & model,
const Eigen::Matrix< double, Eigen::Dynamic, 1 > & x,
double & f,
Eigen::Matrix< double, Eigen::Dynamic, 1 > & grad_f,
Eigen::Matrix< double, Eigen::Dynamic, Eigen::Dynamic > & hess_f,
std::ostream * msgs = 0 
)
+
+ +

Definition at line 413 of file util.hpp.

+ +
+
+ +
+
+
+template<class M >
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
void stan::model::hessian_times_vector (const M & model,
const Eigen::Matrix< double, Eigen::Dynamic, 1 > & x,
const Eigen::Matrix< double, Eigen::Dynamic, 1 > & v,
double & f,
Eigen::Matrix< double, Eigen::Dynamic, 1 > & hess_f_dot_v,
std::ostream * msgs = 0 
)
+
+ +

Definition at line 437 of file util.hpp.

+ +
+
+ +
+
+
+template<bool propto, bool jacobian_adjust_transform, class M >
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
double stan::model::log_prob_grad (const M & model,
std::vector< double > & params_r,
std::vector< int > & params_i,
std::vector< double > & gradient,
std::ostream * msgs = 0 
)
+
+ +

Compute the gradient using reverse-mode automatic differentiation, writing the result into the specified gradient, using the specified perturbation.

+
Template Parameters
+ + + + +
proptoTrue if calculation is up to proportion (double-only terms dropped).
jacobian_adjust_transformTrue if the log absolute Jacobian determinant of inverse parameter transforms is added to the log probability.
MClass of model.
+
+
+
Parameters
+ + + + + + +
[in]modelModel.
[in]params_rReal-valued parameters.
[in]params_iInteger-valued parameters.
[out]gradientVector into which gradient is written.
[in,out]msgs
+
+
+ +

Definition at line 83 of file util.hpp.

+ +
+
+ +
+
+
+template<bool propto, bool jacobian_adjust_transform, class M >
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
double stan::model::log_prob_grad (const M & model,
Eigen::VectorXd & params_r,
Eigen::VectorXd & gradient,
std::ostream * msgs = 0 
)
+
+ +

Compute the gradient using reverse-mode automatic differentiation, writing the result into the specified gradient, using the specified perturbation.

+
Template Parameters
+ + + + +
proptoTrue if calculation is up to proportion (double-only terms dropped).
jacobian_adjust_transformTrue if the log absolute Jacobian determinant of inverse parameter transforms is added to the log probability.
MClass of model.
+
+
+
Parameters
+ + + + + +
[in]modelModel.
[in]params_rReal-valued parameters.
[out]gradientVector into which gradient is written.
[in,out]msgs
+
+
+ +

Definition at line 170 of file util.hpp.

+ +
+
+ +
+
+
+template<bool jacobian_adjust_transform, class M >
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
double stan::model::log_prob_propto (const M & model,
std::vector< double > & params_r,
std::vector< int > & params_i,
std::ostream * msgs = 0 
)
+
+ +

Helper function to calculate log probability for double scalars up to a proportion.

+

This implementation wraps the double values in stan::agrad::var and calls the model's log_prob() function with propto=true and the specified parameter for applying the Jacobian adjustment for transformed parameters.

+
Template Parameters
+ + + + +
proptoTrue if calculation is up to proportion (double-only terms dropped).
jacobian_adjust_transformTrue if the log absolute Jacobian determinant of inverse parameter transforms is added to the log probability.
MClass of model.
+
+
+
Parameters
+ + + + + +
[in]modelModel.
[in]params_rReal-valued parameters.
[in]params_iInteger-valued parameters.
[in,out]msgs
+
+
+ +

Definition at line 41 of file util.hpp.

+ +
+
+ +
+
+
+template<bool jacobian_adjust_transform, class M >
+ + + + + + + + + + + + + + + + + + + + + + + + +
double stan::model::log_prob_propto (const M & model,
Eigen::VectorXd & params_r,
std::ostream * msgs = 0 
)
+
+ +

Helper function to calculate log probability for double scalars up to a proportion.

+

This implementation wraps the double values in stan::agrad::var and calls the model's log_prob() function with propto=true and the specified parameter for applying the Jacobian adjustment for transformed parameters.

+
Template Parameters
+ + + + +
proptoTrue if calculation is up to proportion (double-only terms dropped).
jacobian_adjust_transformTrue if the log absolute Jacobian determinant of inverse parameter transforms is added to the log probability.
MClass of model.
+
+
+
Parameters
+ + + + +
[in]modelModel.
[in]params_rReal-valued parameters.
[in,out]msgs
+
+
+ +

Definition at line 131 of file util.hpp.

+ +
+
+ +
+
+
+template<bool propto, bool jacobian_adjust_transform, class M >
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
int stan::model::test_gradients (const M & model,
std::vector< double > & params_r,
std::vector< int > & params_i,
double epsilon = 1e-6,
double error = 1e-6,
std::ostream & o = std::cout,
std::ostream * msgs = 0 
)
+
+ +

Test the log_prob_grad() function's ability to produce accurate gradients using finite differences.

+

This shouldn't be necessary when using autodiff, but is useful for finding bugs in hand-written code (or agrad).

+
Template Parameters
+ + + + +
proptoTrue if calculation is up to proportion (double-only terms dropped).
jacobian_adjust_transformTrue if the log absolute Jacobian determinant of inverse parameter transforms is added to the log probability.
MClass of model.
+
+
+
Parameters
+ + + + + + + + +
modelModel.
params_rReal-valued parameter vector.
params_iInteger-valued parameter vector.
epsilonReal-valued scalar saying how much to perturb. Defaults to 1e-6.
errorReal-valued scalar saying how much error to allow. Defaults to 1e-6.
oOutput stream for messages. Defaults to std::cout.
msgsStream to which Stan programs write. Defaults to 0.
+
+
+
Returns
number of failed gradient comparisons versus allowed error, so 0 if all gradients pass
+ +

Definition at line 265 of file util.hpp.

+ +
+
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/namespacestan_1_1optimization.html b/doc/api/html/namespacestan_1_1optimization.html new file mode 100644 index 00000000000..06b6344166e --- /dev/null +++ b/doc/api/html/namespacestan_1_1optimization.html @@ -0,0 +1,255 @@ + + + + + +Stan: stan::optimization Namespace Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::optimization Namespace Reference
+
+
+ + + + + + + + + + +

+Classes

class  BFGSMinimizer
 
class  ModelAdaptor
 
class  BFGSLineSearch
 
class  NesterovGradient
 
+ + + + + +

+Typedefs

typedef Eigen::Matrix< double,
+Eigen::Dynamic, Eigen::Dynamic > 
matrix_d
 
typedef Eigen::Matrix< double,
+Eigen::Dynamic, 1 > 
vector_d
 
+ + + + + + + +

+Functions

template<typename M >
double lp_no_jacobian (const M &model, std::vector< double > &params_r, std::vector< int > &params_i, std::ostream *o=0)
 
template<typename M >
double newton_step (M &model, std::vector< double > &params_r, std::vector< int > &params_i, std::ostream *output_stream=0)
 
+

Typedef Documentation

+ +
+
+ + + + +
typedef Eigen::Matrix<double, Eigen::Dynamic, Eigen::Dynamic> stan::optimization::matrix_d
+
+ +

Definition at line 14 of file newton.hpp.

+ +
+
+ +
+
+ + + + +
typedef Eigen::Matrix<double, Eigen::Dynamic, 1> stan::optimization::vector_d
+
+ +

Definition at line 15 of file newton.hpp.

+ +
+
+

Function Documentation

+ +
+
+
+template<typename M >
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
double stan::optimization::lp_no_jacobian (const M & model,
std::vector< double > & params_r,
std::vector< int > & params_i,
std::ostream * o = 0 
)
+
+ +

Definition at line 459 of file bfgs.hpp.

+ +
+
+ +
+
+
+template<typename M >
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
double stan::optimization::newton_step (M & model,
std::vector< double > & params_r,
std::vector< int > & params_i,
std::ostream * output_stream = 0 
)
+
+ +

Definition at line 34 of file newton.hpp.

+ +
+
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/namespacestan_1_1prob.html b/doc/api/html/namespacestan_1_1prob.html new file mode 100644 index 00000000000..1c848c4e070 --- /dev/null +++ b/doc/api/html/namespacestan_1_1prob.html @@ -0,0 +1,13569 @@ + + + + + +Stan: stan::prob Namespace Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::prob Namespace Reference
+
+
+ +

Templated probability distributions. +More...

+ + + + + + + + + +

+Classes

struct  include_summand
 Template metaprogram to calculate whether a summand needs to be included in a proportional (log) probability calculation. More...
 
class  welford_covar_estimator
 
class  welford_var_estimator
 
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Functions

template<bool propto, typename T_y , typename T_loc , typename T_scale >
boost::enable_if_c
+< contains_fvar< T_y, T_loc,
+T_scale >::value, typename
+return_type< T_y, T_loc,
+T_scale >::type >::type 
normal_log (const T_y &y, const T_loc &mu, const T_scale &sigma)
 The log of the normal density for the specified scalar(s) given the specified mean(s) and deviation(s).
 
template<typename T >
void autocorrelation (const std::vector< T > &y, std::vector< T > &ac, Eigen::FFT< T > &fft)
 Write autocorrelation estimates for every lag for the specified input sequence into the specified result using the specified FFT engine.
 
template<typename T >
void autocorrelation (const std::vector< T > &y, std::vector< T > &ac)
 Write autocorrelation estimates for every lag for the specified input sequence into the specified result.
 
template<typename T >
void autocovariance (const std::vector< T > &y, std::vector< T > &acov, Eigen::FFT< T > &fft)
 Write autocovariance estimates for every lag for the specified input sequence into the specified result using the specified FFT engine.
 
template<typename T >
void autocovariance (const std::vector< T > &y, std::vector< T > &acov)
 Write autocovariance estimates for every lag for the specified input sequence into the specified result.
 
template<bool propto, typename T_prob , typename T_prior_sample_size >
boost::math::tools::promote_args
+< T_prob, T_prior_sample_size >
+::type 
dirichlet_log (const Eigen::Matrix< T_prob, Eigen::Dynamic, 1 > &theta, const Eigen::Matrix< T_prior_sample_size, Eigen::Dynamic, 1 > &alpha)
 The log of the Dirichlet density for the given theta and a vector of prior sample sizes, alpha.
 
template<typename T_prob , typename T_prior_sample_size >
boost::math::tools::promote_args
+< T_prob, T_prior_sample_size >
+::type 
dirichlet_log (const Eigen::Matrix< T_prob, Eigen::Dynamic, 1 > &theta, const Eigen::Matrix< T_prior_sample_size, Eigen::Dynamic, 1 > &alpha)
 
template<class RNG >
Eigen::VectorXd dirichlet_rng (const Eigen::Matrix< double, Eigen::Dynamic, 1 > &alpha, RNG &rng)
 
template<bool propto, typename T_y , typename T_F , typename T_G , typename T_V , typename T_W , typename T_m0 , typename T_C0 >
return_type< T_y, typename
+return_type< T_F, T_G, T_V,
+T_W, T_m0, T_C0 >::type >
+::type 
gaussian_dlm_obs_log (const Eigen::Matrix< T_y, Eigen::Dynamic, Eigen::Dynamic > &y, const Eigen::Matrix< T_F, Eigen::Dynamic, Eigen::Dynamic > &F, const Eigen::Matrix< T_G, Eigen::Dynamic, Eigen::Dynamic > &G, const Eigen::Matrix< T_V, Eigen::Dynamic, Eigen::Dynamic > &V, const Eigen::Matrix< T_W, Eigen::Dynamic, Eigen::Dynamic > &W, const Eigen::Matrix< T_m0, Eigen::Dynamic, 1 > &m0, const Eigen::Matrix< T_C0, Eigen::Dynamic, Eigen::Dynamic > &C0)
 The log of a Gaussian dynamic linear model (GDLM).
 
template<typename T_y , typename T_F , typename T_G , typename T_V , typename T_W , typename T_m0 , typename T_C0 >
return_type< T_y, typename
+return_type< T_F, T_G, T_V,
+T_W, T_m0, T_C0 >::type >
+::type 
gaussian_dlm_obs_log (const Eigen::Matrix< T_y, Eigen::Dynamic, Eigen::Dynamic > &y, const Eigen::Matrix< T_F, Eigen::Dynamic, Eigen::Dynamic > &F, const Eigen::Matrix< T_G, Eigen::Dynamic, Eigen::Dynamic > &G, const Eigen::Matrix< T_V, Eigen::Dynamic, Eigen::Dynamic > &V, const Eigen::Matrix< T_W, Eigen::Dynamic, Eigen::Dynamic > &W, const Eigen::Matrix< T_m0, Eigen::Dynamic, 1 > &m0, const Eigen::Matrix< T_C0, Eigen::Dynamic, Eigen::Dynamic > &C0)
 
template<bool propto, typename T_y , typename T_F , typename T_G , typename T_V , typename T_W , typename T_m0 , typename T_C0 >
return_type< T_y, typename
+return_type< T_F, T_G, T_V,
+T_W, T_m0, T_C0 >::type >
+::type 
gaussian_dlm_obs_log (const Eigen::Matrix< T_y, Eigen::Dynamic, Eigen::Dynamic > &y, const Eigen::Matrix< T_F, Eigen::Dynamic, Eigen::Dynamic > &F, const Eigen::Matrix< T_G, Eigen::Dynamic, Eigen::Dynamic > &G, const Eigen::Matrix< T_V, Eigen::Dynamic, 1 > &V, const Eigen::Matrix< T_W, Eigen::Dynamic, Eigen::Dynamic > &W, const Eigen::Matrix< T_m0, Eigen::Dynamic, 1 > &m0, const Eigen::Matrix< T_C0, Eigen::Dynamic, Eigen::Dynamic > &C0)
 The log of a Gaussian dynamic linear model (GDLM) with uncorrelated observation disturbances.
 
template<typename T_y , typename T_F , typename T_G , typename T_V , typename T_W , typename T_m0 , typename T_C0 >
return_type< T_y, typename
+return_type< T_F, T_G, T_V,
+T_W, T_m0, T_C0 >::type >
+::type 
gaussian_dlm_obs_log (const Eigen::Matrix< T_y, Eigen::Dynamic, Eigen::Dynamic > &y, const Eigen::Matrix< T_F, Eigen::Dynamic, Eigen::Dynamic > &F, const Eigen::Matrix< T_G, Eigen::Dynamic, Eigen::Dynamic > &G, const Eigen::Matrix< T_V, Eigen::Dynamic, 1 > &V, const Eigen::Matrix< T_W, Eigen::Dynamic, Eigen::Dynamic > &W, const Eigen::Matrix< T_m0, Eigen::Dynamic, 1 > &m0, const Eigen::Matrix< T_C0, Eigen::Dynamic, Eigen::Dynamic > &C0)
 
template<bool propto, typename T_y , typename T_dof , typename T_scale >
boost::math::tools::promote_args
+< T_y, T_dof, T_scale >::type 
inv_wishart_log (const Eigen::Matrix< T_y, Eigen::Dynamic, Eigen::Dynamic > &W, const T_dof &nu, const Eigen::Matrix< T_scale, Eigen::Dynamic, Eigen::Dynamic > &S)
 The log of the Inverse-Wishart density for the given W, degrees of freedom, and scale matrix.
 
template<typename T_y , typename T_dof , typename T_scale >
boost::math::tools::promote_args
+< T_y, T_dof, T_scale >::type 
inv_wishart_log (const Eigen::Matrix< T_y, Eigen::Dynamic, Eigen::Dynamic > &W, const T_dof &nu, const Eigen::Matrix< T_scale, Eigen::Dynamic, Eigen::Dynamic > &S)
 
template<class RNG >
Eigen::Matrix< double,
+Eigen::Dynamic, Eigen::Dynamic > 
inv_wishart_rng (const double nu, const Eigen::Matrix< double, Eigen::Dynamic, Eigen::Dynamic > &S, RNG &rng)
 
template<typename T_shape >
T_shape do_lkj_constant (const T_shape &eta, const unsigned int &K)
 
template<bool propto, typename T_covar , typename T_shape >
boost::math::tools::promote_args
+< T_covar, T_shape >::type 
lkj_corr_cholesky_log (const Eigen::Matrix< T_covar, Eigen::Dynamic, Eigen::Dynamic > &L, const T_shape &eta)
 
template<typename T_covar , typename T_shape >
boost::math::tools::promote_args
+< T_covar, T_shape >::type 
lkj_corr_cholesky_log (const Eigen::Matrix< T_covar, Eigen::Dynamic, Eigen::Dynamic > &L, const T_shape &eta)
 
template<bool propto, typename T_y , typename T_shape >
boost::math::tools::promote_args
+< T_y, T_shape >::type 
lkj_corr_log (const Eigen::Matrix< T_y, Eigen::Dynamic, Eigen::Dynamic > &y, const T_shape &eta)
 
template<typename T_y , typename T_shape >
boost::math::tools::promote_args
+< T_y, T_shape >::type 
lkj_corr_log (const Eigen::Matrix< T_y, Eigen::Dynamic, Eigen::Dynamic > &y, const T_shape &eta)
 
template<class RNG >
Eigen::MatrixXd lkj_corr_cholesky_rng (const size_t K, const double eta, RNG &rng)
 
template<class RNG >
Eigen::MatrixXd lkj_corr_rng (const size_t K, const double eta, RNG &rng)
 
template<bool propto, typename T_y , typename T_loc , typename T_scale , typename T_shape >
boost::math::tools::promote_args
+< T_y, T_loc, T_scale, T_shape >
+::type 
lkj_cov_log (const Eigen::Matrix< T_y, Eigen::Dynamic, Eigen::Dynamic > &y, const Eigen::Matrix< T_loc, Eigen::Dynamic, 1 > &mu, const Eigen::Matrix< T_scale, Eigen::Dynamic, 1 > &sigma, const T_shape &eta)
 
template<typename T_y , typename T_loc , typename T_scale , typename T_shape >
boost::math::tools::promote_args
+< T_y, T_loc, T_scale, T_shape >
+::type 
lkj_cov_log (const Eigen::Matrix< T_y, Eigen::Dynamic, Eigen::Dynamic > &y, const Eigen::Matrix< T_loc, Eigen::Dynamic, 1 > &mu, const Eigen::Matrix< T_scale, Eigen::Dynamic, 1 > &sigma, const T_shape &eta)
 
template<bool propto, typename T_y , typename T_loc , typename T_scale , typename T_shape >
boost::math::tools::promote_args
+< T_y, T_loc, T_scale, T_shape >
+::type 
lkj_cov_log (const Eigen::Matrix< T_y, Eigen::Dynamic, Eigen::Dynamic > &y, const T_loc &mu, const T_scale &sigma, const T_shape &eta)
 
template<typename T_y , typename T_loc , typename T_scale , typename T_shape >
boost::math::tools::promote_args
+< T_y, T_loc, T_scale, T_shape >
+::type 
lkj_cov_log (const Eigen::Matrix< T_y, Eigen::Dynamic, Eigen::Dynamic > &y, const T_loc &mu, const T_scale &sigma, const T_shape &eta)
 
template<bool propto, typename T_y , typename T_Mu , typename T_Sigma , typename T_D >
boost::math::tools::promote_args
+< T_y, T_Mu, T_Sigma, T_D >
+::type 
matrix_normal_prec_log (const Eigen::Matrix< T_y, Eigen::Dynamic, Eigen::Dynamic > &y, const Eigen::Matrix< T_Mu, Eigen::Dynamic, Eigen::Dynamic > &Mu, const Eigen::Matrix< T_Sigma, Eigen::Dynamic, Eigen::Dynamic > &Sigma, const Eigen::Matrix< T_D, Eigen::Dynamic, Eigen::Dynamic > &D)
 The log of the matrix normal density for the given y, mu, Sigma and D where Sigma and D are given as precision matrices, not covariance matrices.
 
template<typename T_y , typename T_Mu , typename T_Sigma , typename T_D >
boost::math::tools::promote_args
+< T_y, T_Mu, T_Sigma, T_D >
+::type 
matrix_normal_prec_log (const Eigen::Matrix< T_y, Eigen::Dynamic, Eigen::Dynamic > &y, const Eigen::Matrix< T_Mu, Eigen::Dynamic, Eigen::Dynamic > &Mu, const Eigen::Matrix< T_Sigma, Eigen::Dynamic, Eigen::Dynamic > &Sigma, const Eigen::Matrix< T_D, Eigen::Dynamic, Eigen::Dynamic > &D)
 
template<bool propto, typename T_y , typename T_covar , typename T_w >
boost::math::tools::promote_args
+< T_y, T_w, T_covar >::type 
multi_gp_log (const Eigen::Matrix< T_y, Eigen::Dynamic, Eigen::Dynamic > &y, const Eigen::Matrix< T_covar, Eigen::Dynamic, Eigen::Dynamic > &Sigma, const Eigen::Matrix< T_w, Eigen::Dynamic, 1 > &w)
 The log of a multivariate Gaussian Process for the given y, Sigma, and w.
 
template<typename T_y , typename T_loc , typename T_covar >
boost::math::tools::promote_args
+< T_y, T_loc, T_covar >::type 
multi_gp_log (const Eigen::Matrix< T_y, Eigen::Dynamic, Eigen::Dynamic > &y, const Eigen::Matrix< T_covar, Eigen::Dynamic, Eigen::Dynamic > &Sigma, const Eigen::Matrix< T_loc, Eigen::Dynamic, 1 > &w)
 
template<bool propto, typename T_y , typename T_loc , typename T_covar >
boost::math::tools::promote_args
+< T_y, T_loc, T_covar >::type 
multi_normal_log (const Eigen::Matrix< T_y, Eigen::Dynamic, 1 > &y, const Eigen::Matrix< T_loc, Eigen::Dynamic, 1 > &mu, const Eigen::Matrix< T_covar, Eigen::Dynamic, Eigen::Dynamic > &Sigma)
 
template<typename T_y , typename T_loc , typename T_covar >
boost::math::tools::promote_args
+< T_y, T_loc, T_covar >::type 
multi_normal_log (const Eigen::Matrix< T_y, Eigen::Dynamic, 1 > &y, const Eigen::Matrix< T_loc, Eigen::Dynamic, 1 > &mu, const Eigen::Matrix< T_covar, Eigen::Dynamic, Eigen::Dynamic > &Sigma)
 
template<bool propto, typename T_y , typename T_loc , typename T_covar >
boost::math::tools::promote_args
+< T_y, T_loc, T_covar >::type 
multi_normal_log (const Eigen::Matrix< T_y, Eigen::Dynamic, Eigen::Dynamic > &y, const Eigen::Matrix< T_loc, Eigen::Dynamic, 1 > &mu, const Eigen::Matrix< T_covar, Eigen::Dynamic, Eigen::Dynamic > &Sigma)
 
template<typename T_y , typename T_loc , typename T_covar >
boost::math::tools::promote_args
+< T_y, T_loc, T_covar >::type 
multi_normal_log (const Eigen::Matrix< T_y, Eigen::Dynamic, Eigen::Dynamic > &y, const Eigen::Matrix< T_loc, Eigen::Dynamic, 1 > &mu, const Eigen::Matrix< T_covar, Eigen::Dynamic, Eigen::Dynamic > &Sigma)
 
template<class RNG >
Eigen::VectorXd multi_normal_rng (const Eigen::Matrix< double, Eigen::Dynamic, 1 > &mu, const Eigen::Matrix< double, Eigen::Dynamic, Eigen::Dynamic > &S, RNG &rng)
 
template<bool propto, typename T_y , typename T_loc , typename T_covar >
boost::math::tools::promote_args
+< T_y, T_loc, T_covar >::type 
multi_normal_cholesky_log (const Eigen::Matrix< T_y, Eigen::Dynamic, 1 > &y, const Eigen::Matrix< T_loc, Eigen::Dynamic, 1 > &mu, const Eigen::Matrix< T_covar, Eigen::Dynamic, Eigen::Dynamic > &L)
 The log of the multivariate normal density for the given y, mu, and a Cholesky factor L of the variance matrix.
 
template<typename T_y , typename T_loc , typename T_covar >
boost::math::tools::promote_args
+< T_y, T_loc, T_covar >::type 
multi_normal_cholesky_log (const Eigen::Matrix< T_y, Eigen::Dynamic, 1 > &y, const Eigen::Matrix< T_loc, Eigen::Dynamic, 1 > &mu, const Eigen::Matrix< T_covar, Eigen::Dynamic, Eigen::Dynamic > &L)
 
template<bool propto, typename T_y , typename T_loc , typename T_covar >
boost::math::tools::promote_args
+< T_y, T_loc, T_covar >::type 
multi_normal_cholesky_log (const Eigen::Matrix< T_y, Eigen::Dynamic, Eigen::Dynamic > &y, const Eigen::Matrix< T_loc, Eigen::Dynamic, 1 > &mu, const Eigen::Matrix< T_covar, Eigen::Dynamic, Eigen::Dynamic > &L)
 y can have multiple rows (observations) and columns (on variables)
 
template<typename T_y , typename T_loc , typename T_covar >
boost::math::tools::promote_args
+< T_y, T_loc, T_covar >::type 
multi_normal_cholesky_log (const Eigen::Matrix< T_y, Eigen::Dynamic, Eigen::Dynamic > &y, const Eigen::Matrix< T_loc, Eigen::Dynamic, 1 > &mu, const Eigen::Matrix< T_covar, Eigen::Dynamic, Eigen::Dynamic > &L)
 
template<bool propto, typename T_y , typename T_loc , typename T_covar >
boost::math::tools::promote_args
+< T_y, T_loc, T_covar >::type 
multi_normal_prec_log (const Eigen::Matrix< T_y, Eigen::Dynamic, 1 > &y, const Eigen::Matrix< T_loc, Eigen::Dynamic, 1 > &mu, const Eigen::Matrix< T_covar, Eigen::Dynamic, Eigen::Dynamic > &Sigma)
 
template<typename T_y , typename T_loc , typename T_covar >
boost::math::tools::promote_args
+< T_y, T_loc, T_covar >::type 
multi_normal_prec_log (const Eigen::Matrix< T_y, Eigen::Dynamic, 1 > &y, const Eigen::Matrix< T_loc, Eigen::Dynamic, 1 > &mu, const Eigen::Matrix< T_covar, Eigen::Dynamic, Eigen::Dynamic > &Sigma)
 
template<bool propto, typename T_y , typename T_loc , typename T_covar >
boost::math::tools::promote_args
+< T_y, T_loc, T_covar >::type 
multi_normal_prec_log (const Eigen::Matrix< T_y, Eigen::Dynamic, Eigen::Dynamic > &y, const Eigen::Matrix< T_loc, Eigen::Dynamic, 1 > &mu, const Eigen::Matrix< T_covar, Eigen::Dynamic, Eigen::Dynamic > &Sigma)
 y can have multiple rows (observations) and columns (on variables)
 
template<typename T_y , typename T_loc , typename T_covar >
boost::math::tools::promote_args
+< T_y, T_loc, T_covar >::type 
multi_normal_prec_log (const Eigen::Matrix< T_y, Eigen::Dynamic, Eigen::Dynamic > &y, const Eigen::Matrix< T_loc, Eigen::Dynamic, 1 > &mu, const Eigen::Matrix< T_covar, Eigen::Dynamic, Eigen::Dynamic > &Sigma)
 
template<bool propto, typename T_y , typename T_dof , typename T_loc , typename T_scale >
boost::math::tools::promote_args
+< T_y, T_dof, T_loc, T_scale >
+::type 
multi_student_t_log (const Eigen::Matrix< T_y, Eigen::Dynamic, 1 > &y, const T_dof &nu, const Eigen::Matrix< T_loc, Eigen::Dynamic, 1 > &mu, const Eigen::Matrix< T_scale, Eigen::Dynamic, Eigen::Dynamic > &Sigma)
 Return the log of the multivariate Student t distribution at the specified arguments.
 
template<typename T_y , typename T_dof , typename T_loc , typename T_scale >
boost::math::tools::promote_args
+< T_y, T_dof, T_loc, T_scale >
+::type 
multi_student_t_log (const Eigen::Matrix< T_y, Eigen::Dynamic, 1 > &y, const T_dof &nu, const Eigen::Matrix< T_loc, Eigen::Dynamic, 1 > &mu, const Eigen::Matrix< T_scale, Eigen::Dynamic, Eigen::Dynamic > &Sigma)
 
template<class RNG >
Eigen::VectorXd multi_student_t_rng (const double nu, const Eigen::Matrix< double, Eigen::Dynamic, 1 > &mu, const Eigen::Matrix< double, Eigen::Dynamic, Eigen::Dynamic > &s, RNG &rng)
 
template<bool propto, typename T_y , typename T_dof , typename T_scale >
boost::math::tools::promote_args
+< T_y, T_dof, T_scale >::type 
wishart_log (const Eigen::Matrix< T_y, Eigen::Dynamic, Eigen::Dynamic > &W, const T_dof &nu, const Eigen::Matrix< T_scale, Eigen::Dynamic, Eigen::Dynamic > &S)
 The log of the Wishart density for the given W, degrees of freedom, and scale matrix.
 
template<typename T_y , typename T_dof , typename T_scale >
boost::math::tools::promote_args
+< T_y, T_dof, T_scale >::type 
wishart_log (const Eigen::Matrix< T_y, Eigen::Dynamic, Eigen::Dynamic > &W, const T_dof &nu, const Eigen::Matrix< T_scale, Eigen::Dynamic, Eigen::Dynamic > &S)
 
template<class RNG >
Eigen::Matrix< double,
+Eigen::Dynamic, Eigen::Dynamic > 
wishart_rng (const double nu, const Eigen::Matrix< double, Eigen::Dynamic, Eigen::Dynamic > &S, RNG &rng)
 
template<bool propto, typename T_prob >
boost::math::tools::promote_args
+< T_prob >::type 
categorical_log (int n, const Eigen::Matrix< T_prob, Eigen::Dynamic, 1 > &theta)
 
template<typename T_prob >
boost::math::tools::promote_args
+< T_prob >::type 
categorical_log (const typename Eigen::Matrix< T_prob, Eigen::Dynamic, 1 >::size_type n, const Eigen::Matrix< T_prob, Eigen::Dynamic, 1 > &theta)
 
template<bool propto, typename T_prob >
boost::math::tools::promote_args
+< T_prob >::type 
categorical_log (const std::vector< int > &ns, const Eigen::Matrix< T_prob, Eigen::Dynamic, 1 > &theta)
 
template<typename T_prob >
boost::math::tools::promote_args
+< T_prob >::type 
categorical_log (const std::vector< int > &ns, const Eigen::Matrix< T_prob, Eigen::Dynamic, 1 > &theta)
 
template<class RNG >
int categorical_rng (const Eigen::Matrix< double, Eigen::Dynamic, 1 > &theta, RNG &rng)
 
template<bool propto, typename T_prob >
boost::math::tools::promote_args
+< T_prob >::type 
categorical_logit_log (int n, const Eigen::Matrix< T_prob, Eigen::Dynamic, 1 > &beta)
 
template<typename T_prob >
boost::math::tools::promote_args
+< T_prob >::type 
categorical_logit_log (int n, const Eigen::Matrix< T_prob, Eigen::Dynamic, 1 > &beta)
 
template<bool propto, typename T_prob >
boost::math::tools::promote_args
+< T_prob >::type 
categorical_logit_log (const std::vector< int > &ns, const Eigen::Matrix< T_prob, Eigen::Dynamic, 1 > &beta)
 
template<typename T_prob >
boost::math::tools::promote_args
+< T_prob >::type 
categorical_logit_log (const std::vector< int > &ns, const Eigen::Matrix< T_prob, Eigen::Dynamic, 1 > &beta)
 
template<bool propto, typename T_prob >
boost::math::tools::promote_args
+< T_prob >::type 
multinomial_log (const std::vector< int > &ns, const Eigen::Matrix< T_prob, Eigen::Dynamic, 1 > &theta)
 
template<typename T_prob >
boost::math::tools::promote_args
+< T_prob >::type 
multinomial_log (const std::vector< int > &ns, const Eigen::Matrix< T_prob, Eigen::Dynamic, 1 > &theta)
 
template<class RNG >
std::vector< int > multinomial_rng (const Eigen::Matrix< double, Eigen::Dynamic, 1 > &theta, const int N, RNG &rng)
 
template<bool propto, typename T_y , typename T_scale_succ , typename T_scale_fail >
return_type< T_y, T_scale_succ,
+T_scale_fail >::type 
beta_log (const T_y &y, const T_scale_succ &alpha, const T_scale_fail &beta)
 The log of the beta density for the specified scalar(s) given the specified sample size(s).
 
template<typename T_y , typename T_scale_succ , typename T_scale_fail >
return_type< T_y, T_scale_succ,
+T_scale_fail >::type 
beta_log (const T_y &y, const T_scale_succ &alpha, const T_scale_fail &beta)
 
template<typename T_y , typename T_scale_succ , typename T_scale_fail >
return_type< T_y, T_scale_succ,
+T_scale_fail >::type 
beta_cdf (const T_y &y, const T_scale_succ &alpha, const T_scale_fail &beta)
 Calculates the beta cumulative distribution function for the given variate and scale variables.
 
template<typename T_y , typename T_scale_succ , typename T_scale_fail >
return_type< T_y, T_scale_succ,
+T_scale_fail >::type 
beta_cdf_log (const T_y &y, const T_scale_succ &alpha, const T_scale_fail &beta)
 
template<typename T_y , typename T_scale_succ , typename T_scale_fail >
return_type< T_y, T_scale_succ,
+T_scale_fail >::type 
beta_ccdf_log (const T_y &y, const T_scale_succ &alpha, const T_scale_fail &beta)
 
template<class RNG >
double beta_rng (const double alpha, const double beta, RNG &rng)
 
template<bool propto, typename T_y , typename T_loc , typename T_scale >
return_type< T_y, T_loc,
+T_scale >::type 
cauchy_log (const T_y &y, const T_loc &mu, const T_scale &sigma)
 The log of the Cauchy density for the specified scalar(s) given the specified location parameter(s) and scale parameter(s).
 
template<typename T_y , typename T_loc , typename T_scale >
return_type< T_y, T_loc,
+T_scale >::type 
cauchy_log (const T_y &y, const T_loc &mu, const T_scale &sigma)
 
template<typename T_y , typename T_loc , typename T_scale >
return_type< T_y, T_loc,
+T_scale >::type 
cauchy_cdf (const T_y &y, const T_loc &mu, const T_scale &sigma)
 Calculates the cauchy cumulative distribution function for the given variate, location, and scale.
 
template<typename T_y , typename T_loc , typename T_scale >
return_type< T_y, T_loc,
+T_scale >::type 
cauchy_cdf_log (const T_y &y, const T_loc &mu, const T_scale &sigma)
 
template<typename T_y , typename T_loc , typename T_scale >
return_type< T_y, T_loc,
+T_scale >::type 
cauchy_ccdf_log (const T_y &y, const T_loc &mu, const T_scale &sigma)
 
template<class RNG >
double cauchy_rng (const double mu, const double sigma, RNG &rng)
 
template<bool propto, typename T_y , typename T_dof >
return_type< T_y, T_dof >::type chi_square_log (const T_y &y, const T_dof &nu)
 The log of a chi-squared density for y with the specified degrees of freedom parameter.
 
template<typename T_y , typename T_dof >
return_type< T_y, T_dof >::type chi_square_log (const T_y &y, const T_dof &nu)
 
template<typename T_y , typename T_dof >
return_type< T_y, T_dof >::type chi_square_cdf (const T_y &y, const T_dof &nu)
 Calculates the chi square cumulative distribution function for the given variate and degrees of freedom.
 
template<typename T_y , typename T_dof >
return_type< T_y, T_dof >::type chi_square_cdf_log (const T_y &y, const T_dof &nu)
 
template<typename T_y , typename T_dof >
return_type< T_y, T_dof >::type chi_square_ccdf_log (const T_y &y, const T_dof &nu)
 
template<class RNG >
double chi_square_rng (const double nu, RNG &rng)
 
template<typename T >
int sign (const T &z)
 
template<bool propto, typename T_y , typename T_loc , typename T_scale >
return_type< T_y, T_loc,
+T_scale >::type 
double_exponential_log (const T_y &y, const T_loc &mu, const T_scale &sigma)
 
template<typename T_y , typename T_loc , typename T_scale >
return_type< T_y, T_loc,
+T_scale >::type 
double_exponential_log (const T_y &y, const T_loc &mu, const T_scale &sigma)
 
template<typename T_y , typename T_loc , typename T_scale >
return_type< T_y, T_loc,
+T_scale >::type 
double_exponential_cdf (const T_y &y, const T_loc &mu, const T_scale &sigma)
 Calculates the double exponential cumulative density function.
 
template<typename T_y , typename T_loc , typename T_scale >
return_type< T_y, T_loc,
+T_scale >::type 
double_exponential_cdf_log (const T_y &y, const T_loc &mu, const T_scale &sigma)
 
template<typename T_y , typename T_loc , typename T_scale >
return_type< T_y, T_loc,
+T_scale >::type 
double_exponential_ccdf_log (const T_y &y, const T_loc &mu, const T_scale &sigma)
 
template<class RNG >
double double_exponential_rng (const double mu, const double sigma, RNG &rng)
 
template<bool propto, typename T_y , typename T_loc , typename T_scale , typename T_inv_scale >
return_type< T_y, T_loc,
+T_scale, T_inv_scale >::type 
exp_mod_normal_log (const T_y &y, const T_loc &mu, const T_scale &sigma, const T_inv_scale &lambda)
 
template<typename T_y , typename T_loc , typename T_scale , typename T_inv_scale >
return_type< T_y, T_loc,
+T_scale, T_inv_scale >::type 
exp_mod_normal_log (const T_y &y, const T_loc &mu, const T_scale &sigma, const T_inv_scale &lambda)
 
template<typename T_y , typename T_loc , typename T_scale , typename T_inv_scale >
return_type< T_y, T_loc,
+T_scale, T_inv_scale >::type 
exp_mod_normal_cdf (const T_y &y, const T_loc &mu, const T_scale &sigma, const T_inv_scale &lambda)
 
template<typename T_y , typename T_loc , typename T_scale , typename T_inv_scale >
return_type< T_y, T_loc,
+T_scale, T_inv_scale >::type 
exp_mod_normal_cdf_log (const T_y &y, const T_loc &mu, const T_scale &sigma, const T_inv_scale &lambda)
 
template<typename T_y , typename T_loc , typename T_scale , typename T_inv_scale >
return_type< T_y, T_loc,
+T_scale, T_inv_scale >::type 
exp_mod_normal_ccdf_log (const T_y &y, const T_loc &mu, const T_scale &sigma, const T_inv_scale &lambda)
 
template<class RNG >
double exp_mod_normal_rng (const double mu, const double sigma, const double lambda, RNG &rng)
 
template<bool propto, typename T_y , typename T_inv_scale >
return_type< T_y, T_inv_scale >
+::type 
exponential_log (const T_y &y, const T_inv_scale &beta)
 The log of an exponential density for y with the specified inverse scale parameter.
 
template<typename T_y , typename T_inv_scale >
return_type< T_y, T_inv_scale >
+::type 
exponential_log (const T_y &y, const T_inv_scale &beta)
 
template<typename T_y , typename T_inv_scale >
return_type< T_y, T_inv_scale >
+::type 
exponential_cdf (const T_y &y, const T_inv_scale &beta)
 Calculates the exponential cumulative distribution function for the given y and beta.
 
template<typename T_y , typename T_inv_scale >
return_type< T_y, T_inv_scale >
+::type 
exponential_cdf_log (const T_y &y, const T_inv_scale &beta)
 
template<typename T_y , typename T_inv_scale >
return_type< T_y, T_inv_scale >
+::type 
exponential_ccdf_log (const T_y &y, const T_inv_scale &beta)
 
template<class RNG >
double exponential_rng (const double beta, RNG &rng)
 
template<bool propto, typename T_y , typename T_shape , typename T_inv_scale >
return_type< T_y, T_shape,
+T_inv_scale >::type 
gamma_log (const T_y &y, const T_shape &alpha, const T_inv_scale &beta)
 The log of a gamma density for y with the specified shape and inverse scale parameters.
 
template<typename T_y , typename T_shape , typename T_inv_scale >
return_type< T_y, T_shape,
+T_inv_scale >::type 
gamma_log (const T_y &y, const T_shape &alpha, const T_inv_scale &beta)
 
template<typename T_y , typename T_shape , typename T_inv_scale >
return_type< T_y, T_shape,
+T_inv_scale >::type 
gamma_cdf (const T_y &y, const T_shape &alpha, const T_inv_scale &beta)
 The cumulative density function for a gamma distribution for y with the specified shape and inverse scale parameters.
 
template<typename T_y , typename T_shape , typename T_inv_scale >
return_type< T_y, T_shape,
+T_inv_scale >::type 
gamma_cdf_log (const T_y &y, const T_shape &alpha, const T_inv_scale &beta)
 
template<typename T_y , typename T_shape , typename T_inv_scale >
return_type< T_y, T_shape,
+T_inv_scale >::type 
gamma_ccdf_log (const T_y &y, const T_shape &alpha, const T_inv_scale &beta)
 
template<class RNG >
double gamma_rng (const double alpha, const double beta, RNG &rng)
 
template<bool propto, typename T_y , typename T_loc , typename T_scale >
return_type< T_y, T_loc,
+T_scale >::type 
gumbel_log (const T_y &y, const T_loc &mu, const T_scale &beta)
 
template<typename T_y , typename T_loc , typename T_scale >
return_type< T_y, T_loc,
+T_scale >::type 
gumbel_log (const T_y &y, const T_loc &mu, const T_scale &beta)
 
template<typename T_y , typename T_loc , typename T_scale >
return_type< T_y, T_loc,
+T_scale >::type 
gumbel_cdf (const T_y &y, const T_loc &mu, const T_scale &beta)
 
template<typename T_y , typename T_loc , typename T_scale >
return_type< T_y, T_loc,
+T_scale >::type 
gumbel_cdf_log (const T_y &y, const T_loc &mu, const T_scale &beta)
 
template<typename T_y , typename T_loc , typename T_scale >
return_type< T_y, T_loc,
+T_scale >::type 
gumbel_ccdf_log (const T_y &y, const T_loc &mu, const T_scale &beta)
 
template<class RNG >
double gumbel_rng (const double mu, const double beta, RNG &rng)
 
template<bool propto, typename T_y , typename T_dof >
return_type< T_y, T_dof >::type inv_chi_square_log (const T_y &y, const T_dof &nu)
 The log of an inverse chi-squared density for y with the specified degrees of freedom parameter.
 
template<typename T_y , typename T_dof >
return_type< T_y, T_dof >::type inv_chi_square_log (const T_y &y, const T_dof &nu)
 
template<typename T_y , typename T_dof >
return_type< T_y, T_dof >::type inv_chi_square_cdf (const T_y &y, const T_dof &nu)
 
template<typename T_y , typename T_dof >
return_type< T_y, T_dof >::type inv_chi_square_cdf_log (const T_y &y, const T_dof &nu)
 
template<typename T_y , typename T_dof >
return_type< T_y, T_dof >::type inv_chi_square_ccdf_log (const T_y &y, const T_dof &nu)
 
template<class RNG >
double inv_chi_square_rng (const double nu, RNG &rng)
 
template<bool propto, typename T_y , typename T_shape , typename T_scale >
return_type< T_y, T_shape,
+T_scale >::type 
inv_gamma_log (const T_y &y, const T_shape &alpha, const T_scale &beta)
 The log of an inverse gamma density for y with the specified shape and scale parameters.
 
template<typename T_y , typename T_shape , typename T_scale >
return_type< T_y, T_shape,
+T_scale >::type 
inv_gamma_log (const T_y &y, const T_shape &alpha, const T_scale &beta)
 
template<typename T_y , typename T_shape , typename T_scale >
return_type< T_y, T_shape,
+T_scale >::type 
inv_gamma_cdf (const T_y &y, const T_shape &alpha, const T_scale &beta)
 The CDF of an inverse gamma density for y with the specified shape and scale parameters.
 
template<typename T_y , typename T_shape , typename T_scale >
return_type< T_y, T_shape,
+T_scale >::type 
inv_gamma_cdf_log (const T_y &y, const T_shape &alpha, const T_scale &beta)
 
template<typename T_y , typename T_shape , typename T_scale >
return_type< T_y, T_shape,
+T_scale >::type 
inv_gamma_ccdf_log (const T_y &y, const T_shape &alpha, const T_scale &beta)
 
template<class RNG >
double inv_gamma_rng (const double alpha, const double beta, RNG &rng)
 
template<bool propto, typename T_y , typename T_loc , typename T_scale >
return_type< T_y, T_loc,
+T_scale >::type 
logistic_log (const T_y &y, const T_loc &mu, const T_scale &sigma)
 
template<typename T_y , typename T_loc , typename T_scale >
return_type< T_y, T_loc,
+T_scale >::type 
logistic_log (const T_y &y, const T_loc &mu, const T_scale &sigma)
 
template<typename T_y , typename T_loc , typename T_scale >
return_type< T_y, T_loc,
+T_scale >::type 
logistic_cdf (const T_y &y, const T_loc &mu, const T_scale &sigma)
 
template<typename T_y , typename T_loc , typename T_scale >
return_type< T_y, T_loc,
+T_scale >::type 
logistic_cdf_log (const T_y &y, const T_loc &mu, const T_scale &sigma)
 
template<typename T_y , typename T_loc , typename T_scale >
return_type< T_y, T_loc,
+T_scale >::type 
logistic_ccdf_log (const T_y &y, const T_loc &mu, const T_scale &sigma)
 
template<class RNG >
double logistic_rng (const double mu, const double sigma, RNG &rng)
 
template<bool propto, typename T_y , typename T_loc , typename T_scale >
return_type< T_y, T_loc,
+T_scale >::type 
lognormal_log (const T_y &y, const T_loc &mu, const T_scale &sigma)
 
template<typename T_y , typename T_loc , typename T_scale >
return_type< T_y, T_loc,
+T_scale >::type 
lognormal_log (const T_y &y, const T_loc &mu, const T_scale &sigma)
 
template<typename T_y , typename T_loc , typename T_scale >
return_type< T_y, T_loc,
+T_scale >::type 
lognormal_cdf (const T_y &y, const T_loc &mu, const T_scale &sigma)
 
template<typename T_y , typename T_loc , typename T_scale >
return_type< T_y, T_loc,
+T_scale >::type 
lognormal_cdf_log (const T_y &y, const T_loc &mu, const T_scale &sigma)
 
template<typename T_y , typename T_loc , typename T_scale >
return_type< T_y, T_loc,
+T_scale >::type 
lognormal_ccdf_log (const T_y &y, const T_loc &mu, const T_scale &sigma)
 
template<class RNG >
double lognormal_rng (const double mu, const double sigma, RNG &rng)
 
template<typename T_y , typename T_loc , typename T_scale >
return_type< T_y, T_loc,
+T_scale >::type 
normal_log (const T_y &y, const T_loc &mu, const T_scale &sigma)
 
template<typename T_y , typename T_loc , typename T_scale >
return_type< T_y, T_loc,
+T_scale >::type 
normal_cdf (const T_y &y, const T_loc &mu, const T_scale &sigma)
 Calculates the normal cumulative distribution function for the given variate, location, and scale.
 
template<typename T_y , typename T_loc , typename T_scale >
return_type< T_y, T_loc,
+T_scale >::type 
normal_cdf_log (const T_y &y, const T_loc &mu, const T_scale &sigma)
 
template<typename T_y , typename T_loc , typename T_scale >
return_type< T_y, T_loc,
+T_scale >::type 
normal_ccdf_log (const T_y &y, const T_loc &mu, const T_scale &sigma)
 
template<class RNG >
double normal_rng (const double mu, const double sigma, RNG &rng)
 
template<bool propto, typename T_y , typename T_scale , typename T_shape >
return_type< T_y, T_scale,
+T_shape >::type 
pareto_log (const T_y &y, const T_scale &y_min, const T_shape &alpha)
 
template<typename T_y , typename T_scale , typename T_shape >
return_type< T_y, T_scale,
+T_shape >::type 
pareto_log (const T_y &y, const T_scale &y_min, const T_shape &alpha)
 
template<typename T_y , typename T_scale , typename T_shape >
return_type< T_y, T_scale,
+T_shape >::type 
pareto_cdf (const T_y &y, const T_scale &y_min, const T_shape &alpha)
 
template<typename T_y , typename T_scale , typename T_shape >
return_type< T_y, T_scale,
+T_shape >::type 
pareto_cdf_log (const T_y &y, const T_scale &y_min, const T_shape &alpha)
 
template<typename T_y , typename T_scale , typename T_shape >
return_type< T_y, T_scale,
+T_shape >::type 
pareto_ccdf_log (const T_y &y, const T_scale &y_min, const T_shape &alpha)
 
template<class RNG >
double pareto_rng (const double y_min, const double alpha, RNG &rng)
 
template<bool propto, typename T_y , typename T_scale >
return_type< T_y, T_scale >::type rayleigh_log (const T_y &y, const T_scale &sigma)
 
template<typename T_y , typename T_scale >
return_type< T_y, T_scale >::type rayleigh_log (const T_y &y, const T_scale &sigma)
 
template<typename T_y , typename T_scale >
return_type< T_y, T_scale >::type rayleigh_cdf (const T_y &y, const T_scale &sigma)
 
template<typename T_y , typename T_scale >
return_type< T_y, T_scale >::type rayleigh_cdf_log (const T_y &y, const T_scale &sigma)
 
template<typename T_y , typename T_scale >
return_type< T_y, T_scale >::type rayleigh_ccdf_log (const T_y &y, const T_scale &sigma)
 
template<class RNG >
double rayleigh_rng (const double sigma, RNG &rng)
 
template<bool propto, typename T_y , typename T_dof , typename T_scale >
return_type< T_y, T_dof,
+T_scale >::type 
scaled_inv_chi_square_log (const T_y &y, const T_dof &nu, const T_scale &s)
 The log of a scaled inverse chi-squared density for y with the specified degrees of freedom parameter and scale parameter.
 
template<typename T_y , typename T_dof , typename T_scale >
return_type< T_y, T_dof,
+T_scale >::type 
scaled_inv_chi_square_log (const T_y &y, const T_dof &nu, const T_scale &s)
 
template<typename T_y , typename T_dof , typename T_scale >
return_type< T_y, T_dof,
+T_scale >::type 
scaled_inv_chi_square_cdf (const T_y &y, const T_dof &nu, const T_scale &s)
 The CDF of a scaled inverse chi-squared density for y with the specified degrees of freedom parameter and scale parameter.
 
template<typename T_y , typename T_dof , typename T_scale >
return_type< T_y, T_dof,
+T_scale >::type 
scaled_inv_chi_square_cdf_log (const T_y &y, const T_dof &nu, const T_scale &s)
 
template<typename T_y , typename T_dof , typename T_scale >
return_type< T_y, T_dof,
+T_scale >::type 
scaled_inv_chi_square_ccdf_log (const T_y &y, const T_dof &nu, const T_scale &s)
 
template<class RNG >
double scaled_inv_chi_square_rng (const double nu, const double s, RNG &rng)
 
template<bool propto, typename T_y , typename T_loc , typename T_scale , typename T_shape >
return_type< T_y, T_loc,
+T_scale, T_shape >::type 
skew_normal_log (const T_y &y, const T_loc &mu, const T_scale &sigma, const T_shape &alpha)
 
template<typename T_y , typename T_loc , typename T_scale , typename T_shape >
return_type< T_y, T_loc,
+T_scale, T_shape >::type 
skew_normal_log (const T_y &y, const T_loc &mu, const T_scale &sigma, const T_shape &alpha)
 
template<typename T_y , typename T_loc , typename T_scale , typename T_shape >
return_type< T_y, T_loc,
+T_scale, T_shape >::type 
skew_normal_cdf (const T_y &y, const T_loc &mu, const T_scale &sigma, const T_shape &alpha)
 
template<typename T_y , typename T_loc , typename T_scale , typename T_shape >
return_type< T_y, T_loc,
+T_scale, T_shape >::type 
skew_normal_cdf_log (const T_y &y, const T_loc &mu, const T_scale &sigma, const T_shape &alpha)
 
template<typename T_y , typename T_loc , typename T_scale , typename T_shape >
return_type< T_y, T_loc,
+T_scale, T_shape >::type 
skew_normal_ccdf_log (const T_y &y, const T_loc &mu, const T_scale &sigma, const T_shape &alpha)
 
template<class RNG >
double skew_normal_rng (const double mu, const double sigma, const double alpha, RNG &rng)
 
template<bool propto, typename T_y , typename T_dof , typename T_loc , typename T_scale >
return_type< T_y, T_dof, T_loc,
+T_scale >::type 
student_t_log (const T_y &y, const T_dof &nu, const T_loc &mu, const T_scale &sigma)
 The log of the Student-t density for the given y, nu, mean, and scale parameter.
 
template<typename T_y , typename T_dof , typename T_loc , typename T_scale >
return_type< T_y, T_dof, T_loc,
+T_scale >::type 
student_t_log (const T_y &y, const T_dof &nu, const T_loc &mu, const T_scale &sigma)
 
template<typename T_y , typename T_dof , typename T_loc , typename T_scale >
return_type< T_y, T_dof, T_loc,
+T_scale >::type 
student_t_cdf (const T_y &y, const T_dof &nu, const T_loc &mu, const T_scale &sigma)
 
template<typename T_y , typename T_dof , typename T_loc , typename T_scale >
return_type< T_y, T_dof, T_loc,
+T_scale >::type 
student_t_cdf_log (const T_y &y, const T_dof &nu, const T_loc &mu, const T_scale &sigma)
 
template<typename T_y , typename T_dof , typename T_loc , typename T_scale >
return_type< T_y, T_dof, T_loc,
+T_scale >::type 
student_t_ccdf_log (const T_y &y, const T_dof &nu, const T_loc &mu, const T_scale &sigma)
 
template<class RNG >
double student_t_rng (const double nu, const double mu, const double sigma, RNG &rng)
 
template<bool propto, typename T_y , typename T_low , typename T_high >
return_type< T_y, T_low,
+T_high >::type 
uniform_log (const T_y &y, const T_low &alpha, const T_high &beta)
 The log of a uniform density for the given y, lower, and upper bound.
 
template<typename T_y , typename T_low , typename T_high >
return_type< T_y, T_low,
+T_high >::type 
uniform_log (const T_y &y, const T_low &alpha, const T_high &beta)
 
template<typename T_y , typename T_low , typename T_high >
return_type< T_y, T_low,
+T_high >::type 
uniform_cdf (const T_y &y, const T_low &alpha, const T_high &beta)
 
template<typename T_y , typename T_low , typename T_high >
return_type< T_y, T_low,
+T_high >::type 
uniform_cdf_log (const T_y &y, const T_low &alpha, const T_high &beta)
 
template<typename T_y , typename T_low , typename T_high >
return_type< T_y, T_low,
+T_high >::type 
uniform_ccdf_log (const T_y &y, const T_low &alpha, const T_high &beta)
 
template<class RNG >
double uniform_rng (const double alpha, const double beta, RNG &rng)
 
template<bool propto, typename T_y , typename T_loc , typename T_scale >
return_type< T_y, T_loc,
+T_scale >::type 
von_mises_log (T_y const &y, T_loc const &mu, T_scale const &kappa)
 
template<typename T_y , typename T_loc , typename T_scale >
return_type< T_y, T_loc,
+T_scale >::type 
von_mises_log (T_y const &y, T_loc const &mu, T_scale const &kappa)
 
template<bool propto, typename T_y , typename T_shape , typename T_scale >
return_type< T_y, T_shape,
+T_scale >::type 
weibull_log (const T_y &y, const T_shape &alpha, const T_scale &sigma)
 
template<typename T_y , typename T_shape , typename T_scale >
return_type< T_y, T_shape,
+T_scale >::type 
weibull_log (const T_y &y, const T_shape &alpha, const T_scale &sigma)
 
template<typename T_y , typename T_shape , typename T_scale >
return_type< T_y, T_shape,
+T_scale >::type 
weibull_cdf (const T_y &y, const T_shape &alpha, const T_scale &sigma)
 
template<typename T_y , typename T_shape , typename T_scale >
return_type< T_y, T_shape,
+T_scale >::type 
weibull_cdf_log (const T_y &y, const T_shape &alpha, const T_scale &sigma)
 
template<typename T_y , typename T_shape , typename T_scale >
return_type< T_y, T_shape,
+T_scale >::type 
weibull_ccdf_log (const T_y &y, const T_shape &alpha, const T_scale &sigma)
 
template<class RNG >
double weibull_rng (const double alpha, const double sigma, RNG &rng)
 
template<bool propto, typename T_n , typename T_prob >
return_type< T_prob >::type bernoulli_log (const T_n &n, const T_prob &theta)
 
template<typename T_y , typename T_prob >
return_type< T_prob >::type bernoulli_log (const T_y &n, const T_prob &theta)
 
template<bool propto, typename T_n , typename T_prob >
return_type< T_prob >::type bernoulli_logit_log (const T_n &n, const T_prob &theta)
 
template<typename T_n , typename T_prob >
return_type< T_prob >::type bernoulli_logit_log (const T_n &n, const T_prob &theta)
 
template<typename T_n , typename T_prob >
return_type< T_prob >::type bernoulli_cdf (const T_n &n, const T_prob &theta)
 
template<typename T_n , typename T_prob >
return_type< T_prob >::type bernoulli_cdf_log (const T_n &n, const T_prob &theta)
 
template<typename T_n , typename T_prob >
return_type< T_prob >::type bernoulli_ccdf_log (const T_n &n, const T_prob &theta)
 
template<class RNG >
int bernoulli_rng (const double theta, RNG &rng)
 
template<bool propto, typename T_n , typename T_N , typename T_size1 , typename T_size2 >
return_type< T_size1, T_size2 >
+::type 
beta_binomial_log (const T_n &n, const T_N &N, const T_size1 &alpha, const T_size2 &beta)
 
template<typename T_n , typename T_N , typename T_size1 , typename T_size2 >
return_type< T_size1, T_size2 >
+::type 
beta_binomial_log (const T_n &n, const T_N &N, const T_size1 &alpha, const T_size2 &beta)
 
template<typename T_n , typename T_N , typename T_size1 , typename T_size2 >
return_type< T_size1, T_size2 >
+::type 
beta_binomial_cdf (const T_n &n, const T_N &N, const T_size1 &alpha, const T_size2 &beta)
 
template<typename T_n , typename T_N , typename T_size1 , typename T_size2 >
return_type< T_size1, T_size2 >
+::type 
beta_binomial_cdf_log (const T_n &n, const T_N &N, const T_size1 &alpha, const T_size2 &beta)
 
template<typename T_n , typename T_N , typename T_size1 , typename T_size2 >
return_type< T_size1, T_size2 >
+::type 
beta_binomial_ccdf_log (const T_n &n, const T_N &N, const T_size1 &alpha, const T_size2 &beta)
 
template<class RNG >
int beta_binomial_rng (const int N, const double alpha, const double beta, RNG &rng)
 
template<bool propto, typename T_n , typename T_N , typename T_prob >
return_type< T_prob >::type binomial_log (const T_n &n, const T_N &N, const T_prob &theta)
 
template<typename T_n , typename T_N , typename T_prob >
return_type< T_prob >::type binomial_log (const T_n &n, const T_N &N, const T_prob &theta)
 
template<bool propto, typename T_n , typename T_N , typename T_prob >
return_type< T_prob >::type binomial_logit_log (const T_n &n, const T_N &N, const T_prob &alpha)
 
template<typename T_n , typename T_N , typename T_prob >
return_type< T_prob >::type binomial_logit_log (const T_n &n, const T_N &N, const T_prob &alpha)
 
template<typename T_n , typename T_N , typename T_prob >
return_type< T_prob >::type binomial_cdf (const T_n &n, const T_N &N, const T_prob &theta)
 
template<typename T_n , typename T_N , typename T_prob >
return_type< T_prob >::type binomial_cdf_log (const T_n &n, const T_N &N, const T_prob &theta)
 
template<typename T_n , typename T_N , typename T_prob >
return_type< T_prob >::type binomial_ccdf_log (const T_n &n, const T_N &N, const T_prob &theta)
 
template<class RNG >
int binomial_rng (const int N, const double theta, RNG &rng)
 
template<bool propto, typename T_n , typename T_N , typename T_a , typename T_b >
double hypergeometric_log (const T_n &n, const T_N &N, const T_a &a, const T_b &b)
 
template<typename T_n , typename T_N , typename T_a , typename T_b >
double hypergeometric_log (const T_n &n, const T_N &N, const T_a &a, const T_b &b)
 
template<class RNG >
int hypergeometric_rng (const int N, const int a, const int b, RNG &rng)
 
template<bool propto, typename T_n , typename T_shape , typename T_inv_scale >
return_type< T_shape,
+T_inv_scale >::type 
neg_binomial_log (const T_n &n, const T_shape &alpha, const T_inv_scale &beta)
 
template<typename T_n , typename T_shape , typename T_inv_scale >
return_type< T_shape,
+T_inv_scale >::type 
neg_binomial_log (const T_n &n, const T_shape &alpha, const T_inv_scale &beta)
 
template<typename T_n , typename T_shape , typename T_inv_scale >
return_type< T_shape,
+T_inv_scale >::type 
neg_binomial_cdf (const T_n &n, const T_shape &alpha, const T_inv_scale &beta)
 
template<typename T_n , typename T_shape , typename T_inv_scale >
return_type< T_shape,
+T_inv_scale >::type 
neg_binomial_cdf_log (const T_n &n, const T_shape &alpha, const T_inv_scale &beta)
 
template<typename T_n , typename T_shape , typename T_inv_scale >
return_type< T_shape,
+T_inv_scale >::type 
neg_binomial_ccdf_log (const T_n &n, const T_shape &alpha, const T_inv_scale &beta)
 
template<class RNG >
int neg_binomial_rng (const double alpha, const double beta, RNG &rng)
 
template<typename T >
log_inv_logit_diff (const T &alpha, const T &beta)
 
template<bool propto, typename T_lambda , typename T_cut >
boost::math::tools::promote_args
+< T_lambda, T_cut >::type 
ordered_logistic_log (int y, const T_lambda &lambda, const Eigen::Matrix< T_cut, Eigen::Dynamic, 1 > &c)
 Returns the (natural) log probability of the specified integer outcome given the continuous location and specified cutpoints in an ordered logistic model.
 
template<typename T_lambda , typename T_cut >
boost::math::tools::promote_args
+< T_lambda, T_cut >::type 
ordered_logistic_log (int y, const T_lambda &lambda, const Eigen::Matrix< T_cut, Eigen::Dynamic, 1 > &c)
 
template<class RNG >
int ordered_logistic_rng (const double eta, const Eigen::Matrix< double, Eigen::Dynamic, 1 > &c, RNG &rng)
 
template<bool propto, typename T_n , typename T_rate >
return_type< T_rate >::type poisson_log (const T_n &n, const T_rate &lambda)
 
template<typename T_n , typename T_rate >
return_type< T_rate >::type poisson_log (const T_n &n, const T_rate &lambda)
 
template<bool propto, typename T_n , typename T_log_rate >
return_type< T_log_rate >::type poisson_log_log (const T_n &n, const T_log_rate &alpha)
 
template<typename T_n , typename T_log_rate >
return_type< T_log_rate >::type poisson_log_log (const T_n &n, const T_log_rate &alpha)
 
template<typename T_n , typename T_rate >
return_type< T_rate >::type poisson_cdf (const T_n &n, const T_rate &lambda)
 
template<typename T_n , typename T_rate >
return_type< T_rate >::type poisson_cdf_log (const T_n &n, const T_rate &lambda)
 
template<typename T_n , typename T_rate >
return_type< T_rate >::type poisson_ccdf_log (const T_n &n, const T_rate &lambda)
 
template<class RNG >
int poisson_rng (const double lambda, RNG &rng)
 
template<typename T >
bool factor_cov_matrix (Eigen::Array< T, Eigen::Dynamic, 1 > &CPCs, Eigen::Array< T, Eigen::Dynamic, 1 > &sds, const Eigen::Matrix< T, Eigen::Dynamic, Eigen::Dynamic > &Sigma)
 This function is intended to make starting values, given a covariance matrix Sigma.
 
template<typename T >
Eigen::Matrix< T,
+Eigen::Dynamic, Eigen::Dynamic > 
read_corr_L (const Eigen::Array< T, Eigen::Dynamic, 1 > &CPCs, const size_t K)
 Return the Cholesky factor of the correlation matrix of the specified dimensionality corresponding to the specified canonical partial correlations.
 
template<typename T >
Eigen::Matrix< T,
+Eigen::Dynamic, Eigen::Dynamic > 
read_corr_matrix (const Eigen::Array< T, Eigen::Dynamic, 1 > &CPCs, const size_t K)
 Return the correlation matrix of the specified dimensionality corresponding to the specified canonical partial correlations.
 
template<typename T >
Eigen::Matrix< T,
+Eigen::Dynamic, Eigen::Dynamic > 
read_corr_L (const Eigen::Array< T, Eigen::Dynamic, 1 > &CPCs, const size_t K, T &log_prob)
 Return the Cholesky factor of the correlation matrix of the specified dimensionality corresponding to the specified canonical partial correlations, incrementing the specified scalar reference with the log absolute determinant of the Jacobian of the transformation.
 
template<typename T >
Eigen::Matrix< T,
+Eigen::Dynamic, Eigen::Dynamic > 
read_corr_matrix (const Eigen::Array< T, Eigen::Dynamic, 1 > &CPCs, const size_t K, T &log_prob)
 Return the correlation matrix of the specified dimensionality corresponding to the specified canonical partial correlations, incrementing the specified scalar reference with the log absolute determinant of the Jacobian of the transformation.
 
template<typename T >
Eigen::Matrix< T,
+Eigen::Dynamic, Eigen::Dynamic > 
read_cov_L (const Eigen::Array< T, Eigen::Dynamic, 1 > &CPCs, const Eigen::Array< T, Eigen::Dynamic, 1 > &sds, T &log_prob)
 This is the function that should be called prior to evaluating the density of any elliptical distribution.
 
template<typename T >
Eigen::Matrix< T,
+Eigen::Dynamic, Eigen::Dynamic > 
read_cov_matrix (const Eigen::Array< T, Eigen::Dynamic, 1 > &CPCs, const Eigen::Array< T, Eigen::Dynamic, 1 > &sds, T &log_prob)
 A generally worse alternative to call prior to evaluating the density of an elliptical distribution.
 
template<typename T >
Eigen::Matrix< T,
+Eigen::Dynamic, Eigen::Dynamic > 
read_cov_matrix (const Eigen::Array< T, Eigen::Dynamic, 1 > &CPCs, const Eigen::Array< T, Eigen::Dynamic, 1 > &sds)
 Builds a covariance matrix from CPCs and standard deviations.
 
template<typename T >
const Eigen::Array< T,
+Eigen::Dynamic, 1 > 
make_nu (const T eta, const size_t K)
 This function calculates the degrees of freedom for the t distribution that corresponds to the shape parameter in the Lewandowski et.
 
template<typename T >
identity_constrain (T x)
 Returns the result of applying the identity constraint transform to the input.
 
template<typename T >
identity_constrain (const T x, T &)
 Returns the result of applying the identity constraint transform to the input and increments the log probability reference with the log absolute Jacobian determinant.
 
template<typename T >
identity_free (const T y)
 Returns the result of applying the inverse of the identity constraint transform to the input.
 
template<typename T >
positive_constrain (const T x)
 Return the positive value for the specified unconstrained input.
 
template<typename T >
positive_constrain (const T x, T &lp)
 Return the positive value for the specified unconstrained input, incrementing the scalar reference with the log absolute Jacobian determinant.
 
template<typename T >
positive_free (const T y)
 Return the unconstrained value corresponding to the specified positive-constrained value.
 
template<typename T , typename TL >
lb_constrain (const T x, const TL lb)
 Return the lower-bounded value for the specified unconstrained input and specified lower bound.
 
template<typename T , typename TL >
boost::math::tools::promote_args
+< T, TL >::type 
lb_constrain (const T x, const TL lb, T &lp)
 Return the lower-bounded value for the speicifed unconstrained input and specified lower bound, incrementing the specified reference with the log absolute Jacobian determinant of the transform.
 
template<typename T , typename TL >
boost::math::tools::promote_args
+< T, TL >::type 
lb_free (const T y, const TL lb)
 Return the unconstrained value that produces the specified lower-bound constrained value.
 
template<typename T , typename TU >
boost::math::tools::promote_args
+< T, TU >::type 
ub_constrain (const T x, const TU ub)
 Return the upper-bounded value for the specified unconstrained scalar and upper bound.
 
template<typename T , typename TU >
boost::math::tools::promote_args
+< T, TU >::type 
ub_constrain (const T x, const TU ub, T &lp)
 Return the upper-bounded value for the specified unconstrained scalar and upper bound and increment the specified log probability reference with the log absolute Jacobian determinant of the transform.
 
template<typename T , typename TU >
boost::math::tools::promote_args
+< T, TU >::type 
ub_free (const T y, const TU ub)
 Return the free scalar that corresponds to the specified upper-bounded value with respect to the specified upper bound.
 
template<typename T , typename TL , typename TU >
boost::math::tools::promote_args
+< T, TL, TU >::type 
lub_constrain (const T x, TL lb, TU ub)
 Return the lower- and upper-bounded scalar derived by transforming the specified free scalar given the specified lower and upper bounds.
 
template<typename T , typename TL , typename TU >
boost::math::tools::promote_args
+< T, TL, TU >::type 
lub_constrain (const T x, const TL lb, const TU ub, T &lp)
 Return the lower- and upper-bounded scalar derived by transforming the specified free scalar given the specified lower and upper bounds and increment the specified log probability with the log absolute Jacobian determinant.
 
template<typename T , typename TL , typename TU >
boost::math::tools::promote_args
+< T, TL, TU >::type 
lub_free (const T y, TL lb, TU ub)
 Return the unconstrained scalar that transforms to the specified lower- and upper-bounded scalar given the specified bounds.
 
template<typename T >
prob_constrain (const T x)
 Return a probability value constrained to fall between 0 and 1 (inclusive) for the specified free scalar.
 
template<typename T >
prob_constrain (const T x, T &lp)
 Return a probability value constrained to fall between 0 and 1 (inclusive) for the specified free scalar and increment the specified log probability reference with the log absolute Jacobian determinant of the transform.
 
template<typename T >
prob_free (const T y)
 Return the free scalar that when transformed to a probability produces the specified scalar.
 
template<typename T >
corr_constrain (const T x)
 Return the result of transforming the specified scalar to have a valid correlation value between -1 and 1 (inclusive).
 
template<typename T >
corr_constrain (const T x, T &lp)
 Return the result of transforming the specified scalar to have a valid correlation value between -1 and 1 (inclusive).
 
template<typename T >
corr_free (const T y)
 Return the unconstrained scalar that when transformed to a valid correlation produces the specified value.
 
template<typename T >
Eigen::Matrix< T,
+Eigen::Dynamic, 1 > 
unit_vector_constrain (const Eigen::Matrix< T, Eigen::Dynamic, 1 > &y)
 Return the unit length vector corresponding to the free vector y.
 
template<typename T >
Eigen::Matrix< T,
+Eigen::Dynamic, 1 > 
unit_vector_constrain (const Eigen::Matrix< T, Eigen::Dynamic, 1 > &y, T &lp)
 Return the unit length vector corresponding to the free vector y.
 
template<typename T >
Eigen::Matrix< T,
+Eigen::Dynamic, 1 > 
unit_vector_free (const Eigen::Matrix< T, Eigen::Dynamic, 1 > &x)
 
template<typename T >
Eigen::Matrix< T,
+Eigen::Dynamic, 1 > 
simplex_constrain (const Eigen::Matrix< T, Eigen::Dynamic, 1 > &y)
 Return the simplex corresponding to the specified free vector.
 
template<typename T >
Eigen::Matrix< T,
+Eigen::Dynamic, 1 > 
simplex_constrain (const Eigen::Matrix< T, Eigen::Dynamic, 1 > &y, T &lp)
 Return the simplex corresponding to the specified free vector and increment the specified log probability reference with the log absolute Jacobian determinant of the transform.
 
template<typename T >
Eigen::Matrix< T,
+Eigen::Dynamic, 1 > 
simplex_free (const Eigen::Matrix< T, Eigen::Dynamic, 1 > &x)
 Return an unconstrained vector that when transformed produces the specified simplex.
 
template<typename T >
Eigen::Matrix< T,
+Eigen::Dynamic, 1 > 
ordered_constrain (const Eigen::Matrix< T, Eigen::Dynamic, 1 > &x)
 Return an increasing ordered vector derived from the specified free vector.
 
template<typename T >
Eigen::Matrix< T,
+Eigen::Dynamic, 1 > 
ordered_constrain (const Eigen::Matrix< T, Eigen::Dynamic, 1 > &x, T &lp)
 Return a positive valued, increasing ordered vector derived from the specified free vector and increment the specified log probability reference with the log absolute Jacobian determinant of the transform.
 
template<typename T >
Eigen::Matrix< T,
+Eigen::Dynamic, 1 > 
ordered_free (const Eigen::Matrix< T, Eigen::Dynamic, 1 > &y)
 Return the vector of unconstrained scalars that transform to the specified positive ordered vector.
 
template<typename T >
Eigen::Matrix< T,
+Eigen::Dynamic, 1 > 
positive_ordered_constrain (const Eigen::Matrix< T, Eigen::Dynamic, 1 > &x)
 Return an increasing positive ordered vector derived from the specified free vector.
 
template<typename T >
Eigen::Matrix< T,
+Eigen::Dynamic, 1 > 
positive_ordered_constrain (const Eigen::Matrix< T, Eigen::Dynamic, 1 > &x, T &lp)
 Return a positive valued, increasing positive ordered vector derived from the specified free vector and increment the specified log probability reference with the log absolute Jacobian determinant of the transform.
 
template<typename T >
Eigen::Matrix< T,
+Eigen::Dynamic, 1 > 
positive_ordered_free (const Eigen::Matrix< T, Eigen::Dynamic, 1 > &y)
 Return the vector of unconstrained scalars that transform to the specified positive ordered vector.
 
template<typename T >
Eigen::Matrix< T,
+Eigen::Dynamic, Eigen::Dynamic > 
cholesky_factor_constrain (const Eigen::Matrix< T, Eigen::Dynamic, 1 > &x, int M, int N)
 Return the Cholesky factor of the specified size read from the specified vector.
 
template<typename T >
Eigen::Matrix< T,
+Eigen::Dynamic, Eigen::Dynamic > 
cholesky_factor_constrain (const Eigen::Matrix< T, Eigen::Dynamic, 1 > &x, int M, int N, T &lp)
 Return the Cholesky factor of the specified size read from the specified vector and increment the specified log probability reference with the log Jacobian adjustment of the transform.
 
template<typename T >
Eigen::Matrix< T,
+Eigen::Dynamic, 1 > 
cholesky_factor_free (const Eigen::Matrix< T, Eigen::Dynamic, Eigen::Dynamic > &y)
 Return the unconstrained vector of parameters correspdonding to the specified Cholesky factor.
 
template<typename T >
Eigen::Matrix< T,
+Eigen::Dynamic, Eigen::Dynamic > 
corr_matrix_constrain (const Eigen::Matrix< T, Eigen::Dynamic, 1 > &x, typename Eigen::Matrix< T, Eigen::Dynamic, 1 >::size_type k)
 Return the correlation matrix of the specified dimensionality derived from the specified vector of unconstrained values.
 
template<typename T >
Eigen::Matrix< T,
+Eigen::Dynamic, Eigen::Dynamic > 
corr_matrix_constrain (const Eigen::Matrix< T, Eigen::Dynamic, 1 > &x, typename Eigen::Matrix< T, Eigen::Dynamic, 1 >::size_type k, T &lp)
 Return the correlation matrix of the specified dimensionality derived from the specified vector of unconstrained values.
 
template<typename T >
Eigen::Matrix< T,
+Eigen::Dynamic, 1 > 
corr_matrix_free (const Eigen::Matrix< T, Eigen::Dynamic, Eigen::Dynamic > &y)
 Return the vector of unconstrained partial correlations that define the specified correlation matrix when transformed.
 
template<typename T >
Eigen::Matrix< T,
+Eigen::Dynamic, Eigen::Dynamic > 
cov_matrix_constrain (const Eigen::Matrix< T, Eigen::Dynamic, 1 > &x, typename Eigen::Matrix< T, Eigen::Dynamic, 1 >::size_type K)
 Return the symmetric, positive-definite matrix of dimensions K by K resulting from transforming the specified finite vector of size K plus (K choose 2).
 
template<typename T >
Eigen::Matrix< T,
+Eigen::Dynamic, Eigen::Dynamic > 
cov_matrix_constrain (const Eigen::Matrix< T, Eigen::Dynamic, 1 > &x, typename Eigen::Matrix< T, Eigen::Dynamic, 1 >::size_type K, T &lp)
 Return the symmetric, positive-definite matrix of dimensions K by K resulting from transforming the specified finite vector of size K plus (K choose 2).
 
template<typename T >
Eigen::Matrix< T,
+Eigen::Dynamic, 1 > 
cov_matrix_free (const Eigen::Matrix< T, Eigen::Dynamic, Eigen::Dynamic > &y)
 The covariance matrix derived from the symmetric view of the lower-triangular view of the K by K specified matrix is freed to return a vector of size K + (K choose 2).
 
template<typename T >
Eigen::Matrix< T,
+Eigen::Dynamic, Eigen::Dynamic > 
cov_matrix_constrain_lkj (const Eigen::Matrix< T, Eigen::Dynamic, 1 > &x, size_t k)
 Return the covariance matrix of the specified dimensionality derived from constraining the specified vector of unconstrained values.
 
template<typename T >
Eigen::Matrix< T,
+Eigen::Dynamic, Eigen::Dynamic > 
cov_matrix_constrain_lkj (const Eigen::Matrix< T, Eigen::Dynamic, 1 > &x, size_t k, T &lp)
 Return the covariance matrix of the specified dimensionality derived from constraining the specified vector of unconstrained values and increment the specified log probability reference with the log absolute Jacobian determinant.
 
template<typename T >
Eigen::Matrix< T,
+Eigen::Dynamic, 1 > 
cov_matrix_free_lkj (const Eigen::Matrix< T, Eigen::Dynamic, Eigen::Dynamic > &y)
 Return the vector of unconstrained partial correlations and deviations that transform to the specified covariance matrix.
 
+ + + +

+Variables

const double CONSTRAINT_TOLERANCE = 1E-8
 
+

Detailed Description

+

Templated probability distributions.

+

All paramaterizations are based on Bayesian Data Analysis. Error handling for the distributions is described in Error Handling Policies.

+

Function Documentation

+ +
+
+
+template<typename T >
+ + + + + + + + + + + + + + + + + + + + + + + + +
void stan::prob::autocorrelation (const std::vector< T > & y,
std::vector< T > & ac,
Eigen::FFT< T > & fft 
)
+
+ +

Write autocorrelation estimates for every lag for the specified input sequence into the specified result using the specified FFT engine.

+

The return vector be resized to the same length as the input sequence with lags given by array index.

+

The implementation involves a fast Fourier transform, followed by a normalization, followed by an inverse transform.

+

An FFT engine can be created for reuse for type double with:

+
+    Eigen::FFT<double> fft;
+
Template Parameters
+ + +
TScalar type.
+
+
+
Parameters
+ + + + +
yInput sequence.
acAutocorrelations.
fftFFT engine instance.
+
+
+ +

Definition at line 56 of file autocorrelation.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + + + + + + + + + + + + + + +
void stan::prob::autocorrelation (const std::vector< T > & y,
std::vector< T > & ac 
)
+
+ +

Write autocorrelation estimates for every lag for the specified input sequence into the specified result.

+

The return vector be resized to the same length as the input sequence with lags given by array index.

+

The implementation involves a fast Fourier transform, followed by a normalization, followed by an inverse transform.

+

This method is just a light wrapper around the three-argument autocorrelation function

+
Template Parameters
+ + +
TScalar type.
+
+
+
Parameters
+ + + +
yInput sequence.
acAutocorrelations.
+
+
+ +

Definition at line 126 of file autocorrelation.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + + + + + + + + + + + + + + + + + + + + +
void stan::prob::autocovariance (const std::vector< T > & y,
std::vector< T > & acov,
Eigen::FFT< T > & fft 
)
+
+ +

Write autocovariance estimates for every lag for the specified input sequence into the specified result using the specified FFT engine.

+

The return vector be resized to the same length as the input sequence with lags given by array index.

+

The implementation involves a fast Fourier transform, followed by a normalization, followed by an inverse transform.

+

An FFT engine can be created for reuse for type double with:

+
+    Eigen::FFT<double> fft;
+
Template Parameters
+ + +
TScalar type.
+
+
+
Parameters
+ + + + +
yInput sequence.
acovAutocovariance.
fftFFT engine instance.
+
+
+ +

Definition at line 33 of file autocovariance.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + + + + + + + + + + + + + + +
void stan::prob::autocovariance (const std::vector< T > & y,
std::vector< T > & acov 
)
+
+ +

Write autocovariance estimates for every lag for the specified input sequence into the specified result.

+

The return vector be resized to the same length as the input sequence with lags given by array index.

+

The implementation involves a fast Fourier transform, followed by a normalization, followed by an inverse transform.

+

This method is just a light wrapper around the three-argument autocovariance function

+
Template Parameters
+ + +
TScalar type.
+
+
+
Parameters
+ + + +
yInput sequence.
acovAutocovariances.
+
+
+ +

Definition at line 62 of file autocovariance.hpp.

+ +
+
+ +
+
+
+template<typename T_n , typename T_prob >
+ + + + + + + + + + + + + + + + + + +
return_type<T_prob>::type stan::prob::bernoulli_ccdf_log (const T_n & n,
const T_prob & theta 
)
+
+ +

Definition at line 346 of file bernoulli.hpp.

+ +
+
+ +
+
+
+template<typename T_n , typename T_prob >
+ + + + + + + + + + + + + + + + + + +
return_type<T_prob>::type stan::prob::bernoulli_cdf (const T_n & n,
const T_prob & theta 
)
+
+ +

Definition at line 219 of file bernoulli.hpp.

+ +
+
+ +
+
+
+template<typename T_n , typename T_prob >
+ + + + + + + + + + + + + + + + + + +
return_type<T_prob>::type stan::prob::bernoulli_cdf_log (const T_n & n,
const T_prob & theta 
)
+
+ +

Definition at line 284 of file bernoulli.hpp.

+ +
+
+ +
+
+
+template<bool propto, typename T_n , typename T_prob >
+ + + + + + + + + + + + + + + + + + +
return_type<T_prob>::type stan::prob::bernoulli_log (const T_n & n,
const T_prob & theta 
)
+
+ +

Definition at line 25 of file bernoulli.hpp.

+ +
+
+ +
+
+
+template<typename T_y , typename T_prob >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
return_type<T_prob>::type stan::prob::bernoulli_log (const T_y & n,
const T_prob & theta 
)
+
+inline
+
+ +

Definition at line 122 of file bernoulli.hpp.

+ +
+
+ +
+
+
+template<bool propto, typename T_n , typename T_prob >
+ + + + + + + + + + + + + + + + + + +
return_type<T_prob>::type stan::prob::bernoulli_logit_log (const T_n & n,
const T_prob & theta 
)
+
+ +

Definition at line 132 of file bernoulli.hpp.

+ +
+
+ +
+
+
+template<typename T_n , typename T_prob >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
return_type<T_prob>::type stan::prob::bernoulli_logit_log (const T_n & n,
const T_prob & theta 
)
+
+inline
+
+ +

Definition at line 211 of file bernoulli.hpp.

+ +
+
+ +
+
+
+template<class RNG >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
int stan::prob::bernoulli_rng (const double theta,
RNG & rng 
)
+
+inline
+
+ +

Definition at line 410 of file bernoulli.hpp.

+ +
+
+ +
+
+
+template<typename T_n , typename T_N , typename T_size1 , typename T_size2 >
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
return_type<T_size1,T_size2>::type stan::prob::beta_binomial_ccdf_log (const T_n & n,
const T_N & N,
const T_size1 & alpha,
const T_size2 & beta 
)
+
+ +

Definition at line 452 of file beta_binomial.hpp.

+ +
+
+ +
+
+
+template<typename T_n , typename T_N , typename T_size1 , typename T_size2 >
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
return_type<T_size1,T_size2>::type stan::prob::beta_binomial_cdf (const T_n & n,
const T_N & N,
const T_size1 & alpha,
const T_size2 & beta 
)
+
+ +

Definition at line 196 of file beta_binomial.hpp.

+ +
+
+ +
+
+
+template<typename T_n , typename T_N , typename T_size1 , typename T_size2 >
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
return_type<T_size1,T_size2>::type stan::prob::beta_binomial_cdf_log (const T_n & n,
const T_N & N,
const T_size1 & alpha,
const T_size2 & beta 
)
+
+ +

Definition at line 331 of file beta_binomial.hpp.

+ +
+
+ +
+
+
+template<bool propto, typename T_n , typename T_N , typename T_size1 , typename T_size2 >
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
return_type<T_size1,T_size2>::type stan::prob::beta_binomial_log (const T_n & n,
const T_N & N,
const T_size1 & alpha,
const T_size2 & beta 
)
+
+ +

Definition at line 28 of file beta_binomial.hpp.

+ +
+
+ +
+
+
+template<typename T_n , typename T_N , typename T_size1 , typename T_size2 >
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
return_type<T_size1,T_size2>::type stan::prob::beta_binomial_log (const T_n & n,
const T_N & N,
const T_size1 & alpha,
const T_size2 & beta 
)
+
+ +

Definition at line 187 of file beta_binomial.hpp.

+ +
+
+ +
+
+
+template<class RNG >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
int stan::prob::beta_binomial_rng (const int N,
const double alpha,
const double beta,
RNG & rng 
)
+
+inline
+
+ +

Definition at line 572 of file beta_binomial.hpp.

+ +
+
+ +
+
+
+template<typename T_y , typename T_scale_succ , typename T_scale_fail >
+ + + + + + + + + + + + + + + + + + + + + + + + +
return_type<T_y,T_scale_succ,T_scale_fail>::type stan::prob::beta_ccdf_log (const T_y & y,
const T_scale_succ & alpha,
const T_scale_fail & beta 
)
+
+ +

Definition at line 509 of file beta.hpp.

+ +
+
+ +
+
+
+template<typename T_y , typename T_scale_succ , typename T_scale_fail >
+ + + + + + + + + + + + + + + + + + + + + + + + +
return_type<T_y,T_scale_succ,T_scale_fail>::type stan::prob::beta_cdf (const T_y & y,
const T_scale_succ & alpha,
const T_scale_fail & beta 
)
+
+ +

Calculates the beta cumulative distribution function for the given variate and scale variables.

+
Parameters
+ + + + +
yA scalar variate.
alphaPrior sample size.
betaPrior sample size.
+
+
+
Returns
The beta cdf evaluated at the specified arguments.
+
Template Parameters
+ + + + +
T_yType of y.
T_scale_succType of alpha.
T_scale_failType of beta.
+
+
+ +

Definition at line 224 of file beta.hpp.

+ +
+
+ +
+
+
+template<typename T_y , typename T_scale_succ , typename T_scale_fail >
+ + + + + + + + + + + + + + + + + + + + + + + + +
return_type<T_y,T_scale_succ,T_scale_fail>::type stan::prob::beta_cdf_log (const T_y & y,
const T_scale_succ & alpha,
const T_scale_fail & beta 
)
+
+ +

Definition at line 380 of file beta.hpp.

+ +
+
+ +
+
+
+template<bool propto, typename T_y , typename T_scale_succ , typename T_scale_fail >
+ + + + + + + + + + + + + + + + + + + + + + + + +
return_type<T_y,T_scale_succ,T_scale_fail>::type stan::prob::beta_log (const T_y & y,
const T_scale_succ & alpha,
const T_scale_fail & beta 
)
+
+ +

The log of the beta density for the specified scalar(s) given the specified sample size(s).

+

y, alpha, or beta can each either be scalar or std::vector. Any vector inputs must be the same length.

+

The result log probability is defined to be the sum of the log probabilities for each observation/alpha/beta triple.

+

Prior sample sizes, alpha and beta, must be greater than 0.

+
Parameters
+ + + + +
y(Sequence of) scalar(s).
alpha(Sequence of) prior sample size(s).
beta(Sequence of) prior sample size(s).
+
+
+
Returns
The log of the product of densities.
+
Template Parameters
+ + + + +
T_yType of scalar outcome.
T_scale_succType of prior scale for successes.
T_scale_failType of prior scale for failures.
+
+
+
Error Policy:
See Error Handling Policies for details. Conditions:
    +
  • All parameters must not be NaN.
  • +
  • alpha must be positive and finite.
  • +
  • beta must be positive and finite.
  • +
+
+ +

Definition at line 46 of file beta.hpp.

+ +
+
+ +
+
+
+template<typename T_y , typename T_scale_succ , typename T_scale_fail >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
return_type<T_y,T_scale_succ,T_scale_fail>::type stan::prob::beta_log (const T_y & y,
const T_scale_succ & alpha,
const T_scale_fail & beta 
)
+
+inline
+
+ +

Definition at line 205 of file beta.hpp.

+ +
+
+ +
+
+
+template<class RNG >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
double stan::prob::beta_rng (const double alpha,
const double beta,
RNG & rng 
)
+
+inline
+
+ +

Definition at line 635 of file beta.hpp.

+ +
+
+ +
+
+
+template<typename T_n , typename T_N , typename T_prob >
+ + + + + + + + + + + + + + + + + + + + + + + + +
return_type<T_prob>::type stan::prob::binomial_ccdf_log (const T_n & n,
const T_N & N,
const T_prob & theta 
)
+
+ +

Definition at line 417 of file binomial.hpp.

+ +
+
+ +
+
+
+template<typename T_n , typename T_N , typename T_prob >
+ + + + + + + + + + + + + + + + + + + + + + + + +
return_type<T_prob>::type stan::prob::binomial_cdf (const T_n & n,
const T_N & N,
const T_prob & theta 
)
+
+ +

Definition at line 258 of file binomial.hpp.

+ +
+
+ +
+
+
+template<typename T_n , typename T_N , typename T_prob >
+ + + + + + + + + + + + + + + + + + + + + + + + +
return_type<T_prob>::type stan::prob::binomial_cdf_log (const T_n & n,
const T_N & N,
const T_prob & theta 
)
+
+ +

Definition at line 344 of file binomial.hpp.

+ +
+
+ +
+
+
+template<bool propto, typename T_n , typename T_N , typename T_prob >
+ + + + + + + + + + + + + + + + + + + + + + + + +
return_type<T_prob>::type stan::prob::binomial_log (const T_n & n,
const T_N & N,
const T_prob & theta 
)
+
+ +

Definition at line 31 of file binomial.hpp.

+ +
+
+ +
+
+
+template<typename T_n , typename T_N , typename T_prob >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
return_type<T_prob>::type stan::prob::binomial_log (const T_n & n,
const T_N & N,
const T_prob & theta 
)
+
+inline
+
+ +

Definition at line 134 of file binomial.hpp.

+ +
+
+ +
+
+
+template<bool propto, typename T_n , typename T_N , typename T_prob >
+ + + + + + + + + + + + + + + + + + + + + + + + +
return_type<T_prob>::type stan::prob::binomial_logit_log (const T_n & n,
const T_N & N,
const T_prob & alpha 
)
+
+ +

Definition at line 147 of file binomial.hpp.

+ +
+
+ +
+
+
+template<typename T_n , typename T_N , typename T_prob >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
return_type<T_prob>::type stan::prob::binomial_logit_log (const T_n & n,
const T_N & N,
const T_prob & alpha 
)
+
+inline
+
+ +

Definition at line 248 of file binomial.hpp.

+ +
+
+ +
+
+
+template<class RNG >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
int stan::prob::binomial_rng (const int N,
const double theta,
RNG & rng 
)
+
+inline
+
+ +

Definition at line 491 of file binomial.hpp.

+ +
+
+ +
+
+
+template<bool propto, typename T_prob >
+ + + + + + + + + + + + + + + + + + +
boost::math::tools::promote_args<T_prob>::type stan::prob::categorical_log (int n,
const Eigen::Matrix< T_prob, Eigen::Dynamic, 1 > & theta 
)
+
+ +

Definition at line 22 of file categorical.hpp.

+ +
+
+ +
+
+
+template<typename T_prob >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
boost::math::tools::promote_args<T_prob>::type stan::prob::categorical_log (const typename Eigen::Matrix< T_prob, Eigen::Dynamic, 1 >::size_type n,
const Eigen::Matrix< T_prob, Eigen::Dynamic, 1 > & theta 
)
+
+inline
+
+ +

Definition at line 62 of file categorical.hpp.

+ +
+
+ +
+
+
+template<bool propto, typename T_prob >
+ + + + + + + + + + + + + + + + + + +
boost::math::tools::promote_args<T_prob>::type stan::prob::categorical_log (const std::vector< int > & ns,
const Eigen::Matrix< T_prob, Eigen::Dynamic, 1 > & theta 
)
+
+ +

Definition at line 72 of file categorical.hpp.

+ +
+
+ +
+
+
+template<typename T_prob >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
boost::math::tools::promote_args<T_prob>::type stan::prob::categorical_log (const std::vector< int > & ns,
const Eigen::Matrix< T_prob, Eigen::Dynamic, 1 > & theta 
)
+
+inline
+
+ +

Definition at line 128 of file categorical.hpp.

+ +
+
+ +
+
+
+template<bool propto, typename T_prob >
+ + + + + + + + + + + + + + + + + + +
boost::math::tools::promote_args<T_prob>::type stan::prob::categorical_logit_log (int n,
const Eigen::Matrix< T_prob, Eigen::Dynamic, 1 > & beta 
)
+
+ +

Definition at line 21 of file categorical_logit.hpp.

+ +
+
+ +
+
+
+template<typename T_prob >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
boost::math::tools::promote_args<T_prob>::type stan::prob::categorical_logit_log (int n,
const Eigen::Matrix< T_prob, Eigen::Dynamic, 1 > & beta 
)
+
+inline
+
+ +

Definition at line 48 of file categorical_logit.hpp.

+ +
+
+ +
+
+
+template<bool propto, typename T_prob >
+ + + + + + + + + + + + + + + + + + +
boost::math::tools::promote_args<T_prob>::type stan::prob::categorical_logit_log (const std::vector< int > & ns,
const Eigen::Matrix< T_prob, Eigen::Dynamic, 1 > & beta 
)
+
+ +

Definition at line 56 of file categorical_logit.hpp.

+ +
+
+ +
+
+
+template<typename T_prob >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
boost::math::tools::promote_args<T_prob>::type stan::prob::categorical_logit_log (const std::vector< int > & ns,
const Eigen::Matrix< T_prob, Eigen::Dynamic, 1 > & beta 
)
+
+inline
+
+ +

Definition at line 95 of file categorical_logit.hpp.

+ +
+
+ +
+
+
+template<class RNG >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
int stan::prob::categorical_rng (const Eigen::Matrix< double, Eigen::Dynamic, 1 > & theta,
RNG & rng 
)
+
+inline
+
+ +

Definition at line 135 of file categorical.hpp.

+ +
+
+ +
+
+
+template<typename T_y , typename T_loc , typename T_scale >
+ + + + + + + + + + + + + + + + + + + + + + + + +
return_type<T_y,T_loc,T_scale>::type stan::prob::cauchy_ccdf_log (const T_y & y,
const T_loc & mu,
const T_scale & sigma 
)
+
+ +

Definition at line 338 of file cauchy.hpp.

+ +
+
+ +
+
+
+template<typename T_y , typename T_loc , typename T_scale >
+ + + + + + + + + + + + + + + + + + + + + + + + +
return_type<T_y,T_loc,T_scale>::type stan::prob::cauchy_cdf (const T_y & y,
const T_loc & mu,
const T_scale & sigma 
)
+
+ +

Calculates the cauchy cumulative distribution function for the given variate, location, and scale.

+

$\frac{1}{\pi}\arctan\left(\frac{y-\mu}{\sigma}\right) + \frac{1}{2}$

+

Errors are configured by policy. All variables must be finite and the scale must be strictly greater than zero.

+
Parameters
+ + + + +
yA scalar variate.
muThe location parameter.
sigmaThe scale parameter.
+
+
+
Returns
+ +

Definition at line 162 of file cauchy.hpp.

+ +
+
+ +
+
+
+template<typename T_y , typename T_loc , typename T_scale >
+ + + + + + + + + + + + + + + + + + + + + + + + +
return_type<T_y,T_loc,T_scale>::type stan::prob::cauchy_cdf_log (const T_y & y,
const T_loc & mu,
const T_scale & sigma 
)
+
+ +

Definition at line 265 of file cauchy.hpp.

+ +
+
+ +
+
+
+template<bool propto, typename T_y , typename T_loc , typename T_scale >
+ + + + + + + + + + + + + + + + + + + + + + + + +
return_type<T_y,T_loc,T_scale>::type stan::prob::cauchy_log (const T_y & y,
const T_loc & mu,
const T_scale & sigma 
)
+
+ +

The log of the Cauchy density for the specified scalar(s) given the specified location parameter(s) and scale parameter(s).

+

y, mu, or sigma can each either be scalar or std::vector. Any vector inputs must be the same length.

+

The result log probability is defined to be the sum of the log probabilities for each observation/mu/sigma triple.

+
Parameters
+ + + + +
y(Sequence of) scalar(s).
mu(Sequence of) location(s).
sigma(Sequence of) scale(s).
+
+
+
Returns
The log of the product of densities.
+
Template Parameters
+ + + + +
T_yType of scalar outcome.
T_locType of location.
T_scaleType of scale.
+
+
+
Error Policy:
See Error Handling Policies for details. Conditions:
    +
  • All parameters must not be NaN.
  • +
  • sigma must be positive.
  • +
+
+ +

Definition at line 40 of file cauchy.hpp.

+ +
+
+ +
+
+
+template<typename T_y , typename T_loc , typename T_scale >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
return_type<T_y,T_loc,T_scale>::type stan::prob::cauchy_log (const T_y & y,
const T_loc & mu,
const T_scale & sigma 
)
+
+inline
+
+ +

Definition at line 140 of file cauchy.hpp.

+ +
+
+ +
+
+
+template<class RNG >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
double stan::prob::cauchy_rng (const double mu,
const double sigma,
RNG & rng 
)
+
+inline
+
+ +

Definition at line 410 of file cauchy.hpp.

+ +
+
+ +
+
+
+template<typename T_y , typename T_dof >
+ + + + + + + + + + + + + + + + + + +
return_type<T_y,T_dof>::type stan::prob::chi_square_ccdf_log (const T_y & y,
const T_dof & nu 
)
+
+ +

Definition at line 367 of file chi_square.hpp.

+ +
+
+ +
+
+
+template<typename T_y , typename T_dof >
+ + + + + + + + + + + + + + + + + + +
return_type<T_y,T_dof>::type stan::prob::chi_square_cdf (const T_y & y,
const T_dof & nu 
)
+
+ +

Calculates the chi square cumulative distribution function for the given variate and degrees of freedom.

+

y A scalar variate. nu Degrees of freedom.

+
Returns
The cdf of the chi square distribution
+ +

Definition at line 160 of file chi_square.hpp.

+ +
+
+ +
+
+
+template<typename T_y , typename T_dof >
+ + + + + + + + + + + + + + + + + + +
return_type<T_y,T_dof>::type stan::prob::chi_square_cdf_log (const T_y & y,
const T_dof & nu 
)
+
+ +

Definition at line 267 of file chi_square.hpp.

+ +
+
+ +
+
+
+template<bool propto, typename T_y , typename T_dof >
+ + + + + + + + + + + + + + + + + + +
return_type<T_y,T_dof>::type stan::prob::chi_square_log (const T_y & y,
const T_dof & nu 
)
+
+ +

The log of a chi-squared density for y with the specified degrees of freedom parameter.

+

The degrees of freedom prarameter must be greater than 0. y must be greater than or equal to 0.

+

+\begin{eqnarray*} y &\sim& \chi^2_\nu \\ \log (p (y \,|\, \nu)) &=& \log \left( \frac{2^{-\nu / 2}}{\Gamma (\nu / 2)} y^{\nu / 2 - 1} \exp^{- y / 2} \right) \\ &=& - \frac{\nu}{2} \log(2) - \log (\Gamma (\nu / 2)) + (\frac{\nu}{2} - 1) \log(y) - \frac{y}{2} \\ & & \mathrm{ where } \; y \ge 0 \end{eqnarray*} +

+
Parameters
+ + + +
yA scalar variable.
nuDegrees of freedom.
+
+
+
Exceptions
+ + + +
std::domain_errorif nu is not greater than or equal to 0
std::domain_errorif y is not greater than or equal to 0.
+
+
+
Template Parameters
+ + + +
T_yType of scalar.
T_dofType of degrees of freedom.
+
+
+ +

Definition at line 43 of file chi_square.hpp.

+ +
+
+ +
+
+
+template<typename T_y , typename T_dof >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
return_type<T_y,T_dof>::type stan::prob::chi_square_log (const T_y & y,
const T_dof & nu 
)
+
+inline
+
+ +

Definition at line 145 of file chi_square.hpp.

+ +
+
+ +
+
+
+template<class RNG >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
double stan::prob::chi_square_rng (const double nu,
RNG & rng 
)
+
+inline
+
+ +

Definition at line 467 of file chi_square.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + + + + + + + + + + + + + + + + + + + + +
Eigen::Matrix<T,Eigen::Dynamic,Eigen::Dynamic> stan::prob::cholesky_factor_constrain (const Eigen::Matrix< T, Eigen::Dynamic, 1 > & x,
int M,
int N 
)
+
+ +

Return the Cholesky factor of the specified size read from the specified vector.

+

A total of (N choose 2) + N + (M - N) * N elements are required to read an M by N Cholesky factor.

+
Template Parameters
+ + +
TType of scalars in matrix
+
+
+
Parameters
+ + + + +
xVector of unconstrained values
MNumber of rows
NNumber of columns
+
+
+
Returns
Cholesky factor
+ +

Definition at line 1334 of file transform.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Eigen::Matrix<T,Eigen::Dynamic,Eigen::Dynamic> stan::prob::cholesky_factor_constrain (const Eigen::Matrix< T, Eigen::Dynamic, 1 > & x,
int M,
int N,
T & lp 
)
+
+ +

Return the Cholesky factor of the specified size read from the specified vector and increment the specified log probability reference with the log Jacobian adjustment of the transform.

+

A total of (N choose 2) + N + N * (M - N) free parameters are required to read an M by N Cholesky factor.

+
Template Parameters
+ + +
TType of scalars in matrix
+
+
+
Parameters
+ + + + + +
xVector of unconstrained values
MNumber of rows
NNumber of columns
lpLog probability that is incremented with the log Jacobian
+
+
+
Returns
Cholesky factor
+ +

Definition at line 1376 of file transform.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + + + + +
Eigen::Matrix<T,Eigen::Dynamic,1> stan::prob::cholesky_factor_free (const Eigen::Matrix< T, Eigen::Dynamic, Eigen::Dynamic > & y)
+
+ +

Return the unconstrained vector of parameters correspdonding to the specified Cholesky factor.

+

A Cholesky factor must be lower triangular and have positive diagonal elements.

+
Parameters
+ + +
yCholesky factor.
+
+
+
Returns
Unconstrained parameters for Cholesky factor.
+
Exceptions
+ + +
std::domain_errorIf the matrix is not a Cholesky factor.
+
+
+ +

Definition at line 1406 of file transform.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + +
T stan::prob::corr_constrain (const T x)
+
+inline
+
+ +

Return the result of transforming the specified scalar to have a valid correlation value between -1 and 1 (inclusive).

+

The transform used is the hyperbolic tangent function,

+

$f(x) = \tanh x = \frac{\exp(2x) - 1}{\exp(2x) + 1}$.

+
Parameters
+ + +
xScalar input.
+
+
+
Returns
Result of transforming the input to fall between -1 and 1.
+
Template Parameters
+ + +
TType of scalar.
+
+
+ +

Definition at line 929 of file transform.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
T stan::prob::corr_constrain (const T x,
T & lp 
)
+
+inline
+
+ +

Return the result of transforming the specified scalar to have a valid correlation value between -1 and 1 (inclusive).

+

The transform used is as specified for corr_constrain(T). The log absolute Jacobian determinant is

+

$\log | \frac{d}{dx} \tanh x | = \log (1 - \tanh^2 x)$.

+
Template Parameters
+ + +
TType of scalar.
+
+
+ +

Definition at line 947 of file transform.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + +
T stan::prob::corr_free (const T y)
+
+inline
+
+ +

Return the unconstrained scalar that when transformed to a valid correlation produces the specified value.

+

This function inverts the transform defined for corr_constrain(T), which is the inverse hyperbolic tangent,

+

$ f^{-1}(y) = \mbox{atanh}\, y = \frac{1}{2} \log \frac{y + 1}{y - 1}$.

+
Parameters
+ + +
yCorrelation scalar input.
+
+
+
Returns
Free scalar that transforms to the specified input.
+
Template Parameters
+ + +
TType of scalar.
+
+
+ +

Definition at line 972 of file transform.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + + + + + + + + + + + + + + +
Eigen::Matrix<T,Eigen::Dynamic,Eigen::Dynamic> stan::prob::corr_matrix_constrain (const Eigen::Matrix< T, Eigen::Dynamic, 1 > & x,
typename Eigen::Matrix< T, Eigen::Dynamic, 1 >::size_type k 
)
+
+ +

Return the correlation matrix of the specified dimensionality derived from the specified vector of unconstrained values.

+

The input vector must be of length ${k \choose 2} = \frac{k(k-1)}{2}$. The values in the input vector represent unconstrained (partial) correlations among the dimensions.

+

The transform based on partial correlations is as specified in

+
    +
  • +Lewandowski, Daniel, Dorota Kurowicka, and Harry Joe. 2009. Generating random correlation matrices based on vines and extended onion method. Journal of Multivariate Analysis 100:1989–-2001.
  • +
+

The free vector entries are first constrained to be valid correlation values using corr_constrain(T).

+
Parameters
+ + + +
xVector of unconstrained partial correlations.
kDimensionality of returned correlation matrix.
+
+
+
Template Parameters
+ + +
TType of scalar.
+
+
+
Exceptions
+ + +
std::invalid_argumentif x is not a valid correlation matrix.
+
+
+ +

Definition at line 1456 of file transform.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + + + + + + + + + + + + + + + + + + + + +
Eigen::Matrix<T,Eigen::Dynamic,Eigen::Dynamic> stan::prob::corr_matrix_constrain (const Eigen::Matrix< T, Eigen::Dynamic, 1 > & x,
typename Eigen::Matrix< T, Eigen::Dynamic, 1 >::size_type k,
T & lp 
)
+
+ +

Return the correlation matrix of the specified dimensionality derived from the specified vector of unconstrained values.

+

The input vector must be of length ${k \choose 2} = \frac{k(k-1)}{2}$. The values in the input vector represent unconstrained (partial) correlations among the dimensions.

+

The transform is as specified for corr_matrix_constrain(Matrix,size_t); the paper it cites also defines the Jacobians for correlation inputs, which are composed with the correlation constrained Jacobians defined in corr_constrain(T,double) for this function.

+
Parameters
+ + + + +
xVector of unconstrained partial correlations.
kDimensionality of returned correlation matrix.
lpLog probability reference to increment.
+
+
+
Template Parameters
+ + +
TType of scalar.
+
+
+ +

Definition at line 1489 of file transform.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + + + + +
Eigen::Matrix<T,Eigen::Dynamic,1> stan::prob::corr_matrix_free (const Eigen::Matrix< T, Eigen::Dynamic, Eigen::Dynamic > & y)
+
+ +

Return the vector of unconstrained partial correlations that define the specified correlation matrix when transformed.

+

The constraining transform is defined as for corr_matrix_constrain(Matrix,size_t). The inverse transform in this function is simpler in that it only needs to compute the $k \choose 2$ partial correlations and then free those.

+
Parameters
+ + +
yThe correlation matrix to free.
+
+
+
Returns
Vector of unconstrained values that produce the specified correlation matrix when transformed.
+
Template Parameters
+ + +
TType of scalar.
+
+
+
Exceptions
+ + + +
std::domain_errorif the correlation matrix has no elements or is not a square matrix.
std::runtime_errorif the correlation matrix cannot be factorized by factor_cov_matrix() or if the sds returned by factor_cov_matrix() on log scale are unconstrained.
+
+
+ +

Definition at line 1524 of file transform.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + + + + + + + + + + + + + + +
Eigen::Matrix<T,Eigen::Dynamic,Eigen::Dynamic> stan::prob::cov_matrix_constrain (const Eigen::Matrix< T, Eigen::Dynamic, 1 > & x,
typename Eigen::Matrix< T, Eigen::Dynamic, 1 >::size_type K 
)
+
+ +

Return the symmetric, positive-definite matrix of dimensions K by K resulting from transforming the specified finite vector of size K plus (K choose 2).

+

See cov_matrix_free() for the inverse transform.

+
Parameters
+ + + +
xThe vector to convert to a covariance matrix.
KThe number of rows and columns of the resulting covariance matrix.
+
+
+
Exceptions
+ + +
std::domain_errorif (x.size() != K + (K choose 2)).
+
+
+ +

Definition at line 1567 of file transform.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + + + + + + + + + + + + + + + + + + + + +
Eigen::Matrix<T,Eigen::Dynamic,Eigen::Dynamic> stan::prob::cov_matrix_constrain (const Eigen::Matrix< T, Eigen::Dynamic, 1 > & x,
typename Eigen::Matrix< T, Eigen::Dynamic, 1 >::size_type K,
T & lp 
)
+
+ +

Return the symmetric, positive-definite matrix of dimensions K by K resulting from transforming the specified finite vector of size K plus (K choose 2).

+

See cov_matrix_free() for the inverse transform.

+
Parameters
+ + + + +
xThe vector to convert to a covariance matrix.
KThe dimensions of the resulting covariance matrix.
lpReference
+
+
+
Exceptions
+ + +
std::domain_errorif (x.size() != K + (K choose 2)).
+
+
+ +

Definition at line 1601 of file transform.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + + + + + + + + + + + + + + +
Eigen::Matrix<T,Eigen::Dynamic,Eigen::Dynamic> stan::prob::cov_matrix_constrain_lkj (const Eigen::Matrix< T, Eigen::Dynamic, 1 > & x,
size_t k 
)
+
+ +

Return the covariance matrix of the specified dimensionality derived from constraining the specified vector of unconstrained values.

+

The input vector must be of length $k \choose 2 + k$. The first $k \choose 2$ values in the input represent unconstrained (partial) correlations and the last $k$ are unconstrained standard deviations of the dimensions.

+

The transform scales the correlation matrix transform defined in corr_matrix_constrain(Matrix,size_t) with the constrained deviations.

+
Parameters
+ + + +
xInput vector of unconstrained partial correlations and standard deviations.
kDimensionality of returned covariance matrix.
+
+
+
Returns
Covariance matrix derived from the unconstrained partial correlations and deviations.
+
Template Parameters
+ + +
TType of scalar.
+
+
+ +

Definition at line 1696 of file transform.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + + + + + + + + + + + + + + + + + + + + +
Eigen::Matrix<T,Eigen::Dynamic,Eigen::Dynamic> stan::prob::cov_matrix_constrain_lkj (const Eigen::Matrix< T, Eigen::Dynamic, 1 > & x,
size_t k,
T & lp 
)
+
+ +

Return the covariance matrix of the specified dimensionality derived from constraining the specified vector of unconstrained values and increment the specified log probability reference with the log absolute Jacobian determinant.

+

The transform is defined as for cov_matrix_constrain(Matrix,size_t).

+

The log absolute Jacobian determinant is derived by composing the log absolute Jacobian determinant for the underlying correlation matrix as defined in cov_matrix_constrain(Matrix,size_t,T&) with the Jacobian of the transfrom of the correlation matrix into a covariance matrix by scaling by standard deviations.

+
Parameters
+ + + + +
xInput vector of unconstrained partial correlations and standard deviations.
kDimensionality of returned covariance matrix.
lpLog probability reference to increment.
+
+
+
Returns
Covariance matrix derived from the unconstrained partial correlations and deviations.
+
Template Parameters
+ + +
TType of scalar.
+
+
+ +

Definition at line 1735 of file transform.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + + + + +
Eigen::Matrix<T,Eigen::Dynamic,1> stan::prob::cov_matrix_free (const Eigen::Matrix< T, Eigen::Dynamic, Eigen::Dynamic > & y)
+
+ +

The covariance matrix derived from the symmetric view of the lower-triangular view of the K by K specified matrix is freed to return a vector of size K + (K choose 2).

+

This is the inverse of the cov_matrix_constrain() function so that for any finite vector x of size K

+
    +
  • (K choose 2),
  • +
+

x == cov_matrix_free(cov_matrix_constrain(x,K)).

+

In order for this round-trip to work (and really for this function to work), the symmetric view of its lower-triangular view must be positive definite.

+
Parameters
+ + +
yMatrix of dimensions K by K such that he symmetric view of the lower-triangular view is positive definite.
+
+
+
Returns
Vector of size K plus (K choose 2) in (-inf,inf) that produces
+
Exceptions
+ + +
std::domain_errorif y is not square, has zero dimensionality, or has a non-positive diagonal element.
+
+
+ +

Definition at line 1649 of file transform.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + + + + +
Eigen::Matrix<T,Eigen::Dynamic,1> stan::prob::cov_matrix_free_lkj (const Eigen::Matrix< T, Eigen::Dynamic, Eigen::Dynamic > & y)
+
+ +

Return the vector of unconstrained partial correlations and deviations that transform to the specified covariance matrix.

+

The constraining transform is defined as for cov_matrix_constrain(Matrix,size_t). The inverse first factors out the deviations, then applies the freeing transfrom of corr_matrix_free(Matrix&).

+
Parameters
+ + +
yCovariance matrix to free.
+
+
+
Returns
Vector of unconstrained values that transforms to the specified covariance matrix.
+
Template Parameters
+ + +
TType of scalar.
+
+
+
Exceptions
+ + + +
std::domain_errorif the correlation matrix has no elements or is not a square matrix.
std::runtime_errorif the correlation matrix cannot be factorized by factor_cov_matrix()
+
+
+ +

Definition at line 1769 of file transform.hpp.

+ +
+
+ +
+
+
+template<bool propto, typename T_prob , typename T_prior_sample_size >
+ + + + + + + + + + + + + + + + + + +
boost::math::tools::promote_args<T_prob,T_prior_sample_size>::type stan::prob::dirichlet_log (const Eigen::Matrix< T_prob, Eigen::Dynamic, 1 > & theta,
const Eigen::Matrix< T_prior_sample_size, Eigen::Dynamic, 1 > & alpha 
)
+
+ +

The log of the Dirichlet density for the given theta and a vector of prior sample sizes, alpha.

+

Each element of alpha must be greater than 0. Each element of theta must be greater than or 0. Theta sums to 1.

+

+\begin{eqnarray*} \theta &\sim& \mbox{\sf{Dirichlet}} (\alpha_1, \ldots, \alpha_k) \\ \log (p (\theta \,|\, \alpha_1, \ldots, \alpha_k) ) &=& \log \left( \frac{\Gamma(\alpha_1 + \cdots + \alpha_k)}{\Gamma(\alpha_1) \cdots \Gamma(\alpha_k)} \theta_1^{\alpha_1 - 1} \cdots \theta_k^{\alpha_k - 1} \right) \\ &=& \log (\Gamma(\alpha_1 + \cdots + \alpha_k)) - \log(\Gamma(\alpha_1)) - \cdots - \log(\Gamma(\alpha_k)) + (\alpha_1 - 1) \log (\theta_1) + \cdots + (\alpha_k - 1) \log (\theta_k) \end{eqnarray*} +

+
Parameters
+ + + +
thetaA scalar vector.
alphaPrior sample sizes.
+
+
+
Returns
The log of the Dirichlet density.
+
Exceptions
+ + + + +
std::domain_errorif any element of alpha is less than or equal to 0.
std::domain_errorif any element of theta is less than 0.
std::domain_errorif the sum of theta is not 1.
+
+
+
Template Parameters
+ + + +
T_probType of scalar.
T_prior_sample_sizeType of prior sample sizes.
+
+
+ +

Definition at line 46 of file dirichlet.hpp.

+ +
+
+ +
+
+
+template<typename T_prob , typename T_prior_sample_size >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
boost::math::tools::promote_args<T_prob,T_prior_sample_size>::type stan::prob::dirichlet_log (const Eigen::Matrix< T_prob, Eigen::Dynamic, 1 > & theta,
const Eigen::Matrix< T_prior_sample_size, Eigen::Dynamic, 1 > & alpha 
)
+
+inline
+
+ +

Definition at line 80 of file dirichlet.hpp.

+ +
+
+ +
+
+
+template<class RNG >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
Eigen::VectorXd stan::prob::dirichlet_rng (const Eigen::Matrix< double, Eigen::Dynamic, 1 > & alpha,
RNG & rng 
)
+
+inline
+
+ +

Definition at line 87 of file dirichlet.hpp.

+ +
+
+ +
+
+
+template<typename T_shape >
+ + + + + + + + + + + + + + + + + + +
T_shape stan::prob::do_lkj_constant (const T_shape & eta,
const unsigned int & K 
)
+
+ +

Definition at line 15 of file lkj_corr.hpp.

+ +
+
+ +
+
+
+template<typename T_y , typename T_loc , typename T_scale >
+ + + + + + + + + + + + + + + + + + + + + + + + +
return_type<T_y,T_loc,T_scale>::type stan::prob::double_exponential_ccdf_log (const T_y & y,
const T_loc & mu,
const T_scale & sigma 
)
+
+ +

Definition at line 314 of file double_exponential.hpp.

+ +
+
+ +
+
+
+template<typename T_y , typename T_loc , typename T_scale >
+ + + + + + + + + + + + + + + + + + + + + + + + +
return_type<T_y,T_loc,T_scale>::type stan::prob::double_exponential_cdf (const T_y & y,
const T_loc & mu,
const T_scale & sigma 
)
+
+ +

Calculates the double exponential cumulative density function.

+

$ f(y|\mu,\sigma) = \begin{cases} \ \frac{1}{2} \exp\left(\frac{y-\mu}{\sigma}\right), \mbox{if } y < \mu \\ 1 - \frac{1}{2} \exp\left(-\frac{y-\mu}{\sigma}\right), \mbox{if } y \ge \mu \ \end{cases}$

+
Parameters
+ + + + +
yA scalar variate.
muThe location parameter.
sigmaThe scale parameter.
+
+
+
Returns
The cumulative density function.
+ +

Definition at line 150 of file double_exponential.hpp.

+ +
+
+ +
+
+
+template<typename T_y , typename T_loc , typename T_scale >
+ + + + + + + + + + + + + + + + + + + + + + + + +
return_type<T_y,T_loc,T_scale>::type stan::prob::double_exponential_cdf_log (const T_y & y,
const T_loc & mu,
const T_scale & sigma 
)
+
+ +

Definition at line 232 of file double_exponential.hpp.

+ +
+
+ +
+
+
+template<bool propto, typename T_y , typename T_loc , typename T_scale >
+ + + + + + + + + + + + + + + + + + + + + + + + +
return_type<T_y,T_loc,T_scale>::type stan::prob::double_exponential_log (const T_y & y,
const T_loc & mu,
const T_scale & sigma 
)
+
+ +

Definition at line 27 of file double_exponential.hpp.

+ +
+
+ +
+
+
+template<typename T_y , typename T_loc , typename T_scale >
+ + + + + + + + + + + + + + + + + + + + + + + + +
return_type<T_y,T_loc,T_scale>::type stan::prob::double_exponential_log (const T_y & y,
const T_loc & mu,
const T_scale & sigma 
)
+
+ +

Definition at line 129 of file double_exponential.hpp.

+ +
+
+ +
+
+
+template<class RNG >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
double stan::prob::double_exponential_rng (const double mu,
const double sigma,
RNG & rng 
)
+
+inline
+
+ +

Definition at line 396 of file double_exponential.hpp.

+ +
+
+ +
+
+
+template<typename T_y , typename T_loc , typename T_scale , typename T_inv_scale >
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
return_type<T_y,T_loc,T_scale,T_inv_scale>::type stan::prob::exp_mod_normal_ccdf_log (const T_y & y,
const T_loc & mu,
const T_scale & sigma,
const T_inv_scale & lambda 
)
+
+ +

Definition at line 389 of file exp_mod_normal.hpp.

+ +
+
+ +
+
+
+template<typename T_y , typename T_loc , typename T_scale , typename T_inv_scale >
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
return_type<T_y,T_loc,T_scale,T_inv_scale>::type stan::prob::exp_mod_normal_cdf (const T_y & y,
const T_loc & mu,
const T_scale & sigma,
const T_inv_scale & lambda 
)
+
+ +

Definition at line 151 of file exp_mod_normal.hpp.

+ +
+
+ +
+
+
+template<typename T_y , typename T_loc , typename T_scale , typename T_inv_scale >
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
return_type<T_y,T_loc,T_scale,T_inv_scale>::type stan::prob::exp_mod_normal_cdf_log (const T_y & y,
const T_loc & mu,
const T_scale & sigma,
const T_inv_scale & lambda 
)
+
+ +

Definition at line 274 of file exp_mod_normal.hpp.

+ +
+
+ +
+
+
+template<bool propto, typename T_y , typename T_loc , typename T_scale , typename T_inv_scale >
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
return_type<T_y,T_loc,T_scale, T_inv_scale>::type stan::prob::exp_mod_normal_log (const T_y & y,
const T_loc & mu,
const T_scale & sigma,
const T_inv_scale & lambda 
)
+
+ +

Definition at line 26 of file exp_mod_normal.hpp.

+ +
+
+ +
+
+
+template<typename T_y , typename T_loc , typename T_scale , typename T_inv_scale >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
return_type<T_y,T_loc,T_scale, T_inv_scale>::type stan::prob::exp_mod_normal_log (const T_y & y,
const T_loc & mu,
const T_scale & sigma,
const T_inv_scale & lambda 
)
+
+inline
+
+ +

Definition at line 143 of file exp_mod_normal.hpp.

+ +
+
+ +
+
+
+template<class RNG >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
double stan::prob::exp_mod_normal_rng (const double mu,
const double sigma,
const double lambda,
RNG & rng 
)
+
+inline
+
+ +

Definition at line 502 of file exp_mod_normal.hpp.

+ +
+
+ +
+
+
+template<typename T_y , typename T_inv_scale >
+ + + + + + + + + + + + + + + + + + +
return_type<T_y,T_inv_scale>::type stan::prob::exponential_ccdf_log (const T_y & y,
const T_inv_scale & beta 
)
+
+ +

Definition at line 239 of file exponential.hpp.

+ +
+
+ +
+
+
+template<typename T_y , typename T_inv_scale >
+ + + + + + + + + + + + + + + + + + +
return_type<T_y,T_inv_scale>::type stan::prob::exponential_cdf (const T_y & y,
const T_inv_scale & beta 
)
+
+ +

Calculates the exponential cumulative distribution function for the given y and beta.

+

Inverse scale parameter must be greater than 0. y must be greater than or equal to 0.

+
Parameters
+ + + +
yA scalar variable.
betaInverse scale parameter.
+
+
+
Template Parameters
+ + + + +
T_yType of scalar.
T_inv_scaleType of inverse scale.
PolicyError-handling policy.
+
+
+ +

Definition at line 129 of file exponential.hpp.

+ +
+
+ +
+
+
+template<typename T_y , typename T_inv_scale >
+ + + + + + + + + + + + + + + + + + +
return_type<T_y,T_inv_scale>::type stan::prob::exponential_cdf_log (const T_y & y,
const T_inv_scale & beta 
)
+
+ +

Definition at line 188 of file exponential.hpp.

+ +
+
+ +
+
+
+template<bool propto, typename T_y , typename T_inv_scale >
+ + + + + + + + + + + + + + + + + + +
return_type<T_y,T_inv_scale>::type stan::prob::exponential_log (const T_y & y,
const T_inv_scale & beta 
)
+
+ +

The log of an exponential density for y with the specified inverse scale parameter.

+

Inverse scale parameter must be greater than 0. y must be greater than or equal to 0.

+

+\begin{eqnarray*} y &\sim& \mbox{\sf{Expon}}(\beta) \\ \log (p (y \,|\, \beta) ) &=& \log \left( \beta \exp^{-\beta y} \right) \\ &=& \log (\beta) - \beta y \\ & & \mathrm{where} \; y > 0 \end{eqnarray*} +

+
Parameters
+ + + +
yA scalar variable.
betaInverse scale parameter.
+
+
+
Exceptions
+ + + +
std::domain_errorif beta is not greater than 0.
std::domain_errorif y is not greater than or equal to 0.
+
+
+
Template Parameters
+ + + +
T_yType of scalar.
T_inv_scaleType of inverse scale.
+
+
+ +

Definition at line 46 of file exponential.hpp.

+ +
+
+ +
+
+
+template<typename T_y , typename T_inv_scale >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
return_type<T_y,T_inv_scale>::type stan::prob::exponential_log (const T_y & y,
const T_inv_scale & beta 
)
+
+inline
+
+ +

Definition at line 108 of file exponential.hpp.

+ +
+
+ +
+
+
+template<class RNG >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
double stan::prob::exponential_rng (const double beta,
RNG & rng 
)
+
+inline
+
+ +

Definition at line 288 of file exponential.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + + + + + + + + + + + + + + + + + + + + +
bool stan::prob::factor_cov_matrix (Eigen::Array< T, Eigen::Dynamic, 1 > & CPCs,
Eigen::Array< T, Eigen::Dynamic, 1 > & sds,
const Eigen::Matrix< T, Eigen::Dynamic, Eigen::Dynamic > & Sigma 
)
+
+ +

This function is intended to make starting values, given a covariance matrix Sigma.

+

The transformations are hard coded as log for standard deviations and Fisher transformations (atanh()) of CPCs

+
Parameters
+ + + + +
CPCsfill this unbounded
sdsfill this unbounded
Sigmacovariance matrix
+
+
+
Returns
false if any of the diagonals of Sigma are 0
+ +

Definition at line 45 of file transform.hpp.

+ +
+
+ +
+
+
+template<typename T_y , typename T_shape , typename T_inv_scale >
+ + + + + + + + + + + + + + + + + + + + + + + + +
return_type<T_y,T_shape,T_inv_scale>::type stan::prob::gamma_ccdf_log (const T_y & y,
const T_shape & alpha,
const T_inv_scale & beta 
)
+
+ +

Definition at line 420 of file gamma.hpp.

+ +
+
+ +
+
+
+template<typename T_y , typename T_shape , typename T_inv_scale >
+ + + + + + + + + + + + + + + + + + + + + + + + +
return_type<T_y,T_shape,T_inv_scale>::type stan::prob::gamma_cdf (const T_y & y,
const T_shape & alpha,
const T_inv_scale & beta 
)
+
+ +

The cumulative density function for a gamma distribution for y with the specified shape and inverse scale parameters.

+
Parameters
+ + + + +
yA scalar variable.
alphaShape parameter.
betaInverse scale parameter.
+
+
+
Exceptions
+ + + + +
std::domain_errorif alpha is not greater than 0.
std::domain_errorif beta is not greater than 0.
std::domain_errorif y is not greater than or equal to 0.
+
+
+
Template Parameters
+ + + + +
T_yType of scalar.
T_shapeType of shape.
T_inv_scaleType of inverse scale.
+
+
+ +

Definition at line 184 of file gamma.hpp.

+ +
+
+ +
+
+
+template<typename T_y , typename T_shape , typename T_inv_scale >
+ + + + + + + + + + + + + + + + + + + + + + + + +
return_type<T_y,T_shape,T_inv_scale>::type stan::prob::gamma_cdf_log (const T_y & y,
const T_shape & alpha,
const T_inv_scale & beta 
)
+
+ +

Definition at line 307 of file gamma.hpp.

+ +
+
+ +
+
+
+template<bool propto, typename T_y , typename T_shape , typename T_inv_scale >
+ + + + + + + + + + + + + + + + + + + + + + + + +
return_type<T_y,T_shape,T_inv_scale>::type stan::prob::gamma_log (const T_y & y,
const T_shape & alpha,
const T_inv_scale & beta 
)
+
+ +

The log of a gamma density for y with the specified shape and inverse scale parameters.

+

Shape and inverse scale parameters must be greater than 0. y must be greater than or equal to 0.

+

+\begin{eqnarray*} y &\sim& \mbox{\sf{Gamma}}(\alpha, \beta) \\ \log (p (y \,|\, \alpha, \beta) ) &=& \log \left( \frac{\beta^\alpha}{\Gamma(\alpha)} y^{\alpha - 1} \exp^{- \beta y} \right) \\ &=& \alpha \log(\beta) - \log(\Gamma(\alpha)) + (\alpha - 1) \log(y) - \beta y\\ & & \mathrm{where} \; y > 0 \end{eqnarray*} +

+
Parameters
+ + + + +
yA scalar variable.
alphaShape parameter.
betaInverse scale parameter.
+
+
+
Exceptions
+ + + + +
std::domain_errorif alpha is not greater than 0.
std::domain_errorif beta is not greater than 0.
std::domain_errorif y is not greater than or equal to 0.
+
+
+
Template Parameters
+ + + + +
T_yType of scalar.
T_shapeType of shape.
T_inv_scaleType of inverse scale.
+
+
+ +

Definition at line 46 of file gamma.hpp.

+ +
+
+ +
+
+
+template<typename T_y , typename T_shape , typename T_inv_scale >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
return_type<T_y,T_shape,T_inv_scale>::type stan::prob::gamma_log (const T_y & y,
const T_shape & alpha,
const T_inv_scale & beta 
)
+
+inline
+
+ +

Definition at line 163 of file gamma.hpp.

+ +
+
+ +
+
+
+template<class RNG >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
double stan::prob::gamma_rng (const double alpha,
const double beta,
RNG & rng 
)
+
+inline
+
+ +

Definition at line 533 of file gamma.hpp.

+ +
+
+ +
+
+
+template<bool propto, typename T_y , typename T_F , typename T_G , typename T_V , typename T_W , typename T_m0 , typename T_C0 >
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
return_type< T_y, typename return_type<T_F,T_G,T_V,T_W,T_m0,T_C0>::type >::type stan::prob::gaussian_dlm_obs_log (const Eigen::Matrix< T_y, Eigen::Dynamic, Eigen::Dynamic > & y,
const Eigen::Matrix< T_F, Eigen::Dynamic, Eigen::Dynamic > & F,
const Eigen::Matrix< T_G, Eigen::Dynamic, Eigen::Dynamic > & G,
const Eigen::Matrix< T_V, Eigen::Dynamic, Eigen::Dynamic > & V,
const Eigen::Matrix< T_W, Eigen::Dynamic, Eigen::Dynamic > & W,
const Eigen::Matrix< T_m0, Eigen::Dynamic, 1 > & m0,
const Eigen::Matrix< T_C0, Eigen::Dynamic, Eigen::Dynamic > & C0 
)
+
+ +

The log of a Gaussian dynamic linear model (GDLM).

+

This distribution is equivalent to, for $t = 1:T$,

+

+\begin{eqnarray*} y_t & \sim N(F' \theta_t, V) \\ \theta_t & \sim N(G \theta_{t-1}, W) \\ \theta_0 & \sim N(m_0, C_0) \end{eqnarray*} +

+

If V is a vector, then the Kalman filter is applied sequentially.

+
Parameters
+ + + + + + + + +
yA r x T matrix of observations. Rows are variables, columns are observations.
FA n x r matrix. The design matrix.
GA n x n matrix. The transition matrix.
VA r x r matrix. The observation covariance matrix.
WA n x n matrix. The state covariance matrix.
m0A n x 1 matrix. The mean vector of the distribution of the initial state.
C0A n x n matrix. The covariance matrix of the distribution of the initial state.
+
+
+
Returns
The log of the joint density of the GDLM.
+
Exceptions
+ + +
std::domain_errorif a matrix in the Kalman filter is not positive semi-definite.
+
+
+
Template Parameters
+ + + + + + + + +
T_yType of scalar.
T_FType of design matrix.
T_GType of transition matrix.
T_VType of observation covariance matrix.
T_WType of state covariance matrix.
T_m0Type of initial state mean vector.
T_C0Type of initial state covariance matrix.
+
+
+ +

Definition at line 80 of file gaussian_dlm_obs.hpp.

+ +
+
+ +
+
+
+template<typename T_y , typename T_F , typename T_G , typename T_V , typename T_W , typename T_m0 , typename T_C0 >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
return_type< T_y, typename return_type<T_F,T_G,T_V,T_W,T_m0,T_C0>::type >::type stan::prob::gaussian_dlm_obs_log (const Eigen::Matrix< T_y, Eigen::Dynamic, Eigen::Dynamic > & y,
const Eigen::Matrix< T_F, Eigen::Dynamic, Eigen::Dynamic > & F,
const Eigen::Matrix< T_G, Eigen::Dynamic, Eigen::Dynamic > & G,
const Eigen::Matrix< T_V, Eigen::Dynamic, Eigen::Dynamic > & V,
const Eigen::Matrix< T_W, Eigen::Dynamic, Eigen::Dynamic > & W,
const Eigen::Matrix< T_m0, Eigen::Dynamic, 1 > & m0,
const Eigen::Matrix< T_C0, Eigen::Dynamic, Eigen::Dynamic > & C0 
)
+
+inline
+
+ +

Definition at line 258 of file gaussian_dlm_obs.hpp.

+ +
+
+ +
+
+
+template<bool propto, typename T_y , typename T_F , typename T_G , typename T_V , typename T_W , typename T_m0 , typename T_C0 >
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
return_type< T_y, typename return_type<T_F,T_G,T_V,T_W,T_m0,T_C0>::type >::type stan::prob::gaussian_dlm_obs_log (const Eigen::Matrix< T_y, Eigen::Dynamic, Eigen::Dynamic > & y,
const Eigen::Matrix< T_F, Eigen::Dynamic, Eigen::Dynamic > & F,
const Eigen::Matrix< T_G, Eigen::Dynamic, Eigen::Dynamic > & G,
const Eigen::Matrix< T_V, Eigen::Dynamic, 1 > & V,
const Eigen::Matrix< T_W, Eigen::Dynamic, Eigen::Dynamic > & W,
const Eigen::Matrix< T_m0, Eigen::Dynamic, 1 > & m0,
const Eigen::Matrix< T_C0, Eigen::Dynamic, Eigen::Dynamic > & C0 
)
+
+ +

The log of a Gaussian dynamic linear model (GDLM) with uncorrelated observation disturbances.

+

This distribution is equivalent to, for $t = 1:T$,

+

+\begin{eqnarray*} y_t & \sim N(F' \theta_t, diag(V)) \\ \theta_t & \sim N(G \theta_{t-1}, W) \\ \theta_0 & \sim N(m_0, C_0) \end{eqnarray*} +

+

If V is a vector, then the Kalman filter is applied sequentially.

+
Parameters
+ + + + + + + + +
yA r x T matrix of observations. Rows are variables, columns are observations.
FA n x r matrix. The design matrix.
GA n x n matrix. The transition matrix.
VA size r vector. The diagonal of the observation covariance matrix.
WA n x n matrix. The state covariance matrix.
m0A n x 1 matrix. The mean vector of the distribution of the initial state.
C0A n x n matrix. The covariance matrix of the distribution of the initial state.
+
+
+
Returns
The log of the joint density of the GDLM.
+
Exceptions
+ + +
std::domain_errorif a matrix in the Kalman filter is not semi-positive definite.
+
+
+
Template Parameters
+ + + + + + + + +
T_yType of scalar.
T_FType of design matrix.
T_GType of transition matrix.
T_VType of observation variances
T_WType of state covariance matrix.
T_m0Type of initial state mean vector.
T_C0Type of initial state covariance matrix.
+
+
+ +

Definition at line 312 of file gaussian_dlm_obs.hpp.

+ +
+
+ +
+
+
+template<typename T_y , typename T_F , typename T_G , typename T_V , typename T_W , typename T_m0 , typename T_C0 >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
return_type< T_y, typename return_type<T_F,T_G,T_V,T_W,T_m0,T_C0>::type >::type stan::prob::gaussian_dlm_obs_log (const Eigen::Matrix< T_y, Eigen::Dynamic, Eigen::Dynamic > & y,
const Eigen::Matrix< T_F, Eigen::Dynamic, Eigen::Dynamic > & F,
const Eigen::Matrix< T_G, Eigen::Dynamic, Eigen::Dynamic > & G,
const Eigen::Matrix< T_V, Eigen::Dynamic, 1 > & V,
const Eigen::Matrix< T_W, Eigen::Dynamic, Eigen::Dynamic > & W,
const Eigen::Matrix< T_m0, Eigen::Dynamic, 1 > & m0,
const Eigen::Matrix< T_C0, Eigen::Dynamic, Eigen::Dynamic > & C0 
)
+
+inline
+
+ +

Definition at line 495 of file gaussian_dlm_obs.hpp.

+ +
+
+ +
+
+
+template<typename T_y , typename T_loc , typename T_scale >
+ + + + + + + + + + + + + + + + + + + + + + + + +
return_type<T_y,T_loc,T_scale>::type stan::prob::gumbel_ccdf_log (const T_y & y,
const T_loc & mu,
const T_scale & beta 
)
+
+ +

Definition at line 249 of file gumbel.hpp.

+ +
+
+ +
+
+
+template<typename T_y , typename T_loc , typename T_scale >
+ + + + + + + + + + + + + + + + + + + + + + + + +
return_type<T_y,T_loc,T_scale>::type stan::prob::gumbel_cdf (const T_y & y,
const T_loc & mu,
const T_scale & beta 
)
+
+ +

Definition at line 118 of file gumbel.hpp.

+ +
+
+ +
+
+
+template<typename T_y , typename T_loc , typename T_scale >
+ + + + + + + + + + + + + + + + + + + + + + + + +
return_type<T_y,T_loc,T_scale>::type stan::prob::gumbel_cdf_log (const T_y & y,
const T_loc & mu,
const T_scale & beta 
)
+
+ +

Definition at line 191 of file gumbel.hpp.

+ +
+
+ +
+
+
+template<bool propto, typename T_y , typename T_loc , typename T_scale >
+ + + + + + + + + + + + + + + + + + + + + + + + +
return_type<T_y,T_loc,T_scale>::type stan::prob::gumbel_log (const T_y & y,
const T_loc & mu,
const T_scale & beta 
)
+
+ +

Definition at line 21 of file gumbel.hpp.

+ +
+
+ +
+
+
+template<typename T_y , typename T_loc , typename T_scale >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
return_type<T_y,T_loc,T_scale>::type stan::prob::gumbel_log (const T_y & y,
const T_loc & mu,
const T_scale & beta 
)
+
+inline
+
+ +

Definition at line 112 of file gumbel.hpp.

+ +
+
+ +
+
+
+template<class RNG >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
double stan::prob::gumbel_rng (const double mu,
const double beta,
RNG & rng 
)
+
+inline
+
+ +

Definition at line 309 of file gumbel.hpp.

+ +
+
+ +
+
+
+template<bool propto, typename T_n , typename T_N , typename T_a , typename T_b >
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
double stan::prob::hypergeometric_log (const T_n & n,
const T_N & N,
const T_a & a,
const T_b & b 
)
+
+ +

Definition at line 25 of file hypergeometric.hpp.

+ +
+
+ +
+
+
+template<typename T_n , typename T_N , typename T_a , typename T_b >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
double stan::prob::hypergeometric_log (const T_n & n,
const T_N & N,
const T_a & a,
const T_b & b 
)
+
+inline
+
+ +

Definition at line 84 of file hypergeometric.hpp.

+ +
+
+ +
+
+
+template<class RNG >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
int stan::prob::hypergeometric_rng (const int N,
const int a,
const int b,
RNG & rng 
)
+
+inline
+
+ +

Definition at line 93 of file hypergeometric.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + +
T stan::prob::identity_constrain (x)
+
+inline
+
+ +

Returns the result of applying the identity constraint transform to the input.

+

This method is effectively a no-op and is mainly useful as a placeholder in auto-generated code.

+
Parameters
+ + +
xFree scalar.
+
+
+
Returns
Transformed input.
+
Template Parameters
+ + +
TType of scalar.
+
+
+ +

Definition at line 373 of file transform.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
T stan::prob::identity_constrain (const T x,
T &  
)
+
+inline
+
+ +

Returns the result of applying the identity constraint transform to the input and increments the log probability reference with the log absolute Jacobian determinant.

+

This method is effectively a no-op and mainly useful as a placeholder in auto-generated code.

+
Parameters
+ + +
xFree scalar. lp Reference to log probability.
+
+
+
Returns
Transformed input.
+
Template Parameters
+ + +
TType of scalar.
+
+
+ +

Definition at line 392 of file transform.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + +
T stan::prob::identity_free (const T y)
+
+inline
+
+ +

Returns the result of applying the inverse of the identity constraint transform to the input.

+

This method is effectively a no-op and mainly useful as a placeholder in auto-generated code.

+
Parameters
+ + +
yConstrained scalar.
+
+
+
Returns
The input.
+
Template Parameters
+ + +
TType of scalar.
+
+
+ +

Definition at line 409 of file transform.hpp.

+ +
+
+ +
+
+
+template<typename T_y , typename T_dof >
+ + + + + + + + + + + + + + + + + + +
return_type<T_y,T_dof>::type stan::prob::inv_chi_square_ccdf_log (const T_y & y,
const T_dof & nu 
)
+
+ +

Definition at line 351 of file inv_chi_square.hpp.

+ +
+
+ +
+
+
+template<typename T_y , typename T_dof >
+ + + + + + + + + + + + + + + + + + +
return_type<T_y,T_dof>::type stan::prob::inv_chi_square_cdf (const T_y & y,
const T_dof & nu 
)
+
+ +

Definition at line 142 of file inv_chi_square.hpp.

+ +
+
+ +
+
+
+template<typename T_y , typename T_dof >
+ + + + + + + + + + + + + + + + + + +
return_type<T_y,T_dof>::type stan::prob::inv_chi_square_cdf_log (const T_y & y,
const T_dof & nu 
)
+
+ +

Definition at line 251 of file inv_chi_square.hpp.

+ +
+
+ +
+
+
+template<bool propto, typename T_y , typename T_dof >
+ + + + + + + + + + + + + + + + + + +
return_type<T_y,T_dof>::type stan::prob::inv_chi_square_log (const T_y & y,
const T_dof & nu 
)
+
+ +

The log of an inverse chi-squared density for y with the specified degrees of freedom parameter.

+

The degrees of freedom prarameter must be greater than 0. y must be greater than 0.

+

+\begin{eqnarray*} y &\sim& \mbox{\sf{Inv-}}\chi^2_\nu \\ \log (p (y \,|\, \nu)) &=& \log \left( \frac{2^{-\nu / 2}}{\Gamma (\nu / 2)} y^{- (\nu / 2 + 1)} \exp^{-1 / (2y)} \right) \\ &=& - \frac{\nu}{2} \log(2) - \log (\Gamma (\nu / 2)) - (\frac{\nu}{2} + 1) \log(y) - \frac{1}{2y} \\ & & \mathrm{ where } \; y > 0 \end{eqnarray*} +

+
Parameters
+ + + +
yA scalar variable.
nuDegrees of freedom.
+
+
+
Exceptions
+ + + +
std::domain_errorif nu is not greater than or equal to 0
std::domain_errorif y is not greater than or equal to 0.
+
+
+
Template Parameters
+ + + +
T_yType of scalar.
T_dofType of degrees of freedom.
+
+
+ +

Definition at line 43 of file inv_chi_square.hpp.

+ +
+
+ +
+
+
+template<typename T_y , typename T_dof >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
return_type<T_y,T_dof>::type stan::prob::inv_chi_square_log (const T_y & y,
const T_dof & nu 
)
+
+inline
+
+ +

Definition at line 136 of file inv_chi_square.hpp.

+ +
+
+ +
+
+
+template<class RNG >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
double stan::prob::inv_chi_square_rng (const double nu,
RNG & rng 
)
+
+inline
+
+ +

Definition at line 451 of file inv_chi_square.hpp.

+ +
+
+ +
+
+
+template<typename T_y , typename T_shape , typename T_scale >
+ + + + + + + + + + + + + + + + + + + + + + + + +
return_type<T_y,T_shape,T_scale>::type stan::prob::inv_gamma_ccdf_log (const T_y & y,
const T_shape & alpha,
const T_scale & beta 
)
+
+ +

Definition at line 434 of file inv_gamma.hpp.

+ +
+
+ +
+
+
+template<typename T_y , typename T_shape , typename T_scale >
+ + + + + + + + + + + + + + + + + + + + + + + + +
return_type<T_y,T_shape,T_scale>::type stan::prob::inv_gamma_cdf (const T_y & y,
const T_shape & alpha,
const T_scale & beta 
)
+
+ +

The CDF of an inverse gamma density for y with the specified shape and scale parameters.

+

y, shape, and scale parameters must be greater than 0.

+
Parameters
+ + + + +
yA scalar variable.
alphaShape parameter.
betaScale parameter.
+
+
+
Exceptions
+ + + + +
std::domain_errorif alpha is not greater than 0.
std::domain_errorif beta is not greater than 0.
std::domain_errorif y is not greater than 0.
+
+
+
Template Parameters
+ + + + +
T_yType of scalar.
T_shapeType of shape.
T_scaleType of scale.
+
+
+ +

Definition at line 190 of file inv_gamma.hpp.

+ +
+
+ +
+
+
+template<typename T_y , typename T_shape , typename T_scale >
+ + + + + + + + + + + + + + + + + + + + + + + + +
return_type<T_y,T_shape,T_scale>::type stan::prob::inv_gamma_cdf_log (const T_y & y,
const T_shape & alpha,
const T_scale & beta 
)
+
+ +

Definition at line 317 of file inv_gamma.hpp.

+ +
+
+ +
+
+
+template<bool propto, typename T_y , typename T_shape , typename T_scale >
+ + + + + + + + + + + + + + + + + + + + + + + + +
return_type<T_y,T_shape,T_scale>::type stan::prob::inv_gamma_log (const T_y & y,
const T_shape & alpha,
const T_scale & beta 
)
+
+ +

The log of an inverse gamma density for y with the specified shape and scale parameters.

+

Shape and scale parameters must be greater than 0. y must be greater than 0.

+
Parameters
+ + + + +
yA scalar variable.
alphaShape parameter.
betaScale parameter.
+
+
+
Exceptions
+ + + + +
std::domain_errorif alpha is not greater than 0.
std::domain_errorif beta is not greater than 0.
std::domain_errorif y is not greater than 0.
+
+
+
Template Parameters
+ + + + +
T_yType of scalar.
T_shapeType of shape.
T_scaleType of scale.
+
+
+ +

Definition at line 40 of file inv_gamma.hpp.

+ +
+
+ +
+
+
+template<typename T_y , typename T_shape , typename T_scale >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
return_type<T_y,T_shape,T_scale>::type stan::prob::inv_gamma_log (const T_y & y,
const T_shape & alpha,
const T_scale & beta 
)
+
+inline
+
+ +

Definition at line 168 of file inv_gamma.hpp.

+ +
+
+ +
+
+
+template<class RNG >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
double stan::prob::inv_gamma_rng (const double alpha,
const double beta,
RNG & rng 
)
+
+inline
+
+ +

Definition at line 551 of file inv_gamma.hpp.

+ +
+
+ +
+
+
+template<bool propto, typename T_y , typename T_dof , typename T_scale >
+ + + + + + + + + + + + + + + + + + + + + + + + +
boost::math::tools::promote_args<T_y,T_dof,T_scale>::type stan::prob::inv_wishart_log (const Eigen::Matrix< T_y, Eigen::Dynamic, Eigen::Dynamic > & W,
const T_dof & nu,
const Eigen::Matrix< T_scale, Eigen::Dynamic, Eigen::Dynamic > & S 
)
+
+ +

The log of the Inverse-Wishart density for the given W, degrees of freedom, and scale matrix.

+

The scale matrix, S, must be k x k, symmetric, and semi-positive definite.

+

+\begin{eqnarray*} W &\sim& \mbox{\sf{Inv-Wishart}}_{\nu} (S) \\ \log (p (W \,|\, \nu, S) ) &=& \log \left( \left(2^{\nu k/2} \pi^{k (k-1) /4} \prod_{i=1}^k{\Gamma (\frac{\nu + 1 - i}{2})} \right)^{-1} \times \left| S \right|^{\nu/2} \left| W \right|^{-(\nu + k + 1) / 2} \times \exp (-\frac{1}{2} \mbox{tr} (S W^{-1})) \right) \\ &=& -\frac{\nu k}{2}\log(2) - \frac{k (k-1)}{4} \log(\pi) - \sum_{i=1}^{k}{\log (\Gamma (\frac{\nu+1-i}{2}))} +\frac{\nu}{2} \log(\det(S)) - \frac{\nu+k+1}{2}\log (\det(W)) - \frac{1}{2} \mbox{tr}(S W^{-1}) \end{eqnarray*} +

+
Parameters
+ + + + +
WA scalar matrix
nuDegrees of freedom
SThe scale matrix
+
+
+
Returns
The log of the Inverse-Wishart density at W given nu and S.
+
Exceptions
+ + + +
std::domain_errorif nu is not greater than k-1
std::domain_errorif S is not square, not symmetric, or not semi-positive definite.
+
+
+
Template Parameters
+ + + + +
T_yType of scalar.
T_dofType of degrees of freedom.
T_scaleType of scale.
+
+
+ +

Definition at line 51 of file inv_wishart.hpp.

+ +
+
+ +
+
+
+template<typename T_y , typename T_dof , typename T_scale >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
boost::math::tools::promote_args<T_y,T_dof,T_scale>::type stan::prob::inv_wishart_log (const Eigen::Matrix< T_y, Eigen::Dynamic, Eigen::Dynamic > & W,
const T_dof & nu,
const Eigen::Matrix< T_scale, Eigen::Dynamic, Eigen::Dynamic > & S 
)
+
+inline
+
+ +

Definition at line 126 of file inv_wishart.hpp.

+ +
+
+ +
+
+
+template<class RNG >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
Eigen::Matrix<double, Eigen::Dynamic, Eigen::Dynamic> stan::prob::inv_wishart_rng (const double nu,
const Eigen::Matrix< double, Eigen::Dynamic, Eigen::Dynamic > & S,
RNG & rng 
)
+
+inline
+
+ +

Definition at line 134 of file inv_wishart.hpp.

+ +
+
+ +
+
+
+template<typename T , typename TL >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
T stan::prob::lb_constrain (const T x,
const TL lb 
)
+
+inline
+
+ +

Return the lower-bounded value for the specified unconstrained input and specified lower bound.

+

The transform applied is

+

$f(x) = \exp(x) + L$

+

where $L$ is the constant lower bound.

+

If the lower bound is negative infinity, this function reduces to identity_constrain(x).

+
Parameters
+ + + +
xUnconstrained scalar input.
lbLower-bound on constrained ouptut.
+
+
+
Returns
Lower-bound constrained value correspdonding to inputs.
+
Template Parameters
+ + + +
TType of scalar.
TLType of lower bound.
+
+
+ +

Definition at line 501 of file transform.hpp.

+ +
+
+ +
+
+
+template<typename T , typename TL >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
boost::math::tools::promote_args<T,TL>::type stan::prob::lb_constrain (const T x,
const TL lb,
T & lp 
)
+
+inline
+
+ +

Return the lower-bounded value for the speicifed unconstrained input and specified lower bound, incrementing the specified reference with the log absolute Jacobian determinant of the transform.

+

If the lower bound is negative infinity, this function reduces to identity_constraint(x,lp).

+
Parameters
+ + + + +
xUnconstrained scalar input.
lbLower-bound on output.
lpReference to log probability to increment.
+
+
+
Returns
Loer-bound constrained value corresponding to inputs.
+
Template Parameters
+ + + +
TType of scalar.
TLType of lower bound.
+
+
+ +

Definition at line 526 of file transform.hpp.

+ +
+
+ +
+
+
+template<typename T , typename TL >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
boost::math::tools::promote_args<T,TL>::type stan::prob::lb_free (const T y,
const TL lb 
)
+
+inline
+
+ +

Return the unconstrained value that produces the specified lower-bound constrained value.

+

If the lower bound is negative infinity, it is ignored and the function reduces to identity_free(y).

+
Parameters
+ + + +
yInput scalar.
lbLower bound.
+
+
+
Returns
Unconstrained value that produces the input when constrained.
+
Template Parameters
+ + + +
TType of scalar.
TLType of lower bound.
+
+
+
Exceptions
+ + +
std::domain_errorif y is lower than the lower bound.
+
+
+ +

Definition at line 551 of file transform.hpp.

+ +
+
+ +
+
+
+template<bool propto, typename T_covar , typename T_shape >
+ + + + + + + + + + + + + + + + + + +
boost::math::tools::promote_args<T_covar, T_shape>::type stan::prob::lkj_corr_cholesky_log (const Eigen::Matrix< T_covar, Eigen::Dynamic, Eigen::Dynamic > & L,
const T_shape & eta 
)
+
+ +

Definition at line 50 of file lkj_corr.hpp.

+ +
+
+ +
+
+
+template<typename T_covar , typename T_shape >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
boost::math::tools::promote_args<T_covar, T_shape>::type stan::prob::lkj_corr_cholesky_log (const Eigen::Matrix< T_covar, Eigen::Dynamic, Eigen::Dynamic > & L,
const T_shape & eta 
)
+
+inline
+
+ +

Definition at line 83 of file lkj_corr.hpp.

+ +
+
+ +
+
+
+template<class RNG >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
Eigen::MatrixXd stan::prob::lkj_corr_cholesky_rng (const size_t K,
const double eta,
RNG & rng 
)
+
+inline
+
+ +

Definition at line 141 of file lkj_corr.hpp.

+ +
+
+ +
+
+
+template<bool propto, typename T_y , typename T_shape >
+ + + + + + + + + + + + + + + + + + +
boost::math::tools::promote_args<T_y, T_shape>::type stan::prob::lkj_corr_log (const Eigen::Matrix< T_y, Eigen::Dynamic, Eigen::Dynamic > & y,
const T_shape & eta 
)
+
+ +

Definition at line 94 of file lkj_corr.hpp.

+ +
+
+ +
+
+
+template<typename T_y , typename T_shape >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
boost::math::tools::promote_args<T_y, T_shape>::type stan::prob::lkj_corr_log (const Eigen::Matrix< T_y, Eigen::Dynamic, Eigen::Dynamic > & y,
const T_shape & eta 
)
+
+inline
+
+ +

Definition at line 134 of file lkj_corr.hpp.

+ +
+
+ +
+
+
+template<class RNG >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
Eigen::MatrixXd stan::prob::lkj_corr_rng (const size_t K,
const double eta,
RNG & rng 
)
+
+inline
+
+ +

Definition at line 166 of file lkj_corr.hpp.

+ +
+
+ +
+
+
+template<bool propto, typename T_y , typename T_loc , typename T_scale , typename T_shape >
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
boost::math::tools::promote_args<T_y,T_loc,T_scale,T_shape>::type stan::prob::lkj_cov_log (const Eigen::Matrix< T_y, Eigen::Dynamic, Eigen::Dynamic > & y,
const Eigen::Matrix< T_loc, Eigen::Dynamic, 1 > & mu,
const Eigen::Matrix< T_scale, Eigen::Dynamic, 1 > & sigma,
const T_shape & eta 
)
+
+ +

Definition at line 23 of file lkj_cov.hpp.

+ +
+
+ +
+
+
+template<typename T_y , typename T_loc , typename T_scale , typename T_shape >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
boost::math::tools::promote_args<T_y,T_loc,T_scale,T_shape>::type stan::prob::lkj_cov_log (const Eigen::Matrix< T_y, Eigen::Dynamic, Eigen::Dynamic > & y,
const Eigen::Matrix< T_loc, Eigen::Dynamic, 1 > & mu,
const Eigen::Matrix< T_scale, Eigen::Dynamic, 1 > & sigma,
const T_shape & eta 
)
+
+inline
+
+ +

Definition at line 83 of file lkj_cov.hpp.

+ +
+
+ +
+
+
+template<bool propto, typename T_y , typename T_loc , typename T_scale , typename T_shape >
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
boost::math::tools::promote_args<T_y,T_loc,T_scale,T_shape>::type stan::prob::lkj_cov_log (const Eigen::Matrix< T_y, Eigen::Dynamic, Eigen::Dynamic > & y,
const T_loc & mu,
const T_scale & sigma,
const T_shape & eta 
)
+
+ +

Definition at line 95 of file lkj_cov.hpp.

+ +
+
+ +
+
+
+template<typename T_y , typename T_loc , typename T_scale , typename T_shape >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
boost::math::tools::promote_args<T_y,T_loc,T_scale,T_shape>::type stan::prob::lkj_cov_log (const Eigen::Matrix< T_y, Eigen::Dynamic, Eigen::Dynamic > & y,
const T_loc & mu,
const T_scale & sigma,
const T_shape & eta 
)
+
+inline
+
+ +

Definition at line 135 of file lkj_cov.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
T stan::prob::log_inv_logit_diff (const T & alpha,
const T & beta 
)
+
+inline
+
+ +

Definition at line 24 of file ordered_logistic.hpp.

+ +
+
+ +
+
+
+template<typename T_y , typename T_loc , typename T_scale >
+ + + + + + + + + + + + + + + + + + + + + + + + +
return_type<T_y, T_loc, T_scale>::type stan::prob::logistic_ccdf_log (const T_y & y,
const T_loc & mu,
const T_scale & sigma 
)
+
+ +

Definition at line 331 of file logistic.hpp.

+ +
+
+ +
+
+
+template<typename T_y , typename T_loc , typename T_scale >
+ + + + + + + + + + + + + + + + + + + + + + + + +
return_type<T_y, T_loc, T_scale>::type stan::prob::logistic_cdf (const T_y & y,
const T_loc & mu,
const T_scale & sigma 
)
+
+ +

Definition at line 147 of file logistic.hpp.

+ +
+
+ +
+
+
+template<typename T_y , typename T_loc , typename T_scale >
+ + + + + + + + + + + + + + + + + + + + + + + + +
return_type<T_y, T_loc, T_scale>::type stan::prob::logistic_cdf_log (const T_y & y,
const T_loc & mu,
const T_scale & sigma 
)
+
+ +

Definition at line 247 of file logistic.hpp.

+ +
+
+ +
+
+
+template<bool propto, typename T_y , typename T_loc , typename T_scale >
+ + + + + + + + + + + + + + + + + + + + + + + + +
return_type<T_y,T_loc,T_scale>::type stan::prob::logistic_log (const T_y & y,
const T_loc & mu,
const T_scale & sigma 
)
+
+ +

Definition at line 23 of file logistic.hpp.

+ +
+
+ +
+
+
+template<typename T_y , typename T_loc , typename T_scale >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
return_type<T_y,T_loc,T_scale>::type stan::prob::logistic_log (const T_y & y,
const T_loc & mu,
const T_scale & sigma 
)
+
+inline
+
+ +

Definition at line 140 of file logistic.hpp.

+ +
+
+ +
+
+
+template<class RNG >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
double stan::prob::logistic_rng (const double mu,
const double sigma,
RNG & rng 
)
+
+inline
+
+ +

Definition at line 415 of file logistic.hpp.

+ +
+
+ +
+
+
+template<typename T_y , typename T_loc , typename T_scale >
+ + + + + + + + + + + + + + + + + + + + + + + + +
return_type<T_y,T_loc,T_scale>::type stan::prob::lognormal_ccdf_log (const T_y & y,
const T_loc & mu,
const T_scale & sigma 
)
+
+ +

Definition at line 314 of file lognormal.hpp.

+ +
+
+ +
+
+
+template<typename T_y , typename T_loc , typename T_scale >
+ + + + + + + + + + + + + + + + + + + + + + + + +
return_type<T_y,T_loc,T_scale>::type stan::prob::lognormal_cdf (const T_y & y,
const T_loc & mu,
const T_scale & sigma 
)
+
+ +

Definition at line 160 of file lognormal.hpp.

+ +
+
+ +
+
+
+template<typename T_y , typename T_loc , typename T_scale >
+ + + + + + + + + + + + + + + + + + + + + + + + +
return_type<T_y,T_loc,T_scale>::type stan::prob::lognormal_cdf_log (const T_y & y,
const T_loc & mu,
const T_scale & sigma 
)
+
+ +

Definition at line 241 of file lognormal.hpp.

+ +
+
+ +
+
+
+template<bool propto, typename T_y , typename T_loc , typename T_scale >
+ + + + + + + + + + + + + + + + + + + + + + + + +
return_type<T_y,T_loc,T_scale>::type stan::prob::lognormal_log (const T_y & y,
const T_loc & mu,
const T_scale & sigma 
)
+
+ +

Definition at line 24 of file lognormal.hpp.

+ +
+
+ +
+
+
+template<typename T_y , typename T_loc , typename T_scale >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
return_type<T_y,T_loc,T_scale>::type stan::prob::lognormal_log (const T_y & y,
const T_loc & mu,
const T_scale & sigma 
)
+
+inline
+
+ +

Definition at line 153 of file lognormal.hpp.

+ +
+
+ +
+
+
+template<class RNG >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
double stan::prob::lognormal_rng (const double mu,
const double sigma,
RNG & rng 
)
+
+inline
+
+ +

Definition at line 388 of file lognormal.hpp.

+ +
+
+ +
+
+
+template<typename T , typename TL , typename TU >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
boost::math::tools::promote_args<T,TL,TU>::type stan::prob::lub_constrain (const T x,
TL lb,
TU ub 
)
+
+inline
+
+ +

Return the lower- and upper-bounded scalar derived by transforming the specified free scalar given the specified lower and upper bounds.

+

The transform is the transformed and scaled inverse logit,

+

$f(x) = L + (U - L) \mbox{logit}^{-1}(x)$

+

If the lower bound is negative infinity and upper bound finite, this function reduces to ub_constrain(x,ub). If the upper bound is positive infinity and the lower bound finite, this function reduces to lb_constrain(x,lb). If the upper bound is positive infinity and the lower bound negative infinity, this function reduces to identity_constrain(x).

+
Parameters
+ + + + +
xFree scalar to transform.
lbLower bound.
ubUpper bound.
+
+
+
Returns
Lower- and upper-bounded scalar derived from transforming the free scalar.
+
Template Parameters
+ + + + +
TType of scalar.
TLType of lower bound.
TUType of upper bound.
+
+
+
Exceptions
+ + +
std::domain_errorif ub <= lb
+
+
+ +

Definition at line 689 of file transform.hpp.

+ +
+
+ +
+
+
+template<typename T , typename TL , typename TU >
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
boost::math::tools::promote_args<T,TL,TU>::type stan::prob::lub_constrain (const T x,
const TL lb,
const TU ub,
T & lp 
)
+
+ +

Return the lower- and upper-bounded scalar derived by transforming the specified free scalar given the specified lower and upper bounds and increment the specified log probability with the log absolute Jacobian determinant.

+

The transform is as defined in lub_constrain(T,double,double). The log absolute Jacobian determinant is given by

+

$\log \left| \frac{d}{dx} \left( L + (U-L) \mbox{logit}^{-1}(x) \right) \right|$

+

$ {} = \log | (U-L) \, (\mbox{logit}^{-1}(x)) \, (1 - \mbox{logit}^{-1}(x)) |$

+

$ {} = \log (U - L) + \log (\mbox{logit}^{-1}(x)) + \log (1 - \mbox{logit}^{-1}(x))$

+

If the lower bound is negative infinity and upper bound finite, this function reduces to ub_constrain(x,ub,lp). If the upper bound is positive infinity and the lower bound finite, this function reduces to lb_constrain(x,lb,lp). If the upper bound is positive infinity and the lower bound negative infinity, this function reduces to identity_constrain(x,lp).

+
Parameters
+ + + + + +
xFree scalar to transform.
lbLower bound.
ubUpper bound.
lpLog probability scalar reference.
+
+
+
Returns
Lower- and upper-bounded scalar derived from transforming the free scalar.
+
Template Parameters
+ + + + +
TType of scalar.
TLType of lower bound.
TUType of upper bound.
+
+
+
Exceptions
+ + +
std::domain_errorif ub <= lb
+
+
+ +

Definition at line 759 of file transform.hpp.

+ +
+
+ +
+
+
+template<typename T , typename TL , typename TU >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
boost::math::tools::promote_args<T,TL,TU>::type stan::prob::lub_free (const T y,
TL lb,
TU ub 
)
+
+inline
+
+ +

Return the unconstrained scalar that transforms to the specified lower- and upper-bounded scalar given the specified bounds.

+

The transfrom in lub_constrain(T,double,double), is reversed by a transformed and scaled logit,

+

$f^{-1}(y) = \mbox{logit}(\frac{y - L}{U - L})$

+

where $U$ and $L$ are the lower and upper bounds.

+

If the lower bound is negative infinity and upper bound finite, this function reduces to ub_free(y,ub). If the upper bound is positive infinity and the lower bound finite, this function reduces to lb_free(x,lb). If the upper bound is positive infinity and the lower bound negative infinity, this function reduces to identity_free(y).

+
Template Parameters
+ + +
TType of scalar.
+
+
+
Parameters
+ + + + +
yScalar input.
lbLower bound.
ubUpper bound.
+
+
+
Returns
The free scalar that transforms to the input scalar given the bounds.
+
Exceptions
+ + +
std::invalid_argumentif the lower bound is greater than the upper bound, y is less than the lower bound, or y is greater than the upper bound
+
+
+ +

Definition at line 824 of file transform.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + + + + + + + + + + + + + + +
const Eigen::Array<T,Eigen::Dynamic,1> stan::prob::make_nu (const T eta,
const size_t K 
)
+
+ +

This function calculates the degrees of freedom for the t distribution that corresponds to the shape parameter in the Lewandowski et.

+

al. distribution

+
Parameters
+ + + +
etahyperparameter on (0,inf), eta = 1 <-> correlation matrix is uniform
Knumber of variables in covariance matrix
+
+
+ +

Definition at line 328 of file transform.hpp.

+ +
+
+ +
+
+
+template<bool propto, typename T_y , typename T_Mu , typename T_Sigma , typename T_D >
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
boost::math::tools::promote_args<T_y,T_Mu,T_Sigma,T_D>::type stan::prob::matrix_normal_prec_log (const Eigen::Matrix< T_y, Eigen::Dynamic, Eigen::Dynamic > & y,
const Eigen::Matrix< T_Mu, Eigen::Dynamic, Eigen::Dynamic > & Mu,
const Eigen::Matrix< T_Sigma, Eigen::Dynamic, Eigen::Dynamic > & Sigma,
const Eigen::Matrix< T_D, Eigen::Dynamic, Eigen::Dynamic > & D 
)
+
+ +

The log of the matrix normal density for the given y, mu, Sigma and D where Sigma and D are given as precision matrices, not covariance matrices.

+
Parameters
+ + + + + +
yAn mxn matrix.
MuThe mean matrix.
SigmaThe mxm inverse covariance matrix (i.e., the precision matrix) of the rows of y.
DThe nxn inverse covariance matrix (i.e., the precision matrix) of the columns of y.
+
+
+
Returns
The log of the matrix normal density.
+
Exceptions
+ + +
std::domain_errorif Sigma or D are not square, not symmetric, or not semi-positive definite.
+
+
+
Template Parameters
+ + + + + +
T_yType of scalar.
T_MuType of location.
T_SigmaType of Sigma.
T_DType of D.
+
+
+ +

Definition at line 41 of file matrix_normal.hpp.

+ +
+
+ +
+
+
+template<typename T_y , typename T_Mu , typename T_Sigma , typename T_D >
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
boost::math::tools::promote_args<T_y,T_Mu,T_Sigma,T_D>::type stan::prob::matrix_normal_prec_log (const Eigen::Matrix< T_y, Eigen::Dynamic, Eigen::Dynamic > & y,
const Eigen::Matrix< T_Mu, Eigen::Dynamic, Eigen::Dynamic > & Mu,
const Eigen::Matrix< T_Sigma, Eigen::Dynamic, Eigen::Dynamic > & Sigma,
const Eigen::Matrix< T_D, Eigen::Dynamic, Eigen::Dynamic > & D 
)
+
+ +

Definition at line 135 of file matrix_normal.hpp.

+ +
+
+ +
+
+
+template<bool propto, typename T_y , typename T_covar , typename T_w >
+ + + + + + + + + + + + + + + + + + + + + + + + +
boost::math::tools::promote_args<T_y,T_w,T_covar>::type stan::prob::multi_gp_log (const Eigen::Matrix< T_y, Eigen::Dynamic, Eigen::Dynamic > & y,
const Eigen::Matrix< T_covar, Eigen::Dynamic, Eigen::Dynamic > & Sigma,
const Eigen::Matrix< T_w, Eigen::Dynamic, 1 > & w 
)
+
+ +

The log of a multivariate Gaussian Process for the given y, Sigma, and w.

+

y is a dxN matrix, where each column is a different observation and each row is a different output dimension. The Gaussian Process is assumed to have a scaled kernel matrix with a different scale for each output dimension. This distribution is equivalent to: for (i in 1:d) row(y,i) ~ multi_normal(0,(1/w[i])*Sigma).

+
Parameters
+ + + + +
yA dxN matrix
SigmaThe NxN kernel matrix
wA d-dimensional vector of positve inverse scale parameters for each output.
+
+
+
Returns
The log of the multivariate GP density.
+
Exceptions
+ + +
std::domain_errorif Sigma is not square, not symmetric, or not semi-positive definite.
+
+
+
Template Parameters
+ + + + +
T_yType of scalar.
T_covarType of kernel.
T_wType of weight.
+
+
+ +

Definition at line 52 of file multi_gp.hpp.

+ +
+
+ +
+
+
+template<typename T_y , typename T_loc , typename T_covar >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
boost::math::tools::promote_args<T_y,T_loc,T_covar>::type stan::prob::multi_gp_log (const Eigen::Matrix< T_y, Eigen::Dynamic, Eigen::Dynamic > & y,
const Eigen::Matrix< T_covar, Eigen::Dynamic, Eigen::Dynamic > & Sigma,
const Eigen::Matrix< T_loc, Eigen::Dynamic, 1 > & w 
)
+
+inline
+
+ +

Definition at line 134 of file multi_gp.hpp.

+ +
+
+ +
+
+
+template<bool propto, typename T_y , typename T_loc , typename T_covar >
+ + + + + + + + + + + + + + + + + + + + + + + + +
boost::math::tools::promote_args<T_y,T_loc,T_covar>::type stan::prob::multi_normal_cholesky_log (const Eigen::Matrix< T_y, Eigen::Dynamic, 1 > & y,
const Eigen::Matrix< T_loc, Eigen::Dynamic, 1 > & mu,
const Eigen::Matrix< T_covar, Eigen::Dynamic, Eigen::Dynamic > & L 
)
+
+ +

The log of the multivariate normal density for the given y, mu, and a Cholesky factor L of the variance matrix.

+

Sigma = LL', a square, semi-positive definite matrix.

+
Parameters
+ + + + +
yA scalar vector
muThe mean vector of the multivariate normal distribution.
LThe Cholesky decomposition of a variance matrix of the multivariate normal distribution
+
+
+
Returns
The log of the multivariate normal density.
+
Exceptions
+ + +
std::domain_errorif LL' is not square, not symmetric, or not semi-positive definite.
+
+
+
Template Parameters
+ + + + +
T_yType of scalar.
T_locType of location.
T_covarType of scale.
+
+
+ +

Definition at line 48 of file multi_normal_cholesky.hpp.

+ +
+
+ +
+
+
+template<typename T_y , typename T_loc , typename T_covar >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
boost::math::tools::promote_args<T_y,T_loc,T_covar>::type stan::prob::multi_normal_cholesky_log (const Eigen::Matrix< T_y, Eigen::Dynamic, 1 > & y,
const Eigen::Matrix< T_loc, Eigen::Dynamic, 1 > & mu,
const Eigen::Matrix< T_covar, Eigen::Dynamic, Eigen::Dynamic > & L 
)
+
+inline
+
+ +

Definition at line 121 of file multi_normal_cholesky.hpp.

+ +
+
+ +
+
+
+template<bool propto, typename T_y , typename T_loc , typename T_covar >
+ + + + + + + + + + + + + + + + + + + + + + + + +
boost::math::tools::promote_args<T_y,T_loc,T_covar>::type stan::prob::multi_normal_cholesky_log (const Eigen::Matrix< T_y, Eigen::Dynamic, Eigen::Dynamic > & y,
const Eigen::Matrix< T_loc, Eigen::Dynamic, 1 > & mu,
const Eigen::Matrix< T_covar, Eigen::Dynamic, Eigen::Dynamic > & L 
)
+
+ +

y can have multiple rows (observations) and columns (on variables)

+ +

Definition at line 132 of file multi_normal_cholesky.hpp.

+ +
+
+ +
+
+
+template<typename T_y , typename T_loc , typename T_covar >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
boost::math::tools::promote_args<T_y,T_loc,T_covar>::type stan::prob::multi_normal_cholesky_log (const Eigen::Matrix< T_y, Eigen::Dynamic, Eigen::Dynamic > & y,
const Eigen::Matrix< T_loc, Eigen::Dynamic, 1 > & mu,
const Eigen::Matrix< T_covar, Eigen::Dynamic, Eigen::Dynamic > & L 
)
+
+inline
+
+ +

Definition at line 220 of file multi_normal_cholesky.hpp.

+ +
+
+ +
+
+
+template<bool propto, typename T_y , typename T_loc , typename T_covar >
+ + + + + + + + + + + + + + + + + + + + + + + + +
boost::math::tools::promote_args<T_y,T_loc,T_covar>::type stan::prob::multi_normal_log (const Eigen::Matrix< T_y, Eigen::Dynamic, 1 > & y,
const Eigen::Matrix< T_loc, Eigen::Dynamic, 1 > & mu,
const Eigen::Matrix< T_covar, Eigen::Dynamic, Eigen::Dynamic > & Sigma 
)
+
+ +

Definition at line 24 of file multi_normal.hpp.

+ +
+
+ +
+
+
+template<typename T_y , typename T_loc , typename T_covar >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
boost::math::tools::promote_args<T_y,T_loc,T_covar>::type stan::prob::multi_normal_log (const Eigen::Matrix< T_y, Eigen::Dynamic, 1 > & y,
const Eigen::Matrix< T_loc, Eigen::Dynamic, 1 > & mu,
const Eigen::Matrix< T_covar, Eigen::Dynamic, Eigen::Dynamic > & Sigma 
)
+
+inline
+
+ +

Definition at line 95 of file multi_normal.hpp.

+ +
+
+ +
+
+
+template<bool propto, typename T_y , typename T_loc , typename T_covar >
+ + + + + + + + + + + + + + + + + + + + + + + + +
boost::math::tools::promote_args<T_y,T_loc,T_covar>::type stan::prob::multi_normal_log (const Eigen::Matrix< T_y, Eigen::Dynamic, Eigen::Dynamic > & y,
const Eigen::Matrix< T_loc, Eigen::Dynamic, 1 > & mu,
const Eigen::Matrix< T_covar, Eigen::Dynamic, Eigen::Dynamic > & Sigma 
)
+
+ +

Definition at line 107 of file multi_normal.hpp.

+ +
+
+ +
+
+
+template<typename T_y , typename T_loc , typename T_covar >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
boost::math::tools::promote_args<T_y,T_loc,T_covar>::type stan::prob::multi_normal_log (const Eigen::Matrix< T_y, Eigen::Dynamic, Eigen::Dynamic > & y,
const Eigen::Matrix< T_loc, Eigen::Dynamic, 1 > & mu,
const Eigen::Matrix< T_covar, Eigen::Dynamic, Eigen::Dynamic > & Sigma 
)
+
+inline
+
+ +

Definition at line 195 of file multi_normal.hpp.

+ +
+
+ +
+
+
+template<bool propto, typename T_y , typename T_loc , typename T_covar >
+ + + + + + + + + + + + + + + + + + + + + + + + +
boost::math::tools::promote_args<T_y,T_loc,T_covar>::type stan::prob::multi_normal_prec_log (const Eigen::Matrix< T_y, Eigen::Dynamic, 1 > & y,
const Eigen::Matrix< T_loc, Eigen::Dynamic, 1 > & mu,
const Eigen::Matrix< T_covar, Eigen::Dynamic, Eigen::Dynamic > & Sigma 
)
+
+ +

Definition at line 33 of file multi_normal_prec.hpp.

+ +
+
+ +
+
+
+template<typename T_y , typename T_loc , typename T_covar >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
boost::math::tools::promote_args<T_y,T_loc,T_covar>::type stan::prob::multi_normal_prec_log (const Eigen::Matrix< T_y, Eigen::Dynamic, 1 > & y,
const Eigen::Matrix< T_loc, Eigen::Dynamic, 1 > & mu,
const Eigen::Matrix< T_covar, Eigen::Dynamic, Eigen::Dynamic > & Sigma 
)
+
+inline
+
+ +

Definition at line 107 of file multi_normal_prec.hpp.

+ +
+
+ +
+
+
+template<bool propto, typename T_y , typename T_loc , typename T_covar >
+ + + + + + + + + + + + + + + + + + + + + + + + +
boost::math::tools::promote_args<T_y,T_loc,T_covar>::type stan::prob::multi_normal_prec_log (const Eigen::Matrix< T_y, Eigen::Dynamic, Eigen::Dynamic > & y,
const Eigen::Matrix< T_loc, Eigen::Dynamic, 1 > & mu,
const Eigen::Matrix< T_covar, Eigen::Dynamic, Eigen::Dynamic > & Sigma 
)
+
+ +

y can have multiple rows (observations) and columns (on variables)

+ +

Definition at line 119 of file multi_normal_prec.hpp.

+ +
+
+ +
+
+
+template<typename T_y , typename T_loc , typename T_covar >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
boost::math::tools::promote_args<T_y,T_loc,T_covar>::type stan::prob::multi_normal_prec_log (const Eigen::Matrix< T_y, Eigen::Dynamic, Eigen::Dynamic > & y,
const Eigen::Matrix< T_loc, Eigen::Dynamic, 1 > & mu,
const Eigen::Matrix< T_covar, Eigen::Dynamic, Eigen::Dynamic > & Sigma 
)
+
+inline
+
+ +

Definition at line 205 of file multi_normal_prec.hpp.

+ +
+
+ +
+
+
+template<class RNG >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
Eigen::VectorXd stan::prob::multi_normal_rng (const Eigen::Matrix< double, Eigen::Dynamic, 1 > & mu,
const Eigen::Matrix< double, Eigen::Dynamic, Eigen::Dynamic > & S,
RNG & rng 
)
+
+inline
+
+ +

Definition at line 204 of file multi_normal.hpp.

+ +
+
+ +
+
+
+template<bool propto, typename T_y , typename T_dof , typename T_loc , typename T_scale >
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
boost::math::tools::promote_args<T_y,T_dof,T_loc,T_scale>::type stan::prob::multi_student_t_log (const Eigen::Matrix< T_y, Eigen::Dynamic, 1 > & y,
const T_dof & nu,
const Eigen::Matrix< T_loc, Eigen::Dynamic, 1 > & mu,
const Eigen::Matrix< T_scale, Eigen::Dynamic, Eigen::Dynamic > & Sigma 
)
+
+ +

Return the log of the multivariate Student t distribution at the specified arguments.

+
Template Parameters
+ + +
proptoCarry out calculations up to a proportion
+
+
+ +

Definition at line 31 of file multi_student_t.hpp.

+ +
+
+ +
+
+
+template<typename T_y , typename T_dof , typename T_loc , typename T_scale >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
boost::math::tools::promote_args<T_y,T_dof,T_loc,T_scale>::type stan::prob::multi_student_t_log (const Eigen::Matrix< T_y, Eigen::Dynamic, 1 > & y,
const T_dof & nu,
const Eigen::Matrix< T_loc, Eigen::Dynamic, 1 > & mu,
const Eigen::Matrix< T_scale, Eigen::Dynamic, Eigen::Dynamic > & Sigma 
)
+
+inline
+
+ +

Definition at line 127 of file multi_student_t.hpp.

+ +
+
+ +
+
+
+template<class RNG >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Eigen::VectorXd stan::prob::multi_student_t_rng (const double nu,
const Eigen::Matrix< double, Eigen::Dynamic, 1 > & mu,
const Eigen::Matrix< double, Eigen::Dynamic, Eigen::Dynamic > & s,
RNG & rng 
)
+
+inline
+
+ +

Definition at line 139 of file multi_student_t.hpp.

+ +
+
+ +
+
+
+template<bool propto, typename T_prob >
+ + + + + + + + + + + + + + + + + + +
boost::math::tools::promote_args<T_prob>::type stan::prob::multinomial_log (const std::vector< int > & ns,
const Eigen::Matrix< T_prob, Eigen::Dynamic, 1 > & theta 
)
+
+ +

Definition at line 25 of file multinomial.hpp.

+ +
+
+ +
+
+
+template<typename T_prob >
+ + + + + + + + + + + + + + + + + + +
boost::math::tools::promote_args<T_prob>::type stan::prob::multinomial_log (const std::vector< int > & ns,
const Eigen::Matrix< T_prob, Eigen::Dynamic, 1 > & theta 
)
+
+ +

Definition at line 64 of file multinomial.hpp.

+ +
+
+ +
+
+
+template<class RNG >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
std::vector<int> stan::prob::multinomial_rng (const Eigen::Matrix< double, Eigen::Dynamic, 1 > & theta,
const int N,
RNG & rng 
)
+
+inline
+
+ +

Definition at line 71 of file multinomial.hpp.

+ +
+
+ +
+
+
+template<typename T_n , typename T_shape , typename T_inv_scale >
+ + + + + + + + + + + + + + + + + + + + + + + + +
return_type<T_shape, T_inv_scale>::type stan::prob::neg_binomial_ccdf_log (const T_n & n,
const T_shape & alpha,
const T_inv_scale & beta 
)
+
+ +

Definition at line 461 of file neg_binomial.hpp.

+ +
+
+ +
+
+
+template<typename T_n , typename T_shape , typename T_inv_scale >
+ + + + + + + + + + + + + + + + + + + + + + + + +
return_type<T_shape, T_inv_scale>::type stan::prob::neg_binomial_cdf (const T_n & n,
const T_shape & alpha,
const T_inv_scale & beta 
)
+
+ +

Definition at line 192 of file neg_binomial.hpp.

+ +
+
+ +
+
+
+template<typename T_n , typename T_shape , typename T_inv_scale >
+ + + + + + + + + + + + + + + + + + + + + + + + +
return_type<T_shape, T_inv_scale>::type stan::prob::neg_binomial_cdf_log (const T_n & n,
const T_shape & alpha,
const T_inv_scale & beta 
)
+
+ +

Definition at line 339 of file neg_binomial.hpp.

+ +
+
+ +
+
+
+template<bool propto, typename T_n , typename T_shape , typename T_inv_scale >
+ + + + + + + + + + + + + + + + + + + + + + + + +
return_type<T_shape, T_inv_scale>::type stan::prob::neg_binomial_log (const T_n & n,
const T_shape & alpha,
const T_inv_scale & beta 
)
+
+ +

Definition at line 30 of file neg_binomial.hpp.

+ +
+
+ +
+
+
+template<typename T_n , typename T_shape , typename T_inv_scale >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
return_type<T_shape, T_inv_scale>::type stan::prob::neg_binomial_log (const T_n & n,
const T_shape & alpha,
const T_inv_scale & beta 
)
+
+inline
+
+ +

Definition at line 182 of file neg_binomial.hpp.

+ +
+
+ +
+
+
+template<class RNG >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
int stan::prob::neg_binomial_rng (const double alpha,
const double beta,
RNG & rng 
)
+
+inline
+
+ +

Definition at line 582 of file neg_binomial.hpp.

+ +
+
+ +
+
+
+template<typename T_y , typename T_loc , typename T_scale >
+ + + + + + + + + + + + + + + + + + + + + + + + +
return_type<T_y,T_loc,T_scale>::type stan::prob::normal_ccdf_log (const T_y & y,
const T_loc & mu,
const T_scale & sigma 
)
+
+ +

Definition at line 306 of file normal.hpp.

+ +
+
+ +
+
+
+template<typename T_y , typename T_loc , typename T_scale >
+ + + + + + + + + + + + + + + + + + + + + + + + +
return_type<T_y,T_loc,T_scale>::type stan::prob::normal_cdf (const T_y & y,
const T_loc & mu,
const T_scale & sigma 
)
+
+ +

Calculates the normal cumulative distribution function for the given variate, location, and scale.

+

$\Phi(x) = \frac{1}{\sqrt{2 \pi}} \int_{-\inf}^x e^{-t^2/2} dt$.

+

Errors are configured by policy. All variables must be finite and the scale must be strictly greater than zero.

+
Parameters
+ + + + +
yA scalar variate.
muThe location of the normal distribution.
sigmaThe scale of the normal distriubtion
+
+
+
Returns
The unit normal cdf evaluated at the specified arguments.
+
Template Parameters
+ + + + + +
T_yType of y.
T_locType of mean parameter.
T_scaleType of standard deviation paramater.
PolicyError-handling policy.
+
+
+ +

Definition at line 158 of file normal.hpp.

+ +
+
+ +
+
+
+template<typename T_y , typename T_loc , typename T_scale >
+ + + + + + + + + + + + + + + + + + + + + + + + +
return_type<T_y,T_loc,T_scale>::type stan::prob::normal_cdf_log (const T_y & y,
const T_loc & mu,
const T_scale & sigma 
)
+
+ +

Definition at line 237 of file normal.hpp.

+ +
+
+ +
+
+
+template<bool propto, typename T_y , typename T_loc , typename T_scale >
+ + + + + + + + + + + + + + + + + + + + + + + + +
boost::enable_if_c< is_var_or_arithmetic< T_y, T_loc, T_scale >::value, typename return_type< T_y, T_loc, T_scale >::type >::type stan::prob::normal_log (const T_y & y,
const T_loc & mu,
const T_scale & sigma 
)
+
+ +

The log of the normal density for the specified scalar(s) given the specified mean(s) and deviation(s).

+

y, mu, or sigma can each be either a scalar or a std::vector. Any vector inputs must be the same length.

+

The result log probability is defined to be the sum of the log probabilities for each observation/mean/deviation triple.

+
Parameters
+ + + + +
y(Sequence of) scalar(s).
mu(Sequence of) location parameter(s) for the normal distribution.
sigma(Sequence of) scale parameters for the normal distribution.
+
+
+
Returns
The log of the product of the densities.
+
Exceptions
+ + +
std::domain_errorif the scale is not positive.
+
+
+
Template Parameters
+ + + +
T_yUnderlying type of scalar in sequence.
T_locType of location parameter.
+
+
+ +

Definition at line 22 of file normal.hpp.

+ +
+
+ +
+
+
+template<typename T_y , typename T_loc , typename T_scale >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
return_type<T_y,T_loc,T_scale>::type stan::prob::normal_log (const T_y & y,
const T_loc & mu,
const T_scale & sigma 
)
+
+inline
+
+ +

Definition at line 134 of file normal.hpp.

+ +
+
+ +
+
+
+template<class RNG >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
double stan::prob::normal_rng (const double mu,
const double sigma,
RNG & rng 
)
+
+inline
+
+ +

Definition at line 375 of file normal.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + + + + +
Eigen::Matrix<T,Eigen::Dynamic,1> stan::prob::ordered_constrain (const Eigen::Matrix< T, Eigen::Dynamic, 1 > & x)
+
+ +

Return an increasing ordered vector derived from the specified free vector.

+

The returned constrained vector will have the same dimensionality as the specified free vector.

+
Parameters
+ + +
xFree vector of scalars.
+
+
+
Returns
Positive, increasing ordered vector.
+
Template Parameters
+ + +
TType of scalar.
+
+
+ +

Definition at line 1170 of file transform.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
Eigen::Matrix<T,Eigen::Dynamic,1> stan::prob::ordered_constrain (const Eigen::Matrix< T, Eigen::Dynamic, 1 > & x,
T & lp 
)
+
+inline
+
+ +

Return a positive valued, increasing ordered vector derived from the specified free vector and increment the specified log probability reference with the log absolute Jacobian determinant of the transform.

+

The returned constrained vector will have the same dimensionality as the specified free vector.

+
Parameters
+ + + +
xFree vector of scalars.
lpLog probability reference.
+
+
+
Returns
Positive, increasing ordered vector.
+
Template Parameters
+ + +
TType of scalar.
+
+
+ +

Definition at line 1199 of file transform.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + + + + +
Eigen::Matrix<T,Eigen::Dynamic,1> stan::prob::ordered_free (const Eigen::Matrix< T, Eigen::Dynamic, 1 > & y)
+
+ +

Return the vector of unconstrained scalars that transform to the specified positive ordered vector.

+

This function inverts the constraining operation defined in ordered_constrain(Matrix),

+
Parameters
+ + +
yVector of positive, ordered scalars.
+
+
+
Returns
Free vector that transforms into the input vector.
+
Template Parameters
+ + +
TType of scalar.
+
+
+
Exceptions
+ + +
std::domain_errorif y is not a vector of positive, ordered scalars.
+
+
+ +

Definition at line 1223 of file transform.hpp.

+ +
+
+ +
+
+
+template<bool propto, typename T_lambda , typename T_cut >
+ + + + + + + + + + + + + + + + + + + + + + + + +
boost::math::tools::promote_args<T_lambda,T_cut>::type stan::prob::ordered_logistic_log (int y,
const T_lambda & lambda,
const Eigen::Matrix< T_cut, Eigen::Dynamic, 1 > & c 
)
+
+ +

Returns the (natural) log probability of the specified integer outcome given the continuous location and specified cutpoints in an ordered logistic model.

+

Typically the continous location will be the dot product of a vector of regression coefficients and a vector of predictors for the outcome.

+
Template Parameters
+ + + + + +
proptoTrue if calculating up to a proportion.
T_locLocation type.
T_cutCut-point type.
PolicyError policy (only its type matters).
+
+
+
Parameters
+ + + + +
yOutcome.
lambdaLocation.
cPositive increasing vector of cutpoints.
+
+
+
Returns
Log probability of outcome given location and cutpoints.
+
Exceptions
+ + +
std::domain_errorIf the outcome is not between 1 and the number of cutpoints plus 2; if the cutpoint vector is empty; if the cutpoint vector contains a non-positive, non-finite value; or if the cutpoint vector is not sorted in ascending order.
+
+
+ +

Definition at line 60 of file ordered_logistic.hpp.

+ +
+
+ +
+
+
+template<typename T_lambda , typename T_cut >
+ + + + + + + + + + + + + + + + + + + + + + + + +
boost::math::tools::promote_args<T_lambda,T_cut>::type stan::prob::ordered_logistic_log (int y,
const T_lambda & lambda,
const Eigen::Matrix< T_cut, Eigen::Dynamic, 1 > & c 
)
+
+ +

Definition at line 131 of file ordered_logistic.hpp.

+ +
+
+ +
+
+
+template<class RNG >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
int stan::prob::ordered_logistic_rng (const double eta,
const Eigen::Matrix< double, Eigen::Dynamic, 1 > & c,
RNG & rng 
)
+
+inline
+
+ +

Definition at line 138 of file ordered_logistic.hpp.

+ +
+
+ +
+
+
+template<typename T_y , typename T_scale , typename T_shape >
+ + + + + + + + + + + + + + + + + + + + + + + + +
return_type<T_y, T_scale, T_shape>::type stan::prob::pareto_ccdf_log (const T_y & y,
const T_scale & y_min,
const T_shape & alpha 
)
+
+ +

Definition at line 337 of file pareto.hpp.

+ +
+
+ +
+
+
+template<typename T_y , typename T_scale , typename T_shape >
+ + + + + + + + + + + + + + + + + + + + + + + + +
return_type<T_y, T_scale, T_shape>::type stan::prob::pareto_cdf (const T_y & y,
const T_scale & y_min,
const T_shape & alpha 
)
+
+ +

Definition at line 142 of file pareto.hpp.

+ +
+
+ +
+
+
+template<typename T_y , typename T_scale , typename T_shape >
+ + + + + + + + + + + + + + + + + + + + + + + + +
return_type<T_y, T_scale, T_shape>::type stan::prob::pareto_cdf_log (const T_y & y,
const T_scale & y_min,
const T_shape & alpha 
)
+
+ +

Definition at line 247 of file pareto.hpp.

+ +
+
+ +
+
+
+template<bool propto, typename T_y , typename T_scale , typename T_shape >
+ + + + + + + + + + + + + + + + + + + + + + + + +
return_type<T_y,T_scale,T_shape>::type stan::prob::pareto_log (const T_y & y,
const T_scale & y_min,
const T_shape & alpha 
)
+
+ +

Definition at line 24 of file pareto.hpp.

+ +
+
+ +
+
+
+template<typename T_y , typename T_scale , typename T_shape >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
return_type<T_y,T_scale,T_shape>::type stan::prob::pareto_log (const T_y & y,
const T_scale & y_min,
const T_shape & alpha 
)
+
+inline
+
+ +

Definition at line 136 of file pareto.hpp.

+ +
+
+ +
+
+
+template<class RNG >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
double stan::prob::pareto_rng (const double y_min,
const double alpha,
RNG & rng 
)
+
+inline
+
+ +

Definition at line 423 of file pareto.hpp.

+ +
+
+ +
+
+
+template<typename T_n , typename T_rate >
+ + + + + + + + + + + + + + + + + + +
return_type<T_rate>::type stan::prob::poisson_ccdf_log (const T_n & n,
const T_rate & lambda 
)
+
+ +

Definition at line 335 of file poisson.hpp.

+ +
+
+ +
+
+
+template<typename T_n , typename T_rate >
+ + + + + + + + + + + + + + + + + + +
return_type<T_rate>::type stan::prob::poisson_cdf (const T_n & n,
const T_rate & lambda 
)
+
+ +

Definition at line 201 of file poisson.hpp.

+ +
+
+ +
+
+
+template<typename T_n , typename T_rate >
+ + + + + + + + + + + + + + + + + + +
return_type<T_rate>::type stan::prob::poisson_cdf_log (const T_n & n,
const T_rate & lambda 
)
+
+ +

Definition at line 270 of file poisson.hpp.

+ +
+
+ +
+
+
+template<bool propto, typename T_n , typename T_rate >
+ + + + + + + + + + + + + + + + + + +
return_type<T_rate>::type stan::prob::poisson_log (const T_n & n,
const T_rate & lambda 
)
+
+ +

Definition at line 27 of file poisson.hpp.

+ +
+
+ +
+
+
+template<typename T_n , typename T_rate >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
return_type<T_rate>::type stan::prob::poisson_log (const T_n & n,
const T_rate & lambda 
)
+
+inline
+
+ +

Definition at line 105 of file poisson.hpp.

+ +
+
+ +
+
+
+template<bool propto, typename T_n , typename T_log_rate >
+ + + + + + + + + + + + + + + + + + +
return_type<T_log_rate>::type stan::prob::poisson_log_log (const T_n & n,
const T_log_rate & alpha 
)
+
+ +

Definition at line 113 of file poisson.hpp.

+ +
+
+ +
+
+
+template<typename T_n , typename T_log_rate >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
return_type<T_log_rate>::type stan::prob::poisson_log_log (const T_n & n,
const T_log_rate & alpha 
)
+
+inline
+
+ +

Definition at line 194 of file poisson.hpp.

+ +
+
+ +
+
+
+template<class RNG >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
int stan::prob::poisson_rng (const double lambda,
RNG & rng 
)
+
+inline
+
+ +

Definition at line 400 of file poisson.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + +
T stan::prob::positive_constrain (const T x)
+
+inline
+
+ +

Return the positive value for the specified unconstrained input.

+

The transform applied is

+

$f(x) = \exp(x)$.

+
Parameters
+ + +
xArbitrary input scalar.
+
+
+
Returns
Input transformed to be positive.
+ +

Definition at line 428 of file transform.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
T stan::prob::positive_constrain (const T x,
T & lp 
)
+
+inline
+
+ +

Return the positive value for the specified unconstrained input, incrementing the scalar reference with the log absolute Jacobian determinant.

+

See positive_constrain(T) for details of the transform. The log absolute Jacobian determinant is

+

$\log | \frac{d}{dx} \mbox{exp}(x) | = \log | \mbox{exp}(x) | = x$.

+
Parameters
+ + + +
xArbitrary input scalar.
lpLog probability reference.
+
+
+
Returns
Input transformed to be positive.
+
Template Parameters
+ + +
TType of scalar.
+
+
+ +

Definition at line 450 of file transform.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + +
T stan::prob::positive_free (const T y)
+
+inline
+
+ +

Return the unconstrained value corresponding to the specified positive-constrained value.

+

The transform is the inverse of the transform $f$ applied by positive_constrain(T), namely

+

$f^{-1}(x) = \log(x)$.

+

The input is validated using stan::math::check_positive().

+
Parameters
+ + +
yInput scalar.
+
+
+
Returns
Unconstrained value that produces the input when constrained.
+
Template Parameters
+ + +
TType of scalar.
+
+
+
Exceptions
+ + +
std::domain_errorif the variable is negative.
+
+
+ +

Definition at line 473 of file transform.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + + + + +
Eigen::Matrix<T,Eigen::Dynamic,1> stan::prob::positive_ordered_constrain (const Eigen::Matrix< T, Eigen::Dynamic, 1 > & x)
+
+ +

Return an increasing positive ordered vector derived from the specified free vector.

+

The returned constrained vector will have the same dimensionality as the specified free vector.

+
Parameters
+ + +
xFree vector of scalars.
+
+
+
Returns
Positive, increasing ordered vector.
+
Template Parameters
+ + +
TType of scalar.
+
+
+ +

Definition at line 1251 of file transform.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
Eigen::Matrix<T,Eigen::Dynamic,1> stan::prob::positive_ordered_constrain (const Eigen::Matrix< T, Eigen::Dynamic, 1 > & x,
T & lp 
)
+
+inline
+
+ +

Return a positive valued, increasing positive ordered vector derived from the specified free vector and increment the specified log probability reference with the log absolute Jacobian determinant of the transform.

+

The returned constrained vector will have the same dimensionality as the specified free vector.

+
Parameters
+ + + +
xFree vector of scalars.
lpLog probability reference.
+
+
+
Returns
Positive, increasing ordered vector.
+
Template Parameters
+ + +
TType of scalar.
+
+
+ +

Definition at line 1280 of file transform.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + + + + +
Eigen::Matrix<T,Eigen::Dynamic,1> stan::prob::positive_ordered_free (const Eigen::Matrix< T, Eigen::Dynamic, 1 > & y)
+
+ +

Return the vector of unconstrained scalars that transform to the specified positive ordered vector.

+

This function inverts the constraining operation defined in positive_ordered_constrain(Matrix),

+
Parameters
+ + +
yVector of positive, ordered scalars.
+
+
+
Returns
Free vector that transforms into the input vector.
+
Template Parameters
+ + +
TType of scalar.
+
+
+
Exceptions
+ + +
std::domain_errorif y is not a vector of positive, ordered scalars.
+
+
+ +

Definition at line 1304 of file transform.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + +
T stan::prob::prob_constrain (const T x)
+
+inline
+
+ +

Return a probability value constrained to fall between 0 and 1 (inclusive) for the specified free scalar.

+

The transform is the inverse logit,

+

$f(x) = \mbox{logit}^{-1}(x) = \frac{1}{1 + \exp(x)}$.

+
Parameters
+ + +
xFree scalar.
+
+
+
Returns
Probability-constrained result of transforming the free scalar.
+
Template Parameters
+ + +
TType of scalar.
+
+
+ +

Definition at line 853 of file transform.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
T stan::prob::prob_constrain (const T x,
T & lp 
)
+
+inline
+
+ +

Return a probability value constrained to fall between 0 and 1 (inclusive) for the specified free scalar and increment the specified log probability reference with the log absolute Jacobian determinant of the transform.

+

The transform is as defined for prob_constrain(T). The log absolute Jacobian determinant is

+

The log absolute Jacobian determinant is

+

$\log | \frac{d}{dx} \mbox{logit}^{-1}(x) |$

+

$\log ((\mbox{logit}^{-1}(x)) (1 - \mbox{logit}^{-1}(x))$

+

$\log (\mbox{logit}^{-1}(x)) + \log (1 - \mbox{logit}^{-1}(x))$.

+
Parameters
+ + + +
xFree scalar.
lpLog probability reference.
+
+
+
Returns
Probability-constrained result of transforming the free scalar.
+
Template Parameters
+ + +
TType of scalar.
+
+
+ +

Definition at line 881 of file transform.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + +
T stan::prob::prob_free (const T y)
+
+inline
+
+ +

Return the free scalar that when transformed to a probability produces the specified scalar.

+

The function that reverses the constraining transform specified in prob_constrain(T) is the logit function,

+

$f^{-1}(y) = \mbox{logit}(y) = \frac{1 - y}{y}$.

+
Parameters
+ + +
yScalar input.
+
+
+
Template Parameters
+ + +
TType of scalar.
+
+
+
Exceptions
+ + +
std::domain_errorif y is less than 0 or greater than 1.
+
+
+ +

Definition at line 905 of file transform.hpp.

+ +
+
+ +
+
+
+template<typename T_y , typename T_scale >
+ + + + + + + + + + + + + + + + + + +
return_type<T_y,T_scale>::type stan::prob::rayleigh_ccdf_log (const T_y & y,
const T_scale & sigma 
)
+
+ +

Definition at line 256 of file rayleigh.hpp.

+ +
+
+ +
+
+
+template<typename T_y , typename T_scale >
+ + + + + + + + + + + + + + + + + + +
return_type<T_y,T_scale>::type stan::prob::rayleigh_cdf (const T_y & y,
const T_scale & sigma 
)
+
+ +

Definition at line 110 of file rayleigh.hpp.

+ +
+
+ +
+
+
+template<typename T_y , typename T_scale >
+ + + + + + + + + + + + + + + + + + +
return_type<T_y,T_scale>::type stan::prob::rayleigh_cdf_log (const T_y & y,
const T_scale & sigma 
)
+
+ +

Definition at line 187 of file rayleigh.hpp.

+ +
+
+ +
+
+
+template<bool propto, typename T_y , typename T_scale >
+ + + + + + + + + + + + + + + + + + +
return_type<T_y,T_scale>::type stan::prob::rayleigh_log (const T_y & y,
const T_scale & sigma 
)
+
+ +

Definition at line 21 of file rayleigh.hpp.

+ +
+
+ +
+
+
+template<typename T_y , typename T_scale >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
return_type<T_y,T_scale>::type stan::prob::rayleigh_log (const T_y & y,
const T_scale & sigma 
)
+
+inline
+
+ +

Definition at line 104 of file rayleigh.hpp.

+ +
+
+ +
+
+
+template<class RNG >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
double stan::prob::rayleigh_rng (const double sigma,
RNG & rng 
)
+
+inline
+
+ +

Definition at line 322 of file rayleigh.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + + + + + + + + + + + + + + +
Eigen::Matrix<T,Eigen::Dynamic,Eigen::Dynamic> stan::prob::read_corr_L (const Eigen::Array< T, Eigen::Dynamic, 1 > & CPCs,
const size_t K 
)
+
+ +

Return the Cholesky factor of the correlation matrix of the specified dimensionality corresponding to the specified canonical partial correlations.

+

It is generally better to work with the Cholesky factor rather than the correlation matrix itself when the determinant, inverse, etc. of the correlation matrix is needed for some statistical calculation.

+

See read_corr_matrix(Array,size_t,T) for more information.

+
Parameters
+ + + +
CPCsThe (K choose 2) canonical partial correlations in (-1,1).
KDimensionality of correlation matrix.
+
+
+
Returns
Cholesky factor of correlation matrix for specified canonical partial correlations.
+
Template Parameters
+ + +
TType of underlying scalar.
+
+
+ +

Definition at line 115 of file transform.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + + + + + + + + + + + + + + + + + + + + +
Eigen::Matrix<T,Eigen::Dynamic,Eigen::Dynamic> stan::prob::read_corr_L (const Eigen::Array< T, Eigen::Dynamic, 1 > & CPCs,
const size_t K,
T & log_prob 
)
+
+ +

Return the Cholesky factor of the correlation matrix of the specified dimensionality corresponding to the specified canonical partial correlations, incrementing the specified scalar reference with the log absolute determinant of the Jacobian of the transformation.

+

The implementation is Ben Goodrich's Cholesky factor-based approach to the C-vine method of:

+
    +
  • +Daniel Lewandowski, Dorota Kurowicka, and Harry Joe, Generating random correlation matrices based on vines and extended onion method Journal of Multivariate Analysis 100 (2009) 1989–2001
  • +
+

// FIXME: explain which CPCs we're dealing with

+
Parameters
+ + + + +
CPCsThe (K choose 2) canonical partial correlations in (-1,1).
KDimensionality of correlation matrix.
log_probReference to variable to increment with the log Jacobian determinant.
+
+
+
Returns
Cholesky factor of correlation matrix for specified partial correlations.
+
Template Parameters
+ + +
TType of underlying scalar.
+
+
+ +

Definition at line 193 of file transform.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + + + + + + + + + + + + + + +
Eigen::Matrix<T,Eigen::Dynamic,Eigen::Dynamic> stan::prob::read_corr_matrix (const Eigen::Array< T, Eigen::Dynamic, 1 > & CPCs,
const size_t K 
)
+
+ +

Return the correlation matrix of the specified dimensionality corresponding to the specified canonical partial correlations.

+

See read_corr_matrix(Array,size_t,T) for more information.

+
Parameters
+ + + +
CPCsThe (K choose 2) canonical partial correlations in (-1,1).
KDimensionality of correlation matrix.
+
+
+
Returns
Cholesky factor of correlation matrix for specified canonical partial correlations.
+
Template Parameters
+ + +
TType of underlying scalar.
+
+
+ +

Definition at line 157 of file transform.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + + + + + + + + + + + + + + + + + + + + +
Eigen::Matrix<T,Eigen::Dynamic,Eigen::Dynamic> stan::prob::read_corr_matrix (const Eigen::Array< T, Eigen::Dynamic, 1 > & CPCs,
const size_t K,
T & log_prob 
)
+
+ +

Return the correlation matrix of the specified dimensionality corresponding to the specified canonical partial correlations, incrementing the specified scalar reference with the log absolute determinant of the Jacobian of the transformation.

+

It is usually preferable to utilize the version that returns the Cholesky factor of the correlation matrix rather than the correlation matrix itself in statistical calculations.

+
Parameters
+ + + + +
CPCsThe (K choose 2) canonical partial correlations in (-1,1).
KDimensionality of correlation matrix.
log_probReference to variable to increment with the log Jacobian determinant.
+
+
+
Returns
Correlation matrix for specified partial correlations.
+
Template Parameters
+ + +
TType of underlying scalar.
+
+
+ +

Definition at line 243 of file transform.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + + + + + + + + + + + + + + + + + + + + +
Eigen::Matrix<T,Eigen::Dynamic,Eigen::Dynamic> stan::prob::read_cov_L (const Eigen::Array< T, Eigen::Dynamic, 1 > & CPCs,
const Eigen::Array< T, Eigen::Dynamic, 1 > & sds,
T & log_prob 
)
+
+ +

This is the function that should be called prior to evaluating the density of any elliptical distribution.

+
Parameters
+ + + + +
CPCson (-1,1)
sdson (0,inf)
log_probthe log probability value to increment with the Jacobian
+
+
+
Returns
Cholesky factor of covariance matrix for specified partial correlations.
+ +

Definition at line 265 of file transform.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + + + + + + + + + + + + + + + + + + + + +
Eigen::Matrix<T,Eigen::Dynamic,Eigen::Dynamic> stan::prob::read_cov_matrix (const Eigen::Array< T, Eigen::Dynamic, 1 > & CPCs,
const Eigen::Array< T, Eigen::Dynamic, 1 > & sds,
T & log_prob 
)
+
+ +

A generally worse alternative to call prior to evaluating the density of an elliptical distribution.

+
Parameters
+ + + + +
CPCson (-1,1)
sdson (0,inf)
log_probthe log probability value to increment with the Jacobian
+
+
+
Returns
Covariance matrix for specified partial correlations.
+ +

Definition at line 285 of file transform.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + + + + + + + + + + + + + + +
Eigen::Matrix<T,Eigen::Dynamic,Eigen::Dynamic> stan::prob::read_cov_matrix (const Eigen::Array< T, Eigen::Dynamic, 1 > & CPCs,
const Eigen::Array< T, Eigen::Dynamic, 1 > & sds 
)
+
+ +

Builds a covariance matrix from CPCs and standard deviations.

+
Parameters
+ + + +
CPCsin (-1,1)
sdsin (0,inf)
+
+
+ +

Definition at line 304 of file transform.hpp.

+ +
+
+ +
+
+
+template<typename T_y , typename T_dof , typename T_scale >
+ + + + + + + + + + + + + + + + + + + + + + + + +
return_type<T_y, T_dof, T_scale>::type stan::prob::scaled_inv_chi_square_ccdf_log (const T_y & y,
const T_dof & nu,
const T_scale & s 
)
+
+ +

Definition at line 449 of file scaled_inv_chi_square.hpp.

+ +
+
+ +
+
+
+template<typename T_y , typename T_dof , typename T_scale >
+ + + + + + + + + + + + + + + + + + + + + + + + +
return_type<T_y, T_dof, T_scale>::type stan::prob::scaled_inv_chi_square_cdf (const T_y & y,
const T_dof & nu,
const T_scale & s 
)
+
+ +

The CDF of a scaled inverse chi-squared density for y with the specified degrees of freedom parameter and scale parameter.

+
Parameters
+ + + + +
yA scalar variable.
nuDegrees of freedom.
sScale parameter.
+
+
+
Exceptions
+ + + + +
std::domain_errorif nu is not greater than 0
std::domain_errorif s is not greater than 0.
std::domain_errorif y is not greater than 0.
+
+
+
Template Parameters
+ + + +
T_yType of scalar.
T_dofType of degrees of freedom.
+
+
+ +

Definition at line 197 of file scaled_inv_chi_square.hpp.

+ +
+
+ +
+
+
+template<typename T_y , typename T_dof , typename T_scale >
+ + + + + + + + + + + + + + + + + + + + + + + + +
return_type<T_y, T_dof, T_scale>::type stan::prob::scaled_inv_chi_square_cdf_log (const T_y & y,
const T_dof & nu,
const T_scale & s 
)
+
+ +

Definition at line 330 of file scaled_inv_chi_square.hpp.

+ +
+
+ +
+
+
+template<bool propto, typename T_y , typename T_dof , typename T_scale >
+ + + + + + + + + + + + + + + + + + + + + + + + +
return_type<T_y,T_dof,T_scale>::type stan::prob::scaled_inv_chi_square_log (const T_y & y,
const T_dof & nu,
const T_scale & s 
)
+
+ +

The log of a scaled inverse chi-squared density for y with the specified degrees of freedom parameter and scale parameter.

+

+\begin{eqnarray*} y &\sim& \mbox{\sf{Inv-}}\chi^2(\nu, s^2) \\ \log (p (y \,|\, \nu, s)) &=& \log \left( \frac{(\nu / 2)^{\nu / 2}}{\Gamma (\nu / 2)} s^\nu y^{- (\nu / 2 + 1)} \exp^{-\nu s^2 / (2y)} \right) \\ &=& \frac{\nu}{2} \log(\frac{\nu}{2}) - \log (\Gamma (\nu / 2)) + \nu \log(s) - (\frac{\nu}{2} + 1) \log(y) - \frac{\nu s^2}{2y} \\ & & \mathrm{ where } \; y > 0 \end{eqnarray*} +

+
Parameters
+ + + + +
yA scalar variable.
nuDegrees of freedom.
sScale parameter.
+
+
+
Exceptions
+ + + + +
std::domain_errorif nu is not greater than 0
std::domain_errorif s is not greater than 0.
std::domain_errorif y is not greater than 0.
+
+
+
Template Parameters
+ + + +
T_yType of scalar.
T_dofType of degrees of freedom.
+
+
+ +

Definition at line 44 of file scaled_inv_chi_square.hpp.

+ +
+
+ +
+
+
+template<typename T_y , typename T_dof , typename T_scale >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
return_type<T_y,T_dof,T_scale>::type stan::prob::scaled_inv_chi_square_log (const T_y & y,
const T_dof & nu,
const T_scale & s 
)
+
+inline
+
+ +

Definition at line 177 of file scaled_inv_chi_square.hpp.

+ +
+
+ +
+
+
+template<class RNG >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
double stan::prob::scaled_inv_chi_square_rng (const double nu,
const double s,
RNG & rng 
)
+
+inline
+
+ +

Definition at line 568 of file scaled_inv_chi_square.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + +
int stan::prob::sign (const T & z)
+
+inline
+
+ +

Definition at line 18 of file double_exponential.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + + + + +
Eigen::Matrix<T,Eigen::Dynamic,1> stan::prob::simplex_constrain (const Eigen::Matrix< T, Eigen::Dynamic, 1 > & y)
+
+ +

Return the simplex corresponding to the specified free vector.

+

A simplex is a vector containing values greater than or equal to 0 that sum to 1. A vector with (K-1) unconstrained values will produce a simplex of size K.

+

The transform is based on a centered stick-breaking process.

+
Parameters
+ + +
yFree vector input of dimensionality K - 1.
+
+
+
Returns
Simplex of dimensionality K.
+
Template Parameters
+ + +
TType of scalar.
+
+
+ +

Definition at line 1067 of file transform.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + + + + + + + + + + + + + + +
Eigen::Matrix<T,Eigen::Dynamic,1> stan::prob::simplex_constrain (const Eigen::Matrix< T, Eigen::Dynamic, 1 > & y,
T & lp 
)
+
+ +

Return the simplex corresponding to the specified free vector and increment the specified log probability reference with the log absolute Jacobian determinant of the transform.

+

The simplex transform is defined through a centered stick-breaking process.

+
Parameters
+ + + +
yFree vector input of dimensionality K - 1.
lpLog probability reference to increment.
+
+
+
Returns
Simplex of dimensionality K.
+
Template Parameters
+ + +
TType of scalar.
+
+
+ +

Definition at line 1100 of file transform.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + + + + +
Eigen::Matrix<T,Eigen::Dynamic,1> stan::prob::simplex_free (const Eigen::Matrix< T, Eigen::Dynamic, 1 > & x)
+
+ +

Return an unconstrained vector that when transformed produces the specified simplex.

+

It applies to a simplex of dimensionality K and produces an unconstrained vector of dimensionality (K-1).

+

The simplex transform is defined through a centered stick-breaking process.

+
Parameters
+ + +
xSimplex of dimensionality K.
+
+
+
Returns
Free vector of dimensionality (K-1) that transfroms to the simplex.
+
Template Parameters
+ + +
TType of scalar.
+
+
+
Exceptions
+ + +
std::domain_errorif x is not a valid simplex
+
+
+ +

Definition at line 1140 of file transform.hpp.

+ +
+
+ +
+
+
+template<typename T_y , typename T_loc , typename T_scale , typename T_shape >
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
return_type<T_y,T_loc,T_scale,T_shape>::type stan::prob::skew_normal_ccdf_log (const T_y & y,
const T_loc & mu,
const T_scale & sigma,
const T_shape & alpha 
)
+
+ +

Definition at line 342 of file skew_normal.hpp.

+ +
+
+ +
+
+
+template<typename T_y , typename T_loc , typename T_scale , typename T_shape >
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
return_type<T_y,T_loc,T_scale,T_shape>::type stan::prob::skew_normal_cdf (const T_y & y,
const T_loc & mu,
const T_scale & sigma,
const T_shape & alpha 
)
+
+ +

Definition at line 149 of file skew_normal.hpp.

+ +
+
+ +
+
+
+template<typename T_y , typename T_loc , typename T_scale , typename T_shape >
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
return_type<T_y,T_loc,T_scale,T_shape>::type stan::prob::skew_normal_cdf_log (const T_y & y,
const T_loc & mu,
const T_scale & sigma,
const T_shape & alpha 
)
+
+ +

Definition at line 252 of file skew_normal.hpp.

+ +
+
+ +
+
+
+template<bool propto, typename T_y , typename T_loc , typename T_scale , typename T_shape >
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
return_type<T_y,T_loc,T_scale,T_shape>::type stan::prob::skew_normal_log (const T_y & y,
const T_loc & mu,
const T_scale & sigma,
const T_shape & alpha 
)
+
+ +

Definition at line 23 of file skew_normal.hpp.

+ +
+
+ +
+
+
+template<typename T_y , typename T_loc , typename T_scale , typename T_shape >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
return_type<T_y,T_loc,T_scale, T_shape>::type stan::prob::skew_normal_log (const T_y & y,
const T_loc & mu,
const T_scale & sigma,
const T_shape & alpha 
)
+
+inline
+
+ +

Definition at line 142 of file skew_normal.hpp.

+ +
+
+ +
+
+
+template<class RNG >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
double stan::prob::skew_normal_rng (const double mu,
const double sigma,
const double alpha,
RNG & rng 
)
+
+inline
+
+ +

Definition at line 432 of file skew_normal.hpp.

+ +
+
+ +
+
+
+template<typename T_y , typename T_dof , typename T_loc , typename T_scale >
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
return_type<T_y, T_dof, T_loc, T_scale>::type stan::prob::student_t_ccdf_log (const T_y & y,
const T_dof & nu,
const T_loc & mu,
const T_scale & sigma 
)
+
+ +

Definition at line 584 of file student_t.hpp.

+ +
+
+ +
+
+
+template<typename T_y , typename T_dof , typename T_loc , typename T_scale >
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
return_type<T_y, T_dof, T_loc, T_scale>::type stan::prob::student_t_cdf (const T_y & y,
const T_dof & nu,
const T_loc & mu,
const T_scale & sigma 
)
+
+ +

Definition at line 232 of file student_t.hpp.

+ +
+
+ +
+
+
+template<typename T_y , typename T_dof , typename T_loc , typename T_scale >
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
return_type<T_y, T_dof, T_loc, T_scale>::type stan::prob::student_t_cdf_log (const T_y & y,
const T_dof & nu,
const T_loc & mu,
const T_scale & sigma 
)
+
+ +

Definition at line 414 of file student_t.hpp.

+ +
+
+ +
+
+
+template<bool propto, typename T_y , typename T_dof , typename T_loc , typename T_scale >
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
return_type<T_y,T_dof,T_loc,T_scale>::type stan::prob::student_t_log (const T_y & y,
const T_dof & nu,
const T_loc & mu,
const T_scale & sigma 
)
+
+ +

The log of the Student-t density for the given y, nu, mean, and scale parameter.

+

The scale parameter must be greater than 0.

+

+\begin{eqnarray*} y &\sim& t_{\nu} (\mu, \sigma^2) \\ \log (p (y \,|\, \nu, \mu, \sigma) ) &=& \log \left( \frac{\Gamma((\nu + 1) /2)} {\Gamma(\nu/2)\sqrt{\nu \pi} \sigma} \left( 1 + \frac{1}{\nu} (\frac{y - \mu}{\sigma})^2 \right)^{-(\nu + 1)/2} \right) \\ &=& \log( \Gamma( (\nu+1)/2 )) - \log (\Gamma (\nu/2) - \frac{1}{2} \log(\nu \pi) - \log(\sigma) -\frac{\nu + 1}{2} \log (1 + \frac{1}{\nu} (\frac{y - \mu}{\sigma})^2) \end{eqnarray*} +

+
Parameters
+ + + + + +
yA scalar variable.
nuDegrees of freedom.
muThe mean of the Student-t distribution.
sigmaThe scale parameter of the Student-t distribution.
+
+
+
Returns
The log of the Student-t density at y.
+
Exceptions
+ + + +
std::domain_errorif sigma is not greater than 0.
std::domain_errorif nu is not greater than 0.
+
+
+
Template Parameters
+ + + + + +
T_yType of scalar.
T_dofType of degrees of freedom.
T_locType of location.
T_scaleType of scale.
+
+
+ +

Definition at line 49 of file student_t.hpp.

+ +
+
+ +
+
+
+template<typename T_y , typename T_dof , typename T_loc , typename T_scale >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
return_type<T_y,T_dof,T_loc,T_scale>::type stan::prob::student_t_log (const T_y & y,
const T_dof & nu,
const T_loc & mu,
const T_scale & sigma 
)
+
+inline
+
+ +

Definition at line 225 of file student_t.hpp.

+ +
+
+ +
+
+
+template<class RNG >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
double stan::prob::student_t_rng (const double nu,
const double mu,
const double sigma,
RNG & rng 
)
+
+inline
+
+ +

Definition at line 754 of file student_t.hpp.

+ +
+
+ +
+
+
+template<typename T , typename TU >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
boost::math::tools::promote_args<T,TU>::type stan::prob::ub_constrain (const T x,
const TU ub 
)
+
+inline
+
+ +

Return the upper-bounded value for the specified unconstrained scalar and upper bound.

+

The transform is

+

$f(x) = U - \exp(x)$

+

where $U$ is the upper bound.

+

If the upper bound is positive infinity, this function reduces to identity_constrain(x).

+
Parameters
+ + + +
xFree scalar.
ubUpper bound.
+
+
+
Returns
Transformed scalar with specified upper bound.
+
Template Parameters
+ + + +
TType of scalar.
TUType of upper bound.
+
+
+ +

Definition at line 584 of file transform.hpp.

+ +
+
+ +
+
+
+template<typename T , typename TU >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
boost::math::tools::promote_args<T,TU>::type stan::prob::ub_constrain (const T x,
const TU ub,
T & lp 
)
+
+inline
+
+ +

Return the upper-bounded value for the specified unconstrained scalar and upper bound and increment the specified log probability reference with the log absolute Jacobian determinant of the transform.

+

The transform is as specified for ub_constrain(T,double). The log absolute Jacobian determinant is

+

$ \log | \frac{d}{dx} -\mbox{exp}(x) + U | = \log | -\mbox{exp}(x) + 0 | = x$.

+

If the upper bound is positive infinity, this function reduces to identity_constrain(x,lp).

+
Parameters
+ + + + +
xFree scalar.
ubUpper bound.
lpLog probability reference.
+
+
+
Returns
Transformed scalar with specified upper bound.
+
Template Parameters
+ + + +
TType of scalar.
TUType of upper bound.
+
+
+ +

Definition at line 616 of file transform.hpp.

+ +
+
+ +
+
+
+template<typename T , typename TU >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
boost::math::tools::promote_args<T,TU>::type stan::prob::ub_free (const T y,
const TU ub 
)
+
+inline
+
+ +

Return the free scalar that corresponds to the specified upper-bounded value with respect to the specified upper bound.

+

The transform is the reverse of the ub_constrain(T,double) transform,

+

$f^{-1}(y) = \log -(y - U)$

+

where $U$ is the upper bound.

+

If the upper bound is positive infinity, this function reduces to identity_free(y).

+
Parameters
+ + + +
yUpper-bounded scalar.
ubUpper bound.
+
+
+
Returns
Free scalar corresponding to upper-bounded scalar.
+
Template Parameters
+ + + +
TType of scalar.
TUType of upper bound.
+
+
+
Exceptions
+ + +
std::invalid_argumentif y is greater than the upper bound.
+
+
+ +

Definition at line 648 of file transform.hpp.

+ +
+
+ +
+
+
+template<typename T_y , typename T_low , typename T_high >
+ + + + + + + + + + + + + + + + + + + + + + + + +
return_type<T_y,T_low,T_high>::type stan::prob::uniform_ccdf_log (const T_y & y,
const T_low & alpha,
const T_high & beta 
)
+
+ +

Definition at line 288 of file uniform.hpp.

+ +
+
+ +
+
+
+template<typename T_y , typename T_low , typename T_high >
+ + + + + + + + + + + + + + + + + + + + + + + + +
return_type<T_y,T_low,T_high>::type stan::prob::uniform_cdf (const T_y & y,
const T_low & alpha,
const T_high & beta 
)
+
+ +

Definition at line 132 of file uniform.hpp.

+ +
+
+ +
+
+
+template<typename T_y , typename T_low , typename T_high >
+ + + + + + + + + + + + + + + + + + + + + + + + +
return_type<T_y,T_low,T_high>::type stan::prob::uniform_cdf_log (const T_y & y,
const T_low & alpha,
const T_high & beta 
)
+
+ +

Definition at line 213 of file uniform.hpp.

+ +
+
+ +
+
+
+template<bool propto, typename T_y , typename T_low , typename T_high >
+ + + + + + + + + + + + + + + + + + + + + + + + +
return_type<T_y,T_low,T_high>::type stan::prob::uniform_log (const T_y & y,
const T_low & alpha,
const T_high & beta 
)
+
+ +

The log of a uniform density for the given y, lower, and upper bound.

+

+\begin{eqnarray*} y &\sim& \mbox{\sf{U}}(\alpha, \beta) \\ \log (p (y \,|\, \alpha, \beta)) &=& \log \left( \frac{1}{\beta-\alpha} \right) \\ &=& \log (1) - \log (\beta - \alpha) \\ &=& -\log (\beta - \alpha) \\ & & \mathrm{ where } \; y \in [\alpha, \beta], \log(0) \; \mathrm{otherwise} \end{eqnarray*} +

+
Parameters
+ + + + +
yA scalar variable.
alphaLower bound.
betaUpper bound.
+
+
+
Exceptions
+ + +
std::invalid_argumentif the lower bound is greater than or equal to the lower bound
+
+
+
Template Parameters
+ + + + +
T_yType of scalar.
T_lowType of lower bound.
T_highType of upper bound.
+
+
+ +

Definition at line 44 of file uniform.hpp.

+ +
+
+ +
+
+
+template<typename T_y , typename T_low , typename T_high >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
return_type<T_y,T_low,T_high>::type stan::prob::uniform_log (const T_y & y,
const T_low & alpha,
const T_high & beta 
)
+
+inline
+
+ +

Definition at line 126 of file uniform.hpp.

+ +
+
+ +
+
+
+template<class RNG >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
double stan::prob::uniform_rng (const double alpha,
const double beta,
RNG & rng 
)
+
+inline
+
+ +

Definition at line 363 of file uniform.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + + + + +
Eigen::Matrix<T,Eigen::Dynamic,1> stan::prob::unit_vector_constrain (const Eigen::Matrix< T, Eigen::Dynamic, 1 > & y)
+
+ +

Return the unit length vector corresponding to the free vector y.

+

The free vector contains K-1 spherical coordinates.

+
Parameters
+ + +
yof K - 1 spherical coordinates
+
+
+
Returns
Unit length vector of dimension K
+
Template Parameters
+ + +
TScalar type.
+
+
+ +

Definition at line 991 of file transform.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + + + + + + + + + + + + + + +
Eigen::Matrix<T,Eigen::Dynamic,1> stan::prob::unit_vector_constrain (const Eigen::Matrix< T, Eigen::Dynamic, 1 > & y,
T & lp 
)
+
+ +

Return the unit length vector corresponding to the free vector y.

+

The free vector contains K-1 spherical coordinates.

+
Parameters
+ + +
yof K - 1 spherical coordinates
+
+
+
Returns
Unit length vector of dimension K
+
Parameters
+ + +
lpLog probability reference to increment.
+
+
+
Template Parameters
+ + +
TScalar type.
+
+
+ +

Definition at line 1017 of file transform.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + + + + +
Eigen::Matrix<T,Eigen::Dynamic,1> stan::prob::unit_vector_free (const Eigen::Matrix< T, Eigen::Dynamic, 1 > & x)
+
+ +

Definition at line 1036 of file transform.hpp.

+ +
+
+ +
+
+
+template<bool propto, typename T_y , typename T_loc , typename T_scale >
+ + + + + + + + + + + + + + + + + + + + + + + + +
return_type<T_y,T_loc,T_scale>::type stan::prob::von_mises_log (T_y const & y,
T_loc const & mu,
T_scale const & kappa 
)
+
+ +

Definition at line 18 of file von_mises.hpp.

+ +
+
+ +
+
+
+template<typename T_y , typename T_loc , typename T_scale >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
return_type<T_y,T_loc,T_scale>::type stan::prob::von_mises_log (T_y const & y,
T_loc const & mu,
T_scale const & kappa 
)
+
+inline
+
+ +

Definition at line 120 of file von_mises.hpp.

+ +
+
+ +
+
+
+template<typename T_y , typename T_shape , typename T_scale >
+ + + + + + + + + + + + + + + + + + + + + + + + +
return_type<T_y,T_shape,T_scale>::type stan::prob::weibull_ccdf_log (const T_y & y,
const T_shape & alpha,
const T_scale & sigma 
)
+
+ +

Definition at line 282 of file weibull.hpp.

+ +
+
+ +
+
+
+template<typename T_y , typename T_shape , typename T_scale >
+ + + + + + + + + + + + + + + + + + + + + + + + +
return_type<T_y,T_shape,T_scale>::type stan::prob::weibull_cdf (const T_y & y,
const T_shape & alpha,
const T_scale & sigma 
)
+
+ +

Definition at line 150 of file weibull.hpp.

+ +
+
+ +
+
+
+template<typename T_y , typename T_shape , typename T_scale >
+ + + + + + + + + + + + + + + + + + + + + + + + +
return_type<T_y,T_shape,T_scale>::type stan::prob::weibull_cdf_log (const T_y & y,
const T_shape & alpha,
const T_scale & sigma 
)
+
+ +

Definition at line 221 of file weibull.hpp.

+ +
+
+ +
+
+
+template<bool propto, typename T_y , typename T_shape , typename T_scale >
+ + + + + + + + + + + + + + + + + + + + + + + + +
return_type<T_y,T_shape,T_scale>::type stan::prob::weibull_log (const T_y & y,
const T_shape & alpha,
const T_scale & sigma 
)
+
+ +

Definition at line 24 of file weibull.hpp.

+ +
+
+ +
+
+
+template<typename T_y , typename T_shape , typename T_scale >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
return_type<T_y,T_shape,T_scale>::type stan::prob::weibull_log (const T_y & y,
const T_shape & alpha,
const T_scale & sigma 
)
+
+inline
+
+ +

Definition at line 144 of file weibull.hpp.

+ +
+
+ +
+
+
+template<class RNG >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
double stan::prob::weibull_rng (const double alpha,
const double sigma,
RNG & rng 
)
+
+inline
+
+ +

Definition at line 340 of file weibull.hpp.

+ +
+
+ +
+
+
+template<bool propto, typename T_y , typename T_dof , typename T_scale >
+ + + + + + + + + + + + + + + + + + + + + + + + +
boost::math::tools::promote_args<T_y,T_dof,T_scale>::type stan::prob::wishart_log (const Eigen::Matrix< T_y, Eigen::Dynamic, Eigen::Dynamic > & W,
const T_dof & nu,
const Eigen::Matrix< T_scale, Eigen::Dynamic, Eigen::Dynamic > & S 
)
+
+ +

The log of the Wishart density for the given W, degrees of freedom, and scale matrix.

+

The scale matrix, S, must be k x k, symmetric, and semi-positive definite. Dimension, k, is implicit. nu must be greater than k-1

+

+\begin{eqnarray*} W &\sim& \mbox{\sf{Wishart}}_{\nu} (S) \\ \log (p (W \,|\, \nu, S) ) &=& \log \left( \left(2^{\nu k/2} \pi^{k (k-1) /4} \prod_{i=1}^k{\Gamma (\frac{\nu + 1 - i}{2})} \right)^{-1} \times \left| S \right|^{-\nu/2} \left| W \right|^{(\nu - k - 1) / 2} \times \exp (-\frac{1}{2} \mbox{tr} (S^{-1} W)) \right) \\ &=& -\frac{\nu k}{2}\log(2) - \frac{k (k-1)}{4} \log(\pi) - \sum_{i=1}^{k}{\log (\Gamma (\frac{\nu+1-i}{2}))} -\frac{\nu}{2} \log(\det(S)) + \frac{\nu-k-1}{2}\log (\det(W)) - \frac{1}{2} \mbox{tr} (S^{-1}W) \end{eqnarray*} +

+
Parameters
+ + + + +
WA scalar matrix
nuDegrees of freedom
SThe scale matrix
+
+
+
Returns
The log of the Wishart density at W given nu and S.
+
Exceptions
+ + + +
std::domain_errorif nu is not greater than k-1
std::domain_errorif S is not square, not symmetric, or not semi-positive definite.
+
+
+
Template Parameters
+ + + + +
T_yType of scalar.
T_dofType of degrees of freedom.
T_scaleType of scale.
+
+
+ +

Definition at line 59 of file wishart.hpp.

+ +
+
+ +
+
+
+template<typename T_y , typename T_dof , typename T_scale >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
boost::math::tools::promote_args<T_y,T_dof,T_scale>::type stan::prob::wishart_log (const Eigen::Matrix< T_y, Eigen::Dynamic, Eigen::Dynamic > & W,
const T_dof & nu,
const Eigen::Matrix< T_scale, Eigen::Dynamic, Eigen::Dynamic > & S 
)
+
+inline
+
+ +

Definition at line 136 of file wishart.hpp.

+ +
+
+ +
+
+
+template<class RNG >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
Eigen::Matrix<double, Eigen::Dynamic, Eigen::Dynamic> stan::prob::wishart_rng (const double nu,
const Eigen::Matrix< double, Eigen::Dynamic, Eigen::Dynamic > & S,
RNG & rng 
)
+
+inline
+
+ +

Definition at line 144 of file wishart.hpp.

+ +
+
+

Variable Documentation

+ +
+
+ + + + +
const double stan::prob::CONSTRAINT_TOLERANCE = 1E-8
+
+ +

Definition at line 28 of file transform.hpp.

+ +
+
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/namespacestd.html b/doc/api/html/namespacestd.html new file mode 100644 index 00000000000..1efff3d773a --- /dev/null +++ b/doc/api/html/namespacestd.html @@ -0,0 +1,202 @@ + + + + + +Stan: std Namespace Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ +
+
+ +
+
std Namespace Reference
+
+
+ +

Template specification of functions in std for Stan. +More...

+ + + + + + + +

+Classes

struct  numeric_limits< stan::agrad::fvar< T > >
 
struct  numeric_limits< stan::agrad::var >
 Specialization of numeric limits for var objects. More...
 
+ + + + + + + +

+Functions

int isnan (const stan::agrad::var &a)
 Checks if the given number is NaN.
 
int isinf (const stan::agrad::var &a)
 Checks if the given number is infinite.
 
+

Detailed Description

+

Template specification of functions in std for Stan.

+

Function Documentation

+ +
+
+ + + + + +
+ + + + + + + + +
int std::isinf (const stan::agrad::vara)
+
+inline
+
+ +

Checks if the given number is infinite.

+

Return true if the value of the a is positive or negative infinity.

+
Parameters
+ + +
aVariable to test.
+
+
+
Returns
true if value is infinite.
+ +

Definition at line 75 of file numeric_limits.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
int std::isnan (const stan::agrad::vara)
+
+inline
+
+ +

Checks if the given number is NaN.

+

Return true if the value of the specified variable is not a number.

+
Parameters
+ + +
aVariable to test.
+
+
+
Returns
true if value is not a number.
+ +

Definition at line 62 of file numeric_limits.hpp.

+ +
+
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/nav_f.png b/doc/api/html/nav_f.png new file mode 100644 index 0000000000000000000000000000000000000000..72a58a529ed3a9ed6aa0c51a79cf207e026deee2 GIT binary patch literal 153 zcmeAS@N?(olHy`uVBq!ia0vp^j6iI`!2~2XGqLUlQVE_ejv*C{Z|{2ZH7M}7UYxc) zn!W8uqtnIQ>_z8U literal 0 HcmV?d00001 diff --git a/doc/api/html/nav_g.png b/doc/api/html/nav_g.png new file mode 100644 index 0000000000000000000000000000000000000000..2093a237a94f6c83e19ec6e5fd42f7ddabdafa81 GIT binary patch literal 95 zcmeAS@N?(olHy`uVBq!ia0vp^j6lrB!3HFm1ilyoDK$?Q$B+ufw|5PB85lU25BhtE tr?otc=hd~V+ws&_A@j8Fiv!KF$B+ufw|5=67#uj90@pIL wZ=Q8~_Ju`#59=RjDrmm`tMD@M=!-l18IR?&vFVdQ&MBb@0HFXL + + + + +Stan: src/stan/prob/distributions/univariate/discrete/neg_binomial.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
neg_binomial.hpp File Reference
+
+
+
#include <boost/random/negative_binomial_distribution.hpp>
+#include <boost/random/variate_generator.hpp>
+#include <boost/math/special_functions/digamma.hpp>
+#include <stan/agrad/partials_vari.hpp>
+#include <stan/math/error_handling.hpp>
+#include <stan/math/constants.hpp>
+#include <stan/math/functions/multiply_log.hpp>
+#include <stan/math/functions/value_of.hpp>
+#include <stan/meta/traits.hpp>
+#include <stan/prob/traits.hpp>
+#include <stan/prob/constants.hpp>
+#include <stan/prob/internal_math.hpp>
+#include <stan/prob/distributions/univariate/continuous/gamma.hpp>
+#include <stan/prob/distributions/univariate/discrete/poisson.hpp>
+#include <stan/math/functions/binomial_coefficient_log.hpp>
+
+

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::prob
 Templated probability distributions.
 
+ + + + + + + + + + + + + + + + + + + +

+Functions

template<bool propto, typename T_n , typename T_shape , typename T_inv_scale >
return_type< T_shape,
+T_inv_scale >::type 
stan::prob::neg_binomial_log (const T_n &n, const T_shape &alpha, const T_inv_scale &beta)
 
template<typename T_n , typename T_shape , typename T_inv_scale >
return_type< T_shape,
+T_inv_scale >::type 
stan::prob::neg_binomial_log (const T_n &n, const T_shape &alpha, const T_inv_scale &beta)
 
template<typename T_n , typename T_shape , typename T_inv_scale >
return_type< T_shape,
+T_inv_scale >::type 
stan::prob::neg_binomial_cdf (const T_n &n, const T_shape &alpha, const T_inv_scale &beta)
 
template<typename T_n , typename T_shape , typename T_inv_scale >
return_type< T_shape,
+T_inv_scale >::type 
stan::prob::neg_binomial_cdf_log (const T_n &n, const T_shape &alpha, const T_inv_scale &beta)
 
template<typename T_n , typename T_shape , typename T_inv_scale >
return_type< T_shape,
+T_inv_scale >::type 
stan::prob::neg_binomial_ccdf_log (const T_n &n, const T_shape &alpha, const T_inv_scale &beta)
 
template<class RNG >
int stan::prob::neg_binomial_rng (const double alpha, const double beta, RNG &rng)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/neg__binomial_8hpp_source.html b/doc/api/html/neg__binomial_8hpp_source.html new file mode 100644 index 00000000000..c938ebe82e1 --- /dev/null +++ b/doc/api/html/neg__binomial_8hpp_source.html @@ -0,0 +1,714 @@ + + + + + +Stan: src/stan/prob/distributions/univariate/discrete/neg_binomial.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
neg_binomial.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__PROB__DISTRIBUTIONS__UNIVARIATE__DISCRETE__NEG_BINOMIAL_HPP__
+
2 #define __STAN__PROB__DISTRIBUTIONS__UNIVARIATE__DISCRETE__NEG_BINOMIAL_HPP__
+
3 
+
4 #include <boost/random/negative_binomial_distribution.hpp>
+
5 #include <boost/random/variate_generator.hpp>
+
6 
+
7 #include <boost/math/special_functions/digamma.hpp>
+ + +
10 #include <stan/math/constants.hpp>
+ + +
13 #include <stan/meta/traits.hpp>
+
14 #include <stan/prob/traits.hpp>
+
15 #include <stan/prob/constants.hpp>
+ + + + +
20 
+
21 namespace stan {
+
22 
+
23  namespace prob {
+
24 
+
25  // NegBinomial(n|alpha,beta) [alpha > 0; beta > 0; n >= 0]
+
26  template <bool propto,
+
27  typename T_n,
+
28  typename T_shape, typename T_inv_scale>
+
29  typename return_type<T_shape, T_inv_scale>::type
+
30  neg_binomial_log(const T_n& n,
+
31  const T_shape& alpha,
+
32  const T_inv_scale& beta) {
+
33 
+
34  static const char* function = "stan::prob::neg_binomial_log(%1%)";
+
35 
+ + + + + + +
42 
+
43  // check if any vectors are zero length
+
44  if (!(stan::length(n)
+
45  && stan::length(alpha)
+
46  && stan::length(beta)))
+
47  return 0.0;
+
48 
+
49  double logp(0.0);
+
50  if (!check_nonnegative(function, n, "Failures variable", &logp))
+
51  return logp;
+
52  if (!check_finite(function, alpha, "Shape parameter", &logp))
+
53  return logp;
+
54  if (!check_positive(function, alpha, "Shape parameter", &logp))
+
55  return logp;
+
56  if (!check_finite(function, beta, "Inverse scale parameter",
+
57  &logp))
+
58  return logp;
+
59  if (!check_positive(function, beta, "Inverse scale parameter",
+
60  &logp))
+
61  return logp;
+
62  if (!(check_consistent_sizes(function,
+
63  n,alpha,beta,
+
64  "Failures variable",
+
65  "Shape parameter","Inverse scale parameter",
+
66  &logp)))
+
67  return logp;
+
68 
+
69  // check if no variables are involved and prop-to
+ +
71  return 0.0;
+
72 
+ + + +
76  using boost::math::lgamma;
+
77 
+
78  // set up template expressions wrapping scalars into vector views
+
79  VectorView<const T_n> n_vec(n);
+
80  VectorView<const T_shape> alpha_vec(alpha);
+
81  VectorView<const T_inv_scale> beta_vec(beta);
+
82  size_t size = max_size(n, alpha, beta);
+
83 
+ +
85  operands_and_partials(alpha,beta);
+
86 
+
87  size_t len_ab = max_size(alpha,beta);
+ + +
90  lambda(len_ab);
+
91  for (size_t i = 0; i < len_ab; ++i)
+
92  lambda[i] = value_of(alpha_vec[i]) / value_of(beta_vec[i]);
+
93 
+ +
95  log1p_beta(length(beta));
+
96  for (size_t i = 0; i < length(beta); ++i)
+
97  log1p_beta[i] = log1p(value_of(beta_vec[i]));
+
98 
+ +
100  log_beta_m_log1p_beta(length(beta));
+
101  for (size_t i = 0; i < length(beta); ++i)
+
102  log_beta_m_log1p_beta[i] = log(value_of(beta_vec[i])) - log1p_beta[i];
+
103 
+ + +
106  alpha_times_log_beta_over_1p_beta(len_ab);
+
107  for (size_t i = 0; i < len_ab; ++i)
+
108  alpha_times_log_beta_over_1p_beta[i]
+
109  = value_of(alpha_vec[i])
+
110  * log(value_of(beta_vec[i])
+
111  / (1.0 + value_of(beta_vec[i])));
+
112 
+ + +
115  digamma_alpha(length(alpha));
+ +
117  for (size_t i = 0; i < length(alpha); ++i)
+
118  digamma_alpha[i] = digamma(value_of(alpha_vec[i]));
+
119 
+ + +
122  log_beta(length(beta));
+ +
124  for (size_t i = 0; i < length(beta); ++i)
+
125  log_beta[i] = log(value_of(beta_vec[i]));
+
126 
+ + + +
130  lambda_m_alpha_over_1p_beta(len_ab);
+ +
132  for (size_t i = 0; i < len_ab; ++i)
+
133  lambda_m_alpha_over_1p_beta[i] =
+
134  lambda[i]
+
135  - ( value_of(alpha_vec[i])
+
136  / (1.0 + value_of(beta_vec[i])) );
+
137 
+
138  for (size_t i = 0; i < size; i++) {
+
139  if (alpha_vec[i] > 1e10) { // reduces numerically to Poisson
+ +
141  logp -= lgamma(n_vec[i] + 1.0);
+ +
143  logp += multiply_log(n_vec[i], lambda[i]) - lambda[i];
+
144 
+ +
146  operands_and_partials.d_x1[i]
+
147  += n_vec[i] / value_of(alpha_vec[i])
+
148  - 1.0 / value_of(beta_vec[i]);
+ +
150  operands_and_partials.d_x2[i]
+
151  += (lambda[i] - n_vec[i]) / value_of(beta_vec[i]) ;
+
152  } else { // standard density definition
+ +
154  if (n_vec[i] != 0)
+
155  logp += binomial_coefficient_log<double>(n_vec[i]
+
156  + value_of(alpha_vec[i])
+
157  - 1.0,
+
158  n_vec[i]);
+ +
160  logp +=
+
161  alpha_times_log_beta_over_1p_beta[i]
+
162  - n_vec[i] * log1p_beta[i];
+
163 
+ +
165  operands_and_partials.d_x1[i]
+
166  += digamma(value_of(alpha_vec[i]) + n_vec[i])
+
167  - digamma_alpha[i]
+
168  + log_beta_m_log1p_beta[i];
+ +
170  operands_and_partials.d_x2[i]
+
171  += lambda_m_alpha_over_1p_beta[i]
+
172  - n_vec[i] / (value_of(beta_vec[i]) + 1.0);
+
173  }
+
174  }
+
175  return operands_and_partials.to_var(logp);
+
176  }
+
177 
+
178  template <typename T_n,
+
179  typename T_shape, typename T_inv_scale>
+
180  inline
+ +
182  neg_binomial_log(const T_n& n,
+
183  const T_shape& alpha,
+
184  const T_inv_scale& beta) {
+
185  return neg_binomial_log<false>(n,alpha,beta);
+
186  }
+
187 
+
188  // Negative Binomial CDF
+
189  template <typename T_n, typename T_shape,
+
190  typename T_inv_scale>
+ +
192  neg_binomial_cdf(const T_n& n, const T_shape& alpha,
+
193  const T_inv_scale& beta) {
+
194  static const char* function = "stan::prob::neg_binomial_cdf(%1%)";
+
195 
+ + + + + +
201 
+
202  // Ensure non-zero arugment lengths
+
203  if (!(stan::length(n) && stan::length(alpha) && stan::length(beta)))
+
204  return 1.0;
+
205 
+
206  double P(1.0);
+
207 
+
208  // Validate arguments
+
209  if (!check_finite(function, alpha, "Shape parameter", &P))
+
210  return P;
+
211 
+
212  if (!check_positive(function, alpha, "Shape parameter", &P))
+
213  return P;
+
214 
+
215  if (!check_finite(function, beta, "Inverse scale parameter",
+
216  &P))
+
217  return P;
+
218 
+
219  if (!check_positive(function, beta, "Inverse scale parameter",
+
220  &P))
+
221  return P;
+
222 
+
223  if (!(check_consistent_sizes(function,
+
224  n, alpha, beta,
+
225  "Failures variable",
+
226  "Shape parameter",
+
227  "Inverse scale parameter",
+
228  &P)))
+
229  return P;
+
230 
+
231  // Wrap arguments in vector views
+
232  VectorView<const T_n> n_vec(n);
+
233  VectorView<const T_shape> alpha_vec(alpha);
+
234  VectorView<const T_inv_scale> beta_vec(beta);
+
235  size_t size = max_size(n, alpha, beta);
+
236 
+
237  // Compute vectorized CDF and gradient
+
238  using stan::math::value_of;
+
239  using boost::math::ibeta;
+
240  using boost::math::ibeta_derivative;
+
241 
+
242  using boost::math::digamma;
+
243 
+ +
245  operands_and_partials(alpha, beta);
+
246 
+
247  // Explicit return for extreme values
+
248  // The gradients are technically ill-defined, but treated as zero
+
249  for (size_t i = 0; i < stan::length(n); i++) {
+
250  if (value_of(n_vec[i]) <= 0)
+
251  return operands_and_partials.to_var(0.0);
+
252  }
+
253 
+
254  // Cache a few expensive function calls if alpha is a parameter
+ + +
257  digammaN_vec(stan::length(alpha));
+ + +
260  digammaAlpha_vec(stan::length(alpha));
+ + +
263  digammaSum_vec(stan::length(alpha));
+ + +
266  betaFunc_vec(stan::length(alpha));
+
267 
+ +
269 
+
270  for (size_t i = 0; i < stan::length(alpha); i++) {
+
271  const double n_dbl = value_of(n_vec[i]);
+
272  const double alpha_dbl = value_of(alpha_vec[i]);
+
273 
+
274  digammaN_vec[i] = digamma(n_dbl + 1);
+
275  digammaAlpha_vec[i] = digamma(alpha_dbl);
+
276  digammaSum_vec[i] = digamma(n_dbl + alpha_dbl + 1);
+
277  betaFunc_vec[i] = boost::math::beta(n_dbl + 1, alpha_dbl);
+
278  }
+
279  }
+
280 
+
281  for (size_t i = 0; i < size; i++) {
+
282 
+
283  // Explicit results for extreme values
+
284  // The gradients are technically ill-defined, but treated as zero
+
285  if (value_of(n_vec[i])
+
286  == std::numeric_limits<double>::infinity())
+
287  continue;
+
288 
+
289  const double n_dbl = value_of(n_vec[i]);
+
290  const double alpha_dbl = value_of(alpha_vec[i]);
+
291  const double beta_dbl = value_of(beta_vec[i]);
+
292 
+
293  const double p_dbl = beta_dbl / (1.0 + beta_dbl);
+
294  const double d_dbl = 1.0 / ( (1.0 + beta_dbl)
+
295  * (1.0 + beta_dbl) );
+
296 
+
297  const double Pi = ibeta(alpha_dbl, n_dbl + 1.0, p_dbl);
+
298 
+
299  P *= Pi;
+
300 
+ +
302 
+
303  double g1 = 0;
+
304  double g2 = 0;
+
305 
+
306  stan::math::gradRegIncBeta(g1, g2, alpha_dbl,
+
307  n_dbl + 1, p_dbl,
+
308  digammaAlpha_vec[i],
+
309  digammaN_vec[i],
+
310  digammaSum_vec[i],
+
311  betaFunc_vec[i]);
+
312 
+
313  operands_and_partials.d_x1[i]
+
314  += g1 / Pi;
+
315  }
+
316 
+ +
318  operands_and_partials.d_x2[i]
+
319  += d_dbl * ibeta_derivative(alpha_dbl, n_dbl + 1, p_dbl)
+
320  / Pi;
+
321 
+
322  }
+
323 
+ +
325  for(size_t i = 0; i < stan::length(alpha); ++i)
+
326  operands_and_partials.d_x1[i] *= P;
+
327 
+ +
329  for(size_t i = 0; i < stan::length(beta); ++i)
+
330  operands_and_partials.d_x2[i] *= P;
+
331 
+
332  return operands_and_partials.to_var(P);
+
333 
+
334  }
+
335 
+
336  template <typename T_n, typename T_shape,
+
337  typename T_inv_scale>
+ +
339  neg_binomial_cdf_log(const T_n& n, const T_shape& alpha,
+
340  const T_inv_scale& beta) {
+
341  static const char* function = "stan::prob::neg_binomial_cdf_log(%1%)";
+
342 
+ + + + + +
348 
+
349  // Ensure non-zero arugment lengths
+
350  if (!(stan::length(n) && stan::length(alpha) && stan::length(beta)))
+
351  return 0.0;
+
352 
+
353  double P(0.0);
+
354 
+
355  // Validate arguments
+
356  if (!check_finite(function, alpha, "Shape parameter", &P))
+
357  return P;
+
358  if (!check_positive(function, alpha, "Shape parameter", &P))
+
359  return P;
+
360  if (!check_finite(function, beta, "Inverse scale parameter", &P))
+
361  return P;
+
362  if (!check_positive(function, beta, "Inverse scale parameter", &P))
+
363  return P;
+
364  if (!(check_consistent_sizes(function,
+
365  n, alpha, beta,
+
366  "Failures variable",
+
367  "Shape parameter",
+
368  "Inverse scale parameter",
+
369  &P)))
+
370  return P;
+
371 
+
372  // Wrap arguments in vector views
+
373  VectorView<const T_n> n_vec(n);
+
374  VectorView<const T_shape> alpha_vec(alpha);
+
375  VectorView<const T_inv_scale> beta_vec(beta);
+
376  size_t size = max_size(n, alpha, beta);
+
377 
+
378  // Compute vectorized cdf_log and gradient
+
379  using stan::math::value_of;
+
380  using boost::math::ibeta;
+
381  using boost::math::ibeta_derivative;
+
382 
+
383  using boost::math::digamma;
+
384 
+ +
386  operands_and_partials(alpha, beta);
+
387 
+
388  // Explicit return for extreme values
+
389  // The gradients are technically ill-defined, but treated as zero
+
390  for (size_t i = 0; i < stan::length(n); i++) {
+
391  if (value_of(n_vec[i]) <= 0)
+
392  return operands_and_partials.to_var(stan::math::negative_infinity());
+
393  }
+
394 
+
395  // Cache a few expensive function calls if alpha is a parameter
+ + +
398  digammaN_vec(stan::length(alpha));
+ + +
401  digammaAlpha_vec(stan::length(alpha));
+ + +
404  digammaSum_vec(stan::length(alpha));
+ + +
407  betaFunc_vec(stan::length(alpha));
+
408 
+ +
410  for (size_t i = 0; i < stan::length(alpha); i++) {
+
411  const double n_dbl = value_of(n_vec[i]);
+
412  const double alpha_dbl = value_of(alpha_vec[i]);
+
413 
+
414  digammaN_vec[i] = digamma(n_dbl + 1);
+
415  digammaAlpha_vec[i] = digamma(alpha_dbl);
+
416  digammaSum_vec[i] = digamma(n_dbl + alpha_dbl + 1);
+
417  betaFunc_vec[i] = boost::math::beta(n_dbl + 1, alpha_dbl);
+
418  }
+
419  }
+
420 
+
421  for (size_t i = 0; i < size; i++) {
+
422  // Explicit results for extreme values
+
423  // The gradients are technically ill-defined, but treated as zero
+
424  if (value_of(n_vec[i])
+
425  == std::numeric_limits<double>::infinity())
+
426  continue;
+
427 
+
428  const double n_dbl = value_of(n_vec[i]);
+
429  const double alpha_dbl = value_of(alpha_vec[i]);
+
430  const double beta_dbl = value_of(beta_vec[i]);
+
431  const double p_dbl = beta_dbl / (1.0 + beta_dbl);
+
432  const double d_dbl = 1.0 / ( (1.0 + beta_dbl)
+
433  * (1.0 + beta_dbl) );
+
434  const double Pi = ibeta(alpha_dbl, n_dbl + 1.0, p_dbl);
+
435 
+
436  P += log(Pi);
+
437 
+ +
439  double g1 = 0;
+
440  double g2 = 0;
+
441 
+
442  stan::math::gradRegIncBeta(g1, g2, alpha_dbl,
+
443  n_dbl + 1, p_dbl,
+
444  digammaAlpha_vec[i],
+
445  digammaN_vec[i],
+
446  digammaSum_vec[i],
+
447  betaFunc_vec[i]);
+
448  operands_and_partials.d_x1[i] += g1 / Pi;
+
449  }
+ +
451  operands_and_partials.d_x2[i]
+
452  += d_dbl * ibeta_derivative(alpha_dbl, n_dbl + 1, p_dbl) / Pi;
+
453  }
+
454 
+
455  return operands_and_partials.to_var(P);
+
456  }
+
457 
+
458  template <typename T_n, typename T_shape,
+
459  typename T_inv_scale>
+ +
461  neg_binomial_ccdf_log(const T_n& n, const T_shape& alpha,
+
462  const T_inv_scale& beta) {
+
463  static const char* function = "stan::prob::neg_binomial_ccdf_log(%1%)";
+
464 
+ + + + + +
470 
+
471  // Ensure non-zero arugment lengths
+
472  if (!(stan::length(n) && stan::length(alpha) && stan::length(beta)))
+
473  return 0.0;
+
474 
+
475  double P(0.0);
+
476 
+
477  // Validate arguments
+
478  if (!check_finite(function, alpha, "Shape parameter", &P))
+
479  return P;
+
480  if (!check_positive(function, alpha, "Shape parameter", &P))
+
481  return P;
+
482  if (!check_finite(function, beta, "Inverse scale parameter", &P))
+
483  return P;
+
484  if (!check_positive(function, beta, "Inverse scale parameter", &P))
+
485  return P;
+
486  if (!(check_consistent_sizes(function,
+
487  n, alpha, beta,
+
488  "Failures variable",
+
489  "Shape parameter",
+
490  "Inverse scale parameter",
+
491  &P)))
+
492  return P;
+
493 
+
494  // Wrap arguments in vector views
+
495  VectorView<const T_n> n_vec(n);
+
496  VectorView<const T_shape> alpha_vec(alpha);
+
497  VectorView<const T_inv_scale> beta_vec(beta);
+
498  size_t size = max_size(n, alpha, beta);
+
499 
+
500  // Compute vectorized cdf_log and gradient
+
501  using stan::math::value_of;
+
502  using boost::math::ibeta;
+
503  using boost::math::ibeta_derivative;
+
504 
+
505  using boost::math::digamma;
+
506 
+ +
508  operands_and_partials(alpha, beta);
+
509 
+
510  // Explicit return for extreme values
+
511  // The gradients are technically ill-defined, but treated as zero
+
512  for (size_t i = 0; i < stan::length(n); i++) {
+
513  if (value_of(n_vec[i]) <= 0)
+
514  return operands_and_partials.to_var(0.0);
+
515  }
+
516 
+
517  // Cache a few expensive function calls if alpha is a parameter
+ + +
520  digammaN_vec(stan::length(alpha));
+ + +
523  digammaAlpha_vec(stan::length(alpha));
+ + +
526  digammaSum_vec(stan::length(alpha));
+ + +
529  betaFunc_vec(stan::length(alpha));
+
530 
+ +
532  for (size_t i = 0; i < stan::length(alpha); i++) {
+
533  const double n_dbl = value_of(n_vec[i]);
+
534  const double alpha_dbl = value_of(alpha_vec[i]);
+
535 
+
536  digammaN_vec[i] = digamma(n_dbl + 1);
+
537  digammaAlpha_vec[i] = digamma(alpha_dbl);
+
538  digammaSum_vec[i] = digamma(n_dbl + alpha_dbl + 1);
+
539  betaFunc_vec[i] = boost::math::beta(n_dbl + 1, alpha_dbl);
+
540  }
+
541  }
+
542 
+
543  for (size_t i = 0; i < size; i++) {
+
544  // Explicit results for extreme values
+
545  // The gradients are technically ill-defined, but treated as zero
+
546  if (value_of(n_vec[i])
+
547  == std::numeric_limits<double>::infinity())
+
548  return operands_and_partials.to_var(stan::math::negative_infinity());
+
549 
+
550  const double n_dbl = value_of(n_vec[i]);
+
551  const double alpha_dbl = value_of(alpha_vec[i]);
+
552  const double beta_dbl = value_of(beta_vec[i]);
+
553  const double p_dbl = beta_dbl / (1.0 + beta_dbl);
+
554  const double d_dbl = 1.0 / ( (1.0 + beta_dbl)
+
555  * (1.0 + beta_dbl) );
+
556  const double Pi = 1.0 - ibeta(alpha_dbl, n_dbl + 1.0, p_dbl);
+
557 
+
558  P += log(Pi);
+
559 
+ +
561  double g1 = 0;
+
562  double g2 = 0;
+
563 
+
564  stan::math::gradRegIncBeta(g1, g2, alpha_dbl,
+
565  n_dbl + 1, p_dbl,
+
566  digammaAlpha_vec[i],
+
567  digammaN_vec[i],
+
568  digammaSum_vec[i],
+
569  betaFunc_vec[i]);
+
570  operands_and_partials.d_x1[i] -= g1 / Pi;
+
571  }
+ +
573  operands_and_partials.d_x2[i]
+
574  -= d_dbl * ibeta_derivative(alpha_dbl, n_dbl + 1, p_dbl) / Pi;
+
575  }
+
576 
+
577  return operands_and_partials.to_var(P);
+
578  }
+
579 
+
580  template <class RNG>
+
581  inline int
+
582  neg_binomial_rng(const double alpha,
+
583  const double beta,
+
584  RNG& rng) {
+
585  using boost::variate_generator;
+
586  using boost::random::negative_binomial_distribution;
+
587 
+
588  static const char* function = "stan::prob::neg_binomial_rng(%1%)";
+
589 
+ + +
592 
+
593  if (!check_finite(function, alpha, "Shape parameter"))
+
594  return 0;
+
595  if (!check_positive(function, alpha, "Shape parameter"))
+
596  return 0;
+
597  if (!check_finite(function, beta, "Inverse scale parameter"))
+
598  return 0;
+
599  if (!check_positive(function, beta, "Inverse scale parameter"))
+
600  return 0;
+
601 
+
602  return stan::prob::poisson_rng(stan::prob::gamma_rng(alpha,1.0 / beta,
+
603  rng),rng);
+
604  }
+
605  }
+
606 }
+
607 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/nesterov__gradient_8hpp.html b/doc/api/html/nesterov__gradient_8hpp.html new file mode 100644 index 00000000000..648dd3e51b3 --- /dev/null +++ b/doc/api/html/nesterov__gradient_8hpp.html @@ -0,0 +1,128 @@ + + + + + +Stan: src/stan/optimization/nesterov_gradient.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
nesterov_gradient.hpp File Reference
+
+
+
#include <vector>
+#include <stan/model/util.hpp>
+
+

Go to the source code of this file.

+ + + + +

+Classes

class  stan::optimization::NesterovGradient< M >
 
+ + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::optimization
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/nesterov__gradient_8hpp_source.html b/doc/api/html/nesterov__gradient_8hpp_source.html new file mode 100644 index 00000000000..bcf65804a8c --- /dev/null +++ b/doc/api/html/nesterov__gradient_8hpp_source.html @@ -0,0 +1,258 @@ + + + + + +Stan: src/stan/optimization/nesterov_gradient.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
nesterov_gradient.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__OPTIMIZATION__NESTEROV__GRADIENT_HPP__
+
2 #define __STAN__OPTIMIZATION__NESTEROV__GRADIENT_HPP__
+
3 
+
4 #include <vector>
+
5 
+
6 #include <stan/model/util.hpp>
+
7 
+
8 namespace stan {
+
9 
+
10  namespace optimization {
+
11 
+
12  template <class M>
+ +
14 
+
15  private:
+
16 
+
17  M& model_;
+
18 
+
19  std::vector<double> x_;
+
20  std::vector<double> y_;
+
21  std::vector<int> z_;
+
22 
+
23  double logp_;
+
24  std::vector<double> grad_;
+
25 
+
26  double epsilon_;
+
27  double gamma_;
+
28  double lambda_;
+
29 
+
30  std::ostream* output_stream_;
+
31 
+
32  public:
+
33 
+ +
35 
+
36  if (epsilon_ <= 0)
+
37  epsilon_ = 1;
+
38 
+
39  bool valid = true;
+
40  double old_logp = logp_;
+
41  std::vector<double> old_x = x_;
+
42  std::vector<double> old_grad = grad_;
+
43 
+
44  for (size_t i = 0; i < x_.size(); i++)
+
45  x_[i] += epsilon_ * old_grad[i];
+
46 
+
47  try {
+
48  logp_ = stan::model::log_prob_grad<true,false>(model_,x_, z_,
+
49  grad_, output_stream_);
+
50  valid = true;
+
51  }
+
52  catch (std::exception &ex) {
+
53  valid = false;
+
54  }
+
55 
+
56  if (valid && (logp_ > old_logp) ) {
+
57 
+
58  while (valid && logp_ > old_logp) {
+
59 
+
60  epsilon_ *= 2;
+
61  x_ = old_x;
+
62 
+
63  for (size_t i = 0; i < x_.size(); i++)
+
64  x_[i] += epsilon_ * old_grad[i];
+
65 
+
66  try {
+
67  logp_ = stan::model::log_prob_grad<true,false>(model_, x_, z_,
+
68  grad_, output_stream_);
+
69  }
+
70  catch (std::exception &ex) {
+
71  valid = false;
+
72  }
+
73  }
+
74 
+
75  epsilon_ /= 2;
+
76 
+
77  } else {
+
78 
+
79 
+
80  while (!valid || !(logp_ > old_logp)) {
+
81 
+
82  epsilon_ /= 2;
+
83  x_ = old_x;
+
84 
+
85  for (size_t i = 0; i < x_.size(); i++)
+
86  x_[i] += epsilon_ * old_grad[i];
+
87 
+
88  try {
+
89  logp_ = stan::model::log_prob_grad<true,false>(model_,x_, z_,
+
90  grad_, output_stream_);
+
91  valid = true;
+
92  }
+
93  catch (std::exception &ex) {
+
94  valid = false;
+
95  }
+
96  }
+
97  }
+
98 
+
99  x_ = old_x;
+
100  grad_ = old_grad;
+
101 
+
102  }
+
103 
+ +
105  const std::vector<double>& params_r,
+
106  const std::vector<int>& params_i,
+
107  double epsilon = -1,
+
108  std::ostream* output_stream = 0) :
+
109  model_(model),
+
110  x_(params_r), y_(params_r), z_(params_i),
+
111  epsilon_(epsilon), gamma_(0.0), lambda_(0.0),
+
112  output_stream_(output_stream) {
+
113 
+
114  logp_ = stan::model::log_prob_grad<true,false>(model_,x_, z_,
+
115  grad_, output_stream_);
+ +
117 
+
118  }
+
119 
+
120  double logp() { return logp_; }
+
121  void grad(std::vector<double>& g) { g = grad_; }
+
122  void params_r(std::vector<double>& x) { x = x_; }
+
123 
+
124  double step() {
+
125 
+
126  std::vector<double> old_y = y_;
+
127  double old_lambda = lambda_;
+
128 
+
129  lambda_ = 0.5 * ( 1 + std::sqrt(1.0 + 4.0 * old_lambda * old_lambda) );
+
130  gamma_ = (old_lambda - 1.0) / lambda_;
+
131 
+
132  for (size_t i = 0; i < x_.size(); i++)
+
133  y_[i] = x_[i] + epsilon_ * grad_[i];
+
134 
+
135  for (size_t i = 0; i < x_.size(); i++)
+
136  x_[i] = (1 - gamma_) * y_[i] + gamma_ * old_y[i];
+
137 
+
138  logp_ = stan::model::log_prob_grad<true,false>(model_, x_, z_,
+
139  grad_, output_stream_);
+
140 
+
141  return logp_;
+
142 
+
143  }
+
144 
+
145  };
+
146 
+
147  }
+
148 
+
149 }
+
150 
+
151 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/newton_8hpp.html b/doc/api/html/newton_8hpp.html new file mode 100644 index 00000000000..34352f6f2f9 --- /dev/null +++ b/doc/api/html/newton_8hpp.html @@ -0,0 +1,141 @@ + + + + + +Stan: src/stan/optimization/newton.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
newton.hpp File Reference
+
+
+
#include <Eigen/Dense>
+#include <Eigen/Cholesky>
+#include <Eigen/Eigenvalues>
+#include <stan/model/util.hpp>
+
+

Go to the source code of this file.

+ + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::optimization
 
+ + + + + +

+Typedefs

typedef Eigen::Matrix< double,
+Eigen::Dynamic, Eigen::Dynamic > 
stan::optimization::matrix_d
 
typedef Eigen::Matrix< double,
+Eigen::Dynamic, 1 > 
stan::optimization::vector_d
 
+ + + + +

+Functions

template<typename M >
double stan::optimization::newton_step (M &model, std::vector< double > &params_r, std::vector< int > &params_i, std::ostream *output_stream=0)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/newton_8hpp_source.html b/doc/api/html/newton_8hpp_source.html new file mode 100644 index 00000000000..d4d398be59d --- /dev/null +++ b/doc/api/html/newton_8hpp_source.html @@ -0,0 +1,193 @@ + + + + + +Stan: src/stan/optimization/newton.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
newton.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__OPTIMIZATION__NEWTON_HPP__
+
2 #define __STAN__OPTIMIZATION__NEWTON_HPP__
+
3 
+
4 #include <Eigen/Dense>
+
5 #include <Eigen/Cholesky>
+
6 #include <Eigen/Eigenvalues>
+
7 
+
8 #include <stan/model/util.hpp>
+
9 
+
10 namespace stan {
+
11 
+
12  namespace optimization {
+
13 
+
14  typedef Eigen::Matrix<double, Eigen::Dynamic, Eigen::Dynamic> matrix_d;
+
15  typedef Eigen::Matrix<double, Eigen::Dynamic, 1> vector_d;
+
16 
+
17  namespace {
+
18  // Negates any positive eigenvalues in H so that H is negative
+
19  // definite, and then solves Hu = g and stores the result into
+
20  // g. Avoids problems due to non-log-concave distributions.
+
21  void make_negative_definite_and_solve(matrix_d& H, vector_d& g) {
+
22  Eigen::SelfAdjointEigenSolver<matrix_d> solver(H);
+
23  matrix_d eigenvectors = solver.eigenvectors();
+
24  vector_d eigenvalues = solver.eigenvalues();
+
25  vector_d eigenprojections = eigenvectors.transpose() * g;
+
26  for (int i = 0; i < g.size(); i++) {
+
27  eigenprojections[i] = -eigenprojections[i] / fabs(eigenvalues[i]);
+
28  }
+
29  g = eigenvectors * eigenprojections;
+
30  }
+
31  }
+
32 
+
33  template <typename M>
+
34  double newton_step(M& model,
+
35  std::vector<double>& params_r,
+
36  std::vector<int>& params_i,
+
37  std::ostream* output_stream = 0) {
+
38  std::vector<double> gradient;
+
39  std::vector<double> hessian;
+
40 
+
41  double f0
+
42  = stan::model::grad_hess_log_prob<true,false>(model,
+
43  params_r, params_i,
+
44  gradient, hessian);
+
45  matrix_d H(params_r.size(), params_r.size());
+
46  for (size_t i = 0; i < hessian.size(); i++) {
+
47  H(i) = hessian[i];
+
48  }
+
49  vector_d g(params_r.size());
+
50  for (size_t i = 0; i < gradient.size(); i++)
+
51  g(i) = gradient[i];
+
52  make_negative_definite_and_solve(H, g);
+
53 // H.ldlt().solveInPlace(g);
+
54 
+
55  std::vector<double> new_params_r(params_r.size());
+
56  double step_size = 2;
+
57  double min_step_size = 1e-50;
+
58  double f1 = -1e100;
+
59 
+
60  while (f1 < f0) {
+
61  step_size *= 0.5;
+
62  if (step_size < min_step_size)
+
63  return f0;
+
64 
+
65  for (size_t i = 0; i < params_r.size(); i++)
+
66  new_params_r[i] = params_r[i] - step_size * g[i];
+
67  try {
+
68  f1 = stan::model::log_prob_grad<true,false>(model,
+
69  new_params_r,
+
70  params_i, gradient);
+
71  } catch (std::exception& e) {
+
72  // FIXME: this is not a good way to handle a general exception
+
73  f1 = -1e100;
+
74  }
+
75  }
+
76  for (size_t i = 0; i < params_r.size(); i++)
+
77  params_r[i] = new_params_r[i];
+
78 
+
79  return f1;
+
80  }
+
81 
+
82  }
+
83 
+
84 }
+
85 
+
86 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/open.png b/doc/api/html/open.png new file mode 100644 index 0000000000000000000000000000000000000000..30f75c7efe2dd0c9e956e35b69777a02751f048b GIT binary patch literal 123 zcmeAS@N?(olHy`uVBq!ia0vp^oFL4>1|%O$WD@{VPM$7~Ar*{o?;hlAFyLXmaDC0y znK1_#cQqJWPES%4Uujug^TE?jMft$}Eq^WaR~)%f)vSNs&gek&x%A9X9sM + + + + +Stan: src/stan/agrad/rev/operators/operator_divide_equal.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
operator_divide_equal.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/operator__divide__equal_8hpp_source.html b/doc/api/html/operator__divide__equal_8hpp_source.html new file mode 100644 index 00000000000..f9d35b322f3 --- /dev/null +++ b/doc/api/html/operator__divide__equal_8hpp_source.html @@ -0,0 +1,131 @@ + + + + + +Stan: src/stan/agrad/rev/operators/operator_divide_equal.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
operator_divide_equal.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__REV__OPERATORS__OPERATOR_DIVIDE_EQUAL_HPP__
+
2 #define __STAN__AGRAD__REV__OPERATORS__OPERATOR_DIVIDE_EQUAL_HPP__
+
3 
+
4 #include <stan/agrad/rev/var.hpp>
+ +
6 
+
7 namespace stan {
+
8  namespace agrad {
+
9 
+
10  inline var& var::operator/=(const var& b) {
+
11  vi_ = new divide_vv_vari(vi_,b.vi_);
+
12  return *this;
+
13  }
+
14 
+
15  inline var& var::operator/=(const double b) {
+
16  if (b == 1.0)
+
17  return *this;
+
18  vi_ = new divide_vd_vari(vi_,b);
+
19  return *this;
+
20  }
+
21 
+
22  }
+
23 }
+
24 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/operator__minus__equal_8hpp.html b/doc/api/html/operator__minus__equal_8hpp.html new file mode 100644 index 00000000000..af0574df770 --- /dev/null +++ b/doc/api/html/operator__minus__equal_8hpp.html @@ -0,0 +1,123 @@ + + + + + +Stan: src/stan/agrad/rev/operators/operator_minus_equal.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
operator_minus_equal.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/operator__minus__equal_8hpp_source.html b/doc/api/html/operator__minus__equal_8hpp_source.html new file mode 100644 index 00000000000..1ed8764c468 --- /dev/null +++ b/doc/api/html/operator__minus__equal_8hpp_source.html @@ -0,0 +1,131 @@ + + + + + +Stan: src/stan/agrad/rev/operators/operator_minus_equal.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
operator_minus_equal.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__REV__OPERATORS__OPERATOR_MINUS_EQUAL_HPP__
+
2 #define __STAN__AGRAD__REV__OPERATORS__OPERATOR_MINUS_EQUAL_HPP__
+
3 
+
4 #include <stan/agrad/rev/var.hpp>
+ +
6 
+
7 namespace stan {
+
8  namespace agrad {
+
9 
+
10  inline var& var::operator-=(const var& b) {
+
11  vi_ = new subtract_vv_vari(vi_,b.vi_);
+
12  return *this;
+
13  }
+
14 
+
15  inline var& var::operator-=(const double b) {
+
16  if (b == 0.0)
+
17  return *this;
+
18  vi_ = new subtract_vd_vari(vi_,b);
+
19  return *this;
+
20  }
+
21 
+
22  }
+
23 }
+
24 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/operator__multiply__equal_8hpp.html b/doc/api/html/operator__multiply__equal_8hpp.html new file mode 100644 index 00000000000..24d1c3aff88 --- /dev/null +++ b/doc/api/html/operator__multiply__equal_8hpp.html @@ -0,0 +1,123 @@ + + + + + +Stan: src/stan/agrad/rev/operators/operator_multiply_equal.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
operator_multiply_equal.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/operator__multiply__equal_8hpp_source.html b/doc/api/html/operator__multiply__equal_8hpp_source.html new file mode 100644 index 00000000000..7c357479f10 --- /dev/null +++ b/doc/api/html/operator__multiply__equal_8hpp_source.html @@ -0,0 +1,131 @@ + + + + + +Stan: src/stan/agrad/rev/operators/operator_multiply_equal.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
operator_multiply_equal.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__REV__OPERATORS__OPERATOR_MULTIPLY_EQUAL_HPP__
+
2 #define __STAN__AGRAD__REV__OPERATORS__OPERATOR_MULTIPLY_EQUAL_HPP__
+
3 
+
4 #include <stan/agrad/rev/var.hpp>
+ +
6 
+
7 namespace stan {
+
8  namespace agrad {
+
9 
+
10  inline var& var::operator*=(const var& b) {
+
11  vi_ = new multiply_vv_vari(vi_,b.vi_);
+
12  return *this;
+
13  }
+
14 
+
15  inline var& var::operator*=(const double b) {
+
16  if (b == 1.0)
+
17  return *this;
+
18  vi_ = new multiply_vd_vari(vi_,b);
+
19  return *this;
+
20  }
+
21 
+
22  }
+
23 }
+
24 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/operator__plus__equal_8hpp.html b/doc/api/html/operator__plus__equal_8hpp.html new file mode 100644 index 00000000000..b741e02771f --- /dev/null +++ b/doc/api/html/operator__plus__equal_8hpp.html @@ -0,0 +1,123 @@ + + + + + +Stan: src/stan/agrad/rev/operators/operator_plus_equal.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
operator_plus_equal.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/operator__plus__equal_8hpp_source.html b/doc/api/html/operator__plus__equal_8hpp_source.html new file mode 100644 index 00000000000..61ddb94b77b --- /dev/null +++ b/doc/api/html/operator__plus__equal_8hpp_source.html @@ -0,0 +1,131 @@ + + + + + +Stan: src/stan/agrad/rev/operators/operator_plus_equal.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
operator_plus_equal.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__REV__OPERATORS__OPERATOR_PLUS_EQUAL_HPP__
+
2 #define __STAN__AGRAD__REV__OPERATORS__OPERATOR_PLUS_EQUAL_HPP__
+
3 
+
4 #include <stan/agrad/rev/var.hpp>
+ +
6 
+
7 namespace stan {
+
8  namespace agrad {
+
9 
+
10  inline var& var::operator+=(const var& b) {
+
11  vi_ = new add_vv_vari(vi_,b.vi_);
+
12  return *this;
+
13  }
+
14 
+
15  inline var& var::operator+=(const double b) {
+
16  if (b == 0.0)
+
17  return *this;
+
18  vi_ = new add_vd_vari(vi_,b);
+
19  return *this;
+
20  }
+
21 
+
22  }
+
23 }
+
24 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/operator__unary__decrement_8hpp.html b/doc/api/html/operator__unary__decrement_8hpp.html new file mode 100644 index 00000000000..8d5ba3f67a3 --- /dev/null +++ b/doc/api/html/operator__unary__decrement_8hpp.html @@ -0,0 +1,133 @@ + + + + + +Stan: src/stan/agrad/rev/operators/operator_unary_decrement.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
operator_unary_decrement.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+ + + + + + + +

+Functions

var & stan::agrad::operator-- (var &a)
 Prefix decrement operator for variables (C++).
 
var stan::agrad::operator-- (var &a, int)
 Postfix decrement operator for variables (C++).
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/operator__unary__decrement_8hpp_source.html b/doc/api/html/operator__unary__decrement_8hpp_source.html new file mode 100644 index 00000000000..31a403374c8 --- /dev/null +++ b/doc/api/html/operator__unary__decrement_8hpp_source.html @@ -0,0 +1,142 @@ + + + + + +Stan: src/stan/agrad/rev/operators/operator_unary_decrement.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
operator_unary_decrement.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__REV__OPERATORS__OPERATOR_UNARY_DECREMENT_HPP__
+
2 #define __STAN__AGRAD__REV__OPERATORS__OPERATOR_UNARY_DECREMENT_HPP__
+
3 
+
4 #include <stan/agrad/rev/var.hpp>
+ +
6 
+
7 namespace stan {
+
8  namespace agrad {
+
9 
+
10  namespace {
+
11  class decrement_vari : public op_v_vari {
+
12  public:
+
13  decrement_vari(vari* avi) :
+
14  op_v_vari(avi->val_ - 1.0, avi) {
+
15  }
+
16  void chain() {
+
17  avi_->adj_ += adj_;
+
18  }
+
19  };
+
20  }
+
21 
+
35  inline var& operator--(var& a) {
+
36  a.vi_ = new decrement_vari(a.vi_);
+
37  return a;
+
38  }
+
39 
+
51  inline var operator--(var& a, int /*dummy*/) {
+
52  var temp(a);
+
53  a.vi_ = new decrement_vari(a.vi_);
+
54  return temp;
+
55  }
+
56 
+
57  }
+
58 }
+
59 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/operator__unary__increment_8hpp.html b/doc/api/html/operator__unary__increment_8hpp.html new file mode 100644 index 00000000000..6b297e4f774 --- /dev/null +++ b/doc/api/html/operator__unary__increment_8hpp.html @@ -0,0 +1,133 @@ + + + + + +Stan: src/stan/agrad/rev/operators/operator_unary_increment.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
operator_unary_increment.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+ + + + + + + +

+Functions

var & stan::agrad::operator++ (var &a)
 Prefix increment operator for variables (C++).
 
var stan::agrad::operator++ (var &a, int)
 Postfix increment operator for variables (C++).
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/operator__unary__increment_8hpp_source.html b/doc/api/html/operator__unary__increment_8hpp_source.html new file mode 100644 index 00000000000..ca34b2041c1 --- /dev/null +++ b/doc/api/html/operator__unary__increment_8hpp_source.html @@ -0,0 +1,142 @@ + + + + + +Stan: src/stan/agrad/rev/operators/operator_unary_increment.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
operator_unary_increment.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__REV__OPERATORS__OPERATOR_UNARY_INCREMENT_HPP__
+
2 #define __STAN__AGRAD__REV__OPERATORS__OPERATOR_UNARY_INCREMENT_HPP__
+
3 
+
4 #include <stan/agrad/rev/var.hpp>
+ +
6 
+
7 namespace stan {
+
8  namespace agrad {
+
9 
+
10  namespace {
+
11  class increment_vari : public op_v_vari {
+
12  public:
+
13  increment_vari(vari* avi) :
+
14  op_v_vari(avi->val_ + 1.0, avi) {
+
15  }
+
16  void chain() {
+
17  avi_->adj_ += adj_;
+
18  }
+
19  };
+
20  }
+
21 
+
31  inline var& operator++(var& a) {
+
32  a.vi_ = new increment_vari(a.vi_);
+
33  return a;
+
34  }
+
35 
+
47  inline var operator++(var& a, int /*dummy*/) {
+
48  var temp(a);
+
49  a.vi_ = new increment_vari(a.vi_);
+
50  return temp;
+
51  }
+
52 
+
53  }
+
54 }
+
55 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/operator__unary__minus_8hpp.html b/doc/api/html/operator__unary__minus_8hpp.html new file mode 100644 index 00000000000..af284ca9982 --- /dev/null +++ b/doc/api/html/operator__unary__minus_8hpp.html @@ -0,0 +1,130 @@ + + + + + +Stan: src/stan/agrad/fwd/operators/operator_unary_minus.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
operator_unary_minus.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+ + + + +

+Functions

template<typename T >
fvar< T > stan::agrad::operator- (const fvar< T > &x)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/operator__unary__minus_8hpp_source.html b/doc/api/html/operator__unary__minus_8hpp_source.html new file mode 100644 index 00000000000..564f0350ee8 --- /dev/null +++ b/doc/api/html/operator__unary__minus_8hpp_source.html @@ -0,0 +1,126 @@ + + + + + +Stan: src/stan/agrad/fwd/operators/operator_unary_minus.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
operator_unary_minus.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__FWD__OPERATORS__OPERATOR_UNARY_NEGATIVE_HPP__
+
2 #define __STAN__AGRAD__FWD__OPERATORS__OPERATOR_UNARY_NEGATIVE_HPP__
+
3 
+ +
5 #include <stan/meta/traits.hpp>
+
6 
+
7 namespace stan {
+
8 
+
9  namespace agrad {
+
10 
+
11  template <typename T>
+
12  inline
+
13  fvar<T>
+
14  operator-(const fvar<T>& x) {
+
15  return fvar<T>(-x.val_, -x.d_);
+
16  }
+
17  }
+
18 }
+
19 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/operator__unary__negative_8hpp.html b/doc/api/html/operator__unary__negative_8hpp.html new file mode 100644 index 00000000000..87b1cfbbbd8 --- /dev/null +++ b/doc/api/html/operator__unary__negative_8hpp.html @@ -0,0 +1,130 @@ + + + + + +Stan: src/stan/agrad/rev/operators/operator_unary_negative.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
operator_unary_negative.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+ + + + +

+Functions

var stan::agrad::operator- (const var &a)
 Unary negation operator for variables (C++).
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/operator__unary__negative_8hpp_source.html b/doc/api/html/operator__unary__negative_8hpp_source.html new file mode 100644 index 00000000000..177113511e6 --- /dev/null +++ b/doc/api/html/operator__unary__negative_8hpp_source.html @@ -0,0 +1,135 @@ + + + + + +Stan: src/stan/agrad/rev/operators/operator_unary_negative.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
operator_unary_negative.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__REV__OPERATORS__OPERATOR_UNARY_NEGATIVE_HPP__
+
2 #define __STAN__AGRAD__REV__OPERATORS__OPERATOR_UNARY_NEGATIVE_HPP__
+
3 
+
4 #include <stan/agrad/rev/var.hpp>
+ +
6 
+
7 namespace stan {
+
8  namespace agrad {
+
9 
+
10  namespace {
+
11  class neg_vari : public op_v_vari {
+
12  public:
+
13  neg_vari(vari* avi) :
+
14  op_v_vari(-(avi->val_), avi) {
+
15  }
+
16  void chain() {
+
17  avi_->adj_ -= adj_;
+
18  }
+
19  };
+
20  }
+
21 
+
30  inline var operator-(const var& a) {
+
31  return var(new neg_vari(a.vi_));
+
32  }
+
33 
+
34  }
+
35 }
+
36 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/operator__unary__not_8hpp.html b/doc/api/html/operator__unary__not_8hpp.html new file mode 100644 index 00000000000..09101c1abb0 --- /dev/null +++ b/doc/api/html/operator__unary__not_8hpp.html @@ -0,0 +1,129 @@ + + + + + +Stan: src/stan/agrad/rev/operators/operator_unary_not.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
operator_unary_not.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+ + + + +

+Functions

bool stan::agrad::operator! (const var &a)
 Prefix logical negation for the value of variables (C++).
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/operator__unary__not_8hpp_source.html b/doc/api/html/operator__unary__not_8hpp_source.html new file mode 100644 index 00000000000..3cf1cffe0c0 --- /dev/null +++ b/doc/api/html/operator__unary__not_8hpp_source.html @@ -0,0 +1,122 @@ + + + + + +Stan: src/stan/agrad/rev/operators/operator_unary_not.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
operator_unary_not.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__REV__OPERATORS__OPERATOR_UNARY_NOT_HPP__
+
2 #define __STAN__AGRAD__REV__OPERATORS__OPERATOR_UNARY_NOT_HPP__
+
3 
+
4 #include <stan/agrad/rev/var.hpp>
+
5 
+
6 namespace stan {
+
7  namespace agrad {
+
8 
+
22  inline bool operator!(const var& a) {
+
23  return !a.val();
+
24  }
+
25 
+
26  }
+
27 }
+
28 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/operator__unary__plus_8hpp.html b/doc/api/html/operator__unary__plus_8hpp.html new file mode 100644 index 00000000000..6850dc91696 --- /dev/null +++ b/doc/api/html/operator__unary__plus_8hpp.html @@ -0,0 +1,129 @@ + + + + + +Stan: src/stan/agrad/rev/operators/operator_unary_plus.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
operator_unary_plus.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+ + + + +

+Functions

var stan::agrad::operator+ (const var &a)
 Unary plus operator for variables (C++).
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/operator__unary__plus_8hpp_source.html b/doc/api/html/operator__unary__plus_8hpp_source.html new file mode 100644 index 00000000000..20a54564add --- /dev/null +++ b/doc/api/html/operator__unary__plus_8hpp_source.html @@ -0,0 +1,122 @@ + + + + + +Stan: src/stan/agrad/rev/operators/operator_unary_plus.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
operator_unary_plus.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__REV__OPERATORS__OPERATOR_UNARY_PLUS_HPP__
+
2 #define __STAN__AGRAD__REV__OPERATORS__OPERATOR_UNARY_PLUS_HPP__
+
3 
+
4 #include <stan/agrad/rev/var.hpp>
+
5 
+
6 namespace stan {
+
7  namespace agrad {
+
8 
+
24  inline var operator+(const var& a) {
+
25  return a;
+
26  }
+
27 
+
28  }
+
29 }
+
30 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/ordered__logistic_8hpp.html b/doc/api/html/ordered__logistic_8hpp.html new file mode 100644 index 00000000000..a4160a680a5 --- /dev/null +++ b/doc/api/html/ordered__logistic_8hpp.html @@ -0,0 +1,151 @@ + + + + + +Stan: src/stan/prob/distributions/univariate/discrete/ordered_logistic.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
ordered_logistic.hpp File Reference
+
+
+
#include <boost/random/uniform_01.hpp>
+#include <boost/random/variate_generator.hpp>
+#include <stan/prob/distributions/multivariate/discrete/categorical.hpp>
+#include <stan/prob/traits.hpp>
+#include <stan/math/error_handling.hpp>
+#include <stan/math/functions/inv_logit.hpp>
+#include <stan/math/functions/log1m.hpp>
+#include <stan/math/functions/log1m_exp.hpp>
+#include <stan/math/functions/log1p_exp.hpp>
+#include <stan/math/matrix_error_handling.hpp>
+#include <stan/prob/constants.hpp>
+
+

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::prob
 Templated probability distributions.
 
+ + + + + + + + + + + + + + +

+Functions

template<typename T >
stan::prob::log_inv_logit_diff (const T &alpha, const T &beta)
 
template<bool propto, typename T_lambda , typename T_cut >
boost::math::tools::promote_args
+< T_lambda, T_cut >::type 
stan::prob::ordered_logistic_log (int y, const T_lambda &lambda, const Eigen::Matrix< T_cut, Eigen::Dynamic, 1 > &c)
 Returns the (natural) log probability of the specified integer outcome given the continuous location and specified cutpoints in an ordered logistic model.
 
template<typename T_lambda , typename T_cut >
boost::math::tools::promote_args
+< T_lambda, T_cut >::type 
stan::prob::ordered_logistic_log (int y, const T_lambda &lambda, const Eigen::Matrix< T_cut, Eigen::Dynamic, 1 > &c)
 
template<class RNG >
int stan::prob::ordered_logistic_rng (const double eta, const Eigen::Matrix< double, Eigen::Dynamic, 1 > &c, RNG &rng)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/ordered__logistic_8hpp_source.html b/doc/api/html/ordered__logistic_8hpp_source.html new file mode 100644 index 00000000000..db54699e874 --- /dev/null +++ b/doc/api/html/ordered__logistic_8hpp_source.html @@ -0,0 +1,264 @@ + + + + + +Stan: src/stan/prob/distributions/univariate/discrete/ordered_logistic.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
ordered_logistic.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__PROB__DISTRIBUTIONS__UNIVARIATE__DISCRETE__ORDERED_LOGISTIC_HPP__
+
2 #define __STAN__PROB__DISTRIBUTIONS__UNIVARIATE__DISCRETE__ORDERED_LOGISTIC_HPP__
+
3 
+
4 #include <boost/random/uniform_01.hpp>
+
5 #include <boost/random/variate_generator.hpp>
+ +
7 
+
8 #include <stan/prob/traits.hpp>
+ + + + + + + +
16 #include <stan/prob/constants.hpp>
+
17 
+
18 
+
19 namespace stan {
+
20 
+
21  namespace prob {
+
22 
+
23  template <typename T>
+
24  inline T log_inv_logit_diff(const T& alpha, const T& beta) {
+
25  using std::exp;
+ + +
28  return beta + log1m_exp(alpha - beta) - log1p_exp(alpha) - log1p_exp(beta);
+
29  }
+
30 
+
31  // y in 0,...,K-1; c.size()==K-2, c increasing, lambda finite
+
58  template <bool propto, typename T_lambda, typename T_cut>
+
59  typename boost::math::tools::promote_args<T_lambda,T_cut>::type
+
60  ordered_logistic_log(int y, const T_lambda& lambda,
+
61  const Eigen::Matrix<T_cut,Eigen::Dynamic,1>& c) {
+
62  using std::exp;
+
63  using std::log;
+ +
65  using stan::math::log1m;
+ +
67 
+
68  static const char* function = "stan::prob::ordered_logistic(%1%)";
+
69 
+ + + + + + + +
77 
+
78  int K = c.size() + 1;
+
79 
+
80  typename boost::math::tools::promote_args<T_lambda,T_cut>::type lp(0.0);
+
81  if (!check_bounded(function, y, 1, K,
+
82  "Random variable",
+
83  &lp))
+
84  return lp;
+
85 
+
86  if (!check_finite(function, lambda,
+
87  "Location parameter", &lp))
+
88  return lp;
+
89 
+
90  if (!check_greater(function, c.size(), 0,
+
91  "Size of cut points parameter",
+
92  &lp))
+
93  return lp;
+
94 
+
95 
+
96  for (int i = 1; i < c.size(); ++i) {
+
97  if (!check_greater(function, c(i), c(i - 1),
+
98  "Cut points parameter",
+
99  &lp))
+
100  return lp;
+
101  }
+
102 
+
103  if (!check_finite(function, c(c.size()-1),
+
104  "Cut points parameter",
+
105  &lp))
+
106  return lp;
+
107 
+
108  if (!check_finite(function, c(0),
+
109  "Cut points parameter",
+
110  &lp))
+
111  return lp;
+
112 
+
113  // log(1 - inv_logit(lambda))
+
114  if (y == 1)
+
115  return -log1p_exp(lambda - c(0));
+
116 
+
117  // log(inv_logit(lambda - c(K-3)));
+
118  if (y == K) {
+
119  return -log1p_exp(c(K-2) - lambda);
+
120  }
+
121 
+
122  // if (2 < y < K) { ... }
+
123  // log(inv_logit(lambda - c(y-2)) - inv_logit(lambda - c(y-1)))
+
124  return log_inv_logit_diff(c(y-2) - lambda,
+
125  c(y-1) - lambda);
+
126 
+
127  }
+
128 
+
129  template <typename T_lambda, typename T_cut>
+
130  typename boost::math::tools::promote_args<T_lambda,T_cut>::type
+
131  ordered_logistic_log(int y, const T_lambda& lambda,
+
132  const Eigen::Matrix<T_cut,Eigen::Dynamic,1>& c) {
+
133  return ordered_logistic_log<false>(y,lambda,c);
+
134  }
+
135 
+
136  template <class RNG>
+
137  inline int
+
138  ordered_logistic_rng(const double eta,
+
139  const Eigen::Matrix<double,Eigen::Dynamic,1>& c,
+
140  RNG& rng) {
+
141  using boost::variate_generator;
+
142  using stan::math::inv_logit;
+
143 
+
144  static const char* function = "stan::prob::ordered_logistic(%1%)";
+
145 
+ + + + + + + +
153 
+
154  if (!check_finite(function, eta,
+
155  "Location parameter"))
+
156  return 0;
+
157  if (!check_greater(function, c.size(), 0,
+
158  "Size of cut points parameter"))
+
159  return 0;
+
160  for (int i = 1; i < c.size(); ++i) {
+
161  if (!check_greater(function, c(i), c(i - 1),
+
162  "Cut points parameter"))
+
163  return 0;
+
164  }
+
165  if (!check_finite(function, c(c.size()-1),
+
166  "Cut points parameter"))
+
167  return 0;
+
168  if (!check_finite(function, c(0),
+
169  "Cut points parameter"))
+
170  return 0;
+
171 
+
172  Eigen::VectorXd cut(c.rows());
+
173  cut(0) = 1 - inv_logit(eta - c(0));
+
174  for(int j = 1; j < c.rows() - 1; j++)
+
175  cut(j) = inv_logit(eta - c(j - 1)) - inv_logit(eta - c(j));
+
176  cut(c.rows() - 1) = inv_logit(eta - c(c.rows() - 2));
+
177 
+
178  return stan::prob::categorical_rng(cut, rng);
+
179  }
+
180  }
+
181 }
+
182 
+
183 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/pages.html b/doc/api/html/pages.html new file mode 100644 index 00000000000..4e85edd3ac0 --- /dev/null +++ b/doc/api/html/pages.html @@ -0,0 +1,102 @@ + + + + + +Stan: Related Pages + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + +
+ + + + +
+ +
+ +
+
+
Related Pages
+
+
+
Here is a list of all related documentation pages:
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/pareto_8hpp.html b/doc/api/html/pareto_8hpp.html new file mode 100644 index 00000000000..539c7489460 --- /dev/null +++ b/doc/api/html/pareto_8hpp.html @@ -0,0 +1,158 @@ + + + + + +Stan: src/stan/prob/distributions/univariate/continuous/pareto.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
pareto.hpp File Reference
+
+
+
#include <boost/random/exponential_distribution.hpp>
+#include <boost/random/variate_generator.hpp>
+#include <stan/agrad/partials_vari.hpp>
+#include <stan/math/error_handling.hpp>
+#include <stan/math/constants.hpp>
+#include <stan/math/functions/multiply_log.hpp>
+#include <stan/math/functions/value_of.hpp>
+#include <stan/meta/traits.hpp>
+#include <stan/prob/constants.hpp>
+#include <stan/prob/traits.hpp>
+
+

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::prob
 Templated probability distributions.
 
+ + + + + + + + + + + + + + + + + + + +

+Functions

template<bool propto, typename T_y , typename T_scale , typename T_shape >
return_type< T_y, T_scale,
+T_shape >::type 
stan::prob::pareto_log (const T_y &y, const T_scale &y_min, const T_shape &alpha)
 
template<typename T_y , typename T_scale , typename T_shape >
return_type< T_y, T_scale,
+T_shape >::type 
stan::prob::pareto_log (const T_y &y, const T_scale &y_min, const T_shape &alpha)
 
template<typename T_y , typename T_scale , typename T_shape >
return_type< T_y, T_scale,
+T_shape >::type 
stan::prob::pareto_cdf (const T_y &y, const T_scale &y_min, const T_shape &alpha)
 
template<typename T_y , typename T_scale , typename T_shape >
return_type< T_y, T_scale,
+T_shape >::type 
stan::prob::pareto_cdf_log (const T_y &y, const T_scale &y_min, const T_shape &alpha)
 
template<typename T_y , typename T_scale , typename T_shape >
return_type< T_y, T_scale,
+T_shape >::type 
stan::prob::pareto_ccdf_log (const T_y &y, const T_scale &y_min, const T_shape &alpha)
 
template<class RNG >
double stan::prob::pareto_rng (const double y_min, const double alpha, RNG &rng)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/pareto_8hpp_source.html b/doc/api/html/pareto_8hpp_source.html new file mode 100644 index 00000000000..a1e2702f519 --- /dev/null +++ b/doc/api/html/pareto_8hpp_source.html @@ -0,0 +1,556 @@ + + + + + +Stan: src/stan/prob/distributions/univariate/continuous/pareto.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
pareto.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__PROB__DISTRIBUTIONS__PARETO_HPP__
+
2 #define __STAN__PROB__DISTRIBUTIONS__PARETO_HPP__
+
3 
+
4 #include <boost/random/exponential_distribution.hpp>
+
5 #include <boost/random/variate_generator.hpp>
+
6 
+ + + + + +
12 #include <stan/meta/traits.hpp>
+
13 #include <stan/prob/constants.hpp>
+
14 #include <stan/prob/traits.hpp>
+
15 
+
16 
+
17 namespace stan {
+
18  namespace prob {
+
19 
+
20  // Pareto(y|y_m,alpha) [y > y_m; y_m > 0; alpha > 0]
+
21  template <bool propto,
+
22  typename T_y, typename T_scale, typename T_shape>
+
23  typename return_type<T_y,T_scale,T_shape>::type
+
24  pareto_log(const T_y& y, const T_scale& y_min, const T_shape& alpha) {
+
25  static const char* function = "stan::prob::pareto_log(%1%)";
+
26 
+ + + + + +
32 
+
33  // check if any vectors are zero length
+
34  if (!(stan::length(y)
+
35  && stan::length(y_min)
+
36  && stan::length(alpha)))
+
37  return 0.0;
+
38 
+
39  // set up return value accumulator
+
40  double logp(0.0);
+
41 
+
42  // validate args (here done over var, which should be OK)
+
43  if (!check_not_nan(function, y, "Random variable", &logp))
+
44  return logp;
+
45  if (!check_finite(function, y_min, "Scale parameter", &logp))
+
46  return logp;
+
47  if (!check_positive(function, y_min, "Scale parameter", &logp))
+
48  return logp;
+
49  if (!check_finite(function, alpha, "Shape parameter", &logp))
+
50  return logp;
+
51  if (!check_positive(function, alpha, "Shape parameter", &logp))
+
52  return logp;
+
53  if (!(check_consistent_sizes(function,
+
54  y,y_min,alpha,
+
55  "Random variable","Scale parameter","Shape parameter",
+
56  &logp)))
+
57  return logp;
+
58 
+
59  // check if no variables are involved and prop-to
+ +
61  return 0.0;
+
62 
+
63  VectorView<const T_y> y_vec(y);
+
64  VectorView<const T_scale> y_min_vec(y_min);
+
65  VectorView<const T_shape> alpha_vec(alpha);
+
66  size_t N = max_size(y, y_min, alpha);
+
67 
+
68  for (size_t n = 0; n < N; n++) {
+
69  if (y_vec[n] < y_min_vec[n])
+
70  return LOG_ZERO;
+
71  }
+
72 
+
73  // set up template expressions wrapping scalars into vector views
+ +
75  operands_and_partials(y, y_min, alpha);
+
76 
+ +
78  is_vector<T_y>::value> log_y(length(y));
+ +
80  for (size_t n = 0; n < length(y); n++)
+
81  log_y[n] = log(value_of(y_vec[n]));
+
82 
+ + +
85  is_vector<T_y>::value> inv_y(length(y));
+ +
87  for (size_t n = 0; n < length(y); n++)
+
88  inv_y[n] = 1 / value_of(y_vec[n]);
+
89 
+ + +
92  log_y_min(length(y_min));
+ +
94  for (size_t n = 0; n < length(y_min); n++)
+
95  log_y_min[n] = log(value_of(y_min_vec[n]));
+
96 
+ +
98  is_vector<T_shape>::value> log_alpha(length(alpha));
+ +
100  for (size_t n = 0; n < length(alpha); n++)
+
101  log_alpha[n] = log(value_of(alpha_vec[n]));
+
102 
+ +
104  is_vector<T_shape>::value> inv_alpha(length(alpha));
+ +
106  for (size_t n = 0; n < length(alpha); n++)
+
107  inv_alpha[n] = 1 / value_of(alpha_vec[n]);
+
108 
+ +
110 
+
111  for (size_t n = 0; n < N; n++) {
+
112  const double alpha_dbl = value_of(alpha_vec[n]);
+
113  // log probability
+ +
115  logp += log_alpha[n];
+ +
117  logp += alpha_dbl * log_y_min[n];
+ +
119  logp -= alpha_dbl * log_y[n] + log_y[n];
+
120 
+
121  // gradients
+ +
123  operands_and_partials.d_x1[n] -= alpha_dbl * inv_y[n] + inv_y[n];
+ +
125  operands_and_partials.d_x2[n] += alpha_dbl / value_of(y_min_vec[n]);
+ +
127  operands_and_partials.d_x3[n]
+
128  += 1 / alpha_dbl + log_y_min[n] - log_y[n];
+
129  }
+
130  return operands_and_partials.to_var(logp);
+
131  }
+
132 
+
133  template <typename T_y, typename T_scale, typename T_shape>
+
134  inline
+ +
136  pareto_log(const T_y& y, const T_scale& y_min, const T_shape& alpha) {
+
137  return pareto_log<false>(y,y_min,alpha);
+
138  }
+
139 
+
140  template <typename T_y, typename T_scale, typename T_shape>
+ +
142  pareto_cdf(const T_y& y, const T_scale& y_min, const T_shape& alpha) {
+
143 
+
144  // Check sizes
+
145  // Size checks
+
146  if ( !( stan::length(y) && stan::length(y_min) && stan::length(alpha) ) )
+
147  return 1.0;
+
148 
+
149  // Check errors
+
150  static const char* function = "stan::prob::pareto_cdf(%1%)";
+
151 
+ + + + + + +
158  using stan::math::value_of;
+
159 
+
160  double P(1.0);
+
161 
+
162  if (!check_not_nan(function, y, "Random variable", &P))
+
163  return P;
+
164  if (!check_nonnegative(function, y, "Random variable", &P))
+
165  return P;
+
166  if (!check_finite(function, y_min, "Scale parameter", &P))
+
167  return P;
+
168  if (!check_positive(function, y_min, "Scale parameter", &P))
+
169  return P;
+
170  if (!check_finite(function, alpha, "Shape parameter", &P))
+
171  return P;
+
172  if (!check_positive(function, alpha, "Shape parameter", &P))
+
173  return P;
+
174  if (!(check_consistent_sizes(function, y, y_min, alpha,
+
175  "Random variable", "Scale parameter",
+
176  "Shape parameter", &P)))
+
177  return P;
+
178 
+
179  // Wrap arguments in vectors
+
180  VectorView<const T_y> y_vec(y);
+
181  VectorView<const T_scale> y_min_vec(y_min);
+
182  VectorView<const T_shape> alpha_vec(alpha);
+
183  size_t N = max_size(y, y_min, alpha);
+
184 
+ +
186  operands_and_partials(y, y_min, alpha);
+
187 
+
188  // Explicit return for extreme values
+
189  // The gradients are technically ill-defined, but treated as zero
+
190 
+
191  for (size_t i = 0; i < stan::length(y); i++) {
+
192  if (value_of(y_vec[i]) < value_of(y_min_vec[i]))
+
193  return operands_and_partials.to_var(0.0);
+
194  }
+
195 
+
196  // Compute vectorized CDF and its gradients
+
197 
+
198  for (size_t n = 0; n < N; n++) {
+
199 
+
200  // Explicit results for extreme values
+
201  // The gradients are technically ill-defined, but treated as zero
+
202  if (value_of(y_vec[n]) == std::numeric_limits<double>::infinity()) {
+
203  continue;
+
204  }
+
205 
+
206  // Pull out values
+
207  const double log_dbl = log( value_of(y_min_vec[n])
+
208  / value_of(y_vec[n]) );
+
209  const double y_min_inv_dbl = 1.0 / value_of(y_min_vec[n]);
+
210  const double alpha_dbl = value_of(alpha_vec[n]);
+
211 
+
212  // Compute
+
213  const double Pn = 1.0 - exp( alpha_dbl * log_dbl );
+
214 
+
215  P *= Pn;
+
216 
+ +
218  operands_and_partials.d_x1[n]
+
219  += alpha_dbl * y_min_inv_dbl * exp( (alpha_dbl + 1) * log_dbl )
+
220  / Pn;
+ +
222  operands_and_partials.d_x2[n]
+
223  += - alpha_dbl * y_min_inv_dbl * exp( alpha_dbl * log_dbl ) / Pn;
+ +
225  operands_and_partials.d_x3[n]
+
226  += - exp( alpha_dbl * log_dbl ) * log_dbl / Pn;
+
227  }
+
228 
+ +
230  for(size_t n = 0; n < stan::length(y); ++n)
+
231  operands_and_partials.d_x1[n] *= P;
+
232  }
+ +
234  for(size_t n = 0; n < stan::length(y_min); ++n)
+
235  operands_and_partials.d_x2[n] *= P;
+
236  }
+ +
238  for(size_t n = 0; n < stan::length(alpha); ++n)
+
239  operands_and_partials.d_x3[n] *= P;
+
240  }
+
241 
+
242  return operands_and_partials.to_var(P);
+
243  }
+
244 
+
245  template <typename T_y, typename T_scale, typename T_shape>
+ +
247  pareto_cdf_log(const T_y& y, const T_scale& y_min, const T_shape& alpha) {
+
248 
+
249  // Size checks
+
250  if ( !( stan::length(y) && stan::length(y_min) && stan::length(alpha) ) )
+
251  return 0.0;
+
252 
+
253  // Check errors
+
254  static const char* function = "stan::prob::pareto_cdf_log(%1%)";
+
255 
+ + + + + + +
262  using stan::math::value_of;
+
263 
+
264  double P(0.0);
+
265 
+
266  if (!check_not_nan(function, y, "Random variable", &P))
+
267  return P;
+
268  if (!check_nonnegative(function, y, "Random variable", &P))
+
269  return P;
+
270  if (!check_finite(function, y_min, "Scale parameter", &P))
+
271  return P;
+
272  if (!check_positive(function, y_min, "Scale parameter", &P))
+
273  return P;
+
274  if (!check_finite(function, alpha, "Shape parameter", &P))
+
275  return P;
+
276  if (!check_positive(function, alpha, "Shape parameter", &P))
+
277  return P;
+
278  if (!(check_consistent_sizes(function, y, y_min, alpha,
+
279  "Random variable", "Scale parameter",
+
280  "Shape parameter", &P)))
+
281  return P;
+
282 
+
283  // Wrap arguments in vectors
+
284  VectorView<const T_y> y_vec(y);
+
285  VectorView<const T_scale> y_min_vec(y_min);
+
286  VectorView<const T_shape> alpha_vec(alpha);
+
287  size_t N = max_size(y, y_min, alpha);
+
288 
+ +
290  operands_and_partials(y, y_min, alpha);
+
291 
+
292  // Explicit return for extreme values
+
293  // The gradients are technically ill-defined, but treated as zero
+
294 
+
295  for (size_t i = 0; i < stan::length(y); i++) {
+
296  if (value_of(y_vec[i]) < value_of(y_min_vec[i]))
+
297  return operands_and_partials.to_var(stan::math::negative_infinity());
+
298  }
+
299 
+
300  // Compute vectorized cdf_log and its gradients
+
301 
+
302  for (size_t n = 0; n < N; n++) {
+
303 
+
304  // Explicit results for extreme values
+
305  // The gradients are technically ill-defined, but treated as zero
+
306  if (value_of(y_vec[n]) == std::numeric_limits<double>::infinity()) {
+
307  return operands_and_partials.to_var(0.0);
+
308  }
+
309 
+
310  // Pull out values
+
311  const double log_dbl = log( value_of(y_min_vec[n])
+
312  / value_of(y_vec[n]) );
+
313  const double y_min_inv_dbl = 1.0 / value_of(y_min_vec[n]);
+
314  const double alpha_dbl = value_of(alpha_vec[n]);
+
315 
+
316  // Compute
+
317  const double Pn = 1.0 - exp(alpha_dbl * log_dbl );
+
318 
+
319  P += log(Pn);
+
320 
+ +
322  operands_and_partials.d_x1[n]
+
323  += alpha_dbl * y_min_inv_dbl * exp((alpha_dbl + 1) * log_dbl) / Pn;
+ +
325  operands_and_partials.d_x2[n]
+
326  -= alpha_dbl * y_min_inv_dbl * exp( alpha_dbl * log_dbl ) / Pn;
+ +
328  operands_and_partials.d_x3[n]
+
329  -= exp( alpha_dbl * log_dbl ) * log_dbl / Pn;
+
330  }
+
331 
+
332  return operands_and_partials.to_var(P);
+
333  }
+
334 
+
335  template <typename T_y, typename T_scale, typename T_shape>
+ +
337  pareto_ccdf_log(const T_y& y, const T_scale& y_min,
+
338  const T_shape& alpha) {
+
339 
+
340  // Size checks
+
341  if ( !( stan::length(y) && stan::length(y_min) && stan::length(alpha) ) )
+
342  return 0.0;
+
343 
+
344  // Check errors
+
345  static const char* function = "stan::prob::pareto_ccdf_log(%1%)";
+
346 
+ + + + + + +
353  using stan::math::value_of;
+
354 
+
355  double P(0.0);
+
356 
+
357  if (!check_not_nan(function, y, "Random variable", &P))
+
358  return P;
+
359  if (!check_nonnegative(function, y, "Random variable", &P))
+
360  return P;
+
361  if (!check_finite(function, y_min, "Scale parameter", &P))
+
362  return P;
+
363  if (!check_positive(function, y_min, "Scale parameter", &P))
+
364  return P;
+
365  if (!check_finite(function, alpha, "Shape parameter", &P))
+
366  return P;
+
367  if (!check_positive(function, alpha, "Shape parameter", &P))
+
368  return P;
+
369  if (!(check_consistent_sizes(function, y, y_min, alpha,
+
370  "Random variable", "Scale parameter",
+
371  "Shape parameter", &P)))
+
372  return P;
+
373 
+
374  // Wrap arguments in vectors
+
375  VectorView<const T_y> y_vec(y);
+
376  VectorView<const T_scale> y_min_vec(y_min);
+
377  VectorView<const T_shape> alpha_vec(alpha);
+
378  size_t N = max_size(y, y_min, alpha);
+
379 
+ +
381  operands_and_partials(y, y_min, alpha);
+
382 
+
383  // Explicit return for extreme values
+
384  // The gradients are technically ill-defined, but treated as zero
+
385 
+
386  for (size_t i = 0; i < stan::length(y); i++) {
+
387  if (value_of(y_vec[i]) < value_of(y_min_vec[i]))
+
388  return operands_and_partials.to_var(0.0);
+
389  }
+
390 
+
391  // Compute vectorized cdf_log and its gradients
+
392 
+
393  for (size_t n = 0; n < N; n++) {
+
394 
+
395  // Explicit results for extreme values
+
396  // The gradients are technically ill-defined, but treated as zero
+
397  if (value_of(y_vec[n]) == std::numeric_limits<double>::infinity()) {
+
398  return operands_and_partials.to_var(stan::math::negative_infinity());
+
399  }
+
400 
+
401  // Pull out values
+
402  const double log_dbl = log( value_of(y_min_vec[n])
+
403  / value_of(y_vec[n]) );
+
404  const double y_min_inv_dbl = 1.0 / value_of(y_min_vec[n]);
+
405  const double alpha_dbl = value_of(alpha_vec[n]);
+
406 
+
407  P += alpha_dbl * log_dbl;
+
408 
+ +
410  operands_and_partials.d_x1[n] -= alpha_dbl * y_min_inv_dbl
+
411  * exp(log_dbl);
+ +
413  operands_and_partials.d_x2[n] += alpha_dbl * y_min_inv_dbl;
+ +
415  operands_and_partials.d_x3[n] += log_dbl;
+
416  }
+
417 
+
418  return operands_and_partials.to_var(P);
+
419  }
+
420 
+
421  template <class RNG>
+
422  inline double
+
423  pareto_rng(const double y_min,
+
424  const double alpha,
+
425  RNG& rng) {
+
426  using boost::variate_generator;
+
427  using boost::exponential_distribution;
+
428 
+
429  static const char* function = "stan::prob::pareto_rng(%1%)";
+
430 
+ + +
433 
+
434  if (!check_finite(function, y_min, "Scale parameter"))
+
435  return 0;
+
436  if (!check_positive(function, y_min, "Scale parameter"))
+
437  return 0;
+
438  if (!check_finite(function, alpha, "Shape parameter"))
+
439  return 0;
+
440  if (!check_positive(function, alpha, "Shape parameter"))
+
441  return 0;
+
442 
+
443  variate_generator<RNG&, exponential_distribution<> >
+
444  exp_rng(rng, exponential_distribution<>(alpha));
+
445  return y_min * std::exp(exp_rng());
+
446  }
+
447  }
+
448 }
+
449 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/parser_8hpp.html b/doc/api/html/parser_8hpp.html new file mode 100644 index 00000000000..f6b02601101 --- /dev/null +++ b/doc/api/html/parser_8hpp.html @@ -0,0 +1,165 @@ + + + + + +Stan: src/stan/gm/parser.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
parser.hpp File Reference
+
+
+
#include <boost/lexical_cast.hpp>
+#include <boost/fusion/include/adapt_struct.hpp>
+#include <boost/fusion/include/std_pair.hpp>
+#include <boost/config/warning_disable.hpp>
+#include <boost/spirit/include/qi.hpp>
+#include <boost/spirit/include/qi_numeric.hpp>
+#include <boost/spirit/include/classic_position_iterator.hpp>
+#include <boost/spirit/include/phoenix_core.hpp>
+#include <boost/spirit/include/phoenix_function.hpp>
+#include <boost/spirit/include/phoenix_fusion.hpp>
+#include <boost/spirit/include/phoenix_object.hpp>
+#include <boost/spirit/include/phoenix_operator.hpp>
+#include <boost/spirit/include/phoenix_stl.hpp>
+#include <boost/spirit/include/support_multi_pass.hpp>
+#include <boost/tuple/tuple.hpp>
+#include <boost/variant/apply_visitor.hpp>
+#include <boost/variant/recursive_variant.hpp>
+#include <cstddef>
+#include <iomanip>
+#include <iostream>
+#include <istream>
+#include <map>
+#include <set>
+#include <sstream>
+#include <string>
+#include <utility>
+#include <vector>
+#include <stdexcept>
+#include <stan/gm/ast.hpp>
+#include <stan/gm/grammars/program_grammar.hpp>
+#include <stan/gm/grammars/whitespace_grammar.hpp>
+#include <stan/gm/grammars/expression_grammar.hpp>
+#include <stan/gm/grammars/statement_grammar.hpp>
+#include <stan/gm/grammars/var_decls_grammar.hpp>
+
+

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::gm
 Directed graphical model compiler.
 
+ + + + + + + +

+Functions

bool stan::gm::is_space (char c)
 
bool stan::gm::is_nonempty (std::string &s)
 
bool stan::gm::parse (std::ostream *output_stream, std::istream &input, const std::string &filename, const std::string &model_name, program &result)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/parser_8hpp_source.html b/doc/api/html/parser_8hpp_source.html new file mode 100644 index 00000000000..de0660c7872 --- /dev/null +++ b/doc/api/html/parser_8hpp_source.html @@ -0,0 +1,282 @@ + + + + + +Stan: src/stan/gm/parser.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
parser.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__GM__PARSER__PARSER__HPP__
+
2 #define __STAN__GM__PARSER__PARSER__HPP__
+
3 
+
4 #include <boost/lexical_cast.hpp>
+
5 #include <boost/fusion/include/adapt_struct.hpp>
+
6 #include <boost/fusion/include/std_pair.hpp>
+
7 #include <boost/config/warning_disable.hpp>
+
8 #include <boost/spirit/include/qi.hpp>
+
9 #include <boost/spirit/include/qi_numeric.hpp>
+
10 #include <boost/spirit/include/classic_position_iterator.hpp>
+
11 #include <boost/spirit/include/phoenix_core.hpp>
+
12 #include <boost/spirit/include/phoenix_function.hpp>
+
13 #include <boost/spirit/include/phoenix_fusion.hpp>
+
14 #include <boost/spirit/include/phoenix_object.hpp>
+
15 #include <boost/spirit/include/phoenix_operator.hpp>
+
16 #include <boost/spirit/include/phoenix_stl.hpp>
+
17 #include <boost/spirit/include/support_multi_pass.hpp>
+
18 #include <boost/tuple/tuple.hpp>
+
19 #include <boost/variant/apply_visitor.hpp>
+
20 #include <boost/variant/recursive_variant.hpp>
+
21 
+
22 #include <cstddef>
+
23 #include <iomanip>
+
24 #include <iostream>
+
25 #include <istream>
+
26 #include <map>
+
27 #include <set>
+
28 #include <sstream>
+
29 #include <string>
+
30 #include <utility>
+
31 #include <vector>
+
32 #include <stdexcept>
+
33 
+
34 #include <stan/gm/ast.hpp>
+
35 
+ + + + + +
41 
+
42 namespace stan {
+
43 
+
44  namespace gm {
+
45 
+
46  bool is_space(char c) {
+
47  return c == ' ' || c == '\n' || c == '\r' || c == '\t';
+
48  }
+
49 
+
50  bool is_nonempty(std::string& s) {
+
51  for (size_t i = 0; i < s.size(); ++i)
+
52  if (!is_space(s[i]))
+
53  return true;
+
54  return false;
+
55  }
+
56 
+
57  // Cut and paste source for iterator & reporting pattern:
+
58  // http://boost-spirit.com/home/articles/qi-example
+
59  // /tracking-the-input-position-while-parsing/
+
60  // http://boost-spirit.com/dl_more/parsing_tracking_position
+
61  // /stream_iterator_errorposition_parsing.cpp
+
62  inline bool parse(std::ostream* output_stream,
+
63  std::istream& input,
+
64  const std::string& filename,
+
65  const std::string& model_name,
+
66  program& result) {
+
67  namespace classic = boost::spirit::classic;
+
68 
+
69  using boost::spirit::classic::position_iterator2;
+
70  using boost::spirit::multi_pass;
+
71  using boost::spirit::make_default_multi_pass;
+
72  using std::istreambuf_iterator;
+
73 
+
74  using boost::spirit::qi::expectation_failure;
+
75  using boost::spirit::classic::file_position_base;
+
76  using boost::spirit::qi::phrase_parse;
+
77 
+
78 
+
79  // iterate over stream input
+
80  typedef istreambuf_iterator<char> base_iterator_type;
+
81  typedef multi_pass<base_iterator_type> forward_iterator_type;
+
82  typedef position_iterator2<forward_iterator_type> pos_iterator_type;
+
83 
+
84  base_iterator_type in_begin(input);
+
85 
+
86  forward_iterator_type fwd_begin = make_default_multi_pass(in_begin);
+
87  forward_iterator_type fwd_end;
+
88 
+
89  pos_iterator_type position_begin(fwd_begin, fwd_end, filename);
+
90  pos_iterator_type position_end;
+
91 
+
92  program_grammar<pos_iterator_type> prog_grammar(model_name);
+ +
94 
+
95  bool parse_succeeded = false;
+
96  try {
+
97  parse_succeeded = phrase_parse(position_begin,
+
98  position_end,
+
99  prog_grammar,
+
100  whitesp_grammar,
+
101  result);
+
102  std::string diagnostics = prog_grammar.error_msgs_.str();
+
103  if (output_stream && is_nonempty(diagnostics)) {
+
104  *output_stream << "DIAGNOSTIC(S) FROM PARSER:"
+
105  << std::endl
+
106  << diagnostics
+
107  << std::endl;
+
108  }
+
109  } catch (const expectation_failure<pos_iterator_type>& e) {
+
110  const file_position_base<std::string>& pos = e.first.get_position();
+
111  std::stringstream msg;
+
112  msg << "EXPECTATION FAILURE LOCATION: file=" << pos.file
+
113  << "; line=" << pos.line
+
114  << ", column=" << pos.column
+
115  << std::endl;
+
116  msg << std::endl << e.first.get_currentline()
+
117  << std::endl;
+
118  for (int i = 2; i < pos.column; ++i)
+
119  msg << ' ';
+
120  msg << " ^-- here"
+
121  << std::endl << std::endl;
+
122  std::string diagnostics = prog_grammar.error_msgs_.str();
+
123  if (output_stream && is_nonempty(diagnostics)) {
+
124  msg << std::endl
+
125  << "DIAGNOSTIC(S) FROM PARSER:"
+
126  << diagnostics
+
127  << std::endl;
+
128  }
+
129  throw std::invalid_argument(msg.str());
+
130 
+
131  } catch (const std::runtime_error& e) {
+
132  std::stringstream msg;
+
133  msg << "LOCATION: unknown" << std::endl;
+
134 
+
135  msg << "DIAGNOSTICS FROM PARSER:" << std::endl;
+
136  msg << prog_grammar.error_msgs_.str() << std::endl << std::endl;
+
137  throw std::invalid_argument(msg.str());
+
138  }
+
139 
+
140  bool consumed_all_input = (position_begin == position_end);
+
141  bool success = parse_succeeded && consumed_all_input;
+
142 
+
143  if (!success) {
+
144  std::stringstream msg;
+
145  if (!parse_succeeded)
+
146  msg << "PARSE DID NOT SUCCEED." << std::endl;
+
147  if (!consumed_all_input)
+
148  msg << "ERROR: non-whitespace beyond end of program:" << std::endl;
+
149 
+
150  const file_position_base<std::string>& pos
+
151  = position_begin.get_position();
+
152  msg << "LOCATION: file=" << pos.file
+
153  << "; line=" << pos.line
+
154  << ", column=" << pos.column
+
155  << std::endl;
+
156  msg << position_begin.get_currentline()
+
157  << std::endl;
+
158  for (int i = 2; i < pos.column; ++i)
+
159  msg << ' ';
+
160  msg << " ^-- starting here"
+
161  << std::endl << std::endl;
+
162 
+
163  msg << "DIAGNOSTICS FROM PARSER:" << std::endl;
+
164  msg << prog_grammar.error_msgs_.str() << std::endl << std::endl;
+
165 
+
166  throw std::invalid_argument(msg.str());
+
167  }
+
168  return true;
+
169  }
+
170 
+
171 
+
172  }
+
173 }
+
174 
+
175 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/partials__vari_8hpp.html b/doc/api/html/partials__vari_8hpp.html new file mode 100644 index 00000000000..b2b213d3704 --- /dev/null +++ b/doc/api/html/partials__vari_8hpp.html @@ -0,0 +1,133 @@ + + + + + +Stan: src/stan/agrad/partials_vari.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
partials_vari.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + +

+Classes

class  stan::agrad::partials_vari
 
struct  stan::agrad::OperandsAndPartials< T1, T2, T3, T4, T5, T6, T_return_type >
 A variable implementation that stores operands and derivatives with respect to the variable. More...
 
+ + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/partials__vari_8hpp_source.html b/doc/api/html/partials__vari_8hpp_source.html new file mode 100644 index 00000000000..3f9e8f42dab --- /dev/null +++ b/doc/api/html/partials__vari_8hpp_source.html @@ -0,0 +1,250 @@ + + + + + +Stan: src/stan/agrad/partials_vari.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
partials_vari.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__PARTIALS_VARI_HPP__
+
2 #define __STAN__AGRAD__PARTIALS_VARI_HPP__
+
3 
+
4 #include <stan/meta/traits.hpp>
+
5 #include <stan/agrad/rev/var.hpp>
+ +
7 
+
8 namespace stan {
+
9  namespace agrad {
+
10 
+
11  class partials_vari : public vari {
+
12  private:
+
13  const size_t N_;
+
14  vari** operands_;
+
15  double* partials_;
+
16  public:
+
17  partials_vari(double value,
+
18  size_t N,
+
19  vari** operands, double* partials)
+
20  : vari(value),
+
21  N_(N),
+
22  operands_(operands),
+
23  partials_(partials) { }
+
24  void chain() {
+
25  for (size_t n = 0; n < N_; ++n)
+
26  operands_[n]->adj_ += adj_ * partials_[n];
+
27  }
+
28  };
+
29 
+
30  namespace {
+
31  template<typename T>
+
32  T partials_to_var(double logp, size_t /* nvaris */,
+
33  agrad::vari** /* all_varis */,
+
34  double* /* all_partials */) {
+
35  return logp;
+
36  }
+
37  template<>
+
38  var partials_to_var<var>(double logp, size_t nvaris,
+
39  agrad::vari** all_varis,
+
40  double* all_partials) {
+
41  return var(new agrad::partials_vari(logp, nvaris, all_varis, all_partials));
+
42  }
+
43 
+
44  template<typename T,
+
45  bool is_vec = is_vector<T>::value,
+
46  bool is_const = is_constant_struct<T>::value>
+
47  struct set_varis {
+
48  inline size_t set(agrad::vari** /*varis*/, const T& /*x*/) {
+
49  return 0U;
+
50  }
+
51  };
+
52  template<typename T>
+
53  struct set_varis <T,true,false>{
+
54  inline size_t set(agrad::vari** varis, const T& x) {
+
55  for (size_t n = 0; n < length(x); n++)
+
56  varis[n] = x[n].vi_;
+
57  return length(x);
+
58  }
+
59  };
+
60  template<>
+
61  struct set_varis<agrad::var, false, false> {
+
62  inline size_t set(agrad::vari** varis, const agrad::var& x) {
+
63  varis[0] = x.vi_;
+
64  return (1);
+
65  }
+
66  };
+
67  }
+
68 
+
73  template<typename T1=double, typename T2=double, typename T3=double,
+
74  typename T4=double, typename T5=double, typename T6=double,
+
75  typename T_return_type=typename return_type<T1,T2,T3,T4,T5,T6>::type>
+ + +
78  size_t nvaris;
+ +
80  double* all_partials;
+
81 
+ + + + + + +
88 
+
89  OperandsAndPartials(const T1& x1=0, const T2& x2=0, const T3& x3=0,
+
90  const T4& x4=0, const T5& x5=0, const T6& x6=0)
+
91  : nvaris(!is_constant_struct<T1>::value * length(x1) +
+
92  !is_constant_struct<T2>::value * length(x2) +
+
93  !is_constant_struct<T3>::value * length(x3) +
+
94  !is_constant_struct<T4>::value * length(x4) +
+
95  !is_constant_struct<T5>::value * length(x5) +
+
96  !is_constant_struct<T6>::value * length(x6)),
+
97  all_varis((agrad::vari**)agrad::chainable::operator new(sizeof(agrad::vari*) * nvaris)),
+
98  all_partials((double*)agrad::chainable::operator new(sizeof(double) * nvaris)),
+ + +
101  + (!is_constant_struct<T1>::value) * length(x1)),
+ +
103  + (!is_constant_struct<T1>::value) * length(x1)
+
104  + (!is_constant_struct<T2>::value) * length(x2)),
+ +
106  + (!is_constant_struct<T1>::value) * length(x1)
+
107  + (!is_constant_struct<T2>::value) * length(x2)
+
108  + (!is_constant_struct<T3>::value) * length(x3)),
+ +
110  + (!is_constant_struct<T1>::value) * length(x1)
+
111  + (!is_constant_struct<T2>::value) * length(x2)
+
112  + (!is_constant_struct<T3>::value) * length(x3)
+
113  + (!is_constant_struct<T4>::value) * length(x4)),
+ +
115  + (!is_constant_struct<T1>::value) * length(x1)
+
116  + (!is_constant_struct<T2>::value) * length(x2)
+
117  + (!is_constant_struct<T3>::value) * length(x3)
+
118  + (!is_constant_struct<T4>::value) * length(x4)
+
119  + (!is_constant_struct<T5>::value) * length(x5))
+
120  {
+
121  size_t base = 0;
+ +
123  base += set_varis<T1>().set(&all_varis[base], x1);
+ +
125  base += set_varis<T2>().set(&all_varis[base], x2);
+ +
127  base += set_varis<T3>().set(&all_varis[base], x3);
+ +
129  base += set_varis<T4>().set(&all_varis[base], x4);
+ +
131  base += set_varis<T5>().set(&all_varis[base], x5);
+ +
133  set_varis<T6>().set(&all_varis[base], x6);
+
134  std::fill(all_partials, all_partials+nvaris, 0);
+
135  }
+
136 
+
137  T_return_type
+
138  to_var(double logp) {
+
139  return partials_to_var<T_return_type>(logp, nvaris, all_varis, all_partials);
+
140  }
+
141  };
+
142 
+
143  }
+
144 }
+
145 
+
146 
+
147 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/poisson_8hpp.html b/doc/api/html/poisson_8hpp.html new file mode 100644 index 00000000000..55abb3955d4 --- /dev/null +++ b/doc/api/html/poisson_8hpp.html @@ -0,0 +1,161 @@ + + + + + +Stan: src/stan/prob/distributions/univariate/discrete/poisson.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
poisson.hpp File Reference
+
+
+
#include <boost/random/poisson_distribution.hpp>
+#include <boost/random/variate_generator.hpp>
+#include <limits>
+#include <boost/math/special_functions/fpclassify.hpp>
+#include <stan/agrad/partials_vari.hpp>
+#include <stan/math/error_handling.hpp>
+#include <stan/math/constants.hpp>
+#include <stan/math/functions/multiply_log.hpp>
+#include <stan/math/functions/value_of.hpp>
+#include <stan/meta/traits.hpp>
+#include <stan/prob/traits.hpp>
+#include <stan/prob/constants.hpp>
+
+

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::prob
 Templated probability distributions.
 
+ + + + + + + + + + + + + + + + + + + + + + + + + +

+Functions

template<bool propto, typename T_n , typename T_rate >
return_type< T_rate >::type stan::prob::poisson_log (const T_n &n, const T_rate &lambda)
 
template<typename T_n , typename T_rate >
return_type< T_rate >::type stan::prob::poisson_log (const T_n &n, const T_rate &lambda)
 
template<bool propto, typename T_n , typename T_log_rate >
return_type< T_log_rate >::type stan::prob::poisson_log_log (const T_n &n, const T_log_rate &alpha)
 
template<typename T_n , typename T_log_rate >
return_type< T_log_rate >::type stan::prob::poisson_log_log (const T_n &n, const T_log_rate &alpha)
 
template<typename T_n , typename T_rate >
return_type< T_rate >::type stan::prob::poisson_cdf (const T_n &n, const T_rate &lambda)
 
template<typename T_n , typename T_rate >
return_type< T_rate >::type stan::prob::poisson_cdf_log (const T_n &n, const T_rate &lambda)
 
template<typename T_n , typename T_rate >
return_type< T_rate >::type stan::prob::poisson_ccdf_log (const T_n &n, const T_rate &lambda)
 
template<class RNG >
int stan::prob::poisson_rng (const double lambda, RNG &rng)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/poisson_8hpp_source.html b/doc/api/html/poisson_8hpp_source.html new file mode 100644 index 00000000000..e879207af5b --- /dev/null +++ b/doc/api/html/poisson_8hpp_source.html @@ -0,0 +1,531 @@ + + + + + +Stan: src/stan/prob/distributions/univariate/discrete/poisson.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
poisson.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__PROB__DISTRIBUTIONS__UNIVARIATE__DISCRETE__POISSON_HPP__
+
2 #define __STAN__PROB__DISTRIBUTIONS__UNIVARIATE__DISCRETE__POISSON_HPP__
+
3 
+
4 #include <boost/random/poisson_distribution.hpp>
+
5 #include <boost/random/variate_generator.hpp>
+
6 
+
7 #include <limits>
+
8 #include <boost/math/special_functions/fpclassify.hpp>
+
9 
+ + +
12 #include <stan/math/constants.hpp>
+ + +
15 #include <stan/meta/traits.hpp>
+
16 #include <stan/prob/traits.hpp>
+
17 #include <stan/prob/constants.hpp>
+
18 
+
19 namespace stan {
+
20 
+
21  namespace prob {
+
22 
+
23  // Poisson(n|lambda) [lambda > 0; n >= 0]
+
24  template <bool propto,
+
25  typename T_n, typename T_rate>
+
26  typename return_type<T_rate>::type
+
27  poisson_log(const T_n& n, const T_rate& lambda) {
+
28 
+
29  static const char* function = "stan::prob::poisson_log(%1%)";
+
30 
+
31  using boost::math::lgamma;
+ + + + + +
37 
+
38  // check if any vectors are zero length
+
39  if (!(stan::length(n)
+
40  && stan::length(lambda)))
+
41  return 0.0;
+
42 
+
43  // set up return value accumulator
+
44  double logp(0.0);
+
45 
+
46  // validate args
+
47  if (!check_nonnegative(function, n, "Random variable", &logp))
+
48  return logp;
+
49  if (!check_not_nan(function, lambda,
+
50  "Rate parameter", &logp))
+
51  return logp;
+
52  if (!check_nonnegative(function, lambda,
+
53  "Rate parameter", &logp))
+
54  return logp;
+
55  if (!(check_consistent_sizes(function,
+
56  n,lambda,
+
57  "Random variable","Rate parameter",
+
58  &logp)))
+
59  return logp;
+
60 
+
61  // check if no variables are involved and prop-to
+ +
63  return 0.0;
+
64 
+
65  // set up expression templates wrapping scalars/vecs into vector views
+
66  VectorView<const T_n> n_vec(n);
+
67  VectorView<const T_rate> lambda_vec(lambda);
+
68  size_t size = max_size(n, lambda);
+
69 
+
70  for (size_t i = 0; i < size; i++)
+
71  if (boost::math::isinf(lambda_vec[i]))
+
72  return LOG_ZERO;
+
73  for (size_t i = 0; i < size; i++)
+
74  if (lambda_vec[i] == 0 && n_vec[i] != 0)
+
75  return LOG_ZERO;
+
76 
+
77  // return accumulator with gradients
+
78  agrad::OperandsAndPartials<T_rate> operands_and_partials(lambda);
+
79 
+ +
81  for (size_t i = 0; i < size; i++) {
+
82  if (!(lambda_vec[i] == 0 && n_vec[i] == 0)) {
+ +
84  logp -= lgamma(n_vec[i] + 1.0);
+ +
86  logp += multiply_log(n_vec[i], value_of(lambda_vec[i]))
+
87  - value_of(lambda_vec[i]);
+
88  }
+
89 
+
90  // gradients
+ +
92  operands_and_partials.d_x1[i]
+
93  += n_vec[i] / value_of(lambda_vec[i]) - 1.0;
+
94 
+
95  }
+
96 
+
97 
+
98  return operands_and_partials.to_var(logp);
+
99  }
+
100 
+
101  template <typename T_n,
+
102  typename T_rate>
+
103  inline
+ +
105  poisson_log(const T_n& n, const T_rate& lambda) {
+
106  return poisson_log<false>(n,lambda);
+
107  }
+
108 
+
109  // PoissonLog(n|alpha) [n >= 0] = Poisson(n|exp(alpha))
+
110  template <bool propto,
+
111  typename T_n, typename T_log_rate>
+ +
113  poisson_log_log(const T_n& n, const T_log_rate& alpha) {
+
114 
+
115  static const char* function = "stan::prob::poisson_log_log(%1%)";
+
116 
+
117  using boost::math::lgamma;
+ + +
120  using stan::math::value_of;
+ + +
123  using std::exp;
+
124 
+
125  // check if any vectors are zero length
+
126  if (!(stan::length(n)
+
127  && stan::length(alpha)))
+
128  return 0.0;
+
129 
+
130  // set up return value accumulator
+
131  double logp(0.0);
+
132 
+
133  // validate args
+
134  if (!check_nonnegative(function, n, "Random variable", &logp))
+
135  return logp;
+
136  if (!check_not_nan(function, alpha,
+
137  "Log rate parameter", &logp))
+
138  return logp;
+
139  if (!(check_consistent_sizes(function,
+
140  n,alpha,
+
141  "Random variable","Log rate parameter",
+
142  &logp)))
+
143  return logp;
+
144 
+
145  // check if no variables are involved and prop-to
+ +
147  return 0.0;
+
148 
+
149  // set up expression templates wrapping scalars/vecs into vector views
+
150  VectorView<const T_n> n_vec(n);
+
151  VectorView<const T_log_rate> alpha_vec(alpha);
+
152  size_t size = max_size(n, alpha);
+
153 
+
154  // FIXME: first loop size of alpha_vec, second loop if-ed for size==1
+
155  for (size_t i = 0; i < size; i++)
+
156  if (std::numeric_limits<double>::infinity() == alpha_vec[i])
+
157  return LOG_ZERO;
+
158  for (size_t i = 0; i < size; i++)
+
159  if (-std::numeric_limits<double>::infinity() == alpha_vec[i]
+
160  && n_vec[i] != 0)
+
161  return LOG_ZERO;
+
162 
+
163  // return accumulator with gradients
+
164  agrad::OperandsAndPartials<T_log_rate> operands_and_partials(alpha);
+
165 
+
166  // FIXME: cache value_of for alpha_vec? faster if only one?
+ + +
169  exp_alpha(length(alpha));
+
170  for (size_t i = 0; i < length(alpha); i++)
+ +
172  exp_alpha[i] = exp(value_of(alpha_vec[i]));
+ +
174  for (size_t i = 0; i < size; i++) {
+
175  if (!(alpha_vec[i] == -std::numeric_limits<double>::infinity()
+
176  && n_vec[i] == 0)) {
+ +
178  logp -= lgamma(n_vec[i] + 1.0);
+ +
180  logp += n_vec[i] * value_of(alpha_vec[i]) - exp_alpha[i];
+
181  }
+
182 
+
183  // gradients
+ +
185  operands_and_partials.d_x1[i] += n_vec[i] - exp_alpha[i];
+
186  }
+
187  return operands_and_partials.to_var(logp);
+
188  }
+
189 
+
190  template <typename T_n,
+
191  typename T_log_rate>
+
192  inline
+ +
194  poisson_log_log(const T_n& n, const T_log_rate& alpha) {
+
195  return poisson_log_log<false>(n,alpha);
+
196  }
+
197 
+
198  // Poisson CDF
+
199  template <typename T_n, typename T_rate>
+ +
201  poisson_cdf(const T_n& n, const T_rate& lambda) {
+
202  static const char* function = "stan::prob::poisson_cdf(%1%)";
+
203 
+ + +
206  using stan::math::value_of;
+ +
208 
+
209  // Ensure non-zero argument slengths
+
210  if (!(stan::length(n) && stan::length(lambda)))
+
211  return 1.0;
+
212 
+
213  double P(1.0);
+
214 
+
215  // Validate arguments
+
216  if (!check_not_nan(function, lambda, "Rate parameter", &P))
+
217  return P;
+
218  if (!check_nonnegative(function, lambda, "Rate parameter", &P))
+
219  return P;
+
220  if (!(check_consistent_sizes(function, n,lambda,
+
221  "Random variable","Rate parameter",
+
222  &P)))
+
223  return P;
+
224 
+
225  // Wrap arguments into vector views
+
226  VectorView<const T_n> n_vec(n);
+
227  VectorView<const T_rate> lambda_vec(lambda);
+
228  size_t size = max_size(n, lambda);
+
229 
+
230  // Compute vectorized CDF and gradient
+
231  using stan::math::value_of;
+
232  using boost::math::gamma_p_derivative;
+
233  using boost::math::gamma_q;
+
234 
+
235  agrad::OperandsAndPartials<T_rate> operands_and_partials(lambda);
+
236 
+
237  // Explicit return for extreme values
+
238  // The gradients are technically ill-defined, but treated as zero
+
239  for (size_t i = 0; i < stan::length(n); i++) {
+
240  if (value_of(n_vec[i]) < 0)
+
241  return operands_and_partials.to_var(0.0);
+
242  }
+
243 
+
244  for (size_t i = 0; i < size; i++) {
+
245  // Explicit results for extreme values
+
246  // The gradients are technically ill-defined, but treated as zero
+
247  if (value_of(n_vec[i]) == std::numeric_limits<double>::infinity())
+
248  continue;
+
249 
+
250  const double n_dbl = value_of(n_vec[i]);
+
251  const double lambda_dbl = value_of(lambda_vec[i]);
+
252  const double Pi = gamma_q(n_dbl+1, lambda_dbl);
+
253 
+
254  P *= Pi;
+
255 
+ +
257  operands_and_partials.d_x1[i]
+
258  -= gamma_p_derivative(n_dbl + 1, lambda_dbl) / Pi;
+
259  }
+
260 
+ +
262  for(size_t i = 0; i < stan::length(lambda); ++i)
+
263  operands_and_partials.d_x1[i] *= P;
+
264 
+
265  return operands_and_partials.to_var(P);
+
266  }
+
267 
+
268  template <typename T_n, typename T_rate>
+ +
270  poisson_cdf_log(const T_n& n, const T_rate& lambda) {
+
271  static const char* function = "stan::prob::poisson_cdf_log(%1%)";
+
272 
+ + +
275  using stan::math::value_of;
+ +
277 
+
278  // Ensure non-zero argument slengths
+
279  if (!(stan::length(n) && stan::length(lambda)))
+
280  return 0.0;
+
281 
+
282  double P(0.0);
+
283 
+
284  // Validate arguments
+
285  if (!check_not_nan(function, lambda, "Rate parameter", &P))
+
286  return P;
+
287  if (!check_nonnegative(function, lambda, "Rate parameter", &P))
+
288  return P;
+
289  if (!(check_consistent_sizes(function, n,lambda,
+
290  "Random variable","Rate parameter",
+
291  &P)))
+
292  return P;
+
293 
+
294  // Wrap arguments into vector views
+
295  VectorView<const T_n> n_vec(n);
+
296  VectorView<const T_rate> lambda_vec(lambda);
+
297  size_t size = max_size(n, lambda);
+
298 
+
299  // Compute vectorized cdf_log and gradient
+
300  using stan::math::value_of;
+
301  using boost::math::gamma_p_derivative;
+
302  using boost::math::gamma_q;
+
303 
+
304  agrad::OperandsAndPartials<T_rate> operands_and_partials(lambda);
+
305 
+
306  // Explicit return for extreme values
+
307  // The gradients are technically ill-defined, but treated as neg infinity
+
308  for (size_t i = 0; i < stan::length(n); i++) {
+
309  if (value_of(n_vec[i]) < 0)
+
310  return operands_and_partials.to_var(stan::math::negative_infinity());
+
311  }
+
312 
+
313  for (size_t i = 0; i < size; i++) {
+
314  // Explicit results for extreme values
+
315  // The gradients are technically ill-defined, but treated as zero
+
316  if (value_of(n_vec[i]) == std::numeric_limits<double>::infinity())
+
317  continue;
+
318 
+
319  const double n_dbl = value_of(n_vec[i]);
+
320  const double lambda_dbl = value_of(lambda_vec[i]);
+
321  const double Pi = gamma_q(n_dbl+1, lambda_dbl);
+
322 
+
323  P += log(Pi);
+
324 
+ +
326  operands_and_partials.d_x1[i]
+
327  -= gamma_p_derivative(n_dbl + 1, lambda_dbl) / Pi;
+
328  }
+
329 
+
330  return operands_and_partials.to_var(P);
+
331  }
+
332 
+
333  template <typename T_n, typename T_rate>
+ +
335  poisson_ccdf_log(const T_n& n, const T_rate& lambda) {
+
336  static const char* function = "stan::prob::poisson_ccdf_log(%1%)";
+
337 
+ + +
340  using stan::math::value_of;
+ +
342 
+
343  // Ensure non-zero argument slengths
+
344  if (!(stan::length(n) && stan::length(lambda)))
+
345  return 0.0;
+
346 
+
347  double P(0.0);
+
348 
+
349  // Validate arguments
+
350  if (!check_not_nan(function, lambda, "Rate parameter", &P))
+
351  return P;
+
352  if (!check_nonnegative(function, lambda, "Rate parameter", &P))
+
353  return P;
+
354  if (!(check_consistent_sizes(function, n,lambda,
+
355  "Random variable","Rate parameter",
+
356  &P)))
+
357  return P;
+
358 
+
359  // Wrap arguments into vector views
+
360  VectorView<const T_n> n_vec(n);
+
361  VectorView<const T_rate> lambda_vec(lambda);
+
362  size_t size = max_size(n, lambda);
+
363 
+
364  // Compute vectorized cdf_log and gradient
+
365  using stan::math::value_of;
+
366  using boost::math::gamma_p_derivative;
+
367  using boost::math::gamma_q;
+
368 
+
369  agrad::OperandsAndPartials<T_rate> operands_and_partials(lambda);
+
370 
+
371  // Explicit return for extreme values
+
372  // The gradients are technically ill-defined, but treated as neg infinity
+
373  for (size_t i = 0; i < stan::length(n); i++) {
+
374  if (value_of(n_vec[i]) < 0)
+
375  return operands_and_partials.to_var(0.0);
+
376  }
+
377 
+
378  for (size_t i = 0; i < size; i++) {
+
379  // Explicit results for extreme values
+
380  // The gradients are technically ill-defined, but treated as zero
+
381  if (value_of(n_vec[i]) == std::numeric_limits<double>::infinity())
+
382  return operands_and_partials.to_var(stan::math::negative_infinity());
+
383 
+
384  const double n_dbl = value_of(n_vec[i]);
+
385  const double lambda_dbl = value_of(lambda_vec[i]);
+
386  const double Pi = 1.0 - gamma_q(n_dbl+1, lambda_dbl);
+
387 
+
388  P += log(Pi);
+
389 
+ +
391  operands_and_partials.d_x1[i]
+
392  += gamma_p_derivative(n_dbl + 1, lambda_dbl) / Pi;
+
393  }
+
394 
+
395  return operands_and_partials.to_var(P);
+
396  }
+
397 
+
398  template <class RNG>
+
399  inline int
+
400  poisson_rng(const double lambda,
+
401  RNG& rng) {
+
402  using boost::variate_generator;
+
403  using boost::random::poisson_distribution;
+
404 
+
405  static const char* function = "stan::prob::poisson_rng(%1%)";
+
406 
+ + +
409 
+
410  if (!check_not_nan(function, lambda,
+
411  "Rate parameter"))
+
412  return 0;
+
413  if (!check_nonnegative(function, lambda,
+
414  "Rate parameter"))
+
415  return 0;
+
416 
+
417  variate_generator<RNG&, poisson_distribution<> >
+
418  poisson_rng(rng, poisson_distribution<>(lambda));
+
419  return poisson_rng();
+
420  }
+
421 
+
422  }
+
423 }
+
424 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/policy_page.html b/doc/api/html/policy_page.html new file mode 100644 index 00000000000..154d0934f98 --- /dev/null +++ b/doc/api/html/policy_page.html @@ -0,0 +1,98 @@ + + + + + +Stan: Error Handling Policies + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + +
+ +
+ +
+
+
+
Error Handling Policies
+
+
+

Describe the error handling policies for stan::prob here.

+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/precomp__v__vari_8hpp.html b/doc/api/html/precomp__v__vari_8hpp.html new file mode 100644 index 00000000000..31cae3ed8f8 --- /dev/null +++ b/doc/api/html/precomp__v__vari_8hpp.html @@ -0,0 +1,129 @@ + + + + + +Stan: src/stan/agrad/rev/internal/precomp_v_vari.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
precomp_v_vari.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + +

+Classes

class  stan::agrad::precomp_v_vari
 
+ + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/precomp__v__vari_8hpp_source.html b/doc/api/html/precomp__v__vari_8hpp_source.html new file mode 100644 index 00000000000..e43be8e4af1 --- /dev/null +++ b/doc/api/html/precomp__v__vari_8hpp_source.html @@ -0,0 +1,133 @@ + + + + + +Stan: src/stan/agrad/rev/internal/precomp_v_vari.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
precomp_v_vari.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__REV__INTERNAL__PRECOMP_V_VARI_HPP__
+
2 #define __STAN__AGRAD__REV__INTERNAL__PRECOMP_V_VARI_HPP__
+
3 
+ + +
6 
+
7 namespace stan {
+
8  namespace agrad {
+
9 
+
10  // use for single precomputed partials
+
11  class precomp_v_vari : public op_v_vari {
+
12  protected:
+
13  double da_;
+
14  public:
+
15  precomp_v_vari(double val, vari* avi, double da)
+
16  : op_v_vari(val,avi),
+
17  da_(da) {
+
18  }
+
19  void chain() {
+
20  avi_->adj_ += adj_ * da_;
+
21  }
+
22  };
+
23 
+
24  }
+
25 }
+
26 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/precomputed__gradients_8hpp.html b/doc/api/html/precomputed__gradients_8hpp.html new file mode 100644 index 00000000000..6f8f4d95859 --- /dev/null +++ b/doc/api/html/precomputed__gradients_8hpp.html @@ -0,0 +1,140 @@ + + + + + +Stan: src/stan/agrad/rev/internal/precomputed_gradients.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
precomputed_gradients.hpp File Reference
+
+
+
#include <iostream>
+#include <vector>
+#include <stdexcept>
+#include <stan/agrad/rev/vari.hpp>
+#include <stan/agrad/rev/var.hpp>
+
+

Go to the source code of this file.

+ + + + + +

+Classes

class  stan::agrad::precomputed_gradients_vari
 This is a var implementation class that takes precomputed gradient values. More...
 
+ + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+ + + + +

+Functions

var stan::agrad::precomputed_gradients (const double value, const std::vector< var > &vars, const std::vector< double > &gradients)
 This function is provided for Stan users that want to compute gradients without using Stan's auto-diff.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/precomputed__gradients_8hpp_source.html b/doc/api/html/precomputed__gradients_8hpp_source.html new file mode 100644 index 00000000000..979e2c7de78 --- /dev/null +++ b/doc/api/html/precomputed__gradients_8hpp_source.html @@ -0,0 +1,156 @@ + + + + + +Stan: src/stan/agrad/rev/internal/precomputed_gradients.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
precomputed_gradients.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__REV__INTERNAL__PRECOMPUTED_GRADIENTS_HPP__
+
2 #define __STAN__AGRAD__REV__INTERNAL__PRECOMPUTED_GRADIENTS_HPP__
+
3 
+
4 #include <iostream>
+
5 #include <vector>
+
6 #include <stdexcept>
+ +
8 #include <stan/agrad/rev/var.hpp>
+
9 
+
10 namespace stan {
+
11  namespace agrad {
+
12 
+ +
21  protected:
+
22  std::vector<vari *> varis_;
+
23  std::vector<double> gradients_;
+
24 
+
25  public:
+
41  precomputed_gradients_vari(const double val,
+
42  std::vector<vari *>& varis,
+
43  const std::vector<double>& gradients)
+
44  : vari(val),
+
45  varis_(varis),
+
46  gradients_(gradients) {
+
47  if (varis_.size() != gradients_.size())
+
48  throw std::invalid_argument("sizes of varis and gradients do not match");
+
49  }
+
50 
+
58  void chain() {
+
59  for (size_t n = 0; n < varis_.size(); n++) {
+
60  varis_[n]->adj_ += adj_ * gradients_[n];
+
61  }
+
62  }
+
63  };
+
64 
+
65 
+
86  var precomputed_gradients(const double value,
+
87  const std::vector<var>& vars,
+
88  const std::vector<double>& gradients) {
+
89  std::vector<vari *> varis;
+
90  varis.resize(vars.size());
+
91  for (size_t n = 0; n < vars.size(); n++) {
+
92  varis[n] = vars[n].vi_;
+
93  }
+
94  return var(new precomputed_gradients_vari(value, varis, gradients));
+
95  }
+
96  }
+
97 }
+
98 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/print_8cpp.html b/doc/api/html/print_8cpp.html new file mode 100644 index 00000000000..74ea7eac6ff --- /dev/null +++ b/doc/api/html/print_8cpp.html @@ -0,0 +1,164 @@ + + + + + +Stan: src/stan/command/print.cpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
print.cpp File Reference
+
+
+
#include <algorithm>
+#include <iostream>
+#include <iomanip>
+#include <ios>
+#include <stan/mcmc/chains.hpp>
+#include <stan/command/print.hpp>
+
+

Go to the source code of this file.

+ + + + + +

+Functions

int main (int argc, const char *argv[])
 The Stan print function.
 
+

Function Documentation

+ +
+
+ + + + + + + + + + + + + + + + + + +
int main (int argc,
const char * argv[] 
)
+
+ +

The Stan print function.

+
Parameters
+ + + +
argcNumber of arguments
argvArguments
+
+
+
Returns
0 for success, non-zero otherwise
+

Footer output

+ +

Definition at line 17 of file print.cpp.

+ +
+
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/print_8cpp_source.html b/doc/api/html/print_8cpp_source.html new file mode 100644 index 00000000000..77922ba49fa --- /dev/null +++ b/doc/api/html/print_8cpp_source.html @@ -0,0 +1,419 @@ + + + + + +Stan: src/stan/command/print.cpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
print.cpp
+
+
+Go to the documentation of this file.
1 #include <algorithm>
+
2 #include <iostream>
+
3 #include <iomanip>
+
4 #include <ios>
+
5 #include <stan/mcmc/chains.hpp>
+
6 #include <stan/command/print.hpp>
+
7 
+
17 int main(int argc, const char* argv[]) {
+
18 
+
19  if (argc == 1) {
+
20  print_usage();
+
21  return 0;
+
22  }
+
23 
+
24  // Parse any arguments specifying filenames
+
25  std::ifstream ifstream;
+
26  std::vector<std::string> filenames;
+
27 
+
28  for (int i = 1; i < argc; i++) {
+
29 
+
30  if (std::string(argv[i]).find("--autocorr=") != std::string::npos)
+
31  continue;
+
32 
+
33  if (std::string(argv[i]).find("--sig_figs=") != std::string::npos)
+
34  continue;
+
35 
+
36  if (std::string("--help") == std::string(argv[i])) {
+
37  print_usage();
+
38  return 0;
+
39  }
+
40 
+
41  ifstream.open(argv[i]);
+
42 
+
43  if (ifstream.good()) {
+
44  filenames.push_back(argv[i]);
+
45  ifstream.close();
+
46  } else {
+
47  std::cout << "File " << argv[i] << " not found" << std::endl;
+
48  }
+
49 
+
50  }
+
51 
+
52  if (!filenames.size()) {
+
53  std::cout << "No valid input files, exiting." << std::endl;
+
54  return 0;
+
55  }
+
56 
+
57  // Parse specified files
+
58  Eigen::VectorXd warmup_times(filenames.size());
+
59  Eigen::VectorXd sampling_times(filenames.size());
+
60 
+
61  Eigen::VectorXi thin(filenames.size());
+
62 
+
63  ifstream.open(filenames[0].c_str());
+
64 
+ +
66  warmup_times(0) = stan_csv.timing.warmup;
+
67  sampling_times(0) = stan_csv.timing.sampling;
+
68 
+
69  stan::mcmc::chains<> chains(stan_csv);
+
70  ifstream.close();
+
71 
+
72  thin(0) = stan_csv.metadata.thin;
+
73 
+ +
75  chain < filenames.size(); chain++) {
+
76  ifstream.open(filenames[chain].c_str());
+
77  stan_csv = stan::io::stan_csv_reader::parse(ifstream);
+
78  chains.add(stan_csv);
+
79  ifstream.close();
+
80  thin(chain) = stan_csv.metadata.thin;
+
81 
+
82  warmup_times(chain) = stan_csv.timing.warmup;
+
83  sampling_times(chain) = stan_csv.timing.sampling;
+
84 
+
85  }
+
86 
+
87  double total_warmup_time = warmup_times.sum();
+
88  double total_sampling_time = sampling_times.sum();
+
89 
+
90  // Compute largest variable name length
+
91  const int skip = 0;
+
92  std::string model_name = stan_csv.metadata.model;
+
93  size_t max_name_length = 0;
+
94  for (int i = skip; i < chains.num_params(); i++)
+
95  if (chains.param_name(i).length() > max_name_length)
+
96  max_name_length = chains.param_name(i).length();
+
97  for (int i = 0; i < 2; i++)
+
98  if (chains.param_name(i).length() > max_name_length)
+
99  max_name_length = chains.param_name(i).length();
+
100 
+
101 
+
102  // Prepare values
+
103  int n = 9;
+
104 
+
105  Eigen::MatrixXd values(chains.num_params(), n);
+
106  values.setZero();
+
107  Eigen::VectorXd probs(3);
+
108  probs << 0.05, 0.5, 0.95;
+
109 
+
110  for (int i = 0; i < chains.num_params(); i++) {
+
111  double sd = chains.sd(i);
+
112  double n_eff = chains.effective_sample_size(i);
+
113  values(i,0) = chains.mean(i);
+
114  values(i,1) = sd / sqrt(n_eff);
+
115  values(i,2) = sd;
+
116  Eigen::VectorXd quantiles = chains.quantiles(i,probs);
+
117  for (int j = 0; j < 3; j++)
+
118  values(i,3+j) = quantiles(j);
+
119  values(i,6) = n_eff;
+
120  values(i,7) = n_eff / total_sampling_time;
+
121  values(i,8) = chains.split_potential_scale_reduction(i);
+
122  }
+
123 
+
124  // Prepare header
+
125  Eigen::Matrix<std::string, Eigen::Dynamic, 1> headers(n);
+
126  headers <<
+
127  "Mean", "MCSE", "StdDev",
+
128  "5%", "50%", "95%",
+
129  "N_Eff", "N_Eff/s", "R_hat";
+
130 
+
131  // Set sig figs
+
132  Eigen::VectorXi column_sig_figs(n);
+
133 
+
134  int sig_figs = 2;
+
135 
+
136  for (int k = 1; k < argc; k++)
+
137  if (std::string(argv[k]).find("--sig_figs=") != std::string::npos)
+
138  sig_figs = atoi(std::string(argv[k]).substr(11).c_str());
+
139 
+
140  // Compute column widths
+
141  Eigen::VectorXi column_widths(n);
+
142  Eigen::Matrix<std::ios_base::fmtflags, Eigen::Dynamic, 1> formats(n);
+
143  column_widths = calculate_column_widths(values, headers, sig_figs, formats);
+
144 
+
145  // Initial output
+
146  std::cout << "Inference for Stan model: " << model_name << std::endl
+
147  << chains.num_chains() << " chains: each with iter=(" << chains.num_kept_samples(0);
+
148  for (int chain = 1; chain < chains.num_chains(); chain++)
+
149  std::cout << "," << chains.num_kept_samples(chain);
+
150  std::cout << ")";
+
151 
+
152  // Timing output
+
153  std::cout << "; warmup=(" << chains.warmup(0);
+
154  for (int chain = 1; chain < chains.num_chains(); chain++)
+
155  std::cout << "," << chains.warmup(chain);
+
156  std::cout << ")";
+
157 
+
158  std::cout << "; thin=(" << thin(0);
+
159 
+
160  for (int chain = 1; chain < chains.num_chains(); chain++)
+
161  std::cout << "," << thin(chain);
+
162  std::cout << ")";
+
163 
+
164  std::cout << "; " << chains.num_samples() << " iterations saved."
+
165  << std::endl << std::endl;
+
166 
+
167  std::string warmup_unit = "seconds";
+
168 
+
169  if (total_warmup_time / 3600 > 1) {
+
170  total_warmup_time /= 3600;
+
171  warmup_unit = "hours";
+
172  } else if (total_warmup_time / 60 > 1) {
+
173  total_warmup_time /= 60;
+
174  warmup_unit = "minutes";
+
175  }
+
176 
+
177  std::cout << "Warmup took ("
+
178  << std::fixed
+
179  << std::setprecision(compute_precision(warmup_times(0), sig_figs, false))
+
180  << warmup_times(0);
+
181  for (int chain = 1; chain < chains.num_chains(); chain++)
+
182  std::cout << ", " << std::fixed
+
183  << std::setprecision(compute_precision(warmup_times(chain), sig_figs, false))
+
184  << warmup_times(chain);
+
185  std::cout << ") seconds, ";
+
186  std::cout << std::fixed
+
187  << std::setprecision(compute_precision(total_warmup_time, sig_figs, false))
+
188  << total_warmup_time << " " << warmup_unit << " total" << std::endl;
+
189 
+
190  std::string sampling_unit = "seconds";
+
191 
+
192  if (total_sampling_time / 3600 > 1) {
+
193  total_sampling_time /= 3600;
+
194  sampling_unit = "hours";
+
195  } else if (total_sampling_time / 60 > 1) {
+
196  total_sampling_time /= 60;
+
197  sampling_unit = "minutes";
+
198  }
+
199 
+
200  std::cout << "Sampling took ("
+
201  << std::fixed
+
202  << std::setprecision(compute_precision(sampling_times(0), sig_figs, false))
+
203  << sampling_times(0);
+
204  for (int chain = 1; chain < chains.num_chains(); chain++)
+
205  std::cout << ", " << std::fixed
+
206  << std::setprecision(compute_precision(sampling_times(chain), sig_figs, false))
+
207  << sampling_times(chain);
+
208  std::cout << ") seconds, ";
+
209  std::cout << std::fixed
+
210  << std::setprecision(compute_precision(total_sampling_time, sig_figs, false))
+
211  << total_sampling_time << " " << sampling_unit << " total" << std::endl;
+
212  std::cout << std::endl;
+
213 
+
214  // Header output
+
215  std::cout << std::setw(max_name_length + 1) << "";
+
216  for (int i = 0; i < n; i++) {
+
217  std::cout << std::setw(column_widths(i)) << headers(i);
+
218  }
+
219  std::cout << std::endl;
+
220 
+
221  // Value output
+
222  for (int i = skip; i < chains.num_params(); i++) {
+
223  if (!is_matrix(chains.param_name(i))) {
+
224  std::cout << std::setw(max_name_length + 1) << std::left << chains.param_name(i);
+
225  std::cout << std::right;
+
226  for (int j = 0; j < n; j++) {
+
227  std::cout.setf(formats(j), std::ios::floatfield);
+
228  std::cout << std::setprecision(
+
229  compute_precision(values(i,j), sig_figs, formats(j) == std::ios_base::scientific))
+
230  << std::setw(column_widths(j)) << values(i, j);
+
231  }
+
232  std::cout << std::endl;
+
233  } else {
+
234  std::vector<int> dims = dimensions(chains, i);
+
235  std::vector<int> index(dims.size(), 1);
+
236  int max = 1;
+
237  for (size_t j = 0; j < dims.size(); j++)
+
238  max *= dims[j];
+
239 
+
240  for (int k = 0; k < max; k++) {
+
241  int param_index = i + matrix_index(index, dims);
+
242  std::cout << std::setw(max_name_length + 1) << std::left
+
243  << chains.param_name(param_index);
+
244  std::cout << std::right;
+
245  for (int j = 0; j < n; j++) {
+
246  std::cout.setf(formats(j), std::ios::floatfield);
+
247  std::cout
+
248  << std::setprecision(compute_precision(values(param_index,j),
+
249  sig_figs,
+
250  formats(j) == std::ios_base::scientific))
+
251  << std::setw(column_widths(j)) << values(param_index, j);
+
252  }
+
253  std::cout << std::endl;
+
254  if (k < max-1)
+
255  next_index(index, dims);
+
256  }
+
257  i += max-1;
+
258  }
+
259  }
+
260 
+
262  std::cout << std::endl;
+
263  std::cout << "Samples were drawn using " << stan_csv.metadata.algorithm
+
264  << " with " << stan_csv.metadata.engine << "." << std::endl
+
265  << "For each parameter, N_Eff is a crude measure of effective sample size," << std::endl
+
266  << "and R_hat is the potential scale reduction factor on split chains (at " << std::endl
+
267  << "convergence, R_hat=1)." << std::endl
+
268  << std::endl;
+
269 
+
270  // Print autocorrelation, if desired
+
271  for (int k = 1; k < argc; k++) {
+
272 
+
273  if (std::string(argv[k]).find("--autocorr=") != std::string::npos) {
+
274 
+
275  const int c = atoi(std::string(argv[k]).substr(11).c_str());
+
276 
+
277  if (c < 0 || c >= chains.num_chains()) {
+
278  std::cout << "Bad chain index " << c << ", aborting autocorrelation display." << std::endl;
+
279  break;
+
280  }
+
281 
+
282  Eigen::MatrixXd autocorr(chains.num_params(), chains.num_samples(c));
+
283 
+
284  for (int i = 0; i < chains.num_params(); i++) {
+
285  autocorr.row(i) = chains.autocorrelation(c, i);
+
286  }
+
287 
+
288  // Format and print header
+
289  std::cout << "Displaying the autocorrelations for chain " << c << ":" << std::endl;
+
290  std::cout << std::endl;
+
291 
+
292  const int n_autocorr = autocorr.row(0).size();
+
293 
+
294  int lag_width = 1;
+
295  int number = n_autocorr;
+
296  while ( number != 0) { number /= 10; lag_width++; }
+
297 
+
298  std::cout << std::setw(lag_width > 4 ? lag_width : 4) << "Lag";
+
299  for (int i = 0; i < chains.num_params(); ++i) {
+
300  std::cout << std::setw(max_name_length + 1) << std::right << chains.param_name(i);
+
301  }
+
302  std::cout << std::endl;
+
303 
+
304  // Print body
+
305  for (int n = 0; n < n_autocorr; ++n) {
+
306  std::cout << std::setw(lag_width) << std::right << n;
+
307  for (int i = 0; i < chains.num_params(); ++i) {
+
308  std::cout << std::setw(max_name_length + 1) << std::right << autocorr(i, n);
+
309  }
+
310  std::cout << std::endl;
+
311  }
+
312 
+
313  }
+
314 
+
315  }
+
316 
+
317  return 0;
+
318 
+
319 }
+
320 
+
321 
+
322 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/print_8hpp.html b/doc/api/html/print_8hpp.html new file mode 100644 index 00000000000..8f3f7042a2f --- /dev/null +++ b/doc/api/html/print_8hpp.html @@ -0,0 +1,502 @@ + + + + + +Stan: src/stan/command/print.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
print.hpp File Reference
+
+
+
#include <algorithm>
+#include <iostream>
+#include <iomanip>
+#include <ios>
+#include <stan/mcmc/chains.hpp>
+
+

Go to the source code of this file.

+ + + + + + + + + + + + + + + + + + + + + + + + + + +

+Functions

void compute_width_and_precision (double value, int sig_figs, int &width, int &precision)
 
int compute_width (double value, int sig_figs)
 
int compute_precision (double value, int sig_figs, bool scientific)
 
int calculate_column_width (const Eigen::VectorXd &x, const std::string &name, const int sig_figs, std::ios_base::fmtflags &format)
 
Eigen::VectorXi calculate_column_widths (const Eigen::MatrixXd &values, const Eigen::Matrix< std::string, Eigen::Dynamic, 1 > &headers, const int sig_figs, Eigen::Matrix< std::ios_base::fmtflags, Eigen::Dynamic, 1 > &formats)
 
void print_usage ()
 
bool is_matrix (const std::string &parameter_name)
 
std::string base_param_name (stan::mcmc::chains<> &chains, const int index)
 
std::string matrix_index (stan::mcmc::chains<> &chains, const int index)
 
std::vector< int > dimensions (stan::mcmc::chains<> &chains, const int start_index)
 
void next_index (std::vector< int > &index, const std::vector< int > &dims)
 
int matrix_index (std::vector< int > &index, const std::vector< int > &dims)
 
+

Function Documentation

+ +
+
+ + + + + + + + + + + + + + + + + + +
std::string base_param_name (stan::mcmc::chains<> & chains,
const int index 
)
+
+ +

Definition at line 120 of file print.hpp.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
int calculate_column_width (const Eigen::VectorXd & x,
const std::string & name,
const int sig_figs,
std::ios_base::fmtflags & format 
)
+
+ +

Definition at line 54 of file print.hpp.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Eigen::VectorXi calculate_column_widths (const Eigen::MatrixXd & values,
const Eigen::Matrix< std::string, Eigen::Dynamic, 1 > & headers,
const int sig_figs,
Eigen::Matrix< std::ios_base::fmtflags, Eigen::Dynamic, 1 > & formats 
)
+
+ +

Definition at line 87 of file print.hpp.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
int compute_precision (double value,
int sig_figs,
bool scientific 
)
+
+ +

Definition at line 40 of file print.hpp.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
int compute_width (double value,
int sig_figs 
)
+
+ +

Definition at line 33 of file print.hpp.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
void compute_width_and_precision (double value,
int sig_figs,
int & width,
int & precision 
)
+
+ +

Definition at line 10 of file print.hpp.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
std::vector<int> dimensions (stan::mcmc::chains<> & chains,
const int start_index 
)
+
+ +

Definition at line 130 of file print.hpp.

+ +
+
+ +
+
+ + + + + + + + +
bool is_matrix (const std::string & parameter_name)
+
+ +

Definition at line 116 of file print.hpp.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
std::string matrix_index (stan::mcmc::chains<> & chains,
const int index 
)
+
+ +

Definition at line 125 of file print.hpp.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
int matrix_index (std::vector< int > & index,
const std::vector< int > & dims 
)
+
+ +

Definition at line 183 of file print.hpp.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
void next_index (std::vector< int > & index,
const std::vector< int > & dims 
)
+
+ +

Definition at line 156 of file print.hpp.

+ +
+
+ +
+
+ + + + + + + +
void print_usage ()
+
+ +

Definition at line 100 of file print.hpp.

+ +
+
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/print_8hpp_source.html b/doc/api/html/print_8hpp_source.html new file mode 100644 index 00000000000..57dfff10e6a --- /dev/null +++ b/doc/api/html/print_8hpp_source.html @@ -0,0 +1,314 @@ + + + + + +Stan: src/stan/command/print.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
print.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__COMMAND__PRINT_HPP__
+
2 #define __STAN__COMMAND__PRINT_HPP__
+
3 
+
4 #include <algorithm>
+
5 #include <iostream>
+
6 #include <iomanip>
+
7 #include <ios>
+
8 #include <stan/mcmc/chains.hpp>
+
9 
+
10 void compute_width_and_precision(double value, int sig_figs, int& width, int& precision) {
+
11 
+
12  double abs_value = std::fabs(value);
+
13 
+
14  if (value == 0) {
+
15  width = sig_figs;
+
16  precision = sig_figs;
+
17  }
+
18  else if (abs_value >= 1) {
+
19  int int_part = std::ceil(log10(abs_value) + 1e-6);
+
20  width = int_part >= sig_figs ? int_part : sig_figs + 1;
+
21  precision = int_part >= sig_figs ? 0 : sig_figs - int_part;
+
22  }
+
23  else {
+
24  int frac_part = std::fabs(std::floor(log10(abs_value)));
+
25  width = 1 + frac_part + sig_figs;
+
26  precision = frac_part + sig_figs - 1;
+
27  }
+
28 
+
29  if (value < 0) ++width;
+
30 
+
31 }
+
32 
+
33 int compute_width(double value, int sig_figs) {
+
34  int width;
+
35  int precision;
+
36  compute_width_and_precision(value, sig_figs, width, precision);
+
37  return width;
+
38 }
+
39 
+
40 int compute_precision(double value, int sig_figs, bool scientific) {
+
41 
+
42  if (scientific) {
+
43  return sig_figs - 1;
+
44  }
+
45  else {
+
46  int width;
+
47  int precision;
+
48  compute_width_and_precision(value, sig_figs, width, precision);
+
49  return precision;
+
50  }
+
51 
+
52 }
+
53 
+
54 int calculate_column_width(const Eigen::VectorXd& x,
+
55  const std::string& name,
+
56  const int sig_figs,
+
57  std::ios_base::fmtflags& format) {
+
58 
+
59  int padding = 2;
+
60 
+
61  // Fixed Precision
+
62  size_t fixed_threshold = 8;
+
63  size_t max_fixed_width = 0;
+
64 
+
65  for (int i = 0; i < x.size(); ++i) {
+
66  size_t width = compute_width(x[i], sig_figs);
+
67  max_fixed_width = width > max_fixed_width ? width : max_fixed_width;
+
68  }
+
69 
+
70  if (max_fixed_width + padding < fixed_threshold) {
+
71  format = std::ios_base::fixed;
+
72  max_fixed_width = name.length() > max_fixed_width ? name.length() : max_fixed_width;
+
73  return max_fixed_width + padding;
+
74  }
+
75 
+
76  // Scientific Notation
+
77  size_t scientific_width = sig_figs + 1 + 4; // Decimal place + exponent
+
78  if (x.minCoeff() < 0) ++scientific_width;
+
79 
+
80  scientific_width = name.length() > scientific_width ? name.length() : scientific_width;
+
81 
+
82  format = std::ios_base::scientific;
+
83  return scientific_width + padding;
+
84 
+
85 }
+
86 
+
87 Eigen::VectorXi calculate_column_widths(const Eigen::MatrixXd& values,
+
88  const Eigen::Matrix<std::string, Eigen::Dynamic, 1>& headers,
+
89  const int sig_figs,
+
90  Eigen::Matrix<std::ios_base::fmtflags, Eigen::Dynamic, 1>& formats) {
+
91  int n = values.cols();
+
92  Eigen::VectorXi column_widths(n);
+
93  formats.resize(n);
+
94  for (int i = 0; i < n; i++) {
+
95  column_widths(i) = calculate_column_width(values.col(i), headers(i), sig_figs, formats(i));
+
96  }
+
97  return column_widths;
+
98 }
+
99 
+
100 void print_usage() {
+
101 
+
102  std::cout << "USAGE: print <filename 1> [<filename 2> ... <filename N>]"
+
103  << std::endl
+
104  << std::endl;
+
105 
+
106  std::cout << "OPTIONS:" << std::endl << std::endl;
+
107  std::cout << " --autocorr=<chain_index>\tAppend the autocorrelations for the given chain"
+
108  << std::endl
+
109  << std::endl;
+
110  std::cout << " --sig_figs=<int>\tSet significant figures of output (Defaults to 2)"
+
111  << std::endl
+
112  << std::endl;
+
113 
+
114 }
+
115 
+
116 bool is_matrix(const std::string& parameter_name) {
+
117  return (parameter_name.find("[") != std::string::npos);
+
118 }
+
119 
+
120 std::string base_param_name(stan::mcmc::chains<>& chains, const int index) {
+
121  std::string name = chains.param_name(index);
+
122  return name.substr(0, name.find("["));
+
123 }
+
124 
+
125 std::string matrix_index(stan::mcmc::chains<>& chains, const int index) {
+
126  std::string name = chains.param_name(index);
+
127  return name.substr(name.find("["));
+
128 }
+
129 
+
130 std::vector<int> dimensions(stan::mcmc::chains<>& chains, const int start_index) {
+
131  std::vector<int> dims;
+
132  int dim;
+
133 
+
134  std::string name = base_param_name(chains, start_index);
+
135  int last_matrix_element = start_index;
+
136  while (last_matrix_element+1 < chains.num_params()) {
+
137  if (base_param_name(chains, last_matrix_element+1) == name)
+
138  last_matrix_element++;
+
139  else
+
140  break;
+
141  }
+
142 
+
143  std::stringstream ss(matrix_index(chains, last_matrix_element));
+
144  ss.get();
+
145  ss >> dim;
+
146 
+
147  dims.push_back(dim);
+
148  while (ss.get() == ',') {
+
149  ss >> dim;
+
150  dims.push_back(dim);
+
151  }
+
152  return dims;
+
153 }
+
154 
+
155 // next 1-based index in row major order
+
156 void next_index(std::vector<int>& index, const std::vector<int>& dims) {
+
157  if (dims.size() != index.size())
+
158  throw std::domain_error("next_index: size mismatch");
+
159  if (dims.size() == 0)
+
160  return;
+
161  index[index.size()-1]++;
+
162 
+
163  for (int i = index.size()-1; i > 0; i--) {
+
164  if (index[i] > dims[i]) {
+
165  index[i-1]++;
+
166  index[i] = 1;
+
167  }
+
168  }
+
169 
+
170  for (size_t n = 0; n < dims.size(); n++) {
+
171  if (index[n] <= 0 || index[n] > dims[n]) {
+
172  std::stringstream message_stream("");
+
173  message_stream << "next_index: index[" << n << "] out of bounds. "
+
174  << "dims[" << n << "] = " << dims[n] << "; "
+
175  << "index[" << n << "] = " << index[n];
+
176  throw std::domain_error(message_stream.str());
+
177  }
+
178  }
+
179 }
+
180 
+
181 // return the flat 0-based index of a column major order matrix based on the
+
182 // 1-based index
+
183 int matrix_index(std::vector<int>& index, const std::vector<int>& dims) {
+
184  if (dims.size() != index.size())
+
185  throw std::domain_error("next_index: size mismatch");
+
186  if (dims.size() == 0)
+
187  return 0;
+
188  for (size_t n = 0; n < dims.size(); n++) {
+
189  if (index[n] <= 0 || index[n] > dims[n]) {
+
190  std::stringstream message_stream("");
+
191  message_stream << "matrix_index: index[" << n << "] out of bounds. "
+
192  << "dims[" << n << "] = " << dims[n] << "; "
+
193  << "index[" << n << "] = " << index[n];
+
194  throw std::domain_error(message_stream.str());
+
195  }
+
196  }
+
197 
+
198  int offset = 0;
+
199  int prod = 1;
+
200  for (size_t i = 0; i < dims.size(); i++) {
+
201  offset += (index[i]-1) * prod;
+
202  prod *= dims[i];
+
203  }
+
204  return offset;
+
205 }
+
206 
+
207 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/print__stack_8hpp.html b/doc/api/html/print__stack_8hpp.html new file mode 100644 index 00000000000..543c3436e83 --- /dev/null +++ b/doc/api/html/print__stack_8hpp.html @@ -0,0 +1,131 @@ + + + + + +Stan: src/stan/agrad/rev/print_stack.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
print_stack.hpp File Reference
+
+
+
#include <ostream>
+#include <stan/agrad/rev/var_stack.hpp>
+#include <stan/agrad/rev/vari.hpp>
+
+

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+ + + + +

+Functions

void stan::agrad::print_stack (std::ostream &o)
 Prints the auto-dif variable stack.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/print__stack_8hpp_source.html b/doc/api/html/print__stack_8hpp_source.html new file mode 100644 index 00000000000..91a9f08779d --- /dev/null +++ b/doc/api/html/print__stack_8hpp_source.html @@ -0,0 +1,130 @@ + + + + + +Stan: src/stan/agrad/rev/print_stack.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
print_stack.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__PRINT_STACK_HPP__
+
2 #define __STAN__AGRAD__PRINT_STACK_HPP__
+
3 
+
4 #include <ostream>
+ + +
7 
+
8 namespace stan {
+
9  namespace agrad {
+
10 
+
20  inline void print_stack(std::ostream& o) {
+
21  o << "STACK, size=" << var_stack_.size() << std::endl;
+
22  for (size_t i = 0; i < var_stack_.size(); ++i)
+
23  o << i
+
24  << " " << var_stack_[i]
+
25  << " " << (static_cast<vari*>(var_stack_[i]))->val_
+
26  << " : " << (static_cast<vari*>(var_stack_[i]))->adj_
+
27  << std::endl;
+
28  }
+
29 
+
30  }
+
31 }
+
32 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/prob_2constants_8hpp.html b/doc/api/html/prob_2constants_8hpp.html new file mode 100644 index 00000000000..2b247813bf8 --- /dev/null +++ b/doc/api/html/prob_2constants_8hpp.html @@ -0,0 +1,122 @@ + + + + + +Stan: src/stan/prob/constants.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
constants.hpp File Reference
+
+
+
#include <boost/math/constants/constants.hpp>
+
+

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::prob
 Templated probability distributions.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/prob_2constants_8hpp_source.html b/doc/api/html/prob_2constants_8hpp_source.html new file mode 100644 index 00000000000..5df3e977d55 --- /dev/null +++ b/doc/api/html/prob_2constants_8hpp_source.html @@ -0,0 +1,149 @@ + + + + + +Stan: src/stan/prob/constants.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
constants.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__PROB__DISTRIBUTIONS_CONSTANTS_HPP__
+
2 #define __STAN__PROB__DISTRIBUTIONS_CONSTANTS_HPP__
+
3 
+
4 #include <boost/math/constants/constants.hpp>
+
5 
+
6 namespace stan {
+
7 
+
8  namespace prob {
+
9 
+
10 
+
11  namespace {
+
12 
+
13  const double LOG_PI = std::log(boost::math::constants::pi<double>());
+
14 
+
15  const double LOG_ZERO = std::log(0.0);
+
16 
+
17  const double LOG_TWO = std::log(2.0);
+
18 
+
19  const double NEG_LOG_TWO = - LOG_TWO;
+
20 
+
21  const double NEG_LOG_SQRT_TWO_PI
+
22  = - std::log(std::sqrt(2.0 * boost::math::constants::pi<double>()));
+
23 
+
24  const double NEG_LOG_PI = - LOG_PI;
+
25 
+
26  const double NEG_LOG_SQRT_PI
+
27  = -std::log(std::sqrt(boost::math::constants::pi<double>()));
+
28 
+
29  const double NEG_LOG_TWO_OVER_TWO = - LOG_TWO / 2.0;
+
30 
+
31  const double SQRT_2 = std::sqrt(2.0);
+
32 
+
33  const double LOG_TWO_PI = LOG_TWO + LOG_PI;
+
34 
+
35  const double NEG_LOG_TWO_PI = - LOG_TWO_PI;
+
36  }
+
37 
+
38  }
+
39 
+
40 }
+
41 
+
42 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/prob_2distributions_2univariate_2continuous_2normal_8hpp.html b/doc/api/html/prob_2distributions_2univariate_2continuous_2normal_8hpp.html new file mode 100644 index 00000000000..00cf9e95a94 --- /dev/null +++ b/doc/api/html/prob_2distributions_2univariate_2continuous_2normal_8hpp.html @@ -0,0 +1,162 @@ + + + + + +Stan: src/stan/prob/distributions/univariate/continuous/normal.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
normal.hpp File Reference
+
+
+
#include <boost/random/normal_distribution.hpp>
+#include <boost/random/variate_generator.hpp>
+#include <boost/utility/enable_if.hpp>
+#include <stan/agrad/partials_vari.hpp>
+#include <stan/math.hpp>
+#include <stan/math/error_handling.hpp>
+#include <stan/meta/traits.hpp>
+#include <stan/prob/constants.hpp>
+#include <stan/prob/traits.hpp>
+
+

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::prob
 Templated probability distributions.
 
+ + + + + + + + + + + + + + + + + + + + + +

+Functions

template<bool propto, typename T_y , typename T_loc , typename T_scale >
boost::enable_if_c
+< contains_fvar< T_y, T_loc,
+T_scale >::value, typename
+return_type< T_y, T_loc,
+T_scale >::type >::type 
stan::prob::normal_log (const T_y &y, const T_loc &mu, const T_scale &sigma)
 The log of the normal density for the specified scalar(s) given the specified mean(s) and deviation(s).
 
template<typename T_y , typename T_loc , typename T_scale >
return_type< T_y, T_loc,
+T_scale >::type 
stan::prob::normal_log (const T_y &y, const T_loc &mu, const T_scale &sigma)
 
template<typename T_y , typename T_loc , typename T_scale >
return_type< T_y, T_loc,
+T_scale >::type 
stan::prob::normal_cdf (const T_y &y, const T_loc &mu, const T_scale &sigma)
 Calculates the normal cumulative distribution function for the given variate, location, and scale.
 
template<typename T_y , typename T_loc , typename T_scale >
return_type< T_y, T_loc,
+T_scale >::type 
stan::prob::normal_cdf_log (const T_y &y, const T_loc &mu, const T_scale &sigma)
 
template<typename T_y , typename T_loc , typename T_scale >
return_type< T_y, T_loc,
+T_scale >::type 
stan::prob::normal_ccdf_log (const T_y &y, const T_loc &mu, const T_scale &sigma)
 
template<class RNG >
double stan::prob::normal_rng (const double mu, const double sigma, RNG &rng)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/prob_2distributions_2univariate_2continuous_2normal_8hpp_source.html b/doc/api/html/prob_2distributions_2univariate_2continuous_2normal_8hpp_source.html new file mode 100644 index 00000000000..d068fefee9d --- /dev/null +++ b/doc/api/html/prob_2distributions_2univariate_2continuous_2normal_8hpp_source.html @@ -0,0 +1,472 @@ + + + + + +Stan: src/stan/prob/distributions/univariate/continuous/normal.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
normal.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__PROB__DISTRIBUTIONS__UNIVARIATE__CONTINUOUS__NORMAL_HPP__
+
2 #define __STAN__PROB__DISTRIBUTIONS__UNIVARIATE__CONTINUOUS__NORMAL_HPP__
+
3 
+
4 #include <boost/random/normal_distribution.hpp>
+
5 #include <boost/random/variate_generator.hpp>
+
6 #include <boost/utility/enable_if.hpp>
+
7 
+ +
9 #include <stan/math.hpp>
+ +
11 #include <stan/meta/traits.hpp>
+
12 #include <stan/prob/constants.hpp>
+
13 #include <stan/prob/traits.hpp>
+
14 
+
15 namespace stan {
+
16 
+
17  namespace prob {
+
18 
+
37  template <bool propto,
+
38  typename T_y, typename T_loc, typename T_scale>
+
39  typename boost::enable_if_c<is_var_or_arithmetic<T_y,T_loc,T_scale>::value,
+
40  typename return_type<T_y,T_loc,T_scale>::type>::type
+
41  normal_log(const T_y& y, const T_loc& mu, const T_scale& sigma) {
+
42  static const char* function = "stan::prob::normal_log(%1%)";
+
43 
+
44  using std::log;
+ + + + + + + +
52 
+
53  // check if any vectors are zero length
+
54  if (!(stan::length(y)
+
55  && stan::length(mu)
+
56  && stan::length(sigma)))
+
57  return 0.0;
+
58 
+
59  // set up return value accumulator
+
60  double logp(0.0);
+
61 
+
62  // validate args (here done over var, which should be OK)
+
63  if (!check_not_nan(function, y, "Random variable", &logp))
+
64  return logp;
+
65  if (!check_finite(function, mu, "Location parameter",
+
66  &logp))
+
67  return logp;
+
68  if (!check_positive(function, sigma, "Scale parameter",
+
69  &logp))
+
70  return logp;
+
71  if (!(check_consistent_sizes(function,
+
72  y,mu,sigma,
+
73  "Random variable","Location parameter","Scale parameter",
+
74  &logp)))
+
75  return logp;
+
76 
+
77  // check if no variables are involved and prop-to
+
78  if (!include_summand<propto,T_y,T_loc,T_scale>::value)
+
79  return 0.0;
+
80 
+
81  // set up template expressions wrapping scalars into vector views
+
82  agrad::OperandsAndPartials<T_y, T_loc, T_scale> operands_and_partials(y, mu, sigma);
+
83 
+
84  VectorView<const T_y> y_vec(y);
+
85  VectorView<const T_loc> mu_vec(mu);
+
86  VectorView<const T_scale> sigma_vec(sigma);
+
87  size_t N = max_size(y, mu, sigma);
+
88 
+
89  DoubleVectorView<true,is_vector<T_scale>::value> inv_sigma(length(sigma));
+
90  DoubleVectorView<include_summand<propto,T_scale>::value,is_vector<T_scale>::value> log_sigma(length(sigma));
+
91  for (size_t i = 0; i < length(sigma); i++) {
+
92  inv_sigma[i] = 1.0 / value_of(sigma_vec[i]);
+
93  if (include_summand<propto,T_scale>::value)
+
94  log_sigma[i] = log(value_of(sigma_vec[i]));
+
95  }
+
96 
+
97  for (size_t n = 0; n < N; n++) {
+
98  // pull out values of arguments
+
99  const double y_dbl = value_of(y_vec[n]);
+
100  const double mu_dbl = value_of(mu_vec[n]);
+
101 
+
102  // reusable subexpression values
+
103  const double y_minus_mu_over_sigma
+
104  = (y_dbl - mu_dbl) * inv_sigma[n];
+
105  const double y_minus_mu_over_sigma_squared
+
106  = y_minus_mu_over_sigma * y_minus_mu_over_sigma;
+
107 
+
108  static double NEGATIVE_HALF = - 0.5;
+
109 
+
110  // log probability
+
111  if (include_summand<propto>::value)
+
112  logp += NEG_LOG_SQRT_TWO_PI;
+
113  if (include_summand<propto,T_scale>::value)
+
114  logp -= log_sigma[n];
+
115  if (include_summand<propto,T_y,T_loc,T_scale>::value)
+
116  logp += NEGATIVE_HALF * y_minus_mu_over_sigma_squared;
+
117 
+
118  // gradients
+
119  double scaled_diff = inv_sigma[n] * y_minus_mu_over_sigma;
+
120  if (!is_constant_struct<T_y>::value)
+
121  operands_and_partials.d_x1[n] -= scaled_diff;
+
122  if (!is_constant_struct<T_loc>::value)
+
123  operands_and_partials.d_x2[n] += scaled_diff;
+
124  if (!is_constant_struct<T_scale>::value)
+
125  operands_and_partials.d_x3[n]
+
126  += -inv_sigma[n] + inv_sigma[n] * y_minus_mu_over_sigma_squared;
+
127  }
+
128  return operands_and_partials.to_var(logp);
+
129  }
+
130 
+
131  template <typename T_y, typename T_loc, typename T_scale>
+
132  inline
+
133  typename return_type<T_y,T_loc,T_scale>::type
+
134  normal_log(const T_y& y, const T_loc& mu, const T_scale& sigma) {
+
135  return normal_log<false>(y,mu,sigma);
+
136  }
+
137 
+
156  template <typename T_y, typename T_loc, typename T_scale>
+ +
158  normal_cdf(const T_y& y, const T_loc& mu, const T_scale& sigma) {
+
159  static const char* function = "stan::prob::normal_cdf(%1%)";
+
160 
+ + + +
164  using stan::math::value_of;
+ +
166 
+
167  double cdf(1.0);
+
168 
+
169  // check if any vectors are zero length
+
170  if (!(stan::length(y)
+
171  && stan::length(mu)
+
172  && stan::length(sigma)))
+
173  return cdf;
+
174 
+
175  if (!check_not_nan(function, y, "Random variable", &cdf))
+
176  return cdf;
+
177  if (!check_finite(function, mu, "Location parameter", &cdf))
+
178  return cdf;
+
179  if (!check_not_nan(function, sigma, "Scale parameter",
+
180  &cdf))
+
181  return cdf;
+
182  if (!check_positive(function, sigma, "Scale parameter",
+
183  &cdf))
+
184  return cdf;
+
185  if (!(check_consistent_sizes(function,
+
186  y,mu,sigma,
+
187  "Random variable","Location parameter",
+
188  "Scale parameter",
+
189  &cdf)))
+
190  return cdf;
+
191 
+ +
193  operands_and_partials(y, mu, sigma);
+
194 
+
195  VectorView<const T_y> y_vec(y);
+
196  VectorView<const T_loc> mu_vec(mu);
+
197  VectorView<const T_scale> sigma_vec(sigma);
+
198  size_t N = max_size(y, mu, sigma);
+
199  const double SQRT_TWO_OVER_PI = std::sqrt(2.0 / stan::math::pi());
+
200 
+
201  for (size_t n = 0; n < N; n++) {
+
202  const double y_dbl = value_of(y_vec[n]);
+
203  const double mu_dbl = value_of(mu_vec[n]);
+
204  const double sigma_dbl = value_of(sigma_vec[n]);
+
205  const double scaled_diff = (y_dbl - mu_dbl) / (sigma_dbl * SQRT_2);
+
206  const double cdf_ = 0.5 * (1.0 + erf(scaled_diff));
+
207 
+
208  // cdf
+
209  cdf *= cdf_;
+
210 
+
211  // gradients
+
212  const double rep_deriv = SQRT_TWO_OVER_PI * 0.5
+
213  * exp(-scaled_diff * scaled_diff) / cdf_ / sigma_dbl;
+ +
215  operands_and_partials.d_x1[n] += rep_deriv;
+ +
217  operands_and_partials.d_x2[n] -= rep_deriv;
+ +
219  operands_and_partials.d_x3[n] -= rep_deriv * scaled_diff * SQRT_2;
+
220  }
+
221 
+ +
223  for (size_t n = 0; n < stan::length(y); ++n)
+
224  operands_and_partials.d_x1[n] *= cdf;
+ +
226  for (size_t n = 0; n < stan::length(mu); ++n)
+
227  operands_and_partials.d_x2[n] *= cdf;
+ +
229  for (size_t n = 0; n < stan::length(sigma); ++n)
+
230  operands_and_partials.d_x3[n] *= cdf;
+
231 
+
232  return operands_and_partials.to_var(cdf);
+
233  }
+
234 
+
235  template <typename T_y, typename T_loc, typename T_scale>
+ +
237  normal_cdf_log(const T_y& y, const T_loc& mu, const T_scale& sigma) {
+
238  static const char* function = "stan::prob::normal_cdf_log(%1%)";
+
239 
+ + + + +
244  using stan::math::value_of;
+
245 
+
246  double cdf_log(0.0);
+
247  // check if any vectors are zero length
+
248  if (!(stan::length(y)
+
249  && stan::length(mu)
+
250  && stan::length(sigma)))
+
251  return cdf_log;
+
252 
+
253  if (!check_not_nan(function, y, "Random variable", &cdf_log))
+
254  return cdf_log;
+
255  if (!check_finite(function, mu, "Location parameter", &cdf_log))
+
256  return cdf_log;
+
257  if (!check_not_nan(function, sigma, "Scale parameter",
+
258  &cdf_log))
+
259  return cdf_log;
+
260  if (!check_positive(function, sigma, "Scale parameter",
+
261  &cdf_log))
+
262  return cdf_log;
+
263  if (!(check_consistent_sizes(function,
+
264  y,mu,sigma,
+
265  "Random variable","Location parameter",
+
266  "Scale parameter", &cdf_log)))
+
267  return cdf_log;
+
268 
+ +
270  operands_and_partials(y, mu, sigma);
+
271 
+
272  VectorView<const T_y> y_vec(y);
+
273  VectorView<const T_loc> mu_vec(mu);
+
274  VectorView<const T_scale> sigma_vec(sigma);
+
275  size_t N = max_size(y, mu, sigma);
+
276  double log_half = std::log(0.5);
+
277 
+
278  const double SQRT_TWO_OVER_PI = std::sqrt(2.0 / stan::math::pi());
+
279  for (size_t n = 0; n < N; n++) {
+
280  const double y_dbl = value_of(y_vec[n]);
+
281  const double mu_dbl = value_of(mu_vec[n]);
+
282  const double sigma_dbl = value_of(sigma_vec[n]);
+
283 
+
284  const double scaled_diff = (y_dbl - mu_dbl) / (sigma_dbl * SQRT_2);
+
285 
+
286  const double one_p_erf = 1.0 + erf(scaled_diff);
+
287  // log cdf
+
288  cdf_log += log_half + log(one_p_erf);
+
289 
+
290  // gradients
+
291  const double rep_deriv = SQRT_TWO_OVER_PI
+
292  * exp(-scaled_diff * scaled_diff) / one_p_erf;
+ +
294  operands_and_partials.d_x1[n] += rep_deriv / sigma_dbl;
+ +
296  operands_and_partials.d_x2[n] -= rep_deriv / sigma_dbl;
+ +
298  operands_and_partials.d_x3[n] -= rep_deriv * scaled_diff
+
299  * stan::math::SQRT_2 / sigma_dbl;
+
300  }
+
301  return operands_and_partials.to_var(cdf_log);
+
302  }
+
303 
+
304  template <typename T_y, typename T_loc, typename T_scale>
+ +
306  normal_ccdf_log(const T_y& y, const T_loc& mu, const T_scale& sigma) {
+
307  static const char* function = "stan::prob::normal_ccdf_log(%1%)";
+
308 
+ + + + +
313  using stan::math::value_of;
+
314 
+
315  double ccdf_log(0.0);
+
316  // check if any vectors are zero length
+
317  if (!(stan::length(y)
+
318  && stan::length(mu)
+
319  && stan::length(sigma)))
+
320  return ccdf_log;
+
321 
+
322  if (!check_not_nan(function, y, "Random variable", &ccdf_log))
+
323  return ccdf_log;
+
324  if (!check_finite(function, mu, "Location parameter", &ccdf_log))
+
325  return ccdf_log;
+
326  if (!check_not_nan(function, sigma, "Scale parameter",
+
327  &ccdf_log))
+
328  return ccdf_log;
+
329  if (!check_positive(function, sigma, "Scale parameter",
+
330  &ccdf_log))
+
331  return ccdf_log;
+
332  if (!(check_consistent_sizes(function,
+
333  y,mu,sigma,
+
334  "Random variable","Location parameter",
+
335  "Scale parameter", &ccdf_log)))
+
336  return ccdf_log;
+
337 
+ +
339  operands_and_partials(y, mu, sigma);
+
340 
+
341  VectorView<const T_y> y_vec(y);
+
342  VectorView<const T_loc> mu_vec(mu);
+
343  VectorView<const T_scale> sigma_vec(sigma);
+
344  size_t N = max_size(y, mu, sigma);
+
345  double log_half = std::log(0.5);
+
346 
+
347  const double SQRT_TWO_OVER_PI = std::sqrt(2.0 / stan::math::pi());
+
348  for (size_t n = 0; n < N; n++) {
+
349  const double y_dbl = value_of(y_vec[n]);
+
350  const double mu_dbl = value_of(mu_vec[n]);
+
351  const double sigma_dbl = value_of(sigma_vec[n]);
+
352 
+
353  const double scaled_diff = (y_dbl - mu_dbl) / (sigma_dbl * SQRT_2);
+
354 
+
355  const double one_m_erf = 1.0 - erf(scaled_diff);
+
356  // log ccdf
+
357  ccdf_log += log_half + log(one_m_erf);
+
358 
+
359  // gradients
+
360  const double rep_deriv = SQRT_TWO_OVER_PI
+
361  * exp(-scaled_diff * scaled_diff) / one_m_erf;
+ +
363  operands_and_partials.d_x1[n] -= rep_deriv / sigma_dbl;
+ +
365  operands_and_partials.d_x2[n] += rep_deriv / sigma_dbl;
+ +
367  operands_and_partials.d_x3[n] += rep_deriv * scaled_diff
+
368  * stan::math::SQRT_2 / sigma_dbl;
+
369  }
+
370  return operands_and_partials.to_var(ccdf_log);
+
371  }
+
372 
+
373  template <class RNG>
+
374  inline double
+
375  normal_rng(const double mu,
+
376  const double sigma,
+
377  RNG& rng) {
+
378  using boost::variate_generator;
+
379  using boost::normal_distribution;
+ + + +
383 
+
384  static const char* function = "stan::prob::normal_rng(%1%)";
+
385 
+
386  if (!check_finite(function, mu, "Location parameter"))
+
387  return 0;
+
388  if (!check_not_nan(function, mu, "Location parameter"))
+
389  return 0;
+
390  if (!check_positive(function, sigma, "Scale parameter"))
+
391  return 0;
+
392  if (!check_not_nan(function, sigma, "Scale parameter"))
+
393  return 0;
+
394 
+
395  variate_generator<RNG&, normal_distribution<> >
+
396  norm_rng(rng, normal_distribution<>(mu, sigma));
+
397  return norm_rng();
+
398  }
+
399  }
+
400 }
+
401 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/prob_2traits_8hpp.html b/doc/api/html/prob_2traits_8hpp.html new file mode 100644 index 00000000000..a00e6e442ed --- /dev/null +++ b/doc/api/html/prob_2traits_8hpp.html @@ -0,0 +1,130 @@ + + + + + +Stan: src/stan/prob/traits.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
traits.hpp File Reference
+
+
+
#include <stan/meta/traits.hpp>
+#include <boost/math/tools/promotion.hpp>
+
+

Go to the source code of this file.

+ + + + + +

+Classes

struct  stan::prob::include_summand< propto, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10 >
 Template metaprogram to calculate whether a summand needs to be included in a proportional (log) probability calculation. More...
 
+ + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::prob
 Templated probability distributions.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/prob_2traits_8hpp_source.html b/doc/api/html/prob_2traits_8hpp_source.html new file mode 100644 index 00000000000..7ec997e06c2 --- /dev/null +++ b/doc/api/html/prob_2traits_8hpp_source.html @@ -0,0 +1,149 @@ + + + + + +Stan: src/stan/prob/traits.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
traits.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__PROB__TRAITS_HPP__
+
2 #define __STAN__PROB__TRAITS_HPP__
+
3 
+
4 #include <stan/meta/traits.hpp>
+
5 #include <boost/math/tools/promotion.hpp>
+
6 
+
7 namespace stan {
+
8 
+
9  namespace prob {
+
10 
+
29  template <bool propto,
+
30  typename T1=double, typename T2=double,
+
31  typename T3=double, typename T4=double,
+
32  typename T5=double, typename T6=double,
+
33  typename T7=double, typename T8=double,
+
34  typename T9=double, typename T10=double>
+
35  struct include_summand {
+
36 
+
42  enum {
+
43  value = ( !propto
+ + + + + + + + + + +
54  )
+
55 
+
56  };
+
57 
+
58  };
+
59 
+
60 
+
61  }
+
62 
+
63 }
+
64 
+
65 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/prob_8hpp.html b/doc/api/html/prob_8hpp.html new file mode 100644 index 00000000000..66f0c885a35 --- /dev/null +++ b/doc/api/html/prob_8hpp.html @@ -0,0 +1,115 @@ + + + + + +Stan: src/stan/prob.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
prob.hpp File Reference
+
+ +
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/prob_8hpp_source.html b/doc/api/html/prob_8hpp_source.html new file mode 100644 index 00000000000..b42db3a5c57 --- /dev/null +++ b/doc/api/html/prob_8hpp_source.html @@ -0,0 +1,117 @@ + + + + + +Stan: src/stan/prob.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
prob.hpp
+
+
+Go to the documentation of this file.
1 #ifndef STAN_PROB_HPP
+
2 #define STAN_PROB_HPP
+
3 
+ + +
6 #include "stan/prob/traits.hpp"
+ + + +
10 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/prob__grad_8hpp.html b/doc/api/html/prob__grad_8hpp.html new file mode 100644 index 00000000000..127c29e17b1 --- /dev/null +++ b/doc/api/html/prob__grad_8hpp.html @@ -0,0 +1,131 @@ + + + + + +Stan: src/stan/model/prob_grad.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
prob_grad.hpp File Reference
+
+
+
#include <utility>
+#include <vector>
+#include <stan/io/csv_writer.hpp>
+
+

Go to the source code of this file.

+ + + + + +

+Classes

class  stan::model::prob_grad
 The prob_grad class represents the basic parameter holders for a model. More...
 
+ + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::model
 For compiling models.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/prob__grad_8hpp_source.html b/doc/api/html/prob__grad_8hpp_source.html new file mode 100644 index 00000000000..3a06b08d317 --- /dev/null +++ b/doc/api/html/prob__grad_8hpp_source.html @@ -0,0 +1,158 @@ + + + + + +Stan: src/stan/model/prob_grad.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
prob_grad.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MODEL__PROB_GRAD_HPP__
+
2 #define __STAN__MODEL__PROB_GRAD_HPP__
+
3 
+
4 #include <utility>
+
5 #include <vector>
+
6 
+
7 #include <stan/io/csv_writer.hpp>
+
8 
+
9 namespace stan {
+
10 
+
11  namespace model {
+
12 
+
18  class prob_grad {
+
19 
+
20  protected:
+
21 
+ +
23  std::vector<std::pair<int,int> > param_ranges_i__;
+
24 
+
25  public:
+
26 
+ +
28  : num_params_r__(num_params_r),
+
29  param_ranges_i__(std::vector<std::pair<int,int> >(0)) {
+
30  }
+
31 
+ +
33  std::vector<std::pair<int,int> >& param_ranges_i)
+
34  : num_params_r__(num_params_r),
+
35  param_ranges_i__(param_ranges_i) {
+
36  }
+
37 
+
38  virtual ~prob_grad() { }
+
39 
+
40  inline size_t num_params_r() const {
+
41  return num_params_r__;
+
42  }
+
43 
+
44  inline size_t num_params_i() const {
+
45  return param_ranges_i__.size();
+
46  }
+
47 
+
48  inline std::pair<int,int> param_range_i(size_t idx) const {
+
49  return param_ranges_i__[idx];
+
50  }
+
51 
+
52  };
+
53  }
+
54 }
+
55 
+
56 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/prod_8hpp.html b/doc/api/html/prod_8hpp.html new file mode 100644 index 00000000000..1bb81c865c4 --- /dev/null +++ b/doc/api/html/prod_8hpp.html @@ -0,0 +1,135 @@ + + + + + +Stan: src/stan/math/matrix/prod.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
prod.hpp File Reference
+
+
+
#include <vector>
+#include <stan/math/matrix/Eigen.hpp>
+
+

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::math
 Matrices and templated mathematical functions.
 
+ + + + + + + + + +

+Functions

template<typename T >
stan::math::prod (const std::vector< T > &v)
 Returns the product of the coefficients of the specified standard vector.
 
template<typename T , int R, int C>
stan::math::prod (const Eigen::Matrix< T, R, C > &v)
 Returns the product of the coefficients of the specified column vector.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/prod_8hpp_source.html b/doc/api/html/prod_8hpp_source.html new file mode 100644 index 00000000000..20363d6f7f9 --- /dev/null +++ b/doc/api/html/prod_8hpp_source.html @@ -0,0 +1,134 @@ + + + + + +Stan: src/stan/math/matrix/prod.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
prod.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MATH__MATRIX__PROD_HPP__
+
2 #define __STAN__MATH__MATRIX__PROD_HPP__
+
3 
+
4 #include <vector>
+ +
6 
+
7 namespace stan {
+
8  namespace math {
+
9 
+
16  template <typename T>
+
17  inline T prod(const std::vector<T>& v) {
+
18  if (v.size() == 0) return 1;
+
19  T product = v[0];
+
20  for (size_t i = 1; i < v.size(); ++i)
+
21  product *= v[i];
+
22  return product;
+
23  }
+
24 
+
31  template <typename T, int R, int C>
+
32  inline T prod(const Eigen::Matrix<T,R,C>& v) {
+
33  if (v.size() == 0) return 1.0;
+
34  return v.prod();
+
35  }
+
36 
+
37  }
+
38 }
+
39 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/program__grammar_8hpp.html b/doc/api/html/program__grammar_8hpp.html new file mode 100644 index 00000000000..1422a4dcfd4 --- /dev/null +++ b/doc/api/html/program__grammar_8hpp.html @@ -0,0 +1,136 @@ + + + + + +Stan: src/stan/gm/grammars/program_grammar.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
program_grammar.hpp File Reference
+
+
+
#include <string>
+#include <sstream>
+#include <vector>
+#include <boost/spirit/include/qi.hpp>
+#include <stan/gm/ast.hpp>
+#include <stan/gm/grammars/whitespace_grammar.hpp>
+#include <stan/gm/grammars/expression_grammar.hpp>
+#include <stan/gm/grammars/var_decls_grammar.hpp>
+#include <stan/gm/grammars/statement_grammar.hpp>
+
+

Go to the source code of this file.

+ + + + +

+Classes

struct  stan::gm::program_grammar< Iterator >
 
+ + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::gm
 Directed graphical model compiler.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/program__grammar_8hpp_source.html b/doc/api/html/program__grammar_8hpp_source.html new file mode 100644 index 00000000000..ef75a70bda7 --- /dev/null +++ b/doc/api/html/program__grammar_8hpp_source.html @@ -0,0 +1,191 @@ + + + + + +Stan: src/stan/gm/grammars/program_grammar.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
program_grammar.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__GM__PARSER__PROGRAM_GRAMMAR__HPP__
+
2 #define __STAN__GM__PARSER__PROGRAM_GRAMMAR__HPP__
+
3 
+
4 #include <string>
+
5 #include <sstream>
+
6 #include <vector>
+
7 
+
8 #include <boost/spirit/include/qi.hpp>
+
9 
+
10 #include <stan/gm/ast.hpp>
+ + + + +
15 
+
16 namespace stan {
+
17 
+
18  namespace gm {
+
19 
+
20  template <typename Iterator>
+ +
22  : boost::spirit::qi::grammar<Iterator,
+
23  program(),
+
24  whitespace_grammar<Iterator> > {
+
25 
+
26  program_grammar(const std::string& model_name);
+
27 
+
28  // global info for parses
+
29  std::string model_name_;
+ +
31  std::stringstream error_msgs_;
+
32 
+
33  // grammars
+ + + +
37 
+
38  // rules
+
39 
+
40  boost::spirit::qi::rule<Iterator,
+
41  std::vector<var_decl>(),
+ + +
44 
+
45  boost::spirit::qi::rule<Iterator,
+
46  std::pair<std::vector<var_decl>,
+
47  std::vector<statement> >(),
+ + +
50 
+
51  boost::spirit::qi::rule<Iterator,
+
52  std::pair<std::vector<var_decl>,
+
53  std::vector<statement> >(),
+ + +
56 
+
57  boost::spirit::qi::rule<Iterator,
+
58  std::pair<std::vector<var_decl>,
+
59  std::vector<statement> >(),
+ + +
62 
+
63  boost::spirit::qi::rule<Iterator,
+
64  statement(),
+ + +
67 
+
68  boost::spirit::qi::rule<Iterator,
+
69  std::vector<var_decl>(),
+ + +
72 
+
73  boost::spirit::qi::rule<Iterator,
+
74  program(),
+ + +
77 
+
78  };
+
79 
+
80 
+
81  }
+
82 }
+
83 
+
84 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/program__grammar__def_8hpp.html b/doc/api/html/program__grammar__def_8hpp.html new file mode 100644 index 00000000000..d1ef700167a --- /dev/null +++ b/doc/api/html/program__grammar__def_8hpp.html @@ -0,0 +1,180 @@ + + + + + +Stan: src/stan/gm/grammars/program_grammar_def.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
program_grammar_def.hpp File Reference
+
+
+
#include <cstddef>
+#include <iomanip>
+#include <iostream>
+#include <istream>
+#include <map>
+#include <set>
+#include <sstream>
+#include <string>
+#include <utility>
+#include <vector>
+#include <stdexcept>
+#include <boost/spirit/include/qi.hpp>
+#include <boost/spirit/include/phoenix_core.hpp>
+#include <boost/spirit/include/phoenix_function.hpp>
+#include <boost/spirit/include/phoenix_fusion.hpp>
+#include <boost/spirit/include/phoenix_object.hpp>
+#include <boost/spirit/include/phoenix_operator.hpp>
+#include <boost/spirit/include/phoenix_stl.hpp>
+#include <boost/lexical_cast.hpp>
+#include <boost/fusion/include/adapt_struct.hpp>
+#include <boost/fusion/include/std_pair.hpp>
+#include <boost/config/warning_disable.hpp>
+#include <boost/spirit/include/qi_numeric.hpp>
+#include <boost/spirit/include/classic_position_iterator.hpp>
+#include <boost/spirit/include/support_multi_pass.hpp>
+#include <boost/tuple/tuple.hpp>
+#include <boost/variant/apply_visitor.hpp>
+#include <boost/variant/recursive_variant.hpp>
+#include <stan/gm/ast.hpp>
+#include <stan/gm/grammars/whitespace_grammar.hpp>
+#include <stan/gm/grammars/expression_grammar.hpp>
+#include <stan/gm/grammars/var_decls_grammar.hpp>
+#include <stan/gm/grammars/statement_grammar.hpp>
+#include <stan/gm/grammars/program_grammar.hpp>
+
+

Go to the source code of this file.

+ + + + +

+Functions

 BOOST_FUSION_ADAPT_STRUCT (stan::gm::program,(std::vector< stan::gm::var_decl >, data_decl_)(DUMMY_STRUCT::type, derived_data_decl_)(std::vector< stan::gm::var_decl >, parameter_decl_)(DUMMY_STRUCT::type, derived_decl_)(stan::gm::statement, statement_)(DUMMY_STRUCT::type, generated_decl_)) namespace stan
 
+

Function Documentation

+ +
+
+ + + + + + + + + + + + + + + + + + +
BOOST_FUSION_ADAPT_STRUCT (stan::gm::program ,
(std::vector< stan::gm::var_decl >, data_decl_)(DUMMY_STRUCT::type, derived_data_decl_)(std::vector< stan::gm::var_decl >, parameter_decl_)(DUMMY_STRUCT::type, derived_decl_)(stan::gm::statement, statement_)(DUMMY_STRUCT::type, generated_decl_)  
)
+
+ +

Definition at line 59 of file program_grammar_def.hpp.

+ +
+
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/program__grammar__def_8hpp_source.html b/doc/api/html/program__grammar__def_8hpp_source.html new file mode 100644 index 00000000000..ca1a92dd46e --- /dev/null +++ b/doc/api/html/program__grammar__def_8hpp_source.html @@ -0,0 +1,290 @@ + + + + + +Stan: src/stan/gm/grammars/program_grammar_def.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
program_grammar_def.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__GM__PARSER__PROGRAM_GRAMMAR_DEF__HPP__
+
2 #define __STAN__GM__PARSER__PROGRAM_GRAMMAR_DEF__HPP__
+
3 
+
4 #include <cstddef>
+
5 #include <iomanip>
+
6 #include <iostream>
+
7 #include <istream>
+
8 #include <map>
+
9 #include <set>
+
10 #include <sstream>
+
11 #include <string>
+
12 #include <utility>
+
13 #include <vector>
+
14 #include <stdexcept>
+
15 
+
16 #include <boost/spirit/include/qi.hpp>
+
17 // FIXME: get rid of unused include
+
18 #include <boost/spirit/include/phoenix_core.hpp>
+
19 #include <boost/spirit/include/phoenix_function.hpp>
+
20 #include <boost/spirit/include/phoenix_fusion.hpp>
+
21 #include <boost/spirit/include/phoenix_object.hpp>
+
22 #include <boost/spirit/include/phoenix_operator.hpp>
+
23 #include <boost/spirit/include/phoenix_stl.hpp>
+
24 
+
25 #include <boost/lexical_cast.hpp>
+
26 #include <boost/fusion/include/adapt_struct.hpp>
+
27 #include <boost/fusion/include/std_pair.hpp>
+
28 #include <boost/config/warning_disable.hpp>
+
29 #include <boost/spirit/include/qi.hpp>
+
30 #include <boost/spirit/include/qi_numeric.hpp>
+
31 #include <boost/spirit/include/classic_position_iterator.hpp>
+
32 #include <boost/spirit/include/phoenix_core.hpp>
+
33 #include <boost/spirit/include/phoenix_function.hpp>
+
34 #include <boost/spirit/include/phoenix_fusion.hpp>
+
35 #include <boost/spirit/include/phoenix_object.hpp>
+
36 #include <boost/spirit/include/phoenix_operator.hpp>
+
37 #include <boost/spirit/include/phoenix_stl.hpp>
+
38 #include <boost/spirit/include/support_multi_pass.hpp>
+
39 #include <boost/tuple/tuple.hpp>
+
40 #include <boost/variant/apply_visitor.hpp>
+
41 #include <boost/variant/recursive_variant.hpp>
+
42 
+
43 #include <stan/gm/ast.hpp>
+ + + + + +
49 
+
50 namespace {
+
51  // hack to pass pair into macro below to adapt; in namespace to hide
+
52  struct DUMMY_STRUCT {
+
53  typedef std::pair<std::vector<stan::gm::var_decl>,
+
54  std::vector<stan::gm::statement> > type;
+
55  };
+
56 }
+
57 
+
58 
+ +
60  (std::vector<stan::gm::var_decl>, data_decl_)
+
61  (DUMMY_STRUCT::type, derived_data_decl_)
+
62  (std::vector<stan::gm::var_decl>, parameter_decl_)
+
63  (DUMMY_STRUCT::type, derived_decl_)
+
64  (stan::gm::statement, statement_)
+
65  (DUMMY_STRUCT::type, generated_decl_) )
+
66 
+
67 
+
68 namespace stan {
+
69 
+
70  namespace gm {
+
71 
+
72  struct add_lp_var {
+
73  template <typename T>
+
74  struct result { typedef void type; };
+
75  void operator()(variable_map& vm) const {
+
76  vm.add("lp__",
+
77  base_var_decl("lp__",std::vector<expression>(),DOUBLE_T),
+
78  local_origin); // lp acts as a local where defined
+
79  }
+
80  };
+
81  boost::phoenix::function<add_lp_var> add_lp_var_f;
+
82 
+
83  struct remove_lp_var {
+
84  template <typename T>
+
85  struct result { typedef void type; };
+
86  void operator()(variable_map& vm) const {
+
87  vm.remove("lp__");
+
88  }
+
89  };
+
90  boost::phoenix::function<remove_lp_var> remove_lp_var_f;
+
91 
+
92 
+
93  template <typename Iterator>
+
94  program_grammar<Iterator>::program_grammar(const std::string& model_name)
+
95  : program_grammar::base_type(program_r),
+
96  model_name_(model_name),
+
97  var_map_(),
+
98  error_msgs_(),
+
99  expression_g(var_map_,error_msgs_),
+
100  var_decls_g(var_map_,error_msgs_),
+
101  statement_g(var_map_,error_msgs_) {
+
102 
+
103  using boost::spirit::qi::eps;
+
104  using boost::spirit::qi::lit;
+
105 
+
106  // add model_name to var_map with special origin and no
+
107  var_map_.add(model_name,
+
108  base_var_decl(),
+ +
110 
+
111  program_r.name("program");
+
112  program_r
+
113  %= -data_var_decls_r
+
114  > -derived_data_var_decls_r
+
115  > -param_var_decls_r
+
116  // scope lp__ to "transformed params" and "model" only
+
117  > eps[add_lp_var_f(boost::phoenix::ref(var_map_))]
+
118  > -derived_var_decls_r
+
119  > model_r
+
120  > eps[remove_lp_var_f(boost::phoenix::ref(var_map_))]
+
121  > -generated_var_decls_r
+
122  ;
+
123 
+
124  model_r.name("model declaration");
+
125  model_r
+
126  %= lit("model")
+
127  > statement_g(true,local_origin) // assign only to locals
+
128  ;
+
129 
+
130  data_var_decls_r.name("data variable declarations");
+
131  data_var_decls_r
+
132  %= lit("data")
+
133  > lit('{')
+
134  > var_decls_g(true,data_origin) // +constraints
+
135  > lit('}');
+
136 
+
137  derived_data_var_decls_r.name("transformed data block");
+
138  derived_data_var_decls_r
+
139  %= ( lit("transformed")
+
140  >> lit("data") )
+
141  > lit('{')
+
142  > var_decls_g(true,transformed_data_origin) // -constraints
+
143  > *statement_g(false,transformed_data_origin) // -sampling
+
144  > lit('}');
+
145 
+
146  param_var_decls_r.name("parameter variable declarations");
+
147  param_var_decls_r
+
148  %= lit("parameters")
+
149  > lit('{')
+
150  > var_decls_g(true,parameter_origin) // +constraints
+
151  > lit('}');
+
152 
+
153  derived_var_decls_r.name("derived variable declarations");
+
154  derived_var_decls_r
+
155  %= ( lit("transformed")
+
156  >> lit("parameters") )
+
157  > lit('{')
+
158  > var_decls_g(true,transformed_parameter_origin) // -constraints
+
159  > *statement_g(false,transformed_parameter_origin) // -sampling
+
160  > lit('}');
+
161 
+
162  generated_var_decls_r.name("generated variable declarations");
+
163  generated_var_decls_r
+
164  %= lit("generated")
+
165  > lit("quantities")
+
166  > lit('{')
+
167  > var_decls_g(true,derived_origin) // -constraints
+
168  > *statement_g(false,derived_origin) // -sampling
+
169  > lit('}');
+
170 
+
171  using boost::spirit::qi::on_error;
+
172  using boost::spirit::qi::rethrow;
+
173  on_error<rethrow>(program_r,
+
174  (std::ostream&)error_msgs_
+
175  << std::endl
+
176  << boost::phoenix::val("Parser expecting: ")
+
177  << boost::spirit::qi::labels::_4);
+
178  }
+
179 
+
180  }
+
181 }
+
182 
+
183 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/program__grammar__inst_8cpp.html b/doc/api/html/program__grammar__inst_8cpp.html new file mode 100644 index 00000000000..9358bb0545e --- /dev/null +++ b/doc/api/html/program__grammar__inst_8cpp.html @@ -0,0 +1,123 @@ + + + + + +Stan: src/stan/gm/grammars/program_grammar_inst.cpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
program_grammar_inst.cpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::gm
 Directed graphical model compiler.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/program__grammar__inst_8cpp_source.html b/doc/api/html/program__grammar__inst_8cpp_source.html new file mode 100644 index 00000000000..527f9f5252f --- /dev/null +++ b/doc/api/html/program__grammar__inst_8cpp_source.html @@ -0,0 +1,115 @@ + + + + + +Stan: src/stan/gm/grammars/program_grammar_inst.cpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
program_grammar_inst.cpp
+
+
+Go to the documentation of this file.
+ +
3 
+
4 namespace stan {
+
5  namespace gm {
+
6  template struct program_grammar<pos_iterator_t>;
+
7  }
+
8 }
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/promote__common_8hpp.html b/doc/api/html/promote__common_8hpp.html new file mode 100644 index 00000000000..c9913c5db0b --- /dev/null +++ b/doc/api/html/promote__common_8hpp.html @@ -0,0 +1,130 @@ + + + + + +Stan: src/stan/math/matrix/promote_common.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
promote_common.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::math
 Matrices and templated mathematical functions.
 
+ + + + +

+Functions

template<typename T1 , typename T2 , typename F >
common_type< T1, T2 >::type stan::math::promote_common (const F &u)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/promote__common_8hpp_source.html b/doc/api/html/promote__common_8hpp_source.html new file mode 100644 index 00000000000..d96e64693b5 --- /dev/null +++ b/doc/api/html/promote__common_8hpp_source.html @@ -0,0 +1,130 @@ + + + + + +Stan: src/stan/math/matrix/promote_common.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
promote_common.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MATH__MATRIX__PROMOTE_COMMON_HPP__
+
2 #define __STAN__MATH__MATRIX__PROMOTE_COMMON_HPP__
+
3 
+ + +
6 
+
7 namespace stan {
+
8 
+
9  namespace math {
+
10 
+
11  template <typename T1, typename T2, typename F>
+
12  inline
+
13  typename common_type<T1,T2>::type
+
14  promote_common(const F& u) {
+ +
16  ::promote_to(u);
+
17  }
+
18 
+
19  }
+
20 }
+
21 
+
22 
+
23 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/promoter_8hpp.html b/doc/api/html/promoter_8hpp.html new file mode 100644 index 00000000000..e8c863f57d9 --- /dev/null +++ b/doc/api/html/promoter_8hpp.html @@ -0,0 +1,139 @@ + + + + + +Stan: src/stan/math/matrix/promoter.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
promoter.hpp File Reference
+
+
+
#include <vector>
+#include <stan/math/matrix/Eigen.hpp>
+
+

Go to the source code of this file.

+ + + + + + + + + + + + + + +

+Classes

struct  stan::math::promoter< F, T >
 
struct  stan::math::promoter< T, T >
 
struct  stan::math::promoter< std::vector< F >, std::vector< T > >
 
struct  stan::math::promoter< std::vector< T >, std::vector< T > >
 
struct  stan::math::promoter< Eigen::Matrix< F, R, C >, Eigen::Matrix< T, R, C > >
 
struct  stan::math::promoter< Eigen::Matrix< T, R, C >, Eigen::Matrix< T, R, C > >
 
+ + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::math
 Matrices and templated mathematical functions.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/promoter_8hpp_source.html b/doc/api/html/promoter_8hpp_source.html new file mode 100644 index 00000000000..f4178528aad --- /dev/null +++ b/doc/api/html/promoter_8hpp_source.html @@ -0,0 +1,200 @@ + + + + + +Stan: src/stan/math/matrix/promoter.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
promoter.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MATH__MATRIX__PROMOTER_HPP__
+
2 #define __STAN__MATH__MATRIX__PROMOTER_HPP__
+
3 
+
4 #include <vector>
+ +
6 
+
7 namespace stan {
+
8 
+
9  namespace math {
+
10  // from input type F to output type T
+
11 
+
12  // scalar, F != T (base template)
+
13  template <typename F, typename T>
+
14  struct promoter {
+
15  inline static void promote(const F& u, T& t) {
+
16  t = u;
+
17  }
+
18  inline static T promote_to(const F& u) {
+
19  return u;
+
20  }
+
21  };
+
22  // scalar, F == T
+
23  template <typename T>
+
24  struct promoter<T,T> {
+
25  inline static void promote(const T& u, T& t) {
+
26  t = u;
+
27  }
+
28  inline static T promote_to(const T& u) {
+
29  return u;
+
30  }
+
31  };
+
32 
+
33  // std::vector, F != T
+
34  template <typename F, typename T>
+
35  struct promoter<std::vector<F>, std::vector<T> > {
+
36  inline static void promote(const std::vector<F>& u,
+
37  std::vector<T>& t) {
+
38  t.resize(u.size());
+
39  for (size_t i = 0; i < u.size(); ++i)
+
40  promoter<F,T>::promote(u[i],t[i]);
+
41  }
+
42  inline static std::vector<T>
+
43  promote_to(const std::vector<F>& u) {
+
44  std::vector<T> t;
+
45  promoter<std::vector<F>,std::vector<T> >::promote(u,t);
+
46  return t;
+
47  }
+
48  };
+
49  // std::vector, F == T
+
50  template <typename T>
+
51  struct promoter<std::vector<T>, std::vector<T> > {
+
52  inline static void promote(const std::vector<T>& u,
+
53  std::vector<T>& t) {
+
54  t = u;
+
55  }
+
56  inline static std::vector<T> promote_to(const std::vector<T>& u) {
+
57  return u;
+
58  }
+
59  };
+
60 
+
61  // Eigen::Matrix, F != T
+
62  template <typename F, typename T, int R, int C>
+
63  struct promoter<Eigen::Matrix<F,R,C>, Eigen::Matrix<T,R,C> > {
+
64  inline static void promote(const Eigen::Matrix<F,R,C>& u,
+
65  Eigen::Matrix<T,R,C>& t) {
+
66  t.resize(u.rows(), u.cols());
+
67  for (int i = 0; i < u.size(); ++i)
+
68  promoter<F,T>::promote(u(i),t(i));
+
69  }
+
70  inline static Eigen::Matrix<T,R,C>
+
71  promote_to(const Eigen::Matrix<F,R,C>& u) {
+
72  Eigen::Matrix<T,R,C> t;
+
73  promoter<Eigen::Matrix<F,R,C>,Eigen::Matrix<T,R,C> >::promote(u,t);
+
74  return t;
+
75  }
+
76  };
+
77  // Eigen::Matrix, F == T
+
78  template <typename T, int R, int C>
+
79  struct promoter<Eigen::Matrix<T,R,C>, Eigen::Matrix<T,R,C> > {
+
80  inline static void promote(const Eigen::Matrix<T,R,C>& u,
+
81  Eigen::Matrix<T,R,C>& t) {
+
82  t = u;
+
83  }
+
84  inline static Eigen::Matrix<T,R,C> promote_to(const Eigen::Matrix<T,R,C>& u) {
+
85  return u;
+
86  }
+
87  };
+
88 
+
89  }
+
90 }
+
91 
+
92 
+
93 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/ps__point_8hpp.html b/doc/api/html/ps__point_8hpp.html new file mode 100644 index 00000000000..9f54588626c --- /dev/null +++ b/doc/api/html/ps__point_8hpp.html @@ -0,0 +1,132 @@ + + + + + +Stan: src/stan/mcmc/hmc/hamiltonians/ps_point.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
ps_point.hpp File Reference
+
+
+
#include <fstream>
+#include <string>
+#include <boost/lexical_cast.hpp>
+#include <vector>
+#include <stan/math/matrix/Eigen.hpp>
+
+

Go to the source code of this file.

+ + + + +

+Classes

class  stan::mcmc::ps_point
 
+ + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::mcmc
 Markov chain Monte Carlo samplers.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/ps__point_8hpp_source.html b/doc/api/html/ps__point_8hpp_source.html new file mode 100644 index 00000000000..938223a574b --- /dev/null +++ b/doc/api/html/ps__point_8hpp_source.html @@ -0,0 +1,205 @@ + + + + + +Stan: src/stan/mcmc/hmc/hamiltonians/ps_point.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
ps_point.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MCMC__PS_POINT__BETA__
+
2 #define __STAN__MCMC__PS_POINT__BETA__
+
3 
+
4 #include <fstream>
+
5 #include <string>
+
6 #include <boost/lexical_cast.hpp>
+
7 
+
8 #include <vector>
+ +
10 
+
11 namespace stan {
+
12 
+
13  namespace mcmc {
+
14 
+
15  // Point in a generic phase space
+
16  class ps_point {
+
17 
+
18  public:
+
19 
+
20  ps_point(int n): q(n), p(n), V(0), g(n) {};
+
21 
+
22  ps_point(const ps_point& z): q(z.q.size()), p(z.p.size()), V(z.V), g(z.g.size())
+
23  {
+
24  _fast_vector_copy<double>(q, z.q);
+
25  _fast_vector_copy<double>(p, z.p);
+
26  _fast_vector_copy<double>(g, z.g);
+
27  }
+
28 
+
29 
+ +
31  {
+
32 
+
33  if(this == &z) return *this;
+
34 
+
35  _fast_vector_copy<double>(q, z.q);
+
36 
+
37  V = z.V;
+
38 
+
39  _fast_vector_copy<double>(p, z.p);
+
40  _fast_vector_copy<double>(g, z.g);
+
41 
+
42  return *this;
+
43 
+
44  }
+
45 
+
46  Eigen::VectorXd q;
+
47  Eigen::VectorXd p;
+
48 
+
49  double V;
+
50  Eigen::VectorXd g;
+
51 
+
52  virtual void get_param_names(std::vector<std::string>& model_names,
+
53  std::vector<std::string>& names) {
+
54  for(int i = 0; i < q.size(); ++i)
+
55  names.push_back(model_names.at(i));
+
56  for(int i = 0; i < q.size(); ++i)
+
57  names.push_back(std::string("p_") + model_names.at(i));
+
58  for(int i = 0; i < q.size(); ++i)
+
59  names.push_back(std::string("g_") + model_names.at(i));
+
60  }
+
61 
+
62  virtual void get_params(std::vector<double>& values) {
+
63  for(int i = 0; i < q.size(); ++i)
+
64  values.push_back(q(i));
+
65  for(int i = 0; i < q.size(); ++i)
+
66  values.push_back(p(i));
+
67  for(int i = 0; i < q.size(); ++i)
+
68  values.push_back(g(i));
+
69  }
+
70 
+
71  virtual void write_metric(std::ostream* o) {
+
72  if(!o) return;
+
73  *o << "# No free parameters for unit metric" << std::endl;
+
74  }
+
75 
+
76  protected:
+
77 
+
78  template <typename T>
+
79  inline void _fast_vector_copy(Eigen::Matrix<T, Eigen::Dynamic, 1>& v_to, const Eigen::Matrix<T, Eigen::Dynamic, 1>& v_from) {
+
80  v_to.resize(v_from.size());
+
81  std::memcpy(&v_to(0), &v_from(0), v_from.size() * sizeof(double));
+
82  }
+
83 
+
84  template <typename T>
+
85  inline void _fast_matrix_copy(Eigen::Matrix<T, Eigen::Dynamic, Eigen::Dynamic>& v_to,
+
86  const Eigen::Matrix<T, Eigen::Dynamic, Eigen::Dynamic>& v_from) {
+
87  v_to.resize(v_from.rows(), v_from.cols());
+
88  std::memcpy(&v_to(0), &v_from(0), v_from.size() * sizeof(double));
+
89  }
+
90 
+
91  };
+
92 
+
93  } // mcmc
+
94 
+
95 } // stan
+
96 
+
97 
+
98 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/raise__domain__error_8hpp.html b/doc/api/html/raise__domain__error_8hpp.html new file mode 100644 index 00000000000..35162351a22 --- /dev/null +++ b/doc/api/html/raise__domain__error_8hpp.html @@ -0,0 +1,149 @@ + + + + + +Stan: src/stan/math/error_handling/raise_domain_error.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
raise_domain_error.hpp File Reference
+
+
+
#include <boost/math/policies/policy.hpp>
+#include <boost/math/policies/error_handling.hpp>
+#include <boost/math/distributions/detail/common_error_handling.hpp>
+
+

Go to the source code of this file.

+ + + + + + + + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::math
 Matrices and templated mathematical functions.
 
namespace  stan::math::policies
 Extending boost functionality.
 
namespace  stan::math::policies::detail
 Reimplementing boost::math::policies::detail::raise_domain_error.
 
+ + + + + + + + + + + + + + + + +

+Functions

template<class T_result , class T_val >
T_result stan::math::policies::detail::raise_domain_error (const char *function, const char *message, const T_val &val, const ::boost::math::policies::domain_error< ::boost::math::policies::throw_on_error > &)
 
template<class T_result , class T_val >
T_result stan::math::policies::detail::raise_domain_error (const char *, const char *, const T_val &, const ::boost::math::policies::domain_error< ::boost::math::policies::ignore_error > &)
 
template<class T_result , class T_val >
T_result stan::math::policies::detail::raise_domain_error (const char *, const char *, const T_val &, const ::boost::math::policies::domain_error< ::boost::math::policies::errno_on_error > &)
 
template<class T_result , class T_val >
T_result stan::math::policies::detail::raise_domain_error (const char *function, const char *message, const T_val &val, const ::boost::math::policies::domain_error< ::boost::math::policies::user_error > &)
 
template<class T_result , class T_val , class Policy >
T_result stan::math::policies::raise_domain_error (const char *function, const char *message, const T_val &val, const Policy &)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/raise__domain__error_8hpp_source.html b/doc/api/html/raise__domain__error_8hpp_source.html new file mode 100644 index 00000000000..a66b4be5e3d --- /dev/null +++ b/doc/api/html/raise__domain__error_8hpp_source.html @@ -0,0 +1,179 @@ + + + + + +Stan: src/stan/math/error_handling/raise_domain_error.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
raise_domain_error.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MATH__ERROR_HANDLING__RAISE_DOMAIN_ERROR_HPP__
+
2 #define __STAN__MATH__ERROR_HANDLING__RAISE_DOMAIN_ERROR_HPP__
+
3 
+
4 #include <boost/math/policies/policy.hpp>
+
5 #include <boost/math/policies/error_handling.hpp>
+
6 #include <boost/math/distributions/detail/common_error_handling.hpp>
+
7 
+
8 namespace stan {
+
9  namespace math {
+
10  namespace policies {
+
11  namespace detail {
+
12  using boost::math::policies::detail::raise_error;
+
13  template <class T_result, class T_val>
+
14  inline T_result raise_domain_error(const char* function,
+
15  const char* message,
+
16  const T_val& val,
+
17  const ::boost::math::policies::domain_error< ::boost::math::policies::throw_on_error>&) {
+
18  raise_error<std::domain_error, T_val>(function, message, val);
+
19  // we never get here:
+
20  return std::numeric_limits<T_result>::quiet_NaN();
+
21  }
+
22 
+
23  template <class T_result, class T_val>
+
24  inline T_result raise_domain_error(const char* ,
+
25  const char* ,
+
26  const T_val& ,
+
27  const ::boost::math::policies::domain_error< ::boost::math::policies::ignore_error>&) {
+
28  // This may or may not do the right thing, but the user asked for the error
+
29  // to be ignored so here we go anyway:
+
30  return std::numeric_limits<T_result>::quiet_NaN();
+
31  }
+
32 
+
33  template <class T_result, class T_val>
+
34  inline T_result raise_domain_error(const char* ,
+
35  const char* ,
+
36  const T_val& ,
+
37  const ::boost::math::policies::domain_error< ::boost::math::policies::errno_on_error>&) {
+
38  errno = EDOM;
+
39  // This may or may not do the right thing, but the user asked for the error
+
40  // to be silent so here we go anyway:
+
41  return std::numeric_limits<T_result>::quiet_NaN();
+
42  }
+
43 
+
44  template <class T_result, class T_val>
+
45  inline T_result raise_domain_error(const char* function,
+
46  const char* message,
+
47  const T_val& val,
+
48  const ::boost::math::policies::domain_error< ::boost::math::policies::user_error>&) {
+
49  return user_domain_error(function, message, val);
+
50  }
+
51 
+
52  }
+
53 
+
54  template <class T_result, class T_val, class Policy>
+
55  inline T_result raise_domain_error(const char* function,
+
56  const char* message,
+
57  const T_val& val,
+
58  const Policy&) {
+
59  typedef typename Policy::domain_error_type policy_type;
+
60  return detail::raise_domain_error<T_result,T_val>(function,
+
61  message ? message : "Domain Error evaluating function at %1%",
+
62  val,
+
63  policy_type());
+
64 
+
65  }
+
66  }
+
67  }
+
68 
+
69 }
+
70 
+
71 
+
72 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/rank_8hpp.html b/doc/api/html/rank_8hpp.html new file mode 100644 index 00000000000..ca3e2e2b3f0 --- /dev/null +++ b/doc/api/html/rank_8hpp.html @@ -0,0 +1,136 @@ + + + + + +Stan: src/stan/math/matrix/rank.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
rank.hpp File Reference
+
+
+
#include <vector>
+#include <stan/math/matrix/Eigen.hpp>
+#include <stan/math/matrix/check_range.hpp>
+
+

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::math
 Matrices and templated mathematical functions.
 
+ + + + + + + + + +

+Functions

template<typename T >
size_t stan::math::rank (const std::vector< T > &v, int s)
 Return the number of components of v less than v[s].
 
template<typename T , int R, int C>
size_t stan::math::rank (const Eigen::Matrix< T, R, C > &v, int s)
 Return the number of components of v less than v[s].
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/rank_8hpp_source.html b/doc/api/html/rank_8hpp_source.html new file mode 100644 index 00000000000..9c1ebe7de49 --- /dev/null +++ b/doc/api/html/rank_8hpp_source.html @@ -0,0 +1,145 @@ + + + + + +Stan: src/stan/math/matrix/rank.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
rank.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MATH__MATRIX__RANK_HPP__
+
2 #define __STAN__MATH__MATRIX__RANK_HPP__
+
3 
+
4 #include <vector>
+ + +
7 
+
8 namespace stan {
+
9  namespace math {
+
10 
+
17  template <typename T>
+
18  inline size_t rank(const std::vector<T> & v, int s) {
+
19  size_t size = v.size();
+
20  check_range(size,s,"in the function rank(v,s)",s);
+
21  s--;
+
22  size_t count(0U);
+
23  T compare(v[s]);
+
24  for (size_t i = 0U; i < size; ++i)
+
25  if (v[i]<compare) count++;
+
26  return count;
+
27  }
+
28 
+
35  template <typename T, int R, int C>
+
36  inline size_t rank(const Eigen::Matrix<T,R,C> & v, int s) {
+
37  size_t size = v.size();
+
38  check_range(size,s,"in the function rank(v,s)",s);
+
39  s--;
+
40  const T * vv = v.data();
+
41  size_t count(0U);
+
42  T compare(vv[s]);
+
43  for (size_t i = 0U; i < size; ++i)
+
44  if (vv[i]<compare) count++;
+
45  return count;
+
46  }
+
47 
+
48  }
+
49 }
+
50 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/rayleigh_8hpp.html b/doc/api/html/rayleigh_8hpp.html new file mode 100644 index 00000000000..1ced651c5ef --- /dev/null +++ b/doc/api/html/rayleigh_8hpp.html @@ -0,0 +1,151 @@ + + + + + +Stan: src/stan/prob/distributions/univariate/continuous/rayleigh.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
rayleigh.hpp File Reference
+
+
+
#include <boost/random/uniform_real_distribution.hpp>
+#include <boost/random/variate_generator.hpp>
+#include <stan/agrad/partials_vari.hpp>
+#include <stan/math.hpp>
+#include <stan/math/error_handling.hpp>
+#include <stan/meta/traits.hpp>
+#include <stan/prob/constants.hpp>
+#include <stan/prob/traits.hpp>
+
+

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::prob
 Templated probability distributions.
 
+ + + + + + + + + + + + + + + + + + + +

+Functions

template<bool propto, typename T_y , typename T_scale >
return_type< T_y, T_scale >::type stan::prob::rayleigh_log (const T_y &y, const T_scale &sigma)
 
template<typename T_y , typename T_scale >
return_type< T_y, T_scale >::type stan::prob::rayleigh_log (const T_y &y, const T_scale &sigma)
 
template<typename T_y , typename T_scale >
return_type< T_y, T_scale >::type stan::prob::rayleigh_cdf (const T_y &y, const T_scale &sigma)
 
template<typename T_y , typename T_scale >
return_type< T_y, T_scale >::type stan::prob::rayleigh_cdf_log (const T_y &y, const T_scale &sigma)
 
template<typename T_y , typename T_scale >
return_type< T_y, T_scale >::type stan::prob::rayleigh_ccdf_log (const T_y &y, const T_scale &sigma)
 
template<class RNG >
double stan::prob::rayleigh_rng (const double sigma, RNG &rng)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/rayleigh_8hpp_source.html b/doc/api/html/rayleigh_8hpp_source.html new file mode 100644 index 00000000000..dd0e2a221a5 --- /dev/null +++ b/doc/api/html/rayleigh_8hpp_source.html @@ -0,0 +1,447 @@ + + + + + +Stan: src/stan/prob/distributions/univariate/continuous/rayleigh.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
rayleigh.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__PROB__DISTRIBUTIONS__UNIVARIATE__CONTINUOUS__RAYLEIGH_HPP__
+
2 #define __STAN__PROB__DISTRIBUTIONS__UNIVARIATE__CONTINUOUS__RAYLEIGH_HPP__
+
3 
+
4 #include <boost/random/uniform_real_distribution.hpp>
+
5 #include <boost/random/variate_generator.hpp>
+
6 
+ +
8 #include <stan/math.hpp>
+ +
10 #include <stan/meta/traits.hpp>
+
11 #include <stan/prob/constants.hpp>
+
12 #include <stan/prob/traits.hpp>
+
13 
+
14 namespace stan {
+
15 
+
16  namespace prob {
+
17 
+
18  template <bool propto,
+
19  typename T_y, typename T_scale>
+
20  typename return_type<T_y,T_scale>::type
+
21  rayleigh_log(const T_y& y, const T_scale& sigma) {
+
22  static const char* function = "stan::prob::rayleigh_log(%1%)";
+
23 
+
24  using std::log;
+ + + + + + + +
32 
+
33  // check if any vectors are zero length
+
34  if (!(stan::length(y) && stan::length(sigma)))
+
35  return 0.0;
+
36 
+
37  // set up return value accumulator
+
38  double logp(0.0);
+
39 
+
40  // validate args (here done over var, which should be OK)
+
41  if (!check_not_nan(function, y, "Random variable", &logp))
+
42  return logp;
+
43  if (!check_positive(function, sigma, "Scale parameter", &logp))
+
44  return logp;
+
45  if (!check_positive(function, y, "Random variable", &logp))
+
46  return logp;
+
47  if (!(check_consistent_sizes(function,
+
48  y,sigma,
+
49  "Random variable","Scale parameter",
+
50  &logp)))
+
51  return logp;
+
52 
+
53  // check if no variables are involved and prop-to
+ +
55  return 0.0;
+
56 
+
57  // set up template expressions wrapping scalars into vector views
+
58  agrad::OperandsAndPartials<T_y, T_scale> operands_and_partials(y, sigma);
+
59 
+
60  VectorView<const T_y> y_vec(y);
+
61  VectorView<const T_scale> sigma_vec(sigma);
+
62  size_t N = max_size(y, sigma);
+
63 
+ + +
66  is_vector<T_scale>::value> log_sigma(length(sigma));
+
67  for (size_t i = 0; i < length(sigma); i++) {
+
68  inv_sigma[i] = 1.0 / value_of(sigma_vec[i]);
+ +
70  log_sigma[i] = log(value_of(sigma_vec[i]));
+
71  }
+
72 
+
73  for (size_t n = 0; n < N; n++) {
+
74  // pull out values of arguments
+
75  const double y_dbl = value_of(y_vec[n]);
+
76 
+
77  // reusable subexpression values
+
78  const double y_over_sigma = y_dbl * inv_sigma[n];
+
79 
+
80  static double NEGATIVE_HALF = -0.5;
+
81 
+
82  // log probability
+ +
84  logp -= 2.0 * log_sigma[n];
+ +
86  logp += log(y_dbl);
+
87  // if (include_summand<propto,T_y,T_scale>::value)
+
88  logp += NEGATIVE_HALF * y_over_sigma * y_over_sigma;
+
89 
+
90  // gradients
+
91  double scaled_diff = inv_sigma[n] * y_over_sigma;
+ +
93  operands_and_partials.d_x1[n] += 1.0 / y_dbl - scaled_diff;
+ +
95  operands_and_partials.d_x2[n]
+
96  += y_over_sigma * scaled_diff - 2.0 * inv_sigma[n];
+
97  }
+
98  return operands_and_partials.to_var(logp);
+
99  }
+
100 
+
101  template <typename T_y, typename T_scale>
+
102  inline
+ +
104  rayleigh_log(const T_y& y, const T_scale& sigma) {
+
105  return rayleigh_log<false>(y,sigma);
+
106  }
+
107 
+
108  template <typename T_y, typename T_scale>
+ +
110  rayleigh_cdf(const T_y& y, const T_scale& sigma) {
+
111  static const char* function = "stan::prob::rayleigh_cdf(%1%)";
+
112 
+ + + + + + + +
120  using stan::math::square;
+
121  using stan::math::value_of;
+
122 
+
123  double cdf(1.0);
+
124 
+
125  // check if any vectors are zero length
+
126  if (!(stan::length(y) && stan::length(sigma)))
+
127  return cdf;
+
128 
+
129  if (!check_not_nan(function, y, "Random variable", &cdf))
+
130  return cdf;
+
131  if (!check_nonnegative(function, y, "Random variable", &cdf))
+
132  return cdf;
+
133  if (!check_not_nan(function, sigma, "Scale parameter", &cdf))
+
134  return cdf;
+
135  if (!check_positive(function, sigma, "Scale parameter", &cdf))
+
136  return cdf;
+
137  if (!(check_consistent_sizes(function,
+
138  y,sigma,
+
139  "Random variable","Scale parameter",
+
140  &cdf)))
+
141  return cdf;
+
142 
+
143 
+
144  // set up template expressions wrapping scalars into vector views
+
145  agrad::OperandsAndPartials<T_y, T_scale> operands_and_partials(y, sigma);
+
146 
+
147  VectorView<const T_y> y_vec(y);
+
148  VectorView<const T_scale> sigma_vec(sigma);
+
149  size_t N = max_size(y, sigma);
+
150 
+ +
152  for (size_t i = 0; i < length(sigma); i++) {
+
153  inv_sigma[i] = 1.0 / value_of(sigma_vec[i]);
+
154  }
+
155 
+
156  for (size_t n = 0; n < N; n++) {
+
157  const double y_dbl = value_of(y_vec[n]);
+
158  const double y_sqr = y_dbl * y_dbl;
+
159  const double inv_sigma_sqr = inv_sigma[n] * inv_sigma[n];
+
160  const double exp_val = exp(-0.5 * y_sqr * inv_sigma_sqr);
+
161 
+ +
163  cdf *= (1.0 - exp_val);
+
164  }
+
165 
+
166  //gradients
+
167  for (size_t n = 0; n < N; n++) {
+
168  const double y_dbl = value_of(y_vec[n]);
+
169  const double y_sqr = square(y_dbl);
+
170  const double inv_sigma_sqr = square(inv_sigma[n]);
+
171  const double exp_val = exp(-0.5 * y_sqr * inv_sigma_sqr);
+
172  const double exp_div_1m_exp = exp_val / (1.0 - exp_val);
+
173 
+ +
175  operands_and_partials.d_x1[n] += y_dbl * inv_sigma_sqr
+
176  * exp_div_1m_exp * cdf;
+ +
178  operands_and_partials.d_x2[n] -= y_sqr * inv_sigma_sqr
+
179  * inv_sigma[n] * exp_div_1m_exp * cdf;
+
180  }
+
181 
+
182  return operands_and_partials.to_var(cdf);
+
183  }
+
184 
+
185  template <typename T_y, typename T_scale>
+ +
187  rayleigh_cdf_log(const T_y& y, const T_scale& sigma) {
+
188  static const char* function = "stan::prob::rayleigh_cdf_log(%1%)";
+
189 
+ + + + + + + +
197  using stan::math::square;
+
198  using stan::math::value_of;
+
199 
+
200  double cdf_log(0.0);
+
201 
+
202  // check if any vectors are zero length
+
203  if (!(stan::length(y) && stan::length(sigma)))
+
204  return cdf_log;
+
205 
+
206  if (!check_not_nan(function, y, "Random variable", &cdf_log))
+
207  return cdf_log;
+
208  if (!check_nonnegative(function, y, "Random variable", &cdf_log))
+
209  return cdf_log;
+
210  if (!check_not_nan(function, sigma, "Scale parameter", &cdf_log))
+
211  return cdf_log;
+
212  if (!check_positive(function, sigma, "Scale parameter", &cdf_log))
+
213  return cdf_log;
+
214  if (!(check_consistent_sizes(function,
+
215  y,sigma,
+
216  "Random variable","Scale parameter",
+
217  &cdf_log)))
+
218  return cdf_log;
+
219 
+
220 
+
221  // set up template expressions wrapping scalars into vector views
+
222  agrad::OperandsAndPartials<T_y, T_scale> operands_and_partials(y, sigma);
+
223 
+
224  VectorView<const T_y> y_vec(y);
+
225  VectorView<const T_scale> sigma_vec(sigma);
+
226  size_t N = max_size(y, sigma);
+
227 
+ +
229  for (size_t i = 0; i < length(sigma); i++) {
+
230  inv_sigma[i] = 1.0 / value_of(sigma_vec[i]);
+
231  }
+
232 
+
233  for (size_t n = 0; n < N; n++) {
+
234  const double y_dbl = value_of(y_vec[n]);
+
235  const double y_sqr = y_dbl * y_dbl;
+
236  const double inv_sigma_sqr = inv_sigma[n] * inv_sigma[n];
+
237  const double exp_val = exp(-0.5 * y_sqr * inv_sigma_sqr);
+
238  const double exp_div_1m_exp = exp_val / (1.0 - exp_val);
+
239 
+ +
241  cdf_log += log(1.0 - exp_val);
+
242 
+ +
244  operands_and_partials.d_x1[n] += y_dbl * inv_sigma_sqr
+
245  * exp_div_1m_exp;
+ +
247  operands_and_partials.d_x2[n] -= y_sqr * inv_sigma_sqr
+
248  * inv_sigma[n] * exp_div_1m_exp;
+
249  }
+
250 
+
251  return operands_and_partials.to_var(cdf_log);
+
252  }
+
253 
+
254  template <typename T_y, typename T_scale>
+ +
256  rayleigh_ccdf_log(const T_y& y, const T_scale& sigma) {
+
257  static const char* function = "stan::prob::rayleigh_ccdf_log(%1%)";
+
258 
+ + + + + + + +
266  using stan::math::square;
+
267  using stan::math::value_of;
+
268 
+
269  double ccdf_log(0.0);
+
270 
+
271  // check if any vectors are zero length
+
272  if (!(stan::length(y) && stan::length(sigma)))
+
273  return ccdf_log;
+
274 
+
275  if (!check_not_nan(function, y, "Random variable", &ccdf_log))
+
276  return ccdf_log;
+
277  if (!check_nonnegative(function, y, "Random variable", &ccdf_log))
+
278  return ccdf_log;
+
279  if (!check_not_nan(function, sigma, "Scale parameter", &ccdf_log))
+
280  return ccdf_log;
+
281  if (!check_positive(function, sigma, "Scale parameter", &ccdf_log))
+
282  return ccdf_log;
+
283  if (!(check_consistent_sizes(function,
+
284  y,sigma,
+
285  "Random variable","Scale parameter",
+
286  &ccdf_log)))
+
287  return ccdf_log;
+
288 
+
289 
+
290  // set up template expressions wrapping scalars into vector views
+
291  agrad::OperandsAndPartials<T_y, T_scale> operands_and_partials(y, sigma);
+
292 
+
293  VectorView<const T_y> y_vec(y);
+
294  VectorView<const T_scale> sigma_vec(sigma);
+
295  size_t N = max_size(y, sigma);
+
296 
+ +
298  for (size_t i = 0; i < length(sigma); i++) {
+
299  inv_sigma[i] = 1.0 / value_of(sigma_vec[i]);
+
300  }
+
301 
+
302  for (size_t n = 0; n < N; n++) {
+
303  const double y_dbl = value_of(y_vec[n]);
+
304  const double y_sqr = y_dbl * y_dbl;
+
305  const double inv_sigma_sqr = inv_sigma[n] * inv_sigma[n];
+
306 
+ +
308  ccdf_log += -0.5 * y_sqr * inv_sigma_sqr;
+
309 
+ +
311  operands_and_partials.d_x1[n] -= y_dbl * inv_sigma_sqr;
+ +
313  operands_and_partials.d_x2[n] += y_sqr * inv_sigma_sqr
+
314  * inv_sigma[n];
+
315  }
+
316 
+
317  return operands_and_partials.to_var(ccdf_log);
+
318  }
+
319 
+
320  template <class RNG>
+
321  inline double
+
322  rayleigh_rng(const double sigma,
+
323  RNG& rng) {
+
324  using boost::variate_generator;
+
325  using boost::random::uniform_real_distribution;
+
326 
+
327  static const char* function = "stan::prob::rayleigh_rng(%1%)";
+
328 
+ +
330 
+
331  if (!check_positive(function, sigma, "Scale parameter"))
+
332  return 0;
+
333 
+
334  variate_generator<RNG&, uniform_real_distribution<> >
+
335  uniform_rng(rng, uniform_real_distribution<>(0.0, 1.0));
+
336  return sigma * std::sqrt(-2.0 * std::log(uniform_rng()));
+
337  }
+
338  }
+
339 }
+
340 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/reader_8hpp.html b/doc/api/html/reader_8hpp.html new file mode 100644 index 00000000000..8852e113743 --- /dev/null +++ b/doc/api/html/reader_8hpp.html @@ -0,0 +1,130 @@ + + + + + +Stan: src/stan/io/reader.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
reader.hpp File Reference
+
+
+
#include <boost/throw_exception.hpp>
+#include <stan/prob/transform.hpp>
+
+

Go to the source code of this file.

+ + + + + +

+Classes

class  stan::io::reader< T >
 A stream-based reader for integer, scalar, vector, matrix and array data types, with Jacobian calculations. More...
 
+ + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::io
 Input/output utilities.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/reader_8hpp_source.html b/doc/api/html/reader_8hpp_source.html new file mode 100644 index 00000000000..b29a129e38a --- /dev/null +++ b/doc/api/html/reader_8hpp_source.html @@ -0,0 +1,726 @@ + + + + + +Stan: src/stan/io/reader.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
reader.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__IO__READER_HPP__
+
2 #define __STAN__IO__READER_HPP__
+
3 
+
4 #include <boost/throw_exception.hpp>
+ +
6 
+
7 namespace stan {
+
8 
+
9  namespace io {
+
10 
+
11 
+
33  template <typename T>
+
34  class reader {
+
35 
+
36  private:
+
37 
+
38  std::vector<T>& data_r_;
+
39  std::vector<int>& data_i_;
+
40  size_t pos_;
+
41  size_t int_pos_;
+
42 
+
43  inline T& scalar_ptr() {
+
44  return data_r_.at(pos_);
+
45  }
+
46 
+
47  inline T& scalar_ptr_increment(size_t m) {
+
48  pos_ += m;
+
49  return data_r_.at(pos_ - m);
+
50  }
+
51 
+
52  inline int& int_ptr() {
+
53  return data_i_.at(int_pos_);
+
54  }
+
55 
+
56  inline int& int_ptr_increment(size_t m) {
+
57  int_pos_ += m;
+
58  return data_i_.at(int_pos_ - m);
+
59  }
+
60 
+
61  public:
+
62 
+
63  typedef Eigen::Matrix<T,Eigen::Dynamic,Eigen::Dynamic> matrix_t;
+
64  typedef Eigen::Matrix<T,Eigen::Dynamic,1> vector_t;
+
65  typedef Eigen::Matrix<T,1,Eigen::Dynamic> row_vector_t;
+
66 
+
67  typedef Eigen::Map<matrix_t> map_matrix_t;
+
68  typedef Eigen::Map<vector_t> map_vector_t;
+
69  typedef Eigen::Map<row_vector_t> map_row_vector_t;
+
70 
+
71 
+
83  reader(std::vector<T>& data_r,
+
84  std::vector<int>& data_i)
+
85  : data_r_(data_r),
+
86  data_i_(data_i),
+
87  pos_(0),
+
88  int_pos_(0) {
+
89  }
+
90 
+
94  ~reader() { }
+
95 
+
101  inline size_t available() {
+
102  return data_r_.size() - pos_;
+
103  }
+
104 
+
110  inline size_t available_i() {
+
111  return data_i_.size() - int_pos_;
+
112  }
+
113 
+
119  inline int integer() {
+
120  if (int_pos_ >= data_i_.size())
+
121  BOOST_THROW_EXCEPTION(
+
122  std::runtime_error("no more integers to read."));
+
123  return data_i_[int_pos_++];
+
124  }
+
125 
+
133  inline int integer_constrain() {
+
134  return integer();
+
135  }
+
136 
+
144  inline int integer_constrain(T& /*log_prob*/) {
+
145  return integer();
+
146  }
+
147 
+
148 
+
149 
+
155  inline T scalar() {
+
156  if (pos_ >= data_r_.size())
+
157  BOOST_THROW_EXCEPTION(std::runtime_error("no more scalars to read"));
+
158  return data_r_[pos_++];
+
159  }
+
160 
+
167  inline T scalar_constrain() {
+
168  return scalar();
+
169  }
+
170 
+
182  T scalar_constrain(T& /*log_prob*/) {
+
183  return scalar();
+
184  }
+
185 
+
186 
+
194  inline std::vector<T> std_vector(size_t m) {
+
195  std::vector<T> vec;
+
196  T& start = scalar_ptr_increment(m);
+
197  vec.insert(vec.begin(), &start, &scalar_ptr());
+
198  return vec;
+
199  }
+
200 
+
208  inline vector_t vector(size_t m) {
+
209  return map_vector_t(&scalar_ptr_increment(m),m);
+
210  }
+
218  inline vector_t vector_constrain(size_t m) {
+
219  return map_vector_t(&scalar_ptr_increment(m),m);
+
220  }
+
229  inline vector_t vector_constrain(size_t m, T& /*lp*/) {
+
230  return map_vector_t(&scalar_ptr_increment(m),m);
+
231  }
+
232 
+
233 
+
234 
+
242  inline row_vector_t row_vector(size_t m) {
+
243  return map_row_vector_t(&scalar_ptr_increment(m),m);
+
244  }
+
245 
+ +
254  return map_row_vector_t(&scalar_ptr_increment(m),m);
+
255  }
+
256 
+
266  inline row_vector_t row_vector_constrain(size_t m, T& /*lp*/) {
+
267  return map_row_vector_t(&scalar_ptr_increment(m),m);
+
268  }
+
269 
+
287  inline matrix_t matrix(size_t m, size_t n) {
+
288  return map_matrix_t(&scalar_ptr_increment(m*n),m,n);
+
289  }
+
290 
+
301  inline matrix_t matrix_constrain(size_t m, size_t n) {
+
302  return map_matrix_t(&scalar_ptr_increment(m*n),m,n);
+
303  }
+
304 
+
317  inline matrix_t matrix_constrain(size_t m, size_t n, T& /*lp*/) {
+
318  return map_matrix_t(&scalar_ptr_increment(m*n),m,n);
+
319  }
+
320 
+
321 
+
331  inline int integer_lb(int lb) {
+
332  int i = integer();
+
333  if (!(i >= lb))
+
334  BOOST_THROW_EXCEPTION(
+
335  std::runtime_error("required value greater than or equal to lb"));
+
336  return i;
+
337  }
+
347  inline int integer_lb_constrain(int lb) {
+
348  return integer_lb(lb);
+
349  }
+
360  inline int integer_lb_constrain(int lb, T& /*lp*/) {
+
361  return integer_lb(lb);
+
362  }
+
363 
+
364 
+
374  inline int integer_ub(int ub) {
+
375  int i = integer();
+
376  if (!(i <= ub))
+
377  BOOST_THROW_EXCEPTION(
+
378  std::runtime_error("required value less than or equal to ub"));
+
379  return i;
+
380  }
+
390  inline int integer_ub_constrain(int ub) {
+
391  return integer_ub(ub);
+
392  }
+
403  int integer_ub_constrain(int ub, T& /*lp*/) {
+
404  return integer_ub(ub);
+
405  }
+
406 
+
419  inline int integer_lub(int lb, int ub) {
+
420  // read first to make position deterministic [arbitrary choice]
+
421  int i = integer();
+
422  if (lb > ub)
+
423  BOOST_THROW_EXCEPTION(
+
424  std::runtime_error("lower bound must be less than or equal to ub"));
+
425  if (!(i >= lb))
+
426  BOOST_THROW_EXCEPTION(
+
427  std::runtime_error("required value greater than or equal to lb"));
+
428  if (!(i <= ub))
+
429  BOOST_THROW_EXCEPTION(
+
430  std::runtime_error("required value less than or equal to ub"));
+
431  return i;
+
432  }
+
443  inline int integer_lub_constrain(int lb, int ub) {
+
444  return integer_lub(lb,ub);
+
445  }
+
457  inline int integer_lub_constrain(int lb, int ub, T& /*lp*/) {
+
458  return integer_lub(lb,ub);
+
459  }
+
460 
+
461 
+
462 
+
472  inline T scalar_pos() {
+
473  T x(scalar());
+
474  stan::math::check_positive("stan::io::scalar_pos(%1%)", x,
+
475  "Constrained scalar");
+
476  return x;
+
477  }
+
478 
+
486  inline T scalar_pos_constrain() {
+ +
488  }
+
489 
+
500  inline T scalar_pos_constrain(T& lp) {
+ +
502  }
+
503 
+
516  template <typename TL>
+
517  inline T scalar_lb(const TL lb) {
+
518  T x(scalar());
+
519  stan::math::check_greater_or_equal("stan::io::scalar_lb(%1%)",
+
520  x, lb, "Constrained scalar");
+
521  return x;
+
522  }
+
523 
+
535  template <typename TL>
+
536  inline T scalar_lb_constrain(const TL lb) {
+
537  return stan::prob::lb_constrain(scalar(),lb);
+
538  }
+
539 
+
551  template <typename TL>
+
552  inline T scalar_lb_constrain(const TL lb, T& lp) {
+
553  return stan::prob::lb_constrain(scalar(),lb,lp);
+
554  }
+
555 
+
556 
+
557 
+
570  template <typename TU>
+
571  inline T scalar_ub(TU ub) {
+
572  T x(scalar());
+
573  stan::math::check_less_or_equal("stan::io::scalar_ub(%1%)", x, ub, "Constrained scalar");
+
574  return x;
+
575  }
+
576 
+
588  template <typename TU>
+
589  inline T scalar_ub_constrain(const TU ub) {
+
590  return stan::prob::ub_constrain(scalar(),ub);
+
591  }
+
592 
+
604  template <typename TU>
+
605  inline T scalar_ub_constrain(const TU ub, T& lp) {
+
606  return stan::prob::ub_constrain(scalar(),ub,lp);
+
607  }
+
608 
+
623  template <typename TL, typename TU>
+
624  inline T scalar_lub(const TL lb, const TU ub) {
+
625  T x(scalar());
+
626  stan::math::check_bounded("stan::io::scalar_lub(%1%)", x, lb, ub, "Constrained scalar");
+
627  return x;
+
628  }
+
629 
+
643  template <typename TL, typename TU>
+
644  inline T scalar_lub_constrain(const TL lb, const TU ub) {
+
645  return stan::prob::lub_constrain(scalar(),lb,ub);
+
646  }
+
647 
+
661  template <typename TL, typename TU>
+
662  inline T scalar_lub_constrain(TL lb, TU ub, T& lp) {
+
663  return stan::prob::lub_constrain(scalar(),lb,ub,lp);
+
664  }
+
665 
+
674  inline T prob() {
+
675  T x(scalar());
+
676  stan::math::check_bounded("stan::io::prob(%1%)", x, 0, 1, "Constrained probability");
+
677  return x;
+
678  }
+
679 
+
688  inline T prob_constrain() {
+ +
690  }
+
691 
+
702  inline T prob_constrain(T& lp) {
+
703  return stan::prob::prob_constrain(scalar(),lp);
+
704  }
+
705 
+
706 
+
707 
+
708 
+
720  inline T corr() {
+
721  T x(scalar());
+
722  stan::math::check_bounded("stan::io::corr(%1%)", x, -1, 1, "Correlation value");
+
723  return x;
+
724  }
+
725 
+
734  inline T corr_constrain() {
+ +
736  }
+
737 
+
749  inline T corr_constrain(T& lp) {
+
750  return stan::prob::corr_constrain(scalar(),lp);
+
751  }
+
752 
+
763  inline vector_t unit_vector(size_t k) {
+
764  vector_t theta(vector(k));
+
765  stan::math::check_unit_vector("stan::io::unit_vector(%1%)", theta, "Constrained vector");
+
766  return theta;
+
767  }
+
768 
+
779  inline
+
780  Eigen::Matrix<T,Eigen::Dynamic,1> unit_vector_constrain(size_t k) {
+ +
782  }
+
783 
+
796  inline vector_t unit_vector_constrain(size_t k, T& lp) {
+ +
798  }
+
799 
+
810  inline vector_t simplex(size_t k) {
+
811  vector_t theta(vector(k));
+
812  stan::math::check_simplex("stan::io::simplex(%1%)", theta, "Constrained vector");
+
813  return theta;
+
814  }
+
815 
+
826  inline
+
827  Eigen::Matrix<T,Eigen::Dynamic,1> simplex_constrain(size_t k) {
+ +
829  }
+
830 
+
843  inline vector_t simplex_constrain(size_t k, T& lp) {
+
844  return stan::prob::simplex_constrain(vector(k-1),lp);
+
845  }
+
846 
+
857  inline vector_t ordered(size_t k) {
+
858  vector_t x(vector(k));
+
859  stan::math::check_ordered("stan::io::ordered(%1%)", x, "Constrained vector");
+
860  return x;
+
861  }
+
862 
+
872  inline vector_t ordered_constrain(size_t k) {
+ +
874  }
+
875 
+
887  inline vector_t ordered_constrain(size_t k, T& lp) {
+ +
889  }
+
890 
+
901  inline vector_t positive_ordered(size_t k) {
+
902  vector_t x(vector(k));
+
903  stan::math::check_positive_ordered("stan::io::positive_ordered(%1%)", x, "Constrained vector");
+
904  return x;
+
905  }
+
906 
+ + +
918  }
+
919 
+
931  inline vector_t positive_ordered_constrain(size_t k, T& lp) {
+ +
933  }
+
934 
+
945  inline matrix_t cholesky_factor(size_t M, size_t N) {
+
946  matrix_t y(matrix(M,N));
+
947  stan::math::check_cholesky_factor("stan::io::cholesky_factor(%1%)", y, "Constrained matrix");
+
948  return y;
+
949  }
+
950 
+
962  inline matrix_t cholesky_factor_constrain(size_t M, size_t N) {
+
963  return stan::prob::cholesky_factor_constrain(vector((N * (N + 1)) / 2 + (M - N) * N),
+
964  M,N);
+
965  }
+
966 
+
980  inline matrix_t cholesky_factor_constrain(size_t M, size_t N, T& lp) {
+
981  return stan::prob::cholesky_factor_constrain(vector((N * (N + 1)) / 2 + (M - N) * N),
+
982  M,N,lp);
+
983  }
+
984 
+
996  inline matrix_t cov_matrix(size_t k) {
+
997  matrix_t y(matrix(k,k));
+
998  stan::math::check_cov_matrix("stan::io::cov_matrix(%1%)", y, "Constrained matrix");
+
999  return y;
+
1000  }
+
1001 
+
1010  inline matrix_t cov_matrix_constrain(size_t k) {
+
1011  return stan::prob::cov_matrix_constrain(vector(k + (k * (k - 1)) / 2),
+
1012  k);
+
1013  }
+
1014 
+
1026  inline matrix_t cov_matrix_constrain(size_t k, T& lp) {
+
1027  return stan::prob::cov_matrix_constrain(vector(k + (k * (k - 1)) / 2),
+
1028  k,lp);
+
1029  }
+
1030 
+
1031 
+
1041  inline matrix_t corr_matrix(size_t k) {
+
1042  matrix_t x(matrix(k,k));
+
1043  stan::math::check_corr_matrix("stan::math::corr_matrix(%1%)", x, "Constrained matrix");
+
1044  return x;
+
1045  }
+
1046 
+
1055  inline matrix_t corr_matrix_constrain(size_t k) {
+
1056  return stan::prob::corr_matrix_constrain(vector((k * (k - 1)) / 2),k);
+
1057  }
+
1058 
+
1070  inline matrix_t corr_matrix_constrain(size_t k, T& lp) {
+
1071  return stan::prob::corr_matrix_constrain(vector((k * (k - 1)) / 2),
+
1072  k,lp);
+
1073  }
+
1074 
+
1075  template <typename TL>
+
1076  inline vector_t vector_lb(const TL lb, size_t m) {
+
1077  vector_t v(m);
+
1078  for (size_t i = 0; i < m; ++i)
+
1079  v(i) = scalar_lb(lb);
+
1080  return v;
+
1081  }
+
1082  template <typename TL>
+
1083  inline vector_t vector_lb_constrain(const TL lb, size_t m) {
+
1084  vector_t v(m);
+
1085  for (size_t i = 0; i < m; ++i)
+
1086  v(i) = scalar_lb_constrain(lb);
+
1087  return v;
+
1088  }
+
1089  template <typename TL>
+
1090  inline vector_t vector_lb_constrain(const TL lb, size_t m, T& lp) {
+
1091  vector_t v(m);
+
1092  for (size_t i = 0; i < m; ++i)
+
1093  v(i) = scalar_lb_constrain(lb,lp);
+
1094  return v;
+
1095  }
+
1096 
+
1097  template <typename TL>
+
1098  inline row_vector_t row_vector_lb(const TL lb, size_t m) {
+
1099  row_vector_t v(m);
+
1100  for (size_t i = 0; i < m; ++i)
+
1101  v(i) = scalar_lb(lb);
+
1102  return v;
+
1103  }
+
1104  template <typename TL>
+
1105  inline row_vector_t row_vector_lb_constrain(const TL lb, size_t m) {
+
1106  row_vector_t v(m);
+
1107  for (size_t i = 0; i < m; ++i)
+
1108  v(i) = scalar_lb_constrain(lb);
+
1109  return v;
+
1110  }
+
1111  template <typename TL>
+
1112  inline row_vector_t row_vector_lb_constrain(const TL lb, size_t m, T& lp) {
+
1113  row_vector_t v(m);
+
1114  for (size_t i = 0; i < m; ++i)
+
1115  v(i) = scalar_lb_constrain(lb,lp);
+
1116  return v;
+
1117  }
+
1118 
+
1119  template <typename TL>
+
1120  inline matrix_t matrix_lb(const TL lb, size_t m, size_t n) {
+
1121  matrix_t v(m,n);
+
1122  for (size_t j = 0; j < n; ++j)
+
1123  for (size_t i = 0; i < m; ++i)
+
1124  v(i,j) = scalar_lb(lb);
+
1125  return v;
+
1126  }
+
1127  template <typename TL>
+
1128  inline matrix_t matrix_lb_constrain(const TL lb, size_t m, size_t n) {
+
1129  matrix_t v(m,n);
+
1130  for (size_t j = 0; j < n; ++j)
+
1131  for (size_t i = 0; i < m; ++i)
+
1132  v(i,j) = scalar_lb_constrain(lb);
+
1133  return v;
+
1134  }
+
1135  template <typename TL>
+
1136  inline matrix_t matrix_lb_constrain(const TL lb, size_t m, size_t n, T& lp) {
+
1137  matrix_t v(m,n);
+
1138  for (size_t j = 0; j < n; ++j)
+
1139  for (size_t i = 0; i < m; ++i)
+
1140  v(i,j) = scalar_lb_constrain(lb,lp);
+
1141  return v;
+
1142  }
+
1143 
+
1144  template <typename TU>
+
1145  inline vector_t vector_ub(const TU ub, size_t m) {
+
1146  vector_t v(m);
+
1147  for (size_t i = 0; i < m; ++i)
+
1148  v(i) = scalar_ub(ub);
+
1149  return v;
+
1150  }
+
1151  template <typename TU>
+
1152  inline vector_t vector_ub_constrain(const TU ub, size_t m) {
+
1153  vector_t v(m);
+
1154  for (size_t i = 0; i < m; ++i)
+
1155  v(i) = scalar_ub_constrain(ub);
+
1156  return v;
+
1157  }
+
1158  template <typename TU>
+
1159  inline vector_t vector_ub_constrain(const TU ub, size_t m, T& lp) {
+
1160  vector_t v(m);
+
1161  for (size_t i = 0; i < m; ++i)
+
1162  v(i) = scalar_ub_constrain(ub,lp);
+
1163  return v;
+
1164  }
+
1165 
+
1166  template <typename TU>
+
1167  inline row_vector_t row_vector_ub(const TU ub, size_t m) {
+
1168  row_vector_t v(m);
+
1169  for (size_t i = 0; i < m; ++i)
+
1170  v(i) = scalar_ub(ub);
+
1171  return v;
+
1172  }
+
1173  template <typename TU>
+
1174  inline row_vector_t row_vector_ub_constrain(const TU ub, size_t m) {
+
1175  row_vector_t v(m);
+
1176  for (size_t i = 0; i < m; ++i)
+
1177  v(i) = scalar_ub_constrain(ub);
+
1178  return v;
+
1179  }
+
1180  template <typename TU>
+
1181  inline row_vector_t row_vector_ub_constrain(const TU ub, size_t m, T& lp) {
+
1182  row_vector_t v(m);
+
1183  for (size_t i = 0; i < m; ++i)
+
1184  v(i) = scalar_ub_constrain(ub,lp);
+
1185  return v;
+
1186  }
+
1187 
+
1188  template <typename TU>
+
1189  inline matrix_t matrix_ub(const TU ub, size_t m, size_t n) {
+
1190  matrix_t v(m,n);
+
1191  for (size_t j = 0; j < n; ++j)
+
1192  for (size_t i = 0; i < m; ++i)
+
1193  v(i,j) = scalar_ub(ub);
+
1194  return v;
+
1195  }
+
1196  template <typename TU>
+
1197  inline matrix_t matrix_ub_constrain(const TU ub, size_t m, size_t n) {
+
1198  matrix_t v(m,n);
+
1199  for (size_t j = 0; j < n; ++j)
+
1200  for (size_t i = 0; i < m; ++i)
+
1201  v(i,j) = scalar_ub_constrain(ub);
+
1202  return v;
+
1203  }
+
1204  template <typename TU>
+
1205  inline matrix_t matrix_ub_constrain(const TU ub, size_t m, size_t n, T& lp) {
+
1206  matrix_t v(m,n);
+
1207  for (size_t j = 0; j < n; ++j)
+
1208  for (size_t i = 0; i < m; ++i)
+
1209  v(i,j) = scalar_ub_constrain(ub,lp);
+
1210  return v;
+
1211  }
+
1212 
+
1213 
+
1214  template <typename TL, typename TU>
+
1215  inline vector_t vector_lub(const TL lb, const TU ub, size_t m) {
+
1216  vector_t v(m);
+
1217  for (size_t i = 0; i < m; ++i)
+
1218  v(i) = scalar_lub(lb,ub);
+
1219  return v;
+
1220  }
+
1221  template <typename TL, typename TU>
+
1222  inline vector_t vector_lub_constrain(const TL lb, const TU ub, size_t m) {
+
1223  vector_t v(m);
+
1224  for (size_t i = 0; i < m; ++i)
+
1225  v(i) = scalar_lub_constrain(lb,ub);
+
1226  return v;
+
1227  }
+
1228  template <typename TL, typename TU>
+
1229  inline vector_t vector_lub_constrain(const TL lb, const TU ub, size_t m, T& lp) {
+
1230  vector_t v(m);
+
1231  for (size_t i = 0; i < m; ++i)
+
1232  v(i) = scalar_lub_constrain(lb,ub,lp);
+
1233  return v;
+
1234  }
+
1235 
+
1236  template <typename TL, typename TU>
+
1237  inline row_vector_t row_vector_lub(const TL lb, const TU ub, size_t m) {
+
1238  row_vector_t v(m);
+
1239  for (size_t i = 0; i < m; ++i)
+
1240  v(i) = scalar_lub(lb,ub);
+
1241  return v;
+
1242  }
+
1243  template <typename TL, typename TU>
+
1244  inline row_vector_t row_vector_lub_constrain(const TL lb, const TU ub, size_t m) {
+
1245  row_vector_t v(m);
+
1246  for (size_t i = 0; i < m; ++i)
+
1247  v(i) = scalar_lub_constrain(lb,ub);
+
1248  return v;
+
1249  }
+
1250  template <typename TL, typename TU>
+
1251  inline row_vector_t row_vector_lub_constrain(const TL lb, const TU ub, size_t m, T& lp) {
+
1252  row_vector_t v(m);
+
1253  for (size_t i = 0; i < m; ++i)
+
1254  v(i) = scalar_lub_constrain(lb,ub,lp);
+
1255  return v;
+
1256  }
+
1257 
+
1258  template <typename TL, typename TU>
+
1259  inline matrix_t matrix_lub(const TL lb, const TU ub, size_t m, size_t n) {
+
1260  matrix_t v(m,n);
+
1261  for (size_t j = 0; j < n; ++j)
+
1262  for (size_t i = 0; i < m; ++i)
+
1263  v(i,j) = scalar_lub(lb,ub);
+
1264  return v;
+
1265  }
+
1266  template <typename TL, typename TU>
+
1267  inline matrix_t matrix_lub_constrain(const TL lb, const TU ub, size_t m, size_t n) {
+
1268  matrix_t v(m,n);
+
1269  for (size_t j = 0; j < n; ++j)
+
1270  for (size_t i = 0; i < m; ++i)
+
1271  v(i,j) = scalar_lub_constrain(lb,ub);
+
1272  return v;
+
1273  }
+
1274  template <typename TL, typename TU>
+
1275  inline matrix_t matrix_lub_constrain(const TL lb, const TU ub, size_t m, size_t n, T& lp) {
+
1276  matrix_t v(m,n);
+
1277  for (size_t j = 0; j < n; ++j)
+
1278  for (size_t i = 0; i < m; ++i)
+
1279  v(i,j) = scalar_lub_constrain(lb,ub,lp);
+
1280  return v;
+
1281  }
+
1282 
+
1283 
+
1284 
+
1285  };
+
1286 
+
1287  }
+
1288 
+
1289 }
+
1290 
+
1291 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/rep__array_8hpp.html b/doc/api/html/rep__array_8hpp.html new file mode 100644 index 00000000000..28dd1b1d583 --- /dev/null +++ b/doc/api/html/rep__array_8hpp.html @@ -0,0 +1,137 @@ + + + + + +Stan: src/stan/math/rep_array.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
rep_array.hpp File Reference
+
+
+
#include <vector>
+#include <stan/math/validate_non_negative_rep.hpp>
+
+

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::math
 Matrices and templated mathematical functions.
 
+ + + + + + + + + + +

+Functions

template<typename T >
std::vector< T > stan::math::rep_array (const T &x, int n)
 
template<typename T >
std::vector< std::vector< T > > stan::math::rep_array (const T &x, int m, int n)
 
template<typename T >
std::vector< std::vector
+< std::vector< T > > > 
stan::math::rep_array (const T &x, int k, int m, int n)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/rep__array_8hpp_source.html b/doc/api/html/rep__array_8hpp_source.html new file mode 100644 index 00000000000..9dee7f4e2ea --- /dev/null +++ b/doc/api/html/rep__array_8hpp_source.html @@ -0,0 +1,150 @@ + + + + + +Stan: src/stan/math/rep_array.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
rep_array.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MATH__REP_ARRAY_HPP__
+
2 #define __STAN__MATH__REP_ARRAY_HPP__
+
3 
+
4 #include <vector>
+
5 
+ +
7 
+
8 namespace stan {
+
9 
+
10  namespace math {
+
11 
+
12  template <typename T>
+
13  inline std::vector<T>
+
14  rep_array(const T& x, int n) {
+
15  validate_non_negative_rep(n,"rep_array 1D");
+
16  return std::vector<T>(n,x);
+
17  }
+
18 
+
19  template <typename T>
+
20  inline std::vector<std::vector<T> >
+
21  rep_array(const T& x, int m, int n) {
+
22  using std::vector;
+
23  validate_non_negative_rep(m,"rep_array 2D rows");
+
24  validate_non_negative_rep(n,"rep_array 2D cols");
+
25  return vector<vector<T> >(m, vector<T>(n, x));
+
26  }
+
27 
+
28  template <typename T>
+
29  inline std::vector<std::vector<std::vector<T> > >
+
30  rep_array(const T& x, int k, int m, int n) {
+
31  using std::vector;
+
32  validate_non_negative_rep(k,"rep_array 2D shelfs");
+
33  validate_non_negative_rep(m,"rep_array 2D rows");
+
34  validate_non_negative_rep(n,"rep_array 2D cols");
+
35  return vector<vector<vector<T> > >(k,
+
36  vector<vector<T> >(m,
+
37  vector<T>(n, x)));
+
38  }
+
39 
+
40  }
+
41 }
+
42 
+
43 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/rep__matrix_8hpp.html b/doc/api/html/rep__matrix_8hpp.html new file mode 100644 index 00000000000..22a70b5826b --- /dev/null +++ b/doc/api/html/rep__matrix_8hpp.html @@ -0,0 +1,142 @@ + + + + + +Stan: src/stan/math/rep_matrix.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
rep_matrix.hpp File Reference
+
+
+
#include <boost/math/tools/promotion.hpp>
+#include <stan/math/validate_non_negative_rep.hpp>
+#include <stan/math/matrix/Eigen.hpp>
+
+

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::math
 Matrices and templated mathematical functions.
 
+ + + + + + + + + + +

+Functions

template<typename T >
Eigen::Matrix< typename
+boost::math::tools::promote_args
+< T >::type, Eigen::Dynamic,
+Eigen::Dynamic > 
stan::math::rep_matrix (const T &x, int m, int n)
 
template<typename T >
Eigen::Matrix< T,
+Eigen::Dynamic, Eigen::Dynamic > 
stan::math::rep_matrix (const Eigen::Matrix< T, Eigen::Dynamic, 1 > &v, int n)
 
template<typename T >
Eigen::Matrix< T,
+Eigen::Dynamic, Eigen::Dynamic > 
stan::math::rep_matrix (const Eigen::Matrix< T, 1, Eigen::Dynamic > &rv, int m)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/rep__matrix_8hpp_source.html b/doc/api/html/rep__matrix_8hpp_source.html new file mode 100644 index 00000000000..54df901bcc0 --- /dev/null +++ b/doc/api/html/rep__matrix_8hpp_source.html @@ -0,0 +1,150 @@ + + + + + +Stan: src/stan/math/rep_matrix.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
rep_matrix.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MATH__REP_MATRIX_HPP__
+
2 #define __STAN__MATH__REP_MATRIX_HPP__
+
3 
+
4 #include <boost/math/tools/promotion.hpp>
+ + +
7 
+
8 namespace stan {
+
9 
+
10  namespace math {
+
11 
+
12  template <typename T>
+
13  inline
+
14  Eigen::Matrix<typename boost::math::tools::promote_args<T>::type,
+
15  Eigen::Dynamic,Eigen::Dynamic>
+
16  rep_matrix(const T& x, int m, int n) {
+
17  validate_non_negative_rep(m,"rep_matrix rows");
+
18  validate_non_negative_rep(n,"rep_matrix cols");
+
19  return Eigen::Matrix<typename boost::math::tools::promote_args<T>::type,
+
20  Eigen::Dynamic,Eigen::Dynamic>::Constant(m,n,x);
+
21  }
+
22 
+
23  template <typename T>
+
24  inline Eigen::Matrix<T,Eigen::Dynamic,Eigen::Dynamic>
+
25  rep_matrix(const Eigen::Matrix<T,Eigen::Dynamic,1>& v, int n) {
+
26  validate_non_negative_rep(n,"rep_matrix of vector, num rows");
+
27  Eigen::Matrix<T,Eigen::Dynamic,Eigen::Dynamic> result(v.size(),n);
+
28  result.colwise() = v;
+
29  return result;
+
30  }
+
31 
+
32  template <typename T>
+
33  inline Eigen::Matrix<T,Eigen::Dynamic,Eigen::Dynamic>
+
34  rep_matrix(const Eigen::Matrix<T,1,Eigen::Dynamic>& rv, int m) {
+
35  validate_non_negative_rep(m,"rep_matrix of row vector, num cols");
+
36  Eigen::Matrix<T,Eigen::Dynamic,Eigen::Dynamic> result(m,rv.size());
+
37  result.rowwise() = rv;
+
38  return result;
+
39  }
+
40  }
+
41 }
+
42 
+
43 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/rep__row__vector_8hpp.html b/doc/api/html/rep__row__vector_8hpp.html new file mode 100644 index 00000000000..1f1d87cb7f8 --- /dev/null +++ b/doc/api/html/rep__row__vector_8hpp.html @@ -0,0 +1,133 @@ + + + + + +Stan: src/stan/math/rep_row_vector.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
rep_row_vector.hpp File Reference
+
+
+
#include <boost/math/tools/promotion.hpp>
+#include <stan/math/validate_non_negative_rep.hpp>
+#include <stan/math/matrix/Eigen.hpp>
+
+

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::math
 Matrices and templated mathematical functions.
 
+ + + + +

+Functions

template<typename T >
Eigen::Matrix< typename
+boost::math::tools::promote_args
+< T >::type, 1, Eigen::Dynamic > 
stan::math::rep_row_vector (const T &x, int m)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/rep__row__vector_8hpp_source.html b/doc/api/html/rep__row__vector_8hpp_source.html new file mode 100644 index 00000000000..754812de9a9 --- /dev/null +++ b/doc/api/html/rep__row__vector_8hpp_source.html @@ -0,0 +1,131 @@ + + + + + +Stan: src/stan/math/rep_row_vector.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
rep_row_vector.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MATH__REP_ROW_VECTOR_HPP__
+
2 #define __STAN__MATH__REP_ROW_VECTOR_HPP__
+
3 
+
4 #include <boost/math/tools/promotion.hpp>
+ + +
7 
+
8 namespace stan {
+
9 
+
10  namespace math {
+
11 
+
12  template <typename T>
+
13  inline Eigen::Matrix<typename boost::math::tools::promote_args<T>::type,
+
14  1,Eigen::Dynamic>
+
15  rep_row_vector(const T& x, int m) {
+
16  validate_non_negative_rep(m,"rep_row_vector");
+
17  return Eigen::Matrix<typename boost::math::tools::promote_args<T>::type,
+
18  1,Eigen::Dynamic>::Constant(m,x);
+
19  }
+
20 
+
21  }
+
22 }
+
23 
+
24 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/rep__vector_8hpp.html b/doc/api/html/rep__vector_8hpp.html new file mode 100644 index 00000000000..45033d2bef7 --- /dev/null +++ b/doc/api/html/rep__vector_8hpp.html @@ -0,0 +1,133 @@ + + + + + +Stan: src/stan/math/rep_vector.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
rep_vector.hpp File Reference
+
+
+
#include <boost/math/tools/promotion.hpp>
+#include <stan/math/validate_non_negative_rep.hpp>
+#include <stan/math/matrix/Eigen.hpp>
+
+

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::math
 Matrices and templated mathematical functions.
 
+ + + + +

+Functions

template<typename T >
Eigen::Matrix< typename
+boost::math::tools::promote_args
+< T >::type, Eigen::Dynamic, 1 > 
stan::math::rep_vector (const T &x, int n)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/rep__vector_8hpp_source.html b/doc/api/html/rep__vector_8hpp_source.html new file mode 100644 index 00000000000..27415cf6f02 --- /dev/null +++ b/doc/api/html/rep__vector_8hpp_source.html @@ -0,0 +1,133 @@ + + + + + +Stan: src/stan/math/rep_vector.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
rep_vector.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MATH__REP_VECTOR_HPP__
+
2 #define __STAN__MATH__REP_VECTOR_HPP__
+
3 
+
4 #include <boost/math/tools/promotion.hpp>
+ + +
7 
+
8 namespace stan {
+
9 
+
10  namespace math {
+
11 
+
12  template <typename T>
+
13  inline
+
14  Eigen::Matrix<typename boost::math::tools::promote_args<T>::type,
+
15  Eigen::Dynamic,1>
+
16  rep_vector(const T& x, int n) {
+
17  validate_non_negative_rep(n,"rep_vector");
+
18  return Eigen::Matrix<typename boost::math::tools::promote_args<T>::type,
+
19  Eigen::Dynamic,1>::Constant(n,x);
+
20  }
+
21 
+
22 
+
23  }
+
24 }
+
25 
+
26 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/resize_8hpp.html b/doc/api/html/resize_8hpp.html new file mode 100644 index 00000000000..a5f7135999c --- /dev/null +++ b/doc/api/html/resize_8hpp.html @@ -0,0 +1,131 @@ + + + + + +Stan: src/stan/math/matrix/resize.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
resize.hpp File Reference
+
+
+
#include <vector>
+#include <stan/math/matrix/Eigen.hpp>
+
+

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::math
 Matrices and templated mathematical functions.
 
+ + + + + +

+Functions

template<typename T >
void stan::math::resize (T &x, std::vector< size_t > dims)
 Recursively resize the specified vector of vectors, which must bottom out at scalar values, Eigen vectors or Eigen matrices.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/resize_8hpp_source.html b/doc/api/html/resize_8hpp_source.html new file mode 100644 index 00000000000..4d1c02c9074 --- /dev/null +++ b/doc/api/html/resize_8hpp_source.html @@ -0,0 +1,167 @@ + + + + + +Stan: src/stan/math/matrix/resize.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
resize.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MATH__MATRIX__RESIZE_HPP__
+
2 #define __STAN__MATH__MATRIX__RESIZE_HPP__
+
3 
+
4 #include <vector>
+ +
6 
+
7 namespace stan {
+
8  namespace math {
+
9 
+
10  namespace {
+
11 
+
12  template <typename T>
+
13  void resize(Eigen::Matrix<T,Eigen::Dynamic,Eigen::Dynamic>& x,
+
14  const std::vector<size_t>& dims,
+
15  size_t pos) {
+
16  x.resize(dims[pos],dims[pos+1]);
+
17  }
+
18 
+
19  template <typename T>
+
20  void resize(Eigen::Matrix<T,Eigen::Dynamic,1>& x,
+
21  const std::vector<size_t>& dims,
+
22  size_t pos) {
+
23  x.resize(dims[pos]);
+
24  }
+
25 
+
26  template <typename T>
+
27  void resize(Eigen::Matrix<T,1,Eigen::Dynamic>& x,
+
28  const std::vector<size_t>& dims,
+
29  size_t pos) {
+
30  x.resize(dims[pos]);
+
31  }
+
32 
+
33 
+
34  void resize(double /*x*/,
+
35  const std::vector<size_t>& /*dims*/,
+
36  size_t /*pos*/) {
+
37  // no-op
+
38  }
+
39 
+
40  template <typename T>
+
41  void resize(std::vector<T>& x,
+
42  const std::vector<size_t>& dims,
+
43  size_t pos) {
+
44  x.resize(dims[pos]);
+
45  ++pos;
+
46  if (pos >= dims.size()) return; // skips lowest loop to scalar
+
47  for (size_t i = 0; i < x.size(); ++i)
+
48  resize(x[i],dims,pos);
+
49  }
+
50 
+
51  }
+
52 
+
62  template <typename T>
+
63  inline void resize(T& x, std::vector<size_t> dims) {
+
64  resize(x,dims,0U);
+
65  }
+
66 
+
67  }
+
68 }
+
69 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/rev_2functions_2acos_8hpp.html b/doc/api/html/rev_2functions_2acos_8hpp.html new file mode 100644 index 00000000000..319b78a3747 --- /dev/null +++ b/doc/api/html/rev_2functions_2acos_8hpp.html @@ -0,0 +1,131 @@ + + + + + +Stan: src/stan/agrad/rev/functions/acos.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
acos.hpp File Reference
+
+
+
#include <valarray>
+#include <stan/agrad/rev/var.hpp>
+#include <stan/agrad/rev/internal/v_vari.hpp>
+
+

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+ + + + +

+Functions

var stan::agrad::acos (const var &a)
 Return the principal value of the arc cosine of a variable, in radians (cmath).
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/rev_2functions_2acos_8hpp_source.html b/doc/api/html/rev_2functions_2acos_8hpp_source.html new file mode 100644 index 00000000000..8e7103d2810 --- /dev/null +++ b/doc/api/html/rev_2functions_2acos_8hpp_source.html @@ -0,0 +1,136 @@ + + + + + +Stan: src/stan/agrad/rev/functions/acos.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
acos.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__REV__FUNCTIONS__ACOS_HPP__
+
2 #define __STAN__AGRAD__REV__FUNCTIONS__ACOS_HPP__
+
3 
+
4 #include <valarray>
+
5 #include <stan/agrad/rev/var.hpp>
+ +
7 
+
8 namespace stan {
+
9  namespace agrad {
+
10 
+
11  namespace {
+
12  class acos_vari : public op_v_vari {
+
13  public:
+
14  acos_vari(vari* avi) :
+
15  op_v_vari(std::acos(avi->val_),avi) {
+
16  }
+
17  void chain() {
+
18  avi_->adj_ -= adj_ / std::sqrt(1.0 - (avi_->val_ * avi_->val_));
+
19  }
+
20  };
+
21  }
+
22 
+
34  inline var acos(const var& a) {
+
35  return var(new acos_vari(a.vi_));
+
36  }
+
37 
+
38  }
+
39 }
+
40 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/rev_2functions_2acosh_8hpp.html b/doc/api/html/rev_2functions_2acosh_8hpp.html new file mode 100644 index 00000000000..4b8d9193a99 --- /dev/null +++ b/doc/api/html/rev_2functions_2acosh_8hpp.html @@ -0,0 +1,136 @@ + + + + + +Stan: src/stan/agrad/rev/functions/acosh.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
acosh.hpp File Reference
+
+
+
#include <stan/agrad/rev/var.hpp>
+#include <stan/agrad/rev/internal/v_vari.hpp>
+#include <boost/math/special_functions/acosh.hpp>
+#include <boost/math/special_functions/fpclassify.hpp>
+#include <stan/agrad/rev/numeric_limits.hpp>
+#include <stan/agrad/rev/operators/operator_greater_than.hpp>
+#include <stan/agrad/rev/operators/operator_equal.hpp>
+#include <stan/agrad/rev/operators/operator_unary_negative.hpp>
+
+

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+ + + + +

+Functions

var stan::agrad::acosh (const stan::agrad::var &a)
 The inverse hyperbolic cosine function for variables (C99).
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/rev_2functions_2acosh_8hpp_source.html b/doc/api/html/rev_2functions_2acosh_8hpp_source.html new file mode 100644 index 00000000000..9b13623929c --- /dev/null +++ b/doc/api/html/rev_2functions_2acosh_8hpp_source.html @@ -0,0 +1,144 @@ + + + + + +Stan: src/stan/agrad/rev/functions/acosh.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
acosh.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__REV__FUNCTIONS__ACOSH_HPP__
+
2 #define __STAN__AGRAD__REV__FUNCTIONS__ACOSH_HPP__
+
3 
+
4 #include <stan/agrad/rev/var.hpp>
+ +
6 #include <boost/math/special_functions/acosh.hpp>
+
7 #include <boost/math/special_functions/fpclassify.hpp>
+ + + + +
12 
+
13 namespace stan {
+
14  namespace agrad {
+
15 
+
16  namespace {
+
17  class acosh_vari : public op_v_vari {
+
18  public:
+
19  acosh_vari(double val, vari* avi) :
+
20  op_v_vari(val,avi) {
+
21  }
+
22  void chain() {
+
23  avi_->adj_ += adj_ / std::sqrt(avi_->val_ * avi_->val_ - 1.0);
+
24  }
+
25  };
+
26  }
+
27 
+
40  inline var acosh(const stan::agrad::var& a) {
+
41  if (boost::math::isinf(a) && a > 0.0)
+
42  return var(new acosh_vari(a.val(),a.vi_));
+
43  return var(new acosh_vari(boost::math::acosh(a.val()),a.vi_));
+
44  }
+
45 
+
46  }
+
47 }
+
48 
+
49 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/rev_2functions_2asin_8hpp.html b/doc/api/html/rev_2functions_2asin_8hpp.html new file mode 100644 index 00000000000..9d5f8dff87c --- /dev/null +++ b/doc/api/html/rev_2functions_2asin_8hpp.html @@ -0,0 +1,131 @@ + + + + + +Stan: src/stan/agrad/rev/functions/asin.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
asin.hpp File Reference
+
+
+
#include <cmath>
+#include <stan/agrad/rev/var.hpp>
+#include <stan/agrad/rev/internal/v_vari.hpp>
+
+

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+ + + + +

+Functions

var stan::agrad::asin (const var &a)
 Return the principal value of the arc sine, in radians, of the specified variable (cmath).
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/rev_2functions_2asin_8hpp_source.html b/doc/api/html/rev_2functions_2asin_8hpp_source.html new file mode 100644 index 00000000000..89feed0f443 --- /dev/null +++ b/doc/api/html/rev_2functions_2asin_8hpp_source.html @@ -0,0 +1,136 @@ + + + + + +Stan: src/stan/agrad/rev/functions/asin.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
asin.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__REV__FUNCTIONS__ASIN_HPP__
+
2 #define __STAN__AGRAD__REV__FUNCTIONS__ASIN_HPP__
+
3 
+
4 #include <cmath>
+
5 #include <stan/agrad/rev/var.hpp>
+ +
7 
+
8 namespace stan {
+
9  namespace agrad {
+
10 
+
11  namespace {
+
12  class asin_vari : public op_v_vari {
+
13  public:
+
14  asin_vari(vari* avi) :
+
15  op_v_vari(std::asin(avi->val_),avi) {
+
16  }
+
17  void chain() {
+
18  avi_->adj_ += adj_ / std::sqrt(1.0 - (avi_->val_ * avi_->val_));
+
19  }
+
20  };
+
21  }
+
22 
+
34  inline var asin(const var& a) {
+
35  return var(new asin_vari(a.vi_));
+
36  }
+
37 
+
38  }
+
39 }
+
40 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/rev_2functions_2asinh_8hpp.html b/doc/api/html/rev_2functions_2asinh_8hpp.html new file mode 100644 index 00000000000..3bfa0d62a10 --- /dev/null +++ b/doc/api/html/rev_2functions_2asinh_8hpp.html @@ -0,0 +1,136 @@ + + + + + +Stan: src/stan/agrad/rev/functions/asinh.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
asinh.hpp File Reference
+
+
+
#include <valarray>
+#include <stan/agrad/rev/var.hpp>
+#include <stan/agrad/rev/internal/v_vari.hpp>
+#include <boost/math/special_functions/asinh.hpp>
+#include <boost/math/special_functions/fpclassify.hpp>
+#include <stan/agrad/rev/numeric_limits.hpp>
+#include <stan/agrad/rev/operators/operator_equal.hpp>
+#include <stan/agrad/rev/operators/operator_unary_negative.hpp>
+
+

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+ + + + +

+Functions

var stan::agrad::asinh (const stan::agrad::var &a)
 The inverse hyperbolic sine function for variables (C99).
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/rev_2functions_2asinh_8hpp_source.html b/doc/api/html/rev_2functions_2asinh_8hpp_source.html new file mode 100644 index 00000000000..d6b9c033179 --- /dev/null +++ b/doc/api/html/rev_2functions_2asinh_8hpp_source.html @@ -0,0 +1,143 @@ + + + + + +Stan: src/stan/agrad/rev/functions/asinh.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
asinh.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__REV__FUNCTIONS__ASINH_HPP__
+
2 #define __STAN__AGRAD__REV__FUNCTIONS__ASINH_HPP__
+
3 
+
4 #include <valarray>
+
5 #include <stan/agrad/rev/var.hpp>
+ +
7 #include <boost/math/special_functions/asinh.hpp>
+
8 #include <boost/math/special_functions/fpclassify.hpp>
+ + + +
12 
+
13 namespace stan {
+
14  namespace agrad {
+
15 
+
16  namespace {
+
17  class asinh_vari : public op_v_vari {
+
18  public:
+
19  asinh_vari(double val, vari* avi) :
+
20  op_v_vari(val,avi) {
+
21  }
+
22  void chain() {
+
23  avi_->adj_ += adj_ / std::sqrt(avi_->val_ * avi_->val_ + 1.0);
+
24  }
+
25  };
+
26  }
+
27 
+
40  inline var asinh(const stan::agrad::var& a) {
+
41  if (boost::math::isinf(a))
+
42  return var(new asinh_vari(a.val(), a.vi_));
+
43  return var(new asinh_vari(boost::math::asinh(a.val()),a.vi_));
+
44  }
+
45 
+
46  }
+
47 }
+
48 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/rev_2functions_2atan2_8hpp.html b/doc/api/html/rev_2functions_2atan2_8hpp.html new file mode 100644 index 00000000000..dfeb451f581 --- /dev/null +++ b/doc/api/html/rev_2functions_2atan2_8hpp.html @@ -0,0 +1,139 @@ + + + + + +Stan: src/stan/agrad/rev/functions/atan2.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
atan2.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+ + + + + + + + + + +

+Functions

var stan::agrad::atan2 (const var &a, const var &b)
 Return the principal value of the arc tangent, in radians, of the first variable divided by the second (cmath).
 
var stan::agrad::atan2 (const var &a, const double b)
 Return the principal value of the arc tangent, in radians, of the first variable divided by the second scalar (cmath).
 
var stan::agrad::atan2 (const double a, const var &b)
 Return the principal value of the arc tangent, in radians, of the first scalar divided by the second variable (cmath).
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/rev_2functions_2atan2_8hpp_source.html b/doc/api/html/rev_2functions_2atan2_8hpp_source.html new file mode 100644 index 00000000000..496bc69f6e7 --- /dev/null +++ b/doc/api/html/rev_2functions_2atan2_8hpp_source.html @@ -0,0 +1,170 @@ + + + + + +Stan: src/stan/agrad/rev/functions/atan2.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
atan2.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__REV__FUNCTIONS__ATAN2_HPP__
+
2 #define __STAN__AGRAD__REV__FUNCTIONS__ATAN2_HPP__
+
3 
+
4 #include <valarray>
+
5 #include <stan/agrad/rev/var.hpp>
+ + + +
9 
+
10 namespace stan {
+
11  namespace agrad {
+
12 
+
13  namespace {
+
14  class atan2_vv_vari : public op_vv_vari {
+
15  public:
+
16  atan2_vv_vari(vari* avi, vari* bvi) :
+
17  op_vv_vari(std::atan2(avi->val_,bvi->val_),avi,bvi) {
+
18  }
+
19  void chain() {
+
20  double a_sq_plus_b_sq = (avi_->val_ * avi_->val_) + (bvi_->val_ * bvi_->val_);
+
21  avi_->adj_ += adj_ * bvi_->val_ / a_sq_plus_b_sq;
+
22  bvi_->adj_ -= adj_ * avi_->val_ / a_sq_plus_b_sq;
+
23  }
+
24  };
+
25 
+
26  class atan2_vd_vari : public op_vd_vari {
+
27  public:
+
28  atan2_vd_vari(vari* avi, double b) :
+
29  op_vd_vari(std::atan2(avi->val_,b),avi,b) {
+
30  }
+
31  void chain() {
+
32  double a_sq_plus_b_sq = (avi_->val_ * avi_->val_) + (bd_ * bd_);
+
33  avi_->adj_ += adj_ * bd_ / a_sq_plus_b_sq;
+
34  }
+
35  };
+
36 
+
37  class atan2_dv_vari : public op_dv_vari {
+
38  public:
+
39  atan2_dv_vari(double a, vari* bvi) :
+
40  op_dv_vari(std::atan2(a,bvi->val_),a,bvi) {
+
41  }
+
42  void chain() {
+
43  double a_sq_plus_b_sq = (ad_ * ad_) + (bvi_->val_ * bvi_->val_);
+
44  bvi_->adj_ -= adj_ * ad_ / a_sq_plus_b_sq;
+
45  }
+
46  };
+
47  }
+
48 
+
63  inline var atan2(const var& a, const var& b) {
+
64  return var(new atan2_vv_vari(a.vi_,b.vi_));
+
65  }
+
66 
+
79  inline var atan2(const var& a, const double b) {
+
80  return var(new atan2_vd_vari(a.vi_,b));
+
81  }
+
82 
+
95  inline var atan2(const double a, const var& b) {
+
96  return var(new atan2_dv_vari(a,b.vi_));
+
97  }
+
98 
+
99  }
+
100 }
+
101 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/rev_2functions_2atan_8hpp.html b/doc/api/html/rev_2functions_2atan_8hpp.html new file mode 100644 index 00000000000..2b0844f15d8 --- /dev/null +++ b/doc/api/html/rev_2functions_2atan_8hpp.html @@ -0,0 +1,131 @@ + + + + + +Stan: src/stan/agrad/rev/functions/atan.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
atan.hpp File Reference
+
+
+
#include <valarray>
+#include <stan/agrad/rev/var.hpp>
+#include <stan/agrad/rev/internal/v_vari.hpp>
+
+

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+ + + + +

+Functions

var stan::agrad::atan (const var &a)
 Return the principal value of the arc tangent, in radians, of the specified variable (cmath).
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/rev_2functions_2atan_8hpp_source.html b/doc/api/html/rev_2functions_2atan_8hpp_source.html new file mode 100644 index 00000000000..7e63e124dcd --- /dev/null +++ b/doc/api/html/rev_2functions_2atan_8hpp_source.html @@ -0,0 +1,136 @@ + + + + + +Stan: src/stan/agrad/rev/functions/atan.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
atan.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__REV__FUNCTIONS__ATAN_HPP__
+
2 #define __STAN__AGRAD__REV__FUNCTIONS__ATAN_HPP__
+
3 
+
4 #include <valarray>
+
5 #include <stan/agrad/rev/var.hpp>
+ +
7 
+
8 namespace stan {
+
9  namespace agrad {
+
10 
+
11  namespace {
+
12  class atan_vari : public op_v_vari {
+
13  public:
+
14  atan_vari(vari* avi) :
+
15  op_v_vari(std::atan(avi->val_),avi) {
+
16  }
+
17  void chain() {
+
18  avi_->adj_ += adj_ / (1.0 + (avi_->val_ * avi_->val_));
+
19  }
+
20  };
+
21  }
+
22 
+
34  inline var atan(const var& a) {
+
35  return var(new atan_vari(a.vi_));
+
36  }
+
37 
+
38  }
+
39 }
+
40 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/rev_2functions_2atanh_8hpp.html b/doc/api/html/rev_2functions_2atanh_8hpp.html new file mode 100644 index 00000000000..91dd08d75bf --- /dev/null +++ b/doc/api/html/rev_2functions_2atanh_8hpp.html @@ -0,0 +1,132 @@ + + + + + +Stan: src/stan/agrad/rev/functions/atanh.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
atanh.hpp File Reference
+
+
+
#include <boost/math/special_functions/atanh.hpp>
+#include <stan/agrad/rev/var.hpp>
+#include <stan/agrad/rev/internal/v_vari.hpp>
+#include <stan/agrad/rev/operators/operator_equal.hpp>
+
+

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+ + + + +

+Functions

var stan::agrad::atanh (const stan::agrad::var &a)
 The inverse hyperbolic tangent function for variables (C99).
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/rev_2functions_2atanh_8hpp_source.html b/doc/api/html/rev_2functions_2atanh_8hpp_source.html new file mode 100644 index 00000000000..50eb168cc20 --- /dev/null +++ b/doc/api/html/rev_2functions_2atanh_8hpp_source.html @@ -0,0 +1,141 @@ + + + + + +Stan: src/stan/agrad/rev/functions/atanh.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
atanh.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__REV__FUNCTIONS__ATANH_HPP__
+
2 #define __STAN__AGRAD__REV__FUNCTIONS__ATANH_HPP__
+
3 
+
4 #include <boost/math/special_functions/atanh.hpp>
+
5 #include <stan/agrad/rev/var.hpp>
+ + +
8 
+
9 namespace stan {
+
10  namespace agrad {
+
11 
+
12  namespace {
+
13  class atanh_vari : public op_v_vari {
+
14  public:
+
15  atanh_vari(double val, vari* avi) :
+
16  op_v_vari(val,avi) {
+
17  }
+
18  void chain() {
+
19  avi_->adj_ += adj_ / (1.0 - avi_->val_ * avi_->val_);
+
20  }
+
21  };
+
22  }
+
23 
+
36  inline var atanh(const stan::agrad::var& a) {
+
37  if (a == 1.0)
+
38  return var(new atanh_vari(std::numeric_limits<double>::infinity(),a.vi_));
+
39  if (a == -1.0)
+
40  return var(new atanh_vari(-std::numeric_limits<double>::infinity(),a.vi_));
+
41  return var(new atanh_vari(boost::math::atanh(a.val()),a.vi_));
+
42  }
+
43 
+
44  }
+
45 }
+
46 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/rev_2functions_2cbrt_8hpp.html b/doc/api/html/rev_2functions_2cbrt_8hpp.html new file mode 100644 index 00000000000..25e990e2d17 --- /dev/null +++ b/doc/api/html/rev_2functions_2cbrt_8hpp.html @@ -0,0 +1,131 @@ + + + + + +Stan: src/stan/agrad/rev/functions/cbrt.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
cbrt.hpp File Reference
+
+
+
#include <boost/math/special_functions/cbrt.hpp>
+#include <stan/agrad/rev/var.hpp>
+#include <stan/agrad/rev/internal/v_vari.hpp>
+
+

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+ + + + +

+Functions

var stan::agrad::cbrt (const stan::agrad::var &a)
 Returns the cube root of the specified variable (C99).
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/rev_2functions_2cbrt_8hpp_source.html b/doc/api/html/rev_2functions_2cbrt_8hpp_source.html new file mode 100644 index 00000000000..ff29191122f --- /dev/null +++ b/doc/api/html/rev_2functions_2cbrt_8hpp_source.html @@ -0,0 +1,136 @@ + + + + + +Stan: src/stan/agrad/rev/functions/cbrt.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
cbrt.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__REV__FUNCTIONS__CBRT_HPP__
+
2 #define __STAN__AGRAD__REV__FUNCTIONS__CBRT_HPP__
+
3 
+
4 #include <boost/math/special_functions/cbrt.hpp>
+
5 #include <stan/agrad/rev/var.hpp>
+ +
7 
+
8 namespace stan {
+
9  namespace agrad {
+
10 
+
11  namespace {
+
12  class cbrt_vari : public op_v_vari {
+
13  public:
+
14  cbrt_vari(vari* avi) :
+
15  op_v_vari(boost::math::cbrt(avi->val_),avi) {
+
16  }
+
17  void chain() {
+
18  avi_->adj_ += adj_ / (3.0 * val_ * val_);
+
19  }
+
20  };
+
21  }
+
22 
+
35  inline var cbrt(const stan::agrad::var& a) {
+
36  return var(new cbrt_vari(a.vi_));
+
37  }
+
38 
+
39  }
+
40 }
+
41 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/rev_2functions_2ceil_8hpp.html b/doc/api/html/rev_2functions_2ceil_8hpp.html new file mode 100644 index 00000000000..57e6bc2b7c1 --- /dev/null +++ b/doc/api/html/rev_2functions_2ceil_8hpp.html @@ -0,0 +1,131 @@ + + + + + +Stan: src/stan/agrad/rev/functions/ceil.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
ceil.hpp File Reference
+
+
+
#include <cmath>
+#include <stan/agrad/rev/var.hpp>
+#include <stan/agrad/rev/internal/v_vari.hpp>
+
+

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+ + + + +

+Functions

var stan::agrad::ceil (const var &a)
 Return the ceiling of the specified variable (cmath).
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/rev_2functions_2ceil_8hpp_source.html b/doc/api/html/rev_2functions_2ceil_8hpp_source.html new file mode 100644 index 00000000000..e48290b8718 --- /dev/null +++ b/doc/api/html/rev_2functions_2ceil_8hpp_source.html @@ -0,0 +1,133 @@ + + + + + +Stan: src/stan/agrad/rev/functions/ceil.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
ceil.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__REV__FUNCTIONS__CEIL_HPP__
+
2 #define __STAN__AGRAD__REV__FUNCTIONS__CEIL_HPP__
+
3 
+
4 #include <cmath>
+
5 #include <stan/agrad/rev/var.hpp>
+ +
7 
+
8 namespace stan {
+
9  namespace agrad {
+
10 
+
11  namespace {
+
12  class ceil_vari : public vari {
+
13  public:
+
14  ceil_vari(vari* avi) :
+
15  vari(std::ceil(avi->val_)) {
+
16  }
+
17  };
+
18  }
+
19 
+
38  inline var ceil(const var& a) {
+
39  return var(new ceil_vari(a.vi_));
+
40  }
+
41 
+
42  }
+
43 }
+
44 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/rev_2functions_2cos_8hpp.html b/doc/api/html/rev_2functions_2cos_8hpp.html new file mode 100644 index 00000000000..a6ee8b20b1f --- /dev/null +++ b/doc/api/html/rev_2functions_2cos_8hpp.html @@ -0,0 +1,131 @@ + + + + + +Stan: src/stan/agrad/rev/functions/cos.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
cos.hpp File Reference
+
+
+
#include <cmath>
+#include <stan/agrad/rev/var.hpp>
+#include <stan/agrad/rev/internal/v_vari.hpp>
+
+

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+ + + + +

+Functions

var stan::agrad::cos (const var &a)
 Return the cosine of a radian-scaled variable (cmath).
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/rev_2functions_2cos_8hpp_source.html b/doc/api/html/rev_2functions_2cos_8hpp_source.html new file mode 100644 index 00000000000..63595142a89 --- /dev/null +++ b/doc/api/html/rev_2functions_2cos_8hpp_source.html @@ -0,0 +1,136 @@ + + + + + +Stan: src/stan/agrad/rev/functions/cos.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
cos.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__REV__FUNCTIONS__COS_HPP__
+
2 #define __STAN__AGRAD__REV__FUNCTIONS__COS_HPP__
+
3 
+
4 #include <cmath>
+
5 #include <stan/agrad/rev/var.hpp>
+ +
7 
+
8 namespace stan {
+
9  namespace agrad {
+
10 
+
11  namespace {
+
12  class cos_vari : public op_v_vari {
+
13  public:
+
14  cos_vari(vari* avi) :
+
15  op_v_vari(std::cos(avi->val_),avi) {
+
16  }
+
17  void chain() {
+
18  avi_->adj_ -= adj_ * std::sin(avi_->val_);
+
19  }
+
20  };
+
21  }
+
22 
+
33  inline var cos(const var& a) {
+
34  return var(new cos_vari(a.vi_));
+
35  }
+
36 
+
37  }
+
38 }
+
39 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/rev_2functions_2cosh_8hpp.html b/doc/api/html/rev_2functions_2cosh_8hpp.html new file mode 100644 index 00000000000..3c2fb48384f --- /dev/null +++ b/doc/api/html/rev_2functions_2cosh_8hpp.html @@ -0,0 +1,131 @@ + + + + + +Stan: src/stan/agrad/rev/functions/cosh.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
cosh.hpp File Reference
+
+
+
#include <valarray>
+#include <stan/agrad/rev/var.hpp>
+#include <stan/agrad/rev/internal/v_vari.hpp>
+
+

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+ + + + +

+Functions

var stan::agrad::cosh (const var &a)
 Return the hyperbolic cosine of the specified variable (cmath).
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/rev_2functions_2cosh_8hpp_source.html b/doc/api/html/rev_2functions_2cosh_8hpp_source.html new file mode 100644 index 00000000000..b689095531b --- /dev/null +++ b/doc/api/html/rev_2functions_2cosh_8hpp_source.html @@ -0,0 +1,136 @@ + + + + + +Stan: src/stan/agrad/rev/functions/cosh.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
cosh.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__REV__FUNCTIONS__COSH_HPP__
+
2 #define __STAN__AGRAD__REV__FUNCTIONS__COSH_HPP__
+
3 
+
4 #include <valarray>
+
5 #include <stan/agrad/rev/var.hpp>
+ +
7 
+
8 namespace stan {
+
9  namespace agrad {
+
10 
+
11  namespace {
+
12  class cosh_vari : public op_v_vari {
+
13  public:
+
14  cosh_vari(vari* avi) :
+
15  op_v_vari(std::cosh(avi->val_),avi) {
+
16  }
+
17  void chain() {
+
18  avi_->adj_ += adj_ * std::sinh(avi_->val_);
+
19  }
+
20  };
+
21  }
+
22 
+
33  inline var cosh(const var& a) {
+
34  return var(new cosh_vari(a.vi_));
+
35  }
+
36 
+
37  }
+
38 }
+
39 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/rev_2functions_2erf_8hpp.html b/doc/api/html/rev_2functions_2erf_8hpp.html new file mode 100644 index 00000000000..e1034f37cfe --- /dev/null +++ b/doc/api/html/rev_2functions_2erf_8hpp.html @@ -0,0 +1,133 @@ + + + + + +Stan: src/stan/agrad/rev/functions/erf.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
erf.hpp File Reference
+
+
+
#include <valarray>
+#include <boost/math/special_functions/erf.hpp>
+#include <stan/agrad/rev/var.hpp>
+#include <stan/agrad/rev/internal/v_vari.hpp>
+#include <stan/math/constants.hpp>
+
+

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+ + + + +

+Functions

var stan::agrad::erf (const stan::agrad::var &a)
 The error function for variables (C99).
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/rev_2functions_2erf_8hpp_source.html b/doc/api/html/rev_2functions_2erf_8hpp_source.html new file mode 100644 index 00000000000..7e9a7963175 --- /dev/null +++ b/doc/api/html/rev_2functions_2erf_8hpp_source.html @@ -0,0 +1,138 @@ + + + + + +Stan: src/stan/agrad/rev/functions/erf.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
erf.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__REV__FUNCTIONS__ERF_HPP__
+
2 #define __STAN__AGRAD__REV__FUNCTIONS__ERF_HPP__
+
3 
+
4 #include <valarray>
+
5 #include <boost/math/special_functions/erf.hpp>
+
6 #include <stan/agrad/rev/var.hpp>
+ + +
9 
+
10 namespace stan {
+
11  namespace agrad {
+
12 
+
13  namespace {
+
14  class erf_vari : public op_v_vari {
+
15  public:
+
16  erf_vari(vari* avi) :
+
17  op_v_vari(boost::math::erf(avi->val_),avi) {
+
18  }
+
19  void chain() {
+
20  avi_->adj_ += adj_ * stan::math::TWO_OVER_SQRT_PI * std::exp(- avi_->val_ * avi_->val_);
+
21  }
+
22  };
+
23  }
+
24 
+
37  inline var erf(const stan::agrad::var& a) {
+
38  return var(new erf_vari(a.vi_));
+
39  }
+
40 
+
41  }
+
42 }
+
43 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/rev_2functions_2erfc_8hpp.html b/doc/api/html/rev_2functions_2erfc_8hpp.html new file mode 100644 index 00000000000..6ab89ba31b6 --- /dev/null +++ b/doc/api/html/rev_2functions_2erfc_8hpp.html @@ -0,0 +1,133 @@ + + + + + +Stan: src/stan/agrad/rev/functions/erfc.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
erfc.hpp File Reference
+
+
+
#include <valarray>
+#include <boost/math/special_functions/erf.hpp>
+#include <stan/agrad/rev/var.hpp>
+#include <stan/agrad/rev/internal/v_vari.hpp>
+#include <stan/math/constants.hpp>
+
+

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+ + + + +

+Functions

var stan::agrad::erfc (const stan::agrad::var &a)
 The complementary error function for variables (C99).
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/rev_2functions_2erfc_8hpp_source.html b/doc/api/html/rev_2functions_2erfc_8hpp_source.html new file mode 100644 index 00000000000..f610375d382 --- /dev/null +++ b/doc/api/html/rev_2functions_2erfc_8hpp_source.html @@ -0,0 +1,138 @@ + + + + + +Stan: src/stan/agrad/rev/functions/erfc.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
erfc.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__REV__FUNCTIONS__ERFC_HPP__
+
2 #define __STAN__AGRAD__REV__FUNCTIONS__ERFC_HPP__
+
3 
+
4 #include <valarray>
+
5 #include <boost/math/special_functions/erf.hpp>
+
6 #include <stan/agrad/rev/var.hpp>
+ + +
9 
+
10 namespace stan {
+
11  namespace agrad {
+
12 
+
13  namespace {
+
14  class erfc_vari : public op_v_vari {
+
15  public:
+
16  erfc_vari(vari* avi) :
+
17  op_v_vari(boost::math::erfc(avi->val_),avi) {
+
18  }
+
19  void chain() {
+
20  avi_->adj_ += adj_ * stan::math::NEG_TWO_OVER_SQRT_PI * std::exp(- avi_->val_ * avi_->val_);
+
21  }
+
22  };
+
23  }
+
24 
+
37  inline var erfc(const stan::agrad::var& a) {
+
38  return var(new erfc_vari(a.vi_));
+
39  }
+
40 
+
41  }
+
42 }
+
43 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/rev_2functions_2expm1_8hpp.html b/doc/api/html/rev_2functions_2expm1_8hpp.html new file mode 100644 index 00000000000..95e46b69fb0 --- /dev/null +++ b/doc/api/html/rev_2functions_2expm1_8hpp.html @@ -0,0 +1,132 @@ + + + + + +Stan: src/stan/agrad/rev/functions/expm1.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
expm1.hpp File Reference
+
+
+
#include <valarray>
+#include <stan/agrad/rev/var.hpp>
+#include <stan/agrad/rev/internal/v_vari.hpp>
+#include <stan/math/constants.hpp>
+
+

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+ + + + +

+Functions

var stan::agrad::expm1 (const stan::agrad::var &a)
 The exponentiation of the specified variable minus 1 (C99).
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/rev_2functions_2expm1_8hpp_source.html b/doc/api/html/rev_2functions_2expm1_8hpp_source.html new file mode 100644 index 00000000000..8247ead7769 --- /dev/null +++ b/doc/api/html/rev_2functions_2expm1_8hpp_source.html @@ -0,0 +1,137 @@ + + + + + +Stan: src/stan/agrad/rev/functions/expm1.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
expm1.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__REV__FUNCTIONS__EXPM1_HPP__
+
2 #define __STAN__AGRAD__REV__FUNCTIONS__EXPM1_HPP__
+
3 
+
4 #include <valarray>
+
5 #include <stan/agrad/rev/var.hpp>
+ + +
8 
+
9 namespace stan {
+
10  namespace agrad {
+
11 
+
12  namespace {
+
13  class expm1_vari : public op_v_vari {
+
14  public:
+
15  expm1_vari(vari* avi) :
+
16  op_v_vari(std::exp(avi->val_) - 1.0,avi) {
+
17  }
+
18  void chain() {
+
19  avi_->adj_ += adj_ * (val_ + 1.0);
+
20  }
+
21  };
+
22  }
+
23 
+
36  inline var expm1(const stan::agrad::var& a) {
+
37  return var(new expm1_vari(a.vi_));
+
38  }
+
39 
+
40  }
+
41 }
+
42 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/rev_2functions_2fabs_8hpp.html b/doc/api/html/rev_2functions_2fabs_8hpp.html new file mode 100644 index 00000000000..9fe7bddee67 --- /dev/null +++ b/doc/api/html/rev_2functions_2fabs_8hpp.html @@ -0,0 +1,133 @@ + + + + + +Stan: src/stan/agrad/rev/functions/fabs.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
fabs.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+ + + + +

+Functions

var stan::agrad::fabs (const var &a)
 Return the absolute value of the variable (cmath).
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/rev_2functions_2fabs_8hpp_source.html b/doc/api/html/rev_2functions_2fabs_8hpp_source.html new file mode 100644 index 00000000000..2380983dbdc --- /dev/null +++ b/doc/api/html/rev_2functions_2fabs_8hpp_source.html @@ -0,0 +1,136 @@ + + + + + +Stan: src/stan/agrad/rev/functions/fabs.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
fabs.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__REV__FUNCTIONS__FABS_HPP__
+
2 #define __STAN__AGRAD__REV__FUNCTIONS__FABS_HPP__
+
3 
+
4 #include <stan/agrad/rev/var.hpp>
+ + + + +
9 
+
10 
+
11 namespace stan {
+
12  namespace agrad {
+
13 
+
34  inline var fabs(const var& a) {
+ +
36  // cut-and-paste from abs()
+
37  if (a.val() > 0.0)
+
38  return a;
+
39  else if (a.val() < 0.0)
+
40  return var(new neg_vari(a.vi_));
+
41  else if (a.val() == 0)
+
42  return var(new vari(0));
+
43  else
+
44  return var(new precomp_v_vari(NOT_A_NUMBER,a.vi_,NOT_A_NUMBER));
+
45  }
+
46 
+
47  }
+
48 }
+
49 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/rev_2functions_2floor_8hpp.html b/doc/api/html/rev_2functions_2floor_8hpp.html new file mode 100644 index 00000000000..43e0e5345d1 --- /dev/null +++ b/doc/api/html/rev_2functions_2floor_8hpp.html @@ -0,0 +1,131 @@ + + + + + +Stan: src/stan/agrad/rev/functions/floor.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
floor.hpp File Reference
+
+
+
#include <cmath>
+#include <stan/agrad/rev/var.hpp>
+#include <stan/agrad/rev/internal/v_vari.hpp>
+
+

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+ + + + +

+Functions

var stan::agrad::floor (const var &a)
 Return the floor of the specified variable (cmath).
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/rev_2functions_2floor_8hpp_source.html b/doc/api/html/rev_2functions_2floor_8hpp_source.html new file mode 100644 index 00000000000..5879f7cfbce --- /dev/null +++ b/doc/api/html/rev_2functions_2floor_8hpp_source.html @@ -0,0 +1,133 @@ + + + + + +Stan: src/stan/agrad/rev/functions/floor.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
floor.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__REV__FUNCTIONS__FLOOR_HPP__
+
2 #define __STAN__AGRAD__REV__FUNCTIONS__FLOOR_HPP__
+
3 
+
4 #include <cmath>
+
5 #include <stan/agrad/rev/var.hpp>
+ +
7 
+
8 namespace stan {
+
9  namespace agrad {
+
10 
+
11  namespace {
+
12  class floor_vari : public vari {
+
13  public:
+
14  floor_vari(vari* avi) :
+
15  vari(std::floor(avi->val_)) {
+
16  }
+
17  };
+
18  }
+
19 
+
38  inline var floor(const var& a) {
+
39  return var(new floor_vari(a.vi_));
+
40  }
+
41 
+
42  }
+
43 }
+
44 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/rev_2functions_2fmax_8hpp.html b/doc/api/html/rev_2functions_2fmax_8hpp.html new file mode 100644 index 00000000000..6fb2a299b4a --- /dev/null +++ b/doc/api/html/rev_2functions_2fmax_8hpp.html @@ -0,0 +1,135 @@ + + + + + +Stan: src/stan/agrad/rev/functions/fmax.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
fmax.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+ + + + + + + + + + +

+Functions

var stan::agrad::fmax (const stan::agrad::var &a, const stan::agrad::var &b)
 Returns the maximum of the two variable arguments (C99).
 
var stan::agrad::fmax (const stan::agrad::var &a, const double &b)
 Returns the maximum of the variable and scalar, promoting the scalar to a variable if it is larger (C99).
 
var stan::agrad::fmax (const double &a, const stan::agrad::var &b)
 Returns the maximum of a scalar and variable, promoting the scalar to a variable if it is larger (C99).
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/rev_2functions_2fmax_8hpp_source.html b/doc/api/html/rev_2functions_2fmax_8hpp_source.html new file mode 100644 index 00000000000..c37ff18d008 --- /dev/null +++ b/doc/api/html/rev_2functions_2fmax_8hpp_source.html @@ -0,0 +1,133 @@ + + + + + +Stan: src/stan/agrad/rev/functions/fmax.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
fmax.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__REV__FUNCTIONS__FMAX_HPP__
+
2 #define __STAN__AGRAD__REV__FUNCTIONS__FMAX_HPP__
+
3 
+
4 #include <stan/agrad/rev/var.hpp>
+
5 
+
6 namespace stan {
+
7  namespace agrad {
+
8 
+
26  inline var fmax(const stan::agrad::var& a,
+
27  const stan::agrad::var& b) {
+
28  return a.vi_->val_ > b.vi_->val_ ? a : b;
+
29  }
+
30 
+
47  inline var fmax(const stan::agrad::var& a,
+
48  const double& b) {
+
49  return a.vi_->val_ >= b ? a : var(b);
+
50  }
+
51 
+
68  inline var fmax(const double& a,
+
69  const stan::agrad::var& b) {
+
70  return a > b.vi_->val_ ? var(a) : b;
+
71  }
+
72 
+
73  }
+
74 }
+
75 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/rev_2functions_2fmin_8hpp.html b/doc/api/html/rev_2functions_2fmin_8hpp.html new file mode 100644 index 00000000000..68ea132180e --- /dev/null +++ b/doc/api/html/rev_2functions_2fmin_8hpp.html @@ -0,0 +1,135 @@ + + + + + +Stan: src/stan/agrad/rev/functions/fmin.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
fmin.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+ + + + + + + + + + +

+Functions

var stan::agrad::fmin (const stan::agrad::var &a, const stan::agrad::var &b)
 Returns the minimum of the two variable arguments (C99).
 
var stan::agrad::fmin (const stan::agrad::var &a, const double &b)
 Returns the minimum of the variable and scalar, promoting the scalar to a variable if it is larger (C99).
 
var stan::agrad::fmin (const double &a, const stan::agrad::var &b)
 Returns the minimum of a scalar and variable, promoting the scalar to a variable if it is larger (C99).
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/rev_2functions_2fmin_8hpp_source.html b/doc/api/html/rev_2functions_2fmin_8hpp_source.html new file mode 100644 index 00000000000..99a966f0c36 --- /dev/null +++ b/doc/api/html/rev_2functions_2fmin_8hpp_source.html @@ -0,0 +1,133 @@ + + + + + +Stan: src/stan/agrad/rev/functions/fmin.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
fmin.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__REV__FUNCTIONS__FMIN_HPP__
+
2 #define __STAN__AGRAD__REV__FUNCTIONS__FMIN_HPP__
+
3 
+
4 #include <stan/agrad/rev/var.hpp>
+
5 
+
6 namespace stan {
+
7  namespace agrad {
+
8 
+
22  inline var fmin(const stan::agrad::var& a,
+
23  const stan::agrad::var& b) {
+
24  return a.vi_->val_ < b.vi_->val_ ? a : b;
+
25  }
+
26 
+
41  inline var fmin(const stan::agrad::var& a,
+
42  const double& b) {
+
43  return a.vi_->val_ <= b ? a : var(b);
+
44  }
+
45 
+
62  inline var fmin(const double& a,
+
63  const stan::agrad::var& b) {
+
64  return a < b.vi_->val_ ? var(a) : b;
+
65  }
+
66 
+
67  }
+
68 }
+
69 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/rev_2functions_2fmod_8hpp.html b/doc/api/html/rev_2functions_2fmod_8hpp.html new file mode 100644 index 00000000000..5752d033544 --- /dev/null +++ b/doc/api/html/rev_2functions_2fmod_8hpp.html @@ -0,0 +1,139 @@ + + + + + +Stan: src/stan/agrad/rev/functions/fmod.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
fmod.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+ + + + + + + + + + +

+Functions

var stan::agrad::fmod (const var &a, const var &b)
 Return the floating point remainder after dividing the first variable by the second (cmath).
 
var stan::agrad::fmod (const var &a, const double b)
 Return the floating point remainder after dividing the the first variable by the second scalar (cmath).
 
var stan::agrad::fmod (const double a, const var &b)
 Return the floating point remainder after dividing the first scalar by the second variable (cmath).
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/rev_2functions_2fmod_8hpp_source.html b/doc/api/html/rev_2functions_2fmod_8hpp_source.html new file mode 100644 index 00000000000..c646a134189 --- /dev/null +++ b/doc/api/html/rev_2functions_2fmod_8hpp_source.html @@ -0,0 +1,168 @@ + + + + + +Stan: src/stan/agrad/rev/functions/fmod.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
fmod.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__REV__FUNCTIONS__FMOD_HPP__
+
2 #define __STAN__AGRAD__REV__FUNCTIONS__FMOD_HPP__
+
3 
+
4 #include <cmath>
+
5 #include <stan/agrad/rev/var.hpp>
+ + + +
9 
+
10 namespace stan {
+
11  namespace agrad {
+
12 
+
13  namespace {
+
14  class fmod_vv_vari : public op_vv_vari {
+
15  public:
+
16  fmod_vv_vari(vari* avi, vari* bvi) :
+
17  op_vv_vari(std::fmod(avi->val_,bvi->val_),avi,bvi) {
+
18  }
+
19  void chain() {
+
20  avi_->adj_ += adj_;
+
21  bvi_->adj_ -= adj_ * static_cast<int>(avi_->val_ / bvi_->val_);
+
22  }
+
23  };
+
24 
+
25  class fmod_vd_vari : public op_v_vari {
+
26  public:
+
27  fmod_vd_vari(vari* avi, double b) :
+
28  op_v_vari(std::fmod(avi->val_,b),avi) {
+
29  }
+
30  void chain() {
+
31  avi_->adj_ += adj_;
+
32  }
+
33  };
+
34 
+
35  class fmod_dv_vari : public op_dv_vari {
+
36  public:
+
37  fmod_dv_vari(double a, vari* bvi) :
+
38  op_dv_vari(std::fmod(a,bvi->val_),a,bvi) {
+
39  }
+
40  void chain() {
+
41  int d = static_cast<int>(ad_ / bvi_->val_);
+
42  bvi_->adj_ -= adj_ * d;
+
43  }
+
44  };
+
45  }
+
46 
+
64  inline var fmod(const var& a, const var& b) {
+
65  return var(new fmod_vv_vari(a.vi_,b.vi_));
+
66  }
+
67 
+
81  inline var fmod(const var& a, const double b) {
+
82  return var(new fmod_vd_vari(a.vi_,b));
+
83  }
+
84 
+
98  inline var fmod(const double a, const var& b) {
+
99  return var(new fmod_dv_vari(a,b.vi_));
+
100  }
+
101 
+
102  }
+
103 }
+
104 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/rev_2functions_2hypot_8hpp.html b/doc/api/html/rev_2functions_2hypot_8hpp.html new file mode 100644 index 00000000000..74bca99a943 --- /dev/null +++ b/doc/api/html/rev_2functions_2hypot_8hpp.html @@ -0,0 +1,139 @@ + + + + + +Stan: src/stan/agrad/rev/functions/hypot.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
hypot.hpp File Reference
+
+
+
#include <valarray>
+#include <stan/agrad/rev/var.hpp>
+#include <stan/agrad/rev/internal/vv_vari.hpp>
+#include <stan/agrad/rev/internal/v_vari.hpp>
+#include <boost/math/special_functions/hypot.hpp>
+
+

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+ + + + + + + + + + +

+Functions

var stan::agrad::hypot (const stan::agrad::var &a, const stan::agrad::var &b)
 Returns the length of the hypoteneuse of a right triangle with sides of the specified lengths (C99).
 
var stan::agrad::hypot (const stan::agrad::var &a, const double &b)
 Returns the length of the hypoteneuse of a right triangle with sides of the specified lengths (C99).
 
var stan::agrad::hypot (const double &a, const stan::agrad::var &b)
 Returns the length of the hypoteneuse of a right triangle with sides of the specified lengths (C99).
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/rev_2functions_2hypot_8hpp_source.html b/doc/api/html/rev_2functions_2hypot_8hpp_source.html new file mode 100644 index 00000000000..a4a63b7d3c0 --- /dev/null +++ b/doc/api/html/rev_2functions_2hypot_8hpp_source.html @@ -0,0 +1,162 @@ + + + + + +Stan: src/stan/agrad/rev/functions/hypot.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
hypot.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__REV__FUNCTIONS__HYPOT_HPP__
+
2 #define __STAN__AGRAD__REV__FUNCTIONS__HYPOT_HPP__
+
3 
+
4 #include <valarray>
+
5 #include <stan/agrad/rev/var.hpp>
+ + +
8 #include <boost/math/special_functions/hypot.hpp>
+
9 
+
10 namespace stan {
+
11  namespace agrad {
+
12 
+
13  namespace {
+
14  class hypot_vv_vari : public op_vv_vari {
+
15  public:
+
16  hypot_vv_vari(vari* avi, vari* bvi) :
+
17  op_vv_vari(boost::math::hypot(avi->val_,bvi->val_),
+
18  avi,bvi) {
+
19  }
+
20  void chain() {
+
21  avi_->adj_ += adj_ * avi_->val_ / val_;
+
22  bvi_->adj_ += adj_ * bvi_->val_ / val_;
+
23  }
+
24  };
+
25 
+
26  class hypot_vd_vari : public op_v_vari {
+
27  public:
+
28  hypot_vd_vari(vari* avi, double b) :
+
29  op_v_vari(boost::math::hypot(avi->val_,b),
+
30  avi) {
+
31  }
+
32  void chain() {
+
33  avi_->adj_ += adj_ * avi_->val_ / val_;
+
34  }
+
35  };
+
36  }
+
37 
+
54  inline var hypot(const stan::agrad::var& a,
+
55  const stan::agrad::var& b) {
+
56  return var(new hypot_vv_vari(a.vi_,b.vi_));
+
57  }
+
58 
+
73  inline var hypot(const stan::agrad::var& a,
+
74  const double& b) {
+
75  return var(new hypot_vd_vari(a.vi_,b));
+
76  }
+
77 
+
92  inline var hypot(const double& a,
+
93  const stan::agrad::var& b) {
+
94  return var(new hypot_vd_vari(b.vi_,a));
+
95  }
+
96 
+
97  }
+
98 }
+
99 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/rev_2functions_2log10_8hpp.html b/doc/api/html/rev_2functions_2log10_8hpp.html new file mode 100644 index 00000000000..096f5ffcfa7 --- /dev/null +++ b/doc/api/html/rev_2functions_2log10_8hpp.html @@ -0,0 +1,155 @@ + + + + + +Stan: src/stan/agrad/rev/functions/log10.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
log10.hpp File Reference
+
+
+
#include <cmath>
+#include <stan/agrad/rev/var.hpp>
+#include <stan/agrad/rev/internal/v_vari.hpp>
+#include <stan/math/constants.hpp>
+
+

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+ + + + +

+Functions

var stan::agrad::log10 (const var &a)
 Return the base 10 log of the specified variable (cmath).
 
+

Variable Documentation

+ +
+
+ + + + + +
+ + + + +
const double exp_val_
+
+static
+
+ +

Definition at line 15 of file log10.hpp.

+ +
+
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/rev_2functions_2log10_8hpp_source.html b/doc/api/html/rev_2functions_2log10_8hpp_source.html new file mode 100644 index 00000000000..2cb9efa8922 --- /dev/null +++ b/doc/api/html/rev_2functions_2log10_8hpp_source.html @@ -0,0 +1,139 @@ + + + + + +Stan: src/stan/agrad/rev/functions/log10.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
log10.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__REV__FUNCTIONS__LOG10_HPP__
+
2 #define __STAN__AGRAD__REV__FUNCTIONS__LOG10_HPP__
+
3 
+
4 #include <cmath>
+
5 #include <stan/agrad/rev/var.hpp>
+ + +
8 
+
9 namespace stan {
+
10  namespace agrad {
+
11 
+
12  namespace {
+
13  class log10_vari : public op_v_vari {
+
14  public:
+
15  const double exp_val_;
+
16  log10_vari(vari* avi) :
+
17  op_v_vari(std::log10(avi->val_),avi),
+
18  exp_val_(avi->val_) {
+
19  }
+
20  void chain() {
+
21  avi_->adj_ += adj_ / (stan::math::LOG_10 * exp_val_);
+
22  }
+
23  };
+
24  }
+
25 
+
36  inline var log10(const var& a) {
+
37  return var(new log10_vari(a.vi_));
+
38  }
+
39 
+
40  }
+
41 }
+
42 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/rev_2functions_2pow_8hpp.html b/doc/api/html/rev_2functions_2pow_8hpp.html new file mode 100644 index 00000000000..a72e67c1653 --- /dev/null +++ b/doc/api/html/rev_2functions_2pow_8hpp.html @@ -0,0 +1,141 @@ + + + + + +Stan: src/stan/agrad/rev/functions/pow.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
pow.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+ + + + + + + + + + +

+Functions

var stan::agrad::pow (const var &base, const var &exponent)
 Return the base raised to the power of the exponent (cmath).
 
var stan::agrad::pow (const var &base, const double exponent)
 Return the base variable raised to the power of the exponent scalar (cmath).
 
var stan::agrad::pow (const double base, const var &exponent)
 Return the base scalar raised to the power of the exponent variable (cmath).
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/rev_2functions_2pow_8hpp_source.html b/doc/api/html/rev_2functions_2pow_8hpp_source.html new file mode 100644 index 00000000000..472dc662ace --- /dev/null +++ b/doc/api/html/rev_2functions_2pow_8hpp_source.html @@ -0,0 +1,178 @@ + + + + + +Stan: src/stan/agrad/rev/functions/pow.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
pow.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__REV__FUNCTIONS__POW_HPP__
+
2 #define __STAN__AGRAD__REV__FUNCTIONS__POW_HPP__
+
3 
+
4 #include <cmath>
+
5 #include <stan/agrad/rev/var.hpp>
+ + + + + +
11 
+
12 namespace stan {
+
13  namespace agrad {
+
14 
+
15  namespace {
+
16  class pow_vv_vari : public op_vv_vari {
+
17  public:
+
18  pow_vv_vari(vari* avi, vari* bvi) :
+
19  op_vv_vari(std::pow(avi->val_,bvi->val_),avi,bvi) {
+
20  }
+
21  void chain() {
+
22  if (avi_->val_ == 0.0) return; // partials zero, avoids 0 & log(0)
+
23  avi_->adj_ += adj_ * bvi_->val_ * val_ / avi_->val_;
+
24  bvi_->adj_ += adj_ * std::log(avi_->val_) * val_;
+
25  }
+
26  };
+
27 
+
28  class pow_vd_vari : public op_vd_vari {
+
29  public:
+
30  pow_vd_vari(vari* avi, double b) :
+
31  op_vd_vari(std::pow(avi->val_,b),avi,b) {
+
32  }
+
33  void chain() {
+
34  if (avi_->val_ == 0.0) return; // partials zero, avoids 0 & log(0)
+
35  avi_->adj_ += adj_ * bd_ * val_ / avi_->val_;
+
36  }
+
37  };
+
38 
+
39  class pow_dv_vari : public op_dv_vari {
+
40  public:
+
41  pow_dv_vari(double a, vari* bvi) :
+
42  op_dv_vari(std::pow(a,bvi->val_),a,bvi) {
+
43  }
+
44  void chain() {
+
45  if (ad_ == 0.0) return; // partials zero, avoids 0 & log(0)
+
46  bvi_->adj_ += adj_ * std::log(ad_) * val_;
+
47  }
+
48  };
+
49  }
+
50 
+
64  inline var pow(const var& base, const var& exponent) {
+
65  return var(new pow_vv_vari(base.vi_,exponent.vi_));
+
66  }
+
67 
+
80  inline var pow(const var& base, const double exponent) {
+
81  if (exponent == 0.5)
+
82  return sqrt(base);
+
83  if (exponent == 1.0)
+
84  return base;
+
85  if (exponent == 2.0)
+
86  return base * base; // FIXME: square() functionality from special_functions
+
87  return var(new pow_vd_vari(base.vi_,exponent));
+
88  }
+
89 
+
102  inline var pow(const double base, const var& exponent) {
+
103  return var(new pow_dv_vari(base,exponent.vi_));
+
104  }
+
105 
+
106  }
+
107 }
+
108 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/rev_2functions_2round_8hpp.html b/doc/api/html/rev_2functions_2round_8hpp.html new file mode 100644 index 00000000000..97071658fa0 --- /dev/null +++ b/doc/api/html/rev_2functions_2round_8hpp.html @@ -0,0 +1,131 @@ + + + + + +Stan: src/stan/agrad/rev/functions/round.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
round.hpp File Reference
+
+
+
#include <boost/math/special_functions/round.hpp>
+#include <stan/agrad/rev/var.hpp>
+#include <stan/agrad/rev/vari.hpp>
+
+

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+ + + + +

+Functions

var stan::agrad::round (const stan::agrad::var &a)
 Returns the rounded form of the specified variable (C99).
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/rev_2functions_2round_8hpp_source.html b/doc/api/html/rev_2functions_2round_8hpp_source.html new file mode 100644 index 00000000000..21f98211f21 --- /dev/null +++ b/doc/api/html/rev_2functions_2round_8hpp_source.html @@ -0,0 +1,134 @@ + + + + + +Stan: src/stan/agrad/rev/functions/round.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
round.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__REV__FUNCTIONS__ROUND_HPP__
+
2 #define __STAN__AGRAD__REV__FUNCTIONS__ROUND_HPP__
+
3 
+
4 #include <boost/math/special_functions/round.hpp>
+
5 #include <stan/agrad/rev/var.hpp>
+ +
7 
+
8 namespace stan {
+
9  namespace agrad {
+
10 
+
11  namespace {
+
12  // derivative 0 almost everywhere
+
13  class round_vari : public vari {
+
14  public:
+
15  round_vari(vari* avi) :
+
16  vari(boost::math::round(avi->val_)) {
+
17  }
+
18  };
+
19  }
+
20 
+
35  inline var round(const stan::agrad::var& a) {
+
36  return var(new round_vari(a.vi_));
+
37  }
+
38 
+
39  }
+
40 }
+
41 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/rev_2functions_2sin_8hpp.html b/doc/api/html/rev_2functions_2sin_8hpp.html new file mode 100644 index 00000000000..d555af2ffd6 --- /dev/null +++ b/doc/api/html/rev_2functions_2sin_8hpp.html @@ -0,0 +1,131 @@ + + + + + +Stan: src/stan/agrad/rev/functions/sin.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
sin.hpp File Reference
+
+
+
#include <cmath>
+#include <stan/agrad/rev/var.hpp>
+#include <stan/agrad/rev/internal/v_vari.hpp>
+
+

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+ + + + +

+Functions

var stan::agrad::sin (const var &a)
 Return the sine of a radian-scaled variable (cmath).
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/rev_2functions_2sin_8hpp_source.html b/doc/api/html/rev_2functions_2sin_8hpp_source.html new file mode 100644 index 00000000000..86ca49ea736 --- /dev/null +++ b/doc/api/html/rev_2functions_2sin_8hpp_source.html @@ -0,0 +1,136 @@ + + + + + +Stan: src/stan/agrad/rev/functions/sin.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
sin.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__REV__FUNCTIONS__SIN_HPP__
+
2 #define __STAN__AGRAD__REV__FUNCTIONS__SIN_HPP__
+
3 
+
4 #include <cmath>
+
5 #include <stan/agrad/rev/var.hpp>
+ +
7 
+
8 namespace stan {
+
9  namespace agrad {
+
10 
+
11  namespace {
+
12  class sin_vari : public op_v_vari {
+
13  public:
+
14  sin_vari(vari* avi) :
+
15  op_v_vari(std::sin(avi->val_),avi) {
+
16  }
+
17  void chain() {
+
18  avi_->adj_ += adj_ * std::cos(avi_->val_);
+
19  }
+
20  };
+
21  }
+
22 
+
33  inline var sin(const var& a) {
+
34  return var(new sin_vari(a.vi_));
+
35  }
+
36 
+
37  }
+
38 }
+
39 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/rev_2functions_2sinh_8hpp.html b/doc/api/html/rev_2functions_2sinh_8hpp.html new file mode 100644 index 00000000000..c64506e480b --- /dev/null +++ b/doc/api/html/rev_2functions_2sinh_8hpp.html @@ -0,0 +1,131 @@ + + + + + +Stan: src/stan/agrad/rev/functions/sinh.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
sinh.hpp File Reference
+
+
+
#include <valarray>
+#include <stan/agrad/rev/var.hpp>
+#include <stan/agrad/rev/internal/v_vari.hpp>
+
+

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+ + + + +

+Functions

var stan::agrad::sinh (const var &a)
 Return the hyperbolic sine of the specified variable (cmath).
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/rev_2functions_2sinh_8hpp_source.html b/doc/api/html/rev_2functions_2sinh_8hpp_source.html new file mode 100644 index 00000000000..9dddf759089 --- /dev/null +++ b/doc/api/html/rev_2functions_2sinh_8hpp_source.html @@ -0,0 +1,136 @@ + + + + + +Stan: src/stan/agrad/rev/functions/sinh.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
sinh.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__REV__FUNCTIONS__SINH_HPP__
+
2 #define __STAN__AGRAD__REV__FUNCTIONS__SINH_HPP__
+
3 
+
4 #include <valarray>
+
5 #include <stan/agrad/rev/var.hpp>
+ +
7 
+
8 namespace stan {
+
9  namespace agrad {
+
10 
+
11  namespace {
+
12  class sinh_vari : public op_v_vari {
+
13  public:
+
14  sinh_vari(vari* avi) :
+
15  op_v_vari(std::sinh(avi->val_),avi) {
+
16  }
+
17  void chain() {
+
18  avi_->adj_ += adj_ * std::cosh(avi_->val_);
+
19  }
+
20  };
+
21  }
+
22 
+
33  inline var sinh(const var& a) {
+
34  return var(new sinh_vari(a.vi_));
+
35  }
+
36 
+
37  }
+
38 }
+
39 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/rev_2functions_2sqrt_8hpp.html b/doc/api/html/rev_2functions_2sqrt_8hpp.html new file mode 100644 index 00000000000..68ebd3a67f5 --- /dev/null +++ b/doc/api/html/rev_2functions_2sqrt_8hpp.html @@ -0,0 +1,131 @@ + + + + + +Stan: src/stan/agrad/rev/functions/sqrt.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
sqrt.hpp File Reference
+
+
+
#include <cmath>
+#include <stan/agrad/rev/var.hpp>
+#include <stan/agrad/rev/internal/v_vari.hpp>
+
+

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+ + + + +

+Functions

var stan::agrad::sqrt (const var &a)
 Return the square root of the specified variable (cmath).
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/rev_2functions_2sqrt_8hpp_source.html b/doc/api/html/rev_2functions_2sqrt_8hpp_source.html new file mode 100644 index 00000000000..8ff6da101d5 --- /dev/null +++ b/doc/api/html/rev_2functions_2sqrt_8hpp_source.html @@ -0,0 +1,136 @@ + + + + + +Stan: src/stan/agrad/rev/functions/sqrt.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
sqrt.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__REV__FUNCTIONS__SQRT_HPP__
+
2 #define __STAN__AGRAD__REV__FUNCTIONS__SQRT_HPP__
+
3 
+
4 #include <cmath>
+
5 #include <stan/agrad/rev/var.hpp>
+ +
7 
+
8 namespace stan {
+
9  namespace agrad {
+
10 
+
11  namespace {
+
12  class sqrt_vari : public op_v_vari {
+
13  public:
+
14  sqrt_vari(vari* avi) :
+
15  op_v_vari(std::sqrt(avi->val_),avi) {
+
16  }
+
17  void chain() {
+
18  avi_->adj_ += adj_ / (2.0 * val_);
+
19  }
+
20  };
+
21  }
+
22 
+
33  inline var sqrt(const var& a) {
+
34  return var(new sqrt_vari(a.vi_));
+
35  }
+
36 
+
37  }
+
38 }
+
39 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/rev_2functions_2tan_8hpp.html b/doc/api/html/rev_2functions_2tan_8hpp.html new file mode 100644 index 00000000000..c5a381b7dfa --- /dev/null +++ b/doc/api/html/rev_2functions_2tan_8hpp.html @@ -0,0 +1,131 @@ + + + + + +Stan: src/stan/agrad/rev/functions/tan.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
tan.hpp File Reference
+
+
+
#include <cmath>
+#include <stan/agrad/rev/var.hpp>
+#include <stan/agrad/rev/internal/v_vari.hpp>
+
+

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+ + + + +

+Functions

var stan::agrad::tan (const var &a)
 Return the tangent of a radian-scaled variable (cmath).
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/rev_2functions_2tan_8hpp_source.html b/doc/api/html/rev_2functions_2tan_8hpp_source.html new file mode 100644 index 00000000000..a9a559eee3e --- /dev/null +++ b/doc/api/html/rev_2functions_2tan_8hpp_source.html @@ -0,0 +1,136 @@ + + + + + +Stan: src/stan/agrad/rev/functions/tan.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
tan.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__REV__FUNCTIONS__TAN_HPP__
+
2 #define __STAN__AGRAD__REV__FUNCTIONS__TAN_HPP__
+
3 
+
4 #include <cmath>
+
5 #include <stan/agrad/rev/var.hpp>
+ +
7 
+
8 namespace stan {
+
9  namespace agrad {
+
10 
+
11  namespace {
+
12  class tan_vari : public op_v_vari {
+
13  public:
+
14  tan_vari(vari* avi) :
+
15  op_v_vari(std::tan(avi->val_),avi) {
+
16  }
+
17  void chain() {
+
18  avi_->adj_ += adj_ * (1.0 + val_ * val_);
+
19  }
+
20  };
+
21  }
+
22 
+
33  inline var tan(const var& a) {
+
34  return var(new tan_vari(a.vi_));
+
35  }
+
36 
+
37  }
+
38 }
+
39 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/rev_2functions_2tanh_8hpp.html b/doc/api/html/rev_2functions_2tanh_8hpp.html new file mode 100644 index 00000000000..f6de8ff3e95 --- /dev/null +++ b/doc/api/html/rev_2functions_2tanh_8hpp.html @@ -0,0 +1,131 @@ + + + + + +Stan: src/stan/agrad/rev/functions/tanh.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
tanh.hpp File Reference
+
+
+
#include <cmath>
+#include <stan/agrad/rev/var.hpp>
+#include <stan/agrad/rev/internal/v_vari.hpp>
+
+

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+ + + + +

+Functions

var stan::agrad::tanh (const var &a)
 Return the hyperbolic tangent of the specified variable (cmath).
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/rev_2functions_2tanh_8hpp_source.html b/doc/api/html/rev_2functions_2tanh_8hpp_source.html new file mode 100644 index 00000000000..7bfe9895b2e --- /dev/null +++ b/doc/api/html/rev_2functions_2tanh_8hpp_source.html @@ -0,0 +1,137 @@ + + + + + +Stan: src/stan/agrad/rev/functions/tanh.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
tanh.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__REV__FUNCTIONS__TANH_HPP__
+
2 #define __STAN__AGRAD__REV__FUNCTIONS__TANH_HPP__
+
3 
+
4 #include <cmath>
+
5 #include <stan/agrad/rev/var.hpp>
+ +
7 
+
8 namespace stan {
+
9  namespace agrad {
+
10 
+
11  namespace {
+
12  class tanh_vari : public op_v_vari {
+
13  public:
+
14  tanh_vari(vari* avi) :
+
15  op_v_vari(std::tanh(avi->val_),avi) {
+
16  }
+
17  void chain() {
+
18  double cosh = std::cosh(avi_->val_);
+
19  avi_->adj_ += adj_ / (cosh * cosh);
+
20  }
+
21  };
+
22  }
+
23 
+
34  inline var tanh(const var& a) {
+
35  return var(new tanh_vari(a.vi_));
+
36  }
+
37 
+
38  }
+
39 }
+
40 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/rev_2functions_2tgamma_8hpp.html b/doc/api/html/rev_2functions_2tgamma_8hpp.html new file mode 100644 index 00000000000..17ed696dd12 --- /dev/null +++ b/doc/api/html/rev_2functions_2tgamma_8hpp.html @@ -0,0 +1,131 @@ + + + + + +Stan: src/stan/agrad/rev/functions/tgamma.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
tgamma.hpp File Reference
+
+
+
#include <boost/math/special_functions/digamma.hpp>
+#include <stan/agrad/rev/var.hpp>
+#include <stan/agrad/rev/internal/v_vari.hpp>
+
+

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+ + + + +

+Functions

var stan::agrad::tgamma (const stan::agrad::var &a)
 Return the Gamma function applied to the specified variable (C99).
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/rev_2functions_2tgamma_8hpp_source.html b/doc/api/html/rev_2functions_2tgamma_8hpp_source.html new file mode 100644 index 00000000000..968b1894ef7 --- /dev/null +++ b/doc/api/html/rev_2functions_2tgamma_8hpp_source.html @@ -0,0 +1,136 @@ + + + + + +Stan: src/stan/agrad/rev/functions/tgamma.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
tgamma.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__REV__FUNCTIONS__TGAMMA_HPP__
+
2 #define __STAN__AGRAD__REV__FUNCTIONS__TGAMMA_HPP__
+
3 
+
4 #include <boost/math/special_functions/digamma.hpp>
+
5 #include <stan/agrad/rev/var.hpp>
+ +
7 
+
8 namespace stan {
+
9  namespace agrad {
+
10 
+
11  namespace {
+
12  class tgamma_vari : public op_v_vari {
+
13  public:
+
14  tgamma_vari(vari* avi) :
+
15  op_v_vari(boost::math::tgamma(avi->val_), avi) {
+
16  }
+
17  void chain() {
+
18  avi_->adj_ += adj_ * val_ * boost::math::digamma(avi_->val_);
+
19  }
+
20  };
+
21  }
+
22 
+
39  inline var tgamma(const stan::agrad::var& a) {
+
40  return var(new tgamma_vari(a.vi_));
+
41  }
+
42 
+
43  }
+
44 }
+
45 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/rev_2functions_2trunc_8hpp.html b/doc/api/html/rev_2functions_2trunc_8hpp.html new file mode 100644 index 00000000000..c2127aafe17 --- /dev/null +++ b/doc/api/html/rev_2functions_2trunc_8hpp.html @@ -0,0 +1,131 @@ + + + + + +Stan: src/stan/agrad/rev/functions/trunc.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
trunc.hpp File Reference
+
+
+
#include <boost/math/special_functions/trunc.hpp>
+#include <stan/agrad/rev/var.hpp>
+#include <stan/agrad/rev/vari.hpp>
+
+

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+ + + + +

+Functions

var stan::agrad::trunc (const stan::agrad::var &a)
 Returns the truncatation of the specified variable (C99).
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/rev_2functions_2trunc_8hpp_source.html b/doc/api/html/rev_2functions_2trunc_8hpp_source.html new file mode 100644 index 00000000000..d4d07c6b3b2 --- /dev/null +++ b/doc/api/html/rev_2functions_2trunc_8hpp_source.html @@ -0,0 +1,134 @@ + + + + + +Stan: src/stan/agrad/rev/functions/trunc.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
trunc.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__REV__FUNCTIONS__TRUNC_HPP__
+
2 #define __STAN__AGRAD__REV__FUNCTIONS__TRUNC_HPP__
+
3 
+
4 #include <boost/math/special_functions/trunc.hpp>
+
5 #include <stan/agrad/rev/var.hpp>
+ +
7 
+
8 namespace stan {
+
9  namespace agrad {
+
10 
+
11  namespace {
+
12  // derivative 0 almost everywhere
+
13  class trunc_vari : public vari {
+
14  public:
+
15  trunc_vari(vari* avi) :
+
16  vari(boost::math::trunc(avi->val_)) {
+
17  }
+
18  };
+
19  }
+
20 
+
34  inline var trunc(const stan::agrad::var& a) {
+
35  return var(new trunc_vari(a.vi_));
+
36  }
+
37 
+
38  }
+
39 }
+
40 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/rev_2numeric__limits_8hpp.html b/doc/api/html/rev_2numeric__limits_8hpp.html new file mode 100644 index 00000000000..0778fe803fd --- /dev/null +++ b/doc/api/html/rev_2numeric__limits_8hpp.html @@ -0,0 +1,137 @@ + + + + + +Stan: src/stan/agrad/rev/numeric_limits.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
numeric_limits.hpp File Reference
+
+
+
#include <limits>
+#include <stan/agrad/rev/var.hpp>
+
+

Go to the source code of this file.

+ + + + + +

+Classes

struct  std::numeric_limits< stan::agrad::var >
 Specialization of numeric limits for var objects. More...
 
+ + + + +

+Namespaces

namespace  std
 Template specification of functions in std for Stan.
 
+ + + + + + + +

+Functions

int std::isnan (const stan::agrad::var &a)
 Checks if the given number is NaN.
 
int std::isinf (const stan::agrad::var &a)
 Checks if the given number is infinite.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/rev_2numeric__limits_8hpp_source.html b/doc/api/html/rev_2numeric__limits_8hpp_source.html new file mode 100644 index 00000000000..db0637dbd46 --- /dev/null +++ b/doc/api/html/rev_2numeric__limits_8hpp_source.html @@ -0,0 +1,163 @@ + + + + + +Stan: src/stan/agrad/rev/numeric_limits.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
numeric_limits.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__REV__NUMERIC_LIMITS_HPP__
+
2 #define __STAN__AGRAD__REV__NUMERIC_LIMITS_HPP__
+
3 
+
4 #include <limits>
+
5 #include <stan/agrad/rev/var.hpp>
+
6 
+
7 namespace std {
+
8 
+
15  template<>
+
16  struct numeric_limits<stan::agrad::var> {
+
17  static const bool is_specialized = true;
+ + +
20  static const int digits = numeric_limits<double>::digits;
+
21  static const int digits10 = numeric_limits<double>::digits10;
+
22  static const bool is_signed = numeric_limits<double>::is_signed;
+
23  static const bool is_integer = numeric_limits<double>::is_integer;
+
24  static const bool is_exact = numeric_limits<double>::is_exact;
+
25  static const int radix = numeric_limits<double>::radix;
+
26  static stan::agrad::var epsilon() { return numeric_limits<double>::epsilon(); }
+
27  static stan::agrad::var round_error() { return numeric_limits<double>::round_error(); }
+
28 
+
29  static const int min_exponent = numeric_limits<double>::min_exponent;
+
30  static const int min_exponent10 = numeric_limits<double>::min_exponent10;
+
31  static const int max_exponent = numeric_limits<double>::max_exponent;
+
32  static const int max_exponent10 = numeric_limits<double>::max_exponent10;
+
33 
+
34  static const bool has_infinity = numeric_limits<double>::has_infinity;
+
35  static const bool has_quiet_NaN = numeric_limits<double>::has_quiet_NaN;
+
36  static const bool has_signaling_NaN = numeric_limits<double>::has_signaling_NaN;
+
37  static const float_denorm_style has_denorm = numeric_limits<double>::has_denorm;
+
38  static const bool has_denorm_loss = numeric_limits<double>::has_denorm_loss;
+
39  static stan::agrad::var infinity() { return numeric_limits<double>::infinity(); }
+
40  static stan::agrad::var quiet_NaN() { return numeric_limits<double>::quiet_NaN(); }
+
41  static stan::agrad::var signaling_NaN() { return numeric_limits<double>::signaling_NaN(); }
+
42  static stan::agrad::var denorm_min() { return numeric_limits<double>::denorm_min(); }
+
43 
+
44  static const bool is_iec559 = numeric_limits<double>::is_iec559;
+
45  static const bool is_bounded = numeric_limits<double>::is_bounded;
+
46  static const bool is_modulo = numeric_limits<double>::is_modulo;
+
47 
+
48  static const bool traps = numeric_limits<double>::traps;
+
49  static const bool tinyness_before = numeric_limits<double>::tinyness_before;
+
50  static const float_round_style round_style = numeric_limits<double>::round_style;
+
51  };
+
52 
+
62  inline int isnan(const stan::agrad::var& a) {
+
63  return isnan(a.val());
+
64  }
+
65 
+
75  inline int isinf(const stan::agrad::var& a) {
+
76  return isinf(a.val());
+
77  }
+
78 
+
79 }
+
80 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/rev_2operators_2operator__addition_8hpp.html b/doc/api/html/rev_2operators_2operator__addition_8hpp.html new file mode 100644 index 00000000000..ed9be3b46cc --- /dev/null +++ b/doc/api/html/rev_2operators_2operator__addition_8hpp.html @@ -0,0 +1,137 @@ + + + + + +Stan: src/stan/agrad/rev/operators/operator_addition.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
operator_addition.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+ + + + + + + + + + +

+Functions

var stan::agrad::operator+ (const var &a, const var &b)
 Addition operator for variables (C++).
 
var stan::agrad::operator+ (const var &a, const double b)
 Addition operator for variable and scalar (C++).
 
var stan::agrad::operator+ (const double a, const var &b)
 Addition operator for scalar and variable (C++).
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/rev_2operators_2operator__addition_8hpp_source.html b/doc/api/html/rev_2operators_2operator__addition_8hpp_source.html new file mode 100644 index 00000000000..f2c71d131a9 --- /dev/null +++ b/doc/api/html/rev_2operators_2operator__addition_8hpp_source.html @@ -0,0 +1,159 @@ + + + + + +Stan: src/stan/agrad/rev/operators/operator_addition.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
operator_addition.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__REV__OPERATORS__OPERATOR_ADDITION_HPP__
+
2 #define __STAN__AGRAD__REV__OPERATORS__OPERATOR_ADDITION_HPP__
+
3 
+
4 #include <stan/agrad/rev/var.hpp>
+ + +
7 
+
8 namespace stan {
+
9  namespace agrad {
+
10 
+
11  namespace {
+
12  class add_vv_vari : public op_vv_vari {
+
13  public:
+
14  add_vv_vari(vari* avi, vari* bvi) :
+
15  op_vv_vari(avi->val_ + bvi->val_, avi, bvi) {
+
16  }
+
17  void chain() {
+
18  avi_->adj_ += adj_;
+
19  bvi_->adj_ += adj_;
+
20  }
+
21  };
+
22 
+
23  class add_vd_vari : public op_vd_vari {
+
24  public:
+
25  add_vd_vari(vari* avi, double b) :
+
26  op_vd_vari(avi->val_ + b, avi, b) {
+
27  }
+
28  void chain() {
+
29  avi_->adj_ += adj_;
+
30  }
+
31  };
+
32  }
+
33 
+
47  inline var operator+(const var& a, const var& b) {
+
48  return var(new add_vv_vari(a.vi_,b.vi_));
+
49  }
+
50 
+
62  inline var operator+(const var& a, const double b) {
+
63  if (b == 0.0)
+
64  return a;
+
65  return var(new add_vd_vari(a.vi_,b));
+
66  }
+
67 
+
79  inline var operator+(const double a, const var& b) {
+
80  if (a == 0.0)
+
81  return b;
+
82  return var(new add_vd_vari(b.vi_,a)); // by symmetry
+
83  }
+
84 
+
85  }
+
86 }
+
87 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/rev_2operators_2operator__division_8hpp.html b/doc/api/html/rev_2operators_2operator__division_8hpp.html new file mode 100644 index 00000000000..1699fabce21 --- /dev/null +++ b/doc/api/html/rev_2operators_2operator__division_8hpp.html @@ -0,0 +1,138 @@ + + + + + +Stan: src/stan/agrad/rev/operators/operator_division.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
operator_division.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+ + + + + + + + + + +

+Functions

var stan::agrad::operator/ (const var &a, const var &b)
 Division operator for two variables (C++).
 
var stan::agrad::operator/ (const var &a, const double b)
 Division operator for dividing a variable by a scalar (C++).
 
var stan::agrad::operator/ (const double a, const var &b)
 Division operator for dividing a scalar by a variable (C++).
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/rev_2operators_2operator__division_8hpp_source.html b/doc/api/html/rev_2operators_2operator__division_8hpp_source.html new file mode 100644 index 00000000000..de44cb179ca --- /dev/null +++ b/doc/api/html/rev_2operators_2operator__division_8hpp_source.html @@ -0,0 +1,169 @@ + + + + + +Stan: src/stan/agrad/rev/operators/operator_division.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
operator_division.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__REV__OPERATORS__OPERATOR_DIVISION_HPP__
+
2 #define __STAN__AGRAD__REV__OPERATORS__OPERATOR_DIVISION_HPP__
+
3 
+
4 #include <stan/agrad/rev/var.hpp>
+ + + +
8 
+
9 namespace stan {
+
10  namespace agrad {
+
11 
+
12  namespace {
+
13  // (a/b)' = a' * (1 / b) - b' * (a / [b * b])
+
14  class divide_vv_vari : public op_vv_vari {
+
15  public:
+
16  divide_vv_vari(vari* avi, vari* bvi) :
+
17  op_vv_vari(avi->val_ / bvi->val_, avi, bvi) {
+
18  }
+
19  void chain() {
+
20  avi_->adj_ += adj_ / bvi_->val_;
+
21  bvi_->adj_ -= adj_ * avi_->val_ / (bvi_->val_ * bvi_->val_);
+
22  }
+
23  };
+
24 
+
25  class divide_vd_vari : public op_vd_vari {
+
26  public:
+
27  divide_vd_vari(vari* avi, double b) :
+
28  op_vd_vari(avi->val_ / b, avi, b) {
+
29  }
+
30  void chain() {
+
31  avi_->adj_ += adj_ / bd_;
+
32  }
+
33  };
+
34 
+
35  class divide_dv_vari : public op_dv_vari {
+
36  public:
+
37  divide_dv_vari(double a, vari* bvi) :
+
38  op_dv_vari(a / bvi->val_, a, bvi) {
+
39  }
+
40  void chain() {
+
41  bvi_->adj_ -= adj_ * ad_ / (bvi_->val_ * bvi_->val_);
+
42  }
+
43  };
+
44  }
+
45 
+
60  inline var operator/(const var& a, const var& b) {
+
61  return var(new divide_vv_vari(a.vi_,b.vi_));
+
62  }
+
63 
+
75  inline var operator/(const var& a, const double b) {
+
76  if (b == 1.0)
+
77  return a;
+
78  return var(new divide_vd_vari(a.vi_,b));
+
79  }
+
80 
+
92  inline var operator/(const double a, const var& b) {
+
93  return var(new divide_dv_vari(a,b.vi_));
+
94  }
+
95 
+
96  }
+
97 }
+
98 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/rev_2operators_2operator__equal_8hpp.html b/doc/api/html/rev_2operators_2operator__equal_8hpp.html new file mode 100644 index 00000000000..aacc9bce8e9 --- /dev/null +++ b/doc/api/html/rev_2operators_2operator__equal_8hpp.html @@ -0,0 +1,135 @@ + + + + + +Stan: src/stan/agrad/rev/operators/operator_equal.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
operator_equal.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+ + + + + + + + + + +

+Functions

bool stan::agrad::operator== (const var &a, const var &b)
 Equality operator comparing two variables' values (C++).
 
bool stan::agrad::operator== (const var &a, const double b)
 Equality operator comparing a variable's value and a double (C++).
 
bool stan::agrad::operator== (const double a, const var &b)
 Equality operator comparing a scalar and a variable's value (C++).
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/rev_2operators_2operator__equal_8hpp_source.html b/doc/api/html/rev_2operators_2operator__equal_8hpp_source.html new file mode 100644 index 00000000000..db7d271be61 --- /dev/null +++ b/doc/api/html/rev_2operators_2operator__equal_8hpp_source.html @@ -0,0 +1,130 @@ + + + + + +Stan: src/stan/agrad/rev/operators/operator_equal.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
operator_equal.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__REV__OPERATORS__OPERATOR_EQUAL_HPP__
+
2 #define __STAN__AGRAD__REV__OPERATORS__OPERATOR_EQUAL_HPP__
+
3 
+
4 #include <stan/agrad/rev/var.hpp>
+
5 
+
6 namespace stan {
+
7  namespace agrad {
+
8 
+
17  inline bool operator==(const var& a, const var& b) {
+
18  return a.val() == b.val();
+
19  }
+
20 
+
30  inline bool operator==(const var& a, const double b) {
+
31  return a.val() == b;
+
32  }
+
33 
+
42  inline bool operator==(const double a, const var& b) {
+
43  return a == b.val();
+
44  }
+
45 
+
46  }
+
47 }
+
48 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/rev_2operators_2operator__greater__than_8hpp.html b/doc/api/html/rev_2operators_2operator__greater__than_8hpp.html new file mode 100644 index 00000000000..19b171cc2eb --- /dev/null +++ b/doc/api/html/rev_2operators_2operator__greater__than_8hpp.html @@ -0,0 +1,135 @@ + + + + + +Stan: src/stan/agrad/rev/operators/operator_greater_than.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
operator_greater_than.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+ + + + + + + + + + +

+Functions

bool stan::agrad::operator> (const var &a, const var &b)
 Greater than operator comparing variables' values (C++).
 
bool stan::agrad::operator> (const var &a, const double b)
 Greater than operator comparing variable's value and double (C++).
 
bool stan::agrad::operator> (const double a, const var &b)
 Greater than operator comparing a double and a variable's value (C++).
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/rev_2operators_2operator__greater__than_8hpp_source.html b/doc/api/html/rev_2operators_2operator__greater__than_8hpp_source.html new file mode 100644 index 00000000000..a1ebef80564 --- /dev/null +++ b/doc/api/html/rev_2operators_2operator__greater__than_8hpp_source.html @@ -0,0 +1,130 @@ + + + + + +Stan: src/stan/agrad/rev/operators/operator_greater_than.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
operator_greater_than.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__REV__OPERATORS__OPERATOR_GREATER_THAN_HPP__
+
2 #define __STAN__AGRAD__REV__OPERATORS__OPERATOR_GREATER_THAN_HPP__
+
3 
+
4 #include <stan/agrad/rev/var.hpp>
+
5 
+
6 namespace stan {
+
7  namespace agrad {
+
8 
+
16  inline bool operator>(const var& a, const var& b) {
+
17  return a.val() > b.val();
+
18  }
+
19 
+
28  inline bool operator>(const var& a, const double b) {
+
29  return a.val() > b;
+
30  }
+
31 
+
40  inline bool operator>(const double a, const var& b) {
+
41  return a > b.val();
+
42  }
+
43 
+
44  }
+
45 }
+
46 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/rev_2operators_2operator__greater__than__or__equal_8hpp.html b/doc/api/html/rev_2operators_2operator__greater__than__or__equal_8hpp.html new file mode 100644 index 00000000000..dd10819b6f5 --- /dev/null +++ b/doc/api/html/rev_2operators_2operator__greater__than__or__equal_8hpp.html @@ -0,0 +1,135 @@ + + + + + +Stan: src/stan/agrad/rev/operators/operator_greater_than_or_equal.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
operator_greater_than_or_equal.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+ + + + + + + + + + +

+Functions

bool stan::agrad::operator>= (const var &a, const var &b)
 Greater than or equal operator comparing two variables' values (C++).
 
bool stan::agrad::operator>= (const var &a, const double b)
 Greater than or equal operator comparing variable's value and double (C++).
 
bool stan::agrad::operator>= (const double a, const var &b)
 Greater than or equal operator comparing double and variable's value (C++).
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/rev_2operators_2operator__greater__than__or__equal_8hpp_source.html b/doc/api/html/rev_2operators_2operator__greater__than__or__equal_8hpp_source.html new file mode 100644 index 00000000000..8f2efab9d00 --- /dev/null +++ b/doc/api/html/rev_2operators_2operator__greater__than__or__equal_8hpp_source.html @@ -0,0 +1,130 @@ + + + + + +Stan: src/stan/agrad/rev/operators/operator_greater_than_or_equal.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
operator_greater_than_or_equal.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__REV__OPERATORS__OPERATOR_GREATER_THAN_OR_EQUAL_HPP__
+
2 #define __STAN__AGRAD__REV__OPERATORS__OPERATOR_GREATER_THAN_OR_EQUAL_HPP__
+
3 
+
4 #include <stan/agrad/rev/var.hpp>
+
5 
+
6 namespace stan {
+
7  namespace agrad {
+
8 
+
18  inline bool operator>=(const var& a, const var& b) {
+
19  return a.val() >= b.val();
+
20  }
+
21 
+
31  inline bool operator>=(const var& a, const double b) {
+
32  return a.val() >= b;
+
33  }
+
34 
+
44  inline bool operator>=(const double a, const var& b) {
+
45  return a >= b.val();
+
46  }
+
47 
+
48  }
+
49 }
+
50 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/rev_2operators_2operator__less__than_8hpp.html b/doc/api/html/rev_2operators_2operator__less__than_8hpp.html new file mode 100644 index 00000000000..bb8ec4827c6 --- /dev/null +++ b/doc/api/html/rev_2operators_2operator__less__than_8hpp.html @@ -0,0 +1,135 @@ + + + + + +Stan: src/stan/agrad/rev/operators/operator_less_than.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
operator_less_than.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+ + + + + + + + + + +

+Functions

bool stan::agrad::operator< (const var &a, const var &b)
 Less than operator comparing variables' values (C++).
 
bool stan::agrad::operator< (const var &a, const double b)
 Less than operator comparing variable's value and a double (C++).
 
bool stan::agrad::operator< (const double a, const var &b)
 Less than operator comparing a double and variable's value (C++).
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/rev_2operators_2operator__less__than_8hpp_source.html b/doc/api/html/rev_2operators_2operator__less__than_8hpp_source.html new file mode 100644 index 00000000000..4e24ebbf62e --- /dev/null +++ b/doc/api/html/rev_2operators_2operator__less__than_8hpp_source.html @@ -0,0 +1,130 @@ + + + + + +Stan: src/stan/agrad/rev/operators/operator_less_than.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
operator_less_than.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__REV__OPERATORS__OPERATOR_LESS_THAN_HPP__
+
2 #define __STAN__AGRAD__REV__OPERATORS__OPERATOR_LESS_THAN_HPP__
+
3 
+
4 #include <stan/agrad/rev/var.hpp>
+
5 
+
6 namespace stan {
+
7  namespace agrad {
+
8 
+
16  inline bool operator<(const var& a, const var& b) {
+
17  return a.val() < b.val();
+
18  }
+
19 
+
28  inline bool operator<(const var& a, const double b) {
+
29  return a.val() < b;
+
30  }
+
31 
+
40  inline bool operator<(const double a, const var& b) {
+
41  return a < b.val();
+
42  }
+
43 
+
44  }
+
45 }
+
46 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/rev_2operators_2operator__less__than__or__equal_8hpp.html b/doc/api/html/rev_2operators_2operator__less__than__or__equal_8hpp.html new file mode 100644 index 00000000000..2d3606eeebd --- /dev/null +++ b/doc/api/html/rev_2operators_2operator__less__than__or__equal_8hpp.html @@ -0,0 +1,135 @@ + + + + + +Stan: src/stan/agrad/rev/operators/operator_less_than_or_equal.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
operator_less_than_or_equal.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+ + + + + + + + + + +

+Functions

bool stan::agrad::operator<= (const var &a, const var &b)
 Less than or equal operator comparing two variables' values (C++).
 
bool stan::agrad::operator<= (const var &a, const double b)
 Less than or equal operator comparing a variable's value and a scalar (C++).
 
bool stan::agrad::operator<= (const double a, const var &b)
 Less than or equal operator comparing a double and variable's value (C++).
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/rev_2operators_2operator__less__than__or__equal_8hpp_source.html b/doc/api/html/rev_2operators_2operator__less__than__or__equal_8hpp_source.html new file mode 100644 index 00000000000..4a83e130bf9 --- /dev/null +++ b/doc/api/html/rev_2operators_2operator__less__than__or__equal_8hpp_source.html @@ -0,0 +1,130 @@ + + + + + +Stan: src/stan/agrad/rev/operators/operator_less_than_or_equal.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
operator_less_than_or_equal.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__REV__OPERATORS__OPERATOR_LESS_THAN_OR_EQUAL_HPP__
+
2 #define __STAN__AGRAD__REV__OPERATORS__OPERATOR_LESS_THAN_OR_EQUAL_HPP__
+
3 
+
4 #include <stan/agrad/rev/var.hpp>
+
5 
+
6 namespace stan {
+
7  namespace agrad {
+
8 
+
18  inline bool operator<=(const var& a, const var& b) {
+
19  return a.val() <= b.val();
+
20  }
+
21 
+
31  inline bool operator<=(const var& a, const double b) {
+
32  return a.val() <= b;
+
33  }
+
34 
+
44  inline bool operator<=(const double a, const var& b) {
+
45  return a <= b.val();
+
46  }
+
47 
+
48  }
+
49 }
+
50 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/rev_2operators_2operator__multiplication_8hpp.html b/doc/api/html/rev_2operators_2operator__multiplication_8hpp.html new file mode 100644 index 00000000000..9967b9a629e --- /dev/null +++ b/doc/api/html/rev_2operators_2operator__multiplication_8hpp.html @@ -0,0 +1,137 @@ + + + + + +Stan: src/stan/agrad/rev/operators/operator_multiplication.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
operator_multiplication.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+ + + + + + + + + + +

+Functions

var stan::agrad::operator* (const var &a, const var &b)
 Multiplication operator for two variables (C++).
 
var stan::agrad::operator* (const var &a, const double b)
 Multiplication operator for a variable and a scalar (C++).
 
var stan::agrad::operator* (const double a, const var &b)
 Multiplication operator for a scalar and a variable (C++).
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/rev_2operators_2operator__multiplication_8hpp_source.html b/doc/api/html/rev_2operators_2operator__multiplication_8hpp_source.html new file mode 100644 index 00000000000..740977b4209 --- /dev/null +++ b/doc/api/html/rev_2operators_2operator__multiplication_8hpp_source.html @@ -0,0 +1,159 @@ + + + + + +Stan: src/stan/agrad/rev/operators/operator_multiplication.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
operator_multiplication.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__REV__OPERATORS__OPERATOR_MULTIPLICATION_HPP__
+
2 #define __STAN__AGRAD__REV__OPERATORS__OPERATOR_MULTIPLICATION_HPP__
+
3 
+
4 #include <stan/agrad/rev/var.hpp>
+ + +
7 
+
8 namespace stan {
+
9  namespace agrad {
+
10 
+
11  namespace {
+
12  class multiply_vv_vari : public op_vv_vari {
+
13  public:
+
14  multiply_vv_vari(vari* avi, vari* bvi) :
+
15  op_vv_vari(avi->val_ * bvi->val_, avi, bvi) {
+
16  }
+
17  void chain() {
+
18  avi_->adj_ += bvi_->val_ * adj_;
+
19  bvi_->adj_ += avi_->val_ * adj_;
+
20  }
+
21  };
+
22 
+
23  class multiply_vd_vari : public op_vd_vari {
+
24  public:
+
25  multiply_vd_vari(vari* avi, double b) :
+
26  op_vd_vari(avi->val_ * b, avi, b) {
+
27  }
+
28  void chain() {
+
29  avi_->adj_ += adj_ * bd_;
+
30  }
+
31  };
+
32  }
+
33 
+
47  inline var operator*(const var& a, const var& b) {
+
48  return var(new multiply_vv_vari(a.vi_,b.vi_));
+
49  }
+
50 
+
62  inline var operator*(const var& a, const double b) {
+
63  if (b == 1.0)
+
64  return a;
+
65  return var(new multiply_vd_vari(a.vi_,b));
+
66  }
+
67 
+
79  inline var operator*(const double a, const var& b) {
+
80  if (a == 1.0)
+
81  return b;
+
82  return var(new multiply_vd_vari(b.vi_,a)); // by symmetry
+
83  }
+
84 
+
85  }
+
86 }
+
87 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/rev_2operators_2operator__not__equal_8hpp.html b/doc/api/html/rev_2operators_2operator__not__equal_8hpp.html new file mode 100644 index 00000000000..c5aac95285f --- /dev/null +++ b/doc/api/html/rev_2operators_2operator__not__equal_8hpp.html @@ -0,0 +1,135 @@ + + + + + +Stan: src/stan/agrad/rev/operators/operator_not_equal.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
operator_not_equal.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+ + + + + + + + + + +

+Functions

bool stan::agrad::operator!= (const var &a, const var &b)
 Inequality operator comparing two variables' values (C++).
 
bool stan::agrad::operator!= (const var &a, const double b)
 Inequality operator comparing a variable's value and a double (C++).
 
bool stan::agrad::operator!= (const double a, const var &b)
 Inequality operator comparing a double and a variable's value (C++).
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/rev_2operators_2operator__not__equal_8hpp_source.html b/doc/api/html/rev_2operators_2operator__not__equal_8hpp_source.html new file mode 100644 index 00000000000..01cbe7b2d30 --- /dev/null +++ b/doc/api/html/rev_2operators_2operator__not__equal_8hpp_source.html @@ -0,0 +1,130 @@ + + + + + +Stan: src/stan/agrad/rev/operators/operator_not_equal.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
operator_not_equal.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__REV__OPERATORS__OPERATOR_NOT_EQUAL_HPP__
+
2 #define __STAN__AGRAD__REV__OPERATORS__OPERATOR_NOT_EQUAL_HPP__
+
3 
+
4 #include <stan/agrad/rev/var.hpp>
+
5 
+
6 namespace stan {
+
7  namespace agrad {
+
8 
+
17  inline bool operator!=(const var& a, const var& b) {
+
18  return a.val() != b.val();
+
19  }
+
20 
+
30  inline bool operator!=(const var& a, const double b) {
+
31  return a.val() != b;
+
32  }
+
33 
+
43  inline bool operator!=(const double a, const var& b) {
+
44  return a != b.val();
+
45  }
+
46 
+
47  }
+
48 }
+
49 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/rev_2operators_2operator__subtraction_8hpp.html b/doc/api/html/rev_2operators_2operator__subtraction_8hpp.html new file mode 100644 index 00000000000..dbda51a07dd --- /dev/null +++ b/doc/api/html/rev_2operators_2operator__subtraction_8hpp.html @@ -0,0 +1,138 @@ + + + + + +Stan: src/stan/agrad/rev/operators/operator_subtraction.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
operator_subtraction.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+ + + + + + + + + + +

+Functions

var stan::agrad::operator- (const var &a, const var &b)
 Subtraction operator for variables (C++).
 
var stan::agrad::operator- (const var &a, const double b)
 Subtraction operator for variable and scalar (C++).
 
var stan::agrad::operator- (const double a, const var &b)
 Subtraction operator for scalar and variable (C++).
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/rev_2operators_2operator__subtraction_8hpp_source.html b/doc/api/html/rev_2operators_2operator__subtraction_8hpp_source.html new file mode 100644 index 00000000000..f94b7d8538a --- /dev/null +++ b/doc/api/html/rev_2operators_2operator__subtraction_8hpp_source.html @@ -0,0 +1,168 @@ + + + + + +Stan: src/stan/agrad/rev/operators/operator_subtraction.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
operator_subtraction.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__REV__OPERATORS__OPERATOR_SUBTRACTION_HPP__
+
2 #define __STAN__AGRAD__REV__OPERATORS__OPERATOR_SUBTRACTION_HPP__
+
3 
+
4 #include <stan/agrad/rev/var.hpp>
+ + + +
8 
+
9 namespace stan {
+
10  namespace agrad {
+
11 
+
12  namespace {
+
13  class subtract_vv_vari : public op_vv_vari {
+
14  public:
+
15  subtract_vv_vari(vari* avi, vari* bvi) :
+
16  op_vv_vari(avi->val_ - bvi->val_, avi, bvi) {
+
17  }
+
18  void chain() {
+
19  avi_->adj_ += adj_;
+
20  bvi_->adj_ -= adj_;
+
21  }
+
22  };
+
23 
+
24  class subtract_vd_vari : public op_vd_vari {
+
25  public:
+
26  subtract_vd_vari(vari* avi, double b) :
+
27  op_vd_vari(avi->val_ - b, avi, b) {
+
28  }
+
29  void chain() {
+
30  avi_->adj_ += adj_;
+
31  }
+
32  };
+
33 
+
34  class subtract_dv_vari : public op_dv_vari {
+
35  public:
+
36  subtract_dv_vari(double a, vari* bvi) :
+
37  op_dv_vari(a - bvi->val_, a, bvi) {
+
38  }
+
39  void chain() {
+
40  bvi_->adj_ -= adj_;
+
41  }
+
42  };
+
43  }
+
44 
+
59  inline var operator-(const var& a, const var& b) {
+
60  return var(new subtract_vv_vari(a.vi_,b.vi_));
+
61  }
+
62 
+
74  inline var operator-(const var& a, const double b) {
+
75  if (b == 0.0)
+
76  return a;
+
77  return var(new subtract_vd_vari(a.vi_,b));
+
78  }
+
79 
+
91  inline var operator-(const double a, const var& b) {
+
92  return var(new subtract_dv_vari(a,b.vi_));
+
93  }
+
94 
+
95  }
+
96 }
+
97 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/rev_2operators_8hpp.html b/doc/api/html/rev_2operators_8hpp.html new file mode 100644 index 00000000000..1fbbe1f2673 --- /dev/null +++ b/doc/api/html/rev_2operators_8hpp.html @@ -0,0 +1,128 @@ + + + + + +Stan: src/stan/agrad/rev/operators.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
operators.hpp File Reference
+
+ +
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/rev_2operators_8hpp_source.html b/doc/api/html/rev_2operators_8hpp_source.html new file mode 100644 index 00000000000..30b4d2ee323 --- /dev/null +++ b/doc/api/html/rev_2operators_8hpp_source.html @@ -0,0 +1,131 @@ + + + + + +Stan: src/stan/agrad/rev/operators.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
operators.hpp
+
+ +
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/rev_8hpp.html b/doc/api/html/rev_8hpp.html new file mode 100644 index 00000000000..3a8e2d39547 --- /dev/null +++ b/doc/api/html/rev_8hpp.html @@ -0,0 +1,120 @@ + + + + + +Stan: src/stan/agrad/rev.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
rev.hpp File Reference
+
+ +
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/rev_8hpp_source.html b/doc/api/html/rev_8hpp_source.html new file mode 100644 index 00000000000..30a6c474177 --- /dev/null +++ b/doc/api/html/rev_8hpp_source.html @@ -0,0 +1,124 @@ + + + + + +Stan: src/stan/agrad/rev.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
rev.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__REV_HPP__
+
2 #define __STAN__AGRAD__REV_HPP__
+
3 
+ + + +
7 #include <stan/agrad/rev/var.hpp>
+ + + +
11 
+ + + + +
16 
+
17 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/row_8hpp.html b/doc/api/html/row_8hpp.html new file mode 100644 index 00000000000..890c2cbddaf --- /dev/null +++ b/doc/api/html/row_8hpp.html @@ -0,0 +1,132 @@ + + + + + +Stan: src/stan/math/matrix/row.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
row.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::math
 Matrices and templated mathematical functions.
 
+ + + + + +

+Functions

template<typename T >
Eigen::Matrix< T,
+1, Eigen::Dynamic > 
stan::math::row (const Eigen::Matrix< T, Eigen::Dynamic, Eigen::Dynamic > &m, size_t i)
 Return the specified row of the specified matrix, using start-at-1 indexing.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/row_8hpp_source.html b/doc/api/html/row_8hpp_source.html new file mode 100644 index 00000000000..4ddf1721806 --- /dev/null +++ b/doc/api/html/row_8hpp_source.html @@ -0,0 +1,128 @@ + + + + + +Stan: src/stan/math/matrix/row.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
row.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MATH__MATRIX__ROW_HPP__
+
2 #define __STAN__MATH__MATRIX__ROW_HPP__
+
3 
+ + +
6 
+
7 namespace stan {
+
8  namespace math {
+
9 
+
22  template <typename T>
+
23  inline
+
24  Eigen::Matrix<T,1,Eigen::Dynamic>
+
25  row(const Eigen::Matrix<T,Eigen::Dynamic,Eigen::Dynamic>& m,
+
26  size_t i) {
+
27  validate_row_index(m,i,"row");
+
28  return m.row(i - 1);
+
29  }
+
30 
+
31  }
+
32 }
+
33 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/rows_8hpp.html b/doc/api/html/rows_8hpp.html new file mode 100644 index 00000000000..d2ad1bfb78f --- /dev/null +++ b/doc/api/html/rows_8hpp.html @@ -0,0 +1,129 @@ + + + + + +Stan: src/stan/math/matrix/rows.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
rows.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::math
 Matrices and templated mathematical functions.
 
+ + + + +

+Functions

template<typename T , int R, int C>
size_t stan::math::rows (const Eigen::Matrix< T, R, C > &m)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/rows_8hpp_source.html b/doc/api/html/rows_8hpp_source.html new file mode 100644 index 00000000000..4d22c42765e --- /dev/null +++ b/doc/api/html/rows_8hpp_source.html @@ -0,0 +1,125 @@ + + + + + +Stan: src/stan/math/matrix/rows.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
rows.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MATH__MATRIX__ROWS_HPP__
+
2 #define __STAN__MATH__MATRIX__ROWS_HPP__
+
3 
+ +
5 
+
6 namespace stan {
+
7  namespace math {
+
8 
+
9  template <typename T, int R, int C>
+
10  inline
+
11  size_t
+
12  rows(const Eigen::Matrix<T,R,C>& m) {
+
13  return m.rows();
+
14  }
+
15 
+
16  }
+
17 }
+
18 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/sample_8hpp.html b/doc/api/html/sample_8hpp.html new file mode 100644 index 00000000000..a39e92d2c77 --- /dev/null +++ b/doc/api/html/sample_8hpp.html @@ -0,0 +1,130 @@ + + + + + +Stan: src/stan/mcmc/sample.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
sample.hpp File Reference
+
+
+
#include <vector>
+#include <string>
+#include <stan/math/matrix/Eigen.hpp>
+
+

Go to the source code of this file.

+ + + + +

+Classes

class  stan::mcmc::sample
 
+ + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::mcmc
 Markov chain Monte Carlo samplers.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/sample_8hpp_source.html b/doc/api/html/sample_8hpp_source.html new file mode 100644 index 00000000000..a71186b0654 --- /dev/null +++ b/doc/api/html/sample_8hpp_source.html @@ -0,0 +1,180 @@ + + + + + +Stan: src/stan/mcmc/sample.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
sample.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MCMC__SAMPLE__HPP__
+
2 #define __STAN__MCMC__SAMPLE__HPP__
+
3 
+
4 #include <vector>
+
5 #include <string>
+
6 
+ +
8 
+
9 namespace stan {
+
10 
+
11  namespace mcmc {
+
12 
+
13  class sample {
+
14 
+
15  private:
+
16 
+
17  Eigen::VectorXd _cont_params; // Continuous coordinates of sample
+
18  double _log_prob; // Log probability of sample
+
19  double _accept_stat; // Acceptance statistic of transition
+
20 
+
21  public:
+
22 
+
23  sample(const Eigen::VectorXd& q,
+
24  double log_prob,
+
25  double stat) :
+
26  _cont_params(q),
+
27  _log_prob(log_prob),
+
28  _accept_stat(stat) {};
+
29 
+
30  virtual ~sample() {}; // No-op
+
31 
+
32  int size_cont() const {
+
33  return _cont_params.size();
+
34  }
+
35 
+
36  double cont_params(int k) const {
+
37  return _cont_params(k);
+
38  }
+
39 
+
40  void cont_params(Eigen::VectorXd& x) const {
+
41  x = _cont_params;
+
42  }
+
43 
+
44  const Eigen::VectorXd& cont_params() const {
+
45  return _cont_params;
+
46  }
+
47 
+
48  inline double log_prob() const {
+
49  return _log_prob;
+
50  }
+
51 
+
52  inline double accept_stat() const {
+
53  return _accept_stat;
+
54  }
+
55 
+
56  void get_sample_param_names(std::vector<std::string>& names) {
+
57  names.push_back("lp__");
+
58  names.push_back("accept_stat__");
+
59  }
+
60 
+
61  void get_sample_params(std::vector<double>& values) {
+
62  values.push_back(_log_prob);
+
63  values.push_back(_accept_stat);
+
64  }
+
65 
+
66  };
+
67 
+
68  } // mcmc
+
69 
+
70 } // stan
+
71 
+
72 #endif
+
73 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/scaled__add_8hpp.html b/doc/api/html/scaled__add_8hpp.html new file mode 100644 index 00000000000..32742db1f19 --- /dev/null +++ b/doc/api/html/scaled__add_8hpp.html @@ -0,0 +1,129 @@ + + + + + +Stan: src/stan/math/functions/scaled_add.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
scaled_add.hpp File Reference
+
+
+
#include <vector>
+#include <cstddef>
+
+

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::math
 Matrices and templated mathematical functions.
 
+ + + +

+Functions

void stan::math::scaled_add (std::vector< double > &x, const std::vector< double > &y, const double lambda)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/scaled__add_8hpp_source.html b/doc/api/html/scaled__add_8hpp_source.html new file mode 100644 index 00000000000..dcb7fd83ebc --- /dev/null +++ b/doc/api/html/scaled__add_8hpp_source.html @@ -0,0 +1,128 @@ + + + + + +Stan: src/stan/math/functions/scaled_add.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
scaled_add.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MATH__FUNCTIONS__SCALED_ADD_HPP__
+
2 #define __STAN__MATH__FUNCTIONS__SCALED_ADD_HPP__
+
3 
+
4 #include <vector>
+
5 #include <cstddef>
+
6 
+
7 namespace stan {
+
8  namespace math {
+
9 
+
10  // x <- x + lambda * y
+
11  inline void scaled_add(std::vector<double>& x,
+
12  const std::vector<double>& y,
+
13  const double lambda) {
+
14  for (size_t i = 0; i < x.size(); ++i)
+
15  x[i] += lambda * y[i];
+
16  }
+
17 
+
18  }
+
19 }
+
20 
+
21 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/scaled__inv__chi__square_8hpp.html b/doc/api/html/scaled__inv__chi__square_8hpp.html new file mode 100644 index 00000000000..114984ea8cb --- /dev/null +++ b/doc/api/html/scaled__inv__chi__square_8hpp.html @@ -0,0 +1,162 @@ + + + + + +Stan: src/stan/prob/distributions/univariate/continuous/scaled_inv_chi_square.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
scaled_inv_chi_square.hpp File Reference
+
+
+
#include <boost/random/chi_squared_distribution.hpp>
+#include <boost/random/variate_generator.hpp>
+#include <stan/agrad/partials_vari.hpp>
+#include <stan/math/error_handling.hpp>
+#include <stan/math/constants.hpp>
+#include <stan/math/functions/square.hpp>
+#include <stan/math/functions/multiply_log.hpp>
+#include <stan/math/functions/value_of.hpp>
+#include <stan/meta/traits.hpp>
+#include <stan/prob/constants.hpp>
+#include <stan/prob/traits.hpp>
+#include <stan/prob/internal_math.hpp>
+
+

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::prob
 Templated probability distributions.
 
+ + + + + + + + + + + + + + + + + + + + + +

+Functions

template<bool propto, typename T_y , typename T_dof , typename T_scale >
return_type< T_y, T_dof,
+T_scale >::type 
stan::prob::scaled_inv_chi_square_log (const T_y &y, const T_dof &nu, const T_scale &s)
 The log of a scaled inverse chi-squared density for y with the specified degrees of freedom parameter and scale parameter.
 
template<typename T_y , typename T_dof , typename T_scale >
return_type< T_y, T_dof,
+T_scale >::type 
stan::prob::scaled_inv_chi_square_log (const T_y &y, const T_dof &nu, const T_scale &s)
 
template<typename T_y , typename T_dof , typename T_scale >
return_type< T_y, T_dof,
+T_scale >::type 
stan::prob::scaled_inv_chi_square_cdf (const T_y &y, const T_dof &nu, const T_scale &s)
 The CDF of a scaled inverse chi-squared density for y with the specified degrees of freedom parameter and scale parameter.
 
template<typename T_y , typename T_dof , typename T_scale >
return_type< T_y, T_dof,
+T_scale >::type 
stan::prob::scaled_inv_chi_square_cdf_log (const T_y &y, const T_dof &nu, const T_scale &s)
 
template<typename T_y , typename T_dof , typename T_scale >
return_type< T_y, T_dof,
+T_scale >::type 
stan::prob::scaled_inv_chi_square_ccdf_log (const T_y &y, const T_dof &nu, const T_scale &s)
 
template<class RNG >
double stan::prob::scaled_inv_chi_square_rng (const double nu, const double s, RNG &rng)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/scaled__inv__chi__square_8hpp_source.html b/doc/api/html/scaled__inv__chi__square_8hpp_source.html new file mode 100644 index 00000000000..9c17fdf2670 --- /dev/null +++ b/doc/api/html/scaled__inv__chi__square_8hpp_source.html @@ -0,0 +1,670 @@ + + + + + +Stan: src/stan/prob/distributions/univariate/continuous/scaled_inv_chi_square.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
scaled_inv_chi_square.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__PROB__DISTRIBUTIONS__UNIVARIATE__CONTINUOUS__SCALED_INV_CHI_SQUARE_HPP__
+
2 #define __STAN__PROB__DISTRIBUTIONS__UNIVARIATE__CONTINUOUS__SCALED_INV_CHI_SQUARE_HPP__
+
3 
+
4 #include <boost/random/chi_squared_distribution.hpp>
+
5 #include <boost/random/variate_generator.hpp>
+
6 
+ + + + + + +
13 #include <stan/meta/traits.hpp>
+
14 #include <stan/prob/constants.hpp>
+
15 #include <stan/prob/traits.hpp>
+ +
17 
+
18 namespace stan {
+
19 
+
20  namespace prob {
+
21 
+
41  template <bool propto,
+
42  typename T_y, typename T_dof, typename T_scale>
+
43  typename return_type<T_y,T_dof,T_scale>::type
+
44  scaled_inv_chi_square_log(const T_y& y, const T_dof& nu, const T_scale& s) {
+
45  static const char* function
+
46  = "stan::prob::scaled_inv_chi_square_log(%1%)";
+
47 
+ + + + + +
53 
+
54  // check if any vectors are zero length
+
55  if (!(stan::length(y)
+
56  && stan::length(nu)
+
57  && stan::length(s)))
+
58  return 0.0;
+
59 
+
60  double logp(0.0);
+
61  if (!check_not_nan(function, y, "Random variable", &logp))
+
62  return logp;
+
63  if (!check_finite(function, nu, "Degrees of freedom parameter",
+
64  &logp))
+
65  return logp;
+
66  if (!check_positive(function, nu, "Degrees of freedom parameter",
+
67  &logp))
+
68  return logp;
+
69  if (!check_finite(function, s, "Scale parameter", &logp))
+
70  return logp;
+
71  if (!check_positive(function, s, "Scale parameter", &logp))
+
72  return logp;
+
73  if (!(check_consistent_sizes(function,
+
74  y,nu,s,
+
75  "Random variable",
+
76  "Degrees of freedom parameter",
+
77  "Scale parameter",
+
78  &logp)))
+
79  return logp;
+
80 
+
81  // check if no variables are involved and prop-to
+ +
83  return 0.0;
+
84 
+
85  VectorView<const T_y> y_vec(y);
+
86  VectorView<const T_dof> nu_vec(nu);
+ +
88  size_t N = max_size(y, nu, s);
+
89 
+
90  for (size_t n = 0; n < N; n++) {
+
91  if (value_of(y_vec[n]) <= 0)
+
92  return LOG_ZERO;
+
93  }
+
94 
+
95  using boost::math::lgamma;
+ + +
98  using stan::math::square;
+
99 
+ +
101  is_vector<T_dof>::value> half_nu(length(nu));
+
102  for (size_t i = 0; i < length(nu); i++)
+ +
104  half_nu[i] = 0.5 * value_of(nu_vec[i]);
+
105 
+ +
107  is_vector<T_y>::value> log_y(length(y));
+
108  for (size_t i = 0; i < length(y); i++)
+ +
110  log_y[i] = log(value_of(y_vec[i]));
+
111 
+ +
113  is_vector<T_y>::value> inv_y(length(y));
+
114  for (size_t i = 0; i < length(y); i++)
+ +
116  inv_y[i] = 1.0 / value_of(y_vec[i]);
+
117 
+ + +
120  for (size_t i = 0; i < length(s); i++)
+ +
122  log_s[i] = log(value_of(s_vec[i]));
+
123 
+ +
125  is_vector<T_dof>::value> log_half_nu(length(nu));
+ +
127  is_vector<T_dof>::value> lgamma_half_nu(length(nu));
+ +
129  is_vector<T_dof>::value> digamma_half_nu_over_two(length(nu));
+
130  for (size_t i = 0; i < length(nu); i++) {
+ +
132  lgamma_half_nu[i] = lgamma(half_nu[i]);
+ +
134  log_half_nu[i] = log(half_nu[i]);
+ +
136  digamma_half_nu_over_two[i] = digamma(half_nu[i]) * 0.5;
+
137  }
+
138 
+ +
140  operands_and_partials(y, nu, s);
+
141  for (size_t n = 0; n < N; n++) {
+
142  const double s_dbl = value_of(s_vec[n]);
+
143  const double nu_dbl = value_of(nu_vec[n]);
+ +
145  logp += half_nu[n] * log_half_nu[n] - lgamma_half_nu[n];
+ +
147  logp += nu_dbl * log_s[n];
+ +
149  logp -= (half_nu[n]+1.0) * log_y[n];
+ +
151  logp -= half_nu[n] * s_dbl*s_dbl * inv_y[n];
+
152 
+ +
154  operands_and_partials.d_x1[n]
+
155  += -(half_nu[n] + 1.0) * inv_y[n]
+
156  + half_nu[n] * s_dbl*s_dbl * inv_y[n]*inv_y[n];
+
157  }
+ +
159  operands_and_partials.d_x2[n]
+
160  += 0.5 * log_half_nu[n] + 0.5
+
161  - digamma_half_nu_over_two[n]
+
162  + log_s[n]
+
163  - 0.5 * log_y[n]
+
164  - 0.5* s_dbl*s_dbl * inv_y[n];
+
165  }
+ +
167  operands_and_partials.d_x3[n]
+
168  += nu_dbl / s_dbl - nu_dbl * inv_y[n] * s_dbl;
+
169  }
+
170  }
+
171  return operands_and_partials.to_var(logp);
+
172  }
+
173 
+
174  template <typename T_y, typename T_dof, typename T_scale>
+
175  inline
+ +
177  scaled_inv_chi_square_log(const T_y& y, const T_dof& nu, const T_scale& s) {
+
178  return scaled_inv_chi_square_log<false>(y,nu,s);
+
179  }
+
180 
+
195  template <typename T_y, typename T_dof, typename T_scale>
+ +
197  scaled_inv_chi_square_cdf(const T_y& y, const T_dof& nu,
+
198  const T_scale& s) {
+
199  // Size checks
+
200  if (!(stan::length(y) && stan::length(nu) && stan::length(s)))
+
201  return 1.0;
+
202 
+
203  static const char* function
+
204  = "stan::prob::scaled_inv_chi_square_cdf(%1%)";
+
205 
+ + + + + +
211  using stan::math::value_of;
+
212 
+
213  double P(1.0);
+
214 
+
215  if (!check_not_nan(function, y, "Random variable", &P))
+
216  return P;
+
217  if (!check_nonnegative(function, y, "Random variable", &P))
+
218  return P;
+
219  if (!check_finite(function, nu, "Degrees of freedom parameter", &P))
+
220  return P;
+
221  if (!check_positive(function, nu, "Degrees of freedom parameter", &P))
+
222  return P;
+
223  if (!check_finite(function, s, "Scale parameter", &P))
+
224  return P;
+
225  if (!check_positive(function, s, "Scale parameter", &P))
+
226  return P;
+
227  if (!(check_consistent_sizes(function, y, nu, s,
+
228  "Random variable",
+
229  "Degrees of freedom parameter",
+
230  "Scale parameter",
+
231  &P)))
+
232  return P;
+
233 
+
234  // Wrap arguments in vectors
+
235  VectorView<const T_y> y_vec(y);
+
236  VectorView<const T_dof> nu_vec(nu);
+
237  VectorView<const T_scale> s_vec(s);
+
238  size_t N = max_size(y, nu, s);
+
239 
+ +
241  operands_and_partials(y, nu, s);
+
242 
+
243  // Explicit return for extreme values
+
244  // The gradients are technically ill-defined, but treated as zero
+
245 
+
246  for (size_t i = 0; i < stan::length(y); i++) {
+
247  if (value_of(y_vec[i]) == 0)
+
248  return operands_and_partials.to_var(0.0);
+
249  }
+
250 
+
251  // Compute CDF and its gradients
+
252  using boost::math::gamma_p_derivative;
+
253  using boost::math::gamma_q;
+
254  using boost::math::digamma;
+
255  using boost::math::tgamma;
+
256 
+
257  // Cache a few expensive function calls if nu is a parameter
+ +
259  is_vector<T_dof>::value> gamma_vec(stan::length(nu));
+ +
261  is_vector<T_dof>::value> digamma_vec(stan::length(nu));
+
262 
+ +
264  for (size_t i = 0; i < stan::length(nu); i++) {
+
265  const double half_nu_dbl = 0.5 * value_of(nu_vec[i]);
+
266  gamma_vec[i] = tgamma(half_nu_dbl);
+
267  digamma_vec[i] = digamma(half_nu_dbl);
+
268  }
+
269  }
+
270 
+
271  // Compute vectorized CDF and gradient
+
272  for (size_t n = 0; n < N; n++) {
+
273 
+
274  // Explicit results for extreme values
+
275  // The gradients are technically ill-defined, but treated as zero
+
276  if (value_of(y_vec[n]) == std::numeric_limits<double>::infinity()) {
+
277  continue;
+
278  }
+
279 
+
280  // Pull out values
+
281  const double y_dbl = value_of(y_vec[n]);
+
282  const double y_inv_dbl = 1.0 / y_dbl;
+
283  const double half_nu_dbl = 0.5 * value_of(nu_vec[n]);
+
284  const double s_dbl = value_of(s_vec[n]);
+
285  const double half_s2_overx_dbl = 0.5 * s_dbl * s_dbl * y_inv_dbl;
+
286  const double half_nu_s2_overx_dbl
+
287  = 2.0 * half_nu_dbl * half_s2_overx_dbl;
+
288 
+
289  // Compute
+
290  const double Pn = gamma_q(half_nu_dbl, half_nu_s2_overx_dbl);
+
291 
+
292  P *= Pn;
+
293 
+ +
295  operands_and_partials.d_x1[n]
+
296  += half_nu_s2_overx_dbl * y_inv_dbl
+
297  * gamma_p_derivative(half_nu_dbl, half_nu_s2_overx_dbl) / Pn;
+
298 
+ +
300  operands_and_partials.d_x2[n]
+
301  += (0.5 * stan::math::gradRegIncGamma(half_nu_dbl,
+
302  half_nu_s2_overx_dbl,
+
303  gamma_vec[n], digamma_vec[n])
+
304  - half_s2_overx_dbl
+
305  * gamma_p_derivative(half_nu_dbl, half_nu_s2_overx_dbl) )
+
306  / Pn;
+
307 
+ +
309  operands_and_partials.d_x3[n]
+
310  += - 2.0 * half_nu_dbl * s_dbl * y_inv_dbl
+
311  * gamma_p_derivative(half_nu_dbl, half_nu_s2_overx_dbl) / Pn;
+
312 
+
313  }
+
314 
+ +
316  for(size_t n = 0; n < stan::length(y); ++n)
+
317  operands_and_partials.d_x1[n] *= P;
+ +
319  for(size_t n = 0; n < stan::length(nu); ++n)
+
320  operands_and_partials.d_x2[n] *= P;
+ +
322  for(size_t n = 0; n < stan::length(s); ++n)
+
323  operands_and_partials.d_x3[n] *= P;
+
324 
+
325  return operands_and_partials.to_var(P);
+
326  }
+
327 
+
328  template <typename T_y, typename T_dof, typename T_scale>
+ +
330  scaled_inv_chi_square_cdf_log(const T_y& y, const T_dof& nu,
+
331  const T_scale& s) {
+
332  // Size checks
+
333  if (!(stan::length(y) && stan::length(nu) && stan::length(s)))
+
334  return 0.0;
+
335 
+
336  static const char* function
+
337  = "stan::prob::scaled_inv_chi_square_cdf_log(%1%)";
+
338 
+ + + + + +
344  using stan::math::value_of;
+
345 
+
346  double P(0.0);
+
347 
+
348  if (!check_not_nan(function, y, "Random variable", &P))
+
349  return P;
+
350  if (!check_nonnegative(function, y, "Random variable", &P))
+
351  return P;
+
352  if (!check_finite(function, nu, "Degrees of freedom parameter", &P))
+
353  return P;
+
354  if (!check_positive(function, nu, "Degrees of freedom parameter", &P))
+
355  return P;
+
356  if (!check_finite(function, s, "Scale parameter", &P))
+
357  return P;
+
358  if (!check_positive(function, s, "Scale parameter", &P))
+
359  return P;
+
360  if (!(check_consistent_sizes(function, y, nu, s,
+
361  "Random variable",
+
362  "Degrees of freedom parameter",
+
363  "Scale parameter",
+
364  &P)))
+
365  return P;
+
366 
+
367  // Wrap arguments in vectors
+
368  VectorView<const T_y> y_vec(y);
+
369  VectorView<const T_dof> nu_vec(nu);
+
370  VectorView<const T_scale> s_vec(s);
+
371  size_t N = max_size(y, nu, s);
+
372 
+ +
374  operands_and_partials(y, nu, s);
+
375 
+
376  // Explicit return for extreme values
+
377  // The gradients are technically ill-defined, but treated as zero
+
378  for (size_t i = 0; i < stan::length(y); i++) {
+
379  if (value_of(y_vec[i]) == 0)
+
380  return operands_and_partials.to_var(stan::math::negative_infinity());
+
381  }
+
382 
+
383  // Compute cdf_log and its gradients
+
384  using boost::math::gamma_p_derivative;
+
385  using boost::math::gamma_q;
+
386  using boost::math::digamma;
+
387  using boost::math::tgamma;
+
388 
+
389  // Cache a few expensive function calls if nu is a parameter
+ +
391  is_vector<T_dof>::value> gamma_vec(stan::length(nu));
+ +
393  is_vector<T_dof>::value> digamma_vec(stan::length(nu));
+
394 
+ +
396  for (size_t i = 0; i < stan::length(nu); i++) {
+
397  const double half_nu_dbl = 0.5 * value_of(nu_vec[i]);
+
398  gamma_vec[i] = tgamma(half_nu_dbl);
+
399  digamma_vec[i] = digamma(half_nu_dbl);
+
400  }
+
401  }
+
402 
+
403  // Compute vectorized cdf_log and gradient
+
404  for (size_t n = 0; n < N; n++) {
+
405 
+
406  // Explicit results for extreme values
+
407  // The gradients are technically ill-defined, but treated as zero
+
408  if (value_of(y_vec[n]) == std::numeric_limits<double>::infinity()) {
+
409  continue;
+
410  }
+
411 
+
412  // Pull out values
+
413  const double y_dbl = value_of(y_vec[n]);
+
414  const double y_inv_dbl = 1.0 / y_dbl;
+
415  const double half_nu_dbl = 0.5 * value_of(nu_vec[n]);
+
416  const double s_dbl = value_of(s_vec[n]);
+
417  const double half_s2_overx_dbl = 0.5 * s_dbl * s_dbl * y_inv_dbl;
+
418  const double half_nu_s2_overx_dbl
+
419  = 2.0 * half_nu_dbl * half_s2_overx_dbl;
+
420 
+
421  // Compute
+
422  const double Pn = gamma_q(half_nu_dbl, half_nu_s2_overx_dbl);
+
423 
+
424  P += log(Pn);
+
425 
+ +
427  operands_and_partials.d_x1[n]
+
428  += half_nu_s2_overx_dbl * y_inv_dbl
+
429  * gamma_p_derivative(half_nu_dbl, half_nu_s2_overx_dbl) / Pn;
+ +
431  operands_and_partials.d_x2[n]
+
432  += (0.5 * stan::math::gradRegIncGamma(half_nu_dbl,
+
433  half_nu_s2_overx_dbl,
+
434  gamma_vec[n], digamma_vec[n])
+
435  - half_s2_overx_dbl
+
436  * gamma_p_derivative(half_nu_dbl, half_nu_s2_overx_dbl) )
+
437  / Pn;
+ +
439  operands_and_partials.d_x3[n]
+
440  += - 2.0 * half_nu_dbl * s_dbl * y_inv_dbl
+
441  * gamma_p_derivative(half_nu_dbl, half_nu_s2_overx_dbl) / Pn;
+
442  }
+
443 
+
444  return operands_and_partials.to_var(P);
+
445  }
+
446 
+
447  template <typename T_y, typename T_dof, typename T_scale>
+ +
449  scaled_inv_chi_square_ccdf_log(const T_y& y, const T_dof& nu,
+
450  const T_scale& s) {
+
451  // Size checks
+
452  if (!(stan::length(y) && stan::length(nu) && stan::length(s)))
+
453  return 0.0;
+
454 
+
455  static const char* function
+
456  = "stan::prob::scaled_inv_chi_square_ccdf_log(%1%)";
+
457 
+ + + + + +
463  using stan::math::value_of;
+
464 
+
465  double P(0.0);
+
466 
+
467  if (!check_not_nan(function, y, "Random variable", &P))
+
468  return P;
+
469  if (!check_nonnegative(function, y, "Random variable", &P))
+
470  return P;
+
471  if (!check_finite(function, nu, "Degrees of freedom parameter", &P))
+
472  return P;
+
473  if (!check_positive(function, nu, "Degrees of freedom parameter", &P))
+
474  return P;
+
475  if (!check_finite(function, s, "Scale parameter", &P))
+
476  return P;
+
477  if (!check_positive(function, s, "Scale parameter", &P))
+
478  return P;
+
479  if (!(check_consistent_sizes(function, y, nu, s,
+
480  "Random variable",
+
481  "Degrees of freedom parameter",
+
482  "Scale parameter",
+
483  &P)))
+
484  return P;
+
485 
+
486  // Wrap arguments in vectors
+
487  VectorView<const T_y> y_vec(y);
+
488  VectorView<const T_dof> nu_vec(nu);
+
489  VectorView<const T_scale> s_vec(s);
+
490  size_t N = max_size(y, nu, s);
+
491 
+ +
493  operands_and_partials(y, nu, s);
+
494 
+
495  // Explicit return for extreme values
+
496  // The gradients are technically ill-defined, but treated as zero
+
497  for (size_t i = 0; i < stan::length(y); i++) {
+
498  if (value_of(y_vec[i]) == 0)
+
499  return operands_and_partials.to_var(0.0);
+
500  }
+
501 
+
502  // Compute cdf_log and its gradients
+
503  using boost::math::gamma_p_derivative;
+
504  using boost::math::gamma_q;
+
505  using boost::math::digamma;
+
506  using boost::math::tgamma;
+
507 
+
508  // Cache a few expensive function calls if nu is a parameter
+ +
510  is_vector<T_dof>::value> gamma_vec(stan::length(nu));
+ +
512  is_vector<T_dof>::value> digamma_vec(stan::length(nu));
+
513 
+ +
515  for (size_t i = 0; i < stan::length(nu); i++) {
+
516  const double half_nu_dbl = 0.5 * value_of(nu_vec[i]);
+
517  gamma_vec[i] = tgamma(half_nu_dbl);
+
518  digamma_vec[i] = digamma(half_nu_dbl);
+
519  }
+
520  }
+
521 
+
522  // Compute vectorized cdf_log and gradient
+
523  for (size_t n = 0; n < N; n++) {
+
524 
+
525  // Explicit results for extreme values
+
526  // The gradients are technically ill-defined, but treated as zero
+
527  if (value_of(y_vec[n]) == std::numeric_limits<double>::infinity()) {
+
528  return operands_and_partials.to_var(stan::math::negative_infinity());
+
529  }
+
530 
+
531  // Pull out values
+
532  const double y_dbl = value_of(y_vec[n]);
+
533  const double y_inv_dbl = 1.0 / y_dbl;
+
534  const double half_nu_dbl = 0.5 * value_of(nu_vec[n]);
+
535  const double s_dbl = value_of(s_vec[n]);
+
536  const double half_s2_overx_dbl = 0.5 * s_dbl * s_dbl * y_inv_dbl;
+
537  const double half_nu_s2_overx_dbl
+
538  = 2.0 * half_nu_dbl * half_s2_overx_dbl;
+
539 
+
540  // Compute
+
541  const double Pn = 1.0 - gamma_q(half_nu_dbl, half_nu_s2_overx_dbl);
+
542 
+
543  P += log(Pn);
+
544 
+ +
546  operands_and_partials.d_x1[n]
+
547  -= half_nu_s2_overx_dbl * y_inv_dbl
+
548  * gamma_p_derivative(half_nu_dbl, half_nu_s2_overx_dbl) / Pn;
+ +
550  operands_and_partials.d_x2[n]
+
551  -= (0.5 * stan::math::gradRegIncGamma(half_nu_dbl,
+
552  half_nu_s2_overx_dbl,
+
553  gamma_vec[n], digamma_vec[n])
+
554  - half_s2_overx_dbl
+
555  * gamma_p_derivative(half_nu_dbl, half_nu_s2_overx_dbl) )
+
556  / Pn;
+ +
558  operands_and_partials.d_x3[n]
+
559  += 2.0 * half_nu_dbl * s_dbl * y_inv_dbl
+
560  * gamma_p_derivative(half_nu_dbl, half_nu_s2_overx_dbl) / Pn;
+
561  }
+
562 
+
563  return operands_and_partials.to_var(P);
+
564  }
+
565 
+
566  template <class RNG>
+
567  inline double
+
568  scaled_inv_chi_square_rng(const double nu,
+
569  const double s,
+
570  RNG& rng) {
+
571  using boost::variate_generator;
+
572  using boost::random::chi_squared_distribution;
+
573 
+
574  static const char* function
+
575  = "stan::prob::scaled_inv_chi_square_rng(%1%)";
+
576 
+ + +
579 
+
580  if (!check_finite(function, nu, "Degrees of freedom parameter"))
+
581  return 0;
+
582  if (!check_positive(function, nu, "Degrees of freedom parameter"))
+
583  return 0;
+
584  if (!check_finite(function, s, "Scale parameter"))
+
585  return 0;
+
586  if (!check_positive(function, s, "Scale parameter"))
+
587  return 0;
+
588 
+
589  variate_generator<RNG&, chi_squared_distribution<> >
+
590  chi_square_rng(rng, chi_squared_distribution<>(nu));
+
591  return nu * s / chi_square_rng();
+
592  }
+
593  }
+
594 }
+
595 #endif
+
596 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/search/all_5f.html b/doc/api/html/search/all_5f.html new file mode 100644 index 00000000000..1f27755abcc --- /dev/null +++ b/doc/api/html/search/all_5f.html @@ -0,0 +1,25 @@ + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/doc/api/html/search/all_5f.js b/doc/api/html/search/all_5f.js new file mode 100644 index 00000000000..799f81d94f8 --- /dev/null +++ b/doc/api/html/search/all_5f.js @@ -0,0 +1,99 @@ +var searchData= +[ + ['_5f_5fstan_5f_5fagrad_5f_5frev_5f_5fvar_5fstack_5fcpp_5f_5f',['__STAN__AGRAD__REV__VAR_STACK_CPP__',['../var__stack_8cpp.html#a3ecef594fdb031601452cf4e8ab29953',1,'var_stack.cpp']]], + ['_5f_5fstan_5f_5fgm_5f_5fast_5fdef_5fhpp_5f_5f',['__STAN__GM__AST_DEF_HPP__',['../ast__def_8cpp.html#a8d8277f93d7f31b96e2609f6388d6409',1,'ast_def.cpp']]], + ['_5fadapt_5fbase_5fwindow',['_adapt_base_window',['../classstan_1_1mcmc_1_1windowed__adaptation.html#ae25e5dc1480c6e553d65e24beb964dec',1,'stan::mcmc::windowed_adaptation']]], + ['_5fadapt_5fflag',['_adapt_flag',['../classstan_1_1mcmc_1_1base__adapter.html#aef437ec008b42d9364f0165bd783a4de',1,'stan::mcmc::base_adapter']]], + ['_5fadapt_5finit_5fbuffer',['_adapt_init_buffer',['../classstan_1_1mcmc_1_1windowed__adaptation.html#a7a79530d16f82b9d8beb0961b4bb1018',1,'stan::mcmc::windowed_adaptation']]], + ['_5fadapt_5fnext_5fwindow',['_adapt_next_window',['../classstan_1_1mcmc_1_1windowed__adaptation.html#a0b3771ea39bc3fd60c43aea960b2df98',1,'stan::mcmc::windowed_adaptation']]], + ['_5fadapt_5fterm_5fbuffer',['_adapt_term_buffer',['../classstan_1_1mcmc_1_1windowed__adaptation.html#a81191d64fdfb010c997a538d479a270a',1,'stan::mcmc::windowed_adaptation']]], + ['_5fadapt_5fwindow_5fcounter',['_adapt_window_counter',['../classstan_1_1mcmc_1_1windowed__adaptation.html#ab589266e966065c3088e6b02c73ad1e3',1,'stan::mcmc::windowed_adaptation']]], + ['_5fadapt_5fwindow_5fsize',['_adapt_window_size',['../classstan_1_1mcmc_1_1windowed__adaptation.html#a9b669ff236cb187f69901064ce4835d3',1,'stan::mcmc::windowed_adaptation']]], + ['_5fadjaref',['_adjARef',['../agrad_2rev_2matrix_2determinant_8hpp.html#ac289fdc094f4376437157416320ac3bd',1,'_adjARef(): determinant.hpp'],['../agrad_2rev_2matrix_2log__determinant_8hpp.html#ac289fdc094f4376437157416320ac3bd',1,'_adjARef(): log_determinant.hpp'],['../agrad_2rev_2matrix_2log__determinant__spd_8hpp.html#ac289fdc094f4376437157416320ac3bd',1,'_adjARef(): log_determinant_spd.hpp']]], + ['_5falloc',['_alloc',['../classstan_1_1math_1_1_l_d_l_t__factor_3_01stan_1_1agrad_1_1var_00_01_r_00_01_c_01_4.html#ac161188fa80c04c2affb499c81e8b3bd',1,'stan::math::LDLT_factor< stan::agrad::var, R, C >::_alloc()'],['../agrad_2rev_2matrix_2log__determinant__spd_8hpp.html#a6a66022aa2c567d6be6ecc6a4818e36d',1,'_alloc(): log_determinant_spd.hpp'],['../agrad_2rev_2matrix_2mdivide__left__ldlt_8hpp.html#ac8fd1d052b1749cdac48e692c69b01e4',1,'_alloc(): mdivide_left_ldlt.hpp'],['../agrad_2rev_2matrix_2mdivide__left__spd_8hpp.html#af33a1ef9d6061ad644079483e4811d9c',1,'_alloc(): mdivide_left_spd.hpp']]], + ['_5falloc_5fldlt',['_alloc_ldlt',['../agrad_2rev_2matrix_2log__determinant__ldlt_8hpp.html#a33bff37593aa7c24792769893d6cd60d',1,'_alloc_ldlt(): log_determinant_ldlt.hpp'],['../agrad_2rev_2matrix_2mdivide__left__ldlt_8hpp.html#acb7147b3011bb4bb4d08ed4da2dd9ed6',1,'_alloc_ldlt(): mdivide_left_ldlt.hpp']]], + ['_5falpha',['_alpha',['../classstan_1_1optimization_1_1_b_f_g_s_minimizer.html#ad45ecfae1cf522aeccd74690e3ca5ab1',1,'stan::optimization::BFGSMinimizer']]], + ['_5falpha0',['_alpha0',['../classstan_1_1optimization_1_1_b_f_g_s_minimizer.html#ace039fd8789a6eba09a0fbc15584f003',1,'stan::optimization::BFGSMinimizer']]], + ['_5falphak_5f1',['_alphak_1',['../classstan_1_1optimization_1_1_b_f_g_s_minimizer.html#afc093ad16e0b1c8668463303ccc03429',1,'stan::optimization::BFGSMinimizer']]], + ['_5farguments',['_arguments',['../classstan_1_1gm_1_1argument__parser.html#a123bcf0183cb6bbe71068ff187a67e67',1,'stan::gm::argument_parser::_arguments()'],['../classstan_1_1gm_1_1argument__probe.html#a92cda768d0cd100860a9de7e3b1b6838',1,'stan::gm::argument_probe::_arguments()']]], + ['_5fbad_5fvalue',['_bad_value',['../classstan_1_1gm_1_1singleton__argument.html#a6c77999833a1f8e580fb13f76af3c4be',1,'stan::gm::singleton_argument']]], + ['_5fcols',['_cols',['../agrad_2rev_2matrix_2determinant_8hpp.html#a9c07cb6acc3ea9dc957ef6874d075e7b',1,'_cols(): determinant.hpp'],['../agrad_2rev_2matrix_2log__determinant_8hpp.html#a9c07cb6acc3ea9dc957ef6874d075e7b',1,'_cols(): log_determinant.hpp'],['../agrad_2rev_2matrix_2log__determinant__spd_8hpp.html#a9c07cb6acc3ea9dc957ef6874d075e7b',1,'_cols(): log_determinant_spd.hpp']]], + ['_5fconstrained',['_constrained',['../classstan_1_1gm_1_1singleton__argument.html#a3fb0b88831bbc32580be800e735654ef',1,'stan::gm::singleton_argument']]], + ['_5fcounter',['_counter',['../classstan_1_1mcmc_1_1stepsize__adaptation.html#ade5951f7ef5e42f0571838b2932408ee',1,'stan::mcmc::stepsize_adaptation']]], + ['_5fcovar_5fadaptation',['_covar_adaptation',['../classstan_1_1mcmc_1_1stepsize__covar__adapter.html#a81e2e0c870bf71ae803ed7bc29e7c10d',1,'stan::mcmc::stepsize_covar_adapter']]], + ['_5fcursor',['_cursor',['../classstan_1_1gm_1_1list__argument.html#ad55e26c7c3dad56b1755e7ff48ad105a',1,'stan::gm::list_argument']]], + ['_5fdefault',['_default',['../classstan_1_1gm_1_1valued__argument.html#abca552e2f3f5a60700aef0fb4b7e2982',1,'stan::gm::valued_argument']]], + ['_5fdefault_5fcursor',['_default_cursor',['../classstan_1_1gm_1_1list__argument.html#ad83ee16d6f572997bd75a2e573ebad6b',1,'stan::gm::list_argument']]], + ['_5fdefault_5fvalue',['_default_value',['../classstan_1_1gm_1_1singleton__argument.html#a09f10b878343aa0cce9e33a5cf7f8032',1,'stan::gm::singleton_argument']]], + ['_5fdelta',['_delta',['../classstan_1_1mcmc_1_1stepsize__adaptation.html#adceaf56188458666a1d2c9e390f03a74',1,'stan::mcmc::stepsize_adaptation']]], + ['_5fdepth',['_depth',['../classstan_1_1mcmc_1_1base__nuts.html#acb7e67dd254cab229429fcead7f18248',1,'stan::mcmc::base_nuts']]], + ['_5fdescription',['_description',['../classstan_1_1gm_1_1argument.html#aa0d6c7ba1141afefb7e78b829bc556a7',1,'stan::gm::argument']]], + ['_5fepsilon',['_epsilon',['../classstan_1_1mcmc_1_1base__hmc.html#a0d4321fe558ad0295196d79c5525a777',1,'stan::mcmc::base_hmc']]], + ['_5fepsilon_5fjitter',['_epsilon_jitter',['../classstan_1_1mcmc_1_1base__hmc.html#a1eb0217fe58fa1a2e4d0691831f062d6',1,'stan::mcmc::base_hmc']]], + ['_5ferr_5fstream',['_err_stream',['../classstan_1_1mcmc_1_1base__mcmc.html#a38c1899ffa57046d3da3ac5496ac4a8e',1,'stan::mcmc::base_mcmc::_err_stream()'],['../classstan_1_1mcmc_1_1base__hamiltonian.html#a7db84e905cea2560e6a223656594c393',1,'stan::mcmc::base_hamiltonian::_err_stream()']]], + ['_5festimator',['_estimator',['../classstan_1_1mcmc_1_1covar__adaptation.html#a58ed3f592a8a0ef46f440c9174ec439d',1,'stan::mcmc::covar_adaptation::_estimator()'],['../classstan_1_1mcmc_1_1var__adaptation.html#ac7cca0e0ab1286b812f2d890049a09e4',1,'stan::mcmc::var_adaptation::_estimator()']]], + ['_5festimator_5fname',['_estimator_name',['../classstan_1_1mcmc_1_1windowed__adaptation.html#a3a5f0f2df10b1e0e5431a97d9edc0a83',1,'stan::mcmc::windowed_adaptation']]], + ['_5ffast_5fmatrix_5fcopy',['_fast_matrix_copy',['../classstan_1_1mcmc_1_1ps__point.html#aa701eacefbab10b9cac8273267bbf39d',1,'stan::mcmc::ps_point']]], + ['_5ffast_5fvector_5fcopy',['_fast_vector_copy',['../classstan_1_1mcmc_1_1ps__point.html#a685e73353f2931b3afbfccd4acbe598d',1,'stan::mcmc::ps_point']]], + ['_5ffk',['_fk',['../classstan_1_1optimization_1_1_b_f_g_s_minimizer.html#a75288a0a0783ca985d0539f82a47a800',1,'stan::optimization::BFGSMinimizer']]], + ['_5ffk_5f1',['_fk_1',['../classstan_1_1optimization_1_1_b_f_g_s_minimizer.html#a244de3265b928cb15d10069931641a83',1,'stan::optimization::BFGSMinimizer']]], + ['_5ffunc',['_func',['../classstan_1_1optimization_1_1_b_f_g_s_minimizer.html#a02a192467c7706cf70db60141a3615f6',1,'stan::optimization::BFGSMinimizer']]], + ['_5fgamma',['_gamma',['../classstan_1_1mcmc_1_1stepsize__adaptation.html#a4747f034cf8440b500e76aada963ab41',1,'stan::mcmc::stepsize_adaptation']]], + ['_5fgk',['_gk',['../classstan_1_1optimization_1_1_b_f_g_s_minimizer.html#a8bf1d09f17e9a5665d3dcc821f153d33',1,'stan::optimization::BFGSMinimizer']]], + ['_5fgk_5f1',['_gk_1',['../classstan_1_1optimization_1_1_b_f_g_s_minimizer.html#aef94fd725067fd7fede3bc48a3b62c7b',1,'stan::optimization::BFGSMinimizer']]], + ['_5fgood_5fvalue',['_good_value',['../classstan_1_1gm_1_1singleton__argument.html#a69fa41809718b5093ddff19c515beeee',1,'stan::gm::singleton_argument']]], + ['_5fhamiltonian',['_hamiltonian',['../classstan_1_1mcmc_1_1base__hmc.html#a1181763cca26e4cde7db08023709bceb',1,'stan::mcmc::base_hmc']]], + ['_5fhelp_5fflag',['_help_flag',['../classstan_1_1gm_1_1argument__parser.html#a8756ce3f3d1e6a9ee3076439d5af15a7',1,'stan::gm::argument_parser']]], + ['_5fimpl',['_impl',['../agrad_2rev_2matrix_2quad__form_8hpp.html#aba5296c623c71f7372cb23517d7a9cfa',1,'_impl(): quad_form.hpp'],['../agrad_2rev_2matrix_2trace__gen__quad__form_8hpp.html#afd17a8260936f41e3700b767282501fa',1,'_impl(): trace_gen_quad_form.hpp'],['../agrad_2rev_2matrix_2trace__inv__quad__form__ldlt_8hpp.html#ab89158b8e67137e7d7693f9d285e6a6b',1,'_impl(): trace_inv_quad_form_ldlt.hpp'],['../agrad_2rev_2matrix_2trace__quad__form_8hpp.html#a0b5bde925768070ceaa12322cd5da836',1,'_impl(): trace_quad_form.hpp']]], + ['_5fintegrator',['_integrator',['../classstan_1_1mcmc_1_1base__hmc.html#a2f9b84971fc6b6ef1e46ff480b514240',1,'stan::mcmc::base_hmc']]], + ['_5finva',['_invA',['../agrad_2rev_2matrix_2log__determinant__spd_8hpp.html#ac62e1300d96ac0909e7fe11f8d8166ef',1,'log_determinant_spd.hpp']]], + ['_5fis_5fpresent',['_is_present',['../classstan_1_1gm_1_1unvalued__argument.html#a6b227464109b7ecf60f8a9093b92ee50',1,'stan::gm::unvalued_argument']]], + ['_5fitnum',['_itNum',['../classstan_1_1optimization_1_1_b_f_g_s_minimizer.html#a6a7e635b790a21bf66419b240c08936f',1,'stan::optimization::BFGSMinimizer']]], + ['_5fkappa',['_kappa',['../classstan_1_1mcmc_1_1stepsize__adaptation.html#abfa89219ff2a4b2895627b305fa9f83e',1,'stan::mcmc::stepsize_adaptation']]], + ['_5fldlt',['_ldlt',['../classstan_1_1agrad_1_1_l_d_l_t__alloc.html#ae09914c4457d949e9463ff514ddb3796',1,'stan::agrad::LDLT_alloc::_ldlt()'],['../classstan_1_1optimization_1_1_b_f_g_s_minimizer.html#a8b5218fc992daacb2748f6ea34a437b6',1,'stan::optimization::BFGSMinimizer::_ldlt()'],['../agrad_2rev_2matrix_2trace__inv__quad__form__ldlt_8hpp.html#a8ff5c08d7409eec748e7d3c88ec37eda',1,'_ldlt(): trace_inv_quad_form_ldlt.hpp']]], + ['_5fldltp',['_ldltP',['../classstan_1_1math_1_1_l_d_l_t__factor_3_01double_00_01_r_00_01_c_01_4.html#aa41484403512f2b107922d0d7fc5c63d',1,'stan::math::LDLT_factor< double, R, C >::_ldltP()'],['../agrad_2rev_2matrix_2mdivide__left__ldlt_8hpp.html#a65ac506e2dfa234b42d90ed38b481b50',1,'_ldltP(): mdivide_left_ldlt.hpp']]], + ['_5fllt',['_llt',['../agrad_2rev_2matrix_2mdivide__left__spd_8hpp.html#a9443c5162b5e88a4425734a7c46ed32a',1,'mdivide_left_spd.hpp']]], + ['_5fm',['_m',['../classstan_1_1prob_1_1welford__covar__estimator.html#a7cb4d78c9a9496b27f719eb93c56436d',1,'stan::prob::welford_covar_estimator::_m()'],['../classstan_1_1prob_1_1welford__var__estimator.html#a97a3e57c6fd9781409f061b9f2937284',1,'stan::prob::welford_var_estimator::_m()']]], + ['_5fm2',['_m2',['../classstan_1_1prob_1_1welford__covar__estimator.html#a9ebe972e6e8ea3e680031c36f59bc3c5',1,'stan::prob::welford_covar_estimator::_m2()'],['../classstan_1_1prob_1_1welford__var__estimator.html#aa805b2a914cff1c8326b2b9037cdbcec',1,'stan::prob::welford_var_estimator::_m2()']]], + ['_5fmax_5fdelta',['_max_delta',['../classstan_1_1mcmc_1_1base__nuts.html#a32c5b1250b06867e5bfad17cb33943b7',1,'stan::mcmc::base_nuts']]], + ['_5fmax_5fdepth',['_max_depth',['../classstan_1_1mcmc_1_1base__nuts.html#aca7e01df1dadea953191cb0818e45e2f',1,'stan::mcmc::base_nuts']]], + ['_5fmethod_5fflag',['_method_flag',['../classstan_1_1gm_1_1argument__parser.html#a0d7e3677a25c3602d9491c5876cb398c',1,'stan::gm::argument_parser']]], + ['_5fmodel',['_model',['../classstan_1_1mcmc_1_1base__hamiltonian.html#a7c187e854abd5b0aca8726cbfab86a21',1,'stan::mcmc::base_hamiltonian']]], + ['_5fmu',['_mu',['../classstan_1_1mcmc_1_1stepsize__adaptation.html#a3ba1ba74a735ae0c6826b49e7bd284df',1,'stan::mcmc::stepsize_adaptation']]], + ['_5fn_5fdivergent',['_n_divergent',['../classstan_1_1mcmc_1_1base__nuts.html#a103b33df985e433f37a56ee0626a7861',1,'stan::mcmc::base_nuts']]], + ['_5fn_5fleapfrog',['_n_leapfrog',['../classstan_1_1mcmc_1_1base__nuts.html#a37b2e2d56dd02f9840562a7b055d8644',1,'stan::mcmc::base_nuts']]], + ['_5fname',['_name',['../classstan_1_1gm_1_1argument.html#a23946e8de0291c9868b0e5430ff71cf0',1,'stan::gm::argument::_name()'],['../classstan_1_1mcmc_1_1base__mcmc.html#ad2c7124c9b80002735c5db2b7aecf482',1,'stan::mcmc::base_mcmc::_name()']]], + ['_5fnom_5fepsilon',['_nom_epsilon',['../classstan_1_1mcmc_1_1base__hmc.html#a514b2e6f2d9481218709b1a16747f8a6',1,'stan::mcmc::base_hmc']]], + ['_5fnote',['_note',['../classstan_1_1optimization_1_1_b_f_g_s_minimizer.html#a85128ba7124ddd7e9e604df71a9c71c5',1,'stan::optimization::BFGSMinimizer']]], + ['_5fnum_5fsamples',['_num_samples',['../classstan_1_1prob_1_1welford__covar__estimator.html#ac3239162bce3b35ff653b8072aa8e7e3',1,'stan::prob::welford_covar_estimator::_num_samples()'],['../classstan_1_1prob_1_1welford__var__estimator.html#a8b378660396e184e69b5cd7152f4e094',1,'stan::prob::welford_var_estimator::_num_samples()']]], + ['_5fnum_5fwarmup',['_num_warmup',['../classstan_1_1mcmc_1_1windowed__adaptation.html#a49833a6e927a0e7dec9a82d756626e16',1,'stan::mcmc::windowed_adaptation']]], + ['_5fopts',['_opts',['../classstan_1_1optimization_1_1_b_f_g_s_minimizer.html#a2f69cfce2ab1a2004dd6687df21b565a',1,'stan::optimization::BFGSMinimizer']]], + ['_5fout_5fstream',['_out_stream',['../classstan_1_1mcmc_1_1base__mcmc.html#ab021a0550faee8630a30990d7ebf7b88',1,'stan::mcmc::base_mcmc::_out_stream()'],['../classstan_1_1mcmc_1_1base__integrator.html#a4cc219f3069be428aa6a74c01d08d333',1,'stan::mcmc::base_integrator::_out_stream()']]], + ['_5frand_5fint',['_rand_int',['../classstan_1_1mcmc_1_1base__hmc.html#a06d0bc3d17266ca80823487f6a6e1180',1,'stan::mcmc::base_hmc']]], + ['_5frand_5funiform',['_rand_uniform',['../classstan_1_1mcmc_1_1base__hmc.html#a5970ff139255992393ebd05cd8cc68f0',1,'stan::mcmc::base_hmc']]], + ['_5frows',['_rows',['../agrad_2rev_2matrix_2determinant_8hpp.html#a3e8959363f536b448785cdfdb1dd461a',1,'_rows(): determinant.hpp'],['../agrad_2rev_2matrix_2log__determinant_8hpp.html#a3e8959363f536b448785cdfdb1dd461a',1,'_rows(): log_determinant.hpp'],['../agrad_2rev_2matrix_2log__determinant__spd_8hpp.html#a3e8959363f536b448785cdfdb1dd461a',1,'_rows(): log_determinant_spd.hpp']]], + ['_5fs_5fbar',['_s_bar',['../classstan_1_1mcmc_1_1stepsize__adaptation.html#a0a3fe27836b539b99e81b5ba3b7e36e1',1,'stan::mcmc::stepsize_adaptation']]], + ['_5fsk',['_sk',['../classstan_1_1optimization_1_1_b_f_g_s_minimizer.html#a7cef3ef923dfd139bb8bb6990b6d47f1',1,'stan::optimization::BFGSMinimizer']]], + ['_5fsk_5f1',['_sk_1',['../classstan_1_1optimization_1_1_b_f_g_s_minimizer.html#a972b1176a858cd4c3209c6d1629953af',1,'stan::optimization::BFGSMinimizer']]], + ['_5fstepsize_5fadaptation',['_stepsize_adaptation',['../classstan_1_1mcmc_1_1stepsize__adapter.html#a560cd9f56401167b284e7eb36e58cbec',1,'stan::mcmc::stepsize_adapter::_stepsize_adaptation()'],['../classstan_1_1mcmc_1_1stepsize__covar__adapter.html#a50045d3383df82e4c3dda971ed0ddf38',1,'stan::mcmc::stepsize_covar_adapter::_stepsize_adaptation()'],['../classstan_1_1mcmc_1_1stepsize__var__adapter.html#aed1abeb55985ad65b435e7a7ced9d4d5',1,'stan::mcmc::stepsize_var_adapter::_stepsize_adaptation()']]], + ['_5fsubarguments',['_subarguments',['../classstan_1_1gm_1_1categorical__argument.html#ae906b6761d356c568023f68020647240',1,'stan::gm::categorical_argument']]], + ['_5fsym',['_sym',['../agrad_2rev_2matrix_2quad__form_8hpp.html#a0f0c3a82aa9cb1ecd7d97fce67fea63d',1,'quad_form.hpp']]], + ['_5ft0',['_t0',['../classstan_1_1mcmc_1_1stepsize__adaptation.html#a9343ca729fb8566cde5b102d391d7003',1,'stan::mcmc::stepsize_adaptation']]], + ['_5fupdate_5fl',['_update_L',['../classstan_1_1mcmc_1_1base__static__hmc.html#a99f17a731044a9880298f5e254b94a69',1,'stan::mcmc::base_static_hmc']]], + ['_5fvalidity',['_validity',['../classstan_1_1gm_1_1singleton__argument.html#a74d2460a6fd7de8d3d05b191856f5468',1,'stan::gm::singleton_argument']]], + ['_5fvalue',['_value',['../classstan_1_1gm_1_1singleton__argument.html#a841db6c125379f5a359f3049f532f53b',1,'stan::gm::singleton_argument::_value()'],['../agrad_2rev_2matrix_2trace__inv__quad__form__ldlt_8hpp.html#a3e78e92b9e102f837e1433ff78edd53c',1,'_value(): trace_inv_quad_form_ldlt.hpp']]], + ['_5fvalue_5ftype',['_value_type',['../classstan_1_1gm_1_1valued__argument.html#a8a47f35a2b7426e96bbed0739714b767',1,'stan::gm::valued_argument']]], + ['_5fvalues',['_values',['../classstan_1_1gm_1_1list__argument.html#a784a4d1f183a4404936d25136e27b0f7',1,'stan::gm::list_argument']]], + ['_5fvar_5fadaptation',['_var_adaptation',['../classstan_1_1mcmc_1_1stepsize__var__adapter.html#a4b0e0a10b281ecbc17a22731cabd5032',1,'stan::mcmc::stepsize_var_adapter']]], + ['_5fvaria',['_variA',['../classstan_1_1agrad_1_1_l_d_l_t__alloc.html#a6dce12eeba806f82e50fa553633ba33e',1,'stan::agrad::LDLT_alloc']]], + ['_5fvarib',['_variB',['../agrad_2rev_2matrix_2trace__inv__quad__form__ldlt_8hpp.html#a6d2efaefd09e1eb3e1a9a28f2b3a509b',1,'trace_inv_quad_form_ldlt.hpp']]], + ['_5fvarid',['_variD',['../agrad_2rev_2matrix_2trace__inv__quad__form__ldlt_8hpp.html#ad7f5a226630b241aa90441b387c06c41',1,'trace_inv_quad_form_ldlt.hpp']]], + ['_5fvarirefa',['_variRefA',['../agrad_2rev_2matrix_2mdivide__left_8hpp.html#aea7df605462946b48f6c8200fe67a467',1,'_variRefA(): mdivide_left.hpp'],['../agrad_2rev_2matrix_2mdivide__left__spd_8hpp.html#aea7df605462946b48f6c8200fe67a467',1,'_variRefA(): mdivide_left_spd.hpp'],['../agrad_2rev_2matrix_2mdivide__left__tri_8hpp.html#aea7df605462946b48f6c8200fe67a467',1,'_variRefA(): mdivide_left_tri.hpp']]], + ['_5fvarirefb',['_variRefB',['../agrad_2rev_2matrix_2mdivide__left_8hpp.html#aa2a293603982ac5da732ef1c85aabcd4',1,'_variRefB(): mdivide_left.hpp'],['../agrad_2rev_2matrix_2mdivide__left__ldlt_8hpp.html#aa2a293603982ac5da732ef1c85aabcd4',1,'_variRefB(): mdivide_left_ldlt.hpp'],['../agrad_2rev_2matrix_2mdivide__left__spd_8hpp.html#aa2a293603982ac5da732ef1c85aabcd4',1,'_variRefB(): mdivide_left_spd.hpp'],['../agrad_2rev_2matrix_2mdivide__left__tri_8hpp.html#aa2a293603982ac5da732ef1c85aabcd4',1,'_variRefB(): mdivide_left_tri.hpp']]], + ['_5fvarirefc',['_variRefC',['../agrad_2rev_2matrix_2mdivide__left_8hpp.html#ab81845acdc3a00d1a9358f95da0d560e',1,'_variRefC(): mdivide_left.hpp'],['../agrad_2rev_2matrix_2mdivide__left__ldlt_8hpp.html#ab81845acdc3a00d1a9358f95da0d560e',1,'_variRefC(): mdivide_left_ldlt.hpp'],['../agrad_2rev_2matrix_2mdivide__left__spd_8hpp.html#ab81845acdc3a00d1a9358f95da0d560e',1,'_variRefC(): mdivide_left_spd.hpp'],['../agrad_2rev_2matrix_2mdivide__left__tri_8hpp.html#ab81845acdc3a00d1a9358f95da0d560e',1,'_variRefC(): mdivide_left_tri.hpp']]], + ['_5fwrite_5ferror_5fmsg',['_write_error_msg',['../classstan_1_1mcmc_1_1base__hamiltonian.html#a21467777d0c2768f9eb57e76c9fd1b85',1,'stan::mcmc::base_hamiltonian']]], + ['_5fx_5fbar',['_x_bar',['../classstan_1_1mcmc_1_1stepsize__adaptation.html#a0091180522b7f03d801a6f8ec46c7f21',1,'stan::mcmc::stepsize_adaptation']]], + ['_5fxk',['_xk',['../classstan_1_1optimization_1_1_b_f_g_s_minimizer.html#a6107a86ad15de26b4dd7c8877a892331',1,'stan::optimization::BFGSMinimizer']]], + ['_5fxk_5f1',['_xk_1',['../classstan_1_1optimization_1_1_b_f_g_s_minimizer.html#a5659d96d4d5d37d72cb62ab6b747eb7a',1,'stan::optimization::BFGSMinimizer']]], + ['_5fz',['_z',['../classstan_1_1mcmc_1_1base__hmc.html#abaa8c5f40b664481b188c8342f3917db',1,'stan::mcmc::base_hmc']]] +]; diff --git a/doc/api/html/search/all_61.html b/doc/api/html/search/all_61.html new file mode 100644 index 00000000000..a3164d5530c --- /dev/null +++ b/doc/api/html/search/all_61.html @@ -0,0 +1,25 @@ + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/doc/api/html/search/all_61.js b/doc/api/html/search/all_61.js new file mode 100644 index 00000000000..fd5db774688 --- /dev/null +++ b/doc/api/html/search/all_61.js @@ -0,0 +1,297 @@ +var searchData= +[ + ['a_5f',['A_',['../agrad_2rev_2matrix_2determinant_8hpp.html#a11b6b3ab6459db606ab7f4bfd4ad2823',1,'A_(): determinant.hpp'],['../agrad_2rev_2matrix_2log__determinant_8hpp.html#a11b6b3ab6459db606ab7f4bfd4ad2823',1,'A_(): log_determinant.hpp'],['../agrad_2rev_2matrix_2mdivide__left_8hpp.html#a11b6b3ab6459db606ab7f4bfd4ad2823',1,'A_(): mdivide_left.hpp'],['../agrad_2rev_2matrix_2mdivide__left__tri_8hpp.html#a11b6b3ab6459db606ab7f4bfd4ad2823',1,'A_(): mdivide_left_tri.hpp'],['../agrad_2rev_2matrix_2quad__form_8hpp.html#a74fc8e511e9ed21b74f2b3e281ff4c72',1,'A_(): quad_form.hpp'],['../agrad_2rev_2matrix_2trace__gen__quad__form_8hpp.html#a74fc8e511e9ed21b74f2b3e281ff4c72',1,'A_(): trace_gen_quad_form.hpp'],['../agrad_2rev_2matrix_2trace__quad__form_8hpp.html#a74fc8e511e9ed21b74f2b3e281ff4c72',1,'A_(): trace_quad_form.hpp']]], + ['abs',['abs',['../namespacestan_1_1agrad.html#a2d5337cd9cddc3807cb3b3740221ace1',1,'stan::agrad::abs(const var &a)'],['../namespacestan_1_1agrad.html#a16237ddae626928422d7c63f7f02ae6f',1,'stan::agrad::abs(const fvar< T > &x)'],['../namespacestan_1_1math.html#aeb4764556637084eee528b45d8eaa767',1,'stan::math::abs()']]], + ['abs_2ehpp',['abs.hpp',['../agrad_2fwd_2functions_2abs_8hpp.html',1,'']]], + ['abs_2ehpp',['abs.hpp',['../agrad_2rev_2functions_2abs_8hpp.html',1,'']]], + ['abs_2ehpp',['abs.hpp',['../math_2functions_2abs_8hpp.html',1,'']]], + ['accept_5fstat',['accept_stat',['../classstan_1_1mcmc_1_1sample.html#ab427230e7e2d5cb3b541c3b7040d0fb7',1,'stan::mcmc::sample']]], + ['accumulator',['accumulator',['../classstan_1_1math_1_1accumulator.html',1,'stan::math']]], + ['accumulator',['accumulator',['../classstan_1_1math_1_1accumulator.html#afb44f3c753ac1373482e123df612a266',1,'stan::math::accumulator']]], + ['accumulator_2ehpp',['accumulator.hpp',['../accumulator_8hpp.html',1,'']]], + ['acos',['acos',['../namespacestan_1_1agrad.html#a3d7b4b9ba0df66c3ae59a4478fecdc2b',1,'stan::agrad::acos(const var &a)'],['../namespacestan_1_1agrad.html#a8d58f71cd77c7447a63eb336f9b29857',1,'stan::agrad::acos(const fvar< T > &x)']]], + ['acos_2ehpp',['acos.hpp',['../fwd_2functions_2acos_8hpp.html',1,'']]], + ['acos_2ehpp',['acos.hpp',['../rev_2functions_2acos_8hpp.html',1,'']]], + ['acosh',['acosh',['../namespacestan_1_1agrad.html#a7f0ba2a81fb92e3f18d75fd4da3f5b67',1,'stan::agrad::acosh(const fvar< T > &x)'],['../namespacestan_1_1agrad.html#a55d6c606ed591f3aa617ccf6ef912d17',1,'stan::agrad::acosh(const stan::agrad::var &a)']]], + ['acosh_2ehpp',['acosh.hpp',['../fwd_2functions_2acosh_8hpp.html',1,'']]], + ['acosh_2ehpp',['acosh.hpp',['../rev_2functions_2acosh_8hpp.html',1,'']]], + ['ad_5f',['ad_',['../classstan_1_1agrad_1_1op__ddv__vari.html#ab8049b0e5cba4646440a2a1c1cd04df8',1,'stan::agrad::op_ddv_vari::ad_()'],['../classstan_1_1agrad_1_1op__dv__vari.html#ad87be470866f04643d2f34067ae4b772',1,'stan::agrad::op_dv_vari::ad_()'],['../classstan_1_1agrad_1_1op__dvd__vari.html#ab2a01176a41145a445de4a77f2a5e733',1,'stan::agrad::op_dvd_vari::ad_()'],['../classstan_1_1agrad_1_1op__dvv__vari.html#a73736e271f0a642a887c75903729c76d',1,'stan::agrad::op_dvv_vari::ad_()'],['../agrad__thread__safe_8hpp.html#a7e82ab18118812301f1d7f89468aab1f',1,'ad_(): agrad_thread_safe.hpp']]], + ['adapt_5fdense_5fe_5fnuts',['adapt_dense_e_nuts',['../classstan_1_1mcmc_1_1adapt__dense__e__nuts.html',1,'stan::mcmc']]], + ['adapt_5fdense_5fe_5fnuts',['adapt_dense_e_nuts',['../classstan_1_1mcmc_1_1adapt__dense__e__nuts.html#a7f2a7a4f48cbc0f7667f01e9045e069a',1,'stan::mcmc::adapt_dense_e_nuts']]], + ['adapt_5fdense_5fe_5fnuts_2ehpp',['adapt_dense_e_nuts.hpp',['../adapt__dense__e__nuts_8hpp.html',1,'']]], + ['adapt_5fdense_5fe_5fstatic_5fhmc',['adapt_dense_e_static_hmc',['../classstan_1_1mcmc_1_1adapt__dense__e__static__hmc.html#a7d57f187b6877982cf329800e47b5370',1,'stan::mcmc::adapt_dense_e_static_hmc']]], + ['adapt_5fdense_5fe_5fstatic_5fhmc',['adapt_dense_e_static_hmc',['../classstan_1_1mcmc_1_1adapt__dense__e__static__hmc.html',1,'stan::mcmc']]], + ['adapt_5fdense_5fe_5fstatic_5fhmc_2ehpp',['adapt_dense_e_static_hmc.hpp',['../adapt__dense__e__static__hmc_8hpp.html',1,'']]], + ['adapt_5fdiag_5fe_5fnuts',['adapt_diag_e_nuts',['../classstan_1_1mcmc_1_1adapt__diag__e__nuts.html',1,'stan::mcmc']]], + ['adapt_5fdiag_5fe_5fnuts',['adapt_diag_e_nuts',['../classstan_1_1mcmc_1_1adapt__diag__e__nuts.html#a8e2eb81bdeed65fb1cdf8512643c5247',1,'stan::mcmc::adapt_diag_e_nuts']]], + ['adapt_5fdiag_5fe_5fnuts_2ehpp',['adapt_diag_e_nuts.hpp',['../adapt__diag__e__nuts_8hpp.html',1,'']]], + ['adapt_5fdiag_5fe_5fstatic_5fhmc',['adapt_diag_e_static_hmc',['../classstan_1_1mcmc_1_1adapt__diag__e__static__hmc.html',1,'stan::mcmc']]], + ['adapt_5fdiag_5fe_5fstatic_5fhmc',['adapt_diag_e_static_hmc',['../classstan_1_1mcmc_1_1adapt__diag__e__static__hmc.html#a08c8c79cc0a4c5fcfc8a2be30b9ab858',1,'stan::mcmc::adapt_diag_e_static_hmc']]], + ['adapt_5fdiag_5fe_5fstatic_5fhmc_2ehpp',['adapt_diag_e_static_hmc.hpp',['../adapt__diag__e__static__hmc_8hpp.html',1,'']]], + ['adapt_5funit_5fe_5fnuts',['adapt_unit_e_nuts',['../classstan_1_1mcmc_1_1adapt__unit__e__nuts.html#a65a0e3a8ff345164784d1c411c1d685f',1,'stan::mcmc::adapt_unit_e_nuts']]], + ['adapt_5funit_5fe_5fnuts',['adapt_unit_e_nuts',['../classstan_1_1mcmc_1_1adapt__unit__e__nuts.html',1,'stan::mcmc']]], + ['adapt_5funit_5fe_5fnuts_2ehpp',['adapt_unit_e_nuts.hpp',['../adapt__unit__e__nuts_8hpp.html',1,'']]], + ['adapt_5funit_5fe_5fstatic_5fhmc',['adapt_unit_e_static_hmc',['../classstan_1_1mcmc_1_1adapt__unit__e__static__hmc.html#ab6e501da21dace8ba4deb0378df2e74f',1,'stan::mcmc::adapt_unit_e_static_hmc']]], + ['adapt_5funit_5fe_5fstatic_5fhmc',['adapt_unit_e_static_hmc',['../classstan_1_1mcmc_1_1adapt__unit__e__static__hmc.html',1,'stan::mcmc']]], + ['adapt_5funit_5fe_5fstatic_5fhmc_2ehpp',['adapt_unit_e_static_hmc.hpp',['../adapt__unit__e__static__hmc_8hpp.html',1,'']]], + ['adaptation',['adaptation',['../structstan_1_1io_1_1stan__csv.html#aef8315d92141f9f96c832340b7d6553d',1,'stan::io::stan_csv']]], + ['adaptation_5fwindow',['adaptation_window',['../classstan_1_1mcmc_1_1windowed__adaptation.html#a8e82facfbdd25e23a6dc04dfb47f6f55',1,'stan::mcmc::windowed_adaptation']]], + ['adapting',['adapting',['../classstan_1_1mcmc_1_1base__adapter.html#a56b7bacc5a6d31b2e0d0d2dc8f096cb7',1,'stan::mcmc::base_adapter']]], + ['add',['add',['../classstan_1_1gm_1_1function__signatures.html#a2cd5e6592f8f0839d0744d0ac6c889a6',1,'stan::gm::function_signatures::add(const std::string &name, const expr_type &result_type, const std::vector< expr_type > &arg_types)'],['../classstan_1_1gm_1_1function__signatures.html#a155a6d04ca2dd66396558e55afee2ac9',1,'stan::gm::function_signatures::add(const std::string &name, const expr_type &result_type)'],['../classstan_1_1gm_1_1function__signatures.html#a7030b5e710a69202f33055d64f506aac',1,'stan::gm::function_signatures::add(const std::string &name, const expr_type &result_type, const expr_type &arg_type)'],['../classstan_1_1gm_1_1function__signatures.html#aa0947100246ba8239f476a6b337c7a45',1,'stan::gm::function_signatures::add(const std::string &name, const expr_type &result_type, const expr_type &arg_type1, const expr_type &arg_type2)'],['../classstan_1_1gm_1_1function__signatures.html#a827e5f55c134829c58dc20924ba02d8e',1,'stan::gm::function_signatures::add(const std::string &name, const expr_type &result_type, const expr_type &arg_type1, const expr_type &arg_type2, const expr_type &arg_type3)'],['../classstan_1_1gm_1_1function__signatures.html#a029bfb7842b41f1c3cd853ca9806a6c9',1,'stan::gm::function_signatures::add(const std::string &name, const expr_type &result_type, const expr_type &arg_type1, const expr_type &arg_type2, const expr_type &arg_type3, const expr_type &arg_type4)'],['../classstan_1_1gm_1_1function__signatures.html#acb2e2b50157a56f5a924cf9d8c134025',1,'stan::gm::function_signatures::add(const std::string &name, const expr_type &result_type, const expr_type &arg_type1, const expr_type &arg_type2, const expr_type &arg_type3, const expr_type &arg_type4, const expr_type &arg_type5)'],['../classstan_1_1gm_1_1function__signatures.html#a59a3c6beef4febbc41c38a7ed92e4b8a',1,'stan::gm::function_signatures::add(const std::string &name, const expr_type &result_type, const expr_type &arg_type1, const expr_type &arg_type2, const expr_type &arg_type3, const expr_type &arg_type4, const expr_type &arg_type5, const expr_type &arg_type6)'],['../classstan_1_1gm_1_1function__signatures.html#ab8b4feffbf25d433f7f4545a28fed897',1,'stan::gm::function_signatures::add(const std::string &name, const expr_type &result_type, const expr_type &arg_type1, const expr_type &arg_type2, const expr_type &arg_type3, const expr_type &arg_type4, const expr_type &arg_type5, const expr_type &arg_type6, const expr_type &arg_type7)'],['../structstan_1_1gm_1_1variable__map.html#a2a1c8d42745d2ba940577f8f9d4da17e',1,'stan::gm::variable_map::add()'],['../classstan_1_1math_1_1accumulator.html#af2da77a509c4e7e9c16d8a6f691a6901',1,'stan::math::accumulator::add(S x)'],['../classstan_1_1math_1_1accumulator.html#a35bd3df3c2f49e6e4e13e8c09da5ac89',1,'stan::math::accumulator::add(const S &x)'],['../classstan_1_1math_1_1accumulator.html#af66ce8b37f8d8af158dd38784b34d86b',1,'stan::math::accumulator::add(const Eigen::Matrix< S, R, C > &m)'],['../classstan_1_1math_1_1accumulator.html#acf91e7cb369f45142386598d552a30e2',1,'stan::math::accumulator::add(const std::vector< S > &xs)'],['../structstan_1_1math_1_1array__builder.html#a085e0190d7a41c4e33bfa9f542b1d62a',1,'stan::math::array_builder::add()'],['../classstan_1_1mcmc_1_1chains.html#af47331852814d5853f769cfb5d71fbe2',1,'stan::mcmc::chains::add(const int chain, const Eigen::MatrixXd &sample)'],['../classstan_1_1mcmc_1_1chains.html#a87a66fd3d8395bd6b44e8e9fba8e4068',1,'stan::mcmc::chains::add(const Eigen::MatrixXd &sample)'],['../classstan_1_1mcmc_1_1chains.html#a0c7ad1958670871f1d080d8feb8233b6',1,'stan::mcmc::chains::add(const stan::io::stan_csv &stan_csv)'],['../namespacestan_1_1math.html#a3d4b97f71328d3de40de286ec6e3754e',1,'stan::math::add(const Eigen::Matrix< T1, R, C > &m1, const Eigen::Matrix< T2, R, C > &m2)'],['../namespacestan_1_1math.html#aa92ade0aeac74c8366b8c210446324a1',1,'stan::math::add(const Eigen::Matrix< T1, R, C > &m, const T2 &c)'],['../namespacestan_1_1math.html#ac4cbcb4a48d3284e93afe13093412683',1,'stan::math::add(const T1 &c, const Eigen::Matrix< T2, R, C > &m)']]], + ['add_2ehpp',['add.hpp',['../add_8hpp.html',1,'']]], + ['add_5fbinary',['add_binary',['../classstan_1_1gm_1_1function__signatures.html#a3cac5b9cb17575d88d76286fcff64344',1,'stan::gm::function_signatures']]], + ['add_5fconditional_5fbody',['add_conditional_body',['../structstan_1_1gm_1_1add__conditional__body.html',1,'stan::gm']]], + ['add_5fconditional_5fbody_5ff',['add_conditional_body_f',['../namespacestan_1_1gm.html#ad78f054e040e1e50bbca1c359bdfb212',1,'stan::gm']]], + ['add_5fconditional_5fcondition',['add_conditional_condition',['../structstan_1_1gm_1_1add__conditional__condition.html',1,'stan::gm']]], + ['add_5fconditional_5fcondition_5ff',['add_conditional_condition_f',['../namespacestan_1_1gm.html#ac933d49bf64b047878de0a9cd6bee469',1,'stan::gm']]], + ['add_5fexpression_5fdimss',['add_expression_dimss',['../structstan_1_1gm_1_1add__expression__dimss.html',1,'stan::gm']]], + ['add_5fexpression_5fdimss_5ff',['add_expression_dimss_f',['../namespacestan_1_1gm.html#a59538d290878f4de9cd33e6d21f57a3c',1,'stan::gm']]], + ['add_5floop_5fidentifier',['add_loop_identifier',['../structstan_1_1gm_1_1add__loop__identifier.html',1,'stan::gm']]], + ['add_5floop_5fidentifier_5ff',['add_loop_identifier_f',['../namespacestan_1_1gm.html#aa52cffaf304fc09f5936e0fe6a708a15',1,'stan::gm']]], + ['add_5fnullary',['add_nullary',['../classstan_1_1gm_1_1function__signatures.html#a5ef070db4552215d2de0ebdcf2298481',1,'stan::gm::function_signatures']]], + ['add_5fquaternary',['add_quaternary',['../classstan_1_1gm_1_1function__signatures.html#a7e6eae9e711df2373c8f624c7d9da53c',1,'stan::gm::function_signatures']]], + ['add_5fsample',['add_sample',['../classstan_1_1prob_1_1welford__covar__estimator.html#a3446b92b64b15d105b399c1723fcad57',1,'stan::prob::welford_covar_estimator::add_sample()'],['../classstan_1_1prob_1_1welford__var__estimator.html#a3706c5c31c545bafd3dee6fa1dcce816',1,'stan::prob::welford_var_estimator::add_sample()']]], + ['add_5fternary',['add_ternary',['../classstan_1_1gm_1_1function__signatures.html#a028061fc0bf4b4842aacd64be3fcc89e',1,'stan::gm::function_signatures']]], + ['add_5funary',['add_unary',['../classstan_1_1gm_1_1function__signatures.html#a9ce2dcdafcd2370053c4eb0c9be10042',1,'stan::gm::function_signatures']]], + ['add_5fvec',['add_vec',['../classstan_1_1io_1_1var__context.html#a4cdc64bb5dbdc26f15885fc34737752e',1,'stan::io::var_context']]], + ['add_5fwhile_5fbody',['add_while_body',['../structstan_1_1gm_1_1add__while__body.html',1,'stan::gm']]], + ['add_5fwhile_5fbody_5ff',['add_while_body_f',['../namespacestan_1_1gm.html#a6cd03a1b864b365878417733f67b523e',1,'stan::gm']]], + ['add_5fwhile_5fcondition',['add_while_condition',['../structstan_1_1gm_1_1add__while__condition.html',1,'stan::gm']]], + ['add_5fwhile_5fcondition_5ff',['add_while_condition_f',['../namespacestan_1_1gm.html#adb748e38743964139413d8a31c622474',1,'stan::gm']]], + ['addcost',['AddCost',['../struct_eigen_1_1_num_traits_3_01stan_1_1agrad_1_1var_01_4.html#a932a61195daad3e89711cfb02521cac9ad567631af797962bfa1646b3228b1d8d',1,'Eigen::NumTraits< stan::agrad::var >']]], + ['addition',['addition',['../namespacestan_1_1gm.html#a66dd9d718181d0b71df757b512a9e7b6',1,'stan::gm']]], + ['addition_5fexpr',['addition_expr',['../structstan_1_1gm_1_1addition__expr.html',1,'stan::gm']]], + ['adj',['adj',['../classstan_1_1agrad_1_1var.html#a44db5cfbac5b6858bc26cbb2518a6826',1,'stan::agrad::var']]], + ['adj_5f',['adj_',['../classstan_1_1agrad_1_1vari.html#a23c19b981f1a4f850e840884b76d08a0',1,'stan::agrad::vari']]], + ['agrad_2ehpp',['agrad.hpp',['../agrad_8hpp.html',1,'']]], + ['agrad_5fthread_5fsafe_2ehpp',['agrad_thread_safe.hpp',['../agrad__thread__safe_8hpp.html',1,'']]], + ['ainvb_5f',['AinvB_',['../agrad_2rev_2matrix_2trace__inv__quad__form__ldlt_8hpp.html#ab94d72eb089cbdafd7d658f9f21e2749',1,'trace_inv_quad_form_ldlt.hpp']]], + ['algorithm',['algorithm',['../structstan_1_1io_1_1stan__csv__metadata.html#ade7047cd16512c5a03c4d1dc9b6a3282',1,'stan::io::stan_csv_metadata']]], + ['all_5fconstant',['all_constant',['../structstan_1_1agrad_1_1_operands_and_partials.html#af8cdd957e2c7d02ea713440ae2ff0d5c',1,'stan::agrad::OperandsAndPartials']]], + ['all_5fpartials',['all_partials',['../structstan_1_1agrad_1_1_operands_and_partials.html#a72bcc7c3e6fb628355b1d147660dd1c1',1,'stan::agrad::OperandsAndPartials']]], + ['all_5fvaris',['all_varis',['../structstan_1_1agrad_1_1_operands_and_partials.html#a3af6956efe05f1ae634bcff64224b25f',1,'stan::agrad::OperandsAndPartials']]], + ['alloc',['alloc',['../classstan_1_1memory_1_1chunk__alloc.html#a220d04d5ca74562e28a6c01111d8fd22',1,'stan::memory::chunk_alloc::alloc()'],['../classstan_1_1memory_1_1stack__alloc.html#a90eb1978d8bbc20e4357b1ea2c686f5b',1,'stan::memory::stack_alloc::alloc()']]], + ['alpha',['alpha',['../classstan_1_1optimization_1_1_b_f_g_s_minimizer.html#a2efb26e144b4d4d29f982df93e761823',1,'stan::optimization::BFGSMinimizer']]], + ['alpha0',['alpha0',['../structstan_1_1optimization_1_1_b_f_g_s_minimizer_1_1_b_f_g_s_options.html#a07597137b348a11f639d2c9eb9dd7207',1,'stan::optimization::BFGSMinimizer::BFGSOptions::alpha0()'],['../classstan_1_1optimization_1_1_b_f_g_s_minimizer.html#ae534c5316049196626b103bb461f428c',1,'stan::optimization::BFGSMinimizer::alpha0()']]], + ['alpha_5f',['alpha_',['../_eigen___num_traits_8hpp.html#a1b79ed4274c457ae581283a7fc8e51af',1,'alpha_(): Eigen_NumTraits.hpp'],['../agrad_2rev_2matrix_2log__softmax_8hpp.html#acd28daa1fad3aaa17c91e2ca90526175',1,'alpha_(): log_softmax.hpp'],['../agrad_2rev_2matrix_2softmax_8hpp.html#acd28daa1fad3aaa17c91e2ca90526175',1,'alpha_(): softmax.hpp']]], + ['append_5fsamples',['append_samples',['../structstan_1_1io_1_1stan__csv__metadata.html#a5dd804a343d097dabe18f8a48701accb',1,'stan::io::stan_csv_metadata']]], + ['apply_5frecover',['apply_recover',['../namespacestan_1_1agrad.html#a1505aa1613749c7e976b2bf2d822070d',1,'stan::agrad']]], + ['arg',['arg',['../classstan_1_1gm_1_1argument.html#a30ba1fe18d6f4016b030835969039e9d',1,'stan::gm::argument::arg()'],['../classstan_1_1gm_1_1argument__parser.html#a3e40d509ada7d1ea9def28f819f54ee9',1,'stan::gm::argument_parser::arg()'],['../classstan_1_1gm_1_1categorical__argument.html#a5ae28cffcf6579400a8736fc581c6ab5',1,'stan::gm::categorical_argument::arg()'],['../classstan_1_1gm_1_1list__argument.html#a649267bc16e4863f507aaeecb9cbf2f1',1,'stan::gm::list_argument::arg()']]], + ['arg_5fadapt',['arg_adapt',['../classstan_1_1gm_1_1arg__adapt.html#a7db5d900f8ce94a610cbb2f129d02763',1,'stan::gm::arg_adapt']]], + ['arg_5fadapt',['arg_adapt',['../classstan_1_1gm_1_1arg__adapt.html',1,'stan::gm']]], + ['arg_5fadapt_2ehpp',['arg_adapt.hpp',['../arg__adapt_8hpp.html',1,'']]], + ['arg_5fadapt_5fdelta',['arg_adapt_delta',['../classstan_1_1gm_1_1arg__adapt__delta.html',1,'stan::gm']]], + ['arg_5fadapt_5fdelta',['arg_adapt_delta',['../classstan_1_1gm_1_1arg__adapt__delta.html#ab994caa2d7658bd6548f17b18cd5efaf',1,'stan::gm::arg_adapt_delta']]], + ['arg_5fadapt_5fdelta_2ehpp',['arg_adapt_delta.hpp',['../arg__adapt__delta_8hpp.html',1,'']]], + ['arg_5fadapt_5fengaged',['arg_adapt_engaged',['../classstan_1_1gm_1_1arg__adapt__engaged.html',1,'stan::gm']]], + ['arg_5fadapt_5fengaged',['arg_adapt_engaged',['../classstan_1_1gm_1_1arg__adapt__engaged.html#a93164af8cdf69db14252d54d654278f2',1,'stan::gm::arg_adapt_engaged']]], + ['arg_5fadapt_5fengaged_2ehpp',['arg_adapt_engaged.hpp',['../arg__adapt__engaged_8hpp.html',1,'']]], + ['arg_5fadapt_5fgamma',['arg_adapt_gamma',['../classstan_1_1gm_1_1arg__adapt__gamma.html',1,'stan::gm']]], + ['arg_5fadapt_5fgamma',['arg_adapt_gamma',['../classstan_1_1gm_1_1arg__adapt__gamma.html#a1e89fd146d9a20e98c550321d03aa674',1,'stan::gm::arg_adapt_gamma']]], + ['arg_5fadapt_5fgamma_2ehpp',['arg_adapt_gamma.hpp',['../arg__adapt__gamma_8hpp.html',1,'']]], + ['arg_5fadapt_5finit_5fbuffer',['arg_adapt_init_buffer',['../classstan_1_1gm_1_1arg__adapt__init__buffer.html',1,'stan::gm']]], + ['arg_5fadapt_5finit_5fbuffer',['arg_adapt_init_buffer',['../classstan_1_1gm_1_1arg__adapt__init__buffer.html#a458117f29f2665be1b17d7ce3fc2728b',1,'stan::gm::arg_adapt_init_buffer']]], + ['arg_5fadapt_5finit_5fbuffer_2ehpp',['arg_adapt_init_buffer.hpp',['../arg__adapt__init__buffer_8hpp.html',1,'']]], + ['arg_5fadapt_5fkappa',['arg_adapt_kappa',['../classstan_1_1gm_1_1arg__adapt__kappa.html',1,'stan::gm']]], + ['arg_5fadapt_5fkappa',['arg_adapt_kappa',['../classstan_1_1gm_1_1arg__adapt__kappa.html#a69a930fe17bcb920dd1beaa31d47ac20',1,'stan::gm::arg_adapt_kappa']]], + ['arg_5fadapt_5fkappa_2ehpp',['arg_adapt_kappa.hpp',['../arg__adapt__kappa_8hpp.html',1,'']]], + ['arg_5fadapt_5ft0',['arg_adapt_t0',['../classstan_1_1gm_1_1arg__adapt__t0.html',1,'stan::gm']]], + ['arg_5fadapt_5ft0',['arg_adapt_t0',['../classstan_1_1gm_1_1arg__adapt__t0.html#a92a0c0524b5f854828cb6e22c4119e8b',1,'stan::gm::arg_adapt_t0']]], + ['arg_5fadapt_5ft0_2ehpp',['arg_adapt_t0.hpp',['../arg__adapt__t0_8hpp.html',1,'']]], + ['arg_5fadapt_5fterm_5fbuffer',['arg_adapt_term_buffer',['../classstan_1_1gm_1_1arg__adapt__term__buffer.html',1,'stan::gm']]], + ['arg_5fadapt_5fterm_5fbuffer',['arg_adapt_term_buffer',['../classstan_1_1gm_1_1arg__adapt__term__buffer.html#a8e4699ec0baa6885ba9c34430b6d83b2',1,'stan::gm::arg_adapt_term_buffer']]], + ['arg_5fadapt_5fterm_5fbuffer_2ehpp',['arg_adapt_term_buffer.hpp',['../arg__adapt__term__buffer_8hpp.html',1,'']]], + ['arg_5fadapt_5fwindow',['arg_adapt_window',['../classstan_1_1gm_1_1arg__adapt__window.html',1,'stan::gm']]], + ['arg_5fadapt_5fwindow',['arg_adapt_window',['../classstan_1_1gm_1_1arg__adapt__window.html#a95facd1874bc025735aeb9bc0b4297fe',1,'stan::gm::arg_adapt_window']]], + ['arg_5fadapt_5fwindow_2ehpp',['arg_adapt_window.hpp',['../arg__adapt__window_8hpp.html',1,'']]], + ['arg_5fbfgs',['arg_bfgs',['../classstan_1_1gm_1_1arg__bfgs.html',1,'stan::gm']]], + ['arg_5fbfgs',['arg_bfgs',['../classstan_1_1gm_1_1arg__bfgs.html#a0c1429d90a7c7f0943730e16cde44fac',1,'stan::gm::arg_bfgs']]], + ['arg_5fbfgs_2ehpp',['arg_bfgs.hpp',['../arg__bfgs_8hpp.html',1,'']]], + ['arg_5fdata',['arg_data',['../classstan_1_1gm_1_1arg__data.html',1,'stan::gm']]], + ['arg_5fdata',['arg_data',['../classstan_1_1gm_1_1arg__data.html#af14bc033277233421428ef9fde504b07',1,'stan::gm::arg_data']]], + ['arg_5fdata_2ehpp',['arg_data.hpp',['../arg__data_8hpp.html',1,'']]], + ['arg_5fdata_5ffile',['arg_data_file',['../classstan_1_1gm_1_1arg__data__file.html#a2432968effc35f8973394e91b941cf86',1,'stan::gm::arg_data_file']]], + ['arg_5fdata_5ffile',['arg_data_file',['../classstan_1_1gm_1_1arg__data__file.html',1,'stan::gm']]], + ['arg_5fdata_5ffile_2ehpp',['arg_data_file.hpp',['../arg__data__file_8hpp.html',1,'']]], + ['arg_5fdense_5fe',['arg_dense_e',['../classstan_1_1gm_1_1arg__dense__e.html#af591c90b48c64017b2eed129e7fd2de6',1,'stan::gm::arg_dense_e']]], + ['arg_5fdense_5fe',['arg_dense_e',['../classstan_1_1gm_1_1arg__dense__e.html',1,'stan::gm']]], + ['arg_5fdense_5fe_2ehpp',['arg_dense_e.hpp',['../arg__dense__e_8hpp.html',1,'']]], + ['arg_5fdiag_5fe',['arg_diag_e',['../classstan_1_1gm_1_1arg__diag__e.html#a090d24faf43dccdb255de369c396947f',1,'stan::gm::arg_diag_e']]], + ['arg_5fdiag_5fe',['arg_diag_e',['../classstan_1_1gm_1_1arg__diag__e.html',1,'stan::gm']]], + ['arg_5fdiag_5fe_2ehpp',['arg_diag_e.hpp',['../arg__diag__e_8hpp.html',1,'']]], + ['arg_5fdiagnose',['arg_diagnose',['../classstan_1_1gm_1_1arg__diagnose.html#a29fa2b3eb2a85d31f3de053e7ab4a7cb',1,'stan::gm::arg_diagnose']]], + ['arg_5fdiagnose',['arg_diagnose',['../classstan_1_1gm_1_1arg__diagnose.html',1,'stan::gm']]], + ['arg_5fdiagnose_2ehpp',['arg_diagnose.hpp',['../arg__diagnose_8hpp.html',1,'']]], + ['arg_5fdiagnostic_5ffile',['arg_diagnostic_file',['../classstan_1_1gm_1_1arg__diagnostic__file.html#a59b7ff8a694fa099456fc6c4466eb300',1,'stan::gm::arg_diagnostic_file']]], + ['arg_5fdiagnostic_5ffile',['arg_diagnostic_file',['../classstan_1_1gm_1_1arg__diagnostic__file.html',1,'stan::gm']]], + ['arg_5fdiagnostic_5ffile_2ehpp',['arg_diagnostic_file.hpp',['../arg__diagnostic__file_8hpp.html',1,'']]], + ['arg_5fengine',['arg_engine',['../classstan_1_1gm_1_1arg__engine.html#a565b15c3703faddc7346db01b5a7fa3d',1,'stan::gm::arg_engine']]], + ['arg_5fengine',['arg_engine',['../classstan_1_1gm_1_1arg__engine.html',1,'stan::gm']]], + ['arg_5fengine_2ehpp',['arg_engine.hpp',['../arg__engine_8hpp.html',1,'']]], + ['arg_5ffail',['arg_fail',['../classstan_1_1gm_1_1arg__fail.html',1,'stan::gm']]], + ['arg_5ffail',['arg_fail',['../classstan_1_1gm_1_1arg__fail.html#a09c9ceb2645fafb62b79172287ce0797',1,'stan::gm::arg_fail']]], + ['arg_5ffail_2ehpp',['arg_fail.hpp',['../arg__fail_8hpp.html',1,'']]], + ['arg_5ffixed_5fparam',['arg_fixed_param',['../classstan_1_1gm_1_1arg__fixed__param.html',1,'stan::gm']]], + ['arg_5ffixed_5fparam',['arg_fixed_param',['../classstan_1_1gm_1_1arg__fixed__param.html#a7f7ae50b88b61add733eb2053712353a',1,'stan::gm::arg_fixed_param']]], + ['arg_5ffixed_5fparam_2ehpp',['arg_fixed_param.hpp',['../arg__fixed__param_8hpp.html',1,'']]], + ['arg_5fhmc',['arg_hmc',['../classstan_1_1gm_1_1arg__hmc.html',1,'stan::gm']]], + ['arg_5fhmc',['arg_hmc',['../classstan_1_1gm_1_1arg__hmc.html#a21bce37da4a429c509a142d2989c9e25',1,'stan::gm::arg_hmc']]], + ['arg_5fhmc_2ehpp',['arg_hmc.hpp',['../arg__hmc_8hpp.html',1,'']]], + ['arg_5fid',['arg_id',['../classstan_1_1gm_1_1arg__id.html#a9db2f80b010bff893370ae4b230bd966',1,'stan::gm::arg_id']]], + ['arg_5fid',['arg_id',['../classstan_1_1gm_1_1arg__id.html',1,'stan::gm']]], + ['arg_5fid_2ehpp',['arg_id.hpp',['../arg__id_8hpp.html',1,'']]], + ['arg_5finit',['arg_init',['../classstan_1_1gm_1_1arg__init.html',1,'stan::gm']]], + ['arg_5finit',['arg_init',['../classstan_1_1gm_1_1arg__init.html#acfb9b2317ca874c9c9c266c03ac1368f',1,'stan::gm::arg_init']]], + ['arg_5finit_2ehpp',['arg_init.hpp',['../arg__init_8hpp.html',1,'']]], + ['arg_5finit_5falpha',['arg_init_alpha',['../classstan_1_1gm_1_1arg__init__alpha.html',1,'stan::gm']]], + ['arg_5finit_5falpha',['arg_init_alpha',['../classstan_1_1gm_1_1arg__init__alpha.html#a62422aee45bcf245c6707a75ad762f4a',1,'stan::gm::arg_init_alpha']]], + ['arg_5finit_5falpha_2ehpp',['arg_init_alpha.hpp',['../arg__init__alpha_8hpp.html',1,'']]], + ['arg_5fint_5ftime',['arg_int_time',['../classstan_1_1gm_1_1arg__int__time.html',1,'stan::gm']]], + ['arg_5fint_5ftime',['arg_int_time',['../classstan_1_1gm_1_1arg__int__time.html#a8374ed135e25d27819e08b474b6170c4',1,'stan::gm::arg_int_time']]], + ['arg_5fint_5ftime_2ehpp',['arg_int_time.hpp',['../arg__int__time_8hpp.html',1,'']]], + ['arg_5fiter',['arg_iter',['../classstan_1_1gm_1_1arg__iter.html',1,'stan::gm']]], + ['arg_5fiter',['arg_iter',['../classstan_1_1gm_1_1arg__iter.html#addc4d554b12927d3e099cb78e84b4c69',1,'stan::gm::arg_iter']]], + ['arg_5fiter_2ehpp',['arg_iter.hpp',['../arg__iter_8hpp.html',1,'']]], + ['arg_5fmax_5fdepth',['arg_max_depth',['../classstan_1_1gm_1_1arg__max__depth.html',1,'stan::gm']]], + ['arg_5fmax_5fdepth',['arg_max_depth',['../classstan_1_1gm_1_1arg__max__depth.html#aa43e5f69ecea1ab64a93d0544f5b2204',1,'stan::gm::arg_max_depth']]], + ['arg_5fmax_5fdepth_2ehpp',['arg_max_depth.hpp',['../arg__max__depth_8hpp.html',1,'']]], + ['arg_5fmethod',['arg_method',['../classstan_1_1gm_1_1arg__method.html',1,'stan::gm']]], + ['arg_5fmethod',['arg_method',['../classstan_1_1gm_1_1arg__method.html#a0ab921dbf66c5b63669cb77f07d797e9',1,'stan::gm::arg_method']]], + ['arg_5fmethod_2ehpp',['arg_method.hpp',['../arg__method_8hpp.html',1,'']]], + ['arg_5fmetric',['arg_metric',['../classstan_1_1gm_1_1arg__metric.html',1,'stan::gm']]], + ['arg_5fmetric',['arg_metric',['../classstan_1_1gm_1_1arg__metric.html#a8f59bf4d98051c730af026865135958d',1,'stan::gm::arg_metric']]], + ['arg_5fmetric_2ehpp',['arg_metric.hpp',['../arg__metric_8hpp.html',1,'']]], + ['arg_5fnesterov',['arg_nesterov',['../classstan_1_1gm_1_1arg__nesterov.html#aff8818db928802f6e048d6a3dcf080ea',1,'stan::gm::arg_nesterov']]], + ['arg_5fnesterov',['arg_nesterov',['../classstan_1_1gm_1_1arg__nesterov.html',1,'stan::gm']]], + ['arg_5fnesterov_2ehpp',['arg_nesterov.hpp',['../arg__nesterov_8hpp.html',1,'']]], + ['arg_5fnewton',['arg_newton',['../classstan_1_1gm_1_1arg__newton.html#a40a307722a2f91f3c1507261183fd4a2',1,'stan::gm::arg_newton']]], + ['arg_5fnewton',['arg_newton',['../classstan_1_1gm_1_1arg__newton.html',1,'stan::gm']]], + ['arg_5fnewton_2ehpp',['arg_newton.hpp',['../arg__newton_8hpp.html',1,'']]], + ['arg_5fnum_5fsamples',['arg_num_samples',['../classstan_1_1gm_1_1arg__num__samples.html',1,'stan::gm']]], + ['arg_5fnum_5fsamples',['arg_num_samples',['../classstan_1_1gm_1_1arg__num__samples.html#af03561fdb3d19b14fa8ce33db4bfbb92',1,'stan::gm::arg_num_samples']]], + ['arg_5fnum_5fsamples_2ehpp',['arg_num_samples.hpp',['../arg__num__samples_8hpp.html',1,'']]], + ['arg_5fnum_5fwarmup',['arg_num_warmup',['../classstan_1_1gm_1_1arg__num__warmup.html#a12b94f117fb965fee31d2a53d946a3b9',1,'stan::gm::arg_num_warmup']]], + ['arg_5fnum_5fwarmup',['arg_num_warmup',['../classstan_1_1gm_1_1arg__num__warmup.html',1,'stan::gm']]], + ['arg_5fnum_5fwarmup_2ehpp',['arg_num_warmup.hpp',['../arg__num__warmup_8hpp.html',1,'']]], + ['arg_5fnuts',['arg_nuts',['../classstan_1_1gm_1_1arg__nuts.html#a54338616bb4ea3c6cdaa922fe60f6279',1,'stan::gm::arg_nuts']]], + ['arg_5fnuts',['arg_nuts',['../classstan_1_1gm_1_1arg__nuts.html',1,'stan::gm']]], + ['arg_5fnuts_2ehpp',['arg_nuts.hpp',['../arg__nuts_8hpp.html',1,'']]], + ['arg_5foptimize',['arg_optimize',['../classstan_1_1gm_1_1arg__optimize.html#a212f9e1a9ea25739e42913cd99f6cfa3',1,'stan::gm::arg_optimize']]], + ['arg_5foptimize',['arg_optimize',['../classstan_1_1gm_1_1arg__optimize.html',1,'stan::gm']]], + ['arg_5foptimize_2ehpp',['arg_optimize.hpp',['../arg__optimize_8hpp.html',1,'']]], + ['arg_5foptimize_5falgo',['arg_optimize_algo',['../classstan_1_1gm_1_1arg__optimize__algo.html',1,'stan::gm']]], + ['arg_5foptimize_5falgo',['arg_optimize_algo',['../classstan_1_1gm_1_1arg__optimize__algo.html#a6c60961805502a27dd60db458155b30e',1,'stan::gm::arg_optimize_algo']]], + ['arg_5foptimize_5falgo_2ehpp',['arg_optimize_algo.hpp',['../arg__optimize__algo_8hpp.html',1,'']]], + ['arg_5foutput',['arg_output',['../classstan_1_1gm_1_1arg__output.html#a00b3df35f243cba8de0e50cacff5f9f8',1,'stan::gm::arg_output']]], + ['arg_5foutput',['arg_output',['../classstan_1_1gm_1_1arg__output.html',1,'stan::gm']]], + ['arg_5foutput_2ehpp',['arg_output.hpp',['../arg__output_8hpp.html',1,'']]], + ['arg_5foutput_5ffile',['arg_output_file',['../classstan_1_1gm_1_1arg__output__file.html#a7653a338dae46687a0cd46607cb8df30',1,'stan::gm::arg_output_file']]], + ['arg_5foutput_5ffile',['arg_output_file',['../classstan_1_1gm_1_1arg__output__file.html',1,'stan::gm']]], + ['arg_5foutput_5ffile_2ehpp',['arg_output_file.hpp',['../arg__output__file_8hpp.html',1,'']]], + ['arg_5frandom',['arg_random',['../classstan_1_1gm_1_1arg__random.html',1,'stan::gm']]], + ['arg_5frandom',['arg_random',['../classstan_1_1gm_1_1arg__random.html#a04356fb8dd2badb38de8d957d89ccd25',1,'stan::gm::arg_random']]], + ['arg_5frandom_2ehpp',['arg_random.hpp',['../arg__random_8hpp.html',1,'']]], + ['arg_5frefresh',['arg_refresh',['../classstan_1_1gm_1_1arg__refresh.html',1,'stan::gm']]], + ['arg_5frefresh',['arg_refresh',['../classstan_1_1gm_1_1arg__refresh.html#a1055e8b9beac79398a5efd25106bef73',1,'stan::gm::arg_refresh']]], + ['arg_5frefresh_2ehpp',['arg_refresh.hpp',['../arg__refresh_8hpp.html',1,'']]], + ['arg_5frwm',['arg_rwm',['../classstan_1_1gm_1_1arg__rwm.html#a7e6e4430b6cc5d35128899c2d7e7f4c1',1,'stan::gm::arg_rwm']]], + ['arg_5frwm',['arg_rwm',['../classstan_1_1gm_1_1arg__rwm.html',1,'stan::gm']]], + ['arg_5frwm_2ehpp',['arg_rwm.hpp',['../arg__rwm_8hpp.html',1,'']]], + ['arg_5fsample',['arg_sample',['../classstan_1_1gm_1_1arg__sample.html',1,'stan::gm']]], + ['arg_5fsample',['arg_sample',['../classstan_1_1gm_1_1arg__sample.html#a76e9dba4b18fff10db3938783e4bbc84',1,'stan::gm::arg_sample']]], + ['arg_5fsample_2ehpp',['arg_sample.hpp',['../arg__sample_8hpp.html',1,'']]], + ['arg_5fsample_5falgo',['arg_sample_algo',['../classstan_1_1gm_1_1arg__sample__algo.html#a677c78a97f6e522c2b532d5ec8cdc436',1,'stan::gm::arg_sample_algo']]], + ['arg_5fsample_5falgo',['arg_sample_algo',['../classstan_1_1gm_1_1arg__sample__algo.html',1,'stan::gm']]], + ['arg_5fsample_5falgo_2ehpp',['arg_sample_algo.hpp',['../arg__sample__algo_8hpp.html',1,'']]], + ['arg_5fsave_5fiterations',['arg_save_iterations',['../classstan_1_1gm_1_1arg__save__iterations.html',1,'stan::gm']]], + ['arg_5fsave_5fiterations',['arg_save_iterations',['../classstan_1_1gm_1_1arg__save__iterations.html#ac3c6147547688bf229a5a229b761891f',1,'stan::gm::arg_save_iterations']]], + ['arg_5fsave_5fiterations_2ehpp',['arg_save_iterations.hpp',['../arg__save__iterations_8hpp.html',1,'']]], + ['arg_5fsave_5fwarmup',['arg_save_warmup',['../classstan_1_1gm_1_1arg__save__warmup.html',1,'stan::gm']]], + ['arg_5fsave_5fwarmup',['arg_save_warmup',['../classstan_1_1gm_1_1arg__save__warmup.html#abc63cf780ff0ec05b668034557e66e5a',1,'stan::gm::arg_save_warmup']]], + ['arg_5fsave_5fwarmup_2ehpp',['arg_save_warmup.hpp',['../arg__save__warmup_8hpp.html',1,'']]], + ['arg_5fseed',['arg_seed',['../classstan_1_1gm_1_1arg__seed.html#a49ef4eab0312fb9eebdaf8901a24a50f',1,'stan::gm::arg_seed']]], + ['arg_5fseed',['arg_seed',['../classstan_1_1gm_1_1arg__seed.html',1,'stan::gm']]], + ['arg_5fseed_2ehpp',['arg_seed.hpp',['../arg__seed_8hpp.html',1,'']]], + ['arg_5fstatic',['arg_static',['../classstan_1_1gm_1_1arg__static.html',1,'stan::gm']]], + ['arg_5fstatic',['arg_static',['../classstan_1_1gm_1_1arg__static.html#aad5c9ed706c879ffc39b2f44b4ce9aef',1,'stan::gm::arg_static']]], + ['arg_5fstatic_2ehpp',['arg_static.hpp',['../arg__static_8hpp.html',1,'']]], + ['arg_5fstepsize',['arg_stepsize',['../classstan_1_1gm_1_1arg__stepsize.html',1,'stan::gm']]], + ['arg_5fstepsize',['arg_stepsize',['../classstan_1_1gm_1_1arg__stepsize.html#ab10f7c015e43cae0bd66ebd7d2ea60bb',1,'stan::gm::arg_stepsize']]], + ['arg_5fstepsize_2ehpp',['arg_stepsize.hpp',['../arg__stepsize_8hpp.html',1,'']]], + ['arg_5fstepsize_5fjitter',['arg_stepsize_jitter',['../classstan_1_1gm_1_1arg__stepsize__jitter.html#af57b445faa0178cddfc60633a0452e02',1,'stan::gm::arg_stepsize_jitter']]], + ['arg_5fstepsize_5fjitter',['arg_stepsize_jitter',['../classstan_1_1gm_1_1arg__stepsize__jitter.html',1,'stan::gm']]], + ['arg_5fstepsize_5fjitter_2ehpp',['arg_stepsize_jitter.hpp',['../arg__stepsize__jitter_8hpp.html',1,'']]], + ['arg_5ftest',['arg_test',['../classstan_1_1gm_1_1arg__test.html#a09019b7ca0e874ecc2946309b1032acd',1,'stan::gm::arg_test']]], + ['arg_5ftest',['arg_test',['../classstan_1_1gm_1_1arg__test.html',1,'stan::gm']]], + ['arg_5ftest_2ehpp',['arg_test.hpp',['../arg__test_8hpp.html',1,'']]], + ['arg_5ftest_5fgrad_5feps',['arg_test_grad_eps',['../classstan_1_1gm_1_1arg__test__grad__eps.html',1,'stan::gm']]], + ['arg_5ftest_5fgrad_5feps',['arg_test_grad_eps',['../classstan_1_1gm_1_1arg__test__grad__eps.html#a1105ef70c0defa9892e9bd5993fd24cf',1,'stan::gm::arg_test_grad_eps']]], + ['arg_5ftest_5fgrad_5feps_2ehpp',['arg_test_grad_eps.hpp',['../arg__test__grad__eps_8hpp.html',1,'']]], + ['arg_5ftest_5fgrad_5ferr',['arg_test_grad_err',['../classstan_1_1gm_1_1arg__test__grad__err.html',1,'stan::gm']]], + ['arg_5ftest_5fgrad_5ferr',['arg_test_grad_err',['../classstan_1_1gm_1_1arg__test__grad__err.html#a3c862ad4e9f4ae7010ca45c77da8d380',1,'stan::gm::arg_test_grad_err']]], + ['arg_5ftest_5fgrad_5ferr_2ehpp',['arg_test_grad_err.hpp',['../arg__test__grad__err_8hpp.html',1,'']]], + ['arg_5ftest_5fgradient',['arg_test_gradient',['../classstan_1_1gm_1_1arg__test__gradient.html#aa61549ae85bb062c3cc5f76668b3e1dd',1,'stan::gm::arg_test_gradient']]], + ['arg_5ftest_5fgradient',['arg_test_gradient',['../classstan_1_1gm_1_1arg__test__gradient.html',1,'stan::gm']]], + ['arg_5ftest_5fgradient_2ehpp',['arg_test_gradient.hpp',['../arg__test__gradient_8hpp.html',1,'']]], + ['arg_5fthin',['arg_thin',['../classstan_1_1gm_1_1arg__thin.html',1,'stan::gm']]], + ['arg_5fthin',['arg_thin',['../classstan_1_1gm_1_1arg__thin.html#a968a02a29a6fc8097ce610f3be4e5ac9',1,'stan::gm::arg_thin']]], + ['arg_5fthin_2ehpp',['arg_thin.hpp',['../arg__thin_8hpp.html',1,'']]], + ['arg_5ftolerance',['arg_tolerance',['../classstan_1_1gm_1_1arg__tolerance.html#aba6a7ae537bca04e284af54e9a231e3f',1,'stan::gm::arg_tolerance']]], + ['arg_5ftolerance',['arg_tolerance',['../classstan_1_1gm_1_1arg__tolerance.html',1,'stan::gm']]], + ['arg_5ftolerance_2ehpp',['arg_tolerance.hpp',['../arg__tolerance_8hpp.html',1,'']]], + ['arg_5funit_5fe',['arg_unit_e',['../classstan_1_1gm_1_1arg__unit__e.html#a6772c5923ce0c23db100e1157aa232c5',1,'stan::gm::arg_unit_e']]], + ['arg_5funit_5fe',['arg_unit_e',['../classstan_1_1gm_1_1arg__unit__e.html',1,'stan::gm']]], + ['arg_5funit_5fe_2ehpp',['arg_unit_e.hpp',['../arg__unit__e_8hpp.html',1,'']]], + ['args_5f',['args_',['../structstan_1_1gm_1_1distribution.html#aab595ee25d571021f9c27db31b187f6b',1,'stan::gm::distribution::args_()'],['../structstan_1_1gm_1_1array__literal.html#a26de2c2e4c1319f282766524f991d065',1,'stan::gm::array_literal::args_()'],['../structstan_1_1gm_1_1fun.html#a7c4dc2f722ef80460d8171d6bcab8d00',1,'stan::gm::fun::args_()']]], + ['args_5fr',['args_r',['../structstan_1_1gm_1_1term__grammar.html#a6e06cb76720538efdb14c0c2ada2d370',1,'stan::gm::term_grammar']]], + ['argument',['argument',['../classstan_1_1gm_1_1argument.html',1,'stan::gm']]], + ['argument',['argument',['../classstan_1_1gm_1_1argument.html#ad3b825604d30e95f4e66eef6cbadf533',1,'stan::gm::argument::argument()'],['../classstan_1_1gm_1_1argument.html#af5c733afb4fdc0f55795f8cdd2891d7f',1,'stan::gm::argument::argument(const std::string name)']]], + ['argument_2ehpp',['argument.hpp',['../argument_8hpp.html',1,'']]], + ['argument_5fparser',['argument_parser',['../classstan_1_1gm_1_1argument__parser.html#a540ddee5190ee5dd85a8773d98a5cb83',1,'stan::gm::argument_parser']]], + ['argument_5fparser',['argument_parser',['../classstan_1_1gm_1_1argument__parser.html',1,'stan::gm']]], + ['argument_5fparser_2ehpp',['argument_parser.hpp',['../argument__parser_8hpp.html',1,'']]], + ['argument_5fprobe',['argument_probe',['../classstan_1_1gm_1_1argument__probe.html',1,'stan::gm']]], + ['argument_5fprobe',['argument_probe',['../classstan_1_1gm_1_1argument__probe.html#a82b991e17fd517f1a04ba905acb545be',1,'stan::gm::argument_probe']]], + ['argument_5fprobe_2ehpp',['argument_probe.hpp',['../argument__probe_8hpp.html',1,'']]], + ['array',['array',['../structstan_1_1math_1_1array__builder.html#a725410c59aa282c6b23c52fd252aa1a3',1,'stan::math::array_builder']]], + ['array_5fbuilder',['array_builder',['../structstan_1_1math_1_1array__builder.html#a8e2649b71c980137fa5d86433d2be50c',1,'stan::math::array_builder']]], + ['array_5fbuilder',['array_builder',['../structstan_1_1math_1_1array__builder.html',1,'stan::math']]], + ['array_5fbuilder_2ehpp',['array_builder.hpp',['../array__builder_8hpp.html',1,'']]], + ['array_5fliteral',['array_literal',['../structstan_1_1gm_1_1array__literal.html',1,'stan::gm']]], + ['array_5fliteral',['array_literal',['../structstan_1_1gm_1_1array__literal.html#a462b152d7868e7d588994d215e81b26d',1,'stan::gm::array_literal::array_literal()'],['../structstan_1_1gm_1_1array__literal.html#a08529fbee87e23323340317b11f4a71c',1,'stan::gm::array_literal::array_literal(const std::vector< expression > &args)']]], + ['array_5fvec_5ft',['array_vec_t',['../classstan_1_1io_1_1writer.html#a897e6e5d45368b1c69a5f773f71f03e7',1,'stan::io::writer']]], + ['as_5fbool',['as_bool',['../namespacestan_1_1agrad.html#a0e0e98b7b8248f6303a3ae565a46305c',1,'stan::agrad::as_bool()'],['../namespacestan_1_1math.html#a6ad1c484220022b3abfb79c16d1d7f72',1,'stan::math::as_bool()']]], + ['as_5fbool_2ehpp',['as_bool.hpp',['../math_2functions_2as__bool_8hpp.html',1,'']]], + ['as_5fbool_2ehpp',['as_bool.hpp',['../agrad_2rev_2functions_2as__bool_8hpp.html',1,'']]], + ['as_5fbool_3c_20int_20_3e',['as_bool< int >',['../namespacestan_1_1math.html#a86b5156aa25d21592dbd3624aae1ea39',1,'stan::math']]], + ['asin',['asin',['../namespacestan_1_1agrad.html#a376ec296a189c47edee18e50ba72b2f5',1,'stan::agrad::asin(const var &a)'],['../namespacestan_1_1agrad.html#afd98c31d8d43e552287de2dc9170ff3e',1,'stan::agrad::asin(const fvar< T > &x)']]], + ['asin_2ehpp',['asin.hpp',['../rev_2functions_2asin_8hpp.html',1,'']]], + ['asin_2ehpp',['asin.hpp',['../fwd_2functions_2asin_8hpp.html',1,'']]], + ['asinh',['asinh',['../namespacestan_1_1agrad.html#aaf137922ce743a1f63adfaed2630dfe6',1,'stan::agrad::asinh(const fvar< T > &x)'],['../namespacestan_1_1agrad.html#a0fd3a2e895d3c03de0b670b3ba8b3b3c',1,'stan::agrad::asinh(const stan::agrad::var &a)']]], + ['asinh_2ehpp',['asinh.hpp',['../fwd_2functions_2asinh_8hpp.html',1,'']]], + ['asinh_2ehpp',['asinh.hpp',['../rev_2functions_2asinh_8hpp.html',1,'']]], + ['assign',['assign',['../namespacestan_1_1math.html#a5f394c15ea3eb97743382631f91801cf',1,'stan::math::assign(LHS &lhs, const RHS &rhs)'],['../namespacestan_1_1math.html#a5371f0f914e9b79a0700577e5557c0b7',1,'stan::math::assign(Eigen::Matrix< LHS, R1, C1 > &x, const Eigen::Matrix< RHS, R2, C2 > &y)'],['../namespacestan_1_1math.html#a0a80c719463c4e3caa03df731e2c2cb9',1,'stan::math::assign(Eigen::Matrix< LHS, R, C > &x, const Eigen::Matrix< RHS, R, C > &y)'],['../namespacestan_1_1math.html#aa4af3a90ad3b5ec1507dfc1823fdb8da',1,'stan::math::assign(Eigen::Block< LHS > x, const Eigen::Matrix< RHS, R, C > &y)'],['../namespacestan_1_1math.html#a2c6dec98c71fd478c2ee16bc274b464d',1,'stan::math::assign(std::vector< LHS > &x, const std::vector< RHS > &y)']]], + ['assign_2ehpp',['assign.hpp',['../assign_8hpp.html',1,'']]], + ['assignment',['assignment',['../structstan_1_1gm_1_1assignment.html',1,'stan::gm']]], + ['assignment',['assignment',['../structstan_1_1gm_1_1assignment.html#ad3690469ab15526cf947f92e2ae9aef3',1,'stan::gm::assignment::assignment()'],['../structstan_1_1gm_1_1assignment.html#a5f93f2431c52a23bab7288491a6f02b7',1,'stan::gm::assignment::assignment(variable_dims &var_dims, expression &expr)']]], + ['assignment_5fr',['assignment_r',['../structstan_1_1gm_1_1statement__grammar.html#aa3deabcf92016a9afde6ce09215288ff',1,'stan::gm::statement_grammar']]], + ['ast_2ehpp',['ast.hpp',['../ast_8hpp.html',1,'']]], + ['ast_5fdef_2ecpp',['ast_def.cpp',['../ast__def_8cpp.html',1,'']]], + ['atan',['atan',['../namespacestan_1_1agrad.html#a0dfbfab0e6051aa349a6090f102f6742',1,'stan::agrad::atan(const var &a)'],['../namespacestan_1_1agrad.html#a6546708d4dc0f19756f4e2380eb9b9e4',1,'stan::agrad::atan(const fvar< T > &x)']]], + ['atan_2ehpp',['atan.hpp',['../fwd_2functions_2atan_8hpp.html',1,'']]], + ['atan_2ehpp',['atan.hpp',['../rev_2functions_2atan_8hpp.html',1,'']]], + ['atan2',['atan2',['../namespacestan_1_1agrad.html#ae76a1cfac43312edacb47fd87fc2393a',1,'stan::agrad::atan2(const var &a, const var &b)'],['../namespacestan_1_1agrad.html#a8d5bc116190d363cc639326df5e04aea',1,'stan::agrad::atan2(const var &a, const double &b)'],['../namespacestan_1_1agrad.html#ad1a44f881f4e456e06374ee511387769',1,'stan::agrad::atan2(const double &a, const var &b)'],['../namespacestan_1_1agrad.html#aed06ff6c2ea34535f6c75ea7582aa203',1,'stan::agrad::atan2(const fvar< T > &x1, const fvar< T > &x2)'],['../namespacestan_1_1agrad.html#aa982d2dff799ce857c3c0853628d3f1f',1,'stan::agrad::atan2(const double x1, const fvar< T > &x2)'],['../namespacestan_1_1agrad.html#ac193d89ea00a38466c89eff9c13bcd48',1,'stan::agrad::atan2(const fvar< T > &x1, const double x2)'],['../namespacestan_1_1agrad.html#a675cbb776b5402953bd180b4d6e1d90b',1,'stan::agrad::atan2(const var &a, const double b)'],['../namespacestan_1_1agrad.html#a9963689c927130aef845582a1160678b',1,'stan::agrad::atan2(const double a, const var &b)']]], + ['atan2_2ehpp',['atan2.hpp',['../fwd_2functions_2atan2_8hpp.html',1,'']]], + ['atan2_2ehpp',['atan2.hpp',['../rev_2functions_2atan2_8hpp.html',1,'']]], + ['atanh',['atanh',['../namespacestan_1_1agrad.html#a5063c907c581ab5a2e735f8cccd7aad3',1,'stan::agrad::atanh(const fvar< T > &x)'],['../namespacestan_1_1agrad.html#af87034c9a4d6edfc1df46d96069fd68c',1,'stan::agrad::atanh(const stan::agrad::var &a)']]], + ['atanh_2ehpp',['atanh.hpp',['../fwd_2functions_2atanh_8hpp.html',1,'']]], + ['atanh_2ehpp',['atanh.hpp',['../rev_2functions_2atanh_8hpp.html',1,'']]], + ['autocorrelation',['autocorrelation',['../classstan_1_1mcmc_1_1chains.html#a4f666226faa6abbf0083da66da0a8d10',1,'stan::mcmc::chains::autocorrelation(const int chain, const int index)'],['../classstan_1_1mcmc_1_1chains.html#ab1de31b2bda945c27829ac7823bef3f2',1,'stan::mcmc::chains::autocorrelation(const int chain, const std::string &name)'],['../namespacestan_1_1prob.html#afca2f21cad2a74d9d5ff27c4ae47d6cf',1,'stan::prob::autocorrelation(const std::vector< T > &y, std::vector< T > &ac, Eigen::FFT< T > &fft)'],['../namespacestan_1_1prob.html#a426d883667d0707d0d6d6337831e41c4',1,'stan::prob::autocorrelation(const std::vector< T > &y, std::vector< T > &ac)']]], + ['autocorrelation_2ehpp',['autocorrelation.hpp',['../autocorrelation_8hpp.html',1,'']]], + ['autocovariance',['autocovariance',['../classstan_1_1mcmc_1_1chains.html#a24f75bd6ba8e24fe99b54c9226a18320',1,'stan::mcmc::chains::autocovariance(const int chain, const int index)'],['../classstan_1_1mcmc_1_1chains.html#a3d2a87745cfded05b30a8b517c4e5a88',1,'stan::mcmc::chains::autocovariance(const int chain, const std::string &name)'],['../namespacestan_1_1prob.html#ac4390e4cb6742ab59c9d6c401cd7a188',1,'stan::prob::autocovariance(const std::vector< T > &y, std::vector< T > &acov, Eigen::FFT< T > &fft)'],['../namespacestan_1_1prob.html#a73aec38db728d2f43f80fbdcc314b3db',1,'stan::prob::autocovariance(const std::vector< T > &y, std::vector< T > &acov)']]], + ['autocovariance_2ehpp',['autocovariance.hpp',['../autocovariance_8hpp.html',1,'']]], + ['autodiff_2ehpp',['autodiff.hpp',['../autodiff_8hpp.html',1,'']]], + ['available',['available',['../classstan_1_1io_1_1reader.html#a581d87c0d6f4fbcc889fcda61d9da129',1,'stan::io::reader']]], + ['available_5fi',['available_i',['../classstan_1_1io_1_1reader.html#a69f82bd5d88795b0012d04b239685858',1,'stan::io::reader']]], + ['avi_5f',['avi_',['../classstan_1_1agrad_1_1op__v__vari.html#ae8e93664ac7970bf32c2289f6b8d23fd',1,'stan::agrad::op_v_vari::avi_()'],['../classstan_1_1agrad_1_1op__vd__vari.html#a0bcd38664a8c961ccae91a7c4a5af468',1,'stan::agrad::op_vd_vari::avi_()'],['../classstan_1_1agrad_1_1op__vdd__vari.html#ac48a55ac9e4fe37c975bc0da3795e5cc',1,'stan::agrad::op_vdd_vari::avi_()'],['../classstan_1_1agrad_1_1op__vdv__vari.html#aedb9c63989ef1592cdf387c3a655b772',1,'stan::agrad::op_vdv_vari::avi_()'],['../classstan_1_1agrad_1_1op__vv__vari.html#acdd44b7d08e9f182c70ad91c782f8c79',1,'stan::agrad::op_vv_vari::avi_()'],['../classstan_1_1agrad_1_1op__vvd__vari.html#a16e916a50bb457803ab104e014f07419',1,'stan::agrad::op_vvd_vari::avi_()'],['../classstan_1_1agrad_1_1op__vvv__vari.html#ae8912106d3514178b27ee59f6e964654',1,'stan::agrad::op_vvv_vari::avi_()'],['../agrad__thread__safe_8hpp.html#a7ed9dc49639747c6e4466603cb99f37a',1,'avi_(): agrad_thread_safe.hpp']]] +]; diff --git a/doc/api/html/search/all_62.html b/doc/api/html/search/all_62.html new file mode 100644 index 00000000000..ee8871cb35a --- /dev/null +++ b/doc/api/html/search/all_62.html @@ -0,0 +1,25 @@ + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/doc/api/html/search/all_62.js b/doc/api/html/search/all_62.js new file mode 100644 index 00000000000..6e5d164cbc1 --- /dev/null +++ b/doc/api/html/search/all_62.js @@ -0,0 +1,126 @@ +var searchData= +[ + ['b_5f',['B_',['../agrad_2rev_2matrix_2quad__form_8hpp.html#a9e12a47e6a37454b96cc03670779ebf0',1,'B_(): quad_form.hpp'],['../agrad_2rev_2matrix_2trace__gen__quad__form_8hpp.html#a9e12a47e6a37454b96cc03670779ebf0',1,'B_(): trace_gen_quad_form.hpp'],['../agrad_2rev_2matrix_2trace__quad__form_8hpp.html#a9e12a47e6a37454b96cc03670779ebf0',1,'B_(): trace_quad_form.hpp']]], + ['bare',['bare',['../classstan_1_1io_1_1cmd__line.html#a3879e1290c19f6580ee0285dc1625675',1,'stan::io::cmd_line']]], + ['bare_5fsize',['bare_size',['../classstan_1_1io_1_1cmd__line.html#a5cfdf91b7237b7db7cd9ea0b7de571b6',1,'stan::io::cmd_line']]], + ['base_5fadaptation',['base_adaptation',['../classstan_1_1mcmc_1_1base__adaptation.html',1,'stan::mcmc']]], + ['base_5fadaptation_2ehpp',['base_adaptation.hpp',['../base__adaptation_8hpp.html',1,'']]], + ['base_5fadapter',['base_adapter',['../classstan_1_1mcmc_1_1base__adapter.html',1,'stan::mcmc']]], + ['base_5fadapter',['base_adapter',['../classstan_1_1mcmc_1_1base__adapter.html#ac1d2bf71f98f15445b607766f5451bba',1,'stan::mcmc::base_adapter']]], + ['base_5fadapter_2ehpp',['base_adapter.hpp',['../base__adapter_8hpp.html',1,'']]], + ['base_5fexpr_5ftype',['base_expr_type',['../namespacestan_1_1gm.html#acf4d6f01fec7bb88dc578ad058392b78',1,'stan::gm']]], + ['base_5fhamiltonian',['base_hamiltonian',['../classstan_1_1mcmc_1_1base__hamiltonian.html#aff93f8e3e83acfe9b8e6f88ed1a63c85',1,'stan::mcmc::base_hamiltonian']]], + ['base_5fhamiltonian',['base_hamiltonian',['../classstan_1_1mcmc_1_1base__hamiltonian.html',1,'stan::mcmc']]], + ['base_5fhamiltonian_2ehpp',['base_hamiltonian.hpp',['../base__hamiltonian_8hpp.html',1,'']]], + ['base_5fhamiltonian_3c_20m_2c_20dense_5fe_5fpoint_2c_20baserng_20_3e',['base_hamiltonian< M, dense_e_point, BaseRNG >',['../classstan_1_1mcmc_1_1base__hamiltonian.html',1,'stan::mcmc']]], + ['base_5fhamiltonian_3c_20m_2c_20diag_5fe_5fpoint_2c_20baserng_20_3e',['base_hamiltonian< M, diag_e_point, BaseRNG >',['../classstan_1_1mcmc_1_1base__hamiltonian.html',1,'stan::mcmc']]], + ['base_5fhamiltonian_3c_20m_2c_20unit_5fe_5fpoint_2c_20baserng_20_3e',['base_hamiltonian< M, unit_e_point, BaseRNG >',['../classstan_1_1mcmc_1_1base__hamiltonian.html',1,'stan::mcmc']]], + ['base_5fhmc',['base_hmc',['../classstan_1_1mcmc_1_1base__hmc.html#a8c414cb92694b17a02b3d2a799499870',1,'stan::mcmc::base_hmc']]], + ['base_5fhmc',['base_hmc',['../classstan_1_1mcmc_1_1base__hmc.html',1,'stan::mcmc']]], + ['base_5fhmc_2ehpp',['base_hmc.hpp',['../base__hmc_8hpp.html',1,'']]], + ['base_5fhmc_3c_20m_2c_20dense_5fe_5fpoint_2c_20dense_5fe_5fmetric_2c_20expl_5fleapfrog_2c_20baserng_20_3e',['base_hmc< M, dense_e_point, dense_e_metric, expl_leapfrog, BaseRNG >',['../classstan_1_1mcmc_1_1base__hmc.html',1,'stan::mcmc']]], + ['base_5fhmc_3c_20m_2c_20diag_5fe_5fpoint_2c_20diag_5fe_5fmetric_2c_20expl_5fleapfrog_2c_20baserng_20_3e',['base_hmc< M, diag_e_point, diag_e_metric, expl_leapfrog, BaseRNG >',['../classstan_1_1mcmc_1_1base__hmc.html',1,'stan::mcmc']]], + ['base_5fhmc_3c_20m_2c_20unit_5fe_5fpoint_2c_20unit_5fe_5fmetric_2c_20expl_5fleapfrog_2c_20baserng_20_3e',['base_hmc< M, unit_e_point, unit_e_metric, expl_leapfrog, BaseRNG >',['../classstan_1_1mcmc_1_1base__hmc.html',1,'stan::mcmc']]], + ['base_5fintegrator',['base_integrator',['../classstan_1_1mcmc_1_1base__integrator.html#aca59e40275dc1404de7077455e267d3d',1,'stan::mcmc::base_integrator']]], + ['base_5fintegrator',['base_integrator',['../classstan_1_1mcmc_1_1base__integrator.html',1,'stan::mcmc']]], + ['base_5fintegrator_2ehpp',['base_integrator.hpp',['../base__integrator_8hpp.html',1,'']]], + ['base_5fintegrator_3c_20dense_5fe_5fmetric_3c_20m_2c_20baserng_20_3e_2c_20dense_5fe_5fpoint_20_3e',['base_integrator< dense_e_metric< M, BaseRNG >, dense_e_point >',['../classstan_1_1mcmc_1_1base__integrator.html',1,'stan::mcmc']]], + ['base_5fintegrator_3c_20diag_5fe_5fmetric_3c_20m_2c_20baserng_20_3e_2c_20diag_5fe_5fpoint_20_3e',['base_integrator< diag_e_metric< M, BaseRNG >, diag_e_point >',['../classstan_1_1mcmc_1_1base__integrator.html',1,'stan::mcmc']]], + ['base_5fintegrator_3c_20unit_5fe_5fmetric_3c_20m_2c_20baserng_20_3e_2c_20unit_5fe_5fpoint_20_3e',['base_integrator< unit_e_metric< M, BaseRNG >, unit_e_point >',['../classstan_1_1mcmc_1_1base__integrator.html',1,'stan::mcmc']]], + ['base_5fiterator_5ft',['base_iterator_t',['../namespacestan_1_1gm.html#a48761b304b8039f53b3a6fc76e4efc87',1,'stan::gm']]], + ['base_5fleapfrog',['base_leapfrog',['../classstan_1_1mcmc_1_1base__leapfrog.html#a633d75fe0c95602fe6546e5a2cb217ae',1,'stan::mcmc::base_leapfrog']]], + ['base_5fleapfrog',['base_leapfrog',['../classstan_1_1mcmc_1_1base__leapfrog.html',1,'stan::mcmc']]], + ['base_5fleapfrog_2ehpp',['base_leapfrog.hpp',['../base__leapfrog_8hpp.html',1,'']]], + ['base_5fleapfrog_3c_20dense_5fe_5fmetric_3c_20m_2c_20baserng_20_3e_2c_20dense_5fe_5fpoint_20_3e',['base_leapfrog< dense_e_metric< M, BaseRNG >, dense_e_point >',['../classstan_1_1mcmc_1_1base__leapfrog.html',1,'stan::mcmc']]], + ['base_5fleapfrog_3c_20diag_5fe_5fmetric_3c_20m_2c_20baserng_20_3e_2c_20diag_5fe_5fpoint_20_3e',['base_leapfrog< diag_e_metric< M, BaseRNG >, diag_e_point >',['../classstan_1_1mcmc_1_1base__leapfrog.html',1,'stan::mcmc']]], + ['base_5fleapfrog_3c_20unit_5fe_5fmetric_3c_20m_2c_20baserng_20_3e_2c_20unit_5fe_5fpoint_20_3e',['base_leapfrog< unit_e_metric< M, BaseRNG >, unit_e_point >',['../classstan_1_1mcmc_1_1base__leapfrog.html',1,'stan::mcmc']]], + ['base_5fmcmc',['base_mcmc',['../classstan_1_1mcmc_1_1base__mcmc.html#a4fb817f487dc4fe86a91acca8109ac2a',1,'stan::mcmc::base_mcmc']]], + ['base_5fmcmc',['base_mcmc',['../classstan_1_1mcmc_1_1base__mcmc.html',1,'stan::mcmc']]], + ['base_5fmcmc_2ehpp',['base_mcmc.hpp',['../base__mcmc_8hpp.html',1,'']]], + ['base_5fnuts',['base_nuts',['../classstan_1_1mcmc_1_1base__nuts.html#a553804373eddffd3b7079fe7cf25a611',1,'stan::mcmc::base_nuts']]], + ['base_5fnuts',['base_nuts',['../classstan_1_1mcmc_1_1base__nuts.html',1,'stan::mcmc']]], + ['base_5fnuts_2ehpp',['base_nuts.hpp',['../base__nuts_8hpp.html',1,'']]], + ['base_5fnuts_3c_20m_2c_20dense_5fe_5fpoint_2c_20dense_5fe_5fmetric_2c_20expl_5fleapfrog_2c_20baserng_20_3e',['base_nuts< M, dense_e_point, dense_e_metric, expl_leapfrog, BaseRNG >',['../classstan_1_1mcmc_1_1base__nuts.html',1,'stan::mcmc']]], + ['base_5fnuts_3c_20m_2c_20diag_5fe_5fpoint_2c_20diag_5fe_5fmetric_2c_20expl_5fleapfrog_2c_20baserng_20_3e',['base_nuts< M, diag_e_point, diag_e_metric, expl_leapfrog, BaseRNG >',['../classstan_1_1mcmc_1_1base__nuts.html',1,'stan::mcmc']]], + ['base_5fnuts_3c_20m_2c_20unit_5fe_5fpoint_2c_20unit_5fe_5fmetric_2c_20expl_5fleapfrog_2c_20baserng_20_3e',['base_nuts< M, unit_e_point, unit_e_metric, expl_leapfrog, BaseRNG >',['../classstan_1_1mcmc_1_1base__nuts.html',1,'stan::mcmc']]], + ['base_5fparam_5fname',['base_param_name',['../print_8hpp.html#a44680d963f2fac28eca89f94f3eb99dc',1,'print.hpp']]], + ['base_5fstatic_5fhmc',['base_static_hmc',['../classstan_1_1mcmc_1_1base__static__hmc.html#adc496c9b987be1297a40fa0e07e44fdf',1,'stan::mcmc::base_static_hmc']]], + ['base_5fstatic_5fhmc',['base_static_hmc',['../classstan_1_1mcmc_1_1base__static__hmc.html',1,'stan::mcmc']]], + ['base_5fstatic_5fhmc_2ehpp',['base_static_hmc.hpp',['../base__static__hmc_8hpp.html',1,'']]], + ['base_5fstatic_5fhmc_3c_20m_2c_20dense_5fe_5fpoint_2c_20dense_5fe_5fmetric_2c_20expl_5fleapfrog_2c_20baserng_20_3e',['base_static_hmc< M, dense_e_point, dense_e_metric, expl_leapfrog, BaseRNG >',['../classstan_1_1mcmc_1_1base__static__hmc.html',1,'stan::mcmc']]], + ['base_5fstatic_5fhmc_3c_20m_2c_20diag_5fe_5fpoint_2c_20diag_5fe_5fmetric_2c_20expl_5fleapfrog_2c_20baserng_20_3e',['base_static_hmc< M, diag_e_point, diag_e_metric, expl_leapfrog, BaseRNG >',['../classstan_1_1mcmc_1_1base__static__hmc.html',1,'stan::mcmc']]], + ['base_5fstatic_5fhmc_3c_20m_2c_20unit_5fe_5fpoint_2c_20unit_5fe_5fmetric_2c_20expl_5fleapfrog_2c_20baserng_20_3e',['base_static_hmc< M, unit_e_point, unit_e_metric, expl_leapfrog, BaseRNG >',['../classstan_1_1mcmc_1_1base__static__hmc.html',1,'stan::mcmc']]], + ['base_5ftype_5f',['base_type_',['../structstan_1_1gm_1_1expr__type.html#aefee7b86134990f92cce19ef8e88f800',1,'stan::gm::expr_type::base_type_()'],['../structstan_1_1gm_1_1base__var__decl.html#a55f45e9a1c2aec254ab96335f85b9399',1,'stan::gm::base_var_decl::base_type_()']]], + ['base_5ftype_5fto_5fstring',['base_type_to_string',['../namespacestan_1_1gm.html#a9c695724226e13246eefc23216841ffc',1,'stan::gm']]], + ['base_5fvar_5fdecl',['base_var_decl',['../structstan_1_1gm_1_1base__var__decl.html#afbf37085102e8852cc11bf7d3cc4e07a',1,'stan::gm::base_var_decl::base_var_decl()'],['../structstan_1_1gm_1_1base__var__decl.html#af89f3d0b355688ee0099f6300c045c19',1,'stan::gm::base_var_decl::base_var_decl(const base_expr_type &base_type)'],['../structstan_1_1gm_1_1base__var__decl.html#ad83579cb2af06544b1367d91d041b2ab',1,'stan::gm::base_var_decl::base_var_decl(const std::string &name, const std::vector< expression > &dims, const base_expr_type &base_type)']]], + ['base_5fvar_5fdecl',['base_var_decl',['../structstan_1_1gm_1_1base__var__decl.html',1,'stan::gm']]], + ['basic_5fvalidate',['basic_validate',['../structstan_1_1gm_1_1validate__var__decl__visgen.html#aee960e3728540789c2da4b55b95a6a14',1,'stan::gm::validate_var_decl_visgen']]], + ['bd_5f',['bd_',['../classstan_1_1agrad_1_1op__ddv__vari.html#ae35305f4cfd7182e903c8bc40b83e1e4',1,'stan::agrad::op_ddv_vari::bd_()'],['../classstan_1_1agrad_1_1op__vd__vari.html#aeb6e24f98c7ea9a0861d2651e78fba0f',1,'stan::agrad::op_vd_vari::bd_()'],['../classstan_1_1agrad_1_1op__vdd__vari.html#a287e3ff89d946a2eb877abbc525ed132',1,'stan::agrad::op_vdd_vari::bd_()'],['../classstan_1_1agrad_1_1op__vdv__vari.html#ac7de165236d121d5ee5dea22c131aa7f',1,'stan::agrad::op_vdv_vari::bd_()'],['../agrad__thread__safe_8hpp.html#a6bc687cb96fe2e6f4d9f4db190eb789f',1,'bd_(): agrad_thread_safe.hpp']]], + ['begin_5fupdate_5fp',['begin_update_p',['../classstan_1_1mcmc_1_1base__leapfrog.html#a32f9d6a2fdca2ac0b81941bece5ada93',1,'stan::mcmc::base_leapfrog::begin_update_p()'],['../classstan_1_1mcmc_1_1expl__leapfrog.html#a8db6aa8c6efa80ced2123390d02d1079',1,'stan::mcmc::expl_leapfrog::begin_update_p()']]], + ['bernoulli_2ehpp',['bernoulli.hpp',['../bernoulli_8hpp.html',1,'']]], + ['bernoulli_5fccdf_5flog',['bernoulli_ccdf_log',['../namespacestan_1_1prob.html#a726363482ee79c9eec5168e0662878ee',1,'stan::prob']]], + ['bernoulli_5fcdf',['bernoulli_cdf',['../namespacestan_1_1prob.html#acc2b8587b0d9e02ae857a2b3f5cba35d',1,'stan::prob']]], + ['bernoulli_5fcdf_5flog',['bernoulli_cdf_log',['../namespacestan_1_1prob.html#aba32173189278464e98a8126eb552cde',1,'stan::prob']]], + ['bernoulli_5flog',['bernoulli_log',['../namespacestan_1_1prob.html#a0bc33fe590391b82dab751bdadaf7b62',1,'stan::prob::bernoulli_log(const T_n &n, const T_prob &theta)'],['../namespacestan_1_1prob.html#a219ad54841aea16fc57524fca232f2e7',1,'stan::prob::bernoulli_log(const T_y &n, const T_prob &theta)']]], + ['bernoulli_5flogit_5flog',['bernoulli_logit_log',['../namespacestan_1_1prob.html#a5c8219bcfefefbfb4035de576837ab45',1,'stan::prob::bernoulli_logit_log(const T_n &n, const T_prob &theta)'],['../namespacestan_1_1prob.html#a41019ebe0811bb5c4dab0b3c2c836680',1,'stan::prob::bernoulli_logit_log(const T_n &n, const T_prob &theta)']]], + ['bernoulli_5frng',['bernoulli_rng',['../namespacestan_1_1prob.html#afea2d4a81899214550a87b8a09220620',1,'stan::prob']]], + ['bessel_5ffirst_5fkind',['bessel_first_kind',['../namespacestan_1_1agrad.html#a15ef0c83a99d3629e9ea8eb982ffe91c',1,'stan::agrad::bessel_first_kind(int v, const fvar< T > &z)'],['../namespacestan_1_1agrad.html#afc6ca13242211e5b43d3fcfb3bc8f3a7',1,'stan::agrad::bessel_first_kind(const int &v, const var &a)'],['../namespacestan_1_1math.html#aebfb3835848bd8550192cd5e090d3b5a',1,'stan::math::bessel_first_kind()']]], + ['bessel_5ffirst_5fkind_2ehpp',['bessel_first_kind.hpp',['../agrad_2fwd_2functions_2bessel__first__kind_8hpp.html',1,'']]], + ['bessel_5ffirst_5fkind_2ehpp',['bessel_first_kind.hpp',['../math_2functions_2bessel__first__kind_8hpp.html',1,'']]], + ['bessel_5ffirst_5fkind_2ehpp',['bessel_first_kind.hpp',['../agrad_2rev_2functions_2bessel__first__kind_8hpp.html',1,'']]], + ['bessel_5fsecond_5fkind',['bessel_second_kind',['../namespacestan_1_1agrad.html#a70cd3f5b630e4cae786470b8a7d70c62',1,'stan::agrad::bessel_second_kind(int v, const fvar< T > &z)'],['../namespacestan_1_1agrad.html#a17fd5151af2e0e715f84fbdcdea202cd',1,'stan::agrad::bessel_second_kind(const int &v, const var &a)'],['../namespacestan_1_1math.html#a645ce13c6454913ec39be807751604dc',1,'stan::math::bessel_second_kind()']]], + ['bessel_5fsecond_5fkind_2ehpp',['bessel_second_kind.hpp',['../agrad_2fwd_2functions_2bessel__second__kind_8hpp.html',1,'']]], + ['bessel_5fsecond_5fkind_2ehpp',['bessel_second_kind.hpp',['../agrad_2rev_2functions_2bessel__second__kind_8hpp.html',1,'']]], + ['bessel_5fsecond_5fkind_2ehpp',['bessel_second_kind.hpp',['../math_2functions_2bessel__second__kind_8hpp.html',1,'']]], + ['beta_2ehpp',['beta.hpp',['../beta_8hpp.html',1,'']]], + ['beta_5fbinomial_2ehpp',['beta_binomial.hpp',['../beta__binomial_8hpp.html',1,'']]], + ['beta_5fbinomial_5fccdf_5flog',['beta_binomial_ccdf_log',['../namespacestan_1_1prob.html#a5d2307b3b214c6a219dc1ae47cbba4d0',1,'stan::prob']]], + ['beta_5fbinomial_5fcdf',['beta_binomial_cdf',['../namespacestan_1_1prob.html#a6549c9b89bee939a79c35a797977e48e',1,'stan::prob']]], + ['beta_5fbinomial_5fcdf_5flog',['beta_binomial_cdf_log',['../namespacestan_1_1prob.html#a260dee97213ab1ea2bcb345f2e5699f8',1,'stan::prob']]], + ['beta_5fbinomial_5flog',['beta_binomial_log',['../namespacestan_1_1prob.html#a6b05e0ee6a8e83b15ab01a8bd2f75621',1,'stan::prob::beta_binomial_log(const T_n &n, const T_N &N, const T_size1 &alpha, const T_size2 &beta)'],['../namespacestan_1_1prob.html#a08bb45fa7fefa94d7e243b4df5686909',1,'stan::prob::beta_binomial_log(const T_n &n, const T_N &N, const T_size1 &alpha, const T_size2 &beta)']]], + ['beta_5fbinomial_5frng',['beta_binomial_rng',['../namespacestan_1_1prob.html#a0ab5a0632c3782b2feed87f13731a3cb',1,'stan::prob']]], + ['beta_5fccdf_5flog',['beta_ccdf_log',['../namespacestan_1_1prob.html#a2cf7120d50b02585fd722748e624b13e',1,'stan::prob']]], + ['beta_5fcdf',['beta_cdf',['../namespacestan_1_1prob.html#ae99fab56f54c2e0f879345eee28b82ca',1,'stan::prob']]], + ['beta_5fcdf_5flog',['beta_cdf_log',['../namespacestan_1_1prob.html#ab63ea302e7cd29f7a5f3f23152b3de1f',1,'stan::prob']]], + ['beta_5flog',['beta_log',['../namespacestan_1_1prob.html#adcb4e073c7510ab55a2fd6f310168559',1,'stan::prob::beta_log(const T_y &y, const T_scale_succ &alpha, const T_scale_fail &beta)'],['../namespacestan_1_1prob.html#a76da5fc9b833aaf3844f98e9d032bb83',1,'stan::prob::beta_log(const T_y &y, const T_scale_succ &alpha, const T_scale_fail &beta)']]], + ['beta_5frng',['beta_rng',['../namespacestan_1_1prob.html#af9ffa205c1948b93323a12b13954558b',1,'stan::prob']]], + ['bfgs_2ehpp',['bfgs.hpp',['../bfgs_8hpp.html',1,'']]], + ['bfgslinesearch',['BFGSLineSearch',['../classstan_1_1optimization_1_1_b_f_g_s_line_search.html#a4979246eff3a7ea7e456ff6a78b9f947',1,'stan::optimization::BFGSLineSearch']]], + ['bfgslinesearch',['BFGSLineSearch',['../classstan_1_1optimization_1_1_b_f_g_s_line_search.html',1,'stan::optimization']]], + ['bfgsminimizer',['BFGSMinimizer',['../classstan_1_1optimization_1_1_b_f_g_s_minimizer.html#a49e517b4678f438f201bea8576ca1b2f',1,'stan::optimization::BFGSMinimizer']]], + ['bfgsminimizer',['BFGSMinimizer',['../classstan_1_1optimization_1_1_b_f_g_s_minimizer.html',1,'stan::optimization']]], + ['bfgsminimizer_3c_20modeladaptor_3c_20m_20_3e_20_3e',['BFGSMinimizer< ModelAdaptor< M > >',['../classstan_1_1optimization_1_1_b_f_g_s_minimizer.html',1,'stan::optimization']]], + ['bfgsoptions',['BFGSOptions',['../structstan_1_1optimization_1_1_b_f_g_s_minimizer_1_1_b_f_g_s_options.html',1,'stan::optimization::BFGSMinimizer']]], + ['bfgsoptions',['BFGSOptions',['../structstan_1_1optimization_1_1_b_f_g_s_minimizer_1_1_b_f_g_s_options.html#a73b45c4d12854633eaa946de5c3def7b',1,'stan::optimization::BFGSMinimizer::BFGSOptions']]], + ['binary_5flog_5floss',['binary_log_loss',['../namespacestan_1_1agrad.html#af5d9abde22a78da0378d464f1ce24544',1,'stan::agrad::binary_log_loss(const int y, const fvar< T > &y_hat)'],['../namespacestan_1_1agrad.html#acbbcd95da81df518f28454f7d2cb8772',1,'stan::agrad::binary_log_loss(const int y, const stan::agrad::var &y_hat)'],['../namespacestan_1_1math.html#add2a043f562537b8cc57bb35780ac5b5',1,'stan::math::binary_log_loss()']]], + ['binary_5flog_5floss_2ehpp',['binary_log_loss.hpp',['../agrad_2fwd_2functions_2binary__log__loss_8hpp.html',1,'']]], + ['binary_5flog_5floss_2ehpp',['binary_log_loss.hpp',['../math_2functions_2binary__log__loss_8hpp.html',1,'']]], + ['binary_5flog_5floss_2ehpp',['binary_log_loss.hpp',['../agrad_2rev_2functions_2binary__log__loss_8hpp.html',1,'']]], + ['binary_5fop',['binary_op',['../structstan_1_1gm_1_1binary__op.html',1,'stan::gm']]], + ['binary_5fop',['binary_op',['../structstan_1_1gm_1_1binary__op.html#a65335603651a7ea889960d4cddebcac4',1,'stan::gm::binary_op::binary_op()'],['../structstan_1_1gm_1_1binary__op.html#a78c4a1e12c510a73c172bc8155118678',1,'stan::gm::binary_op::binary_op(const expression &left, const std::string &op, const expression &right)']]], + ['binary_5fop_5fexpr',['binary_op_expr',['../structstan_1_1gm_1_1binary__op__expr.html',1,'stan::gm']]], + ['binary_5fop_5ff',['binary_op_f',['../namespacestan_1_1gm.html#ac468cb2fce622382db58f8e9f2f6c628',1,'stan::gm']]], + ['binomial_2ehpp',['binomial.hpp',['../binomial_8hpp.html',1,'']]], + ['binomial_5fccdf_5flog',['binomial_ccdf_log',['../namespacestan_1_1prob.html#a6a5c4f320e9c4fd342a2bc95cd5cab06',1,'stan::prob']]], + ['binomial_5fcdf',['binomial_cdf',['../namespacestan_1_1prob.html#aeed3ba1a20bc8adb20b6a15d35945533',1,'stan::prob']]], + ['binomial_5fcdf_5flog',['binomial_cdf_log',['../namespacestan_1_1prob.html#ab5b95dc562c6fc2d9474debaae03903c',1,'stan::prob']]], + ['binomial_5fcoefficient_5flog',['binomial_coefficient_log',['../namespacestan_1_1agrad.html#a4ec7cdb5d5ad2c9b0a0257398570e55b',1,'stan::agrad::binomial_coefficient_log(const fvar< T > &x1, const fvar< T > &x2)'],['../namespacestan_1_1agrad.html#a02695b9403bc2bd772610aec257b71ab',1,'stan::agrad::binomial_coefficient_log(const fvar< T > &x1, const double x2)'],['../namespacestan_1_1agrad.html#a9b9e7ad2199a7cbcf958b4bab56eb5ba',1,'stan::agrad::binomial_coefficient_log(const double x1, const fvar< T > &x2)'],['../namespacestan_1_1math.html#a27dad23d38c6d5e74c65e7571c70272e',1,'stan::math::binomial_coefficient_log()']]], + ['binomial_5fcoefficient_5flog_2ehpp',['binomial_coefficient_log.hpp',['../math_2functions_2binomial__coefficient__log_8hpp.html',1,'']]], + ['binomial_5fcoefficient_5flog_2ehpp',['binomial_coefficient_log.hpp',['../agrad_2fwd_2functions_2binomial__coefficient__log_8hpp.html',1,'']]], + ['binomial_5flog',['binomial_log',['../namespacestan_1_1prob.html#ad12aae68875554db5a4e4934bfa1e24a',1,'stan::prob::binomial_log(const T_n &n, const T_N &N, const T_prob &theta)'],['../namespacestan_1_1prob.html#a255338df1c9dc1edcaf556ec019e70f9',1,'stan::prob::binomial_log(const T_n &n, const T_N &N, const T_prob &theta)']]], + ['binomial_5flogit_5flog',['binomial_logit_log',['../namespacestan_1_1prob.html#aeec51733f46d26326f271edaeb2c85fd',1,'stan::prob::binomial_logit_log(const T_n &n, const T_N &N, const T_prob &alpha)'],['../namespacestan_1_1prob.html#a36b4660673caceb27df26e36771d3b82',1,'stan::prob::binomial_logit_log(const T_n &n, const T_N &N, const T_prob &alpha)']]], + ['binomial_5frng',['binomial_rng',['../namespacestan_1_1prob.html#a4fedb58fc6bbe6d006bab9fe0b72c2d2',1,'stan::prob']]], + ['block',['block',['../namespacestan_1_1math.html#af163dfd071f1cff0297b7418156563a8',1,'stan::math']]], + ['block_2ehpp',['block.hpp',['../block_8hpp.html',1,'']]], + ['bodies_5f',['bodies_',['../structstan_1_1gm_1_1conditional__statement.html#aa050a0eba5609aba1a82615cab5be84b',1,'stan::gm::conditional_statement']]], + ['body_5f',['body_',['../structstan_1_1gm_1_1while__statement.html#a02751b1da71e77005c2e31df9c901997',1,'stan::gm::while_statement']]], + ['bool_5fargument',['bool_argument',['../namespacestan_1_1gm.html#adb787df02fb46fca9c39b4d8f2438a28',1,'stan::gm']]], + ['boost',['boost',['../namespaceboost.html',1,'']]], + ['boost_2edox',['boost.dox',['../boost_8dox.html',1,'']]], + ['boost_5ffpclassify_2ehpp',['boost_fpclassify.hpp',['../boost__fpclassify_8hpp.html',1,'']]], + ['boost_5ffusion_5fadapt_5fstruct',['BOOST_FUSION_ADAPT_STRUCT',['../program__grammar__def_8hpp.html#ada0ff5807ec701c3ec7f2ecc0d99aaf4',1,'BOOST_FUSION_ADAPT_STRUCT(stan::gm::program,(std::vector< stan::gm::var_decl >, data_decl_)(DUMMY_STRUCT::type, derived_data_decl_)(std::vector< stan::gm::var_decl >, parameter_decl_)(DUMMY_STRUCT::type, derived_decl_)(stan::gm::statement, statement_)(DUMMY_STRUCT::type, generated_decl_)) namespace stan: program_grammar_def.hpp'],['../statement__grammar__def_8hpp.html#a7bcb20f801376d20d08e7bbf352e88b8',1,'BOOST_FUSION_ADAPT_STRUCT(stan::gm::assignment,(stan::gm::variable_dims, var_dims_)(stan::gm::expression, expr_)): statement_grammar_def.hpp'],['../statement__grammar__def_8hpp.html#aaa7e207109145caa601bf2d96667b5a8',1,'BOOST_FUSION_ADAPT_STRUCT(stan::gm::variable_dims,(std::string, name_)(std::vector< stan::gm::expression >, dims_)): statement_grammar_def.hpp'],['../statement__grammar__def_8hpp.html#a6961e24e92dd0d1f84976386c45cc1b6',1,'BOOST_FUSION_ADAPT_STRUCT(stan::gm::distribution,(std::string, family_)(std::vector< stan::gm::expression >, args_)): statement_grammar_def.hpp'],['../statement__grammar__def_8hpp.html#a1cae61dafe9d4dd9285b7b6f76d05f92',1,'BOOST_FUSION_ADAPT_STRUCT(stan::gm::for_statement,(std::string, variable_)(stan::gm::range, range_)(stan::gm::statement, statement_)): statement_grammar_def.hpp'],['../statement__grammar__def_8hpp.html#af7c34bfed453a4a6d29961f3abe165cf',1,'BOOST_FUSION_ADAPT_STRUCT(stan::gm::print_statement,(std::vector< stan::gm::printable >, printables_)): statement_grammar_def.hpp'],['../statement__grammar__def_8hpp.html#a25d0b6c291f5f1b8a1c2558998206def',1,'BOOST_FUSION_ADAPT_STRUCT(stan::gm::increment_log_prob_statement,(stan::gm::expression, log_prob_)): statement_grammar_def.hpp'],['../statement__grammar__def_8hpp.html#ad9066625d7cda371ed588877a22cd806',1,'BOOST_FUSION_ADAPT_STRUCT(stan::gm::sample,(stan::gm::expression, expr_)(stan::gm::distribution, dist_)(stan::gm::range, truncation_)): statement_grammar_def.hpp'],['../statement__grammar__def_8hpp.html#acb06b32b35e8c116ccf4275f22cce0aa',1,'BOOST_FUSION_ADAPT_STRUCT(stan::gm::statements,(std::vector< stan::gm::var_decl >, local_decl_)(std::vector< stan::gm::statement >, statements_)): statement_grammar_def.hpp'],['../term__grammar__def_8hpp.html#a2aa48ab7197d456209104ec48170e6e7',1,'BOOST_FUSION_ADAPT_STRUCT(stan::gm::index_op,(stan::gm::expression, expr_)(std::vector< std::vector< stan::gm::expression > >, dimss_)): term_grammar_def.hpp'],['../term__grammar__def_8hpp.html#a480456e9da4c14c5519988cdc778facc',1,'BOOST_FUSION_ADAPT_STRUCT(stan::gm::fun,(std::string, name_)(std::vector< stan::gm::expression >, args_)): term_grammar_def.hpp'],['../term__grammar__def_8hpp.html#a1e81a41b83af331d2ab9038c3ab22c8e',1,'BOOST_FUSION_ADAPT_STRUCT(stan::gm::int_literal,(int, val_)(stan::gm::expr_type, type_)): term_grammar_def.hpp'],['../term__grammar__def_8hpp.html#a449100aff0b5136c9793061cb929bec8',1,'BOOST_FUSION_ADAPT_STRUCT(stan::gm::double_literal,(double, val_)(stan::gm::expr_type, type_)): term_grammar_def.hpp'],['../var__decls__grammar__def_8hpp.html#a1bf1e318d7e36dbd7a26eb65a05fcd13',1,'BOOST_FUSION_ADAPT_STRUCT(stan::gm::int_var_decl,(stan::gm::range, range_)(std::string, name_)(std::vector< stan::gm::expression >, dims_)) BOOST_FUSION_ADAPT_STRUCT(stan: var_decls_grammar_def.hpp']]], + ['build_5ftree',['build_tree',['../classstan_1_1mcmc_1_1base__nuts.html#abfa3f7a87c96c0021bbd4e9a87ad9f4b',1,'stan::mcmc::base_nuts']]], + ['bvi_5f',['bvi_',['../classstan_1_1agrad_1_1op__dv__vari.html#a98d635e1f027bdfc2b334b4e1c37c3ac',1,'stan::agrad::op_dv_vari::bvi_()'],['../classstan_1_1agrad_1_1op__dvd__vari.html#ac260097674d6178986ce2bca1bf06f18',1,'stan::agrad::op_dvd_vari::bvi_()'],['../classstan_1_1agrad_1_1op__dvv__vari.html#a7e8348772bd3a834702dbaf107102fcf',1,'stan::agrad::op_dvv_vari::bvi_()'],['../classstan_1_1agrad_1_1op__vv__vari.html#ad5479c2e11d97e789b12555069856f64',1,'stan::agrad::op_vv_vari::bvi_()'],['../classstan_1_1agrad_1_1op__vvd__vari.html#a641c2f4fdf8fb63130bf1ac50705ca11',1,'stan::agrad::op_vvd_vari::bvi_()'],['../classstan_1_1agrad_1_1op__vvv__vari.html#a3bff8e5ca6a08bba14b5383ee5af0526',1,'stan::agrad::op_vvv_vari::bvi_()'],['../agrad__thread__safe_8hpp.html#adf2a9af952f9152b9565cce4349b3dbc',1,'bvi_(): agrad_thread_safe.hpp']]], + ['bytes_5fallocated',['bytes_allocated',['../classstan_1_1memory_1_1stack__alloc.html#abcb69b7fce963fc559fea22912d67795',1,'stan::memory::stack_alloc']]], + ['math',['math',['../namespaceboost_1_1math.html',1,'boost']]] +]; diff --git a/doc/api/html/search/all_63.html b/doc/api/html/search/all_63.html new file mode 100644 index 00000000000..56b5ad1e9ea --- /dev/null +++ b/doc/api/html/search/all_63.html @@ -0,0 +1,25 @@ + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/doc/api/html/search/all_63.js b/doc/api/html/search/all_63.js new file mode 100644 index 00000000000..38ebd0221bb --- /dev/null +++ b/doc/api/html/search/all_63.js @@ -0,0 +1,215 @@ +var searchData= +[ + ['bare_3c_20std_3a_3astring_20_3e',['bare< std::string >',['../namespacestan_1_1io.html#aec5638401c1a9174c2a1755dbb9b9a1c',1,'stan::io']]], + ['c1',['c1',['../structstan_1_1optimization_1_1_b_f_g_s_minimizer_1_1_b_f_g_s_options.html#a77d9e5ac3274c6810e1aacc63df5dbe1',1,'stan::optimization::BFGSMinimizer::BFGSOptions']]], + ['c2',['c2',['../structstan_1_1optimization_1_1_b_f_g_s_minimizer_1_1_b_f_g_s_options.html#a6379b29a858127f1ef3cc0ab5426cc82',1,'stan::optimization::BFGSMinimizer::BFGSOptions']]], + ['c_5f',['C_',['../agrad_2rev_2matrix_2mdivide__left_8hpp.html#a03e9f8989e0f5a0117b426e2b204933a',1,'C_(): mdivide_left.hpp'],['../agrad_2rev_2matrix_2mdivide__left__ldlt_8hpp.html#a71042c83f662a5f71b52b6e6c2ae4915',1,'C_(): mdivide_left_ldlt.hpp'],['../agrad_2rev_2matrix_2mdivide__left__spd_8hpp.html#a71042c83f662a5f71b52b6e6c2ae4915',1,'C_(): mdivide_left_spd.hpp'],['../agrad_2rev_2matrix_2mdivide__left__tri_8hpp.html#a03e9f8989e0f5a0117b426e2b204933a',1,'C_(): mdivide_left_tri.hpp'],['../agrad_2rev_2matrix_2quad__form_8hpp.html#a55687fe74d2b370950b50b750657c48e',1,'C_(): quad_form.hpp'],['../agrad_2rev_2matrix_2trace__inv__quad__form__ldlt_8hpp.html#aaed1328a1a8dc253591d2941edfec676',1,'C_(): trace_inv_quad_form_ldlt.hpp']]], + ['calculate_5fchain',['calculate_chain',['../namespacestan_1_1agrad.html#aa16e752d268f0240dab6f484fe0026da',1,'stan::agrad']]], + ['calculate_5fchain_2ehpp',['calculate_chain.hpp',['../calculate__chain_8hpp.html',1,'']]], + ['calculate_5fcolumn_5fwidth',['calculate_column_width',['../print_8hpp.html#a5e7bd64dd538b38c24f0950e20336b9e',1,'print.hpp']]], + ['calculate_5fcolumn_5fwidths',['calculate_column_widths',['../print_8hpp.html#aca6645f28f92ff465e290fef0fefa9bc',1,'print.hpp']]], + ['categorical_2ehpp',['categorical.hpp',['../categorical_8hpp.html',1,'']]], + ['categorical_5fargument',['categorical_argument',['../classstan_1_1gm_1_1categorical__argument.html',1,'stan::gm']]], + ['categorical_5fargument_2ehpp',['categorical_argument.hpp',['../categorical__argument_8hpp.html',1,'']]], + ['categorical_5flog',['categorical_log',['../namespacestan_1_1prob.html#af95a794f03919aea39098f278d2c59d6',1,'stan::prob::categorical_log(int n, const Eigen::Matrix< T_prob, Eigen::Dynamic, 1 > &theta)'],['../namespacestan_1_1prob.html#a246986bd8f60af47c1f81ebb814dd563',1,'stan::prob::categorical_log(const typename Eigen::Matrix< T_prob, Eigen::Dynamic, 1 >::size_type n, const Eigen::Matrix< T_prob, Eigen::Dynamic, 1 > &theta)'],['../namespacestan_1_1prob.html#a02f82adf130605305c98f4e011bbe9ac',1,'stan::prob::categorical_log(const std::vector< int > &ns, const Eigen::Matrix< T_prob, Eigen::Dynamic, 1 > &theta)'],['../namespacestan_1_1prob.html#a16675570c76e20595a8a6b7b1beeabea',1,'stan::prob::categorical_log(const std::vector< int > &ns, const Eigen::Matrix< T_prob, Eigen::Dynamic, 1 > &theta)']]], + ['categorical_5flogit_2ehpp',['categorical_logit.hpp',['../categorical__logit_8hpp.html',1,'']]], + ['categorical_5flogit_5flog',['categorical_logit_log',['../namespacestan_1_1prob.html#a2a925c941d407c44cac03cfdee07c20f',1,'stan::prob::categorical_logit_log(int n, const Eigen::Matrix< T_prob, Eigen::Dynamic, 1 > &beta)'],['../namespacestan_1_1prob.html#a56b41ad5a9d6c90837fe573771174921',1,'stan::prob::categorical_logit_log(int n, const Eigen::Matrix< T_prob, Eigen::Dynamic, 1 > &beta)'],['../namespacestan_1_1prob.html#a3fa98ec586dbbbceafb56261324b5170',1,'stan::prob::categorical_logit_log(const std::vector< int > &ns, const Eigen::Matrix< T_prob, Eigen::Dynamic, 1 > &beta)'],['../namespacestan_1_1prob.html#a9195250cdb8eb73cbfc24e6b78ce8fcb',1,'stan::prob::categorical_logit_log(const std::vector< int > &ns, const Eigen::Matrix< T_prob, Eigen::Dynamic, 1 > &beta)']]], + ['categorical_5frng',['categorical_rng',['../namespacestan_1_1prob.html#a4c3ca0ee1deca1cacd5211bbc995152e',1,'stan::prob']]], + ['cauchy_2ehpp',['cauchy.hpp',['../cauchy_8hpp.html',1,'']]], + ['cauchy_5fccdf_5flog',['cauchy_ccdf_log',['../namespacestan_1_1prob.html#ac70c31a88a9078a1abe3b7404504f1fe',1,'stan::prob']]], + ['cauchy_5fcdf',['cauchy_cdf',['../namespacestan_1_1prob.html#a47c7985de17346e84f8d63941d094c6f',1,'stan::prob']]], + ['cauchy_5fcdf_5flog',['cauchy_cdf_log',['../namespacestan_1_1prob.html#a438076c7412e6cc425b59489fd2288c3',1,'stan::prob']]], + ['cauchy_5flog',['cauchy_log',['../namespacestan_1_1prob.html#a336c31f3968917b4cb73fdd6bcb7dbda',1,'stan::prob::cauchy_log(const T_y &y, const T_loc &mu, const T_scale &sigma)'],['../namespacestan_1_1prob.html#adeee6144ac19be6775669835d4b0a544',1,'stan::prob::cauchy_log(const T_y &y, const T_loc &mu, const T_scale &sigma)']]], + ['cauchy_5frng',['cauchy_rng',['../namespacestan_1_1prob.html#a018d09865f9ab743ec78422a4e69d2d0',1,'stan::prob']]], + ['cbrt',['cbrt',['../namespacestan_1_1agrad.html#a183eb686f1c72d5de6a1997e53bd2b49',1,'stan::agrad::cbrt(const fvar< T > &x)'],['../namespacestan_1_1agrad.html#a56daa2a3973305eca89f54b45b215b08',1,'stan::agrad::cbrt(const stan::agrad::var &a)']]], + ['cbrt_2ehpp',['cbrt.hpp',['../fwd_2functions_2cbrt_8hpp.html',1,'']]], + ['cbrt_2ehpp',['cbrt.hpp',['../rev_2functions_2cbrt_8hpp.html',1,'']]], + ['cd_5f',['cd_',['../classstan_1_1agrad_1_1op__dvd__vari.html#afb19614ab6249ef02fd7b25cffc08025',1,'stan::agrad::op_dvd_vari::cd_()'],['../classstan_1_1agrad_1_1op__vdd__vari.html#a07feae28b7d06e95a4c5221728eaeb59',1,'stan::agrad::op_vdd_vari::cd_()'],['../classstan_1_1agrad_1_1op__vvd__vari.html#a77be8bf88a35750ac9bb0d6c7bd77d1a',1,'stan::agrad::op_vvd_vari::cd_()'],['../agrad__thread__safe_8hpp.html#a1671afec9ddeea25855e744cb53988f4',1,'cd_(): agrad_thread_safe.hpp']]], + ['ceil',['ceil',['../namespacestan_1_1agrad.html#a3edfb95b57f8b42c6c68968628ba0158',1,'stan::agrad::ceil(const var &a)'],['../namespacestan_1_1agrad.html#ab5aa6d910a8a47ea9fc1b6199d710069',1,'stan::agrad::ceil(const fvar< T > &x)']]], + ['ceil_2ehpp',['ceil.hpp',['../fwd_2functions_2ceil_8hpp.html',1,'']]], + ['ceil_2ehpp',['ceil.hpp',['../rev_2functions_2ceil_8hpp.html',1,'']]], + ['central_5finterval',['central_interval',['../classstan_1_1mcmc_1_1chains.html#afc466fb86c162616dc6db2d4a6904e81',1,'stan::mcmc::chains::central_interval(const int chain, const int index, const double prob)'],['../classstan_1_1mcmc_1_1chains.html#a819d8aff3c3b7c40de79e493850deba3',1,'stan::mcmc::chains::central_interval(const int index, const double prob)'],['../classstan_1_1mcmc_1_1chains.html#a3c52c722eb9f5d1bde7b27307602f592',1,'stan::mcmc::chains::central_interval(const int chain, const std::string &name, const double prob)'],['../classstan_1_1mcmc_1_1chains.html#a7dcc333dfe0d01bf595700bd72e5999f',1,'stan::mcmc::chains::central_interval(const std::string &name, const double prob)']]], + ['chain',['chain',['../classstan_1_1agrad_1_1vari.html#aa0a84901028b116fad7020b30b926b98',1,'stan::agrad::vari::chain()'],['../classstan_1_1agrad_1_1partials__vari.html#a0fa792b38fdadfd389dcffcea597deeb',1,'stan::agrad::partials_vari::chain()'],['../classstan_1_1agrad_1_1chainable.html#a4d1b4d61c1b10d6da4ababce3d276592',1,'stan::agrad::chainable::chain()'],['../classstan_1_1agrad_1_1precomp__v__vari.html#a009196476cbeca0b4721a2615e275d10',1,'stan::agrad::precomp_v_vari::chain()'],['../classstan_1_1agrad_1_1precomputed__gradients__vari.html#a31b3e07fec41f84ae8948353a6fbff1d',1,'stan::agrad::precomputed_gradients_vari::chain()'],['../classstan_1_1agrad_1_1stored__gradient__vari.html#ae97f9740598ac7be4c3af5769a54ac19',1,'stan::agrad::stored_gradient_vari::chain()']]], + ['chain_5fid',['chain_id',['../structstan_1_1io_1_1stan__csv__metadata.html#ad18cd985fe4d6c8c451950cc158438e4',1,'stan::io::stan_csv_metadata']]], + ['chainable',['chainable',['../classstan_1_1agrad_1_1chainable.html',1,'stan::agrad']]], + ['chainable',['chainable',['../classstan_1_1agrad_1_1chainable.html#a7a645b2e90197e1d6a0431707b7fad59',1,'stan::agrad::chainable']]], + ['chainable_2ehpp',['chainable.hpp',['../chainable_8hpp.html',1,'']]], + ['chainable_5falloc',['chainable_alloc',['../classstan_1_1agrad_1_1chainable__alloc.html#a0e5e6212324cb2453fd58b961aa1f098',1,'stan::agrad::chainable_alloc']]], + ['chainable_5falloc',['chainable_alloc',['../classstan_1_1agrad_1_1chainable__alloc.html',1,'stan::agrad']]], + ['chains',['chains',['../classstan_1_1mcmc_1_1chains.html',1,'stan::mcmc']]], + ['chains',['chains',['../classstan_1_1mcmc_1_1chains.html#ac3aa526b28133ca5e40369f1267abd51',1,'stan::mcmc::chains::chains(const Eigen::Matrix< std::string, Eigen::Dynamic, 1 > &param_names)'],['../classstan_1_1mcmc_1_1chains.html#a9155b524e66935f9e30bac5d6ae31a53',1,'stan::mcmc::chains::chains(const stan::io::stan_csv &stan_csv)']]], + ['chains_2ehpp',['chains.hpp',['../chains_8hpp.html',1,'']]], + ['check_5fbounded',['check_bounded',['../namespacestan_1_1math.html#a244fb67601cb568b79137450f934047b',1,'stan::math::check_bounded(const char *function, const T_y &y, const T_low &low, const T_high &high, const char *name, T_result *result)'],['../namespacestan_1_1math.html#a1e00f0db84045333d946bb2a49b924ac',1,'stan::math::check_bounded(const char *function, const T_y &y, const T_low &low, const T_high &high, const char *name)']]], + ['check_5fbounded_2ehpp',['check_bounded.hpp',['../check__bounded_8hpp.html',1,'']]], + ['check_5fcholesky_5ffactor',['check_cholesky_factor',['../namespacestan_1_1math.html#a6ea62b7ae38dc4b6a84bfe90f72b1fc9',1,'stan::math::check_cholesky_factor(const char *function, const Eigen::Matrix< T_y, Eigen::Dynamic, Eigen::Dynamic > &y, const char *name, T_result *result)'],['../namespacestan_1_1math.html#ab78172933a2bd63bdd511f062564a505',1,'stan::math::check_cholesky_factor(const char *function, const Eigen::Matrix< T, Eigen::Dynamic, Eigen::Dynamic > &y, const char *name, T *result=0)'],['../namespacestan_1_1math.html#a63e498bfd9699c99b57b207e2869023a',1,'stan::math::check_cholesky_factor(const char *function, const Eigen::Matrix< T_y, Eigen::Dynamic, Eigen::Dynamic > &y, T_result *result)'],['../namespacestan_1_1math.html#a1bba6a9591ff4834950d8819d17ec105',1,'stan::math::check_cholesky_factor(const char *function, const Eigen::Matrix< T, Eigen::Dynamic, Eigen::Dynamic > &y, T *result=0)']]], + ['check_5fcholesky_5ffactor_2ehpp',['check_cholesky_factor.hpp',['../check__cholesky__factor_8hpp.html',1,'']]], + ['check_5fconsistent_5fsize',['check_consistent_size',['../namespacestan_1_1math.html#a8987da44a92a90edb79fd84fd39e39d3',1,'stan::math']]], + ['check_5fconsistent_5fsize_2ehpp',['check_consistent_size.hpp',['../check__consistent__size_8hpp.html',1,'']]], + ['check_5fconsistent_5fsizes',['check_consistent_sizes',['../namespacestan_1_1math.html#ac0e0ad1687b604c6f0667a12922a2545',1,'stan::math::check_consistent_sizes(const char *function, const T1 &x1, const T2 &x2, const char *name1, const char *name2, T_result *result)'],['../namespacestan_1_1math.html#a0a4c9f7aec5e75731b7e3d0c33a758b6',1,'stan::math::check_consistent_sizes(const char *function, const T1 &x1, const T2 &x2, const T3 &x3, const char *name1, const char *name2, const char *name3, T_result *result)'],['../namespacestan_1_1math.html#a1244db32f5cb1447091b8f7965fe09d6',1,'stan::math::check_consistent_sizes(const char *function, const T1 &x1, const T2 &x2, const T3 &x3, const T4 &x4, const char *name1, const char *name2, const char *name3, const char *name4, T_result *result)']]], + ['check_5fconsistent_5fsizes_2ehpp',['check_consistent_sizes.hpp',['../check__consistent__sizes_8hpp.html',1,'']]], + ['check_5fcorr_5fmatrix',['check_corr_matrix',['../namespacestan_1_1math.html#a19892bf98f113034430413117fddd012',1,'stan::math::check_corr_matrix(const char *function, const Eigen::Matrix< T_y, Eigen::Dynamic, Eigen::Dynamic > &y, const char *name, T_result *result)'],['../namespacestan_1_1math.html#ad32dc573d6046854e39913596554961b',1,'stan::math::check_corr_matrix(const char *function, const Eigen::Matrix< T, Eigen::Dynamic, Eigen::Dynamic > &y, const char *name, T *result=0)']]], + ['check_5fcorr_5fmatrix_2ehpp',['check_corr_matrix.hpp',['../check__corr__matrix_8hpp.html',1,'']]], + ['check_5fcov_5fmatrix',['check_cov_matrix',['../namespacestan_1_1math.html#a90326b7bfecdcd28d2555c001ca7cf0f',1,'stan::math::check_cov_matrix(const char *function, const Eigen::Matrix< T_y, Eigen::Dynamic, Eigen::Dynamic > &y, const char *name, T_result *result)'],['../namespacestan_1_1math.html#adf9d505abaaf8ae26ad366f51d71fbd8',1,'stan::math::check_cov_matrix(const char *function, const Eigen::Matrix< T, Eigen::Dynamic, Eigen::Dynamic > &y, const char *name, T *result=0)'],['../namespacestan_1_1math.html#aea06d3b49639cdd7f4eee1a9e21d01a0',1,'stan::math::check_cov_matrix(const char *function, const Eigen::Matrix< T_covar, Eigen::Dynamic, Eigen::Dynamic > &Sigma, T_result *result)'],['../namespacestan_1_1math.html#ac60a94eb57a3b80ccdb54d75a38d5aa4',1,'stan::math::check_cov_matrix(const char *function, const Eigen::Matrix< T, Eigen::Dynamic, Eigen::Dynamic > &Sigma, T *result=0)']]], + ['check_5fcov_5fmatrix_2ehpp',['check_cov_matrix.hpp',['../check__cov__matrix_8hpp.html',1,'']]], + ['check_5ffinite',['check_finite',['../namespacestan_1_1math.html#af6feab878b8ff447121df2e6a9461680',1,'stan::math::check_finite(const char *function, const T_y &y, const char *name, T_result *result)'],['../namespacestan_1_1math.html#a46c87d5d26732e2860ae58d00f4fdff2',1,'stan::math::check_finite(const char *function, const T &y, const char *name)']]], + ['check_5ffinite_2ehpp',['check_finite.hpp',['../check__finite_8hpp.html',1,'']]], + ['check_5fgreater',['check_greater',['../namespacestan_1_1math.html#aada3014caf18d49104f7d63d0d6ea15e',1,'stan::math::check_greater(const char *function, const T_y &y, const T_low &low, const char *name, T_result *result)'],['../namespacestan_1_1math.html#aaaf1c4b2de4ed60a01fe919a0b3655fd',1,'stan::math::check_greater(const char *function, const T_y &y, const T_low &low, const char *name)']]], + ['check_5fgreater_2ehpp',['check_greater.hpp',['../check__greater_8hpp.html',1,'']]], + ['check_5fgreater_5for_5fequal',['check_greater_or_equal',['../namespacestan_1_1math.html#adbb58d3f6d9657f8488bc74a6db0a056',1,'stan::math::check_greater_or_equal(const char *function, const T_y &y, const T_low &low, const char *name, T_result *result)'],['../namespacestan_1_1math.html#abe66408d89f69a9d59b13d7c3d73423b',1,'stan::math::check_greater_or_equal(const char *function, const T_y &y, const T_low &low, const char *name)']]], + ['check_5fgreater_5for_5fequal_2ehpp',['check_greater_or_equal.hpp',['../check__greater__or__equal_8hpp.html',1,'']]], + ['check_5fldlt_5ffactor',['check_ldlt_factor',['../namespacestan_1_1math.html#ac9067bd3252ec66389f27fb9147a765f',1,'stan::math::check_ldlt_factor(const char *function, stan::math::LDLT_factor< T, R, C > &A, const char *name, T_result *result)'],['../namespacestan_1_1math.html#a1333847e7f49a3e4ddf504e0508a2503',1,'stan::math::check_ldlt_factor(const char *function, stan::math::LDLT_factor< T, R, C > &A, const char *name, T *result=0)']]], + ['check_5fldlt_5ffactor_2ehpp',['check_ldlt_factor.hpp',['../check__ldlt__factor_8hpp.html',1,'']]], + ['check_5fless',['check_less',['../namespacestan_1_1math.html#a7187754b7dfb0727664c3bed40ccf7b4',1,'stan::math::check_less(const char *function, const T_y &y, const T_high &high, const char *name, T_result *result)'],['../namespacestan_1_1math.html#a359cf57677ad750cbe12441ba34df391',1,'stan::math::check_less(const char *function, const T_y &y, const T_high &high, const char *name)']]], + ['check_5fless_2ehpp',['check_less.hpp',['../check__less_8hpp.html',1,'']]], + ['check_5fless_5for_5fequal',['check_less_or_equal',['../namespacestan_1_1math.html#a1c5a1e6a543017c50d64bcdd9d53bd83',1,'stan::math::check_less_or_equal(const char *function, const T_y &y, const T_high &high, const char *name, T_result *result)'],['../namespacestan_1_1math.html#adaaa5ed482610e1a8c0477cdd60e8033',1,'stan::math::check_less_or_equal(const char *function, const T_y &y, const T_high &high, const char *name)']]], + ['check_5fless_5for_5fequal_2ehpp',['check_less_or_equal.hpp',['../check__less__or__equal_8hpp.html',1,'']]], + ['check_5flower_5ftriangular',['check_lower_triangular',['../namespacestan_1_1math.html#a54f45f5cee19ad65fdd516e1b855d0fe',1,'stan::math::check_lower_triangular(const char *function, const Eigen::Matrix< T_y, Eigen::Dynamic, Eigen::Dynamic > &y, const char *name, T_result *result)'],['../namespacestan_1_1math.html#a5cd9fc9fd09527b5b8adf811d3d5b5e5',1,'stan::math::check_lower_triangular(const char *function, const Eigen::Matrix< T, Eigen::Dynamic, Eigen::Dynamic > &y, const char *name, T *result=0)']]], + ['check_5flower_5ftriangular_2ehpp',['check_lower_triangular.hpp',['../check__lower__triangular_8hpp.html',1,'']]], + ['check_5fnonnegative',['check_nonnegative',['../namespacestan_1_1math.html#a68e2e1e4423183dabe9e5cdad6bee6c2',1,'stan::math::check_nonnegative(const char *function, const T_y &y, const char *name, T_result *result)'],['../namespacestan_1_1math.html#a88d0fc72c0c2a6612f355cd48ddffab8',1,'stan::math::check_nonnegative(const char *function, const T_y &y, const char *name)']]], + ['check_5fnonnegative_2ehpp',['check_nonnegative.hpp',['../check__nonnegative_8hpp.html',1,'']]], + ['check_5fnot_5fnan',['check_not_nan',['../namespacestan_1_1math.html#aee36bc9bba89bed1d1568d20046cd3da',1,'stan::math::check_not_nan(const char *function, const T_y &y, const char *name, T_result *result=0)'],['../namespacestan_1_1math.html#a4d490dd2ffa3a5775cfd4f5347111505',1,'stan::math::check_not_nan(const char *function, const T &y, const char *name)']]], + ['check_5fnot_5fnan_2ehpp',['check_not_nan.hpp',['../check__not__nan_8hpp.html',1,'']]], + ['check_5fordered',['check_ordered',['../namespacestan_1_1math.html#a55bd442a2e6c56c40d7b60d0079ac8a7',1,'stan::math::check_ordered(const char *function, const Eigen::Matrix< T_y, Eigen::Dynamic, 1 > &y, const char *name, T_result *result)'],['../namespacestan_1_1math.html#a69935f4ef1aad90e6a48c49ba945efc2',1,'stan::math::check_ordered(const char *function, const Eigen::Matrix< T, Eigen::Dynamic, 1 > &y, const char *name, T *result=0)']]], + ['check_5fordered_2ehpp',['check_ordered.hpp',['../check__ordered_8hpp.html',1,'']]], + ['check_5fpos_5fdefinite',['check_pos_definite',['../namespacestan_1_1agrad.html#a5f647d8ef1686ba2b85035726e395f40',1,'stan::agrad::check_pos_definite()'],['../namespacestan_1_1math.html#aa543443cb0c96a44613255c83d593a86',1,'stan::math::check_pos_definite(const char *function, const Eigen::Matrix< T_y, Eigen::Dynamic, Eigen::Dynamic > &y, const char *name, T_result *result)'],['../namespacestan_1_1math.html#aa38f7f1aacfd755763e5b00af14ff9b6',1,'stan::math::check_pos_definite(const char *function, const Eigen::Matrix< T, Eigen::Dynamic, Eigen::Dynamic > &y, const char *name, T *result=0)']]], + ['check_5fpos_5fdefinite_2ehpp',['check_pos_definite.hpp',['../agrad_2rev_2error__handling_2matrix_2check__pos__definite_8hpp.html',1,'']]], + ['check_5fpos_5fdefinite_2ehpp',['check_pos_definite.hpp',['../math_2error__handling_2matrix_2check__pos__definite_8hpp.html',1,'']]], + ['check_5fpos_5fsemidefinite',['check_pos_semidefinite',['../namespacestan_1_1math.html#a7341142ee291b13f1ad04152a37f974f',1,'stan::math::check_pos_semidefinite(const char *function, const Eigen::Matrix< T_y, Eigen::Dynamic, Eigen::Dynamic > &y, const char *name, T_result *result)'],['../namespacestan_1_1math.html#af9a161786def6581011502056d92c021',1,'stan::math::check_pos_semidefinite(const char *function, const Eigen::Matrix< T, Eigen::Dynamic, Eigen::Dynamic > &y, const char *name, T *result=0)']]], + ['check_5fpos_5fsemidefinite_2ehpp',['check_pos_semidefinite.hpp',['../check__pos__semidefinite_8hpp.html',1,'']]], + ['check_5fpositive',['check_positive',['../namespacestan_1_1math.html#a573ec8402d9e6928596057ee179a96a9',1,'stan::math::check_positive(const char *function, const T_y &y, const char *name, T_result *result)'],['../namespacestan_1_1math.html#ac07e0ff96981b93a266298e6c9343395',1,'stan::math::check_positive(const char *function, const T &x, const char *name)']]], + ['check_5fpositive_2ehpp',['check_positive.hpp',['../check__positive_8hpp.html',1,'']]], + ['check_5fpositive_5fordered',['check_positive_ordered',['../namespacestan_1_1math.html#a953ca730fb62ef45047f2a73c0f84a88',1,'stan::math::check_positive_ordered(const char *function, const Eigen::Matrix< T_y, Eigen::Dynamic, 1 > &y, const char *name, T_result *result)'],['../namespacestan_1_1math.html#a153b3fac80bd9f9739f87cfccb7eb870',1,'stan::math::check_positive_ordered(const char *function, const Eigen::Matrix< T, Eigen::Dynamic, 1 > &y, const char *name, T *result=0)']]], + ['check_5fpositive_5fordered_2ehpp',['check_positive_ordered.hpp',['../check__positive__ordered_8hpp.html',1,'']]], + ['check_5frange',['check_range',['../namespacestan_1_1math.html#a1220906f5cf5892f9867a4b9bcec08c9',1,'stan::math']]], + ['check_5frange_2ehpp',['check_range.hpp',['../check__range_8hpp.html',1,'']]], + ['check_5fsimplex',['check_simplex',['../namespacestan_1_1math.html#a4cbbf2c5799c876b8b5a40a6be59fad4',1,'stan::math::check_simplex(const char *function, const Eigen::Matrix< T_prob, Eigen::Dynamic, 1 > &theta, const char *name, T_result *result)'],['../namespacestan_1_1math.html#ac5371fc49b7503afbe9a49867fc5d075',1,'stan::math::check_simplex(const char *function, const Eigen::Matrix< T, Eigen::Dynamic, 1 > &theta, const char *name, T *result=0)']]], + ['check_5fsimplex_2ehpp',['check_simplex.hpp',['../check__simplex_8hpp.html',1,'']]], + ['check_5fsize_5fmatch',['check_size_match',['../namespacestan_1_1math.html#aa604267d7189b6fde0be2c83f03f60f8',1,'stan::math::check_size_match(const char *function, T_size1 i, const char *name_i, T_size2 j, const char *name_j, T_result *result)'],['../namespacestan_1_1math.html#a7db9ba4076101c008a4164d1f4f0881d',1,'stan::math::check_size_match(const char *function, T_size1 i, const char *name_i, T_size2 j, const char *name_j, T_size1 *result=0)']]], + ['check_5fsize_5fmatch_2ehpp',['check_size_match.hpp',['../check__size__match_8hpp.html',1,'']]], + ['check_5fspsd_5fmatrix',['check_spsd_matrix',['../namespacestan_1_1math.html#a1f953f345a5fc4d4258d65c9fd494d0d',1,'stan::math::check_spsd_matrix(const char *function, const Eigen::Matrix< T_y, Eigen::Dynamic, Eigen::Dynamic > &y, const char *name, T_result *result)'],['../namespacestan_1_1math.html#a919b0ac7be6e9129159dcd57b5aaa229',1,'stan::math::check_spsd_matrix(const char *function, const Eigen::Matrix< T, Eigen::Dynamic, Eigen::Dynamic > &y, const char *name, T *result=0)']]], + ['check_5fspsd_5fmatrix_2ehpp',['check_spsd_matrix.hpp',['../check__spsd__matrix_8hpp.html',1,'']]], + ['check_5fsquare',['check_square',['../namespacestan_1_1math.html#aaa8e58058a05567645f7589f90f5acaf',1,'stan::math::check_square(const char *function, const Eigen::Matrix< T_y, Eigen::Dynamic, Eigen::Dynamic > &y, const char *name, T_result *result)'],['../namespacestan_1_1math.html#a354049e8dec929a4b054b7e8db06a4fb',1,'stan::math::check_square(const char *function, const Eigen::Matrix< T, Eigen::Dynamic, Eigen::Dynamic > &y, const char *name, T *result=0)']]], + ['check_5fsquare_2ehpp',['check_square.hpp',['../check__square_8hpp.html',1,'']]], + ['check_5fsymmetric',['check_symmetric',['../namespacestan_1_1math.html#a7d97aebea4cf628724dfd08030284bb2',1,'stan::math::check_symmetric(const char *function, const Eigen::Matrix< T_y, Eigen::Dynamic, Eigen::Dynamic > &y, const char *name, T_result *result)'],['../namespacestan_1_1math.html#a8aebef4c723a2963977653559ebd2374',1,'stan::math::check_symmetric(const char *function, const Eigen::Matrix< T, Eigen::Dynamic, Eigen::Dynamic > &y, const char *name, T *result=0)']]], + ['check_5fsymmetric_2ehpp',['check_symmetric.hpp',['../check__symmetric_8hpp.html',1,'']]], + ['check_5funit_5fvector',['check_unit_vector',['../namespacestan_1_1math.html#ab722ab154aebf9a162df8e9bd4e3e42f',1,'stan::math::check_unit_vector(const char *function, const Eigen::Matrix< T_prob, Eigen::Dynamic, 1 > &theta, const char *name, T_result *result)'],['../namespacestan_1_1math.html#a7496b0022b662c358931d1ab0458f60e',1,'stan::math::check_unit_vector(const char *function, const Eigen::Matrix< T, Eigen::Dynamic, 1 > &theta, const char *name, T *result=0)']]], + ['check_5funit_5fvector_2ehpp',['check_unit_vector.hpp',['../check__unit__vector_8hpp.html',1,'']]], + ['chi_5fsquare_2ehpp',['chi_square.hpp',['../chi__square_8hpp.html',1,'']]], + ['chi_5fsquare_5fccdf_5flog',['chi_square_ccdf_log',['../namespacestan_1_1prob.html#a3053cf28f5702b2b815e90f6e13a0931',1,'stan::prob']]], + ['chi_5fsquare_5fcdf',['chi_square_cdf',['../namespacestan_1_1prob.html#a200487188f204a155be81bcf76e3e578',1,'stan::prob']]], + ['chi_5fsquare_5fcdf_5flog',['chi_square_cdf_log',['../namespacestan_1_1prob.html#abec586221c76c3d3da9654cba160b35d',1,'stan::prob']]], + ['chi_5fsquare_5flog',['chi_square_log',['../namespacestan_1_1prob.html#ab7eb2d6575574aa8b2838532bb81832d',1,'stan::prob::chi_square_log(const T_y &y, const T_dof &nu)'],['../namespacestan_1_1prob.html#ab08231831678e188d428e0bd78c900f0',1,'stan::prob::chi_square_log(const T_y &y, const T_dof &nu)']]], + ['chi_5fsquare_5frng',['chi_square_rng',['../namespacestan_1_1prob.html#a367304c7727de79fa5d8660f1406754b',1,'stan::prob']]], + ['cholesky_5fdecompose',['cholesky_decompose',['../namespacestan_1_1math.html#abbcc91ff24e86fa318fe0f8a9111b4c5',1,'stan::math']]], + ['cholesky_5fdecompose_2ehpp',['cholesky_decompose.hpp',['../cholesky__decompose_8hpp.html',1,'']]], + ['cholesky_5ffactor',['cholesky_factor',['../classstan_1_1io_1_1reader.html#a9572cd028cf0d073c45ab83ae6f4477e',1,'stan::io::reader']]], + ['cholesky_5ffactor_5fconstrain',['cholesky_factor_constrain',['../classstan_1_1io_1_1reader.html#a6c6bee8c526c8d114c95646f171413cc',1,'stan::io::reader::cholesky_factor_constrain(size_t M, size_t N)'],['../classstan_1_1io_1_1reader.html#ac49f77d0cd4d89f3d06ac62515cfa809',1,'stan::io::reader::cholesky_factor_constrain(size_t M, size_t N, T &lp)'],['../namespacestan_1_1prob.html#a1fed06bde5073fb875496b5a680c39ca',1,'stan::prob::cholesky_factor_constrain(const Eigen::Matrix< T, Eigen::Dynamic, 1 > &x, int M, int N)'],['../namespacestan_1_1prob.html#aaac795244dbcd9bb3fa44d2275ddc3c1',1,'stan::prob::cholesky_factor_constrain(const Eigen::Matrix< T, Eigen::Dynamic, 1 > &x, int M, int N, T &lp)']]], + ['cholesky_5ffactor_5fdecl_5fr',['cholesky_factor_decl_r',['../structstan_1_1gm_1_1var__decls__grammar.html#af6c3b1a0eb00517659faa2f659d0abd0',1,'stan::gm::var_decls_grammar']]], + ['cholesky_5ffactor_5ffree',['cholesky_factor_free',['../namespacestan_1_1prob.html#a74157f1d9c708df760d602d6adb53712',1,'stan::prob']]], + ['cholesky_5ffactor_5funconstrain',['cholesky_factor_unconstrain',['../classstan_1_1io_1_1writer.html#ae96ed09cbcd87375c712e20503894264',1,'stan::io::writer']]], + ['cholesky_5ffactor_5fvar_5fdecl',['cholesky_factor_var_decl',['../structstan_1_1gm_1_1cholesky__factor__var__decl.html',1,'stan::gm']]], + ['cholesky_5ffactor_5fvar_5fdecl',['cholesky_factor_var_decl',['../structstan_1_1gm_1_1cholesky__factor__var__decl.html#ae19a9b374feff362b4f32d0d8cb8a4df',1,'stan::gm::cholesky_factor_var_decl::cholesky_factor_var_decl()'],['../structstan_1_1gm_1_1cholesky__factor__var__decl.html#a661cb5898a5139eba744d9d53309584f',1,'stan::gm::cholesky_factor_var_decl::cholesky_factor_var_decl(expression const &M, expression const &N, std::string const &name, std::vector< expression > const &dims)']]], + ['chunk_5falloc',['chunk_alloc',['../classstan_1_1memory_1_1chunk__alloc.html',1,'stan::memory']]], + ['chunk_5falloc',['chunk_alloc',['../classstan_1_1memory_1_1chunk__alloc.html#a51cecbbac945e0b108229b21ecd6abf7',1,'stan::memory::chunk_alloc']]], + ['chunk_5falloc_2ehpp',['chunk_alloc.hpp',['../chunk__alloc_8hpp.html',1,'']]], + ['cmd_5fline',['cmd_line',['../classstan_1_1io_1_1cmd__line.html#a8b00f5947e12e84d1740116a05a4ca16',1,'stan::io::cmd_line']]], + ['cmd_5fline',['cmd_line',['../classstan_1_1io_1_1cmd__line.html',1,'stan::io']]], + ['cmd_5fline_2ehpp',['cmd_line.hpp',['../cmd__line_8hpp.html',1,'']]], + ['col',['col',['../namespacestan_1_1math.html#ae497ca37fd7867fd11c4cd095c8aaa71',1,'stan::math']]], + ['col_2ehpp',['col.hpp',['../col_8hpp.html',1,'']]], + ['cols',['cols',['../classstan_1_1math_1_1_l_d_l_t__factor_3_01stan_1_1agrad_1_1var_00_01_r_00_01_c_01_4.html#a00df49ca9dbf61b2f6b1fc6c991c1fb9',1,'stan::math::LDLT_factor< stan::agrad::var, R, C >::cols()'],['../classstan_1_1math_1_1_l_d_l_t__factor_3_01double_00_01_r_00_01_c_01_4.html#adf662c7112e7274e630e07d7ac14c78a',1,'stan::math::LDLT_factor< double, R, C >::cols()'],['../namespacestan_1_1math.html#a871bccc233a4dcd764ffece5a3f9a399',1,'stan::math::cols()']]], + ['cols_2ehpp',['cols.hpp',['../cols_8hpp.html',1,'']]], + ['columns_5fdot_5fproduct',['columns_dot_product',['../namespacestan_1_1agrad.html#a4690cc81441d5be35328e09c11b6d0bb',1,'stan::agrad::columns_dot_product(const Eigen::Matrix< fvar< T >, R1, C1 > &v1, const Eigen::Matrix< fvar< T >, R2, C2 > &v2)'],['../namespacestan_1_1agrad.html#ad72bd7f6e164cb2341d055ace67c32af',1,'stan::agrad::columns_dot_product(const Eigen::Matrix< fvar< T >, R1, C1 > &v1, const Eigen::Matrix< double, R2, C2 > &v2)'],['../namespacestan_1_1agrad.html#ad2c2338e972cab17e0f8cbcaa190d90b',1,'stan::agrad::columns_dot_product(const Eigen::Matrix< double, R1, C1 > &v1, const Eigen::Matrix< fvar< T >, R2, C2 > &v2)'],['../namespacestan_1_1agrad.html#a3d6da62972dd8c1d717b7e99838c84bc',1,'stan::agrad::columns_dot_product(const Eigen::Matrix< T1, R1, C1 > &v1, const Eigen::Matrix< T2, R2, C2 > &v2)'],['../namespacestan_1_1math.html#a6d03b34aa7329a68f31d1c7bc500c5c8',1,'stan::math::columns_dot_product()']]], + ['columns_5fdot_5fproduct_2ehpp',['columns_dot_product.hpp',['../agrad_2fwd_2matrix_2columns__dot__product_8hpp.html',1,'']]], + ['columns_5fdot_5fproduct_2ehpp',['columns_dot_product.hpp',['../math_2matrix_2columns__dot__product_8hpp.html',1,'']]], + ['columns_5fdot_5fself',['columns_dot_self',['../namespacestan_1_1agrad.html#aa4910329638fc8776c1568e9c41ae014',1,'stan::agrad::columns_dot_self(const Eigen::Matrix< fvar< T >, R, C > &x)'],['../namespacestan_1_1agrad.html#a6b316428660dff0e79e67e804ad1cbce',1,'stan::agrad::columns_dot_self(const Eigen::Matrix< var, R, C > &x)'],['../namespacestan_1_1math.html#af03701ff6420231890468e9881eb9245',1,'stan::math::columns_dot_self()']]], + ['columns_5fdot_5fself_2ehpp',['columns_dot_self.hpp',['../agrad_2fwd_2matrix_2columns__dot__self_8hpp.html',1,'']]], + ['columns_5fdot_5fself_2ehpp',['columns_dot_self.hpp',['../math_2matrix_2columns__dot__self_8hpp.html',1,'']]], + ['comma',['comma',['../classstan_1_1io_1_1csv__writer.html#a3b3dd2236e6e62005bad3a4dfbea6596',1,'stan::io::csv_writer']]], + ['command',['command',['../classstan_1_1io_1_1cmd__line.html#acffdc087dbbe052e4827b281e2c388f7',1,'stan::io::cmd_line::command()'],['../namespacestan_1_1gm.html#a4f99fc7285080014068543c8d5ab71b1',1,'stan::gm::command()']]], + ['command_2ehpp',['command.hpp',['../command_8hpp.html',1,'']]], + ['common_5fadaptors_5fdef_2ehpp',['common_adaptors_def.hpp',['../common__adaptors__def_8hpp.html',1,'']]], + ['common_5ftype',['common_type',['../structstan_1_1math_1_1common__type.html',1,'stan::math']]], + ['common_5ftype_2ehpp',['common_type.hpp',['../common__type_8hpp.html',1,'']]], + ['common_5ftype_3c_20eigen_3a_3amatrix_3c_20t1_2c_20r_2c_20c_20_3e_2c_20eigen_3a_3amatrix_3c_20t2_2c_20r_2c_20c_20_3e_20_3e',['common_type< Eigen::Matrix< T1, R, C >, Eigen::Matrix< T2, R, C > >',['../structstan_1_1math_1_1common__type_3_01_eigen_1_1_matrix_3_01_t1_00_01_r_00_01_c_01_4_00_01_eiged8accfa00e73f240c58ad02ac582ba93.html',1,'stan::math']]], + ['common_5ftype_3c_20std_3a_3avector_3c_20t1_20_3e_2c_20std_3a_3avector_3c_20t2_20_3e_20_3e',['common_type< std::vector< T1 >, std::vector< T2 > >',['../structstan_1_1math_1_1common__type_3_01std_1_1vector_3_01_t1_01_4_00_01std_1_1vector_3_01_t2_01_4_01_4.html',1,'stan::math']]], + ['compile',['compile',['../namespacestan_1_1gm.html#afa03c3de30429fab595ea53c97b9edc8',1,'stan::gm']]], + ['compiler_2ehpp',['compiler.hpp',['../compiler_8hpp.html',1,'']]], + ['complete_5fadaptation',['complete_adaptation',['../classstan_1_1mcmc_1_1stepsize__adaptation.html#a6a58fb8dd3f3b90c16ac9f86299c7da3',1,'stan::mcmc::stepsize_adaptation']]], + ['compute',['compute',['../classstan_1_1agrad_1_1_l_d_l_t__alloc.html#a1379821d069685022c0e5ff0efe6cb0b',1,'stan::agrad::LDLT_alloc::compute()'],['../classstan_1_1math_1_1_l_d_l_t__factor_3_01stan_1_1agrad_1_1var_00_01_r_00_01_c_01_4.html#adea90c563014600ac9d7aa05056db56d',1,'stan::math::LDLT_factor< stan::agrad::var, R, C >::compute()'],['../classstan_1_1math_1_1_l_d_l_t__factor_3_01double_00_01_r_00_01_c_01_4.html#add76e21a65bdd840ca67d24531612573',1,'stan::math::LDLT_factor< double, R, C >::compute()']]], + ['compute_5fcriterion',['compute_criterion',['../classstan_1_1mcmc_1_1base__nuts.html#ac2961f3ce35af570405291a8011e1064',1,'stan::mcmc::base_nuts::compute_criterion()'],['../classstan_1_1mcmc_1_1dense__e__nuts.html#aa23ebe0b61e0ed91a9a94457e69e08da',1,'stan::mcmc::dense_e_nuts::compute_criterion()'],['../classstan_1_1mcmc_1_1diag__e__nuts.html#a61f9db95ebdc67274cdea0f479dc0a5e',1,'stan::mcmc::diag_e_nuts::compute_criterion()'],['../classstan_1_1mcmc_1_1unit__e__nuts.html#ab61a9ee4db3845a88adc78249e35c170',1,'stan::mcmc::unit_e_nuts::compute_criterion()']]], + ['compute_5findent',['compute_indent',['../classstan_1_1gm_1_1argument.html#a1df06fb3f558fc0eecfce30d38f77359',1,'stan::gm::argument']]], + ['compute_5fnext_5fwindow',['compute_next_window',['../classstan_1_1mcmc_1_1windowed__adaptation.html#a99adff4a3380c627160d995b5584bf8e',1,'stan::mcmc::windowed_adaptation']]], + ['compute_5fprecision',['compute_precision',['../print_8hpp.html#a0fc6b77bb6e90f0e770af8b3fe5ac44d',1,'print.hpp']]], + ['compute_5fwidth',['compute_width',['../print_8hpp.html#a78042a12545744a3a7978b458faea92c',1,'print.hpp']]], + ['compute_5fwidth_5fand_5fprecision',['compute_width_and_precision',['../print_8hpp.html#a16acdd9987d7a0e6d03b905f9c6cc65b',1,'print.hpp']]], + ['condition_5f',['condition_',['../structstan_1_1gm_1_1while__statement.html#ac28766c928629d492f3cb633a70d446d',1,'stan::gm::while_statement']]], + ['conditional_5fstatement',['conditional_statement',['../structstan_1_1gm_1_1conditional__statement.html',1,'stan::gm']]], + ['conditional_5fstatement',['conditional_statement',['../structstan_1_1gm_1_1conditional__statement.html#a1abc13ef1fe45721706610334a3fc111',1,'stan::gm::conditional_statement::conditional_statement()'],['../structstan_1_1gm_1_1conditional__statement.html#a9ee4cb8e757e7be347cb40f870b77494',1,'stan::gm::conditional_statement::conditional_statement(const std::vector< expression > &conditions, const std::vector< statement > &statements)']]], + ['conditional_5fstatement_5fr',['conditional_statement_r',['../structstan_1_1gm_1_1statement__2__grammar.html#a5d6a2f57ba3e3e2d05f9aad72fcbc97c',1,'stan::gm::statement_2_grammar']]], + ['conditions_5f',['conditions_',['../structstan_1_1gm_1_1conditional__statement.html#a1afeedc0d7f192d1fac3cda264918a22',1,'stan::gm::conditional_statement']]], + ['config',['CONFIG',['../structstan_1_1gm_1_1error__codes.html#aa63873e8f7e9dd7f8af3502e4003292fa06ec7fc9f65aafc74d415edaba0a63bc',1,'stan::gm::error_codes']]], + ['constants_2ehpp',['constants.hpp',['../math_2constants_8hpp.html',1,'']]], + ['constants_2ehpp',['constants.hpp',['../prob_2constants_8hpp.html',1,'']]], + ['constrained_5fparam_5fnames_5fvisgen',['constrained_param_names_visgen',['../structstan_1_1gm_1_1constrained__param__names__visgen.html',1,'stan::gm']]], + ['constrained_5fparam_5fnames_5fvisgen',['constrained_param_names_visgen',['../structstan_1_1gm_1_1constrained__param__names__visgen.html#ab1fef3623722eef039191cf79b87e84b',1,'stan::gm::constrained_param_names_visgen']]], + ['constraint_5ftolerance',['CONSTRAINT_TOLERANCE',['../classstan_1_1io_1_1writer.html#a028f6ddc6fd884c8be9cdb5e17d49d73',1,'stan::io::writer::CONSTRAINT_TOLERANCE()'],['../namespacestan_1_1math.html#aece739c5a2672028f0c7848045b89f08',1,'stan::math::CONSTRAINT_TOLERANCE()'],['../namespacestan_1_1prob.html#a42d98044ad33e2fe147c7edcf09282f6',1,'stan::prob::CONSTRAINT_TOLERANCE()']]], + ['constraint_5ftolerance_2ehpp',['constraint_tolerance.hpp',['../constraint__tolerance_8hpp.html',1,'']]], + ['cont_5fparams',['cont_params',['../classstan_1_1mcmc_1_1sample.html#aa6dbff10de92bcd52e156ac8ca8eba6e',1,'stan::mcmc::sample::cont_params(int k) const '],['../classstan_1_1mcmc_1_1sample.html#ae659b68fe8ac4a7a87fcd53549133c90',1,'stan::mcmc::sample::cont_params(Eigen::VectorXd &x) const '],['../classstan_1_1mcmc_1_1sample.html#afa5f116f5b79a757bfb7d68931bd3c17',1,'stan::mcmc::sample::cont_params() const ']]], + ['contains_5ffvar',['contains_fvar',['../structstan_1_1contains__fvar.html',1,'stan']]], + ['contains_5fi',['contains_i',['../classstan_1_1io_1_1dump.html#a1865fdffc3451dd6460a5540c8e0912e',1,'stan::io::dump::contains_i()'],['../classstan_1_1io_1_1var__context.html#a57b4df63029aa81a4ee3e93899722068',1,'stan::io::var_context::contains_i()']]], + ['contains_5fnonparam_5fvar',['contains_nonparam_var',['../structstan_1_1gm_1_1contains__nonparam__var.html#a6beb41e5c41785733e1cc6881eba82a9',1,'stan::gm::contains_nonparam_var']]], + ['contains_5fnonparam_5fvar',['contains_nonparam_var',['../structstan_1_1gm_1_1contains__nonparam__var.html',1,'stan::gm']]], + ['contains_5fr',['contains_r',['../classstan_1_1io_1_1dump.html#ac531d67fb8a74300ebbe014dfe367706',1,'stan::io::dump::contains_r()'],['../classstan_1_1io_1_1var__context.html#abaa6a87ecb4d45c29386f0de57b330f4',1,'stan::io::var_context::contains_r()']]], + ['contains_5fvar',['contains_var',['../structstan_1_1gm_1_1contains__var.html#a8d00ba5b2f7fcecec2baca23d1ddb200',1,'stan::gm::contains_var']]], + ['contains_5fvar',['contains_var',['../structstan_1_1gm_1_1contains__var.html',1,'stan::gm']]], + ['continuous_2ehpp',['continuous.hpp',['../multivariate_2continuous_8hpp.html',1,'']]], + ['continuous_2ehpp',['continuous.hpp',['../univariate_2continuous_8hpp.html',1,'']]], + ['corr',['corr',['../classstan_1_1io_1_1reader.html#af409911d7c4b3996291884fbebecfd85',1,'stan::io::reader']]], + ['corr_5fconstrain',['corr_constrain',['../classstan_1_1io_1_1reader.html#aeaafba520a6ad5ae7654e24d46ffbb39',1,'stan::io::reader::corr_constrain()'],['../classstan_1_1io_1_1reader.html#a83d52f9f5ffec50991cf3224f1caad9c',1,'stan::io::reader::corr_constrain(T &lp)'],['../namespacestan_1_1prob.html#a1a965b7e5c7fc2ef6bbd3a436ae17b99',1,'stan::prob::corr_constrain(const T x)'],['../namespacestan_1_1prob.html#a845c7b8687f4e6b588820b815e464729',1,'stan::prob::corr_constrain(const T x, T &lp)']]], + ['corr_5ffree',['corr_free',['../namespacestan_1_1prob.html#ade592c3579e0e7a685b7e2ec5bb0218b',1,'stan::prob']]], + ['corr_5fmatrix',['corr_matrix',['../classstan_1_1io_1_1reader.html#aa410515341701109fb937c14b101e20d',1,'stan::io::reader']]], + ['corr_5fmatrix_5fconstrain',['corr_matrix_constrain',['../classstan_1_1io_1_1reader.html#a75eb056f8f7b1032865feb97f506e3e6',1,'stan::io::reader::corr_matrix_constrain(size_t k)'],['../classstan_1_1io_1_1reader.html#ab23e0b88e39d354121b66e6823e1cac9',1,'stan::io::reader::corr_matrix_constrain(size_t k, T &lp)'],['../namespacestan_1_1prob.html#ad9af41714d33fbe0e5e29aab85553ccc',1,'stan::prob::corr_matrix_constrain(const Eigen::Matrix< T, Eigen::Dynamic, 1 > &x, typename Eigen::Matrix< T, Eigen::Dynamic, 1 >::size_type k)'],['../namespacestan_1_1prob.html#a2767379e92ce98f2f7016b47e7aeec47',1,'stan::prob::corr_matrix_constrain(const Eigen::Matrix< T, Eigen::Dynamic, 1 > &x, typename Eigen::Matrix< T, Eigen::Dynamic, 1 >::size_type k, T &lp)']]], + ['corr_5fmatrix_5fdecl_5fr',['corr_matrix_decl_r',['../structstan_1_1gm_1_1var__decls__grammar.html#a8a1a3bc0f32b4484648ba7ed1cc1e6ec',1,'stan::gm::var_decls_grammar']]], + ['corr_5fmatrix_5ffree',['corr_matrix_free',['../namespacestan_1_1prob.html#acc2abdf331f1cc4b3f36b15a66088ab2',1,'stan::prob']]], + ['corr_5fmatrix_5funconstrain',['corr_matrix_unconstrain',['../classstan_1_1io_1_1writer.html#af26ec20d15ff3a57ab0e1a87579decbb',1,'stan::io::writer']]], + ['corr_5fmatrix_5fvar_5fdecl',['corr_matrix_var_decl',['../structstan_1_1gm_1_1corr__matrix__var__decl.html#acb8f9bbb7cbfcc2a5cae3b6b6e5aa3a3',1,'stan::gm::corr_matrix_var_decl::corr_matrix_var_decl()'],['../structstan_1_1gm_1_1corr__matrix__var__decl.html#a208b78416bf4d23b7b093014c19c03d2',1,'stan::gm::corr_matrix_var_decl::corr_matrix_var_decl(expression const &K, std::string const &name, std::vector< expression > const &dims)']]], + ['corr_5fmatrix_5fvar_5fdecl',['corr_matrix_var_decl',['../structstan_1_1gm_1_1corr__matrix__var__decl.html',1,'stan::gm']]], + ['corr_5funconstrain',['corr_unconstrain',['../classstan_1_1io_1_1writer.html#a00cb858ddd90f1af498f1dfe552f2658',1,'stan::io::writer']]], + ['correlation',['correlation',['../classstan_1_1mcmc_1_1chains.html#aaf76107a82d21ec2a1b49e436faa459b',1,'stan::mcmc::chains::correlation(const int chain, const int index1, const int index2)'],['../classstan_1_1mcmc_1_1chains.html#a2cf11cd1b7b928ebf87d6708a0bada74',1,'stan::mcmc::chains::correlation(const int index1, const int index2)'],['../classstan_1_1mcmc_1_1chains.html#ab581e93f8ad9222927be0ab55de4e83c',1,'stan::mcmc::chains::correlation(const int chain, const std::string &name1, const std::string &name2)'],['../classstan_1_1mcmc_1_1chains.html#aa5f25ea09b915b3c768947c3e3e03bf5',1,'stan::mcmc::chains::correlation(const std::string &name1, const std::string &name2)']]], + ['cos',['cos',['../namespacestan_1_1agrad.html#a6f03b0ce8e8e381865f09baa3036d48d',1,'stan::agrad::cos(const var &a)'],['../namespacestan_1_1agrad.html#a1768b39c559d7c8e0f467ea1916b625f',1,'stan::agrad::cos(const fvar< T > &x)']]], + ['cos_2ehpp',['cos.hpp',['../fwd_2functions_2cos_8hpp.html',1,'']]], + ['cos_2ehpp',['cos.hpp',['../rev_2functions_2cos_8hpp.html',1,'']]], + ['cosh',['cosh',['../namespacestan_1_1agrad.html#a0c2536220a01717d9efc8aa9b993d46b',1,'stan::agrad::cosh(const var &a)'],['../namespacestan_1_1agrad.html#a2401e1b775fc8f3ba201a30d66022d09',1,'stan::agrad::cosh(const fvar< T > &x)']]], + ['cosh_2ehpp',['cosh.hpp',['../fwd_2functions_2cosh_8hpp.html',1,'']]], + ['cosh_2ehpp',['cosh.hpp',['../rev_2functions_2cosh_8hpp.html',1,'']]], + ['cov_5fmatrix',['cov_matrix',['../classstan_1_1io_1_1reader.html#a6b0b034457a37f2eb7c27cec9b8e600d',1,'stan::io::reader']]], + ['cov_5fmatrix_5fconstrain',['cov_matrix_constrain',['../classstan_1_1io_1_1reader.html#ab8ada631ae87ef2de7978a33299e872e',1,'stan::io::reader::cov_matrix_constrain(size_t k)'],['../classstan_1_1io_1_1reader.html#a1ea7077509503ff9bf2777430cb70fcf',1,'stan::io::reader::cov_matrix_constrain(size_t k, T &lp)'],['../namespacestan_1_1prob.html#afe73ba3027bcb8e30424b81a5460828b',1,'stan::prob::cov_matrix_constrain(const Eigen::Matrix< T, Eigen::Dynamic, 1 > &x, typename Eigen::Matrix< T, Eigen::Dynamic, 1 >::size_type K)'],['../namespacestan_1_1prob.html#af8bbcd6e6f8239799dc9b2661059801b',1,'stan::prob::cov_matrix_constrain(const Eigen::Matrix< T, Eigen::Dynamic, 1 > &x, typename Eigen::Matrix< T, Eigen::Dynamic, 1 >::size_type K, T &lp)']]], + ['cov_5fmatrix_5fconstrain_5flkj',['cov_matrix_constrain_lkj',['../namespacestan_1_1prob.html#ae151aa1645e82ec7cb298466edcbbb0b',1,'stan::prob::cov_matrix_constrain_lkj(const Eigen::Matrix< T, Eigen::Dynamic, 1 > &x, size_t k)'],['../namespacestan_1_1prob.html#a26ee45f1dd50ceaca0eea65cab7e85b3',1,'stan::prob::cov_matrix_constrain_lkj(const Eigen::Matrix< T, Eigen::Dynamic, 1 > &x, size_t k, T &lp)']]], + ['cov_5fmatrix_5fdecl_5fr',['cov_matrix_decl_r',['../structstan_1_1gm_1_1var__decls__grammar.html#af7029c6e49af878a50f5717713430798',1,'stan::gm::var_decls_grammar']]], + ['cov_5fmatrix_5ffree',['cov_matrix_free',['../namespacestan_1_1prob.html#a402fcdcfe19b2a5c25f4729d1cf31678',1,'stan::prob']]], + ['cov_5fmatrix_5ffree_5flkj',['cov_matrix_free_lkj',['../namespacestan_1_1prob.html#a7f6a575490d3de6839a6f544781bf464',1,'stan::prob']]], + ['cov_5fmatrix_5funconstrain',['cov_matrix_unconstrain',['../classstan_1_1io_1_1writer.html#a2f9bb2387b552311a613cc00391e6bb4',1,'stan::io::writer']]], + ['cov_5fmatrix_5fvar_5fdecl',['cov_matrix_var_decl',['../structstan_1_1gm_1_1cov__matrix__var__decl.html#aebf75d147fbbf2ee7e8d52aa48a0fd76',1,'stan::gm::cov_matrix_var_decl::cov_matrix_var_decl()'],['../structstan_1_1gm_1_1cov__matrix__var__decl.html#aedec8ffe9e2f319afd7eb903e3b17dc6',1,'stan::gm::cov_matrix_var_decl::cov_matrix_var_decl(expression const &K, std::string const &name, std::vector< expression > const &dims)']]], + ['cov_5fmatrix_5fvar_5fdecl',['cov_matrix_var_decl',['../structstan_1_1gm_1_1cov__matrix__var__decl.html',1,'stan::gm']]], + ['covar_5fadaptation',['covar_adaptation',['../classstan_1_1mcmc_1_1covar__adaptation.html',1,'stan::mcmc']]], + ['covar_5fadaptation',['covar_adaptation',['../classstan_1_1mcmc_1_1covar__adaptation.html#a32edd1badb6af5fad1348168ab4d5d91',1,'stan::mcmc::covar_adaptation']]], + ['covar_5fadaptation_2ehpp',['covar_adaptation.hpp',['../covar__adaptation_8hpp.html',1,'']]], + ['covariance',['covariance',['../classstan_1_1mcmc_1_1chains.html#a1611771bf5fa3c15e528d26836aa2ac5',1,'stan::mcmc::chains::covariance(const int chain, const int index1, const int index2)'],['../classstan_1_1mcmc_1_1chains.html#a5bc40586bfcc5bfef6e5b6bf651608ec',1,'stan::mcmc::chains::covariance(const int index1, const int index2)'],['../classstan_1_1mcmc_1_1chains.html#a99a0247f578644538745f03510f0f268',1,'stan::mcmc::chains::covariance(const int chain, const std::string &name1, const std::string &name2)'],['../classstan_1_1mcmc_1_1chains.html#a2920dbf4b733612596fc7b306043aceb',1,'stan::mcmc::chains::covariance(const std::string &name1, const std::string &name2)']]], + ['criterion',['criterion',['../structstan_1_1mcmc_1_1nuts__util.html#ad957f342afb9aa4d0e838486885f31d3',1,'stan::mcmc::nuts_util']]], + ['crossprod',['crossprod',['../namespacestan_1_1agrad.html#a5091c4a9b716a75406b9cbee072a27c1',1,'stan::agrad::crossprod(const Eigen::Matrix< fvar< T >, R, C > &m)'],['../namespacestan_1_1agrad.html#a704fdafdbf6fd44b9b3a382bc23a026e',1,'stan::agrad::crossprod(const matrix_v &M)'],['../namespacestan_1_1math.html#a62cc3a137ff3220bdd0137a52a4b9714',1,'stan::math::crossprod()']]], + ['crossprod_2ehpp',['crossprod.hpp',['../math_2matrix_2crossprod_8hpp.html',1,'']]], + ['crossprod_2ehpp',['crossprod.hpp',['../agrad_2fwd_2matrix_2crossprod_8hpp.html',1,'']]], + ['crossprod_2ehpp',['crossprod.hpp',['../agrad_2rev_2matrix_2crossprod_8hpp.html',1,'']]], + ['csv_5fwriter',['csv_writer',['../classstan_1_1io_1_1csv__writer.html',1,'stan::io']]], + ['csv_5fwriter',['csv_writer',['../classstan_1_1io_1_1csv__writer.html#a50ab9dce7685e32f9e7575a4aac66e0f',1,'stan::io::csv_writer']]], + ['csv_5fwriter_2ehpp',['csv_writer.hpp',['../csv__writer_8hpp.html',1,'']]], + ['cumulative_5fsum',['cumulative_sum',['../namespacestan_1_1math.html#a7340f6be8ae1e121c6d854005560fef5',1,'stan::math::cumulative_sum(const std::vector< T > &x)'],['../namespacestan_1_1math.html#affab469ac332306aa00947f4a7c5d30b',1,'stan::math::cumulative_sum(const Eigen::Matrix< T, R, C > &m)']]], + ['cumulative_5fsum_2ehpp',['cumulative_sum.hpp',['../cumulative__sum_8hpp.html',1,'']]], + ['curr_5ff',['curr_f',['../classstan_1_1optimization_1_1_b_f_g_s_minimizer.html#afaba4589a2a29fd201c3642f06cc11c3',1,'stan::optimization::BFGSMinimizer']]], + ['curr_5fg',['curr_g',['../classstan_1_1optimization_1_1_b_f_g_s_minimizer.html#a9010c566033a5a18b1f7ece46811f552',1,'stan::optimization::BFGSMinimizer']]], + ['curr_5fs',['curr_s',['../classstan_1_1optimization_1_1_b_f_g_s_minimizer.html#a76bc647acbfdad3f5f593ec940df8d84',1,'stan::optimization::BFGSMinimizer']]], + ['curr_5fx',['curr_x',['../classstan_1_1optimization_1_1_b_f_g_s_minimizer.html#a23c0ccc29dcf6eed8995300a8642f887',1,'stan::optimization::BFGSMinimizer']]], + ['cvi_5f',['cvi_',['../classstan_1_1agrad_1_1op__ddv__vari.html#a9fa975086d0c27cd1506fc76f0a826a1',1,'stan::agrad::op_ddv_vari::cvi_()'],['../classstan_1_1agrad_1_1op__dvv__vari.html#a7b45480bb231853d2849a225e98395b0',1,'stan::agrad::op_dvv_vari::cvi_()'],['../classstan_1_1agrad_1_1op__vdv__vari.html#a35aaa74843a75c3e340eaa2be01428fb',1,'stan::agrad::op_vdv_vari::cvi_()'],['../classstan_1_1agrad_1_1op__vvv__vari.html#a9f790058e86519dd043af8799e5269ff',1,'stan::agrad::op_vvv_vari::cvi_()'],['../agrad__thread__safe_8hpp.html#a85cb3e45be84a247edd670178d7585b1',1,'cvi_(): agrad_thread_safe.hpp']]], + ['val_3c_20std_3a_3astring_20_3e',['val< std::string >',['../namespacestan_1_1io.html#a6717f7e0267a49b9c35e24aa6183236a',1,'stan::io']]] +]; diff --git a/doc/api/html/search/all_64.html b/doc/api/html/search/all_64.html new file mode 100644 index 00000000000..b53ff083e50 --- /dev/null +++ b/doc/api/html/search/all_64.html @@ -0,0 +1,25 @@ + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/doc/api/html/search/all_64.js b/doc/api/html/search/all_64.js new file mode 100644 index 00000000000..b184d5c7af6 --- /dev/null +++ b/doc/api/html/search/all_64.js @@ -0,0 +1,160 @@ +var searchData= +[ + ['d_5f',['d_',['../structstan_1_1agrad_1_1fvar.html#a189f3e99b3716c92b73b43e709245787',1,'stan::agrad::fvar::d_()'],['../agrad_2rev_2matrix_2trace__gen__quad__form_8hpp.html#ab8b790d54b5b04c9c5dd60e063ed40bc',1,'D_(): trace_gen_quad_form.hpp'],['../agrad_2rev_2matrix_2trace__inv__quad__form__ldlt_8hpp.html#a924a423d56557fce1ab298532ab03bb8',1,'D_(): trace_inv_quad_form_ldlt.hpp']]], + ['d_5fx1',['d_x1',['../structstan_1_1agrad_1_1_operands_and_partials.html#a3c0b97cb24df6cf073c7585a2ced93ea',1,'stan::agrad::OperandsAndPartials']]], + ['d_5fx2',['d_x2',['../structstan_1_1agrad_1_1_operands_and_partials.html#ae36664450bb09392fe8e0dae036ebfa1',1,'stan::agrad::OperandsAndPartials']]], + ['d_5fx3',['d_x3',['../structstan_1_1agrad_1_1_operands_and_partials.html#a1858e4f3e9bc2dee0f3bd25b72ac7862',1,'stan::agrad::OperandsAndPartials']]], + ['d_5fx4',['d_x4',['../structstan_1_1agrad_1_1_operands_and_partials.html#a1ca64b9b641bf4fe7a34bf2a6804c50a',1,'stan::agrad::OperandsAndPartials']]], + ['d_5fx5',['d_x5',['../structstan_1_1agrad_1_1_operands_and_partials.html#a99c7a29399d12adf8c55f31a60cbf6aa',1,'stan::agrad::OperandsAndPartials']]], + ['d_5fx6',['d_x6',['../structstan_1_1agrad_1_1_operands_and_partials.html#acd4f4706460ff63b51e987d343cd8bbf',1,'stan::agrad::OperandsAndPartials']]], + ['da_5f',['da_',['../classstan_1_1agrad_1_1precomp__v__vari.html#af0cd4c5436b3bdc84f0d5c499a628be3',1,'stan::agrad::precomp_v_vari']]], + ['data',['data',['../structstan_1_1io_1_1stan__csv__metadata.html#ab98a28bde3ef2a0c2a04588d527902da',1,'stan::io::stan_csv_metadata']]], + ['data_5fdecl_5f',['data_decl_',['../structstan_1_1gm_1_1program.html#a6703cdf4c559cfdf4675c68eeff40fa5',1,'stan::gm::program']]], + ['data_5fi',['data_i',['../classstan_1_1io_1_1writer.html#a6cf35dda98f2d8d322f337fa5e4db8c5',1,'stan::io::writer']]], + ['data_5forigin',['data_origin',['../namespacestan_1_1gm.html#aa21145a91e4c8dd4d9495868c6f729a7',1,'stan::gm']]], + ['data_5fr',['data_r',['../classstan_1_1io_1_1writer.html#afc520ab8c7f1a351ba7b8955d7045a73',1,'stan::io::writer']]], + ['data_5fvar_5fdecls_5fr',['data_var_decls_r',['../structstan_1_1gm_1_1program__grammar.html#a739949e8b7237c5a60f4968d75bf9058',1,'stan::gm::program_grammar']]], + ['dataerr',['DATAERR',['../structstan_1_1gm_1_1error__codes.html#aa63873e8f7e9dd7f8af3502e4003292fa6b2a96b1b804a9792a1355d28cc9c44d',1,'stan::gm::error_codes']]], + ['ddv_5fvari_2ehpp',['ddv_vari.hpp',['../ddv__vari_8hpp.html',1,'']]], + ['decl_5f',['decl_',['../structstan_1_1gm_1_1var__decl.html#a9d23fb1315d50ec89c135e1ccfd60a6c',1,'stan::gm::var_decl']]], + ['declare_5farray',['declare_array',['../structstan_1_1gm_1_1member__var__decl__visgen.html#a7cd6cbe9a4e154a4b47437ec8506b4a0',1,'stan::gm::member_var_decl_visgen::declare_array()'],['../structstan_1_1gm_1_1local__var__decl__visgen.html#aa021dda326a4032145da713d78091b30',1,'stan::gm::local_var_decl_visgen::declare_array()']]], + ['declare_5fvars_5f',['declare_vars_',['../structstan_1_1gm_1_1init__local__var__visgen.html#a2c9f12770f32bb4cffe9444898a89ddf',1,'stan::gm::init_local_var_visgen::declare_vars_()'],['../structstan_1_1gm_1_1generate__local__var__init__nan__visgen.html#ae1f7b8e29eb89aff4c1b2394e27a051c',1,'stan::gm::generate_local_var_init_nan_visgen::declare_vars_()']]], + ['default_5finitial_5fnchunks',['DEFAULT_INITIAL_NCHUNKS',['../chunk__alloc_8hpp.html#a5f845c774e340bc6030d5ce15487812a',1,'chunk_alloc.hpp']]], + ['delete_5ffile',['delete_file',['../stanc__helper_8hpp.html#a018575b1df2fee775b6583718a7ddc18',1,'stanc_helper.hpp']]], + ['denorm_5fmin',['denorm_min',['../structstd_1_1numeric__limits_3_01stan_1_1agrad_1_1fvar_3_01_t_01_4_01_4.html#a60e936662fc9da655a32defc4b13c305',1,'std::numeric_limits< stan::agrad::fvar< T > >::denorm_min()'],['../structstd_1_1numeric__limits_3_01stan_1_1agrad_1_1var_01_4.html#afc66e528e2fad364eb324e672d49fe86',1,'std::numeric_limits< stan::agrad::var >::denorm_min()']]], + ['dense_5fe_5fmetric',['dense_e_metric',['../classstan_1_1mcmc_1_1dense__e__metric.html',1,'stan::mcmc']]], + ['dense_5fe_5fmetric',['dense_e_metric',['../classstan_1_1mcmc_1_1dense__e__metric.html#aacbf4525e5660fd18eaea038e54e10e2',1,'stan::mcmc::dense_e_metric']]], + ['dense_5fe_5fmetric_2ehpp',['dense_e_metric.hpp',['../dense__e__metric_8hpp.html',1,'']]], + ['dense_5fe_5fnuts',['dense_e_nuts',['../classstan_1_1mcmc_1_1dense__e__nuts.html',1,'stan::mcmc']]], + ['dense_5fe_5fnuts',['dense_e_nuts',['../classstan_1_1mcmc_1_1dense__e__nuts.html#a556e5c4e0ddf32b50ccd4bae8cb54e22',1,'stan::mcmc::dense_e_nuts']]], + ['dense_5fe_5fnuts_2ehpp',['dense_e_nuts.hpp',['../dense__e__nuts_8hpp.html',1,'']]], + ['dense_5fe_5fpoint',['dense_e_point',['../classstan_1_1mcmc_1_1dense__e__point.html#a3b437b07a44c6994c669ee8ae673e975',1,'stan::mcmc::dense_e_point::dense_e_point(int n)'],['../classstan_1_1mcmc_1_1dense__e__point.html#a493b3745174b5d6dcc50dd2ec6b5e422',1,'stan::mcmc::dense_e_point::dense_e_point(const dense_e_point &z)']]], + ['dense_5fe_5fpoint',['dense_e_point',['../classstan_1_1mcmc_1_1dense__e__point.html',1,'stan::mcmc']]], + ['dense_5fe_5fpoint_2ehpp',['dense_e_point.hpp',['../dense__e__point_8hpp.html',1,'']]], + ['dense_5fe_5fstatic_5fhmc',['dense_e_static_hmc',['../classstan_1_1mcmc_1_1dense__e__static__hmc.html',1,'stan::mcmc']]], + ['dense_5fe_5fstatic_5fhmc',['dense_e_static_hmc',['../classstan_1_1mcmc_1_1dense__e__static__hmc.html#a8eae1f2e8a48c368ecd5d013099b692e',1,'stan::mcmc::dense_e_static_hmc']]], + ['dense_5fe_5fstatic_5fhmc_2ehpp',['dense_e_static_hmc.hpp',['../dense__e__static__hmc_8hpp.html',1,'']]], + ['derivative',['derivative',['../namespacestan_1_1agrad.html#adf138af35c36b51a588f35e10dfa6e06',1,'stan::agrad']]], + ['derived_5fdata_5fdecl_5f',['derived_data_decl_',['../structstan_1_1gm_1_1program.html#abb7b64b4d14faf7c161d6fc0c73a859d',1,'stan::gm::program']]], + ['derived_5fdata_5fvar_5fdecls_5fr',['derived_data_var_decls_r',['../structstan_1_1gm_1_1program__grammar.html#acf4498316a5b25d57a2391749f4a82fc',1,'stan::gm::program_grammar']]], + ['derived_5fdecl_5f',['derived_decl_',['../structstan_1_1gm_1_1program.html#a24e02f27c716fefbf3ec7c3a766778f5',1,'stan::gm::program']]], + ['derived_5forigin',['derived_origin',['../namespacestan_1_1gm.html#af2cb1df6a23d138782246a8304ad7d86',1,'stan::gm']]], + ['derived_5fvar_5fdecls_5fr',['derived_var_decls_r',['../structstan_1_1gm_1_1program__grammar.html#a3dd0e48430d1ef2e41b8bb670ed872e6',1,'stan::gm::program_grammar']]], + ['description',['description',['../classstan_1_1gm_1_1argument.html#a49d0e69d3fbade5ba476bac73f68cb24',1,'stan::gm::argument']]], + ['determinant',['determinant',['../namespacestan_1_1agrad.html#aa27b1abc14538bd9946ad1d6d1e8e60a',1,'stan::agrad::determinant(const Eigen::Matrix< fvar< T >, R, C > &m)'],['../namespacestan_1_1agrad.html#a6d1cf84909394145bb264afb9fee64ac',1,'stan::agrad::determinant(const Eigen::Matrix< var, R, C > &m)'],['../namespacestan_1_1math.html#ab65e9ab0e6f725c7e11068b0be2af84f',1,'stan::math::determinant()']]], + ['determinant_2ehpp',['determinant.hpp',['../agrad_2rev_2matrix_2determinant_8hpp.html',1,'']]], + ['determinant_2ehpp',['determinant.hpp',['../agrad_2fwd_2matrix_2determinant_8hpp.html',1,'']]], + ['determinant_2ehpp',['determinant.hpp',['../math_2matrix_2determinant_8hpp.html',1,'']]], + ['df',['df',['../classstan_1_1optimization_1_1_model_adaptor.html#a5c832385e9d4792ccf2c4375e2b1ade3',1,'stan::optimization::ModelAdaptor']]], + ['diag_5fe_5fmetric',['diag_e_metric',['../classstan_1_1mcmc_1_1diag__e__metric.html',1,'stan::mcmc']]], + ['diag_5fe_5fmetric',['diag_e_metric',['../classstan_1_1mcmc_1_1diag__e__metric.html#aa85e6a49b53531d5cd722666394fbd70',1,'stan::mcmc::diag_e_metric']]], + ['diag_5fe_5fmetric_2ehpp',['diag_e_metric.hpp',['../diag__e__metric_8hpp.html',1,'']]], + ['diag_5fe_5fnuts',['diag_e_nuts',['../classstan_1_1mcmc_1_1diag__e__nuts.html#a2adb4853ab835ff95474e593750cc4f7',1,'stan::mcmc::diag_e_nuts']]], + ['diag_5fe_5fnuts',['diag_e_nuts',['../classstan_1_1mcmc_1_1diag__e__nuts.html',1,'stan::mcmc']]], + ['diag_5fe_5fnuts_2ehpp',['diag_e_nuts.hpp',['../diag__e__nuts_8hpp.html',1,'']]], + ['diag_5fe_5fpoint',['diag_e_point',['../classstan_1_1mcmc_1_1diag__e__point.html#a5cfefc79d93c982528c7cf957fdc20a2',1,'stan::mcmc::diag_e_point::diag_e_point(int n)'],['../classstan_1_1mcmc_1_1diag__e__point.html#a7fd76371128c831232948273a46c50b2',1,'stan::mcmc::diag_e_point::diag_e_point(const diag_e_point &z)']]], + ['diag_5fe_5fpoint',['diag_e_point',['../classstan_1_1mcmc_1_1diag__e__point.html',1,'stan::mcmc']]], + ['diag_5fe_5fpoint_2ehpp',['diag_e_point.hpp',['../diag__e__point_8hpp.html',1,'']]], + ['diag_5fe_5fstatic_5fhmc',['diag_e_static_hmc',['../classstan_1_1mcmc_1_1diag__e__static__hmc.html',1,'stan::mcmc']]], + ['diag_5fe_5fstatic_5fhmc',['diag_e_static_hmc',['../classstan_1_1mcmc_1_1diag__e__static__hmc.html#a3188ee6bf11965a9e5a582302483f8fc',1,'stan::mcmc::diag_e_static_hmc']]], + ['diag_5fe_5fstatic_5fhmc_2ehpp',['diag_e_static_hmc.hpp',['../diag__e__static__hmc_8hpp.html',1,'']]], + ['diag_5fmatrix',['diag_matrix',['../namespacestan_1_1math.html#af970bc3201f476e84259e7ba2d4eb276',1,'stan::math']]], + ['diag_5fmatrix_2ehpp',['diag_matrix.hpp',['../diag__matrix_8hpp.html',1,'']]], + ['diag_5fpost_5fmultiply',['diag_post_multiply',['../namespacestan_1_1math.html#a00896827d3247350178c86c0aed533f6',1,'stan::math']]], + ['diag_5fpost_5fmultiply_2ehpp',['diag_post_multiply.hpp',['../diag__post__multiply_8hpp.html',1,'']]], + ['diag_5fpre_5fmultiply',['diag_pre_multiply',['../namespacestan_1_1math.html#a6159f8ffb5a37c394dff93781622f504',1,'stan::math']]], + ['diag_5fpre_5fmultiply_2ehpp',['diag_pre_multiply.hpp',['../diag__pre__multiply_8hpp.html',1,'']]], + ['diagonal',['diagonal',['../namespacestan_1_1math.html#a877aa9df52c3a3f300a3d214c7bde64a',1,'stan::math']]], + ['diagonal_2ehpp',['diagonal.hpp',['../diagonal_8hpp.html',1,'']]], + ['digamma',['digamma',['../namespacestan_1_1agrad.html#a253104e7f6fed46947b23b3e9515b668',1,'stan::agrad::digamma(const fvar< T > &x)'],['../namespacestan_1_1agrad.html#aec8af996186baacdbb3e707fa02d80ea',1,'stan::agrad::digamma(const stan::agrad::var &a)'],['../namespacestan_1_1math.html#a5eb54ce92709046c6d168e851d2481c7',1,'stan::math::digamma()']]], + ['digamma_2ehpp',['digamma.hpp',['../agrad_2fwd_2functions_2digamma_8hpp.html',1,'']]], + ['digamma_2ehpp',['digamma.hpp',['../math_2functions_2digamma_8hpp.html',1,'']]], + ['digamma_2ehpp',['digamma.hpp',['../agrad_2rev_2functions_2digamma_8hpp.html',1,'']]], + ['digits',['digits',['../structstd_1_1numeric__limits_3_01stan_1_1agrad_1_1fvar_3_01_t_01_4_01_4.html#ab7fc728472be7d381bf47674c5d158db',1,'std::numeric_limits< stan::agrad::fvar< T > >::digits()'],['../structstd_1_1numeric__limits_3_01stan_1_1agrad_1_1var_01_4.html#a98f7189075cd866db3f13c1d8bc8f210',1,'std::numeric_limits< stan::agrad::var >::digits()']]], + ['digits10',['digits10',['../structstd_1_1numeric__limits_3_01stan_1_1agrad_1_1fvar_3_01_t_01_4_01_4.html#a82bc6dd47767407e075cfbc04a9872d4',1,'std::numeric_limits< stan::agrad::fvar< T > >::digits10()'],['../structstd_1_1numeric__limits_3_01stan_1_1agrad_1_1var_01_4.html#afa394a3a7449a6a03d19176378ae5ea4',1,'std::numeric_limits< stan::agrad::var >::digits10()']]], + ['dimensions',['dimensions',['../print_8hpp.html#aca9cbff882a3a995d9d4bc69d0f693da',1,'print.hpp']]], + ['dims',['dims',['../classstan_1_1io_1_1dump__reader.html#a6ada826cbef5e7ab4213efe629945d95',1,'stan::io::dump_reader::dims()'],['../namespacestan_1_1math.html#a2b9073e39033e56eb31344091f0170fd',1,'stan::math::dims(const T &x, std::vector< int > &result)'],['../namespacestan_1_1math.html#af95a2dcde478c06e3543511821618902',1,'stan::math::dims(const Eigen::Matrix< T, R, C > &x, std::vector< int > &result)'],['../namespacestan_1_1math.html#a467589eef4220a87d457c8a268a1fd5d',1,'stan::math::dims(const std::vector< T > &x, std::vector< int > &result)'],['../namespacestan_1_1math.html#a33777ee768c7032331ca8b92e5323384',1,'stan::math::dims(const T &x)']]], + ['dims_2ehpp',['dims.hpp',['../dims_8hpp.html',1,'']]], + ['dims_5f',['dims_',['../structstan_1_1gm_1_1variable__dims.html#a70f46c11bdd84865ec1b65c37f9ad23c',1,'stan::gm::variable_dims::dims_()'],['../structstan_1_1gm_1_1base__var__decl.html#a34df8ccee8d884095d1b95ea2503a42c',1,'stan::gm::base_var_decl::dims_()']]], + ['dims_5fi',['dims_i',['../classstan_1_1io_1_1dump.html#a1bdf386abd7e81a9a287c6a59a48eac9',1,'stan::io::dump::dims_i()'],['../classstan_1_1io_1_1var__context.html#a445c05ee5f0fbe9548cdbdc7b08d31f1',1,'stan::io::var_context::dims_i()']]], + ['dims_5fr',['dims_r',['../structstan_1_1gm_1_1statement__grammar.html#a894de01f7a57cb4f67c157e12faf33ad',1,'stan::gm::statement_grammar::dims_r()'],['../structstan_1_1gm_1_1term__grammar.html#a572196c88493b512a11e7995fe201505',1,'stan::gm::term_grammar::dims_r()'],['../structstan_1_1gm_1_1var__decls__grammar.html#a18dc853a54fc1727eea828ef99f36e01',1,'stan::gm::var_decls_grammar::dims_r()'],['../classstan_1_1io_1_1dump.html#ad1a19a706880befca7fe4a3c4dc4a39f',1,'stan::io::dump::dims_r()'],['../classstan_1_1io_1_1var__context.html#ae1e90fd2b90b43267a5ab1c1b5cf880a',1,'stan::io::var_context::dims_r()']]], + ['dimss_5f',['dimss_',['../structstan_1_1gm_1_1index__op.html#a8a7e436ba365c1e1f4bafee5a3be34a9',1,'stan::gm::index_op']]], + ['dirichlet_2ehpp',['dirichlet.hpp',['../dirichlet_8hpp.html',1,'']]], + ['dirichlet_5flog',['dirichlet_log',['../namespacestan_1_1prob.html#a788f709440fd4c6189fa6d40a32cc328',1,'stan::prob::dirichlet_log(const Eigen::Matrix< T_prob, Eigen::Dynamic, 1 > &theta, const Eigen::Matrix< T_prior_sample_size, Eigen::Dynamic, 1 > &alpha)'],['../namespacestan_1_1prob.html#a91bcdf333694f9c1f685de29105d9bf5',1,'stan::prob::dirichlet_log(const Eigen::Matrix< T_prob, Eigen::Dynamic, 1 > &theta, const Eigen::Matrix< T_prior_sample_size, Eigen::Dynamic, 1 > &alpha)']]], + ['dirichlet_5frng',['dirichlet_rng',['../namespacestan_1_1prob.html#a4324e10af97b35a6b667f7b02ddbb7e2',1,'stan::prob']]], + ['discrete_2ehpp',['discrete.hpp',['../multivariate_2discrete_8hpp.html',1,'']]], + ['discrete_2ehpp',['discrete.hpp',['../univariate_2discrete_8hpp.html',1,'']]], + ['disengage_5fadaptation',['disengage_adaptation',['../classstan_1_1mcmc_1_1base__adapter.html#af8eb7f179d54f984c61aa945ceb56492',1,'stan::mcmc::base_adapter::disengage_adaptation()'],['../classstan_1_1mcmc_1_1adapt__dense__e__nuts.html#aac70c0c7dc28e85fa793176e0f05b2e0',1,'stan::mcmc::adapt_dense_e_nuts::disengage_adaptation()'],['../classstan_1_1mcmc_1_1adapt__diag__e__nuts.html#a6b7d857c9b602525cbdddf78f18f5f52',1,'stan::mcmc::adapt_diag_e_nuts::disengage_adaptation()'],['../classstan_1_1mcmc_1_1adapt__unit__e__nuts.html#a7024d8a1794d7d3afa01a7cc92e1a734',1,'stan::mcmc::adapt_unit_e_nuts::disengage_adaptation()'],['../classstan_1_1mcmc_1_1adapt__dense__e__static__hmc.html#a82b0383814a0aa603f06651c562ac649',1,'stan::mcmc::adapt_dense_e_static_hmc::disengage_adaptation()'],['../classstan_1_1mcmc_1_1adapt__diag__e__static__hmc.html#afcc9890fefe667daf023826a054324b3',1,'stan::mcmc::adapt_diag_e_static_hmc::disengage_adaptation()'],['../classstan_1_1mcmc_1_1adapt__unit__e__static__hmc.html#a3b2afe0cec71096e356ac100014c9073',1,'stan::mcmc::adapt_unit_e_static_hmc::disengage_adaptation()']]], + ['dist',['dist',['../namespacestan_1_1math.html#ae86020a972c6efc6b3407c3cfc30f4a6',1,'stan::math']]], + ['dist_2ehpp',['dist.hpp',['../dist_8hpp.html',1,'']]], + ['dist_5f',['dist_',['../structstan_1_1gm_1_1sample.html#a516dbdf8e9b0deee39b6ff63c8d5cde1',1,'stan::gm::sample']]], + ['distance',['distance',['../namespacestan_1_1math.html#a354d9d6e7465ec8a49116f276d971db1',1,'stan::math']]], + ['distance_2ehpp',['distance.hpp',['../distance_8hpp.html',1,'']]], + ['distribution',['distribution',['../structstan_1_1gm_1_1distribution.html',1,'stan::gm']]], + ['distribution_5fr',['distribution_r',['../structstan_1_1gm_1_1statement__grammar.html#ad54fcb7f586876e0dbbf146d8aa7099b',1,'stan::gm::statement_grammar']]], + ['distributions_2ehpp',['distributions.hpp',['../distributions_8hpp.html',1,'']]], + ['divide',['divide',['../namespacestan_1_1agrad.html#a8834a2f7763f46dd14e765d6c3287d23',1,'stan::agrad::divide(const T1 &v, const T2 &c)'],['../namespacestan_1_1agrad.html#a8bfe03ac15191df9f6777217e8d698b8',1,'stan::agrad::divide(const Eigen::Matrix< fvar< T >, R, C > &v, const fvar< T > &c)'],['../namespacestan_1_1agrad.html#a1897f84d86b89b5485b10f20e30a2613',1,'stan::agrad::divide(const Eigen::Matrix< fvar< T >, R, C > &v, const double c)'],['../namespacestan_1_1agrad.html#a9e95e534e22aad48cd9a29584958f7a2',1,'stan::agrad::divide(const Eigen::Matrix< double, R, C > &v, const fvar< T > &c)'],['../namespacestan_1_1agrad.html#af3abe6f014b50c5873fa84734cad4131',1,'stan::agrad::divide(double x, double y)'],['../namespacestan_1_1agrad.html#a6b7cb944896ee4923018198ea3946773',1,'stan::agrad::divide(const Eigen::Matrix< T1, R, C > &v, const T2 &c)'],['../namespacestan_1_1math.html#a082ee76b34a2ea656d2c8ab9186c1a2b',1,'stan::math::divide()']]], + ['divide_2ehpp',['divide.hpp',['../agrad_2fwd_2matrix_2divide_8hpp.html',1,'']]], + ['divide_2ehpp',['divide.hpp',['../agrad_2rev_2matrix_2divide_8hpp.html',1,'']]], + ['divide_2ehpp',['divide.hpp',['../math_2matrix_2divide_8hpp.html',1,'']]], + ['division',['division',['../namespacestan_1_1gm.html#aba4de316e472e23ea0f375d1e1a7cc33',1,'stan::gm']]], + ['division_5fexpr',['division_expr',['../structstan_1_1gm_1_1division__expr.html',1,'stan::gm']]], + ['do_5flkj_5fconstant',['do_lkj_constant',['../namespacestan_1_1prob.html#a3e884a06b4337008b72a3e75c1aee386',1,'stan::prob']]], + ['do_5fprint',['do_print',['../namespacestan_1_1gm.html#a50d74ffa83dbb5b20d65ba75b1e5e066',1,'stan::gm::do_print(int n, bool special, int refresh)'],['../namespacestan_1_1gm.html#a0505a5edd8692d9113977c9cd19bc778',1,'stan::gm::do_print(int n, int refresh)']]], + ['dom_5ferr',['dom_err',['../namespacestan_1_1math.html#a5af45491b0f1852295f1c7ec0730294c',1,'stan::math']]], + ['dom_5ferr_2ehpp',['dom_err.hpp',['../dom__err_8hpp.html',1,'']]], + ['dom_5ferr_5fvec',['dom_err_vec',['../namespacestan_1_1math.html#a5114bd4a8397e21dd60cc596d24022fe',1,'stan::math']]], + ['dom_5ferr_5fvec_2ehpp',['dom_err_vec.hpp',['../dom__err__vec_8hpp.html',1,'']]], + ['dot',['dot',['../namespacestan_1_1math.html#afd3b73319bd8df9dad1d3902997d8e89',1,'stan::math']]], + ['dot_2ehpp',['dot.hpp',['../dot_8hpp.html',1,'']]], + ['dot_5fproduct',['dot_product',['../namespacestan_1_1agrad.html#a6ab5996a680002f996384f7f7cc2ba86',1,'stan::agrad::dot_product(const Eigen::Matrix< fvar< T >, R1, C1 > &v1, const Eigen::Matrix< fvar< T >, R2, C2 > &v2)'],['../namespacestan_1_1agrad.html#a516128a11f53f55e533ed1d0bcd07b1d',1,'stan::agrad::dot_product(const Eigen::Matrix< fvar< T >, R1, C1 > &v1, const Eigen::Matrix< double, R2, C2 > &v2)'],['../namespacestan_1_1agrad.html#a2e18b595e821acf4af3bd9615b51eeff',1,'stan::agrad::dot_product(const Eigen::Matrix< double, R1, C1 > &v1, const Eigen::Matrix< fvar< T >, R2, C2 > &v2)'],['../namespacestan_1_1agrad.html#aaf1dc132cacae954cde8a4bd94d3d33e',1,'stan::agrad::dot_product(const Eigen::Matrix< fvar< T >, R1, C1 > &v1, const Eigen::Matrix< fvar< T >, R2, C2 > &v2, size_type &length)'],['../namespacestan_1_1agrad.html#a48ed77a6a9982642731d22f05f729281',1,'stan::agrad::dot_product(const Eigen::Matrix< fvar< T >, R1, C1 > &v1, const Eigen::Matrix< double, R2, C2 > &v2, size_type &length)'],['../namespacestan_1_1agrad.html#a2588ccae6e0c5bd5cfa50c08477025c9',1,'stan::agrad::dot_product(const Eigen::Matrix< double, R1, C1 > &v1, const Eigen::Matrix< fvar< T >, R2, C2 > &v2, size_type &length)'],['../namespacestan_1_1agrad.html#adc99c244a2cd1ac8e60ba4a14874d874',1,'stan::agrad::dot_product(const std::vector< fvar< T > > &v1, const std::vector< fvar< T > > &v2)'],['../namespacestan_1_1agrad.html#a427294fe7f03d86b0d13c588de3056f6',1,'stan::agrad::dot_product(const std::vector< double > &v1, const std::vector< fvar< T > > &v2)'],['../namespacestan_1_1agrad.html#aa01ea6a323474c7fbb9be783a9f805ff',1,'stan::agrad::dot_product(const std::vector< fvar< T > > &v1, const std::vector< double > &v2)'],['../namespacestan_1_1agrad.html#aba1e86a65c31342dc920bec07eeeac1b',1,'stan::agrad::dot_product(const std::vector< fvar< T > > &v1, const std::vector< fvar< T > > &v2, size_type &length)'],['../namespacestan_1_1agrad.html#ab66e08f88fa7d6a448082ade1153cac3',1,'stan::agrad::dot_product(const std::vector< double > &v1, const std::vector< fvar< T > > &v2, size_type &length)'],['../namespacestan_1_1agrad.html#ae8dea21d83c52cfdd1a0d6114633f2d3',1,'stan::agrad::dot_product(const std::vector< fvar< T > > &v1, const std::vector< double > &v2, size_type &length)'],['../namespacestan_1_1agrad.html#a4011d7bf9c85f3408ed0139436bcc958',1,'stan::agrad::dot_product(const Eigen::Matrix< T1, R1, C1 > &v1, const Eigen::Matrix< T2, R2, C2 > &v2)'],['../namespacestan_1_1agrad.html#ad390f00556d047ae51e5a6a8dd5842a5',1,'stan::agrad::dot_product(const T1 *v1, const T2 *v2, size_t length)'],['../namespacestan_1_1agrad.html#a349c89cb994774063fd7fb561d130ad5',1,'stan::agrad::dot_product(const std::vector< T1 > &v1, const std::vector< T2 > &v2)'],['../namespacestan_1_1math.html#af8d73851895fb151fdf79e55bf33e98e',1,'stan::math::dot_product(const Eigen::Matrix< double, R1, C1 > &v1, const Eigen::Matrix< double, R2, C2 > &v2)'],['../namespacestan_1_1math.html#a58da447df259e9e092e8fd910b338e1f',1,'stan::math::dot_product(const double *v1, const double *v2, size_t length)'],['../namespacestan_1_1math.html#ab7cd93708bf432b3bd3d284958972ede',1,'stan::math::dot_product(const std::vector< double > &v1, const std::vector< double > &v2)']]], + ['dot_5fproduct_2ehpp',['dot_product.hpp',['../math_2matrix_2dot__product_8hpp.html',1,'']]], + ['dot_5fproduct_2ehpp',['dot_product.hpp',['../agrad_2fwd_2matrix_2dot__product_8hpp.html',1,'']]], + ['dot_5fproduct_2ehpp',['dot_product.hpp',['../agrad_2rev_2matrix_2dot__product_8hpp.html',1,'']]], + ['dot_5fproduct_5fstore_5ftype',['dot_product_store_type',['../structdot__product__store__type.html',1,'']]], + ['dot_5fself',['dot_self',['../namespacestan_1_1agrad.html#a4c1836521010bd6f18b5a58061cc3198',1,'stan::agrad::dot_self(const Eigen::Matrix< fvar< T >, R, C > &v)'],['../namespacestan_1_1agrad.html#a88446fe7bdc500d280a66cd8b58bf475',1,'stan::agrad::dot_self(const Eigen::Matrix< var, R, C > &v)'],['../namespacestan_1_1math.html#a8a6a4ef7c701db7984297d153580c8d4',1,'stan::math::dot_self(const std::vector< double > &x)'],['../namespacestan_1_1math.html#ac81ab85d390fcb594884773a85fac657',1,'stan::math::dot_self(const Eigen::Matrix< double, R, C > &v)']]], + ['dot_5fself_2ehpp',['dot_self.hpp',['../agrad_2fwd_2matrix_2dot__self_8hpp.html',1,'']]], + ['dot_5fself_2ehpp',['dot_self.hpp',['../math_2matrix_2dot__self_8hpp.html',1,'']]], + ['dot_5fself_2ehpp',['dot_self.hpp',['../math_2functions_2dot__self_8hpp.html',1,'']]], + ['dot_5fself_2ehpp',['dot_self.hpp',['../agrad_2rev_2matrix_2dot__self_8hpp.html',1,'']]], + ['dotval_5f',['dotval_',['../_eigen___num_traits_8hpp.html#a7616b0eef5b3dc26e5a5b62a3ead2035',1,'Eigen_NumTraits.hpp']]], + ['double_5fdecl_5fr',['double_decl_r',['../structstan_1_1gm_1_1var__decls__grammar.html#aaa761edc4a269b040365070ae0e1b38b',1,'stan::gm::var_decls_grammar']]], + ['double_5fexponential_2ehpp',['double_exponential.hpp',['../double__exponential_8hpp.html',1,'']]], + ['double_5fexponential_5fccdf_5flog',['double_exponential_ccdf_log',['../namespacestan_1_1prob.html#a799d82a35ad39823a27340bb57656643',1,'stan::prob']]], + ['double_5fexponential_5fcdf',['double_exponential_cdf',['../namespacestan_1_1prob.html#acb5d3e2870190b33cb60f9165820a07b',1,'stan::prob']]], + ['double_5fexponential_5fcdf_5flog',['double_exponential_cdf_log',['../namespacestan_1_1prob.html#a9f090972ba99ef96684475140e8d7e39',1,'stan::prob']]], + ['double_5fexponential_5flog',['double_exponential_log',['../namespacestan_1_1prob.html#a7621036746361ce33a182006375fcf56',1,'stan::prob::double_exponential_log(const T_y &y, const T_loc &mu, const T_scale &sigma)'],['../namespacestan_1_1prob.html#a2fd04507640d7df4025cdf22bc1940e1',1,'stan::prob::double_exponential_log(const T_y &y, const T_loc &mu, const T_scale &sigma)']]], + ['double_5fexponential_5frng',['double_exponential_rng',['../namespacestan_1_1prob.html#aced8b51bafb8aa39773b8f278559ec09',1,'stan::prob']]], + ['double_5fliteral',['double_literal',['../structstan_1_1gm_1_1double__literal.html',1,'stan::gm']]], + ['double_5fliteral',['double_literal',['../structstan_1_1gm_1_1double__literal.html#abab56647c315a43fdb62b7b2f1ff3ce2',1,'stan::gm::double_literal::double_literal()'],['../structstan_1_1gm_1_1double__literal.html#a99fefae4612adf8c085e2ce158bba7b3',1,'stan::gm::double_literal::double_literal(double val)']]], + ['double_5fliteral_5fr',['double_literal_r',['../structstan_1_1gm_1_1term__grammar.html#a91f8666c8899032d59c1ad4f54a9c0c3',1,'stan::gm::term_grammar']]], + ['double_5ft',['DOUBLE_T',['../namespacestan_1_1gm.html#a903b745f5e5ae0c05b667e45e5d62e66',1,'stan::gm']]], + ['double_5fvalues',['double_values',['../classstan_1_1io_1_1dump__reader.html#ac275a400d67c89a01d980fa2ea093ed3',1,'stan::io::dump_reader']]], + ['double_5fvar_5fdecl',['double_var_decl',['../structstan_1_1gm_1_1double__var__decl.html',1,'stan::gm']]], + ['double_5fvar_5fdecl',['double_var_decl',['../structstan_1_1gm_1_1double__var__decl.html#ac777d487174edeba42d587ff70ebbf38',1,'stan::gm::double_var_decl::double_var_decl()'],['../structstan_1_1gm_1_1double__var__decl.html#a0f4506bf06efcfc3bdec5db3aad51f80',1,'stan::gm::double_var_decl::double_var_decl(range const &range, std::string const &name, std::vector< expression > const &dims)']]], + ['doublevectorview',['DoubleVectorView',['../classstan_1_1_double_vector_view.html#a574803fc6d532f052ffcce6b8cefac58',1,'stan::DoubleVectorView::DoubleVectorView()'],['../classstan_1_1_double_vector_view_3_01true_00_01false_01_4.html#a73f42b82f90108127bcd8e4952328618',1,'stan::DoubleVectorView< true, false >::DoubleVectorView()'],['../classstan_1_1_double_vector_view_3_01true_00_01true_01_4.html#a2ed705a71ac46654258500ecdff057aa',1,'stan::DoubleVectorView< true, true >::DoubleVectorView()']]], + ['doublevectorview',['DoubleVectorView',['../classstan_1_1_double_vector_view.html',1,'stan']]], + ['doublevectorview_3c_20true_2c_20false_20_3e',['DoubleVectorView< true, false >',['../classstan_1_1_double_vector_view_3_01true_00_01false_01_4.html',1,'stan']]], + ['doublevectorview_3c_20true_2c_20true_20_3e',['DoubleVectorView< true, true >',['../classstan_1_1_double_vector_view_3_01true_00_01true_01_4.html',1,'stan']]], + ['dphi_5fdq',['dphi_dq',['../classstan_1_1mcmc_1_1base__hamiltonian.html#a4ac1d9af0360d98a5f5725752d784d26',1,'stan::mcmc::base_hamiltonian::dphi_dq()'],['../classstan_1_1mcmc_1_1dense__e__metric.html#a1172afcf9fdfe07704c6fde165d2c65d',1,'stan::mcmc::dense_e_metric::dphi_dq()'],['../classstan_1_1mcmc_1_1diag__e__metric.html#afdc9e9ca146ec4afc943f1643d1abf5c',1,'stan::mcmc::diag_e_metric::dphi_dq()'],['../classstan_1_1mcmc_1_1unit__e__metric.html#aa309e8c017d1d65eb4c1996ec52375a1',1,'stan::mcmc::unit_e_metric::dphi_dq()']]], + ['dtau_5fdp',['dtau_dp',['../classstan_1_1mcmc_1_1base__hamiltonian.html#a52f1eecd0e71160cbe496af89ecb163e',1,'stan::mcmc::base_hamiltonian::dtau_dp()'],['../classstan_1_1mcmc_1_1dense__e__metric.html#a42125a6efb109bad98202343bd4f16dc',1,'stan::mcmc::dense_e_metric::dtau_dp()'],['../classstan_1_1mcmc_1_1diag__e__metric.html#a02386e255cd255f066f9620d3dbb41f3',1,'stan::mcmc::diag_e_metric::dtau_dp()'],['../classstan_1_1mcmc_1_1unit__e__metric.html#a7f21e1814aac56a2be51674b07f70744',1,'stan::mcmc::unit_e_metric::dtau_dp()']]], + ['dtau_5fdq',['dtau_dq',['../classstan_1_1mcmc_1_1base__hamiltonian.html#af61e96b9766092a3c161a020f440785d',1,'stan::mcmc::base_hamiltonian::dtau_dq()'],['../classstan_1_1mcmc_1_1dense__e__metric.html#acb07208943a4c9a73baa825e5c164b5c',1,'stan::mcmc::dense_e_metric::dtau_dq()'],['../classstan_1_1mcmc_1_1diag__e__metric.html#af03722a421a4b8f8a21fb2f4ae65d98e',1,'stan::mcmc::diag_e_metric::dtau_dq()'],['../classstan_1_1mcmc_1_1unit__e__metric.html#a87728dc744116e7e7b90ca0ffbc3c186',1,'stan::mcmc::unit_e_metric::dtau_dq()']]], + ['dtrs_5f',['dtrs_',['../classstan_1_1agrad_1_1stored__gradient__vari.html#afb98edd9fb9584921e7ef283e5c9478e',1,'stan::agrad::stored_gradient_vari']]], + ['dtype_5f',['Dtype_',['../agrad_2rev_2matrix_2trace__inv__quad__form__ldlt_8hpp.html#a7c830ea3da654e2c30a3e8d4c41610e8',1,'trace_inv_quad_form_ldlt.hpp']]], + ['dummy_5fprecision',['dummy_precision',['../struct_eigen_1_1_num_traits_3_01stan_1_1agrad_1_1var_01_4.html#ae1b9c4f662ce5e4087ff27b4374116cf',1,'Eigen::NumTraits< stan::agrad::var >']]], + ['dump',['dump',['../classstan_1_1io_1_1dump.html#a05c2de349bdf89ef97e2940dfabe3064',1,'stan::io::dump']]], + ['dump',['dump',['../classstan_1_1io_1_1dump.html',1,'stan::io']]], + ['dump_2ehpp',['dump.hpp',['../dump_8hpp.html',1,'']]], + ['dump_5flist',['dump_list',['../classstan_1_1io_1_1dump__writer.html#adeb591bec98817e4e2d3c049d672137f',1,'stan::io::dump_writer']]], + ['dump_5fmember_5fvar_5fvisgen',['dump_member_var_visgen',['../structstan_1_1gm_1_1dump__member__var__visgen.html',1,'stan::gm']]], + ['dump_5fmember_5fvar_5fvisgen',['dump_member_var_visgen',['../structstan_1_1gm_1_1dump__member__var__visgen.html#a4c22ce134acbfefce374269220cfd1d0',1,'stan::gm::dump_member_var_visgen']]], + ['dump_5freader',['dump_reader',['../classstan_1_1io_1_1dump__reader.html#a60f0c45b98358118444362c4a954068f',1,'stan::io::dump_reader::dump_reader()'],['../classstan_1_1io_1_1dump__reader.html#a5a2d82e204b9dc1b0af62fc902a17e37',1,'stan::io::dump_reader::dump_reader(std::istream &in)']]], + ['dump_5freader',['dump_reader',['../classstan_1_1io_1_1dump__reader.html',1,'stan::io']]], + ['dump_5fstructure',['dump_structure',['../classstan_1_1io_1_1dump__writer.html#aeffcdc7277269597f6f9e0bbd6110ef8',1,'stan::io::dump_writer']]], + ['dump_5fvar',['dump_var',['../classstan_1_1io_1_1dump__writer.html#a7f58183f74acada75a5dd61a83234502',1,'stan::io::dump_writer']]], + ['dump_5fwriter',['dump_writer',['../classstan_1_1io_1_1dump__writer.html#ad5f0fd7ec8b1fc78d6719cabb6caa0d9',1,'stan::io::dump_writer::dump_writer()'],['../classstan_1_1io_1_1dump__writer.html#a783a19484fcba2bf776369f012a30509',1,'stan::io::dump_writer::dump_writer(std::ostream &out)']]], + ['dump_5fwriter',['dump_writer',['../classstan_1_1io_1_1dump__writer.html',1,'stan::io']]], + ['dv_5fvari_2ehpp',['dv_vari.hpp',['../dv__vari_8hpp.html',1,'']]], + ['dvd_5fvari_2ehpp',['dvd_vari.hpp',['../dvd__vari_8hpp.html',1,'']]], + ['dvv_5fvari_2ehpp',['dvv_vari.hpp',['../dvv__vari_8hpp.html',1,'']]] +]; diff --git a/doc/api/html/search/all_65.html b/doc/api/html/search/all_65.html new file mode 100644 index 00000000000..66cc8348793 --- /dev/null +++ b/doc/api/html/search/all_65.html @@ -0,0 +1,25 @@ + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/doc/api/html/search/all_65.js b/doc/api/html/search/all_65.js new file mode 100644 index 00000000000..1c344bb432a --- /dev/null +++ b/doc/api/html/search/all_65.js @@ -0,0 +1,100 @@ +var searchData= +[ + ['e',['e',['../namespacestan_1_1math.html#a3b650a0131d41167ef4837ecc7d02be5',1,'stan::math::e()'],['../namespacestan_1_1math.html#a66f94e47c6dc073bbd3929903b4431fe',1,'stan::math::E()']]], + ['effective_5fsample_5fsize',['effective_sample_size',['../classstan_1_1mcmc_1_1chains.html#a37b1a6f5c8aa8cc7ecbce3008c4638b7',1,'stan::mcmc::chains::effective_sample_size(const int index)'],['../classstan_1_1mcmc_1_1chains.html#a02a748353706e1b811639d35021bfe7c',1,'stan::mcmc::chains::effective_sample_size(const std::string &name)']]], + ['eigen',['Eigen',['../namespace_eigen.html',1,'']]], + ['eigen_2edox',['Eigen.dox',['../_eigen_8dox.html',1,'']]], + ['eigen_2ehpp',['Eigen.hpp',['../_eigen_8hpp.html',1,'']]], + ['eigen_5fdensebase_5fplugin',['EIGEN_DENSEBASE_PLUGIN',['../_eigen_8hpp.html#a90ac195153d63737038c5b747962f4df',1,'Eigen.hpp']]], + ['eigen_5fnumtraits_2ehpp',['Eigen_NumTraits.hpp',['../_eigen___num_traits_8hpp.html',1,'']]], + ['eigenvalues_5fsym',['eigenvalues_sym',['../namespacestan_1_1math.html#aa37c65f508af7ad1d0b010aa5c932cbe',1,'stan::math']]], + ['eigenvalues_5fsym_2ehpp',['eigenvalues_sym.hpp',['../eigenvalues__sym_8hpp.html',1,'']]], + ['eigenvectors_5fsym',['eigenvectors_sym',['../namespacestan_1_1math.html#a9bd4729756e6ed00a35f1e4531444c13',1,'stan::math']]], + ['eigenvectors_5fsym_2ehpp',['eigenvectors_sym.hpp',['../eigenvectors__sym_8hpp.html',1,'']]], + ['elt_5fdivide',['elt_divide',['../namespacestan_1_1math.html#a3c9262da41fbf44fefc9a66141a0759d',1,'stan::math']]], + ['elt_5fdivide_2ehpp',['elt_divide.hpp',['../elt__divide_8hpp.html',1,'']]], + ['elt_5fdivision',['elt_division',['../namespacestan_1_1gm.html#a754bafd927243560d1f783d46ecb34a9',1,'stan::gm']]], + ['elt_5fdivision_5fexpr',['elt_division_expr',['../structstan_1_1gm_1_1elt__division__expr.html',1,'stan::gm']]], + ['elt_5fmultiplication',['elt_multiplication',['../namespacestan_1_1gm.html#a0953feed6c7def5c5a3e9326007e81ea',1,'stan::gm']]], + ['elt_5fmultiplication_5fexpr',['elt_multiplication_expr',['../structstan_1_1gm_1_1elt__multiplication__expr.html',1,'stan::gm']]], + ['elt_5fmultiply',['elt_multiply',['../namespacestan_1_1math.html#a998e2dce5971bba8c059995797e22ba0',1,'stan::math']]], + ['elt_5fmultiply_2ehpp',['elt_multiply.hpp',['../elt__multiply_8hpp.html',1,'']]], + ['empty_5fexp_5fvector',['EMPTY_EXP_VECTOR',['../namespacestan_1_1gm.html#a7b75153f298993fbca07d0e128a75771',1,'stan::gm']]], + ['end_5fadaptation_5fwindow',['end_adaptation_window',['../classstan_1_1mcmc_1_1windowed__adaptation.html#ae4b5c1e4712c89086d7f7e2c0463e245',1,'stan::mcmc::windowed_adaptation']]], + ['end_5fupdate_5fp',['end_update_p',['../classstan_1_1mcmc_1_1base__leapfrog.html#a4e043d1858bcbdaa2d84af24fadf0958',1,'stan::mcmc::base_leapfrog::end_update_p()'],['../classstan_1_1mcmc_1_1expl__leapfrog.html#a512ff7eeb698eb2aa276d10c77a25a2b',1,'stan::mcmc::expl_leapfrog::end_update_p()']]], + ['engage_5fadaptation',['engage_adaptation',['../classstan_1_1mcmc_1_1base__adapter.html#a7e1c264d6a6091938373903c813b6a0b',1,'stan::mcmc::base_adapter']]], + ['engine',['engine',['../structstan_1_1io_1_1stan__csv__metadata.html#af9275dd04e87640591d6f365ae2416cc',1,'stan::io::stan_csv_metadata']]], + ['eol',['EOL',['../namespacestan_1_1gm.html#a24fe8f1f728798f3f4e922ae086c2473',1,'stan::gm']]], + ['eol2',['EOL2',['../namespacestan_1_1gm.html#affc181dd85ce73c82cfbd0cde2321c6b',1,'stan::gm']]], + ['epsilon',['epsilon',['../structstd_1_1numeric__limits_3_01stan_1_1agrad_1_1fvar_3_01_t_01_4_01_4.html#a5080115d295c7180feb653a44bfb0724',1,'std::numeric_limits< stan::agrad::fvar< T > >::epsilon()'],['../struct_eigen_1_1_num_traits_3_01stan_1_1agrad_1_1var_01_4.html#a9d192c3e8fe70d6ea68998877103ff6b',1,'Eigen::NumTraits< stan::agrad::var >::epsilon()'],['../structstd_1_1numeric__limits_3_01stan_1_1agrad_1_1var_01_4.html#a2f80ac604bf9bb4fd6d42d720264c803',1,'std::numeric_limits< stan::agrad::var >::epsilon()'],['../namespacestan_1_1math.html#a5ffd625c2083751d7ccabb7dbe39cbe0',1,'stan::math::EPSILON()']]], + ['erf',['erf',['../namespacestan_1_1agrad.html#ac4d0f7557b5cea3a8e3a4ca05b5967fa',1,'stan::agrad::erf(const fvar< T > &x)'],['../namespacestan_1_1agrad.html#aa84c9d13118bbeb0d8838e79edb33406',1,'stan::agrad::erf(const stan::agrad::var &a)']]], + ['erf_2ehpp',['erf.hpp',['../fwd_2functions_2erf_8hpp.html',1,'']]], + ['erf_2ehpp',['erf.hpp',['../rev_2functions_2erf_8hpp.html',1,'']]], + ['erfc',['erfc',['../namespacestan_1_1agrad.html#ad43010d593e90d2e8fffe7d314fc78a1',1,'stan::agrad::erfc(const fvar< T > &x)'],['../namespacestan_1_1agrad.html#a5e56afd5e6984624acdf4e6b0aebc251',1,'stan::agrad::erfc(const stan::agrad::var &a)']]], + ['erfc_2ehpp',['erfc.hpp',['../fwd_2functions_2erfc_8hpp.html',1,'']]], + ['erfc_2ehpp',['erfc.hpp',['../rev_2functions_2erfc_8hpp.html',1,'']]], + ['error_5fcodes',['error_codes',['../structstan_1_1gm_1_1error__codes.html',1,'stan::gm']]], + ['error_5fcodes_2ehpp',['error_codes.hpp',['../error__codes_8hpp.html',1,'']]], + ['error_5fhandling_2edox',['error_handling.dox',['../error__handling_8dox.html',1,'']]], + ['error_5fhandling_2ehpp',['error_handling.hpp',['../math_2error__handling_8hpp.html',1,'']]], + ['error_5fhandling_2ehpp',['error_handling.hpp',['../agrad_2rev_2error__handling_8hpp.html',1,'']]], + ['error_5fmsgs_5f',['error_msgs_',['../structstan_1_1gm_1_1expression__grammar.html#ad7c2d0065b399be4677ff2a934880bab',1,'stan::gm::expression_grammar::error_msgs_()'],['../structstan_1_1gm_1_1program__grammar.html#abdcce1575595284876756bbccc1d782d',1,'stan::gm::program_grammar::error_msgs_()'],['../structstan_1_1gm_1_1statement__2__grammar.html#acd1c878d999eb7e0b296b8171effcff5',1,'stan::gm::statement_2_grammar::error_msgs_()'],['../structstan_1_1gm_1_1statement__grammar.html#a778922e661a8179a719c1c4f148a8e89',1,'stan::gm::statement_grammar::error_msgs_()'],['../structstan_1_1gm_1_1term__grammar.html#af0c016d0b7ee4d1a637697956fb1903b',1,'stan::gm::term_grammar::error_msgs_()'],['../structstan_1_1gm_1_1var__decls__grammar.html#a0de9ad5f258a7bd55322ee06caa43559',1,'stan::gm::var_decls_grammar::error_msgs_()']]], + ['evolve',['evolve',['../classstan_1_1mcmc_1_1base__integrator.html#a9462d1729356a62c9d3264c81bfe2ea8',1,'stan::mcmc::base_integrator::evolve()'],['../classstan_1_1mcmc_1_1base__leapfrog.html#aeaa5e375882c8792817432d5fb83cf1b',1,'stan::mcmc::base_leapfrog::evolve()']]], + ['exists',['exists',['../structstan_1_1gm_1_1variable__map.html#a29d85bf3018b2393c737dbb7d641ad32',1,'stan::gm::variable_map']]], + ['exp',['exp',['../namespacestan_1_1agrad.html#af8dbb5923cb5c5e94b80b21e1263e0e7',1,'stan::agrad::exp(const var &a)'],['../namespacestan_1_1agrad.html#a3953dfa2629b70db4117da64e77a1ba6',1,'stan::agrad::exp(const fvar< T > &x)'],['../namespacestan_1_1math.html#ac38f1fab5fe3e9b45c8c6e78ac3cc749',1,'stan::math::exp()']]], + ['exp_2ehpp',['exp.hpp',['../agrad_2fwd_2functions_2exp_8hpp.html',1,'']]], + ['exp_2ehpp',['exp.hpp',['../agrad_2rev_2functions_2exp_8hpp.html',1,'']]], + ['exp_2ehpp',['exp.hpp',['../math_2matrix_2exp_8hpp.html',1,'']]], + ['exp2',['exp2',['../namespacestan_1_1agrad.html#a4bb4a54d8488b2d7ca364037c7495cf8',1,'stan::agrad::exp2(const fvar< T > &x)'],['../namespacestan_1_1agrad.html#a3c7b9522635566471bd40c9b994bd8b8',1,'stan::agrad::exp2(const stan::agrad::var &a)'],['../namespacestan_1_1math.html#a0ef734d7c3b8ebd689012295bf826e94',1,'stan::math::exp2()']]], + ['exp2_2ehpp',['exp2.hpp',['../agrad_2fwd_2functions_2exp2_8hpp.html',1,'']]], + ['exp2_2ehpp',['exp2.hpp',['../agrad_2rev_2functions_2exp2_8hpp.html',1,'']]], + ['exp2_2ehpp',['exp2.hpp',['../math_2functions_2exp2_8hpp.html',1,'']]], + ['exp_5fmod_5fnormal_2ehpp',['exp_mod_normal.hpp',['../exp__mod__normal_8hpp.html',1,'']]], + ['exp_5fmod_5fnormal_5fccdf_5flog',['exp_mod_normal_ccdf_log',['../namespacestan_1_1prob.html#acda3771d153ce0b6699db1bcabc7f994',1,'stan::prob']]], + ['exp_5fmod_5fnormal_5fcdf',['exp_mod_normal_cdf',['../namespacestan_1_1prob.html#a829c8e7a571893d48ee513be108162ac',1,'stan::prob']]], + ['exp_5fmod_5fnormal_5fcdf_5flog',['exp_mod_normal_cdf_log',['../namespacestan_1_1prob.html#a292d6dc1426b3aecc6a6415b0a5d9851',1,'stan::prob']]], + ['exp_5fmod_5fnormal_5flog',['exp_mod_normal_log',['../namespacestan_1_1prob.html#a95e73a8689e52bd28a8bb88f8ef0131b',1,'stan::prob::exp_mod_normal_log(const T_y &y, const T_loc &mu, const T_scale &sigma, const T_inv_scale &lambda)'],['../namespacestan_1_1prob.html#a0c333035ef21be05f6124919256ca7df',1,'stan::prob::exp_mod_normal_log(const T_y &y, const T_loc &mu, const T_scale &sigma, const T_inv_scale &lambda)']]], + ['exp_5fmod_5fnormal_5frng',['exp_mod_normal_rng',['../namespacestan_1_1prob.html#ad44443eca9be898e4a2fc013353a0f3c',1,'stan::prob']]], + ['exp_5fval_5f',['exp_val_',['../agrad__thread__safe_8hpp.html#ad5fa8da685c6b471f471d6ed4fc99ebd',1,'exp_val_(): agrad_thread_safe.hpp'],['../rev_2functions_2log10_8hpp.html#ad5fa8da685c6b471f471d6ed4fc99ebd',1,'exp_val_(): log10.hpp']]], + ['expl_5fleapfrog',['expl_leapfrog',['../classstan_1_1mcmc_1_1expl__leapfrog.html',1,'stan::mcmc']]], + ['expl_5fleapfrog',['expl_leapfrog',['../classstan_1_1mcmc_1_1expl__leapfrog.html#a2e93db18fb24e447931497904ae42421',1,'stan::mcmc::expl_leapfrog']]], + ['expl_5fleapfrog_2ehpp',['expl_leapfrog.hpp',['../expl__leapfrog_8hpp.html',1,'']]], + ['expl_5fleapfrog_3c_20dense_5fe_5fmetric_3c_20m_2c_20baserng_20_3e_2c_20dense_5fe_5fpoint_20_3e',['expl_leapfrog< dense_e_metric< M, BaseRNG >, dense_e_point >',['../classstan_1_1mcmc_1_1expl__leapfrog.html',1,'stan::mcmc']]], + ['expl_5fleapfrog_3c_20diag_5fe_5fmetric_3c_20m_2c_20baserng_20_3e_2c_20diag_5fe_5fpoint_20_3e',['expl_leapfrog< diag_e_metric< M, BaseRNG >, diag_e_point >',['../classstan_1_1mcmc_1_1expl__leapfrog.html',1,'stan::mcmc']]], + ['expl_5fleapfrog_3c_20unit_5fe_5fmetric_3c_20m_2c_20baserng_20_3e_2c_20unit_5fe_5fpoint_20_3e',['expl_leapfrog< unit_e_metric< M, BaseRNG >, unit_e_point >',['../classstan_1_1mcmc_1_1expl__leapfrog.html',1,'stan::mcmc']]], + ['expm1',['expm1',['../namespacestan_1_1agrad.html#a0ebbcc9d6368c357c1daba678d71beec',1,'stan::agrad::expm1(const fvar< T > &x)'],['../namespacestan_1_1agrad.html#a0d2243d6b4d61aa41c095622e61e7a3e',1,'stan::agrad::expm1(const stan::agrad::var &a)']]], + ['expm1_2ehpp',['expm1.hpp',['../fwd_2functions_2expm1_8hpp.html',1,'']]], + ['expm1_2ehpp',['expm1.hpp',['../rev_2functions_2expm1_8hpp.html',1,'']]], + ['exponential_2ehpp',['exponential.hpp',['../exponential_8hpp.html',1,'']]], + ['exponential_5fccdf_5flog',['exponential_ccdf_log',['../namespacestan_1_1prob.html#a3ec6b8d579b4f186acb357692219d08e',1,'stan::prob']]], + ['exponential_5fcdf',['exponential_cdf',['../namespacestan_1_1prob.html#a3ed11c9b495e23976817f9c37b1f2af7',1,'stan::prob']]], + ['exponential_5fcdf_5flog',['exponential_cdf_log',['../namespacestan_1_1prob.html#a1f2a5189acae75f0eee599d604e872ab',1,'stan::prob']]], + ['exponential_5flog',['exponential_log',['../namespacestan_1_1prob.html#a6b5f560921b5b09edfe2f55ee909b17e',1,'stan::prob::exponential_log(const T_y &y, const T_inv_scale &beta)'],['../namespacestan_1_1prob.html#ae71620681df03e43f03002634a3c1855',1,'stan::prob::exponential_log(const T_y &y, const T_inv_scale &beta)']]], + ['exponential_5frng',['exponential_rng',['../namespacestan_1_1prob.html#a87460d0e1f55ec9fa5df01d59ef55bc0',1,'stan::prob']]], + ['expr_5f',['expr_',['../structstan_1_1gm_1_1expression.html#aea4b4bd3a099e637be3b6495cacf7a38',1,'stan::gm::expression::expr_()'],['../structstan_1_1gm_1_1index__op.html#acff80ac7b92703b3fc8e0e26d8ffa4ea',1,'stan::gm::index_op::expr_()'],['../structstan_1_1gm_1_1sample.html#a29225bfbf5c3cc9b6f259782ac957891',1,'stan::gm::sample::expr_()'],['../structstan_1_1gm_1_1assignment.html#a5b4337392501b66b3d72f1561e969fed',1,'stan::gm::assignment::expr_()']]], + ['expr_5ftype',['expr_type',['../structstan_1_1gm_1_1expr__type.html',1,'stan::gm']]], + ['expr_5ftype',['expr_type',['../structstan_1_1gm_1_1expr__type.html#a1ff96386c9bd4174c1a20d805238a992',1,'stan::gm::expr_type::expr_type()'],['../structstan_1_1gm_1_1expr__type.html#aa5e743430fd9c3891c635c3a23c038b1',1,'stan::gm::expr_type::expr_type(const base_expr_type base_type)'],['../structstan_1_1gm_1_1expr__type.html#a3c5bf10403a3eeb277f097f4c596ab92',1,'stan::gm::expr_type::expr_type(const base_expr_type base_type, size_t num_dims)']]], + ['expression',['expression',['../structstan_1_1gm_1_1expression.html',1,'stan::gm']]], + ['expression',['expression',['../structstan_1_1gm_1_1expression.html#ab361d5eb3d8bb5fe05e601760781fdce',1,'stan::gm::expression::expression()'],['../structstan_1_1gm_1_1expression.html#a192ef1829feee7075f4d3490d025948c',1,'stan::gm::expression::expression(const expression &e)'],['../structstan_1_1gm_1_1expression.html#a865d7dc525a001c8168f4d171922cd1b',1,'stan::gm::expression::expression(const nil &expr)'],['../structstan_1_1gm_1_1expression.html#a1c8a3f8fb8bbe3d29f8dfe561926a757',1,'stan::gm::expression::expression(const int_literal &expr)'],['../structstan_1_1gm_1_1expression.html#a07b50b75a888a4cc0e04b11697448178',1,'stan::gm::expression::expression(const double_literal &expr)'],['../structstan_1_1gm_1_1expression.html#ab9dfe0c525980b4e33a6f635dd5a5201',1,'stan::gm::expression::expression(const array_literal &expr)'],['../structstan_1_1gm_1_1expression.html#ad6d7cf87fda52077b952285867864bca',1,'stan::gm::expression::expression(const variable &expr)'],['../structstan_1_1gm_1_1expression.html#a54c0b18de4561bf0cbfa866e95516b75',1,'stan::gm::expression::expression(const fun &expr)'],['../structstan_1_1gm_1_1expression.html#a369b4548b7c22bb6e5c9011009ed1689',1,'stan::gm::expression::expression(const index_op &expr)'],['../structstan_1_1gm_1_1expression.html#af033e3bb265198db64040977ef64ff2e',1,'stan::gm::expression::expression(const binary_op &expr)'],['../structstan_1_1gm_1_1expression.html#a51c9181abfa94bdc35c586b15cd65e8f',1,'stan::gm::expression::expression(const unary_op &expr)'],['../structstan_1_1gm_1_1expression.html#a9b2fb897812c6d640bc8eff392afcbb0',1,'stan::gm::expression::expression(const expression_t &expr_)']]], + ['expression07_5fg',['expression07_g',['../structstan_1_1gm_1_1var__decls__grammar.html#a873990473ac21516e6aef9eeb17516b7',1,'stan::gm::var_decls_grammar']]], + ['expression07_5fr',['expression07_r',['../structstan_1_1gm_1_1expression__grammar.html#a039d451d73377c293b768acc290f4fe0',1,'stan::gm::expression_grammar']]], + ['expression09_5fr',['expression09_r',['../structstan_1_1gm_1_1expression__grammar.html#a49f5da4ddf11067e5f9234850f0246b7',1,'stan::gm::expression_grammar']]], + ['expression10_5fr',['expression10_r',['../structstan_1_1gm_1_1expression__grammar.html#a842a2f82871c9b725a4e01408412dfef',1,'stan::gm::expression_grammar']]], + ['expression14_5fr',['expression14_r',['../structstan_1_1gm_1_1expression__grammar.html#ad8c1a56d832543048c8c8ce78af686f6',1,'stan::gm::expression_grammar']]], + ['expression_5fas_5fstatement',['expression_as_statement',['../structstan_1_1gm_1_1expression__as__statement.html',1,'stan::gm']]], + ['expression_5fas_5fstatement_5ff',['expression_as_statement_f',['../namespacestan_1_1gm.html#a235997d18cc5a475e44e279951e7e96e',1,'stan::gm']]], + ['expression_5fg',['expression_g',['../structstan_1_1gm_1_1program__grammar.html#a57e35e3566d20e80fbfdaecd4035e850',1,'stan::gm::program_grammar::expression_g()'],['../structstan_1_1gm_1_1statement__2__grammar.html#ab1dd748c47712014575913b6d6d94b78',1,'stan::gm::statement_2_grammar::expression_g()'],['../structstan_1_1gm_1_1statement__grammar.html#ab7be40f62219856f74ad71670614c078',1,'stan::gm::statement_grammar::expression_g()'],['../structstan_1_1gm_1_1term__grammar.html#adc0324028be557cb8d639c30ffb4fe6d',1,'stan::gm::term_grammar::expression_g()'],['../structstan_1_1gm_1_1var__decls__grammar.html#a53b96dbd7fc4bf896e0e56c0087727cf',1,'stan::gm::var_decls_grammar::expression_g()']]], + ['expression_5fgrammar',['expression_grammar',['../structstan_1_1gm_1_1expression__grammar.html',1,'stan::gm']]], + ['expression_5fgrammar',['expression_grammar',['../structexpression__grammar.html',1,'expression_grammar< Iterator >'],['../structstan_1_1gm_1_1expression__grammar.html#a9a1dcf37552e3ba1eecc18cd4fe88528',1,'stan::gm::expression_grammar::expression_grammar()']]], + ['expression_5fgrammar_2ehpp',['expression_grammar.hpp',['../expression__grammar_8hpp.html',1,'']]], + ['expression_5fgrammar_5fdef_2ehpp',['expression_grammar_def.hpp',['../expression__grammar__def_8hpp.html',1,'']]], + ['expression_5fgrammar_5finst_2ecpp',['expression_grammar_inst.cpp',['../expression__grammar__inst_8cpp.html',1,'']]], + ['expression_5fr',['expression_r',['../structstan_1_1gm_1_1expression__grammar.html#a86d9c1c1655244e6ba1bfe2cb68d4bde',1,'stan::gm::expression_grammar']]], + ['expression_5ft',['expression_t',['../structstan_1_1gm_1_1expression.html#abae5cb68846d118c4e78e11afbaa4826',1,'stan::gm::expression']]], + ['expression_5ftype',['expression_type',['../structstan_1_1gm_1_1expression.html#a61fc6d63842363ebf2c501286874a159',1,'stan::gm::expression']]], + ['expression_5ftype_5fvis',['expression_type_vis',['../structstan_1_1gm_1_1expression__type__vis.html',1,'stan::gm']]], + ['expression_5fvisgen',['expression_visgen',['../structstan_1_1gm_1_1expression__visgen.html',1,'stan::gm']]], + ['expression_5fvisgen',['expression_visgen',['../structstan_1_1gm_1_1expression__visgen.html#a216c5cae399487b3a82c0e9005eb063c',1,'stan::gm::expression_visgen']]], + ['internal',['internal',['../namespace_eigen_1_1internal.html',1,'Eigen']]], + ['error_20handling_20policies',['Error Handling Policies',['../policy_page.html',1,'']]] +]; diff --git a/doc/api/html/search/all_66.html b/doc/api/html/search/all_66.html new file mode 100644 index 00000000000..3d1f8b35e89 --- /dev/null +++ b/doc/api/html/search/all_66.html @@ -0,0 +1,25 @@ + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/doc/api/html/search/all_66.js b/doc/api/html/search/all_66.js new file mode 100644 index 00000000000..e9ec86dd680 --- /dev/null +++ b/doc/api/html/search/all_66.js @@ -0,0 +1,62 @@ +var searchData= +[ + ['f32',['F32',['../namespacestan_1_1math.html#a582d3c65ec66505882d2d1b740887ae8',1,'stan::math']]], + ['fabs',['fabs',['../namespacestan_1_1agrad.html#a16b719a6d38dc2ccc9eeae9ecbdc6cce',1,'stan::agrad::fabs(const var &a)'],['../namespacestan_1_1agrad.html#ae8cb1fd9f1e72fef6e442c1e566006b9',1,'stan::agrad::fabs(const fvar< T > &x)']]], + ['fabs_2ehpp',['fabs.hpp',['../fwd_2functions_2fabs_8hpp.html',1,'']]], + ['fabs_2ehpp',['fabs.hpp',['../rev_2functions_2fabs_8hpp.html',1,'']]], + ['factor_5fcov_5fmatrix',['factor_cov_matrix',['../namespacestan_1_1prob.html#a12303c67d7416a48497afe8b59913d13',1,'stan::prob']]], + ['factor_5fr',['factor_r',['../structstan_1_1gm_1_1term__grammar.html#a9d446cacd531a1f58fbd26edf3465065',1,'stan::gm::term_grammar']]], + ['falling_5ffactorial',['falling_factorial',['../namespacestan_1_1agrad.html#afd34f7d31e0b8259abb0f61fac5e6fcd',1,'stan::agrad::falling_factorial(const fvar< T > &x, const fvar< T > &n)'],['../namespacestan_1_1agrad.html#a22978d7897d2c1b62f9faa70b69969bb',1,'stan::agrad::falling_factorial(const fvar< T > &x, const double n)'],['../namespacestan_1_1agrad.html#a371442e647e39bf957ec3c9c58454d03',1,'stan::agrad::falling_factorial(const double x, const fvar< T > &n)'],['../namespacestan_1_1agrad.html#a3fe9336533c29b3f48381f31e5b2f34d',1,'stan::agrad::falling_factorial(const var &a, const double &b)'],['../namespacestan_1_1agrad.html#ac91a3d31a2220937ca9052d66c12292b',1,'stan::agrad::falling_factorial(const var &a, const var &b)'],['../namespacestan_1_1agrad.html#a9dee7426dac152938bbdb79b70395106',1,'stan::agrad::falling_factorial(const double &a, const var &b)'],['../namespacestan_1_1math.html#ac2df2a7019f7f68a915b3edab21921a1',1,'stan::math::falling_factorial()']]], + ['falling_5ffactorial_2ehpp',['falling_factorial.hpp',['../agrad_2fwd_2functions_2falling__factorial_8hpp.html',1,'']]], + ['falling_5ffactorial_2ehpp',['falling_factorial.hpp',['../agrad_2rev_2functions_2falling__factorial_8hpp.html',1,'']]], + ['falling_5ffactorial_2ehpp',['falling_factorial.hpp',['../math_2functions_2falling__factorial_8hpp.html',1,'']]], + ['family_5f',['family_',['../structstan_1_1gm_1_1distribution.html#ab09553687b34895debe5818c548f26b8',1,'stan::gm::distribution']]], + ['fdim',['fdim',['../namespacestan_1_1agrad.html#a3602c7867931bfd2085509c75596ce09',1,'stan::agrad::fdim(const fvar< T > &x1, const fvar< T > &x2)'],['../namespacestan_1_1agrad.html#a0be65ebed198f4ea8dbc5b7b1cd7126f',1,'stan::agrad::fdim(const fvar< T > &x1, const double x2)'],['../namespacestan_1_1agrad.html#a1035a00ecb52c988bab0a77698c00f44',1,'stan::agrad::fdim(const double x1, const fvar< T > &x2)'],['../namespacestan_1_1agrad.html#a8b11e04370013c6df527524463f9ca74',1,'stan::agrad::fdim(const stan::agrad::var &a, const stan::agrad::var &b)'],['../namespacestan_1_1agrad.html#a3cbb5f05f4a177ad199188f3be030b3e',1,'stan::agrad::fdim(const double &a, const stan::agrad::var &b)'],['../namespacestan_1_1agrad.html#ace71dd32d041a962cb481242ecacab0b',1,'stan::agrad::fdim(const stan::agrad::var &a, const double &b)'],['../namespacestan_1_1math.html#a7d2db622c0f83134b7f3ebd1eec3c1d6',1,'stan::math::fdim()']]], + ['fdim_2ehpp',['fdim.hpp',['../agrad_2rev_2functions_2fdim_8hpp.html',1,'']]], + ['fdim_2ehpp',['fdim.hpp',['../math_2functions_2fdim_8hpp.html',1,'']]], + ['fdim_2ehpp',['fdim.hpp',['../agrad_2fwd_2functions_2fdim_8hpp.html',1,'']]], + ['fevals',['fevals',['../classstan_1_1optimization_1_1_model_adaptor.html#a77cd72166cb46c21e16c82f24dd84caf',1,'stan::optimization::ModelAdaptor']]], + ['fill',['fill',['../namespacestan_1_1math.html#a6d362e53d3d40b61e68fdd08dc5eb38b',1,'stan::math::fill(T &x, const S &y)'],['../namespacestan_1_1math.html#a73e791042ed648602eed1754679feff4',1,'stan::math::fill(Eigen::Matrix< T, R, C > &x, const S &y)'],['../namespacestan_1_1math.html#aa7f5d81c4d45f2407096def8810ffe00',1,'stan::math::fill(std::vector< T > &x, const S &y)']]], + ['fill_2ehpp',['fill.hpp',['../fill_8hpp.html',1,'']]], + ['find_5farg',['find_arg',['../classstan_1_1gm_1_1argument.html#af6212284d6fbf9ee71cdc0563d9bf891',1,'stan::gm::argument::find_arg()'],['../classstan_1_1gm_1_1categorical__argument.html#a24aa833497801c7a66c8ef8c599181ce',1,'stan::gm::categorical_argument::find_arg()'],['../classstan_1_1gm_1_1list__argument.html#a2428856fc920f6d7b4f50c1408bd9c9a',1,'stan::gm::list_argument::find_arg()'],['../classstan_1_1gm_1_1singleton__argument.html#a343a60ef80e0dd3eafe685141a6c3fa8',1,'stan::gm::singleton_argument::find_arg()']]], + ['finite_5fdiff_5fgrad',['finite_diff_grad',['../namespacestan_1_1model.html#a2660b5de2ccd8322d61f077d43289d18',1,'stan::model']]], + ['fixed_5fparam_5fsampler',['fixed_param_sampler',['../classstan_1_1mcmc_1_1fixed__param__sampler.html#a4499990d01be06e4302386f5fe8feac2',1,'stan::mcmc::fixed_param_sampler']]], + ['fixed_5fparam_5fsampler',['fixed_param_sampler',['../classstan_1_1mcmc_1_1fixed__param__sampler.html',1,'stan::mcmc']]], + ['fixed_5fparam_5fsampler_2ehpp',['fixed_param_sampler.hpp',['../fixed__param__sampler_8hpp.html',1,'']]], + ['floor',['floor',['../namespacestan_1_1agrad.html#aa9046719ea83cad7cf7dace32ede78ce',1,'stan::agrad::floor(const var &a)'],['../namespacestan_1_1agrad.html#a266dcbe1451957c1fc2c32b2ae2870f3',1,'stan::agrad::floor(const fvar< T > &x)']]], + ['floor_2ehpp',['floor.hpp',['../fwd_2functions_2floor_8hpp.html',1,'']]], + ['floor_2ehpp',['floor.hpp',['../rev_2functions_2floor_8hpp.html',1,'']]], + ['fma',['fma',['../namespacestan_1_1agrad.html#a5f77bec24d717ec5f98b996f0be4cab4',1,'stan::agrad::fma(const fvar< T1 > &x1, const fvar< T2 > &x2, const fvar< T3 > &x3)'],['../namespacestan_1_1agrad.html#a86c32e534514f635bf641508b30804bb',1,'stan::agrad::fma(const T1 &x1, const fvar< T2 > &x2, const fvar< T3 > &x3)'],['../namespacestan_1_1agrad.html#ab0b96f19fcab78ceea15a6c0a95f8d7d',1,'stan::agrad::fma(const fvar< T1 > &x1, const T2 &x2, const fvar< T3 > &x3)'],['../namespacestan_1_1agrad.html#a663c1cc77abf57686013dbb666bf1ed0',1,'stan::agrad::fma(const fvar< T1 > &x1, const fvar< T2 > &x2, const T3 &x3)'],['../namespacestan_1_1agrad.html#a48956c680d59182a8b63d9e52f2ee2d8',1,'stan::agrad::fma(const T1 &x1, const T2 &x2, const fvar< T3 > &x3)'],['../namespacestan_1_1agrad.html#a2f1cefa8d0717c47703394f7724f86d8',1,'stan::agrad::fma(const fvar< T1 > &x1, const T2 &x2, const T3 &x3)'],['../namespacestan_1_1agrad.html#a1116b96b95098db023b128fa810a3828',1,'stan::agrad::fma(const T1 &x1, const fvar< T2 > &x2, const T3 &x3)'],['../namespacestan_1_1agrad.html#a236c6ba1684b8993ab0ca0d4319ebc15',1,'stan::agrad::fma(const stan::agrad::var &a, const stan::agrad::var &b, const stan::agrad::var &c)'],['../namespacestan_1_1agrad.html#a60d474fe443809433d909f153e326f63',1,'stan::agrad::fma(const stan::agrad::var &a, const stan::agrad::var &b, const double &c)'],['../namespacestan_1_1agrad.html#a4a8f1b59063836f79f91e61aa37e7f24',1,'stan::agrad::fma(const stan::agrad::var &a, const double &b, const stan::agrad::var &c)'],['../namespacestan_1_1agrad.html#afbff5da93a0ea4d23fc83faf70d866c0',1,'stan::agrad::fma(const stan::agrad::var &a, const double &b, const double &c)'],['../namespacestan_1_1agrad.html#a114089c3582069352ec3055927da54b3',1,'stan::agrad::fma(const double &a, const stan::agrad::var &b, const double &c)'],['../namespacestan_1_1agrad.html#a2858845a5ac98800b708c7c42ccaac35',1,'stan::agrad::fma(const double &a, const double &b, const stan::agrad::var &c)'],['../namespacestan_1_1agrad.html#aba5953fcb09dca0142b23409bd6c2766',1,'stan::agrad::fma(const double &a, const stan::agrad::var &b, const stan::agrad::var &c)'],['../namespacestan_1_1math.html#ad8ac3f1f4f177645d84a1d6480f70d96',1,'stan::math::fma()']]], + ['fma_2ehpp',['fma.hpp',['../agrad_2fwd_2functions_2fma_8hpp.html',1,'']]], + ['fma_2ehpp',['fma.hpp',['../agrad_2rev_2functions_2fma_8hpp.html',1,'']]], + ['fma_2ehpp',['fma.hpp',['../math_2functions_2fma_8hpp.html',1,'']]], + ['fmax',['fmax',['../namespacestan_1_1agrad.html#a2cf89150207e0d529ffd68744593a2bc',1,'stan::agrad::fmax(const fvar< T > &x1, const fvar< T > &x2)'],['../namespacestan_1_1agrad.html#a2cf4931ad43b37de539770207eb9e531',1,'stan::agrad::fmax(const double x1, const fvar< T > &x2)'],['../namespacestan_1_1agrad.html#a3f3435dc40e6c86fd4fd495357fbf6a9',1,'stan::agrad::fmax(const fvar< T > &x1, const double x2)'],['../namespacestan_1_1agrad.html#a6bfbbbe6a55f984d587261a0d7213936',1,'stan::agrad::fmax(const stan::agrad::var &a, const stan::agrad::var &b)'],['../namespacestan_1_1agrad.html#ae46ecdd6d3cfa395ddfe12b425ae292a',1,'stan::agrad::fmax(const stan::agrad::var &a, const double &b)'],['../namespacestan_1_1agrad.html#adc9389efdd26ce3ba31890e70620026b',1,'stan::agrad::fmax(const double &a, const stan::agrad::var &b)']]], + ['fmax_2ehpp',['fmax.hpp',['../fwd_2functions_2fmax_8hpp.html',1,'']]], + ['fmax_2ehpp',['fmax.hpp',['../rev_2functions_2fmax_8hpp.html',1,'']]], + ['fmin',['fmin',['../namespacestan_1_1agrad.html#aac4bc7dd96a78ed7ba7a03d268ead9eb',1,'stan::agrad::fmin(const fvar< T > &x1, const fvar< T > &x2)'],['../namespacestan_1_1agrad.html#a855b36ac5868d163a4501b77359560ab',1,'stan::agrad::fmin(const double x1, const fvar< T > &x2)'],['../namespacestan_1_1agrad.html#a3f0537c9981801bd4c0f04d6580b9385',1,'stan::agrad::fmin(const fvar< T > &x1, const double x2)'],['../namespacestan_1_1agrad.html#af9ad06d7c50e65542e3a83c1d7bf8bcc',1,'stan::agrad::fmin(const stan::agrad::var &a, const stan::agrad::var &b)'],['../namespacestan_1_1agrad.html#a46d5b1c42b386e876cadf5948cdf8256',1,'stan::agrad::fmin(const stan::agrad::var &a, const double &b)'],['../namespacestan_1_1agrad.html#a3afd698a7b861deeca2539c60ce89743',1,'stan::agrad::fmin(const double &a, const stan::agrad::var &b)']]], + ['fmin_2ehpp',['fmin.hpp',['../fwd_2functions_2fmin_8hpp.html',1,'']]], + ['fmin_2ehpp',['fmin.hpp',['../rev_2functions_2fmin_8hpp.html',1,'']]], + ['fmod',['fmod',['../namespacestan_1_1agrad.html#ad475182b7f8b4849bb596e2529838bb6',1,'stan::agrad::fmod(const var &a, const var &b)'],['../namespacestan_1_1agrad.html#af96a5057c49216f1bda2be3a906b93f3',1,'stan::agrad::fmod(const var &a, const double &b)'],['../namespacestan_1_1agrad.html#adf82aceb2eca59a1fa422ea6dcfad435',1,'stan::agrad::fmod(const double &a, const var &b)'],['../namespacestan_1_1agrad.html#a4f6323825127dbf709facbed66f9e788',1,'stan::agrad::fmod(const fvar< T > &x1, const fvar< T > &x2)'],['../namespacestan_1_1agrad.html#ad974df65ff640e773ea32c6061d732f9',1,'stan::agrad::fmod(const fvar< T > &x1, const double x2)'],['../namespacestan_1_1agrad.html#a419533f3ed45a0fd5c77673e0db37915',1,'stan::agrad::fmod(const double x1, const fvar< T > &x2)'],['../namespacestan_1_1agrad.html#a48a712f23dfb6e5fe484fdda678bdff9',1,'stan::agrad::fmod(const var &a, const double b)'],['../namespacestan_1_1agrad.html#a478d71eb2e0aeb0df8fdba5c6933a2e6',1,'stan::agrad::fmod(const double a, const var &b)']]], + ['fmod_2ehpp',['fmod.hpp',['../rev_2functions_2fmod_8hpp.html',1,'']]], + ['fmod_2ehpp',['fmod.hpp',['../fwd_2functions_2fmod_8hpp.html',1,'']]], + ['for_5fstatement',['for_statement',['../structstan_1_1gm_1_1for__statement.html#a34c29e8875104ecab7481e308626666e',1,'stan::gm::for_statement::for_statement()'],['../structstan_1_1gm_1_1for__statement.html#acc3bc5c944315988c6b7724b170e77b3',1,'stan::gm::for_statement::for_statement(std::string &variable, range &range, statement &stmt)']]], + ['for_5fstatement',['for_statement',['../structstan_1_1gm_1_1for__statement.html',1,'stan::gm']]], + ['for_5fstatement_5fr',['for_statement_r',['../structstan_1_1gm_1_1statement__grammar.html#a5b68ed64ef9f0602474270b4de26c268',1,'stan::gm::statement_grammar']]], + ['forward_5fiterator_5ft',['forward_iterator_t',['../namespacestan_1_1gm.html#aa1c432dd6520c6f137b092953345f7d5',1,'stan::gm']]], + ['fpclassify',['fpclassify',['../namespaceboost_1_1math.html#a81d6724493d3ad55a65f18a3e780ddf7',1,'boost::math']]], + ['free_5fall',['free_all',['../classstan_1_1memory_1_1chunk__alloc.html#aa313a74350df2c4dabf4b61d63e4a2a9',1,'stan::memory::chunk_alloc::free_all()'],['../classstan_1_1memory_1_1stack__alloc.html#a02e126e827732287d7f4ede17316089a',1,'stan::memory::stack_alloc::free_all()']]], + ['free_5fmemory',['free_memory',['../classstan_1_1agrad_1_1vari.html#a7f23c079bd16b3183a46bb250ec231ac',1,'stan::agrad::vari::free_memory()'],['../namespacestan_1_1agrad.html#a97c8b13e0b24beeb9a67b880ac34b48c',1,'stan::agrad::free_memory()']]], + ['fun',['fun',['../structstan_1_1gm_1_1fun.html',1,'stan::gm']]], + ['fun',['fun',['../structstan_1_1gm_1_1fun.html#ac61c1007763bc47ad4bbf7142de638fb',1,'stan::gm::fun::fun()'],['../structstan_1_1gm_1_1fun.html#ae988678efe42ba4871f47c7d30879feb',1,'stan::gm::fun::fun(std::string const &name, std::vector< expression > const &args)']]], + ['fun_5fr',['fun_r',['../structstan_1_1gm_1_1term__grammar.html#a8b08e0616ee62cfba37e6db5e22fa63f',1,'stan::gm::term_grammar']]], + ['function_5fargs',['function_args',['../structstan_1_1gm_1_1generate__init__visgen.html#aa4efef315371d95e3fe70fd042da3705',1,'stan::gm::generate_init_visgen']]], + ['function_5fsignature_5ft',['function_signature_t',['../namespacestan_1_1gm.html#ab969833a2ffdf92a759238a5d9ba5859',1,'stan::gm']]], + ['function_5fsignatures',['function_signatures',['../classstan_1_1gm_1_1function__signatures.html',1,'stan::gm']]], + ['functions_2ehpp',['functions.hpp',['../agrad_2rev_2functions_8hpp.html',1,'']]], + ['functions_2ehpp',['functions.hpp',['../agrad_2fwd_2functions_8hpp.html',1,'']]], + ['functions_2ehpp',['functions.hpp',['../math_2functions_8hpp.html',1,'']]], + ['fvar',['fvar',['../structstan_1_1agrad_1_1fvar.html',1,'stan::agrad']]], + ['fvar',['fvar',['../structstan_1_1agrad_1_1fvar.html#a289970c8de6526ad9e5e8b323f26c7b5',1,'stan::agrad::fvar::fvar(const TV &val, const TD &deriv)'],['../structstan_1_1agrad_1_1fvar.html#a8aa84b5da53f24362d9b04f6e248d3d9',1,'stan::agrad::fvar::fvar(const TV &val)'],['../structstan_1_1agrad_1_1fvar.html#a18f9e0f72bd845ef6445ca616acbffcd',1,'stan::agrad::fvar::fvar()']]], + ['fvar_2ehpp',['fvar.hpp',['../fvar_8hpp.html',1,'']]], + ['fwd_2ehpp',['fwd.hpp',['../fwd_8hpp.html',1,'']]] +]; diff --git a/doc/api/html/search/all_67.html b/doc/api/html/search/all_67.html new file mode 100644 index 00000000000..41a459ae7d0 --- /dev/null +++ b/doc/api/html/search/all_67.html @@ -0,0 +1,25 @@ + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/doc/api/html/search/all_67.js b/doc/api/html/search/all_67.js new file mode 100644 index 00000000000..0e7940e36a2 --- /dev/null +++ b/doc/api/html/search/all_67.js @@ -0,0 +1,159 @@ +var searchData= +[ + ['g',['g',['../classstan_1_1mcmc_1_1ps__point.html#a651cacb5446e2c6c9931ec23ffe547d3',1,'stan::mcmc::ps_point']]], + ['gamma_2ehpp',['gamma.hpp',['../gamma_8hpp.html',1,'']]], + ['gamma_5fccdf_5flog',['gamma_ccdf_log',['../namespacestan_1_1prob.html#ad7ee96f7433a8a2213f6c00d053fcc98',1,'stan::prob']]], + ['gamma_5fcdf',['gamma_cdf',['../namespacestan_1_1prob.html#a0056f042d18ab321812adae932f7788e',1,'stan::prob']]], + ['gamma_5fcdf_5flog',['gamma_cdf_log',['../namespacestan_1_1prob.html#a74f0bab3925e33a3f4d41ad844172b27',1,'stan::prob']]], + ['gamma_5flog',['gamma_log',['../namespacestan_1_1prob.html#a79b5cdb98cde395af01ceeb3e643788b',1,'stan::prob::gamma_log(const T_y &y, const T_shape &alpha, const T_inv_scale &beta)'],['../namespacestan_1_1prob.html#a762b08e1b594764a002a4503042a1782',1,'stan::prob::gamma_log(const T_y &y, const T_shape &alpha, const T_inv_scale &beta)']]], + ['gamma_5fp',['gamma_p',['../namespacestan_1_1agrad.html#af866ffae5b244d1e6e93bd7ed85452c9',1,'stan::agrad::gamma_p(const fvar< T > &x1, const fvar< T > &x2)'],['../namespacestan_1_1agrad.html#a8448454064a4337b6358d60e2d6820ff',1,'stan::agrad::gamma_p(const fvar< T > &x1, const double x2)'],['../namespacestan_1_1agrad.html#a0b6a1689e89d7de041e7bc4e57bcd1c7',1,'stan::agrad::gamma_p(const double x1, const fvar< T > &x2)'],['../namespacestan_1_1agrad.html#a998c50e583b44604ded2c213ed565b72',1,'stan::agrad::gamma_p(const stan::agrad::var &a, const stan::agrad::var &b)'],['../namespacestan_1_1agrad.html#a27226e41e865a880d1d5628d7b7aeba5',1,'stan::agrad::gamma_p(const stan::agrad::var &a, const double &b)'],['../namespacestan_1_1agrad.html#a1be9111ad018e40e8388d628e527255d',1,'stan::agrad::gamma_p(const double &a, const stan::agrad::var &b)'],['../namespacestan_1_1math.html#aed411d626d4ae01a76584c454a83673f',1,'stan::math::gamma_p()']]], + ['gamma_5fp_2ehpp',['gamma_p.hpp',['../agrad_2rev_2functions_2gamma__p_8hpp.html',1,'']]], + ['gamma_5fp_2ehpp',['gamma_p.hpp',['../math_2functions_2gamma__p_8hpp.html',1,'']]], + ['gamma_5fp_2ehpp',['gamma_p.hpp',['../agrad_2fwd_2functions_2gamma__p_8hpp.html',1,'']]], + ['gamma_5fq',['gamma_q',['../namespacestan_1_1agrad.html#a11135a2ea60dac802a560b6d650df60f',1,'stan::agrad::gamma_q(const fvar< T > &x1, const fvar< T > &x2)'],['../namespacestan_1_1agrad.html#a032ac91edd3d7ca00478b937353fd63f',1,'stan::agrad::gamma_q(const fvar< T > &x1, const double x2)'],['../namespacestan_1_1agrad.html#ad8bb1c38eb8ba69d50c8ccb3452719e3',1,'stan::agrad::gamma_q(const double x1, const fvar< T > &x2)'],['../namespacestan_1_1agrad.html#abbfd6400f96010759da0a7f20a0e6991',1,'stan::agrad::gamma_q(const stan::agrad::var &a, const stan::agrad::var &b)'],['../namespacestan_1_1agrad.html#af9f89bf49133aa1ef45e6b3257b84c63',1,'stan::agrad::gamma_q(const stan::agrad::var &a, const double &b)'],['../namespacestan_1_1agrad.html#a5df71efbadd34735e269ce904160ceb9',1,'stan::agrad::gamma_q(const double &a, const stan::agrad::var &b)'],['../namespacestan_1_1math.html#a0830ba049b81bc98ea9fbcf1eb7b4bd6',1,'stan::math::gamma_q()']]], + ['gamma_5fq_2ehpp',['gamma_q.hpp',['../agrad_2fwd_2functions_2gamma__q_8hpp.html',1,'']]], + ['gamma_5fq_2ehpp',['gamma_q.hpp',['../agrad_2rev_2functions_2gamma__q_8hpp.html',1,'']]], + ['gamma_5fq_2ehpp',['gamma_q.hpp',['../math_2functions_2gamma__q_8hpp.html',1,'']]], + ['gamma_5frng',['gamma_rng',['../namespacestan_1_1prob.html#ae48a407db43161a34812a8ed250de25c',1,'stan::prob']]], + ['gaussian_5fdlm_5fobs_2ehpp',['gaussian_dlm_obs.hpp',['../gaussian__dlm__obs_8hpp.html',1,'']]], + ['gaussian_5fdlm_5fobs_5flog',['gaussian_dlm_obs_log',['../namespacestan_1_1prob.html#a2788e0ec29af261204d5a071a9ac6abb',1,'stan::prob::gaussian_dlm_obs_log(const Eigen::Matrix< T_y, Eigen::Dynamic, Eigen::Dynamic > &y, const Eigen::Matrix< T_F, Eigen::Dynamic, Eigen::Dynamic > &F, const Eigen::Matrix< T_G, Eigen::Dynamic, Eigen::Dynamic > &G, const Eigen::Matrix< T_V, Eigen::Dynamic, Eigen::Dynamic > &V, const Eigen::Matrix< T_W, Eigen::Dynamic, Eigen::Dynamic > &W, const Eigen::Matrix< T_m0, Eigen::Dynamic, 1 > &m0, const Eigen::Matrix< T_C0, Eigen::Dynamic, Eigen::Dynamic > &C0)'],['../namespacestan_1_1prob.html#abe03afe63c5a16f0900578622143fe11',1,'stan::prob::gaussian_dlm_obs_log(const Eigen::Matrix< T_y, Eigen::Dynamic, Eigen::Dynamic > &y, const Eigen::Matrix< T_F, Eigen::Dynamic, Eigen::Dynamic > &F, const Eigen::Matrix< T_G, Eigen::Dynamic, Eigen::Dynamic > &G, const Eigen::Matrix< T_V, Eigen::Dynamic, Eigen::Dynamic > &V, const Eigen::Matrix< T_W, Eigen::Dynamic, Eigen::Dynamic > &W, const Eigen::Matrix< T_m0, Eigen::Dynamic, 1 > &m0, const Eigen::Matrix< T_C0, Eigen::Dynamic, Eigen::Dynamic > &C0)'],['../namespacestan_1_1prob.html#a7205d695b5a1a8358299908ab943c812',1,'stan::prob::gaussian_dlm_obs_log(const Eigen::Matrix< T_y, Eigen::Dynamic, Eigen::Dynamic > &y, const Eigen::Matrix< T_F, Eigen::Dynamic, Eigen::Dynamic > &F, const Eigen::Matrix< T_G, Eigen::Dynamic, Eigen::Dynamic > &G, const Eigen::Matrix< T_V, Eigen::Dynamic, 1 > &V, const Eigen::Matrix< T_W, Eigen::Dynamic, Eigen::Dynamic > &W, const Eigen::Matrix< T_m0, Eigen::Dynamic, 1 > &m0, const Eigen::Matrix< T_C0, Eigen::Dynamic, Eigen::Dynamic > &C0)'],['../namespacestan_1_1prob.html#ab2f8f2486dabf18bc892a59326aabba6',1,'stan::prob::gaussian_dlm_obs_log(const Eigen::Matrix< T_y, Eigen::Dynamic, Eigen::Dynamic > &y, const Eigen::Matrix< T_F, Eigen::Dynamic, Eigen::Dynamic > &F, const Eigen::Matrix< T_G, Eigen::Dynamic, Eigen::Dynamic > &G, const Eigen::Matrix< T_V, Eigen::Dynamic, 1 > &V, const Eigen::Matrix< T_W, Eigen::Dynamic, Eigen::Dynamic > &W, const Eigen::Matrix< T_m0, Eigen::Dynamic, 1 > &m0, const Eigen::Matrix< T_C0, Eigen::Dynamic, Eigen::Dynamic > &C0)']]], + ['general_5fmatrix_5fmatrix_5fproduct_3c_20index_2c_20stan_3a_3aagrad_3a_3avar_2c_20lhsstorageorder_2c_20conjugatelhs_2c_20stan_3a_3aagrad_3a_3avar_2c_20rhsstorageorder_2c_20conjugaterhs_2c_20colmajor_20_3e',['general_matrix_matrix_product< Index, stan::agrad::var, LhsStorageOrder, ConjugateLhs, stan::agrad::var, RhsStorageOrder, ConjugateRhs, ColMajor >',['../struct_eigen_1_1internal_1_1general__matrix__matrix__product_3_01_index_00_01stan_1_1agrad_1_1va9b485de9571b6e46d7a64aff43a6d9d3.html',1,'Eigen::internal']]], + ['general_5fmatrix_5fvector_5fproduct_3c_20index_2c_20stan_3a_3aagrad_3a_3avar_2c_20colmajor_2c_20conjugatelhs_2c_20stan_3a_3aagrad_3a_3avar_2c_20conjugaterhs_20_3e',['general_matrix_vector_product< Index, stan::agrad::var, ColMajor, ConjugateLhs, stan::agrad::var, ConjugateRhs >',['../struct_eigen_1_1internal_1_1general__matrix__vector__product_3_01_index_00_01stan_1_1agrad_1_1va44da5f98e1caea9523bacbd5bdc025fe.html',1,'Eigen::internal']]], + ['general_5fmatrix_5fvector_5fproduct_3c_20index_2c_20stan_3a_3aagrad_3a_3avar_2c_20rowmajor_2c_20conjugatelhs_2c_20stan_3a_3aagrad_3a_3avar_2c_20conjugaterhs_20_3e',['general_matrix_vector_product< Index, stan::agrad::var, RowMajor, ConjugateLhs, stan::agrad::var, ConjugateRhs >',['../struct_eigen_1_1internal_1_1general__matrix__vector__product_3_01_index_00_01stan_1_1agrad_1_1vacd54cabc78c49ca719650381b68b105e.html',1,'Eigen::internal']]], + ['generate_5fbegin_5ffor_5fdims',['generate_begin_for_dims',['../structstan_1_1gm_1_1validate__var__decl__visgen.html#aff830ed631f54eff36b9a643d14d0223',1,'stan::gm::validate_var_decl_visgen']]], + ['generate_5fbuffer_5floop',['generate_buffer_loop',['../structstan_1_1gm_1_1generate__init__visgen.html#a05aa9ddaf49b4e575bf8c8ddd1c9caa8',1,'stan::gm::generate_init_visgen']]], + ['generate_5fcheck_5fdouble',['generate_check_double',['../structstan_1_1gm_1_1generate__init__visgen.html#adb02e4312d893d26819ea0535e72a395',1,'stan::gm::generate_init_visgen']]], + ['generate_5fcheck_5fint',['generate_check_int',['../structstan_1_1gm_1_1generate__init__visgen.html#ad97c800e8b97eb5e99e15be9e731856e',1,'stan::gm::generate_init_visgen']]], + ['generate_5fclass_5fdecl',['generate_class_decl',['../namespacestan_1_1gm.html#af08d462ee1f0e163d614e9ed03fe53c0',1,'stan::gm']]], + ['generate_5fcomment',['generate_comment',['../namespacestan_1_1gm.html#abba632c440fa0d045a469d12a7cef474',1,'stan::gm']]], + ['generate_5fconstrained_5fparam_5fnames_5fmethod',['generate_constrained_param_names_method',['../namespacestan_1_1gm.html#a5064d8f1632c7557de53ab9af11342f3',1,'stan::gm']]], + ['generate_5fconstructor',['generate_constructor',['../namespacestan_1_1gm.html#aa582396b750dabd6768f4adb30508349',1,'stan::gm']]], + ['generate_5fcpp',['generate_cpp',['../namespacestan_1_1gm.html#a668b578a61c97daacf978986469d1af1',1,'stan::gm']]], + ['generate_5fcsv_5fheader_5farray',['generate_csv_header_array',['../structstan_1_1gm_1_1write__csv__header__visgen.html#a8b2bffaeddce0015c69d6a300ce624de',1,'stan::gm::write_csv_header_visgen']]], + ['generate_5fdeclaration',['generate_declaration',['../structstan_1_1gm_1_1generate__init__visgen.html#a1d115ad0f68566f36cb724b45a67c6a0',1,'stan::gm::generate_init_visgen']]], + ['generate_5fdestructor',['generate_destructor',['../namespacestan_1_1gm.html#a2547842ef250f715e7121eab59f2263c',1,'stan::gm']]], + ['generate_5fdims_5farray',['generate_dims_array',['../structstan_1_1gm_1_1write__dims__visgen.html#ab1da381e42f08f05b968b62ff8ed8df0',1,'stan::gm::write_dims_visgen']]], + ['generate_5fdims_5floop_5ffwd',['generate_dims_loop_fwd',['../structstan_1_1gm_1_1generate__init__visgen.html#a793258abd85f441fd2ca1a15d06e81a3',1,'stan::gm::generate_init_visgen']]], + ['generate_5fdims_5fmethod',['generate_dims_method',['../namespacestan_1_1gm.html#ad25e6e8b2a6244b38ce779887bb4c17f',1,'stan::gm']]], + ['generate_5fend_5fclass_5fdecl',['generate_end_class_decl',['../namespacestan_1_1gm.html#adc6eed04035b3dd32a5e04d227d4cf68',1,'stan::gm']]], + ['generate_5fend_5ffor_5fdims',['generate_end_for_dims',['../structstan_1_1gm_1_1validate__var__decl__visgen.html#a84366f1b6aca2e4e6ce0dffbb65fd523',1,'stan::gm::validate_var_decl_visgen']]], + ['generate_5fend_5fnamespace',['generate_end_namespace',['../namespacestan_1_1gm.html#a9771868cf777556e7ea3dfabbfcccecb',1,'stan::gm']]], + ['generate_5fexpression',['generate_expression',['../namespacestan_1_1gm.html#a6d7cbee2be927cee628328a4e879294a',1,'stan::gm']]], + ['generate_5finclude',['generate_include',['../namespacestan_1_1gm.html#ab12d33faf3ee33c50995679a53496706',1,'stan::gm']]], + ['generate_5fincludes',['generate_includes',['../namespacestan_1_1gm.html#a6a9d6cf24f2051d0804f641525a36f8a',1,'stan::gm']]], + ['generate_5fincrement',['generate_increment',['../structstan_1_1gm_1_1set__param__ranges__visgen.html#a03bf3d67902d7addab06e8348fcad034',1,'stan::gm::set_param_ranges_visgen::generate_increment(std::vector< expression > dims) const '],['../structstan_1_1gm_1_1set__param__ranges__visgen.html#a643b15f7e1aebb50457c29795d98dbba',1,'stan::gm::set_param_ranges_visgen::generate_increment(expression K, std::vector< expression > dims) const '],['../structstan_1_1gm_1_1set__param__ranges__visgen.html#a02f19b449b05e3cc0c265dec2310bbcb',1,'stan::gm::set_param_ranges_visgen::generate_increment(expression M, expression N, std::vector< expression > dims) const ']]], + ['generate_5fincrement_5fi',['generate_increment_i',['../structstan_1_1gm_1_1set__param__ranges__visgen.html#a80cc6bdadbd3cfb04fb75d3674d3d74a',1,'stan::gm::set_param_ranges_visgen']]], + ['generate_5findent',['generate_indent',['../namespacestan_1_1gm.html#a5dfdee531df2c1a3fa39c3c5d9ee5edd',1,'stan::gm']]], + ['generate_5findent_5fnum_5fdims',['generate_indent_num_dims',['../structstan_1_1gm_1_1generate__init__visgen.html#a39fe228dfb30354fddb0bc9c3076fe78',1,'stan::gm::generate_init_visgen']]], + ['generate_5findexed_5fexpr',['generate_indexed_expr',['../namespacestan_1_1gm.html#acd8d56cc6cd4afabfb2b65f2e721be01',1,'stan::gm']]], + ['generate_5finit',['generate_init',['../structstan_1_1gm_1_1generate__local__var__init__nan__visgen.html#a90bfb805ab0dc6b9612a05254d86dbe5',1,'stan::gm::generate_local_var_init_nan_visgen']]], + ['generate_5finit_5fargs',['generate_init_args',['../structstan_1_1gm_1_1local__var__decl__visgen.html#ac57a75ce0bdc9749ed24792421119511',1,'stan::gm::local_var_decl_visgen']]], + ['generate_5finit_5fmethod',['generate_init_method',['../namespacestan_1_1gm.html#a208a651630210246d1cff43ebd3e7d0e',1,'stan::gm']]], + ['generate_5finit_5fvars',['generate_init_vars',['../namespacestan_1_1gm.html#a5e4c218a7d9e607732925c5a266a8f79',1,'stan::gm']]], + ['generate_5finit_5fvars_5fvisgen',['generate_init_vars_visgen',['../structstan_1_1gm_1_1generate__init__vars__visgen.html',1,'stan::gm']]], + ['generate_5finit_5fvars_5fvisgen',['generate_init_vars_visgen',['../structstan_1_1gm_1_1generate__init__vars__visgen.html#a74161c591ed31e81372e5adbf9ae48d3',1,'stan::gm::generate_init_vars_visgen']]], + ['generate_5finit_5fvisgen',['generate_init_visgen',['../structstan_1_1gm_1_1generate__init__visgen.html#a245dc3d8b132021896c5f17d90901dc4',1,'stan::gm::generate_init_visgen']]], + ['generate_5finit_5fvisgen',['generate_init_visgen',['../structstan_1_1gm_1_1generate__init__visgen.html',1,'stan::gm']]], + ['generate_5finitialization',['generate_initialization',['../namespacestan_1_1gm.html#a2a09040ccbbc3628b80d4b17278a9d02',1,'stan::gm']]], + ['generate_5finitialize_5farray',['generate_initialize_array',['../structstan_1_1gm_1_1init__local__var__visgen.html#a5779f760dc12ada7971f2d8c009d45f3',1,'stan::gm::init_local_var_visgen::generate_initialize_array()'],['../structstan_1_1gm_1_1write__csv__visgen.html#a2a171b9ce86cbc005df39f73a0914db3',1,'stan::gm::write_csv_visgen::generate_initialize_array()'],['../structstan_1_1gm_1_1write__array__visgen.html#a58d0d5f31f9a489b4cc23f5256f0b56f',1,'stan::gm::write_array_visgen::generate_initialize_array()']]], + ['generate_5finitialize_5farray_5fbounded',['generate_initialize_array_bounded',['../structstan_1_1gm_1_1init__local__var__visgen.html#a7efee35863c753717d4831e51d2f2419',1,'stan::gm::init_local_var_visgen::generate_initialize_array_bounded()'],['../structstan_1_1gm_1_1write__csv__visgen.html#adfabff813b3be4aa0d56dfe894ab1da4',1,'stan::gm::write_csv_visgen::generate_initialize_array_bounded()'],['../structstan_1_1gm_1_1write__array__visgen.html#a149aa727af8bfdd53d2e494eb75c9201',1,'stan::gm::write_array_visgen::generate_initialize_array_bounded()']]], + ['generate_5finitializer',['generate_initializer',['../namespacestan_1_1gm.html#ac3b48b7ab230ddd3d882103245827857',1,'stan::gm']]], + ['generate_5flocal_5fvar_5fdecls',['generate_local_var_decls',['../namespacestan_1_1gm.html#a258ce4643ff39bb93d455f8ae8698a8e',1,'stan::gm']]], + ['generate_5flocal_5fvar_5finit_5fnan',['generate_local_var_init_nan',['../namespacestan_1_1gm.html#a6b6842504d267f2ec759ad7b25e7fac3',1,'stan::gm']]], + ['generate_5flocal_5fvar_5finit_5fnan_5fvisgen',['generate_local_var_init_nan_visgen',['../structstan_1_1gm_1_1generate__local__var__init__nan__visgen.html#a49fb5d91eaa967066d5f5c39a64fa972',1,'stan::gm::generate_local_var_init_nan_visgen']]], + ['generate_5flocal_5fvar_5finit_5fnan_5fvisgen',['generate_local_var_init_nan_visgen',['../structstan_1_1gm_1_1generate__local__var__init__nan__visgen.html',1,'stan::gm']]], + ['generate_5flocal_5fvar_5finits',['generate_local_var_inits',['../namespacestan_1_1gm.html#a890d6d9cd0b21a64327ccf76a9a7e824',1,'stan::gm']]], + ['generate_5flog_5fprob',['generate_log_prob',['../namespacestan_1_1gm.html#a4d93a678fb6ead7a8554de1758f36034',1,'stan::gm']]], + ['generate_5floop_5fvar',['generate_loop_var',['../structstan_1_1gm_1_1validate__var__decl__visgen.html#ad480023da77dc0a07bd592377dde6479',1,'stan::gm::validate_var_decl_visgen']]], + ['generate_5fmain',['generate_main',['../namespacestan_1_1gm.html#a425cf99f39ca9123446a5192eeee83e0',1,'stan::gm']]], + ['generate_5fmember_5fvar_5fdecls',['generate_member_var_decls',['../namespacestan_1_1gm.html#a63d43e75db4c7e7ff2dda2d1036df363',1,'stan::gm']]], + ['generate_5fmember_5fvar_5finits',['generate_member_var_inits',['../namespacestan_1_1gm.html#adc65399d7375f831d8d4d806b62b6293',1,'stan::gm']]], + ['generate_5fmodel_5fname_5fmethod',['generate_model_name_method',['../namespacestan_1_1gm.html#a06761a1392734570a22e5a492141bce8',1,'stan::gm']]], + ['generate_5fname_5fdims',['generate_name_dims',['../structstan_1_1gm_1_1generate__init__visgen.html#aeb5f4afc816218d11e8e76222d766a08',1,'stan::gm::generate_init_visgen']]], + ['generate_5fparam_5fnames',['generate_param_names',['../structstan_1_1gm_1_1write__param__names__visgen.html#a2532b08b83077c52daedb50fc6864f44',1,'stan::gm::write_param_names_visgen']]], + ['generate_5fparam_5fnames_5farray',['generate_param_names_array',['../structstan_1_1gm_1_1constrained__param__names__visgen.html#a797d0bdd948219ece7f55b13d9ab5bff',1,'stan::gm::constrained_param_names_visgen::generate_param_names_array()'],['../structstan_1_1gm_1_1unconstrained__param__names__visgen.html#aa147cbae3df22ef747f281ccb73e8f4f',1,'stan::gm::unconstrained_param_names_visgen::generate_param_names_array()']]], + ['generate_5fparam_5fnames_5fmethod',['generate_param_names_method',['../namespacestan_1_1gm.html#a4c248f99b9df350026ff05c604181358',1,'stan::gm']]], + ['generate_5fprintable',['generate_printable',['../namespacestan_1_1gm.html#ae27bbd9b3b5dbc0f93bbcd9f198a46eb',1,'stan::gm']]], + ['generate_5fprivate_5fdecl',['generate_private_decl',['../namespacestan_1_1gm.html#a8c0b83999d50ab15f1c8503f33a3d47c',1,'stan::gm']]], + ['generate_5fpublic_5fdecl',['generate_public_decl',['../namespacestan_1_1gm.html#a30e9216cd9f5d025bcb3dde6aa0c86b0',1,'stan::gm']]], + ['generate_5fset_5fparam_5franges',['generate_set_param_ranges',['../namespacestan_1_1gm.html#a7ce48f574b608d4ecebac5dc7c3fe21e',1,'stan::gm']]], + ['generate_5fstart_5fnamespace',['generate_start_namespace',['../namespacestan_1_1gm.html#a297a49a54728e0866002eeb4350f46dd',1,'stan::gm']]], + ['generate_5fstatement',['generate_statement',['../namespacestan_1_1gm.html#ad06f7d19c1a004ec456362bd32369cc9',1,'stan::gm']]], + ['generate_5fstatements',['generate_statements',['../namespacestan_1_1gm.html#a09382dd26edd6d5095555b7b1dea2c6d',1,'stan::gm']]], + ['generate_5ftype',['generate_type',['../structstan_1_1gm_1_1local__var__decl__visgen.html#a9eac0e6e7549ecf508f56097b8beaaa5',1,'stan::gm::local_var_decl_visgen::generate_type()'],['../namespacestan_1_1gm.html#a513a251d0b3d2e80bc0b9e32ecfeea0d',1,'stan::gm::generate_type()']]], + ['generate_5ftypedef',['generate_typedef',['../namespacestan_1_1gm.html#a6150f8826fdd1742c1287552966cb6d0',1,'stan::gm']]], + ['generate_5ftypedefs',['generate_typedefs',['../namespacestan_1_1gm.html#a1515682780f226a7001d930fd2c1e1d0',1,'stan::gm']]], + ['generate_5funconstrained_5fparam_5fnames_5fmethod',['generate_unconstrained_param_names_method',['../namespacestan_1_1gm.html#a7caf37b3f443d37d400f9f647a5d4f7b',1,'stan::gm']]], + ['generate_5fusing',['generate_using',['../namespacestan_1_1gm.html#a8669bcb4fa524c442de23cedeb7aaa23',1,'stan::gm']]], + ['generate_5fusing_5fnamespace',['generate_using_namespace',['../namespacestan_1_1gm.html#aab6c7437ec473e5dbe083f86b1b059ae',1,'stan::gm']]], + ['generate_5fusings',['generate_usings',['../namespacestan_1_1gm.html#aa985aaef054c7f1af4a9628ef6a9155d',1,'stan::gm']]], + ['generate_5fvalidate_5fcontext_5fsize',['generate_validate_context_size',['../namespacestan_1_1gm.html#a33b21b6ece1a626d859d7d0e16bc0914',1,'stan::gm']]], + ['generate_5fvalidate_5fpositive',['generate_validate_positive',['../namespacestan_1_1gm.html#ae5e451a20922d72237b17635a04629c6',1,'stan::gm']]], + ['generate_5fvalidate_5ftransformed_5fparams',['generate_validate_transformed_params',['../namespacestan_1_1gm.html#ae40fee02e525b4599929a3898b14493a',1,'stan::gm']]], + ['generate_5fvalidate_5fvar_5fdecl',['generate_validate_var_decl',['../namespacestan_1_1gm.html#a52bae0dc2622d9a571205c83441d1bce',1,'stan::gm']]], + ['generate_5fvalidate_5fvar_5fdecls',['generate_validate_var_decls',['../namespacestan_1_1gm.html#a43655ffe4072e69181e20c6e5e3254cf',1,'stan::gm']]], + ['generate_5fvar_5fresizing',['generate_var_resizing',['../namespacestan_1_1gm.html#a3d65cdc4d78792bed25979830e67b9eb',1,'stan::gm']]], + ['generate_5fversion_5fcomment',['generate_version_comment',['../namespacestan_1_1gm.html#ad46a7bc5909963f3af53bb69c764c415',1,'stan::gm']]], + ['generate_5fvoid_5fstatement',['generate_void_statement',['../structstan_1_1gm_1_1local__var__decl__visgen.html#aa2abf6410868390e087ab93c583a5eaf',1,'stan::gm::local_var_decl_visgen::generate_void_statement()'],['../namespacestan_1_1gm.html#aa1deb42499e1aeaf64a3f66f7e08220e',1,'stan::gm::generate_void_statement()']]], + ['generate_5fwrite_5farray_5fmethod',['generate_write_array_method',['../namespacestan_1_1gm.html#a56f6bed9b4ff736ba8282d9cb81ff0c2',1,'stan::gm']]], + ['generate_5fwrite_5fcsv_5fheader_5fmethod',['generate_write_csv_header_method',['../namespacestan_1_1gm.html#a175fe5ebc2de7986e91d335a0f973642',1,'stan::gm']]], + ['generate_5fwrite_5fcsv_5fmethod',['generate_write_csv_method',['../namespacestan_1_1gm.html#a8576715fcf1c68be750ae6f9b5928923',1,'stan::gm']]], + ['generate_5fwrite_5floop',['generate_write_loop',['../structstan_1_1gm_1_1generate__init__visgen.html#a6a491ca19f67492859f69414e65c2859',1,'stan::gm::generate_init_visgen']]], + ['generated_5fdecl_5f',['generated_decl_',['../structstan_1_1gm_1_1program.html#a8317c188381639e8751e651c0cabccb3',1,'stan::gm::program']]], + ['generated_5fvar_5fdecls_5fr',['generated_var_decls_r',['../structstan_1_1gm_1_1program__grammar.html#a3cc3698f28d843ac60b46504c2171243',1,'stan::gm::program_grammar']]], + ['generator_2ehpp',['generator.hpp',['../generator_8hpp.html',1,'']]], + ['get',['get',['../structstan_1_1gm_1_1variable__map.html#af16b9b2424cf92cd3804908986d53ff1',1,'stan::gm::variable_map::get()'],['../namespacestan.html#a2e926e5518c0c2f289f79d23010815d3',1,'stan::get(const T &x, size_t n)'],['../namespacestan.html#a431bd201f09a215cccb16cda10a1e840',1,'stan::get(const std::vector< T > &x, size_t n)'],['../namespacestan.html#aa0b8055d979ee18e43048b99eccb5640',1,'stan::get(const Eigen::Matrix< T, R, C > &m, size_t n)']]], + ['get_5fbase1',['get_base1',['../namespacestan_1_1math.html#a7535c86e2c9ee9d5391a8cc63187317e',1,'stan::math::get_base1(const std::vector< T > &x, size_t i, const char *error_msg, size_t idx)'],['../namespacestan_1_1math.html#aca7c84b936da0d3422507927cf9a68cc',1,'stan::math::get_base1(const std::vector< std::vector< T > > &x, size_t i1, size_t i2, const char *error_msg, size_t idx)'],['../namespacestan_1_1math.html#a714e39ba9fcbbd90c787a51d511c9af1',1,'stan::math::get_base1(const std::vector< std::vector< std::vector< T > > > &x, size_t i1, size_t i2, size_t i3, const char *error_msg, size_t idx)'],['../namespacestan_1_1math.html#aa23b355397df347249da513307fd6667',1,'stan::math::get_base1(const std::vector< std::vector< std::vector< std::vector< T > > > > &x, size_t i1, size_t i2, size_t i3, size_t i4, const char *error_msg, size_t idx)'],['../namespacestan_1_1math.html#a25c1fac0445beea55c521c94f360e13e',1,'stan::math::get_base1(const std::vector< std::vector< std::vector< std::vector< std::vector< T > > > > > &x, size_t i1, size_t i2, size_t i3, size_t i4, size_t i5, const char *error_msg, size_t idx)'],['../namespacestan_1_1math.html#a20a82151947fc8816c5ce5b7bc6d8abd',1,'stan::math::get_base1(const std::vector< std::vector< std::vector< std::vector< std::vector< std::vector< T > > > > > > &x, size_t i1, size_t i2, size_t i3, size_t i4, size_t i5, size_t i6, const char *error_msg, size_t idx)'],['../namespacestan_1_1math.html#a6fb72caff19c8ce19dc6e3c25c79f7b8',1,'stan::math::get_base1(const std::vector< std::vector< std::vector< std::vector< std::vector< std::vector< std::vector< T > > > > > > > &x, size_t i1, size_t i2, size_t i3, size_t i4, size_t i5, size_t i6, size_t i7, const char *error_msg, size_t idx)'],['../namespacestan_1_1math.html#accc97dd76490d575638ebb22da233a53',1,'stan::math::get_base1(const std::vector< std::vector< std::vector< std::vector< std::vector< std::vector< std::vector< std::vector< T > > > > > > > > &x, size_t i1, size_t i2, size_t i3, size_t i4, size_t i5, size_t i6, size_t i7, size_t i8, const char *error_msg, size_t idx)'],['../namespacestan_1_1math.html#ae72208605f731144cab862feecb456a2',1,'stan::math::get_base1(const Eigen::Matrix< T, Eigen::Dynamic, Eigen::Dynamic > &x, size_t m, const char *error_msg, size_t idx)'],['../namespacestan_1_1math.html#a51091bb67549e42c241f4e08e7d291d6',1,'stan::math::get_base1(const Eigen::Matrix< T, Eigen::Dynamic, Eigen::Dynamic > &x, size_t m, size_t n, const char *error_msg, size_t idx)'],['../namespacestan_1_1math.html#ab0dbeed50ff3f8630ea3cd54f9ecb804',1,'stan::math::get_base1(const Eigen::Matrix< T, Eigen::Dynamic, 1 > &x, size_t m, const char *error_msg, size_t idx)'],['../namespacestan_1_1math.html#abf9dcd5236495d3f581b31dd05b9a227',1,'stan::math::get_base1(const Eigen::Matrix< T, 1, Eigen::Dynamic > &x, size_t n, const char *error_msg, size_t idx)']]], + ['get_5fbase1_2ehpp',['get_base1.hpp',['../get__base1_8hpp.html',1,'']]], + ['get_5fbase1_5flhs',['get_base1_lhs',['../namespacestan_1_1math.html#ac54b1427fd9d0765f0200dc9caa830f9',1,'stan::math::get_base1_lhs(std::vector< T > &x, size_t i, const char *error_msg, size_t idx)'],['../namespacestan_1_1math.html#a4d5711f99869d05a6263218f3256e582',1,'stan::math::get_base1_lhs(std::vector< std::vector< T > > &x, size_t i1, size_t i2, const char *error_msg, size_t idx)'],['../namespacestan_1_1math.html#a37f3ceaa6197904ef662f1edc8245e1a',1,'stan::math::get_base1_lhs(std::vector< std::vector< std::vector< T > > > &x, size_t i1, size_t i2, size_t i3, const char *error_msg, size_t idx)'],['../namespacestan_1_1math.html#a3132eb36eaf861cfbd119b38e0a85a15',1,'stan::math::get_base1_lhs(std::vector< std::vector< std::vector< std::vector< T > > > > &x, size_t i1, size_t i2, size_t i3, size_t i4, const char *error_msg, size_t idx)'],['../namespacestan_1_1math.html#afbcc061003aabcaf675f4415adc80c0a',1,'stan::math::get_base1_lhs(std::vector< std::vector< std::vector< std::vector< std::vector< T > > > > > &x, size_t i1, size_t i2, size_t i3, size_t i4, size_t i5, const char *error_msg, size_t idx)'],['../namespacestan_1_1math.html#a1958245532761be08be7ac9bc781f3a7',1,'stan::math::get_base1_lhs(std::vector< std::vector< std::vector< std::vector< std::vector< std::vector< T > > > > > > &x, size_t i1, size_t i2, size_t i3, size_t i4, size_t i5, size_t i6, const char *error_msg, size_t idx)'],['../namespacestan_1_1math.html#aedc7fc712ebe439bec1892c8f69447cd',1,'stan::math::get_base1_lhs(std::vector< std::vector< std::vector< std::vector< std::vector< std::vector< std::vector< T > > > > > > > &x, size_t i1, size_t i2, size_t i3, size_t i4, size_t i5, size_t i6, size_t i7, const char *error_msg, size_t idx)'],['../namespacestan_1_1math.html#a64467731d9abfaf97ea8d541d528142c',1,'stan::math::get_base1_lhs(std::vector< std::vector< std::vector< std::vector< std::vector< std::vector< std::vector< std::vector< T > > > > > > > > &x, size_t i1, size_t i2, size_t i3, size_t i4, size_t i5, size_t i6, size_t i7, size_t i8, const char *error_msg, size_t idx)'],['../namespacestan_1_1math.html#abbdd7246170c1c0cade6c7be73f436e0',1,'stan::math::get_base1_lhs(Eigen::Matrix< T, Eigen::Dynamic, Eigen::Dynamic > &x, size_t m, const char *error_msg, size_t idx)'],['../namespacestan_1_1math.html#af8cb7e6e670cddcdf5527ec92fa3ff37',1,'stan::math::get_base1_lhs(Eigen::Matrix< T, Eigen::Dynamic, Eigen::Dynamic > &x, size_t m, size_t n, const char *error_msg, size_t idx)'],['../namespacestan_1_1math.html#adffeab694f7588c92dc97b6736e5be7b',1,'stan::math::get_base1_lhs(Eigen::Matrix< T, Eigen::Dynamic, 1 > &x, size_t m, const char *error_msg, size_t idx)'],['../namespacestan_1_1math.html#a6133d90708e16760b6394c6ca6a305ff',1,'stan::math::get_base1_lhs(Eigen::Matrix< T, 1, Eigen::Dynamic > &x, size_t n, const char *error_msg, size_t idx)']]], + ['get_5fbase1_5flhs_2ehpp',['get_base1_lhs.hpp',['../get__base1__lhs_8hpp.html',1,'']]], + ['get_5fbase_5ftype',['get_base_type',['../structstan_1_1gm_1_1variable__map.html#aca8dd3f11c916e9f3e960da5a54fabcd',1,'stan::gm::variable_map']]], + ['get_5fcode_5fstring',['get_code_string',['../classstan_1_1optimization_1_1_b_f_g_s_minimizer.html#adc021871519f45628bdd50446e3d4075',1,'stan::optimization::BFGSMinimizer']]], + ['get_5fcovar_5fadaptation',['get_covar_adaptation',['../classstan_1_1mcmc_1_1stepsize__covar__adapter.html#a78b53fec4bef5a7ba2e7531f416ba3a1',1,'stan::mcmc::stepsize_covar_adapter']]], + ['get_5fcurrent_5fstepsize',['get_current_stepsize',['../classstan_1_1mcmc_1_1base__hmc.html#a6e9333e00268e9ea5e0145a17bfbe4d2',1,'stan::mcmc::base_hmc']]], + ['get_5fdelta',['get_delta',['../classstan_1_1mcmc_1_1stepsize__adaptation.html#a9b009709850567a0c8859c6184b79099',1,'stan::mcmc::stepsize_adaptation']]], + ['get_5fgamma',['get_gamma',['../classstan_1_1mcmc_1_1stepsize__adaptation.html#af73d1fae6249bec73f9a1b5d9993ff2f',1,'stan::mcmc::stepsize_adaptation']]], + ['get_5fkappa',['get_kappa',['../classstan_1_1mcmc_1_1stepsize__adaptation.html#aef3ef49e43ab17cd2d8c10a101603971',1,'stan::mcmc::stepsize_adaptation']]], + ['get_5fl',['get_L',['../classstan_1_1mcmc_1_1base__static__hmc.html#a0f7bee31ab516375f70c8b1857ecc095',1,'stan::mcmc::base_static_hmc']]], + ['get_5fmax_5fdelta',['get_max_delta',['../classstan_1_1mcmc_1_1base__nuts.html#a29db7ce203e322ba14d06fe99d05806e',1,'stan::mcmc::base_nuts']]], + ['get_5fmax_5fdepth',['get_max_depth',['../classstan_1_1mcmc_1_1base__nuts.html#aef3fb41adbe18bbd10f31be06075d0f8',1,'stan::mcmc::base_nuts']]], + ['get_5fmu',['get_mu',['../classstan_1_1mcmc_1_1stepsize__adaptation.html#ad39004ce73f47a9a08ad523333a142dc',1,'stan::mcmc::stepsize_adaptation']]], + ['get_5fnominal_5fstepsize',['get_nominal_stepsize',['../classstan_1_1mcmc_1_1base__hmc.html#a33aa7f0e7d733ca915e5bb4b77117fd1',1,'stan::mcmc::base_hmc']]], + ['get_5fnum_5fdims',['get_num_dims',['../structstan_1_1gm_1_1variable__map.html#a0aacb56aae39f1ee43126951336876ee',1,'stan::gm::variable_map']]], + ['get_5forigin',['get_origin',['../structstan_1_1gm_1_1variable__map.html#a489c5362720bcea3520b36b8fbf139c3',1,'stan::gm::variable_map']]], + ['get_5fparam_5fnames',['get_param_names',['../classstan_1_1mcmc_1_1ps__point.html#a3e1b059004a82c80200402ae840df17c',1,'stan::mcmc::ps_point']]], + ['get_5fparams',['get_params',['../classstan_1_1mcmc_1_1ps__point.html#a90335d3f5df5ffd758b7282ac55e2239',1,'stan::mcmc::ps_point']]], + ['get_5fresult_5ftype',['get_result_type',['../classstan_1_1gm_1_1function__signatures.html#ae14f96665097dc1c77f89750e73e8af9',1,'stan::gm::function_signatures']]], + ['get_5fsample_5fparam_5fnames',['get_sample_param_names',['../classstan_1_1mcmc_1_1sample.html#af9d0b064b26b744a8a3416726ed64ad0',1,'stan::mcmc::sample']]], + ['get_5fsample_5fparams',['get_sample_params',['../classstan_1_1mcmc_1_1sample.html#a0a0f69f242625c8f7d033cefae3b066c',1,'stan::mcmc::sample']]], + ['get_5fsampler_5fdiagnostic_5fnames',['get_sampler_diagnostic_names',['../classstan_1_1mcmc_1_1base__mcmc.html#a439ab0edaa1e186e5c0639dd30a367c7',1,'stan::mcmc::base_mcmc::get_sampler_diagnostic_names()'],['../classstan_1_1mcmc_1_1base__hmc.html#ab03fa8ffe91879f8bd8b364641c4de5a',1,'stan::mcmc::base_hmc::get_sampler_diagnostic_names()']]], + ['get_5fsampler_5fdiagnostics',['get_sampler_diagnostics',['../classstan_1_1mcmc_1_1base__mcmc.html#a0d3f7f318891d813a1b3f78a194aa060',1,'stan::mcmc::base_mcmc::get_sampler_diagnostics()'],['../classstan_1_1mcmc_1_1base__hmc.html#abcf75357ef756a2c74f9855386b3be47',1,'stan::mcmc::base_hmc::get_sampler_diagnostics()']]], + ['get_5fsampler_5fparam_5fnames',['get_sampler_param_names',['../classstan_1_1mcmc_1_1base__mcmc.html#aca923f3231a9487745a999d95b5923ce',1,'stan::mcmc::base_mcmc::get_sampler_param_names()'],['../classstan_1_1mcmc_1_1base__nuts.html#a1f1085f2b4bd6b4e94fbce9f43243a6c',1,'stan::mcmc::base_nuts::get_sampler_param_names()'],['../classstan_1_1mcmc_1_1base__static__hmc.html#a101e66c9b73da1301847477ace7caebb',1,'stan::mcmc::base_static_hmc::get_sampler_param_names()']]], + ['get_5fsampler_5fparams',['get_sampler_params',['../classstan_1_1mcmc_1_1base__mcmc.html#af599911f5d38fbf91c4a475b0d27c1b6',1,'stan::mcmc::base_mcmc::get_sampler_params()'],['../classstan_1_1mcmc_1_1base__nuts.html#a7b804d04e40e371e8d543e78a6b1fc12',1,'stan::mcmc::base_nuts::get_sampler_params()'],['../classstan_1_1mcmc_1_1base__static__hmc.html#a743d29144c3d7f6159995f71524abff9',1,'stan::mcmc::base_static_hmc::get_sampler_params()']]], + ['get_5fstepsize_5fadaptation',['get_stepsize_adaptation',['../classstan_1_1mcmc_1_1stepsize__adapter.html#afc1a82938cba4951ea63cc983ae77844',1,'stan::mcmc::stepsize_adapter::get_stepsize_adaptation()'],['../classstan_1_1mcmc_1_1stepsize__covar__adapter.html#a84390e298b70ce828d8e04ebdad63d56',1,'stan::mcmc::stepsize_covar_adapter::get_stepsize_adaptation()'],['../classstan_1_1mcmc_1_1stepsize__var__adapter.html#af38b99277aa2cf9af8bbf69c1e683c0a',1,'stan::mcmc::stepsize_var_adapter::get_stepsize_adaptation()']]], + ['get_5fstepsize_5fjitter',['get_stepsize_jitter',['../classstan_1_1mcmc_1_1base__hmc.html#a17660d32d37d39df87f49ed0e8f97262',1,'stan::mcmc::base_hmc']]], + ['get_5ft',['get_T',['../classstan_1_1mcmc_1_1base__static__hmc.html#a2c983e383003ed37eccb11bcaef22179',1,'stan::mcmc::base_static_hmc']]], + ['get_5ft0',['get_t0',['../classstan_1_1mcmc_1_1stepsize__adaptation.html#a12f4547328cdc7a469d3369568954d14',1,'stan::mcmc::stepsize_adaptation']]], + ['get_5fvar_5fadaptation',['get_var_adaptation',['../classstan_1_1mcmc_1_1stepsize__var__adapter.html#a63d086dbff4db90650091784bd48e54a',1,'stan::mcmc::stepsize_var_adapter']]], + ['gm_2ehpp',['gm.hpp',['../gm_8hpp.html',1,'']]], + ['grad',['grad',['../classstan_1_1agrad_1_1var.html#adafe2731ffff76ed74a84299633d70ac',1,'stan::agrad::var::grad(std::vector< var > &x, std::vector< double > &g)'],['../classstan_1_1agrad_1_1var.html#a14d0349fa31df6ae544165b40cd01d94',1,'stan::agrad::var::grad()'],['../classstan_1_1agrad_1_1var.html#adafe2731ffff76ed74a84299633d70ac',1,'stan::agrad::var::grad(std::vector< var > &x, std::vector< double > &g)'],['../classstan_1_1agrad_1_1var.html#a14d0349fa31df6ae544165b40cd01d94',1,'stan::agrad::var::grad()'],['../classstan_1_1optimization_1_1_b_f_g_s_line_search.html#a800198f26824c242a030d7ab838b0a2c',1,'stan::optimization::BFGSLineSearch::grad()'],['../classstan_1_1optimization_1_1_nesterov_gradient.html#a0b4971e472f7ab5708535a9a87d8fc9c',1,'stan::optimization::NesterovGradient::grad()'],['../namespacestan_1_1agrad.html#a1fb22c831a12e8fea76ef7ee0bd32cb3',1,'stan::agrad::grad(chainable *vi)'],['../namespacestan_1_1agrad.html#aab9a3ff45fadad49e4797f3687ab7e8a',1,'stan::agrad::grad(var &v, Eigen::Matrix< var, Eigen::Dynamic, 1 > &x, Eigen::VectorXd &g)'],['../namespacestan_1_1agrad.html#a1fb22c831a12e8fea76ef7ee0bd32cb3',1,'stan::agrad::grad(chainable *vi)']]], + ['grad_2ehpp',['grad.hpp',['../grad_8hpp.html',1,'']]], + ['grad2f1',['grad2F1',['../namespacestan_1_1math.html#a71aed6cfebd1e7a926130982018cfefe',1,'stan::math']]], + ['grad_5fevals',['grad_evals',['../classstan_1_1optimization_1_1_b_f_g_s_line_search.html#aa39e8aa1b28762bd358986c11c67838a',1,'stan::optimization::BFGSLineSearch']]], + ['grad_5fhess_5flog_5fprob',['grad_hess_log_prob',['../namespacestan_1_1model.html#ad83f35a2e6e0b78d505d8128dee49588',1,'stan::model']]], + ['grad_5fnorm',['grad_norm',['../classstan_1_1optimization_1_1_b_f_g_s_line_search.html#ae9f74939356da68cdb2763647fe5f1b7',1,'stan::optimization::BFGSLineSearch']]], + ['grad_5ftr_5fmat_5ftimes_5fhessian',['grad_tr_mat_times_hessian',['../namespacestan_1_1agrad.html#acba3577a92618529775046335dc015ac',1,'stan::agrad::grad_tr_mat_times_hessian()'],['../namespacestan_1_1model.html#ac9f018a163d9dc97339f88d82664ce73',1,'stan::model::grad_tr_mat_times_hessian()']]], + ['gradf32',['gradF32',['../namespacestan_1_1math.html#a8db199c237a3b502dccc197db9dfcd7d',1,'stan::math']]], + ['gradient',['gradient',['../namespacestan_1_1agrad.html#a3a0d7a65cb491249a40ce309b4c74433',1,'stan::agrad::gradient(const F &f, const Eigen::Matrix< double, Eigen::Dynamic, 1 > &x, double &fx, Eigen::Matrix< double, Eigen::Dynamic, 1 > &grad_fx)'],['../namespacestan_1_1agrad.html#a90556a6034444a74ac3859ab41d79334',1,'stan::agrad::gradient(const F &f, const Eigen::Matrix< T, Eigen::Dynamic, 1 > &x, T &fx, Eigen::Matrix< T, Eigen::Dynamic, 1 > &grad_fx)'],['../namespacestan_1_1model.html#ab4e546deccf701b0255fc6ffee22848c',1,'stan::model::gradient()']]], + ['gradient_5fdot_5fvector',['gradient_dot_vector',['../namespacestan_1_1agrad.html#a193936962d2fceadcf578dd09b127776',1,'stan::agrad::gradient_dot_vector()'],['../namespacestan_1_1model.html#a3fbd2cae4a29ea16ebe9c60597d2d84e',1,'stan::model::gradient_dot_vector()']]], + ['gradients_5f',['gradients_',['../classstan_1_1agrad_1_1precomputed__gradients__vari.html#aa4f445b1847ec700de7460c4615d4d6f',1,'stan::agrad::precomputed_gradients_vari']]], + ['gradincbeta',['gradIncBeta',['../namespacestan_1_1math.html#a6e61bf2a2523eac620649be1b836f6af',1,'stan::math']]], + ['gradregincbeta',['gradRegIncBeta',['../namespacestan_1_1math.html#a748e297c3c711bde9cd125cdc873dc8d',1,'stan::math']]], + ['gradregincgamma',['gradRegIncGamma',['../namespacestan_1_1math.html#a55877c24977357ef441acc0b37f6b337',1,'stan::math']]], + ['gumbel_2ehpp',['gumbel.hpp',['../gumbel_8hpp.html',1,'']]], + ['gumbel_5fccdf_5flog',['gumbel_ccdf_log',['../namespacestan_1_1prob.html#a7031408cb549ef6e62d05a0e23050913',1,'stan::prob']]], + ['gumbel_5fcdf',['gumbel_cdf',['../namespacestan_1_1prob.html#a51c9e75ef3d9f0aa113b1dff27bfd5f8',1,'stan::prob']]], + ['gumbel_5fcdf_5flog',['gumbel_cdf_log',['../namespacestan_1_1prob.html#af3a4abf9379ede54947a4a46c520a286',1,'stan::prob']]], + ['gumbel_5flog',['gumbel_log',['../namespacestan_1_1prob.html#ad56fe89a003692852a43ed83e9020ade',1,'stan::prob::gumbel_log(const T_y &y, const T_loc &mu, const T_scale &beta)'],['../namespacestan_1_1prob.html#a09ae16a393bdb54599b3e0794e626df0',1,'stan::prob::gumbel_log(const T_y &y, const T_loc &mu, const T_scale &beta)']]], + ['gumbel_5frng',['gumbel_rng',['../namespacestan_1_1prob.html#a717c41a1a31ff84f523df17a4e894c23',1,'stan::prob']]] +]; diff --git a/doc/api/html/search/all_68.html b/doc/api/html/search/all_68.html new file mode 100644 index 00000000000..6df9097825d --- /dev/null +++ b/doc/api/html/search/all_68.html @@ -0,0 +1,25 @@ + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/doc/api/html/search/all_68.js b/doc/api/html/search/all_68.js new file mode 100644 index 00000000000..60c2d85680a --- /dev/null +++ b/doc/api/html/search/all_68.js @@ -0,0 +1,38 @@ +var searchData= +[ + ['h',['H',['../classstan_1_1mcmc_1_1base__hamiltonian.html#abb069ceb36c44afad1ba03f97e8a097d',1,'stan::mcmc::base_hamiltonian']]], + ['h0',['H0',['../structstan_1_1mcmc_1_1nuts__util.html#a083059897da783bc5a50a483b3d1a183',1,'stan::mcmc::nuts_util']]], + ['has_5fdenorm',['has_denorm',['../structstd_1_1numeric__limits_3_01stan_1_1agrad_1_1fvar_3_01_t_01_4_01_4.html#ab74374d12ef2fd157e9da0da9bca17aa',1,'std::numeric_limits< stan::agrad::fvar< T > >::has_denorm()'],['../structstd_1_1numeric__limits_3_01stan_1_1agrad_1_1var_01_4.html#a39f58441200febe35d15375e04002318',1,'std::numeric_limits< stan::agrad::var >::has_denorm()']]], + ['has_5fdenorm_5floss',['has_denorm_loss',['../structstd_1_1numeric__limits_3_01stan_1_1agrad_1_1fvar_3_01_t_01_4_01_4.html#ac1de307325406b40bd2aa6753c8b77a4',1,'std::numeric_limits< stan::agrad::fvar< T > >::has_denorm_loss()'],['../structstd_1_1numeric__limits_3_01stan_1_1agrad_1_1var_01_4.html#a07a601c0d75d68be0894f1ec263261ee',1,'std::numeric_limits< stan::agrad::var >::has_denorm_loss()']]], + ['has_5fflag',['has_flag',['../classstan_1_1io_1_1cmd__line.html#a2d24eb7b0df0df0f9237e722c9935344',1,'stan::io::cmd_line']]], + ['has_5fhigh',['has_high',['../structstan_1_1gm_1_1range.html#a4fd2933ba84accb4d4df4fa7af5570b8',1,'stan::gm::range']]], + ['has_5finfinity',['has_infinity',['../structstd_1_1numeric__limits_3_01stan_1_1agrad_1_1fvar_3_01_t_01_4_01_4.html#a4900fc01499241dbb808e1ab376c8f20',1,'std::numeric_limits< stan::agrad::fvar< T > >::has_infinity()'],['../structstd_1_1numeric__limits_3_01stan_1_1agrad_1_1var_01_4.html#ac994e94ce600838a8387132c7b11e481',1,'std::numeric_limits< stan::agrad::var >::has_infinity()']]], + ['has_5fkey',['has_key',['../classstan_1_1io_1_1cmd__line.html#a6d18234501f15e832c610807519091bc',1,'stan::io::cmd_line']]], + ['has_5flb',['has_lb',['../namespacestan_1_1gm.html#a5f8f794036a1282d39160c8005350fb6',1,'stan::gm']]], + ['has_5flow',['has_low',['../structstan_1_1gm_1_1range.html#a5602af4e9ea366a5c256798a372f7d26',1,'stan::gm::range']]], + ['has_5flub',['has_lub',['../namespacestan_1_1gm.html#a354abd99f7fd052b3be9e590a90f51af',1,'stan::gm']]], + ['has_5fnon_5fparam_5fvar',['has_non_param_var',['../namespacestan_1_1gm.html#a5cd24fa3880414fae68b9f140341781c',1,'stan::gm']]], + ['has_5fquiet_5fnan',['has_quiet_NaN',['../structstd_1_1numeric__limits_3_01stan_1_1agrad_1_1fvar_3_01_t_01_4_01_4.html#a3d523ce5c3189091d5a7e108cdc4d0fa',1,'std::numeric_limits< stan::agrad::fvar< T > >::has_quiet_NaN()'],['../structstd_1_1numeric__limits_3_01stan_1_1agrad_1_1var_01_4.html#a636301ed6183639045a28156565e7d98',1,'std::numeric_limits< stan::agrad::var >::has_quiet_NaN()']]], + ['has_5frng_5fsuffix',['has_rng_suffix',['../namespacestan_1_1gm.html#adbc7bd18dc8464af8d3deee3dc1119de',1,'stan::gm']]], + ['has_5fsignaling_5fnan',['has_signaling_NaN',['../structstd_1_1numeric__limits_3_01stan_1_1agrad_1_1fvar_3_01_t_01_4_01_4.html#a9e18e0a8ae010b0eab03652a91df9073',1,'std::numeric_limits< stan::agrad::fvar< T > >::has_signaling_NaN()'],['../structstd_1_1numeric__limits_3_01stan_1_1agrad_1_1var_01_4.html#af303ec0e4b68e63d6d0a3c5962af28f0',1,'std::numeric_limits< stan::agrad::var >::has_signaling_NaN()']]], + ['has_5fub',['has_ub',['../namespacestan_1_1gm.html#af96a2f3903f1feab3fce868fefee250b',1,'stan::gm']]], + ['has_5fvar',['has_var',['../namespacestan_1_1gm.html#a2fd9d0472225916eae17d19fde00fe30',1,'stan::gm']]], + ['hasfloatingpoint',['HasFloatingPoint',['../struct_eigen_1_1_num_traits_3_01stan_1_1agrad_1_1var_01_4.html#a932a61195daad3e89711cfb02521cac9a60d738ff8c60f58fe3a03d2909498a6e',1,'Eigen::NumTraits< stan::agrad::var >']]], + ['head',['head',['../namespacestan_1_1math.html#a140b54b11069aed039f67c6dd172256b',1,'stan::math::head(const Eigen::Matrix< T, Eigen::Dynamic, 1 > &v, size_t n)'],['../namespacestan_1_1math.html#a4d7964d83597ea54cd7ba63bee50409f',1,'stan::math::head(const Eigen::Matrix< T, 1, Eigen::Dynamic > &rv, size_t n)'],['../namespacestan_1_1math.html#a5e746ba14994b318a0a192a97a0a28db',1,'stan::math::head(const std::vector< T > &sv, size_t n)']]], + ['head_2ehpp',['head.hpp',['../head_8hpp.html',1,'']]], + ['header',['header',['../structstan_1_1io_1_1stan__csv.html#afacde95dde068821de91fc137eb86515',1,'stan::io::stan_csv']]], + ['help_5fprinted',['help_printed',['../classstan_1_1gm_1_1argument__parser.html#a97217b4fce24caa4f13f01366ba7eede',1,'stan::gm::argument_parser']]], + ['help_5fwidth',['help_width',['../classstan_1_1gm_1_1argument.html#a1604ff4589c7f92728663ce1c4709c3b',1,'stan::gm::argument']]], + ['hessian',['hessian',['../namespacestan_1_1agrad.html#a757135302068c250c2379b0c13a28e2e',1,'stan::agrad::hessian(const F &f, const Eigen::Matrix< double, Eigen::Dynamic, 1 > &x, double &fx, Eigen::Matrix< double, Eigen::Dynamic, 1 > &grad, Eigen::Matrix< double, Eigen::Dynamic, Eigen::Dynamic > &H)'],['../namespacestan_1_1agrad.html#ae0c1250f021e0a792f89308da1798c52',1,'stan::agrad::hessian(const F &f, const Eigen::Matrix< T, Eigen::Dynamic, 1 > &x, T &fx, Eigen::Matrix< T, Eigen::Dynamic, 1 > &grad, Eigen::Matrix< T, Eigen::Dynamic, Eigen::Dynamic > &H)'],['../namespacestan_1_1agrad.html#a7bb9b2db82474a079e4fe1cfe980f41b',1,'stan::agrad::hessian(const F &f, const std::vector< double > &x, const std::vector< double > &v, std::vector< double > &Hv)'],['../namespacestan_1_1model.html#a060489d342b8fd3139e7df33b4a01170',1,'stan::model::hessian()']]], + ['hessian_2ehpp',['hessian.hpp',['../hessian_8hpp.html',1,'']]], + ['hessian_5ftimes_5fvector',['hessian_times_vector',['../namespacestan_1_1agrad.html#a65e3ff9debccf35476fd084b965c3eb1',1,'stan::agrad::hessian_times_vector(const F &f, const Eigen::Matrix< double, Eigen::Dynamic, 1 > &x, const Eigen::Matrix< double, Eigen::Dynamic, 1 > &v, double &fx, Eigen::Matrix< double, Eigen::Dynamic, 1 > &Hv)'],['../namespacestan_1_1agrad.html#a410d4227fbb881a70b80ae5d110dafe9',1,'stan::agrad::hessian_times_vector(const F &f, const Eigen::Matrix< T, Eigen::Dynamic, 1 > &x, const Eigen::Matrix< T, Eigen::Dynamic, 1 > &v, T &fx, Eigen::Matrix< T, Eigen::Dynamic, 1 > &Hv)'],['../namespacestan_1_1model.html#a2b836ad2524ecb1b50f465d6305f88d2',1,'stan::model::hessian_times_vector()']]], + ['hessiant',['HessianT',['../classstan_1_1optimization_1_1_b_f_g_s_minimizer.html#a80b2c5e6ef5839aa3a580a9a9a37de64',1,'stan::optimization::BFGSMinimizer']]], + ['high_5f',['high_',['../structstan_1_1gm_1_1range.html#a1b2c5b66107277bccac20593700fce54',1,'stan::gm::range']]], + ['highest',['highest',['../struct_eigen_1_1_num_traits_3_01stan_1_1agrad_1_1var_01_4.html#a91c90fce61fb31c3a9bc079ff8a07d35',1,'Eigen::NumTraits< stan::agrad::var >']]], + ['hypergeometric_2ehpp',['hypergeometric.hpp',['../hypergeometric_8hpp.html',1,'']]], + ['hypergeometric_5flog',['hypergeometric_log',['../namespacestan_1_1prob.html#a66e4f57cee9af34a961de0ff06cbd778',1,'stan::prob::hypergeometric_log(const T_n &n, const T_N &N, const T_a &a, const T_b &b)'],['../namespacestan_1_1prob.html#aa8045ba7d2d74aa5142128b020ef91f9',1,'stan::prob::hypergeometric_log(const T_n &n, const T_N &N, const T_a &a, const T_b &b)']]], + ['hypergeometric_5frng',['hypergeometric_rng',['../namespacestan_1_1prob.html#ac1f5eb0ed8be3298f817d5f5b976144d',1,'stan::prob']]], + ['hypot',['hypot',['../namespacestan_1_1agrad.html#abefe7efd440d029f4ae53c723c1835cf',1,'stan::agrad::hypot(const fvar< T > &x1, const fvar< T > &x2)'],['../namespacestan_1_1agrad.html#afaa49a34b4a0d6977cacc4eed74aa276',1,'stan::agrad::hypot(const fvar< T > &x1, const double x2)'],['../namespacestan_1_1agrad.html#a8ec2045c8ca3af2bc0f411819e287108',1,'stan::agrad::hypot(const double x1, const fvar< T > &x2)'],['../namespacestan_1_1agrad.html#aca9ecbd3c8db717865343fe7dc363490',1,'stan::agrad::hypot(const stan::agrad::var &a, const stan::agrad::var &b)'],['../namespacestan_1_1agrad.html#a4671da443c63a084e9511fc3dad810c6',1,'stan::agrad::hypot(const stan::agrad::var &a, const double &b)'],['../namespacestan_1_1agrad.html#a6b4379c4eaaa6367836430274d82a06b',1,'stan::agrad::hypot(const double &a, const stan::agrad::var &b)']]], + ['hypot_2ehpp',['hypot.hpp',['../fwd_2functions_2hypot_8hpp.html',1,'']]], + ['hypot_2ehpp',['hypot.hpp',['../rev_2functions_2hypot_8hpp.html',1,'']]] +]; diff --git a/doc/api/html/search/all_69.html b/doc/api/html/search/all_69.html new file mode 100644 index 00000000000..1a00b554d45 --- /dev/null +++ b/doc/api/html/search/all_69.html @@ -0,0 +1,25 @@ + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/doc/api/html/search/all_69.js b/doc/api/html/search/all_69.js new file mode 100644 index 00000000000..1b4dd5340aa --- /dev/null +++ b/doc/api/html/search/all_69.js @@ -0,0 +1,171 @@ +var searchData= +[ + ['ibeta',['ibeta',['../namespacestan_1_1agrad.html#a54d4bc3e46a75315a2c098c3d4e0b3f4',1,'stan::agrad::ibeta()'],['../namespacestan_1_1math.html#af7b430ac57e75ba2d55843cd868506e1',1,'stan::math::ibeta()']]], + ['ibeta_2ehpp',['ibeta.hpp',['../math_2functions_2ibeta_8hpp.html',1,'']]], + ['ibeta_2ehpp',['ibeta.hpp',['../agrad_2rev_2functions_2ibeta_8hpp.html',1,'']]], + ['identifier_5fname_5fr',['identifier_name_r',['../structstan_1_1gm_1_1var__decls__grammar.html#abe3a037eddfdf6c101755e4fc09436f9',1,'stan::gm::var_decls_grammar']]], + ['identifier_5fr',['identifier_r',['../structstan_1_1gm_1_1statement__grammar.html#a416d3908d9a67cf4d3a9b5774475fee1',1,'stan::gm::statement_grammar::identifier_r()'],['../structstan_1_1gm_1_1term__grammar.html#a58df34f539d1aa793e3cc607350bd9f3',1,'stan::gm::term_grammar::identifier_r()'],['../structstan_1_1gm_1_1var__decls__grammar.html#a633a9520c7d6578925fe33bc0106db7f',1,'stan::gm::var_decls_grammar::identifier_r()']]], + ['identity_5fconstrain',['identity_constrain',['../namespacestan_1_1prob.html#ad85151d68bb1f8edbdc64960cf14a86e',1,'stan::prob::identity_constrain(T x)'],['../namespacestan_1_1prob.html#a2efcd423525f2b20c28888283eb41079',1,'stan::prob::identity_constrain(const T x, T &)']]], + ['identity_5ffree',['identity_free',['../namespacestan_1_1prob.html#ae9e2475641a356dc2b0b103f5152eb84',1,'stan::prob']]], + ['idx_5f',['idx_',['../agrad_2rev_2matrix_2log__softmax_8hpp.html#a48e1ddf96b6a9b19ecead9aca544bb31',1,'idx_(): log_softmax.hpp'],['../agrad_2rev_2matrix_2softmax_8hpp.html#a48e1ddf96b6a9b19ecead9aca544bb31',1,'idx_(): softmax.hpp']]], + ['idx_5ft',['idx_t',['../classstan_1_1optimization_1_1_b_f_g_s_line_search.html#afa2cfdf9357f5d63982f8ff00b4c6916',1,'stan::optimization::BFGSLineSearch']]], + ['if_5felse',['if_else',['../namespacestan_1_1agrad.html#a2a018c9770257f38d93125db6c7eda5f',1,'stan::agrad::if_else(bool c, const var &y_true, const var &y_false)'],['../namespacestan_1_1agrad.html#a2b19777661eada4e32b7d84b64c9f4db',1,'stan::agrad::if_else(bool c, double y_true, const var &y_false)'],['../namespacestan_1_1agrad.html#a86ce2dc25f73176ea45b300a9cfd63eb',1,'stan::agrad::if_else(bool c, const var &y_true, const double y_false)'],['../namespacestan_1_1math.html#aa732732442d65936275d718b7286cb51',1,'stan::math::if_else()']]], + ['if_5felse_2ehpp',['if_else.hpp',['../agrad_2rev_2functions_2if__else_8hpp.html',1,'']]], + ['if_5felse_2ehpp',['if_else.hpp',['../math_2functions_2if__else_8hpp.html',1,'']]], + ['ill_5fformed_5ft',['ILL_FORMED_T',['../namespacestan_1_1gm.html#a41679a8cc9b047f5ce5aea48a4d6800a',1,'stan::gm']]], + ['include_5fsampling_5f',['include_sampling_',['../structstan_1_1gm_1_1statement__visgen.html#a021d7d6fb6d86d0d05f91fead1b7beaf',1,'stan::gm::statement_visgen']]], + ['include_5fsummand',['include_summand',['../structstan_1_1prob_1_1include__summand.html',1,'stan::prob']]], + ['increment_5flog_5fprob_5fstatement',['increment_log_prob_statement',['../structstan_1_1gm_1_1increment__log__prob__statement.html#a7cac1e4c4bf79fce11fc836ab1ea0cc1',1,'stan::gm::increment_log_prob_statement::increment_log_prob_statement()'],['../structstan_1_1gm_1_1increment__log__prob__statement.html#ab828f581d60e699e3fa1ea4f82fa24eb',1,'stan::gm::increment_log_prob_statement::increment_log_prob_statement(const expression &log_prob)']]], + ['increment_5flog_5fprob_5fstatement',['increment_log_prob_statement',['../structstan_1_1gm_1_1increment__log__prob__statement.html',1,'stan::gm']]], + ['increment_5flog_5fprob_5fstatement_5fr',['increment_log_prob_statement_r',['../structstan_1_1gm_1_1statement__grammar.html#a63ae1e77864d40c126f8f5f2ea389c92',1,'stan::gm::statement_grammar']]], + ['indent',['INDENT',['../namespacestan_1_1gm.html#a0c2dcd808a0d9ba32a552d5da9449dad',1,'stan::gm']]], + ['indent2',['INDENT2',['../namespacestan_1_1gm.html#ac233ed8139ded7c35ee0583d7840914a',1,'stan::gm']]], + ['indent3',['INDENT3',['../namespacestan_1_1gm.html#a6ff34cca044609d9dd669dcc9c992c60',1,'stan::gm']]], + ['indent_5f',['indent_',['../structstan_1_1gm_1_1generate__local__var__init__nan__visgen.html#a74906d451df5f65a04ae1d0125ed7e76',1,'stan::gm::generate_local_var_init_nan_visgen::indent_()'],['../structstan_1_1gm_1_1generate__init__vars__visgen.html#a647f2748887eb08a54ae5c79617ef662',1,'stan::gm::generate_init_vars_visgen::indent_()'],['../structstan_1_1gm_1_1statement__visgen.html#ae4c1610db98461ae144b353bcee4ef0c',1,'stan::gm::statement_visgen::indent_()']]], + ['indent_5fwidth',['indent_width',['../classstan_1_1gm_1_1argument.html#a63234e5b668b59bda3c18c3ade793332',1,'stan::gm::argument']]], + ['indents_5f',['indents_',['../structstan_1_1gm_1_1validate__var__decl__visgen.html#a68936cf8226f63807082c4c9201b659c',1,'stan::gm::validate_var_decl_visgen::indents_()'],['../structstan_1_1gm_1_1member__var__decl__visgen.html#a4e3a93b4b15745447bcc0f25c71c2818',1,'stan::gm::member_var_decl_visgen::indents_()'],['../structstan_1_1gm_1_1local__var__decl__visgen.html#a684598c909a697b029cbd625574b473a',1,'stan::gm::local_var_decl_visgen::indents_()'],['../structstan_1_1gm_1_1validate__transformed__params__visgen.html#abbc7f7f70068b351832f9ed884bd700e',1,'stan::gm::validate_transformed_params_visgen::indents_()']]], + ['index',['index',['../classstan_1_1mcmc_1_1chains.html#ab87d44365c2f2a83afc9351020bfc3ed',1,'stan::mcmc::chains']]], + ['index_5fop',['index_op',['../structstan_1_1gm_1_1index__op.html#a862956865d36615fa28089dea1d1217d',1,'stan::gm::index_op::index_op()'],['../structstan_1_1gm_1_1index__op.html#a12f574d13a3b1d3d34c536cb8d7d6aa2',1,'stan::gm::index_op::index_op(const expression &expr, const std::vector< std::vector< expression > > &dimss)']]], + ['index_5fop',['index_op',['../structstan_1_1gm_1_1index__op.html',1,'stan::gm']]], + ['indexed_5ffactor_5fr',['indexed_factor_r',['../structstan_1_1gm_1_1term__grammar.html#a2423c5db80eac040aa5a28db10db99cf',1,'stan::gm::term_grammar']]], + ['infer_5ftype',['infer_type',['../structstan_1_1gm_1_1fun.html#a20f538c7866f306aa80274fddebf727d',1,'stan::gm::fun::infer_type()'],['../structstan_1_1gm_1_1index__op.html#a529d7cb01f9d404a881fda27c82dc460',1,'stan::gm::index_op::infer_type()']]], + ['infer_5ftype_5findexing',['infer_type_indexing',['../namespacestan_1_1gm.html#a17574edb8e226bfd71f69da1d4f97168',1,'stan::gm::infer_type_indexing(const base_expr_type &expr_base_type, size_t num_expr_dims, size_t num_index_dims)'],['../namespacestan_1_1gm.html#a46f979229875f1d6d427dbbe87fa8a59',1,'stan::gm::infer_type_indexing(const expression &expr, size_t num_index_dims)']]], + ['infinity',['infinity',['../structstd_1_1numeric__limits_3_01stan_1_1agrad_1_1fvar_3_01_t_01_4_01_4.html#ad148a929c21b1747b25cecd70cf212cf',1,'std::numeric_limits< stan::agrad::fvar< T > >::infinity()'],['../structstd_1_1numeric__limits_3_01stan_1_1agrad_1_1var_01_4.html#ad4b150d32c6d506c86f20072a9bcfa57',1,'std::numeric_limits< stan::agrad::var >::infinity()']]], + ['infty',['INFTY',['../namespacestan_1_1math.html#a7f2ac8ebf3095e9934715bb34f0669b3',1,'stan::math']]], + ['init',['init',['../structstan_1_1io_1_1stan__csv__metadata.html#ad962db2e20c7b01804ed3e2553cca168',1,'stan::io::stan_csv_metadata::init()'],['../classstan_1_1mcmc_1_1base__hamiltonian.html#a43a6071f6c711fc9e2980515c3223d10',1,'stan::mcmc::base_hamiltonian::init()']]], + ['init_5fadapt',['init_adapt',['../namespacestan_1_1gm.html#ab49a5fee3bf2cacd63f0ce7e252a6a93',1,'stan::gm::init_adapt(Sampler *sampler, const double delta, const double gamma, const double kappa, const double t0, const Eigen::VectorXd &cont_params)'],['../namespacestan_1_1gm.html#ae3483b7eb32848c5bee0ee48b431f46e',1,'stan::gm::init_adapt(stan::mcmc::base_mcmc *sampler, categorical_argument *adapt, const Eigen::VectorXd &cont_params)']]], + ['init_5fdependent',['init_dependent',['../classstan_1_1agrad_1_1chainable.html#a9ef6020dcc949b73c1c3dfb1d4623bae',1,'stan::agrad::chainable::init_dependent()'],['../classstan_1_1agrad_1_1vari.html#ac668b532eb7eb33af863dfb035c0b8dc',1,'stan::agrad::vari::init_dependent()']]], + ['init_5flocal_5fvar_5fvisgen',['init_local_var_visgen',['../structstan_1_1gm_1_1init__local__var__visgen.html',1,'stan::gm']]], + ['init_5flocal_5fvar_5fvisgen',['init_local_var_visgen',['../structstan_1_1gm_1_1init__local__var__visgen.html#a25c03b95d95240b52cf0b06801478a87',1,'stan::gm::init_local_var_visgen']]], + ['init_5fnuts',['init_nuts',['../namespacestan_1_1gm.html#aaa8e6ed991ef6bf3b5afc96b953e18ca',1,'stan::gm']]], + ['init_5fstatic_5fhmc',['init_static_hmc',['../namespacestan_1_1gm.html#ad9e999952303f4c193f24b063ff55d91',1,'stan::gm']]], + ['init_5fstepsize',['init_stepsize',['../classstan_1_1mcmc_1_1base__hmc.html#a6ec1af08b215fda50b23dade2aa615a8',1,'stan::mcmc::base_hmc']]], + ['init_5fwindowed_5fadapt',['init_windowed_adapt',['../namespacestan_1_1gm.html#a5121125c3b419aa099ab6fca8cb9d1c6',1,'stan::gm']]], + ['initialize',['initialize',['../classstan_1_1optimization_1_1_b_f_g_s_minimizer.html#a1b31f5b47ab4af27c17ab8f620aaf914',1,'stan::optimization::BFGSMinimizer::initialize()'],['../namespacestan_1_1math.html#af81e05dfd6918524dafff10715f21a8d',1,'stan::math::initialize(T &x, const T &v)'],['../namespacestan_1_1math.html#a067af584ff2d244d2041c9b13f6d9247',1,'stan::math::initialize(T &x, V v)'],['../namespacestan_1_1math.html#aa2d6d42a356af95988b3a7005b5cf408',1,'stan::math::initialize(Eigen::Matrix< T, R, C > &x, const T &v)'],['../namespacestan_1_1math.html#ad27706378f77dc22746ad74721d495d4',1,'stan::math::initialize(std::vector< T > &x, const V &v)']]], + ['initialize_2ehpp',['initialize.hpp',['../initialize_8hpp.html',1,'']]], + ['initialize_5fepsilon',['initialize_epsilon',['../classstan_1_1optimization_1_1_nesterov_gradient.html#af4dd5e1558ecf25c7a0bb57cb4e71c90',1,'stan::optimization::NesterovGradient']]], + ['initialize_5fvariable',['initialize_variable',['../namespacestan_1_1agrad.html#ae4df62fded6cf60ac4928f942190f39d',1,'stan::agrad::initialize_variable(var &variable, const var &value)'],['../namespacestan_1_1agrad.html#a6de2168e9cf12f2dad32a9a823b385a6',1,'stan::agrad::initialize_variable(Eigen::Matrix< var, R, C > &matrix, const var &value)'],['../namespacestan_1_1agrad.html#a15a79398931d22105e55c92dc3b8c6be',1,'stan::agrad::initialize_variable(std::vector< T > &variables, const var &value)']]], + ['initialize_5fvariable_2ehpp',['initialize_variable.hpp',['../initialize__variable_8hpp.html',1,'']]], + ['instance',['instance',['../classstan_1_1gm_1_1function__signatures.html#a7f9782621df19462a0f088d0cf1542ff',1,'stan::gm::function_signatures']]], + ['int_5fargument',['int_argument',['../namespacestan_1_1gm.html#ab772327341c716a591776dda31107ee7',1,'stan::gm']]], + ['int_5fdecl_5fr',['int_decl_r',['../structstan_1_1gm_1_1var__decls__grammar.html#a95017547beb96098c7578e64b8b278eb',1,'stan::gm::var_decls_grammar']]], + ['int_5fliteral',['int_literal',['../structstan_1_1gm_1_1int__literal.html#a621c688b553f3f113f9b8ec9dc007ac8',1,'stan::gm::int_literal::int_literal()'],['../structstan_1_1gm_1_1int__literal.html#ae1dde9e342981c83edcc3832b10a19ca',1,'stan::gm::int_literal::int_literal(int val)'],['../structstan_1_1gm_1_1int__literal.html#aad91821fd816aa1be8b6313a12898141',1,'stan::gm::int_literal::int_literal(const int_literal &il)']]], + ['int_5fliteral',['int_literal',['../structstan_1_1gm_1_1int__literal.html',1,'stan::gm']]], + ['int_5fliteral_5fr',['int_literal_r',['../structstan_1_1gm_1_1term__grammar.html#a74cece98c11632b9d78665d719908735',1,'stan::gm::term_grammar']]], + ['int_5fstep',['int_step',['../namespacestan_1_1math.html#a8c507cff4b7b473cd86e1d428fb03136',1,'stan::math']]], + ['int_5fstep_2ehpp',['int_step.hpp',['../int__step_8hpp.html',1,'']]], + ['int_5ft',['INT_T',['../namespacestan_1_1gm.html#a2da21cb21d76a1fbafe6857e23e37b5b',1,'stan::gm']]], + ['int_5fvalues',['int_values',['../classstan_1_1io_1_1dump__reader.html#a595a2345787b84d1cb763c5f45a2c749',1,'stan::io::dump_reader']]], + ['int_5fvar_5fdecl',['int_var_decl',['../structstan_1_1gm_1_1int__var__decl.html#a47be885b904c190c2cdeae110ff4ca1c',1,'stan::gm::int_var_decl::int_var_decl()'],['../structstan_1_1gm_1_1int__var__decl.html#a8f08077bdf5b897c09ee679149eebd8a',1,'stan::gm::int_var_decl::int_var_decl(range const &range, std::string const &name, std::vector< expression > const &dims)']]], + ['int_5fvar_5fdecl',['int_var_decl',['../structstan_1_1gm_1_1int__var__decl.html',1,'stan::gm']]], + ['integer',['integer',['../classstan_1_1io_1_1reader.html#af1a2b111d918d34bfebf6bb3b821495f',1,'stan::io::reader::integer()'],['../classstan_1_1io_1_1writer.html#a5614adc99ab468fdc3957c6444df46c7',1,'stan::io::writer::integer()']]], + ['integer_5fconstrain',['integer_constrain',['../classstan_1_1io_1_1reader.html#aeccd55003bc47a1eade2c75c20d0d13f',1,'stan::io::reader::integer_constrain()'],['../classstan_1_1io_1_1reader.html#a41d16a67c77fa38a5da05da6b4eb563f',1,'stan::io::reader::integer_constrain(T &)']]], + ['integer_5flb',['integer_lb',['../classstan_1_1io_1_1reader.html#a1535fc6c26ecedd2aa25989853a09261',1,'stan::io::reader']]], + ['integer_5flb_5fconstrain',['integer_lb_constrain',['../classstan_1_1io_1_1reader.html#a9287c3669f5eea0a5b2f22708d26da67',1,'stan::io::reader::integer_lb_constrain(int lb)'],['../classstan_1_1io_1_1reader.html#a786ee459470898a8fbc8a240dec6f269',1,'stan::io::reader::integer_lb_constrain(int lb, T &)']]], + ['integer_5flub',['integer_lub',['../classstan_1_1io_1_1reader.html#af9be53bcf3f435d5c25b07774853afa3',1,'stan::io::reader']]], + ['integer_5flub_5fconstrain',['integer_lub_constrain',['../classstan_1_1io_1_1reader.html#aa73203544d85c8e7f4a6e682edb8db4f',1,'stan::io::reader::integer_lub_constrain(int lb, int ub)'],['../classstan_1_1io_1_1reader.html#a0934519cf50d98a616b4e3a0bc9539fc',1,'stan::io::reader::integer_lub_constrain(int lb, int ub, T &)']]], + ['integer_5fub',['integer_ub',['../classstan_1_1io_1_1reader.html#a5dce1d461bcef2fda9d996fb07bb6782',1,'stan::io::reader']]], + ['integer_5fub_5fconstrain',['integer_ub_constrain',['../classstan_1_1io_1_1reader.html#aa492d17e0aeaba5a082fc554d248048e',1,'stan::io::reader::integer_ub_constrain(int ub)'],['../classstan_1_1io_1_1reader.html#ad23ce5d0b04667272770eb04eff2bfd4',1,'stan::io::reader::integer_ub_constrain(int ub, T &)']]], + ['internal_2ehpp',['internal.hpp',['../internal_8hpp.html',1,'']]], + ['internal_5fmath_2ehpp',['internal_math.hpp',['../internal__math_8hpp.html',1,'']]], + ['inv',['inv',['../namespacestan_1_1agrad.html#a08b011331905f0a026fa4270582fe5d5',1,'stan::agrad::inv(const fvar< T > &x)'],['../namespacestan_1_1agrad.html#ab3034b6e4ac96bb83a5b6f40c310d64d',1,'stan::agrad::inv(const var &a)'],['../namespacestan_1_1math.html#ab64935e0bdac8227bfd9608285d4e699',1,'stan::math::inv()']]], + ['inv_2ehpp',['inv.hpp',['../agrad_2fwd_2functions_2inv_8hpp.html',1,'']]], + ['inv_2ehpp',['inv.hpp',['../agrad_2rev_2functions_2inv_8hpp.html',1,'']]], + ['inv_2ehpp',['inv.hpp',['../math_2functions_2inv_8hpp.html',1,'']]], + ['inv_5fchi_5fsquare_2ehpp',['inv_chi_square.hpp',['../inv__chi__square_8hpp.html',1,'']]], + ['inv_5fchi_5fsquare_5fccdf_5flog',['inv_chi_square_ccdf_log',['../namespacestan_1_1prob.html#a51e89cc15295d67eba75dfb4ccdbe27c',1,'stan::prob']]], + ['inv_5fchi_5fsquare_5fcdf',['inv_chi_square_cdf',['../namespacestan_1_1prob.html#ad68b6e115796a534a753491eae9744cb',1,'stan::prob']]], + ['inv_5fchi_5fsquare_5fcdf_5flog',['inv_chi_square_cdf_log',['../namespacestan_1_1prob.html#a624df4d53f7a8d24a4014e1e57ccaf3c',1,'stan::prob']]], + ['inv_5fchi_5fsquare_5flog',['inv_chi_square_log',['../namespacestan_1_1prob.html#ad6fd48ecb4e2a0cc22225cff5a7997e2',1,'stan::prob::inv_chi_square_log(const T_y &y, const T_dof &nu)'],['../namespacestan_1_1prob.html#a4c772dff5074551415e50920347b83cd',1,'stan::prob::inv_chi_square_log(const T_y &y, const T_dof &nu)']]], + ['inv_5fchi_5fsquare_5frng',['inv_chi_square_rng',['../namespacestan_1_1prob.html#ad7d3c06abef9546ac2f0a9174f1446fa',1,'stan::prob']]], + ['inv_5fcloglog',['inv_cloglog',['../namespacestan_1_1agrad.html#a14ec5b6590b42a6405fa06a34105ce84',1,'stan::agrad::inv_cloglog(const fvar< T > &x)'],['../namespacestan_1_1agrad.html#afa07068a7659049c1404ff6e380176ef',1,'stan::agrad::inv_cloglog(const stan::agrad::var &a)'],['../namespacestan_1_1math.html#a008bf0b6c2ab38d088b0aba5d7b10c8d',1,'stan::math::inv_cloglog()']]], + ['inv_5fcloglog_2ehpp',['inv_cloglog.hpp',['../math_2functions_2inv__cloglog_8hpp.html',1,'']]], + ['inv_5fcloglog_2ehpp',['inv_cloglog.hpp',['../agrad_2fwd_2functions_2inv__cloglog_8hpp.html',1,'']]], + ['inv_5fcloglog_2ehpp',['inv_cloglog.hpp',['../agrad_2rev_2functions_2inv__cloglog_8hpp.html',1,'']]], + ['inv_5fgamma_2ehpp',['inv_gamma.hpp',['../inv__gamma_8hpp.html',1,'']]], + ['inv_5fgamma_5fccdf_5flog',['inv_gamma_ccdf_log',['../namespacestan_1_1prob.html#ac95b1a5f812a121f1fce3120f54caabc',1,'stan::prob']]], + ['inv_5fgamma_5fcdf',['inv_gamma_cdf',['../namespacestan_1_1prob.html#a9295ef95ac9022168eff6748495294bf',1,'stan::prob']]], + ['inv_5fgamma_5fcdf_5flog',['inv_gamma_cdf_log',['../namespacestan_1_1prob.html#af5bc8f367605c27867cc93ec4f7b19d9',1,'stan::prob']]], + ['inv_5fgamma_5flog',['inv_gamma_log',['../namespacestan_1_1prob.html#a94f9022a58b4d16ac6eac9edc8c1cecc',1,'stan::prob::inv_gamma_log(const T_y &y, const T_shape &alpha, const T_scale &beta)'],['../namespacestan_1_1prob.html#a5aada55fa2a26ebfc6d38a1c5a2dc956',1,'stan::prob::inv_gamma_log(const T_y &y, const T_shape &alpha, const T_scale &beta)']]], + ['inv_5fgamma_5frng',['inv_gamma_rng',['../namespacestan_1_1prob.html#af588e525e8543ac66f21b5273196deaf',1,'stan::prob']]], + ['inv_5flogit',['inv_logit',['../namespacestan_1_1agrad.html#ab812d33218848139b280e30cd8863ac2',1,'stan::agrad::inv_logit(const fvar< T > &x)'],['../namespacestan_1_1agrad.html#a015c1e0733bd9a3d7c26175d7072a759',1,'stan::agrad::inv_logit(const stan::agrad::var &a)'],['../namespacestan_1_1math.html#ad2c4834fc581f55acf8491ec3f80ecb7',1,'stan::math::inv_logit()']]], + ['inv_5flogit_2ehpp',['inv_logit.hpp',['../agrad_2fwd_2functions_2inv__logit_8hpp.html',1,'']]], + ['inv_5flogit_2ehpp',['inv_logit.hpp',['../math_2functions_2inv__logit_8hpp.html',1,'']]], + ['inv_5flogit_2ehpp',['inv_logit.hpp',['../agrad_2rev_2functions_2inv__logit_8hpp.html',1,'']]], + ['inv_5fsqrt',['inv_sqrt',['../namespacestan_1_1agrad.html#a17ce517fb5ec226947603b3dfbbc235b',1,'stan::agrad::inv_sqrt(const fvar< T > &x)'],['../namespacestan_1_1agrad.html#aac8f303b29b23f9952c2ad5ada543319',1,'stan::agrad::inv_sqrt(const var &a)'],['../namespacestan_1_1math.html#a4b4db5e98585c71cc7c14319f96e0c04',1,'stan::math::inv_sqrt()']]], + ['inv_5fsqrt_2ehpp',['inv_sqrt.hpp',['../agrad_2fwd_2functions_2inv__sqrt_8hpp.html',1,'']]], + ['inv_5fsqrt_2ehpp',['inv_sqrt.hpp',['../agrad_2rev_2functions_2inv__sqrt_8hpp.html',1,'']]], + ['inv_5fsqrt_2ehpp',['inv_sqrt.hpp',['../math_2functions_2inv__sqrt_8hpp.html',1,'']]], + ['inv_5fsqrt_5f2',['INV_SQRT_2',['../namespacestan_1_1math.html#a5491e346d5a812af988f8de4a5948c88',1,'stan::math']]], + ['inv_5fsqrt_5ftwo_5fpi',['INV_SQRT_TWO_PI',['../namespacestan_1_1math.html#a44d54686aa26009d0e9101be42afd877',1,'stan::math']]], + ['inv_5fsquare',['inv_square',['../namespacestan_1_1agrad.html#ad0cd65a6699f1fa471523ecef19102b4',1,'stan::agrad::inv_square(const fvar< T > &x)'],['../namespacestan_1_1agrad.html#ab283916863ab97eab6aed628480f8a8b',1,'stan::agrad::inv_square(const var &a)'],['../namespacestan_1_1math.html#a3d2e922aa13e2dfae510fc13d86eaea3',1,'stan::math::inv_square()']]], + ['inv_5fsquare_2ehpp',['inv_square.hpp',['../agrad_2fwd_2functions_2inv__square_8hpp.html',1,'']]], + ['inv_5fsquare_2ehpp',['inv_square.hpp',['../agrad_2rev_2functions_2inv__square_8hpp.html',1,'']]], + ['inv_5fsquare_2ehpp',['inv_square.hpp',['../math_2functions_2inv__square_8hpp.html',1,'']]], + ['inv_5fwishart_2ehpp',['inv_wishart.hpp',['../inv__wishart_8hpp.html',1,'']]], + ['inv_5fwishart_5flog',['inv_wishart_log',['../namespacestan_1_1prob.html#a3052d1f67722328b643b7adb1fbae485',1,'stan::prob::inv_wishart_log(const Eigen::Matrix< T_y, Eigen::Dynamic, Eigen::Dynamic > &W, const T_dof &nu, const Eigen::Matrix< T_scale, Eigen::Dynamic, Eigen::Dynamic > &S)'],['../namespacestan_1_1prob.html#ad6efba06df0f3ccf2455b60bc7bbbdef',1,'stan::prob::inv_wishart_log(const Eigen::Matrix< T_y, Eigen::Dynamic, Eigen::Dynamic > &W, const T_dof &nu, const Eigen::Matrix< T_scale, Eigen::Dynamic, Eigen::Dynamic > &S)']]], + ['inv_5fwishart_5frng',['inv_wishart_rng',['../namespacestan_1_1prob.html#a6c0745153ef776d59ddac99f480972e5',1,'stan::prob']]], + ['inverse',['inverse',['../classstan_1_1math_1_1_l_d_l_t__factor_3_01double_00_01_r_00_01_c_01_4.html#ac4f64ce4ad745b09bbb59113697760f4',1,'stan::math::LDLT_factor< double, R, C >::inverse()'],['../namespacestan_1_1agrad.html#ad04d66a7b2f44ae630c904534a43687a',1,'stan::agrad::inverse()'],['../namespacestan_1_1math.html#a461598c914f5634fa5057da7a817803d',1,'stan::math::inverse()']]], + ['inverse_2ehpp',['inverse.hpp',['../agrad_2fwd_2matrix_2inverse_8hpp.html',1,'']]], + ['inverse_2ehpp',['inverse.hpp',['../math_2matrix_2inverse_8hpp.html',1,'']]], + ['inverse_5fsoftmax',['inverse_softmax',['../namespacestan_1_1math.html#a1edc35cc581dda178263f6a4a4fd1158',1,'stan::math']]], + ['inverse_5fsoftmax_2ehpp',['inverse_softmax.hpp',['../inverse__softmax_8hpp.html',1,'']]], + ['inverse_5fspd',['inverse_spd',['../namespacestan_1_1math.html#a989989548db02c34cd6134790bd93478',1,'stan::math']]], + ['inverse_5fspd_2ehpp',['inverse_spd.hpp',['../inverse__spd_8hpp.html',1,'']]], + ['io_2ehpp',['io.hpp',['../io_8hpp.html',1,'']]], + ['is_5faligned',['is_aligned',['../namespacestan_1_1memory.html#a952ba61b6936bdcad3955ec1f5e6ef8f',1,'stan::memory']]], + ['is_5fbounded',['is_bounded',['../structstd_1_1numeric__limits_3_01stan_1_1agrad_1_1fvar_3_01_t_01_4_01_4.html#a00d51ca94f9c0e1b616831de051cbb5d',1,'std::numeric_limits< stan::agrad::fvar< T > >::is_bounded()'],['../structstd_1_1numeric__limits_3_01stan_1_1agrad_1_1var_01_4.html#a0e9247bdf394e889d350e1440ec16838',1,'std::numeric_limits< stan::agrad::var >::is_bounded()']]], + ['is_5fconstant',['is_constant',['../structstan_1_1is__constant.html',1,'stan']]], + ['is_5fconstant_5fstruct',['is_constant_struct',['../structstan_1_1is__constant__struct.html',1,'stan']]], + ['is_5fconstant_5fstruct_3c_20eigen_3a_3ablock_3c_20t_20_3e_20_3e',['is_constant_struct< Eigen::Block< T > >',['../structstan_1_1is__constant__struct_3_01_eigen_1_1_block_3_01_t_01_4_01_4.html',1,'stan']]], + ['is_5fconstant_5fstruct_3c_20eigen_3a_3amatrix_3c_20t_2c_20r_2c_20c_20_3e_20_3e',['is_constant_struct< Eigen::Matrix< T, R, C > >',['../structstan_1_1is__constant__struct_3_01_eigen_1_1_matrix_3_01_t_00_01_r_00_01_c_01_4_01_4.html',1,'stan']]], + ['is_5fconstant_5fstruct_3c_20std_3a_3avector_3c_20t_20_3e_20_3e',['is_constant_struct< std::vector< T > >',['../structstan_1_1is__constant__struct_3_01std_1_1vector_3_01_t_01_4_01_4.html',1,'stan']]], + ['is_5fdefault',['is_default',['../classstan_1_1gm_1_1list__argument.html#a1f1d85337d7e4d67ef688997d8418dbd',1,'stan::gm::list_argument::is_default()'],['../classstan_1_1gm_1_1singleton__argument.html#a6ea5538fe5533addc1f6795a4ac1eb49',1,'stan::gm::singleton_argument::is_default()'],['../classstan_1_1gm_1_1valued__argument.html#af72ce3805416a25c51304b5448dae967',1,'stan::gm::valued_argument::is_default()']]], + ['is_5fdouble_5freturn',['is_double_return',['../structstan_1_1gm_1_1validate__sample.html#a457fa512cf1ad5c13e3c1fb0e02e9adf',1,'stan::gm::validate_sample']]], + ['is_5fexact',['is_exact',['../structstd_1_1numeric__limits_3_01stan_1_1agrad_1_1fvar_3_01_t_01_4_01_4.html#aad19ba909c19a94944d95dd1b08d1710',1,'std::numeric_limits< stan::agrad::fvar< T > >::is_exact()'],['../structstd_1_1numeric__limits_3_01stan_1_1agrad_1_1var_01_4.html#aaf190bf85cc7519a8a1b14e14c97da00',1,'std::numeric_limits< stan::agrad::var >::is_exact()']]], + ['is_5ffvar',['is_fvar',['../structstan_1_1is__fvar.html',1,'stan']]], + ['is_5ffvar_3c_20stan_3a_3aagrad_3a_3afvar_3c_20t_20_3e_20_3e',['is_fvar< stan::agrad::fvar< T > >',['../structstan_1_1is__fvar_3_01stan_1_1agrad_1_1fvar_3_01_t_01_4_01_4.html',1,'stan']]], + ['is_5fiec559',['is_iec559',['../structstd_1_1numeric__limits_3_01stan_1_1agrad_1_1fvar_3_01_t_01_4_01_4.html#ade091447063275d7c0b78ee66ff60cf5',1,'std::numeric_limits< stan::agrad::fvar< T > >::is_iec559()'],['../structstd_1_1numeric__limits_3_01stan_1_1agrad_1_1var_01_4.html#ae82edc8f86c529ccf0160b314a551d2f',1,'std::numeric_limits< stan::agrad::var >::is_iec559()']]], + ['is_5fill_5fformed',['is_ill_formed',['../structstan_1_1gm_1_1expr__type.html#af9a85e43e814f13ccadd9640308b86de',1,'stan::gm::expr_type::is_ill_formed()'],['../structstan_1_1gm_1_1sample.html#ab2f55c7ff636a10cc46e1d86c401041d',1,'stan::gm::sample::is_ill_formed()']]], + ['is_5fint',['is_int',['../classstan_1_1io_1_1dump__reader.html#a17c0c96ad8cb3c3c362fa74384b45bb7',1,'stan::io::dump_reader']]], + ['is_5finteger',['is_integer',['../structstd_1_1numeric__limits_3_01stan_1_1agrad_1_1fvar_3_01_t_01_4_01_4.html#a0bab63fa64809576a620da21303d0811',1,'std::numeric_limits< stan::agrad::fvar< T > >::is_integer()'],['../structstd_1_1numeric__limits_3_01stan_1_1agrad_1_1var_01_4.html#a0fa54365a3bc3ca63ad1eeb4ca90aa99',1,'std::numeric_limits< stan::agrad::var >::is_integer()']]], + ['is_5fmatrix',['is_matrix',['../print_8hpp.html#a4405283b10c32553e10a7273d2a4f9d8',1,'print.hpp']]], + ['is_5fmodulo',['is_modulo',['../structstd_1_1numeric__limits_3_01stan_1_1agrad_1_1fvar_3_01_t_01_4_01_4.html#ad516d6dd56d51063f07ba00a55a40c61',1,'std::numeric_limits< stan::agrad::fvar< T > >::is_modulo()'],['../structstd_1_1numeric__limits_3_01stan_1_1agrad_1_1var_01_4.html#a03869da904ea370a26159a4b5b44552c',1,'std::numeric_limits< stan::agrad::var >::is_modulo()']]], + ['is_5fnil',['is_nil',['../namespacestan_1_1gm.html#a90e5f154350b02c39f381659672f9581',1,'stan::gm']]], + ['is_5fnil_5fop',['is_nil_op',['../structstan_1_1gm_1_1is__nil__op.html',1,'stan::gm']]], + ['is_5fnonempty',['is_nonempty',['../namespacestan_1_1gm.html#a9cb045831aff85e2a5bc5d51bfc6584a',1,'stan::gm']]], + ['is_5fpresent',['is_present',['../classstan_1_1gm_1_1unvalued__argument.html#a87b246d97afb366e67ae99984dc4540e',1,'stan::gm::unvalued_argument']]], + ['is_5fprimitive',['is_primitive',['../structstan_1_1gm_1_1expr__type.html#a28728288384b1c9510ffe1a3cbb5efa3',1,'stan::gm::expr_type']]], + ['is_5fprimitive_5fdouble',['is_primitive_double',['../structstan_1_1gm_1_1expr__type.html#a01d1300672955a943b60f1f7220371a7',1,'stan::gm::expr_type']]], + ['is_5fprimitive_5fint',['is_primitive_int',['../structstan_1_1gm_1_1expr__type.html#a745e55e1e245badd91138475f8f7bddb',1,'stan::gm::expr_type']]], + ['is_5fsigned',['is_signed',['../structstd_1_1numeric__limits_3_01stan_1_1agrad_1_1fvar_3_01_t_01_4_01_4.html#a233290aa081cce7372665d112465e6aa',1,'std::numeric_limits< stan::agrad::fvar< T > >::is_signed()'],['../structstd_1_1numeric__limits_3_01stan_1_1agrad_1_1var_01_4.html#a4c82808a270534c93824fa6ad9d03654',1,'std::numeric_limits< stan::agrad::var >::is_signed()']]], + ['is_5fspace',['is_space',['../namespacestan_1_1gm.html#a68fe0b83fbaa4ec1300a89f5097127b3',1,'stan::gm']]], + ['is_5fspecialized',['is_specialized',['../structstd_1_1numeric__limits_3_01stan_1_1agrad_1_1fvar_3_01_t_01_4_01_4.html#a1376e2f62fedbf5cabaa9ee991faaca4',1,'std::numeric_limits< stan::agrad::fvar< T > >::is_specialized()'],['../structstd_1_1numeric__limits_3_01stan_1_1agrad_1_1var_01_4.html#ae66652be3cbe3f3b88a06b3a036e47cf',1,'std::numeric_limits< stan::agrad::var >::is_specialized()']]], + ['is_5funinitialized',['is_uninitialized',['../classstan_1_1agrad_1_1var.html#ab7764c9ed32774d35c18d512d5c96f96',1,'stan::agrad::var::is_uninitialized()'],['../namespacestan_1_1agrad.html#a72761c1c17a04122ee2dbb0c56cbb9c0',1,'stan::agrad::is_uninitialized()'],['../namespacestan_1_1math.html#a40c14c26dc55a985e05695b3ff1eeef2',1,'stan::math::is_uninitialized()']]], + ['is_5funinitialized_2ehpp',['is_uninitialized.hpp',['../agrad_2rev_2functions_2is__uninitialized_8hpp.html',1,'']]], + ['is_5funinitialized_2ehpp',['is_uninitialized.hpp',['../math_2functions_2is__uninitialized_8hpp.html',1,'']]], + ['is_5funivariate',['is_univariate',['../structstan_1_1gm_1_1validate__sample.html#aca344bafbf0b16055bc48307645f4c81',1,'stan::gm::validate_sample']]], + ['is_5fvalid',['is_valid',['../classstan_1_1gm_1_1arg__adapt__delta.html#a916005859f965aabc1d829a7062ec424',1,'stan::gm::arg_adapt_delta::is_valid()'],['../classstan_1_1gm_1_1arg__adapt__gamma.html#a6fe8d59b8c1315ee5c6dc6b466698e19',1,'stan::gm::arg_adapt_gamma::is_valid()'],['../classstan_1_1gm_1_1arg__adapt__kappa.html#a1b03b095c18343b8932d36aca1211e12',1,'stan::gm::arg_adapt_kappa::is_valid()'],['../classstan_1_1gm_1_1arg__adapt__t0.html#a98cacbc166aa6b2ceb14094dddc7fad6',1,'stan::gm::arg_adapt_t0::is_valid()'],['../classstan_1_1gm_1_1arg__id.html#a477cdfd1a053c2e7b63bdadada63ff60',1,'stan::gm::arg_id::is_valid()'],['../classstan_1_1gm_1_1arg__init__alpha.html#ac40372ef2c1cbe5d9ede053b1014c003',1,'stan::gm::arg_init_alpha::is_valid()'],['../classstan_1_1gm_1_1arg__int__time.html#a71716eb472c59395c6de8cbca1755c00',1,'stan::gm::arg_int_time::is_valid()'],['../classstan_1_1gm_1_1arg__iter.html#a390a002c014d9d88c41ab5b224b0e771',1,'stan::gm::arg_iter::is_valid()'],['../classstan_1_1gm_1_1arg__max__depth.html#a30a8bb165ba3b981ab802337641bbe60',1,'stan::gm::arg_max_depth::is_valid()'],['../classstan_1_1gm_1_1arg__num__samples.html#aeca6a105ba2ef2e80ec02969bd581af2',1,'stan::gm::arg_num_samples::is_valid()'],['../classstan_1_1gm_1_1arg__num__warmup.html#a3671f012b8c32dbc0cc470db0be437ff',1,'stan::gm::arg_num_warmup::is_valid()'],['../classstan_1_1gm_1_1arg__refresh.html#a2ea73528686bcd3386826638346a7173',1,'stan::gm::arg_refresh::is_valid()'],['../classstan_1_1gm_1_1arg__stepsize.html#a39d1b37895f28567618958d5b7df849d',1,'stan::gm::arg_stepsize::is_valid()'],['../classstan_1_1gm_1_1arg__stepsize__jitter.html#acf9b3e56f3f411ecf82e0af58f05517d',1,'stan::gm::arg_stepsize_jitter::is_valid()'],['../classstan_1_1gm_1_1arg__test__grad__eps.html#aa547cb6de6ea0e76098b79cce8e94cf7',1,'stan::gm::arg_test_grad_eps::is_valid()'],['../classstan_1_1gm_1_1arg__test__grad__err.html#a449f28acf765be6f6998f1fabebc7b40',1,'stan::gm::arg_test_grad_err::is_valid()'],['../classstan_1_1gm_1_1arg__thin.html#a98ba3e88a6641e25ca08d3c35ca68e68',1,'stan::gm::arg_thin::is_valid()'],['../classstan_1_1gm_1_1arg__tolerance.html#a003c31f5f93a8a7f77ec46b7c9e2420c',1,'stan::gm::arg_tolerance::is_valid()'],['../classstan_1_1gm_1_1singleton__argument.html#a007c5b0d3f9498c45089075bb0c3c390',1,'stan::gm::singleton_argument::is_valid()']]], + ['is_5fvar',['is_var',['../structstan_1_1is__var.html',1,'stan']]], + ['is_5fvar_3c_20stan_3a_3aagrad_3a_3avar_20_3e',['is_var< stan::agrad::var >',['../structstan_1_1is__var_3_01stan_1_1agrad_1_1var_01_4.html',1,'stan']]], + ['is_5fvar_5f',['is_var_',['../structstan_1_1gm_1_1init__local__var__visgen.html#a06307f8a9f7b1ef4c6d8823d23e355e8',1,'stan::gm::init_local_var_visgen::is_var_()'],['../structstan_1_1gm_1_1local__var__decl__visgen.html#abe44f6bbd4ad19111fd011c02dd228bb',1,'stan::gm::local_var_decl_visgen::is_var_()'],['../structstan_1_1gm_1_1generate__local__var__init__nan__visgen.html#af0d41615f91253c476b881ee7e90134e',1,'stan::gm::generate_local_var_init_nan_visgen::is_var_()'],['../structstan_1_1gm_1_1statement__visgen.html#ad951339b35d33e87ee6900f7423c1592',1,'stan::gm::statement_visgen::is_var_()']]], + ['is_5fvar_5for_5farithmetic',['is_var_or_arithmetic',['../structstan_1_1is__var__or__arithmetic.html',1,'stan']]], + ['is_5fvector',['is_vector',['../structstan_1_1is__vector.html',1,'stan']]], + ['is_5fvector_3c_20const_20t_20_3e',['is_vector< const T >',['../structstan_1_1is__vector_3_01const_01_t_01_4.html',1,'stan']]], + ['is_5fvector_3c_20eigen_3a_3amatrix_3c_20t_2c_201_2c_20eigen_3a_3adynamic_20_3e_20_3e',['is_vector< Eigen::Matrix< T, 1, Eigen::Dynamic > >',['../structstan_1_1is__vector_3_01_eigen_1_1_matrix_3_01_t_00_011_00_01_eigen_1_1_dynamic_01_4_01_4.html',1,'stan']]], + ['is_5fvector_3c_20eigen_3a_3amatrix_3c_20t_2c_20eigen_3a_3adynamic_2c_201_20_3e_20_3e',['is_vector< Eigen::Matrix< T, Eigen::Dynamic, 1 > >',['../structstan_1_1is__vector_3_01_eigen_1_1_matrix_3_01_t_00_01_eigen_1_1_dynamic_00_011_01_4_01_4.html',1,'stan']]], + ['is_5fvector_3c_20std_3a_3avector_3c_20t_20_3e_20_3e',['is_vector< std::vector< T > >',['../structstan_1_1is__vector_3_01std_1_1vector_3_01_t_01_4_01_4.html',1,'stan']]], + ['is_5fvector_5flike',['is_vector_like',['../structstan_1_1is__vector__like.html',1,'stan']]], + ['is_5fvector_5flike_3c_20const_20t_20_3e',['is_vector_like< const T >',['../structstan_1_1is__vector__like_3_01const_01_t_01_4.html',1,'stan']]], + ['is_5fvector_5flike_3c_20eigen_3a_3amatrix_3c_20t_2c_20eigen_3a_3adynamic_2c_20eigen_3a_3adynamic_20_3e_20_3e',['is_vector_like< Eigen::Matrix< T, Eigen::Dynamic, Eigen::Dynamic > >',['../structstan_1_1is__vector__like_3_01_eigen_1_1_matrix_3_01_t_00_01_eigen_1_1_dynamic_00_01_eigen_1_1_dynamic_01_4_01_4.html',1,'stan']]], + ['is_5fvector_5flike_3c_20t_20_2a_20_3e',['is_vector_like< T * >',['../structstan_1_1is__vector__like_3_01_t_01_5_01_4.html',1,'stan']]], + ['iscomplex',['IsComplex',['../struct_eigen_1_1_num_traits_3_01stan_1_1agrad_1_1var_01_4.html#a932a61195daad3e89711cfb02521cac9a12cf0c95d1a09bb4805e148f3ced38ab',1,'Eigen::NumTraits< stan::agrad::var >']]], + ['isfinite',['isfinite',['../namespaceboost_1_1math.html#aacb94b2d8f46034875d78e4260274709',1,'boost::math']]], + ['isinf',['isinf',['../namespaceboost_1_1math.html#ad274b0c69c7bd9e4ca76ac7519fd9f74',1,'boost::math::isinf()'],['../namespacestd.html#a458a0f3c809188e7fb9a9e10d335ac60',1,'std::isinf()']]], + ['isinteger',['IsInteger',['../struct_eigen_1_1_num_traits_3_01stan_1_1agrad_1_1var_01_4.html#a932a61195daad3e89711cfb02521cac9a1355527a3b8071883fdbc70b00a30b80',1,'Eigen::NumTraits< stan::agrad::var >']]], + ['isnan',['isnan',['../namespaceboost_1_1math.html#a3987c91e5ae7f757baf28ae8efc0fbbe',1,'boost::math::isnan()'],['../namespacestd.html#a197a4417fc07456e4f2d545e176dc97a',1,'std::isnan()']]], + ['isnormal',['isnormal',['../namespaceboost_1_1math.html#a66748d24fc22dc865ef9b64d17ed4d66',1,'boost::math']]], + ['issigned',['IsSigned',['../struct_eigen_1_1_num_traits_3_01stan_1_1agrad_1_1var_01_4.html#a932a61195daad3e89711cfb02521cac9ae9afee549e8ec17d1bc544ae785ac96f',1,'Eigen::NumTraits< stan::agrad::var >']]], + ['iter_5fnum',['iter_num',['../classstan_1_1optimization_1_1_b_f_g_s_minimizer.html#a7c686dded117ef891b9a0aff363a511d',1,'stan::optimization::BFGSMinimizer']]], + ['iterator_5ftypedefs_2ehpp',['iterator_typedefs.hpp',['../iterator__typedefs_8hpp.html',1,'']]] +]; diff --git a/doc/api/html/search/all_6a.html b/doc/api/html/search/all_6a.html new file mode 100644 index 00000000000..969ef1e506e --- /dev/null +++ b/doc/api/html/search/all_6a.html @@ -0,0 +1,25 @@ + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/doc/api/html/search/all_6a.js b/doc/api/html/search/all_6a.js new file mode 100644 index 00000000000..df31335ea56 --- /dev/null +++ b/doc/api/html/search/all_6a.js @@ -0,0 +1,5 @@ +var searchData= +[ + ['jacobian',['jacobian',['../namespacestan_1_1agrad.html#a660e1cd77e3dcb11faf98da2521ee0f8',1,'stan::agrad::jacobian(const F &f, const Eigen::Matrix< double, Eigen::Dynamic, 1 > &x, Eigen::Matrix< double, Eigen::Dynamic, 1 > &fx, Eigen::Matrix< double, Eigen::Dynamic, Eigen::Dynamic > &J)'],['../namespacestan_1_1agrad.html#a7d496770e4f01fa73a4adf17e2ea1313',1,'stan::agrad::jacobian(const F &f, const Eigen::Matrix< T, Eigen::Dynamic, 1 > &x, Eigen::Matrix< T, Eigen::Dynamic, 1 > &fx, Eigen::Matrix< T, Eigen::Dynamic, Eigen::Dynamic > &J)'],['../namespacestan_1_1agrad.html#a4121d2877f4a3569f878b8e9207af3c1',1,'stan::agrad::jacobian(std::vector< var > &dependents, std::vector< var > &independents, std::vector< std::vector< double > > &jacobian)']]], + ['jacobian_2ehpp',['jacobian.hpp',['../jacobian_8hpp.html',1,'']]] +]; diff --git a/doc/api/html/search/all_6b.html b/doc/api/html/search/all_6b.html new file mode 100644 index 00000000000..571dadb1f1b --- /dev/null +++ b/doc/api/html/search/all_6b.html @@ -0,0 +1,25 @@ + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/doc/api/html/search/all_6b.js b/doc/api/html/search/all_6b.js new file mode 100644 index 00000000000..d1819945d36 --- /dev/null +++ b/doc/api/html/search/all_6b.js @@ -0,0 +1,5 @@ +var searchData= +[ + ['k_5f',['K_',['../structstan_1_1gm_1_1unit__vector__var__decl.html#a5e60137ec4a7b3f0ccfd0e6841ebb46f',1,'stan::gm::unit_vector_var_decl::K_()'],['../structstan_1_1gm_1_1simplex__var__decl.html#ac395e69af88b82ab0dd6f17413bf9552',1,'stan::gm::simplex_var_decl::K_()'],['../structstan_1_1gm_1_1ordered__var__decl.html#aa3a7d1133246c773a8a23825cf6a71b9',1,'stan::gm::ordered_var_decl::K_()'],['../structstan_1_1gm_1_1positive__ordered__var__decl.html#a46cd009bcd34cae3f1a1eac88ffb9df9',1,'stan::gm::positive_ordered_var_decl::K_()'],['../structstan_1_1gm_1_1cov__matrix__var__decl.html#a015b2522873880fbe7788f3b2627f6ac',1,'stan::gm::cov_matrix_var_decl::K_()'],['../structstan_1_1gm_1_1corr__matrix__var__decl.html#aed341a4b3496c14fe2e12ec4c4ae6389',1,'stan::gm::corr_matrix_var_decl::K_()']]], + ['key_5fset',['key_set',['../classstan_1_1gm_1_1function__signatures.html#a6b48032da5b50b100fdb4ebcba899197',1,'stan::gm::function_signatures']]] +]; diff --git a/doc/api/html/search/all_6c.html b/doc/api/html/search/all_6c.html new file mode 100644 index 00000000000..f6383cc2277 --- /dev/null +++ b/doc/api/html/search/all_6c.html @@ -0,0 +1,25 @@ + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/doc/api/html/search/all_6c.js b/doc/api/html/search/all_6c.js new file mode 100644 index 00000000000..c351e6022bc --- /dev/null +++ b/doc/api/html/search/all_6c.js @@ -0,0 +1,168 @@ +var searchData= +[ + ['l_5f',['L_',['../classstan_1_1mcmc_1_1base__static__hmc.html#a90fa0670ef5e51de2534f25c0a34a2c7',1,'stan::mcmc::base_static_hmc']]], + ['lb_5fconstrain',['lb_constrain',['../namespacestan_1_1prob.html#a680c6f47862a16f0b45c85ce534e8211',1,'stan::prob::lb_constrain(const T x, const TL lb)'],['../namespacestan_1_1prob.html#a76b59a59ddaad0ad5a82226192ffd843',1,'stan::prob::lb_constrain(const T x, const TL lb, T &lp)']]], + ['lb_5ffree',['lb_free',['../namespacestan_1_1prob.html#a5f8562f1f72bf02ac21b36ef8dcfe3d7',1,'stan::prob']]], + ['lbeta',['lbeta',['../namespacestan_1_1agrad.html#ab7f20a5b3ac5abeef9b69b629c64f075',1,'stan::agrad::lbeta(const fvar< T > &x1, const fvar< T > &x2)'],['../namespacestan_1_1agrad.html#ae4c9ce80559602ab8d0ec6f5ae3e7d3b',1,'stan::agrad::lbeta(const double x1, const fvar< T > &x2)'],['../namespacestan_1_1agrad.html#a2f095ba758cbca01594b6b7be1513ce4',1,'stan::agrad::lbeta(const fvar< T > &x1, const double x2)'],['../namespacestan_1_1math.html#a3ccdb3f505b7db61c510e59e97b947b6',1,'stan::math::lbeta()']]], + ['lbeta_2ehpp',['lbeta.hpp',['../agrad_2fwd_2functions_2lbeta_8hpp.html',1,'']]], + ['lbeta_2ehpp',['lbeta.hpp',['../math_2functions_2lbeta_8hpp.html',1,'']]], + ['ldlt_5falloc',['LDLT_alloc',['../classstan_1_1agrad_1_1_l_d_l_t__alloc.html',1,'stan::agrad']]], + ['ldlt_5falloc',['LDLT_alloc',['../classstan_1_1agrad_1_1_l_d_l_t__alloc.html#ad2c1bbcc10381b09fe034ef93b16e390',1,'stan::agrad::LDLT_alloc::LDLT_alloc()'],['../classstan_1_1agrad_1_1_l_d_l_t__alloc.html#ab1359cdaf7324e0d46b5c468bd70a2af',1,'stan::agrad::LDLT_alloc::LDLT_alloc(const Eigen::Matrix< var, R, C > &A)']]], + ['ldlt_5falloc_2ehpp',['LDLT_alloc.hpp',['../_l_d_l_t__alloc_8hpp.html',1,'']]], + ['ldlt_5ffactor',['LDLT_factor',['../class_l_d_l_t__factor.html',1,'LDLT_factor< T, R, C >'],['../classstan_1_1math_1_1_l_d_l_t__factor_3_01stan_1_1agrad_1_1var_00_01_r_00_01_c_01_4.html#abdc7a01f87ac33c781d58a2d5ed2fd26',1,'stan::math::LDLT_factor< stan::agrad::var, R, C >::LDLT_factor()'],['../classstan_1_1math_1_1_l_d_l_t__factor_3_01stan_1_1agrad_1_1var_00_01_r_00_01_c_01_4.html#a86525804bc537ac3a74297484626d45a',1,'stan::math::LDLT_factor< stan::agrad::var, R, C >::LDLT_factor(const Eigen::Matrix< stan::agrad::var, R, C > &A)'],['../classstan_1_1math_1_1_l_d_l_t__factor_3_01double_00_01_r_00_01_c_01_4.html#ab710d201cf60112e05283a2b57c3547c',1,'stan::math::LDLT_factor< double, R, C >::LDLT_factor()'],['../classstan_1_1math_1_1_l_d_l_t__factor_3_01double_00_01_r_00_01_c_01_4.html#a88d83ef1c8b2536fc47c2e822aabaee2',1,'stan::math::LDLT_factor< double, R, C >::LDLT_factor(const Eigen::Matrix< double, R, C > &A)']]], + ['ldlt_5ffactor_2ehpp',['LDLT_factor.hpp',['../agrad_2rev_2matrix_2_l_d_l_t__factor_8hpp.html',1,'']]], + ['ldlt_5ffactor_2ehpp',['LDLT_factor.hpp',['../math_2matrix_2_l_d_l_t__factor_8hpp.html',1,'']]], + ['ldlt_5ffactor_3c_20double_2c_20r_2c_20c_20_3e',['LDLT_factor< double, R, C >',['../classstan_1_1math_1_1_l_d_l_t__factor_3_01double_00_01_r_00_01_c_01_4.html',1,'stan::math']]], + ['ldlt_5ffactor_3c_20stan_3a_3aagrad_3a_3avar_2c_20r_2c_20c_20_3e',['LDLT_factor< stan::agrad::var, R, C >',['../classstan_1_1math_1_1_l_d_l_t__factor_3_01stan_1_1agrad_1_1var_00_01_r_00_01_c_01_4.html',1,'stan::math']]], + ['learn_5fcovariance',['learn_covariance',['../classstan_1_1mcmc_1_1covar__adaptation.html#a6c50cab9f1bebe465e8c28db2a9581f4',1,'stan::mcmc::covar_adaptation']]], + ['learn_5fstepsize',['learn_stepsize',['../classstan_1_1mcmc_1_1stepsize__adaptation.html#a29b24c73369c15114624b44b703d100e',1,'stan::mcmc::stepsize_adaptation']]], + ['learn_5fvariance',['learn_variance',['../classstan_1_1mcmc_1_1var__adaptation.html#a52f68d10bf0c8628b395bf18a00ba34e',1,'stan::mcmc::var_adaptation']]], + ['left',['left',['../structstan_1_1gm_1_1binary__op.html#a08aaf31f8a247550eac0475e4a260a10',1,'stan::gm::binary_op']]], + ['left_5fdivision',['left_division',['../namespacestan_1_1gm.html#a7ce0894487b3983ccf7f1d1ed59a1f4b',1,'stan::gm']]], + ['left_5fdivision_5fexpr',['left_division_expr',['../structstan_1_1gm_1_1left__division__expr.html',1,'stan::gm']]], + ['length',['length',['../namespacestan.html#a59c48c2ee48c5a6e8048fa2d6a035445',1,'stan::length(const T &)'],['../namespacestan.html#adb2e0700b1ec87a5e080cd50026b0182',1,'stan::length(const std::vector< T > &x)'],['../namespacestan.html#a12b8544448f77da1a773c7b7c0ebdc01',1,'stan::length(const Eigen::Matrix< T, R, C > &m)']]], + ['length_5f',['length_',['../agrad_2rev_2matrix_2dot__product_8hpp.html#af0c9b7dcc98dce1d0edf7cb6ce49103b',1,'length_(): dot_product.hpp'],['../_eigen___num_traits_8hpp.html#af0c9b7dcc98dce1d0edf7cb6ce49103b',1,'length_(): Eigen_NumTraits.hpp'],['../agrad_2rev_2matrix_2squared__distance_8hpp.html#af0c9b7dcc98dce1d0edf7cb6ce49103b',1,'length_(): squared_distance.hpp'],['../agrad_2rev_2matrix_2sum_8hpp.html#af0c9b7dcc98dce1d0edf7cb6ce49103b',1,'length_(): sum.hpp']]], + ['lgamma',['lgamma',['../namespacestan_1_1agrad.html#acb8b7366b1ecbe633d2c96f1c8dc62b8',1,'stan::agrad::lgamma(const fvar< T > &x)'],['../namespacestan_1_1agrad.html#a9d1f65093166797ec93ec580abc77d15',1,'stan::agrad::lgamma(const stan::agrad::var &a)'],['../namespacestan_1_1math.html#a836f46d7f63f5118a32cad11382c0551',1,'stan::math::lgamma()']]], + ['lgamma_2ehpp',['lgamma.hpp',['../agrad_2fwd_2functions_2lgamma_8hpp.html',1,'']]], + ['lgamma_2ehpp',['lgamma.hpp',['../math_2functions_2lgamma_8hpp.html',1,'']]], + ['lgamma_2ehpp',['lgamma.hpp',['../agrad_2rev_2functions_2lgamma_8hpp.html',1,'']]], + ['lhsscalar',['LhsScalar',['../struct_eigen_1_1internal_1_1general__matrix__vector__product_3_01_index_00_01stan_1_1agrad_1_1va44da5f98e1caea9523bacbd5bdc025fe.html#a53b8b1e508aa14de16ac804960453975',1,'Eigen::internal::general_matrix_vector_product< Index, stan::agrad::var, ColMajor, ConjugateLhs, stan::agrad::var, ConjugateRhs >::LhsScalar()'],['../struct_eigen_1_1internal_1_1general__matrix__vector__product_3_01_index_00_01stan_1_1agrad_1_1vacd54cabc78c49ca719650381b68b105e.html#a8b1863097b547b5a7f2d24b8ccfe5796',1,'Eigen::internal::general_matrix_vector_product< Index, stan::agrad::var, RowMajor, ConjugateLhs, stan::agrad::var, ConjugateRhs >::LhsScalar()'],['../struct_eigen_1_1internal_1_1general__matrix__matrix__product_3_01_index_00_01stan_1_1agrad_1_1va9b485de9571b6e46d7a64aff43a6d9d3.html#a4b77e4f22ba05c8daaa850af323db4c5',1,'Eigen::internal::general_matrix_matrix_product< Index, stan::agrad::var, LhsStorageOrder, ConjugateLhs, stan::agrad::var, RhsStorageOrder, ConjugateRhs, ColMajor >::LhsScalar()']]], + ['lhsstorageorder',['LhsStorageOrder',['../struct_eigen_1_1internal_1_1general__matrix__vector__product_3_01_index_00_01stan_1_1agrad_1_1va44da5f98e1caea9523bacbd5bdc025fe.html#a1a45ecc02e193d7a8d978fc11b7bf753a4568cff436d678b2cb8e936b209fced9',1,'Eigen::internal::general_matrix_vector_product< Index, stan::agrad::var, ColMajor, ConjugateLhs, stan::agrad::var, ConjugateRhs >::LhsStorageOrder()'],['../struct_eigen_1_1internal_1_1general__matrix__vector__product_3_01_index_00_01stan_1_1agrad_1_1vacd54cabc78c49ca719650381b68b105e.html#a2b766d523420f3934c8e5bd00078d9f4a2a6d617ef050b14291315944cee7c382',1,'Eigen::internal::general_matrix_vector_product< Index, stan::agrad::var, RowMajor, ConjugateLhs, stan::agrad::var, ConjugateRhs >::LhsStorageOrder()']]], + ['likely',['likely',['../stack__alloc_8hpp.html#a217a0bd562b98ae8c2ffce44935351e1',1,'stack_alloc.hpp']]], + ['list_5fargument',['list_argument',['../classstan_1_1gm_1_1list__argument.html#ac0e9e2d2392255d5d6576390c7560b89',1,'stan::gm::list_argument']]], + ['list_5fargument',['list_argument',['../classstan_1_1gm_1_1list__argument.html',1,'stan::gm']]], + ['list_5fargument_2ehpp',['list_argument.hpp',['../list__argument_8hpp.html',1,'']]], + ['lkj_5fcorr_2ehpp',['lkj_corr.hpp',['../lkj__corr_8hpp.html',1,'']]], + ['lkj_5fcorr_5fcholesky_5flog',['lkj_corr_cholesky_log',['../namespacestan_1_1prob.html#a547d5d6ea7f2a985488c75eb2788d7c4',1,'stan::prob::lkj_corr_cholesky_log(const Eigen::Matrix< T_covar, Eigen::Dynamic, Eigen::Dynamic > &L, const T_shape &eta)'],['../namespacestan_1_1prob.html#afa5ff4715e294327b88666b1f9639e55',1,'stan::prob::lkj_corr_cholesky_log(const Eigen::Matrix< T_covar, Eigen::Dynamic, Eigen::Dynamic > &L, const T_shape &eta)']]], + ['lkj_5fcorr_5fcholesky_5frng',['lkj_corr_cholesky_rng',['../namespacestan_1_1prob.html#ab6923f0ee88a517f5be6ac8780e5842c',1,'stan::prob']]], + ['lkj_5fcorr_5flog',['lkj_corr_log',['../namespacestan_1_1prob.html#a89375117dd56efcdf32c2e8d7bb593a9',1,'stan::prob::lkj_corr_log(const Eigen::Matrix< T_y, Eigen::Dynamic, Eigen::Dynamic > &y, const T_shape &eta)'],['../namespacestan_1_1prob.html#a35b120723f2e595892c2d86d00a9cf3e',1,'stan::prob::lkj_corr_log(const Eigen::Matrix< T_y, Eigen::Dynamic, Eigen::Dynamic > &y, const T_shape &eta)']]], + ['lkj_5fcorr_5frng',['lkj_corr_rng',['../namespacestan_1_1prob.html#a54800d037a32da9ecfb59c87152bfbcc',1,'stan::prob']]], + ['lkj_5fcov_2ehpp',['lkj_cov.hpp',['../lkj__cov_8hpp.html',1,'']]], + ['lkj_5fcov_5flog',['lkj_cov_log',['../namespacestan_1_1prob.html#a96a69b926127ce2349d86bcbedac81d7',1,'stan::prob::lkj_cov_log(const Eigen::Matrix< T_y, Eigen::Dynamic, Eigen::Dynamic > &y, const Eigen::Matrix< T_loc, Eigen::Dynamic, 1 > &mu, const Eigen::Matrix< T_scale, Eigen::Dynamic, 1 > &sigma, const T_shape &eta)'],['../namespacestan_1_1prob.html#a60be4ec8b4e9dd29b73d49139c489e51',1,'stan::prob::lkj_cov_log(const Eigen::Matrix< T_y, Eigen::Dynamic, Eigen::Dynamic > &y, const Eigen::Matrix< T_loc, Eigen::Dynamic, 1 > &mu, const Eigen::Matrix< T_scale, Eigen::Dynamic, 1 > &sigma, const T_shape &eta)'],['../namespacestan_1_1prob.html#a8d134366536efce845a8f64527e86ff9',1,'stan::prob::lkj_cov_log(const Eigen::Matrix< T_y, Eigen::Dynamic, Eigen::Dynamic > &y, const T_loc &mu, const T_scale &sigma, const T_shape &eta)'],['../namespacestan_1_1prob.html#a78c42178310c4085d186abfb85c97db1',1,'stan::prob::lkj_cov_log(const Eigen::Matrix< T_y, Eigen::Dynamic, Eigen::Dynamic > &y, const T_loc &mu, const T_scale &sigma, const T_shape &eta)']]], + ['lmgamma',['lmgamma',['../namespacestan_1_1agrad.html#abcf5c1dacc44b491a46040004177e1ad',1,'stan::agrad::lmgamma(int x1, const fvar< T > &x2)'],['../namespacestan_1_1agrad.html#af080723d19e8d4fa6dbe74cab69ee3f2',1,'stan::agrad::lmgamma(int a, const stan::agrad::var &b)'],['../namespacestan_1_1math.html#a0ee0706b2cb6d2e1da2c3b6041c06a56',1,'stan::math::lmgamma()']]], + ['lmgamma_2ehpp',['lmgamma.hpp',['../math_2functions_2lmgamma_8hpp.html',1,'']]], + ['lmgamma_2ehpp',['lmgamma.hpp',['../agrad_2fwd_2functions_2lmgamma_8hpp.html',1,'']]], + ['lmgamma_2ehpp',['lmgamma.hpp',['../agrad_2rev_2functions_2lmgamma_8hpp.html',1,'']]], + ['local_5fdecl_5f',['local_decl_',['../structstan_1_1gm_1_1statements.html#a277fff5acdb257537ee927d68d7fa139',1,'stan::gm::statements']]], + ['local_5forigin',['local_origin',['../namespacestan_1_1gm.html#ae5497a13c6ad9d782269f4b25fc7608a',1,'stan::gm']]], + ['local_5fvar_5fdecl_5fvisgen',['local_var_decl_visgen',['../structstan_1_1gm_1_1local__var__decl__visgen.html#a64a2e460136e91077c77fccef2b34c0d',1,'stan::gm::local_var_decl_visgen']]], + ['local_5fvar_5fdecl_5fvisgen',['local_var_decl_visgen',['../structstan_1_1gm_1_1local__var__decl__visgen.html',1,'stan::gm']]], + ['local_5fvar_5fdecls_5fr',['local_var_decls_r',['../structstan_1_1gm_1_1statement__grammar.html#ac5e7f4b79105a972ddfae455a7f28709',1,'stan::gm::statement_grammar']]], + ['log',['log',['../namespacestan_1_1agrad.html#ac98c1c298301701efe36438130bac705',1,'stan::agrad::log(const var &a)'],['../namespacestan_1_1agrad.html#a43089bcc90b7c1aaff44406aaa426e85',1,'stan::agrad::log(const fvar< T > &x)'],['../namespacestan_1_1math.html#ae3e7ce33064686ec2a2591fa5d4227cf',1,'stan::math::log()']]], + ['log_2ehpp',['log.hpp',['../agrad_2fwd_2functions_2log_8hpp.html',1,'']]], + ['log_2ehpp',['log.hpp',['../agrad_2rev_2functions_2log_8hpp.html',1,'']]], + ['log_2ehpp',['log.hpp',['../math_2matrix_2log_8hpp.html',1,'']]], + ['log10',['log10',['../namespacestan_1_1agrad.html#a6eb95bc79aff1cd13c794525c5a907e8',1,'stan::agrad::log10(const var &a)'],['../namespacestan_1_1agrad.html#aa63c2c14dbdb19b7edf2834b287a4676',1,'stan::agrad::log10(const fvar< T > &x)'],['../namespacestan_1_1math.html#a21f4f7c092e2bc9a089885628b86c004',1,'stan::math::log10()']]], + ['log10_2ehpp',['log10.hpp',['../fwd_2functions_2log10_8hpp.html',1,'']]], + ['log10_2ehpp',['log10.hpp',['../rev_2functions_2log10_8hpp.html',1,'']]], + ['log1m',['log1m',['../namespacestan_1_1agrad.html#af4be9cece7a9094512941604d195fafc',1,'stan::agrad::log1m(const fvar< T > &x)'],['../namespacestan_1_1agrad.html#a428e6958e002b027bdbfe4a844a267a4',1,'stan::agrad::log1m(const stan::agrad::var &a)'],['../namespacestan_1_1math.html#a4f92092fb8a70b31d00898bbbe769612',1,'stan::math::log1m()']]], + ['log1m_2ehpp',['log1m.hpp',['../agrad_2fwd_2functions_2log1m_8hpp.html',1,'']]], + ['log1m_2ehpp',['log1m.hpp',['../agrad_2rev_2functions_2log1m_8hpp.html',1,'']]], + ['log1m_2ehpp',['log1m.hpp',['../math_2functions_2log1m_8hpp.html',1,'']]], + ['log1m_5fexp',['log1m_exp',['../namespacestan_1_1agrad.html#a501a03587bc86f5ec3745e9fbee6636a',1,'stan::agrad::log1m_exp(const fvar< T > &x)'],['../namespacestan_1_1agrad.html#ab8a7bcd350916b80b3bd0e6633344861',1,'stan::agrad::log1m_exp(const stan::agrad::var &a)'],['../namespacestan_1_1math.html#a3ce261caf05bd371c430e82a0e6389a5',1,'stan::math::log1m_exp()']]], + ['log1m_5fexp_2ehpp',['log1m_exp.hpp',['../agrad_2fwd_2functions_2log1m__exp_8hpp.html',1,'']]], + ['log1m_5fexp_2ehpp',['log1m_exp.hpp',['../agrad_2rev_2functions_2log1m__exp_8hpp.html',1,'']]], + ['log1m_5fexp_2ehpp',['log1m_exp.hpp',['../math_2functions_2log1m__exp_8hpp.html',1,'']]], + ['log1m_5finv_5flogit',['log1m_inv_logit',['../namespacestan_1_1agrad.html#a4ef1d069b2a0b0e79e6a96096ced05a5',1,'stan::agrad::log1m_inv_logit()'],['../namespacestan_1_1math.html#ac7f71c696a5e0da4daab30e5f3704842',1,'stan::math::log1m_inv_logit()']]], + ['log1m_5finv_5flogit_2ehpp',['log1m_inv_logit.hpp',['../agrad_2fwd_2functions_2log1m__inv__logit_8hpp.html',1,'']]], + ['log1m_5finv_5flogit_2ehpp',['log1m_inv_logit.hpp',['../math_2functions_2log1m__inv__logit_8hpp.html',1,'']]], + ['log1p',['log1p',['../namespacestan_1_1agrad.html#a3e8efd5110369daca4516294e61113cc',1,'stan::agrad::log1p(const fvar< T > &x)'],['../namespacestan_1_1agrad.html#a668283bab0c6bc04b5b106d236a2377a',1,'stan::agrad::log1p(const stan::agrad::var &a)'],['../namespacestan_1_1math.html#a5166d3c58ad8ce0aedbf104179888b69',1,'stan::math::log1p()']]], + ['log1p_2ehpp',['log1p.hpp',['../math_2functions_2log1p_8hpp.html',1,'']]], + ['log1p_2ehpp',['log1p.hpp',['../agrad_2fwd_2functions_2log1p_8hpp.html',1,'']]], + ['log1p_2ehpp',['log1p.hpp',['../agrad_2rev_2functions_2log1p_8hpp.html',1,'']]], + ['log1p_5fexp',['log1p_exp',['../namespacestan_1_1agrad.html#a1ff177e7dc2559a9f0e11b60aa024aac',1,'stan::agrad::log1p_exp(const fvar< T > &x)'],['../namespacestan_1_1agrad.html#a10454c0b2b4185635d09ceb22bb1e8b0',1,'stan::agrad::log1p_exp(const stan::agrad::var &a)'],['../namespacestan_1_1math.html#a88151def26813dec3e04c4a8b9674091',1,'stan::math::log1p_exp()']]], + ['log1p_5fexp_2ehpp',['log1p_exp.hpp',['../agrad_2fwd_2functions_2log1p__exp_8hpp.html',1,'']]], + ['log1p_5fexp_2ehpp',['log1p_exp.hpp',['../agrad_2rev_2functions_2log1p__exp_8hpp.html',1,'']]], + ['log1p_5fexp_2ehpp',['log1p_exp.hpp',['../math_2functions_2log1p__exp_8hpp.html',1,'']]], + ['log2',['log2',['../namespacestan_1_1agrad.html#adc1fbe8f169e3dbaf05dce2399b87177',1,'stan::agrad::log2(const fvar< T > &x)'],['../namespacestan_1_1agrad.html#aca9b147f7efd83ab91e1169324e42172',1,'stan::agrad::log2(const stan::agrad::var &a)'],['../namespacestan_1_1math.html#aa25e1572bf46e3a6b9ee270f0c7e2c4d',1,'stan::math::log2(const T a)'],['../namespacestan_1_1math.html#a947ba3fe3c87293f7c57395007100c79',1,'stan::math::log2()']]], + ['log2_2ehpp',['log2.hpp',['../agrad_2fwd_2functions_2log2_8hpp.html',1,'']]], + ['log2_2ehpp',['log2.hpp',['../agrad_2rev_2functions_2log2_8hpp.html',1,'']]], + ['log2_2ehpp',['log2.hpp',['../math_2functions_2log2_8hpp.html',1,'']]], + ['log_5f10',['LOG_10',['../namespacestan_1_1math.html#ab773773e2db53015eb48ab1730816fb5',1,'stan::math']]], + ['log_5f2',['LOG_2',['../namespacestan_1_1math.html#a43fb48f0a7f26bc60c1dfb572283b149',1,'stan::math']]], + ['log_5fabs_5fdet',['log_abs_det',['../classstan_1_1agrad_1_1_l_d_l_t__alloc.html#a063ff0e0e58cc5ad14a3c4a34d614bc3',1,'stan::agrad::LDLT_alloc::log_abs_det()'],['../classstan_1_1math_1_1_l_d_l_t__factor_3_01double_00_01_r_00_01_c_01_4.html#a8c2f622cdd10422db6d9470c7799a189',1,'stan::math::LDLT_factor< double, R, C >::log_abs_det()']]], + ['log_5fdeterminant',['log_determinant',['../namespacestan_1_1agrad.html#a8a1d37f736333bd2c5e22f0ccb645e5c',1,'stan::agrad::log_determinant(const Eigen::Matrix< fvar< T >, R, C > &m)'],['../namespacestan_1_1agrad.html#a987a42c964cf999f61943d6811843964',1,'stan::agrad::log_determinant(const Eigen::Matrix< var, R, C > &m)'],['../namespacestan_1_1math.html#aca29dad18932e3ca17ac52fd0238b364',1,'stan::math::log_determinant()']]], + ['log_5fdeterminant_2ehpp',['log_determinant.hpp',['../math_2matrix_2log__determinant_8hpp.html',1,'']]], + ['log_5fdeterminant_2ehpp',['log_determinant.hpp',['../agrad_2fwd_2matrix_2log__determinant_8hpp.html',1,'']]], + ['log_5fdeterminant_2ehpp',['log_determinant.hpp',['../agrad_2rev_2matrix_2log__determinant_8hpp.html',1,'']]], + ['log_5fdeterminant_5fldlt',['log_determinant_ldlt',['../namespacestan_1_1agrad.html#a836b4fbc18e46a0b211c77362ee5ea7f',1,'stan::agrad::log_determinant_ldlt()'],['../namespacestan_1_1math.html#a306d737ee042b8f40e93713cd87fe48b',1,'stan::math::log_determinant_ldlt()']]], + ['log_5fdeterminant_5fldlt_2ehpp',['log_determinant_ldlt.hpp',['../agrad_2rev_2matrix_2log__determinant__ldlt_8hpp.html',1,'']]], + ['log_5fdeterminant_5fldlt_2ehpp',['log_determinant_ldlt.hpp',['../math_2matrix_2log__determinant__ldlt_8hpp.html',1,'']]], + ['log_5fdeterminant_5fspd',['log_determinant_spd',['../namespacestan_1_1agrad.html#acb47e4ac872b94a58defa619ba0b96e3',1,'stan::agrad::log_determinant_spd()'],['../namespacestan_1_1math.html#ae9a296d4414d0193108c70b350a05cfc',1,'stan::math::log_determinant_spd()']]], + ['log_5fdeterminant_5fspd_2ehpp',['log_determinant_spd.hpp',['../agrad_2rev_2matrix_2log__determinant__spd_8hpp.html',1,'']]], + ['log_5fdeterminant_5fspd_2ehpp',['log_determinant_spd.hpp',['../math_2matrix_2log__determinant__spd_8hpp.html',1,'']]], + ['log_5fdiff_5fexp',['log_diff_exp',['../namespacestan_1_1agrad.html#a8b63a8fd1ac87815107c75c405e810dd',1,'stan::agrad::log_diff_exp(const fvar< T > &x1, const fvar< T > &x2)'],['../namespacestan_1_1agrad.html#a5d5141fbaefe30307b79611c1391ca5c',1,'stan::agrad::log_diff_exp(const T1 &x1, const fvar< T2 > &x2)'],['../namespacestan_1_1agrad.html#a24844c12cad61f5e2ee54fe198347a98',1,'stan::agrad::log_diff_exp(const fvar< T1 > &x1, const T2 &x2)'],['../namespacestan_1_1agrad.html#a119e409264dfab429ffaa814ba6133c0',1,'stan::agrad::log_diff_exp(const stan::agrad::var &a, const stan::agrad::var &b)'],['../namespacestan_1_1agrad.html#a2475060db47484c7a076f404fbb2394d',1,'stan::agrad::log_diff_exp(const stan::agrad::var &a, const double &b)'],['../namespacestan_1_1agrad.html#a9a895635ca7f66a6bf4372fe314f2d21',1,'stan::agrad::log_diff_exp(const double &a, const stan::agrad::var &b)'],['../namespacestan_1_1math.html#aac1dbafd4c2a129415e86f868fc0979a',1,'stan::math::log_diff_exp()']]], + ['log_5fdiff_5fexp_2ehpp',['log_diff_exp.hpp',['../agrad_2fwd_2functions_2log__diff__exp_8hpp.html',1,'']]], + ['log_5fdiff_5fexp_2ehpp',['log_diff_exp.hpp',['../agrad_2rev_2functions_2log__diff__exp_8hpp.html',1,'']]], + ['log_5fdiff_5fexp_2ehpp',['log_diff_exp.hpp',['../math_2functions_2log__diff__exp_8hpp.html',1,'']]], + ['log_5ffalling_5ffactorial',['log_falling_factorial',['../namespacestan_1_1agrad.html#a0ffd034a1939c647aead3fdafae32afa',1,'stan::agrad::log_falling_factorial(const fvar< T > &x, const fvar< T > &n)'],['../namespacestan_1_1agrad.html#a21f6f947d6415c306ad111ef43981b90',1,'stan::agrad::log_falling_factorial(const double x, const fvar< T > &n)'],['../namespacestan_1_1agrad.html#ab039c4e5fecc51d8772b632c3a9acb53',1,'stan::agrad::log_falling_factorial(const fvar< T > &x, const double n)'],['../namespacestan_1_1agrad.html#aa5f969e2991f83a5e66a3f8822486215',1,'stan::agrad::log_falling_factorial(const var &a, const double &b)'],['../namespacestan_1_1agrad.html#a08dde4140ae5a400855918f6cd91e17e',1,'stan::agrad::log_falling_factorial(const var &a, const var &b)'],['../namespacestan_1_1agrad.html#adebdfe1af8c92bcd3a142794c954316b',1,'stan::agrad::log_falling_factorial(const double &a, const var &b)'],['../namespacestan_1_1math.html#aa9cb2f3f6c73b2005d9e9fadbad415bf',1,'stan::math::log_falling_factorial()']]], + ['log_5ffalling_5ffactorial_2ehpp',['log_falling_factorial.hpp',['../agrad_2fwd_2functions_2log__falling__factorial_8hpp.html',1,'']]], + ['log_5ffalling_5ffactorial_2ehpp',['log_falling_factorial.hpp',['../agrad_2rev_2functions_2log__falling__factorial_8hpp.html',1,'']]], + ['log_5ffalling_5ffactorial_2ehpp',['log_falling_factorial.hpp',['../math_2functions_2log__falling__factorial_8hpp.html',1,'']]], + ['log_5finv_5flogit',['log_inv_logit',['../namespacestan_1_1agrad.html#a25aaaf2eca128514fc4cf52b59872658',1,'stan::agrad::log_inv_logit()'],['../namespacestan_1_1math.html#ad5be889d1ef4284654a04e400f5371a7',1,'stan::math::log_inv_logit()']]], + ['log_5finv_5flogit_2ehpp',['log_inv_logit.hpp',['../agrad_2fwd_2functions_2log__inv__logit_8hpp.html',1,'']]], + ['log_5finv_5flogit_2ehpp',['log_inv_logit.hpp',['../math_2functions_2log__inv__logit_8hpp.html',1,'']]], + ['log_5finv_5flogit_5fdiff',['log_inv_logit_diff',['../namespacestan_1_1prob.html#a76c814ad46314b38beb80a1a699617ef',1,'stan::prob']]], + ['log_5fpi_5fover_5ffour',['LOG_PI_OVER_FOUR',['../namespacestan_1_1math.html#a177764626d2378e0d7bdfb26aac187b6',1,'stan::math']]], + ['log_5fprob',['log_prob',['../classstan_1_1mcmc_1_1sample.html#a42aa100b16656e4904586f80ec028425',1,'stan::mcmc::sample']]], + ['log_5fprob_5f',['log_prob_',['../structstan_1_1gm_1_1increment__log__prob__statement.html#a7ba573d094c1453cf8e425eb2bf8a48e',1,'stan::gm::increment_log_prob_statement']]], + ['log_5fprob_5fgrad',['log_prob_grad',['../namespacestan_1_1model.html#aad33e9d6c10b589acbe6e527b5f9de80',1,'stan::model::log_prob_grad(const M &model, std::vector< double > &params_r, std::vector< int > &params_i, std::vector< double > &gradient, std::ostream *msgs=0)'],['../namespacestan_1_1model.html#aa8bbac348a197c17f86d57cc3a65e7d2',1,'stan::model::log_prob_grad(const M &model, Eigen::VectorXd &params_r, Eigen::VectorXd &gradient, std::ostream *msgs=0)']]], + ['log_5fprob_5fpropto',['log_prob_propto',['../namespacestan_1_1model.html#a4f75ba8738a5667a7abaef3871e14ca8',1,'stan::model::log_prob_propto(const M &model, std::vector< double > &params_r, std::vector< int > &params_i, std::ostream *msgs=0)'],['../namespacestan_1_1model.html#a0267095f157269950cfd3f1f402abe21',1,'stan::model::log_prob_propto(const M &model, Eigen::VectorXd &params_r, std::ostream *msgs=0)']]], + ['log_5frising_5ffactorial',['log_rising_factorial',['../namespacestan_1_1agrad.html#a3782da231c6c02f7ce65cf7b8a0d0b28',1,'stan::agrad::log_rising_factorial(const fvar< T > &x, const fvar< T > &n)'],['../namespacestan_1_1agrad.html#af00e8b62f7721b68f450588b1842d005',1,'stan::agrad::log_rising_factorial(const fvar< T > &x, const double n)'],['../namespacestan_1_1agrad.html#a58c0933b722f43bed32a6dd069716698',1,'stan::agrad::log_rising_factorial(const double x, const fvar< T > &n)'],['../namespacestan_1_1agrad.html#aa260d82a2cae776fafd0b65f40da2a91',1,'stan::agrad::log_rising_factorial(const var &a, const double &b)'],['../namespacestan_1_1agrad.html#aee3ad0a137a3ac1164ef4afbbfc3aa17',1,'stan::agrad::log_rising_factorial(const var &a, const var &b)'],['../namespacestan_1_1agrad.html#af9ecc1f14a7e33f59a6349b37aeb6846',1,'stan::agrad::log_rising_factorial(const double &a, const var &b)'],['../namespacestan_1_1math.html#aaf23285d755661c14ca29c3ba935b77d',1,'stan::math::log_rising_factorial()']]], + ['log_5frising_5ffactorial_2ehpp',['log_rising_factorial.hpp',['../agrad_2fwd_2functions_2log__rising__factorial_8hpp.html',1,'']]], + ['log_5frising_5ffactorial_2ehpp',['log_rising_factorial.hpp',['../agrad_2rev_2functions_2log__rising__factorial_8hpp.html',1,'']]], + ['log_5frising_5ffactorial_2ehpp',['log_rising_factorial.hpp',['../math_2functions_2log__rising__factorial_8hpp.html',1,'']]], + ['log_5fsoftmax',['log_softmax',['../namespacestan_1_1agrad.html#a1669a67b8247ae502926890376c2b68b',1,'stan::agrad::log_softmax(const Eigen::Matrix< fvar< T >, Eigen::Dynamic, 1 > &alpha)'],['../namespacestan_1_1agrad.html#adcaa1e54a0acf38f7a8f10a1bc33e8df',1,'stan::agrad::log_softmax(const Eigen::Matrix< var, Eigen::Dynamic, 1 > &alpha)'],['../namespacestan_1_1math.html#a011a8c8bb83f9b6c700a725240be33b5',1,'stan::math::log_softmax()']]], + ['log_5fsoftmax_2ehpp',['log_softmax.hpp',['../agrad_2rev_2matrix_2log__softmax_8hpp.html',1,'']]], + ['log_5fsoftmax_2ehpp',['log_softmax.hpp',['../math_2matrix_2log__softmax_8hpp.html',1,'']]], + ['log_5fsoftmax_2ehpp',['log_softmax.hpp',['../agrad_2fwd_2matrix_2log__softmax_8hpp.html',1,'']]], + ['log_5fsum_5fexp',['log_sum_exp',['../namespacestan_1_1agrad.html#a6cd9f7f4203d0dd299489be37445b5e1',1,'stan::agrad::log_sum_exp(const fvar< T > &x1, const fvar< T > &x2)'],['../namespacestan_1_1agrad.html#a65accd2105cd3b00e370ba7ba2de38e4',1,'stan::agrad::log_sum_exp(const double x1, const fvar< T > &x2)'],['../namespacestan_1_1agrad.html#ac8761a5b8672071d99b5c7cc8dea3276',1,'stan::agrad::log_sum_exp(const fvar< T > &x1, const double x2)'],['../namespacestan_1_1agrad.html#a3d1039fe876efe94f6a8d40f9d1c96cd',1,'stan::agrad::log_sum_exp(const std::vector< fvar< T > > &v)'],['../namespacestan_1_1agrad.html#a5df6229f0b30f3b43f5c6b4744acc62c',1,'stan::agrad::log_sum_exp(const Eigen::Matrix< fvar< T >, R, C > &v)'],['../namespacestan_1_1agrad.html#ac64b74224b38e3bcff5e33c2ffdb673e',1,'stan::agrad::log_sum_exp(const stan::agrad::var &a, const stan::agrad::var &b)'],['../namespacestan_1_1agrad.html#af6960e01ec13ad3bffda2295e5f10c33',1,'stan::agrad::log_sum_exp(const stan::agrad::var &a, const double &b)'],['../namespacestan_1_1agrad.html#a845f5338275b390a8eeedb3e66f097f8',1,'stan::agrad::log_sum_exp(const double &a, const stan::agrad::var &b)'],['../namespacestan_1_1agrad.html#a5706fda535b2473b48024f50ce69be18',1,'stan::agrad::log_sum_exp(const std::vector< var > &x)'],['../namespacestan_1_1agrad.html#a902892cf9092c81ee4d26c54ba672c38',1,'stan::agrad::log_sum_exp(const Eigen::Matrix< var, R, C > &x)'],['../namespacestan_1_1math.html#a3c5f32f7cd1a5690a697f4031df569c4',1,'stan::math::log_sum_exp(const T2 &a, const T1 &b)'],['../namespacestan_1_1math.html#ae5513861b48f8649938d82883b58170c',1,'stan::math::log_sum_exp(const std::vector< T > &x)'],['../namespacestan_1_1math.html#a6205ce595af6efac8746bd83b2b761da',1,'stan::math::log_sum_exp(const Eigen::Matrix< T, R, C > &x)']]], + ['log_5fsum_5fexp_2ehpp',['log_sum_exp.hpp',['../agrad_2fwd_2functions_2log__sum__exp_8hpp.html',1,'']]], + ['log_5fsum_5fexp_2ehpp',['log_sum_exp.hpp',['../agrad_2fwd_2matrix_2log__sum__exp_8hpp.html',1,'']]], + ['log_5fsum_5fexp_2ehpp',['log_sum_exp.hpp',['../agrad_2rev_2functions_2log__sum__exp_8hpp.html',1,'']]], + ['log_5fsum_5fexp_2ehpp',['log_sum_exp.hpp',['../agrad_2rev_2matrix_2log__sum__exp_8hpp.html',1,'']]], + ['log_5fsum_5fexp_2ehpp',['log_sum_exp.hpp',['../math_2functions_2log__sum__exp_8hpp.html',1,'']]], + ['log_5fsum_5fexp_2ehpp',['log_sum_exp.hpp',['../math_2matrix_2log__sum__exp_8hpp.html',1,'']]], + ['log_5fu',['log_u',['../structstan_1_1mcmc_1_1nuts__util.html#a825716d6d5b78da51a930844d3b33ccf',1,'stan::mcmc::nuts_util']]], + ['logical_5fand',['logical_and',['../namespacestan_1_1math.html#adc35bab2db89b3ceda66f11e1fa53ec8',1,'stan::math']]], + ['logical_5fand_2ehpp',['logical_and.hpp',['../logical__and_8hpp.html',1,'']]], + ['logical_5feq',['logical_eq',['../namespacestan_1_1math.html#ab2213736b55fd6696fa0120fd3fe72e4',1,'stan::math']]], + ['logical_5feq_2ehpp',['logical_eq.hpp',['../logical__eq_8hpp.html',1,'']]], + ['logical_5fgt',['logical_gt',['../namespacestan_1_1math.html#aba86bfd994302061a0260e1202fca777',1,'stan::math']]], + ['logical_5fgt_2ehpp',['logical_gt.hpp',['../logical__gt_8hpp.html',1,'']]], + ['logical_5fgte',['logical_gte',['../namespacestan_1_1math.html#ac6bb0b8623192207d35e207ea312d8be',1,'stan::math']]], + ['logical_5fgte_2ehpp',['logical_gte.hpp',['../logical__gte_8hpp.html',1,'']]], + ['logical_5flt',['logical_lt',['../namespacestan_1_1math.html#a0b5bd91412749e10933f304b54aef88f',1,'stan::math']]], + ['logical_5flt_2ehpp',['logical_lt.hpp',['../logical__lt_8hpp.html',1,'']]], + ['logical_5flte',['logical_lte',['../namespacestan_1_1math.html#af3649d4c704962c4502cd6220a5e2230',1,'stan::math']]], + ['logical_5flte_2ehpp',['logical_lte.hpp',['../logical__lte_8hpp.html',1,'']]], + ['logical_5fnegate_5fexpr',['logical_negate_expr',['../structstan_1_1gm_1_1logical__negate__expr.html',1,'stan::gm']]], + ['logical_5fnegate_5fexpr_5ff',['logical_negate_expr_f',['../namespacestan_1_1gm.html#a5d5139168f13961e213defe8bd85ba16',1,'stan::gm']]], + ['logical_5fnegation',['logical_negation',['../namespacestan_1_1math.html#aad2fc9ce55dfac079d930335beb7e4a8',1,'stan::math']]], + ['logical_5fnegation_2ehpp',['logical_negation.hpp',['../logical__negation_8hpp.html',1,'']]], + ['logical_5fneq',['logical_neq',['../namespacestan_1_1math.html#a206eb210d8e7e2c718af25c40de8f9d1',1,'stan::math']]], + ['logical_5fneq_2ehpp',['logical_neq.hpp',['../logical__neq_8hpp.html',1,'']]], + ['logical_5for',['logical_or',['../namespacestan_1_1math.html#ac74007e2d5f55d5ae4a308f535869aee',1,'stan::math']]], + ['logical_5for_2ehpp',['logical_or.hpp',['../logical__or_8hpp.html',1,'']]], + ['logistic_2ehpp',['logistic.hpp',['../logistic_8hpp.html',1,'']]], + ['logistic_5fccdf_5flog',['logistic_ccdf_log',['../namespacestan_1_1prob.html#aeff91e2efd57e631955cb7ebde45a1c7',1,'stan::prob']]], + ['logistic_5fcdf',['logistic_cdf',['../namespacestan_1_1prob.html#ac2a1d5c2316209f3a4d6cc90f3f3b6cf',1,'stan::prob']]], + ['logistic_5fcdf_5flog',['logistic_cdf_log',['../namespacestan_1_1prob.html#aca4c773da2a18fac3e13b91e51e9e18d',1,'stan::prob']]], + ['logistic_5flog',['logistic_log',['../namespacestan_1_1prob.html#a33be4a206231be2a1acda61c06c05039',1,'stan::prob::logistic_log(const T_y &y, const T_loc &mu, const T_scale &sigma)'],['../namespacestan_1_1prob.html#abfa731b9fd1d7ba996e1e5f9eb6e847f',1,'stan::prob::logistic_log(const T_y &y, const T_loc &mu, const T_scale &sigma)']]], + ['logistic_5frng',['logistic_rng',['../namespacestan_1_1prob.html#a664843596a52a9bc23dc5f2073f9806b',1,'stan::prob']]], + ['logit',['logit',['../namespacestan_1_1agrad.html#ab43cf2fb570203a8492c272da3d2922f',1,'stan::agrad::logit()'],['../namespacestan_1_1math.html#a53342d0c2cd3a6e440c533070054aca3',1,'stan::math::logit()']]], + ['logit_2ehpp',['logit.hpp',['../agrad_2fwd_2functions_2logit_8hpp.html',1,'']]], + ['logit_2ehpp',['logit.hpp',['../math_2functions_2logit_8hpp.html',1,'']]], + ['lognormal_2ehpp',['lognormal.hpp',['../lognormal_8hpp.html',1,'']]], + ['lognormal_5fccdf_5flog',['lognormal_ccdf_log',['../namespacestan_1_1prob.html#a576b250e68b4cc83d9df5d697eb57fa2',1,'stan::prob']]], + ['lognormal_5fcdf',['lognormal_cdf',['../namespacestan_1_1prob.html#af50822e781206859400fb659831eb000',1,'stan::prob']]], + ['lognormal_5fcdf_5flog',['lognormal_cdf_log',['../namespacestan_1_1prob.html#aa7a25fc347587649f2ca55656fb23950',1,'stan::prob']]], + ['lognormal_5flog',['lognormal_log',['../namespacestan_1_1prob.html#a72c3cfe83f1bfa2a71d146dde0cc865e',1,'stan::prob::lognormal_log(const T_y &y, const T_loc &mu, const T_scale &sigma)'],['../namespacestan_1_1prob.html#a47dbe7f1b8096c72c8dc40496b9f082d',1,'stan::prob::lognormal_log(const T_y &y, const T_loc &mu, const T_scale &sigma)']]], + ['lognormal_5frng',['lognormal_rng',['../namespacestan_1_1prob.html#a9dbaae05c716d93b29dfc3f00f26d4ed',1,'stan::prob']]], + ['logp',['logp',['../classstan_1_1optimization_1_1_b_f_g_s_line_search.html#a6750ef181409d006239e8693a60daa85',1,'stan::optimization::BFGSLineSearch::logp()'],['../classstan_1_1optimization_1_1_nesterov_gradient.html#af86f9e2d5da6465c6fdaa435a7c48886',1,'stan::optimization::NesterovGradient::logp()']]], + ['low_5f',['low_',['../structstan_1_1gm_1_1range.html#a9b009f03d27b53ed652e22fbf5932d97',1,'stan::gm::range']]], + ['lowest',['lowest',['../struct_eigen_1_1_num_traits_3_01stan_1_1agrad_1_1var_01_4.html#a14cfab12cd9b5df0f0663a7bb07fa35d',1,'Eigen::NumTraits< stan::agrad::var >']]], + ['lp_5fno_5fjacobian',['lp_no_jacobian',['../namespacestan_1_1optimization.html#a03faddd9bfe31c6237e1ce662d3f3d2d',1,'stan::optimization']]], + ['lub_5fconstrain',['lub_constrain',['../namespacestan_1_1prob.html#a7333ecac8eb1a974e758a134f30fbf7b',1,'stan::prob::lub_constrain(const T x, TL lb, TU ub)'],['../namespacestan_1_1prob.html#af8825917ff4f4875b7820edc760e4440',1,'stan::prob::lub_constrain(const T x, const TL lb, const TU ub, T &lp)']]], + ['lub_5ffree',['lub_free',['../namespacestan_1_1prob.html#a4e48912671137a74815f5194163279c9',1,'stan::prob']]] +]; diff --git a/doc/api/html/search/all_6d.html b/doc/api/html/search/all_6d.html new file mode 100644 index 00000000000..2e27d4d647d --- /dev/null +++ b/doc/api/html/search/all_6d.html @@ -0,0 +1,25 @@ + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/doc/api/html/search/all_6d.js b/doc/api/html/search/all_6d.js new file mode 100644 index 00000000000..d4a6b6f7513 --- /dev/null +++ b/doc/api/html/search/all_6d.js @@ -0,0 +1,153 @@ +var searchData= +[ + ['m_5f',['M_',['../structstan_1_1gm_1_1vector__var__decl.html#a2a503a710912ec9280682c48252c673f',1,'stan::gm::vector_var_decl::M_()'],['../structstan_1_1gm_1_1matrix__var__decl.html#ac65e9e100b4199313535f4ce92e7c583',1,'stan::gm::matrix_var_decl::M_()'],['../structstan_1_1gm_1_1cholesky__factor__var__decl.html#a20ba381f18b44d1cd09bf468eb957eb0',1,'stan::gm::cholesky_factor_var_decl::M_()'],['../agrad_2rev_2matrix_2mdivide__left_8hpp.html#ac7022caeebffc39337bdfd893db75983',1,'M_(): mdivide_left.hpp'],['../agrad_2rev_2matrix_2mdivide__left__ldlt_8hpp.html#ac7022caeebffc39337bdfd893db75983',1,'M_(): mdivide_left_ldlt.hpp'],['../agrad_2rev_2matrix_2mdivide__left__spd_8hpp.html#ac7022caeebffc39337bdfd893db75983',1,'M_(): mdivide_left_spd.hpp'],['../agrad_2rev_2matrix_2mdivide__left__tri_8hpp.html#ac7022caeebffc39337bdfd893db75983',1,'M_(): mdivide_left_tri.hpp']]], + ['machine_5fprecision',['machine_precision',['../namespacestan_1_1math.html#a173839dddd0a8ac8afa710b9e3d5008a',1,'stan::math']]], + ['main',['main',['../print_8cpp.html#ac0f2228420376f4db7e1274f2b41667c',1,'main(int argc, const char *argv[]): print.cpp'],['../stanc_8cpp.html#ac0f2228420376f4db7e1274f2b41667c',1,'main(int argc, const char *argv[]): stanc.cpp']]], + ['mainpage_2edox',['mainpage.dox',['../mainpage_8dox.html',1,'']]], + ['major_5fversion',['MAJOR_VERSION',['../namespacestan.html#a75c4bb3d494fafd9d1714d4db258975c',1,'stan']]], + ['make_5fnu',['make_nu',['../namespacestan_1_1prob.html#a4aae2e874c72677ddb53ec9bdec1c29d',1,'stan::prob']]], + ['map_5f',['map_',['../structstan_1_1gm_1_1variable__map.html#a1473c759fc630466b193cbcb6a128cc7',1,'stan::gm::variable_map']]], + ['map_5fmatrix_5ft',['map_matrix_t',['../classstan_1_1io_1_1reader.html#a05f161f2ef596f356d249afbb0b43ca6',1,'stan::io::reader']]], + ['map_5frow_5fvector_5ft',['map_row_vector_t',['../classstan_1_1io_1_1reader.html#a71946c44faafcf4669f3cfde52816633',1,'stan::io::reader']]], + ['map_5fvector_5ft',['map_vector_t',['../classstan_1_1io_1_1reader.html#a1285611f704d4a3ec0d0e10ff98206d4',1,'stan::io::reader']]], + ['math_2ehpp',['math.hpp',['../math_8hpp.html',1,'']]], + ['matrix',['matrix',['../classstan_1_1io_1_1reader.html#afd2aeccae677df87006d976cbcae9fd2',1,'stan::io::reader']]], + ['matrix_2ehpp',['matrix.hpp',['../agrad_2rev_2error__handling_2matrix_8hpp.html',1,'']]], + ['matrix_2ehpp',['matrix.hpp',['../agrad_2rev_2matrix_8hpp.html',1,'']]], + ['matrix_2ehpp',['matrix.hpp',['../agrad_2fwd_2matrix_8hpp.html',1,'']]], + ['matrix_2ehpp',['matrix.hpp',['../math_2matrix_8hpp.html',1,'']]], + ['matrix_5fconstrain',['matrix_constrain',['../classstan_1_1io_1_1reader.html#a72043393997619c044478ced8a867f69',1,'stan::io::reader::matrix_constrain(size_t m, size_t n)'],['../classstan_1_1io_1_1reader.html#a44a9e74ffa53964f23173a5c31e798c8',1,'stan::io::reader::matrix_constrain(size_t m, size_t n, T &)']]], + ['matrix_5fd',['matrix_d',['../namespacestan_1_1math.html#ac1a24821b475ee296830ebac12f70460',1,'stan::math::matrix_d()'],['../namespacestan_1_1optimization.html#afd985f1c123f049985ad18ad074474c4',1,'stan::optimization::matrix_d()']]], + ['matrix_5fdecl_5fr',['matrix_decl_r',['../structstan_1_1gm_1_1var__decls__grammar.html#ae0a681145e09c4810cebdb1a43024b0f',1,'stan::gm::var_decls_grammar']]], + ['matrix_5ferror_5fhandling_2ehpp',['matrix_error_handling.hpp',['../matrix__error__handling_8hpp.html',1,'']]], + ['matrix_5ffd',['matrix_fd',['../namespacestan_1_1agrad.html#a9568a3aa8bbf0ba6c2e96ab703e83184',1,'stan::agrad']]], + ['matrix_5fffd',['matrix_ffd',['../namespacestan_1_1agrad.html#aff56af7392587b36f7071967f87ad7d1',1,'stan::agrad']]], + ['matrix_5fffv',['matrix_ffv',['../namespacestan_1_1agrad.html#a3e6bc2f7c13dfbbb0c30dce6dcb62951',1,'stan::agrad']]], + ['matrix_5ffv',['matrix_fv',['../namespacestan_1_1agrad.html#aac5f57e2caa5ea24203633335cfe3fc6',1,'stan::agrad']]], + ['matrix_5findex',['matrix_index',['../print_8hpp.html#ac6106c19828c8abe37b2bb9dc66ce82b',1,'matrix_index(stan::mcmc::chains<> &chains, const int index): print.hpp'],['../print_8hpp.html#abb3cd74cdc531aef4a85bed5fca26c26',1,'matrix_index(std::vector< int > &index, const std::vector< int > &dims): print.hpp']]], + ['matrix_5flb',['matrix_lb',['../classstan_1_1io_1_1reader.html#afcad89dd91b23010956526b523ed8c95',1,'stan::io::reader']]], + ['matrix_5flb_5fconstrain',['matrix_lb_constrain',['../classstan_1_1io_1_1reader.html#a79b98ecf881169d6dd480caa096c0ed8',1,'stan::io::reader::matrix_lb_constrain(const TL lb, size_t m, size_t n)'],['../classstan_1_1io_1_1reader.html#a9b119826c47b45fa83df1758de07c5ff',1,'stan::io::reader::matrix_lb_constrain(const TL lb, size_t m, size_t n, T &lp)']]], + ['matrix_5flb_5funconstrain',['matrix_lb_unconstrain',['../classstan_1_1io_1_1writer.html#a73a1d50b227b9488dc28ee98847aa100',1,'stan::io::writer']]], + ['matrix_5flub',['matrix_lub',['../classstan_1_1io_1_1reader.html#a13209c64b39d9c7515fb561ec788a516',1,'stan::io::reader']]], + ['matrix_5flub_5fconstrain',['matrix_lub_constrain',['../classstan_1_1io_1_1reader.html#a9007b1739c9738d88347f499e9a39021',1,'stan::io::reader::matrix_lub_constrain(const TL lb, const TU ub, size_t m, size_t n)'],['../classstan_1_1io_1_1reader.html#a7b8a944a6d7ff2ea53cf7a3e78843306',1,'stan::io::reader::matrix_lub_constrain(const TL lb, const TU ub, size_t m, size_t n, T &lp)']]], + ['matrix_5flub_5funconstrain',['matrix_lub_unconstrain',['../classstan_1_1io_1_1writer.html#a0f4b5839e3bd701f2c586e7d31bb0dbf',1,'stan::io::writer']]], + ['matrix_5fnormal_2ehpp',['matrix_normal.hpp',['../matrix__normal_8hpp.html',1,'']]], + ['matrix_5fnormal_5fprec_5flog',['matrix_normal_prec_log',['../namespacestan_1_1prob.html#a04ca61f93c3e75f12a7dafbbb2964069',1,'stan::prob::matrix_normal_prec_log(const Eigen::Matrix< T_y, Eigen::Dynamic, Eigen::Dynamic > &y, const Eigen::Matrix< T_Mu, Eigen::Dynamic, Eigen::Dynamic > &Mu, const Eigen::Matrix< T_Sigma, Eigen::Dynamic, Eigen::Dynamic > &Sigma, const Eigen::Matrix< T_D, Eigen::Dynamic, Eigen::Dynamic > &D)'],['../namespacestan_1_1prob.html#a225aae36a6e9611cdba3b36e20225a5a',1,'stan::prob::matrix_normal_prec_log(const Eigen::Matrix< T_y, Eigen::Dynamic, Eigen::Dynamic > &y, const Eigen::Matrix< T_Mu, Eigen::Dynamic, Eigen::Dynamic > &Mu, const Eigen::Matrix< T_Sigma, Eigen::Dynamic, Eigen::Dynamic > &Sigma, const Eigen::Matrix< T_D, Eigen::Dynamic, Eigen::Dynamic > &D)']]], + ['matrix_5ft',['matrix_t',['../classstan_1_1io_1_1reader.html#aded74129931435c293b0fd0885535d93',1,'stan::io::reader::matrix_t()'],['../classstan_1_1io_1_1writer.html#aadbf07fa0a161b2037f3dfbe0548f263',1,'stan::io::writer::matrix_t()'],['../namespacestan_1_1gm.html#af68190cae932b66ca3aa3c56bc2b0dc6',1,'stan::gm::MATRIX_T()']]], + ['matrix_5fub',['matrix_ub',['../classstan_1_1io_1_1reader.html#a280b0c933f7dae06f472e56432b45489',1,'stan::io::reader']]], + ['matrix_5fub_5fconstrain',['matrix_ub_constrain',['../classstan_1_1io_1_1reader.html#af70a11c24ac7cfba146d0864a05dcf9a',1,'stan::io::reader::matrix_ub_constrain(const TU ub, size_t m, size_t n)'],['../classstan_1_1io_1_1reader.html#ace55576f9257795f986494e343c11978',1,'stan::io::reader::matrix_ub_constrain(const TU ub, size_t m, size_t n, T &lp)']]], + ['matrix_5fub_5funconstrain',['matrix_ub_unconstrain',['../classstan_1_1io_1_1writer.html#a098679782a22794d929d982a1f1a147b',1,'stan::io::writer']]], + ['matrix_5funconstrain',['matrix_unconstrain',['../classstan_1_1io_1_1writer.html#a1120b4bda9918cce7944b2b857bed5f9',1,'stan::io::writer']]], + ['matrix_5fv',['matrix_v',['../namespacestan_1_1agrad.html#a31a0e0ac129c0a7d965b1fb17301c942',1,'stan::agrad']]], + ['matrix_5fvar_5fdecl',['matrix_var_decl',['../structstan_1_1gm_1_1matrix__var__decl.html#a80c7b9b96497a250e4b9861131e515aa',1,'stan::gm::matrix_var_decl::matrix_var_decl()'],['../structstan_1_1gm_1_1matrix__var__decl.html#a4a99b5bb963daaeba872633b7753ffff',1,'stan::gm::matrix_var_decl::matrix_var_decl(range const &range, expression const &M, expression const &N, std::string const &name, std::vector< expression > const &dims)']]], + ['matrix_5fvar_5fdecl',['matrix_var_decl',['../structstan_1_1gm_1_1matrix__var__decl.html',1,'stan::gm']]], + ['matrix_5fvari_2ehpp',['matrix_vari.hpp',['../matrix__vari_8hpp.html',1,'']]], + ['max',['max',['../structstd_1_1numeric__limits_3_01stan_1_1agrad_1_1fvar_3_01_t_01_4_01_4.html#ab5052559ef909e48342d86185079a8f3',1,'std::numeric_limits< stan::agrad::fvar< T > >::max()'],['../structstd_1_1numeric__limits_3_01stan_1_1agrad_1_1var_01_4.html#a133cb21b688f8be5f5d86b523d2848c1',1,'std::numeric_limits< stan::agrad::var >::max()'],['../namespacestan_1_1math.html#a86b6be1d580b3b5cf4b4f57546062352',1,'stan::math::max(const double a, const double b)'],['../namespacestan_1_1math.html#a5da0ef87756d3dbd20ca4ff5a3efa10d',1,'stan::math::max(const std::vector< int > &x)'],['../namespacestan_1_1math.html#acde414919e0e4dcfa72d565679819091',1,'stan::math::max(const std::vector< T > &x)'],['../namespacestan_1_1math.html#ae3f299773dc20e8305fc16df1be8d029',1,'stan::math::max(const Eigen::Matrix< T, R, C > &m)']]], + ['max_2ehpp',['max.hpp',['../functions_2max_8hpp.html',1,'']]], + ['max_2ehpp',['max.hpp',['../matrix_2max_8hpp.html',1,'']]], + ['max_5fexponent',['max_exponent',['../structstd_1_1numeric__limits_3_01stan_1_1agrad_1_1fvar_3_01_t_01_4_01_4.html#a20ce95f45b11a6e1649fe88ed29e9c18',1,'std::numeric_limits< stan::agrad::fvar< T > >::max_exponent()'],['../structstd_1_1numeric__limits_3_01stan_1_1agrad_1_1var_01_4.html#a8cfd734ee404aa28cf57f64d24d192d7',1,'std::numeric_limits< stan::agrad::var >::max_exponent()']]], + ['max_5fexponent10',['max_exponent10',['../structstd_1_1numeric__limits_3_01stan_1_1agrad_1_1fvar_3_01_t_01_4_01_4.html#aa7f994271a89f8f913680464f37e1033',1,'std::numeric_limits< stan::agrad::fvar< T > >::max_exponent10()'],['../structstd_1_1numeric__limits_3_01stan_1_1agrad_1_1var_01_4.html#ac513d112aece630b48c538b6ac397b13',1,'std::numeric_limits< stan::agrad::var >::max_exponent10()']]], + ['max_5fsize',['max_size',['../namespacestan.html#a8b2c79a3a686dcf90566be8492e1065d',1,'stan::max_size(const T1 &x1, const T2 &x2)'],['../namespacestan.html#ac5ca4bf16c3b5c453162473c67f844bb',1,'stan::max_size(const T1 &x1, const T2 &x2, const T3 &x3)'],['../namespacestan.html#afff0e381090b0d490dc3b23f3eaf8846',1,'stan::max_size(const T1 &x1, const T2 &x2, const T3 &x3, const T4 &x4)']]], + ['maxits',['maxIts',['../structstan_1_1optimization_1_1_b_f_g_s_minimizer_1_1_b_f_g_s_options.html#af876cbedf84144450e0762520e9ff191',1,'stan::optimization::BFGSMinimizer::BFGSOptions']]], + ['mcmc_2ehpp',['mcmc.hpp',['../mcmc_8hpp.html',1,'']]], + ['mcmc_5fwriter',['mcmc_writer',['../classstan_1_1io_1_1mcmc__writer.html',1,'stan::io']]], + ['mcmc_5fwriter',['mcmc_writer',['../classstan_1_1io_1_1mcmc__writer.html#a6a688bb1b2851d68f7305cb97c750a2b',1,'stan::io::mcmc_writer']]], + ['mcmc_5fwriter_2ehpp',['mcmc_writer.hpp',['../mcmc__writer_8hpp.html',1,'']]], + ['mdivide_5fleft',['mdivide_left',['../namespacestan_1_1agrad.html#a2b41bf2c8372fd934837bcab95ea6218',1,'stan::agrad::mdivide_left(const Eigen::Matrix< fvar< T >, R1, C1 > &A, const Eigen::Matrix< fvar< T >, R2, C2 > &b)'],['../namespacestan_1_1agrad.html#aa1da8d6fb0170dddd868c37b4ae0e243',1,'stan::agrad::mdivide_left(const Eigen::Matrix< double, R1, C1 > &A, const Eigen::Matrix< fvar< T >, R2, C2 > &b)'],['../namespacestan_1_1agrad.html#a9c7cffeb1a3590e2bc9803e2b9b96e57',1,'stan::agrad::mdivide_left(const Eigen::Matrix< fvar< T >, R1, C1 > &A, const Eigen::Matrix< double, R2, C2 > &b)'],['../namespacestan_1_1agrad.html#a290e23ab6f9674cb1400b32a1cadd61b',1,'stan::agrad::mdivide_left(const Eigen::Matrix< var, R1, C1 > &A, const Eigen::Matrix< var, R2, C2 > &b)'],['../namespacestan_1_1agrad.html#ad17f36acd5401a8f3d83410055cacd5b',1,'stan::agrad::mdivide_left(const Eigen::Matrix< var, R1, C1 > &A, const Eigen::Matrix< double, R2, C2 > &b)'],['../namespacestan_1_1agrad.html#a35f1d7800586ac5f5c1930627c2ed408',1,'stan::agrad::mdivide_left(const Eigen::Matrix< double, R1, C1 > &A, const Eigen::Matrix< var, R2, C2 > &b)'],['../namespacestan_1_1math.html#a7266758367e8260b2afbfaeea7d5b418',1,'stan::math::mdivide_left()']]], + ['mdivide_5fleft_2ehpp',['mdivide_left.hpp',['../agrad_2fwd_2matrix_2mdivide__left_8hpp.html',1,'']]], + ['mdivide_5fleft_2ehpp',['mdivide_left.hpp',['../agrad_2rev_2matrix_2mdivide__left_8hpp.html',1,'']]], + ['mdivide_5fleft_2ehpp',['mdivide_left.hpp',['../math_2matrix_2mdivide__left_8hpp.html',1,'']]], + ['mdivide_5fleft_5fldlt',['mdivide_left_ldlt',['../namespacestan_1_1agrad.html#a73fe08a0aed98a06f69afd7efdcf7e91',1,'stan::agrad::mdivide_left_ldlt(const stan::math::LDLT_factor< var, R1, C1 > &A, const Eigen::Matrix< var, R2, C2 > &b)'],['../namespacestan_1_1agrad.html#aca6cefcad36a0a43763634d7e399192e',1,'stan::agrad::mdivide_left_ldlt(const stan::math::LDLT_factor< var, R1, C1 > &A, const Eigen::Matrix< double, R2, C2 > &b)'],['../namespacestan_1_1agrad.html#a2cd1fc34cc6a308373729f667a21a243',1,'stan::agrad::mdivide_left_ldlt(const stan::math::LDLT_factor< double, R1, C1 > &A, const Eigen::Matrix< var, R2, C2 > &b)'],['../namespacestan_1_1math.html#a978022fb9cb20fd35f6e9e89ab3bc871',1,'stan::math::mdivide_left_ldlt()']]], + ['mdivide_5fleft_5fldlt_2ehpp',['mdivide_left_ldlt.hpp',['../agrad_2rev_2matrix_2mdivide__left__ldlt_8hpp.html',1,'']]], + ['mdivide_5fleft_5fldlt_2ehpp',['mdivide_left_ldlt.hpp',['../math_2matrix_2mdivide__left__ldlt_8hpp.html',1,'']]], + ['mdivide_5fleft_5fspd',['mdivide_left_spd',['../namespacestan_1_1agrad.html#a20ea5c1fbce1ed4ad4d54fc8f2c558c2',1,'stan::agrad::mdivide_left_spd(const Eigen::Matrix< var, R1, C1 > &A, const Eigen::Matrix< var, R2, C2 > &b)'],['../namespacestan_1_1agrad.html#a03fc1f8557646c3d1b11483a1f14c6de',1,'stan::agrad::mdivide_left_spd(const Eigen::Matrix< var, R1, C1 > &A, const Eigen::Matrix< double, R2, C2 > &b)'],['../namespacestan_1_1agrad.html#aec4a59ebe9eae939784d0a7e202bd7de',1,'stan::agrad::mdivide_left_spd(const Eigen::Matrix< double, R1, C1 > &A, const Eigen::Matrix< var, R2, C2 > &b)'],['../namespacestan_1_1math.html#a0c8c6e72f1cbf2b73008d4fc98de1abe',1,'stan::math::mdivide_left_spd()']]], + ['mdivide_5fleft_5fspd_2ehpp',['mdivide_left_spd.hpp',['../agrad_2rev_2matrix_2mdivide__left__spd_8hpp.html',1,'']]], + ['mdivide_5fleft_5fspd_2ehpp',['mdivide_left_spd.hpp',['../math_2matrix_2mdivide__left__spd_8hpp.html',1,'']]], + ['mdivide_5fleft_5ftri',['mdivide_left_tri',['../namespacestan_1_1agrad.html#a4cc1b5631c20f7a48b973d5ca0418c34',1,'stan::agrad::mdivide_left_tri(const Eigen::Matrix< var, R1, C1 > &A, const Eigen::Matrix< var, R2, C2 > &b)'],['../namespacestan_1_1agrad.html#a97be1bb5da2a12a36c9d32235d59bd5f',1,'stan::agrad::mdivide_left_tri(const Eigen::Matrix< double, R1, C1 > &A, const Eigen::Matrix< var, R2, C2 > &b)'],['../namespacestan_1_1agrad.html#aac856c62d730cb5880add59627d59d5a',1,'stan::agrad::mdivide_left_tri(const Eigen::Matrix< var, R1, C1 > &A, const Eigen::Matrix< double, R2, C2 > &b)'],['../namespacestan_1_1math.html#ac9ffa799f8af2cd4941cbd2506bc4573',1,'stan::math::mdivide_left_tri(const Eigen::Matrix< T1, R1, C1 > &A, const Eigen::Matrix< T2, R2, C2 > &b)'],['../namespacestan_1_1math.html#a58dbd828faf06c2ef74152367f749ca4',1,'stan::math::mdivide_left_tri(const Eigen::Matrix< T, R1, C1 > &A)']]], + ['mdivide_5fleft_5ftri_2ehpp',['mdivide_left_tri.hpp',['../agrad_2rev_2matrix_2mdivide__left__tri_8hpp.html',1,'']]], + ['mdivide_5fleft_5ftri_2ehpp',['mdivide_left_tri.hpp',['../math_2matrix_2mdivide__left__tri_8hpp.html',1,'']]], + ['mdivide_5fleft_5ftri_5flow',['mdivide_left_tri_low',['../namespacestan_1_1agrad.html#a4976e3da1ade5b442fdf9a98ce657e1b',1,'stan::agrad::mdivide_left_tri_low(const Eigen::Matrix< fvar< T >, R1, C1 > &A, const Eigen::Matrix< fvar< T >, R2, C2 > &b)'],['../namespacestan_1_1agrad.html#a4cae5cb645fe5bc960315f994d2cce24',1,'stan::agrad::mdivide_left_tri_low(const Eigen::Matrix< double, R1, C1 > &A, const Eigen::Matrix< fvar< T >, R2, C2 > &b)'],['../namespacestan_1_1agrad.html#a88989bbd44ec90171c52d78cf99fa37f',1,'stan::agrad::mdivide_left_tri_low(const Eigen::Matrix< fvar< T >, R1, C1 > &A, const Eigen::Matrix< double, R2, C2 > &b)'],['../namespacestan_1_1math.html#a199a9357715dff8b9a3bae8cc1bb4aa5',1,'stan::math::mdivide_left_tri_low(const Eigen::Matrix< T1, R1, C1 > &A, const Eigen::Matrix< T2, R2, C2 > &b)'],['../namespacestan_1_1math.html#ae8391d23da9e29f3420fdb89116e83cd',1,'stan::math::mdivide_left_tri_low(const Eigen::Matrix< T, R1, C1 > &A)']]], + ['mdivide_5fleft_5ftri_5flow_2ehpp',['mdivide_left_tri_low.hpp',['../math_2matrix_2mdivide__left__tri__low_8hpp.html',1,'']]], + ['mdivide_5fleft_5ftri_5flow_2ehpp',['mdivide_left_tri_low.hpp',['../agrad_2fwd_2matrix_2mdivide__left__tri__low_8hpp.html',1,'']]], + ['mdivide_5fright',['mdivide_right',['../namespacestan_1_1agrad.html#a92e113c418aa00fb0b0f05de3421a377',1,'stan::agrad::mdivide_right(const Eigen::Matrix< fvar< T >, R1, C1 > &A, const Eigen::Matrix< fvar< T >, R2, C2 > &b)'],['../namespacestan_1_1agrad.html#ab1bf56872a19067bf76e9e0ae0319ff3',1,'stan::agrad::mdivide_right(const Eigen::Matrix< fvar< T >, R1, C1 > &A, const Eigen::Matrix< double, R2, C2 > &b)'],['../namespacestan_1_1agrad.html#ad4d1ebb9e641da4b6d03b08eac67469c',1,'stan::agrad::mdivide_right(const Eigen::Matrix< double, R1, C1 > &A, const Eigen::Matrix< fvar< T >, R2, C2 > &b)'],['../namespacestan_1_1math.html#a5efba9dddcf77889b66c1210ba55cf5f',1,'stan::math::mdivide_right()']]], + ['mdivide_5fright_2ehpp',['mdivide_right.hpp',['../math_2matrix_2mdivide__right_8hpp.html',1,'']]], + ['mdivide_5fright_2ehpp',['mdivide_right.hpp',['../agrad_2fwd_2matrix_2mdivide__right_8hpp.html',1,'']]], + ['mdivide_5fright_5fldlt',['mdivide_right_ldlt',['../namespacestan_1_1math.html#a68c862e90d97ea5d5552101b65978813',1,'stan::math::mdivide_right_ldlt(const Eigen::Matrix< T1, R1, C1 > &b, const stan::math::LDLT_factor< T2, R2, C2 > &A)'],['../namespacestan_1_1math.html#a01d77bf4121d56b8491092164d1523ce',1,'stan::math::mdivide_right_ldlt(const Eigen::Matrix< double, R1, C1 > &b, const stan::math::LDLT_factor< double, R2, C2 > &A)']]], + ['mdivide_5fright_5fldlt_2ehpp',['mdivide_right_ldlt.hpp',['../mdivide__right__ldlt_8hpp.html',1,'']]], + ['mdivide_5fright_5fspd',['mdivide_right_spd',['../namespacestan_1_1math.html#a5d6f32dd8adc4a9ffa28d63b62d4c90f',1,'stan::math']]], + ['mdivide_5fright_5fspd_2ehpp',['mdivide_right_spd.hpp',['../mdivide__right__spd_8hpp.html',1,'']]], + ['mdivide_5fright_5ftri',['mdivide_right_tri',['../namespacestan_1_1math.html#ae158767243e09b91b9ba6cd366e7dab8',1,'stan::math']]], + ['mdivide_5fright_5ftri_2ehpp',['mdivide_right_tri.hpp',['../mdivide__right__tri_8hpp.html',1,'']]], + ['mdivide_5fright_5ftri_5flow',['mdivide_right_tri_low',['../namespacestan_1_1agrad.html#ad91af5d6f2192ec14360aa9f9e70bfc0',1,'stan::agrad::mdivide_right_tri_low(const Eigen::Matrix< fvar< T >, R1, C1 > &A, const Eigen::Matrix< fvar< T >, R2, C2 > &b)'],['../namespacestan_1_1agrad.html#a2dc33743ae5cee446bca0e9f0c18c1fa',1,'stan::agrad::mdivide_right_tri_low(const Eigen::Matrix< fvar< T >, R1, C1 > &A, const Eigen::Matrix< double, R2, C2 > &b)'],['../namespacestan_1_1agrad.html#a6f2d6e5dd89d2094f04d9a81cb8a6191',1,'stan::agrad::mdivide_right_tri_low(const Eigen::Matrix< double, R1, C1 > &A, const Eigen::Matrix< fvar< T >, R2, C2 > &b)'],['../namespacestan_1_1math.html#a09f35fbeab4d8ff311ce77d91492e26b',1,'stan::math::mdivide_right_tri_low()']]], + ['mdivide_5fright_5ftri_5flow_2ehpp',['mdivide_right_tri_low.hpp',['../math_2matrix_2mdivide__right__tri__low_8hpp.html',1,'']]], + ['mdivide_5fright_5ftri_5flow_2ehpp',['mdivide_right_tri_low.hpp',['../agrad_2fwd_2matrix_2mdivide__right__tri__low_8hpp.html',1,'']]], + ['mean',['mean',['../classstan_1_1mcmc_1_1chains.html#a905c53a11c08a53404379096885674ac',1,'stan::mcmc::chains::mean(const int chain, const int index)'],['../classstan_1_1mcmc_1_1chains.html#a9549bed51ad7dac77a4b27b849768049',1,'stan::mcmc::chains::mean(const int index)'],['../classstan_1_1mcmc_1_1chains.html#a5587f727e87620b9f2e9477f7517c9fa',1,'stan::mcmc::chains::mean(const int chain, const std::string &name)'],['../classstan_1_1mcmc_1_1chains.html#ad53b31c4b7b3056d5e38469f3c58ed51',1,'stan::mcmc::chains::mean(const std::string &name)'],['../namespacestan_1_1math.html#a3443c4ac994b039a7f055c55c5afa8a3',1,'stan::math::mean(const std::vector< T > &v)'],['../namespacestan_1_1math.html#a8074c0041b93407c473fd26a7c45dc88',1,'stan::math::mean(const Eigen::Matrix< T, R, C > &m)']]], + ['mean_2ehpp',['mean.hpp',['../mean_8hpp.html',1,'']]], + ['memalloc_5f',['memalloc_',['../agrad__thread__safe_8hpp.html#a101adb62dfa9c36d8fe9d782b145b638',1,'memalloc_(): agrad_thread_safe.hpp'],['../namespacestan_1_1agrad.html#aaa104691d168acd62c8adff8e1888d5f',1,'stan::agrad::memalloc_()']]], + ['member_5fvar_5fdecl_5fvisgen',['member_var_decl_visgen',['../structstan_1_1gm_1_1member__var__decl__visgen.html#a665f039f108df78a55e1ddf8651c6dca',1,'stan::gm::member_var_decl_visgen']]], + ['member_5fvar_5fdecl_5fvisgen',['member_var_decl_visgen',['../structstan_1_1gm_1_1member__var__decl__visgen.html',1,'stan::gm']]], + ['memory_2ehpp',['memory.hpp',['../memory_8hpp.html',1,'']]], + ['meta_2ehpp',['meta.hpp',['../meta_8hpp.html',1,'']]], + ['metadata',['metadata',['../structstan_1_1io_1_1stan__csv.html#a4ecfceb7adb01489b02afae2d38bb32d',1,'stan::io::stan_csv']]], + ['metric',['metric',['../structstan_1_1io_1_1stan__csv__adaptation.html#acb7a22f17dae3c239bab54097f06a082',1,'stan::io::stan_csv_adaptation']]], + ['min',['min',['../structstd_1_1numeric__limits_3_01stan_1_1agrad_1_1fvar_3_01_t_01_4_01_4.html#ae238eb8551b8faa9ff191638541d48a6',1,'std::numeric_limits< stan::agrad::fvar< T > >::min()'],['../structstd_1_1numeric__limits_3_01stan_1_1agrad_1_1var_01_4.html#a4442454f1562bcd4cd926cb45b5d16b9',1,'std::numeric_limits< stan::agrad::var >::min()'],['../namespacestan_1_1math.html#ab360c822174f211838f5979760c7e09e',1,'stan::math::min(const double a, const double b)'],['../namespacestan_1_1math.html#a3f076860549f63d55c0e4985dce78099',1,'stan::math::min(const std::vector< int > &x)'],['../namespacestan_1_1math.html#a9e9c3a01030d96fd4c8f28e2ed8d3d61',1,'stan::math::min(const std::vector< T > &x)'],['../namespacestan_1_1math.html#a86f2380e5c54a549e0f74ffd51204d33',1,'stan::math::min(const Eigen::Matrix< T, R, C > &m)']]], + ['min_2ehpp',['min.hpp',['../functions_2min_8hpp.html',1,'']]], + ['min_2ehpp',['min.hpp',['../matrix_2min_8hpp.html',1,'']]], + ['min_5fexponent',['min_exponent',['../structstd_1_1numeric__limits_3_01stan_1_1agrad_1_1fvar_3_01_t_01_4_01_4.html#ace35430e8870ecb76f33c3053c88dabe',1,'std::numeric_limits< stan::agrad::fvar< T > >::min_exponent()'],['../structstd_1_1numeric__limits_3_01stan_1_1agrad_1_1var_01_4.html#ae36c2c99f19cedb4fc1e791d6e18d097',1,'std::numeric_limits< stan::agrad::var >::min_exponent()']]], + ['min_5fexponent10',['min_exponent10',['../structstd_1_1numeric__limits_3_01stan_1_1agrad_1_1fvar_3_01_t_01_4_01_4.html#a7a7c9a1c6899d243cb31c6173d887bc2',1,'std::numeric_limits< stan::agrad::fvar< T > >::min_exponent10()'],['../structstd_1_1numeric__limits_3_01stan_1_1agrad_1_1var_01_4.html#a4d51c2b58c296c505325170f1b24a2c2',1,'std::numeric_limits< stan::agrad::var >::min_exponent10()']]], + ['minalpha',['minAlpha',['../structstan_1_1optimization_1_1_b_f_g_s_minimizer_1_1_b_f_g_s_options.html#af96e08cafc1f70370eee848f0a4e0b05',1,'stan::optimization::BFGSMinimizer::BFGSOptions']]], + ['minimize',['minimize',['../classstan_1_1optimization_1_1_b_f_g_s_minimizer.html#a27a804ca4bbe7923b8913ab38a8693a6',1,'stan::optimization::BFGSMinimizer']]], + ['minor_5fversion',['MINOR_VERSION',['../namespacestan.html#ad48b562c737bb49645bd8117067858b9',1,'stan']]], + ['minus',['minus',['../namespacestan_1_1math.html#a87b343d6dc12982c2b76c453650c0797',1,'stan::math']]], + ['minus_2ehpp',['minus.hpp',['../minus_8hpp.html',1,'']]], + ['minv',['mInv',['../classstan_1_1mcmc_1_1dense__e__point.html#abf64e065e1579f7aeb211d764dc62eb1',1,'stan::mcmc::dense_e_point::mInv()'],['../classstan_1_1mcmc_1_1diag__e__point.html#aaeb41431de534f7237ea8a180b2b3d1a',1,'stan::mcmc::diag_e_point::mInv()']]], + ['model',['model',['../structstan_1_1io_1_1stan__csv__metadata.html#ab8e05cb697a29eac28fd070ab8567de7',1,'stan::io::stan_csv_metadata::model()'],['../structstan_1_1model_1_1model__functional.html#a3930666df0fcdc90f7585423d7d2f7c6',1,'stan::model::model_functional::model()']]], + ['model_2ehpp',['model.hpp',['../model_8hpp.html',1,'']]], + ['model_5ffunctional',['model_functional',['../structstan_1_1model_1_1model__functional.html',1,'stan::model']]], + ['model_5ffunctional',['model_functional',['../structstan_1_1model_1_1model__functional.html#a1b4c896f4238030fdececc74fd629307',1,'stan::model::model_functional']]], + ['model_5fheader_2ehpp',['model_header.hpp',['../model__header_8hpp.html',1,'']]], + ['model_5fname_5f',['model_name_',['../structstan_1_1gm_1_1program__grammar.html#a32cf25177064369c7fcccc8e3f8e5cf1',1,'stan::gm::program_grammar']]], + ['model_5fname_5forigin',['model_name_origin',['../namespacestan_1_1gm.html#a119c68ad93a3fc5589c594433b8cb258',1,'stan::gm']]], + ['model_5fr',['model_r',['../structstan_1_1gm_1_1program__grammar.html#a082357dac44c70fe58bb9941c5ff4972',1,'stan::gm::program_grammar']]], + ['modeladaptor',['ModelAdaptor',['../classstan_1_1optimization_1_1_model_adaptor.html',1,'stan::optimization']]], + ['modeladaptor',['ModelAdaptor',['../classstan_1_1optimization_1_1_model_adaptor.html#a28c05023727eb49f55b51ec0dee8413e',1,'stan::optimization::ModelAdaptor']]], + ['modified_5fbessel_5ffirst_5fkind',['modified_bessel_first_kind',['../namespacestan_1_1agrad.html#af1e6f0609bef81a1832bd4c624350e6e',1,'stan::agrad::modified_bessel_first_kind(int v, const fvar< T > &z)'],['../namespacestan_1_1agrad.html#a4667276304c443e9bde5fb7218c56778',1,'stan::agrad::modified_bessel_first_kind(const int &v, const var &a)'],['../namespacestan_1_1math.html#acafecf14b103c7c17da33368d07b1565',1,'stan::math::modified_bessel_first_kind()']]], + ['modified_5fbessel_5ffirst_5fkind_2ehpp',['modified_bessel_first_kind.hpp',['../agrad_2rev_2functions_2modified__bessel__first__kind_8hpp.html',1,'']]], + ['modified_5fbessel_5ffirst_5fkind_2ehpp',['modified_bessel_first_kind.hpp',['../math_2functions_2modified__bessel__first__kind_8hpp.html',1,'']]], + ['modified_5fbessel_5ffirst_5fkind_2ehpp',['modified_bessel_first_kind.hpp',['../agrad_2fwd_2functions_2modified__bessel__first__kind_8hpp.html',1,'']]], + ['modified_5fbessel_5fsecond_5fkind',['modified_bessel_second_kind',['../namespacestan_1_1agrad.html#a2af4019aee25cb289b88d3dc946eea77',1,'stan::agrad::modified_bessel_second_kind(int v, const fvar< T > &z)'],['../namespacestan_1_1agrad.html#a4a949984f1a537a77db66f4d4f15cfeb',1,'stan::agrad::modified_bessel_second_kind(const int &v, const var &a)'],['../namespacestan_1_1math.html#a72ce86f3db5478cad4666c9cf1d05a6e',1,'stan::math::modified_bessel_second_kind()']]], + ['modified_5fbessel_5fsecond_5fkind_2ehpp',['modified_bessel_second_kind.hpp',['../math_2functions_2modified__bessel__second__kind_8hpp.html',1,'']]], + ['modified_5fbessel_5fsecond_5fkind_2ehpp',['modified_bessel_second_kind.hpp',['../agrad_2fwd_2functions_2modified__bessel__second__kind_8hpp.html',1,'']]], + ['modified_5fbessel_5fsecond_5fkind_2ehpp',['modified_bessel_second_kind.hpp',['../agrad_2rev_2functions_2modified__bessel__second__kind_8hpp.html',1,'']]], + ['mulcost',['MulCost',['../struct_eigen_1_1_num_traits_3_01stan_1_1agrad_1_1var_01_4.html#a932a61195daad3e89711cfb02521cac9a4440e43b74d010d56f93bded451d0741',1,'Eigen::NumTraits< stan::agrad::var >']]], + ['multi_5fgp_2ehpp',['multi_gp.hpp',['../multi__gp_8hpp.html',1,'']]], + ['multi_5fgp_5flog',['multi_gp_log',['../namespacestan_1_1prob.html#a9c3810ea429509d3fd4e9a435a73f11f',1,'stan::prob::multi_gp_log(const Eigen::Matrix< T_y, Eigen::Dynamic, Eigen::Dynamic > &y, const Eigen::Matrix< T_covar, Eigen::Dynamic, Eigen::Dynamic > &Sigma, const Eigen::Matrix< T_w, Eigen::Dynamic, 1 > &w)'],['../namespacestan_1_1prob.html#a87858b89fe976714f66df92989fb0f03',1,'stan::prob::multi_gp_log(const Eigen::Matrix< T_y, Eigen::Dynamic, Eigen::Dynamic > &y, const Eigen::Matrix< T_covar, Eigen::Dynamic, Eigen::Dynamic > &Sigma, const Eigen::Matrix< T_loc, Eigen::Dynamic, 1 > &w)']]], + ['multi_5fnormal_2ehpp',['multi_normal.hpp',['../multi__normal_8hpp.html',1,'']]], + ['multi_5fnormal_5fcholesky_2ehpp',['multi_normal_cholesky.hpp',['../multi__normal__cholesky_8hpp.html',1,'']]], + ['multi_5fnormal_5fcholesky_5flog',['multi_normal_cholesky_log',['../namespacestan_1_1prob.html#a01330a7c13ec8bb09a28b0983ef805c3',1,'stan::prob::multi_normal_cholesky_log(const Eigen::Matrix< T_y, Eigen::Dynamic, 1 > &y, const Eigen::Matrix< T_loc, Eigen::Dynamic, 1 > &mu, const Eigen::Matrix< T_covar, Eigen::Dynamic, Eigen::Dynamic > &L)'],['../namespacestan_1_1prob.html#adb8d48a2490b405c5f07ff6a316b4d3a',1,'stan::prob::multi_normal_cholesky_log(const Eigen::Matrix< T_y, Eigen::Dynamic, 1 > &y, const Eigen::Matrix< T_loc, Eigen::Dynamic, 1 > &mu, const Eigen::Matrix< T_covar, Eigen::Dynamic, Eigen::Dynamic > &L)'],['../namespacestan_1_1prob.html#aceed1445a3d25c5fc36dcf38ef115692',1,'stan::prob::multi_normal_cholesky_log(const Eigen::Matrix< T_y, Eigen::Dynamic, Eigen::Dynamic > &y, const Eigen::Matrix< T_loc, Eigen::Dynamic, 1 > &mu, const Eigen::Matrix< T_covar, Eigen::Dynamic, Eigen::Dynamic > &L)'],['../namespacestan_1_1prob.html#a59d30c1dea51119a3bc99519eca23f1f',1,'stan::prob::multi_normal_cholesky_log(const Eigen::Matrix< T_y, Eigen::Dynamic, Eigen::Dynamic > &y, const Eigen::Matrix< T_loc, Eigen::Dynamic, 1 > &mu, const Eigen::Matrix< T_covar, Eigen::Dynamic, Eigen::Dynamic > &L)']]], + ['multi_5fnormal_5flog',['multi_normal_log',['../namespacestan_1_1prob.html#a71e8ba5779457e6f532f39e89de717e4',1,'stan::prob::multi_normal_log(const Eigen::Matrix< T_y, Eigen::Dynamic, 1 > &y, const Eigen::Matrix< T_loc, Eigen::Dynamic, 1 > &mu, const Eigen::Matrix< T_covar, Eigen::Dynamic, Eigen::Dynamic > &Sigma)'],['../namespacestan_1_1prob.html#a627102d5b7ce3cf3dc6835cb1e6b3455',1,'stan::prob::multi_normal_log(const Eigen::Matrix< T_y, Eigen::Dynamic, 1 > &y, const Eigen::Matrix< T_loc, Eigen::Dynamic, 1 > &mu, const Eigen::Matrix< T_covar, Eigen::Dynamic, Eigen::Dynamic > &Sigma)'],['../namespacestan_1_1prob.html#a1be2baaf4bbbf9997816256e21fc849c',1,'stan::prob::multi_normal_log(const Eigen::Matrix< T_y, Eigen::Dynamic, Eigen::Dynamic > &y, const Eigen::Matrix< T_loc, Eigen::Dynamic, 1 > &mu, const Eigen::Matrix< T_covar, Eigen::Dynamic, Eigen::Dynamic > &Sigma)'],['../namespacestan_1_1prob.html#a5f7dfeb4f132811e2584b673f808396c',1,'stan::prob::multi_normal_log(const Eigen::Matrix< T_y, Eigen::Dynamic, Eigen::Dynamic > &y, const Eigen::Matrix< T_loc, Eigen::Dynamic, 1 > &mu, const Eigen::Matrix< T_covar, Eigen::Dynamic, Eigen::Dynamic > &Sigma)']]], + ['multi_5fnormal_5fprec_2ehpp',['multi_normal_prec.hpp',['../multi__normal__prec_8hpp.html',1,'']]], + ['multi_5fnormal_5fprec_5flog',['multi_normal_prec_log',['../namespacestan_1_1prob.html#a3aa4c668766dc37248e6d5bd84eae338',1,'stan::prob::multi_normal_prec_log(const Eigen::Matrix< T_y, Eigen::Dynamic, 1 > &y, const Eigen::Matrix< T_loc, Eigen::Dynamic, 1 > &mu, const Eigen::Matrix< T_covar, Eigen::Dynamic, Eigen::Dynamic > &Sigma)'],['../namespacestan_1_1prob.html#a9d21551db0a50bd061cbf0147628a255',1,'stan::prob::multi_normal_prec_log(const Eigen::Matrix< T_y, Eigen::Dynamic, 1 > &y, const Eigen::Matrix< T_loc, Eigen::Dynamic, 1 > &mu, const Eigen::Matrix< T_covar, Eigen::Dynamic, Eigen::Dynamic > &Sigma)'],['../namespacestan_1_1prob.html#a45250c0ec42bb7278ced6275eed9ffa1',1,'stan::prob::multi_normal_prec_log(const Eigen::Matrix< T_y, Eigen::Dynamic, Eigen::Dynamic > &y, const Eigen::Matrix< T_loc, Eigen::Dynamic, 1 > &mu, const Eigen::Matrix< T_covar, Eigen::Dynamic, Eigen::Dynamic > &Sigma)'],['../namespacestan_1_1prob.html#a5478d2a990aa6b82b0911707659c1e50',1,'stan::prob::multi_normal_prec_log(const Eigen::Matrix< T_y, Eigen::Dynamic, Eigen::Dynamic > &y, const Eigen::Matrix< T_loc, Eigen::Dynamic, 1 > &mu, const Eigen::Matrix< T_covar, Eigen::Dynamic, Eigen::Dynamic > &Sigma)']]], + ['multi_5fnormal_5frng',['multi_normal_rng',['../namespacestan_1_1prob.html#a93eceb90a88d6432e3bda7c5e35db8e0',1,'stan::prob']]], + ['multi_5fstudent_5ft_2ehpp',['multi_student_t.hpp',['../multi__student__t_8hpp.html',1,'']]], + ['multi_5fstudent_5ft_5flog',['multi_student_t_log',['../namespacestan_1_1prob.html#a48b71448bd4100f9dbbf884c9fee4de6',1,'stan::prob::multi_student_t_log(const Eigen::Matrix< T_y, Eigen::Dynamic, 1 > &y, const T_dof &nu, const Eigen::Matrix< T_loc, Eigen::Dynamic, 1 > &mu, const Eigen::Matrix< T_scale, Eigen::Dynamic, Eigen::Dynamic > &Sigma)'],['../namespacestan_1_1prob.html#ac5c541f4309051587f35a5187ef5165c',1,'stan::prob::multi_student_t_log(const Eigen::Matrix< T_y, Eigen::Dynamic, 1 > &y, const T_dof &nu, const Eigen::Matrix< T_loc, Eigen::Dynamic, 1 > &mu, const Eigen::Matrix< T_scale, Eigen::Dynamic, Eigen::Dynamic > &Sigma)']]], + ['multi_5fstudent_5ft_5frng',['multi_student_t_rng',['../namespacestan_1_1prob.html#ab61ba841eb4bd76a7df2975e18f0b025',1,'stan::prob']]], + ['multinomial_2ehpp',['multinomial.hpp',['../multinomial_8hpp.html',1,'']]], + ['multinomial_5flog',['multinomial_log',['../namespacestan_1_1prob.html#a30f2c82429f15f40ab59b038f35d29f4',1,'stan::prob::multinomial_log(const std::vector< int > &ns, const Eigen::Matrix< T_prob, Eigen::Dynamic, 1 > &theta)'],['../namespacestan_1_1prob.html#aee5c8f7cbbbc28455bae7c9f6b6bf2f8',1,'stan::prob::multinomial_log(const std::vector< int > &ns, const Eigen::Matrix< T_prob, Eigen::Dynamic, 1 > &theta)']]], + ['multinomial_5frng',['multinomial_rng',['../namespacestan_1_1prob.html#a7d4d3be39750d795653ce0a8ee25e065',1,'stan::prob']]], + ['multiplication',['multiplication',['../namespacestan_1_1gm.html#a84ada99320bf1c4bb7bc1609d29965a4',1,'stan::gm']]], + ['multiplication_5fexpr',['multiplication_expr',['../structstan_1_1gm_1_1multiplication__expr.html',1,'stan::gm']]], + ['multiply',['multiply',['../namespacestan_1_1agrad.html#af5dfb2569a8f7f2f95830d0f0bb5bd40',1,'stan::agrad::multiply(const Eigen::Matrix< fvar< T >, R1, C1 > &m, const fvar< T > &c)'],['../namespacestan_1_1agrad.html#a148bf99bd72fc1ef2e7fb410837bda03',1,'stan::agrad::multiply(const Eigen::Matrix< fvar< T >, R2, C2 > &m, const double c)'],['../namespacestan_1_1agrad.html#ad8c423f41aa11c693cdeff32ec369021',1,'stan::agrad::multiply(const Eigen::Matrix< double, R1, C1 > &m, const fvar< T > &c)'],['../namespacestan_1_1agrad.html#a1bac78b32103f6336d645dcc8e601e1c',1,'stan::agrad::multiply(const fvar< T > &c, const Eigen::Matrix< fvar< T >, R1, C1 > &m)'],['../namespacestan_1_1agrad.html#a5ab5375c22320ffabc25b59bf372b787',1,'stan::agrad::multiply(const double c, const Eigen::Matrix< fvar< T >, R1, C1 > &m)'],['../namespacestan_1_1agrad.html#af88e47add7862504f83f82f6b209ef8d',1,'stan::agrad::multiply(const fvar< T > &c, const Eigen::Matrix< double, R1, C1 > &m)'],['../namespacestan_1_1agrad.html#a19d042d141225843b96006e12359677c',1,'stan::agrad::multiply(const Eigen::Matrix< fvar< T >, R1, C1 > &m1, const Eigen::Matrix< fvar< T >, R2, C2 > &m2)'],['../namespacestan_1_1agrad.html#a467103932d1ea2c9717b85872a3ea60b',1,'stan::agrad::multiply(const Eigen::Matrix< fvar< T >, R1, C1 > &m1, const Eigen::Matrix< double, R2, C2 > &m2)'],['../namespacestan_1_1agrad.html#adbfc25a42aa3f524ea845e592c7ccd2b',1,'stan::agrad::multiply(const Eigen::Matrix< double, R1, C1 > &m1, const Eigen::Matrix< fvar< T >, R2, C2 > &m2)'],['../namespacestan_1_1agrad.html#a115c9006f06661eef4c034d1a2f885dc',1,'stan::agrad::multiply(const Eigen::Matrix< fvar< T >, 1, C1 > &rv, const Eigen::Matrix< fvar< T >, R2, 1 > &v)'],['../namespacestan_1_1agrad.html#a5a6f66eeddc4fcfeced24f4a710fdb97',1,'stan::agrad::multiply(const Eigen::Matrix< fvar< T >, 1, C1 > &rv, const Eigen::Matrix< double, R2, 1 > &v)'],['../namespacestan_1_1agrad.html#af00532cd123eac94a193d0c76e9d58ee',1,'stan::agrad::multiply(const Eigen::Matrix< double, 1, C1 > &rv, const Eigen::Matrix< fvar< T >, R2, 1 > &v)'],['../namespacestan_1_1agrad.html#a57ea43d861a571f86937062eda4fa5af',1,'stan::agrad::multiply(const T1 &v, const T2 &c)'],['../namespacestan_1_1agrad.html#a26ac66272ba16ad14daa9f4952a16454',1,'stan::agrad::multiply(const T1 &c, const Eigen::Matrix< T2, R2, C2 > &m)'],['../namespacestan_1_1agrad.html#a5eb3c1069fc2d98aa42b3b0308bd9c60',1,'stan::agrad::multiply(const Eigen::Matrix< T1, R1, C1 > &m, const T2 &c)'],['../namespacestan_1_1agrad.html#af029b6f77d642a6278df7fced3a1ec12',1,'stan::agrad::multiply(const Eigen::Matrix< T1, R1, C1 > &m1, const Eigen::Matrix< T2, R2, C2 > &m2)'],['../namespacestan_1_1agrad.html#a746363e825961a19e0edb846c0d420cc',1,'stan::agrad::multiply(const Eigen::Matrix< T1, 1, C1 > &rv, const Eigen::Matrix< T2, R2, 1 > &v)'],['../namespacestan_1_1math.html#a919d4a6495c489841df3d0423200b147',1,'stan::math::multiply(const Eigen::Matrix< double, R, C > &m, T c)'],['../namespacestan_1_1math.html#a5a2b6dbfb5543b73dac8496091745ec1',1,'stan::math::multiply(T c, const Eigen::Matrix< double, R, C > &m)'],['../namespacestan_1_1math.html#a7c72cdca253e0230e0dbd19400781b5c',1,'stan::math::multiply(const Eigen::Matrix< double, R1, C1 > &m1, const Eigen::Matrix< double, R2, C2 > &m2)'],['../namespacestan_1_1math.html#a6e67698775aaac248efa49b646ca2a51',1,'stan::math::multiply(const Eigen::Matrix< double, 1, C1 > &rv, const Eigen::Matrix< double, R2, 1 > &v)']]], + ['multiply_2ehpp',['multiply.hpp',['../agrad_2fwd_2matrix_2multiply_8hpp.html',1,'']]], + ['multiply_2ehpp',['multiply.hpp',['../agrad_2rev_2matrix_2multiply_8hpp.html',1,'']]], + ['multiply_2ehpp',['multiply.hpp',['../math_2matrix_2multiply_8hpp.html',1,'']]], + ['multiply_5flog',['multiply_log',['../namespacestan_1_1agrad.html#a3d696a83dc04e19d84ea2fb6a0cfa61a',1,'stan::agrad::multiply_log(const fvar< T > &x1, const fvar< T > &x2)'],['../namespacestan_1_1agrad.html#ad21e093d0619e2099f38902925cc292d',1,'stan::agrad::multiply_log(const double x1, const fvar< T > &x2)'],['../namespacestan_1_1agrad.html#a60b90b0dce0a75a73c63673f189ff9aa',1,'stan::agrad::multiply_log(const fvar< T > &x1, const double x2)'],['../namespacestan_1_1agrad.html#a0e93c32718fc1d0762b3543a246f00ec',1,'stan::agrad::multiply_log(const var &a, const var &b)'],['../namespacestan_1_1agrad.html#a041ccf4847a3f896904c7baeaefddb34',1,'stan::agrad::multiply_log(const var &a, const double b)'],['../namespacestan_1_1agrad.html#aca18b1e8909315b63cc1a98f4505a0dd',1,'stan::agrad::multiply_log(const double a, const var &b)'],['../namespacestan_1_1math.html#ab530a1792bc901bb6ade34ef3d9ef8b3',1,'stan::math::multiply_log()']]], + ['multiply_5flog_2ehpp',['multiply_log.hpp',['../math_2functions_2multiply__log_8hpp.html',1,'']]], + ['multiply_5flog_2ehpp',['multiply_log.hpp',['../agrad_2rev_2functions_2multiply__log_8hpp.html',1,'']]], + ['multiply_5flog_2ehpp',['multiply_log.hpp',['../agrad_2fwd_2functions_2multiply__log_8hpp.html',1,'']]], + ['multiply_5flower_5ftri_5fself_5ftranspose',['multiply_lower_tri_self_transpose',['../namespacestan_1_1agrad.html#a6635a0f0dfb1767a1930f1ff1984098a',1,'stan::agrad::multiply_lower_tri_self_transpose(const Eigen::Matrix< fvar< T >, R, C > &m)'],['../namespacestan_1_1agrad.html#a0e6a55fe5d7057ad569ec10edfe8187a',1,'stan::agrad::multiply_lower_tri_self_transpose(const matrix_v &L)'],['../namespacestan_1_1math.html#a3c0c953951f141b35277fe2308777cff',1,'stan::math::multiply_lower_tri_self_transpose()']]], + ['multiply_5flower_5ftri_5fself_5ftranspose_2ehpp',['multiply_lower_tri_self_transpose.hpp',['../math_2matrix_2multiply__lower__tri__self__transpose_8hpp.html',1,'']]], + ['multiply_5flower_5ftri_5fself_5ftranspose_2ehpp',['multiply_lower_tri_self_transpose.hpp',['../agrad_2rev_2matrix_2multiply__lower__tri__self__transpose_8hpp.html',1,'']]], + ['multiply_5flower_5ftri_5fself_5ftranspose_2ehpp',['multiply_lower_tri_self_transpose.hpp',['../agrad_2fwd_2matrix_2multiply__lower__tri__self__transpose_8hpp.html',1,'']]], + ['multivariate_2ehpp',['multivariate.hpp',['../multivariate_8hpp.html',1,'']]] +]; diff --git a/doc/api/html/search/all_6e.html b/doc/api/html/search/all_6e.html new file mode 100644 index 00000000000..1f92ee5b624 --- /dev/null +++ b/doc/api/html/search/all_6e.html @@ -0,0 +1,25 @@ + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/doc/api/html/search/all_6e.js b/doc/api/html/search/all_6e.js new file mode 100644 index 00000000000..5cfdd475977 --- /dev/null +++ b/doc/api/html/search/all_6e.js @@ -0,0 +1,67 @@ +var searchData= +[ + ['n_5f',['N_',['../classstan_1_1agrad_1_1_l_d_l_t__alloc.html#a7d6115e4f5432d12eb2f803910287f8f',1,'stan::agrad::LDLT_alloc::N_()'],['../structstan_1_1gm_1_1row__vector__var__decl.html#afcf4381a6b4bf0f832e30dca34c2e418',1,'stan::gm::row_vector_var_decl::N_()'],['../structstan_1_1gm_1_1matrix__var__decl.html#af2a6738f8c8aec9255ea286504ef8d30',1,'stan::gm::matrix_var_decl::N_()'],['../structstan_1_1gm_1_1cholesky__factor__var__decl.html#ac4c2902b224d2808a2a879b85e555359',1,'stan::gm::cholesky_factor_var_decl::N_()'],['../classstan_1_1math_1_1_l_d_l_t__factor_3_01double_00_01_r_00_01_c_01_4.html#aef6f29f77406d69af69d903b629e96dd',1,'stan::math::LDLT_factor< double, R, C >::N_()'],['../agrad_2rev_2matrix_2mdivide__left_8hpp.html#a733553beee6dadc63ea8c537055a9e04',1,'N_(): mdivide_left.hpp'],['../agrad_2rev_2matrix_2mdivide__left__ldlt_8hpp.html#a733553beee6dadc63ea8c537055a9e04',1,'N_(): mdivide_left_ldlt.hpp'],['../agrad_2rev_2matrix_2mdivide__left__spd_8hpp.html#a733553beee6dadc63ea8c537055a9e04',1,'N_(): mdivide_left_spd.hpp'],['../agrad_2rev_2matrix_2mdivide__left__tri_8hpp.html#a733553beee6dadc63ea8c537055a9e04',1,'N_(): mdivide_left_tri.hpp']]], + ['n_5ftree',['n_tree',['../structstan_1_1mcmc_1_1nuts__util.html#ad3f10003284b647aa8a6d246e8d73935',1,'stan::mcmc::nuts_util']]], + ['name',['name',['../classstan_1_1gm_1_1argument.html#a95e720fb0f0dda0b2be4201274fa47c8',1,'stan::gm::argument::name()'],['../structstan_1_1gm_1_1type__name.html#abf38a6f1fbe6d34e8fc4495423a5cd30',1,'stan::gm::type_name::name()'],['../structstan_1_1gm_1_1type__name_3_01int_01_4.html#a467a9397f434235e89512bf3164f2c53',1,'stan::gm::type_name< int >::name()'],['../structstan_1_1gm_1_1type__name_3_01unsigned_01int_01_4.html#af18249277270ae33f01976e0c8246736',1,'stan::gm::type_name< unsigned int >::name()'],['../structstan_1_1gm_1_1type__name_3_01double_01_4.html#a7acfdb1474ab32c35fb8f67a4612c611',1,'stan::gm::type_name< double >::name()'],['../structstan_1_1gm_1_1type__name_3_01bool_01_4.html#a01b4d6b1873e3dabe9186193558d3e4a',1,'stan::gm::type_name< bool >::name()'],['../structstan_1_1gm_1_1type__name_3_01std_1_1string_01_4.html#a06316042d2aa143497f3306752d5bf14',1,'stan::gm::type_name< std::string >::name()'],['../structstan_1_1gm_1_1var__decl.html#a6df298e1c38d35a2fce94b5513df015b',1,'stan::gm::var_decl::name()'],['../classstan_1_1io_1_1dump__reader.html#aed540ae1e798ad34757a2a66c35ad054',1,'stan::io::dump_reader::name()'],['../classstan_1_1mcmc_1_1base__mcmc.html#a999c963237aa4af863b691f1843b25bc',1,'stan::mcmc::base_mcmc::name()'],['../classstan_1_1mcmc_1_1fixed__param__sampler.html#a9247adda376063a2bff759850cbf8839',1,'stan::mcmc::fixed_param_sampler::name()']]], + ['name_5f',['name_',['../structstan_1_1gm_1_1variable__dims.html#a639052828000ec7614d7b40c859f592a',1,'stan::gm::variable_dims::name_()'],['../structstan_1_1gm_1_1variable.html#afb1d3556c61360990675ef1e886719ea',1,'stan::gm::variable::name_()'],['../structstan_1_1gm_1_1fun.html#a7bacce5646beb34ceca62564465e5512',1,'stan::gm::fun::name_()'],['../structstan_1_1gm_1_1base__var__decl.html#af95b3b01bd96c57240dabd226a64809e',1,'stan::gm::base_var_decl::name_()']]], + ['name_5fvis',['name_vis',['../structstan_1_1gm_1_1name__vis.html',1,'stan::gm']]], + ['name_5fvis',['name_vis',['../structstan_1_1gm_1_1name__vis.html#a3d6b32de01cd222ea3b016200ede6ed1',1,'stan::gm::name_vis']]], + ['names_5fi',['names_i',['../classstan_1_1io_1_1dump.html#a965e639a5884ffd40d3849c8a706e145',1,'stan::io::dump::names_i()'],['../classstan_1_1io_1_1var__context.html#a2b1417a3a4b012539392eb6f44e8f059',1,'stan::io::var_context::names_i()']]], + ['names_5fr',['names_r',['../classstan_1_1io_1_1dump.html#a4c287f947ed4205be9115f8d4dbffb0d',1,'stan::io::dump::names_r()'],['../classstan_1_1io_1_1var__context.html#a9161afdc65cf035209fcb3da96f3affe',1,'stan::io::var_context::names_r()']]], + ['neg_5fbinomial_2ehpp',['neg_binomial.hpp',['../neg__binomial_8hpp.html',1,'']]], + ['neg_5fbinomial_5fccdf_5flog',['neg_binomial_ccdf_log',['../namespacestan_1_1prob.html#a6eb2a050c9854f16d47c8a03d16e424d',1,'stan::prob']]], + ['neg_5fbinomial_5fcdf',['neg_binomial_cdf',['../namespacestan_1_1prob.html#a2df22df9c6b60e308e4ccf0b692b5242',1,'stan::prob']]], + ['neg_5fbinomial_5fcdf_5flog',['neg_binomial_cdf_log',['../namespacestan_1_1prob.html#a5c1a6f565a252ab38ef3165fa2d6a7e1',1,'stan::prob']]], + ['neg_5fbinomial_5flog',['neg_binomial_log',['../namespacestan_1_1prob.html#a223eba2920bbf00ffdce87cd9a385d64',1,'stan::prob::neg_binomial_log(const T_n &n, const T_shape &alpha, const T_inv_scale &beta)'],['../namespacestan_1_1prob.html#abb46acd84fce88aa36198b16cc54deae',1,'stan::prob::neg_binomial_log(const T_n &n, const T_shape &alpha, const T_inv_scale &beta)']]], + ['neg_5fbinomial_5frng',['neg_binomial_rng',['../namespacestan_1_1prob.html#a8c1d402a1dd528a63c0a68d63e809644',1,'stan::prob']]], + ['neg_5ftwo_5fover_5fsqrt_5fpi',['NEG_TWO_OVER_SQRT_PI',['../namespacestan_1_1math.html#a344504ea0c1f4f956c85ea8027a07ba9',1,'stan::math']]], + ['negate_5fexpr',['negate_expr',['../structstan_1_1gm_1_1negate__expr.html',1,'stan::gm']]], + ['negate_5fexpr_5ff',['negate_expr_f',['../namespacestan_1_1gm.html#a1b6085f99e8b4fb9b42a7add98ac9488',1,'stan::gm']]], + ['negated_5ffactor_5fr',['negated_factor_r',['../structstan_1_1gm_1_1term__grammar.html#a8a82771553bc80dbd016853cf37676e9',1,'stan::gm::term_grammar']]], + ['negative_5fepsilon',['NEGATIVE_EPSILON',['../namespacestan_1_1math.html#a1dcea3a9752d079c9f972040b873b704',1,'stan::math']]], + ['negative_5finfinity',['negative_infinity',['../namespacestan_1_1math.html#a34bffe91b7a24cb29bd69cb60814c39e',1,'stan::math']]], + ['negative_5finfty',['NEGATIVE_INFTY',['../namespacestan_1_1math.html#aa37d0f67f02e0a0b5797ed9f4df56bfb',1,'stan::math']]], + ['nested',['Nested',['../struct_eigen_1_1_num_traits_3_01stan_1_1agrad_1_1var_01_4.html#aa313e91d6d8163393d270e3c70ad50cf',1,'Eigen::NumTraits< stan::agrad::var >']]], + ['nesterov_5fgradient_2ehpp',['nesterov_gradient.hpp',['../nesterov__gradient_8hpp.html',1,'']]], + ['nesterovgradient',['NesterovGradient',['../classstan_1_1optimization_1_1_nesterov_gradient.html#a185bdd404b884473cf22ad75a9b98ede',1,'stan::optimization::NesterovGradient']]], + ['nesterovgradient',['NesterovGradient',['../classstan_1_1optimization_1_1_nesterov_gradient.html',1,'stan::optimization']]], + ['newline',['newline',['../classstan_1_1io_1_1csv__writer.html#a676de0a0f10ef649af9dd81b1b91afab',1,'stan::io::csv_writer']]], + ['newton_2ehpp',['newton.hpp',['../newton_8hpp.html',1,'']]], + ['newton_5fstep',['newton_step',['../namespacestan_1_1optimization.html#a96fbc01564bc465d164199b41891be0d',1,'stan::optimization']]], + ['next',['next',['../classstan_1_1io_1_1dump__reader.html#aed46c1062b3a19c22a7440b72f1c8ffd',1,'stan::io::dump_reader']]], + ['next_5findex',['next_index',['../print_8hpp.html#ab54368a8bca76f33372859602ca77797',1,'print.hpp']]], + ['nil',['nil',['../structstan_1_1gm_1_1nil.html',1,'stan::gm']]], + ['no_5fop_5fstatement',['no_op_statement',['../structstan_1_1gm_1_1no__op__statement.html',1,'stan::gm']]], + ['no_5fop_5fstatement_5fr',['no_op_statement_r',['../structstan_1_1gm_1_1statement__grammar.html#a0be0bd6e7a44724c32ff73e1bb96375e',1,'stan::gm::statement_grammar']]], + ['noinput',['NOINPUT',['../structstan_1_1gm_1_1error__codes.html#aa63873e8f7e9dd7f8af3502e4003292fa2fcaec15ffdd862e869b23a13b4a4d7c',1,'stan::gm::error_codes']]], + ['non_5flvalue_5fassign_5fr',['non_lvalue_assign_r',['../structstan_1_1gm_1_1statement__grammar.html#a1af0cfdf0b99e6e93c39b7fd326b0069',1,'stan::gm::statement_grammar']]], + ['nonbasic_5fvalidate',['nonbasic_validate',['../structstan_1_1gm_1_1validate__var__decl__visgen.html#a3008b1b4caf900e42f94e2517c874c8f',1,'stan::gm::validate_var_decl_visgen']]], + ['noninteger',['NonInteger',['../struct_eigen_1_1_num_traits_3_01stan_1_1agrad_1_1var_01_4.html#a0b7008c189ffa66353158a30af2aabaf',1,'Eigen::NumTraits< stan::agrad::var >']]], + ['normal_2ehpp',['normal.hpp',['../agrad_2fwd_2prob_2univariate_2continuous_2normal_8hpp.html',1,'']]], + ['normal_2ehpp',['normal.hpp',['../prob_2distributions_2univariate_2continuous_2normal_8hpp.html',1,'']]], + ['normal_5fccdf_5flog',['normal_ccdf_log',['../namespacestan_1_1prob.html#a02b0750cf65f06ac78d448731a6e2dc9',1,'stan::prob']]], + ['normal_5fcdf',['normal_cdf',['../namespacestan_1_1prob.html#a886f9e64bad2382679b935d90b527985',1,'stan::prob']]], + ['normal_5fcdf_5flog',['normal_cdf_log',['../namespacestan_1_1prob.html#a44b5ec88e8620ed6ba61bd58bb0fcab5',1,'stan::prob']]], + ['normal_5flog',['normal_log',['../namespacestan_1_1prob.html#ad99bbf0b29a582cc76394c30f23db536',1,'stan::prob::normal_log(const T_y &y, const T_loc &mu, const T_scale &sigma)'],['../namespacestan_1_1prob.html#a4f3e49fd8c69e4f3bfe5b3e74fed912b',1,'stan::prob::normal_log(const T_y &y, const T_loc &mu, const T_scale &sigma)']]], + ['normal_5frng',['normal_rng',['../namespacestan_1_1prob.html#a85cb8a1ee8a40b7545946a979e249dd1',1,'stan::prob']]], + ['not_5fa_5fnumber',['NOT_A_NUMBER',['../namespacestan_1_1math.html#a9cf147700a2e38335abc618b2c913b8a',1,'stan::math::NOT_A_NUMBER()'],['../namespacestan_1_1math.html#a381493bccc58bd993d797a2a5458c486',1,'stan::math::not_a_number()']]], + ['note',['note',['../classstan_1_1optimization_1_1_b_f_g_s_minimizer.html#addb17a450063c4caaa85de952927513c',1,'stan::optimization::BFGSMinimizer']]], + ['num_5fchains',['num_chains',['../classstan_1_1mcmc_1_1chains.html#aa42993978c341f420c38776862f6e0f4',1,'stan::mcmc::chains']]], + ['num_5fdims',['num_dims',['../structstan_1_1gm_1_1expr__type.html#abcd5fe81541025ae63595502b2db4673',1,'stan::gm::expr_type']]], + ['num_5fdims_5f',['num_dims_',['../structstan_1_1gm_1_1expr__type.html#abf2edf8c79d5990be66b23016dbd2143',1,'stan::gm::expr_type']]], + ['num_5fkept_5fsamples',['num_kept_samples',['../classstan_1_1mcmc_1_1chains.html#a174e16464afa282c23f88651edcf563a',1,'stan::mcmc::chains::num_kept_samples(const int chain)'],['../classstan_1_1mcmc_1_1chains.html#a51ee052b484f3810c4efeed3b7a55812',1,'stan::mcmc::chains::num_kept_samples()']]], + ['num_5fparams',['num_params',['../classstan_1_1mcmc_1_1chains.html#a69301dc29ebf0a2e1049c3a90be229b2',1,'stan::mcmc::chains']]], + ['num_5fparams_5fi',['num_params_i',['../classstan_1_1model_1_1prob__grad.html#a6c758a7e401926bfb453b6c1e0865e74',1,'stan::model::prob_grad']]], + ['num_5fparams_5fr',['num_params_r',['../classstan_1_1model_1_1prob__grad.html#af369b6f368d9a19090f08ed1deeab5be',1,'stan::model::prob_grad']]], + ['num_5fparams_5fr_5f_5f',['num_params_r__',['../classstan_1_1model_1_1prob__grad.html#a26e7379db0cea5dc64fa8c505f4edfda',1,'stan::model::prob_grad']]], + ['num_5fpromotions',['num_promotions',['../classstan_1_1gm_1_1function__signatures.html#a9a6ad50ac8bbc4a95db624019121925d',1,'stan::gm::function_signatures']]], + ['num_5fsamples',['num_samples',['../structstan_1_1io_1_1stan__csv__metadata.html#ab9d717fdea1c34f826112cd197ca530b',1,'stan::io::stan_csv_metadata::num_samples()'],['../classstan_1_1mcmc_1_1chains.html#a371c0c26bc0b62b1d1b33019fc66b66c',1,'stan::mcmc::chains::num_samples(const int chain)'],['../classstan_1_1mcmc_1_1chains.html#ae997b88b5d2aa188453748152b1b6c69',1,'stan::mcmc::chains::num_samples()'],['../classstan_1_1prob_1_1welford__covar__estimator.html#aa76e24fffa5e0bf733aafbaab942166e',1,'stan::prob::welford_covar_estimator::num_samples()'],['../classstan_1_1prob_1_1welford__var__estimator.html#aaead1fea2bb10ec78761a7544f47b9ed',1,'stan::prob::welford_var_estimator::num_samples()']]], + ['num_5fwarmup',['num_warmup',['../structstan_1_1io_1_1stan__csv__metadata.html#a220bc990428b915e65cebf3877658008',1,'stan::io::stan_csv_metadata']]], + ['numeric_5flimits_2ehpp',['numeric_limits.hpp',['../rev_2numeric__limits_8hpp.html',1,'']]], + ['numeric_5flimits_2ehpp',['numeric_limits.hpp',['../fwd_2numeric__limits_8hpp.html',1,'']]], + ['numeric_5flimits_3c_20stan_3a_3aagrad_3a_3afvar_3c_20t_20_3e_20_3e',['numeric_limits< stan::agrad::fvar< T > >',['../structstd_1_1numeric__limits_3_01stan_1_1agrad_1_1fvar_3_01_t_01_4_01_4.html',1,'std']]], + ['numeric_5flimits_3c_20stan_3a_3aagrad_3a_3avar_20_3e',['numeric_limits< stan::agrad::var >',['../structstd_1_1numeric__limits_3_01stan_1_1agrad_1_1var_01_4.html',1,'std']]], + ['numtraits_3c_20stan_3a_3aagrad_3a_3avar_20_3e',['NumTraits< stan::agrad::var >',['../struct_eigen_1_1_num_traits_3_01stan_1_1agrad_1_1var_01_4.html',1,'Eigen']]], + ['nuts_5futil',['nuts_util',['../structstan_1_1mcmc_1_1nuts__util.html',1,'stan::mcmc']]], + ['nvaris',['nvaris',['../structstan_1_1agrad_1_1_operands_and_partials.html#a4ae05b02b6c5a839f43a1815e7714c49',1,'stan::agrad::OperandsAndPartials']]] +]; diff --git a/doc/api/html/search/all_6f.html b/doc/api/html/search/all_6f.html new file mode 100644 index 00000000000..61827e82e31 --- /dev/null +++ b/doc/api/html/search/all_6f.html @@ -0,0 +1,25 @@ + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/doc/api/html/search/all_6f.js b/doc/api/html/search/all_6f.js new file mode 100644 index 00000000000..3935c90685b --- /dev/null +++ b/doc/api/html/search/all_6f.js @@ -0,0 +1,106 @@ +var searchData= +[ + ['o',['o',['../structstan_1_1model_1_1model__functional.html#a9ae3ad68fafb77720c0f4fb5ac5ac627',1,'stan::model::model_functional']]], + ['o_5f',['o_',['../structstan_1_1gm_1_1visgen.html#a05817588766bc44447698a3602e82cdb',1,'stan::gm::visgen']]], + ['ok',['OK',['../structstan_1_1gm_1_1error__codes.html#aa63873e8f7e9dd7f8af3502e4003292fa2e47ab549bdeac4803f2801b08cdeee4',1,'stan::gm::error_codes']]], + ['op',['op',['../structstan_1_1gm_1_1binary__op.html#ad657bf27d15914af4925d567fbc725c6',1,'stan::gm::binary_op::op()'],['../structstan_1_1gm_1_1unary__op.html#aca16006ca03efadf9bd194bdaea1b07b',1,'stan::gm::unary_op::op()']]], + ['op_5fddv_5fvari',['op_ddv_vari',['../classstan_1_1agrad_1_1op__ddv__vari.html',1,'stan::agrad']]], + ['op_5fddv_5fvari',['op_ddv_vari',['../classstan_1_1agrad_1_1op__ddv__vari.html#a0dc6f08e56b65cd270dcc2f7939dacef',1,'stan::agrad::op_ddv_vari']]], + ['op_5fdv_5fvari',['op_dv_vari',['../classstan_1_1agrad_1_1op__dv__vari.html',1,'stan::agrad']]], + ['op_5fdv_5fvari',['op_dv_vari',['../classstan_1_1agrad_1_1op__dv__vari.html#a25707782c6db0f4cd1fd99418e660eff',1,'stan::agrad::op_dv_vari']]], + ['op_5fdvd_5fvari',['op_dvd_vari',['../classstan_1_1agrad_1_1op__dvd__vari.html',1,'stan::agrad']]], + ['op_5fdvd_5fvari',['op_dvd_vari',['../classstan_1_1agrad_1_1op__dvd__vari.html#aea81045cbb7574359c547974c1720745',1,'stan::agrad::op_dvd_vari']]], + ['op_5fdvv_5fvari',['op_dvv_vari',['../classstan_1_1agrad_1_1op__dvv__vari.html',1,'stan::agrad']]], + ['op_5fdvv_5fvari',['op_dvv_vari',['../classstan_1_1agrad_1_1op__dvv__vari.html#a459bde977de6b15f8a9d045ca41c95d1',1,'stan::agrad::op_dvv_vari']]], + ['op_5fmatrix_5fvari',['op_matrix_vari',['../classstan_1_1agrad_1_1op__matrix__vari.html',1,'stan::agrad']]], + ['op_5fmatrix_5fvari',['op_matrix_vari',['../classstan_1_1agrad_1_1op__matrix__vari.html#a64359f048df8adbd625d3cf5e2f9f4d0',1,'stan::agrad::op_matrix_vari']]], + ['op_5fv_5fvari',['op_v_vari',['../classstan_1_1agrad_1_1op__v__vari.html',1,'stan::agrad']]], + ['op_5fv_5fvari',['op_v_vari',['../classstan_1_1agrad_1_1op__v__vari.html#a9c8f4f7c998f9e01b7b062845dd02826',1,'stan::agrad::op_v_vari']]], + ['op_5fvd_5fvari',['op_vd_vari',['../classstan_1_1agrad_1_1op__vd__vari.html',1,'stan::agrad']]], + ['op_5fvd_5fvari',['op_vd_vari',['../classstan_1_1agrad_1_1op__vd__vari.html#a90dab6a33453cab385392989faed72a6',1,'stan::agrad::op_vd_vari']]], + ['op_5fvdd_5fvari',['op_vdd_vari',['../classstan_1_1agrad_1_1op__vdd__vari.html',1,'stan::agrad']]], + ['op_5fvdd_5fvari',['op_vdd_vari',['../classstan_1_1agrad_1_1op__vdd__vari.html#a422712bd9ca49f7295d63efd9db459e1',1,'stan::agrad::op_vdd_vari']]], + ['op_5fvdv_5fvari',['op_vdv_vari',['../classstan_1_1agrad_1_1op__vdv__vari.html#a887420e658b3a11db1a8087f4a86cff4',1,'stan::agrad::op_vdv_vari']]], + ['op_5fvdv_5fvari',['op_vdv_vari',['../classstan_1_1agrad_1_1op__vdv__vari.html',1,'stan::agrad']]], + ['op_5fvector_5fvari',['op_vector_vari',['../classstan_1_1agrad_1_1op__vector__vari.html#a6171e0b248aae2c5a9ec3d056567ac49',1,'stan::agrad::op_vector_vari']]], + ['op_5fvector_5fvari',['op_vector_vari',['../classstan_1_1agrad_1_1op__vector__vari.html',1,'stan::agrad']]], + ['op_5fvv_5fvari',['op_vv_vari',['../classstan_1_1agrad_1_1op__vv__vari.html#a45481fc072e8b4792641ed211cb26431',1,'stan::agrad::op_vv_vari']]], + ['op_5fvv_5fvari',['op_vv_vari',['../classstan_1_1agrad_1_1op__vv__vari.html',1,'stan::agrad']]], + ['op_5fvvd_5fvari',['op_vvd_vari',['../classstan_1_1agrad_1_1op__vvd__vari.html#a889fcc9443f84a8605049ca4cbe3fbe0',1,'stan::agrad::op_vvd_vari']]], + ['op_5fvvd_5fvari',['op_vvd_vari',['../classstan_1_1agrad_1_1op__vvd__vari.html',1,'stan::agrad']]], + ['op_5fvvv_5fvari',['op_vvv_vari',['../classstan_1_1agrad_1_1op__vvv__vari.html#aab31cc197ce983a6694f238551561dad',1,'stan::agrad::op_vvv_vari']]], + ['op_5fvvv_5fvari',['op_vvv_vari',['../classstan_1_1agrad_1_1op__vvv__vari.html',1,'stan::agrad']]], + ['operandsandpartials',['OperandsAndPartials',['../structstan_1_1agrad_1_1_operands_and_partials.html#aecabbb142f41aae42881a3b847b4f4e1',1,'stan::agrad::OperandsAndPartials']]], + ['operandsandpartials',['OperandsAndPartials',['../structstan_1_1agrad_1_1_operands_and_partials.html',1,'stan::agrad']]], + ['operator_20delete',['operator delete',['../classstan_1_1agrad_1_1chainable.html#ad1ea1170b887c7730a437a9e831e8c54',1,'stan::agrad::chainable']]], + ['operator_20new',['operator new',['../classstan_1_1agrad_1_1vari.html#a1722e422e33d131e88ae9ca351b9e86c',1,'stan::agrad::vari::operator new()'],['../classstan_1_1agrad_1_1chainable.html#ae78a7b4dfaf5f07c01f3d08f663caf06',1,'stan::agrad::chainable::operator new()']]], + ['operator_21',['operator!',['../namespacestan_1_1agrad.html#ae9d3324d88a532f80e9451dd9f9c5a83',1,'stan::agrad']]], + ['operator_21_3d',['operator!=',['../structstan_1_1gm_1_1expr__type.html#abecd19ebe1a5e0a7bb382c86b0c47477',1,'stan::gm::expr_type::operator!=()'],['../namespacestan_1_1agrad.html#a63631a963a524e14c26616a546e75ad7',1,'stan::agrad::operator!=(const var &a, const var &b)'],['../namespacestan_1_1agrad.html#a772cb5941614d15e4796e4e28c7b3626',1,'stan::agrad::operator!=(const var &a, const double &b)'],['../namespacestan_1_1agrad.html#a0896d4e6a953397b0421f25b1583bb66',1,'stan::agrad::operator!=(const double &a, const var &b)'],['../namespacestan_1_1agrad.html#abc2a6a3826a8c40963c2c43de787c6d9',1,'stan::agrad::operator!=(const fvar< T > &x, const fvar< T > &y)'],['../namespacestan_1_1agrad.html#a4d2b7b3282b4dc8853c2a5821668c058',1,'stan::agrad::operator!=(const fvar< T > &x, double y)'],['../namespacestan_1_1agrad.html#a7a0281d5047cfc8842455774716a1c68',1,'stan::agrad::operator!=(double x, const fvar< T > &y)'],['../namespacestan_1_1agrad.html#a7bb28051fbfb4acffa58bc94a78fcf20',1,'stan::agrad::operator!=(const var &a, const double b)'],['../namespacestan_1_1agrad.html#a3068e402162a891ca257dc2bd55fe47e',1,'stan::agrad::operator!=(const double a, const var &b)']]], + ['operator_28_29',['operator()',['../structstan_1_1gm_1_1expression__type__vis.html#ae101d363740a76d72e1b458d8de4aad1',1,'stan::gm::expression_type_vis::operator()(const nil &e) const '],['../structstan_1_1gm_1_1expression__type__vis.html#ae84dca1e40e9af8689e452fb46d9e032',1,'stan::gm::expression_type_vis::operator()(const int_literal &e) const '],['../structstan_1_1gm_1_1expression__type__vis.html#aab6cc33ac330a276c599d390be4edec8',1,'stan::gm::expression_type_vis::operator()(const double_literal &e) const '],['../structstan_1_1gm_1_1expression__type__vis.html#af8b390d2239e791d7411cee8f8992e03',1,'stan::gm::expression_type_vis::operator()(const array_literal &e) const '],['../structstan_1_1gm_1_1expression__type__vis.html#a18ca391f31a93fd1c0346a29a054dfbe',1,'stan::gm::expression_type_vis::operator()(const variable &e) const '],['../structstan_1_1gm_1_1expression__type__vis.html#adccaf0a45107f4ce7fd01c3fe9a7be6e',1,'stan::gm::expression_type_vis::operator()(const fun &e) const '],['../structstan_1_1gm_1_1expression__type__vis.html#a00466288bc82f8e6e65913dffab469f9',1,'stan::gm::expression_type_vis::operator()(const index_op &e) const '],['../structstan_1_1gm_1_1expression__type__vis.html#a3dfc663ba0cac644c99f76a3becc48e2',1,'stan::gm::expression_type_vis::operator()(const binary_op &e) const '],['../structstan_1_1gm_1_1expression__type__vis.html#a526a9e5db2b2e67f80f37d3c157e691e',1,'stan::gm::expression_type_vis::operator()(const unary_op &e) const '],['../structstan_1_1gm_1_1is__nil__op.html#a08ed9c0b2717cc75d3c76742a4e4e473',1,'stan::gm::is_nil_op::operator()(const nil &x) const '],['../structstan_1_1gm_1_1is__nil__op.html#a8d9976b143d73fa3a7781413aa55b346',1,'stan::gm::is_nil_op::operator()(const int_literal &x) const '],['../structstan_1_1gm_1_1is__nil__op.html#a1779f980df65958d9302c441dd9ec6fd',1,'stan::gm::is_nil_op::operator()(const double_literal &x) const '],['../structstan_1_1gm_1_1is__nil__op.html#a718054de1e6a5991154f4de24da3e43c',1,'stan::gm::is_nil_op::operator()(const array_literal &x) const '],['../structstan_1_1gm_1_1is__nil__op.html#a3297c2fa3f7b613ecef9f81f3cac26f4',1,'stan::gm::is_nil_op::operator()(const variable &x) const '],['../structstan_1_1gm_1_1is__nil__op.html#a5e2a04a8705c487b2b58bc48acb564d0',1,'stan::gm::is_nil_op::operator()(const fun &x) const '],['../structstan_1_1gm_1_1is__nil__op.html#a4fed00e3746cf933d44c1451091ff940',1,'stan::gm::is_nil_op::operator()(const index_op &x) const '],['../structstan_1_1gm_1_1is__nil__op.html#a5e6feff96929c5ff3d8aed77b1aa4775',1,'stan::gm::is_nil_op::operator()(const binary_op &x) const '],['../structstan_1_1gm_1_1is__nil__op.html#af5bcccdf1f78faeffbe7217ac2cc51da',1,'stan::gm::is_nil_op::operator()(const unary_op &x) const '],['../structstan_1_1gm_1_1name__vis.html#a77a99ecd9081380c63ef8611973c4764',1,'stan::gm::name_vis::operator()(const nil &x) const '],['../structstan_1_1gm_1_1name__vis.html#a06e7c65a2fc7f371027db2b4c6ce2076',1,'stan::gm::name_vis::operator()(const int_var_decl &x) const '],['../structstan_1_1gm_1_1name__vis.html#ad621523ffc5f454eddf4b9bedfe04445',1,'stan::gm::name_vis::operator()(const double_var_decl &x) const '],['../structstan_1_1gm_1_1name__vis.html#abd9e7de4bd05940079937ea1c8c30ef4',1,'stan::gm::name_vis::operator()(const vector_var_decl &x) const '],['../structstan_1_1gm_1_1name__vis.html#aac0f822ac237b665c3da17927a8942d1',1,'stan::gm::name_vis::operator()(const row_vector_var_decl &x) const '],['../structstan_1_1gm_1_1name__vis.html#ac40f17c0184a5aa7f62cb74c7905fcca',1,'stan::gm::name_vis::operator()(const matrix_var_decl &x) const '],['../structstan_1_1gm_1_1name__vis.html#afb1ee17045f456b5f078fc31e80b4a04',1,'stan::gm::name_vis::operator()(const simplex_var_decl &x) const '],['../structstan_1_1gm_1_1name__vis.html#a54987fdf17b92c69a422b7fb2737dd6c',1,'stan::gm::name_vis::operator()(const unit_vector_var_decl &x) const '],['../structstan_1_1gm_1_1name__vis.html#aa01c0297fecee56aa965f2c5e1f4855f',1,'stan::gm::name_vis::operator()(const ordered_var_decl &x) const '],['../structstan_1_1gm_1_1name__vis.html#abc29cfc00dd904d37af4ae409fc3f405',1,'stan::gm::name_vis::operator()(const positive_ordered_var_decl &x) const '],['../structstan_1_1gm_1_1name__vis.html#ad4cb7341a3374c2edcb8ed0bf5d87900',1,'stan::gm::name_vis::operator()(const cholesky_factor_var_decl &x) const '],['../structstan_1_1gm_1_1name__vis.html#a6be1389d6fb96e624f542c63a8afe1ce',1,'stan::gm::name_vis::operator()(const cov_matrix_var_decl &x) const '],['../structstan_1_1gm_1_1name__vis.html#aa79a10dd8b0b0c89677836c378beae5e',1,'stan::gm::name_vis::operator()(const corr_matrix_var_decl &x) const '],['../structstan_1_1gm_1_1contains__var.html#abd731c09e08561b635b0ccd4a9075502',1,'stan::gm::contains_var::operator()(const nil &e) const '],['../structstan_1_1gm_1_1contains__var.html#aa14c77d41a64da0038ce5574a1b1195c',1,'stan::gm::contains_var::operator()(const int_literal &e) const '],['../structstan_1_1gm_1_1contains__var.html#a3faac1c9345f3db54478636846d97522',1,'stan::gm::contains_var::operator()(const double_literal &e) const '],['../structstan_1_1gm_1_1contains__var.html#a6d21c8096ca0fbf664963be1157c33cd',1,'stan::gm::contains_var::operator()(const array_literal &e) const '],['../structstan_1_1gm_1_1contains__var.html#ae8586b023ba16f5160d0fa861d7ddbc9',1,'stan::gm::contains_var::operator()(const variable &e) const '],['../structstan_1_1gm_1_1contains__var.html#a6899ad69964d75a4f226c9e4fcf45b5b',1,'stan::gm::contains_var::operator()(const fun &e) const '],['../structstan_1_1gm_1_1contains__var.html#adb25dda5b8d245c3aa67ce6baca5baf4',1,'stan::gm::contains_var::operator()(const index_op &e) const '],['../structstan_1_1gm_1_1contains__var.html#a2552f6617b18df1ae1590fa66a8a9dc8',1,'stan::gm::contains_var::operator()(const binary_op &e) const '],['../structstan_1_1gm_1_1contains__var.html#a072b336abd0018f97f342d55fb75a116',1,'stan::gm::contains_var::operator()(const unary_op &e) const '],['../structstan_1_1gm_1_1contains__nonparam__var.html#ae3faaa613f42c8cb8ac24a521e156e8d',1,'stan::gm::contains_nonparam_var::operator()(const nil &e) const '],['../structstan_1_1gm_1_1contains__nonparam__var.html#a60f21f3f6613845cc38688be1d2d9934',1,'stan::gm::contains_nonparam_var::operator()(const int_literal &e) const '],['../structstan_1_1gm_1_1contains__nonparam__var.html#ae434f920314720d08a7fd840c2b2697b',1,'stan::gm::contains_nonparam_var::operator()(const double_literal &e) const '],['../structstan_1_1gm_1_1contains__nonparam__var.html#a01e37e1af206e136e912ed2d2962f105',1,'stan::gm::contains_nonparam_var::operator()(const array_literal &e) const '],['../structstan_1_1gm_1_1contains__nonparam__var.html#a44d42494dd1eb8798afa4a569e3c638f',1,'stan::gm::contains_nonparam_var::operator()(const variable &e) const '],['../structstan_1_1gm_1_1contains__nonparam__var.html#a4cc5cac2f665fc3bd5b2b200508a936c',1,'stan::gm::contains_nonparam_var::operator()(const fun &e) const '],['../structstan_1_1gm_1_1contains__nonparam__var.html#ac09ff2eee4dc1412b2f7919c1726dd28',1,'stan::gm::contains_nonparam_var::operator()(const index_op &e) const '],['../structstan_1_1gm_1_1contains__nonparam__var.html#a8f62d373bb553ecde42728cbccf5abc1',1,'stan::gm::contains_nonparam_var::operator()(const binary_op &e) const '],['../structstan_1_1gm_1_1contains__nonparam__var.html#a9e95a4a6800ad32f799d8b8eb99c7d53',1,'stan::gm::contains_nonparam_var::operator()(const unary_op &e) const '],['../structstan_1_1gm_1_1expression__visgen.html#aab15972d43af74f77cf26c2c2fec82bf',1,'stan::gm::expression_visgen::operator()(nil const &) const '],['../structstan_1_1gm_1_1expression__visgen.html#a09af83f6b3b1f38ad7ff4964fb6aa4a9',1,'stan::gm::expression_visgen::operator()(const int_literal &n) const '],['../structstan_1_1gm_1_1expression__visgen.html#a63098914d92705be895c57e4adef150f',1,'stan::gm::expression_visgen::operator()(const double_literal &x) const '],['../structstan_1_1gm_1_1expression__visgen.html#a1d09589dc5a9b6e3b8d83c6ad2b69935',1,'stan::gm::expression_visgen::operator()(const array_literal &x) const '],['../structstan_1_1gm_1_1expression__visgen.html#a54590d7ff6be63a4b8fe1f91f04261c5',1,'stan::gm::expression_visgen::operator()(const variable &v) const '],['../structstan_1_1gm_1_1expression__visgen.html#a64a5ba8f9ca3ec6ebc78e25946dbe03d',1,'stan::gm::expression_visgen::operator()(int n) const '],['../structstan_1_1gm_1_1expression__visgen.html#afff24140ddd6164642eaac2d11a029a8',1,'stan::gm::expression_visgen::operator()(double x) const '],['../structstan_1_1gm_1_1expression__visgen.html#a20fa0b87d91d4c30a0255b44bb47db06',1,'stan::gm::expression_visgen::operator()(const std::string &x) const '],['../structstan_1_1gm_1_1expression__visgen.html#aa4686c19b616c8c7381b53a1c834bebb',1,'stan::gm::expression_visgen::operator()(const index_op &x) const '],['../structstan_1_1gm_1_1expression__visgen.html#ac6ae9b2a5dae07545dfcc59a295e980f',1,'stan::gm::expression_visgen::operator()(const fun &fx) const '],['../structstan_1_1gm_1_1expression__visgen.html#a7d647894403afdd5dbd0cfa369b3a9fd',1,'stan::gm::expression_visgen::operator()(const binary_op &expr) const '],['../structstan_1_1gm_1_1expression__visgen.html#a031a4d53347d39e110eb3c1d20159dd2',1,'stan::gm::expression_visgen::operator()(const unary_op &expr) const '],['../structstan_1_1gm_1_1printable__visgen.html#a4527a09ed8015d0ffcf004cb1d4a67e6',1,'stan::gm::printable_visgen::operator()(const std::string &s) const '],['../structstan_1_1gm_1_1printable__visgen.html#ab6298d1155c3982e8c2bad7ea562cee6',1,'stan::gm::printable_visgen::operator()(const expression &e) const '],['../structstan_1_1gm_1_1var__size__validating__visgen.html#a0c3d62bd75928038d50e2cb207718936',1,'stan::gm::var_size_validating_visgen::operator()(nil const &) const '],['../structstan_1_1gm_1_1var__size__validating__visgen.html#a9028495f1c1b7eba7789fd640bf1d14e',1,'stan::gm::var_size_validating_visgen::operator()(int_var_decl const &x) const '],['../structstan_1_1gm_1_1var__size__validating__visgen.html#a00c2424a51f337b1b8703244d2ca1e81',1,'stan::gm::var_size_validating_visgen::operator()(double_var_decl const &x) const '],['../structstan_1_1gm_1_1var__size__validating__visgen.html#afab72d75a1111f01b8b1f771f2e736fe',1,'stan::gm::var_size_validating_visgen::operator()(vector_var_decl const &x) const '],['../structstan_1_1gm_1_1var__size__validating__visgen.html#a14ea51e14a4cf91b841aaeb81d11554c',1,'stan::gm::var_size_validating_visgen::operator()(row_vector_var_decl const &x) const '],['../structstan_1_1gm_1_1var__size__validating__visgen.html#acb8091b7c199fb3b49d7bfd24c6be687',1,'stan::gm::var_size_validating_visgen::operator()(unit_vector_var_decl const &x) const '],['../structstan_1_1gm_1_1var__size__validating__visgen.html#ad0527fcfeed7807664a784af7083bc49',1,'stan::gm::var_size_validating_visgen::operator()(simplex_var_decl const &x) const '],['../structstan_1_1gm_1_1var__size__validating__visgen.html#adb42789b5993da3f03577244e65dce74',1,'stan::gm::var_size_validating_visgen::operator()(ordered_var_decl const &x) const '],['../structstan_1_1gm_1_1var__size__validating__visgen.html#a008afb0bcfcdac5b70ce2805c1858387',1,'stan::gm::var_size_validating_visgen::operator()(positive_ordered_var_decl const &x) const '],['../structstan_1_1gm_1_1var__size__validating__visgen.html#a35236dd88f0ebbc900575e63960e0707',1,'stan::gm::var_size_validating_visgen::operator()(matrix_var_decl const &x) const '],['../structstan_1_1gm_1_1var__size__validating__visgen.html#a7c502111b0cb5e27b54d45c0525fbbf3',1,'stan::gm::var_size_validating_visgen::operator()(cholesky_factor_var_decl const &x) const '],['../structstan_1_1gm_1_1var__size__validating__visgen.html#a03c98e95540ffc39e540114b5a67ec42',1,'stan::gm::var_size_validating_visgen::operator()(cov_matrix_var_decl const &x) const '],['../structstan_1_1gm_1_1var__size__validating__visgen.html#aaa4deb5d7e8a85a0acd059f0883384b9',1,'stan::gm::var_size_validating_visgen::operator()(corr_matrix_var_decl const &x) const '],['../structstan_1_1gm_1_1var__resizing__visgen.html#a669faa2dfb234af0ec6f651a92eb3cc7',1,'stan::gm::var_resizing_visgen::operator()(nil const &) const '],['../structstan_1_1gm_1_1var__resizing__visgen.html#ad973da4f52c164e36735bca3e9a1ee80',1,'stan::gm::var_resizing_visgen::operator()(int_var_decl const &x) const '],['../structstan_1_1gm_1_1var__resizing__visgen.html#aac743c79ec0be79ce58ab662316890bd',1,'stan::gm::var_resizing_visgen::operator()(double_var_decl const &x) const '],['../structstan_1_1gm_1_1var__resizing__visgen.html#a8517c46749146da31a0e7f63c4228cc2',1,'stan::gm::var_resizing_visgen::operator()(vector_var_decl const &x) const '],['../structstan_1_1gm_1_1var__resizing__visgen.html#a36cfe5b6c444c2a024db0f30036a5f93',1,'stan::gm::var_resizing_visgen::operator()(row_vector_var_decl const &x) const '],['../structstan_1_1gm_1_1var__resizing__visgen.html#ad811ec41000dbbc94b41d5745f3c3918',1,'stan::gm::var_resizing_visgen::operator()(unit_vector_var_decl const &x) const '],['../structstan_1_1gm_1_1var__resizing__visgen.html#a1db8714cf43b3f5eacb74c826646c80a',1,'stan::gm::var_resizing_visgen::operator()(simplex_var_decl const &x) const '],['../structstan_1_1gm_1_1var__resizing__visgen.html#ad728ef0d927e9712efdc777b44de98a7',1,'stan::gm::var_resizing_visgen::operator()(ordered_var_decl const &x) const '],['../structstan_1_1gm_1_1var__resizing__visgen.html#a9459c303e0852fc8c3e5d4c0c83e5380',1,'stan::gm::var_resizing_visgen::operator()(positive_ordered_var_decl const &x) const '],['../structstan_1_1gm_1_1var__resizing__visgen.html#a9d2ee03b4184c5fe97bbf1e96fdad0f4',1,'stan::gm::var_resizing_visgen::operator()(matrix_var_decl const &x) const '],['../structstan_1_1gm_1_1var__resizing__visgen.html#a1db09012dd2e670383a72a258b47e1e0',1,'stan::gm::var_resizing_visgen::operator()(cholesky_factor_var_decl const &x) const '],['../structstan_1_1gm_1_1var__resizing__visgen.html#a96571adb3b948ef318b7e7fc5c02a282',1,'stan::gm::var_resizing_visgen::operator()(cov_matrix_var_decl const &x) const '],['../structstan_1_1gm_1_1var__resizing__visgen.html#aa60a881ddd0551119087ea501cb7cfb3',1,'stan::gm::var_resizing_visgen::operator()(corr_matrix_var_decl const &x) const '],['../structstan_1_1gm_1_1init__local__var__visgen.html#ab7d91977035552a328beee8465a41554',1,'stan::gm::init_local_var_visgen::operator()(const nil &) const '],['../structstan_1_1gm_1_1init__local__var__visgen.html#a56e547b9d8d98eb235c88a8c1d58409a',1,'stan::gm::init_local_var_visgen::operator()(const int_var_decl &x) const '],['../structstan_1_1gm_1_1init__local__var__visgen.html#a713119b71e590ff2d31089d7c224970b',1,'stan::gm::init_local_var_visgen::operator()(const double_var_decl &x) const '],['../structstan_1_1gm_1_1init__local__var__visgen.html#a135f6581adaecde47e10eb38f167297b',1,'stan::gm::init_local_var_visgen::operator()(const vector_var_decl &x) const '],['../structstan_1_1gm_1_1init__local__var__visgen.html#a1eda8c62c18a93fc3fc33a60a0cf1840',1,'stan::gm::init_local_var_visgen::operator()(const row_vector_var_decl &x) const '],['../structstan_1_1gm_1_1init__local__var__visgen.html#a24592819d7fe9e9571627601a0ca6f94',1,'stan::gm::init_local_var_visgen::operator()(const matrix_var_decl &x) const '],['../structstan_1_1gm_1_1init__local__var__visgen.html#a0edae9cf5200fdb6791a3802ef641dde',1,'stan::gm::init_local_var_visgen::operator()(const unit_vector_var_decl &x) const '],['../structstan_1_1gm_1_1init__local__var__visgen.html#a32c0e1d58251b7aaf9a9c626517ccdc4',1,'stan::gm::init_local_var_visgen::operator()(const simplex_var_decl &x) const '],['../structstan_1_1gm_1_1init__local__var__visgen.html#a8c4a28b3b201923feb3237ab70cbfd26',1,'stan::gm::init_local_var_visgen::operator()(const ordered_var_decl &x) const '],['../structstan_1_1gm_1_1init__local__var__visgen.html#a90db653548c46cf9ea0226491de19dd1',1,'stan::gm::init_local_var_visgen::operator()(const positive_ordered_var_decl &x) const '],['../structstan_1_1gm_1_1init__local__var__visgen.html#a6601554142c706daa7d7c90dcd4405b0',1,'stan::gm::init_local_var_visgen::operator()(const cholesky_factor_var_decl &x) const '],['../structstan_1_1gm_1_1init__local__var__visgen.html#a082b360d9ef23c9fb2cf4e606223e82d',1,'stan::gm::init_local_var_visgen::operator()(const cov_matrix_var_decl &x) const '],['../structstan_1_1gm_1_1init__local__var__visgen.html#a3c92ee4c4c11702308cad9e01cc25a8c',1,'stan::gm::init_local_var_visgen::operator()(const corr_matrix_var_decl &x) const '],['../structstan_1_1gm_1_1validate__var__decl__visgen.html#a293b04f191427eac6d4ebb731380530a',1,'stan::gm::validate_var_decl_visgen::operator()(nil const &) const '],['../structstan_1_1gm_1_1validate__var__decl__visgen.html#aeb09dcce8135ffe469e7a3d388fe23a5',1,'stan::gm::validate_var_decl_visgen::operator()(int_var_decl const &x) const '],['../structstan_1_1gm_1_1validate__var__decl__visgen.html#a57821ae7264ce2b467c99671dd2445f1',1,'stan::gm::validate_var_decl_visgen::operator()(double_var_decl const &x) const '],['../structstan_1_1gm_1_1validate__var__decl__visgen.html#af401582ce790254d4a822c821564749c',1,'stan::gm::validate_var_decl_visgen::operator()(vector_var_decl const &x) const '],['../structstan_1_1gm_1_1validate__var__decl__visgen.html#a8cfc776610aef88901ea9f582c8ee5df',1,'stan::gm::validate_var_decl_visgen::operator()(row_vector_var_decl const &x) const '],['../structstan_1_1gm_1_1validate__var__decl__visgen.html#a31374009014b9209309cebb451e95a6d',1,'stan::gm::validate_var_decl_visgen::operator()(matrix_var_decl const &x) const '],['../structstan_1_1gm_1_1validate__var__decl__visgen.html#ac2692f61a0783cad7ccf53b45dc016c2',1,'stan::gm::validate_var_decl_visgen::operator()(unit_vector_var_decl const &x) const '],['../structstan_1_1gm_1_1validate__var__decl__visgen.html#af783c90b5deb3149733edc1d0bbb80da',1,'stan::gm::validate_var_decl_visgen::operator()(simplex_var_decl const &x) const '],['../structstan_1_1gm_1_1validate__var__decl__visgen.html#ae56af402e25685e48b72cf51a8a81db3',1,'stan::gm::validate_var_decl_visgen::operator()(ordered_var_decl const &x) const '],['../structstan_1_1gm_1_1validate__var__decl__visgen.html#aa90b8ec05ece3e94a2b61ccaeac99b71',1,'stan::gm::validate_var_decl_visgen::operator()(positive_ordered_var_decl const &x) const '],['../structstan_1_1gm_1_1validate__var__decl__visgen.html#aa52047c0ba795b014daf81ffc14c2730',1,'stan::gm::validate_var_decl_visgen::operator()(cholesky_factor_var_decl const &x) const '],['../structstan_1_1gm_1_1validate__var__decl__visgen.html#abe4496806c43c26f25d1d5decf630499',1,'stan::gm::validate_var_decl_visgen::operator()(cov_matrix_var_decl const &x) const '],['../structstan_1_1gm_1_1validate__var__decl__visgen.html#a5b14b6fbf4c38146fd80097a16cb3f8e',1,'stan::gm::validate_var_decl_visgen::operator()(corr_matrix_var_decl const &x) const '],['../structstan_1_1gm_1_1member__var__decl__visgen.html#a5522b70943b2a24749e14dd03c98ade8',1,'stan::gm::member_var_decl_visgen::operator()(nil const &) const '],['../structstan_1_1gm_1_1member__var__decl__visgen.html#a846d68c8fb568e97d8e72a0023c6990e',1,'stan::gm::member_var_decl_visgen::operator()(int_var_decl const &x) const '],['../structstan_1_1gm_1_1member__var__decl__visgen.html#aad6bcbbf2b1ee90edee39b8e194d8682',1,'stan::gm::member_var_decl_visgen::operator()(double_var_decl const &x) const '],['../structstan_1_1gm_1_1member__var__decl__visgen.html#ae071877e2420318e00df38b6fa99aa4c',1,'stan::gm::member_var_decl_visgen::operator()(unit_vector_var_decl const &x) const '],['../structstan_1_1gm_1_1member__var__decl__visgen.html#a452ce11c5be73d030bb2b578f56d92ff',1,'stan::gm::member_var_decl_visgen::operator()(simplex_var_decl const &x) const '],['../structstan_1_1gm_1_1member__var__decl__visgen.html#a4b118f12400d5b68e582659ad7156001',1,'stan::gm::member_var_decl_visgen::operator()(ordered_var_decl const &x) const '],['../structstan_1_1gm_1_1member__var__decl__visgen.html#a188762a0e623abddb891beeb3f8fc7c2',1,'stan::gm::member_var_decl_visgen::operator()(positive_ordered_var_decl const &x) const '],['../structstan_1_1gm_1_1member__var__decl__visgen.html#adf9c99128404dfb300102feef2455c4e',1,'stan::gm::member_var_decl_visgen::operator()(cholesky_factor_var_decl const &x) const '],['../structstan_1_1gm_1_1member__var__decl__visgen.html#a4e6590cdabe3dad424175b40a6b4754a',1,'stan::gm::member_var_decl_visgen::operator()(cov_matrix_var_decl const &x) const '],['../structstan_1_1gm_1_1member__var__decl__visgen.html#a547c121fc9b18960dfb348e37eb04a0e',1,'stan::gm::member_var_decl_visgen::operator()(corr_matrix_var_decl const &x) const '],['../structstan_1_1gm_1_1member__var__decl__visgen.html#a4d8ea1a46fc58335839c7b8c688d147d',1,'stan::gm::member_var_decl_visgen::operator()(vector_var_decl const &x) const '],['../structstan_1_1gm_1_1member__var__decl__visgen.html#a16094bd8d9f8b7ec7ec42a3b7556e2d9',1,'stan::gm::member_var_decl_visgen::operator()(row_vector_var_decl const &x) const '],['../structstan_1_1gm_1_1member__var__decl__visgen.html#a870fbb7b4bb778789eb6bb5d832d7911',1,'stan::gm::member_var_decl_visgen::operator()(matrix_var_decl const &x) const '],['../structstan_1_1gm_1_1local__var__decl__visgen.html#a0896684d42f09ea98f32bbd8f1c0ee29',1,'stan::gm::local_var_decl_visgen::operator()(nil const &) const '],['../structstan_1_1gm_1_1local__var__decl__visgen.html#afaffeaef006f8b9156b79ad911e63686',1,'stan::gm::local_var_decl_visgen::operator()(int_var_decl const &x) const '],['../structstan_1_1gm_1_1local__var__decl__visgen.html#aa1d9d8bd0d10c6cf59318d51606ba322',1,'stan::gm::local_var_decl_visgen::operator()(double_var_decl const &x) const '],['../structstan_1_1gm_1_1local__var__decl__visgen.html#a402d4b157dd157cd05af74e8aede83ac',1,'stan::gm::local_var_decl_visgen::operator()(vector_var_decl const &x) const '],['../structstan_1_1gm_1_1local__var__decl__visgen.html#a891deece1420c22599e64b7bfa85e481',1,'stan::gm::local_var_decl_visgen::operator()(row_vector_var_decl const &x) const '],['../structstan_1_1gm_1_1local__var__decl__visgen.html#aa169624bac1a343c4f76b3c524ccdf92',1,'stan::gm::local_var_decl_visgen::operator()(matrix_var_decl const &x) const '],['../structstan_1_1gm_1_1local__var__decl__visgen.html#a8f523bcdc99b230336b45a73392c6bdc',1,'stan::gm::local_var_decl_visgen::operator()(unit_vector_var_decl const &x) const '],['../structstan_1_1gm_1_1local__var__decl__visgen.html#a19fe01f126a6d2da24531b6853fca054',1,'stan::gm::local_var_decl_visgen::operator()(simplex_var_decl const &x) const '],['../structstan_1_1gm_1_1local__var__decl__visgen.html#ac56bc9b5dea646125b2bc9898a2daf72',1,'stan::gm::local_var_decl_visgen::operator()(ordered_var_decl const &x) const '],['../structstan_1_1gm_1_1local__var__decl__visgen.html#a6dddb8f57c6478c6cd4e9650ee7647f3',1,'stan::gm::local_var_decl_visgen::operator()(positive_ordered_var_decl const &x) const '],['../structstan_1_1gm_1_1local__var__decl__visgen.html#a285e81494c6c7dc4b8c24f4fccd6b551',1,'stan::gm::local_var_decl_visgen::operator()(cholesky_factor_var_decl const &x) const '],['../structstan_1_1gm_1_1local__var__decl__visgen.html#a27dee788268922197969f21368393349',1,'stan::gm::local_var_decl_visgen::operator()(cov_matrix_var_decl const &x) const '],['../structstan_1_1gm_1_1local__var__decl__visgen.html#ab7ed5b969db7d6b35c7c1f1401bc184b',1,'stan::gm::local_var_decl_visgen::operator()(corr_matrix_var_decl const &x) const '],['../structstan_1_1gm_1_1generate__local__var__init__nan__visgen.html#a42d0b0b15905906457cbca26c6d10142',1,'stan::gm::generate_local_var_init_nan_visgen::operator()(const nil &) const '],['../structstan_1_1gm_1_1generate__local__var__init__nan__visgen.html#ae4765b5775d99a95ddb1728302f5cbe0',1,'stan::gm::generate_local_var_init_nan_visgen::operator()(const int_var_decl &x) const '],['../structstan_1_1gm_1_1generate__local__var__init__nan__visgen.html#ad47511bfb6722ed45fbe450cb9ba581a',1,'stan::gm::generate_local_var_init_nan_visgen::operator()(const double_var_decl &x) const '],['../structstan_1_1gm_1_1generate__local__var__init__nan__visgen.html#afa590791c9f6197ca2f85cef55be2f99',1,'stan::gm::generate_local_var_init_nan_visgen::operator()(const vector_var_decl &x) const '],['../structstan_1_1gm_1_1generate__local__var__init__nan__visgen.html#a6c85a19a7505a8454242df4367fe07e9',1,'stan::gm::generate_local_var_init_nan_visgen::operator()(const row_vector_var_decl &x) const '],['../structstan_1_1gm_1_1generate__local__var__init__nan__visgen.html#a45ac40894402f023815850e68f485aef',1,'stan::gm::generate_local_var_init_nan_visgen::operator()(const matrix_var_decl &x) const '],['../structstan_1_1gm_1_1generate__local__var__init__nan__visgen.html#a308932a45f040240680173e54e33d8cf',1,'stan::gm::generate_local_var_init_nan_visgen::operator()(const unit_vector_var_decl &x) const '],['../structstan_1_1gm_1_1generate__local__var__init__nan__visgen.html#a6e735049bbefcc57919868b3a6f08715',1,'stan::gm::generate_local_var_init_nan_visgen::operator()(const simplex_var_decl &x) const '],['../structstan_1_1gm_1_1generate__local__var__init__nan__visgen.html#a10b41b00c40c30ca1bc8ce3e53ff0ebf',1,'stan::gm::generate_local_var_init_nan_visgen::operator()(const ordered_var_decl &x) const '],['../structstan_1_1gm_1_1generate__local__var__init__nan__visgen.html#a4b8549963107c86290863b79cea66c51',1,'stan::gm::generate_local_var_init_nan_visgen::operator()(const positive_ordered_var_decl &x) const '],['../structstan_1_1gm_1_1generate__local__var__init__nan__visgen.html#a6ecfe0a495361f204c894f4e0df8a426',1,'stan::gm::generate_local_var_init_nan_visgen::operator()(const cholesky_factor_var_decl &x) const '],['../structstan_1_1gm_1_1generate__local__var__init__nan__visgen.html#a99b6c01ad0c40e6a38c6e1b2546f56a0',1,'stan::gm::generate_local_var_init_nan_visgen::operator()(const cov_matrix_var_decl &x) const '],['../structstan_1_1gm_1_1generate__local__var__init__nan__visgen.html#aada22b5e887493ac2aafb7952555e684',1,'stan::gm::generate_local_var_init_nan_visgen::operator()(const corr_matrix_var_decl &x) const '],['../structstan_1_1gm_1_1generate__init__vars__visgen.html#a5296c19c9ceeec88da8aea6f7c127a0f',1,'stan::gm::generate_init_vars_visgen::operator()(nil const &) const '],['../structstan_1_1gm_1_1generate__init__vars__visgen.html#a9e7341c528d58e75cce017b798d5a0cc',1,'stan::gm::generate_init_vars_visgen::operator()(int_var_decl const &x) const '],['../structstan_1_1gm_1_1generate__init__vars__visgen.html#a564e16e6d2733419f6124f594b3ce02d',1,'stan::gm::generate_init_vars_visgen::operator()(double_var_decl const &x) const '],['../structstan_1_1gm_1_1generate__init__vars__visgen.html#ae8ae66be4b3102b4c58c1ad5474fc703',1,'stan::gm::generate_init_vars_visgen::operator()(vector_var_decl const &x) const '],['../structstan_1_1gm_1_1generate__init__vars__visgen.html#a322208fcee39dfaae64d6d660e44db9f',1,'stan::gm::generate_init_vars_visgen::operator()(row_vector_var_decl const &x) const '],['../structstan_1_1gm_1_1generate__init__vars__visgen.html#a1f4d18fd1d808922ba1be8c063275576',1,'stan::gm::generate_init_vars_visgen::operator()(matrix_var_decl const &x) const '],['../structstan_1_1gm_1_1generate__init__vars__visgen.html#a76b27f4e0d2cdeef25f8c8653161e8e2',1,'stan::gm::generate_init_vars_visgen::operator()(unit_vector_var_decl const &x) const '],['../structstan_1_1gm_1_1generate__init__vars__visgen.html#a539105c77554c2111c5f819870cba7b4',1,'stan::gm::generate_init_vars_visgen::operator()(simplex_var_decl const &x) const '],['../structstan_1_1gm_1_1generate__init__vars__visgen.html#aa96301578f07886566d1c60605f51a24',1,'stan::gm::generate_init_vars_visgen::operator()(ordered_var_decl const &x) const '],['../structstan_1_1gm_1_1generate__init__vars__visgen.html#a445e438ce16f5da4b477e4c28b29af64',1,'stan::gm::generate_init_vars_visgen::operator()(positive_ordered_var_decl const &x) const '],['../structstan_1_1gm_1_1generate__init__vars__visgen.html#aa623eb8b3406e8025ff2ee4202d1a037',1,'stan::gm::generate_init_vars_visgen::operator()(cholesky_factor_var_decl const &x) const '],['../structstan_1_1gm_1_1generate__init__vars__visgen.html#a67a792b559bef1d3ebc8b3ecd3e7e3d8',1,'stan::gm::generate_init_vars_visgen::operator()(cov_matrix_var_decl const &x) const '],['../structstan_1_1gm_1_1generate__init__vars__visgen.html#ac67da1998f7e6479721e6f419e033a8f',1,'stan::gm::generate_init_vars_visgen::operator()(corr_matrix_var_decl const &x) const '],['../structstan_1_1gm_1_1validate__transformed__params__visgen.html#a14fd7eed71c573311d921da1d1cb901b',1,'stan::gm::validate_transformed_params_visgen::operator()(nil const &) const '],['../structstan_1_1gm_1_1validate__transformed__params__visgen.html#ab43eac10e252f672634e5c3098e6102e',1,'stan::gm::validate_transformed_params_visgen::operator()(int_var_decl const &x) const '],['../structstan_1_1gm_1_1validate__transformed__params__visgen.html#a118d04b0f14440602301eedcf2e00331',1,'stan::gm::validate_transformed_params_visgen::operator()(double_var_decl const &x) const '],['../structstan_1_1gm_1_1validate__transformed__params__visgen.html#a3482660b917b658e4d987f63ed688c2a',1,'stan::gm::validate_transformed_params_visgen::operator()(vector_var_decl const &x) const '],['../structstan_1_1gm_1_1validate__transformed__params__visgen.html#affb011dc7007013be0e7b09c402d4c38',1,'stan::gm::validate_transformed_params_visgen::operator()(unit_vector_var_decl const &x) const '],['../structstan_1_1gm_1_1validate__transformed__params__visgen.html#ad4c97056f7796c9f0335edd1c5a770a4',1,'stan::gm::validate_transformed_params_visgen::operator()(simplex_var_decl const &x) const '],['../structstan_1_1gm_1_1validate__transformed__params__visgen.html#aa046bb1fa3a293080f0b50fd939c48b5',1,'stan::gm::validate_transformed_params_visgen::operator()(ordered_var_decl const &x) const '],['../structstan_1_1gm_1_1validate__transformed__params__visgen.html#a2e5661a4fe0ffa841278abd106b658b8',1,'stan::gm::validate_transformed_params_visgen::operator()(positive_ordered_var_decl const &x) const '],['../structstan_1_1gm_1_1validate__transformed__params__visgen.html#a8c346096587fed22458d55deb48bb556',1,'stan::gm::validate_transformed_params_visgen::operator()(row_vector_var_decl const &x) const '],['../structstan_1_1gm_1_1validate__transformed__params__visgen.html#a9d5589f7e8adae47669af9b1662cf846',1,'stan::gm::validate_transformed_params_visgen::operator()(matrix_var_decl const &x) const '],['../structstan_1_1gm_1_1validate__transformed__params__visgen.html#acaa1f2d1859c10a1c4ac1c0f1c96e82f',1,'stan::gm::validate_transformed_params_visgen::operator()(cholesky_factor_var_decl const &x) const '],['../structstan_1_1gm_1_1validate__transformed__params__visgen.html#a3e5e6857c321533c1083a6ce3088fdfb',1,'stan::gm::validate_transformed_params_visgen::operator()(cov_matrix_var_decl const &x) const '],['../structstan_1_1gm_1_1validate__transformed__params__visgen.html#a99261725b4a378a9919fe7f89e4fa591',1,'stan::gm::validate_transformed_params_visgen::operator()(corr_matrix_var_decl const &x) const '],['../structstan_1_1gm_1_1statement__visgen.html#af85ff0769df52efb90ce2bbc5ff3df23',1,'stan::gm::statement_visgen::operator()(nil const &) const '],['../structstan_1_1gm_1_1statement__visgen.html#a882ddbcdad5d16de84a4d3d658c6ff20',1,'stan::gm::statement_visgen::operator()(assignment const &x) const '],['../structstan_1_1gm_1_1statement__visgen.html#a18f13f4f735a01b9bc621dbacaf64c67',1,'stan::gm::statement_visgen::operator()(expression const &x) const '],['../structstan_1_1gm_1_1statement__visgen.html#a8b4d0dbca715399dad65ca12d81c2caf',1,'stan::gm::statement_visgen::operator()(sample const &x) const '],['../structstan_1_1gm_1_1statement__visgen.html#a42c4a20fb6e15cfc6348f67669a596a3',1,'stan::gm::statement_visgen::operator()(const increment_log_prob_statement &x) const '],['../structstan_1_1gm_1_1statement__visgen.html#a0173ebc27b24f84a454b7dd8d86ad5aa',1,'stan::gm::statement_visgen::operator()(const statements &x) const '],['../structstan_1_1gm_1_1statement__visgen.html#a3210b49a16a34a1f00e5ae4103e4d52d',1,'stan::gm::statement_visgen::operator()(const print_statement &ps) const '],['../structstan_1_1gm_1_1statement__visgen.html#a34c280dce22502fe23321a7104e06516',1,'stan::gm::statement_visgen::operator()(const for_statement &x) const '],['../structstan_1_1gm_1_1statement__visgen.html#a44904f06b384d2d48bc86ce8761c87b7',1,'stan::gm::statement_visgen::operator()(const while_statement &x) const '],['../structstan_1_1gm_1_1statement__visgen.html#a6cd75512cddef8725f4668be6d7ff891',1,'stan::gm::statement_visgen::operator()(const conditional_statement &x) const '],['../structstan_1_1gm_1_1statement__visgen.html#ad5ace1426be86aeec720e50919d711b8',1,'stan::gm::statement_visgen::operator()(const no_op_statement &) const '],['../structstan_1_1gm_1_1dump__member__var__visgen.html#abfa487614709c71e58805b48802e45a4',1,'stan::gm::dump_member_var_visgen::operator()(nil const &) const '],['../structstan_1_1gm_1_1dump__member__var__visgen.html#aa56bad9542006b9d9354f8571c6b722c',1,'stan::gm::dump_member_var_visgen::operator()(int_var_decl const &x) const '],['../structstan_1_1gm_1_1dump__member__var__visgen.html#aef25639b7aa2e8fe80e189de25130ea0',1,'stan::gm::dump_member_var_visgen::operator()(double_var_decl const &x) const '],['../structstan_1_1gm_1_1dump__member__var__visgen.html#ab8092387d74cddae7522efd01d133d43',1,'stan::gm::dump_member_var_visgen::operator()(vector_var_decl const &x) const '],['../structstan_1_1gm_1_1dump__member__var__visgen.html#ac67d9309fc445f1dc5f962995f2cfebc',1,'stan::gm::dump_member_var_visgen::operator()(row_vector_var_decl const &x) const '],['../structstan_1_1gm_1_1dump__member__var__visgen.html#a90cdc8c8b6027bbe9f72c6b4b2ab6351',1,'stan::gm::dump_member_var_visgen::operator()(unit_vector_var_decl const &x) const '],['../structstan_1_1gm_1_1dump__member__var__visgen.html#a1df5811f58ff7a33a96962e1f0527250',1,'stan::gm::dump_member_var_visgen::operator()(simplex_var_decl const &x) const '],['../structstan_1_1gm_1_1dump__member__var__visgen.html#a4c94da368b07ae2933600a6a5f0e7c9f',1,'stan::gm::dump_member_var_visgen::operator()(ordered_var_decl const &x) const '],['../structstan_1_1gm_1_1dump__member__var__visgen.html#a8fbb932a4cb688a85ee6e65ce36a4b13',1,'stan::gm::dump_member_var_visgen::operator()(positive_ordered_var_decl const &x) const '],['../structstan_1_1gm_1_1dump__member__var__visgen.html#ace2352860fab0197f7cf0d43f75b7302',1,'stan::gm::dump_member_var_visgen::operator()(matrix_var_decl const &x) const '],['../structstan_1_1gm_1_1dump__member__var__visgen.html#a1a149800febdc5a296facd5874dbf695',1,'stan::gm::dump_member_var_visgen::operator()(corr_matrix_var_decl const &x) const '],['../structstan_1_1gm_1_1dump__member__var__visgen.html#afe2e3c945b8fbd8fd18a3df5ac91fe5f',1,'stan::gm::dump_member_var_visgen::operator()(cholesky_factor_var_decl const &x) const '],['../structstan_1_1gm_1_1dump__member__var__visgen.html#ab6568cd4e866ced3a2456c4910265eb9',1,'stan::gm::dump_member_var_visgen::operator()(cov_matrix_var_decl const &x) const '],['../structstan_1_1gm_1_1set__param__ranges__visgen.html#a3625dc74eb75e7fa91531810bdf97b9e',1,'stan::gm::set_param_ranges_visgen::operator()(const nil &) const '],['../structstan_1_1gm_1_1set__param__ranges__visgen.html#ae3478b2db9512a083f0ee9bdfd111082',1,'stan::gm::set_param_ranges_visgen::operator()(const int_var_decl &x) const '],['../structstan_1_1gm_1_1set__param__ranges__visgen.html#a706ebdafd5d5ea2db2bfff93a7b1328f',1,'stan::gm::set_param_ranges_visgen::operator()(const double_var_decl &x) const '],['../structstan_1_1gm_1_1set__param__ranges__visgen.html#aee6df5fcfce0657ed53f2c144cf64797',1,'stan::gm::set_param_ranges_visgen::operator()(const vector_var_decl &x) const '],['../structstan_1_1gm_1_1set__param__ranges__visgen.html#a4b318d4a2f5799b9f431ced598a7255a',1,'stan::gm::set_param_ranges_visgen::operator()(const row_vector_var_decl &x) const '],['../structstan_1_1gm_1_1set__param__ranges__visgen.html#a07a9057ea34f41475091f186c465486d',1,'stan::gm::set_param_ranges_visgen::operator()(const matrix_var_decl &x) const '],['../structstan_1_1gm_1_1set__param__ranges__visgen.html#a0a3c6ed449782da43725725db88f0af5',1,'stan::gm::set_param_ranges_visgen::operator()(const unit_vector_var_decl &x) const '],['../structstan_1_1gm_1_1set__param__ranges__visgen.html#abcb216c0ca4b41da7d535ce3a2738a9f',1,'stan::gm::set_param_ranges_visgen::operator()(const simplex_var_decl &x) const '],['../structstan_1_1gm_1_1set__param__ranges__visgen.html#a33f608b08e2821547825696f04d0fdbf',1,'stan::gm::set_param_ranges_visgen::operator()(const ordered_var_decl &x) const '],['../structstan_1_1gm_1_1set__param__ranges__visgen.html#a376e19d3c9d4ee5bd05651b3f7b8400c',1,'stan::gm::set_param_ranges_visgen::operator()(const positive_ordered_var_decl &x) const '],['../structstan_1_1gm_1_1set__param__ranges__visgen.html#ad0298bb2fcb14381f78fcdf45deb8334',1,'stan::gm::set_param_ranges_visgen::operator()(const cholesky_factor_var_decl &x) const '],['../structstan_1_1gm_1_1set__param__ranges__visgen.html#a852e85c5a92311b692c6ea2278168f37',1,'stan::gm::set_param_ranges_visgen::operator()(const cov_matrix_var_decl &x) const '],['../structstan_1_1gm_1_1set__param__ranges__visgen.html#a183d4048461fbc6648583ea9c9738204',1,'stan::gm::set_param_ranges_visgen::operator()(const corr_matrix_var_decl &x) const '],['../structstan_1_1gm_1_1generate__init__visgen.html#ae64d5b09459e81886886f4b8bb93ad5e',1,'stan::gm::generate_init_visgen::operator()(nil const &) const '],['../structstan_1_1gm_1_1generate__init__visgen.html#a4acfea897c0949cfc6d0a93e1206d19f',1,'stan::gm::generate_init_visgen::operator()(int_var_decl const &x) const '],['../structstan_1_1gm_1_1generate__init__visgen.html#a1a20fef969f980bd76d76f649fee2f8f',1,'stan::gm::generate_init_visgen::operator()(double_var_decl const &x) const '],['../structstan_1_1gm_1_1generate__init__visgen.html#aea32eea12e6ecd555c45f4f70d84fdd4',1,'stan::gm::generate_init_visgen::operator()(vector_var_decl const &x) const '],['../structstan_1_1gm_1_1generate__init__visgen.html#a2d29390aa764b8b85a2648d4ea2f68b6',1,'stan::gm::generate_init_visgen::operator()(row_vector_var_decl const &x) const '],['../structstan_1_1gm_1_1generate__init__visgen.html#ad04937033077af89a4b73ebfe5212c97',1,'stan::gm::generate_init_visgen::operator()(matrix_var_decl const &x) const '],['../structstan_1_1gm_1_1generate__init__visgen.html#adc2c6e42617cf083e62c8173858903f5',1,'stan::gm::generate_init_visgen::operator()(unit_vector_var_decl const &x) const '],['../structstan_1_1gm_1_1generate__init__visgen.html#a849ab1352d5c6ecf926e2062eaec1fe6',1,'stan::gm::generate_init_visgen::operator()(simplex_var_decl const &x) const '],['../structstan_1_1gm_1_1generate__init__visgen.html#a9982f4abc1aeea75644c95d262a4664c',1,'stan::gm::generate_init_visgen::operator()(ordered_var_decl const &x) const '],['../structstan_1_1gm_1_1generate__init__visgen.html#aa9b31667894e82fcce665487e56df858',1,'stan::gm::generate_init_visgen::operator()(positive_ordered_var_decl const &x) const '],['../structstan_1_1gm_1_1generate__init__visgen.html#a15640d3d0ed7f8bd5e3791760873a141',1,'stan::gm::generate_init_visgen::operator()(cholesky_factor_var_decl const &x) const '],['../structstan_1_1gm_1_1generate__init__visgen.html#a1902bf22a0d19fa6c0608d80f79fbd15',1,'stan::gm::generate_init_visgen::operator()(cov_matrix_var_decl const &x) const '],['../structstan_1_1gm_1_1generate__init__visgen.html#ac7801f6cac14339b13bd6e33a16479fd',1,'stan::gm::generate_init_visgen::operator()(corr_matrix_var_decl const &x) const '],['../structstan_1_1gm_1_1write__dims__visgen.html#a241e8488f5df6048133f3fc3436b4f73',1,'stan::gm::write_dims_visgen::operator()(const nil &) const '],['../structstan_1_1gm_1_1write__dims__visgen.html#a285f76d658ddd8b018079da23eb88ab2',1,'stan::gm::write_dims_visgen::operator()(const int_var_decl &x) const '],['../structstan_1_1gm_1_1write__dims__visgen.html#a739b3a41bd03346e6364ed563644fca3',1,'stan::gm::write_dims_visgen::operator()(const double_var_decl &x) const '],['../structstan_1_1gm_1_1write__dims__visgen.html#ac46344be8a564d0019c582f9604ea797',1,'stan::gm::write_dims_visgen::operator()(const vector_var_decl &x) const '],['../structstan_1_1gm_1_1write__dims__visgen.html#adc6fbaedd6b426908b335d9ed6363c64',1,'stan::gm::write_dims_visgen::operator()(const row_vector_var_decl &x) const '],['../structstan_1_1gm_1_1write__dims__visgen.html#a9399300d81344525a1c52ca3003bd123',1,'stan::gm::write_dims_visgen::operator()(const matrix_var_decl &x) const '],['../structstan_1_1gm_1_1write__dims__visgen.html#a0e7495ad6875b725669909150209d36e',1,'stan::gm::write_dims_visgen::operator()(const unit_vector_var_decl &x) const '],['../structstan_1_1gm_1_1write__dims__visgen.html#abfe9bcecd2b4081a1970a514dfa2f7bb',1,'stan::gm::write_dims_visgen::operator()(const simplex_var_decl &x) const '],['../structstan_1_1gm_1_1write__dims__visgen.html#a735927dd81ac131434272269eb9853fd',1,'stan::gm::write_dims_visgen::operator()(const ordered_var_decl &x) const '],['../structstan_1_1gm_1_1write__dims__visgen.html#a6823e7c0f43cb493bc166f3e6f7ce169',1,'stan::gm::write_dims_visgen::operator()(const positive_ordered_var_decl &x) const '],['../structstan_1_1gm_1_1write__dims__visgen.html#a5affc0ae2fa501d9d98ea0421688fdc9',1,'stan::gm::write_dims_visgen::operator()(const cholesky_factor_var_decl &x) const '],['../structstan_1_1gm_1_1write__dims__visgen.html#afcd238f2d6c7d48a4e13f3bfc4e640f8',1,'stan::gm::write_dims_visgen::operator()(const cov_matrix_var_decl &x) const '],['../structstan_1_1gm_1_1write__dims__visgen.html#ae252214d9acdfd84be53e5f3803e0bee',1,'stan::gm::write_dims_visgen::operator()(const corr_matrix_var_decl &x) const '],['../structstan_1_1gm_1_1write__param__names__visgen.html#a661aeeb81f7e904501160518ef2ba145',1,'stan::gm::write_param_names_visgen::operator()(const nil &) const '],['../structstan_1_1gm_1_1write__param__names__visgen.html#abff2286d0b2a3d185d304917ebc4492a',1,'stan::gm::write_param_names_visgen::operator()(const int_var_decl &x) const '],['../structstan_1_1gm_1_1write__param__names__visgen.html#a470817ce578b1abc52f0fdc56c1b28f4',1,'stan::gm::write_param_names_visgen::operator()(const double_var_decl &x) const '],['../structstan_1_1gm_1_1write__param__names__visgen.html#a62123b5999a928689b74ce0adf406067',1,'stan::gm::write_param_names_visgen::operator()(const vector_var_decl &x) const '],['../structstan_1_1gm_1_1write__param__names__visgen.html#a4f921a15549249daf2b0dc4ddc13614c',1,'stan::gm::write_param_names_visgen::operator()(const row_vector_var_decl &x) const '],['../structstan_1_1gm_1_1write__param__names__visgen.html#a930d1005cd6effae68a9e30c38ae5547',1,'stan::gm::write_param_names_visgen::operator()(const matrix_var_decl &x) const '],['../structstan_1_1gm_1_1write__param__names__visgen.html#a4e2f1c39a4f283e4c13107a84093aa1e',1,'stan::gm::write_param_names_visgen::operator()(const unit_vector_var_decl &x) const '],['../structstan_1_1gm_1_1write__param__names__visgen.html#a2a82891f7cd347774f01ee587527d607',1,'stan::gm::write_param_names_visgen::operator()(const simplex_var_decl &x) const '],['../structstan_1_1gm_1_1write__param__names__visgen.html#a5244ace83897596a9a898062a466f3a7',1,'stan::gm::write_param_names_visgen::operator()(const ordered_var_decl &x) const '],['../structstan_1_1gm_1_1write__param__names__visgen.html#a13381b4ec5fc1104cec86d0630c0073a',1,'stan::gm::write_param_names_visgen::operator()(const positive_ordered_var_decl &x) const '],['../structstan_1_1gm_1_1write__param__names__visgen.html#aaf7e806be4b3ad34f72b37b65f6d9f69',1,'stan::gm::write_param_names_visgen::operator()(const cholesky_factor_var_decl &x) const '],['../structstan_1_1gm_1_1write__param__names__visgen.html#acdd883b61a36735c8647fe83618f6fa7',1,'stan::gm::write_param_names_visgen::operator()(const cov_matrix_var_decl &x) const '],['../structstan_1_1gm_1_1write__param__names__visgen.html#a9910044b2795a6255a78c9f672c1bf0c',1,'stan::gm::write_param_names_visgen::operator()(const corr_matrix_var_decl &x) const '],['../structstan_1_1gm_1_1write__csv__header__visgen.html#ae9ad9fd29629c1a5fa7eaf95aef5d8d7',1,'stan::gm::write_csv_header_visgen::operator()(const nil &) const '],['../structstan_1_1gm_1_1write__csv__header__visgen.html#ae604f0f9b1cc6db35f15f655b00cd262',1,'stan::gm::write_csv_header_visgen::operator()(const int_var_decl &x) const '],['../structstan_1_1gm_1_1write__csv__header__visgen.html#a8d445e07f41720cce733711c33acaa76',1,'stan::gm::write_csv_header_visgen::operator()(const double_var_decl &x) const '],['../structstan_1_1gm_1_1write__csv__header__visgen.html#ab1ef373185ef957afb786883c4f1ab79',1,'stan::gm::write_csv_header_visgen::operator()(const vector_var_decl &x) const '],['../structstan_1_1gm_1_1write__csv__header__visgen.html#ab1fcfc4ab4f58ef149e8492fe967194c',1,'stan::gm::write_csv_header_visgen::operator()(const row_vector_var_decl &x) const '],['../structstan_1_1gm_1_1write__csv__header__visgen.html#aa7f849a4a814eadaaecf4a6ce8ca4db5',1,'stan::gm::write_csv_header_visgen::operator()(const matrix_var_decl &x) const '],['../structstan_1_1gm_1_1write__csv__header__visgen.html#af409c6ebc10fd7efd7c964033c8d0c27',1,'stan::gm::write_csv_header_visgen::operator()(const unit_vector_var_decl &x) const '],['../structstan_1_1gm_1_1write__csv__header__visgen.html#a1225374f023caada43d88fb6cc879d3c',1,'stan::gm::write_csv_header_visgen::operator()(const simplex_var_decl &x) const '],['../structstan_1_1gm_1_1write__csv__header__visgen.html#ab1ee25227b1498266d43231b824c31d7',1,'stan::gm::write_csv_header_visgen::operator()(const ordered_var_decl &x) const '],['../structstan_1_1gm_1_1write__csv__header__visgen.html#a9be3a2194404fd09e0ba9e3de51bc5fa',1,'stan::gm::write_csv_header_visgen::operator()(const positive_ordered_var_decl &x) const '],['../structstan_1_1gm_1_1write__csv__header__visgen.html#a38e2400334cbb5ca23835db8c0a1126f',1,'stan::gm::write_csv_header_visgen::operator()(const cholesky_factor_var_decl &x) const '],['../structstan_1_1gm_1_1write__csv__header__visgen.html#ad3adb663e082ceea28006f88cc48e584',1,'stan::gm::write_csv_header_visgen::operator()(const cov_matrix_var_decl &x) const '],['../structstan_1_1gm_1_1write__csv__header__visgen.html#ab64e2f461383641fbbdb0ada35a8ecc3',1,'stan::gm::write_csv_header_visgen::operator()(const corr_matrix_var_decl &x) const '],['../structstan_1_1gm_1_1constrained__param__names__visgen.html#a7c3101dca78af8f11df33f8e69272d1f',1,'stan::gm::constrained_param_names_visgen::operator()(const nil &) const '],['../structstan_1_1gm_1_1constrained__param__names__visgen.html#a42d95194ca06e7281883aac7a71cd8e0',1,'stan::gm::constrained_param_names_visgen::operator()(const int_var_decl &x) const '],['../structstan_1_1gm_1_1constrained__param__names__visgen.html#a6b0c36939bea3557e78606b4cad1c6ed',1,'stan::gm::constrained_param_names_visgen::operator()(const double_var_decl &x) const '],['../structstan_1_1gm_1_1constrained__param__names__visgen.html#aa768bee970f4f260a25afe9469cb94f2',1,'stan::gm::constrained_param_names_visgen::operator()(const vector_var_decl &x) const '],['../structstan_1_1gm_1_1constrained__param__names__visgen.html#ab6aedd3a1d06e93388765f6322439b91',1,'stan::gm::constrained_param_names_visgen::operator()(const row_vector_var_decl &x) const '],['../structstan_1_1gm_1_1constrained__param__names__visgen.html#a80882376e2174653b40047ef3e74e641',1,'stan::gm::constrained_param_names_visgen::operator()(const matrix_var_decl &x) const '],['../structstan_1_1gm_1_1constrained__param__names__visgen.html#abbeaf19e5de404502b219c5f8c6ec5ea',1,'stan::gm::constrained_param_names_visgen::operator()(const unit_vector_var_decl &x) const '],['../structstan_1_1gm_1_1constrained__param__names__visgen.html#acd0d2716db8d9b32253916c959680df9',1,'stan::gm::constrained_param_names_visgen::operator()(const simplex_var_decl &x) const '],['../structstan_1_1gm_1_1constrained__param__names__visgen.html#addad66465bf189869bd62f872a17edbc',1,'stan::gm::constrained_param_names_visgen::operator()(const ordered_var_decl &x) const '],['../structstan_1_1gm_1_1constrained__param__names__visgen.html#a6c880b88ca3ca940cea321b0617b97af',1,'stan::gm::constrained_param_names_visgen::operator()(const positive_ordered_var_decl &x) const '],['../structstan_1_1gm_1_1constrained__param__names__visgen.html#a7e406cdece7bcf4e87d2c225baf9ffce',1,'stan::gm::constrained_param_names_visgen::operator()(const cholesky_factor_var_decl &x) const '],['../structstan_1_1gm_1_1constrained__param__names__visgen.html#a8a496777aa89fd7699f822b67500a50b',1,'stan::gm::constrained_param_names_visgen::operator()(const cov_matrix_var_decl &x) const '],['../structstan_1_1gm_1_1constrained__param__names__visgen.html#ab836f4938f43c78bfdd417ee4b8bb88a',1,'stan::gm::constrained_param_names_visgen::operator()(const corr_matrix_var_decl &x) const '],['../structstan_1_1gm_1_1unconstrained__param__names__visgen.html#a8d1853ed4e7a8999b2f548e2bd3dedc4',1,'stan::gm::unconstrained_param_names_visgen::operator()(const nil &) const '],['../structstan_1_1gm_1_1unconstrained__param__names__visgen.html#a227e9459dd3354627bf7c95a3e2805d4',1,'stan::gm::unconstrained_param_names_visgen::operator()(const int_var_decl &x) const '],['../structstan_1_1gm_1_1unconstrained__param__names__visgen.html#a336ad68a4364f534af6c3b8ba4148af0',1,'stan::gm::unconstrained_param_names_visgen::operator()(const double_var_decl &x) const '],['../structstan_1_1gm_1_1unconstrained__param__names__visgen.html#a6dde9e6aa7dff433b48f2b53c6f57966',1,'stan::gm::unconstrained_param_names_visgen::operator()(const vector_var_decl &x) const '],['../structstan_1_1gm_1_1unconstrained__param__names__visgen.html#a68a7a4f4f7a0027c312f093ced7a8036',1,'stan::gm::unconstrained_param_names_visgen::operator()(const row_vector_var_decl &x) const '],['../structstan_1_1gm_1_1unconstrained__param__names__visgen.html#a01ef3b571744b182fd2b2679aa14c90c',1,'stan::gm::unconstrained_param_names_visgen::operator()(const matrix_var_decl &x) const '],['../structstan_1_1gm_1_1unconstrained__param__names__visgen.html#acf780131651d54be9029160c82ce5c7b',1,'stan::gm::unconstrained_param_names_visgen::operator()(const unit_vector_var_decl &x) const '],['../structstan_1_1gm_1_1unconstrained__param__names__visgen.html#a510b9bb20dda3fb01a1ff9dbabb0bf78',1,'stan::gm::unconstrained_param_names_visgen::operator()(const simplex_var_decl &x) const '],['../structstan_1_1gm_1_1unconstrained__param__names__visgen.html#a3296924b11f2a2a1aad3ffe4c48d3772',1,'stan::gm::unconstrained_param_names_visgen::operator()(const ordered_var_decl &x) const '],['../structstan_1_1gm_1_1unconstrained__param__names__visgen.html#af672a2749665faa902b87e17f7be9eef',1,'stan::gm::unconstrained_param_names_visgen::operator()(const positive_ordered_var_decl &x) const '],['../structstan_1_1gm_1_1unconstrained__param__names__visgen.html#a9a938d11ae97283b176fefd67ac79e6b',1,'stan::gm::unconstrained_param_names_visgen::operator()(const cholesky_factor_var_decl &x) const '],['../structstan_1_1gm_1_1unconstrained__param__names__visgen.html#a40bde127dc4cd55e31d53fe0a9d7b9a5',1,'stan::gm::unconstrained_param_names_visgen::operator()(const cov_matrix_var_decl &x) const '],['../structstan_1_1gm_1_1unconstrained__param__names__visgen.html#a3735b01da2e94eff9780b03d95f0c5b6',1,'stan::gm::unconstrained_param_names_visgen::operator()(const corr_matrix_var_decl &x) const '],['../structstan_1_1gm_1_1write__csv__visgen.html#a832c79f771732b731f04153cafe0dd37',1,'stan::gm::write_csv_visgen::operator()(const nil &) const '],['../structstan_1_1gm_1_1write__csv__visgen.html#a4b42d735e3420ec31517fee504c52793',1,'stan::gm::write_csv_visgen::operator()(const int_var_decl &x) const '],['../structstan_1_1gm_1_1write__csv__visgen.html#a9c86371fd1160881efc97c46c67235ca',1,'stan::gm::write_csv_visgen::operator()(const double_var_decl &x) const '],['../structstan_1_1gm_1_1write__csv__visgen.html#a0c5d75d85a6fd4065cfcac82070672d0',1,'stan::gm::write_csv_visgen::operator()(const vector_var_decl &x) const '],['../structstan_1_1gm_1_1write__csv__visgen.html#aa7ca047c2be3c5b568480846296a94ec',1,'stan::gm::write_csv_visgen::operator()(const row_vector_var_decl &x) const '],['../structstan_1_1gm_1_1write__csv__visgen.html#a7b6c88d0194ef11baef723f5add65b10',1,'stan::gm::write_csv_visgen::operator()(const matrix_var_decl &x) const '],['../structstan_1_1gm_1_1write__csv__visgen.html#afbd0de485f3be611e1b7789ff2a12dc7',1,'stan::gm::write_csv_visgen::operator()(const unit_vector_var_decl &x) const '],['../structstan_1_1gm_1_1write__csv__visgen.html#aa427354c26e25e85863c118f12fa0a13',1,'stan::gm::write_csv_visgen::operator()(const simplex_var_decl &x) const '],['../structstan_1_1gm_1_1write__csv__visgen.html#a93880784b37e0d8a73cfeccd1c8a162c',1,'stan::gm::write_csv_visgen::operator()(const ordered_var_decl &x) const '],['../structstan_1_1gm_1_1write__csv__visgen.html#a595f05ac1587bfd0647519eb0698b6a2',1,'stan::gm::write_csv_visgen::operator()(const positive_ordered_var_decl &x) const '],['../structstan_1_1gm_1_1write__csv__visgen.html#ad1b3b76918fbd09d02b35e25a91d7f36',1,'stan::gm::write_csv_visgen::operator()(const cholesky_factor_var_decl &x) const '],['../structstan_1_1gm_1_1write__csv__visgen.html#a2072ed961ae54bcdcc7cf5a66efec313',1,'stan::gm::write_csv_visgen::operator()(const cov_matrix_var_decl &x) const '],['../structstan_1_1gm_1_1write__csv__visgen.html#af88449a647d8d4aaf5d4cb296e923f8d',1,'stan::gm::write_csv_visgen::operator()(const corr_matrix_var_decl &x) const '],['../structstan_1_1gm_1_1write__csv__vars__visgen.html#a2719acba4b1a18fb662c97dcb830d103',1,'stan::gm::write_csv_vars_visgen::operator()(const nil &) const '],['../structstan_1_1gm_1_1write__csv__vars__visgen.html#adb67f6f8f3816f872f4cd5db25993fbc',1,'stan::gm::write_csv_vars_visgen::operator()(const int_var_decl &x) const '],['../structstan_1_1gm_1_1write__csv__vars__visgen.html#a2b0ba004b7c8510e89ef81da784f0e1c',1,'stan::gm::write_csv_vars_visgen::operator()(const double_var_decl &x) const '],['../structstan_1_1gm_1_1write__csv__vars__visgen.html#afeca4060a34a32397dfcf01615405bdb',1,'stan::gm::write_csv_vars_visgen::operator()(const vector_var_decl &x) const '],['../structstan_1_1gm_1_1write__csv__vars__visgen.html#a80ba2c361cccd8f57935e9d6668be516',1,'stan::gm::write_csv_vars_visgen::operator()(const row_vector_var_decl &x) const '],['../structstan_1_1gm_1_1write__csv__vars__visgen.html#a1d97ffbfc321ee5120a71055372ded4e',1,'stan::gm::write_csv_vars_visgen::operator()(const matrix_var_decl &x) const '],['../structstan_1_1gm_1_1write__csv__vars__visgen.html#a3035bb84db8ce7a78918d76bc8a1fb4c',1,'stan::gm::write_csv_vars_visgen::operator()(const unit_vector_var_decl &x) const '],['../structstan_1_1gm_1_1write__csv__vars__visgen.html#ac74b4f9071b03f3a66b83023b568e797',1,'stan::gm::write_csv_vars_visgen::operator()(const simplex_var_decl &x) const '],['../structstan_1_1gm_1_1write__csv__vars__visgen.html#a019d32e99ccad2f6c17485519507e8b7',1,'stan::gm::write_csv_vars_visgen::operator()(const ordered_var_decl &x) const '],['../structstan_1_1gm_1_1write__csv__vars__visgen.html#aae675794a40e6c613b11f6fd28fcebf3',1,'stan::gm::write_csv_vars_visgen::operator()(const positive_ordered_var_decl &x) const '],['../structstan_1_1gm_1_1write__csv__vars__visgen.html#ab9336edc282edfd966c36da2514f09dc',1,'stan::gm::write_csv_vars_visgen::operator()(const cholesky_factor_var_decl &x) const '],['../structstan_1_1gm_1_1write__csv__vars__visgen.html#a77f63c9fcd04bab901a8efe09a2acbee',1,'stan::gm::write_csv_vars_visgen::operator()(const cov_matrix_var_decl &x) const '],['../structstan_1_1gm_1_1write__csv__vars__visgen.html#ad622ac454a8959f9621901235f01001b',1,'stan::gm::write_csv_vars_visgen::operator()(const corr_matrix_var_decl &x) const '],['../structstan_1_1gm_1_1write__array__visgen.html#a5e023f2fef25f89a84e7ef9cc3fffb28',1,'stan::gm::write_array_visgen::operator()(const nil &) const '],['../structstan_1_1gm_1_1write__array__visgen.html#a76890f5af58b5249068657a2bd5b6efa',1,'stan::gm::write_array_visgen::operator()(const int_var_decl &x) const '],['../structstan_1_1gm_1_1write__array__visgen.html#a24364e34f4993b5b367c81ce3f2b659a',1,'stan::gm::write_array_visgen::operator()(const double_var_decl &x) const '],['../structstan_1_1gm_1_1write__array__visgen.html#ac622e7cbe2c27da32f5be2d828b2e7e8',1,'stan::gm::write_array_visgen::operator()(const vector_var_decl &x) const '],['../structstan_1_1gm_1_1write__array__visgen.html#a24849551217534810a461fed799f5f2b',1,'stan::gm::write_array_visgen::operator()(const row_vector_var_decl &x) const '],['../structstan_1_1gm_1_1write__array__visgen.html#a25dffda3b1d6542f6e7d4842080c42a8',1,'stan::gm::write_array_visgen::operator()(const matrix_var_decl &x) const '],['../structstan_1_1gm_1_1write__array__visgen.html#a0b22a9605e7f90682f451d1ff8be1b67',1,'stan::gm::write_array_visgen::operator()(const unit_vector_var_decl &x) const '],['../structstan_1_1gm_1_1write__array__visgen.html#a8c54d3d13d4ca2d2cc09ae6a90ef441a',1,'stan::gm::write_array_visgen::operator()(const simplex_var_decl &x) const '],['../structstan_1_1gm_1_1write__array__visgen.html#a3fbb94eaca23339aa18664d3a808cd2d',1,'stan::gm::write_array_visgen::operator()(const ordered_var_decl &x) const '],['../structstan_1_1gm_1_1write__array__visgen.html#ad554817b1894e39e2ad30bad286f4563',1,'stan::gm::write_array_visgen::operator()(const positive_ordered_var_decl &x) const '],['../structstan_1_1gm_1_1write__array__visgen.html#ae4e903cfb0434aa8b0d1cfc1ff46fd13',1,'stan::gm::write_array_visgen::operator()(const cholesky_factor_var_decl &x) const '],['../structstan_1_1gm_1_1write__array__visgen.html#a2b7fc3532750391146c46bbf15ad605f',1,'stan::gm::write_array_visgen::operator()(const cov_matrix_var_decl &x) const '],['../structstan_1_1gm_1_1write__array__visgen.html#a79cfed1b9d05d41c66727331ec4fa0e2',1,'stan::gm::write_array_visgen::operator()(const corr_matrix_var_decl &x) const '],['../structstan_1_1gm_1_1write__array__vars__visgen.html#ad601dd8e1b7c3294e9dbb779b7a64090',1,'stan::gm::write_array_vars_visgen::operator()(const nil &) const '],['../structstan_1_1gm_1_1write__array__vars__visgen.html#a4bdb9cfceafeff1f37c18f0a2d8b4262',1,'stan::gm::write_array_vars_visgen::operator()(const int_var_decl &x) const '],['../structstan_1_1gm_1_1write__array__vars__visgen.html#adef25be6d3bdb7365fb6f26aeddabe65',1,'stan::gm::write_array_vars_visgen::operator()(const double_var_decl &x) const '],['../structstan_1_1gm_1_1write__array__vars__visgen.html#a8b05bf8a27d5f0d495a7302bef516f6c',1,'stan::gm::write_array_vars_visgen::operator()(const vector_var_decl &x) const '],['../structstan_1_1gm_1_1write__array__vars__visgen.html#a049135667941289c42a3b081610ab298',1,'stan::gm::write_array_vars_visgen::operator()(const row_vector_var_decl &x) const '],['../structstan_1_1gm_1_1write__array__vars__visgen.html#aea55b2a06d469e5d499eef36190fd037',1,'stan::gm::write_array_vars_visgen::operator()(const matrix_var_decl &x) const '],['../structstan_1_1gm_1_1write__array__vars__visgen.html#ae62dfbbd8d1d79af6bbdfccbfc09d6bc',1,'stan::gm::write_array_vars_visgen::operator()(const unit_vector_var_decl &x) const '],['../structstan_1_1gm_1_1write__array__vars__visgen.html#ace51ff0942e94f73235fa37cbefab194',1,'stan::gm::write_array_vars_visgen::operator()(const simplex_var_decl &x) const '],['../structstan_1_1gm_1_1write__array__vars__visgen.html#af12814f9cf2f360f33c363d3492746eb',1,'stan::gm::write_array_vars_visgen::operator()(const ordered_var_decl &x) const '],['../structstan_1_1gm_1_1write__array__vars__visgen.html#af7fa42ced7c5d892234d8db022397754',1,'stan::gm::write_array_vars_visgen::operator()(const positive_ordered_var_decl &x) const '],['../structstan_1_1gm_1_1write__array__vars__visgen.html#a7ef33b812611b18bf7340cc5cf586dd5',1,'stan::gm::write_array_vars_visgen::operator()(const cholesky_factor_var_decl &x) const '],['../structstan_1_1gm_1_1write__array__vars__visgen.html#a66250932aff2ae2ffd3cff5d361f95b4',1,'stan::gm::write_array_vars_visgen::operator()(const cov_matrix_var_decl &x) const '],['../structstan_1_1gm_1_1write__array__vars__visgen.html#a5763e948b3e12feb9e988e11eeb4553a',1,'stan::gm::write_array_vars_visgen::operator()(const corr_matrix_var_decl &x) const '],['../structstan_1_1gm_1_1validate__expr__type2.html#a882be65b1df71e890016fb4f7751e962',1,'stan::gm::validate_expr_type2::operator()()'],['../structstan_1_1gm_1_1set__fun__type2.html#a3727191c07f903e90039d085047aec77',1,'stan::gm::set_fun_type2::operator()()'],['../structstan_1_1gm_1_1binary__op__expr.html#ae729ce9f535a2edbfe88a313d3f7184e',1,'stan::gm::binary_op_expr::operator()()'],['../structstan_1_1gm_1_1addition__expr.html#a6f511d62b60d4c5708c0dc9a5687809f',1,'stan::gm::addition_expr::operator()()'],['../structstan_1_1gm_1_1subtraction__expr.html#af01e91cfb196709e94cba69ca6055f48',1,'stan::gm::subtraction_expr::operator()()'],['../structstan_1_1gm_1_1add__conditional__condition.html#aace3227298368df282a3c6fc29dea385',1,'stan::gm::add_conditional_condition::operator()()'],['../structstan_1_1gm_1_1add__conditional__body.html#a329d5d20cbf88349147d98045ba2d79e',1,'stan::gm::add_conditional_body::operator()()'],['../structstan_1_1gm_1_1validate__assignment.html#afa6d6906c1128cadfdf4d041bc1bfcf0',1,'stan::gm::validate_assignment::operator()()'],['../structstan_1_1gm_1_1validate__sample.html#a77de03d8f8a44b98afa75e7fa02fe705',1,'stan::gm::validate_sample::operator()()'],['../structstan_1_1gm_1_1expression__as__statement.html#ad91df00b5b3c97d4ed401b0ac898f17c',1,'stan::gm::expression_as_statement::operator()()'],['../structstan_1_1gm_1_1unscope__locals.html#a5be53d7ab77a85c6002a787b8aa2dbe2',1,'stan::gm::unscope_locals::operator()()'],['../structstan_1_1gm_1_1add__while__condition.html#af1707344a4485a9844789de02036a99b',1,'stan::gm::add_while_condition::operator()()'],['../structstan_1_1gm_1_1add__while__body.html#a95c4e95049a6f5175ad6e6d862f1e02e',1,'stan::gm::add_while_body::operator()()'],['../structstan_1_1gm_1_1add__loop__identifier.html#a6b40d339f94aa76d22665c2f4328e095',1,'stan::gm::add_loop_identifier::operator()()'],['../structstan_1_1gm_1_1remove__loop__identifier.html#af7b8d2468ac908978b92fc852cbb0208',1,'stan::gm::remove_loop_identifier::operator()()'],['../structstan_1_1gm_1_1validate__int__expr2.html#a462cc8619e7c1454119a75fa019b4d51',1,'stan::gm::validate_int_expr2::operator()()'],['../structstan_1_1gm_1_1validate__allow__sample.html#a4e15d9514eb63e9ddefa8bbede4b0fb5',1,'stan::gm::validate_allow_sample::operator()()'],['../structstan_1_1gm_1_1set__fun__type.html#aa047855ac672fdda270a623cfe44f9dc',1,'stan::gm::set_fun_type::operator()()'],['../structstan_1_1gm_1_1set__fun__type__named.html#ae4a66b5e2003663c4d0651ccc9b22633',1,'stan::gm::set_fun_type_named::operator()()'],['../structstan_1_1gm_1_1multiplication__expr.html#a5a3418a174c704a06dc078189e1e75bf',1,'stan::gm::multiplication_expr::operator()()'],['../structstan_1_1gm_1_1division__expr.html#a727db3527c40866ff8dd2709959fcbbf',1,'stan::gm::division_expr::operator()()'],['../structstan_1_1gm_1_1left__division__expr.html#a78883f0a7a5cad2f9654189fd5d834cf',1,'stan::gm::left_division_expr::operator()()'],['../structstan_1_1gm_1_1elt__multiplication__expr.html#a1df3b42b009deca11a8e01a437a67798',1,'stan::gm::elt_multiplication_expr::operator()()'],['../structstan_1_1gm_1_1elt__division__expr.html#addc060e5b9609d1e16a8c749f8e81363',1,'stan::gm::elt_division_expr::operator()()'],['../structstan_1_1gm_1_1negate__expr.html#a75cef8d0a29e9cb72a9f80f4ad2f6403',1,'stan::gm::negate_expr::operator()()'],['../structstan_1_1gm_1_1logical__negate__expr.html#a1a428268ae11c49de22066e600e5ce9c',1,'stan::gm::logical_negate_expr::operator()()'],['../structstan_1_1gm_1_1transpose__expr.html#aeca6b173a3530e7e56029c3f95d8dbc9',1,'stan::gm::transpose_expr::operator()()'],['../structstan_1_1gm_1_1add__expression__dimss.html#ad1b37475cdfb437df9fdaa2ba13a3bcc',1,'stan::gm::add_expression_dimss::operator()()'],['../structstan_1_1gm_1_1set__var__type.html#a81e8e16e1f75675c8aa2e99a45230fdd',1,'stan::gm::set_var_type::operator()()'],['../structstan_1_1gm_1_1validate__int__expr3.html#ad00cc4a51aa05e4cac78c6da0c54755f',1,'stan::gm::validate_int_expr3::operator()()'],['../structstan_1_1gm_1_1validate__expr__type.html#a867deadb8d8aa863e91ba057584f88aa',1,'stan::gm::validate_expr_type::operator()()'],['../structstan_1_1model_1_1model__functional.html#a7de709dc8075a21aea22f1f8b508bfcc',1,'stan::model::model_functional::operator()()'],['../classstan_1_1optimization_1_1_model_adaptor.html#a6ef3bd561e81ae2cfdc96143aacd4fa7',1,'stan::optimization::ModelAdaptor::operator()(const Eigen::Matrix< double, Eigen::Dynamic, 1 > &x, double &f)'],['../classstan_1_1optimization_1_1_model_adaptor.html#adb0fdd3e2c65d765607c3f30ba16aec8',1,'stan::optimization::ModelAdaptor::operator()(const Eigen::Matrix< double, Eigen::Dynamic, 1 > &x, double &f, Eigen::Matrix< double, Eigen::Dynamic, 1 > &g)']]], + ['operator_2a',['operator*',['../classstan_1_1agrad_1_1var.html#ab9b31165b391c7db9e1b47f0573bc747',1,'stan::agrad::var::operator*()'],['../namespacestan_1_1agrad.html#ab98d09a4888ed80cc22ef9fbdd63c725',1,'stan::agrad::operator*(const var &a, const var &b)'],['../namespacestan_1_1agrad.html#acd3d5f35e32b3b80f294ae2581744963',1,'stan::agrad::operator*(const var &a, const double &b)'],['../namespacestan_1_1agrad.html#aaf70e0701de307a0228d8b26e2b03043',1,'stan::agrad::operator*(const double &a, const var &b)'],['../namespacestan_1_1agrad.html#a58030b052901596ec4978f651504619c',1,'stan::agrad::operator*(const fvar< T > &x1, const fvar< T > &x2)'],['../namespacestan_1_1agrad.html#a4e2bbe49f478f96a9fb2716c76523bea',1,'stan::agrad::operator*(const double x1, const fvar< T > &x2)'],['../namespacestan_1_1agrad.html#a31ef0939decd80327614cbf795f23b05',1,'stan::agrad::operator*(const fvar< T > &x1, const double x2)'],['../namespacestan_1_1agrad.html#a19282727c9f5d3b03a33fc3e1400ffe9',1,'stan::agrad::operator*(const var &a, const double b)'],['../namespacestan_1_1agrad.html#a8683cc0c4ae269dde86a7a75adff3962',1,'stan::agrad::operator*(const double a, const var &b)']]], + ['operator_2a_3d',['operator*=',['../classstan_1_1agrad_1_1var.html#a9a9aedf7da287c55b7ef482c452b5be7',1,'stan::agrad::var::operator*=(const var &b)'],['../classstan_1_1agrad_1_1var.html#a222ff48b7d30354f136787e634811809',1,'stan::agrad::var::operator*=(const double &b)'],['../structstan_1_1agrad_1_1fvar.html#a345b88c637ae96c0516354b6484347d2',1,'stan::agrad::fvar::operator*=(const fvar< T2 > &x2)'],['../structstan_1_1agrad_1_1fvar.html#a26a112d55140f52b3a5724794348459e',1,'stan::agrad::fvar::operator*=(const T2 &x2)'],['../classstan_1_1agrad_1_1var.html#a4ea7fa4896c40fce1c9d6cf2d59b695e',1,'stan::agrad::var::operator*=(const var &b)'],['../classstan_1_1agrad_1_1var.html#a724480f8a861f8f5430439da4765d1a4',1,'stan::agrad::var::operator*=(const double b)'],['../structstan_1_1gm_1_1expression.html#a2809197528eaa19de579ddb94927c399',1,'stan::gm::expression::operator*=()']]], + ['operator_2b',['operator+',['../namespacestan_1_1agrad.html#a3c56114bde6eda1fc7d8a2a86c7df5e0',1,'stan::agrad::operator+(const var &a)'],['../namespacestan_1_1agrad.html#a9b0bdcc1fdb32b8025983612faa4900d',1,'stan::agrad::operator+(const var &a, const var &b)'],['../namespacestan_1_1agrad.html#aeba6062298b3063bb259ee201d941bc6',1,'stan::agrad::operator+(const var &a, const double &b)'],['../namespacestan_1_1agrad.html#aba8668d340bca165895e64479728b8da',1,'stan::agrad::operator+(const double &a, const var &b)'],['../namespacestan_1_1agrad.html#a8bfe21c1bd8ab796527f2b74cf389469',1,'stan::agrad::operator+(const fvar< T > &x1, const fvar< T > &x2)'],['../namespacestan_1_1agrad.html#a952d610e660fc372f93fac76ede56096',1,'stan::agrad::operator+(const double x1, const fvar< T > &x2)'],['../namespacestan_1_1agrad.html#af8208f5ba8bb28ad10e61f7b374c84dd',1,'stan::agrad::operator+(const fvar< T > &x1, const double x2)'],['../namespacestan_1_1agrad.html#adf0933c87c5d700de971755f40979d2a',1,'stan::agrad::operator+(const var &a, const double b)'],['../namespacestan_1_1agrad.html#a71d87c889481dd165b69e5ae18afd358',1,'stan::agrad::operator+(const double a, const var &b)']]], + ['operator_2b_2b',['operator++',['../structstan_1_1agrad_1_1fvar.html#adb8af0c2332bd8fcc102eba6e16e5bc1',1,'stan::agrad::fvar::operator++()'],['../structstan_1_1agrad_1_1fvar.html#ac558947777c6867650377130fed604de',1,'stan::agrad::fvar::operator++(int)'],['../namespacestan_1_1agrad.html#ac3d5ee13c66c2eeef697c20567fb9fe3',1,'stan::agrad::operator++(var &a)'],['../namespacestan_1_1agrad.html#ae5bc7c4bde258ad0fc845b2aa2897a11',1,'stan::agrad::operator++(var &a, int)']]], + ['operator_2b_3d',['operator+=',['../classstan_1_1agrad_1_1var.html#a7aed84a14a5c7f34bddc0d5a17a2c77f',1,'stan::agrad::var::operator+=(const var &b)'],['../classstan_1_1agrad_1_1var.html#a64086c7c9362cf53e57551f8ed5add14',1,'stan::agrad::var::operator+=(const double &b)'],['../structstan_1_1agrad_1_1fvar.html#a42855e5405cb603222286c34d4bd1ffc',1,'stan::agrad::fvar::operator+=(const fvar< T2 > &x2)'],['../structstan_1_1agrad_1_1fvar.html#a0af6f5512f976604a5f7ea908cedccf5',1,'stan::agrad::fvar::operator+=(const T2 &x2)'],['../classstan_1_1agrad_1_1var.html#a8066e2b84e91f0993b63611d8ca9db4a',1,'stan::agrad::var::operator+=(const var &b)'],['../classstan_1_1agrad_1_1var.html#a1f61621b09c7d87facf17e63f036db57',1,'stan::agrad::var::operator+=(const double b)'],['../structstan_1_1gm_1_1expression.html#a80b6ae53326a5bc334b0b64574d4687e',1,'stan::gm::expression::operator+=()']]], + ['operator_2d',['operator-',['../namespacestan_1_1agrad.html#a32cdb534a0a3e4efb74ac57b240b2abd',1,'stan::agrad::operator-(const var &a)'],['../namespacestan_1_1agrad.html#a50db79b36e350ddadea93da21467bd2b',1,'stan::agrad::operator-(const var &a, const var &b)'],['../namespacestan_1_1agrad.html#a1a85fcc0258ec8c8f93e544c9099cc78',1,'stan::agrad::operator-(const var &a, const double &b)'],['../namespacestan_1_1agrad.html#a922d9be5b47d2964d681da023ce86252',1,'stan::agrad::operator-(const double &a, const var &b)'],['../namespacestan_1_1agrad.html#af03dcfffbcfab11eadf069f9e7549683',1,'stan::agrad::operator-(const fvar< T > &x1, const fvar< T > &x2)'],['../namespacestan_1_1agrad.html#aa503cf2df6453a29ea38e921c1f72702',1,'stan::agrad::operator-(const double x1, const fvar< T > &x2)'],['../namespacestan_1_1agrad.html#a3ad03eae992d5dd4475f4462cda0460c',1,'stan::agrad::operator-(const fvar< T > &x1, const double x2)'],['../namespacestan_1_1agrad.html#ab7ca680c6523576a2ffefabe1fce682b',1,'stan::agrad::operator-(const fvar< T > &x)'],['../namespacestan_1_1agrad.html#aab2ad74276bb5b689f6d3e4a3d68b588',1,'stan::agrad::operator-(const var &a, const double b)'],['../namespacestan_1_1agrad.html#a2f4fae66485d0711155ff06709d90d40',1,'stan::agrad::operator-(const double a, const var &b)']]], + ['operator_2d_2d',['operator--',['../structstan_1_1agrad_1_1fvar.html#a018ea15f734397c5b035d2b08292a1af',1,'stan::agrad::fvar::operator--()'],['../structstan_1_1agrad_1_1fvar.html#a4b67eb3587d853feb8d7ca14cea9d1d0',1,'stan::agrad::fvar::operator--(int)'],['../namespacestan_1_1agrad.html#afd628cbe961d30214e9599706cb9df3d',1,'stan::agrad::operator--(var &a)'],['../namespacestan_1_1agrad.html#a2c7866db3308cb99e1e6ebe3d276f805',1,'stan::agrad::operator--(var &a, int)']]], + ['operator_2d_3d',['operator-=',['../classstan_1_1agrad_1_1var.html#adc63a21e809772e4e1943dcde7d81501',1,'stan::agrad::var::operator-=(const var &b)'],['../classstan_1_1agrad_1_1var.html#af175a08753073e2b5cd0431df96f685e',1,'stan::agrad::var::operator-=(const double &b)'],['../structstan_1_1agrad_1_1fvar.html#acab2cd650a6ace2d2cbc919a2e295281',1,'stan::agrad::fvar::operator-=(const fvar< T2 > &x2)'],['../structstan_1_1agrad_1_1fvar.html#a9265544f8ff15013032381543e917321',1,'stan::agrad::fvar::operator-=(const T2 &x2)'],['../classstan_1_1agrad_1_1var.html#a7f0d2c15e16e20a61269259b7f7cc5b7',1,'stan::agrad::var::operator-=(const var &b)'],['../classstan_1_1agrad_1_1var.html#a27e309010cc293bfc7b0895010ea576e',1,'stan::agrad::var::operator-=(const double b)'],['../structstan_1_1gm_1_1expression.html#ab7fbe72fb912a2fa66c1084c69bfd1dd',1,'stan::gm::expression::operator-=()']]], + ['operator_2d_3e',['operator->',['../classstan_1_1agrad_1_1var.html#af706ab2096ce340463d8794edb603a22',1,'stan::agrad::var']]], + ['operator_2f',['operator/',['../namespacestan_1_1agrad.html#a7712039ced9aa4a7d848369b36a81832',1,'stan::agrad::operator/(const var &a, const var &b)'],['../namespacestan_1_1agrad.html#af02e91c7d6a2402c055905816ae914e7',1,'stan::agrad::operator/(const var &a, const double &b)'],['../namespacestan_1_1agrad.html#ac920e55ed730cdc2989729a7237f5975',1,'stan::agrad::operator/(const double &a, const var &b)'],['../namespacestan_1_1agrad.html#af4268a75b7456526175bcf5db4210ef4',1,'stan::agrad::operator/(const Eigen::Matrix< fvar< T >, R, C > &v, const fvar< T > &c)'],['../namespacestan_1_1agrad.html#a18ac8b46664850a5703fd3caa9c68c08',1,'stan::agrad::operator/(const Eigen::Matrix< fvar< T >, R, C > &v, const double c)'],['../namespacestan_1_1agrad.html#abc825eb3bf95f70a94e073eaaddff374',1,'stan::agrad::operator/(const Eigen::Matrix< double, R, C > &v, const fvar< T > &c)'],['../namespacestan_1_1agrad.html#a72c74ea31db523c28cef63c20b1a66ef',1,'stan::agrad::operator/(const fvar< T > &x1, const fvar< T > &x2)'],['../namespacestan_1_1agrad.html#a7e7e231514df7e0e61bb94dea9436b57',1,'stan::agrad::operator/(const fvar< T > &x1, const double x2)'],['../namespacestan_1_1agrad.html#a00027f1730fec7abb98522c809f4cf40',1,'stan::agrad::operator/(const double x1, const fvar< T > &x2)'],['../namespacestan_1_1agrad.html#acfdf2b1289c99bb87bc37e44dae5b3c4',1,'stan::agrad::operator/(const var &a, const double b)'],['../namespacestan_1_1agrad.html#aef6041bf907aa9f560f2902c96d9befb',1,'stan::agrad::operator/(const double a, const var &b)']]], + ['operator_2f_3d',['operator/=',['../classstan_1_1agrad_1_1var.html#aa006b46d2909a3924efd0275a57f85a9',1,'stan::agrad::var::operator/=(const var &b)'],['../classstan_1_1agrad_1_1var.html#ad2d16ef5b3e1dfda05252a41e80d2276',1,'stan::agrad::var::operator/=(const double &b)'],['../structstan_1_1agrad_1_1fvar.html#a51f4cc010b2c7c553c5ad138f53d2fd5',1,'stan::agrad::fvar::operator/=(const fvar< T2 > &x2)'],['../structstan_1_1agrad_1_1fvar.html#acd050be117d173a998ddc0f3f6e2d00d',1,'stan::agrad::fvar::operator/=(const T2 &x2)'],['../classstan_1_1agrad_1_1var.html#ae193444d7017bca48834761230b6cd76',1,'stan::agrad::var::operator/=(const var &b)'],['../classstan_1_1agrad_1_1var.html#a6bde2e6f35855e8455f3c9ec8bea97ee',1,'stan::agrad::var::operator/=(const double b)'],['../structstan_1_1gm_1_1expression.html#a83a58233b24992d4a4ec01114522df90',1,'stan::gm::expression::operator/=()']]], + ['operator_3c',['operator<',['../namespacestan_1_1agrad.html#a7ee2f26775300ee2e40be6815f68cc2f',1,'stan::agrad::operator<(const var &a, const var &b)'],['../namespacestan_1_1agrad.html#a6955eaac53f1f699cd00859bec37f035',1,'stan::agrad::operator<(const var &a, const double &b)'],['../namespacestan_1_1agrad.html#a30910779586484a4244b3730b9a6d7c7',1,'stan::agrad::operator<(const double &a, const var &b)'],['../namespacestan_1_1agrad.html#a46f6bae01b579578493c501932d6df19',1,'stan::agrad::operator<(const fvar< T > &x, double y)'],['../namespacestan_1_1agrad.html#a302261483eb474a1c2791a19a68efb89',1,'stan::agrad::operator<(double x, const fvar< T > &y)'],['../namespacestan_1_1agrad.html#abe5f505189008af63094d119f3e8f375',1,'stan::agrad::operator<(const fvar< T > &x, const fvar< T > &y)'],['../namespacestan_1_1agrad.html#ad3a4834d55bf56c24cc32d847f2c4116',1,'stan::agrad::operator<(const var &a, const double b)'],['../namespacestan_1_1agrad.html#a190ba1fcff502eab8db57971c2fee3c2',1,'stan::agrad::operator<(const double a, const var &b)']]], + ['operator_3c_3c',['operator<<',['../classstan_1_1agrad_1_1var.html#a3545860122fa159c57e23dd0fbfbf5cd',1,'stan::agrad::var::operator<<()'],['../classstan_1_1agrad_1_1vari.html#abd24d4e4eb6b0c65c8447bd2cc73b200',1,'stan::agrad::vari::operator<<()'],['../namespacestan_1_1gm.html#ae9c40c419ed4088b66443029e8359904',1,'stan::gm::operator<<()']]], + ['operator_3c_3d',['operator<=',['../namespacestan_1_1agrad.html#a16c687c4cda4039dc722cfbccb98a836',1,'stan::agrad::operator<=(const var &a, const var &b)'],['../namespacestan_1_1agrad.html#a7994ac18959dc8e5dfa2a2e184e6f844',1,'stan::agrad::operator<=(const var &a, const double &b)'],['../namespacestan_1_1agrad.html#a922f5b8418b94d72ad5751b057fa2a6f',1,'stan::agrad::operator<=(const double &a, const var &b)'],['../namespacestan_1_1agrad.html#a37a95747a6282483fd15682760013967',1,'stan::agrad::operator<=(const fvar< T > &x, const fvar< T > &y)'],['../namespacestan_1_1agrad.html#a85d1a3b82ccc2cdec61adbce358a23de',1,'stan::agrad::operator<=(const fvar< T > &x, double y)'],['../namespacestan_1_1agrad.html#a59152358a21913aa69c58e87fc895559',1,'stan::agrad::operator<=(double x, const fvar< T > &y)'],['../namespacestan_1_1agrad.html#ad79a6afe31a88499457cd316da3228f6',1,'stan::agrad::operator<=(const var &a, const double b)'],['../namespacestan_1_1agrad.html#a95038cb175ff8a78ae74260dad67762a',1,'stan::agrad::operator<=(const double a, const var &b)']]], + ['operator_3d',['operator=',['../structstan_1_1gm_1_1int__literal.html#a1e480a251d65ebd3b68eb0d88886918e',1,'stan::gm::int_literal::operator=()'],['../structstan_1_1gm_1_1double__literal.html#ac89f8c39a91a251fb0af83e2af876d3f',1,'stan::gm::double_literal::operator=()'],['../structstan_1_1gm_1_1array__literal.html#a944703d4016be32de3902eb090e78002',1,'stan::gm::array_literal::operator=()'],['../classstan_1_1mcmc_1_1ps__point.html#a6465e2b1c8c8abf56bd716fcb069be47',1,'stan::mcmc::ps_point::operator=()']]], + ['operator_3d_3d',['operator==',['../structstan_1_1gm_1_1expr__type.html#a40ff8512daac53614b78023e131f4638',1,'stan::gm::expr_type::operator==()'],['../namespacestan_1_1agrad.html#a830d82c706b521cee378eb7e8a0cd7b7',1,'stan::agrad::operator==(const var &a, const var &b)'],['../namespacestan_1_1agrad.html#a927bbd061c1f873a70aca58c803315e0',1,'stan::agrad::operator==(const var &a, const double &b)'],['../namespacestan_1_1agrad.html#a55d28b38ec68e94b1504f657bcfe0e07',1,'stan::agrad::operator==(const double &a, const var &b)'],['../namespacestan_1_1agrad.html#af7ac331f5be998e2ecfbcd7359a295e8',1,'stan::agrad::operator==(const fvar< T > &x, const fvar< T > &y)'],['../namespacestan_1_1agrad.html#a0e5426b1de61dd143a791ea9375ea1f3',1,'stan::agrad::operator==(const fvar< T > &x, double y)'],['../namespacestan_1_1agrad.html#aa935399fdfdb5cb9017062c403623897',1,'stan::agrad::operator==(double x, const fvar< T > &y)'],['../namespacestan_1_1agrad.html#a1188a11f7af64553356cad475e6d6fd7',1,'stan::agrad::operator==(const var &a, const double b)'],['../namespacestan_1_1agrad.html#adf03ce96aca2d91ebfd9082ddb08ab60',1,'stan::agrad::operator==(const double a, const var &b)']]], + ['operator_3e',['operator>',['../namespacestan_1_1agrad.html#ad712e7d5e7b6ac090a17367ce063ad12',1,'stan::agrad::operator>(const var &a, const var &b)'],['../namespacestan_1_1agrad.html#abb74b46284f1c5e4b878a63ee1400cb9',1,'stan::agrad::operator>(const var &a, const double &b)'],['../namespacestan_1_1agrad.html#af3baa98195c96dfda85e1d3e7b3dad18',1,'stan::agrad::operator>(const double &a, const var &b)'],['../namespacestan_1_1agrad.html#a5e161b7bc2dbcb9d990969ccb12499d9',1,'stan::agrad::operator>(const fvar< T > &x, const fvar< T > &y)'],['../namespacestan_1_1agrad.html#a50f810a2b10225f4aaabafb9e7e89054',1,'stan::agrad::operator>(const fvar< T > &x, double y)'],['../namespacestan_1_1agrad.html#ada1ccd3c3b7edb45aa02f9775e9a955d',1,'stan::agrad::operator>(double x, const fvar< T > &y)'],['../namespacestan_1_1agrad.html#a15ed77a2c9f81fb7293fdd4748a6ea53',1,'stan::agrad::operator>(const var &a, const double b)'],['../namespacestan_1_1agrad.html#a8c76a2c886c5a8dfd04a8db314b023dc',1,'stan::agrad::operator>(const double a, const var &b)']]], + ['operator_3e_3d',['operator>=',['../namespacestan_1_1agrad.html#a31cdf0b7a08d01a685d30822f9d395dc',1,'stan::agrad::operator>=(const var &a, const var &b)'],['../namespacestan_1_1agrad.html#aa5ec0b4f2ff8cc4c9119b9cc2a5d3c58',1,'stan::agrad::operator>=(const var &a, const double &b)'],['../namespacestan_1_1agrad.html#af841090352d0e1f31978afbf7e1469db',1,'stan::agrad::operator>=(const double &a, const var &b)'],['../namespacestan_1_1agrad.html#ac654b0ca4c217705ed1bff6503723405',1,'stan::agrad::operator>=(const fvar< T > &x, const fvar< T > &y)'],['../namespacestan_1_1agrad.html#a4edcfc2e7c89ac76c0c43f1d01b9edb1',1,'stan::agrad::operator>=(const fvar< T > &x, double y)'],['../namespacestan_1_1agrad.html#af90b0c11af13e7d31bab2b7429bec732',1,'stan::agrad::operator>=(double x, const fvar< T > &y)'],['../namespacestan_1_1agrad.html#a9907066c12b56235c233ec56e108b684',1,'stan::agrad::operator>=(const var &a, const double b)'],['../namespacestan_1_1agrad.html#a89e08d2dddf60454bbae9c3a7078d14a',1,'stan::agrad::operator>=(const double a, const var &b)']]], + ['operator_5b_5d',['operator[]',['../classstan_1_1agrad_1_1op__matrix__vari.html#a33373afd7da2f7adc9283b5e7b140868',1,'stan::agrad::op_matrix_vari::operator[]()'],['../classstan_1_1agrad_1_1op__vector__vari.html#a4ad5b26a8c5e46b57eec2e9622c13fbc',1,'stan::agrad::op_vector_vari::operator[]()'],['../classstan_1_1math_1_1seq__view.html#abdd1705b880895c4e32e917fad70fb0b',1,'stan::math::seq_view::operator[]()'],['../classstan_1_1math_1_1seq__view_3_01_t_00_01_eigen_1_1_matrix_3_01_s_00_01_eigen_1_1_dynamic_00_011_01_4_01_4.html#a6466225a392d75a98f0ae43c5f001820',1,'stan::math::seq_view< T, Eigen::Matrix< S, Eigen::Dynamic, 1 > >::operator[]()'],['../classstan_1_1math_1_1seq__view_3_01_t_00_01_eigen_1_1_matrix_3_01_s_00_011_00_01_eigen_1_1_dynamic_01_4_01_4.html#aafd342f1f6f9851fd8f8e3494b36068e',1,'stan::math::seq_view< T, Eigen::Matrix< S, 1, Eigen::Dynamic > >::operator[]()'],['../classstan_1_1math_1_1seq__view_3_01_t_00_01_eigen_1_1_matrix_3_01_s_00_01_eigen_1_1_dynamic_00_01_eigen_1_1_dynamic_01_4_01_4.html#ab45edf39aad64a4093db924b02322af9',1,'stan::math::seq_view< T, Eigen::Matrix< S, Eigen::Dynamic, Eigen::Dynamic > >::operator[]()'],['../classstan_1_1math_1_1seq__view_3_01_t_00_01std_1_1vector_3_01_s_01_4_01_4.html#acfe4d699397a114cabd8d970e569aac6',1,'stan::math::seq_view< T, std::vector< S > >::operator[]()'],['../classstan_1_1math_1_1seq__view_3_01_t_00_01std_1_1vector_3_01_t_01_4_01_4.html#afe1bd346e72ac6adc53826801a7e54f2',1,'stan::math::seq_view< T, std::vector< T > >::operator[]()'],['../classstan_1_1math_1_1seq__view_3_01_t_00_01std_1_1vector_3_01std_1_1vector_3_01_t_01_4_01_4_01_4.html#aa8d34d4dd171acbd81d642aea1b8b61e',1,'stan::math::seq_view< T, std::vector< std::vector< T > > >::operator[]()'],['../classstan_1_1math_1_1seq__view_3_01double_00_01std_1_1vector_3_01int_01_4_01_4.html#a05bbd23ec952656521365f99d575a64c',1,'stan::math::seq_view< double, std::vector< int > >::operator[]()'],['../classstan_1_1_vector_view.html#afa380e5d11746837925198eeb8669299',1,'stan::VectorView::operator[]()'],['../classstan_1_1_vector_view_3_01const_01_t_00_01is__array_00_01throw__if__accessed_01_4.html#a4ebd6fad997a99a0cb1ed71e4143befe',1,'stan::VectorView< const T, is_array, throw_if_accessed >::operator[]()'],['../classstan_1_1_vector_view_3_01const_01double_00_01false_00_01false_01_4.html#a2d4a632cfb7533c7ab183c8437b9433c',1,'stan::VectorView< const double, false, false >::operator[]()'],['../classstan_1_1_double_vector_view.html#a2d22664770b4a3061079683994cc5531',1,'stan::DoubleVectorView::operator[]()'],['../classstan_1_1_double_vector_view_3_01true_00_01false_01_4.html#adfc928699f9b1fdd936ff631ab68d405',1,'stan::DoubleVectorView< true, false >::operator[]()'],['../classstan_1_1_double_vector_view_3_01true_00_01true_01_4.html#a7b95c038ecbc5526605715fca51f6737',1,'stan::DoubleVectorView< true, true >::operator[]()']]], + ['operator_5faddition_2ehpp',['operator_addition.hpp',['../rev_2operators_2operator__addition_8hpp.html',1,'']]], + ['operator_5faddition_2ehpp',['operator_addition.hpp',['../fwd_2operators_2operator__addition_8hpp.html',1,'']]], + ['operator_5fdivide_5fequal_2ehpp',['operator_divide_equal.hpp',['../operator__divide__equal_8hpp.html',1,'']]], + ['operator_5fdivision_2ehpp',['operator_division.hpp',['../rev_2operators_2operator__division_8hpp.html',1,'']]], + ['operator_5fdivision_2ehpp',['operator_division.hpp',['../fwd_2operators_2operator__division_8hpp.html',1,'']]], + ['operator_5fequal_2ehpp',['operator_equal.hpp',['../fwd_2operators_2operator__equal_8hpp.html',1,'']]], + ['operator_5fequal_2ehpp',['operator_equal.hpp',['../rev_2operators_2operator__equal_8hpp.html',1,'']]], + ['operator_5fgreater_5fthan_2ehpp',['operator_greater_than.hpp',['../fwd_2operators_2operator__greater__than_8hpp.html',1,'']]], + ['operator_5fgreater_5fthan_2ehpp',['operator_greater_than.hpp',['../rev_2operators_2operator__greater__than_8hpp.html',1,'']]], + ['operator_5fgreater_5fthan_5for_5fequal_2ehpp',['operator_greater_than_or_equal.hpp',['../fwd_2operators_2operator__greater__than__or__equal_8hpp.html',1,'']]], + ['operator_5fgreater_5fthan_5for_5fequal_2ehpp',['operator_greater_than_or_equal.hpp',['../rev_2operators_2operator__greater__than__or__equal_8hpp.html',1,'']]], + ['operator_5fless_5fthan_2ehpp',['operator_less_than.hpp',['../rev_2operators_2operator__less__than_8hpp.html',1,'']]], + ['operator_5fless_5fthan_2ehpp',['operator_less_than.hpp',['../fwd_2operators_2operator__less__than_8hpp.html',1,'']]], + ['operator_5fless_5fthan_5for_5fequal_2ehpp',['operator_less_than_or_equal.hpp',['../rev_2operators_2operator__less__than__or__equal_8hpp.html',1,'']]], + ['operator_5fless_5fthan_5for_5fequal_2ehpp',['operator_less_than_or_equal.hpp',['../fwd_2operators_2operator__less__than__or__equal_8hpp.html',1,'']]], + ['operator_5fminus_5fequal_2ehpp',['operator_minus_equal.hpp',['../operator__minus__equal_8hpp.html',1,'']]], + ['operator_5fmultiplication_2ehpp',['operator_multiplication.hpp',['../fwd_2operators_2operator__multiplication_8hpp.html',1,'']]], + ['operator_5fmultiplication_2ehpp',['operator_multiplication.hpp',['../rev_2operators_2operator__multiplication_8hpp.html',1,'']]], + ['operator_5fmultiply_5fequal_2ehpp',['operator_multiply_equal.hpp',['../operator__multiply__equal_8hpp.html',1,'']]], + ['operator_5fnot_5fequal_2ehpp',['operator_not_equal.hpp',['../fwd_2operators_2operator__not__equal_8hpp.html',1,'']]], + ['operator_5fnot_5fequal_2ehpp',['operator_not_equal.hpp',['../rev_2operators_2operator__not__equal_8hpp.html',1,'']]], + ['operator_5fplus_5fequal_2ehpp',['operator_plus_equal.hpp',['../operator__plus__equal_8hpp.html',1,'']]], + ['operator_5fsubtraction_2ehpp',['operator_subtraction.hpp',['../rev_2operators_2operator__subtraction_8hpp.html',1,'']]], + ['operator_5fsubtraction_2ehpp',['operator_subtraction.hpp',['../fwd_2operators_2operator__subtraction_8hpp.html',1,'']]], + ['operator_5funary_5fdecrement_2ehpp',['operator_unary_decrement.hpp',['../operator__unary__decrement_8hpp.html',1,'']]], + ['operator_5funary_5fincrement_2ehpp',['operator_unary_increment.hpp',['../operator__unary__increment_8hpp.html',1,'']]], + ['operator_5funary_5fminus_2ehpp',['operator_unary_minus.hpp',['../operator__unary__minus_8hpp.html',1,'']]], + ['operator_5funary_5fnegative_2ehpp',['operator_unary_negative.hpp',['../operator__unary__negative_8hpp.html',1,'']]], + ['operator_5funary_5fnot_2ehpp',['operator_unary_not.hpp',['../operator__unary__not_8hpp.html',1,'']]], + ['operator_5funary_5fplus_2ehpp',['operator_unary_plus.hpp',['../operator__unary__plus_8hpp.html',1,'']]], + ['operators_2ehpp',['operators.hpp',['../fwd_2operators_8hpp.html',1,'']]], + ['operators_2ehpp',['operators.hpp',['../rev_2operators_8hpp.html',1,'']]], + ['opt_5fdims_5fr',['opt_dims_r',['../structstan_1_1gm_1_1statement__grammar.html#a11edf3c28eba99f15d511531a874bd55',1,'stan::gm::statement_grammar::opt_dims_r()'],['../structstan_1_1gm_1_1var__decls__grammar.html#abb097b3fed3a38b056724635d2fafa88',1,'stan::gm::var_decls_grammar::opt_dims_r()']]], + ['ordered',['ordered',['../classstan_1_1io_1_1reader.html#ae5597679b7085f74c44ae623ef117410',1,'stan::io::reader']]], + ['ordered_5fconstrain',['ordered_constrain',['../classstan_1_1io_1_1reader.html#ae371520b9f4d28912092b43c40fdccb3',1,'stan::io::reader::ordered_constrain(size_t k)'],['../classstan_1_1io_1_1reader.html#a8e91154c913c5645c8a4ae474f1a6748',1,'stan::io::reader::ordered_constrain(size_t k, T &lp)'],['../namespacestan_1_1prob.html#a5b7b0a65348e29f0f018002a80ed035f',1,'stan::prob::ordered_constrain(const Eigen::Matrix< T, Eigen::Dynamic, 1 > &x)'],['../namespacestan_1_1prob.html#a8013ef2d8df4e964a99688d4d5b66b30',1,'stan::prob::ordered_constrain(const Eigen::Matrix< T, Eigen::Dynamic, 1 > &x, T &lp)']]], + ['ordered_5fdecl_5fr',['ordered_decl_r',['../structstan_1_1gm_1_1var__decls__grammar.html#a9e7481c3a94cac4e78006f7c10fb9cab',1,'stan::gm::var_decls_grammar']]], + ['ordered_5ffree',['ordered_free',['../namespacestan_1_1prob.html#a49254bbed7656ffce7d701755f35591a',1,'stan::prob']]], + ['ordered_5flogistic_2ehpp',['ordered_logistic.hpp',['../ordered__logistic_8hpp.html',1,'']]], + ['ordered_5flogistic_5flog',['ordered_logistic_log',['../namespacestan_1_1prob.html#a08672b48d49723b22234418ea31725e9',1,'stan::prob::ordered_logistic_log(int y, const T_lambda &lambda, const Eigen::Matrix< T_cut, Eigen::Dynamic, 1 > &c)'],['../namespacestan_1_1prob.html#a5dd231c095c24f5c6b344b6b06e85802',1,'stan::prob::ordered_logistic_log(int y, const T_lambda &lambda, const Eigen::Matrix< T_cut, Eigen::Dynamic, 1 > &c)']]], + ['ordered_5flogistic_5frng',['ordered_logistic_rng',['../namespacestan_1_1prob.html#a5becd684e61c1e96447752b65c202465',1,'stan::prob']]], + ['ordered_5funconstrain',['ordered_unconstrain',['../classstan_1_1io_1_1writer.html#af9e8b0cc64f52fe8b893aa68b24efe28',1,'stan::io::writer']]], + ['ordered_5fvar_5fdecl',['ordered_var_decl',['../structstan_1_1gm_1_1ordered__var__decl.html',1,'stan::gm']]], + ['ordered_5fvar_5fdecl',['ordered_var_decl',['../structstan_1_1gm_1_1ordered__var__decl.html#a245a2f9aa050ab85b5586f98a7fa890d',1,'stan::gm::ordered_var_decl::ordered_var_decl()'],['../structstan_1_1gm_1_1ordered__var__decl.html#a805bcb3c7b339fb728ee04a4b1bc3dff',1,'stan::gm::ordered_var_decl::ordered_var_decl(expression const &K, std::string const &name, std::vector< expression > const &dims)']]], + ['owens_5ft',['owens_t',['../namespacestan_1_1agrad.html#a6a34e8ac9ab34d8bd7309b914670f77f',1,'stan::agrad::owens_t(const fvar< T > &x1, const fvar< T > &x2)'],['../namespacestan_1_1agrad.html#ad7c9ae7ec1a20f802579797c3951846d',1,'stan::agrad::owens_t(const double x1, const fvar< T > &x2)'],['../namespacestan_1_1agrad.html#a9888ef51a909a957ca30b306cfd90beb',1,'stan::agrad::owens_t(const fvar< T > &x1, const double x2)'],['../namespacestan_1_1agrad.html#a4ffb11bd376c638b747a8be17548b021',1,'stan::agrad::owens_t(const var &h, const var &a)'],['../namespacestan_1_1agrad.html#af68b3a37d8fede3f6ab613cf4278b86c',1,'stan::agrad::owens_t(const var &h, const double &a)'],['../namespacestan_1_1agrad.html#a0e87f87799c9d0290d5c972494e4caea',1,'stan::agrad::owens_t(const double &h, const var &a)'],['../namespacestan_1_1math.html#a66a7e8ebefd11e5801aab51d6ed9c9d8',1,'stan::math::owens_t()']]], + ['owens_5ft_2ehpp',['owens_t.hpp',['../math_2functions_2owens__t_8hpp.html',1,'']]], + ['owens_5ft_2ehpp',['owens_t.hpp',['../agrad_2rev_2functions_2owens__t_8hpp.html',1,'']]], + ['owens_5ft_2ehpp',['owens_t.hpp',['../agrad_2fwd_2functions_2owens__t_8hpp.html',1,'']]] +]; diff --git a/doc/api/html/search/all_70.html b/doc/api/html/search/all_70.html new file mode 100644 index 00000000000..0340151b687 --- /dev/null +++ b/doc/api/html/search/all_70.html @@ -0,0 +1,25 @@ + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/doc/api/html/search/all_70.js b/doc/api/html/search/all_70.js new file mode 100644 index 00000000000..964e0f46ee3 --- /dev/null +++ b/doc/api/html/search/all_70.js @@ -0,0 +1,141 @@ +var searchData= +[ + ['p',['p',['../classstan_1_1mcmc_1_1ps__point.html#a1bb62217e59e573da4cc5ff391c1b2ce',1,'stan::mcmc::ps_point']]], + ['pad_5fhelp_5foption',['pad_help_option',['../namespacestan_1_1io.html#aefe8bb54168558ab08f140cb2886f1e3',1,'stan::io']]], + ['param_5fname',['param_name',['../classstan_1_1mcmc_1_1chains.html#a1205fef2f70da7bdc88d8ff140b5d19b',1,'stan::mcmc::chains']]], + ['param_5fnames',['param_names',['../classstan_1_1mcmc_1_1chains.html#a95881c6244f8c1a59de9dc1b2ada3fbe',1,'stan::mcmc::chains']]], + ['param_5frange_5fi',['param_range_i',['../classstan_1_1model_1_1prob__grad.html#ac0eefb4d3d667a368820f0e7d2fb847c',1,'stan::model::prob_grad']]], + ['param_5franges_5fi_5f_5f',['param_ranges_i__',['../classstan_1_1model_1_1prob__grad.html#a19436879a5602e7b47676ce3a6ea8f5f',1,'stan::model::prob_grad']]], + ['param_5fvar_5fdecls_5fr',['param_var_decls_r',['../structstan_1_1gm_1_1program__grammar.html#a84e0908a657b1bc073abd5a134e53bc8',1,'stan::gm::program_grammar']]], + ['parameter_5fdecl_5f',['parameter_decl_',['../structstan_1_1gm_1_1program.html#aa468fc1c6838a4a02031d41391d0feee',1,'stan::gm::program']]], + ['parameter_5forigin',['parameter_origin',['../namespacestan_1_1gm.html#a15fbbd2865f57526a81f238175751b83',1,'stan::gm']]], + ['params_5fr',['params_r',['../classstan_1_1optimization_1_1_b_f_g_s_line_search.html#a3668e57491999e53bc083fa9ce7be0c2',1,'stan::optimization::BFGSLineSearch::params_r()'],['../classstan_1_1optimization_1_1_nesterov_gradient.html#a8b9b14a7b025c2978785d4b289c03a87',1,'stan::optimization::NesterovGradient::params_r()']]], + ['pareto_2ehpp',['pareto.hpp',['../pareto_8hpp.html',1,'']]], + ['pareto_5fccdf_5flog',['pareto_ccdf_log',['../namespacestan_1_1prob.html#adbbe4b2736aa52b527690320f589f444',1,'stan::prob']]], + ['pareto_5fcdf',['pareto_cdf',['../namespacestan_1_1prob.html#a7f3bb39af8cf343288bc03b08d4995c1',1,'stan::prob']]], + ['pareto_5fcdf_5flog',['pareto_cdf_log',['../namespacestan_1_1prob.html#a355fe2fac0b8f75ba9152a5641584db0',1,'stan::prob']]], + ['pareto_5flog',['pareto_log',['../namespacestan_1_1prob.html#a6f227b32b40751c0969ed9208e53f250',1,'stan::prob::pareto_log(const T_y &y, const T_scale &y_min, const T_shape &alpha)'],['../namespacestan_1_1prob.html#ae76190b63d49cd29c4cf6cec4e530d2c',1,'stan::prob::pareto_log(const T_y &y, const T_scale &y_min, const T_shape &alpha)']]], + ['pareto_5frng',['pareto_rng',['../namespacestan_1_1prob.html#a28f8c3e807edaa26151a701410dbe540',1,'stan::prob']]], + ['parse',['parse',['../classstan_1_1io_1_1stan__csv__reader.html#a113f6a5169758e1c03370b0156f926e3',1,'stan::io::stan_csv_reader::parse()'],['../namespacestan_1_1gm.html#a027bc5ebd84646c7ce8fb6128e33dae8',1,'stan::gm::parse()']]], + ['parse_5fargs',['parse_args',['../classstan_1_1gm_1_1argument.html#ab89f5fe38e4a01cd098d5c38b25b63bd',1,'stan::gm::argument::parse_args()'],['../classstan_1_1gm_1_1argument__parser.html#acc91054d8cad8ed7b123bfc008589f91',1,'stan::gm::argument_parser::parse_args()'],['../classstan_1_1gm_1_1categorical__argument.html#aa5fcc67aed6fecfb8b1b4b430fbe8f9e',1,'stan::gm::categorical_argument::parse_args()'],['../classstan_1_1gm_1_1list__argument.html#a70d41fb22dbc0d4b7be35ad12ee28cd8',1,'stan::gm::list_argument::parse_args()'],['../classstan_1_1gm_1_1singleton__argument.html#a6ae2898ccb341e201a3f70af8d63b34f',1,'stan::gm::singleton_argument::parse_args()'],['../classstan_1_1gm_1_1unvalued__argument.html#a43ec298199e879d2254b0b22a07932fd',1,'stan::gm::unvalued_argument::parse_args()']]], + ['parser_2ehpp',['parser.hpp',['../parser_8hpp.html',1,'']]], + ['partial_5fderivative',['partial_derivative',['../namespacestan_1_1agrad.html#ad8a49a8b8a5b06f4053c40cb64a1fe48',1,'stan::agrad']]], + ['partials_5f',['partials_',['../classstan_1_1agrad_1_1stored__gradient__vari.html#a6cc0dc9d0c215f4eedd8684f8d9d04ec',1,'stan::agrad::stored_gradient_vari']]], + ['partials_5fvari',['partials_vari',['../classstan_1_1agrad_1_1partials__vari.html',1,'stan::agrad']]], + ['partials_5fvari',['partials_vari',['../classstan_1_1agrad_1_1partials__vari.html#a8c03a1f677444ee503551cc9cc718467',1,'stan::agrad::partials_vari']]], + ['partials_5fvari_2ehpp',['partials_vari.hpp',['../partials__vari_8hpp.html',1,'']]], + ['pass_5ftype',['pass_type',['../structstan_1_1math_1_1pass__type.html',1,'stan::math']]], + ['pass_5ftype_3c_20double_20_3e',['pass_type< double >',['../structstan_1_1math_1_1pass__type_3_01double_01_4.html',1,'stan::math']]], + ['pass_5ftype_3c_20int_20_3e',['pass_type< int >',['../structstan_1_1math_1_1pass__type_3_01int_01_4.html',1,'stan::math']]], + ['patch_5fversion',['PATCH_VERSION',['../namespacestan.html#ae9ae37a39676ea8ca7cbfeffce12f938',1,'stan']]], + ['phi',['phi',['../classstan_1_1mcmc_1_1base__hamiltonian.html#a4daa5d6148f56985b92397eb637868d8',1,'stan::mcmc::base_hamiltonian::phi()'],['../classstan_1_1mcmc_1_1dense__e__metric.html#a132d41ed5cea3b3f4e83f4d27f6e0984',1,'stan::mcmc::dense_e_metric::phi()'],['../classstan_1_1mcmc_1_1diag__e__metric.html#aab16db232dd37b1227032249d01dd0b5',1,'stan::mcmc::diag_e_metric::phi()'],['../classstan_1_1mcmc_1_1unit__e__metric.html#af866a9fc23c184997591e3377ad6e2bb',1,'stan::mcmc::unit_e_metric::phi()'],['../namespacestan_1_1agrad.html#a310443649bed5c3a85c01ee0cb5a8499',1,'stan::agrad::Phi(const fvar< T > &x)'],['../namespacestan_1_1agrad.html#aab4d19226597a86f74257bde4f457521',1,'stan::agrad::Phi(const stan::agrad::var &a)'],['../namespacestan_1_1math.html#ac85644bbd92359d699f374adea62c643',1,'stan::math::Phi()']]], + ['phi_2ehpp',['Phi.hpp',['../agrad_2rev_2functions_2_phi_8hpp.html',1,'']]], + ['phi_2ehpp',['Phi.hpp',['../math_2functions_2_phi_8hpp.html',1,'']]], + ['phi_2ehpp',['Phi.hpp',['../agrad_2fwd_2functions_2_phi_8hpp.html',1,'']]], + ['phi_5fapprox',['Phi_approx',['../namespacestan_1_1agrad.html#a8332749395cd428484eb176964e28052',1,'stan::agrad::Phi_approx()'],['../namespacestan_1_1math.html#a6cf4bf2074175fd7bcde43f9f94e4d16',1,'stan::math::Phi_approx()']]], + ['phi_5fapprox_2ehpp',['Phi_approx.hpp',['../agrad_2rev_2functions_2_phi__approx_8hpp.html',1,'']]], + ['phi_5fapprox_2ehpp',['Phi_approx.hpp',['../math_2functions_2_phi__approx_8hpp.html',1,'']]], + ['pi',['pi',['../namespacestan_1_1math.html#aa2ffd66726e0532160e16e6b48d6f428',1,'stan::math']]], + ['poisson_2ehpp',['poisson.hpp',['../poisson_8hpp.html',1,'']]], + ['poisson_5fccdf_5flog',['poisson_ccdf_log',['../namespacestan_1_1prob.html#a47e7fb827ea3efb81744f00ae02d3c8c',1,'stan::prob']]], + ['poisson_5fcdf',['poisson_cdf',['../namespacestan_1_1prob.html#a493a94836898c1c7daeefc66f76f3bcb',1,'stan::prob']]], + ['poisson_5fcdf_5flog',['poisson_cdf_log',['../namespacestan_1_1prob.html#a4bcc9d28c6419db6908062a120203225',1,'stan::prob']]], + ['poisson_5flog',['poisson_log',['../namespacestan_1_1prob.html#a4af491958f18e73de79a50f0eeab5cbf',1,'stan::prob::poisson_log(const T_n &n, const T_rate &lambda)'],['../namespacestan_1_1prob.html#a4c14df398fd68d83f82e93d7cf012e88',1,'stan::prob::poisson_log(const T_n &n, const T_rate &lambda)']]], + ['poisson_5flog_5flog',['poisson_log_log',['../namespacestan_1_1prob.html#a37ad053fe5e90d0886876e8be27e57f5',1,'stan::prob::poisson_log_log(const T_n &n, const T_log_rate &alpha)'],['../namespacestan_1_1prob.html#a4e7496b229fa8eb51083e449cfd20704',1,'stan::prob::poisson_log_log(const T_n &n, const T_log_rate &alpha)']]], + ['poisson_5frng',['poisson_rng',['../namespacestan_1_1prob.html#ae76f4412a22e18c1aacf098ab6c41dc5',1,'stan::prob']]], + ['pos_5fiterator_5ft',['pos_iterator_t',['../namespacestan_1_1gm.html#aa941962f9fda48879b4d84fd518852c9',1,'stan::gm']]], + ['positive_5fconstrain',['positive_constrain',['../namespacestan_1_1prob.html#a9cb1d75e59f02fa90c1052b403012dc8',1,'stan::prob::positive_constrain(const T x)'],['../namespacestan_1_1prob.html#a2ee662d6ef96688a59a873ef6e41a461',1,'stan::prob::positive_constrain(const T x, T &lp)']]], + ['positive_5ffree',['positive_free',['../namespacestan_1_1prob.html#af8aecbd34195ffe481fb331d62c7b9d5',1,'stan::prob']]], + ['positive_5finfinity',['positive_infinity',['../namespacestan_1_1math.html#a34675a70d3df614d88d33ddbdd49b49a',1,'stan::math']]], + ['positive_5fordered',['positive_ordered',['../classstan_1_1io_1_1reader.html#ac3f49da1bc5719a4cd6da4b35f488b34',1,'stan::io::reader']]], + ['positive_5fordered_5fconstrain',['positive_ordered_constrain',['../classstan_1_1io_1_1reader.html#aedeee305b5de15af5e1e296a07649dc2',1,'stan::io::reader::positive_ordered_constrain(size_t k)'],['../classstan_1_1io_1_1reader.html#ad2794458867712e2e7dd40674b8e2196',1,'stan::io::reader::positive_ordered_constrain(size_t k, T &lp)'],['../namespacestan_1_1prob.html#a264b000ea11a127f82b2a635c37af760',1,'stan::prob::positive_ordered_constrain(const Eigen::Matrix< T, Eigen::Dynamic, 1 > &x)'],['../namespacestan_1_1prob.html#ac046e29dc1e72c04cad85faf7884b1e8',1,'stan::prob::positive_ordered_constrain(const Eigen::Matrix< T, Eigen::Dynamic, 1 > &x, T &lp)']]], + ['positive_5fordered_5fdecl_5fr',['positive_ordered_decl_r',['../structstan_1_1gm_1_1var__decls__grammar.html#a18e4327f093a7e92cc4b2bca94d50470',1,'stan::gm::var_decls_grammar']]], + ['positive_5fordered_5ffree',['positive_ordered_free',['../namespacestan_1_1prob.html#aed117c56ae59674e81e38faadf423a4d',1,'stan::prob']]], + ['positive_5fordered_5funconstrain',['positive_ordered_unconstrain',['../classstan_1_1io_1_1writer.html#adf62c05a81fce5b27e1a2bdcd2eb51f3',1,'stan::io::writer']]], + ['positive_5fordered_5fvar_5fdecl',['positive_ordered_var_decl',['../structstan_1_1gm_1_1positive__ordered__var__decl.html',1,'stan::gm']]], + ['positive_5fordered_5fvar_5fdecl',['positive_ordered_var_decl',['../structstan_1_1gm_1_1positive__ordered__var__decl.html#af60da77bab73766c34a6322d0c75d129',1,'stan::gm::positive_ordered_var_decl::positive_ordered_var_decl()'],['../structstan_1_1gm_1_1positive__ordered__var__decl.html#aa92b00bd4b03fa2192bdecbc3c816539',1,'stan::gm::positive_ordered_var_decl::positive_ordered_var_decl(expression const &K, std::string const &name, std::vector< expression > const &dims)']]], + ['pow',['pow',['../namespacestan_1_1agrad.html#ab1f104b0302a07417e72b4dbae3fc74c',1,'stan::agrad::pow(const var &base, const var &exponent)'],['../namespacestan_1_1agrad.html#abff57b6f6ebb58545a7e8d4a0c05611d',1,'stan::agrad::pow(const var &base, const double &exponent)'],['../namespacestan_1_1agrad.html#a8e4a959251353750a1656804b46507fd',1,'stan::agrad::pow(const double &base, const var &exponent)'],['../namespacestan_1_1agrad.html#a2d8fddd3123eb3574ff8e06d4fc7248d',1,'stan::agrad::pow(const fvar< T > &x1, const fvar< T > &x2)'],['../namespacestan_1_1agrad.html#ace3246b2d3ac1a77d9f4a0f8974960b8',1,'stan::agrad::pow(const double x1, const fvar< T > &x2)'],['../namespacestan_1_1agrad.html#a25f02a3133f34b96d74727823e21d70b',1,'stan::agrad::pow(const fvar< T > &x1, const double x2)'],['../namespacestan_1_1agrad.html#add7765fa6394e825bd26a69f84218193',1,'stan::agrad::pow(const var &base, const double exponent)'],['../namespacestan_1_1agrad.html#acd1d27b770b1609c7f161ed57c4621ac',1,'stan::agrad::pow(const double base, const var &exponent)']]], + ['pow_2ehpp',['pow.hpp',['../rev_2functions_2pow_8hpp.html',1,'']]], + ['pow_2ehpp',['pow.hpp',['../fwd_2functions_2pow_8hpp.html',1,'']]], + ['precomp_5fv_5fvari',['precomp_v_vari',['../classstan_1_1agrad_1_1precomp__v__vari.html#a3ca5c79bf568105418d1b0048a96967f',1,'stan::agrad::precomp_v_vari']]], + ['precomp_5fv_5fvari',['precomp_v_vari',['../classstan_1_1agrad_1_1precomp__v__vari.html',1,'stan::agrad']]], + ['precomp_5fv_5fvari_2ehpp',['precomp_v_vari.hpp',['../precomp__v__vari_8hpp.html',1,'']]], + ['precomputed_5fgradients',['precomputed_gradients',['../namespacestan_1_1agrad.html#aaf702f5ec3f90079697f2b5e5e2fc9d1',1,'stan::agrad']]], + ['precomputed_5fgradients_2ehpp',['precomputed_gradients.hpp',['../precomputed__gradients_8hpp.html',1,'']]], + ['precomputed_5fgradients_5fvari',['precomputed_gradients_vari',['../classstan_1_1agrad_1_1precomputed__gradients__vari.html#a21523b50b50acccf8abe38c92f654705',1,'stan::agrad::precomputed_gradients_vari']]], + ['precomputed_5fgradients_5fvari',['precomputed_gradients_vari',['../classstan_1_1agrad_1_1precomputed__gradients__vari.html',1,'stan::agrad']]], + ['prev_5ff',['prev_f',['../classstan_1_1optimization_1_1_b_f_g_s_minimizer.html#ab29933c9bf9263b7b165b589c0e1aba3',1,'stan::optimization::BFGSMinimizer']]], + ['prev_5fg',['prev_g',['../classstan_1_1optimization_1_1_b_f_g_s_minimizer.html#a846398bc345d84bab66dc1f1df9e95e0',1,'stan::optimization::BFGSMinimizer']]], + ['prev_5fs',['prev_s',['../classstan_1_1optimization_1_1_b_f_g_s_minimizer.html#a902e16cc988e9ca31cace95dea86dfb7',1,'stan::optimization::BFGSMinimizer']]], + ['prev_5fstep_5fsize',['prev_step_size',['../classstan_1_1optimization_1_1_b_f_g_s_minimizer.html#a5fe16e6f70fed6e1911fe856cd52476e',1,'stan::optimization::BFGSMinimizer']]], + ['prev_5fx',['prev_x',['../classstan_1_1optimization_1_1_b_f_g_s_minimizer.html#a000b87bcf59d279ba44efec85f971078',1,'stan::optimization::BFGSMinimizer']]], + ['print',['print',['../classstan_1_1gm_1_1argument.html#a11317e60b39f5d6bc5b58d8631ee2f11',1,'stan::gm::argument::print()'],['../classstan_1_1gm_1_1argument__parser.html#a80aa8bc37aa78aab3338a84ed8d198bc',1,'stan::gm::argument_parser::print()'],['../classstan_1_1gm_1_1categorical__argument.html#a55cf7cc7f496634ee3afe9126861f135',1,'stan::gm::categorical_argument::print()'],['../classstan_1_1gm_1_1list__argument.html#aeb216deba3fff79b8be0bbb45a5303bb',1,'stan::gm::list_argument::print()'],['../classstan_1_1gm_1_1unvalued__argument.html#a5cb68a5f95b5c0b17237e985309f347c',1,'stan::gm::unvalued_argument::print()'],['../classstan_1_1gm_1_1valued__argument.html#aac8d5773b84682e2776f232e5f7bc199',1,'stan::gm::valued_argument::print()'],['../classstan_1_1io_1_1cmd__line.html#a7b567a1d5ff8fbfd102541ff7165f0a8',1,'stan::io::cmd_line::print()']]], + ['print_2ecpp',['print.cpp',['../print_8cpp.html',1,'']]], + ['print_2ehpp',['print.hpp',['../print_8hpp.html',1,'']]], + ['print_5fadapt_5ffinish',['print_adapt_finish',['../classstan_1_1io_1_1mcmc__writer.html#a19e50100237ae6ceedb36f3485db0a98',1,'stan::io::mcmc_writer::print_adapt_finish(stan::mcmc::base_mcmc *sampler, std::ostream *stream)'],['../classstan_1_1io_1_1mcmc__writer.html#a8e38711ae1d5cb3562d739e65a26a672',1,'stan::io::mcmc_writer::print_adapt_finish(stan::mcmc::base_mcmc *sampler)']]], + ['print_5fdiagnostic_5fnames',['print_diagnostic_names',['../classstan_1_1io_1_1mcmc__writer.html#a92e6f182bccdd993e73f751e5aafd7e9',1,'stan::io::mcmc_writer']]], + ['print_5fdiagnostic_5fparams',['print_diagnostic_params',['../classstan_1_1io_1_1mcmc__writer.html#a611c78b4786bb2a649bbaa660350dc35',1,'stan::io::mcmc_writer']]], + ['print_5fhelp',['print_help',['../classstan_1_1gm_1_1argument.html#aa2e3ed12ca3904af93b24c42f8a008ff',1,'stan::gm::argument::print_help()'],['../classstan_1_1gm_1_1argument__parser.html#a9ab402e181e3de508c3a7b594cb67960',1,'stan::gm::argument_parser::print_help()'],['../classstan_1_1gm_1_1categorical__argument.html#a6d8744329f8af88ec15747b57851bc67',1,'stan::gm::categorical_argument::print_help()'],['../classstan_1_1gm_1_1list__argument.html#a55d7f8d70a85d02895446acc7e9402ee',1,'stan::gm::list_argument::print_help()'],['../classstan_1_1gm_1_1unvalued__argument.html#a97c066f9a95356069ff6923d483ea03b',1,'stan::gm::unvalued_argument::print_help()'],['../classstan_1_1gm_1_1valued__argument.html#a67c2fcf60e605b17de08ef051e54876c',1,'stan::gm::valued_argument::print_help()']]], + ['print_5fhelp_5fhelper',['print_help_helper',['../namespacestan_1_1io.html#a6a7173ea51d2f2c2dc710d3a846fc732',1,'stan::io']]], + ['print_5fhelp_5foption',['print_help_option',['../namespacestan_1_1io.html#a0b47261532cf7c027e939aca02088c06',1,'stan::io']]], + ['print_5fprogress',['print_progress',['../namespacestan_1_1gm.html#a36c90a4a1e6a4833c1e3a12a964f31dc',1,'stan::gm']]], + ['print_5fquoted_5fexpression',['print_quoted_expression',['../namespacestan_1_1gm.html#a53960511e1fa7ae0e66d681f3055f199',1,'stan::gm']]], + ['print_5fsample_5fnames',['print_sample_names',['../classstan_1_1io_1_1mcmc__writer.html#a4ff21af4911d312b84f3ad955c6be1f7',1,'stan::io::mcmc_writer']]], + ['print_5fsample_5fparams',['print_sample_params',['../classstan_1_1io_1_1mcmc__writer.html#a1141fad60b8e8587b5f84ded115a870f',1,'stan::io::mcmc_writer']]], + ['print_5fstack',['print_stack',['../namespacestan_1_1agrad.html#a77de304bacc69535fb9a5ccd52454219',1,'stan::agrad']]], + ['print_5fstack_2ehpp',['print_stack.hpp',['../print__stack_8hpp.html',1,'']]], + ['print_5fstanc_5fhelp',['print_stanc_help',['../stanc__helper_8hpp.html#ab8ff534ebd7aa89be78b2b9e65f5f33a',1,'stanc_helper.hpp']]], + ['print_5fstatement',['print_statement',['../structstan_1_1gm_1_1print__statement.html',1,'stan::gm']]], + ['print_5fstatement',['print_statement',['../structstan_1_1gm_1_1print__statement.html#aeebe03d9212e3ddbe4fabdaf4873a466',1,'stan::gm::print_statement::print_statement()'],['../structstan_1_1gm_1_1print__statement.html#ab4522e7d5640848cebed9fd2509bfd32',1,'stan::gm::print_statement::print_statement(const std::vector< printable > &printables)']]], + ['print_5fstatement_5fr',['print_statement_r',['../structstan_1_1gm_1_1statement__grammar.html#a481ea25baea5242da113c3e80b830bf8',1,'stan::gm::statement_grammar']]], + ['print_5fstring_5fliteral',['print_string_literal',['../namespacestan_1_1gm.html#ab0047255699c74937f85d6fc52a25cb7',1,'stan::gm']]], + ['print_5ftiming',['print_timing',['../classstan_1_1io_1_1mcmc__writer.html#a628eb2bcaf467470d81f9c66e264750c',1,'stan::io::mcmc_writer::print_timing(double warmDeltaT, double sampleDeltaT, std::ostream *stream, const std::string &prefix="")'],['../classstan_1_1io_1_1mcmc__writer.html#a18d3702721db48c5a6a6ae0f693988fe',1,'stan::io::mcmc_writer::print_timing(double warmDeltaT, double sampleDeltaT)']]], + ['print_5fusage',['print_usage',['../classstan_1_1gm_1_1argument__parser.html#aab87bcb3b493725f33fe83d51a402f92',1,'stan::gm::argument_parser::print_usage()'],['../print_8hpp.html#ae5ad5cbeccaedc03a48d3c7eaa803e79',1,'print_usage(): print.hpp']]], + ['print_5fvalid',['print_valid',['../classstan_1_1gm_1_1list__argument.html#aec1358b17e4ab6e88093d9601bd574ad',1,'stan::gm::list_argument::print_valid()'],['../classstan_1_1gm_1_1singleton__argument.html#a8b1ec553f2faad91f393a16301f283b7',1,'stan::gm::singleton_argument::print_valid()'],['../classstan_1_1gm_1_1valued__argument.html#a71e5e9f18b38112a0f37e631e06479c2',1,'stan::gm::valued_argument::print_valid()']]], + ['print_5fvalue',['print_value',['../classstan_1_1gm_1_1list__argument.html#a7fe07f7eb68fcbe07902f275c36a9de7',1,'stan::gm::list_argument::print_value()'],['../classstan_1_1gm_1_1singleton__argument.html#a314ff92f87549d7b79966e5ff0148f27',1,'stan::gm::singleton_argument::print_value()'],['../classstan_1_1gm_1_1valued__argument.html#a3d7db8f03b459a944745799cb17fbb22',1,'stan::gm::valued_argument::print_value()']]], + ['print_5fvar_5forigin',['print_var_origin',['../namespacestan_1_1gm.html#afbacd22142d44e8f79d40a512441c060',1,'stan::gm']]], + ['print_5fversion',['print_version',['../stanc__helper_8hpp.html#a89aadce7a620baad44661f64650a2c57',1,'stanc_helper.hpp']]], + ['printable',['printable',['../structstan_1_1gm_1_1printable.html',1,'stan::gm']]], + ['printable',['printable',['../structstan_1_1gm_1_1printable.html#a08d5587f674f2bcea656dfc21b4368a7',1,'stan::gm::printable::printable()'],['../structstan_1_1gm_1_1printable.html#a698c3a1a3e88fe55ef803940688f2fe7',1,'stan::gm::printable::printable(const expression &expression)'],['../structstan_1_1gm_1_1printable.html#aa88ce12741897574e993ddf73630a2dc',1,'stan::gm::printable::printable(const std::string &msg)'],['../structstan_1_1gm_1_1printable.html#ab6c9efb0d66476e95420d0d0a9a34971',1,'stan::gm::printable::printable(const printable_t &printable)'],['../structstan_1_1gm_1_1printable.html#a73fd1eca794d1abeedf35458c1298fcc',1,'stan::gm::printable::printable(const printable &printable)']]], + ['printable_5f',['printable_',['../structstan_1_1gm_1_1printable.html#ac9bcfe693d24c2c7b3363596fc380b26',1,'stan::gm::printable']]], + ['printable_5fr',['printable_r',['../structstan_1_1gm_1_1statement__grammar.html#a54e7e6691e72cb4983d430c033777431',1,'stan::gm::statement_grammar']]], + ['printable_5fstring_5fr',['printable_string_r',['../structstan_1_1gm_1_1statement__grammar.html#a5ba49f86716949ae1bc36585d081aba8',1,'stan::gm::statement_grammar']]], + ['printable_5ft',['printable_t',['../structstan_1_1gm_1_1printable.html#a0fe5ff9b4d1c7581f75ab444b6e9828b',1,'stan::gm::printable']]], + ['printable_5fvisgen',['printable_visgen',['../structstan_1_1gm_1_1printable__visgen.html',1,'stan::gm']]], + ['printable_5fvisgen',['printable_visgen',['../structstan_1_1gm_1_1printable__visgen.html#a07ac177e70ed67abf0a8c104ae00c12b',1,'stan::gm::printable_visgen']]], + ['printables_5f',['printables_',['../structstan_1_1gm_1_1print__statement.html#a2de577f68c38d6494d0c5b01337c3106',1,'stan::gm::print_statement']]], + ['prob',['prob',['../classstan_1_1io_1_1reader.html#ad57e12e95a36df2d9448f6123e3d2cfa',1,'stan::io::reader']]], + ['prob_2ehpp',['prob.hpp',['../prob_8hpp.html',1,'']]], + ['prob_5fconstrain',['prob_constrain',['../classstan_1_1io_1_1reader.html#a2d999e486addc7652b2be90365b89bc4',1,'stan::io::reader::prob_constrain()'],['../classstan_1_1io_1_1reader.html#a07a0565ad1ff42fe678bcb51ed748455',1,'stan::io::reader::prob_constrain(T &lp)'],['../namespacestan_1_1prob.html#a675a89a2298e205693a1291bff9e8517',1,'stan::prob::prob_constrain(const T x)'],['../namespacestan_1_1prob.html#a5c2e4977a32258e859e18c3d93ff7fb2',1,'stan::prob::prob_constrain(const T x, T &lp)']]], + ['prob_5ffree',['prob_free',['../namespacestan_1_1prob.html#a6df28f004649a2e2453b2dc068dce763',1,'stan::prob']]], + ['prob_5fgrad',['prob_grad',['../classstan_1_1model_1_1prob__grad.html#a8b51f2731af4391fb46981ee6d65deb6',1,'stan::model::prob_grad::prob_grad(size_t num_params_r)'],['../classstan_1_1model_1_1prob__grad.html#a879682609a70983fde0ac281a6a3c5d0',1,'stan::model::prob_grad::prob_grad(size_t num_params_r, std::vector< std::pair< int, int > > &param_ranges_i)']]], + ['prob_5fgrad',['prob_grad',['../classstan_1_1model_1_1prob__grad.html',1,'stan::model']]], + ['prob_5fgrad_2ehpp',['prob_grad.hpp',['../prob__grad_8hpp.html',1,'']]], + ['prob_5funconstrain',['prob_unconstrain',['../classstan_1_1io_1_1writer.html#a320165b59bc22f73db4898d4d4a5a7e1',1,'stan::io::writer']]], + ['probe_5fargs',['probe_args',['../classstan_1_1gm_1_1argument.html#a1d9fabf656c50a0e5bc3d5d47ca091aa',1,'stan::gm::argument::probe_args()'],['../classstan_1_1gm_1_1argument__probe.html#a4754d08a83d1bdf23e18ceb1b16dc26a',1,'stan::gm::argument_probe::probe_args()'],['../classstan_1_1gm_1_1categorical__argument.html#a5d662cc0b84b02e3b3622a0eeec02bf7',1,'stan::gm::categorical_argument::probe_args()'],['../classstan_1_1gm_1_1list__argument.html#a0ffea05532b87732f82f2099e189306e',1,'stan::gm::list_argument::probe_args()'],['../classstan_1_1gm_1_1singleton__argument.html#aaf5dc642547b460e7df60fd9a1e3a025',1,'stan::gm::singleton_argument::probe_args()']]], + ['prod',['prod',['../namespacestan_1_1math.html#a1649a895ec6e79097d5645a3f8b8a1e6',1,'stan::math::prod(const std::vector< T > &v)'],['../namespacestan_1_1math.html#ad7082de8742d87f7a0fa0842207341c9',1,'stan::math::prod(const Eigen::Matrix< T, R, C > &v)']]], + ['prod_2ehpp',['prod.hpp',['../prod_8hpp.html',1,'']]], + ['program',['program',['../structstan_1_1gm_1_1program.html#a3bdfcb0bc8822d6edd2253bda7dcbfdb',1,'stan::gm::program::program()'],['../structstan_1_1gm_1_1program.html#aa11648de93a4e6496c0cfe7850134436',1,'stan::gm::program::program(const std::vector< var_decl > &data_decl, const std::pair< std::vector< var_decl >, std::vector< statement > > &derived_data_decl, const std::vector< var_decl > &parameter_decl, const std::pair< std::vector< var_decl >, std::vector< statement > > &derived_decl, const statement &st, const std::pair< std::vector< var_decl >, std::vector< statement > > &generated_decl)']]], + ['program',['program',['../structstan_1_1gm_1_1program.html',1,'stan::gm']]], + ['program_5fgrammar',['program_grammar',['../structstan_1_1gm_1_1program__grammar.html#a37628310038c1d41ac858edc87763f6e',1,'stan::gm::program_grammar']]], + ['program_5fgrammar',['program_grammar',['../structstan_1_1gm_1_1program__grammar.html',1,'stan::gm']]], + ['program_5fgrammar_2ehpp',['program_grammar.hpp',['../program__grammar_8hpp.html',1,'']]], + ['program_5fgrammar_5fdef_2ehpp',['program_grammar_def.hpp',['../program__grammar__def_8hpp.html',1,'']]], + ['program_5fgrammar_5finst_2ecpp',['program_grammar_inst.cpp',['../program__grammar__inst_8cpp.html',1,'']]], + ['program_5fr',['program_r',['../structstan_1_1gm_1_1program__grammar.html#a6db277442a938e2a146edcb2d7f8ebb0',1,'stan::gm::program_grammar']]], + ['promote',['promote',['../structstan_1_1math_1_1promoter.html#ab3df6e7131a09943826d1b995142d7d6',1,'stan::math::promoter::promote()'],['../structstan_1_1math_1_1promoter_3_01_t_00_01_t_01_4.html#ac8db3f3f3410059f5cae51383f1b38c2',1,'stan::math::promoter< T, T >::promote()'],['../structstan_1_1math_1_1promoter_3_01std_1_1vector_3_01_f_01_4_00_01std_1_1vector_3_01_t_01_4_01_4.html#a357d5eb63ba812437c51640670cef745',1,'stan::math::promoter< std::vector< F >, std::vector< T > >::promote()'],['../structstan_1_1math_1_1promoter_3_01std_1_1vector_3_01_t_01_4_00_01std_1_1vector_3_01_t_01_4_01_4.html#adb1706254fcd6734bf986e2cd01b093f',1,'stan::math::promoter< std::vector< T >, std::vector< T > >::promote()'],['../structstan_1_1math_1_1promoter_3_01_eigen_1_1_matrix_3_01_f_00_01_r_00_01_c_01_4_00_01_eigen_1_142b48fda94601374e41a81325f3f7b84.html#a9964d13b9f2f05efca2b21ac165210d8',1,'stan::math::promoter< Eigen::Matrix< F, R, C >, Eigen::Matrix< T, R, C > >::promote()'],['../structstan_1_1math_1_1promoter_3_01_eigen_1_1_matrix_3_01_t_00_01_r_00_01_c_01_4_00_01_eigen_1_12d7fadf0560f1f2f3abc5388b7666f9c.html#a525fc8cb91f5c4c22195cdb004b1eb0f',1,'stan::math::promoter< Eigen::Matrix< T, R, C >, Eigen::Matrix< T, R, C > >::promote()']]], + ['promote_5fcommon',['promote_common',['../namespacestan_1_1math.html#a91458631115a8d1cf29298431f745556',1,'stan::math']]], + ['promote_5fcommon_2ehpp',['promote_common.hpp',['../promote__common_8hpp.html',1,'']]], + ['promote_5fprimitive',['promote_primitive',['../namespacestan_1_1gm.html#a6ca8ea09cf26b1fdd7c5e31c8febd8d9',1,'stan::gm::promote_primitive(const expr_type &et)'],['../namespacestan_1_1gm.html#a08ffae837e524e7ee4ede3cc51c7a2fb',1,'stan::gm::promote_primitive(const expr_type &et1, const expr_type &et2)']]], + ['promote_5fto',['promote_to',['../structstan_1_1math_1_1promoter.html#a892e350b17a5930b9de4a9ff05eddc39',1,'stan::math::promoter::promote_to()'],['../structstan_1_1math_1_1promoter_3_01_t_00_01_t_01_4.html#a108a1ffe4c0560f0c0b384270ea801f1',1,'stan::math::promoter< T, T >::promote_to()'],['../structstan_1_1math_1_1promoter_3_01std_1_1vector_3_01_f_01_4_00_01std_1_1vector_3_01_t_01_4_01_4.html#a3da744179c9bbe7fe2ac326a4dcba352',1,'stan::math::promoter< std::vector< F >, std::vector< T > >::promote_to()'],['../structstan_1_1math_1_1promoter_3_01std_1_1vector_3_01_t_01_4_00_01std_1_1vector_3_01_t_01_4_01_4.html#a099437577ccd004d58c5b2ee3e5acf06',1,'stan::math::promoter< std::vector< T >, std::vector< T > >::promote_to()'],['../structstan_1_1math_1_1promoter_3_01_eigen_1_1_matrix_3_01_f_00_01_r_00_01_c_01_4_00_01_eigen_1_142b48fda94601374e41a81325f3f7b84.html#a7ed5c4e3899aca0cb2ed4cea530807af',1,'stan::math::promoter< Eigen::Matrix< F, R, C >, Eigen::Matrix< T, R, C > >::promote_to()'],['../structstan_1_1math_1_1promoter_3_01_eigen_1_1_matrix_3_01_t_00_01_r_00_01_c_01_4_00_01_eigen_1_12d7fadf0560f1f2f3abc5388b7666f9c.html#a46f61632d1bdeede4431d730b4251d37',1,'stan::math::promoter< Eigen::Matrix< T, R, C >, Eigen::Matrix< T, R, C > >::promote_to()']]], + ['promoter',['promoter',['../structstan_1_1math_1_1promoter.html',1,'stan::math']]], + ['promoter_2ehpp',['promoter.hpp',['../promoter_8hpp.html',1,'']]], + ['promoter_3c_20eigen_3a_3amatrix_3c_20f_2c_20r_2c_20c_20_3e_2c_20eigen_3a_3amatrix_3c_20t_2c_20r_2c_20c_20_3e_20_3e',['promoter< Eigen::Matrix< F, R, C >, Eigen::Matrix< T, R, C > >',['../structstan_1_1math_1_1promoter_3_01_eigen_1_1_matrix_3_01_f_00_01_r_00_01_c_01_4_00_01_eigen_1_142b48fda94601374e41a81325f3f7b84.html',1,'stan::math']]], + ['promoter_3c_20eigen_3a_3amatrix_3c_20t_2c_20r_2c_20c_20_3e_2c_20eigen_3a_3amatrix_3c_20t_2c_20r_2c_20c_20_3e_20_3e',['promoter< Eigen::Matrix< T, R, C >, Eigen::Matrix< T, R, C > >',['../structstan_1_1math_1_1promoter_3_01_eigen_1_1_matrix_3_01_t_00_01_r_00_01_c_01_4_00_01_eigen_1_12d7fadf0560f1f2f3abc5388b7666f9c.html',1,'stan::math']]], + ['promoter_3c_20std_3a_3avector_3c_20f_20_3e_2c_20std_3a_3avector_3c_20t_20_3e_20_3e',['promoter< std::vector< F >, std::vector< T > >',['../structstan_1_1math_1_1promoter_3_01std_1_1vector_3_01_f_01_4_00_01std_1_1vector_3_01_t_01_4_01_4.html',1,'stan::math']]], + ['promoter_3c_20std_3a_3avector_3c_20t_20_3e_2c_20std_3a_3avector_3c_20t_20_3e_20_3e',['promoter< std::vector< T >, std::vector< T > >',['../structstan_1_1math_1_1promoter_3_01std_1_1vector_3_01_t_01_4_00_01std_1_1vector_3_01_t_01_4_01_4.html',1,'stan::math']]], + ['promoter_3c_20t_2c_20t_20_3e',['promoter< T, T >',['../structstan_1_1math_1_1promoter_3_01_t_00_01_t_01_4.html',1,'stan::math']]], + ['ps_5fpoint',['ps_point',['../classstan_1_1mcmc_1_1ps__point.html',1,'stan::mcmc']]], + ['ps_5fpoint',['ps_point',['../classstan_1_1mcmc_1_1ps__point.html#ab3577ab2d8d6109485e03e893e770654',1,'stan::mcmc::ps_point::ps_point(int n)'],['../classstan_1_1mcmc_1_1ps__point.html#aa31c2f392681f074461372c98f76b7d0',1,'stan::mcmc::ps_point::ps_point(const ps_point &z)']]], + ['ps_5fpoint_2ehpp',['ps_point.hpp',['../ps__point_8hpp.html',1,'']]] +]; diff --git a/doc/api/html/search/all_71.html b/doc/api/html/search/all_71.html new file mode 100644 index 00000000000..b4dc1e6ee34 --- /dev/null +++ b/doc/api/html/search/all_71.html @@ -0,0 +1,25 @@ + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/doc/api/html/search/all_71.js b/doc/api/html/search/all_71.js new file mode 100644 index 00000000000..5561a448f55 --- /dev/null +++ b/doc/api/html/search/all_71.js @@ -0,0 +1,11 @@ +var searchData= +[ + ['q',['q',['../classstan_1_1mcmc_1_1ps__point.html#a3a12cd50a8d7e0d8c698a4debc767283',1,'stan::mcmc::ps_point']]], + ['quad_5fform',['quad_form',['../namespacestan_1_1agrad.html#a12051c57c37d841f90b64d18d18b3572',1,'stan::agrad::quad_form(const Eigen::Matrix< TA, RA, CA > &A, const Eigen::Matrix< TB, RB, CB > &B)'],['../namespacestan_1_1agrad.html#ad10e001e4f70e7c20a0d0e4fc9ad6e45',1,'stan::agrad::quad_form(const Eigen::Matrix< TA, RA, CA > &A, const Eigen::Matrix< TB, RB, 1 > &B)'],['../namespacestan_1_1math.html#a376cbe31002df6a319da4caaaeb8598c',1,'stan::math::quad_form(const Eigen::Matrix< double, RA, CA > &A, const Eigen::Matrix< double, RB, CB > &B)'],['../namespacestan_1_1math.html#a0e0213e916c2185844b48eea25312e86',1,'stan::math::quad_form(const Eigen::Matrix< double, RA, CA > &A, const Eigen::Matrix< double, RB, 1 > &B)']]], + ['quad_5fform_2ehpp',['quad_form.hpp',['../math_2matrix_2quad__form_8hpp.html',1,'']]], + ['quad_5fform_2ehpp',['quad_form.hpp',['../agrad_2rev_2matrix_2quad__form_8hpp.html',1,'']]], + ['quad_5fform_5fsym',['quad_form_sym',['../namespacestan_1_1agrad.html#a0065419b6716e2e9bd2b046209eeb29d',1,'stan::agrad::quad_form_sym(const Eigen::Matrix< TA, RA, CA > &A, const Eigen::Matrix< TB, RB, CB > &B)'],['../namespacestan_1_1agrad.html#a18283c753845a6ff14c457500314171c',1,'stan::agrad::quad_form_sym(const Eigen::Matrix< TA, RA, CA > &A, const Eigen::Matrix< TB, RB, 1 > &B)'],['../namespacestan_1_1math.html#a2cc753af413f715d82b992aae8b10fde',1,'stan::math::quad_form_sym(const Eigen::Matrix< double, RA, CA > &A, const Eigen::Matrix< double, RB, CB > &B)'],['../namespacestan_1_1math.html#a9355d4e6239f0bb06e0b8d2302f37af4',1,'stan::math::quad_form_sym(const Eigen::Matrix< double, RA, CA > &A, const Eigen::Matrix< double, RB, 1 > &B)']]], + ['quantile',['quantile',['../classstan_1_1mcmc_1_1chains.html#a56d312e2c426bff532c77b9156031023',1,'stan::mcmc::chains::quantile(const int chain, const int index, const double prob)'],['../classstan_1_1mcmc_1_1chains.html#adc3507c5fadc08b20d8a62278ea1403d',1,'stan::mcmc::chains::quantile(const int index, const double prob)'],['../classstan_1_1mcmc_1_1chains.html#ad53b60119eb5c4c0b6dda5b718d10bcf',1,'stan::mcmc::chains::quantile(const int chain, const std::string &name, const double prob)'],['../classstan_1_1mcmc_1_1chains.html#a7234fcd741119e1973f1879dfee16494',1,'stan::mcmc::chains::quantile(const std::string &name, const double prob)']]], + ['quantiles',['quantiles',['../classstan_1_1mcmc_1_1chains.html#ad387dd810f96b6ac37efd2992fc29630',1,'stan::mcmc::chains::quantiles(const int chain, const int index, const Eigen::VectorXd &probs)'],['../classstan_1_1mcmc_1_1chains.html#a491e846ff148541c564d7db4a0794589',1,'stan::mcmc::chains::quantiles(const int index, const Eigen::VectorXd &probs)'],['../classstan_1_1mcmc_1_1chains.html#ab71e51ca47d8961e7a338a4275ddc718',1,'stan::mcmc::chains::quantiles(const int chain, const std::string &name, const Eigen::VectorXd &probs)'],['../classstan_1_1mcmc_1_1chains.html#a5ab7f0a936ba813e9086172f2946baa4',1,'stan::mcmc::chains::quantiles(const std::string &name, const Eigen::VectorXd &probs)']]], + ['quiet_5fnan',['quiet_NaN',['../structstd_1_1numeric__limits_3_01stan_1_1agrad_1_1fvar_3_01_t_01_4_01_4.html#a8c903c018ba2cf816a16b981cd0148fd',1,'std::numeric_limits< stan::agrad::fvar< T > >::quiet_NaN()'],['../structstd_1_1numeric__limits_3_01stan_1_1agrad_1_1var_01_4.html#ac27177b2b7f896ddd695084b3616eae6',1,'std::numeric_limits< stan::agrad::var >::quiet_NaN()']]] +]; diff --git a/doc/api/html/search/all_72.html b/doc/api/html/search/all_72.html new file mode 100644 index 00000000000..0ab18d65fec --- /dev/null +++ b/doc/api/html/search/all_72.html @@ -0,0 +1,25 @@ + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/doc/api/html/search/all_72.js b/doc/api/html/search/all_72.js new file mode 100644 index 00000000000..f83a094b03a --- /dev/null +++ b/doc/api/html/search/all_72.js @@ -0,0 +1,135 @@ +var searchData= +[ + ['radix',['radix',['../structstd_1_1numeric__limits_3_01stan_1_1agrad_1_1fvar_3_01_t_01_4_01_4.html#afd5b4f9c99692d107b041363e1224f5c',1,'std::numeric_limits< stan::agrad::fvar< T > >::radix()'],['../structstd_1_1numeric__limits_3_01stan_1_1agrad_1_1var_01_4.html#ab0737f3e76c801f971530861695381fa',1,'std::numeric_limits< stan::agrad::var >::radix()']]], + ['raise_5fdomain_5ferror',['raise_domain_error',['../namespacestan_1_1math_1_1policies_1_1detail.html#a247352f3a333a7aebbe6ccf09473f2f9',1,'stan::math::policies::detail::raise_domain_error(const char *function, const char *message, const T_val &val, const ::boost::math::policies::domain_error< ::boost::math::policies::throw_on_error > &)'],['../namespacestan_1_1math_1_1policies_1_1detail.html#a1e05fecf80a5d9760597fa17374ac729',1,'stan::math::policies::detail::raise_domain_error(const char *, const char *, const T_val &, const ::boost::math::policies::domain_error< ::boost::math::policies::ignore_error > &)'],['../namespacestan_1_1math_1_1policies_1_1detail.html#a37a116f5cfdd061c779fa174223cc64b',1,'stan::math::policies::detail::raise_domain_error(const char *, const char *, const T_val &, const ::boost::math::policies::domain_error< ::boost::math::policies::errno_on_error > &)'],['../namespacestan_1_1math_1_1policies_1_1detail.html#a84db90eb3648bab11711b7282e69cf0b',1,'stan::math::policies::detail::raise_domain_error(const char *function, const char *message, const T_val &val, const ::boost::math::policies::domain_error< ::boost::math::policies::user_error > &)'],['../namespacestan_1_1math_1_1policies.html#ac83ded77a40cbdc0bdb98879f0d24fb7',1,'stan::math::policies::raise_domain_error()']]], + ['raise_5fdomain_5ferror_2ehpp',['raise_domain_error.hpp',['../raise__domain__error_8hpp.html',1,'']]], + ['random_5fseed',['random_seed',['../structstan_1_1io_1_1stan__csv__metadata.html#a11e87094a178f9c9942cd7e2f5d7bd02',1,'stan::io::stan_csv_metadata']]], + ['range',['range',['../structstan_1_1gm_1_1range.html',1,'stan::gm']]], + ['range',['range',['../structstan_1_1gm_1_1range.html#a64e3d1cc595ede56d2c46cca8689cc95',1,'stan::gm::range::range()'],['../structstan_1_1gm_1_1range.html#a0b26a72500318c7840baed6ca87ce946',1,'stan::gm::range::range(expression const &low, expression const &high)']]], + ['range_5f',['range_',['../structstan_1_1gm_1_1int__var__decl.html#aaa6d328f10dd0d0ae838d83ba81a1951',1,'stan::gm::int_var_decl::range_()'],['../structstan_1_1gm_1_1double__var__decl.html#ae592f05b693896629cf2c33039819404',1,'stan::gm::double_var_decl::range_()'],['../structstan_1_1gm_1_1vector__var__decl.html#aaa8d18715438632ddf572e90dea01973',1,'stan::gm::vector_var_decl::range_()'],['../structstan_1_1gm_1_1row__vector__var__decl.html#a2f731ff1b9109a953a4b145f5ab35dec',1,'stan::gm::row_vector_var_decl::range_()'],['../structstan_1_1gm_1_1matrix__var__decl.html#a787d753dd8fab870cf529e569b1556b3',1,'stan::gm::matrix_var_decl::range_()'],['../structstan_1_1gm_1_1for__statement.html#a9398fccd6c9d3e0d5c25e90fd09d3d4a',1,'stan::gm::for_statement::range_()']]], + ['range_5fbrackets_5fdouble_5fr',['range_brackets_double_r',['../structstan_1_1gm_1_1var__decls__grammar.html#a0aaf89ef89fa49d93c4b5b23b37be1ff',1,'stan::gm::var_decls_grammar']]], + ['range_5fbrackets_5fint_5fr',['range_brackets_int_r',['../structstan_1_1gm_1_1var__decls__grammar.html#a09e210333cb4aa7173c8b3f80fde5208',1,'stan::gm::var_decls_grammar']]], + ['range_5fr',['range_r',['../structstan_1_1gm_1_1statement__grammar.html#a6dc40f704e7efaccfc1a7886a051773f',1,'stan::gm::statement_grammar::range_r()'],['../structstan_1_1gm_1_1var__decls__grammar.html#aac6aeaf9cbe3c714711c2d3e387c941e',1,'stan::gm::var_decls_grammar::range_r()']]], + ['range_5ft',['range_t',['../structstan_1_1gm_1_1variable__map.html#a2da97e3733b1c7695abd1eef547df69e',1,'stan::gm::variable_map']]], + ['rank',['rank',['../namespacestan_1_1math.html#a1baa9539e0a8d4ea50aa16b73d736d93',1,'stan::math::rank(const std::vector< T > &v, int s)'],['../namespacestan_1_1math.html#a808d3133624cd36ac410ba872ea653c2',1,'stan::math::rank(const Eigen::Matrix< T, R, C > &v, int s)']]], + ['rank_2ehpp',['rank.hpp',['../rank_8hpp.html',1,'']]], + ['rayleigh_2ehpp',['rayleigh.hpp',['../rayleigh_8hpp.html',1,'']]], + ['rayleigh_5fccdf_5flog',['rayleigh_ccdf_log',['../namespacestan_1_1prob.html#acb3f08ecac9dc1faebaff9f209c39c3e',1,'stan::prob']]], + ['rayleigh_5fcdf',['rayleigh_cdf',['../namespacestan_1_1prob.html#a21adf5dd176a990c274cb58c6b6ad491',1,'stan::prob']]], + ['rayleigh_5fcdf_5flog',['rayleigh_cdf_log',['../namespacestan_1_1prob.html#a6790ee20a779a4ec36207229ed36bf4e',1,'stan::prob']]], + ['rayleigh_5flog',['rayleigh_log',['../namespacestan_1_1prob.html#a98165bd7ce46385b8c12fa228ee90718',1,'stan::prob::rayleigh_log(const T_y &y, const T_scale &sigma)'],['../namespacestan_1_1prob.html#af1c16f2642c0e8fb3237ba5f4b704e98',1,'stan::prob::rayleigh_log(const T_y &y, const T_scale &sigma)']]], + ['rayleigh_5frng',['rayleigh_rng',['../namespacestan_1_1prob.html#ac500ff019314d3a79c6d1cd0e41ce0dd',1,'stan::prob']]], + ['read_5fadaptation',['read_adaptation',['../classstan_1_1io_1_1stan__csv__reader.html#afa996f8c6897a2e40f3e5b44a26db0e3',1,'stan::io::stan_csv_reader']]], + ['read_5fcorr_5fl',['read_corr_L',['../namespacestan_1_1prob.html#a12361bac5c2810d6245cf97465f1f09d',1,'stan::prob::read_corr_L(const Eigen::Array< T, Eigen::Dynamic, 1 > &CPCs, const size_t K)'],['../namespacestan_1_1prob.html#a18ea63e587986f4c53909c26b718cc17',1,'stan::prob::read_corr_L(const Eigen::Array< T, Eigen::Dynamic, 1 > &CPCs, const size_t K, T &log_prob)']]], + ['read_5fcorr_5fmatrix',['read_corr_matrix',['../namespacestan_1_1prob.html#a049065737ff2e957c65db870c99d509d',1,'stan::prob::read_corr_matrix(const Eigen::Array< T, Eigen::Dynamic, 1 > &CPCs, const size_t K)'],['../namespacestan_1_1prob.html#a21dcd8cff30b002e3483120f231dde9e',1,'stan::prob::read_corr_matrix(const Eigen::Array< T, Eigen::Dynamic, 1 > &CPCs, const size_t K, T &log_prob)']]], + ['read_5fcov_5fl',['read_cov_L',['../namespacestan_1_1prob.html#a1545e79c24324fc626f4422b45d4c2b8',1,'stan::prob']]], + ['read_5fcov_5fmatrix',['read_cov_matrix',['../namespacestan_1_1prob.html#ad5a94ee9ba8f88bc5f06a1bc0973cd64',1,'stan::prob::read_cov_matrix(const Eigen::Array< T, Eigen::Dynamic, 1 > &CPCs, const Eigen::Array< T, Eigen::Dynamic, 1 > &sds, T &log_prob)'],['../namespacestan_1_1prob.html#a39d24789bf8d8528e6d308c57ec8d309',1,'stan::prob::read_cov_matrix(const Eigen::Array< T, Eigen::Dynamic, 1 > &CPCs, const Eigen::Array< T, Eigen::Dynamic, 1 > &sds)']]], + ['read_5fheader',['read_header',['../classstan_1_1io_1_1stan__csv__reader.html#a7b816d25cface2d2236069cfc54367bf',1,'stan::io::stan_csv_reader']]], + ['read_5fmetadata',['read_metadata',['../classstan_1_1io_1_1stan__csv__reader.html#a882e750d8fb201dfa1cdb5e174f21957',1,'stan::io::stan_csv_reader']]], + ['read_5fsamples',['read_samples',['../classstan_1_1io_1_1stan__csv__reader.html#a1ec68f0382342bfd8e7de9d823239247',1,'stan::io::stan_csv_reader']]], + ['readcost',['ReadCost',['../struct_eigen_1_1_num_traits_3_01stan_1_1agrad_1_1var_01_4.html#a932a61195daad3e89711cfb02521cac9a337c2bf1065c51d4a2b76e80ae51b0e7',1,'Eigen::NumTraits< stan::agrad::var >']]], + ['reader',['reader',['../classstan_1_1io_1_1reader.html',1,'stan::io']]], + ['reader',['reader',['../classstan_1_1io_1_1reader.html#aa3ae88d711db3f2469c86131c28191ac',1,'stan::io::reader']]], + ['reader_2ehpp',['reader.hpp',['../reader_8hpp.html',1,'']]], + ['real',['Real',['../struct_eigen_1_1_num_traits_3_01stan_1_1agrad_1_1var_01_4.html#a4c2ce540647aaade50bc0c572a4741ee',1,'Eigen::NumTraits< stan::agrad::var >']]], + ['real_5fargument',['real_argument',['../namespacestan_1_1gm.html#a2d364040dd6f2d340627acb37db9c2be',1,'stan::gm']]], + ['recover_5fall',['recover_all',['../classstan_1_1memory_1_1chunk__alloc.html#a25506eb4680556464e3a52772bb09794',1,'stan::memory::chunk_alloc::recover_all()'],['../classstan_1_1memory_1_1stack__alloc.html#a453c7dd354d0cb89389f648882cd459d',1,'stan::memory::stack_alloc::recover_all()']]], + ['recover_5fmemory',['recover_memory',['../classstan_1_1agrad_1_1vari.html#a653f4d93055013f4b4332e2e992268c8',1,'stan::agrad::vari::recover_memory()'],['../namespacestan_1_1agrad.html#a352bfc3b18e738626b7cbbbbcd23ef06',1,'stan::agrad::recover_memory()'],['../namespacestan_1_1agrad.html#a352bfc3b18e738626b7cbbbbcd23ef06',1,'stan::agrad::recover_memory()']]], + ['remove',['remove',['../structstan_1_1gm_1_1variable__map.html#ab50a247ce7a5a9c041f02e51de75ab8c',1,'stan::gm::variable_map::remove()'],['../classstan_1_1io_1_1dump.html#ae73ebbf7c924c54f04cb4cab5d3bb61c',1,'stan::io::dump::remove()']]], + ['remove_5floop_5fidentifier',['remove_loop_identifier',['../structstan_1_1gm_1_1remove__loop__identifier.html',1,'stan::gm']]], + ['remove_5floop_5fidentifier_5ff',['remove_loop_identifier_f',['../namespacestan_1_1gm.html#add53eab5545aad3acada8a2f5c253a13',1,'stan::gm']]], + ['rep_5farray',['rep_array',['../namespacestan_1_1math.html#ad3d78d2735a35451f02bcd2f4da24886',1,'stan::math::rep_array(const T &x, int n)'],['../namespacestan_1_1math.html#a8edf0b7ec2ad24b1fda26a8d58513106',1,'stan::math::rep_array(const T &x, int m, int n)'],['../namespacestan_1_1math.html#a53054db4cfa6672654fbaedafbdae242',1,'stan::math::rep_array(const T &x, int k, int m, int n)']]], + ['rep_5farray_2ehpp',['rep_array.hpp',['../rep__array_8hpp.html',1,'']]], + ['rep_5fmatrix',['rep_matrix',['../namespacestan_1_1math.html#ad31fd1c6f1cd56836b049489009d2221',1,'stan::math::rep_matrix(const T &x, int m, int n)'],['../namespacestan_1_1math.html#a79febbfc52e2118819bb0eb77fbea561',1,'stan::math::rep_matrix(const Eigen::Matrix< T, Eigen::Dynamic, 1 > &v, int n)'],['../namespacestan_1_1math.html#aa70f063ee9a5790fbed08ba8ae07c52e',1,'stan::math::rep_matrix(const Eigen::Matrix< T, 1, Eigen::Dynamic > &rv, int m)']]], + ['rep_5fmatrix_2ehpp',['rep_matrix.hpp',['../rep__matrix_8hpp.html',1,'']]], + ['rep_5frow_5fvector',['rep_row_vector',['../namespacestan_1_1math.html#ac9d77ddf6ad38a102ebd6f5e433c3e6c',1,'stan::math']]], + ['rep_5frow_5fvector_2ehpp',['rep_row_vector.hpp',['../rep__row__vector_8hpp.html',1,'']]], + ['rep_5fvector',['rep_vector',['../namespacestan_1_1math.html#a2b132ea41ccfdb7b0ca4897cbb64649a',1,'stan::math']]], + ['rep_5fvector_2ehpp',['rep_vector.hpp',['../rep__vector_8hpp.html',1,'']]], + ['requireinitialization',['RequireInitialization',['../struct_eigen_1_1_num_traits_3_01stan_1_1agrad_1_1var_01_4.html#a932a61195daad3e89711cfb02521cac9ab6efa4e8f91c34b33478a794bd889dd4',1,'Eigen::NumTraits< stan::agrad::var >']]], + ['resize',['resize',['../namespacestan_1_1math.html#a8abf3ffa6d67a158348134225c9d3090',1,'stan::math']]], + ['resize_2ehpp',['resize.hpp',['../resize_8hpp.html',1,'']]], + ['resscalar',['ResScalar',['../struct_eigen_1_1internal_1_1general__matrix__vector__product_3_01_index_00_01stan_1_1agrad_1_1va44da5f98e1caea9523bacbd5bdc025fe.html#a5eccd0cab616793b2cd6a27ec9603e53',1,'Eigen::internal::general_matrix_vector_product< Index, stan::agrad::var, ColMajor, ConjugateLhs, stan::agrad::var, ConjugateRhs >::ResScalar()'],['../struct_eigen_1_1internal_1_1general__matrix__vector__product_3_01_index_00_01stan_1_1agrad_1_1vacd54cabc78c49ca719650381b68b105e.html#a2a3d011e77719fbba9c50c4c98f4098e',1,'Eigen::internal::general_matrix_vector_product< Index, stan::agrad::var, RowMajor, ConjugateLhs, stan::agrad::var, ConjugateRhs >::ResScalar()'],['../struct_eigen_1_1internal_1_1general__matrix__matrix__product_3_01_index_00_01stan_1_1agrad_1_1va9b485de9571b6e46d7a64aff43a6d9d3.html#a794af3646b14e20ff11c169ecd57a64a',1,'Eigen::internal::general_matrix_matrix_product< Index, stan::agrad::var, LhsStorageOrder, ConjugateLhs, stan::agrad::var, RhsStorageOrder, ConjugateRhs, ColMajor >::ResScalar()']]], + ['restart',['restart',['../classstan_1_1mcmc_1_1base__adaptation.html#afc41c7354b21fd64eb4a3d5964b4e230',1,'stan::mcmc::base_adaptation::restart()'],['../classstan_1_1mcmc_1_1stepsize__adaptation.html#ae0eba1b2db8fce83d078f095b6407c40',1,'stan::mcmc::stepsize_adaptation::restart()'],['../classstan_1_1mcmc_1_1windowed__adaptation.html#a0c6ce68d4fdde8df0bdcb5436aae9675',1,'stan::mcmc::windowed_adaptation::restart()'],['../classstan_1_1prob_1_1welford__covar__estimator.html#ac753e07b944404946cba323d0f33481d',1,'stan::prob::welford_covar_estimator::restart()'],['../classstan_1_1prob_1_1welford__var__estimator.html#a61dacc8a07628708042aaf83aa7b1f70',1,'stan::prob::welford_var_estimator::restart()']]], + ['result',['result',['../structstan_1_1gm_1_1negate__expr_1_1result.html',1,'stan::gm::negate_expr']]], + ['result',['result',['../structstan_1_1gm_1_1validate__int__expr2_1_1result.html',1,'stan::gm::validate_int_expr2']]], + ['result',['result',['../structstan_1_1gm_1_1set__fun__type_1_1result.html',1,'stan::gm::set_fun_type']]], + ['result',['result',['../structstan_1_1gm_1_1add__loop__identifier_1_1result.html',1,'stan::gm::add_loop_identifier']]], + ['result',['result',['../structstan_1_1gm_1_1set__var__type_1_1result.html',1,'stan::gm::set_var_type']]], + ['result',['result',['../structstan_1_1gm_1_1remove__loop__identifier_1_1result.html',1,'stan::gm::remove_loop_identifier']]], + ['result',['result',['../structstan_1_1gm_1_1logical__negate__expr_1_1result.html',1,'stan::gm::logical_negate_expr']]], + ['result',['result',['../structstan_1_1gm_1_1set__fun__type__named_1_1result.html',1,'stan::gm::set_fun_type_named']]], + ['result',['result',['../structstan_1_1gm_1_1add__expression__dimss_1_1result.html',1,'stan::gm::add_expression_dimss']]], + ['result',['result',['../structstan_1_1gm_1_1add__conditional__body_1_1result.html',1,'stan::gm::add_conditional_body']]], + ['result',['result',['../structstan_1_1gm_1_1division__expr_1_1result.html',1,'stan::gm::division_expr']]], + ['result',['result',['../structstan_1_1gm_1_1validate__expr__type2_1_1result.html',1,'stan::gm::validate_expr_type2']]], + ['result',['result',['../structstan_1_1gm_1_1subtraction__expr_1_1result.html',1,'stan::gm::subtraction_expr']]], + ['result',['result',['../structstan_1_1gm_1_1set__fun__type2_1_1result.html',1,'stan::gm::set_fun_type2']]], + ['result',['result',['../structstan_1_1gm_1_1addition__expr_1_1result.html',1,'stan::gm::addition_expr']]], + ['result',['result',['../structstan_1_1gm_1_1validate__sample_1_1result.html',1,'stan::gm::validate_sample']]], + ['result',['result',['../structstan_1_1gm_1_1validate__int__expr3_1_1result.html',1,'stan::gm::validate_int_expr3']]], + ['result',['result',['../structstan_1_1gm_1_1validate__assignment_1_1result.html',1,'stan::gm::validate_assignment']]], + ['result',['result',['../structstan_1_1gm_1_1add__while__condition_1_1result.html',1,'stan::gm::add_while_condition']]], + ['result',['result',['../structstan_1_1gm_1_1multiplication__expr_1_1result.html',1,'stan::gm::multiplication_expr']]], + ['result',['result',['../structstan_1_1gm_1_1add__while__body_1_1result.html',1,'stan::gm::add_while_body']]], + ['result',['result',['../structstan_1_1gm_1_1left__division__expr_1_1result.html',1,'stan::gm::left_division_expr']]], + ['result',['result',['../structstan_1_1gm_1_1binary__op__expr_1_1result.html',1,'stan::gm::binary_op_expr']]], + ['result',['result',['../structstan_1_1gm_1_1expression__as__statement_1_1result.html',1,'stan::gm::expression_as_statement']]], + ['result',['result',['../structstan_1_1gm_1_1elt__multiplication__expr_1_1result.html',1,'stan::gm::elt_multiplication_expr']]], + ['result',['result',['../structstan_1_1gm_1_1add__conditional__condition_1_1result.html',1,'stan::gm::add_conditional_condition']]], + ['result',['result',['../structstan_1_1gm_1_1elt__division__expr_1_1result.html',1,'stan::gm::elt_division_expr']]], + ['result',['result',['../structstan_1_1gm_1_1transpose__expr_1_1result.html',1,'stan::gm::transpose_expr']]], + ['result',['result',['../structstan_1_1gm_1_1validate__allow__sample_1_1result.html',1,'stan::gm::validate_allow_sample']]], + ['result',['result',['../structstan_1_1gm_1_1unscope__locals_1_1result.html',1,'stan::gm::unscope_locals']]], + ['result',['result',['../structstan_1_1gm_1_1validate__expr__type_1_1result.html',1,'stan::gm::validate_expr_type']]], + ['result_5ftype',['result_type',['../structstan_1_1gm_1_1visgen.html#a109e318e1629afb884191005e56b040e',1,'stan::gm::visgen']]], + ['return_5ftype',['return_type',['../structstan_1_1return__type.html',1,'stan']]], + ['returntype',['ReturnType',['../struct_eigen_1_1internal_1_1scalar__product__traits_3_01stan_1_1agrad_1_1var_00_01double_01_4.html#a7a3a05b2596fc2bf37c31456c2f5646e',1,'Eigen::internal::scalar_product_traits< stan::agrad::var, double >::ReturnType()'],['../struct_eigen_1_1internal_1_1scalar__product__traits_3_01double_00_01stan_1_1agrad_1_1var_01_4.html#ae4eab286198b6597cf9fb9f009facfde',1,'Eigen::internal::scalar_product_traits< double, stan::agrad::var >::ReturnType()']]], + ['rev_2ehpp',['rev.hpp',['../rev_8hpp.html',1,'']]], + ['rho',['rho',['../structstan_1_1optimization_1_1_b_f_g_s_minimizer_1_1_b_f_g_s_options.html#ae62684f34eac1552c27bed815c2e4ea3',1,'stan::optimization::BFGSMinimizer::BFGSOptions']]], + ['rhsscalar',['RhsScalar',['../struct_eigen_1_1internal_1_1general__matrix__vector__product_3_01_index_00_01stan_1_1agrad_1_1va44da5f98e1caea9523bacbd5bdc025fe.html#a032c6f6f307ed07b410a6d9cfc933588',1,'Eigen::internal::general_matrix_vector_product< Index, stan::agrad::var, ColMajor, ConjugateLhs, stan::agrad::var, ConjugateRhs >::RhsScalar()'],['../struct_eigen_1_1internal_1_1general__matrix__vector__product_3_01_index_00_01stan_1_1agrad_1_1vacd54cabc78c49ca719650381b68b105e.html#afe67acef0cc902389c761f0a3a914e73',1,'Eigen::internal::general_matrix_vector_product< Index, stan::agrad::var, RowMajor, ConjugateLhs, stan::agrad::var, ConjugateRhs >::RhsScalar()'],['../struct_eigen_1_1internal_1_1general__matrix__matrix__product_3_01_index_00_01stan_1_1agrad_1_1va9b485de9571b6e46d7a64aff43a6d9d3.html#ae39f7406453977f1c2341a05397f7024',1,'Eigen::internal::general_matrix_matrix_product< Index, stan::agrad::var, LhsStorageOrder, ConjugateLhs, stan::agrad::var, RhsStorageOrder, ConjugateRhs, ColMajor >::RhsScalar()']]], + ['right',['right',['../structstan_1_1gm_1_1binary__op.html#a8c4d835d3bf96f0163e265f824130210',1,'stan::gm::binary_op']]], + ['rising_5ffactorial',['rising_factorial',['../namespacestan_1_1agrad.html#ae4c3b430f306e040a9179e658765b149',1,'stan::agrad::rising_factorial(const fvar< T > &x, const fvar< T > &n)'],['../namespacestan_1_1agrad.html#ad41059332ac855c615d8595f1ec2912d',1,'stan::agrad::rising_factorial(const fvar< T > &x, const double n)'],['../namespacestan_1_1agrad.html#af7f09d1c92ebab44b0765c7cbbece686',1,'stan::agrad::rising_factorial(const double x, const fvar< T > &n)'],['../namespacestan_1_1agrad.html#a2938f3b0f93ab4f19e3809fe4f69c94f',1,'stan::agrad::rising_factorial(const var &a, const double &b)'],['../namespacestan_1_1agrad.html#a20247c229eb0eff045d4f8eb46754d2e',1,'stan::agrad::rising_factorial(const var &a, const var &b)'],['../namespacestan_1_1agrad.html#abe622a48fa2a2942b149fdba55f333e1',1,'stan::agrad::rising_factorial(const double &a, const var &b)'],['../namespacestan_1_1math.html#a3c25994a9886374662f280ecba376a42',1,'stan::math::rising_factorial()']]], + ['rising_5ffactorial_2ehpp',['rising_factorial.hpp',['../math_2functions_2rising__factorial_8hpp.html',1,'']]], + ['rising_5ffactorial_2ehpp',['rising_factorial.hpp',['../agrad_2fwd_2functions_2rising__factorial_8hpp.html',1,'']]], + ['rising_5ffactorial_2ehpp',['rising_factorial.hpp',['../agrad_2rev_2functions_2rising__factorial_8hpp.html',1,'']]], + ['round',['round',['../namespacestan_1_1agrad.html#afec6a38f518019111c47c6e6c2a593b2',1,'stan::agrad::round(const fvar< T > &x)'],['../namespacestan_1_1agrad.html#ad590e62d8c71957c7af8415e85905161',1,'stan::agrad::round(const stan::agrad::var &a)']]], + ['round_2ehpp',['round.hpp',['../rev_2functions_2round_8hpp.html',1,'']]], + ['round_2ehpp',['round.hpp',['../fwd_2functions_2round_8hpp.html',1,'']]], + ['round_5ferror',['round_error',['../structstd_1_1numeric__limits_3_01stan_1_1agrad_1_1fvar_3_01_t_01_4_01_4.html#af3bf0d1a9d694cf2ab881c0a648ddaa7',1,'std::numeric_limits< stan::agrad::fvar< T > >::round_error()'],['../structstd_1_1numeric__limits_3_01stan_1_1agrad_1_1var_01_4.html#aaac0b0266785c7bd359eee49a89231a4',1,'std::numeric_limits< stan::agrad::var >::round_error()']]], + ['round_5fstyle',['round_style',['../structstd_1_1numeric__limits_3_01stan_1_1agrad_1_1fvar_3_01_t_01_4_01_4.html#a1c70d1cf58dba42f0bb1987810ae07a7',1,'std::numeric_limits< stan::agrad::fvar< T > >::round_style()'],['../structstd_1_1numeric__limits_3_01stan_1_1agrad_1_1var_01_4.html#a87a2f9fb70b542ca087f476622d51a57',1,'std::numeric_limits< stan::agrad::var >::round_style()']]], + ['row',['row',['../namespacestan_1_1math.html#ab540ec1825d8a36cf690a3f061d544bb',1,'stan::math']]], + ['row_2ehpp',['row.hpp',['../row_8hpp.html',1,'']]], + ['row_5fvector',['row_vector',['../classstan_1_1io_1_1reader.html#a857c3ed31d34189e5768ef2475024b36',1,'stan::io::reader']]], + ['row_5fvector_5fconstrain',['row_vector_constrain',['../classstan_1_1io_1_1reader.html#a83f84052299bcadcd6bdf0273e7a48d4',1,'stan::io::reader::row_vector_constrain(size_t m)'],['../classstan_1_1io_1_1reader.html#a2165af289c7ec046db04aec5d369bc9b',1,'stan::io::reader::row_vector_constrain(size_t m, T &)']]], + ['row_5fvector_5fd',['row_vector_d',['../namespacestan_1_1math.html#ac105e584e4ed2d24a5c3a40df4d94697',1,'stan::math']]], + ['row_5fvector_5fdecl_5fr',['row_vector_decl_r',['../structstan_1_1gm_1_1var__decls__grammar.html#a2ead8250ab9ab408323ca23af20cd734',1,'stan::gm::var_decls_grammar']]], + ['row_5fvector_5ffd',['row_vector_fd',['../namespacestan_1_1agrad.html#a034dc4f78e984e287123599a3b87ac97',1,'stan::agrad']]], + ['row_5fvector_5fffd',['row_vector_ffd',['../namespacestan_1_1agrad.html#a493bb030b1f2016276f58fe67662e252',1,'stan::agrad']]], + ['row_5fvector_5fffv',['row_vector_ffv',['../namespacestan_1_1agrad.html#a4a52427f4040846e15dca434ea633b7b',1,'stan::agrad']]], + ['row_5fvector_5ffv',['row_vector_fv',['../namespacestan_1_1agrad.html#a031f0408fe91a974e1cc09d61cea8807',1,'stan::agrad']]], + ['row_5fvector_5flb',['row_vector_lb',['../classstan_1_1io_1_1reader.html#a91cbfaaef51a6f1537ae86c13403c8fc',1,'stan::io::reader']]], + ['row_5fvector_5flb_5fconstrain',['row_vector_lb_constrain',['../classstan_1_1io_1_1reader.html#ac2a358a28348483347a0c3d18587dcff',1,'stan::io::reader::row_vector_lb_constrain(const TL lb, size_t m)'],['../classstan_1_1io_1_1reader.html#a03477c8e7dec8028b31d7435161a58d1',1,'stan::io::reader::row_vector_lb_constrain(const TL lb, size_t m, T &lp)']]], + ['row_5fvector_5flb_5funconstrain',['row_vector_lb_unconstrain',['../classstan_1_1io_1_1writer.html#a2c478d495e007c8eba20f089a089c163',1,'stan::io::writer']]], + ['row_5fvector_5flub',['row_vector_lub',['../classstan_1_1io_1_1reader.html#a4cb4db5f423c38abdf0e3cb8f9d9188b',1,'stan::io::reader']]], + ['row_5fvector_5flub_5fconstrain',['row_vector_lub_constrain',['../classstan_1_1io_1_1reader.html#aaa3a163e402812f41d271adcf974e455',1,'stan::io::reader::row_vector_lub_constrain(const TL lb, const TU ub, size_t m)'],['../classstan_1_1io_1_1reader.html#ab1d1b3316dd321fdf4965d8843920800',1,'stan::io::reader::row_vector_lub_constrain(const TL lb, const TU ub, size_t m, T &lp)']]], + ['row_5fvector_5flub_5funconstrain',['row_vector_lub_unconstrain',['../classstan_1_1io_1_1writer.html#a044b59a59c26439b2bb2bc19071531d6',1,'stan::io::writer']]], + ['row_5fvector_5ft',['row_vector_t',['../classstan_1_1io_1_1reader.html#a9266295ff05e7617d42304c90e485b52',1,'stan::io::reader::row_vector_t()'],['../classstan_1_1io_1_1writer.html#a51abce190e367fccf3c1f8ddfa3c5170',1,'stan::io::writer::row_vector_t()'],['../namespacestan_1_1gm.html#a262a14a590dd1cc841d61cfec98b1ecd',1,'stan::gm::ROW_VECTOR_T()']]], + ['row_5fvector_5fub',['row_vector_ub',['../classstan_1_1io_1_1reader.html#a7e2430e335d19e695f50494130e9a183',1,'stan::io::reader']]], + ['row_5fvector_5fub_5fconstrain',['row_vector_ub_constrain',['../classstan_1_1io_1_1reader.html#a956b2417c03f1f4645377fc06e1eee94',1,'stan::io::reader::row_vector_ub_constrain(const TU ub, size_t m)'],['../classstan_1_1io_1_1reader.html#a66650f9f00be4acabf92acfca8c53dbc',1,'stan::io::reader::row_vector_ub_constrain(const TU ub, size_t m, T &lp)']]], + ['row_5fvector_5fub_5funconstrain',['row_vector_ub_unconstrain',['../classstan_1_1io_1_1writer.html#afd20cc10409dce8c8f19dd7739bf05bb',1,'stan::io::writer']]], + ['row_5fvector_5funconstrain',['row_vector_unconstrain',['../classstan_1_1io_1_1writer.html#ac994c53580dee20c98e2734b889be4ad',1,'stan::io::writer']]], + ['row_5fvector_5fv',['row_vector_v',['../namespacestan_1_1agrad.html#ac3832e2dace4d1299a812cdcc53ab091',1,'stan::agrad']]], + ['row_5fvector_5fvar_5fdecl',['row_vector_var_decl',['../structstan_1_1gm_1_1row__vector__var__decl.html#aa014117956dbd7c14c2008ddef880824',1,'stan::gm::row_vector_var_decl::row_vector_var_decl()'],['../structstan_1_1gm_1_1row__vector__var__decl.html#a5519c24ae953da7a875c0f39ce69704c',1,'stan::gm::row_vector_var_decl::row_vector_var_decl(range const &range, expression const &N, std::string const &name, std::vector< expression > const &dims)']]], + ['row_5fvector_5fvar_5fdecl',['row_vector_var_decl',['../structstan_1_1gm_1_1row__vector__var__decl.html',1,'stan::gm']]], + ['rows',['rows',['../classstan_1_1math_1_1_l_d_l_t__factor_3_01stan_1_1agrad_1_1var_00_01_r_00_01_c_01_4.html#a6ed9e0cd72d929449d5257f11b7aad45',1,'stan::math::LDLT_factor< stan::agrad::var, R, C >::rows()'],['../classstan_1_1math_1_1_l_d_l_t__factor_3_01double_00_01_r_00_01_c_01_4.html#a481dd3025ce906d56ab57d6f33759426',1,'stan::math::LDLT_factor< double, R, C >::rows()'],['../namespacestan_1_1math.html#adb157990709e17068a450238d0a579fb',1,'stan::math::rows()']]], + ['rows_2ehpp',['rows.hpp',['../rows_8hpp.html',1,'']]], + ['rows_5fdot_5fproduct',['rows_dot_product',['../namespacestan_1_1agrad.html#ad53bb44b66e3b1129e5454cda93c700c',1,'stan::agrad::rows_dot_product(const Eigen::Matrix< fvar< T >, R1, C1 > &v1, const Eigen::Matrix< fvar< T >, R2, C2 > &v2)'],['../namespacestan_1_1agrad.html#a78dcc991d879df3adf65cd1869015317',1,'stan::agrad::rows_dot_product(const Eigen::Matrix< double, R1, C1 > &v1, const Eigen::Matrix< fvar< T >, R2, C2 > &v2)'],['../namespacestan_1_1agrad.html#aa6efe02004903faea4953ea2b0a6c02c',1,'stan::agrad::rows_dot_product(const Eigen::Matrix< fvar< T >, R1, C1 > &v1, const Eigen::Matrix< double, R2, C2 > &v2)'],['../namespacestan_1_1agrad.html#a515860810335a99d111cda0614bc00e1',1,'stan::agrad::rows_dot_product(const Eigen::Matrix< T1, R1, C1 > &v1, const Eigen::Matrix< T2, R2, C2 > &v2)'],['../namespacestan_1_1math.html#a6e1fb33918f8c4e61cc7709905db012c',1,'stan::math::rows_dot_product()']]], + ['rows_5fdot_5fproduct_2ehpp',['rows_dot_product.hpp',['../agrad_2fwd_2matrix_2rows__dot__product_8hpp.html',1,'']]], + ['rows_5fdot_5fproduct_2ehpp',['rows_dot_product.hpp',['../math_2matrix_2rows__dot__product_8hpp.html',1,'']]], + ['rows_5fdot_5fself',['rows_dot_self',['../namespacestan_1_1agrad.html#aba5acba7161f7e4080052f1bd6063e9a',1,'stan::agrad::rows_dot_self()'],['../namespacestan_1_1math.html#a7b071fe169e76df6dc2a49c85ec28b2f',1,'stan::math::rows_dot_self()']]], + ['rows_5fdot_5fself_2ehpp',['rows_dot_self.hpp',['../agrad_2fwd_2matrix_2rows__dot__self_8hpp.html',1,'']]], + ['rows_5fdot_5fself_2ehpp',['rows_dot_self.hpp',['../math_2matrix_2rows__dot__self_8hpp.html',1,'']]], + ['run',['run',['../struct_eigen_1_1internal_1_1significant__decimals__default__impl_3_01stan_1_1agrad_1_1var_00_01false_01_4.html#ac2f97f18b6f0c481a111bbf82a4fc7e5',1,'Eigen::internal::significant_decimals_default_impl< stan::agrad::var, false >::run()'],['../struct_eigen_1_1internal_1_1general__matrix__vector__product_3_01_index_00_01stan_1_1agrad_1_1va44da5f98e1caea9523bacbd5bdc025fe.html#a62cd81217587325b39ccdd4668b13e7a',1,'Eigen::internal::general_matrix_vector_product< Index, stan::agrad::var, ColMajor, ConjugateLhs, stan::agrad::var, ConjugateRhs >::run()'],['../struct_eigen_1_1internal_1_1general__matrix__vector__product_3_01_index_00_01stan_1_1agrad_1_1vacd54cabc78c49ca719650381b68b105e.html#aec3ce42cbaf2a03d150a0ae70b72220e',1,'Eigen::internal::general_matrix_vector_product< Index, stan::agrad::var, RowMajor, ConjugateLhs, stan::agrad::var, ConjugateRhs >::run()'],['../struct_eigen_1_1internal_1_1general__matrix__matrix__product_3_01_index_00_01stan_1_1agrad_1_1va9b485de9571b6e46d7a64aff43a6d9d3.html#a6e9d5e398a3e5602fa39b1938bb6f155',1,'Eigen::internal::general_matrix_matrix_product< Index, stan::agrad::var, LhsStorageOrder, ConjugateLhs, stan::agrad::var, RhsStorageOrder, ConjugateRhs, ColMajor >::run()']]], + ['run_5fmarkov_5fchain',['run_markov_chain',['../namespacestan_1_1gm.html#a9209ad79a636ceb3152038e76e81acc4',1,'stan::gm']]] +]; diff --git a/doc/api/html/search/all_73.html b/doc/api/html/search/all_73.html new file mode 100644 index 00000000000..1ec8f174deb --- /dev/null +++ b/doc/api/html/search/all_73.html @@ -0,0 +1,25 @@ + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/doc/api/html/search/all_73.js b/doc/api/html/search/all_73.js new file mode 100644 index 00000000000..c1d533f2bd2 --- /dev/null +++ b/doc/api/html/search/all_73.js @@ -0,0 +1,271 @@ +var searchData= +[ + ['agrad',['agrad',['../namespacestan_1_1agrad.html',1,'stan']]], + ['detail',['detail',['../namespacestan_1_1math_1_1policies_1_1detail.html',1,'stan::math::policies']]], + ['gm',['gm',['../namespacestan_1_1gm.html',1,'stan']]], + ['io',['io',['../namespacestan_1_1io.html',1,'stan']]], + ['math',['math',['../namespacestan_1_1math.html',1,'stan']]], + ['mcmc',['mcmc',['../namespacestan_1_1mcmc.html',1,'stan']]], + ['memory',['memory',['../namespacestan_1_1memory.html',1,'stan']]], + ['model',['model',['../namespacestan_1_1model.html',1,'stan']]], + ['optimization',['optimization',['../namespacestan_1_1optimization.html',1,'stan']]], + ['policies',['policies',['../namespacestan_1_1math_1_1policies.html',1,'stan::math']]], + ['prob',['prob',['../namespacestan_1_1prob.html',1,'stan']]], + ['sample',['sample',['../classstan_1_1mcmc_1_1sample.html',1,'stan::mcmc']]], + ['sample',['sample',['../structstan_1_1gm_1_1sample.html',1,'stan::gm']]], + ['sample',['sample',['../structstan_1_1gm_1_1sample.html#af848ffe2b840908129a6ec949f4ef881',1,'stan::gm::sample::sample()'],['../structstan_1_1gm_1_1sample.html#af9ef88ac0fe1bca70dd1a598a805125d',1,'stan::gm::sample::sample(expression &e, distribution &dist)'],['../classstan_1_1mcmc_1_1sample.html#a028816248fc7ec7dbee24d0e7ea621dc',1,'stan::mcmc::sample::sample()'],['../namespacestan_1_1gm.html#a7cf4c17c47162f69708fa787fa09d4dc',1,'stan::gm::sample()']]], + ['sample_2ehpp',['sample.hpp',['../sample_8hpp.html',1,'']]], + ['sample_5fcovariance',['sample_covariance',['../classstan_1_1prob_1_1welford__covar__estimator.html#a5e36ff271130c52b707d261f0cf72205',1,'stan::prob::welford_covar_estimator']]], + ['sample_5fmean',['sample_mean',['../classstan_1_1prob_1_1welford__covar__estimator.html#a025fef3ddbd1b600ff60f293757c7dda',1,'stan::prob::welford_covar_estimator::sample_mean()'],['../classstan_1_1prob_1_1welford__var__estimator.html#a9204b9e61b85661377f48f0d4c55531c',1,'stan::prob::welford_var_estimator::sample_mean()']]], + ['sample_5fp',['sample_p',['../classstan_1_1mcmc_1_1base__hamiltonian.html#a3207510e682d531885cc65e91b7e9af9',1,'stan::mcmc::base_hamiltonian::sample_p()'],['../classstan_1_1mcmc_1_1dense__e__metric.html#a6226a2831ba574b3219536c5c3b31d42',1,'stan::mcmc::dense_e_metric::sample_p()'],['../classstan_1_1mcmc_1_1diag__e__metric.html#a4006b1b08873b2f09a4c7a718f4f7517',1,'stan::mcmc::diag_e_metric::sample_p()'],['../classstan_1_1mcmc_1_1unit__e__metric.html#a97f537f349ad486cb8ca40bbfdc8135b',1,'stan::mcmc::unit_e_metric::sample_p()']]], + ['sample_5fr',['sample_r',['../structstan_1_1gm_1_1statement__grammar.html#a3058435c851fca6533f0a859e06e32f2',1,'stan::gm::statement_grammar']]], + ['sample_5fstepsize',['sample_stepsize',['../classstan_1_1mcmc_1_1base__hmc.html#a3ac766b0cce7b20168fb576cc7b399af',1,'stan::mcmc::base_hmc']]], + ['sample_5fvariance',['sample_variance',['../classstan_1_1prob_1_1welford__var__estimator.html#a97832111891ecd58739f528506f64bbb',1,'stan::prob::welford_var_estimator']]], + ['samples',['samples',['../structstan_1_1io_1_1stan__csv.html#a5e17346c48ca1e2b9146d2700c6433a8',1,'stan::io::stan_csv::samples()'],['../classstan_1_1mcmc_1_1chains.html#a9db136c877e767e92877f162fc613af0',1,'stan::mcmc::chains::samples(const int chain, const int index)'],['../classstan_1_1mcmc_1_1chains.html#aaa2edbb4814eaf82fa21bb5795008b86',1,'stan::mcmc::chains::samples(const int index)'],['../classstan_1_1mcmc_1_1chains.html#a32d4494522c2cb233f48960d2ed57198',1,'stan::mcmc::chains::samples(const int chain, const std::string &name)'],['../classstan_1_1mcmc_1_1chains.html#aa00ee119c518e1912e3153be0797fbaf',1,'stan::mcmc::chains::samples(const std::string &name)']]], + ['sampling',['sampling',['../structstan_1_1io_1_1stan__csv__timing.html#ac519541a29874dcefa08af1e0584f595',1,'stan::io::stan_csv_timing']]], + ['save_5fwarmup',['save_warmup',['../structstan_1_1io_1_1stan__csv__metadata.html#aeb01b3bd545cb53379cc3d9b4965574a',1,'stan::io::stan_csv_metadata']]], + ['scalar',['Scalar',['../classstan_1_1agrad_1_1var.html#a9ddcf3d9523473d4c99eb4dc81c6938f',1,'stan::agrad::var::Scalar()'],['../classstan_1_1agrad_1_1var.html#a9ddcf3d9523473d4c99eb4dc81c6938f',1,'stan::agrad::var::Scalar()'],['../classstan_1_1io_1_1reader.html#a804e3de3992c9f6a53c03596369dd1d0',1,'stan::io::reader::scalar()']]], + ['scalar_5fconstrain',['scalar_constrain',['../classstan_1_1io_1_1reader.html#a1436d19aa2acb5c139f7abccda0245c0',1,'stan::io::reader::scalar_constrain()'],['../classstan_1_1io_1_1reader.html#adc2d45ed51c042512f07e2c977894b7b',1,'stan::io::reader::scalar_constrain(T &)']]], + ['scalar_5flb',['scalar_lb',['../classstan_1_1io_1_1reader.html#a63d5909de270e2f187707c7bdfa1b2ba',1,'stan::io::reader']]], + ['scalar_5flb_5fconstrain',['scalar_lb_constrain',['../classstan_1_1io_1_1reader.html#aa9191795f375a3e3c5e048ca1eb045ba',1,'stan::io::reader::scalar_lb_constrain(const TL lb)'],['../classstan_1_1io_1_1reader.html#a8fc8affb3f2c3835965d943c7a7ce83c',1,'stan::io::reader::scalar_lb_constrain(const TL lb, T &lp)']]], + ['scalar_5flb_5funconstrain',['scalar_lb_unconstrain',['../classstan_1_1io_1_1writer.html#a7f2596b8de12ff0a3121a6acbbf79536',1,'stan::io::writer']]], + ['scalar_5flub',['scalar_lub',['../classstan_1_1io_1_1reader.html#a13f36e576e51d8e9d72589133d7cf107',1,'stan::io::reader']]], + ['scalar_5flub_5fconstrain',['scalar_lub_constrain',['../classstan_1_1io_1_1reader.html#a12299645ca45f2b765fea6fe14447733',1,'stan::io::reader::scalar_lub_constrain(const TL lb, const TU ub)'],['../classstan_1_1io_1_1reader.html#ad821d1abbeefcd04f3350a213276d53e',1,'stan::io::reader::scalar_lub_constrain(TL lb, TU ub, T &lp)']]], + ['scalar_5flub_5funconstrain',['scalar_lub_unconstrain',['../classstan_1_1io_1_1writer.html#a841fbd5b6feddfbad117c3cb23f2844c',1,'stan::io::writer']]], + ['scalar_5fpos',['scalar_pos',['../classstan_1_1io_1_1reader.html#acf5c5343597a44d4d2173881c7c68912',1,'stan::io::reader']]], + ['scalar_5fpos_5fconstrain',['scalar_pos_constrain',['../classstan_1_1io_1_1reader.html#a45d5a9c201fb25c44f1bba987e64d387',1,'stan::io::reader::scalar_pos_constrain()'],['../classstan_1_1io_1_1reader.html#a41d6bf28bfa13c861ce1afe8cd7d4c1e',1,'stan::io::reader::scalar_pos_constrain(T &lp)']]], + ['scalar_5fpos_5funconstrain',['scalar_pos_unconstrain',['../classstan_1_1io_1_1writer.html#a0711f8ca4117ca12cdb301e40838dc74',1,'stan::io::writer']]], + ['scalar_5fproduct_5ftraits_3c_20double_2c_20stan_3a_3aagrad_3a_3avar_20_3e',['scalar_product_traits< double, stan::agrad::var >',['../struct_eigen_1_1internal_1_1scalar__product__traits_3_01double_00_01stan_1_1agrad_1_1var_01_4.html',1,'Eigen::internal']]], + ['scalar_5fproduct_5ftraits_3c_20stan_3a_3aagrad_3a_3avar_2c_20double_20_3e',['scalar_product_traits< stan::agrad::var, double >',['../struct_eigen_1_1internal_1_1scalar__product__traits_3_01stan_1_1agrad_1_1var_00_01double_01_4.html',1,'Eigen::internal']]], + ['scalar_5ft',['scalar_t',['../classstan_1_1_vector_view.html#a2a17f256f923b7271b7008682995c072',1,'stan::VectorView::scalar_t()'],['../classstan_1_1_vector_view_3_01const_01_t_00_01is__array_00_01throw__if__accessed_01_4.html#ab4284d2fe6f3e884e2bc9ec7c5621372',1,'stan::VectorView< const T, is_array, throw_if_accessed >::scalar_t()']]], + ['scalar_5ftype',['scalar_type',['../structstan_1_1scalar__type.html',1,'stan']]], + ['scalar_5ftype_3c_20eigen_3a_3amatrix_3c_20t_2c_20eigen_3a_3adynamic_2c_20eigen_3a_3adynamic_20_3e_20_3e',['scalar_type< Eigen::Matrix< T, Eigen::Dynamic, Eigen::Dynamic > >',['../structstan_1_1scalar__type_3_01_eigen_1_1_matrix_3_01_t_00_01_eigen_1_1_dynamic_00_01_eigen_1_1_dynamic_01_4_01_4.html',1,'stan']]], + ['scalar_5ftype_3c_20t_20_2a_20_3e',['scalar_type< T * >',['../structstan_1_1scalar__type_3_01_t_01_5_01_4.html',1,'stan']]], + ['scalar_5fub',['scalar_ub',['../classstan_1_1io_1_1reader.html#aa5e2f8eca996110fb2be2e436d583b62',1,'stan::io::reader']]], + ['scalar_5fub_5fconstrain',['scalar_ub_constrain',['../classstan_1_1io_1_1reader.html#a21b4b63d07615a9d0a7c5de364a43a36',1,'stan::io::reader::scalar_ub_constrain(const TU ub)'],['../classstan_1_1io_1_1reader.html#a48afbd36262b7a2f51dec8d2fad471dd',1,'stan::io::reader::scalar_ub_constrain(const TU ub, T &lp)']]], + ['scalar_5fub_5funconstrain',['scalar_ub_unconstrain',['../classstan_1_1io_1_1writer.html#a747459c1f2b0d23711d7d36f18269ed6',1,'stan::io::writer']]], + ['scalar_5funconstrain',['scalar_unconstrain',['../classstan_1_1io_1_1writer.html#a15d75c45cfa52d103ad5660283fdde45',1,'stan::io::writer']]], + ['scaled_5fadd',['scaled_add',['../namespacestan_1_1math.html#a2eb786f14699d69c39cfdd49893a8006',1,'stan::math']]], + ['scaled_5fadd_2ehpp',['scaled_add.hpp',['../scaled__add_8hpp.html',1,'']]], + ['scaled_5finv_5fchi_5fsquare_2ehpp',['scaled_inv_chi_square.hpp',['../scaled__inv__chi__square_8hpp.html',1,'']]], + ['scaled_5finv_5fchi_5fsquare_5fccdf_5flog',['scaled_inv_chi_square_ccdf_log',['../namespacestan_1_1prob.html#a93cfec0873f41fb0f7e4c83d874b45fc',1,'stan::prob']]], + ['scaled_5finv_5fchi_5fsquare_5fcdf',['scaled_inv_chi_square_cdf',['../namespacestan_1_1prob.html#aeed68e0c4e8cfb8b5c470ae0b59345c9',1,'stan::prob']]], + ['scaled_5finv_5fchi_5fsquare_5fcdf_5flog',['scaled_inv_chi_square_cdf_log',['../namespacestan_1_1prob.html#ac9609fecff26e0c07646f794f65a39a7',1,'stan::prob']]], + ['scaled_5finv_5fchi_5fsquare_5flog',['scaled_inv_chi_square_log',['../namespacestan_1_1prob.html#a6428f925f8c1b43c323ce549da410d58',1,'stan::prob::scaled_inv_chi_square_log(const T_y &y, const T_dof &nu, const T_scale &s)'],['../namespacestan_1_1prob.html#a33291b85f39ebace4a4bae7633551cb0',1,'stan::prob::scaled_inv_chi_square_log(const T_y &y, const T_dof &nu, const T_scale &s)']]], + ['scaled_5finv_5fchi_5fsquare_5frng',['scaled_inv_chi_square_rng',['../namespacestan_1_1prob.html#af34f411fc637d2d1163663c0cf0a850e',1,'stan::prob']]], + ['sd',['sd',['../classstan_1_1mcmc_1_1chains.html#ab2763e38f54eb42ecaffe3202d2b945c',1,'stan::mcmc::chains::sd(const int chain, const int index)'],['../classstan_1_1mcmc_1_1chains.html#a5a63a0830242bcb793d0b058a2037a0c',1,'stan::mcmc::chains::sd(const int index)'],['../classstan_1_1mcmc_1_1chains.html#aa4d9e5490c0f67fb36f524d3398d7fdd',1,'stan::mcmc::chains::sd(const int chain, const std::string &name)'],['../classstan_1_1mcmc_1_1chains.html#add89272071040d56370525dae0a341f2',1,'stan::mcmc::chains::sd(const std::string &name)'],['../namespacestan_1_1agrad.html#a0d4edc50e38fa85f989dd2bc6a0b35b2',1,'stan::agrad::sd(const std::vector< var > &v)'],['../namespacestan_1_1agrad.html#ab13ef786c424299f0312dc5372c97ee1',1,'stan::agrad::sd(const Eigen::Matrix< var, R, C > &m)'],['../namespacestan_1_1math.html#a34fd02fe795ea38c98f4a02befed309f',1,'stan::math::sd(const std::vector< T > &v)'],['../namespacestan_1_1math.html#a8e1cb72c1528f0ff383033c642341147',1,'stan::math::sd(const Eigen::Matrix< T, R, C > &m)']]], + ['sd_2ehpp',['sd.hpp',['../agrad_2rev_2matrix_2sd_8hpp.html',1,'']]], + ['sd_2ehpp',['sd.hpp',['../math_2matrix_2sd_8hpp.html',1,'']]], + ['seed',['seed',['../structstan_1_1io_1_1stan__csv__metadata.html#a1c59ab6a12137c935db71dae89472dd4',1,'stan::io::stan_csv_metadata::seed()'],['../classstan_1_1mcmc_1_1base__hmc.html#af14724fbb8065467b10deeb4134c6e74',1,'stan::mcmc::base_hmc::seed()']]], + ['segment',['segment',['../namespacestan_1_1math.html#a4e828d606f1a1c8faf42e6d901089543',1,'stan::math::segment(const Eigen::Matrix< T, Eigen::Dynamic, 1 > &v, size_t i, size_t n)'],['../namespacestan_1_1math.html#ad2c340addebdc88ac086b0e1fac2c1b7',1,'stan::math::segment(const Eigen::Matrix< T, 1, Eigen::Dynamic > &v, size_t i, size_t n)'],['../namespacestan_1_1math.html#a721232b5c8e7c068a120719255f5fb0c',1,'stan::math::segment(const std::vector< T > &sv, size_t i, size_t n)']]], + ['segment_2ehpp',['segment.hpp',['../segment_8hpp.html',1,'']]], + ['seq_5fview',['seq_view',['../classstan_1_1math_1_1seq__view.html',1,'stan::math']]], + ['seq_5fview',['seq_view',['../classstan_1_1math_1_1seq__view.html#a0c10cc8d25cff8c90c8bbecf3cd054a1',1,'stan::math::seq_view::seq_view()'],['../classstan_1_1math_1_1seq__view_3_01_t_00_01_eigen_1_1_matrix_3_01_s_00_01_eigen_1_1_dynamic_00_011_01_4_01_4.html#ae570c324a14b81a018475195a77e4430',1,'stan::math::seq_view< T, Eigen::Matrix< S, Eigen::Dynamic, 1 > >::seq_view()'],['../classstan_1_1math_1_1seq__view_3_01_t_00_01_eigen_1_1_matrix_3_01_s_00_011_00_01_eigen_1_1_dynamic_01_4_01_4.html#a57ab58ed09da14b8efcf83b9d1528b88',1,'stan::math::seq_view< T, Eigen::Matrix< S, 1, Eigen::Dynamic > >::seq_view()'],['../classstan_1_1math_1_1seq__view_3_01_t_00_01_eigen_1_1_matrix_3_01_s_00_01_eigen_1_1_dynamic_00_01_eigen_1_1_dynamic_01_4_01_4.html#a706e3bea5d58f77fd9d6d427e64aa370',1,'stan::math::seq_view< T, Eigen::Matrix< S, Eigen::Dynamic, Eigen::Dynamic > >::seq_view()'],['../classstan_1_1math_1_1seq__view_3_01_t_00_01std_1_1vector_3_01_s_01_4_01_4.html#a42ff5c63f8f83390fc7c585b41c0d5ed',1,'stan::math::seq_view< T, std::vector< S > >::seq_view()'],['../classstan_1_1math_1_1seq__view_3_01_t_00_01std_1_1vector_3_01_t_01_4_01_4.html#a2e9627b1092238710ed116adc7c1cab5',1,'stan::math::seq_view< T, std::vector< T > >::seq_view()'],['../classstan_1_1math_1_1seq__view_3_01_t_00_01std_1_1vector_3_01std_1_1vector_3_01_t_01_4_01_4_01_4.html#ac35e60cb3f9e9f4dde81b8ed3b532a2b',1,'stan::math::seq_view< T, std::vector< std::vector< T > > >::seq_view()'],['../classstan_1_1math_1_1seq__view_3_01double_00_01std_1_1vector_3_01int_01_4_01_4.html#ad82423565c559cd4e889350bc204319b',1,'stan::math::seq_view< double, std::vector< int > >::seq_view()']]], + ['seq_5fview_2ehpp',['seq_view.hpp',['../seq__view_8hpp.html',1,'']]], + ['seq_5fview_3c_20double_2c_20std_3a_3avector_3c_20int_20_3e_20_3e',['seq_view< double, std::vector< int > >',['../classstan_1_1math_1_1seq__view_3_01double_00_01std_1_1vector_3_01int_01_4_01_4.html',1,'stan::math']]], + ['seq_5fview_3c_20t_2c_20eigen_3a_3amatrix_3c_20s_2c_201_2c_20eigen_3a_3adynamic_20_3e_20_3e',['seq_view< T, Eigen::Matrix< S, 1, Eigen::Dynamic > >',['../classstan_1_1math_1_1seq__view_3_01_t_00_01_eigen_1_1_matrix_3_01_s_00_011_00_01_eigen_1_1_dynamic_01_4_01_4.html',1,'stan::math']]], + ['seq_5fview_3c_20t_2c_20eigen_3a_3amatrix_3c_20s_2c_20eigen_3a_3adynamic_2c_201_20_3e_20_3e',['seq_view< T, Eigen::Matrix< S, Eigen::Dynamic, 1 > >',['../classstan_1_1math_1_1seq__view_3_01_t_00_01_eigen_1_1_matrix_3_01_s_00_01_eigen_1_1_dynamic_00_011_01_4_01_4.html',1,'stan::math']]], + ['seq_5fview_3c_20t_2c_20eigen_3a_3amatrix_3c_20s_2c_20eigen_3a_3adynamic_2c_20eigen_3a_3adynamic_20_3e_20_3e',['seq_view< T, Eigen::Matrix< S, Eigen::Dynamic, Eigen::Dynamic > >',['../classstan_1_1math_1_1seq__view_3_01_t_00_01_eigen_1_1_matrix_3_01_s_00_01_eigen_1_1_dynamic_00_01_eigen_1_1_dynamic_01_4_01_4.html',1,'stan::math']]], + ['seq_5fview_3c_20t_2c_20std_3a_3avector_3c_20s_20_3e_20_3e',['seq_view< T, std::vector< S > >',['../classstan_1_1math_1_1seq__view_3_01_t_00_01std_1_1vector_3_01_s_01_4_01_4.html',1,'stan::math']]], + ['seq_5fview_3c_20t_2c_20std_3a_3avector_3c_20std_3a_3avector_3c_20t_20_3e_20_3e_20_3e',['seq_view< T, std::vector< std::vector< T > > >',['../classstan_1_1math_1_1seq__view_3_01_t_00_01std_1_1vector_3_01std_1_1vector_3_01_t_01_4_01_4_01_4.html',1,'stan::math']]], + ['seq_5fview_3c_20t_2c_20std_3a_3avector_3c_20t_20_3e_20_3e',['seq_view< T, std::vector< T > >',['../classstan_1_1math_1_1seq__view_3_01_t_00_01std_1_1vector_3_01_t_01_4_01_4.html',1,'stan::math']]], + ['set_5fdelta',['set_delta',['../classstan_1_1mcmc_1_1stepsize__adaptation.html#a1e6d6d34e50d9a5ff106f739ca81a851',1,'stan::mcmc::stepsize_adaptation']]], + ['set_5ffun_5ftype',['set_fun_type',['../structstan_1_1gm_1_1set__fun__type.html',1,'stan::gm']]], + ['set_5ffun_5ftype2',['set_fun_type2',['../structstan_1_1gm_1_1set__fun__type2.html',1,'stan::gm']]], + ['set_5ffun_5ftype2_5ff',['set_fun_type2_f',['../namespacestan_1_1gm.html#a071fa25593504eb98cd7d9da2baab92d',1,'stan::gm']]], + ['set_5ffun_5ftype_5ff',['set_fun_type_f',['../namespacestan_1_1gm.html#a7e620438867564889b2124e8877a6707',1,'stan::gm']]], + ['set_5ffun_5ftype_5fnamed',['set_fun_type_named',['../structstan_1_1gm_1_1set__fun__type__named.html',1,'stan::gm']]], + ['set_5ffun_5ftype_5fnamed_5ff',['set_fun_type_named_f',['../namespacestan_1_1gm.html#a7c2b54c2a8ea3233bb4e6b6984a5e2c7',1,'stan::gm']]], + ['set_5fgamma',['set_gamma',['../classstan_1_1mcmc_1_1stepsize__adaptation.html#a7feb00e53bc871dc9e796668b65c95b7',1,'stan::mcmc::stepsize_adaptation']]], + ['set_5fkappa',['set_kappa',['../classstan_1_1mcmc_1_1stepsize__adaptation.html#a5efe516ab71582fda45991235ea64a80',1,'stan::mcmc::stepsize_adaptation']]], + ['set_5fmax_5fdelta',['set_max_delta',['../classstan_1_1mcmc_1_1base__nuts.html#ae53e9049abf738dd6e1a3c1d6d0fb5e2',1,'stan::mcmc::base_nuts']]], + ['set_5fmax_5fdepth',['set_max_depth',['../classstan_1_1mcmc_1_1base__nuts.html#ac587ab4dc49a366f588314cffce64471',1,'stan::mcmc::base_nuts']]], + ['set_5fmu',['set_mu',['../classstan_1_1mcmc_1_1stepsize__adaptation.html#a8be8064cdb258e343922c186ecaaaf18',1,'stan::mcmc::stepsize_adaptation']]], + ['set_5fnominal_5fstepsize',['set_nominal_stepsize',['../classstan_1_1mcmc_1_1base__hmc.html#ad9ecfad54327ebceea08415e8b1514c3',1,'stan::mcmc::base_hmc::set_nominal_stepsize()'],['../classstan_1_1mcmc_1_1base__static__hmc.html#a0219d73bf44be4797b47c150d349d261',1,'stan::mcmc::base_static_hmc::set_nominal_stepsize()']]], + ['set_5fnominal_5fstepsize_5fand_5fl',['set_nominal_stepsize_and_L',['../classstan_1_1mcmc_1_1base__static__hmc.html#a42697249fbc38355195528383ad7d08f',1,'stan::mcmc::base_static_hmc']]], + ['set_5fnominal_5fstepsize_5fand_5ft',['set_nominal_stepsize_and_T',['../classstan_1_1mcmc_1_1base__static__hmc.html#a90ce61c9dce1d02419f4488efb4950a3',1,'stan::mcmc::base_static_hmc']]], + ['set_5fparam_5franges_5fvisgen',['set_param_ranges_visgen',['../structstan_1_1gm_1_1set__param__ranges__visgen.html',1,'stan::gm']]], + ['set_5fparam_5franges_5fvisgen',['set_param_ranges_visgen',['../structstan_1_1gm_1_1set__param__ranges__visgen.html#a260565c9456f52828d4dab2472536c8c',1,'stan::gm::set_param_ranges_visgen']]], + ['set_5fstepsize_5fjitter',['set_stepsize_jitter',['../classstan_1_1mcmc_1_1base__hmc.html#aa049a77cf8131f53a707a3a976fa3c11',1,'stan::mcmc::base_hmc']]], + ['set_5ft',['set_T',['../classstan_1_1mcmc_1_1base__static__hmc.html#ab7f3e3cfb7c79053aec34e27647a573a',1,'stan::mcmc::base_static_hmc']]], + ['set_5ft0',['set_t0',['../classstan_1_1mcmc_1_1stepsize__adaptation.html#a1afb2430aad55e460826f70db13bae9c',1,'stan::mcmc::stepsize_adaptation']]], + ['set_5ftype',['set_type',['../structstan_1_1gm_1_1variable.html#accf431520ba5cee016d698e01f089b37',1,'stan::gm::variable']]], + ['set_5fvalue',['set_value',['../classstan_1_1gm_1_1singleton__argument.html#a71e1284e9af67ce97dc32baa943a59a9',1,'stan::gm::singleton_argument']]], + ['set_5fvar_5ftype',['set_var_type',['../structstan_1_1gm_1_1set__var__type.html',1,'stan::gm']]], + ['set_5fvar_5ftype_5ff',['set_var_type_f',['../namespacestan_1_1gm.html#a4e0139a9c5cc5c02221aabee7b75d5aa',1,'stan::gm']]], + ['set_5fwarmup',['set_warmup',['../classstan_1_1mcmc_1_1chains.html#a6bb363076e9988fb98ee7241456e06b0',1,'stan::mcmc::chains::set_warmup(const int chain, const int warmup)'],['../classstan_1_1mcmc_1_1chains.html#a0e955cb8e43f1b9f8da98c5dff663768',1,'stan::mcmc::chains::set_warmup(const int warmup)']]], + ['set_5fwindow_5fparams',['set_window_params',['../classstan_1_1mcmc_1_1stepsize__covar__adapter.html#ae337a1a05112f580a3d105a8b60fe83f',1,'stan::mcmc::stepsize_covar_adapter::set_window_params()'],['../classstan_1_1mcmc_1_1stepsize__var__adapter.html#a9de24f09147a18ab6974426a518ba691',1,'stan::mcmc::stepsize_var_adapter::set_window_params()'],['../classstan_1_1mcmc_1_1windowed__adaptation.html#a818edfc11176b8ebc0bdb1b1d9c3319c',1,'stan::mcmc::windowed_adaptation::set_window_params()']]], + ['set_5fzero_5fadjoint',['set_zero_adjoint',['../classstan_1_1agrad_1_1chainable.html#a6cb7ffe4555cbba60c2136053d2c2a5f',1,'stan::agrad::chainable::set_zero_adjoint()'],['../classstan_1_1agrad_1_1vari.html#a1b9805e76f3afcb3199d8455c577a4dc',1,'stan::agrad::vari::set_zero_adjoint()']]], + ['set_5fzero_5fall_5fadjoints',['set_zero_all_adjoints',['../namespacestan_1_1agrad.html#aadb1e5a1bc99069eeab84a0b27c4dceb',1,'stan::agrad']]], + ['sign',['sign',['../structstan_1_1mcmc_1_1nuts__util.html#a1a1ff33b599f6046e6137d127a641b5e',1,'stan::mcmc::nuts_util::sign()'],['../namespacestan_1_1prob.html#af054a122bafce0c367eaca60a181bd47',1,'stan::prob::sign()']]], + ['signaling_5fnan',['signaling_NaN',['../structstd_1_1numeric__limits_3_01stan_1_1agrad_1_1fvar_3_01_t_01_4_01_4.html#a2f08955d86f725887a49949ebef19626',1,'std::numeric_limits< stan::agrad::fvar< T > >::signaling_NaN()'],['../structstd_1_1numeric__limits_3_01stan_1_1agrad_1_1var_01_4.html#a4c69e978e7814b7215f29a2e57a73993',1,'std::numeric_limits< stan::agrad::var >::signaling_NaN()']]], + ['significant_5fdecimals_5fdefault_5fimpl_3c_20stan_3a_3aagrad_3a_3avar_2c_20false_20_3e',['significant_decimals_default_impl< stan::agrad::var, false >',['../struct_eigen_1_1internal_1_1significant__decimals__default__impl_3_01stan_1_1agrad_1_1var_00_01false_01_4.html',1,'Eigen::internal']]], + ['simplex',['simplex',['../classstan_1_1io_1_1reader.html#a9b15c1f051764a8a50a08c5880f810bb',1,'stan::io::reader']]], + ['simplex_5fconstrain',['simplex_constrain',['../classstan_1_1io_1_1reader.html#a1fa21fc736a271ff845ffddc5ecae125',1,'stan::io::reader::simplex_constrain(size_t k)'],['../classstan_1_1io_1_1reader.html#a8ee8c20266159e7ce8763c8014bf2899',1,'stan::io::reader::simplex_constrain(size_t k, T &lp)'],['../namespacestan_1_1prob.html#a34fe9ae8e8dcc7b4f619ffcdf2ac5387',1,'stan::prob::simplex_constrain(const Eigen::Matrix< T, Eigen::Dynamic, 1 > &y)'],['../namespacestan_1_1prob.html#a373ba2418f71147953238312e5bd6954',1,'stan::prob::simplex_constrain(const Eigen::Matrix< T, Eigen::Dynamic, 1 > &y, T &lp)']]], + ['simplex_5fdecl_5fr',['simplex_decl_r',['../structstan_1_1gm_1_1var__decls__grammar.html#a3fb24659ce9b09c18ac09acc4079510f',1,'stan::gm::var_decls_grammar']]], + ['simplex_5ffree',['simplex_free',['../namespacestan_1_1prob.html#a6703d995557396cc5fd013c6cd882327',1,'stan::prob']]], + ['simplex_5funconstrain',['simplex_unconstrain',['../classstan_1_1io_1_1writer.html#ae9bc049dd109093051e7db16aa18be56',1,'stan::io::writer']]], + ['simplex_5fvar_5fdecl',['simplex_var_decl',['../structstan_1_1gm_1_1simplex__var__decl.html#a7e1687968e4f300e3ebae4720065db42',1,'stan::gm::simplex_var_decl::simplex_var_decl()'],['../structstan_1_1gm_1_1simplex__var__decl.html#a9f61771cca77cde06b1e0723d4b8471a',1,'stan::gm::simplex_var_decl::simplex_var_decl(expression const &K, std::string const &name, std::vector< expression > const &dims)']]], + ['simplex_5fvar_5fdecl',['simplex_var_decl',['../structstan_1_1gm_1_1simplex__var__decl.html',1,'stan::gm']]], + ['sin',['sin',['../namespacestan_1_1agrad.html#a7b48feb9c99466a3be1efb1abc686779',1,'stan::agrad::sin(const var &a)'],['../namespacestan_1_1agrad.html#acd0120597292585e7729ba613fdbb42a',1,'stan::agrad::sin(const fvar< T > &x)']]], + ['sin_2ehpp',['sin.hpp',['../fwd_2functions_2sin_8hpp.html',1,'']]], + ['sin_2ehpp',['sin.hpp',['../rev_2functions_2sin_8hpp.html',1,'']]], + ['singleton_5fargument',['singleton_argument',['../classstan_1_1gm_1_1singleton__argument.html#af6cb0a5be1281e4f5e3c6889fa50eaa9',1,'stan::gm::singleton_argument::singleton_argument()'],['../classstan_1_1gm_1_1singleton__argument.html#a33f50fa7bdbeaf5e7bb2255d80b78945',1,'stan::gm::singleton_argument::singleton_argument(const std::string name)']]], + ['singleton_5fargument',['singleton_argument',['../classstan_1_1gm_1_1singleton__argument.html',1,'stan::gm']]], + ['singleton_5fargument_2ehpp',['singleton_argument.hpp',['../singleton__argument_8hpp.html',1,'']]], + ['singular_5fvalues',['singular_values',['../namespacestan_1_1math.html#a204f15e3685b2c610ca2c0c80a3005d5',1,'stan::math']]], + ['singular_5fvalues_2ehpp',['singular_values.hpp',['../singular__values_8hpp.html',1,'']]], + ['sinh',['sinh',['../namespacestan_1_1agrad.html#afac6cdf77cc95b678ffde768754810e5',1,'stan::agrad::sinh(const var &a)'],['../namespacestan_1_1agrad.html#a6d1505ab5904db650f5d478a09beb7dc',1,'stan::agrad::sinh(const fvar< T > &x)']]], + ['sinh_2ehpp',['sinh.hpp',['../fwd_2functions_2sinh_8hpp.html',1,'']]], + ['sinh_2ehpp',['sinh.hpp',['../rev_2functions_2sinh_8hpp.html',1,'']]], + ['size',['size',['../classstan_1_1agrad_1_1op__matrix__vari.html#a6611078e47e0bb3d017e78e29f194036',1,'stan::agrad::op_matrix_vari::size()'],['../classstan_1_1agrad_1_1op__vector__vari.html#af0560b5a659dae6c49afae0b3657e8f2',1,'stan::agrad::op_vector_vari::size()'],['../classstan_1_1math_1_1seq__view.html#ab20467423ddb3b3e45513abb8e4a21d3',1,'stan::math::seq_view::size()'],['../classstan_1_1math_1_1seq__view_3_01_t_00_01_eigen_1_1_matrix_3_01_s_00_01_eigen_1_1_dynamic_00_011_01_4_01_4.html#a3284abfb2471ad555d43a8693658c5ec',1,'stan::math::seq_view< T, Eigen::Matrix< S, Eigen::Dynamic, 1 > >::size()'],['../classstan_1_1math_1_1seq__view_3_01_t_00_01_eigen_1_1_matrix_3_01_s_00_011_00_01_eigen_1_1_dynamic_01_4_01_4.html#a8c830a8c9c9c431a71a89cf4b996b27e',1,'stan::math::seq_view< T, Eigen::Matrix< S, 1, Eigen::Dynamic > >::size()'],['../classstan_1_1math_1_1seq__view_3_01_t_00_01_eigen_1_1_matrix_3_01_s_00_01_eigen_1_1_dynamic_00_01_eigen_1_1_dynamic_01_4_01_4.html#a07185ddaf17963a5724ddc2c62208922',1,'stan::math::seq_view< T, Eigen::Matrix< S, Eigen::Dynamic, Eigen::Dynamic > >::size()'],['../classstan_1_1math_1_1seq__view_3_01_t_00_01std_1_1vector_3_01_s_01_4_01_4.html#a3a6031049d11ce5429727dcbe5e29130',1,'stan::math::seq_view< T, std::vector< S > >::size()'],['../classstan_1_1math_1_1seq__view_3_01_t_00_01std_1_1vector_3_01_t_01_4_01_4.html#a3f616444293b86fdb17272494c88cc4c',1,'stan::math::seq_view< T, std::vector< T > >::size()'],['../classstan_1_1math_1_1seq__view_3_01_t_00_01std_1_1vector_3_01std_1_1vector_3_01_t_01_4_01_4_01_4.html#ab81a7a5c2de89631c7aec2ab701854a1',1,'stan::math::seq_view< T, std::vector< std::vector< T > > >::size()'],['../classstan_1_1math_1_1seq__view_3_01double_00_01std_1_1vector_3_01int_01_4_01_4.html#af56447dd766a3a5a9d6c97b0a2de9563',1,'stan::math::seq_view< double, std::vector< int > >::size()'],['../namespacestan_1_1math.html#aa1f9966aade9c4515d33d3ffa7305462',1,'stan::math::size()']]], + ['size_2ehpp',['size.hpp',['../size_8hpp.html',1,'']]], + ['size_5f',['size_',['../classstan_1_1agrad_1_1op__matrix__vari.html#acb63d498d5e4c7008bc2fd5407bf37cf',1,'stan::agrad::op_matrix_vari::size_()'],['../classstan_1_1agrad_1_1op__vector__vari.html#a71e9b994ff0ea34aa6ea109365e9ca27',1,'stan::agrad::op_vector_vari::size_()'],['../classstan_1_1agrad_1_1stored__gradient__vari.html#ae0a8a41b1a8e68d294cecb3ef46692e9',1,'stan::agrad::stored_gradient_vari::size_()'],['../agrad_2rev_2matrix_2dot__self_8hpp.html#a5f31775800bbb46b35b5791def1f3acc',1,'size_(): dot_self.hpp'],['../agrad_2rev_2matrix_2log__softmax_8hpp.html#a50218915641ec8f39877c2565e95a604',1,'size_(): log_softmax.hpp'],['../agrad_2rev_2matrix_2softmax_8hpp.html#a50218915641ec8f39877c2565e95a604',1,'size_(): softmax.hpp']]], + ['size_5fcont',['size_cont',['../classstan_1_1mcmc_1_1sample.html#aadbb128a85fb6d72df04d3097acfc3e5',1,'stan::mcmc::sample']]], + ['size_5fof',['size_of',['../structstan_1_1size__of__helper.html#a8f7056983b7948acf66a2e8b3e37e855',1,'stan::size_of_helper::size_of()'],['../structstan_1_1size__of__helper_3_01_t_00_01true_01_4.html#af0810fc0270af209916e67d5defe4b7d',1,'stan::size_of_helper< T, true >::size_of()'],['../namespacestan.html#a4741beaf7ec88631fd2735cadf05365f',1,'stan::size_of()']]], + ['size_5fof_5fhelper',['size_of_helper',['../structstan_1_1size__of__helper.html',1,'stan']]], + ['size_5fof_5fhelper_3c_20t_2c_20true_20_3e',['size_of_helper< T, true >',['../structstan_1_1size__of__helper_3_01_t_00_01true_01_4.html',1,'stan']]], + ['size_5ftype',['size_type',['../classstan_1_1math_1_1_l_d_l_t__factor_3_01stan_1_1agrad_1_1var_00_01_r_00_01_c_01_4.html#ad21eca557d202a3f2f1db369f08afb89',1,'stan::math::LDLT_factor< stan::agrad::var, R, C >::size_type()'],['../classstan_1_1math_1_1_l_d_l_t__factor_3_01double_00_01_r_00_01_c_01_4.html#a226a632082480f5715a8ef2979719fa1',1,'stan::math::LDLT_factor< double, R, C >::size_type()'],['../namespacestan_1_1agrad.html#aeae9e6e94d5656d748136a7c4780856e',1,'stan::agrad::size_type()'],['../namespacestan_1_1math.html#aa29284c242450c2000920599105e4eb0',1,'stan::math::size_type()']]], + ['skew_5fnormal_2ehpp',['skew_normal.hpp',['../skew__normal_8hpp.html',1,'']]], + ['skew_5fnormal_5fccdf_5flog',['skew_normal_ccdf_log',['../namespacestan_1_1prob.html#a9b9d2a0cb044b4683b8ebc1f5664067a',1,'stan::prob']]], + ['skew_5fnormal_5fcdf',['skew_normal_cdf',['../namespacestan_1_1prob.html#af883c9ea717a01e7835a5071cfb132bd',1,'stan::prob']]], + ['skew_5fnormal_5fcdf_5flog',['skew_normal_cdf_log',['../namespacestan_1_1prob.html#aa702b78d553fccea5853eb3fad971200',1,'stan::prob']]], + ['skew_5fnormal_5flog',['skew_normal_log',['../namespacestan_1_1prob.html#aa490430040824f21c59eb415f0b77051',1,'stan::prob::skew_normal_log(const T_y &y, const T_loc &mu, const T_scale &sigma, const T_shape &alpha)'],['../namespacestan_1_1prob.html#a72d94de0c6230acb70815802bddf5587',1,'stan::prob::skew_normal_log(const T_y &y, const T_loc &mu, const T_scale &sigma, const T_shape &alpha)']]], + ['skew_5fnormal_5frng',['skew_normal_rng',['../namespacestan_1_1prob.html#ad193097bedddda283ba854e2ddcd6013',1,'stan::prob']]], + ['softmax',['softmax',['../namespacestan_1_1agrad.html#afb1b8b97d1a6b36f59618a80a9c3778d',1,'stan::agrad::softmax(const Eigen::Matrix< fvar< T >, Eigen::Dynamic, 1 > &alpha)'],['../namespacestan_1_1agrad.html#a611391662c0928a68fa23be96188a49d',1,'stan::agrad::softmax(const Eigen::Matrix< var, Eigen::Dynamic, 1 > &alpha)'],['../namespacestan_1_1math.html#a724679c01caa9ae44c146fe8019ddcf6',1,'stan::math::softmax()']]], + ['softmax_2ehpp',['softmax.hpp',['../agrad_2fwd_2matrix_2softmax_8hpp.html',1,'']]], + ['softmax_2ehpp',['softmax.hpp',['../agrad_2rev_2matrix_2softmax_8hpp.html',1,'']]], + ['softmax_2ehpp',['softmax.hpp',['../math_2matrix_2softmax_8hpp.html',1,'']]], + ['softmax_5falpha_5f',['softmax_alpha_',['../agrad_2rev_2matrix_2log__softmax_8hpp.html#a1e7fc23c4da87820ad49b66444825c34',1,'softmax_alpha_(): log_softmax.hpp'],['../agrad_2rev_2matrix_2softmax_8hpp.html#a1e7fc23c4da87820ad49b66444825c34',1,'softmax_alpha_(): softmax.hpp']]], + ['software',['SOFTWARE',['../structstan_1_1gm_1_1error__codes.html#aa63873e8f7e9dd7f8af3502e4003292fa9924bc6241a8d380961bb3d9bc8dba92',1,'stan::gm::error_codes']]], + ['solve',['solve',['../classstan_1_1math_1_1_l_d_l_t__factor_3_01stan_1_1agrad_1_1var_00_01_r_00_01_c_01_4.html#a94d5fa0c327e9f55e1fc90734040c845',1,'stan::math::LDLT_factor< stan::agrad::var, R, C >::solve()'],['../classstan_1_1math_1_1_l_d_l_t__factor_3_01double_00_01_r_00_01_c_01_4.html#a1974a3e67f6d9aa1d1cdfe803a7aaaef',1,'stan::math::LDLT_factor< double, R, C >::solve()']]], + ['solveright',['solveRight',['../classstan_1_1math_1_1_l_d_l_t__factor_3_01double_00_01_r_00_01_c_01_4.html#aed238516181016209dbe39a879146092',1,'stan::math::LDLT_factor< double, R, C >']]], + ['sort_2ehpp',['sort.hpp',['../agrad_2fwd_2matrix_2sort_8hpp.html',1,'']]], + ['sort_2ehpp',['sort.hpp',['../agrad_2rev_2matrix_2sort_8hpp.html',1,'']]], + ['sort_2ehpp',['sort.hpp',['../math_2matrix_2sort_8hpp.html',1,'']]], + ['sort_5fasc',['sort_asc',['../namespacestan_1_1agrad.html#ad95245f78e0f8d52eb288842562fc4a4',1,'stan::agrad::sort_asc(std::vector< fvar< T > > xs)'],['../namespacestan_1_1agrad.html#a9ac1f0102b58f1e1a1dee468a383f27d',1,'stan::agrad::sort_asc(Eigen::Matrix< fvar< T >, R, C > xs)'],['../namespacestan_1_1agrad.html#a9eb00d0b49af47ecd65373ef59ae1640',1,'stan::agrad::sort_asc(std::vector< var > xs)'],['../namespacestan_1_1agrad.html#a64d1e2a0f135d1ce0a1e1f4e768bc8e5',1,'stan::agrad::sort_asc(Eigen::Matrix< var, R, C > xs)'],['../namespacestan_1_1math.html#a80f5418b16ea26e9bc6d2a8f9b764897',1,'stan::math::sort_asc(std::vector< T > xs)'],['../namespacestan_1_1math.html#aea0d013ec0a699e61dd74f32aa722fa0',1,'stan::math::sort_asc(Eigen::Matrix< T, R, C > xs)']]], + ['sort_5fdesc',['sort_desc',['../namespacestan_1_1agrad.html#abcc2609354cc5a38ad45c3b0a656e63f',1,'stan::agrad::sort_desc(std::vector< fvar< T > > xs)'],['../namespacestan_1_1agrad.html#a77b9ed0b3272b0bf9623fe31b69bc965',1,'stan::agrad::sort_desc(Eigen::Matrix< fvar< T >, R, C > xs)'],['../namespacestan_1_1agrad.html#acdf543712f8bac6eb1b7dff1eae7c3c6',1,'stan::agrad::sort_desc(std::vector< var > xs)'],['../namespacestan_1_1agrad.html#a41cc77adf1c2cb5df2034d8d94da39da',1,'stan::agrad::sort_desc(Eigen::Matrix< var, R, C > xs)'],['../namespacestan_1_1math.html#ab0b2712eab9b95535c0589455ed11cfc',1,'stan::math::sort_desc(std::vector< T > xs)'],['../namespacestan_1_1math.html#a13ae8cd1155e8c4c684efb4405a1e277',1,'stan::math::sort_desc(Eigen::Matrix< T, R, C > xs)']]], + ['split_5farg',['split_arg',['../classstan_1_1gm_1_1argument.html#ab68a5c3e2ba856a6717ffe71b7968f53',1,'stan::gm::argument']]], + ['split_5fpotential_5fscale_5freduction',['split_potential_scale_reduction',['../classstan_1_1mcmc_1_1chains.html#aff7e664bd9451e0854d65bd8c4a6aa9d',1,'stan::mcmc::chains::split_potential_scale_reduction(const int index)'],['../classstan_1_1mcmc_1_1chains.html#a2ae7c29a53d548f408ddc9a9d894d767',1,'stan::mcmc::chains::split_potential_scale_reduction(const std::string &name)']]], + ['sqrt',['sqrt',['../namespacestan_1_1agrad.html#a14e7c78163cf5677786955053de27a98',1,'stan::agrad::sqrt(const var &a)'],['../namespacestan_1_1agrad.html#af7d52e77074ba94b4485cc33f8f637df',1,'stan::agrad::sqrt(const fvar< T > &x)']]], + ['sqrt_2ehpp',['sqrt.hpp',['../fwd_2functions_2sqrt_8hpp.html',1,'']]], + ['sqrt_2ehpp',['sqrt.hpp',['../rev_2functions_2sqrt_8hpp.html',1,'']]], + ['sqrt2',['sqrt2',['../namespacestan_1_1math.html#a1369f60a09e3af4933096de3a54ac28c',1,'stan::math']]], + ['sqrt_5f2',['SQRT_2',['../namespacestan_1_1math.html#a491d6e40aaa2a3e205ea6708dc3c75dd',1,'stan::math']]], + ['square',['square',['../namespacestan_1_1agrad.html#a5de00b0d86ae64136a4952a28f9bd84f',1,'stan::agrad::square(const fvar< T > &x)'],['../namespacestan_1_1agrad.html#a18783225f7d6895849af12dd12b305bf',1,'stan::agrad::square(const var &x)'],['../namespacestan_1_1math.html#a056b82f11f784f321bce2c5677089e24',1,'stan::math::square()']]], + ['square_2ehpp',['square.hpp',['../agrad_2fwd_2functions_2square_8hpp.html',1,'']]], + ['square_2ehpp',['square.hpp',['../agrad_2rev_2functions_2square_8hpp.html',1,'']]], + ['square_2ehpp',['square.hpp',['../math_2functions_2square_8hpp.html',1,'']]], + ['squared_5fdistance',['squared_distance',['../namespacestan_1_1agrad.html#a8f9d3b07b865ebc8bed53892db695f36',1,'stan::agrad::squared_distance(const Eigen::Matrix< var, R1, C1 > &v1, const Eigen::Matrix< var, R2, C2 > &v2)'],['../namespacestan_1_1agrad.html#a431c8d9ee7789f210ec61246013df4ea',1,'stan::agrad::squared_distance(const Eigen::Matrix< var, R1, C1 > &v1, const Eigen::Matrix< double, R2, C2 > &v2)'],['../namespacestan_1_1agrad.html#a2d990c45fff084820acb757b90fabaa7',1,'stan::agrad::squared_distance(const Eigen::Matrix< double, R1, C1 > &v1, const Eigen::Matrix< var, R2, C2 > &v2)'],['../namespacestan_1_1math.html#a472573d1349d235dcdb501576ef66d15',1,'stan::math::squared_distance()']]], + ['squared_5fdistance_2ehpp',['squared_distance.hpp',['../agrad_2rev_2matrix_2squared__distance_8hpp.html',1,'']]], + ['squared_5fdistance_2ehpp',['squared_distance.hpp',['../math_2matrix_2squared__distance_8hpp.html',1,'']]], + ['stack_5falloc',['stack_alloc',['../classstan_1_1memory_1_1stack__alloc.html#a3da167b8f4f9bd981f948ac03c29604b',1,'stan::memory::stack_alloc']]], + ['stack_5falloc',['stack_alloc',['../classstan_1_1memory_1_1stack__alloc.html',1,'stan::memory']]], + ['stack_5falloc_2ehpp',['stack_alloc.hpp',['../stack__alloc_8hpp.html',1,'']]], + ['stage_5f',['stage_',['../structstan_1_1gm_1_1var__size__validating__visgen.html#ae878013c66844f15680c8748629f51b7',1,'stan::gm::var_size_validating_visgen']]], + ['stan',['stan',['../namespacestan.html',1,'']]], + ['stan_2edox',['stan.dox',['../stan_8dox.html',1,'']]], + ['stan_5fcsv',['stan_csv',['../structstan_1_1io_1_1stan__csv.html',1,'stan::io']]], + ['stan_5fcsv_5fadaptation',['stan_csv_adaptation',['../structstan_1_1io_1_1stan__csv__adaptation.html#a80dd57392300524f88f68f09959a1918',1,'stan::io::stan_csv_adaptation']]], + ['stan_5fcsv_5fadaptation',['stan_csv_adaptation',['../structstan_1_1io_1_1stan__csv__adaptation.html',1,'stan::io']]], + ['stan_5fcsv_5fmetadata',['stan_csv_metadata',['../structstan_1_1io_1_1stan__csv__metadata.html#abb84cf3a6ecfaceb2fe108180e9897eb',1,'stan::io::stan_csv_metadata']]], + ['stan_5fcsv_5fmetadata',['stan_csv_metadata',['../structstan_1_1io_1_1stan__csv__metadata.html',1,'stan::io']]], + ['stan_5fcsv_5freader',['stan_csv_reader',['../classstan_1_1io_1_1stan__csv__reader.html',1,'stan::io']]], + ['stan_5fcsv_5freader',['stan_csv_reader',['../classstan_1_1io_1_1stan__csv__reader.html#a959ed39477ffd99a18b8ee217f6ad457',1,'stan::io::stan_csv_reader']]], + ['stan_5fcsv_5freader_2ehpp',['stan_csv_reader.hpp',['../stan__csv__reader_8hpp.html',1,'']]], + ['stan_5fcsv_5ftiming',['stan_csv_timing',['../structstan_1_1io_1_1stan__csv__timing.html#acbab41cb7a74d799bafda67688bf3e8e',1,'stan::io::stan_csv_timing']]], + ['stan_5fcsv_5ftiming',['stan_csv_timing',['../structstan_1_1io_1_1stan__csv__timing.html',1,'stan::io']]], + ['stan_5fprint',['stan_print',['../namespacestan_1_1agrad.html#a0d1d06f46e761f9f0fbcf078b6e6208e',1,'stan::agrad::stan_print()'],['../namespacestan_1_1math.html#a7c14b7fd70050f03a07fdf73a1df06d2',1,'stan::math::stan_print(std::ostream *o, const T &x)'],['../namespacestan_1_1math.html#a37cb2d874adcc950cb0439af044f549f',1,'stan::math::stan_print(std::ostream *o, const std::vector< T > &x)'],['../namespacestan_1_1math.html#ae94f7170ee85d4b353f55e3a044d2345',1,'stan::math::stan_print(std::ostream *o, const Eigen::Matrix< T, Eigen::Dynamic, 1 > &x)'],['../namespacestan_1_1math.html#ad9c9057d71cf2795d0042f665c0f89c1',1,'stan::math::stan_print(std::ostream *o, const Eigen::Matrix< T, 1, Eigen::Dynamic > &x)'],['../namespacestan_1_1math.html#adffa61a0521d0c07b8c4cd7ccbbb4aca',1,'stan::math::stan_print(std::ostream *o, const Eigen::Matrix< T, Eigen::Dynamic, Eigen::Dynamic > &x)']]], + ['stan_5fprint_2ehpp',['stan_print.hpp',['../agrad_2rev_2matrix_2stan__print_8hpp.html',1,'']]], + ['stan_5fprint_2ehpp',['stan_print.hpp',['../math_2matrix_2stan__print_8hpp.html',1,'']]], + ['stan_5fversion_5fmajor',['stan_version_major',['../structstan_1_1io_1_1stan__csv__metadata.html#a8f6f94ea53c82fcb9269a649066af0dc',1,'stan::io::stan_csv_metadata']]], + ['stan_5fversion_5fminor',['stan_version_minor',['../structstan_1_1io_1_1stan__csv__metadata.html#a259cf0626d25c32dc03b82fc4cd1f08a',1,'stan::io::stan_csv_metadata']]], + ['stan_5fversion_5fpatch',['stan_version_patch',['../structstan_1_1io_1_1stan__csv__metadata.html#a05c438d9a575f0d8b5326cde887c51ad',1,'stan::io::stan_csv_metadata']]], + ['stanc_2ecpp',['stanc.cpp',['../stanc_8cpp.html',1,'']]], + ['stanc_5fhelper',['stanc_helper',['../stanc__helper_8hpp.html#a6285d39574513b78cafc494a8f614852',1,'stanc_helper.hpp']]], + ['stanc_5fhelper_2ehpp',['stanc_helper.hpp',['../stanc__helper_8hpp.html',1,'']]], + ['statement',['statement',['../structstan_1_1gm_1_1statement.html',1,'stan::gm']]], + ['statement',['statement',['../structstan_1_1gm_1_1statement.html#abe28b81d5ca623dfbee35480dd7aed2e',1,'stan::gm::statement::statement()'],['../structstan_1_1gm_1_1statement.html#ab5dc6d05e69a9d8443a05edbca545446',1,'stan::gm::statement::statement(const statement_t &st)'],['../structstan_1_1gm_1_1statement.html#ad9eb67ce544f05bb158d1d660537d22d',1,'stan::gm::statement::statement(const nil &st)'],['../structstan_1_1gm_1_1statement.html#a7edde6e19d06ecabc83b4d0b20287f8c',1,'stan::gm::statement::statement(const assignment &st)'],['../structstan_1_1gm_1_1statement.html#af2e6691a2c9b6ebe50a2980782077a14',1,'stan::gm::statement::statement(const sample &st)'],['../structstan_1_1gm_1_1statement.html#ac61a640e5137d6644f0e6a4f2cf5a0f6',1,'stan::gm::statement::statement(const increment_log_prob_statement &st)'],['../structstan_1_1gm_1_1statement.html#a87f9d00e9b62804b5022958df5ba12df',1,'stan::gm::statement::statement(const expression &st)'],['../structstan_1_1gm_1_1statement.html#adcfaa1a8e2045291440780abf58f7203',1,'stan::gm::statement::statement(const statements &st)'],['../structstan_1_1gm_1_1statement.html#aee6de7e7d5063346e281a197ba3054c9',1,'stan::gm::statement::statement(const for_statement &st)'],['../structstan_1_1gm_1_1statement.html#a9326bcbb2bfbc31fe3bf8e5295496dac',1,'stan::gm::statement::statement(const conditional_statement &st)'],['../structstan_1_1gm_1_1statement.html#ac5c288cb0c748f276f04694c182cd612',1,'stan::gm::statement::statement(const while_statement &st)'],['../structstan_1_1gm_1_1statement.html#ab17da65c74a3282835af18dccd20d5cd',1,'stan::gm::statement::statement(const print_statement &st)'],['../structstan_1_1gm_1_1statement.html#ae88961e04050f67fdf34a6a5b1b872b9',1,'stan::gm::statement::statement(const no_op_statement &st)']]], + ['statement_5f',['statement_',['../structstan_1_1gm_1_1statement.html#a42dac92fef21d4502828e531cc6ea4b9',1,'stan::gm::statement::statement_()'],['../structstan_1_1gm_1_1for__statement.html#a88a12e92114b27b638669beb3a4fa795',1,'stan::gm::for_statement::statement_()'],['../structstan_1_1gm_1_1program.html#a68db9c547c8a9a585860305efa83ee38',1,'stan::gm::program::statement_()']]], + ['statement_5f2_5fg',['statement_2_g',['../structstan_1_1gm_1_1statement__grammar.html#a711cbab281b543290a3efa6012ef39c1',1,'stan::gm::statement_grammar']]], + ['statement_5f2_5fgrammar',['statement_2_grammar',['../structstan_1_1gm_1_1statement__2__grammar.html',1,'stan::gm']]], + ['statement_5f2_5fgrammar',['statement_2_grammar',['../structstan_1_1gm_1_1statement__2__grammar.html#a124bb789c4c06388a498dffc981b1726',1,'stan::gm::statement_2_grammar']]], + ['statement_5f2_5fgrammar_2ehpp',['statement_2_grammar.hpp',['../statement__2__grammar_8hpp.html',1,'']]], + ['statement_5f2_5fgrammar_5fdef_2ehpp',['statement_2_grammar_def.hpp',['../statement__2__grammar__def_8hpp.html',1,'']]], + ['statement_5f2_5fgrammar_5finst_2ecpp',['statement_2_grammar_inst.cpp',['../statement__2__grammar__inst_8cpp.html',1,'']]], + ['statement_5f2_5fr',['statement_2_r',['../structstan_1_1gm_1_1statement__2__grammar.html#ade56d3d85cad306fb8a918671335bc26',1,'stan::gm::statement_2_grammar']]], + ['statement_5fg',['statement_g',['../structstan_1_1gm_1_1program__grammar.html#adac531fa3a2b1db28c4ae98e90af0a2b',1,'stan::gm::program_grammar::statement_g()'],['../structstan_1_1gm_1_1statement__2__grammar.html#a71b74b870a48887d16af27eb90154492',1,'stan::gm::statement_2_grammar::statement_g()']]], + ['statement_5fgrammar',['statement_grammar',['../structstatement__grammar.html',1,'statement_grammar< Iterator >'],['../structstan_1_1gm_1_1statement__grammar.html#af39ce5043643ec014ef8f16ed32fa9a8',1,'stan::gm::statement_grammar::statement_grammar()']]], + ['statement_5fgrammar',['statement_grammar',['../structstan_1_1gm_1_1statement__grammar.html',1,'stan::gm']]], + ['statement_5fgrammar_2ehpp',['statement_grammar.hpp',['../statement__grammar_8hpp.html',1,'']]], + ['statement_5fgrammar_5fdef_2ehpp',['statement_grammar_def.hpp',['../statement__grammar__def_8hpp.html',1,'']]], + ['statement_5fgrammar_5finst_2ecpp',['statement_grammar_inst.cpp',['../statement__grammar__inst_8cpp.html',1,'']]], + ['statement_5fr',['statement_r',['../structstan_1_1gm_1_1statement__grammar.html#af25706af04c4ddca423562a701a693a3',1,'stan::gm::statement_grammar']]], + ['statement_5fseq_5fr',['statement_seq_r',['../structstan_1_1gm_1_1statement__grammar.html#a041b22f44ddbc558223b1ffeae95bbb9',1,'stan::gm::statement_grammar']]], + ['statement_5ft',['statement_t',['../structstan_1_1gm_1_1statement.html#ab5c314341c7dd06f32786185b5689314',1,'stan::gm::statement']]], + ['statement_5fvisgen',['statement_visgen',['../structstan_1_1gm_1_1statement__visgen.html#a5b426890ad86afc18588037d3acd1cdf',1,'stan::gm::statement_visgen']]], + ['statement_5fvisgen',['statement_visgen',['../structstan_1_1gm_1_1statement__visgen.html',1,'stan::gm']]], + ['statements',['statements',['../structstan_1_1gm_1_1statements.html#aa4e43d906c204aacbd111474d080c466',1,'stan::gm::statements::statements()'],['../structstan_1_1gm_1_1statements.html#afd82e89ed40745f135579777e52e2277',1,'stan::gm::statements::statements(const std::vector< var_decl > &local_decl, const std::vector< statement > &stmts)']]], + ['statements',['statements',['../structstan_1_1gm_1_1statements.html',1,'stan::gm']]], + ['statements_5f',['statements_',['../structstan_1_1gm_1_1statements.html#a4de24354bdefdcf2b482150027a4b841',1,'stan::gm::statements']]], + ['std',['std',['../namespacestd.html',1,'']]], + ['std_2edox',['std.dox',['../std_8dox.html',1,'']]], + ['std_5fvector',['std_vector',['../classstan_1_1io_1_1reader.html#a72a39fbd649e5be85b0f20ac00721c35',1,'stan::io::reader']]], + ['step',['step',['../classstan_1_1optimization_1_1_b_f_g_s_minimizer.html#adfa1ece56a78fbd805212d31179da105',1,'stan::optimization::BFGSMinimizer::step()'],['../classstan_1_1optimization_1_1_nesterov_gradient.html#af3e12bb8b1db3c38fcbd359f6c7f5bc9',1,'stan::optimization::NesterovGradient::step()'],['../namespacestan_1_1agrad.html#a40c71c5396dbbbbcee5a8ae890345060',1,'stan::agrad::step()'],['../namespacestan_1_1math.html#a8fdc5e5ba8e306c2a594e928bfd62ea2',1,'stan::math::step()']]], + ['step_2ehpp',['step.hpp',['../math_2functions_2step_8hpp.html',1,'']]], + ['step_2ehpp',['step.hpp',['../agrad_2rev_2functions_2step_8hpp.html',1,'']]], + ['step_5fsize',['step_size',['../structstan_1_1io_1_1stan__csv__adaptation.html#ac3cef3b693c2834695a9d7f6e21614f7',1,'stan::io::stan_csv_adaptation']]], + ['stepsize_5fadaptation',['stepsize_adaptation',['../classstan_1_1mcmc_1_1stepsize__adaptation.html#a288d386b790bc25abc7a2b7f93bddb00',1,'stan::mcmc::stepsize_adaptation']]], + ['stepsize_5fadaptation',['stepsize_adaptation',['../classstan_1_1mcmc_1_1stepsize__adaptation.html',1,'stan::mcmc']]], + ['stepsize_5fadaptation_2ehpp',['stepsize_adaptation.hpp',['../stepsize__adaptation_8hpp.html',1,'']]], + ['stepsize_5fadapter',['stepsize_adapter',['../classstan_1_1mcmc_1_1stepsize__adapter.html',1,'stan::mcmc']]], + ['stepsize_5fadapter',['stepsize_adapter',['../classstan_1_1mcmc_1_1stepsize__adapter.html#a36b5d0fb4a2d8bb3025b4104a29f6068',1,'stan::mcmc::stepsize_adapter']]], + ['stepsize_5fadapter_2ehpp',['stepsize_adapter.hpp',['../stepsize__adapter_8hpp.html',1,'']]], + ['stepsize_5fcovar_5fadapter',['stepsize_covar_adapter',['../classstan_1_1mcmc_1_1stepsize__covar__adapter.html',1,'stan::mcmc']]], + ['stepsize_5fcovar_5fadapter',['stepsize_covar_adapter',['../classstan_1_1mcmc_1_1stepsize__covar__adapter.html#a9aba8c876cb1207ce110ae95e90308e9',1,'stan::mcmc::stepsize_covar_adapter']]], + ['stepsize_5fcovar_5fadapter_2ehpp',['stepsize_covar_adapter.hpp',['../stepsize__covar__adapter_8hpp.html',1,'']]], + ['stepsize_5fvar_5fadapter',['stepsize_var_adapter',['../classstan_1_1mcmc_1_1stepsize__var__adapter.html',1,'stan::mcmc']]], + ['stepsize_5fvar_5fadapter',['stepsize_var_adapter',['../classstan_1_1mcmc_1_1stepsize__var__adapter.html#a1599b792341a655efeeebadf15c08d63',1,'stan::mcmc::stepsize_var_adapter']]], + ['stepsize_5fvar_5fadapter_2ehpp',['stepsize_var_adapter.hpp',['../stepsize__var__adapter_8hpp.html',1,'']]], + ['store_5ftype',['store_type',['../structstan_1_1math_1_1store__type.html',1,'stan::math']]], + ['store_5ftype_3c_20double_20_3e',['store_type< double >',['../structstan_1_1math_1_1store__type_3_01double_01_4.html',1,'stan::math']]], + ['store_5ftype_3c_20eigen_3a_3amatrix_3c_20s_2c_201_2c_20eigen_3a_3adynamic_20_3e_20_3e',['store_type< Eigen::Matrix< S, 1, Eigen::Dynamic > >',['../structstan_1_1math_1_1store__type.html',1,'stan::math']]], + ['store_5ftype_3c_20eigen_3a_3amatrix_3c_20s_2c_20eigen_3a_3adynamic_2c_201_20_3e_20_3e',['store_type< Eigen::Matrix< S, Eigen::Dynamic, 1 > >',['../structstan_1_1math_1_1store__type.html',1,'stan::math']]], + ['store_5ftype_3c_20eigen_3a_3amatrix_3c_20s_2c_20eigen_3a_3adynamic_2c_20eigen_3a_3adynamic_20_3e_20_3e',['store_type< Eigen::Matrix< S, Eigen::Dynamic, Eigen::Dynamic > >',['../structstan_1_1math_1_1store__type.html',1,'stan::math']]], + ['store_5ftype_3c_20int_20_3e',['store_type< int >',['../structstan_1_1math_1_1store__type_3_01int_01_4.html',1,'stan::math']]], + ['store_5ftype_3c_20s_20_3e',['store_type< S >',['../structstan_1_1math_1_1store__type.html',1,'stan::math']]], + ['store_5ftype_3c_20std_3a_3avector_3c_20int_20_3e_20_3e',['store_type< std::vector< int > >',['../structstan_1_1math_1_1store__type.html',1,'stan::math']]], + ['store_5ftype_3c_20std_3a_3avector_3c_20s_20_3e_20_3e',['store_type< std::vector< S > >',['../structstan_1_1math_1_1store__type.html',1,'stan::math']]], + ['store_5ftype_3c_20std_3a_3avector_3c_20std_3a_3avector_3c_20t_20_3e_20_3e_20_3e',['store_type< std::vector< std::vector< T > > >',['../structstan_1_1math_1_1store__type.html',1,'stan::math']]], + ['store_5ftype_3c_20std_3a_3avector_3c_20t_20_3e_20_3e',['store_type< std::vector< T > >',['../structstan_1_1math_1_1store__type.html',1,'stan::math']]], + ['stored_5fgradient_5fvari',['stored_gradient_vari',['../classstan_1_1agrad_1_1stored__gradient__vari.html#af779bcf6d92cccf16672907758f5bedc',1,'stan::agrad::stored_gradient_vari']]], + ['stored_5fgradient_5fvari',['stored_gradient_vari',['../classstan_1_1agrad_1_1stored__gradient__vari.html',1,'stan::agrad']]], + ['stored_5fgradient_5fvari_2ehpp',['stored_gradient_vari.hpp',['../stored__gradient__vari_8hpp.html',1,'']]], + ['string_5fargument',['string_argument',['../namespacestan_1_1gm.html#ae180adbeec14bbafaf3c7634061c614d',1,'stan::gm']]], + ['student_5ft_2ehpp',['student_t.hpp',['../student__t_8hpp.html',1,'']]], + ['student_5ft_5fccdf_5flog',['student_t_ccdf_log',['../namespacestan_1_1prob.html#a927a64a2497df7302ae7fa9098e65546',1,'stan::prob']]], + ['student_5ft_5fcdf',['student_t_cdf',['../namespacestan_1_1prob.html#a19cc3cf5b600b92144c79356c0e879fc',1,'stan::prob']]], + ['student_5ft_5fcdf_5flog',['student_t_cdf_log',['../namespacestan_1_1prob.html#aab514e4c15e40c36184b0291e3c2e814',1,'stan::prob']]], + ['student_5ft_5flog',['student_t_log',['../namespacestan_1_1prob.html#a72933c1b9a4eb2005d32e811ae124bd0',1,'stan::prob::student_t_log(const T_y &y, const T_dof &nu, const T_loc &mu, const T_scale &sigma)'],['../namespacestan_1_1prob.html#a9097e9dad2bbb017a14c491fa3750203',1,'stan::prob::student_t_log(const T_y &y, const T_dof &nu, const T_loc &mu, const T_scale &sigma)']]], + ['student_5ft_5frng',['student_t_rng',['../namespacestan_1_1prob.html#adb81f1474168ce77e5bb71ef3c7432d9',1,'stan::prob']]], + ['sub',['sub',['../namespacestan_1_1math.html#a9e4c5e5b76b18a41b28f646104b3cd46',1,'stan::math']]], + ['sub_2ehpp',['sub.hpp',['../sub_8hpp.html',1,'']]], + ['sub_5fcol',['sub_col',['../namespacestan_1_1math.html#a63cf32e07d51c4ebfe042dd452eeae14',1,'stan::math']]], + ['sub_5fcol_2ehpp',['sub_col.hpp',['../sub__col_8hpp.html',1,'']]], + ['sub_5frow',['sub_row',['../namespacestan_1_1math.html#aa1ea780efd8d0282dbf069f0776d727b',1,'stan::math']]], + ['sub_5frow_2ehpp',['sub_row.hpp',['../sub__row_8hpp.html',1,'']]], + ['subarguments',['subarguments',['../classstan_1_1gm_1_1categorical__argument.html#a5ca383118480518414b2b5b52bc42dfb',1,'stan::gm::categorical_argument']]], + ['subject',['subject',['../structstan_1_1gm_1_1unary__op.html#a2030562bec45cd179d0087e2760e606f',1,'stan::gm::unary_op']]], + ['subtract',['subtract',['../namespacestan_1_1math.html#a90c28e884c638ed67fa0c81ffc01e2d3',1,'stan::math::subtract(const Eigen::Matrix< T1, R, C > &m1, const Eigen::Matrix< T2, R, C > &m2)'],['../namespacestan_1_1math.html#a36726c055970205db893867a77e9d0a7',1,'stan::math::subtract(const T1 &c, const Eigen::Matrix< T2, R, C > &m)'],['../namespacestan_1_1math.html#a776789f307db599fddcda6a68c480557',1,'stan::math::subtract(const Eigen::Matrix< T1, R, C > &m, const T2 &c)']]], + ['subtract_2ehpp',['subtract.hpp',['../subtract_8hpp.html',1,'']]], + ['subtraction',['subtraction',['../namespacestan_1_1gm.html#abd39613c1505c278ec7a2cdcc009bbcb',1,'stan::gm']]], + ['subtraction_5fexpr',['subtraction_expr',['../structstan_1_1gm_1_1subtraction__expr.html',1,'stan::gm']]], + ['success',['success',['../classstan_1_1math_1_1_l_d_l_t__factor_3_01stan_1_1agrad_1_1var_00_01_r_00_01_c_01_4.html#aa9e011b37205e0bfa198c9f032d19edb',1,'stan::math::LDLT_factor< stan::agrad::var, R, C >::success()'],['../classstan_1_1math_1_1_l_d_l_t__factor_3_01double_00_01_r_00_01_c_01_4.html#a98215f2467d234354d398ec3e415dfce',1,'stan::math::LDLT_factor< double, R, C >::success()']]], + ['sum',['sum',['../classstan_1_1math_1_1accumulator.html#a289e9e869da8e29e78fa6c6c5bb9bddf',1,'stan::math::accumulator::sum()'],['../namespacestan_1_1agrad.html#a8baa11534c7cfb1b5e6f96bd958dfd03',1,'stan::agrad::sum(const Eigen::Matrix< fvar< T >, R, C > &m)'],['../namespacestan_1_1agrad.html#ad6c767cb7dcb4963f468cc5a2aa494ac',1,'stan::agrad::sum(const Eigen::Matrix< var, R, C > &m)'],['../namespacestan_1_1math.html#adde1fe0f002efa49cf9f7c129fe1a1d0',1,'stan::math::sum(std::vector< double > &x)'],['../namespacestan_1_1math.html#a1efee0b4f8879a114af50b7e9802745c',1,'stan::math::sum(const std::vector< T > &xs)'],['../namespacestan_1_1math.html#a44c32c2d7e895378feb11c99091765ad',1,'stan::math::sum(const Eigen::Matrix< T, R, C > &v)']]], + ['sum_2ehpp',['sum.hpp',['../agrad_2rev_2matrix_2sum_8hpp.html',1,'']]], + ['sum_2ehpp',['sum.hpp',['../math_2functions_2sum_8hpp.html',1,'']]], + ['sum_2ehpp',['sum.hpp',['../agrad_2fwd_2matrix_2sum_8hpp.html',1,'']]], + ['sum_2ehpp',['sum.hpp',['../math_2matrix_2sum_8hpp.html',1,'']]], + ['sum_5fprob',['sum_prob',['../structstan_1_1mcmc_1_1nuts__util.html#adf4917a8569f79ecd47cc4ebf443a102',1,'stan::mcmc::nuts_util']]], + ['suppress_5fwarning',['suppress_warning',['../namespacestan_1_1gm.html#a33ab69ad9d56b9d1c99d8808fd106648',1,'stan::gm']]] +]; diff --git a/doc/api/html/search/all_74.html b/doc/api/html/search/all_74.html new file mode 100644 index 00000000000..fdc6589d017 --- /dev/null +++ b/doc/api/html/search/all_74.html @@ -0,0 +1,25 @@ + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/doc/api/html/search/all_74.js b/doc/api/html/search/all_74.js new file mode 100644 index 00000000000..054df549e50 --- /dev/null +++ b/doc/api/html/search/all_74.js @@ -0,0 +1,89 @@ +var searchData= +[ + ['t',['T',['../classstan_1_1mcmc_1_1base__hamiltonian.html#a4f3adba6ad80e9b538e57bd655362eee',1,'stan::mcmc::base_hamiltonian::T()'],['../classstan_1_1mcmc_1_1dense__e__metric.html#a02cdb81d16115734815790a5dc5e6c90',1,'stan::mcmc::dense_e_metric::T()'],['../classstan_1_1mcmc_1_1diag__e__metric.html#a0a6a65c2291eac1e13ee48f4ed61f636',1,'stan::mcmc::diag_e_metric::T()'],['../classstan_1_1mcmc_1_1unit__e__metric.html#ae924e01d719ba1ccbaca6daff56f762a',1,'stan::mcmc::unit_e_metric::T()']]], + ['t_5f',['T_',['../classstan_1_1mcmc_1_1base__static__hmc.html#affe6fd6d44fea89db4bc396cc7f64fa9',1,'stan::mcmc::base_static_hmc']]], + ['tail',['tail',['../namespacestan_1_1math.html#ac5b2770a97397fc738125d70420393fb',1,'stan::math::tail(const Eigen::Matrix< T, Eigen::Dynamic, 1 > &v, size_t n)'],['../namespacestan_1_1math.html#a7ae4ee69ace75bb2fb216247ab8272ec',1,'stan::math::tail(const Eigen::Matrix< T, 1, Eigen::Dynamic > &rv, size_t n)'],['../namespacestan_1_1math.html#a9956cf78180c6340f61667e797cf7055',1,'stan::math::tail(const std::vector< T > &sv, size_t n)']]], + ['tail_2ehpp',['tail.hpp',['../tail_8hpp.html',1,'']]], + ['tan',['tan',['../namespacestan_1_1agrad.html#adbc956463e3d58643e2a10dd3b6fd00c',1,'stan::agrad::tan(const var &a)'],['../namespacestan_1_1agrad.html#a48c6154fdb08d77249c5fa5216d34e2f',1,'stan::agrad::tan(const fvar< T > &x)']]], + ['tan_2ehpp',['tan.hpp',['../rev_2functions_2tan_8hpp.html',1,'']]], + ['tan_2ehpp',['tan.hpp',['../fwd_2functions_2tan_8hpp.html',1,'']]], + ['tangent',['tangent',['../structstan_1_1agrad_1_1fvar.html#aa9f2f0107f7a9e3d92de38b615d22dd6',1,'stan::agrad::fvar']]], + ['tanh',['tanh',['../namespacestan_1_1agrad.html#a9e4ae39cc622b5388d16b971616da01d',1,'stan::agrad::tanh(const var &a)'],['../namespacestan_1_1agrad.html#ae56147f3f502e8436c2a02ed7d275128',1,'stan::agrad::tanh(const fvar< T > &x)']]], + ['tanh_2ehpp',['tanh.hpp',['../fwd_2functions_2tanh_8hpp.html',1,'']]], + ['tanh_2ehpp',['tanh.hpp',['../rev_2functions_2tanh_8hpp.html',1,'']]], + ['tau',['tau',['../classstan_1_1mcmc_1_1base__hamiltonian.html#a12c9833e59b1aa7455872ebffe0819ce',1,'stan::mcmc::base_hamiltonian::tau()'],['../classstan_1_1mcmc_1_1dense__e__metric.html#a80d1467817d80ee50aca96b4f5b85146',1,'stan::mcmc::dense_e_metric::tau()'],['../classstan_1_1mcmc_1_1diag__e__metric.html#ad8b4d7e8c1cdfb0b98520bc6b6b3c5a2',1,'stan::mcmc::diag_e_metric::tau()'],['../classstan_1_1mcmc_1_1unit__e__metric.html#a428fcc506d11bfc227125153ef3e87d4',1,'stan::mcmc::unit_e_metric::tau()']]], + ['tcrossprod',['tcrossprod',['../namespacestan_1_1agrad.html#afe68149651e5bbdab5c531bc82b0868e',1,'stan::agrad::tcrossprod(const Eigen::Matrix< fvar< T >, R, C > &m)'],['../namespacestan_1_1agrad.html#a756be37f5934ada1e12abec937e3d13b',1,'stan::agrad::tcrossprod(const matrix_v &M)'],['../namespacestan_1_1math.html#a16b07b3f7d18cdb710806c5793a83d31',1,'stan::math::tcrossprod()']]], + ['tcrossprod_2ehpp',['tcrossprod.hpp',['../agrad_2fwd_2matrix_2tcrossprod_8hpp.html',1,'']]], + ['tcrossprod_2ehpp',['tcrossprod.hpp',['../agrad_2rev_2matrix_2tcrossprod_8hpp.html',1,'']]], + ['tcrossprod_2ehpp',['tcrossprod.hpp',['../math_2matrix_2tcrossprod_8hpp.html',1,'']]], + ['term_5fg',['term_g',['../structstan_1_1gm_1_1expression__grammar.html#af321c7c9134b2e63ebdf52245d0358c5',1,'stan::gm::expression_grammar']]], + ['term_5fgrammar',['term_grammar',['../structterm__grammar.html',1,'term_grammar< Iterator >'],['../structterm__grammar.html',1,'term_grammar< Iterator >'],['../structstan_1_1gm_1_1term__grammar.html#a190b57b393dca19c78dbe5e8e88d4cba',1,'stan::gm::term_grammar::term_grammar()']]], + ['term_5fgrammar',['term_grammar',['../structstan_1_1gm_1_1term__grammar.html',1,'stan::gm']]], + ['term_5fgrammar_2ehpp',['term_grammar.hpp',['../term__grammar_8hpp.html',1,'']]], + ['term_5fgrammar_5fdef_2ehpp',['term_grammar_def.hpp',['../term__grammar__def_8hpp.html',1,'']]], + ['term_5fgrammar_5finst_2ecpp',['term_grammar_inst.cpp',['../term__grammar__inst_8cpp.html',1,'']]], + ['term_5fr',['term_r',['../structstan_1_1gm_1_1term__grammar.html#a2e84fd310e862d276ac7ea3f2b4b0ee3',1,'stan::gm::term_grammar']]], + ['test_5fgradients',['test_gradients',['../namespacestan_1_1model.html#a53b2d650c95140811fa1dee58bdfb0c4',1,'stan::model']]], + ['tgamma',['tgamma',['../namespacestan_1_1agrad.html#a1a5ceb1f1202bd9c910bb9a447ea12a4',1,'stan::agrad::tgamma(const fvar< T > &x)'],['../namespacestan_1_1agrad.html#ad3efbbe0949604d6a169864776508b5d',1,'stan::agrad::tgamma(const stan::agrad::var &a)']]], + ['tgamma_2ehpp',['tgamma.hpp',['../fwd_2functions_2tgamma_8hpp.html',1,'']]], + ['tgamma_2ehpp',['tgamma.hpp',['../rev_2functions_2tgamma_8hpp.html',1,'']]], + ['thin',['thin',['../structstan_1_1io_1_1stan__csv__metadata.html#afe9c15f7c7e774a40f83e3a7f24e4279',1,'stan::io::stan_csv_metadata']]], + ['timing',['timing',['../structstan_1_1io_1_1stan__csv.html#aeac96bfaa43c3d99db3972b6407394d7',1,'stan::io::stan_csv']]], + ['tinyness_5fbefore',['tinyness_before',['../structstd_1_1numeric__limits_3_01stan_1_1agrad_1_1fvar_3_01_t_01_4_01_4.html#a96cfd06162e299fdd889f865df8f88ec',1,'std::numeric_limits< stan::agrad::fvar< T > >::tinyness_before()'],['../structstd_1_1numeric__limits_3_01stan_1_1agrad_1_1var_01_4.html#a9dd41511966171dd188b4bb1f65b5911',1,'std::numeric_limits< stan::agrad::var >::tinyness_before()']]], + ['to_5ffvar',['to_fvar',['../namespacestan_1_1agrad.html#afd6883af022a54c60dd207c733917425',1,'stan::agrad::to_fvar(const T &x)'],['../namespacestan_1_1agrad.html#a88f3f805d72a977a680135249341f0e6',1,'stan::agrad::to_fvar(const fvar< T > &x)'],['../namespacestan_1_1agrad.html#a6a028d6aadad12e84b3a7a587458313d',1,'stan::agrad::to_fvar(const stan::math::matrix_d &m)'],['../namespacestan_1_1agrad.html#ab901750d171a340d359d4366ce18e920',1,'stan::agrad::to_fvar(const matrix_fd &m)'],['../namespacestan_1_1agrad.html#a8bf93f28ef32c8a01acee60bf3a86953',1,'stan::agrad::to_fvar(const matrix_fv &m)'],['../namespacestan_1_1agrad.html#ac33cf85a99591eab48c23e6243935827',1,'stan::agrad::to_fvar(const matrix_ffd &m)'],['../namespacestan_1_1agrad.html#aa5f13b4aac2e833fbc550adf15bbb89c',1,'stan::agrad::to_fvar(const matrix_ffv &m)'],['../namespacestan_1_1agrad.html#acb1b51857662ff7aceb7bf33e977fda2',1,'stan::agrad::to_fvar(const stan::math::vector_d &v)'],['../namespacestan_1_1agrad.html#ac5b829ba1d8c567a4ddc153e8e8deb28',1,'stan::agrad::to_fvar(const vector_fd &v)'],['../namespacestan_1_1agrad.html#af5034319341d60121260723636478ac1',1,'stan::agrad::to_fvar(const vector_fv &v)'],['../namespacestan_1_1agrad.html#af5fbf0e0b0386b87379bb330e9a97a3e',1,'stan::agrad::to_fvar(const vector_ffd &v)'],['../namespacestan_1_1agrad.html#ab7ee85577850baf2a033d4bcfb1bf630',1,'stan::agrad::to_fvar(const vector_ffv &v)'],['../namespacestan_1_1agrad.html#a795793505477543f5c1138585049d597',1,'stan::agrad::to_fvar(const stan::math::row_vector_d &rv)'],['../namespacestan_1_1agrad.html#a2f32b3cb37dc324f9dc3566aaf516a28',1,'stan::agrad::to_fvar(const row_vector_fd &rv)'],['../namespacestan_1_1agrad.html#accbd0fa22f2dc7ae894380a09ad2bccb',1,'stan::agrad::to_fvar(const row_vector_fv &rv)'],['../namespacestan_1_1agrad.html#af95bfe51597f252ca2d110f4cd6bc553',1,'stan::agrad::to_fvar(const row_vector_ffd &rv)'],['../namespacestan_1_1agrad.html#a6ec009827c7274b73a0a5dbdac33d2e0',1,'stan::agrad::to_fvar(const row_vector_ffv &rv)'],['../namespacestan_1_1agrad.html#aefe945fec82fc902015d82c4363e3adc',1,'stan::agrad::to_fvar(const Eigen::Matrix< T, R, C > &val, const Eigen::Matrix< T, R, C > &deriv)']]], + ['to_5ffvar_2ehpp',['to_fvar.hpp',['../to__fvar_8hpp.html',1,'']]], + ['to_5fstring',['to_string',['../namespacestan_1_1gm.html#abd7966e0ee430a0e4e12326fd9cd762f',1,'stan::gm']]], + ['to_5fvar',['to_var',['../structstan_1_1agrad_1_1_operands_and_partials.html#a8d193a68235f335ad3ee7dc9fd130094',1,'stan::agrad::OperandsAndPartials::to_var()'],['../namespacestan_1_1agrad.html#a29fd7db9833fa17e3ff54709c13bba7e',1,'stan::agrad::to_var(const double &x)'],['../namespacestan_1_1agrad.html#a7d1c1c2fdd2ac909cde84c4cf3ae0b97',1,'stan::agrad::to_var(const var &x)'],['../namespacestan_1_1agrad.html#a3a13a3857bc425dab978636de428a7cf',1,'stan::agrad::to_var(const stan::math::matrix_d &m)'],['../namespacestan_1_1agrad.html#affc9f72e4afab7464103565795be6b5a',1,'stan::agrad::to_var(const matrix_v &m)'],['../namespacestan_1_1agrad.html#a87949ec636f056e2ed3956675ab2cfd1',1,'stan::agrad::to_var(const stan::math::vector_d &v)'],['../namespacestan_1_1agrad.html#a5ccc4666fffc6f06b1fcae217ea7b9a5',1,'stan::agrad::to_var(const vector_v &v)'],['../namespacestan_1_1agrad.html#a27974665dae3441df744285776390314',1,'stan::agrad::to_var(const stan::math::row_vector_d &rv)'],['../namespacestan_1_1agrad.html#a3f723b593d96af7f204e0f138ee49ec3',1,'stan::agrad::to_var(const row_vector_v &rv)']]], + ['to_5fvar_2ehpp',['to_var.hpp',['../to__var_8hpp.html',1,'']]], + ['to_5fvec',['to_vec',['../classstan_1_1io_1_1var__context.html#a4dead4b7dda5bc87bbc73f95fbc5cc14',1,'stan::io::var_context::to_vec()'],['../classstan_1_1io_1_1var__context.html#ae127d4a7b16d0584a1fc352715f9496f',1,'stan::io::var_context::to_vec(size_t n1)'],['../classstan_1_1io_1_1var__context.html#a6476d396377cd81c55b2870585ae6b80',1,'stan::io::var_context::to_vec(size_t n1, size_t n2)'],['../classstan_1_1io_1_1var__context.html#ae14b5a7e54016763fc3ab8f29d98b7ed',1,'stan::io::var_context::to_vec(size_t n1, size_t n2, size_t n3)'],['../classstan_1_1io_1_1var__context.html#a936afdc0abaf478ad05baaa9e5c899ed',1,'stan::io::var_context::to_vec(size_t n1, size_t n2, size_t n3, size_t n4)'],['../classstan_1_1io_1_1var__context.html#a5592642ebe6a9ec30cdc97c05e025456',1,'stan::io::var_context::to_vec(size_t n1, size_t n2, size_t n3, size_t n4, size_t n5)'],['../classstan_1_1io_1_1var__context.html#a16f365bd3c63c030a9fb7ef48f0b53a6',1,'stan::io::var_context::to_vec(size_t n1, size_t n2, size_t n3, size_t n4, size_t n5, size_t n6)'],['../classstan_1_1io_1_1var__context.html#a7c9a822c3aeb4f3d49dbd0ce509be573',1,'stan::io::var_context::to_vec(size_t n1, size_t n2, size_t n3, size_t n4, size_t n5, size_t n6, size_t n7)'],['../classstan_1_1io_1_1var__context.html#aab65fbc55030028781f4060cf8dba8b8',1,'stan::io::var_context::to_vec(size_t n1, size_t n2, size_t n3, size_t n4, size_t n5, size_t n6, size_t n7, size_t n8)']]], + ['to_5fvector',['to_vector',['../namespacestan_1_1math.html#a2576c9799bbb676b1b2d930be8032b8c',1,'stan::math']]], + ['to_5fvector_2ehpp',['to_vector.hpp',['../to__vector_8hpp.html',1,'']]], + ['tolf',['tolF',['../structstan_1_1optimization_1_1_b_f_g_s_minimizer_1_1_b_f_g_s_options.html#ab0aa0121e1acca46338f9e25e9650192',1,'stan::optimization::BFGSMinimizer::BFGSOptions']]], + ['tolgrad',['tolGrad',['../structstan_1_1optimization_1_1_b_f_g_s_minimizer_1_1_b_f_g_s_options.html#aa459b03a3adde843c5bb742bc73ac55a',1,'stan::optimization::BFGSMinimizer::BFGSOptions']]], + ['tolx',['tolX',['../structstan_1_1optimization_1_1_b_f_g_s_minimizer_1_1_b_f_g_s_options.html#a0aec50286d347f1a64bf344f36088771',1,'stan::optimization::BFGSMinimizer::BFGSOptions']]], + ['total_5fdims',['total_dims',['../namespacestan_1_1gm.html#a0888f90c4bb279ad09b9f7724912a2cd',1,'stan::gm']]], + ['trace',['trace',['../namespacestan_1_1math.html#a7001fd7e0296d5dae6ab0a88e1a28547',1,'stan::math']]], + ['trace_2ehpp',['trace.hpp',['../trace_8hpp.html',1,'']]], + ['trace_5fgen_5finv_5fquad_5fform_5fldlt',['trace_gen_inv_quad_form_ldlt',['../namespacestan_1_1agrad.html#a26390ee1784c9c658bf548383edb128b',1,'stan::agrad::trace_gen_inv_quad_form_ldlt()'],['../namespacestan_1_1math.html#a6fa96e90adc5b27eae970843471ded52',1,'stan::math::trace_gen_inv_quad_form_ldlt()']]], + ['trace_5fgen_5finv_5fquad_5fform_5fldlt_2ehpp',['trace_gen_inv_quad_form_ldlt.hpp',['../agrad_2rev_2matrix_2trace__gen__inv__quad__form__ldlt_8hpp.html',1,'']]], + ['trace_5fgen_5finv_5fquad_5fform_5fldlt_2ehpp',['trace_gen_inv_quad_form_ldlt.hpp',['../math_2matrix_2trace__gen__inv__quad__form__ldlt_8hpp.html',1,'']]], + ['trace_5fgen_5fquad_5fform',['trace_gen_quad_form',['../namespacestan_1_1agrad.html#ad63e47021cd7aa676fe91db80092997e',1,'stan::agrad::trace_gen_quad_form()'],['../namespacestan_1_1math.html#a09d402800ee27ba77d03dc3ec365d22e',1,'stan::math::trace_gen_quad_form()']]], + ['trace_5fgen_5fquad_5fform_2ehpp',['trace_gen_quad_form.hpp',['../math_2matrix_2trace__gen__quad__form_8hpp.html',1,'']]], + ['trace_5fgen_5fquad_5fform_2ehpp',['trace_gen_quad_form.hpp',['../agrad_2rev_2matrix_2trace__gen__quad__form_8hpp.html',1,'']]], + ['trace_5finv_5fquad_5fform_5fldlt',['trace_inv_quad_form_ldlt',['../namespacestan_1_1agrad.html#a9e9f878f6533c815e81193669c47a4f1',1,'stan::agrad::trace_inv_quad_form_ldlt()'],['../namespacestan_1_1math.html#aa0261f49dc318d8ee553e378325ee3db',1,'stan::math::trace_inv_quad_form_ldlt()']]], + ['trace_5finv_5fquad_5fform_5fldlt_2ehpp',['trace_inv_quad_form_ldlt.hpp',['../agrad_2rev_2matrix_2trace__inv__quad__form__ldlt_8hpp.html',1,'']]], + ['trace_5finv_5fquad_5fform_5fldlt_2ehpp',['trace_inv_quad_form_ldlt.hpp',['../math_2matrix_2trace__inv__quad__form__ldlt_8hpp.html',1,'']]], + ['trace_5fquad_5fform',['trace_quad_form',['../namespacestan_1_1agrad.html#a0d688dadede814a9e3f2a3b6af6601c5',1,'stan::agrad::trace_quad_form()'],['../namespacestan_1_1math.html#a097af33142548fd565d1dab2233fa3e5',1,'stan::math::trace_quad_form()']]], + ['trace_5fquad_5fform_2ehpp',['trace_quad_form.hpp',['../math_2matrix_2trace__quad__form_8hpp.html',1,'']]], + ['trace_5fquad_5fform_2ehpp',['trace_quad_form.hpp',['../agrad_2rev_2matrix_2trace__quad__form_8hpp.html',1,'']]], + ['traits_2ehpp',['traits.hpp',['../meta_2traits_8hpp.html',1,'']]], + ['traits_2ehpp',['traits.hpp',['../prob_2traits_8hpp.html',1,'']]], + ['transform_2ehpp',['transform.hpp',['../transform_8hpp.html',1,'']]], + ['transformed_5fdata_5forigin',['transformed_data_origin',['../namespacestan_1_1gm.html#a8badb02edbcc98351299f2b1a0f23740',1,'stan::gm']]], + ['transformed_5fparameter_5forigin',['transformed_parameter_origin',['../namespacestan_1_1gm.html#acd24a39b6850fab486aa1ab63d45d537',1,'stan::gm']]], + ['transition',['transition',['../classstan_1_1mcmc_1_1base__mcmc.html#acb8c38a588d49495a6dc2bb22d3eb435',1,'stan::mcmc::base_mcmc::transition()'],['../classstan_1_1mcmc_1_1fixed__param__sampler.html#a63cc72329d8fdcb8b276370621a22b9b',1,'stan::mcmc::fixed_param_sampler::transition()'],['../classstan_1_1mcmc_1_1adapt__dense__e__nuts.html#a18ea2702c10597236f0ea359f251c9f5',1,'stan::mcmc::adapt_dense_e_nuts::transition()'],['../classstan_1_1mcmc_1_1adapt__diag__e__nuts.html#ab1732e3ce940a436110a7cf8a0f17aac',1,'stan::mcmc::adapt_diag_e_nuts::transition()'],['../classstan_1_1mcmc_1_1adapt__unit__e__nuts.html#ad1130b322d697d62f7d8d3fbef6ee17f',1,'stan::mcmc::adapt_unit_e_nuts::transition()'],['../classstan_1_1mcmc_1_1base__nuts.html#aceabaf9d1acdf64b0d084e354ede9564',1,'stan::mcmc::base_nuts::transition()'],['../classstan_1_1mcmc_1_1adapt__dense__e__static__hmc.html#a406a335276134a2f86fa3e4c24925e4f',1,'stan::mcmc::adapt_dense_e_static_hmc::transition()'],['../classstan_1_1mcmc_1_1adapt__diag__e__static__hmc.html#a1dfaa6a5fe56df79856bc2f3789e9895',1,'stan::mcmc::adapt_diag_e_static_hmc::transition()'],['../classstan_1_1mcmc_1_1adapt__unit__e__static__hmc.html#a7db6fa5aedf5f35ceadca297f28f9914',1,'stan::mcmc::adapt_unit_e_static_hmc::transition()'],['../classstan_1_1mcmc_1_1base__static__hmc.html#aad1ceb75b092cdefe079b2c81275f501',1,'stan::mcmc::base_static_hmc::transition()']]], + ['transpose',['transpose',['../namespacestan_1_1math.html#a9db6bf273b69e20dc12e0c348b928296',1,'stan::math']]], + ['transpose_2ehpp',['transpose.hpp',['../transpose_8hpp.html',1,'']]], + ['transpose_5fexpr',['transpose_expr',['../structstan_1_1gm_1_1transpose__expr.html',1,'stan::gm']]], + ['transpose_5ff',['transpose_f',['../namespacestan_1_1gm.html#a7f4d79c4779b3252cb5d22ce80c79d98',1,'stan::gm']]], + ['traps',['traps',['../structstd_1_1numeric__limits_3_01stan_1_1agrad_1_1fvar_3_01_t_01_4_01_4.html#a5bc84afce7db610312123c95a0f893f7',1,'std::numeric_limits< stan::agrad::fvar< T > >::traps()'],['../structstd_1_1numeric__limits_3_01stan_1_1agrad_1_1var_01_4.html#a9bf9a84401ae310d4855a7d5b483fa34',1,'std::numeric_limits< stan::agrad::var >::traps()']]], + ['trigamma',['trigamma',['../namespacestan_1_1math.html#ab18c21bad37c9af26424d0922936355e',1,'stan::math']]], + ['trigamma_2ehpp',['trigamma.hpp',['../trigamma_8hpp.html',1,'']]], + ['trunc',['trunc',['../namespacestan_1_1agrad.html#aea02c702f338cc531cdb7b6e11344b34',1,'stan::agrad::trunc(const fvar< T > &x)'],['../namespacestan_1_1agrad.html#af5cde78a4f7b7ee45f8f98c75343174e',1,'stan::agrad::trunc(const stan::agrad::var &a)']]], + ['trunc_2ehpp',['trunc.hpp',['../rev_2functions_2trunc_8hpp.html',1,'']]], + ['trunc_2ehpp',['trunc.hpp',['../fwd_2functions_2trunc_8hpp.html',1,'']]], + ['truncation_5f',['truncation_',['../structstan_1_1gm_1_1sample.html#a5e796a4be6bef910fcad25dfbc8ca3b6',1,'stan::gm::sample']]], + ['truncation_5frange_5fr',['truncation_range_r',['../structstan_1_1gm_1_1statement__grammar.html#a1fc065c2e3cd518346178e31b84f713c',1,'stan::gm::statement_grammar']]], + ['two_5fover_5fsqrt_5fpi',['TWO_OVER_SQRT_PI',['../namespacestan_1_1math.html#a935530f53a026ebb80fcd9006059e9c8',1,'stan::math']]], + ['type',['type',['../structstan_1_1gm_1_1validate__expr__type2_1_1result.html#acf9da899e777ac9cfb14f120a5a4e6e7',1,'stan::gm::validate_expr_type2::result::type()'],['../structstan_1_1gm_1_1set__fun__type2_1_1result.html#a797bb1fd338a65fa9377535addd51aa2',1,'stan::gm::set_fun_type2::result::type()'],['../structstan_1_1gm_1_1binary__op__expr_1_1result.html#a6613b3bbad33fe2edf7b1337ff10c4ab',1,'stan::gm::binary_op_expr::result::type()'],['../structstan_1_1gm_1_1addition__expr_1_1result.html#abbb7eba785d1bf2b37be6983c21abde2',1,'stan::gm::addition_expr::result::type()'],['../structstan_1_1gm_1_1subtraction__expr_1_1result.html#a83d53c7bf088539887e8d349745dbbd3',1,'stan::gm::subtraction_expr::result::type()'],['../structstan_1_1gm_1_1add__conditional__condition_1_1result.html#a7ae524581e60adf8ec58ff362d123b04',1,'stan::gm::add_conditional_condition::result::type()'],['../structstan_1_1gm_1_1add__conditional__body_1_1result.html#af12e1aa0082754acf1218bd767b65f97',1,'stan::gm::add_conditional_body::result::type()'],['../structstan_1_1gm_1_1validate__assignment_1_1result.html#a8ed777fd03014c406553a98a2092d597',1,'stan::gm::validate_assignment::result::type()'],['../structstan_1_1gm_1_1validate__sample_1_1result.html#ad554b4aaf143a4c535708ac7ee56a12f',1,'stan::gm::validate_sample::result::type()'],['../structstan_1_1gm_1_1expression__as__statement_1_1result.html#aa817fc2a2eab202b696d81dc5054a233',1,'stan::gm::expression_as_statement::result::type()'],['../structstan_1_1gm_1_1unscope__locals_1_1result.html#a78057309e7356062ee1abf3978fb75ad',1,'stan::gm::unscope_locals::result::type()'],['../structstan_1_1gm_1_1add__while__condition_1_1result.html#a3355eac5ec601747e940106ca5a9553c',1,'stan::gm::add_while_condition::result::type()'],['../structstan_1_1gm_1_1add__while__body_1_1result.html#a14b5d10c7fd59660a6d9070f2adb50a0',1,'stan::gm::add_while_body::result::type()'],['../structstan_1_1gm_1_1add__loop__identifier_1_1result.html#ad8cb4be555a262642d21fbca93669692',1,'stan::gm::add_loop_identifier::result::type()'],['../structstan_1_1gm_1_1remove__loop__identifier_1_1result.html#a651b017053ea891677678fd434ae2b6a',1,'stan::gm::remove_loop_identifier::result::type()'],['../structstan_1_1gm_1_1validate__int__expr2_1_1result.html#ac09fa987115620b2b268f7050ea2b53c',1,'stan::gm::validate_int_expr2::result::type()'],['../structstan_1_1gm_1_1validate__allow__sample_1_1result.html#a35e630d24e687699327b33e071c2a993',1,'stan::gm::validate_allow_sample::result::type()'],['../structstan_1_1gm_1_1set__fun__type_1_1result.html#a8a3b4372dd614aed3ed3e683a9e93cea',1,'stan::gm::set_fun_type::result::type()'],['../structstan_1_1gm_1_1set__fun__type__named_1_1result.html#af8b27e490e0b8ddeaba4c65ee5dff707',1,'stan::gm::set_fun_type_named::result::type()'],['../structstan_1_1gm_1_1multiplication__expr_1_1result.html#a0ab75c7570d913a4a3122048e092b76a',1,'stan::gm::multiplication_expr::result::type()'],['../structstan_1_1gm_1_1division__expr_1_1result.html#a18185a370c691f1eea0847551e78ed83',1,'stan::gm::division_expr::result::type()'],['../structstan_1_1gm_1_1left__division__expr_1_1result.html#ae7eade30901e506aca5bd0b4a7296595',1,'stan::gm::left_division_expr::result::type()'],['../structstan_1_1gm_1_1elt__multiplication__expr_1_1result.html#acd68e9b5d774c889c1064e1350495620',1,'stan::gm::elt_multiplication_expr::result::type()'],['../structstan_1_1gm_1_1elt__division__expr_1_1result.html#a96008a34740a7ff158716517993aa6f0',1,'stan::gm::elt_division_expr::result::type()'],['../structstan_1_1gm_1_1negate__expr_1_1result.html#ae3983d7993aa29e8d6c9b488dcde6312',1,'stan::gm::negate_expr::result::type()'],['../structstan_1_1gm_1_1logical__negate__expr_1_1result.html#a4f04e5a391864ce1cd4e295b38800aa9',1,'stan::gm::logical_negate_expr::result::type()'],['../structstan_1_1gm_1_1transpose__expr_1_1result.html#a46200139ae3022913240e7afb1e1a98f',1,'stan::gm::transpose_expr::result::type()'],['../structstan_1_1gm_1_1add__expression__dimss_1_1result.html#ac7ba6f938007515f8585e7f3edfa17fd',1,'stan::gm::add_expression_dimss::result::type()'],['../structstan_1_1gm_1_1set__var__type_1_1result.html#ab76768683b619416b7df951add24cf65',1,'stan::gm::set_var_type::result::type()'],['../structstan_1_1gm_1_1validate__int__expr3_1_1result.html#a3561c5435c7ea45b40819bb2937b792d',1,'stan::gm::validate_int_expr3::result::type()'],['../structstan_1_1gm_1_1validate__expr__type_1_1result.html#a27afcd81cf29e2a4e3cd1456a9580998',1,'stan::gm::validate_expr_type::result::type()'],['../structstan_1_1math_1_1common__type.html#aab77e3179df5479c1531afad8687a83f',1,'stan::math::common_type::type()'],['../structstan_1_1math_1_1common__type_3_01std_1_1vector_3_01_t1_01_4_00_01std_1_1vector_3_01_t2_01_4_01_4.html#a57e2603ca0216acd5592ebbd45aee70d',1,'stan::math::common_type< std::vector< T1 >, std::vector< T2 > >::type()'],['../structstan_1_1math_1_1common__type_3_01_eigen_1_1_matrix_3_01_t1_00_01_r_00_01_c_01_4_00_01_eiged8accfa00e73f240c58ad02ac582ba93.html#a233e6e69eead8714ccd05f2c49c0d56d',1,'stan::math::common_type< Eigen::Matrix< T1, R, C >, Eigen::Matrix< T2, R, C > >::type()'],['../structstan_1_1math_1_1store__type.html#a4911dad4e7692aae90f6a93466a3e88b',1,'stan::math::store_type::type()'],['../structstan_1_1math_1_1store__type_3_01double_01_4.html#a36449fc098f0ee60b5e078771f5395e8',1,'stan::math::store_type< double >::type()'],['../structstan_1_1math_1_1store__type_3_01int_01_4.html#aa10e456268690936392e9ea31e24645f',1,'stan::math::store_type< int >::type()'],['../structstan_1_1math_1_1pass__type.html#aaf902ad0b26acab6888195ed0b528ec5',1,'stan::math::pass_type::type()'],['../structstan_1_1math_1_1pass__type_3_01double_01_4.html#adee94e36436cf8e5628e961330047738',1,'stan::math::pass_type< double >::type()'],['../structstan_1_1math_1_1pass__type_3_01int_01_4.html#a6e1bfc775f016451ab261ecede07402c',1,'stan::math::pass_type< int >::type()'],['../structstan_1_1is__vector.html#a5384dc7751d6efdfd7b7bd9ccc442ca2',1,'stan::is_vector::type()'],['../structstan_1_1is__vector_3_01const_01_t_01_4.html#a438013ddac03fc30456a132b069b6db7',1,'stan::is_vector< const T >::type()'],['../structstan_1_1is__vector_3_01std_1_1vector_3_01_t_01_4_01_4.html#aefecb429647f6ad44faa02cb233050da',1,'stan::is_vector< std::vector< T > >::type()'],['../structstan_1_1is__vector_3_01_eigen_1_1_matrix_3_01_t_00_01_eigen_1_1_dynamic_00_011_01_4_01_4.html#ab0c2ebfaeaf2d18b25665573a01dab1e',1,'stan::is_vector< Eigen::Matrix< T, Eigen::Dynamic, 1 > >::type()'],['../structstan_1_1is__vector_3_01_eigen_1_1_matrix_3_01_t_00_011_00_01_eigen_1_1_dynamic_01_4_01_4.html#a07a4e818504882fb191b9d3a5ba6677a',1,'stan::is_vector< Eigen::Matrix< T, 1, Eigen::Dynamic > >::type()'],['../structstan_1_1scalar__type.html#aa9068e42d81d7091f822df126fe932b7',1,'stan::scalar_type::type()'],['../structstan_1_1scalar__type_3_01_eigen_1_1_matrix_3_01_t_00_01_eigen_1_1_dynamic_00_01_eigen_1_1_dynamic_01_4_01_4.html#a3cbf7ba7c3d16da948863b3180075b36',1,'stan::scalar_type< Eigen::Matrix< T, Eigen::Dynamic, Eigen::Dynamic > >::type()'],['../structstan_1_1scalar__type_3_01_t_01_5_01_4.html#a38f00242ece28298968a43f30508c940',1,'stan::scalar_type< T * >::type()'],['../structstan_1_1return__type.html#af3130731cc471801ccef3bc753dd790b',1,'stan::return_type::type()'],['../structstan_1_1gm_1_1expr__type.html#adb52e22aa9f56f528c4a5305ae562364',1,'stan::gm::expr_type::type()']]], + ['type_5f',['type_',['../structstan_1_1gm_1_1int__literal.html#a72e3ed5537084bf3ff324105cce4b457',1,'stan::gm::int_literal::type_()'],['../structstan_1_1gm_1_1double__literal.html#ae571ef14f106d406302e3fe0ac9bd204',1,'stan::gm::double_literal::type_()'],['../structstan_1_1gm_1_1array__literal.html#a722c9507094a61e528cb017ed6abaac0',1,'stan::gm::array_literal::type_()'],['../structstan_1_1gm_1_1variable.html#a6ff634fb68f6f6f51fe4e014a2d1dae0',1,'stan::gm::variable::type_()'],['../structstan_1_1gm_1_1fun.html#adff7eb341e34851eda4f8c38ce9c001a',1,'stan::gm::fun::type_()'],['../structstan_1_1gm_1_1index__op.html#ada5fa6fc111a5c01cdcb4bfd34cef545',1,'stan::gm::index_op::type_()'],['../structstan_1_1gm_1_1binary__op.html#a4b1a2844ace11d2be56ad75ea416a0dd',1,'stan::gm::binary_op::type_()'],['../structstan_1_1gm_1_1unary__op.html#a4963df25da0d8fd9a8697b6bc3573846',1,'stan::gm::unary_op::type_()']]], + ['type_5fname',['type_name',['../structstan_1_1gm_1_1type__name.html',1,'stan::gm']]], + ['type_5fname_3c_20bool_20_3e',['type_name< bool >',['../structstan_1_1gm_1_1type__name_3_01bool_01_4.html',1,'stan::gm']]], + ['type_5fname_3c_20double_20_3e',['type_name< double >',['../structstan_1_1gm_1_1type__name_3_01double_01_4.html',1,'stan::gm']]], + ['type_5fname_3c_20int_20_3e',['type_name< int >',['../structstan_1_1gm_1_1type__name_3_01int_01_4.html',1,'stan::gm']]], + ['type_5fname_3c_20std_3a_3astring_20_3e',['type_name< std::string >',['../structstan_1_1gm_1_1type__name_3_01std_1_1string_01_4.html',1,'stan::gm']]], + ['type_5fname_3c_20unsigned_20int_20_3e',['type_name< unsigned int >',['../structstan_1_1gm_1_1type__name_3_01unsigned_01int_01_4.html',1,'stan::gm']]], + ['typedefs_2ehpp',['typedefs.hpp',['../agrad_2fwd_2matrix_2typedefs_8hpp.html',1,'']]], + ['typedefs_2ehpp',['typedefs.hpp',['../math_2matrix_2typedefs_8hpp.html',1,'']]], + ['typedefs_2ehpp',['typedefs.hpp',['../agrad_2rev_2matrix_2typedefs_8hpp.html',1,'']]] +]; diff --git a/doc/api/html/search/all_75.html b/doc/api/html/search/all_75.html new file mode 100644 index 00000000000..ab8455ed502 --- /dev/null +++ b/doc/api/html/search/all_75.html @@ -0,0 +1,25 @@ + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/doc/api/html/search/all_75.js b/doc/api/html/search/all_75.js new file mode 100644 index 00000000000..6d7a11ee919 --- /dev/null +++ b/doc/api/html/search/all_75.js @@ -0,0 +1,48 @@ +var searchData= +[ + ['u_5fint_5fargument',['u_int_argument',['../namespacestan_1_1gm.html#ae43d445dc26f5d0423f77c37236d3b38',1,'stan::gm']]], + ['ub_5fconstrain',['ub_constrain',['../namespacestan_1_1prob.html#a3cc62d5f301ccbb23e1e97231d736c4c',1,'stan::prob::ub_constrain(const T x, const TU ub)'],['../namespacestan_1_1prob.html#ac41afc3f7ad3b927d352383d4a8dea7f',1,'stan::prob::ub_constrain(const T x, const TU ub, T &lp)']]], + ['ub_5ffree',['ub_free',['../namespacestan_1_1prob.html#aa0fbf5448b5fdc2510256bbc73cc9b49',1,'stan::prob']]], + ['unary_5fop',['unary_op',['../structstan_1_1gm_1_1unary__op.html#a98e5a64686af8cefd3293e1925c2a3b1',1,'stan::gm::unary_op']]], + ['unary_5fop',['unary_op',['../structstan_1_1gm_1_1unary__op.html',1,'stan::gm']]], + ['unconstrained_5fparam_5fnames_5fvisgen',['unconstrained_param_names_visgen',['../structstan_1_1gm_1_1unconstrained__param__names__visgen.html',1,'stan::gm']]], + ['unconstrained_5fparam_5fnames_5fvisgen',['unconstrained_param_names_visgen',['../structstan_1_1gm_1_1unconstrained__param__names__visgen.html#a0fe661e868b54bff65d31a93d2c9e86e',1,'stan::gm::unconstrained_param_names_visgen']]], + ['uniform_2ehpp',['uniform.hpp',['../uniform_8hpp.html',1,'']]], + ['uniform_5fccdf_5flog',['uniform_ccdf_log',['../namespacestan_1_1prob.html#ab524f79f1c0a3d5f97b1e481b21f1736',1,'stan::prob']]], + ['uniform_5fcdf',['uniform_cdf',['../namespacestan_1_1prob.html#a2540292f80682fd8971fcf9b5c0b35b1',1,'stan::prob']]], + ['uniform_5fcdf_5flog',['uniform_cdf_log',['../namespacestan_1_1prob.html#a05dfe81e20c266f06cc111b1571edb4d',1,'stan::prob']]], + ['uniform_5flog',['uniform_log',['../namespacestan_1_1prob.html#a20f9e437a772626e4e6aac94f58f60fa',1,'stan::prob::uniform_log(const T_y &y, const T_low &alpha, const T_high &beta)'],['../namespacestan_1_1prob.html#a520f558845310e1de1e8692a8ac5ab23',1,'stan::prob::uniform_log(const T_y &y, const T_low &alpha, const T_high &beta)']]], + ['uniform_5frng',['uniform_rng',['../namespacestan_1_1prob.html#ab9c29e62027123e900b55f29170e2426',1,'stan::prob']]], + ['unit_5fe_5fmetric',['unit_e_metric',['../classstan_1_1mcmc_1_1unit__e__metric.html#acdbee1cba43deae117af1312703ab2b4',1,'stan::mcmc::unit_e_metric']]], + ['unit_5fe_5fmetric',['unit_e_metric',['../classstan_1_1mcmc_1_1unit__e__metric.html',1,'stan::mcmc']]], + ['unit_5fe_5fmetric_2ehpp',['unit_e_metric.hpp',['../unit__e__metric_8hpp.html',1,'']]], + ['unit_5fe_5fnuts',['unit_e_nuts',['../classstan_1_1mcmc_1_1unit__e__nuts.html',1,'stan::mcmc']]], + ['unit_5fe_5fnuts',['unit_e_nuts',['../classstan_1_1mcmc_1_1unit__e__nuts.html#a0e74025d0c07dee2edc39b43d6fa85be',1,'stan::mcmc::unit_e_nuts']]], + ['unit_5fe_5fnuts_2ehpp',['unit_e_nuts.hpp',['../unit__e__nuts_8hpp.html',1,'']]], + ['unit_5fe_5fpoint',['unit_e_point',['../classstan_1_1mcmc_1_1unit__e__point.html',1,'stan::mcmc']]], + ['unit_5fe_5fpoint',['unit_e_point',['../classstan_1_1mcmc_1_1unit__e__point.html#a8ab0ffea3990bf0b8cdb289e1f7327ef',1,'stan::mcmc::unit_e_point']]], + ['unit_5fe_5fpoint_2ehpp',['unit_e_point.hpp',['../unit__e__point_8hpp.html',1,'']]], + ['unit_5fe_5fstatic_5fhmc',['unit_e_static_hmc',['../classstan_1_1mcmc_1_1unit__e__static__hmc.html#aa3f18e181e9b27bc487ec48af5ddd9c1',1,'stan::mcmc::unit_e_static_hmc']]], + ['unit_5fe_5fstatic_5fhmc',['unit_e_static_hmc',['../classstan_1_1mcmc_1_1unit__e__static__hmc.html',1,'stan::mcmc']]], + ['unit_5fe_5fstatic_5fhmc_2ehpp',['unit_e_static_hmc.hpp',['../unit__e__static__hmc_8hpp.html',1,'']]], + ['unit_5fvector',['unit_vector',['../classstan_1_1io_1_1reader.html#a6b8ebf459013095c8bef590c5e7f2dd2',1,'stan::io::reader']]], + ['unit_5fvector_5fconstrain',['unit_vector_constrain',['../classstan_1_1io_1_1reader.html#aafcb145538d7414947c3420b652ad962',1,'stan::io::reader::unit_vector_constrain(size_t k)'],['../classstan_1_1io_1_1reader.html#ac4c986f3ceee7c402820835ba7bfde62',1,'stan::io::reader::unit_vector_constrain(size_t k, T &lp)'],['../namespacestan_1_1prob.html#afd9044ce24ca929e0d1fcf49fdfcb7cc',1,'stan::prob::unit_vector_constrain(const Eigen::Matrix< T, Eigen::Dynamic, 1 > &y)'],['../namespacestan_1_1prob.html#ac361cea0021ad5cbd7d9daa32935bf9b',1,'stan::prob::unit_vector_constrain(const Eigen::Matrix< T, Eigen::Dynamic, 1 > &y, T &lp)']]], + ['unit_5fvector_5fdecl_5fr',['unit_vector_decl_r',['../structstan_1_1gm_1_1var__decls__grammar.html#ad6400ff89afd46d01c13dd93ef231edd',1,'stan::gm::var_decls_grammar']]], + ['unit_5fvector_5ffree',['unit_vector_free',['../namespacestan_1_1prob.html#aa72cd0f07fe68884774feea5e5c0056c',1,'stan::prob']]], + ['unit_5fvector_5funconstrain',['unit_vector_unconstrain',['../classstan_1_1io_1_1writer.html#aa0f2b9b17db03235f4cd3f90092ac6d0',1,'stan::io::writer']]], + ['unit_5fvector_5fvar_5fdecl',['unit_vector_var_decl',['../structstan_1_1gm_1_1unit__vector__var__decl.html#a76baa9fd153a608c6d4e0b4077ddd1bc',1,'stan::gm::unit_vector_var_decl::unit_vector_var_decl()'],['../structstan_1_1gm_1_1unit__vector__var__decl.html#a2cdc1ee5970cc4e9d06362b1a51bdb7c',1,'stan::gm::unit_vector_var_decl::unit_vector_var_decl(expression const &K, std::string const &name, std::vector< expression > const &dims)']]], + ['unit_5fvector_5fvar_5fdecl',['unit_vector_var_decl',['../structstan_1_1gm_1_1unit__vector__var__decl.html',1,'stan::gm']]], + ['univariate_2ehpp',['univariate.hpp',['../univariate_8hpp.html',1,'']]], + ['unlikely',['unlikely',['../stack__alloc_8hpp.html#ac6c45889010c1bd68631771b64f18101',1,'stack_alloc.hpp']]], + ['unscope_5flocals',['unscope_locals',['../structstan_1_1gm_1_1unscope__locals.html',1,'stan::gm']]], + ['unscope_5flocals_5ff',['unscope_locals_f',['../namespacestan_1_1gm.html#aecac3234ee1a4b8b9b6344c0679cfd8d',1,'stan::gm']]], + ['unvalued_5fargument',['unvalued_argument',['../classstan_1_1gm_1_1unvalued__argument.html',1,'stan::gm']]], + ['unvalued_5fargument',['unvalued_argument',['../classstan_1_1gm_1_1unvalued__argument.html#ad92f588ed35ed51647cac11f883a945a',1,'stan::gm::unvalued_argument']]], + ['unvalued_5fargument_2ehpp',['unvalued_argument.hpp',['../unvalued__argument_8hpp.html',1,'']]], + ['update',['update',['../classstan_1_1mcmc_1_1base__hamiltonian.html#a72b6cc15dc1f074e871fbd77c3d49ed8',1,'stan::mcmc::base_hamiltonian']]], + ['update_5fq',['update_q',['../classstan_1_1mcmc_1_1base__leapfrog.html#aafd8bbf5fcf3ac4246ce798bbe085098',1,'stan::mcmc::base_leapfrog::update_q()'],['../classstan_1_1mcmc_1_1expl__leapfrog.html#ab0ac437892b1206c0bb581e5db52ba0e',1,'stan::mcmc::expl_leapfrog::update_q()']]], + ['usage',['USAGE',['../structstan_1_1gm_1_1error__codes.html#aa63873e8f7e9dd7f8af3502e4003292fab91146036be9b2c1e9bd09619da086ba',1,'stan::gm::error_codes']]], + ['utc_5ftime_5fstring',['utc_time_string',['../namespacestan_1_1io.html#a56441daea55f49d4bcb168b30d7313f0',1,'stan::io']]], + ['util_2ehpp',['util.hpp',['../io_2util_8hpp.html',1,'']]], + ['util_2ehpp',['util.hpp',['../model_2util_8hpp.html',1,'']]] +]; diff --git a/doc/api/html/search/all_76.html b/doc/api/html/search/all_76.html new file mode 100644 index 00000000000..0ff5edd3493 --- /dev/null +++ b/doc/api/html/search/all_76.html @@ -0,0 +1,25 @@ + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/doc/api/html/search/all_76.js b/doc/api/html/search/all_76.js new file mode 100644 index 00000000000..0478f689b2d --- /dev/null +++ b/doc/api/html/search/all_76.js @@ -0,0 +1,172 @@ +var searchData= +[ + ['v',['V',['../classstan_1_1mcmc_1_1ps__point.html#a21cea778ac74b5c026a2f23fbae71304',1,'stan::mcmc::ps_point::V()'],['../classstan_1_1mcmc_1_1base__hamiltonian.html#a833128e107a090d7b285ca34a80c6881',1,'stan::mcmc::base_hamiltonian::V()']]], + ['v1_5f',['v1_',['../agrad_2rev_2matrix_2dot__product_8hpp.html#a8c886c0e0b0df10a90267645bac46674',1,'v1_(): dot_product.hpp'],['../_eigen___num_traits_8hpp.html#a26e986ea55e50b52a5f24dc12146b280',1,'v1_(): Eigen_NumTraits.hpp'],['../agrad_2rev_2matrix_2squared__distance_8hpp.html#a83c5c6dc5ed503252611e6e50af3557a',1,'v1_(): squared_distance.hpp']]], + ['v2_5f',['v2_',['../agrad_2rev_2matrix_2dot__product_8hpp.html#a27e3d8b375e8f1fb1cb0078d150879ea',1,'v2_(): dot_product.hpp'],['../_eigen___num_traits_8hpp.html#a07b9904c44113353bf64f61d7c1e5672',1,'v2_(): Eigen_NumTraits.hpp'],['../agrad_2rev_2matrix_2squared__distance_8hpp.html#a2157c9243530cdafcfb1665c9e682ed7',1,'v2_(): squared_distance.hpp']]], + ['v_5f',['v_',['../agrad_2rev_2matrix_2dot__self_8hpp.html#ad96f2a078f01703996f5677e20cc34cd',1,'v_(): dot_self.hpp'],['../agrad_2rev_2matrix_2sum_8hpp.html#ad96f2a078f01703996f5677e20cc34cd',1,'v_(): sum.hpp']]], + ['v_5fvari_2ehpp',['v_vari.hpp',['../v__vari_8hpp.html',1,'']]], + ['val',['val',['../classstan_1_1agrad_1_1var.html#a3c15579ed3018cae0a0bf556bed164e3',1,'stan::agrad::var::val()'],['../structstan_1_1agrad_1_1fvar.html#a4a8422fc2fcf430e05a5a05cf3c14fe0',1,'stan::agrad::fvar::val()'],['../classstan_1_1agrad_1_1var.html#a3c15579ed3018cae0a0bf556bed164e3',1,'stan::agrad::var::val()'],['../classstan_1_1io_1_1cmd__line.html#a44c058f7d1a236d9fdc95720191e8bd2',1,'stan::io::cmd_line::val()']]], + ['val_5f',['val_',['../classstan_1_1agrad_1_1vari.html#a03ed9389d9c07f294820e406adfc865e',1,'stan::agrad::vari::val_()'],['../structstan_1_1agrad_1_1fvar.html#a8aa2f2b763eea9bf8928fe5f4dcd0a3d',1,'stan::agrad::fvar::val_()'],['../structstan_1_1gm_1_1int__literal.html#a298151e163dc54d45f2876fe296cde5d',1,'stan::gm::int_literal::val_()'],['../structstan_1_1gm_1_1double__literal.html#a15debd030159098dafaac809c9565c48',1,'stan::gm::double_literal::val_()']]], + ['valid_5fvalue',['valid_value',['../classstan_1_1gm_1_1list__argument.html#a73dd9564f755fa41db8dfad1186ba269',1,'stan::gm::list_argument']]], + ['validate_5fallow_5fsample',['validate_allow_sample',['../structstan_1_1gm_1_1validate__allow__sample.html',1,'stan::gm']]], + ['validate_5fallow_5fsample_5ff',['validate_allow_sample_f',['../namespacestan_1_1gm.html#aa30c31af794258c24cb18df976cf4296',1,'stan::gm']]], + ['validate_5farray',['validate_array',['../structstan_1_1gm_1_1validate__transformed__params__visgen.html#a36abc2dc33d5d8053dbe93a30444fca4',1,'stan::gm::validate_transformed_params_visgen']]], + ['validate_5fassignment',['validate_assignment',['../structstan_1_1gm_1_1validate__assignment.html',1,'stan::gm']]], + ['validate_5fassignment_5ff',['validate_assignment_f',['../namespacestan_1_1gm.html#a06237cc6105be14cdd2eb0575bef7ae4',1,'stan::gm']]], + ['validate_5fcolumn_5findex',['validate_column_index',['../namespacestan_1_1math.html#a0908a541f73f2d206d9bc0d41c487a4d',1,'stan::math']]], + ['validate_5fcolumn_5findex_2ehpp',['validate_column_index.hpp',['../validate__column__index_8hpp.html',1,'']]], + ['validate_5fdims',['validate_dims',['../classstan_1_1io_1_1var__context.html#a6b4a742d7a221312bc81fc4fdd9bf011',1,'stan::io::var_context']]], + ['validate_5fexpr_5ftype',['validate_expr_type',['../structstan_1_1gm_1_1validate__expr__type.html',1,'stan::gm']]], + ['validate_5fexpr_5ftype2',['validate_expr_type2',['../structstan_1_1gm_1_1validate__expr__type2.html',1,'stan::gm']]], + ['validate_5fexpr_5ftype2_5ff',['validate_expr_type2_f',['../namespacestan_1_1gm.html#a4a3fe9f1de32042785143d781cdaaae9',1,'stan::gm']]], + ['validate_5fexpr_5ftype_5ff',['validate_expr_type_f',['../namespacestan_1_1gm.html#a32f93691dd2a6209d3f19ac875b17f3e',1,'stan::gm']]], + ['validate_5fgreater',['validate_greater',['../namespacestan_1_1math.html#a954f9705a277937f1a4e39f85c226304',1,'stan::math']]], + ['validate_5fgreater_2ehpp',['validate_greater.hpp',['../validate__greater_8hpp.html',1,'']]], + ['validate_5fgreater_5for_5fequal',['validate_greater_or_equal',['../namespacestan_1_1math.html#a153a2d6e5f828a2dc08ccba7dab2ba02',1,'stan::math']]], + ['validate_5fgreater_5for_5fequal_2ehpp',['validate_greater_or_equal.hpp',['../validate__greater__or__equal_8hpp.html',1,'']]], + ['validate_5fint_5fexpr2',['validate_int_expr2',['../structstan_1_1gm_1_1validate__int__expr2.html',1,'stan::gm']]], + ['validate_5fint_5fexpr2_5ff',['validate_int_expr2_f',['../namespacestan_1_1gm.html#a46fe00392f8da59e985d5d347198d137',1,'stan::gm']]], + ['validate_5fint_5fexpr3',['validate_int_expr3',['../structstan_1_1gm_1_1validate__int__expr3.html',1,'stan::gm']]], + ['validate_5fint_5fexpr3_5ff',['validate_int_expr3_f',['../namespacestan_1_1gm.html#a275f5389777c95f7178c6bc23f1e6441',1,'stan::gm']]], + ['validate_5fless',['validate_less',['../namespacestan_1_1math.html#a849c8dde0b08965817c862676d5b8aa3',1,'stan::math']]], + ['validate_5fless_2ehpp',['validate_less.hpp',['../validate__less_8hpp.html',1,'']]], + ['validate_5fless_5for_5fequal',['validate_less_or_equal',['../namespacestan_1_1math.html#a3f5968c67a61a65e3fe2a434d9ffb7bf',1,'stan::math']]], + ['validate_5fless_5for_5fequal_2ehpp',['validate_less_or_equal.hpp',['../validate__less__or__equal_8hpp.html',1,'']]], + ['validate_5fmatching_5fdims',['validate_matching_dims',['../namespacestan_1_1math.html#a6c2cb320ad093bb28e503258b3681826',1,'stan::math']]], + ['validate_5fmatching_5fdims_2ehpp',['validate_matching_dims.hpp',['../validate__matching__dims_8hpp.html',1,'']]], + ['validate_5fmatching_5fsizes',['validate_matching_sizes',['../namespacestan_1_1math.html#ad53597362a6c7c1158057959fcac292e',1,'stan::math::validate_matching_sizes(const std::vector< T1 > &x1, const std::vector< T2 > &x2, const char *msg)'],['../namespacestan_1_1math.html#a41ec7da4239a007943fc013e07cba3aa',1,'stan::math::validate_matching_sizes(const Eigen::Matrix< T1, R1, C1 > &x1, const Eigen::Matrix< T2, R2, C2 > &x2, const char *msg)'],['../namespacestan_1_1math.html#a263171956617573c8cd3c1d18fd6ceb3',1,'stan::math::validate_matching_sizes(const Eigen::Block< Derived > &x1, const Eigen::Matrix< T2, R2, C2 > &x2, const char *msg)'],['../namespacestan_1_1math.html#a8129ae89cd2dbb265cb12b92f8e04422',1,'stan::math::validate_matching_sizes(const Eigen::Matrix< T1, R1, C1 > &x1, const Eigen::Block< Derived > &x2, const char *msg)'],['../namespacestan_1_1math.html#affd4c08b7da0d68132fa34cb400ea42f',1,'stan::math::validate_matching_sizes(const Eigen::Block< Derived1 > &x1, const Eigen::Block< Derived2 > &x2, const char *msg)']]], + ['validate_5fmatching_5fsizes_2ehpp',['validate_matching_sizes.hpp',['../validate__matching__sizes_8hpp.html',1,'']]], + ['validate_5fmultiplicable',['validate_multiplicable',['../namespacestan_1_1math.html#a2f8623dd71addc9eb308adbd79650173',1,'stan::math']]], + ['validate_5fmultiplicable_2ehpp',['validate_multiplicable.hpp',['../validate__multiplicable_8hpp.html',1,'']]], + ['validate_5fnon_5fnegative_5findex',['validate_non_negative_index',['../namespacestan_1_1math.html#a3abcd9b7deac4b6378eae04ee927f498',1,'stan::math']]], + ['validate_5fnon_5fnegative_5findex_2ehpp',['validate_non_negative_index.hpp',['../validate__non__negative__index_8hpp.html',1,'']]], + ['validate_5fnon_5fnegative_5frep',['validate_non_negative_rep',['../namespacestan_1_1math.html#aa5fcab47a4a1c557ed22ce8c9dfa4690',1,'stan::math']]], + ['validate_5fnon_5fnegative_5frep_2ehpp',['validate_non_negative_rep.hpp',['../validate__non__negative__rep_8hpp.html',1,'']]], + ['validate_5fnonzero_5fsize',['validate_nonzero_size',['../namespacestan_1_1math.html#ab4ad50f7ce663f08887cc98f00325102',1,'stan::math']]], + ['validate_5fnonzero_5fsize_2ehpp',['validate_nonzero_size.hpp',['../validate__nonzero__size_8hpp.html',1,'']]], + ['validate_5frow_5findex',['validate_row_index',['../namespacestan_1_1math.html#a89eabaf81a12e1ba52dc95991f3c7cec',1,'stan::math']]], + ['validate_5frow_5findex_2ehpp',['validate_row_index.hpp',['../validate__row__index_8hpp.html',1,'']]], + ['validate_5fsample',['validate_sample',['../structstan_1_1gm_1_1validate__sample.html',1,'stan::gm']]], + ['validate_5fsample_5ff',['validate_sample_f',['../namespacestan_1_1gm.html#ac38f7f49db3ee6f8fabb7b317eaa126c',1,'stan::gm']]], + ['validate_5fsquare',['validate_square',['../namespacestan_1_1math.html#a80e2967cc986a918329c7e226aa97d35',1,'stan::math']]], + ['validate_5fsquare_2ehpp',['validate_square.hpp',['../validate__square_8hpp.html',1,'']]], + ['validate_5fstd_5fvector_5findex',['validate_std_vector_index',['../namespacestan_1_1math.html#aa8bef2aad224049eb13f5de732d60805',1,'stan::math']]], + ['validate_5fstd_5fvector_5findex_2ehpp',['validate_std_vector_index.hpp',['../validate__std__vector__index_8hpp.html',1,'']]], + ['validate_5fsymmetric',['validate_symmetric',['../namespacestan_1_1math.html#a3e7c964f96b6454223b9204f463ad674',1,'stan::math']]], + ['validate_5fsymmetric_2ehpp',['validate_symmetric.hpp',['../validate__symmetric_8hpp.html',1,'']]], + ['validate_5ftransformed_5fparams_5fvisgen',['validate_transformed_params_visgen',['../structstan_1_1gm_1_1validate__transformed__params__visgen.html',1,'stan::gm']]], + ['validate_5ftransformed_5fparams_5fvisgen',['validate_transformed_params_visgen',['../structstan_1_1gm_1_1validate__transformed__params__visgen.html#a7a4e7704245e4a73bc886041c82c91e5',1,'stan::gm::validate_transformed_params_visgen']]], + ['validate_5fvar_5fdecl_5fvisgen',['validate_var_decl_visgen',['../structstan_1_1gm_1_1validate__var__decl__visgen.html',1,'stan::gm']]], + ['validate_5fvar_5fdecl_5fvisgen',['validate_var_decl_visgen',['../structstan_1_1gm_1_1validate__var__decl__visgen.html#a271a3fadedfb0fe40560244c26f4aef4',1,'stan::gm::validate_var_decl_visgen']]], + ['validate_5fvector',['validate_vector',['../namespacestan_1_1math.html#a883b9b83e5ca3d865f9dcf26d57a69fe',1,'stan::math']]], + ['validate_5fvector_2ehpp',['validate_vector.hpp',['../validate__vector_8hpp.html',1,'']]], + ['vals_5fi',['vals_i',['../classstan_1_1io_1_1dump.html#ac9a6ba06213461f7d86c5823813de2bd',1,'stan::io::dump::vals_i()'],['../classstan_1_1io_1_1var__context.html#ae491a228dc66136ed04f9d22b18386d2',1,'stan::io::var_context::vals_i()']]], + ['vals_5fr',['vals_r',['../classstan_1_1io_1_1dump.html#aa9b7bc08c1152a313e90b74ade5338b5',1,'stan::io::dump::vals_r()'],['../classstan_1_1io_1_1var__context.html#aaf3c30da7aa7a81b67d0cb3a480a5295',1,'stan::io::var_context::vals_r()']]], + ['value',['value',['../structstan_1_1is__constant.html#a9f8df8637f49cd02a47f8c6c2c775777aecafc97e964e672dd93bcb490a0a1811',1,'stan::is_constant::value()'],['../structstan_1_1is__constant__struct.html#a601169d4607d1347bd20eb918809a922a3f9610c0a10a3879fccf6f212dd3d411',1,'stan::is_constant_struct::value()'],['../structstan_1_1is__constant__struct_3_01std_1_1vector_3_01_t_01_4_01_4.html#ac35de45d53f720014d1d6c9341facc38a889b9838820d11325b1b1e2e6dcd1f62',1,'stan::is_constant_struct< std::vector< T > >::value()'],['../structstan_1_1is__constant__struct_3_01_eigen_1_1_matrix_3_01_t_00_01_r_00_01_c_01_4_01_4.html#a629489369f685966d67e23b49b3a765ca8a919616f9227fcfa43cb7134758120a',1,'stan::is_constant_struct< Eigen::Matrix< T, R, C > >::value()'],['../structstan_1_1is__constant__struct_3_01_eigen_1_1_block_3_01_t_01_4_01_4.html#a47daf157025983c39d6e5b7789c05206ae47d85a4a43fdce9e0a2be294e6e0622',1,'stan::is_constant_struct< Eigen::Block< T > >::value()'],['../structstan_1_1is__vector.html#a69abd37dca972430e0f61ea33a19ce5da9b19e1572754024bf83375a19efee164',1,'stan::is_vector::value()'],['../structstan_1_1is__vector_3_01const_01_t_01_4.html#ad3a0ba8876c7203c3ae3e20dd7904da4ab7b181e7406ecc9d9512f53eeb423835',1,'stan::is_vector< const T >::value()'],['../structstan_1_1is__vector_3_01std_1_1vector_3_01_t_01_4_01_4.html#a820092c09f0441ab121b88f94e7034f5a8669507d2c0cf8d2013fa55cbc040690',1,'stan::is_vector< std::vector< T > >::value()'],['../structstan_1_1is__vector_3_01_eigen_1_1_matrix_3_01_t_00_01_eigen_1_1_dynamic_00_011_01_4_01_4.html#a38d7fc87cb5dbb66fb65e9dd8c257273a75a67f94582ddd21b4956e5540578114',1,'stan::is_vector< Eigen::Matrix< T, Eigen::Dynamic, 1 > >::value()'],['../structstan_1_1is__vector_3_01_eigen_1_1_matrix_3_01_t_00_011_00_01_eigen_1_1_dynamic_01_4_01_4.html#ae014ed595604daf1ca469933b46e9126a060ce69961a2ceb1cc29cc4861aa527e',1,'stan::is_vector< Eigen::Matrix< T, 1, Eigen::Dynamic > >::value()'],['../structstan_1_1is__vector__like.html#a991e328843789ff8e8976aa11aecb426a2113100a63bb957b1ada362a39a22213',1,'stan::is_vector_like::value()'],['../structstan_1_1is__vector__like_3_01_t_01_5_01_4.html#ab609c9cc8a50da1025789263899aa807a50f6d9fb5990e3e623e6e02458926009',1,'stan::is_vector_like< T * >::value()'],['../structstan_1_1is__vector__like_3_01const_01_t_01_4.html#aa1518e780b217cf8d6acf068792c726dab859ca004282bbe79a5eeda7238d86da',1,'stan::is_vector_like< const T >::value()'],['../structstan_1_1is__vector__like_3_01_eigen_1_1_matrix_3_01_t_00_01_eigen_1_1_dynamic_00_01_eigen_1_1_dynamic_01_4_01_4.html#ae847915a9aa58775e6fbee811f5e20c8acc3bb708be577474e9cd1e11ad5a4ba1',1,'stan::is_vector_like< Eigen::Matrix< T, Eigen::Dynamic, Eigen::Dynamic > >::value()'],['../structstan_1_1is__fvar.html#aee7f99a61d7b21a79c1dfd4a3619571eab1813e4af114b125e86c4eefb1c67481',1,'stan::is_fvar::value()'],['../structstan_1_1is__fvar_3_01stan_1_1agrad_1_1fvar_3_01_t_01_4_01_4.html#a60189a2e893c9b483c218f57503672caa2a6d75c410b27b41f578e8a7ede11c56',1,'stan::is_fvar< stan::agrad::fvar< T > >::value()'],['../structstan_1_1is__var.html#a2adee59171c897185a772cd0987caef6aaeb0f9a9eead1ac6cc943d6a1974a4c1',1,'stan::is_var::value()'],['../structstan_1_1is__var_3_01stan_1_1agrad_1_1var_01_4.html#a82e1a086145eecf5ccc03374a3b41192a754935335e15e1f2b61f2bd9bf15e65b',1,'stan::is_var< stan::agrad::var >::value()'],['../structstan_1_1contains__fvar.html#a140698e0d236727d9723e6831750d2aca5a1eddf5b1539585920063fb6cd6835b',1,'stan::contains_fvar::value()'],['../structstan_1_1is__var__or__arithmetic.html#a7242e3ffd78e362fd4f4a940d39ed7a6a4e3e0e0100aa814492acbd85e2138643',1,'stan::is_var_or_arithmetic::value()'],['../structstan_1_1prob_1_1include__summand.html#a53abfbd14a204b9ceb4ed749b9183aa9a66741e4ae3f0a68c0ac9c9143c9481dd',1,'stan::prob::include_summand::value()'],['../classstan_1_1gm_1_1list__argument.html#a5c53e1ae1cbfea372b538425868f0c42',1,'stan::gm::list_argument::value()'],['../classstan_1_1gm_1_1singleton__argument.html#a7c7d0321e410a7cf3cecfcda7ddbaa4a',1,'stan::gm::singleton_argument::value()']]], + ['value_5fof',['value_of',['../namespacestan_1_1agrad.html#a8ce52917ab0cd91c9db4d615f1988e11',1,'stan::agrad::value_of(const agrad::var &v)'],['../namespacestan_1_1agrad.html#a241ff687791a297532aeed5955d6b137',1,'stan::agrad::value_of(const Eigen::Matrix< double, R, C > &M)'],['../namespacestan_1_1agrad.html#aef1424bdc8ef1058ec2cef4584bb6d5f',1,'stan::agrad::value_of(const Eigen::Matrix< var, R, C > &M)'],['../namespacestan_1_1math.html#a73087d72fd937f4be66684bd2613ae6e',1,'stan::math::value_of()']]], + ['value_5fof_2ehpp',['value_of.hpp',['../agrad_2rev_2functions_2value__of_8hpp.html',1,'']]], + ['value_5fof_2ehpp',['value_of.hpp',['../agrad_2rev_2matrix_2value__of_8hpp.html',1,'']]], + ['value_5fof_2ehpp',['value_of.hpp',['../math_2functions_2value__of_8hpp.html',1,'']]], + ['value_5fof_3c_20double_20_3e',['value_of< double >',['../namespacestan_1_1math.html#a2d7774df98215b7d113075019d74ebbf',1,'stan::math']]], + ['valued_5fargument',['valued_argument',['../classstan_1_1gm_1_1valued__argument.html',1,'stan::gm']]], + ['valued_5fargument_2ehpp',['valued_argument.hpp',['../valued__argument_8hpp.html',1,'']]], + ['values',['values',['../classstan_1_1gm_1_1list__argument.html#a0e44b787e5dd125a719e8ea75d621ceb',1,'stan::gm::list_argument']]], + ['var',['var',['../classstan_1_1agrad_1_1vari.html#a335628f2e9085305224b4f9cc6e95ed5',1,'stan::agrad::vari::var()'],['../classstan_1_1agrad_1_1var.html#adfb9d02c364f36d433ebbe551ed5cf6d',1,'stan::agrad::var::var(vari *vi)'],['../classstan_1_1agrad_1_1var.html#a338e1033dc034d6333060ec779200146',1,'stan::agrad::var::var()'],['../classstan_1_1agrad_1_1var.html#af45c7283eb94f118473d6590387ae2bb',1,'stan::agrad::var::var(bool b)'],['../classstan_1_1agrad_1_1var.html#a36df08fb95336e5c4475768447cc17dc',1,'stan::agrad::var::var(char c)'],['../classstan_1_1agrad_1_1var.html#add6c4253ae479385de58f2dd02e5e82e',1,'stan::agrad::var::var(short n)'],['../classstan_1_1agrad_1_1var.html#ac4651f0c746a0f08974866f3052b7137',1,'stan::agrad::var::var(unsigned short n)'],['../classstan_1_1agrad_1_1var.html#a8a75e2e91a261d9919cc05ca0e2535c3',1,'stan::agrad::var::var(int n)'],['../classstan_1_1agrad_1_1var.html#a3044e37414ac3abe97862ec2a9bbc7a7',1,'stan::agrad::var::var(unsigned int n)'],['../classstan_1_1agrad_1_1var.html#a5603249b00e49e3b3176a7652274bd8f',1,'stan::agrad::var::var(long int n)'],['../classstan_1_1agrad_1_1var.html#acdc706002d30bae61e31b94706110f66',1,'stan::agrad::var::var(unsigned long int n)'],['../classstan_1_1agrad_1_1var.html#a4160c721453aae2e1ab1a10d082e5ea4',1,'stan::agrad::var::var(float x)'],['../classstan_1_1agrad_1_1var.html#a5af3ea95797e2c3789a01a32dab060e6',1,'stan::agrad::var::var(double x)'],['../classstan_1_1agrad_1_1var.html#ab2b3011f87a92d85b32f6a0da738c46e',1,'stan::agrad::var::var(long double x)'],['../classstan_1_1agrad_1_1var.html#adfb9d02c364f36d433ebbe551ed5cf6d',1,'stan::agrad::var::var(vari *vi)'],['../classstan_1_1agrad_1_1var.html#a338e1033dc034d6333060ec779200146',1,'stan::agrad::var::var()'],['../classstan_1_1agrad_1_1var.html#af45c7283eb94f118473d6590387ae2bb',1,'stan::agrad::var::var(bool b)'],['../classstan_1_1agrad_1_1var.html#a36df08fb95336e5c4475768447cc17dc',1,'stan::agrad::var::var(char c)'],['../classstan_1_1agrad_1_1var.html#add6c4253ae479385de58f2dd02e5e82e',1,'stan::agrad::var::var(short n)'],['../classstan_1_1agrad_1_1var.html#ac4651f0c746a0f08974866f3052b7137',1,'stan::agrad::var::var(unsigned short n)'],['../classstan_1_1agrad_1_1var.html#a8a75e2e91a261d9919cc05ca0e2535c3',1,'stan::agrad::var::var(int n)'],['../classstan_1_1agrad_1_1var.html#a3044e37414ac3abe97862ec2a9bbc7a7',1,'stan::agrad::var::var(unsigned int n)'],['../classstan_1_1agrad_1_1var.html#a5603249b00e49e3b3176a7652274bd8f',1,'stan::agrad::var::var(long int n)'],['../classstan_1_1agrad_1_1var.html#acdc706002d30bae61e31b94706110f66',1,'stan::agrad::var::var(unsigned long int n)'],['../classstan_1_1agrad_1_1var.html#a050ffd5f911d423f27673bc531e1e9c1',1,'stan::agrad::var::var(unsigned long long n)'],['../classstan_1_1agrad_1_1var.html#a078422d44f10f7e4dadfeb9424f6fa94',1,'stan::agrad::var::var(long long n)'],['../classstan_1_1agrad_1_1var.html#a4160c721453aae2e1ab1a10d082e5ea4',1,'stan::agrad::var::var(float x)'],['../classstan_1_1agrad_1_1var.html#a5af3ea95797e2c3789a01a32dab060e6',1,'stan::agrad::var::var(double x)'],['../classstan_1_1agrad_1_1var.html#ab2b3011f87a92d85b32f6a0da738c46e',1,'stan::agrad::var::var(long double x)']]], + ['var',['var',['../classstan_1_1agrad_1_1var.html',1,'stan::agrad']]], + ['var_2ehpp',['var.hpp',['../var_8hpp.html',1,'']]], + ['var_5fadaptation',['var_adaptation',['../classstan_1_1mcmc_1_1var__adaptation.html#a6a890bf02c8dba36880f8e273b2f9549',1,'stan::mcmc::var_adaptation']]], + ['var_5fadaptation',['var_adaptation',['../classstan_1_1mcmc_1_1var__adaptation.html',1,'stan::mcmc']]], + ['var_5fadaptation_2ehpp',['var_adaptation.hpp',['../var__adaptation_8hpp.html',1,'']]], + ['var_5falloc_5fstack_5f',['var_alloc_stack_',['../namespacestan_1_1agrad.html#aab83e8df917b0f383dc6c2821fac522a',1,'stan::agrad']]], + ['var_5fcontext',['var_context',['../classstan_1_1io_1_1var__context.html',1,'stan::io']]], + ['var_5fcontext_2ehpp',['var_context.hpp',['../var__context_8hpp.html',1,'']]], + ['var_5fdecl',['var_decl',['../structstan_1_1gm_1_1var__decl.html#a609249d793137a66288e59763f0c0ca1',1,'stan::gm::var_decl::var_decl()'],['../structstan_1_1gm_1_1var__decl.html#ad6b9ea345106c83e5c9a006142d195e7',1,'stan::gm::var_decl::var_decl(const var_decl_t &decl)'],['../structstan_1_1gm_1_1var__decl.html#a2e0ba8dd969d92d891856d0e9b0d6b15',1,'stan::gm::var_decl::var_decl(const nil &decl)'],['../structstan_1_1gm_1_1var__decl.html#aea6f39c72a547284867577e99479f92c',1,'stan::gm::var_decl::var_decl(const int_var_decl &decl)'],['../structstan_1_1gm_1_1var__decl.html#ace6a19a8b112ee1bae58bb097cc4cde1',1,'stan::gm::var_decl::var_decl(const double_var_decl &decl)'],['../structstan_1_1gm_1_1var__decl.html#adabe31b1d68c4fedd82c583cebf31144',1,'stan::gm::var_decl::var_decl(const vector_var_decl &decl)'],['../structstan_1_1gm_1_1var__decl.html#a99d47a87450d915d42f2a5ab0731a307',1,'stan::gm::var_decl::var_decl(const row_vector_var_decl &decl)'],['../structstan_1_1gm_1_1var__decl.html#ac4ec89ef8d699e42d15ad4313a85b912',1,'stan::gm::var_decl::var_decl(const matrix_var_decl &decl)'],['../structstan_1_1gm_1_1var__decl.html#a1375d5fae7161b6788290acb062bf332',1,'stan::gm::var_decl::var_decl(const simplex_var_decl &decl)'],['../structstan_1_1gm_1_1var__decl.html#a02bd1875a6b106c8200a8c1c268ce23a',1,'stan::gm::var_decl::var_decl(const unit_vector_var_decl &decl)'],['../structstan_1_1gm_1_1var__decl.html#a6c5e46d11317ad8b9952c3732a50ba3a',1,'stan::gm::var_decl::var_decl(const ordered_var_decl &decl)'],['../structstan_1_1gm_1_1var__decl.html#a6c0661f7389c05f0c1a7f2ab94886205',1,'stan::gm::var_decl::var_decl(const positive_ordered_var_decl &decl)'],['../structstan_1_1gm_1_1var__decl.html#a9557a2d4d9e64c5bccc65c7110c726f5',1,'stan::gm::var_decl::var_decl(const cholesky_factor_var_decl &decl)'],['../structstan_1_1gm_1_1var__decl.html#a700ecb84f6ed7e2f100409c026cc6a6a',1,'stan::gm::var_decl::var_decl(const cov_matrix_var_decl &decl)'],['../structstan_1_1gm_1_1var__decl.html#acacc89bd6b788a9ea8b509153957e21e',1,'stan::gm::var_decl::var_decl(const corr_matrix_var_decl &decl)']]], + ['var_5fdecl',['var_decl',['../structstan_1_1gm_1_1var__decl.html',1,'stan::gm']]], + ['var_5fdecl_5fr',['var_decl_r',['../structstan_1_1gm_1_1var__decls__grammar.html#a2ec92bd1cdd1d5fca11adfc6d51d9090',1,'stan::gm::var_decls_grammar']]], + ['var_5fdecl_5ft',['var_decl_t',['../structstan_1_1gm_1_1var__decl.html#a053ae171df165a1fba298555456bb7ee',1,'stan::gm::var_decl']]], + ['var_5fdecls_5fg',['var_decls_g',['../structstan_1_1gm_1_1program__grammar.html#a5449b77a88443dc754276cb5e19320ef',1,'stan::gm::program_grammar::var_decls_g()'],['../structstan_1_1gm_1_1statement__grammar.html#aa09ea489cb32def2470106aea74eb2ce',1,'stan::gm::statement_grammar::var_decls_g()']]], + ['var_5fdecls_5fgrammar',['var_decls_grammar',['../structstan_1_1gm_1_1var__decls__grammar.html#ae9971b3fb03092c02d4f4d12a9d05277',1,'stan::gm::var_decls_grammar']]], + ['var_5fdecls_5fgrammar',['var_decls_grammar',['../structstan_1_1gm_1_1var__decls__grammar.html',1,'stan::gm']]], + ['var_5fdecls_5fgrammar_2ehpp',['var_decls_grammar.hpp',['../var__decls__grammar_8hpp.html',1,'']]], + ['var_5fdecls_5fgrammar_5fdef_2ehpp',['var_decls_grammar_def.hpp',['../var__decls__grammar__def_8hpp.html',1,'']]], + ['var_5fdecls_5fgrammar_5finst_2ecpp',['var_decls_grammar_inst.cpp',['../var__decls__grammar__inst_8cpp.html',1,'']]], + ['var_5fdecls_5fr',['var_decls_r',['../structstan_1_1gm_1_1var__decls__grammar.html#ac22f2373eb5a3a464aeff6f74086ab4f',1,'stan::gm::var_decls_grammar']]], + ['var_5fdims_5f',['var_dims_',['../structstan_1_1gm_1_1assignment.html#a2d2d3c02b849dae3dbf789473eac2ea0',1,'stan::gm::assignment']]], + ['var_5flhs_5fr',['var_lhs_r',['../structstan_1_1gm_1_1statement__grammar.html#aec8e5ec3102aa27c455d4eeb321ba74c',1,'stan::gm::statement_grammar']]], + ['var_5fmap_5f',['var_map_',['../structstan_1_1gm_1_1contains__var.html#abf59ec75e5e6729db7424da7ecce4ea7',1,'stan::gm::contains_var::var_map_()'],['../structstan_1_1gm_1_1contains__nonparam__var.html#adddb447cfb03a1031db491d6ff004d8d',1,'stan::gm::contains_nonparam_var::var_map_()'],['../structstan_1_1gm_1_1expression__grammar.html#a0bf2d69a4ee05a6f7f073087afe40929',1,'stan::gm::expression_grammar::var_map_()'],['../structstan_1_1gm_1_1program__grammar.html#a612c1a5b4a954dd9960d00d9d621a738',1,'stan::gm::program_grammar::var_map_()'],['../structstan_1_1gm_1_1statement__2__grammar.html#a3626cba34b0c81150a12ee6b045fd197',1,'stan::gm::statement_2_grammar::var_map_()'],['../structstan_1_1gm_1_1statement__grammar.html#a3e38af92fc643463ac93d825d5997c7d',1,'stan::gm::statement_grammar::var_map_()'],['../structstan_1_1gm_1_1term__grammar.html#a8a79bec27b23f79504c768be5942c958',1,'stan::gm::term_grammar::var_map_()'],['../structstan_1_1gm_1_1var__decls__grammar.html#a0a5d7aec5bad30ea0164823c04e04faf',1,'stan::gm::var_decls_grammar::var_map_()']]], + ['var_5fnochain_5fstack_5f',['var_nochain_stack_',['../namespacestan_1_1agrad.html#a1da2503303417b341d207feb1bfc9ef1',1,'stan::agrad']]], + ['var_5forigin',['var_origin',['../namespacestan_1_1gm.html#a37c3937aa5961352d95274c274bf0b17',1,'stan::gm']]], + ['var_5fresizer_5f',['var_resizer_',['../structstan_1_1gm_1_1dump__member__var__visgen.html#ae6b91a5e31677edd71859d18ad79b24c',1,'stan::gm::dump_member_var_visgen']]], + ['var_5fresizing_5fvisgen',['var_resizing_visgen',['../structstan_1_1gm_1_1var__resizing__visgen.html',1,'stan::gm']]], + ['var_5fresizing_5fvisgen',['var_resizing_visgen',['../structstan_1_1gm_1_1var__resizing__visgen.html#ac5178b0a38aa8258bcbf689ae03d895b',1,'stan::gm::var_resizing_visgen']]], + ['var_5fsize_5fvalidating_5fvisgen',['var_size_validating_visgen',['../structstan_1_1gm_1_1var__size__validating__visgen.html',1,'stan::gm']]], + ['var_5fsize_5fvalidating_5fvisgen',['var_size_validating_visgen',['../structstan_1_1gm_1_1var__size__validating__visgen.html#ade6d9d7b7a8904cf3d32ff16283143cc',1,'stan::gm::var_size_validating_visgen']]], + ['var_5fsize_5fvalidator_5f',['var_size_validator_',['../structstan_1_1gm_1_1dump__member__var__visgen.html#a977c2256249340da5264d61fc42fa37b',1,'stan::gm::dump_member_var_visgen::var_size_validator_()'],['../structstan_1_1gm_1_1generate__init__visgen.html#a81dbd32331a4a957f17f7dfd9a9259d0',1,'stan::gm::generate_init_visgen::var_size_validator_()']]], + ['var_5fstack_2ecpp',['var_stack.cpp',['../var__stack_8cpp.html',1,'']]], + ['var_5fstack_2ehpp',['var_stack.hpp',['../var__stack_8hpp.html',1,'']]], + ['var_5fstack_5f',['var_stack_',['../agrad__thread__safe_8hpp.html#ae14d7988968e318f7272640e9bd558aa',1,'var_stack_(): agrad_thread_safe.hpp'],['../namespacestan_1_1agrad.html#a02d750bf3c4aca82309533ecb869237b',1,'stan::agrad::var_stack_()']]], + ['var_5ftype_5f',['var_type_',['../structstan_1_1gm_1_1assignment.html#a32c7f69945a9335aad93f5b6c44b6b34',1,'stan::gm::assignment']]], + ['vari',['vari',['../classstan_1_1agrad_1_1vari.html',1,'stan::agrad']]], + ['vari',['vari',['../classstan_1_1agrad_1_1vari.html#add6d0976a3103aebe8b529fb3a4aede3',1,'stan::agrad::vari::vari(const double x)'],['../classstan_1_1agrad_1_1vari.html#add6d0976a3103aebe8b529fb3a4aede3',1,'stan::agrad::vari::vari(const double x)'],['../classstan_1_1agrad_1_1vari.html#a38eab19f6ecee276e3f306c14df18403',1,'stan::agrad::vari::vari(const double x, bool stacked)']]], + ['vari_2ehpp',['vari.hpp',['../vari_8hpp.html',1,'']]], + ['variable',['variable',['../structstan_1_1gm_1_1variable.html#a4d6553f00364503f9b3c1b09cce2742a',1,'stan::gm::variable::variable()'],['../structstan_1_1gm_1_1variable.html#a7a550a388056ef05489c8947aaa4d664',1,'stan::gm::variable::variable(std::string name)']]], + ['variable',['variable',['../structstan_1_1gm_1_1variable.html',1,'stan::gm']]], + ['variable_5f',['variable_',['../structstan_1_1gm_1_1for__statement.html#acc156ec777cc5ca5a60e65506a94c60f',1,'stan::gm::for_statement']]], + ['variable_5fdims',['variable_dims',['../structstan_1_1gm_1_1variable__dims.html#a58ef01ac93eb73561446431890023fcb',1,'stan::gm::variable_dims::variable_dims()'],['../structstan_1_1gm_1_1variable__dims.html#aa35ae19b846c7eed5571dc6c62b51629',1,'stan::gm::variable_dims::variable_dims(std::string const &name, std::vector< expression > const &dims)']]], + ['variable_5fdims',['variable_dims',['../structstan_1_1gm_1_1variable__dims.html',1,'stan::gm']]], + ['variable_5fmap',['variable_map',['../structstan_1_1gm_1_1variable__map.html',1,'stan::gm']]], + ['variable_5fr',['variable_r',['../structstan_1_1gm_1_1term__grammar.html#ab0c2f2623b8f78f859c358cdf3e161a6',1,'stan::gm::term_grammar']]], + ['variance',['variance',['../classstan_1_1mcmc_1_1chains.html#ada94492fb9209194467c40ee0c70ae7e',1,'stan::mcmc::chains::variance(const int chain, const int index)'],['../classstan_1_1mcmc_1_1chains.html#a2a490e9c65ef24c24d90363c762606cb',1,'stan::mcmc::chains::variance(const int index)'],['../classstan_1_1mcmc_1_1chains.html#a5e82c2ed22640dc97e77000030cad474',1,'stan::mcmc::chains::variance(const int chain, const std::string &name)'],['../classstan_1_1mcmc_1_1chains.html#ac73d02b763998c65a573f3e3f770833b',1,'stan::mcmc::chains::variance(const std::string &name)'],['../namespacestan_1_1agrad.html#a4cb2a39469233dedb86b1000789a9595',1,'stan::agrad::variance(const std::vector< var > &v)'],['../namespacestan_1_1agrad.html#a7ef648c386bf96d4cdc8b688f8de02af',1,'stan::agrad::variance(const Eigen::Matrix< var, R, C > &m)'],['../namespacestan_1_1math.html#aa433ac2fc47bbd40a6d87f62574dff85',1,'stan::math::variance(const std::vector< T > &v)'],['../namespacestan_1_1math.html#a1f055da8754c2215aac70d7787692f54',1,'stan::math::variance(const Eigen::Matrix< T, R, C > &m)']]], + ['variance_2ehpp',['variance.hpp',['../math_2matrix_2variance_8hpp.html',1,'']]], + ['variance_2ehpp',['variance.hpp',['../agrad_2rev_2matrix_2variance_8hpp.html',1,'']]], + ['varis_5f',['varis_',['../classstan_1_1agrad_1_1precomputed__gradients__vari.html#a0f7895b9edc0610a09990e4179c2904e',1,'stan::agrad::precomputed_gradients_vari']]], + ['vd_5fvari_2ehpp',['vd_vari.hpp',['../vd__vari_8hpp.html',1,'']]], + ['vdd_5fvari_2ehpp',['vdd_vari.hpp',['../vdd__vari_8hpp.html',1,'']]], + ['vdv_5fvari_2ehpp',['vdv_vari.hpp',['../vdv__vari_8hpp.html',1,'']]], + ['vector',['vector',['../classstan_1_1io_1_1reader.html#ac7cbe04c9a1439e20b27c3cf612bd963',1,'stan::io::reader']]], + ['vector_5fconstrain',['vector_constrain',['../classstan_1_1io_1_1reader.html#a393939c8de7bd2609b069424244b005a',1,'stan::io::reader::vector_constrain(size_t m)'],['../classstan_1_1io_1_1reader.html#aec8c3e697090c981438b94da63c02ccc',1,'stan::io::reader::vector_constrain(size_t m, T &)']]], + ['vector_5fd',['vector_d',['../namespacestan_1_1math.html#a0c7ab54df86be3a3d61e58623c210d86',1,'stan::math::vector_d()'],['../namespacestan_1_1optimization.html#af557a7d4dc0f32c569400f2b71c76d1d',1,'stan::optimization::vector_d()']]], + ['vector_5fdecl_5fr',['vector_decl_r',['../structstan_1_1gm_1_1var__decls__grammar.html#abc85787fdc330600e8ed8418a29fb6ac',1,'stan::gm::var_decls_grammar']]], + ['vector_5ffd',['vector_fd',['../namespacestan_1_1agrad.html#a50e8b3ee954a699c1467801ab52be810',1,'stan::agrad']]], + ['vector_5fffd',['vector_ffd',['../namespacestan_1_1agrad.html#a97cd52b23aca617183eb7deadb1c6d9d',1,'stan::agrad']]], + ['vector_5fffv',['vector_ffv',['../namespacestan_1_1agrad.html#a96902ae4f8847b57803a5ac7e5d9754d',1,'stan::agrad']]], + ['vector_5ffv',['vector_fv',['../namespacestan_1_1agrad.html#a4ee7f0ffda84be0aec51dfd293951daf',1,'stan::agrad']]], + ['vector_5flb',['vector_lb',['../classstan_1_1io_1_1reader.html#ae6eeeaea16178783def48d93e92e502e',1,'stan::io::reader']]], + ['vector_5flb_5fconstrain',['vector_lb_constrain',['../classstan_1_1io_1_1reader.html#a8edd356b9b6575e74458dfc36fd1079c',1,'stan::io::reader::vector_lb_constrain(const TL lb, size_t m)'],['../classstan_1_1io_1_1reader.html#a380b2abea05be45eef534178ccddae74',1,'stan::io::reader::vector_lb_constrain(const TL lb, size_t m, T &lp)']]], + ['vector_5flb_5funconstrain',['vector_lb_unconstrain',['../classstan_1_1io_1_1writer.html#ad47362a39537ff1b5d771780ee652d2b',1,'stan::io::writer']]], + ['vector_5flub',['vector_lub',['../classstan_1_1io_1_1reader.html#acfa86e4338c499595998dd4dc0b58c6d',1,'stan::io::reader']]], + ['vector_5flub_5fconstrain',['vector_lub_constrain',['../classstan_1_1io_1_1reader.html#aa0eb51076e214b1cfee60b70260186c8',1,'stan::io::reader::vector_lub_constrain(const TL lb, const TU ub, size_t m)'],['../classstan_1_1io_1_1reader.html#a6f0780b890a223ecc7840732bda385e5',1,'stan::io::reader::vector_lub_constrain(const TL lb, const TU ub, size_t m, T &lp)']]], + ['vector_5flub_5funconstrain',['vector_lub_unconstrain',['../classstan_1_1io_1_1writer.html#a2cd367320f480096f724c2e180f6abfe',1,'stan::io::writer']]], + ['vector_5ft',['vector_t',['../classstan_1_1io_1_1reader.html#acc7ad774f8ec903caa164a9ac1e78b30',1,'stan::io::reader::vector_t()'],['../classstan_1_1io_1_1writer.html#a4f9ede8dc253f291c7a27cacd03cf542',1,'stan::io::writer::vector_t()'],['../classstan_1_1optimization_1_1_b_f_g_s_line_search.html#af45bef442ce47a3821c2c19292283ecd',1,'stan::optimization::BFGSLineSearch::vector_t()'],['../namespacestan_1_1gm.html#a994b5bf5385c2c96190f9aaf19e0c711',1,'stan::gm::VECTOR_T()']]], + ['vector_5fub',['vector_ub',['../classstan_1_1io_1_1reader.html#a35d1322b79079e9227ae225a480807db',1,'stan::io::reader']]], + ['vector_5fub_5fconstrain',['vector_ub_constrain',['../classstan_1_1io_1_1reader.html#a5f5c24c79245cdcdc447f1d70ab16f67',1,'stan::io::reader::vector_ub_constrain(const TU ub, size_t m)'],['../classstan_1_1io_1_1reader.html#a7c62e6ad093def5f59767807a3c46b74',1,'stan::io::reader::vector_ub_constrain(const TU ub, size_t m, T &lp)']]], + ['vector_5fub_5funconstrain',['vector_ub_unconstrain',['../classstan_1_1io_1_1writer.html#a4d032dfecf63d6cc4f4fbe9acfbf1d26',1,'stan::io::writer']]], + ['vector_5funconstrain',['vector_unconstrain',['../classstan_1_1io_1_1writer.html#a5fac170691f85ce21490c654985c2880',1,'stan::io::writer']]], + ['vector_5fv',['vector_v',['../namespacestan_1_1agrad.html#acf0241b312ef1f17733c24766df1f49f',1,'stan::agrad']]], + ['vector_5fvar_5fdecl',['vector_var_decl',['../structstan_1_1gm_1_1vector__var__decl.html#a75bee96d48f65c3656c0195e9ddd658c',1,'stan::gm::vector_var_decl::vector_var_decl()'],['../structstan_1_1gm_1_1vector__var__decl.html#ae60a0d9f611230785a264fe1057b070c',1,'stan::gm::vector_var_decl::vector_var_decl(range const &range, expression const &M, std::string const &name, std::vector< expression > const &dims)']]], + ['vector_5fvar_5fdecl',['vector_var_decl',['../structstan_1_1gm_1_1vector__var__decl.html',1,'stan::gm']]], + ['vector_5fvari_2ehpp',['vector_vari.hpp',['../vector__vari_8hpp.html',1,'']]], + ['vectord',['vectorD',['../classstan_1_1math_1_1_l_d_l_t__factor_3_01stan_1_1agrad_1_1var_00_01_r_00_01_c_01_4.html#a70f353ecf9a5d7e74e3685fda7c35abb',1,'stan::math::LDLT_factor< stan::agrad::var, R, C >::vectorD()'],['../classstan_1_1math_1_1_l_d_l_t__factor_3_01double_00_01_r_00_01_c_01_4.html#a6cb8d421e1c1578b6ce1885cffe73155',1,'stan::math::LDLT_factor< double, R, C >::vectorD()']]], + ['vectort',['VectorT',['../classstan_1_1optimization_1_1_b_f_g_s_minimizer.html#ae26c7119488745c9d70158da1bc1d2ae',1,'stan::optimization::BFGSMinimizer']]], + ['vectorview',['VectorView',['../classstan_1_1_vector_view.html#a49530fcffe86b987cc16c9db07433a01',1,'stan::VectorView::VectorView(scalar_t &c)'],['../classstan_1_1_vector_view.html#aa8cf0eb6c25b3e6e7ab4164d3327cab3',1,'stan::VectorView::VectorView(std::vector< scalar_t > &v)'],['../classstan_1_1_vector_view.html#a1a2167039be334fe553432580f7ec4ee',1,'stan::VectorView::VectorView(Eigen::Matrix< scalar_t, R, C > &m)'],['../classstan_1_1_vector_view.html#ace98de1e8835b3317330d98fa34b981b',1,'stan::VectorView::VectorView(scalar_t *x)'],['../classstan_1_1_vector_view_3_01const_01_t_00_01is__array_00_01throw__if__accessed_01_4.html#a144dc75865388d9e80c153d6651a9bab',1,'stan::VectorView< const T, is_array, throw_if_accessed >::VectorView(const scalar_t &c)'],['../classstan_1_1_vector_view_3_01const_01_t_00_01is__array_00_01throw__if__accessed_01_4.html#a2e063aacbcb8999b921bce5d52557646',1,'stan::VectorView< const T, is_array, throw_if_accessed >::VectorView(const scalar_t *x)'],['../classstan_1_1_vector_view_3_01const_01_t_00_01is__array_00_01throw__if__accessed_01_4.html#a8a70c613d18b72f45466591168f354dc',1,'stan::VectorView< const T, is_array, throw_if_accessed >::VectorView(const std::vector< scalar_t > &v)'],['../classstan_1_1_vector_view_3_01const_01_t_00_01is__array_00_01throw__if__accessed_01_4.html#af337a1b8ede134a1debe59fbee1cd1e1',1,'stan::VectorView< const T, is_array, throw_if_accessed >::VectorView(const Eigen::Matrix< scalar_t, R, C > &m)'],['../classstan_1_1_vector_view_3_01const_01double_00_01false_00_01false_01_4.html#af57df094db378d9da317b93d23c34ab1',1,'stan::VectorView< const double, false, false >::VectorView()']]], + ['vectorview',['VectorView',['../classstan_1_1_vector_view.html',1,'stan']]], + ['vectorview_3c_20const_20double_2c_20false_2c_20false_20_3e',['VectorView< const double, false, false >',['../classstan_1_1_vector_view_3_01const_01double_00_01false_00_01false_01_4.html',1,'stan']]], + ['vectorview_3c_20const_20t_2c_20is_5farray_2c_20throw_5fif_5faccessed_20_3e',['VectorView< const T, is_array, throw_if_accessed >',['../classstan_1_1_vector_view_3_01const_01_t_00_01is__array_00_01throw__if__accessed_01_4.html',1,'stan']]], + ['vectorview_3c_20double_20_2a_2c_20is_5fvector_3c_20t1_20_3e_3a_3avalue_2c_20is_5fconstant_5fstruct_3c_20t1_20_3e_3a_3avalue_20_3e',['VectorView< double *, is_vector< T1 >::value, is_constant_struct< T1 >::value >',['../classstan_1_1_vector_view.html',1,'stan']]], + ['vectorview_3c_20double_20_2a_2c_20is_5fvector_3c_20t2_20_3e_3a_3avalue_2c_20is_5fconstant_5fstruct_3c_20t2_20_3e_3a_3avalue_20_3e',['VectorView< double *, is_vector< T2 >::value, is_constant_struct< T2 >::value >',['../classstan_1_1_vector_view.html',1,'stan']]], + ['vectorview_3c_20double_20_2a_2c_20is_5fvector_3c_20t3_20_3e_3a_3avalue_2c_20is_5fconstant_5fstruct_3c_20t3_20_3e_3a_3avalue_20_3e',['VectorView< double *, is_vector< T3 >::value, is_constant_struct< T3 >::value >',['../classstan_1_1_vector_view.html',1,'stan']]], + ['vectorview_3c_20double_20_2a_2c_20is_5fvector_3c_20t4_20_3e_3a_3avalue_2c_20is_5fconstant_5fstruct_3c_20t4_20_3e_3a_3avalue_20_3e',['VectorView< double *, is_vector< T4 >::value, is_constant_struct< T4 >::value >',['../classstan_1_1_vector_view.html',1,'stan']]], + ['vectorview_3c_20double_20_2a_2c_20is_5fvector_3c_20t5_20_3e_3a_3avalue_2c_20is_5fconstant_5fstruct_3c_20t5_20_3e_3a_3avalue_20_3e',['VectorView< double *, is_vector< T5 >::value, is_constant_struct< T5 >::value >',['../classstan_1_1_vector_view.html',1,'stan']]], + ['vectorview_3c_20double_20_2a_2c_20is_5fvector_3c_20t6_20_3e_3a_3avalue_2c_20is_5fconstant_5fstruct_3c_20t6_20_3e_3a_3avalue_20_3e',['VectorView< double *, is_vector< T6 >::value, is_constant_struct< T6 >::value >',['../classstan_1_1_vector_view.html',1,'stan']]], + ['verbose_5fevolve',['verbose_evolve',['../classstan_1_1mcmc_1_1base__leapfrog.html#a514877fc7879757485b997d90074393d',1,'stan::mcmc::base_leapfrog']]], + ['version_2ehpp',['version.hpp',['../version_8hpp.html',1,'']]], + ['vi_5f',['vi_',['../classstan_1_1agrad_1_1var.html#af62c13dcd2bfab818579f6715fbda6af',1,'stan::agrad::var']]], + ['vis_5f',['vis_',['../classstan_1_1agrad_1_1op__matrix__vari.html#ac0dbd0805a80054b5cd0335ef8a6b144',1,'stan::agrad::op_matrix_vari::vis_()'],['../classstan_1_1agrad_1_1op__vector__vari.html#a63beb3a08614befd8eca4ed45e4ff438',1,'stan::agrad::op_vector_vari::vis_()']]], + ['visgen',['visgen',['../structstan_1_1gm_1_1visgen.html#a3e7e38e3b411dc26e0451cc3327018ca',1,'stan::gm::visgen']]], + ['visgen',['visgen',['../structstan_1_1gm_1_1visgen.html',1,'stan::gm']]], + ['von_5fmises_2ehpp',['von_mises.hpp',['../von__mises_8hpp.html',1,'']]], + ['von_5fmises_5flog',['von_mises_log',['../namespacestan_1_1prob.html#a5f25537bc65fd6699824c9c5829c9e0a',1,'stan::prob::von_mises_log(T_y const &y, T_loc const &mu, T_scale const &kappa)'],['../namespacestan_1_1prob.html#a34be34d214b53bf3d2f158ebe9b4c93d',1,'stan::prob::von_mises_log(T_y const &y, T_loc const &mu, T_scale const &kappa)']]], + ['vv_5fvari_2ehpp',['vv_vari.hpp',['../vv__vari_8hpp.html',1,'']]], + ['vvd_5fvari_2ehpp',['vvd_vari.hpp',['../vvd__vari_8hpp.html',1,'']]], + ['vvv_5fvari_2ehpp',['vvv_vari.hpp',['../vvv__vari_8hpp.html',1,'']]] +]; diff --git a/doc/api/html/search/all_77.html b/doc/api/html/search/all_77.html new file mode 100644 index 00000000000..73323d3167e --- /dev/null +++ b/doc/api/html/search/all_77.html @@ -0,0 +1,25 @@ + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/doc/api/html/search/all_77.js b/doc/api/html/search/all_77.js new file mode 100644 index 00000000000..80711f29f9a --- /dev/null +++ b/doc/api/html/search/all_77.js @@ -0,0 +1,62 @@ +var searchData= +[ + ['warmup',['warmup',['../structstan_1_1io_1_1stan__csv__timing.html#a26e38502db9dfbb27cf5747c8e96d229',1,'stan::io::stan_csv_timing::warmup()'],['../classstan_1_1mcmc_1_1chains.html#a4a6916b3af4d4f7ecf848a4587157e2d',1,'stan::mcmc::chains::warmup()'],['../classstan_1_1mcmc_1_1chains.html#a5d009a5e09853cdf0181c6bb68f1680a',1,'stan::mcmc::chains::warmup(const int chain)'],['../namespacestan_1_1gm.html#a98eeb261d85ab5d16b98b8cfeaeb31cc',1,'stan::gm::warmup()']]], + ['weibull_2ehpp',['weibull.hpp',['../weibull_8hpp.html',1,'']]], + ['weibull_5fccdf_5flog',['weibull_ccdf_log',['../namespacestan_1_1prob.html#a77b3086174c8c53f64a6040926e463c7',1,'stan::prob']]], + ['weibull_5fcdf',['weibull_cdf',['../namespacestan_1_1prob.html#aebe40f64269bb4cad34cbf93faa258a3',1,'stan::prob']]], + ['weibull_5fcdf_5flog',['weibull_cdf_log',['../namespacestan_1_1prob.html#adf406916a5b4faaa7ff6c09f38029418',1,'stan::prob']]], + ['weibull_5flog',['weibull_log',['../namespacestan_1_1prob.html#ac9dd426180e500e8ce9ab2e401393c5a',1,'stan::prob::weibull_log(const T_y &y, const T_shape &alpha, const T_scale &sigma)'],['../namespacestan_1_1prob.html#ac782f55b0a8994488c5a02f7977799cf',1,'stan::prob::weibull_log(const T_y &y, const T_shape &alpha, const T_scale &sigma)']]], + ['weibull_5frng',['weibull_rng',['../namespacestan_1_1prob.html#a446b0eda07246d07a2d539c9a511ea7e',1,'stan::prob']]], + ['welford_5fcovar_5festimator',['welford_covar_estimator',['../classstan_1_1prob_1_1welford__covar__estimator.html',1,'stan::prob']]], + ['welford_5fcovar_5festimator',['welford_covar_estimator',['../classstan_1_1prob_1_1welford__covar__estimator.html#a185e1767d0634b283c66f8d845bb42d7',1,'stan::prob::welford_covar_estimator']]], + ['welford_5fcovar_5festimator_2ehpp',['welford_covar_estimator.hpp',['../welford__covar__estimator_8hpp.html',1,'']]], + ['welford_5fvar_5festimator',['welford_var_estimator',['../classstan_1_1prob_1_1welford__var__estimator.html',1,'stan::prob']]], + ['welford_5fvar_5festimator',['welford_var_estimator',['../classstan_1_1prob_1_1welford__var__estimator.html#adcb9ab77cf1496f0d81a605e4b503608',1,'stan::prob::welford_var_estimator']]], + ['welford_5fvar_5festimator_2ehpp',['welford_var_estimator.hpp',['../welford__var__estimator_8hpp.html',1,'']]], + ['while_5fstatement',['while_statement',['../structstan_1_1gm_1_1while__statement.html',1,'stan::gm']]], + ['while_5fstatement',['while_statement',['../structstan_1_1gm_1_1while__statement.html#a3d22ddf0941379465a1d233308baa78c',1,'stan::gm::while_statement::while_statement()'],['../structstan_1_1gm_1_1while__statement.html#afcb474205331a4302d5b57e1d334208a',1,'stan::gm::while_statement::while_statement(const expression &condition, const statement &body)']]], + ['while_5fstatement_5fr',['while_statement_r',['../structstan_1_1gm_1_1statement__grammar.html#ab8208e8ab3c4e29d3a153da6566a076d',1,'stan::gm::statement_grammar']]], + ['whitespace',['whitespace',['../structstan_1_1gm_1_1whitespace__grammar.html#a5b8a5755ab01dd301f1a32e1ef3dbf22',1,'stan::gm::whitespace_grammar']]], + ['whitespace_5fgrammar',['whitespace_grammar',['../structstan_1_1gm_1_1whitespace__grammar.html',1,'stan::gm']]], + ['whitespace_5fgrammar',['whitespace_grammar',['../structstan_1_1gm_1_1whitespace__grammar.html#aa64db66377f7420f39162295148f2582',1,'stan::gm::whitespace_grammar']]], + ['whitespace_5fgrammar_2ehpp',['whitespace_grammar.hpp',['../whitespace__grammar_8hpp.html',1,'']]], + ['whitespace_5fgrammar_5fdef_2ehpp',['whitespace_grammar_def.hpp',['../whitespace__grammar__def_8hpp.html',1,'']]], + ['whitespace_5fgrammar_5finst_2ecpp',['whitespace_grammar_inst.cpp',['../whitespace__grammar__inst_8cpp.html',1,'']]], + ['windowed_5fadaptation',['windowed_adaptation',['../classstan_1_1mcmc_1_1windowed__adaptation.html',1,'stan::mcmc']]], + ['windowed_5fadaptation',['windowed_adaptation',['../classstan_1_1mcmc_1_1windowed__adaptation.html#a80584644c847ec89734ec4dd578ce6af',1,'stan::mcmc::windowed_adaptation']]], + ['windowed_5fadaptation_2ehpp',['windowed_adaptation.hpp',['../windowed__adaptation_8hpp.html',1,'']]], + ['wishart_2ehpp',['wishart.hpp',['../wishart_8hpp.html',1,'']]], + ['wishart_5flog',['wishart_log',['../namespacestan_1_1prob.html#a10fd2efedb0954c290861d22335bd384',1,'stan::prob::wishart_log(const Eigen::Matrix< T_y, Eigen::Dynamic, Eigen::Dynamic > &W, const T_dof &nu, const Eigen::Matrix< T_scale, Eigen::Dynamic, Eigen::Dynamic > &S)'],['../namespacestan_1_1prob.html#a50a5c47de11d55fe41ce044e3298e7d6',1,'stan::prob::wishart_log(const Eigen::Matrix< T_y, Eigen::Dynamic, Eigen::Dynamic > &W, const T_dof &nu, const Eigen::Matrix< T_scale, Eigen::Dynamic, Eigen::Dynamic > &S)']]], + ['wishart_5frng',['wishart_rng',['../namespacestan_1_1prob.html#a7b8c234f87f003d4f67545ee9eb998b5',1,'stan::prob']]], + ['write',['write',['../classstan_1_1io_1_1csv__writer.html#ac4e076bd6f52bae564b785cb868bac5a',1,'stan::io::csv_writer::write(int n)'],['../classstan_1_1io_1_1csv__writer.html#af5ad776d96e98944627f61f046cd5745',1,'stan::io::csv_writer::write(double x)'],['../classstan_1_1io_1_1csv__writer.html#abeea10d26f5a33df95941359955f6429',1,'stan::io::csv_writer::write(const Eigen::Matrix< double, R, C > &m)'],['../classstan_1_1io_1_1csv__writer.html#a756aee107218b98b5aa5d283f27e853b',1,'stan::io::csv_writer::write(const std::string &s)'],['../classstan_1_1io_1_1dump__writer.html#a7505270979a70bd19a2893f33a0ba346',1,'stan::io::dump_writer::write()']]], + ['write_5farray',['write_array',['../structstan_1_1gm_1_1write__csv__vars__visgen.html#a981030df9dd0720a86077e98a3b7c2f0',1,'stan::gm::write_csv_vars_visgen::write_array()'],['../structstan_1_1gm_1_1write__array__vars__visgen.html#a46d1925738b1d24f2a0f849165d9193c',1,'stan::gm::write_array_vars_visgen::write_array()']]], + ['write_5farray_5fvars_5fvisgen',['write_array_vars_visgen',['../structstan_1_1gm_1_1write__array__vars__visgen.html#a28c75cf8b30d7a8e7121b325c34b028c',1,'stan::gm::write_array_vars_visgen']]], + ['write_5farray_5fvars_5fvisgen',['write_array_vars_visgen',['../structstan_1_1gm_1_1write__array__vars__visgen.html',1,'stan::gm']]], + ['write_5farray_5fvisgen',['write_array_visgen',['../structstan_1_1gm_1_1write__array__visgen.html#afeb5e731732edea5c690dc4b44503557',1,'stan::gm::write_array_visgen']]], + ['write_5farray_5fvisgen',['write_array_visgen',['../structstan_1_1gm_1_1write__array__visgen.html',1,'stan::gm']]], + ['write_5fbase_5fexpr_5ftype',['write_base_expr_type',['../namespacestan_1_1gm.html#a281907d01ac42b6c4c703f9285361419',1,'stan::gm']]], + ['write_5fcol_5fmajor',['write_col_major',['../classstan_1_1io_1_1csv__writer.html#ac301f64044fc4f019df0ceea3223434d',1,'stan::io::csv_writer']]], + ['write_5fcsv_5fheader_5fvisgen',['write_csv_header_visgen',['../structstan_1_1gm_1_1write__csv__header__visgen.html',1,'stan::gm']]], + ['write_5fcsv_5fheader_5fvisgen',['write_csv_header_visgen',['../structstan_1_1gm_1_1write__csv__header__visgen.html#a7931a3de7356bb9013a56703434f57c9',1,'stan::gm::write_csv_header_visgen']]], + ['write_5fcsv_5fvars_5fvisgen',['write_csv_vars_visgen',['../structstan_1_1gm_1_1write__csv__vars__visgen.html',1,'stan::gm']]], + ['write_5fcsv_5fvars_5fvisgen',['write_csv_vars_visgen',['../structstan_1_1gm_1_1write__csv__vars__visgen.html#aa0072ea087bb79c27ce204ef8b7d7421',1,'stan::gm::write_csv_vars_visgen']]], + ['write_5fcsv_5fvisgen',['write_csv_visgen',['../structstan_1_1gm_1_1write__csv__visgen.html#a9da769ec38611f0cd1cc785bedb35b31',1,'stan::gm::write_csv_visgen']]], + ['write_5fcsv_5fvisgen',['write_csv_visgen',['../structstan_1_1gm_1_1write__csv__visgen.html',1,'stan::gm']]], + ['write_5fdims_5fvisgen',['write_dims_visgen',['../structstan_1_1gm_1_1write__dims__visgen.html#a1ab14d8dc3ff1affdc050a81590124d2',1,'stan::gm::write_dims_visgen']]], + ['write_5fdims_5fvisgen',['write_dims_visgen',['../structstan_1_1gm_1_1write__dims__visgen.html',1,'stan::gm']]], + ['write_5ferror_5fmsg',['write_error_msg',['../namespacestan_1_1gm.html#aa3f3dcbd71428d79866f8329dc7a3457',1,'stan::gm']]], + ['write_5fiteration',['write_iteration',['../namespacestan_1_1gm.html#aa107b76e763f640def08786dad8785ed',1,'stan::gm']]], + ['write_5fiteration_5fcsv',['write_iteration_csv',['../namespacestan_1_1gm.html#a49e8302dc8c5c3b044f0b5e357d5930b',1,'stan::gm']]], + ['write_5fmetric',['write_metric',['../classstan_1_1mcmc_1_1dense__e__point.html#a9a5591a32c9768f2dd6e80f92b16cf93',1,'stan::mcmc::dense_e_point::write_metric()'],['../classstan_1_1mcmc_1_1diag__e__point.html#a8002286217f14c53715bffe395b9755d',1,'stan::mcmc::diag_e_point::write_metric()'],['../classstan_1_1mcmc_1_1ps__point.html#a5bee8061481a677349a329a037afed1a',1,'stan::mcmc::ps_point::write_metric()']]], + ['write_5fmodel',['write_model',['../namespacestan_1_1gm.html#a62128a7ef9014d6fedf9a2f2358a8976',1,'stan::gm']]], + ['write_5fparam_5fnames_5fvisgen',['write_param_names_visgen',['../structstan_1_1gm_1_1write__param__names__visgen.html#ac4dd97f7d6688523100d412bcd7bfa59',1,'stan::gm::write_param_names_visgen']]], + ['write_5fparam_5fnames_5fvisgen',['write_param_names_visgen',['../structstan_1_1gm_1_1write__param__names__visgen.html',1,'stan::gm']]], + ['write_5frow_5fmajor',['write_row_major',['../classstan_1_1io_1_1csv__writer.html#a52c5a9818363f72590cc1f3f2a70ab02',1,'stan::io::csv_writer']]], + ['write_5fsampler_5fparam_5fnames',['write_sampler_param_names',['../classstan_1_1mcmc_1_1base__mcmc.html#a2555bcff40b4656f370c751bfe06e9ab',1,'stan::mcmc::base_mcmc::write_sampler_param_names()'],['../classstan_1_1mcmc_1_1base__nuts.html#ae79f7f88b5156db27898504be9560a49',1,'stan::mcmc::base_nuts::write_sampler_param_names()'],['../classstan_1_1mcmc_1_1base__static__hmc.html#a08b235a3894d765791330ab7b0c5d473',1,'stan::mcmc::base_static_hmc::write_sampler_param_names()']]], + ['write_5fsampler_5fparams',['write_sampler_params',['../classstan_1_1mcmc_1_1base__mcmc.html#a4c30ef76ab8e9f78e46b1984b29c7f26',1,'stan::mcmc::base_mcmc::write_sampler_params()'],['../classstan_1_1mcmc_1_1base__nuts.html#aabe0eae0ae8241775760102c74053e6c',1,'stan::mcmc::base_nuts::write_sampler_params()'],['../classstan_1_1mcmc_1_1base__static__hmc.html#a26e2e7facb3998237644d7320c8db501',1,'stan::mcmc::base_static_hmc::write_sampler_params()']]], + ['write_5fsampler_5fstate',['write_sampler_state',['../classstan_1_1mcmc_1_1base__mcmc.html#a10f416fdcd1a9eb9aab56f63c0fda786',1,'stan::mcmc::base_mcmc::write_sampler_state()'],['../classstan_1_1mcmc_1_1base__hmc.html#a84c87e49136f89f49511bf46b2001f2b',1,'stan::mcmc::base_hmc::write_sampler_state()']]], + ['write_5fstan',['write_stan',['../namespacestan_1_1gm.html#ab8fc6564ecbcb13e8ae6fcc27dd59c58',1,'stan::gm']]], + ['writer',['writer',['../classstan_1_1io_1_1writer.html#a7dcb9072dd6ce295bd1c73721c339c51',1,'stan::io::writer']]], + ['writer',['writer',['../classstan_1_1io_1_1writer.html',1,'stan::io']]], + ['writer_2ehpp',['writer.hpp',['../writer_8hpp.html',1,'']]] +]; diff --git a/doc/api/html/search/all_78.html b/doc/api/html/search/all_78.html new file mode 100644 index 00000000000..10780d661e0 --- /dev/null +++ b/doc/api/html/search/all_78.html @@ -0,0 +1,25 @@ + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/doc/api/html/search/all_78.js b/doc/api/html/search/all_78.js new file mode 100644 index 00000000000..4863289b85f --- /dev/null +++ b/doc/api/html/search/all_78.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['x_5f',['x_',['../structstan_1_1math_1_1array__builder.html#aeeffff75de3c356257e419fc8591afcb',1,'stan::math::array_builder']]] +]; diff --git a/doc/api/html/search/all_7a.html b/doc/api/html/search/all_7a.html new file mode 100644 index 00000000000..0593a62d2a5 --- /dev/null +++ b/doc/api/html/search/all_7a.html @@ -0,0 +1,25 @@ + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/doc/api/html/search/all_7a.js b/doc/api/html/search/all_7a.js new file mode 100644 index 00000000000..5e05b2b36b4 --- /dev/null +++ b/doc/api/html/search/all_7a.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['z',['z',['../classstan_1_1mcmc_1_1base__hmc.html#a7b9f7a04975626ce6ea23a81d903b325',1,'stan::mcmc::base_hmc']]] +]; diff --git a/doc/api/html/search/all_7e.html b/doc/api/html/search/all_7e.html new file mode 100644 index 00000000000..63512c6f9e3 --- /dev/null +++ b/doc/api/html/search/all_7e.html @@ -0,0 +1,25 @@ + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/doc/api/html/search/all_7e.js b/doc/api/html/search/all_7e.js new file mode 100644 index 00000000000..4a4ba9d8a69 --- /dev/null +++ b/doc/api/html/search/all_7e.js @@ -0,0 +1,32 @@ +var searchData= +[ + ['_7eaccumulator',['~accumulator',['../classstan_1_1math_1_1accumulator.html#a298d4088fbfdfca98d2c8e36a5ea4f1c',1,'stan::math::accumulator']]], + ['_7eadapt_5fdense_5fe_5fnuts',['~adapt_dense_e_nuts',['../classstan_1_1mcmc_1_1adapt__dense__e__nuts.html#ac74d2958a5e578cdd10e844237e36500',1,'stan::mcmc::adapt_dense_e_nuts']]], + ['_7eadapt_5fdense_5fe_5fstatic_5fhmc',['~adapt_dense_e_static_hmc',['../classstan_1_1mcmc_1_1adapt__dense__e__static__hmc.html#ae81ad6f37f41e6a587c36e9e369a425f',1,'stan::mcmc::adapt_dense_e_static_hmc']]], + ['_7eadapt_5fdiag_5fe_5fnuts',['~adapt_diag_e_nuts',['../classstan_1_1mcmc_1_1adapt__diag__e__nuts.html#a53e11fcb574220f40be06e43e7744a74',1,'stan::mcmc::adapt_diag_e_nuts']]], + ['_7eadapt_5fdiag_5fe_5fstatic_5fhmc',['~adapt_diag_e_static_hmc',['../classstan_1_1mcmc_1_1adapt__diag__e__static__hmc.html#a4f2a2e5b2046f456483ef4eed6aa7822',1,'stan::mcmc::adapt_diag_e_static_hmc']]], + ['_7eadapt_5funit_5fe_5fnuts',['~adapt_unit_e_nuts',['../classstan_1_1mcmc_1_1adapt__unit__e__nuts.html#a615794e2c10bcda9dd7f3aba29903f28',1,'stan::mcmc::adapt_unit_e_nuts']]], + ['_7eadapt_5funit_5fe_5fstatic_5fhmc',['~adapt_unit_e_static_hmc',['../classstan_1_1mcmc_1_1adapt__unit__e__static__hmc.html#a4001b78d765ab895a38b569ec915d9f6',1,'stan::mcmc::adapt_unit_e_static_hmc']]], + ['_7eargument',['~argument',['../classstan_1_1gm_1_1argument.html#a58068b14405201e7fde123047e251dc0',1,'stan::gm::argument']]], + ['_7ebase_5fhamiltonian',['~base_hamiltonian',['../classstan_1_1mcmc_1_1base__hamiltonian.html#a16a9150dc16c40c1e137ff1462f1d53f',1,'stan::mcmc::base_hamiltonian']]], + ['_7ebase_5fmcmc',['~base_mcmc',['../classstan_1_1mcmc_1_1base__mcmc.html#a7c8f525f093ac911bab10f619e7736fe',1,'stan::mcmc::base_mcmc']]], + ['_7ebase_5fnuts',['~base_nuts',['../classstan_1_1mcmc_1_1base__nuts.html#a84f3b26c2dd43965496766cdd6ba1245',1,'stan::mcmc::base_nuts']]], + ['_7ebase_5fstatic_5fhmc',['~base_static_hmc',['../classstan_1_1mcmc_1_1base__static__hmc.html#aab5a4f0ef94b01b624262a2484d7047b',1,'stan::mcmc::base_static_hmc']]], + ['_7ecategorical_5fargument',['~categorical_argument',['../classstan_1_1gm_1_1categorical__argument.html#ae72c69a4cbf867643694227c006c53a4',1,'stan::gm::categorical_argument']]], + ['_7echainable',['~chainable',['../classstan_1_1agrad_1_1chainable.html#a962b7191aa156e1f1714ba4750971636',1,'stan::agrad::chainable']]], + ['_7echainable_5falloc',['~chainable_alloc',['../classstan_1_1agrad_1_1chainable__alloc.html#acc8ec0b3e4b6c1ef9c4f6bb03fd57eca',1,'stan::agrad::chainable_alloc']]], + ['_7echunk_5falloc',['~chunk_alloc',['../classstan_1_1memory_1_1chunk__alloc.html#aa69ee56e6bd33c0beffbe798c2bf81e1',1,'stan::memory::chunk_alloc']]], + ['_7edense_5fe_5fmetric',['~dense_e_metric',['../classstan_1_1mcmc_1_1dense__e__metric.html#ab8327239e30c1ac20c624f2d0d2a22dc',1,'stan::mcmc::dense_e_metric']]], + ['_7ediag_5fe_5fmetric',['~diag_e_metric',['../classstan_1_1mcmc_1_1diag__e__metric.html#a64127ae540bb5ad55b871a94e0684236',1,'stan::mcmc::diag_e_metric']]], + ['_7edump_5freader',['~dump_reader',['../classstan_1_1io_1_1dump__reader.html#aff43241b7509e1877e4bca83e292fff1',1,'stan::io::dump_reader']]], + ['_7edump_5fwriter',['~dump_writer',['../classstan_1_1io_1_1dump__writer.html#a69f9822358de693b3de8acf4e8dbae1b',1,'stan::io::dump_writer']]], + ['_7elist_5fargument',['~list_argument',['../classstan_1_1gm_1_1list__argument.html#a21e0538351cb27f121f7307111bb9998',1,'stan::gm::list_argument']]], + ['_7eprob_5fgrad',['~prob_grad',['../classstan_1_1model_1_1prob__grad.html#aa81011f24dd20466efdf2971ae0df2da',1,'stan::model::prob_grad']]], + ['_7ereader',['~reader',['../classstan_1_1io_1_1reader.html#a679801e4a7936f90c13e9a6498745314',1,'stan::io::reader']]], + ['_7esample',['~sample',['../classstan_1_1mcmc_1_1sample.html#a20ad72aee8c1982a32277a374401f6db',1,'stan::mcmc::sample']]], + ['_7estack_5falloc',['~stack_alloc',['../classstan_1_1memory_1_1stack__alloc.html#a9031a182931d5cd7f11e0bfa8357c6bf',1,'stan::memory::stack_alloc']]], + ['_7estan_5fcsv_5freader',['~stan_csv_reader',['../classstan_1_1io_1_1stan__csv__reader.html#a53321a2f3045ed4cec11c77413f18759',1,'stan::io::stan_csv_reader']]], + ['_7eunit_5fe_5fmetric',['~unit_e_metric',['../classstan_1_1mcmc_1_1unit__e__metric.html#aa895987fa4375871ea9c523455bcf090',1,'stan::mcmc::unit_e_metric']]], + ['_7evari',['~vari',['../classstan_1_1agrad_1_1vari.html#aa95acf2a60125ef1083a0b929cf39adb',1,'stan::agrad::vari']]], + ['_7ewriter',['~writer',['../classstan_1_1io_1_1writer.html#aab627c99226cf0e3dd237512f673c8e5',1,'stan::io::writer']]] +]; diff --git a/doc/api/html/search/classes_61.html b/doc/api/html/search/classes_61.html new file mode 100644 index 00000000000..85e5d72a385 --- /dev/null +++ b/doc/api/html/search/classes_61.html @@ -0,0 +1,25 @@ + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/doc/api/html/search/classes_61.js b/doc/api/html/search/classes_61.js new file mode 100644 index 00000000000..653d3e3a327 --- /dev/null +++ b/doc/api/html/search/classes_61.js @@ -0,0 +1,78 @@ +var searchData= +[ + ['accumulator',['accumulator',['../classstan_1_1math_1_1accumulator.html',1,'stan::math']]], + ['adapt_5fdense_5fe_5fnuts',['adapt_dense_e_nuts',['../classstan_1_1mcmc_1_1adapt__dense__e__nuts.html',1,'stan::mcmc']]], + ['adapt_5fdense_5fe_5fstatic_5fhmc',['adapt_dense_e_static_hmc',['../classstan_1_1mcmc_1_1adapt__dense__e__static__hmc.html',1,'stan::mcmc']]], + ['adapt_5fdiag_5fe_5fnuts',['adapt_diag_e_nuts',['../classstan_1_1mcmc_1_1adapt__diag__e__nuts.html',1,'stan::mcmc']]], + ['adapt_5fdiag_5fe_5fstatic_5fhmc',['adapt_diag_e_static_hmc',['../classstan_1_1mcmc_1_1adapt__diag__e__static__hmc.html',1,'stan::mcmc']]], + ['adapt_5funit_5fe_5fnuts',['adapt_unit_e_nuts',['../classstan_1_1mcmc_1_1adapt__unit__e__nuts.html',1,'stan::mcmc']]], + ['adapt_5funit_5fe_5fstatic_5fhmc',['adapt_unit_e_static_hmc',['../classstan_1_1mcmc_1_1adapt__unit__e__static__hmc.html',1,'stan::mcmc']]], + ['add_5fconditional_5fbody',['add_conditional_body',['../structstan_1_1gm_1_1add__conditional__body.html',1,'stan::gm']]], + ['add_5fconditional_5fcondition',['add_conditional_condition',['../structstan_1_1gm_1_1add__conditional__condition.html',1,'stan::gm']]], + ['add_5fexpression_5fdimss',['add_expression_dimss',['../structstan_1_1gm_1_1add__expression__dimss.html',1,'stan::gm']]], + ['add_5floop_5fidentifier',['add_loop_identifier',['../structstan_1_1gm_1_1add__loop__identifier.html',1,'stan::gm']]], + ['add_5fwhile_5fbody',['add_while_body',['../structstan_1_1gm_1_1add__while__body.html',1,'stan::gm']]], + ['add_5fwhile_5fcondition',['add_while_condition',['../structstan_1_1gm_1_1add__while__condition.html',1,'stan::gm']]], + ['addition_5fexpr',['addition_expr',['../structstan_1_1gm_1_1addition__expr.html',1,'stan::gm']]], + ['arg_5fadapt',['arg_adapt',['../classstan_1_1gm_1_1arg__adapt.html',1,'stan::gm']]], + ['arg_5fadapt_5fdelta',['arg_adapt_delta',['../classstan_1_1gm_1_1arg__adapt__delta.html',1,'stan::gm']]], + ['arg_5fadapt_5fengaged',['arg_adapt_engaged',['../classstan_1_1gm_1_1arg__adapt__engaged.html',1,'stan::gm']]], + ['arg_5fadapt_5fgamma',['arg_adapt_gamma',['../classstan_1_1gm_1_1arg__adapt__gamma.html',1,'stan::gm']]], + ['arg_5fadapt_5finit_5fbuffer',['arg_adapt_init_buffer',['../classstan_1_1gm_1_1arg__adapt__init__buffer.html',1,'stan::gm']]], + ['arg_5fadapt_5fkappa',['arg_adapt_kappa',['../classstan_1_1gm_1_1arg__adapt__kappa.html',1,'stan::gm']]], + ['arg_5fadapt_5ft0',['arg_adapt_t0',['../classstan_1_1gm_1_1arg__adapt__t0.html',1,'stan::gm']]], + ['arg_5fadapt_5fterm_5fbuffer',['arg_adapt_term_buffer',['../classstan_1_1gm_1_1arg__adapt__term__buffer.html',1,'stan::gm']]], + ['arg_5fadapt_5fwindow',['arg_adapt_window',['../classstan_1_1gm_1_1arg__adapt__window.html',1,'stan::gm']]], + ['arg_5fbfgs',['arg_bfgs',['../classstan_1_1gm_1_1arg__bfgs.html',1,'stan::gm']]], + ['arg_5fdata',['arg_data',['../classstan_1_1gm_1_1arg__data.html',1,'stan::gm']]], + ['arg_5fdata_5ffile',['arg_data_file',['../classstan_1_1gm_1_1arg__data__file.html',1,'stan::gm']]], + ['arg_5fdense_5fe',['arg_dense_e',['../classstan_1_1gm_1_1arg__dense__e.html',1,'stan::gm']]], + ['arg_5fdiag_5fe',['arg_diag_e',['../classstan_1_1gm_1_1arg__diag__e.html',1,'stan::gm']]], + ['arg_5fdiagnose',['arg_diagnose',['../classstan_1_1gm_1_1arg__diagnose.html',1,'stan::gm']]], + ['arg_5fdiagnostic_5ffile',['arg_diagnostic_file',['../classstan_1_1gm_1_1arg__diagnostic__file.html',1,'stan::gm']]], + ['arg_5fengine',['arg_engine',['../classstan_1_1gm_1_1arg__engine.html',1,'stan::gm']]], + ['arg_5ffail',['arg_fail',['../classstan_1_1gm_1_1arg__fail.html',1,'stan::gm']]], + ['arg_5ffixed_5fparam',['arg_fixed_param',['../classstan_1_1gm_1_1arg__fixed__param.html',1,'stan::gm']]], + ['arg_5fhmc',['arg_hmc',['../classstan_1_1gm_1_1arg__hmc.html',1,'stan::gm']]], + ['arg_5fid',['arg_id',['../classstan_1_1gm_1_1arg__id.html',1,'stan::gm']]], + ['arg_5finit',['arg_init',['../classstan_1_1gm_1_1arg__init.html',1,'stan::gm']]], + ['arg_5finit_5falpha',['arg_init_alpha',['../classstan_1_1gm_1_1arg__init__alpha.html',1,'stan::gm']]], + ['arg_5fint_5ftime',['arg_int_time',['../classstan_1_1gm_1_1arg__int__time.html',1,'stan::gm']]], + ['arg_5fiter',['arg_iter',['../classstan_1_1gm_1_1arg__iter.html',1,'stan::gm']]], + ['arg_5fmax_5fdepth',['arg_max_depth',['../classstan_1_1gm_1_1arg__max__depth.html',1,'stan::gm']]], + ['arg_5fmethod',['arg_method',['../classstan_1_1gm_1_1arg__method.html',1,'stan::gm']]], + ['arg_5fmetric',['arg_metric',['../classstan_1_1gm_1_1arg__metric.html',1,'stan::gm']]], + ['arg_5fnesterov',['arg_nesterov',['../classstan_1_1gm_1_1arg__nesterov.html',1,'stan::gm']]], + ['arg_5fnewton',['arg_newton',['../classstan_1_1gm_1_1arg__newton.html',1,'stan::gm']]], + ['arg_5fnum_5fsamples',['arg_num_samples',['../classstan_1_1gm_1_1arg__num__samples.html',1,'stan::gm']]], + ['arg_5fnum_5fwarmup',['arg_num_warmup',['../classstan_1_1gm_1_1arg__num__warmup.html',1,'stan::gm']]], + ['arg_5fnuts',['arg_nuts',['../classstan_1_1gm_1_1arg__nuts.html',1,'stan::gm']]], + ['arg_5foptimize',['arg_optimize',['../classstan_1_1gm_1_1arg__optimize.html',1,'stan::gm']]], + ['arg_5foptimize_5falgo',['arg_optimize_algo',['../classstan_1_1gm_1_1arg__optimize__algo.html',1,'stan::gm']]], + ['arg_5foutput',['arg_output',['../classstan_1_1gm_1_1arg__output.html',1,'stan::gm']]], + ['arg_5foutput_5ffile',['arg_output_file',['../classstan_1_1gm_1_1arg__output__file.html',1,'stan::gm']]], + ['arg_5frandom',['arg_random',['../classstan_1_1gm_1_1arg__random.html',1,'stan::gm']]], + ['arg_5frefresh',['arg_refresh',['../classstan_1_1gm_1_1arg__refresh.html',1,'stan::gm']]], + ['arg_5frwm',['arg_rwm',['../classstan_1_1gm_1_1arg__rwm.html',1,'stan::gm']]], + ['arg_5fsample',['arg_sample',['../classstan_1_1gm_1_1arg__sample.html',1,'stan::gm']]], + ['arg_5fsample_5falgo',['arg_sample_algo',['../classstan_1_1gm_1_1arg__sample__algo.html',1,'stan::gm']]], + ['arg_5fsave_5fiterations',['arg_save_iterations',['../classstan_1_1gm_1_1arg__save__iterations.html',1,'stan::gm']]], + ['arg_5fsave_5fwarmup',['arg_save_warmup',['../classstan_1_1gm_1_1arg__save__warmup.html',1,'stan::gm']]], + ['arg_5fseed',['arg_seed',['../classstan_1_1gm_1_1arg__seed.html',1,'stan::gm']]], + ['arg_5fstatic',['arg_static',['../classstan_1_1gm_1_1arg__static.html',1,'stan::gm']]], + ['arg_5fstepsize',['arg_stepsize',['../classstan_1_1gm_1_1arg__stepsize.html',1,'stan::gm']]], + ['arg_5fstepsize_5fjitter',['arg_stepsize_jitter',['../classstan_1_1gm_1_1arg__stepsize__jitter.html',1,'stan::gm']]], + ['arg_5ftest',['arg_test',['../classstan_1_1gm_1_1arg__test.html',1,'stan::gm']]], + ['arg_5ftest_5fgrad_5feps',['arg_test_grad_eps',['../classstan_1_1gm_1_1arg__test__grad__eps.html',1,'stan::gm']]], + ['arg_5ftest_5fgrad_5ferr',['arg_test_grad_err',['../classstan_1_1gm_1_1arg__test__grad__err.html',1,'stan::gm']]], + ['arg_5ftest_5fgradient',['arg_test_gradient',['../classstan_1_1gm_1_1arg__test__gradient.html',1,'stan::gm']]], + ['arg_5fthin',['arg_thin',['../classstan_1_1gm_1_1arg__thin.html',1,'stan::gm']]], + ['arg_5ftolerance',['arg_tolerance',['../classstan_1_1gm_1_1arg__tolerance.html',1,'stan::gm']]], + ['arg_5funit_5fe',['arg_unit_e',['../classstan_1_1gm_1_1arg__unit__e.html',1,'stan::gm']]], + ['argument',['argument',['../classstan_1_1gm_1_1argument.html',1,'stan::gm']]], + ['argument_5fparser',['argument_parser',['../classstan_1_1gm_1_1argument__parser.html',1,'stan::gm']]], + ['argument_5fprobe',['argument_probe',['../classstan_1_1gm_1_1argument__probe.html',1,'stan::gm']]], + ['array_5fbuilder',['array_builder',['../structstan_1_1math_1_1array__builder.html',1,'stan::math']]], + ['array_5fliteral',['array_literal',['../structstan_1_1gm_1_1array__literal.html',1,'stan::gm']]], + ['assignment',['assignment',['../structstan_1_1gm_1_1assignment.html',1,'stan::gm']]] +]; diff --git a/doc/api/html/search/classes_62.html b/doc/api/html/search/classes_62.html new file mode 100644 index 00000000000..10760ded208 --- /dev/null +++ b/doc/api/html/search/classes_62.html @@ -0,0 +1,25 @@ + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/doc/api/html/search/classes_62.js b/doc/api/html/search/classes_62.js new file mode 100644 index 00000000000..15dfd245089 --- /dev/null +++ b/doc/api/html/search/classes_62.js @@ -0,0 +1,37 @@ +var searchData= +[ + ['base_5fadaptation',['base_adaptation',['../classstan_1_1mcmc_1_1base__adaptation.html',1,'stan::mcmc']]], + ['base_5fadapter',['base_adapter',['../classstan_1_1mcmc_1_1base__adapter.html',1,'stan::mcmc']]], + ['base_5fhamiltonian',['base_hamiltonian',['../classstan_1_1mcmc_1_1base__hamiltonian.html',1,'stan::mcmc']]], + ['base_5fhamiltonian_3c_20m_2c_20dense_5fe_5fpoint_2c_20baserng_20_3e',['base_hamiltonian< M, dense_e_point, BaseRNG >',['../classstan_1_1mcmc_1_1base__hamiltonian.html',1,'stan::mcmc']]], + ['base_5fhamiltonian_3c_20m_2c_20diag_5fe_5fpoint_2c_20baserng_20_3e',['base_hamiltonian< M, diag_e_point, BaseRNG >',['../classstan_1_1mcmc_1_1base__hamiltonian.html',1,'stan::mcmc']]], + ['base_5fhamiltonian_3c_20m_2c_20unit_5fe_5fpoint_2c_20baserng_20_3e',['base_hamiltonian< M, unit_e_point, BaseRNG >',['../classstan_1_1mcmc_1_1base__hamiltonian.html',1,'stan::mcmc']]], + ['base_5fhmc',['base_hmc',['../classstan_1_1mcmc_1_1base__hmc.html',1,'stan::mcmc']]], + ['base_5fhmc_3c_20m_2c_20dense_5fe_5fpoint_2c_20dense_5fe_5fmetric_2c_20expl_5fleapfrog_2c_20baserng_20_3e',['base_hmc< M, dense_e_point, dense_e_metric, expl_leapfrog, BaseRNG >',['../classstan_1_1mcmc_1_1base__hmc.html',1,'stan::mcmc']]], + ['base_5fhmc_3c_20m_2c_20diag_5fe_5fpoint_2c_20diag_5fe_5fmetric_2c_20expl_5fleapfrog_2c_20baserng_20_3e',['base_hmc< M, diag_e_point, diag_e_metric, expl_leapfrog, BaseRNG >',['../classstan_1_1mcmc_1_1base__hmc.html',1,'stan::mcmc']]], + ['base_5fhmc_3c_20m_2c_20unit_5fe_5fpoint_2c_20unit_5fe_5fmetric_2c_20expl_5fleapfrog_2c_20baserng_20_3e',['base_hmc< M, unit_e_point, unit_e_metric, expl_leapfrog, BaseRNG >',['../classstan_1_1mcmc_1_1base__hmc.html',1,'stan::mcmc']]], + ['base_5fintegrator',['base_integrator',['../classstan_1_1mcmc_1_1base__integrator.html',1,'stan::mcmc']]], + ['base_5fintegrator_3c_20dense_5fe_5fmetric_3c_20m_2c_20baserng_20_3e_2c_20dense_5fe_5fpoint_20_3e',['base_integrator< dense_e_metric< M, BaseRNG >, dense_e_point >',['../classstan_1_1mcmc_1_1base__integrator.html',1,'stan::mcmc']]], + ['base_5fintegrator_3c_20diag_5fe_5fmetric_3c_20m_2c_20baserng_20_3e_2c_20diag_5fe_5fpoint_20_3e',['base_integrator< diag_e_metric< M, BaseRNG >, diag_e_point >',['../classstan_1_1mcmc_1_1base__integrator.html',1,'stan::mcmc']]], + ['base_5fintegrator_3c_20unit_5fe_5fmetric_3c_20m_2c_20baserng_20_3e_2c_20unit_5fe_5fpoint_20_3e',['base_integrator< unit_e_metric< M, BaseRNG >, unit_e_point >',['../classstan_1_1mcmc_1_1base__integrator.html',1,'stan::mcmc']]], + ['base_5fleapfrog',['base_leapfrog',['../classstan_1_1mcmc_1_1base__leapfrog.html',1,'stan::mcmc']]], + ['base_5fleapfrog_3c_20dense_5fe_5fmetric_3c_20m_2c_20baserng_20_3e_2c_20dense_5fe_5fpoint_20_3e',['base_leapfrog< dense_e_metric< M, BaseRNG >, dense_e_point >',['../classstan_1_1mcmc_1_1base__leapfrog.html',1,'stan::mcmc']]], + ['base_5fleapfrog_3c_20diag_5fe_5fmetric_3c_20m_2c_20baserng_20_3e_2c_20diag_5fe_5fpoint_20_3e',['base_leapfrog< diag_e_metric< M, BaseRNG >, diag_e_point >',['../classstan_1_1mcmc_1_1base__leapfrog.html',1,'stan::mcmc']]], + ['base_5fleapfrog_3c_20unit_5fe_5fmetric_3c_20m_2c_20baserng_20_3e_2c_20unit_5fe_5fpoint_20_3e',['base_leapfrog< unit_e_metric< M, BaseRNG >, unit_e_point >',['../classstan_1_1mcmc_1_1base__leapfrog.html',1,'stan::mcmc']]], + ['base_5fmcmc',['base_mcmc',['../classstan_1_1mcmc_1_1base__mcmc.html',1,'stan::mcmc']]], + ['base_5fnuts',['base_nuts',['../classstan_1_1mcmc_1_1base__nuts.html',1,'stan::mcmc']]], + ['base_5fnuts_3c_20m_2c_20dense_5fe_5fpoint_2c_20dense_5fe_5fmetric_2c_20expl_5fleapfrog_2c_20baserng_20_3e',['base_nuts< M, dense_e_point, dense_e_metric, expl_leapfrog, BaseRNG >',['../classstan_1_1mcmc_1_1base__nuts.html',1,'stan::mcmc']]], + ['base_5fnuts_3c_20m_2c_20diag_5fe_5fpoint_2c_20diag_5fe_5fmetric_2c_20expl_5fleapfrog_2c_20baserng_20_3e',['base_nuts< M, diag_e_point, diag_e_metric, expl_leapfrog, BaseRNG >',['../classstan_1_1mcmc_1_1base__nuts.html',1,'stan::mcmc']]], + ['base_5fnuts_3c_20m_2c_20unit_5fe_5fpoint_2c_20unit_5fe_5fmetric_2c_20expl_5fleapfrog_2c_20baserng_20_3e',['base_nuts< M, unit_e_point, unit_e_metric, expl_leapfrog, BaseRNG >',['../classstan_1_1mcmc_1_1base__nuts.html',1,'stan::mcmc']]], + ['base_5fstatic_5fhmc',['base_static_hmc',['../classstan_1_1mcmc_1_1base__static__hmc.html',1,'stan::mcmc']]], + ['base_5fstatic_5fhmc_3c_20m_2c_20dense_5fe_5fpoint_2c_20dense_5fe_5fmetric_2c_20expl_5fleapfrog_2c_20baserng_20_3e',['base_static_hmc< M, dense_e_point, dense_e_metric, expl_leapfrog, BaseRNG >',['../classstan_1_1mcmc_1_1base__static__hmc.html',1,'stan::mcmc']]], + ['base_5fstatic_5fhmc_3c_20m_2c_20diag_5fe_5fpoint_2c_20diag_5fe_5fmetric_2c_20expl_5fleapfrog_2c_20baserng_20_3e',['base_static_hmc< M, diag_e_point, diag_e_metric, expl_leapfrog, BaseRNG >',['../classstan_1_1mcmc_1_1base__static__hmc.html',1,'stan::mcmc']]], + ['base_5fstatic_5fhmc_3c_20m_2c_20unit_5fe_5fpoint_2c_20unit_5fe_5fmetric_2c_20expl_5fleapfrog_2c_20baserng_20_3e',['base_static_hmc< M, unit_e_point, unit_e_metric, expl_leapfrog, BaseRNG >',['../classstan_1_1mcmc_1_1base__static__hmc.html',1,'stan::mcmc']]], + ['base_5fvar_5fdecl',['base_var_decl',['../structstan_1_1gm_1_1base__var__decl.html',1,'stan::gm']]], + ['bfgslinesearch',['BFGSLineSearch',['../classstan_1_1optimization_1_1_b_f_g_s_line_search.html',1,'stan::optimization']]], + ['bfgsminimizer',['BFGSMinimizer',['../classstan_1_1optimization_1_1_b_f_g_s_minimizer.html',1,'stan::optimization']]], + ['bfgsminimizer_3c_20modeladaptor_3c_20m_20_3e_20_3e',['BFGSMinimizer< ModelAdaptor< M > >',['../classstan_1_1optimization_1_1_b_f_g_s_minimizer.html',1,'stan::optimization']]], + ['bfgsoptions',['BFGSOptions',['../structstan_1_1optimization_1_1_b_f_g_s_minimizer_1_1_b_f_g_s_options.html',1,'stan::optimization::BFGSMinimizer']]], + ['binary_5fop',['binary_op',['../structstan_1_1gm_1_1binary__op.html',1,'stan::gm']]], + ['binary_5fop_5fexpr',['binary_op_expr',['../structstan_1_1gm_1_1binary__op__expr.html',1,'stan::gm']]] +]; diff --git a/doc/api/html/search/classes_63.html b/doc/api/html/search/classes_63.html new file mode 100644 index 00000000000..72c66b963db --- /dev/null +++ b/doc/api/html/search/classes_63.html @@ -0,0 +1,25 @@ + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/doc/api/html/search/classes_63.js b/doc/api/html/search/classes_63.js new file mode 100644 index 00000000000..cab275d358a --- /dev/null +++ b/doc/api/html/search/classes_63.js @@ -0,0 +1,22 @@ +var searchData= +[ + ['categorical_5fargument',['categorical_argument',['../classstan_1_1gm_1_1categorical__argument.html',1,'stan::gm']]], + ['chainable',['chainable',['../classstan_1_1agrad_1_1chainable.html',1,'stan::agrad']]], + ['chainable_5falloc',['chainable_alloc',['../classstan_1_1agrad_1_1chainable__alloc.html',1,'stan::agrad']]], + ['chains',['chains',['../classstan_1_1mcmc_1_1chains.html',1,'stan::mcmc']]], + ['cholesky_5ffactor_5fvar_5fdecl',['cholesky_factor_var_decl',['../structstan_1_1gm_1_1cholesky__factor__var__decl.html',1,'stan::gm']]], + ['chunk_5falloc',['chunk_alloc',['../classstan_1_1memory_1_1chunk__alloc.html',1,'stan::memory']]], + ['cmd_5fline',['cmd_line',['../classstan_1_1io_1_1cmd__line.html',1,'stan::io']]], + ['common_5ftype',['common_type',['../structstan_1_1math_1_1common__type.html',1,'stan::math']]], + ['common_5ftype_3c_20eigen_3a_3amatrix_3c_20t1_2c_20r_2c_20c_20_3e_2c_20eigen_3a_3amatrix_3c_20t2_2c_20r_2c_20c_20_3e_20_3e',['common_type< Eigen::Matrix< T1, R, C >, Eigen::Matrix< T2, R, C > >',['../structstan_1_1math_1_1common__type_3_01_eigen_1_1_matrix_3_01_t1_00_01_r_00_01_c_01_4_00_01_eiged8accfa00e73f240c58ad02ac582ba93.html',1,'stan::math']]], + ['common_5ftype_3c_20std_3a_3avector_3c_20t1_20_3e_2c_20std_3a_3avector_3c_20t2_20_3e_20_3e',['common_type< std::vector< T1 >, std::vector< T2 > >',['../structstan_1_1math_1_1common__type_3_01std_1_1vector_3_01_t1_01_4_00_01std_1_1vector_3_01_t2_01_4_01_4.html',1,'stan::math']]], + ['conditional_5fstatement',['conditional_statement',['../structstan_1_1gm_1_1conditional__statement.html',1,'stan::gm']]], + ['constrained_5fparam_5fnames_5fvisgen',['constrained_param_names_visgen',['../structstan_1_1gm_1_1constrained__param__names__visgen.html',1,'stan::gm']]], + ['contains_5ffvar',['contains_fvar',['../structstan_1_1contains__fvar.html',1,'stan']]], + ['contains_5fnonparam_5fvar',['contains_nonparam_var',['../structstan_1_1gm_1_1contains__nonparam__var.html',1,'stan::gm']]], + ['contains_5fvar',['contains_var',['../structstan_1_1gm_1_1contains__var.html',1,'stan::gm']]], + ['corr_5fmatrix_5fvar_5fdecl',['corr_matrix_var_decl',['../structstan_1_1gm_1_1corr__matrix__var__decl.html',1,'stan::gm']]], + ['cov_5fmatrix_5fvar_5fdecl',['cov_matrix_var_decl',['../structstan_1_1gm_1_1cov__matrix__var__decl.html',1,'stan::gm']]], + ['covar_5fadaptation',['covar_adaptation',['../classstan_1_1mcmc_1_1covar__adaptation.html',1,'stan::mcmc']]], + ['csv_5fwriter',['csv_writer',['../classstan_1_1io_1_1csv__writer.html',1,'stan::io']]] +]; diff --git a/doc/api/html/search/classes_64.html b/doc/api/html/search/classes_64.html new file mode 100644 index 00000000000..59027083046 --- /dev/null +++ b/doc/api/html/search/classes_64.html @@ -0,0 +1,25 @@ + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/doc/api/html/search/classes_64.js b/doc/api/html/search/classes_64.js new file mode 100644 index 00000000000..0854a6713df --- /dev/null +++ b/doc/api/html/search/classes_64.js @@ -0,0 +1,23 @@ +var searchData= +[ + ['dense_5fe_5fmetric',['dense_e_metric',['../classstan_1_1mcmc_1_1dense__e__metric.html',1,'stan::mcmc']]], + ['dense_5fe_5fnuts',['dense_e_nuts',['../classstan_1_1mcmc_1_1dense__e__nuts.html',1,'stan::mcmc']]], + ['dense_5fe_5fpoint',['dense_e_point',['../classstan_1_1mcmc_1_1dense__e__point.html',1,'stan::mcmc']]], + ['dense_5fe_5fstatic_5fhmc',['dense_e_static_hmc',['../classstan_1_1mcmc_1_1dense__e__static__hmc.html',1,'stan::mcmc']]], + ['diag_5fe_5fmetric',['diag_e_metric',['../classstan_1_1mcmc_1_1diag__e__metric.html',1,'stan::mcmc']]], + ['diag_5fe_5fnuts',['diag_e_nuts',['../classstan_1_1mcmc_1_1diag__e__nuts.html',1,'stan::mcmc']]], + ['diag_5fe_5fpoint',['diag_e_point',['../classstan_1_1mcmc_1_1diag__e__point.html',1,'stan::mcmc']]], + ['diag_5fe_5fstatic_5fhmc',['diag_e_static_hmc',['../classstan_1_1mcmc_1_1diag__e__static__hmc.html',1,'stan::mcmc']]], + ['distribution',['distribution',['../structstan_1_1gm_1_1distribution.html',1,'stan::gm']]], + ['division_5fexpr',['division_expr',['../structstan_1_1gm_1_1division__expr.html',1,'stan::gm']]], + ['dot_5fproduct_5fstore_5ftype',['dot_product_store_type',['../structdot__product__store__type.html',1,'']]], + ['double_5fliteral',['double_literal',['../structstan_1_1gm_1_1double__literal.html',1,'stan::gm']]], + ['double_5fvar_5fdecl',['double_var_decl',['../structstan_1_1gm_1_1double__var__decl.html',1,'stan::gm']]], + ['doublevectorview',['DoubleVectorView',['../classstan_1_1_double_vector_view.html',1,'stan']]], + ['doublevectorview_3c_20true_2c_20false_20_3e',['DoubleVectorView< true, false >',['../classstan_1_1_double_vector_view_3_01true_00_01false_01_4.html',1,'stan']]], + ['doublevectorview_3c_20true_2c_20true_20_3e',['DoubleVectorView< true, true >',['../classstan_1_1_double_vector_view_3_01true_00_01true_01_4.html',1,'stan']]], + ['dump',['dump',['../classstan_1_1io_1_1dump.html',1,'stan::io']]], + ['dump_5fmember_5fvar_5fvisgen',['dump_member_var_visgen',['../structstan_1_1gm_1_1dump__member__var__visgen.html',1,'stan::gm']]], + ['dump_5freader',['dump_reader',['../classstan_1_1io_1_1dump__reader.html',1,'stan::io']]], + ['dump_5fwriter',['dump_writer',['../classstan_1_1io_1_1dump__writer.html',1,'stan::io']]] +]; diff --git a/doc/api/html/search/classes_65.html b/doc/api/html/search/classes_65.html new file mode 100644 index 00000000000..15f57ebdf59 --- /dev/null +++ b/doc/api/html/search/classes_65.html @@ -0,0 +1,25 @@ + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/doc/api/html/search/classes_65.js b/doc/api/html/search/classes_65.js new file mode 100644 index 00000000000..47d0e07565c --- /dev/null +++ b/doc/api/html/search/classes_65.js @@ -0,0 +1,17 @@ +var searchData= +[ + ['elt_5fdivision_5fexpr',['elt_division_expr',['../structstan_1_1gm_1_1elt__division__expr.html',1,'stan::gm']]], + ['elt_5fmultiplication_5fexpr',['elt_multiplication_expr',['../structstan_1_1gm_1_1elt__multiplication__expr.html',1,'stan::gm']]], + ['error_5fcodes',['error_codes',['../structstan_1_1gm_1_1error__codes.html',1,'stan::gm']]], + ['expl_5fleapfrog',['expl_leapfrog',['../classstan_1_1mcmc_1_1expl__leapfrog.html',1,'stan::mcmc']]], + ['expl_5fleapfrog_3c_20dense_5fe_5fmetric_3c_20m_2c_20baserng_20_3e_2c_20dense_5fe_5fpoint_20_3e',['expl_leapfrog< dense_e_metric< M, BaseRNG >, dense_e_point >',['../classstan_1_1mcmc_1_1expl__leapfrog.html',1,'stan::mcmc']]], + ['expl_5fleapfrog_3c_20diag_5fe_5fmetric_3c_20m_2c_20baserng_20_3e_2c_20diag_5fe_5fpoint_20_3e',['expl_leapfrog< diag_e_metric< M, BaseRNG >, diag_e_point >',['../classstan_1_1mcmc_1_1expl__leapfrog.html',1,'stan::mcmc']]], + ['expl_5fleapfrog_3c_20unit_5fe_5fmetric_3c_20m_2c_20baserng_20_3e_2c_20unit_5fe_5fpoint_20_3e',['expl_leapfrog< unit_e_metric< M, BaseRNG >, unit_e_point >',['../classstan_1_1mcmc_1_1expl__leapfrog.html',1,'stan::mcmc']]], + ['expr_5ftype',['expr_type',['../structstan_1_1gm_1_1expr__type.html',1,'stan::gm']]], + ['expression',['expression',['../structstan_1_1gm_1_1expression.html',1,'stan::gm']]], + ['expression_5fas_5fstatement',['expression_as_statement',['../structstan_1_1gm_1_1expression__as__statement.html',1,'stan::gm']]], + ['expression_5fgrammar',['expression_grammar',['../structexpression__grammar.html',1,'']]], + ['expression_5fgrammar',['expression_grammar',['../structstan_1_1gm_1_1expression__grammar.html',1,'stan::gm']]], + ['expression_5ftype_5fvis',['expression_type_vis',['../structstan_1_1gm_1_1expression__type__vis.html',1,'stan::gm']]], + ['expression_5fvisgen',['expression_visgen',['../structstan_1_1gm_1_1expression__visgen.html',1,'stan::gm']]] +]; diff --git a/doc/api/html/search/classes_66.html b/doc/api/html/search/classes_66.html new file mode 100644 index 00000000000..941988c6576 --- /dev/null +++ b/doc/api/html/search/classes_66.html @@ -0,0 +1,25 @@ + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/doc/api/html/search/classes_66.js b/doc/api/html/search/classes_66.js new file mode 100644 index 00000000000..024d702ae32 --- /dev/null +++ b/doc/api/html/search/classes_66.js @@ -0,0 +1,8 @@ +var searchData= +[ + ['fixed_5fparam_5fsampler',['fixed_param_sampler',['../classstan_1_1mcmc_1_1fixed__param__sampler.html',1,'stan::mcmc']]], + ['for_5fstatement',['for_statement',['../structstan_1_1gm_1_1for__statement.html',1,'stan::gm']]], + ['fun',['fun',['../structstan_1_1gm_1_1fun.html',1,'stan::gm']]], + ['function_5fsignatures',['function_signatures',['../classstan_1_1gm_1_1function__signatures.html',1,'stan::gm']]], + ['fvar',['fvar',['../structstan_1_1agrad_1_1fvar.html',1,'stan::agrad']]] +]; diff --git a/doc/api/html/search/classes_67.html b/doc/api/html/search/classes_67.html new file mode 100644 index 00000000000..78b514df041 --- /dev/null +++ b/doc/api/html/search/classes_67.html @@ -0,0 +1,25 @@ + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/doc/api/html/search/classes_67.js b/doc/api/html/search/classes_67.js new file mode 100644 index 00000000000..5d2d5870078 --- /dev/null +++ b/doc/api/html/search/classes_67.js @@ -0,0 +1,9 @@ +var searchData= +[ + ['general_5fmatrix_5fmatrix_5fproduct_3c_20index_2c_20stan_3a_3aagrad_3a_3avar_2c_20lhsstorageorder_2c_20conjugatelhs_2c_20stan_3a_3aagrad_3a_3avar_2c_20rhsstorageorder_2c_20conjugaterhs_2c_20colmajor_20_3e',['general_matrix_matrix_product< Index, stan::agrad::var, LhsStorageOrder, ConjugateLhs, stan::agrad::var, RhsStorageOrder, ConjugateRhs, ColMajor >',['../struct_eigen_1_1internal_1_1general__matrix__matrix__product_3_01_index_00_01stan_1_1agrad_1_1va9b485de9571b6e46d7a64aff43a6d9d3.html',1,'Eigen::internal']]], + ['general_5fmatrix_5fvector_5fproduct_3c_20index_2c_20stan_3a_3aagrad_3a_3avar_2c_20colmajor_2c_20conjugatelhs_2c_20stan_3a_3aagrad_3a_3avar_2c_20conjugaterhs_20_3e',['general_matrix_vector_product< Index, stan::agrad::var, ColMajor, ConjugateLhs, stan::agrad::var, ConjugateRhs >',['../struct_eigen_1_1internal_1_1general__matrix__vector__product_3_01_index_00_01stan_1_1agrad_1_1va44da5f98e1caea9523bacbd5bdc025fe.html',1,'Eigen::internal']]], + ['general_5fmatrix_5fvector_5fproduct_3c_20index_2c_20stan_3a_3aagrad_3a_3avar_2c_20rowmajor_2c_20conjugatelhs_2c_20stan_3a_3aagrad_3a_3avar_2c_20conjugaterhs_20_3e',['general_matrix_vector_product< Index, stan::agrad::var, RowMajor, ConjugateLhs, stan::agrad::var, ConjugateRhs >',['../struct_eigen_1_1internal_1_1general__matrix__vector__product_3_01_index_00_01stan_1_1agrad_1_1vacd54cabc78c49ca719650381b68b105e.html',1,'Eigen::internal']]], + ['generate_5finit_5fvars_5fvisgen',['generate_init_vars_visgen',['../structstan_1_1gm_1_1generate__init__vars__visgen.html',1,'stan::gm']]], + ['generate_5finit_5fvisgen',['generate_init_visgen',['../structstan_1_1gm_1_1generate__init__visgen.html',1,'stan::gm']]], + ['generate_5flocal_5fvar_5finit_5fnan_5fvisgen',['generate_local_var_init_nan_visgen',['../structstan_1_1gm_1_1generate__local__var__init__nan__visgen.html',1,'stan::gm']]] +]; diff --git a/doc/api/html/search/classes_69.html b/doc/api/html/search/classes_69.html new file mode 100644 index 00000000000..961dbea275b --- /dev/null +++ b/doc/api/html/search/classes_69.html @@ -0,0 +1,25 @@ + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/doc/api/html/search/classes_69.js b/doc/api/html/search/classes_69.js new file mode 100644 index 00000000000..538b0833f70 --- /dev/null +++ b/doc/api/html/search/classes_69.js @@ -0,0 +1,29 @@ +var searchData= +[ + ['include_5fsummand',['include_summand',['../structstan_1_1prob_1_1include__summand.html',1,'stan::prob']]], + ['increment_5flog_5fprob_5fstatement',['increment_log_prob_statement',['../structstan_1_1gm_1_1increment__log__prob__statement.html',1,'stan::gm']]], + ['index_5fop',['index_op',['../structstan_1_1gm_1_1index__op.html',1,'stan::gm']]], + ['init_5flocal_5fvar_5fvisgen',['init_local_var_visgen',['../structstan_1_1gm_1_1init__local__var__visgen.html',1,'stan::gm']]], + ['int_5fliteral',['int_literal',['../structstan_1_1gm_1_1int__literal.html',1,'stan::gm']]], + ['int_5fvar_5fdecl',['int_var_decl',['../structstan_1_1gm_1_1int__var__decl.html',1,'stan::gm']]], + ['is_5fconstant',['is_constant',['../structstan_1_1is__constant.html',1,'stan']]], + ['is_5fconstant_5fstruct',['is_constant_struct',['../structstan_1_1is__constant__struct.html',1,'stan']]], + ['is_5fconstant_5fstruct_3c_20eigen_3a_3ablock_3c_20t_20_3e_20_3e',['is_constant_struct< Eigen::Block< T > >',['../structstan_1_1is__constant__struct_3_01_eigen_1_1_block_3_01_t_01_4_01_4.html',1,'stan']]], + ['is_5fconstant_5fstruct_3c_20eigen_3a_3amatrix_3c_20t_2c_20r_2c_20c_20_3e_20_3e',['is_constant_struct< Eigen::Matrix< T, R, C > >',['../structstan_1_1is__constant__struct_3_01_eigen_1_1_matrix_3_01_t_00_01_r_00_01_c_01_4_01_4.html',1,'stan']]], + ['is_5fconstant_5fstruct_3c_20std_3a_3avector_3c_20t_20_3e_20_3e',['is_constant_struct< std::vector< T > >',['../structstan_1_1is__constant__struct_3_01std_1_1vector_3_01_t_01_4_01_4.html',1,'stan']]], + ['is_5ffvar',['is_fvar',['../structstan_1_1is__fvar.html',1,'stan']]], + ['is_5ffvar_3c_20stan_3a_3aagrad_3a_3afvar_3c_20t_20_3e_20_3e',['is_fvar< stan::agrad::fvar< T > >',['../structstan_1_1is__fvar_3_01stan_1_1agrad_1_1fvar_3_01_t_01_4_01_4.html',1,'stan']]], + ['is_5fnil_5fop',['is_nil_op',['../structstan_1_1gm_1_1is__nil__op.html',1,'stan::gm']]], + ['is_5fvar',['is_var',['../structstan_1_1is__var.html',1,'stan']]], + ['is_5fvar_3c_20stan_3a_3aagrad_3a_3avar_20_3e',['is_var< stan::agrad::var >',['../structstan_1_1is__var_3_01stan_1_1agrad_1_1var_01_4.html',1,'stan']]], + ['is_5fvar_5for_5farithmetic',['is_var_or_arithmetic',['../structstan_1_1is__var__or__arithmetic.html',1,'stan']]], + ['is_5fvector',['is_vector',['../structstan_1_1is__vector.html',1,'stan']]], + ['is_5fvector_3c_20const_20t_20_3e',['is_vector< const T >',['../structstan_1_1is__vector_3_01const_01_t_01_4.html',1,'stan']]], + ['is_5fvector_3c_20eigen_3a_3amatrix_3c_20t_2c_201_2c_20eigen_3a_3adynamic_20_3e_20_3e',['is_vector< Eigen::Matrix< T, 1, Eigen::Dynamic > >',['../structstan_1_1is__vector_3_01_eigen_1_1_matrix_3_01_t_00_011_00_01_eigen_1_1_dynamic_01_4_01_4.html',1,'stan']]], + ['is_5fvector_3c_20eigen_3a_3amatrix_3c_20t_2c_20eigen_3a_3adynamic_2c_201_20_3e_20_3e',['is_vector< Eigen::Matrix< T, Eigen::Dynamic, 1 > >',['../structstan_1_1is__vector_3_01_eigen_1_1_matrix_3_01_t_00_01_eigen_1_1_dynamic_00_011_01_4_01_4.html',1,'stan']]], + ['is_5fvector_3c_20std_3a_3avector_3c_20t_20_3e_20_3e',['is_vector< std::vector< T > >',['../structstan_1_1is__vector_3_01std_1_1vector_3_01_t_01_4_01_4.html',1,'stan']]], + ['is_5fvector_5flike',['is_vector_like',['../structstan_1_1is__vector__like.html',1,'stan']]], + ['is_5fvector_5flike_3c_20const_20t_20_3e',['is_vector_like< const T >',['../structstan_1_1is__vector__like_3_01const_01_t_01_4.html',1,'stan']]], + ['is_5fvector_5flike_3c_20eigen_3a_3amatrix_3c_20t_2c_20eigen_3a_3adynamic_2c_20eigen_3a_3adynamic_20_3e_20_3e',['is_vector_like< Eigen::Matrix< T, Eigen::Dynamic, Eigen::Dynamic > >',['../structstan_1_1is__vector__like_3_01_eigen_1_1_matrix_3_01_t_00_01_eigen_1_1_dynamic_00_01_eigen_1_1_dynamic_01_4_01_4.html',1,'stan']]], + ['is_5fvector_5flike_3c_20t_20_2a_20_3e',['is_vector_like< T * >',['../structstan_1_1is__vector__like_3_01_t_01_5_01_4.html',1,'stan']]] +]; diff --git a/doc/api/html/search/classes_6c.html b/doc/api/html/search/classes_6c.html new file mode 100644 index 00000000000..9991e053932 --- /dev/null +++ b/doc/api/html/search/classes_6c.html @@ -0,0 +1,25 @@ + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/doc/api/html/search/classes_6c.js b/doc/api/html/search/classes_6c.js new file mode 100644 index 00000000000..870a396dc45 --- /dev/null +++ b/doc/api/html/search/classes_6c.js @@ -0,0 +1,11 @@ +var searchData= +[ + ['ldlt_5falloc',['LDLT_alloc',['../classstan_1_1agrad_1_1_l_d_l_t__alloc.html',1,'stan::agrad']]], + ['ldlt_5ffactor',['LDLT_factor',['../class_l_d_l_t__factor.html',1,'']]], + ['ldlt_5ffactor_3c_20double_2c_20r_2c_20c_20_3e',['LDLT_factor< double, R, C >',['../classstan_1_1math_1_1_l_d_l_t__factor_3_01double_00_01_r_00_01_c_01_4.html',1,'stan::math']]], + ['ldlt_5ffactor_3c_20stan_3a_3aagrad_3a_3avar_2c_20r_2c_20c_20_3e',['LDLT_factor< stan::agrad::var, R, C >',['../classstan_1_1math_1_1_l_d_l_t__factor_3_01stan_1_1agrad_1_1var_00_01_r_00_01_c_01_4.html',1,'stan::math']]], + ['left_5fdivision_5fexpr',['left_division_expr',['../structstan_1_1gm_1_1left__division__expr.html',1,'stan::gm']]], + ['list_5fargument',['list_argument',['../classstan_1_1gm_1_1list__argument.html',1,'stan::gm']]], + ['local_5fvar_5fdecl_5fvisgen',['local_var_decl_visgen',['../structstan_1_1gm_1_1local__var__decl__visgen.html',1,'stan::gm']]], + ['logical_5fnegate_5fexpr',['logical_negate_expr',['../structstan_1_1gm_1_1logical__negate__expr.html',1,'stan::gm']]] +]; diff --git a/doc/api/html/search/classes_6d.html b/doc/api/html/search/classes_6d.html new file mode 100644 index 00000000000..abe6f0d1df4 --- /dev/null +++ b/doc/api/html/search/classes_6d.html @@ -0,0 +1,25 @@ + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/doc/api/html/search/classes_6d.js b/doc/api/html/search/classes_6d.js new file mode 100644 index 00000000000..7db5228d3cf --- /dev/null +++ b/doc/api/html/search/classes_6d.js @@ -0,0 +1,9 @@ +var searchData= +[ + ['matrix_5fvar_5fdecl',['matrix_var_decl',['../structstan_1_1gm_1_1matrix__var__decl.html',1,'stan::gm']]], + ['mcmc_5fwriter',['mcmc_writer',['../classstan_1_1io_1_1mcmc__writer.html',1,'stan::io']]], + ['member_5fvar_5fdecl_5fvisgen',['member_var_decl_visgen',['../structstan_1_1gm_1_1member__var__decl__visgen.html',1,'stan::gm']]], + ['model_5ffunctional',['model_functional',['../structstan_1_1model_1_1model__functional.html',1,'stan::model']]], + ['modeladaptor',['ModelAdaptor',['../classstan_1_1optimization_1_1_model_adaptor.html',1,'stan::optimization']]], + ['multiplication_5fexpr',['multiplication_expr',['../structstan_1_1gm_1_1multiplication__expr.html',1,'stan::gm']]] +]; diff --git a/doc/api/html/search/classes_6e.html b/doc/api/html/search/classes_6e.html new file mode 100644 index 00000000000..44803baa4b9 --- /dev/null +++ b/doc/api/html/search/classes_6e.html @@ -0,0 +1,25 @@ + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/doc/api/html/search/classes_6e.js b/doc/api/html/search/classes_6e.js new file mode 100644 index 00000000000..852b5677e38 --- /dev/null +++ b/doc/api/html/search/classes_6e.js @@ -0,0 +1,12 @@ +var searchData= +[ + ['name_5fvis',['name_vis',['../structstan_1_1gm_1_1name__vis.html',1,'stan::gm']]], + ['negate_5fexpr',['negate_expr',['../structstan_1_1gm_1_1negate__expr.html',1,'stan::gm']]], + ['nesterovgradient',['NesterovGradient',['../classstan_1_1optimization_1_1_nesterov_gradient.html',1,'stan::optimization']]], + ['nil',['nil',['../structstan_1_1gm_1_1nil.html',1,'stan::gm']]], + ['no_5fop_5fstatement',['no_op_statement',['../structstan_1_1gm_1_1no__op__statement.html',1,'stan::gm']]], + ['numeric_5flimits_3c_20stan_3a_3aagrad_3a_3afvar_3c_20t_20_3e_20_3e',['numeric_limits< stan::agrad::fvar< T > >',['../structstd_1_1numeric__limits_3_01stan_1_1agrad_1_1fvar_3_01_t_01_4_01_4.html',1,'std']]], + ['numeric_5flimits_3c_20stan_3a_3aagrad_3a_3avar_20_3e',['numeric_limits< stan::agrad::var >',['../structstd_1_1numeric__limits_3_01stan_1_1agrad_1_1var_01_4.html',1,'std']]], + ['numtraits_3c_20stan_3a_3aagrad_3a_3avar_20_3e',['NumTraits< stan::agrad::var >',['../struct_eigen_1_1_num_traits_3_01stan_1_1agrad_1_1var_01_4.html',1,'Eigen']]], + ['nuts_5futil',['nuts_util',['../structstan_1_1mcmc_1_1nuts__util.html',1,'stan::mcmc']]] +]; diff --git a/doc/api/html/search/classes_6f.html b/doc/api/html/search/classes_6f.html new file mode 100644 index 00000000000..926dcfcf421 --- /dev/null +++ b/doc/api/html/search/classes_6f.html @@ -0,0 +1,25 @@ + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/doc/api/html/search/classes_6f.js b/doc/api/html/search/classes_6f.js new file mode 100644 index 00000000000..3dfc4d22dd2 --- /dev/null +++ b/doc/api/html/search/classes_6f.js @@ -0,0 +1,18 @@ +var searchData= +[ + ['op_5fddv_5fvari',['op_ddv_vari',['../classstan_1_1agrad_1_1op__ddv__vari.html',1,'stan::agrad']]], + ['op_5fdv_5fvari',['op_dv_vari',['../classstan_1_1agrad_1_1op__dv__vari.html',1,'stan::agrad']]], + ['op_5fdvd_5fvari',['op_dvd_vari',['../classstan_1_1agrad_1_1op__dvd__vari.html',1,'stan::agrad']]], + ['op_5fdvv_5fvari',['op_dvv_vari',['../classstan_1_1agrad_1_1op__dvv__vari.html',1,'stan::agrad']]], + ['op_5fmatrix_5fvari',['op_matrix_vari',['../classstan_1_1agrad_1_1op__matrix__vari.html',1,'stan::agrad']]], + ['op_5fv_5fvari',['op_v_vari',['../classstan_1_1agrad_1_1op__v__vari.html',1,'stan::agrad']]], + ['op_5fvd_5fvari',['op_vd_vari',['../classstan_1_1agrad_1_1op__vd__vari.html',1,'stan::agrad']]], + ['op_5fvdd_5fvari',['op_vdd_vari',['../classstan_1_1agrad_1_1op__vdd__vari.html',1,'stan::agrad']]], + ['op_5fvdv_5fvari',['op_vdv_vari',['../classstan_1_1agrad_1_1op__vdv__vari.html',1,'stan::agrad']]], + ['op_5fvector_5fvari',['op_vector_vari',['../classstan_1_1agrad_1_1op__vector__vari.html',1,'stan::agrad']]], + ['op_5fvv_5fvari',['op_vv_vari',['../classstan_1_1agrad_1_1op__vv__vari.html',1,'stan::agrad']]], + ['op_5fvvd_5fvari',['op_vvd_vari',['../classstan_1_1agrad_1_1op__vvd__vari.html',1,'stan::agrad']]], + ['op_5fvvv_5fvari',['op_vvv_vari',['../classstan_1_1agrad_1_1op__vvv__vari.html',1,'stan::agrad']]], + ['operandsandpartials',['OperandsAndPartials',['../structstan_1_1agrad_1_1_operands_and_partials.html',1,'stan::agrad']]], + ['ordered_5fvar_5fdecl',['ordered_var_decl',['../structstan_1_1gm_1_1ordered__var__decl.html',1,'stan::gm']]] +]; diff --git a/doc/api/html/search/classes_70.html b/doc/api/html/search/classes_70.html new file mode 100644 index 00000000000..e4b52087496 --- /dev/null +++ b/doc/api/html/search/classes_70.html @@ -0,0 +1,25 @@ + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/doc/api/html/search/classes_70.js b/doc/api/html/search/classes_70.js new file mode 100644 index 00000000000..1602ffa51ae --- /dev/null +++ b/doc/api/html/search/classes_70.js @@ -0,0 +1,23 @@ +var searchData= +[ + ['partials_5fvari',['partials_vari',['../classstan_1_1agrad_1_1partials__vari.html',1,'stan::agrad']]], + ['pass_5ftype',['pass_type',['../structstan_1_1math_1_1pass__type.html',1,'stan::math']]], + ['pass_5ftype_3c_20double_20_3e',['pass_type< double >',['../structstan_1_1math_1_1pass__type_3_01double_01_4.html',1,'stan::math']]], + ['pass_5ftype_3c_20int_20_3e',['pass_type< int >',['../structstan_1_1math_1_1pass__type_3_01int_01_4.html',1,'stan::math']]], + ['positive_5fordered_5fvar_5fdecl',['positive_ordered_var_decl',['../structstan_1_1gm_1_1positive__ordered__var__decl.html',1,'stan::gm']]], + ['precomp_5fv_5fvari',['precomp_v_vari',['../classstan_1_1agrad_1_1precomp__v__vari.html',1,'stan::agrad']]], + ['precomputed_5fgradients_5fvari',['precomputed_gradients_vari',['../classstan_1_1agrad_1_1precomputed__gradients__vari.html',1,'stan::agrad']]], + ['print_5fstatement',['print_statement',['../structstan_1_1gm_1_1print__statement.html',1,'stan::gm']]], + ['printable',['printable',['../structstan_1_1gm_1_1printable.html',1,'stan::gm']]], + ['printable_5fvisgen',['printable_visgen',['../structstan_1_1gm_1_1printable__visgen.html',1,'stan::gm']]], + ['prob_5fgrad',['prob_grad',['../classstan_1_1model_1_1prob__grad.html',1,'stan::model']]], + ['program',['program',['../structstan_1_1gm_1_1program.html',1,'stan::gm']]], + ['program_5fgrammar',['program_grammar',['../structstan_1_1gm_1_1program__grammar.html',1,'stan::gm']]], + ['promoter',['promoter',['../structstan_1_1math_1_1promoter.html',1,'stan::math']]], + ['promoter_3c_20eigen_3a_3amatrix_3c_20f_2c_20r_2c_20c_20_3e_2c_20eigen_3a_3amatrix_3c_20t_2c_20r_2c_20c_20_3e_20_3e',['promoter< Eigen::Matrix< F, R, C >, Eigen::Matrix< T, R, C > >',['../structstan_1_1math_1_1promoter_3_01_eigen_1_1_matrix_3_01_f_00_01_r_00_01_c_01_4_00_01_eigen_1_142b48fda94601374e41a81325f3f7b84.html',1,'stan::math']]], + ['promoter_3c_20eigen_3a_3amatrix_3c_20t_2c_20r_2c_20c_20_3e_2c_20eigen_3a_3amatrix_3c_20t_2c_20r_2c_20c_20_3e_20_3e',['promoter< Eigen::Matrix< T, R, C >, Eigen::Matrix< T, R, C > >',['../structstan_1_1math_1_1promoter_3_01_eigen_1_1_matrix_3_01_t_00_01_r_00_01_c_01_4_00_01_eigen_1_12d7fadf0560f1f2f3abc5388b7666f9c.html',1,'stan::math']]], + ['promoter_3c_20std_3a_3avector_3c_20f_20_3e_2c_20std_3a_3avector_3c_20t_20_3e_20_3e',['promoter< std::vector< F >, std::vector< T > >',['../structstan_1_1math_1_1promoter_3_01std_1_1vector_3_01_f_01_4_00_01std_1_1vector_3_01_t_01_4_01_4.html',1,'stan::math']]], + ['promoter_3c_20std_3a_3avector_3c_20t_20_3e_2c_20std_3a_3avector_3c_20t_20_3e_20_3e',['promoter< std::vector< T >, std::vector< T > >',['../structstan_1_1math_1_1promoter_3_01std_1_1vector_3_01_t_01_4_00_01std_1_1vector_3_01_t_01_4_01_4.html',1,'stan::math']]], + ['promoter_3c_20t_2c_20t_20_3e',['promoter< T, T >',['../structstan_1_1math_1_1promoter_3_01_t_00_01_t_01_4.html',1,'stan::math']]], + ['ps_5fpoint',['ps_point',['../classstan_1_1mcmc_1_1ps__point.html',1,'stan::mcmc']]] +]; diff --git a/doc/api/html/search/classes_72.html b/doc/api/html/search/classes_72.html new file mode 100644 index 00000000000..0d0ddb4eb72 --- /dev/null +++ b/doc/api/html/search/classes_72.html @@ -0,0 +1,25 @@ + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/doc/api/html/search/classes_72.js b/doc/api/html/search/classes_72.js new file mode 100644 index 00000000000..2596b118c77 --- /dev/null +++ b/doc/api/html/search/classes_72.js @@ -0,0 +1,39 @@ +var searchData= +[ + ['range',['range',['../structstan_1_1gm_1_1range.html',1,'stan::gm']]], + ['reader',['reader',['../classstan_1_1io_1_1reader.html',1,'stan::io']]], + ['remove_5floop_5fidentifier',['remove_loop_identifier',['../structstan_1_1gm_1_1remove__loop__identifier.html',1,'stan::gm']]], + ['result',['result',['../structstan_1_1gm_1_1logical__negate__expr_1_1result.html',1,'stan::gm::logical_negate_expr']]], + ['result',['result',['../structstan_1_1gm_1_1set__var__type_1_1result.html',1,'stan::gm::set_var_type']]], + ['result',['result',['../structstan_1_1gm_1_1remove__loop__identifier_1_1result.html',1,'stan::gm::remove_loop_identifier']]], + ['result',['result',['../structstan_1_1gm_1_1validate__expr__type_1_1result.html',1,'stan::gm::validate_expr_type']]], + ['result',['result',['../structstan_1_1gm_1_1validate__allow__sample_1_1result.html',1,'stan::gm::validate_allow_sample']]], + ['result',['result',['../structstan_1_1gm_1_1add__expression__dimss_1_1result.html',1,'stan::gm::add_expression_dimss']]], + ['result',['result',['../structstan_1_1gm_1_1transpose__expr_1_1result.html',1,'stan::gm::transpose_expr']]], + ['result',['result',['../structstan_1_1gm_1_1negate__expr_1_1result.html',1,'stan::gm::negate_expr']]], + ['result',['result',['../structstan_1_1gm_1_1elt__division__expr_1_1result.html',1,'stan::gm::elt_division_expr']]], + ['result',['result',['../structstan_1_1gm_1_1elt__multiplication__expr_1_1result.html',1,'stan::gm::elt_multiplication_expr']]], + ['result',['result',['../structstan_1_1gm_1_1validate__int__expr2_1_1result.html',1,'stan::gm::validate_int_expr2']]], + ['result',['result',['../structstan_1_1gm_1_1multiplication__expr_1_1result.html',1,'stan::gm::multiplication_expr']]], + ['result',['result',['../structstan_1_1gm_1_1validate__assignment_1_1result.html',1,'stan::gm::validate_assignment']]], + ['result',['result',['../structstan_1_1gm_1_1validate__sample_1_1result.html',1,'stan::gm::validate_sample']]], + ['result',['result',['../structstan_1_1gm_1_1addition__expr_1_1result.html',1,'stan::gm::addition_expr']]], + ['result',['result',['../structstan_1_1gm_1_1subtraction__expr_1_1result.html',1,'stan::gm::subtraction_expr']]], + ['result',['result',['../structstan_1_1gm_1_1validate__expr__type2_1_1result.html',1,'stan::gm::validate_expr_type2']]], + ['result',['result',['../structstan_1_1gm_1_1add__loop__identifier_1_1result.html',1,'stan::gm::add_loop_identifier']]], + ['result',['result',['../structstan_1_1gm_1_1set__fun__type_1_1result.html',1,'stan::gm::set_fun_type']]], + ['result',['result',['../structstan_1_1gm_1_1unscope__locals_1_1result.html',1,'stan::gm::unscope_locals']]], + ['result',['result',['../structstan_1_1gm_1_1add__conditional__body_1_1result.html',1,'stan::gm::add_conditional_body']]], + ['result',['result',['../structstan_1_1gm_1_1add__conditional__condition_1_1result.html',1,'stan::gm::add_conditional_condition']]], + ['result',['result',['../structstan_1_1gm_1_1left__division__expr_1_1result.html',1,'stan::gm::left_division_expr']]], + ['result',['result',['../structstan_1_1gm_1_1add__while__condition_1_1result.html',1,'stan::gm::add_while_condition']]], + ['result',['result',['../structstan_1_1gm_1_1set__fun__type2_1_1result.html',1,'stan::gm::set_fun_type2']]], + ['result',['result',['../structstan_1_1gm_1_1set__fun__type__named_1_1result.html',1,'stan::gm::set_fun_type_named']]], + ['result',['result',['../structstan_1_1gm_1_1division__expr_1_1result.html',1,'stan::gm::division_expr']]], + ['result',['result',['../structstan_1_1gm_1_1expression__as__statement_1_1result.html',1,'stan::gm::expression_as_statement']]], + ['result',['result',['../structstan_1_1gm_1_1binary__op__expr_1_1result.html',1,'stan::gm::binary_op_expr']]], + ['result',['result',['../structstan_1_1gm_1_1validate__int__expr3_1_1result.html',1,'stan::gm::validate_int_expr3']]], + ['result',['result',['../structstan_1_1gm_1_1add__while__body_1_1result.html',1,'stan::gm::add_while_body']]], + ['return_5ftype',['return_type',['../structstan_1_1return__type.html',1,'stan']]], + ['row_5fvector_5fvar_5fdecl',['row_vector_var_decl',['../structstan_1_1gm_1_1row__vector__var__decl.html',1,'stan::gm']]] +]; diff --git a/doc/api/html/search/classes_73.html b/doc/api/html/search/classes_73.html new file mode 100644 index 00000000000..a1bf0b912de --- /dev/null +++ b/doc/api/html/search/classes_73.html @@ -0,0 +1,25 @@ + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/doc/api/html/search/classes_73.js b/doc/api/html/search/classes_73.js new file mode 100644 index 00000000000..591f5757507 --- /dev/null +++ b/doc/api/html/search/classes_73.js @@ -0,0 +1,57 @@ +var searchData= +[ + ['sample',['sample',['../structstan_1_1gm_1_1sample.html',1,'stan::gm']]], + ['sample',['sample',['../classstan_1_1mcmc_1_1sample.html',1,'stan::mcmc']]], + ['scalar_5fproduct_5ftraits_3c_20double_2c_20stan_3a_3aagrad_3a_3avar_20_3e',['scalar_product_traits< double, stan::agrad::var >',['../struct_eigen_1_1internal_1_1scalar__product__traits_3_01double_00_01stan_1_1agrad_1_1var_01_4.html',1,'Eigen::internal']]], + ['scalar_5fproduct_5ftraits_3c_20stan_3a_3aagrad_3a_3avar_2c_20double_20_3e',['scalar_product_traits< stan::agrad::var, double >',['../struct_eigen_1_1internal_1_1scalar__product__traits_3_01stan_1_1agrad_1_1var_00_01double_01_4.html',1,'Eigen::internal']]], + ['scalar_5ftype',['scalar_type',['../structstan_1_1scalar__type.html',1,'stan']]], + ['scalar_5ftype_3c_20eigen_3a_3amatrix_3c_20t_2c_20eigen_3a_3adynamic_2c_20eigen_3a_3adynamic_20_3e_20_3e',['scalar_type< Eigen::Matrix< T, Eigen::Dynamic, Eigen::Dynamic > >',['../structstan_1_1scalar__type_3_01_eigen_1_1_matrix_3_01_t_00_01_eigen_1_1_dynamic_00_01_eigen_1_1_dynamic_01_4_01_4.html',1,'stan']]], + ['scalar_5ftype_3c_20t_20_2a_20_3e',['scalar_type< T * >',['../structstan_1_1scalar__type_3_01_t_01_5_01_4.html',1,'stan']]], + ['seq_5fview',['seq_view',['../classstan_1_1math_1_1seq__view.html',1,'stan::math']]], + ['seq_5fview_3c_20double_2c_20std_3a_3avector_3c_20int_20_3e_20_3e',['seq_view< double, std::vector< int > >',['../classstan_1_1math_1_1seq__view_3_01double_00_01std_1_1vector_3_01int_01_4_01_4.html',1,'stan::math']]], + ['seq_5fview_3c_20t_2c_20eigen_3a_3amatrix_3c_20s_2c_201_2c_20eigen_3a_3adynamic_20_3e_20_3e',['seq_view< T, Eigen::Matrix< S, 1, Eigen::Dynamic > >',['../classstan_1_1math_1_1seq__view_3_01_t_00_01_eigen_1_1_matrix_3_01_s_00_011_00_01_eigen_1_1_dynamic_01_4_01_4.html',1,'stan::math']]], + ['seq_5fview_3c_20t_2c_20eigen_3a_3amatrix_3c_20s_2c_20eigen_3a_3adynamic_2c_201_20_3e_20_3e',['seq_view< T, Eigen::Matrix< S, Eigen::Dynamic, 1 > >',['../classstan_1_1math_1_1seq__view_3_01_t_00_01_eigen_1_1_matrix_3_01_s_00_01_eigen_1_1_dynamic_00_011_01_4_01_4.html',1,'stan::math']]], + ['seq_5fview_3c_20t_2c_20eigen_3a_3amatrix_3c_20s_2c_20eigen_3a_3adynamic_2c_20eigen_3a_3adynamic_20_3e_20_3e',['seq_view< T, Eigen::Matrix< S, Eigen::Dynamic, Eigen::Dynamic > >',['../classstan_1_1math_1_1seq__view_3_01_t_00_01_eigen_1_1_matrix_3_01_s_00_01_eigen_1_1_dynamic_00_01_eigen_1_1_dynamic_01_4_01_4.html',1,'stan::math']]], + ['seq_5fview_3c_20t_2c_20std_3a_3avector_3c_20s_20_3e_20_3e',['seq_view< T, std::vector< S > >',['../classstan_1_1math_1_1seq__view_3_01_t_00_01std_1_1vector_3_01_s_01_4_01_4.html',1,'stan::math']]], + ['seq_5fview_3c_20t_2c_20std_3a_3avector_3c_20std_3a_3avector_3c_20t_20_3e_20_3e_20_3e',['seq_view< T, std::vector< std::vector< T > > >',['../classstan_1_1math_1_1seq__view_3_01_t_00_01std_1_1vector_3_01std_1_1vector_3_01_t_01_4_01_4_01_4.html',1,'stan::math']]], + ['seq_5fview_3c_20t_2c_20std_3a_3avector_3c_20t_20_3e_20_3e',['seq_view< T, std::vector< T > >',['../classstan_1_1math_1_1seq__view_3_01_t_00_01std_1_1vector_3_01_t_01_4_01_4.html',1,'stan::math']]], + ['set_5ffun_5ftype',['set_fun_type',['../structstan_1_1gm_1_1set__fun__type.html',1,'stan::gm']]], + ['set_5ffun_5ftype2',['set_fun_type2',['../structstan_1_1gm_1_1set__fun__type2.html',1,'stan::gm']]], + ['set_5ffun_5ftype_5fnamed',['set_fun_type_named',['../structstan_1_1gm_1_1set__fun__type__named.html',1,'stan::gm']]], + ['set_5fparam_5franges_5fvisgen',['set_param_ranges_visgen',['../structstan_1_1gm_1_1set__param__ranges__visgen.html',1,'stan::gm']]], + ['set_5fvar_5ftype',['set_var_type',['../structstan_1_1gm_1_1set__var__type.html',1,'stan::gm']]], + ['significant_5fdecimals_5fdefault_5fimpl_3c_20stan_3a_3aagrad_3a_3avar_2c_20false_20_3e',['significant_decimals_default_impl< stan::agrad::var, false >',['../struct_eigen_1_1internal_1_1significant__decimals__default__impl_3_01stan_1_1agrad_1_1var_00_01false_01_4.html',1,'Eigen::internal']]], + ['simplex_5fvar_5fdecl',['simplex_var_decl',['../structstan_1_1gm_1_1simplex__var__decl.html',1,'stan::gm']]], + ['singleton_5fargument',['singleton_argument',['../classstan_1_1gm_1_1singleton__argument.html',1,'stan::gm']]], + ['size_5fof_5fhelper',['size_of_helper',['../structstan_1_1size__of__helper.html',1,'stan']]], + ['size_5fof_5fhelper_3c_20t_2c_20true_20_3e',['size_of_helper< T, true >',['../structstan_1_1size__of__helper_3_01_t_00_01true_01_4.html',1,'stan']]], + ['stack_5falloc',['stack_alloc',['../classstan_1_1memory_1_1stack__alloc.html',1,'stan::memory']]], + ['stan_5fcsv',['stan_csv',['../structstan_1_1io_1_1stan__csv.html',1,'stan::io']]], + ['stan_5fcsv_5fadaptation',['stan_csv_adaptation',['../structstan_1_1io_1_1stan__csv__adaptation.html',1,'stan::io']]], + ['stan_5fcsv_5fmetadata',['stan_csv_metadata',['../structstan_1_1io_1_1stan__csv__metadata.html',1,'stan::io']]], + ['stan_5fcsv_5freader',['stan_csv_reader',['../classstan_1_1io_1_1stan__csv__reader.html',1,'stan::io']]], + ['stan_5fcsv_5ftiming',['stan_csv_timing',['../structstan_1_1io_1_1stan__csv__timing.html',1,'stan::io']]], + ['statement',['statement',['../structstan_1_1gm_1_1statement.html',1,'stan::gm']]], + ['statement_5f2_5fgrammar',['statement_2_grammar',['../structstan_1_1gm_1_1statement__2__grammar.html',1,'stan::gm']]], + ['statement_5fgrammar',['statement_grammar',['../structstatement__grammar.html',1,'']]], + ['statement_5fgrammar',['statement_grammar',['../structstan_1_1gm_1_1statement__grammar.html',1,'stan::gm']]], + ['statement_5fvisgen',['statement_visgen',['../structstan_1_1gm_1_1statement__visgen.html',1,'stan::gm']]], + ['statements',['statements',['../structstan_1_1gm_1_1statements.html',1,'stan::gm']]], + ['stepsize_5fadaptation',['stepsize_adaptation',['../classstan_1_1mcmc_1_1stepsize__adaptation.html',1,'stan::mcmc']]], + ['stepsize_5fadapter',['stepsize_adapter',['../classstan_1_1mcmc_1_1stepsize__adapter.html',1,'stan::mcmc']]], + ['stepsize_5fcovar_5fadapter',['stepsize_covar_adapter',['../classstan_1_1mcmc_1_1stepsize__covar__adapter.html',1,'stan::mcmc']]], + ['stepsize_5fvar_5fadapter',['stepsize_var_adapter',['../classstan_1_1mcmc_1_1stepsize__var__adapter.html',1,'stan::mcmc']]], + ['store_5ftype',['store_type',['../structstan_1_1math_1_1store__type.html',1,'stan::math']]], + ['store_5ftype_3c_20double_20_3e',['store_type< double >',['../structstan_1_1math_1_1store__type_3_01double_01_4.html',1,'stan::math']]], + ['store_5ftype_3c_20eigen_3a_3amatrix_3c_20s_2c_201_2c_20eigen_3a_3adynamic_20_3e_20_3e',['store_type< Eigen::Matrix< S, 1, Eigen::Dynamic > >',['../structstan_1_1math_1_1store__type.html',1,'stan::math']]], + ['store_5ftype_3c_20eigen_3a_3amatrix_3c_20s_2c_20eigen_3a_3adynamic_2c_201_20_3e_20_3e',['store_type< Eigen::Matrix< S, Eigen::Dynamic, 1 > >',['../structstan_1_1math_1_1store__type.html',1,'stan::math']]], + ['store_5ftype_3c_20eigen_3a_3amatrix_3c_20s_2c_20eigen_3a_3adynamic_2c_20eigen_3a_3adynamic_20_3e_20_3e',['store_type< Eigen::Matrix< S, Eigen::Dynamic, Eigen::Dynamic > >',['../structstan_1_1math_1_1store__type.html',1,'stan::math']]], + ['store_5ftype_3c_20int_20_3e',['store_type< int >',['../structstan_1_1math_1_1store__type_3_01int_01_4.html',1,'stan::math']]], + ['store_5ftype_3c_20s_20_3e',['store_type< S >',['../structstan_1_1math_1_1store__type.html',1,'stan::math']]], + ['store_5ftype_3c_20std_3a_3avector_3c_20int_20_3e_20_3e',['store_type< std::vector< int > >',['../structstan_1_1math_1_1store__type.html',1,'stan::math']]], + ['store_5ftype_3c_20std_3a_3avector_3c_20s_20_3e_20_3e',['store_type< std::vector< S > >',['../structstan_1_1math_1_1store__type.html',1,'stan::math']]], + ['store_5ftype_3c_20std_3a_3avector_3c_20std_3a_3avector_3c_20t_20_3e_20_3e_20_3e',['store_type< std::vector< std::vector< T > > >',['../structstan_1_1math_1_1store__type.html',1,'stan::math']]], + ['store_5ftype_3c_20std_3a_3avector_3c_20t_20_3e_20_3e',['store_type< std::vector< T > >',['../structstan_1_1math_1_1store__type.html',1,'stan::math']]], + ['stored_5fgradient_5fvari',['stored_gradient_vari',['../classstan_1_1agrad_1_1stored__gradient__vari.html',1,'stan::agrad']]], + ['subtraction_5fexpr',['subtraction_expr',['../structstan_1_1gm_1_1subtraction__expr.html',1,'stan::gm']]] +]; diff --git a/doc/api/html/search/classes_74.html b/doc/api/html/search/classes_74.html new file mode 100644 index 00000000000..f7f27cea727 --- /dev/null +++ b/doc/api/html/search/classes_74.html @@ -0,0 +1,25 @@ + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/doc/api/html/search/classes_74.js b/doc/api/html/search/classes_74.js new file mode 100644 index 00000000000..8824b6bda57 --- /dev/null +++ b/doc/api/html/search/classes_74.js @@ -0,0 +1,12 @@ +var searchData= +[ + ['term_5fgrammar',['term_grammar',['../structterm__grammar.html',1,'term_grammar< Iterator >'],['../structterm__grammar.html',1,'term_grammar< Iterator >']]], + ['term_5fgrammar',['term_grammar',['../structstan_1_1gm_1_1term__grammar.html',1,'stan::gm']]], + ['transpose_5fexpr',['transpose_expr',['../structstan_1_1gm_1_1transpose__expr.html',1,'stan::gm']]], + ['type_5fname',['type_name',['../structstan_1_1gm_1_1type__name.html',1,'stan::gm']]], + ['type_5fname_3c_20bool_20_3e',['type_name< bool >',['../structstan_1_1gm_1_1type__name_3_01bool_01_4.html',1,'stan::gm']]], + ['type_5fname_3c_20double_20_3e',['type_name< double >',['../structstan_1_1gm_1_1type__name_3_01double_01_4.html',1,'stan::gm']]], + ['type_5fname_3c_20int_20_3e',['type_name< int >',['../structstan_1_1gm_1_1type__name_3_01int_01_4.html',1,'stan::gm']]], + ['type_5fname_3c_20std_3a_3astring_20_3e',['type_name< std::string >',['../structstan_1_1gm_1_1type__name_3_01std_1_1string_01_4.html',1,'stan::gm']]], + ['type_5fname_3c_20unsigned_20int_20_3e',['type_name< unsigned int >',['../structstan_1_1gm_1_1type__name_3_01unsigned_01int_01_4.html',1,'stan::gm']]] +]; diff --git a/doc/api/html/search/classes_75.html b/doc/api/html/search/classes_75.html new file mode 100644 index 00000000000..807d7426e6c --- /dev/null +++ b/doc/api/html/search/classes_75.html @@ -0,0 +1,25 @@ + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/doc/api/html/search/classes_75.js b/doc/api/html/search/classes_75.js new file mode 100644 index 00000000000..50c6297eff7 --- /dev/null +++ b/doc/api/html/search/classes_75.js @@ -0,0 +1,12 @@ +var searchData= +[ + ['unary_5fop',['unary_op',['../structstan_1_1gm_1_1unary__op.html',1,'stan::gm']]], + ['unconstrained_5fparam_5fnames_5fvisgen',['unconstrained_param_names_visgen',['../structstan_1_1gm_1_1unconstrained__param__names__visgen.html',1,'stan::gm']]], + ['unit_5fe_5fmetric',['unit_e_metric',['../classstan_1_1mcmc_1_1unit__e__metric.html',1,'stan::mcmc']]], + ['unit_5fe_5fnuts',['unit_e_nuts',['../classstan_1_1mcmc_1_1unit__e__nuts.html',1,'stan::mcmc']]], + ['unit_5fe_5fpoint',['unit_e_point',['../classstan_1_1mcmc_1_1unit__e__point.html',1,'stan::mcmc']]], + ['unit_5fe_5fstatic_5fhmc',['unit_e_static_hmc',['../classstan_1_1mcmc_1_1unit__e__static__hmc.html',1,'stan::mcmc']]], + ['unit_5fvector_5fvar_5fdecl',['unit_vector_var_decl',['../structstan_1_1gm_1_1unit__vector__var__decl.html',1,'stan::gm']]], + ['unscope_5flocals',['unscope_locals',['../structstan_1_1gm_1_1unscope__locals.html',1,'stan::gm']]], + ['unvalued_5fargument',['unvalued_argument',['../classstan_1_1gm_1_1unvalued__argument.html',1,'stan::gm']]] +]; diff --git a/doc/api/html/search/classes_76.html b/doc/api/html/search/classes_76.html new file mode 100644 index 00000000000..f470eb97455 --- /dev/null +++ b/doc/api/html/search/classes_76.html @@ -0,0 +1,25 @@ + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/doc/api/html/search/classes_76.js b/doc/api/html/search/classes_76.js new file mode 100644 index 00000000000..9b7a4451143 --- /dev/null +++ b/doc/api/html/search/classes_76.js @@ -0,0 +1,35 @@ +var searchData= +[ + ['validate_5fallow_5fsample',['validate_allow_sample',['../structstan_1_1gm_1_1validate__allow__sample.html',1,'stan::gm']]], + ['validate_5fassignment',['validate_assignment',['../structstan_1_1gm_1_1validate__assignment.html',1,'stan::gm']]], + ['validate_5fexpr_5ftype',['validate_expr_type',['../structstan_1_1gm_1_1validate__expr__type.html',1,'stan::gm']]], + ['validate_5fexpr_5ftype2',['validate_expr_type2',['../structstan_1_1gm_1_1validate__expr__type2.html',1,'stan::gm']]], + ['validate_5fint_5fexpr2',['validate_int_expr2',['../structstan_1_1gm_1_1validate__int__expr2.html',1,'stan::gm']]], + ['validate_5fint_5fexpr3',['validate_int_expr3',['../structstan_1_1gm_1_1validate__int__expr3.html',1,'stan::gm']]], + ['validate_5fsample',['validate_sample',['../structstan_1_1gm_1_1validate__sample.html',1,'stan::gm']]], + ['validate_5ftransformed_5fparams_5fvisgen',['validate_transformed_params_visgen',['../structstan_1_1gm_1_1validate__transformed__params__visgen.html',1,'stan::gm']]], + ['validate_5fvar_5fdecl_5fvisgen',['validate_var_decl_visgen',['../structstan_1_1gm_1_1validate__var__decl__visgen.html',1,'stan::gm']]], + ['valued_5fargument',['valued_argument',['../classstan_1_1gm_1_1valued__argument.html',1,'stan::gm']]], + ['var',['var',['../classstan_1_1agrad_1_1var.html',1,'stan::agrad']]], + ['var_5fadaptation',['var_adaptation',['../classstan_1_1mcmc_1_1var__adaptation.html',1,'stan::mcmc']]], + ['var_5fcontext',['var_context',['../classstan_1_1io_1_1var__context.html',1,'stan::io']]], + ['var_5fdecl',['var_decl',['../structstan_1_1gm_1_1var__decl.html',1,'stan::gm']]], + ['var_5fdecls_5fgrammar',['var_decls_grammar',['../structstan_1_1gm_1_1var__decls__grammar.html',1,'stan::gm']]], + ['var_5fresizing_5fvisgen',['var_resizing_visgen',['../structstan_1_1gm_1_1var__resizing__visgen.html',1,'stan::gm']]], + ['var_5fsize_5fvalidating_5fvisgen',['var_size_validating_visgen',['../structstan_1_1gm_1_1var__size__validating__visgen.html',1,'stan::gm']]], + ['vari',['vari',['../classstan_1_1agrad_1_1vari.html',1,'stan::agrad']]], + ['variable',['variable',['../structstan_1_1gm_1_1variable.html',1,'stan::gm']]], + ['variable_5fdims',['variable_dims',['../structstan_1_1gm_1_1variable__dims.html',1,'stan::gm']]], + ['variable_5fmap',['variable_map',['../structstan_1_1gm_1_1variable__map.html',1,'stan::gm']]], + ['vector_5fvar_5fdecl',['vector_var_decl',['../structstan_1_1gm_1_1vector__var__decl.html',1,'stan::gm']]], + ['vectorview',['VectorView',['../classstan_1_1_vector_view.html',1,'stan']]], + ['vectorview_3c_20const_20double_2c_20false_2c_20false_20_3e',['VectorView< const double, false, false >',['../classstan_1_1_vector_view_3_01const_01double_00_01false_00_01false_01_4.html',1,'stan']]], + ['vectorview_3c_20const_20t_2c_20is_5farray_2c_20throw_5fif_5faccessed_20_3e',['VectorView< const T, is_array, throw_if_accessed >',['../classstan_1_1_vector_view_3_01const_01_t_00_01is__array_00_01throw__if__accessed_01_4.html',1,'stan']]], + ['vectorview_3c_20double_20_2a_2c_20is_5fvector_3c_20t1_20_3e_3a_3avalue_2c_20is_5fconstant_5fstruct_3c_20t1_20_3e_3a_3avalue_20_3e',['VectorView< double *, is_vector< T1 >::value, is_constant_struct< T1 >::value >',['../classstan_1_1_vector_view.html',1,'stan']]], + ['vectorview_3c_20double_20_2a_2c_20is_5fvector_3c_20t2_20_3e_3a_3avalue_2c_20is_5fconstant_5fstruct_3c_20t2_20_3e_3a_3avalue_20_3e',['VectorView< double *, is_vector< T2 >::value, is_constant_struct< T2 >::value >',['../classstan_1_1_vector_view.html',1,'stan']]], + ['vectorview_3c_20double_20_2a_2c_20is_5fvector_3c_20t3_20_3e_3a_3avalue_2c_20is_5fconstant_5fstruct_3c_20t3_20_3e_3a_3avalue_20_3e',['VectorView< double *, is_vector< T3 >::value, is_constant_struct< T3 >::value >',['../classstan_1_1_vector_view.html',1,'stan']]], + ['vectorview_3c_20double_20_2a_2c_20is_5fvector_3c_20t4_20_3e_3a_3avalue_2c_20is_5fconstant_5fstruct_3c_20t4_20_3e_3a_3avalue_20_3e',['VectorView< double *, is_vector< T4 >::value, is_constant_struct< T4 >::value >',['../classstan_1_1_vector_view.html',1,'stan']]], + ['vectorview_3c_20double_20_2a_2c_20is_5fvector_3c_20t5_20_3e_3a_3avalue_2c_20is_5fconstant_5fstruct_3c_20t5_20_3e_3a_3avalue_20_3e',['VectorView< double *, is_vector< T5 >::value, is_constant_struct< T5 >::value >',['../classstan_1_1_vector_view.html',1,'stan']]], + ['vectorview_3c_20double_20_2a_2c_20is_5fvector_3c_20t6_20_3e_3a_3avalue_2c_20is_5fconstant_5fstruct_3c_20t6_20_3e_3a_3avalue_20_3e',['VectorView< double *, is_vector< T6 >::value, is_constant_struct< T6 >::value >',['../classstan_1_1_vector_view.html',1,'stan']]], + ['visgen',['visgen',['../structstan_1_1gm_1_1visgen.html',1,'stan::gm']]] +]; diff --git a/doc/api/html/search/classes_77.html b/doc/api/html/search/classes_77.html new file mode 100644 index 00000000000..e3967e97218 --- /dev/null +++ b/doc/api/html/search/classes_77.html @@ -0,0 +1,25 @@ + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/doc/api/html/search/classes_77.js b/doc/api/html/search/classes_77.js new file mode 100644 index 00000000000..8b7637995b8 --- /dev/null +++ b/doc/api/html/search/classes_77.js @@ -0,0 +1,16 @@ +var searchData= +[ + ['welford_5fcovar_5festimator',['welford_covar_estimator',['../classstan_1_1prob_1_1welford__covar__estimator.html',1,'stan::prob']]], + ['welford_5fvar_5festimator',['welford_var_estimator',['../classstan_1_1prob_1_1welford__var__estimator.html',1,'stan::prob']]], + ['while_5fstatement',['while_statement',['../structstan_1_1gm_1_1while__statement.html',1,'stan::gm']]], + ['whitespace_5fgrammar',['whitespace_grammar',['../structstan_1_1gm_1_1whitespace__grammar.html',1,'stan::gm']]], + ['windowed_5fadaptation',['windowed_adaptation',['../classstan_1_1mcmc_1_1windowed__adaptation.html',1,'stan::mcmc']]], + ['write_5farray_5fvars_5fvisgen',['write_array_vars_visgen',['../structstan_1_1gm_1_1write__array__vars__visgen.html',1,'stan::gm']]], + ['write_5farray_5fvisgen',['write_array_visgen',['../structstan_1_1gm_1_1write__array__visgen.html',1,'stan::gm']]], + ['write_5fcsv_5fheader_5fvisgen',['write_csv_header_visgen',['../structstan_1_1gm_1_1write__csv__header__visgen.html',1,'stan::gm']]], + ['write_5fcsv_5fvars_5fvisgen',['write_csv_vars_visgen',['../structstan_1_1gm_1_1write__csv__vars__visgen.html',1,'stan::gm']]], + ['write_5fcsv_5fvisgen',['write_csv_visgen',['../structstan_1_1gm_1_1write__csv__visgen.html',1,'stan::gm']]], + ['write_5fdims_5fvisgen',['write_dims_visgen',['../structstan_1_1gm_1_1write__dims__visgen.html',1,'stan::gm']]], + ['write_5fparam_5fnames_5fvisgen',['write_param_names_visgen',['../structstan_1_1gm_1_1write__param__names__visgen.html',1,'stan::gm']]], + ['writer',['writer',['../classstan_1_1io_1_1writer.html',1,'stan::io']]] +]; diff --git a/doc/api/html/search/close.png b/doc/api/html/search/close.png new file mode 100644 index 0000000000000000000000000000000000000000..9342d3dfeea7b7c4ee610987e717804b5a42ceb9 GIT binary patch literal 273 zcmV+s0q*{ZP)4(RlMby96)VwnbG{ zbe&}^BDn7x>$<{ck4zAK-=nT;=hHG)kmplIF${xqm8db3oX6wT3bvp`TE@m0cg;b) zBuSL}5?N7O(iZLdAlz@)b)Rd~DnSsSX&P5qC`XwuFwcAYLC+d2>+1(8on;wpt8QIC X2MT$R4iQDd00000NkvXXu0mjfia~GN literal 0 HcmV?d00001 diff --git a/doc/api/html/search/defines_5f.html b/doc/api/html/search/defines_5f.html new file mode 100644 index 00000000000..548a824972f --- /dev/null +++ b/doc/api/html/search/defines_5f.html @@ -0,0 +1,25 @@ + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/doc/api/html/search/defines_5f.js b/doc/api/html/search/defines_5f.js new file mode 100644 index 00000000000..6b2ad441877 --- /dev/null +++ b/doc/api/html/search/defines_5f.js @@ -0,0 +1,5 @@ +var searchData= +[ + ['_5f_5fstan_5f_5fagrad_5f_5frev_5f_5fvar_5fstack_5fcpp_5f_5f',['__STAN__AGRAD__REV__VAR_STACK_CPP__',['../var__stack_8cpp.html#a3ecef594fdb031601452cf4e8ab29953',1,'var_stack.cpp']]], + ['_5f_5fstan_5f_5fgm_5f_5fast_5fdef_5fhpp_5f_5f',['__STAN__GM__AST_DEF_HPP__',['../ast__def_8cpp.html#a8d8277f93d7f31b96e2609f6388d6409',1,'ast_def.cpp']]] +]; diff --git a/doc/api/html/search/defines_64.html b/doc/api/html/search/defines_64.html new file mode 100644 index 00000000000..7b428bdb6bc --- /dev/null +++ b/doc/api/html/search/defines_64.html @@ -0,0 +1,25 @@ + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/doc/api/html/search/defines_64.js b/doc/api/html/search/defines_64.js new file mode 100644 index 00000000000..034dc77b888 --- /dev/null +++ b/doc/api/html/search/defines_64.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['default_5finitial_5fnchunks',['DEFAULT_INITIAL_NCHUNKS',['../chunk__alloc_8hpp.html#a5f845c774e340bc6030d5ce15487812a',1,'chunk_alloc.hpp']]] +]; diff --git a/doc/api/html/search/defines_65.html b/doc/api/html/search/defines_65.html new file mode 100644 index 00000000000..f1906de5abf --- /dev/null +++ b/doc/api/html/search/defines_65.html @@ -0,0 +1,25 @@ + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/doc/api/html/search/defines_65.js b/doc/api/html/search/defines_65.js new file mode 100644 index 00000000000..1d9a6417bbf --- /dev/null +++ b/doc/api/html/search/defines_65.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['eigen_5fdensebase_5fplugin',['EIGEN_DENSEBASE_PLUGIN',['../_eigen_8hpp.html#a90ac195153d63737038c5b747962f4df',1,'Eigen.hpp']]] +]; diff --git a/doc/api/html/search/defines_6c.html b/doc/api/html/search/defines_6c.html new file mode 100644 index 00000000000..c4bf65090cc --- /dev/null +++ b/doc/api/html/search/defines_6c.html @@ -0,0 +1,25 @@ + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/doc/api/html/search/defines_6c.js b/doc/api/html/search/defines_6c.js new file mode 100644 index 00000000000..417315dc975 --- /dev/null +++ b/doc/api/html/search/defines_6c.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['likely',['likely',['../stack__alloc_8hpp.html#a217a0bd562b98ae8c2ffce44935351e1',1,'stack_alloc.hpp']]] +]; diff --git a/doc/api/html/search/defines_75.html b/doc/api/html/search/defines_75.html new file mode 100644 index 00000000000..7318a7abdc3 --- /dev/null +++ b/doc/api/html/search/defines_75.html @@ -0,0 +1,25 @@ + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/doc/api/html/search/defines_75.js b/doc/api/html/search/defines_75.js new file mode 100644 index 00000000000..e8a6d42c38a --- /dev/null +++ b/doc/api/html/search/defines_75.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['unlikely',['unlikely',['../stack__alloc_8hpp.html#ac6c45889010c1bd68631771b64f18101',1,'stack_alloc.hpp']]] +]; diff --git a/doc/api/html/search/enumvalues_61.html b/doc/api/html/search/enumvalues_61.html new file mode 100644 index 00000000000..deef5919dc4 --- /dev/null +++ b/doc/api/html/search/enumvalues_61.html @@ -0,0 +1,25 @@ + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/doc/api/html/search/enumvalues_61.js b/doc/api/html/search/enumvalues_61.js new file mode 100644 index 00000000000..83b9223a79b --- /dev/null +++ b/doc/api/html/search/enumvalues_61.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['addcost',['AddCost',['../struct_eigen_1_1_num_traits_3_01stan_1_1agrad_1_1var_01_4.html#a932a61195daad3e89711cfb02521cac9ad567631af797962bfa1646b3228b1d8d',1,'Eigen::NumTraits< stan::agrad::var >']]] +]; diff --git a/doc/api/html/search/enumvalues_63.html b/doc/api/html/search/enumvalues_63.html new file mode 100644 index 00000000000..7399d30c65e --- /dev/null +++ b/doc/api/html/search/enumvalues_63.html @@ -0,0 +1,25 @@ + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/doc/api/html/search/enumvalues_63.js b/doc/api/html/search/enumvalues_63.js new file mode 100644 index 00000000000..54d9f4348f0 --- /dev/null +++ b/doc/api/html/search/enumvalues_63.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['config',['CONFIG',['../structstan_1_1gm_1_1error__codes.html#aa63873e8f7e9dd7f8af3502e4003292fa06ec7fc9f65aafc74d415edaba0a63bc',1,'stan::gm::error_codes']]] +]; diff --git a/doc/api/html/search/enumvalues_64.html b/doc/api/html/search/enumvalues_64.html new file mode 100644 index 00000000000..2cae30be6da --- /dev/null +++ b/doc/api/html/search/enumvalues_64.html @@ -0,0 +1,25 @@ + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/doc/api/html/search/enumvalues_64.js b/doc/api/html/search/enumvalues_64.js new file mode 100644 index 00000000000..095d3bd1cdd --- /dev/null +++ b/doc/api/html/search/enumvalues_64.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['dataerr',['DATAERR',['../structstan_1_1gm_1_1error__codes.html#aa63873e8f7e9dd7f8af3502e4003292fa6b2a96b1b804a9792a1355d28cc9c44d',1,'stan::gm::error_codes']]] +]; diff --git a/doc/api/html/search/enumvalues_68.html b/doc/api/html/search/enumvalues_68.html new file mode 100644 index 00000000000..0f58de6c38b --- /dev/null +++ b/doc/api/html/search/enumvalues_68.html @@ -0,0 +1,25 @@ + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/doc/api/html/search/enumvalues_68.js b/doc/api/html/search/enumvalues_68.js new file mode 100644 index 00000000000..af093574807 --- /dev/null +++ b/doc/api/html/search/enumvalues_68.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['hasfloatingpoint',['HasFloatingPoint',['../struct_eigen_1_1_num_traits_3_01stan_1_1agrad_1_1var_01_4.html#a932a61195daad3e89711cfb02521cac9a60d738ff8c60f58fe3a03d2909498a6e',1,'Eigen::NumTraits< stan::agrad::var >']]] +]; diff --git a/doc/api/html/search/enumvalues_69.html b/doc/api/html/search/enumvalues_69.html new file mode 100644 index 00000000000..ff4c4322a72 --- /dev/null +++ b/doc/api/html/search/enumvalues_69.html @@ -0,0 +1,25 @@ + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/doc/api/html/search/enumvalues_69.js b/doc/api/html/search/enumvalues_69.js new file mode 100644 index 00000000000..f7128cb522d --- /dev/null +++ b/doc/api/html/search/enumvalues_69.js @@ -0,0 +1,6 @@ +var searchData= +[ + ['iscomplex',['IsComplex',['../struct_eigen_1_1_num_traits_3_01stan_1_1agrad_1_1var_01_4.html#a932a61195daad3e89711cfb02521cac9a12cf0c95d1a09bb4805e148f3ced38ab',1,'Eigen::NumTraits< stan::agrad::var >']]], + ['isinteger',['IsInteger',['../struct_eigen_1_1_num_traits_3_01stan_1_1agrad_1_1var_01_4.html#a932a61195daad3e89711cfb02521cac9a1355527a3b8071883fdbc70b00a30b80',1,'Eigen::NumTraits< stan::agrad::var >']]], + ['issigned',['IsSigned',['../struct_eigen_1_1_num_traits_3_01stan_1_1agrad_1_1var_01_4.html#a932a61195daad3e89711cfb02521cac9ae9afee549e8ec17d1bc544ae785ac96f',1,'Eigen::NumTraits< stan::agrad::var >']]] +]; diff --git a/doc/api/html/search/enumvalues_6c.html b/doc/api/html/search/enumvalues_6c.html new file mode 100644 index 00000000000..b52750a5e78 --- /dev/null +++ b/doc/api/html/search/enumvalues_6c.html @@ -0,0 +1,25 @@ + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/doc/api/html/search/enumvalues_6c.js b/doc/api/html/search/enumvalues_6c.js new file mode 100644 index 00000000000..413548963c1 --- /dev/null +++ b/doc/api/html/search/enumvalues_6c.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['lhsstorageorder',['LhsStorageOrder',['../struct_eigen_1_1internal_1_1general__matrix__vector__product_3_01_index_00_01stan_1_1agrad_1_1va44da5f98e1caea9523bacbd5bdc025fe.html#a1a45ecc02e193d7a8d978fc11b7bf753a4568cff436d678b2cb8e936b209fced9',1,'Eigen::internal::general_matrix_vector_product< Index, stan::agrad::var, ColMajor, ConjugateLhs, stan::agrad::var, ConjugateRhs >::LhsStorageOrder()'],['../struct_eigen_1_1internal_1_1general__matrix__vector__product_3_01_index_00_01stan_1_1agrad_1_1vacd54cabc78c49ca719650381b68b105e.html#a2b766d523420f3934c8e5bd00078d9f4a2a6d617ef050b14291315944cee7c382',1,'Eigen::internal::general_matrix_vector_product< Index, stan::agrad::var, RowMajor, ConjugateLhs, stan::agrad::var, ConjugateRhs >::LhsStorageOrder()']]] +]; diff --git a/doc/api/html/search/enumvalues_6d.html b/doc/api/html/search/enumvalues_6d.html new file mode 100644 index 00000000000..5e0c86ba742 --- /dev/null +++ b/doc/api/html/search/enumvalues_6d.html @@ -0,0 +1,25 @@ + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/doc/api/html/search/enumvalues_6d.js b/doc/api/html/search/enumvalues_6d.js new file mode 100644 index 00000000000..050adaca71e --- /dev/null +++ b/doc/api/html/search/enumvalues_6d.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['mulcost',['MulCost',['../struct_eigen_1_1_num_traits_3_01stan_1_1agrad_1_1var_01_4.html#a932a61195daad3e89711cfb02521cac9a4440e43b74d010d56f93bded451d0741',1,'Eigen::NumTraits< stan::agrad::var >']]] +]; diff --git a/doc/api/html/search/enumvalues_6e.html b/doc/api/html/search/enumvalues_6e.html new file mode 100644 index 00000000000..3c41b09ae0e --- /dev/null +++ b/doc/api/html/search/enumvalues_6e.html @@ -0,0 +1,25 @@ + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/doc/api/html/search/enumvalues_6e.js b/doc/api/html/search/enumvalues_6e.js new file mode 100644 index 00000000000..fa7ba951c20 --- /dev/null +++ b/doc/api/html/search/enumvalues_6e.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['noinput',['NOINPUT',['../structstan_1_1gm_1_1error__codes.html#aa63873e8f7e9dd7f8af3502e4003292fa2fcaec15ffdd862e869b23a13b4a4d7c',1,'stan::gm::error_codes']]] +]; diff --git a/doc/api/html/search/enumvalues_6f.html b/doc/api/html/search/enumvalues_6f.html new file mode 100644 index 00000000000..697cd20c1be --- /dev/null +++ b/doc/api/html/search/enumvalues_6f.html @@ -0,0 +1,25 @@ + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/doc/api/html/search/enumvalues_6f.js b/doc/api/html/search/enumvalues_6f.js new file mode 100644 index 00000000000..87a22dbcfed --- /dev/null +++ b/doc/api/html/search/enumvalues_6f.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['ok',['OK',['../structstan_1_1gm_1_1error__codes.html#aa63873e8f7e9dd7f8af3502e4003292fa2e47ab549bdeac4803f2801b08cdeee4',1,'stan::gm::error_codes']]] +]; diff --git a/doc/api/html/search/enumvalues_72.html b/doc/api/html/search/enumvalues_72.html new file mode 100644 index 00000000000..b53ce22b413 --- /dev/null +++ b/doc/api/html/search/enumvalues_72.html @@ -0,0 +1,25 @@ + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/doc/api/html/search/enumvalues_72.js b/doc/api/html/search/enumvalues_72.js new file mode 100644 index 00000000000..d17fbd7ca06 --- /dev/null +++ b/doc/api/html/search/enumvalues_72.js @@ -0,0 +1,5 @@ +var searchData= +[ + ['readcost',['ReadCost',['../struct_eigen_1_1_num_traits_3_01stan_1_1agrad_1_1var_01_4.html#a932a61195daad3e89711cfb02521cac9a337c2bf1065c51d4a2b76e80ae51b0e7',1,'Eigen::NumTraits< stan::agrad::var >']]], + ['requireinitialization',['RequireInitialization',['../struct_eigen_1_1_num_traits_3_01stan_1_1agrad_1_1var_01_4.html#a932a61195daad3e89711cfb02521cac9ab6efa4e8f91c34b33478a794bd889dd4',1,'Eigen::NumTraits< stan::agrad::var >']]] +]; diff --git a/doc/api/html/search/enumvalues_73.html b/doc/api/html/search/enumvalues_73.html new file mode 100644 index 00000000000..f2f7db4647a --- /dev/null +++ b/doc/api/html/search/enumvalues_73.html @@ -0,0 +1,25 @@ + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/doc/api/html/search/enumvalues_73.js b/doc/api/html/search/enumvalues_73.js new file mode 100644 index 00000000000..5d152c2c134 --- /dev/null +++ b/doc/api/html/search/enumvalues_73.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['software',['SOFTWARE',['../structstan_1_1gm_1_1error__codes.html#aa63873e8f7e9dd7f8af3502e4003292fa9924bc6241a8d380961bb3d9bc8dba92',1,'stan::gm::error_codes']]] +]; diff --git a/doc/api/html/search/enumvalues_75.html b/doc/api/html/search/enumvalues_75.html new file mode 100644 index 00000000000..c0a15042a59 --- /dev/null +++ b/doc/api/html/search/enumvalues_75.html @@ -0,0 +1,25 @@ + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/doc/api/html/search/enumvalues_75.js b/doc/api/html/search/enumvalues_75.js new file mode 100644 index 00000000000..a856c6cd9eb --- /dev/null +++ b/doc/api/html/search/enumvalues_75.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['usage',['USAGE',['../structstan_1_1gm_1_1error__codes.html#aa63873e8f7e9dd7f8af3502e4003292fab91146036be9b2c1e9bd09619da086ba',1,'stan::gm::error_codes']]] +]; diff --git a/doc/api/html/search/enumvalues_76.html b/doc/api/html/search/enumvalues_76.html new file mode 100644 index 00000000000..87b49856c8f --- /dev/null +++ b/doc/api/html/search/enumvalues_76.html @@ -0,0 +1,25 @@ + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/doc/api/html/search/enumvalues_76.js b/doc/api/html/search/enumvalues_76.js new file mode 100644 index 00000000000..abcc183559f --- /dev/null +++ b/doc/api/html/search/enumvalues_76.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['value',['value',['../structstan_1_1is__constant.html#a9f8df8637f49cd02a47f8c6c2c775777aecafc97e964e672dd93bcb490a0a1811',1,'stan::is_constant::value()'],['../structstan_1_1is__constant__struct.html#a601169d4607d1347bd20eb918809a922a3f9610c0a10a3879fccf6f212dd3d411',1,'stan::is_constant_struct::value()'],['../structstan_1_1is__constant__struct_3_01std_1_1vector_3_01_t_01_4_01_4.html#ac35de45d53f720014d1d6c9341facc38a889b9838820d11325b1b1e2e6dcd1f62',1,'stan::is_constant_struct< std::vector< T > >::value()'],['../structstan_1_1is__constant__struct_3_01_eigen_1_1_matrix_3_01_t_00_01_r_00_01_c_01_4_01_4.html#a629489369f685966d67e23b49b3a765ca8a919616f9227fcfa43cb7134758120a',1,'stan::is_constant_struct< Eigen::Matrix< T, R, C > >::value()'],['../structstan_1_1is__constant__struct_3_01_eigen_1_1_block_3_01_t_01_4_01_4.html#a47daf157025983c39d6e5b7789c05206ae47d85a4a43fdce9e0a2be294e6e0622',1,'stan::is_constant_struct< Eigen::Block< T > >::value()'],['../structstan_1_1is__vector.html#a69abd37dca972430e0f61ea33a19ce5da9b19e1572754024bf83375a19efee164',1,'stan::is_vector::value()'],['../structstan_1_1is__vector_3_01const_01_t_01_4.html#ad3a0ba8876c7203c3ae3e20dd7904da4ab7b181e7406ecc9d9512f53eeb423835',1,'stan::is_vector< const T >::value()'],['../structstan_1_1is__vector_3_01std_1_1vector_3_01_t_01_4_01_4.html#a820092c09f0441ab121b88f94e7034f5a8669507d2c0cf8d2013fa55cbc040690',1,'stan::is_vector< std::vector< T > >::value()'],['../structstan_1_1is__vector_3_01_eigen_1_1_matrix_3_01_t_00_01_eigen_1_1_dynamic_00_011_01_4_01_4.html#a38d7fc87cb5dbb66fb65e9dd8c257273a75a67f94582ddd21b4956e5540578114',1,'stan::is_vector< Eigen::Matrix< T, Eigen::Dynamic, 1 > >::value()'],['../structstan_1_1is__vector_3_01_eigen_1_1_matrix_3_01_t_00_011_00_01_eigen_1_1_dynamic_01_4_01_4.html#ae014ed595604daf1ca469933b46e9126a060ce69961a2ceb1cc29cc4861aa527e',1,'stan::is_vector< Eigen::Matrix< T, 1, Eigen::Dynamic > >::value()'],['../structstan_1_1is__vector__like.html#a991e328843789ff8e8976aa11aecb426a2113100a63bb957b1ada362a39a22213',1,'stan::is_vector_like::value()'],['../structstan_1_1is__vector__like_3_01_t_01_5_01_4.html#ab609c9cc8a50da1025789263899aa807a50f6d9fb5990e3e623e6e02458926009',1,'stan::is_vector_like< T * >::value()'],['../structstan_1_1is__vector__like_3_01const_01_t_01_4.html#aa1518e780b217cf8d6acf068792c726dab859ca004282bbe79a5eeda7238d86da',1,'stan::is_vector_like< const T >::value()'],['../structstan_1_1is__vector__like_3_01_eigen_1_1_matrix_3_01_t_00_01_eigen_1_1_dynamic_00_01_eigen_1_1_dynamic_01_4_01_4.html#ae847915a9aa58775e6fbee811f5e20c8acc3bb708be577474e9cd1e11ad5a4ba1',1,'stan::is_vector_like< Eigen::Matrix< T, Eigen::Dynamic, Eigen::Dynamic > >::value()'],['../structstan_1_1is__fvar.html#aee7f99a61d7b21a79c1dfd4a3619571eab1813e4af114b125e86c4eefb1c67481',1,'stan::is_fvar::value()'],['../structstan_1_1is__fvar_3_01stan_1_1agrad_1_1fvar_3_01_t_01_4_01_4.html#a60189a2e893c9b483c218f57503672caa2a6d75c410b27b41f578e8a7ede11c56',1,'stan::is_fvar< stan::agrad::fvar< T > >::value()'],['../structstan_1_1is__var.html#a2adee59171c897185a772cd0987caef6aaeb0f9a9eead1ac6cc943d6a1974a4c1',1,'stan::is_var::value()'],['../structstan_1_1is__var_3_01stan_1_1agrad_1_1var_01_4.html#a82e1a086145eecf5ccc03374a3b41192a754935335e15e1f2b61f2bd9bf15e65b',1,'stan::is_var< stan::agrad::var >::value()'],['../structstan_1_1contains__fvar.html#a140698e0d236727d9723e6831750d2aca5a1eddf5b1539585920063fb6cd6835b',1,'stan::contains_fvar::value()'],['../structstan_1_1is__var__or__arithmetic.html#a7242e3ffd78e362fd4f4a940d39ed7a6a4e3e0e0100aa814492acbd85e2138643',1,'stan::is_var_or_arithmetic::value()'],['../structstan_1_1prob_1_1include__summand.html#a53abfbd14a204b9ceb4ed749b9183aa9a66741e4ae3f0a68c0ac9c9143c9481dd',1,'stan::prob::include_summand::value()']]] +]; diff --git a/doc/api/html/search/files_61.html b/doc/api/html/search/files_61.html new file mode 100644 index 00000000000..5a8e4549927 --- /dev/null +++ b/doc/api/html/search/files_61.html @@ -0,0 +1,25 @@ + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/doc/api/html/search/files_61.js b/doc/api/html/search/files_61.js new file mode 100644 index 00000000000..1ab8c3cf519 --- /dev/null +++ b/doc/api/html/search/files_61.js @@ -0,0 +1,97 @@ +var searchData= +[ + ['abs_2ehpp',['abs.hpp',['../agrad_2fwd_2functions_2abs_8hpp.html',1,'']]], + ['abs_2ehpp',['abs.hpp',['../agrad_2rev_2functions_2abs_8hpp.html',1,'']]], + ['abs_2ehpp',['abs.hpp',['../math_2functions_2abs_8hpp.html',1,'']]], + ['accumulator_2ehpp',['accumulator.hpp',['../accumulator_8hpp.html',1,'']]], + ['acos_2ehpp',['acos.hpp',['../rev_2functions_2acos_8hpp.html',1,'']]], + ['acos_2ehpp',['acos.hpp',['../fwd_2functions_2acos_8hpp.html',1,'']]], + ['acosh_2ehpp',['acosh.hpp',['../fwd_2functions_2acosh_8hpp.html',1,'']]], + ['acosh_2ehpp',['acosh.hpp',['../rev_2functions_2acosh_8hpp.html',1,'']]], + ['adapt_5fdense_5fe_5fnuts_2ehpp',['adapt_dense_e_nuts.hpp',['../adapt__dense__e__nuts_8hpp.html',1,'']]], + ['adapt_5fdense_5fe_5fstatic_5fhmc_2ehpp',['adapt_dense_e_static_hmc.hpp',['../adapt__dense__e__static__hmc_8hpp.html',1,'']]], + ['adapt_5fdiag_5fe_5fnuts_2ehpp',['adapt_diag_e_nuts.hpp',['../adapt__diag__e__nuts_8hpp.html',1,'']]], + ['adapt_5fdiag_5fe_5fstatic_5fhmc_2ehpp',['adapt_diag_e_static_hmc.hpp',['../adapt__diag__e__static__hmc_8hpp.html',1,'']]], + ['adapt_5funit_5fe_5fnuts_2ehpp',['adapt_unit_e_nuts.hpp',['../adapt__unit__e__nuts_8hpp.html',1,'']]], + ['adapt_5funit_5fe_5fstatic_5fhmc_2ehpp',['adapt_unit_e_static_hmc.hpp',['../adapt__unit__e__static__hmc_8hpp.html',1,'']]], + ['add_2ehpp',['add.hpp',['../add_8hpp.html',1,'']]], + ['agrad_2ehpp',['agrad.hpp',['../agrad_8hpp.html',1,'']]], + ['agrad_5fthread_5fsafe_2ehpp',['agrad_thread_safe.hpp',['../agrad__thread__safe_8hpp.html',1,'']]], + ['arg_5fadapt_2ehpp',['arg_adapt.hpp',['../arg__adapt_8hpp.html',1,'']]], + ['arg_5fadapt_5fdelta_2ehpp',['arg_adapt_delta.hpp',['../arg__adapt__delta_8hpp.html',1,'']]], + ['arg_5fadapt_5fengaged_2ehpp',['arg_adapt_engaged.hpp',['../arg__adapt__engaged_8hpp.html',1,'']]], + ['arg_5fadapt_5fgamma_2ehpp',['arg_adapt_gamma.hpp',['../arg__adapt__gamma_8hpp.html',1,'']]], + ['arg_5fadapt_5finit_5fbuffer_2ehpp',['arg_adapt_init_buffer.hpp',['../arg__adapt__init__buffer_8hpp.html',1,'']]], + ['arg_5fadapt_5fkappa_2ehpp',['arg_adapt_kappa.hpp',['../arg__adapt__kappa_8hpp.html',1,'']]], + ['arg_5fadapt_5ft0_2ehpp',['arg_adapt_t0.hpp',['../arg__adapt__t0_8hpp.html',1,'']]], + ['arg_5fadapt_5fterm_5fbuffer_2ehpp',['arg_adapt_term_buffer.hpp',['../arg__adapt__term__buffer_8hpp.html',1,'']]], + ['arg_5fadapt_5fwindow_2ehpp',['arg_adapt_window.hpp',['../arg__adapt__window_8hpp.html',1,'']]], + ['arg_5fbfgs_2ehpp',['arg_bfgs.hpp',['../arg__bfgs_8hpp.html',1,'']]], + ['arg_5fdata_2ehpp',['arg_data.hpp',['../arg__data_8hpp.html',1,'']]], + ['arg_5fdata_5ffile_2ehpp',['arg_data_file.hpp',['../arg__data__file_8hpp.html',1,'']]], + ['arg_5fdense_5fe_2ehpp',['arg_dense_e.hpp',['../arg__dense__e_8hpp.html',1,'']]], + ['arg_5fdiag_5fe_2ehpp',['arg_diag_e.hpp',['../arg__diag__e_8hpp.html',1,'']]], + ['arg_5fdiagnose_2ehpp',['arg_diagnose.hpp',['../arg__diagnose_8hpp.html',1,'']]], + ['arg_5fdiagnostic_5ffile_2ehpp',['arg_diagnostic_file.hpp',['../arg__diagnostic__file_8hpp.html',1,'']]], + ['arg_5fengine_2ehpp',['arg_engine.hpp',['../arg__engine_8hpp.html',1,'']]], + ['arg_5ffail_2ehpp',['arg_fail.hpp',['../arg__fail_8hpp.html',1,'']]], + ['arg_5ffixed_5fparam_2ehpp',['arg_fixed_param.hpp',['../arg__fixed__param_8hpp.html',1,'']]], + ['arg_5fhmc_2ehpp',['arg_hmc.hpp',['../arg__hmc_8hpp.html',1,'']]], + ['arg_5fid_2ehpp',['arg_id.hpp',['../arg__id_8hpp.html',1,'']]], + ['arg_5finit_2ehpp',['arg_init.hpp',['../arg__init_8hpp.html',1,'']]], + ['arg_5finit_5falpha_2ehpp',['arg_init_alpha.hpp',['../arg__init__alpha_8hpp.html',1,'']]], + ['arg_5fint_5ftime_2ehpp',['arg_int_time.hpp',['../arg__int__time_8hpp.html',1,'']]], + ['arg_5fiter_2ehpp',['arg_iter.hpp',['../arg__iter_8hpp.html',1,'']]], + ['arg_5fmax_5fdepth_2ehpp',['arg_max_depth.hpp',['../arg__max__depth_8hpp.html',1,'']]], + ['arg_5fmethod_2ehpp',['arg_method.hpp',['../arg__method_8hpp.html',1,'']]], + ['arg_5fmetric_2ehpp',['arg_metric.hpp',['../arg__metric_8hpp.html',1,'']]], + ['arg_5fnesterov_2ehpp',['arg_nesterov.hpp',['../arg__nesterov_8hpp.html',1,'']]], + ['arg_5fnewton_2ehpp',['arg_newton.hpp',['../arg__newton_8hpp.html',1,'']]], + ['arg_5fnum_5fsamples_2ehpp',['arg_num_samples.hpp',['../arg__num__samples_8hpp.html',1,'']]], + ['arg_5fnum_5fwarmup_2ehpp',['arg_num_warmup.hpp',['../arg__num__warmup_8hpp.html',1,'']]], + ['arg_5fnuts_2ehpp',['arg_nuts.hpp',['../arg__nuts_8hpp.html',1,'']]], + ['arg_5foptimize_2ehpp',['arg_optimize.hpp',['../arg__optimize_8hpp.html',1,'']]], + ['arg_5foptimize_5falgo_2ehpp',['arg_optimize_algo.hpp',['../arg__optimize__algo_8hpp.html',1,'']]], + ['arg_5foutput_2ehpp',['arg_output.hpp',['../arg__output_8hpp.html',1,'']]], + ['arg_5foutput_5ffile_2ehpp',['arg_output_file.hpp',['../arg__output__file_8hpp.html',1,'']]], + ['arg_5frandom_2ehpp',['arg_random.hpp',['../arg__random_8hpp.html',1,'']]], + ['arg_5frefresh_2ehpp',['arg_refresh.hpp',['../arg__refresh_8hpp.html',1,'']]], + ['arg_5frwm_2ehpp',['arg_rwm.hpp',['../arg__rwm_8hpp.html',1,'']]], + ['arg_5fsample_2ehpp',['arg_sample.hpp',['../arg__sample_8hpp.html',1,'']]], + ['arg_5fsample_5falgo_2ehpp',['arg_sample_algo.hpp',['../arg__sample__algo_8hpp.html',1,'']]], + ['arg_5fsave_5fiterations_2ehpp',['arg_save_iterations.hpp',['../arg__save__iterations_8hpp.html',1,'']]], + ['arg_5fsave_5fwarmup_2ehpp',['arg_save_warmup.hpp',['../arg__save__warmup_8hpp.html',1,'']]], + ['arg_5fseed_2ehpp',['arg_seed.hpp',['../arg__seed_8hpp.html',1,'']]], + ['arg_5fstatic_2ehpp',['arg_static.hpp',['../arg__static_8hpp.html',1,'']]], + ['arg_5fstepsize_2ehpp',['arg_stepsize.hpp',['../arg__stepsize_8hpp.html',1,'']]], + ['arg_5fstepsize_5fjitter_2ehpp',['arg_stepsize_jitter.hpp',['../arg__stepsize__jitter_8hpp.html',1,'']]], + ['arg_5ftest_2ehpp',['arg_test.hpp',['../arg__test_8hpp.html',1,'']]], + ['arg_5ftest_5fgrad_5feps_2ehpp',['arg_test_grad_eps.hpp',['../arg__test__grad__eps_8hpp.html',1,'']]], + ['arg_5ftest_5fgrad_5ferr_2ehpp',['arg_test_grad_err.hpp',['../arg__test__grad__err_8hpp.html',1,'']]], + ['arg_5ftest_5fgradient_2ehpp',['arg_test_gradient.hpp',['../arg__test__gradient_8hpp.html',1,'']]], + ['arg_5fthin_2ehpp',['arg_thin.hpp',['../arg__thin_8hpp.html',1,'']]], + ['arg_5ftolerance_2ehpp',['arg_tolerance.hpp',['../arg__tolerance_8hpp.html',1,'']]], + ['arg_5funit_5fe_2ehpp',['arg_unit_e.hpp',['../arg__unit__e_8hpp.html',1,'']]], + ['argument_2ehpp',['argument.hpp',['../argument_8hpp.html',1,'']]], + ['argument_5fparser_2ehpp',['argument_parser.hpp',['../argument__parser_8hpp.html',1,'']]], + ['argument_5fprobe_2ehpp',['argument_probe.hpp',['../argument__probe_8hpp.html',1,'']]], + ['array_5fbuilder_2ehpp',['array_builder.hpp',['../array__builder_8hpp.html',1,'']]], + ['as_5fbool_2ehpp',['as_bool.hpp',['../math_2functions_2as__bool_8hpp.html',1,'']]], + ['as_5fbool_2ehpp',['as_bool.hpp',['../agrad_2rev_2functions_2as__bool_8hpp.html',1,'']]], + ['asin_2ehpp',['asin.hpp',['../fwd_2functions_2asin_8hpp.html',1,'']]], + ['asin_2ehpp',['asin.hpp',['../rev_2functions_2asin_8hpp.html',1,'']]], + ['asinh_2ehpp',['asinh.hpp',['../rev_2functions_2asinh_8hpp.html',1,'']]], + ['asinh_2ehpp',['asinh.hpp',['../fwd_2functions_2asinh_8hpp.html',1,'']]], + ['assign_2ehpp',['assign.hpp',['../assign_8hpp.html',1,'']]], + ['ast_2ehpp',['ast.hpp',['../ast_8hpp.html',1,'']]], + ['ast_5fdef_2ecpp',['ast_def.cpp',['../ast__def_8cpp.html',1,'']]], + ['atan_2ehpp',['atan.hpp',['../rev_2functions_2atan_8hpp.html',1,'']]], + ['atan_2ehpp',['atan.hpp',['../fwd_2functions_2atan_8hpp.html',1,'']]], + ['atan2_2ehpp',['atan2.hpp',['../rev_2functions_2atan2_8hpp.html',1,'']]], + ['atan2_2ehpp',['atan2.hpp',['../fwd_2functions_2atan2_8hpp.html',1,'']]], + ['atanh_2ehpp',['atanh.hpp',['../rev_2functions_2atanh_8hpp.html',1,'']]], + ['atanh_2ehpp',['atanh.hpp',['../fwd_2functions_2atanh_8hpp.html',1,'']]], + ['autocorrelation_2ehpp',['autocorrelation.hpp',['../autocorrelation_8hpp.html',1,'']]], + ['autocovariance_2ehpp',['autocovariance.hpp',['../autocovariance_8hpp.html',1,'']]], + ['autodiff_2ehpp',['autodiff.hpp',['../autodiff_8hpp.html',1,'']]] +]; diff --git a/doc/api/html/search/files_62.html b/doc/api/html/search/files_62.html new file mode 100644 index 00000000000..bb7577ecff5 --- /dev/null +++ b/doc/api/html/search/files_62.html @@ -0,0 +1,25 @@ + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/doc/api/html/search/files_62.js b/doc/api/html/search/files_62.js new file mode 100644 index 00000000000..6404bb8fcae --- /dev/null +++ b/doc/api/html/search/files_62.js @@ -0,0 +1,31 @@ +var searchData= +[ + ['base_5fadaptation_2ehpp',['base_adaptation.hpp',['../base__adaptation_8hpp.html',1,'']]], + ['base_5fadapter_2ehpp',['base_adapter.hpp',['../base__adapter_8hpp.html',1,'']]], + ['base_5fhamiltonian_2ehpp',['base_hamiltonian.hpp',['../base__hamiltonian_8hpp.html',1,'']]], + ['base_5fhmc_2ehpp',['base_hmc.hpp',['../base__hmc_8hpp.html',1,'']]], + ['base_5fintegrator_2ehpp',['base_integrator.hpp',['../base__integrator_8hpp.html',1,'']]], + ['base_5fleapfrog_2ehpp',['base_leapfrog.hpp',['../base__leapfrog_8hpp.html',1,'']]], + ['base_5fmcmc_2ehpp',['base_mcmc.hpp',['../base__mcmc_8hpp.html',1,'']]], + ['base_5fnuts_2ehpp',['base_nuts.hpp',['../base__nuts_8hpp.html',1,'']]], + ['base_5fstatic_5fhmc_2ehpp',['base_static_hmc.hpp',['../base__static__hmc_8hpp.html',1,'']]], + ['bernoulli_2ehpp',['bernoulli.hpp',['../bernoulli_8hpp.html',1,'']]], + ['bessel_5ffirst_5fkind_2ehpp',['bessel_first_kind.hpp',['../math_2functions_2bessel__first__kind_8hpp.html',1,'']]], + ['bessel_5ffirst_5fkind_2ehpp',['bessel_first_kind.hpp',['../agrad_2fwd_2functions_2bessel__first__kind_8hpp.html',1,'']]], + ['bessel_5ffirst_5fkind_2ehpp',['bessel_first_kind.hpp',['../agrad_2rev_2functions_2bessel__first__kind_8hpp.html',1,'']]], + ['bessel_5fsecond_5fkind_2ehpp',['bessel_second_kind.hpp',['../agrad_2fwd_2functions_2bessel__second__kind_8hpp.html',1,'']]], + ['bessel_5fsecond_5fkind_2ehpp',['bessel_second_kind.hpp',['../agrad_2rev_2functions_2bessel__second__kind_8hpp.html',1,'']]], + ['bessel_5fsecond_5fkind_2ehpp',['bessel_second_kind.hpp',['../math_2functions_2bessel__second__kind_8hpp.html',1,'']]], + ['beta_2ehpp',['beta.hpp',['../beta_8hpp.html',1,'']]], + ['beta_5fbinomial_2ehpp',['beta_binomial.hpp',['../beta__binomial_8hpp.html',1,'']]], + ['bfgs_2ehpp',['bfgs.hpp',['../bfgs_8hpp.html',1,'']]], + ['binary_5flog_5floss_2ehpp',['binary_log_loss.hpp',['../agrad_2fwd_2functions_2binary__log__loss_8hpp.html',1,'']]], + ['binary_5flog_5floss_2ehpp',['binary_log_loss.hpp',['../agrad_2rev_2functions_2binary__log__loss_8hpp.html',1,'']]], + ['binary_5flog_5floss_2ehpp',['binary_log_loss.hpp',['../math_2functions_2binary__log__loss_8hpp.html',1,'']]], + ['binomial_2ehpp',['binomial.hpp',['../binomial_8hpp.html',1,'']]], + ['binomial_5fcoefficient_5flog_2ehpp',['binomial_coefficient_log.hpp',['../math_2functions_2binomial__coefficient__log_8hpp.html',1,'']]], + ['binomial_5fcoefficient_5flog_2ehpp',['binomial_coefficient_log.hpp',['../agrad_2fwd_2functions_2binomial__coefficient__log_8hpp.html',1,'']]], + ['block_2ehpp',['block.hpp',['../block_8hpp.html',1,'']]], + ['boost_2edox',['boost.dox',['../boost_8dox.html',1,'']]], + ['boost_5ffpclassify_2ehpp',['boost_fpclassify.hpp',['../boost__fpclassify_8hpp.html',1,'']]] +]; diff --git a/doc/api/html/search/files_63.html b/doc/api/html/search/files_63.html new file mode 100644 index 00000000000..6611a5b9180 --- /dev/null +++ b/doc/api/html/search/files_63.html @@ -0,0 +1,25 @@ + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/doc/api/html/search/files_63.js b/doc/api/html/search/files_63.js new file mode 100644 index 00000000000..b2316024b8d --- /dev/null +++ b/doc/api/html/search/files_63.js @@ -0,0 +1,71 @@ +var searchData= +[ + ['calculate_5fchain_2ehpp',['calculate_chain.hpp',['../calculate__chain_8hpp.html',1,'']]], + ['categorical_2ehpp',['categorical.hpp',['../categorical_8hpp.html',1,'']]], + ['categorical_5fargument_2ehpp',['categorical_argument.hpp',['../categorical__argument_8hpp.html',1,'']]], + ['categorical_5flogit_2ehpp',['categorical_logit.hpp',['../categorical__logit_8hpp.html',1,'']]], + ['cauchy_2ehpp',['cauchy.hpp',['../cauchy_8hpp.html',1,'']]], + ['cbrt_2ehpp',['cbrt.hpp',['../rev_2functions_2cbrt_8hpp.html',1,'']]], + ['cbrt_2ehpp',['cbrt.hpp',['../fwd_2functions_2cbrt_8hpp.html',1,'']]], + ['ceil_2ehpp',['ceil.hpp',['../rev_2functions_2ceil_8hpp.html',1,'']]], + ['ceil_2ehpp',['ceil.hpp',['../fwd_2functions_2ceil_8hpp.html',1,'']]], + ['chainable_2ehpp',['chainable.hpp',['../chainable_8hpp.html',1,'']]], + ['chains_2ehpp',['chains.hpp',['../chains_8hpp.html',1,'']]], + ['check_5fbounded_2ehpp',['check_bounded.hpp',['../check__bounded_8hpp.html',1,'']]], + ['check_5fcholesky_5ffactor_2ehpp',['check_cholesky_factor.hpp',['../check__cholesky__factor_8hpp.html',1,'']]], + ['check_5fconsistent_5fsize_2ehpp',['check_consistent_size.hpp',['../check__consistent__size_8hpp.html',1,'']]], + ['check_5fconsistent_5fsizes_2ehpp',['check_consistent_sizes.hpp',['../check__consistent__sizes_8hpp.html',1,'']]], + ['check_5fcorr_5fmatrix_2ehpp',['check_corr_matrix.hpp',['../check__corr__matrix_8hpp.html',1,'']]], + ['check_5fcov_5fmatrix_2ehpp',['check_cov_matrix.hpp',['../check__cov__matrix_8hpp.html',1,'']]], + ['check_5ffinite_2ehpp',['check_finite.hpp',['../check__finite_8hpp.html',1,'']]], + ['check_5fgreater_2ehpp',['check_greater.hpp',['../check__greater_8hpp.html',1,'']]], + ['check_5fgreater_5for_5fequal_2ehpp',['check_greater_or_equal.hpp',['../check__greater__or__equal_8hpp.html',1,'']]], + ['check_5fldlt_5ffactor_2ehpp',['check_ldlt_factor.hpp',['../check__ldlt__factor_8hpp.html',1,'']]], + ['check_5fless_2ehpp',['check_less.hpp',['../check__less_8hpp.html',1,'']]], + ['check_5fless_5for_5fequal_2ehpp',['check_less_or_equal.hpp',['../check__less__or__equal_8hpp.html',1,'']]], + ['check_5flower_5ftriangular_2ehpp',['check_lower_triangular.hpp',['../check__lower__triangular_8hpp.html',1,'']]], + ['check_5fnonnegative_2ehpp',['check_nonnegative.hpp',['../check__nonnegative_8hpp.html',1,'']]], + ['check_5fnot_5fnan_2ehpp',['check_not_nan.hpp',['../check__not__nan_8hpp.html',1,'']]], + ['check_5fordered_2ehpp',['check_ordered.hpp',['../check__ordered_8hpp.html',1,'']]], + ['check_5fpos_5fdefinite_2ehpp',['check_pos_definite.hpp',['../agrad_2rev_2error__handling_2matrix_2check__pos__definite_8hpp.html',1,'']]], + ['check_5fpos_5fdefinite_2ehpp',['check_pos_definite.hpp',['../math_2error__handling_2matrix_2check__pos__definite_8hpp.html',1,'']]], + ['check_5fpos_5fsemidefinite_2ehpp',['check_pos_semidefinite.hpp',['../check__pos__semidefinite_8hpp.html',1,'']]], + ['check_5fpositive_2ehpp',['check_positive.hpp',['../check__positive_8hpp.html',1,'']]], + ['check_5fpositive_5fordered_2ehpp',['check_positive_ordered.hpp',['../check__positive__ordered_8hpp.html',1,'']]], + ['check_5frange_2ehpp',['check_range.hpp',['../check__range_8hpp.html',1,'']]], + ['check_5fsimplex_2ehpp',['check_simplex.hpp',['../check__simplex_8hpp.html',1,'']]], + ['check_5fsize_5fmatch_2ehpp',['check_size_match.hpp',['../check__size__match_8hpp.html',1,'']]], + ['check_5fspsd_5fmatrix_2ehpp',['check_spsd_matrix.hpp',['../check__spsd__matrix_8hpp.html',1,'']]], + ['check_5fsquare_2ehpp',['check_square.hpp',['../check__square_8hpp.html',1,'']]], + ['check_5fsymmetric_2ehpp',['check_symmetric.hpp',['../check__symmetric_8hpp.html',1,'']]], + ['check_5funit_5fvector_2ehpp',['check_unit_vector.hpp',['../check__unit__vector_8hpp.html',1,'']]], + ['chi_5fsquare_2ehpp',['chi_square.hpp',['../chi__square_8hpp.html',1,'']]], + ['cholesky_5fdecompose_2ehpp',['cholesky_decompose.hpp',['../cholesky__decompose_8hpp.html',1,'']]], + ['chunk_5falloc_2ehpp',['chunk_alloc.hpp',['../chunk__alloc_8hpp.html',1,'']]], + ['cmd_5fline_2ehpp',['cmd_line.hpp',['../cmd__line_8hpp.html',1,'']]], + ['col_2ehpp',['col.hpp',['../col_8hpp.html',1,'']]], + ['cols_2ehpp',['cols.hpp',['../cols_8hpp.html',1,'']]], + ['columns_5fdot_5fproduct_2ehpp',['columns_dot_product.hpp',['../agrad_2fwd_2matrix_2columns__dot__product_8hpp.html',1,'']]], + ['columns_5fdot_5fproduct_2ehpp',['columns_dot_product.hpp',['../math_2matrix_2columns__dot__product_8hpp.html',1,'']]], + ['columns_5fdot_5fself_2ehpp',['columns_dot_self.hpp',['../math_2matrix_2columns__dot__self_8hpp.html',1,'']]], + ['columns_5fdot_5fself_2ehpp',['columns_dot_self.hpp',['../agrad_2fwd_2matrix_2columns__dot__self_8hpp.html',1,'']]], + ['command_2ehpp',['command.hpp',['../command_8hpp.html',1,'']]], + ['common_5fadaptors_5fdef_2ehpp',['common_adaptors_def.hpp',['../common__adaptors__def_8hpp.html',1,'']]], + ['common_5ftype_2ehpp',['common_type.hpp',['../common__type_8hpp.html',1,'']]], + ['compiler_2ehpp',['compiler.hpp',['../compiler_8hpp.html',1,'']]], + ['constants_2ehpp',['constants.hpp',['../prob_2constants_8hpp.html',1,'']]], + ['constants_2ehpp',['constants.hpp',['../math_2constants_8hpp.html',1,'']]], + ['constraint_5ftolerance_2ehpp',['constraint_tolerance.hpp',['../constraint__tolerance_8hpp.html',1,'']]], + ['continuous_2ehpp',['continuous.hpp',['../multivariate_2continuous_8hpp.html',1,'']]], + ['continuous_2ehpp',['continuous.hpp',['../univariate_2continuous_8hpp.html',1,'']]], + ['cos_2ehpp',['cos.hpp',['../fwd_2functions_2cos_8hpp.html',1,'']]], + ['cos_2ehpp',['cos.hpp',['../rev_2functions_2cos_8hpp.html',1,'']]], + ['cosh_2ehpp',['cosh.hpp',['../fwd_2functions_2cosh_8hpp.html',1,'']]], + ['cosh_2ehpp',['cosh.hpp',['../rev_2functions_2cosh_8hpp.html',1,'']]], + ['covar_5fadaptation_2ehpp',['covar_adaptation.hpp',['../covar__adaptation_8hpp.html',1,'']]], + ['crossprod_2ehpp',['crossprod.hpp',['../agrad_2fwd_2matrix_2crossprod_8hpp.html',1,'']]], + ['crossprod_2ehpp',['crossprod.hpp',['../agrad_2rev_2matrix_2crossprod_8hpp.html',1,'']]], + ['crossprod_2ehpp',['crossprod.hpp',['../math_2matrix_2crossprod_8hpp.html',1,'']]], + ['csv_5fwriter_2ehpp',['csv_writer.hpp',['../csv__writer_8hpp.html',1,'']]], + ['cumulative_5fsum_2ehpp',['cumulative_sum.hpp',['../cumulative__sum_8hpp.html',1,'']]] +]; diff --git a/doc/api/html/search/files_64.html b/doc/api/html/search/files_64.html new file mode 100644 index 00000000000..1a32bf882a1 --- /dev/null +++ b/doc/api/html/search/files_64.html @@ -0,0 +1,25 @@ + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/doc/api/html/search/files_64.js b/doc/api/html/search/files_64.js new file mode 100644 index 00000000000..38ad93943e5 --- /dev/null +++ b/doc/api/html/search/files_64.js @@ -0,0 +1,47 @@ +var searchData= +[ + ['ddv_5fvari_2ehpp',['ddv_vari.hpp',['../ddv__vari_8hpp.html',1,'']]], + ['dense_5fe_5fmetric_2ehpp',['dense_e_metric.hpp',['../dense__e__metric_8hpp.html',1,'']]], + ['dense_5fe_5fnuts_2ehpp',['dense_e_nuts.hpp',['../dense__e__nuts_8hpp.html',1,'']]], + ['dense_5fe_5fpoint_2ehpp',['dense_e_point.hpp',['../dense__e__point_8hpp.html',1,'']]], + ['dense_5fe_5fstatic_5fhmc_2ehpp',['dense_e_static_hmc.hpp',['../dense__e__static__hmc_8hpp.html',1,'']]], + ['determinant_2ehpp',['determinant.hpp',['../agrad_2fwd_2matrix_2determinant_8hpp.html',1,'']]], + ['determinant_2ehpp',['determinant.hpp',['../agrad_2rev_2matrix_2determinant_8hpp.html',1,'']]], + ['determinant_2ehpp',['determinant.hpp',['../math_2matrix_2determinant_8hpp.html',1,'']]], + ['diag_5fe_5fmetric_2ehpp',['diag_e_metric.hpp',['../diag__e__metric_8hpp.html',1,'']]], + ['diag_5fe_5fnuts_2ehpp',['diag_e_nuts.hpp',['../diag__e__nuts_8hpp.html',1,'']]], + ['diag_5fe_5fpoint_2ehpp',['diag_e_point.hpp',['../diag__e__point_8hpp.html',1,'']]], + ['diag_5fe_5fstatic_5fhmc_2ehpp',['diag_e_static_hmc.hpp',['../diag__e__static__hmc_8hpp.html',1,'']]], + ['diag_5fmatrix_2ehpp',['diag_matrix.hpp',['../diag__matrix_8hpp.html',1,'']]], + ['diag_5fpost_5fmultiply_2ehpp',['diag_post_multiply.hpp',['../diag__post__multiply_8hpp.html',1,'']]], + ['diag_5fpre_5fmultiply_2ehpp',['diag_pre_multiply.hpp',['../diag__pre__multiply_8hpp.html',1,'']]], + ['diagonal_2ehpp',['diagonal.hpp',['../diagonal_8hpp.html',1,'']]], + ['digamma_2ehpp',['digamma.hpp',['../agrad_2rev_2functions_2digamma_8hpp.html',1,'']]], + ['digamma_2ehpp',['digamma.hpp',['../agrad_2fwd_2functions_2digamma_8hpp.html',1,'']]], + ['digamma_2ehpp',['digamma.hpp',['../math_2functions_2digamma_8hpp.html',1,'']]], + ['dims_2ehpp',['dims.hpp',['../dims_8hpp.html',1,'']]], + ['dirichlet_2ehpp',['dirichlet.hpp',['../dirichlet_8hpp.html',1,'']]], + ['discrete_2ehpp',['discrete.hpp',['../univariate_2discrete_8hpp.html',1,'']]], + ['discrete_2ehpp',['discrete.hpp',['../multivariate_2discrete_8hpp.html',1,'']]], + ['dist_2ehpp',['dist.hpp',['../dist_8hpp.html',1,'']]], + ['distance_2ehpp',['distance.hpp',['../distance_8hpp.html',1,'']]], + ['distributions_2ehpp',['distributions.hpp',['../distributions_8hpp.html',1,'']]], + ['divide_2ehpp',['divide.hpp',['../math_2matrix_2divide_8hpp.html',1,'']]], + ['divide_2ehpp',['divide.hpp',['../agrad_2rev_2matrix_2divide_8hpp.html',1,'']]], + ['divide_2ehpp',['divide.hpp',['../agrad_2fwd_2matrix_2divide_8hpp.html',1,'']]], + ['dom_5ferr_2ehpp',['dom_err.hpp',['../dom__err_8hpp.html',1,'']]], + ['dom_5ferr_5fvec_2ehpp',['dom_err_vec.hpp',['../dom__err__vec_8hpp.html',1,'']]], + ['dot_2ehpp',['dot.hpp',['../dot_8hpp.html',1,'']]], + ['dot_5fproduct_2ehpp',['dot_product.hpp',['../agrad_2fwd_2matrix_2dot__product_8hpp.html',1,'']]], + ['dot_5fproduct_2ehpp',['dot_product.hpp',['../math_2matrix_2dot__product_8hpp.html',1,'']]], + ['dot_5fproduct_2ehpp',['dot_product.hpp',['../agrad_2rev_2matrix_2dot__product_8hpp.html',1,'']]], + ['dot_5fself_2ehpp',['dot_self.hpp',['../agrad_2fwd_2matrix_2dot__self_8hpp.html',1,'']]], + ['dot_5fself_2ehpp',['dot_self.hpp',['../math_2functions_2dot__self_8hpp.html',1,'']]], + ['dot_5fself_2ehpp',['dot_self.hpp',['../agrad_2rev_2matrix_2dot__self_8hpp.html',1,'']]], + ['dot_5fself_2ehpp',['dot_self.hpp',['../math_2matrix_2dot__self_8hpp.html',1,'']]], + ['double_5fexponential_2ehpp',['double_exponential.hpp',['../double__exponential_8hpp.html',1,'']]], + ['dump_2ehpp',['dump.hpp',['../dump_8hpp.html',1,'']]], + ['dv_5fvari_2ehpp',['dv_vari.hpp',['../dv__vari_8hpp.html',1,'']]], + ['dvd_5fvari_2ehpp',['dvd_vari.hpp',['../dvd__vari_8hpp.html',1,'']]], + ['dvv_5fvari_2ehpp',['dvv_vari.hpp',['../dvv__vari_8hpp.html',1,'']]] +]; diff --git a/doc/api/html/search/files_65.html b/doc/api/html/search/files_65.html new file mode 100644 index 00000000000..1eadd1b02d9 --- /dev/null +++ b/doc/api/html/search/files_65.html @@ -0,0 +1,25 @@ + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/doc/api/html/search/files_65.js b/doc/api/html/search/files_65.js new file mode 100644 index 00000000000..c8f867dd784 --- /dev/null +++ b/doc/api/html/search/files_65.js @@ -0,0 +1,32 @@ +var searchData= +[ + ['eigen_2edox',['Eigen.dox',['../_eigen_8dox.html',1,'']]], + ['eigen_2ehpp',['Eigen.hpp',['../_eigen_8hpp.html',1,'']]], + ['eigen_5fnumtraits_2ehpp',['Eigen_NumTraits.hpp',['../_eigen___num_traits_8hpp.html',1,'']]], + ['eigenvalues_5fsym_2ehpp',['eigenvalues_sym.hpp',['../eigenvalues__sym_8hpp.html',1,'']]], + ['eigenvectors_5fsym_2ehpp',['eigenvectors_sym.hpp',['../eigenvectors__sym_8hpp.html',1,'']]], + ['elt_5fdivide_2ehpp',['elt_divide.hpp',['../elt__divide_8hpp.html',1,'']]], + ['elt_5fmultiply_2ehpp',['elt_multiply.hpp',['../elt__multiply_8hpp.html',1,'']]], + ['erf_2ehpp',['erf.hpp',['../rev_2functions_2erf_8hpp.html',1,'']]], + ['erf_2ehpp',['erf.hpp',['../fwd_2functions_2erf_8hpp.html',1,'']]], + ['erfc_2ehpp',['erfc.hpp',['../fwd_2functions_2erfc_8hpp.html',1,'']]], + ['erfc_2ehpp',['erfc.hpp',['../rev_2functions_2erfc_8hpp.html',1,'']]], + ['error_5fcodes_2ehpp',['error_codes.hpp',['../error__codes_8hpp.html',1,'']]], + ['error_5fhandling_2edox',['error_handling.dox',['../error__handling_8dox.html',1,'']]], + ['error_5fhandling_2ehpp',['error_handling.hpp',['../math_2error__handling_8hpp.html',1,'']]], + ['error_5fhandling_2ehpp',['error_handling.hpp',['../agrad_2rev_2error__handling_8hpp.html',1,'']]], + ['exp_2ehpp',['exp.hpp',['../agrad_2rev_2functions_2exp_8hpp.html',1,'']]], + ['exp_2ehpp',['exp.hpp',['../math_2matrix_2exp_8hpp.html',1,'']]], + ['exp_2ehpp',['exp.hpp',['../agrad_2fwd_2functions_2exp_8hpp.html',1,'']]], + ['exp2_2ehpp',['exp2.hpp',['../agrad_2fwd_2functions_2exp2_8hpp.html',1,'']]], + ['exp2_2ehpp',['exp2.hpp',['../agrad_2rev_2functions_2exp2_8hpp.html',1,'']]], + ['exp2_2ehpp',['exp2.hpp',['../math_2functions_2exp2_8hpp.html',1,'']]], + ['exp_5fmod_5fnormal_2ehpp',['exp_mod_normal.hpp',['../exp__mod__normal_8hpp.html',1,'']]], + ['expl_5fleapfrog_2ehpp',['expl_leapfrog.hpp',['../expl__leapfrog_8hpp.html',1,'']]], + ['expm1_2ehpp',['expm1.hpp',['../rev_2functions_2expm1_8hpp.html',1,'']]], + ['expm1_2ehpp',['expm1.hpp',['../fwd_2functions_2expm1_8hpp.html',1,'']]], + ['exponential_2ehpp',['exponential.hpp',['../exponential_8hpp.html',1,'']]], + ['expression_5fgrammar_2ehpp',['expression_grammar.hpp',['../expression__grammar_8hpp.html',1,'']]], + ['expression_5fgrammar_5fdef_2ehpp',['expression_grammar_def.hpp',['../expression__grammar__def_8hpp.html',1,'']]], + ['expression_5fgrammar_5finst_2ecpp',['expression_grammar_inst.cpp',['../expression__grammar__inst_8cpp.html',1,'']]] +]; diff --git a/doc/api/html/search/files_66.html b/doc/api/html/search/files_66.html new file mode 100644 index 00000000000..c05640363d0 --- /dev/null +++ b/doc/api/html/search/files_66.html @@ -0,0 +1,25 @@ + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/doc/api/html/search/files_66.js b/doc/api/html/search/files_66.js new file mode 100644 index 00000000000..645c9e28d69 --- /dev/null +++ b/doc/api/html/search/files_66.js @@ -0,0 +1,29 @@ +var searchData= +[ + ['fabs_2ehpp',['fabs.hpp',['../fwd_2functions_2fabs_8hpp.html',1,'']]], + ['fabs_2ehpp',['fabs.hpp',['../rev_2functions_2fabs_8hpp.html',1,'']]], + ['falling_5ffactorial_2ehpp',['falling_factorial.hpp',['../agrad_2rev_2functions_2falling__factorial_8hpp.html',1,'']]], + ['falling_5ffactorial_2ehpp',['falling_factorial.hpp',['../math_2functions_2falling__factorial_8hpp.html',1,'']]], + ['falling_5ffactorial_2ehpp',['falling_factorial.hpp',['../agrad_2fwd_2functions_2falling__factorial_8hpp.html',1,'']]], + ['fdim_2ehpp',['fdim.hpp',['../agrad_2fwd_2functions_2fdim_8hpp.html',1,'']]], + ['fdim_2ehpp',['fdim.hpp',['../agrad_2rev_2functions_2fdim_8hpp.html',1,'']]], + ['fdim_2ehpp',['fdim.hpp',['../math_2functions_2fdim_8hpp.html',1,'']]], + ['fill_2ehpp',['fill.hpp',['../fill_8hpp.html',1,'']]], + ['fixed_5fparam_5fsampler_2ehpp',['fixed_param_sampler.hpp',['../fixed__param__sampler_8hpp.html',1,'']]], + ['floor_2ehpp',['floor.hpp',['../fwd_2functions_2floor_8hpp.html',1,'']]], + ['floor_2ehpp',['floor.hpp',['../rev_2functions_2floor_8hpp.html',1,'']]], + ['fma_2ehpp',['fma.hpp',['../agrad_2rev_2functions_2fma_8hpp.html',1,'']]], + ['fma_2ehpp',['fma.hpp',['../math_2functions_2fma_8hpp.html',1,'']]], + ['fma_2ehpp',['fma.hpp',['../agrad_2fwd_2functions_2fma_8hpp.html',1,'']]], + ['fmax_2ehpp',['fmax.hpp',['../fwd_2functions_2fmax_8hpp.html',1,'']]], + ['fmax_2ehpp',['fmax.hpp',['../rev_2functions_2fmax_8hpp.html',1,'']]], + ['fmin_2ehpp',['fmin.hpp',['../fwd_2functions_2fmin_8hpp.html',1,'']]], + ['fmin_2ehpp',['fmin.hpp',['../rev_2functions_2fmin_8hpp.html',1,'']]], + ['fmod_2ehpp',['fmod.hpp',['../fwd_2functions_2fmod_8hpp.html',1,'']]], + ['fmod_2ehpp',['fmod.hpp',['../rev_2functions_2fmod_8hpp.html',1,'']]], + ['functions_2ehpp',['functions.hpp',['../agrad_2rev_2functions_8hpp.html',1,'']]], + ['functions_2ehpp',['functions.hpp',['../math_2functions_8hpp.html',1,'']]], + ['functions_2ehpp',['functions.hpp',['../agrad_2fwd_2functions_8hpp.html',1,'']]], + ['fvar_2ehpp',['fvar.hpp',['../fvar_8hpp.html',1,'']]], + ['fwd_2ehpp',['fwd.hpp',['../fwd_8hpp.html',1,'']]] +]; diff --git a/doc/api/html/search/files_67.html b/doc/api/html/search/files_67.html new file mode 100644 index 00000000000..d5df283f3cf --- /dev/null +++ b/doc/api/html/search/files_67.html @@ -0,0 +1,25 @@ + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/doc/api/html/search/files_67.js b/doc/api/html/search/files_67.js new file mode 100644 index 00000000000..a64563d2ce1 --- /dev/null +++ b/doc/api/html/search/files_67.js @@ -0,0 +1,17 @@ +var searchData= +[ + ['gamma_2ehpp',['gamma.hpp',['../gamma_8hpp.html',1,'']]], + ['gamma_5fp_2ehpp',['gamma_p.hpp',['../agrad_2rev_2functions_2gamma__p_8hpp.html',1,'']]], + ['gamma_5fp_2ehpp',['gamma_p.hpp',['../agrad_2fwd_2functions_2gamma__p_8hpp.html',1,'']]], + ['gamma_5fp_2ehpp',['gamma_p.hpp',['../math_2functions_2gamma__p_8hpp.html',1,'']]], + ['gamma_5fq_2ehpp',['gamma_q.hpp',['../agrad_2fwd_2functions_2gamma__q_8hpp.html',1,'']]], + ['gamma_5fq_2ehpp',['gamma_q.hpp',['../agrad_2rev_2functions_2gamma__q_8hpp.html',1,'']]], + ['gamma_5fq_2ehpp',['gamma_q.hpp',['../math_2functions_2gamma__q_8hpp.html',1,'']]], + ['gaussian_5fdlm_5fobs_2ehpp',['gaussian_dlm_obs.hpp',['../gaussian__dlm__obs_8hpp.html',1,'']]], + ['generator_2ehpp',['generator.hpp',['../generator_8hpp.html',1,'']]], + ['get_5fbase1_2ehpp',['get_base1.hpp',['../get__base1_8hpp.html',1,'']]], + ['get_5fbase1_5flhs_2ehpp',['get_base1_lhs.hpp',['../get__base1__lhs_8hpp.html',1,'']]], + ['gm_2ehpp',['gm.hpp',['../gm_8hpp.html',1,'']]], + ['grad_2ehpp',['grad.hpp',['../grad_8hpp.html',1,'']]], + ['gumbel_2ehpp',['gumbel.hpp',['../gumbel_8hpp.html',1,'']]] +]; diff --git a/doc/api/html/search/files_68.html b/doc/api/html/search/files_68.html new file mode 100644 index 00000000000..8ead5893fb9 --- /dev/null +++ b/doc/api/html/search/files_68.html @@ -0,0 +1,25 @@ + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/doc/api/html/search/files_68.js b/doc/api/html/search/files_68.js new file mode 100644 index 00000000000..7655473f720 --- /dev/null +++ b/doc/api/html/search/files_68.js @@ -0,0 +1,8 @@ +var searchData= +[ + ['head_2ehpp',['head.hpp',['../head_8hpp.html',1,'']]], + ['hessian_2ehpp',['hessian.hpp',['../hessian_8hpp.html',1,'']]], + ['hypergeometric_2ehpp',['hypergeometric.hpp',['../hypergeometric_8hpp.html',1,'']]], + ['hypot_2ehpp',['hypot.hpp',['../fwd_2functions_2hypot_8hpp.html',1,'']]], + ['hypot_2ehpp',['hypot.hpp',['../rev_2functions_2hypot_8hpp.html',1,'']]] +]; diff --git a/doc/api/html/search/files_69.html b/doc/api/html/search/files_69.html new file mode 100644 index 00000000000..7fbd757cdbb --- /dev/null +++ b/doc/api/html/search/files_69.html @@ -0,0 +1,25 @@ + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/doc/api/html/search/files_69.js b/doc/api/html/search/files_69.js new file mode 100644 index 00000000000..2085ba3ec64 --- /dev/null +++ b/doc/api/html/search/files_69.js @@ -0,0 +1,38 @@ +var searchData= +[ + ['ibeta_2ehpp',['ibeta.hpp',['../agrad_2rev_2functions_2ibeta_8hpp.html',1,'']]], + ['ibeta_2ehpp',['ibeta.hpp',['../math_2functions_2ibeta_8hpp.html',1,'']]], + ['if_5felse_2ehpp',['if_else.hpp',['../agrad_2rev_2functions_2if__else_8hpp.html',1,'']]], + ['if_5felse_2ehpp',['if_else.hpp',['../math_2functions_2if__else_8hpp.html',1,'']]], + ['initialize_2ehpp',['initialize.hpp',['../initialize_8hpp.html',1,'']]], + ['initialize_5fvariable_2ehpp',['initialize_variable.hpp',['../initialize__variable_8hpp.html',1,'']]], + ['int_5fstep_2ehpp',['int_step.hpp',['../int__step_8hpp.html',1,'']]], + ['internal_2ehpp',['internal.hpp',['../internal_8hpp.html',1,'']]], + ['internal_5fmath_2ehpp',['internal_math.hpp',['../internal__math_8hpp.html',1,'']]], + ['inv_2ehpp',['inv.hpp',['../agrad_2fwd_2functions_2inv_8hpp.html',1,'']]], + ['inv_2ehpp',['inv.hpp',['../agrad_2rev_2functions_2inv_8hpp.html',1,'']]], + ['inv_2ehpp',['inv.hpp',['../math_2functions_2inv_8hpp.html',1,'']]], + ['inv_5fchi_5fsquare_2ehpp',['inv_chi_square.hpp',['../inv__chi__square_8hpp.html',1,'']]], + ['inv_5fcloglog_2ehpp',['inv_cloglog.hpp',['../agrad_2fwd_2functions_2inv__cloglog_8hpp.html',1,'']]], + ['inv_5fcloglog_2ehpp',['inv_cloglog.hpp',['../agrad_2rev_2functions_2inv__cloglog_8hpp.html',1,'']]], + ['inv_5fcloglog_2ehpp',['inv_cloglog.hpp',['../math_2functions_2inv__cloglog_8hpp.html',1,'']]], + ['inv_5fgamma_2ehpp',['inv_gamma.hpp',['../inv__gamma_8hpp.html',1,'']]], + ['inv_5flogit_2ehpp',['inv_logit.hpp',['../agrad_2rev_2functions_2inv__logit_8hpp.html',1,'']]], + ['inv_5flogit_2ehpp',['inv_logit.hpp',['../math_2functions_2inv__logit_8hpp.html',1,'']]], + ['inv_5flogit_2ehpp',['inv_logit.hpp',['../agrad_2fwd_2functions_2inv__logit_8hpp.html',1,'']]], + ['inv_5fsqrt_2ehpp',['inv_sqrt.hpp',['../agrad_2fwd_2functions_2inv__sqrt_8hpp.html',1,'']]], + ['inv_5fsqrt_2ehpp',['inv_sqrt.hpp',['../agrad_2rev_2functions_2inv__sqrt_8hpp.html',1,'']]], + ['inv_5fsqrt_2ehpp',['inv_sqrt.hpp',['../math_2functions_2inv__sqrt_8hpp.html',1,'']]], + ['inv_5fsquare_2ehpp',['inv_square.hpp',['../math_2functions_2inv__square_8hpp.html',1,'']]], + ['inv_5fsquare_2ehpp',['inv_square.hpp',['../agrad_2fwd_2functions_2inv__square_8hpp.html',1,'']]], + ['inv_5fsquare_2ehpp',['inv_square.hpp',['../agrad_2rev_2functions_2inv__square_8hpp.html',1,'']]], + ['inv_5fwishart_2ehpp',['inv_wishart.hpp',['../inv__wishart_8hpp.html',1,'']]], + ['inverse_2ehpp',['inverse.hpp',['../math_2matrix_2inverse_8hpp.html',1,'']]], + ['inverse_2ehpp',['inverse.hpp',['../agrad_2fwd_2matrix_2inverse_8hpp.html',1,'']]], + ['inverse_5fsoftmax_2ehpp',['inverse_softmax.hpp',['../inverse__softmax_8hpp.html',1,'']]], + ['inverse_5fspd_2ehpp',['inverse_spd.hpp',['../inverse__spd_8hpp.html',1,'']]], + ['io_2ehpp',['io.hpp',['../io_8hpp.html',1,'']]], + ['is_5funinitialized_2ehpp',['is_uninitialized.hpp',['../agrad_2rev_2functions_2is__uninitialized_8hpp.html',1,'']]], + ['is_5funinitialized_2ehpp',['is_uninitialized.hpp',['../math_2functions_2is__uninitialized_8hpp.html',1,'']]], + ['iterator_5ftypedefs_2ehpp',['iterator_typedefs.hpp',['../iterator__typedefs_8hpp.html',1,'']]] +]; diff --git a/doc/api/html/search/files_6a.html b/doc/api/html/search/files_6a.html new file mode 100644 index 00000000000..aad2e16b1be --- /dev/null +++ b/doc/api/html/search/files_6a.html @@ -0,0 +1,25 @@ + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/doc/api/html/search/files_6a.js b/doc/api/html/search/files_6a.js new file mode 100644 index 00000000000..f49e20d2f6b --- /dev/null +++ b/doc/api/html/search/files_6a.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['jacobian_2ehpp',['jacobian.hpp',['../jacobian_8hpp.html',1,'']]] +]; diff --git a/doc/api/html/search/files_6c.html b/doc/api/html/search/files_6c.html new file mode 100644 index 00000000000..642a5458562 --- /dev/null +++ b/doc/api/html/search/files_6c.html @@ -0,0 +1,25 @@ + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/doc/api/html/search/files_6c.js b/doc/api/html/search/files_6c.js new file mode 100644 index 00000000000..db281f8eff6 --- /dev/null +++ b/doc/api/html/search/files_6c.js @@ -0,0 +1,79 @@ +var searchData= +[ + ['lbeta_2ehpp',['lbeta.hpp',['../agrad_2fwd_2functions_2lbeta_8hpp.html',1,'']]], + ['lbeta_2ehpp',['lbeta.hpp',['../math_2functions_2lbeta_8hpp.html',1,'']]], + ['ldlt_5falloc_2ehpp',['LDLT_alloc.hpp',['../_l_d_l_t__alloc_8hpp.html',1,'']]], + ['ldlt_5ffactor_2ehpp',['LDLT_factor.hpp',['../agrad_2rev_2matrix_2_l_d_l_t__factor_8hpp.html',1,'']]], + ['ldlt_5ffactor_2ehpp',['LDLT_factor.hpp',['../math_2matrix_2_l_d_l_t__factor_8hpp.html',1,'']]], + ['lgamma_2ehpp',['lgamma.hpp',['../agrad_2rev_2functions_2lgamma_8hpp.html',1,'']]], + ['lgamma_2ehpp',['lgamma.hpp',['../math_2functions_2lgamma_8hpp.html',1,'']]], + ['lgamma_2ehpp',['lgamma.hpp',['../agrad_2fwd_2functions_2lgamma_8hpp.html',1,'']]], + ['list_5fargument_2ehpp',['list_argument.hpp',['../list__argument_8hpp.html',1,'']]], + ['lkj_5fcorr_2ehpp',['lkj_corr.hpp',['../lkj__corr_8hpp.html',1,'']]], + ['lkj_5fcov_2ehpp',['lkj_cov.hpp',['../lkj__cov_8hpp.html',1,'']]], + ['lmgamma_2ehpp',['lmgamma.hpp',['../math_2functions_2lmgamma_8hpp.html',1,'']]], + ['lmgamma_2ehpp',['lmgamma.hpp',['../agrad_2fwd_2functions_2lmgamma_8hpp.html',1,'']]], + ['lmgamma_2ehpp',['lmgamma.hpp',['../agrad_2rev_2functions_2lmgamma_8hpp.html',1,'']]], + ['log_2ehpp',['log.hpp',['../agrad_2fwd_2functions_2log_8hpp.html',1,'']]], + ['log_2ehpp',['log.hpp',['../agrad_2rev_2functions_2log_8hpp.html',1,'']]], + ['log_2ehpp',['log.hpp',['../math_2matrix_2log_8hpp.html',1,'']]], + ['log10_2ehpp',['log10.hpp',['../fwd_2functions_2log10_8hpp.html',1,'']]], + ['log10_2ehpp',['log10.hpp',['../rev_2functions_2log10_8hpp.html',1,'']]], + ['log1m_2ehpp',['log1m.hpp',['../math_2functions_2log1m_8hpp.html',1,'']]], + ['log1m_2ehpp',['log1m.hpp',['../agrad_2fwd_2functions_2log1m_8hpp.html',1,'']]], + ['log1m_2ehpp',['log1m.hpp',['../agrad_2rev_2functions_2log1m_8hpp.html',1,'']]], + ['log1m_5fexp_2ehpp',['log1m_exp.hpp',['../agrad_2fwd_2functions_2log1m__exp_8hpp.html',1,'']]], + ['log1m_5fexp_2ehpp',['log1m_exp.hpp',['../agrad_2rev_2functions_2log1m__exp_8hpp.html',1,'']]], + ['log1m_5fexp_2ehpp',['log1m_exp.hpp',['../math_2functions_2log1m__exp_8hpp.html',1,'']]], + ['log1m_5finv_5flogit_2ehpp',['log1m_inv_logit.hpp',['../agrad_2fwd_2functions_2log1m__inv__logit_8hpp.html',1,'']]], + ['log1m_5finv_5flogit_2ehpp',['log1m_inv_logit.hpp',['../math_2functions_2log1m__inv__logit_8hpp.html',1,'']]], + ['log1p_2ehpp',['log1p.hpp',['../agrad_2fwd_2functions_2log1p_8hpp.html',1,'']]], + ['log1p_2ehpp',['log1p.hpp',['../agrad_2rev_2functions_2log1p_8hpp.html',1,'']]], + ['log1p_2ehpp',['log1p.hpp',['../math_2functions_2log1p_8hpp.html',1,'']]], + ['log1p_5fexp_2ehpp',['log1p_exp.hpp',['../agrad_2fwd_2functions_2log1p__exp_8hpp.html',1,'']]], + ['log1p_5fexp_2ehpp',['log1p_exp.hpp',['../agrad_2rev_2functions_2log1p__exp_8hpp.html',1,'']]], + ['log1p_5fexp_2ehpp',['log1p_exp.hpp',['../math_2functions_2log1p__exp_8hpp.html',1,'']]], + ['log2_2ehpp',['log2.hpp',['../agrad_2fwd_2functions_2log2_8hpp.html',1,'']]], + ['log2_2ehpp',['log2.hpp',['../agrad_2rev_2functions_2log2_8hpp.html',1,'']]], + ['log2_2ehpp',['log2.hpp',['../math_2functions_2log2_8hpp.html',1,'']]], + ['log_5fdeterminant_2ehpp',['log_determinant.hpp',['../agrad_2fwd_2matrix_2log__determinant_8hpp.html',1,'']]], + ['log_5fdeterminant_2ehpp',['log_determinant.hpp',['../agrad_2rev_2matrix_2log__determinant_8hpp.html',1,'']]], + ['log_5fdeterminant_2ehpp',['log_determinant.hpp',['../math_2matrix_2log__determinant_8hpp.html',1,'']]], + ['log_5fdeterminant_5fldlt_2ehpp',['log_determinant_ldlt.hpp',['../math_2matrix_2log__determinant__ldlt_8hpp.html',1,'']]], + ['log_5fdeterminant_5fldlt_2ehpp',['log_determinant_ldlt.hpp',['../agrad_2rev_2matrix_2log__determinant__ldlt_8hpp.html',1,'']]], + ['log_5fdeterminant_5fspd_2ehpp',['log_determinant_spd.hpp',['../agrad_2rev_2matrix_2log__determinant__spd_8hpp.html',1,'']]], + ['log_5fdeterminant_5fspd_2ehpp',['log_determinant_spd.hpp',['../math_2matrix_2log__determinant__spd_8hpp.html',1,'']]], + ['log_5fdiff_5fexp_2ehpp',['log_diff_exp.hpp',['../agrad_2rev_2functions_2log__diff__exp_8hpp.html',1,'']]], + ['log_5fdiff_5fexp_2ehpp',['log_diff_exp.hpp',['../math_2functions_2log__diff__exp_8hpp.html',1,'']]], + ['log_5fdiff_5fexp_2ehpp',['log_diff_exp.hpp',['../agrad_2fwd_2functions_2log__diff__exp_8hpp.html',1,'']]], + ['log_5ffalling_5ffactorial_2ehpp',['log_falling_factorial.hpp',['../agrad_2fwd_2functions_2log__falling__factorial_8hpp.html',1,'']]], + ['log_5ffalling_5ffactorial_2ehpp',['log_falling_factorial.hpp',['../agrad_2rev_2functions_2log__falling__factorial_8hpp.html',1,'']]], + ['log_5ffalling_5ffactorial_2ehpp',['log_falling_factorial.hpp',['../math_2functions_2log__falling__factorial_8hpp.html',1,'']]], + ['log_5finv_5flogit_2ehpp',['log_inv_logit.hpp',['../agrad_2fwd_2functions_2log__inv__logit_8hpp.html',1,'']]], + ['log_5finv_5flogit_2ehpp',['log_inv_logit.hpp',['../math_2functions_2log__inv__logit_8hpp.html',1,'']]], + ['log_5frising_5ffactorial_2ehpp',['log_rising_factorial.hpp',['../agrad_2rev_2functions_2log__rising__factorial_8hpp.html',1,'']]], + ['log_5frising_5ffactorial_2ehpp',['log_rising_factorial.hpp',['../math_2functions_2log__rising__factorial_8hpp.html',1,'']]], + ['log_5frising_5ffactorial_2ehpp',['log_rising_factorial.hpp',['../agrad_2fwd_2functions_2log__rising__factorial_8hpp.html',1,'']]], + ['log_5fsoftmax_2ehpp',['log_softmax.hpp',['../agrad_2rev_2matrix_2log__softmax_8hpp.html',1,'']]], + ['log_5fsoftmax_2ehpp',['log_softmax.hpp',['../math_2matrix_2log__softmax_8hpp.html',1,'']]], + ['log_5fsoftmax_2ehpp',['log_softmax.hpp',['../agrad_2fwd_2matrix_2log__softmax_8hpp.html',1,'']]], + ['log_5fsum_5fexp_2ehpp',['log_sum_exp.hpp',['../math_2functions_2log__sum__exp_8hpp.html',1,'']]], + ['log_5fsum_5fexp_2ehpp',['log_sum_exp.hpp',['../agrad_2rev_2functions_2log__sum__exp_8hpp.html',1,'']]], + ['log_5fsum_5fexp_2ehpp',['log_sum_exp.hpp',['../agrad_2fwd_2functions_2log__sum__exp_8hpp.html',1,'']]], + ['log_5fsum_5fexp_2ehpp',['log_sum_exp.hpp',['../math_2matrix_2log__sum__exp_8hpp.html',1,'']]], + ['log_5fsum_5fexp_2ehpp',['log_sum_exp.hpp',['../agrad_2rev_2matrix_2log__sum__exp_8hpp.html',1,'']]], + ['log_5fsum_5fexp_2ehpp',['log_sum_exp.hpp',['../agrad_2fwd_2matrix_2log__sum__exp_8hpp.html',1,'']]], + ['logical_5fand_2ehpp',['logical_and.hpp',['../logical__and_8hpp.html',1,'']]], + ['logical_5feq_2ehpp',['logical_eq.hpp',['../logical__eq_8hpp.html',1,'']]], + ['logical_5fgt_2ehpp',['logical_gt.hpp',['../logical__gt_8hpp.html',1,'']]], + ['logical_5fgte_2ehpp',['logical_gte.hpp',['../logical__gte_8hpp.html',1,'']]], + ['logical_5flt_2ehpp',['logical_lt.hpp',['../logical__lt_8hpp.html',1,'']]], + ['logical_5flte_2ehpp',['logical_lte.hpp',['../logical__lte_8hpp.html',1,'']]], + ['logical_5fnegation_2ehpp',['logical_negation.hpp',['../logical__negation_8hpp.html',1,'']]], + ['logical_5fneq_2ehpp',['logical_neq.hpp',['../logical__neq_8hpp.html',1,'']]], + ['logical_5for_2ehpp',['logical_or.hpp',['../logical__or_8hpp.html',1,'']]], + ['logistic_2ehpp',['logistic.hpp',['../logistic_8hpp.html',1,'']]], + ['logit_2ehpp',['logit.hpp',['../agrad_2fwd_2functions_2logit_8hpp.html',1,'']]], + ['logit_2ehpp',['logit.hpp',['../math_2functions_2logit_8hpp.html',1,'']]], + ['lognormal_2ehpp',['lognormal.hpp',['../lognormal_8hpp.html',1,'']]] +]; diff --git a/doc/api/html/search/files_6d.html b/doc/api/html/search/files_6d.html new file mode 100644 index 00000000000..d9d93006bf6 --- /dev/null +++ b/doc/api/html/search/files_6d.html @@ -0,0 +1,25 @@ + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/doc/api/html/search/files_6d.js b/doc/api/html/search/files_6d.js new file mode 100644 index 00000000000..7c6adaaa5e6 --- /dev/null +++ b/doc/api/html/search/files_6d.js @@ -0,0 +1,64 @@ +var searchData= +[ + ['mainpage_2edox',['mainpage.dox',['../mainpage_8dox.html',1,'']]], + ['math_2ehpp',['math.hpp',['../math_8hpp.html',1,'']]], + ['matrix_2ehpp',['matrix.hpp',['../agrad_2fwd_2matrix_8hpp.html',1,'']]], + ['matrix_2ehpp',['matrix.hpp',['../agrad_2rev_2error__handling_2matrix_8hpp.html',1,'']]], + ['matrix_2ehpp',['matrix.hpp',['../agrad_2rev_2matrix_8hpp.html',1,'']]], + ['matrix_2ehpp',['matrix.hpp',['../math_2matrix_8hpp.html',1,'']]], + ['matrix_5ferror_5fhandling_2ehpp',['matrix_error_handling.hpp',['../matrix__error__handling_8hpp.html',1,'']]], + ['matrix_5fnormal_2ehpp',['matrix_normal.hpp',['../matrix__normal_8hpp.html',1,'']]], + ['matrix_5fvari_2ehpp',['matrix_vari.hpp',['../matrix__vari_8hpp.html',1,'']]], + ['max_2ehpp',['max.hpp',['../functions_2max_8hpp.html',1,'']]], + ['max_2ehpp',['max.hpp',['../matrix_2max_8hpp.html',1,'']]], + ['mcmc_2ehpp',['mcmc.hpp',['../mcmc_8hpp.html',1,'']]], + ['mcmc_5fwriter_2ehpp',['mcmc_writer.hpp',['../mcmc__writer_8hpp.html',1,'']]], + ['mdivide_5fleft_2ehpp',['mdivide_left.hpp',['../math_2matrix_2mdivide__left_8hpp.html',1,'']]], + ['mdivide_5fleft_2ehpp',['mdivide_left.hpp',['../agrad_2rev_2matrix_2mdivide__left_8hpp.html',1,'']]], + ['mdivide_5fleft_2ehpp',['mdivide_left.hpp',['../agrad_2fwd_2matrix_2mdivide__left_8hpp.html',1,'']]], + ['mdivide_5fleft_5fldlt_2ehpp',['mdivide_left_ldlt.hpp',['../math_2matrix_2mdivide__left__ldlt_8hpp.html',1,'']]], + ['mdivide_5fleft_5fldlt_2ehpp',['mdivide_left_ldlt.hpp',['../agrad_2rev_2matrix_2mdivide__left__ldlt_8hpp.html',1,'']]], + ['mdivide_5fleft_5fspd_2ehpp',['mdivide_left_spd.hpp',['../agrad_2rev_2matrix_2mdivide__left__spd_8hpp.html',1,'']]], + ['mdivide_5fleft_5fspd_2ehpp',['mdivide_left_spd.hpp',['../math_2matrix_2mdivide__left__spd_8hpp.html',1,'']]], + ['mdivide_5fleft_5ftri_2ehpp',['mdivide_left_tri.hpp',['../agrad_2rev_2matrix_2mdivide__left__tri_8hpp.html',1,'']]], + ['mdivide_5fleft_5ftri_2ehpp',['mdivide_left_tri.hpp',['../math_2matrix_2mdivide__left__tri_8hpp.html',1,'']]], + ['mdivide_5fleft_5ftri_5flow_2ehpp',['mdivide_left_tri_low.hpp',['../agrad_2fwd_2matrix_2mdivide__left__tri__low_8hpp.html',1,'']]], + ['mdivide_5fleft_5ftri_5flow_2ehpp',['mdivide_left_tri_low.hpp',['../math_2matrix_2mdivide__left__tri__low_8hpp.html',1,'']]], + ['mdivide_5fright_2ehpp',['mdivide_right.hpp',['../agrad_2fwd_2matrix_2mdivide__right_8hpp.html',1,'']]], + ['mdivide_5fright_2ehpp',['mdivide_right.hpp',['../math_2matrix_2mdivide__right_8hpp.html',1,'']]], + ['mdivide_5fright_5fldlt_2ehpp',['mdivide_right_ldlt.hpp',['../mdivide__right__ldlt_8hpp.html',1,'']]], + ['mdivide_5fright_5fspd_2ehpp',['mdivide_right_spd.hpp',['../mdivide__right__spd_8hpp.html',1,'']]], + ['mdivide_5fright_5ftri_2ehpp',['mdivide_right_tri.hpp',['../mdivide__right__tri_8hpp.html',1,'']]], + ['mdivide_5fright_5ftri_5flow_2ehpp',['mdivide_right_tri_low.hpp',['../math_2matrix_2mdivide__right__tri__low_8hpp.html',1,'']]], + ['mdivide_5fright_5ftri_5flow_2ehpp',['mdivide_right_tri_low.hpp',['../agrad_2fwd_2matrix_2mdivide__right__tri__low_8hpp.html',1,'']]], + ['mean_2ehpp',['mean.hpp',['../mean_8hpp.html',1,'']]], + ['memory_2ehpp',['memory.hpp',['../memory_8hpp.html',1,'']]], + ['meta_2ehpp',['meta.hpp',['../meta_8hpp.html',1,'']]], + ['min_2ehpp',['min.hpp',['../matrix_2min_8hpp.html',1,'']]], + ['min_2ehpp',['min.hpp',['../functions_2min_8hpp.html',1,'']]], + ['minus_2ehpp',['minus.hpp',['../minus_8hpp.html',1,'']]], + ['model_2ehpp',['model.hpp',['../model_8hpp.html',1,'']]], + ['model_5fheader_2ehpp',['model_header.hpp',['../model__header_8hpp.html',1,'']]], + ['modified_5fbessel_5ffirst_5fkind_2ehpp',['modified_bessel_first_kind.hpp',['../math_2functions_2modified__bessel__first__kind_8hpp.html',1,'']]], + ['modified_5fbessel_5ffirst_5fkind_2ehpp',['modified_bessel_first_kind.hpp',['../agrad_2rev_2functions_2modified__bessel__first__kind_8hpp.html',1,'']]], + ['modified_5fbessel_5ffirst_5fkind_2ehpp',['modified_bessel_first_kind.hpp',['../agrad_2fwd_2functions_2modified__bessel__first__kind_8hpp.html',1,'']]], + ['modified_5fbessel_5fsecond_5fkind_2ehpp',['modified_bessel_second_kind.hpp',['../agrad_2fwd_2functions_2modified__bessel__second__kind_8hpp.html',1,'']]], + ['modified_5fbessel_5fsecond_5fkind_2ehpp',['modified_bessel_second_kind.hpp',['../agrad_2rev_2functions_2modified__bessel__second__kind_8hpp.html',1,'']]], + ['modified_5fbessel_5fsecond_5fkind_2ehpp',['modified_bessel_second_kind.hpp',['../math_2functions_2modified__bessel__second__kind_8hpp.html',1,'']]], + ['multi_5fgp_2ehpp',['multi_gp.hpp',['../multi__gp_8hpp.html',1,'']]], + ['multi_5fnormal_2ehpp',['multi_normal.hpp',['../multi__normal_8hpp.html',1,'']]], + ['multi_5fnormal_5fcholesky_2ehpp',['multi_normal_cholesky.hpp',['../multi__normal__cholesky_8hpp.html',1,'']]], + ['multi_5fnormal_5fprec_2ehpp',['multi_normal_prec.hpp',['../multi__normal__prec_8hpp.html',1,'']]], + ['multi_5fstudent_5ft_2ehpp',['multi_student_t.hpp',['../multi__student__t_8hpp.html',1,'']]], + ['multinomial_2ehpp',['multinomial.hpp',['../multinomial_8hpp.html',1,'']]], + ['multiply_2ehpp',['multiply.hpp',['../agrad_2fwd_2matrix_2multiply_8hpp.html',1,'']]], + ['multiply_2ehpp',['multiply.hpp',['../agrad_2rev_2matrix_2multiply_8hpp.html',1,'']]], + ['multiply_2ehpp',['multiply.hpp',['../math_2matrix_2multiply_8hpp.html',1,'']]], + ['multiply_5flog_2ehpp',['multiply_log.hpp',['../math_2functions_2multiply__log_8hpp.html',1,'']]], + ['multiply_5flog_2ehpp',['multiply_log.hpp',['../agrad_2rev_2functions_2multiply__log_8hpp.html',1,'']]], + ['multiply_5flog_2ehpp',['multiply_log.hpp',['../agrad_2fwd_2functions_2multiply__log_8hpp.html',1,'']]], + ['multiply_5flower_5ftri_5fself_5ftranspose_2ehpp',['multiply_lower_tri_self_transpose.hpp',['../math_2matrix_2multiply__lower__tri__self__transpose_8hpp.html',1,'']]], + ['multiply_5flower_5ftri_5fself_5ftranspose_2ehpp',['multiply_lower_tri_self_transpose.hpp',['../agrad_2fwd_2matrix_2multiply__lower__tri__self__transpose_8hpp.html',1,'']]], + ['multiply_5flower_5ftri_5fself_5ftranspose_2ehpp',['multiply_lower_tri_self_transpose.hpp',['../agrad_2rev_2matrix_2multiply__lower__tri__self__transpose_8hpp.html',1,'']]], + ['multivariate_2ehpp',['multivariate.hpp',['../multivariate_8hpp.html',1,'']]] +]; diff --git a/doc/api/html/search/files_6e.html b/doc/api/html/search/files_6e.html new file mode 100644 index 00000000000..9e30d62e7a7 --- /dev/null +++ b/doc/api/html/search/files_6e.html @@ -0,0 +1,25 @@ + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/doc/api/html/search/files_6e.js b/doc/api/html/search/files_6e.js new file mode 100644 index 00000000000..9b529ace117 --- /dev/null +++ b/doc/api/html/search/files_6e.js @@ -0,0 +1,10 @@ +var searchData= +[ + ['neg_5fbinomial_2ehpp',['neg_binomial.hpp',['../neg__binomial_8hpp.html',1,'']]], + ['nesterov_5fgradient_2ehpp',['nesterov_gradient.hpp',['../nesterov__gradient_8hpp.html',1,'']]], + ['newton_2ehpp',['newton.hpp',['../newton_8hpp.html',1,'']]], + ['normal_2ehpp',['normal.hpp',['../prob_2distributions_2univariate_2continuous_2normal_8hpp.html',1,'']]], + ['normal_2ehpp',['normal.hpp',['../agrad_2fwd_2prob_2univariate_2continuous_2normal_8hpp.html',1,'']]], + ['numeric_5flimits_2ehpp',['numeric_limits.hpp',['../fwd_2numeric__limits_8hpp.html',1,'']]], + ['numeric_5flimits_2ehpp',['numeric_limits.hpp',['../rev_2numeric__limits_8hpp.html',1,'']]] +]; diff --git a/doc/api/html/search/files_6f.html b/doc/api/html/search/files_6f.html new file mode 100644 index 00000000000..127aac1efab --- /dev/null +++ b/doc/api/html/search/files_6f.html @@ -0,0 +1,25 @@ + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/doc/api/html/search/files_6f.js b/doc/api/html/search/files_6f.js new file mode 100644 index 00000000000..6c8d781d699 --- /dev/null +++ b/doc/api/html/search/files_6f.js @@ -0,0 +1,39 @@ +var searchData= +[ + ['operator_5faddition_2ehpp',['operator_addition.hpp',['../fwd_2operators_2operator__addition_8hpp.html',1,'']]], + ['operator_5faddition_2ehpp',['operator_addition.hpp',['../rev_2operators_2operator__addition_8hpp.html',1,'']]], + ['operator_5fdivide_5fequal_2ehpp',['operator_divide_equal.hpp',['../operator__divide__equal_8hpp.html',1,'']]], + ['operator_5fdivision_2ehpp',['operator_division.hpp',['../fwd_2operators_2operator__division_8hpp.html',1,'']]], + ['operator_5fdivision_2ehpp',['operator_division.hpp',['../rev_2operators_2operator__division_8hpp.html',1,'']]], + ['operator_5fequal_2ehpp',['operator_equal.hpp',['../fwd_2operators_2operator__equal_8hpp.html',1,'']]], + ['operator_5fequal_2ehpp',['operator_equal.hpp',['../rev_2operators_2operator__equal_8hpp.html',1,'']]], + ['operator_5fgreater_5fthan_2ehpp',['operator_greater_than.hpp',['../fwd_2operators_2operator__greater__than_8hpp.html',1,'']]], + ['operator_5fgreater_5fthan_2ehpp',['operator_greater_than.hpp',['../rev_2operators_2operator__greater__than_8hpp.html',1,'']]], + ['operator_5fgreater_5fthan_5for_5fequal_2ehpp',['operator_greater_than_or_equal.hpp',['../fwd_2operators_2operator__greater__than__or__equal_8hpp.html',1,'']]], + ['operator_5fgreater_5fthan_5for_5fequal_2ehpp',['operator_greater_than_or_equal.hpp',['../rev_2operators_2operator__greater__than__or__equal_8hpp.html',1,'']]], + ['operator_5fless_5fthan_2ehpp',['operator_less_than.hpp',['../fwd_2operators_2operator__less__than_8hpp.html',1,'']]], + ['operator_5fless_5fthan_2ehpp',['operator_less_than.hpp',['../rev_2operators_2operator__less__than_8hpp.html',1,'']]], + ['operator_5fless_5fthan_5for_5fequal_2ehpp',['operator_less_than_or_equal.hpp',['../fwd_2operators_2operator__less__than__or__equal_8hpp.html',1,'']]], + ['operator_5fless_5fthan_5for_5fequal_2ehpp',['operator_less_than_or_equal.hpp',['../rev_2operators_2operator__less__than__or__equal_8hpp.html',1,'']]], + ['operator_5fminus_5fequal_2ehpp',['operator_minus_equal.hpp',['../operator__minus__equal_8hpp.html',1,'']]], + ['operator_5fmultiplication_2ehpp',['operator_multiplication.hpp',['../fwd_2operators_2operator__multiplication_8hpp.html',1,'']]], + ['operator_5fmultiplication_2ehpp',['operator_multiplication.hpp',['../rev_2operators_2operator__multiplication_8hpp.html',1,'']]], + ['operator_5fmultiply_5fequal_2ehpp',['operator_multiply_equal.hpp',['../operator__multiply__equal_8hpp.html',1,'']]], + ['operator_5fnot_5fequal_2ehpp',['operator_not_equal.hpp',['../rev_2operators_2operator__not__equal_8hpp.html',1,'']]], + ['operator_5fnot_5fequal_2ehpp',['operator_not_equal.hpp',['../fwd_2operators_2operator__not__equal_8hpp.html',1,'']]], + ['operator_5fplus_5fequal_2ehpp',['operator_plus_equal.hpp',['../operator__plus__equal_8hpp.html',1,'']]], + ['operator_5fsubtraction_2ehpp',['operator_subtraction.hpp',['../rev_2operators_2operator__subtraction_8hpp.html',1,'']]], + ['operator_5fsubtraction_2ehpp',['operator_subtraction.hpp',['../fwd_2operators_2operator__subtraction_8hpp.html',1,'']]], + ['operator_5funary_5fdecrement_2ehpp',['operator_unary_decrement.hpp',['../operator__unary__decrement_8hpp.html',1,'']]], + ['operator_5funary_5fincrement_2ehpp',['operator_unary_increment.hpp',['../operator__unary__increment_8hpp.html',1,'']]], + ['operator_5funary_5fminus_2ehpp',['operator_unary_minus.hpp',['../operator__unary__minus_8hpp.html',1,'']]], + ['operator_5funary_5fnegative_2ehpp',['operator_unary_negative.hpp',['../operator__unary__negative_8hpp.html',1,'']]], + ['operator_5funary_5fnot_2ehpp',['operator_unary_not.hpp',['../operator__unary__not_8hpp.html',1,'']]], + ['operator_5funary_5fplus_2ehpp',['operator_unary_plus.hpp',['../operator__unary__plus_8hpp.html',1,'']]], + ['operators_2ehpp',['operators.hpp',['../fwd_2operators_8hpp.html',1,'']]], + ['operators_2ehpp',['operators.hpp',['../rev_2operators_8hpp.html',1,'']]], + ['ordered_5flogistic_2ehpp',['ordered_logistic.hpp',['../ordered__logistic_8hpp.html',1,'']]], + ['owens_5ft_2ehpp',['owens_t.hpp',['../agrad_2rev_2functions_2owens__t_8hpp.html',1,'']]], + ['owens_5ft_2ehpp',['owens_t.hpp',['../math_2functions_2owens__t_8hpp.html',1,'']]], + ['owens_5ft_2ehpp',['owens_t.hpp',['../agrad_2fwd_2functions_2owens__t_8hpp.html',1,'']]] +]; diff --git a/doc/api/html/search/files_70.html b/doc/api/html/search/files_70.html new file mode 100644 index 00000000000..abcae9a6f06 --- /dev/null +++ b/doc/api/html/search/files_70.html @@ -0,0 +1,25 @@ + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/doc/api/html/search/files_70.js b/doc/api/html/search/files_70.js new file mode 100644 index 00000000000..04fb20dc102 --- /dev/null +++ b/doc/api/html/search/files_70.js @@ -0,0 +1,28 @@ +var searchData= +[ + ['pareto_2ehpp',['pareto.hpp',['../pareto_8hpp.html',1,'']]], + ['parser_2ehpp',['parser.hpp',['../parser_8hpp.html',1,'']]], + ['partials_5fvari_2ehpp',['partials_vari.hpp',['../partials__vari_8hpp.html',1,'']]], + ['phi_2ehpp',['Phi.hpp',['../agrad_2rev_2functions_2_phi_8hpp.html',1,'']]], + ['phi_2ehpp',['Phi.hpp',['../agrad_2fwd_2functions_2_phi_8hpp.html',1,'']]], + ['phi_2ehpp',['Phi.hpp',['../math_2functions_2_phi_8hpp.html',1,'']]], + ['phi_5fapprox_2ehpp',['Phi_approx.hpp',['../math_2functions_2_phi__approx_8hpp.html',1,'']]], + ['phi_5fapprox_2ehpp',['Phi_approx.hpp',['../agrad_2rev_2functions_2_phi__approx_8hpp.html',1,'']]], + ['poisson_2ehpp',['poisson.hpp',['../poisson_8hpp.html',1,'']]], + ['pow_2ehpp',['pow.hpp',['../fwd_2functions_2pow_8hpp.html',1,'']]], + ['pow_2ehpp',['pow.hpp',['../rev_2functions_2pow_8hpp.html',1,'']]], + ['precomp_5fv_5fvari_2ehpp',['precomp_v_vari.hpp',['../precomp__v__vari_8hpp.html',1,'']]], + ['precomputed_5fgradients_2ehpp',['precomputed_gradients.hpp',['../precomputed__gradients_8hpp.html',1,'']]], + ['print_2ecpp',['print.cpp',['../print_8cpp.html',1,'']]], + ['print_2ehpp',['print.hpp',['../print_8hpp.html',1,'']]], + ['print_5fstack_2ehpp',['print_stack.hpp',['../print__stack_8hpp.html',1,'']]], + ['prob_2ehpp',['prob.hpp',['../prob_8hpp.html',1,'']]], + ['prob_5fgrad_2ehpp',['prob_grad.hpp',['../prob__grad_8hpp.html',1,'']]], + ['prod_2ehpp',['prod.hpp',['../prod_8hpp.html',1,'']]], + ['program_5fgrammar_2ehpp',['program_grammar.hpp',['../program__grammar_8hpp.html',1,'']]], + ['program_5fgrammar_5fdef_2ehpp',['program_grammar_def.hpp',['../program__grammar__def_8hpp.html',1,'']]], + ['program_5fgrammar_5finst_2ecpp',['program_grammar_inst.cpp',['../program__grammar__inst_8cpp.html',1,'']]], + ['promote_5fcommon_2ehpp',['promote_common.hpp',['../promote__common_8hpp.html',1,'']]], + ['promoter_2ehpp',['promoter.hpp',['../promoter_8hpp.html',1,'']]], + ['ps_5fpoint_2ehpp',['ps_point.hpp',['../ps__point_8hpp.html',1,'']]] +]; diff --git a/doc/api/html/search/files_71.html b/doc/api/html/search/files_71.html new file mode 100644 index 00000000000..bb4ccc7cc57 --- /dev/null +++ b/doc/api/html/search/files_71.html @@ -0,0 +1,25 @@ + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/doc/api/html/search/files_71.js b/doc/api/html/search/files_71.js new file mode 100644 index 00000000000..40af2b32a34 --- /dev/null +++ b/doc/api/html/search/files_71.js @@ -0,0 +1,5 @@ +var searchData= +[ + ['quad_5fform_2ehpp',['quad_form.hpp',['../agrad_2rev_2matrix_2quad__form_8hpp.html',1,'']]], + ['quad_5fform_2ehpp',['quad_form.hpp',['../math_2matrix_2quad__form_8hpp.html',1,'']]] +]; diff --git a/doc/api/html/search/files_72.html b/doc/api/html/search/files_72.html new file mode 100644 index 00000000000..609fb48fc37 --- /dev/null +++ b/doc/api/html/search/files_72.html @@ -0,0 +1,25 @@ + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/doc/api/html/search/files_72.js b/doc/api/html/search/files_72.js new file mode 100644 index 00000000000..e3955ef4fa4 --- /dev/null +++ b/doc/api/html/search/files_72.js @@ -0,0 +1,24 @@ +var searchData= +[ + ['raise_5fdomain_5ferror_2ehpp',['raise_domain_error.hpp',['../raise__domain__error_8hpp.html',1,'']]], + ['rank_2ehpp',['rank.hpp',['../rank_8hpp.html',1,'']]], + ['rayleigh_2ehpp',['rayleigh.hpp',['../rayleigh_8hpp.html',1,'']]], + ['reader_2ehpp',['reader.hpp',['../reader_8hpp.html',1,'']]], + ['rep_5farray_2ehpp',['rep_array.hpp',['../rep__array_8hpp.html',1,'']]], + ['rep_5fmatrix_2ehpp',['rep_matrix.hpp',['../rep__matrix_8hpp.html',1,'']]], + ['rep_5frow_5fvector_2ehpp',['rep_row_vector.hpp',['../rep__row__vector_8hpp.html',1,'']]], + ['rep_5fvector_2ehpp',['rep_vector.hpp',['../rep__vector_8hpp.html',1,'']]], + ['resize_2ehpp',['resize.hpp',['../resize_8hpp.html',1,'']]], + ['rev_2ehpp',['rev.hpp',['../rev_8hpp.html',1,'']]], + ['rising_5ffactorial_2ehpp',['rising_factorial.hpp',['../agrad_2rev_2functions_2rising__factorial_8hpp.html',1,'']]], + ['rising_5ffactorial_2ehpp',['rising_factorial.hpp',['../math_2functions_2rising__factorial_8hpp.html',1,'']]], + ['rising_5ffactorial_2ehpp',['rising_factorial.hpp',['../agrad_2fwd_2functions_2rising__factorial_8hpp.html',1,'']]], + ['round_2ehpp',['round.hpp',['../fwd_2functions_2round_8hpp.html',1,'']]], + ['round_2ehpp',['round.hpp',['../rev_2functions_2round_8hpp.html',1,'']]], + ['row_2ehpp',['row.hpp',['../row_8hpp.html',1,'']]], + ['rows_2ehpp',['rows.hpp',['../rows_8hpp.html',1,'']]], + ['rows_5fdot_5fproduct_2ehpp',['rows_dot_product.hpp',['../agrad_2fwd_2matrix_2rows__dot__product_8hpp.html',1,'']]], + ['rows_5fdot_5fproduct_2ehpp',['rows_dot_product.hpp',['../math_2matrix_2rows__dot__product_8hpp.html',1,'']]], + ['rows_5fdot_5fself_2ehpp',['rows_dot_self.hpp',['../agrad_2fwd_2matrix_2rows__dot__self_8hpp.html',1,'']]], + ['rows_5fdot_5fself_2ehpp',['rows_dot_self.hpp',['../math_2matrix_2rows__dot__self_8hpp.html',1,'']]] +]; diff --git a/doc/api/html/search/files_73.html b/doc/api/html/search/files_73.html new file mode 100644 index 00000000000..e0de9e6b55d --- /dev/null +++ b/doc/api/html/search/files_73.html @@ -0,0 +1,25 @@ + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/doc/api/html/search/files_73.js b/doc/api/html/search/files_73.js new file mode 100644 index 00000000000..8c8c61e0cb0 --- /dev/null +++ b/doc/api/html/search/files_73.js @@ -0,0 +1,61 @@ +var searchData= +[ + ['sample_2ehpp',['sample.hpp',['../sample_8hpp.html',1,'']]], + ['scaled_5fadd_2ehpp',['scaled_add.hpp',['../scaled__add_8hpp.html',1,'']]], + ['scaled_5finv_5fchi_5fsquare_2ehpp',['scaled_inv_chi_square.hpp',['../scaled__inv__chi__square_8hpp.html',1,'']]], + ['sd_2ehpp',['sd.hpp',['../agrad_2rev_2matrix_2sd_8hpp.html',1,'']]], + ['sd_2ehpp',['sd.hpp',['../math_2matrix_2sd_8hpp.html',1,'']]], + ['segment_2ehpp',['segment.hpp',['../segment_8hpp.html',1,'']]], + ['seq_5fview_2ehpp',['seq_view.hpp',['../seq__view_8hpp.html',1,'']]], + ['sin_2ehpp',['sin.hpp',['../rev_2functions_2sin_8hpp.html',1,'']]], + ['sin_2ehpp',['sin.hpp',['../fwd_2functions_2sin_8hpp.html',1,'']]], + ['singleton_5fargument_2ehpp',['singleton_argument.hpp',['../singleton__argument_8hpp.html',1,'']]], + ['singular_5fvalues_2ehpp',['singular_values.hpp',['../singular__values_8hpp.html',1,'']]], + ['sinh_2ehpp',['sinh.hpp',['../fwd_2functions_2sinh_8hpp.html',1,'']]], + ['sinh_2ehpp',['sinh.hpp',['../rev_2functions_2sinh_8hpp.html',1,'']]], + ['size_2ehpp',['size.hpp',['../size_8hpp.html',1,'']]], + ['skew_5fnormal_2ehpp',['skew_normal.hpp',['../skew__normal_8hpp.html',1,'']]], + ['softmax_2ehpp',['softmax.hpp',['../agrad_2fwd_2matrix_2softmax_8hpp.html',1,'']]], + ['softmax_2ehpp',['softmax.hpp',['../agrad_2rev_2matrix_2softmax_8hpp.html',1,'']]], + ['softmax_2ehpp',['softmax.hpp',['../math_2matrix_2softmax_8hpp.html',1,'']]], + ['sort_2ehpp',['sort.hpp',['../agrad_2rev_2matrix_2sort_8hpp.html',1,'']]], + ['sort_2ehpp',['sort.hpp',['../math_2matrix_2sort_8hpp.html',1,'']]], + ['sort_2ehpp',['sort.hpp',['../agrad_2fwd_2matrix_2sort_8hpp.html',1,'']]], + ['sqrt_2ehpp',['sqrt.hpp',['../rev_2functions_2sqrt_8hpp.html',1,'']]], + ['sqrt_2ehpp',['sqrt.hpp',['../fwd_2functions_2sqrt_8hpp.html',1,'']]], + ['square_2ehpp',['square.hpp',['../agrad_2fwd_2functions_2square_8hpp.html',1,'']]], + ['square_2ehpp',['square.hpp',['../agrad_2rev_2functions_2square_8hpp.html',1,'']]], + ['square_2ehpp',['square.hpp',['../math_2functions_2square_8hpp.html',1,'']]], + ['squared_5fdistance_2ehpp',['squared_distance.hpp',['../agrad_2rev_2matrix_2squared__distance_8hpp.html',1,'']]], + ['squared_5fdistance_2ehpp',['squared_distance.hpp',['../math_2matrix_2squared__distance_8hpp.html',1,'']]], + ['stack_5falloc_2ehpp',['stack_alloc.hpp',['../stack__alloc_8hpp.html',1,'']]], + ['stan_2edox',['stan.dox',['../stan_8dox.html',1,'']]], + ['stan_5fcsv_5freader_2ehpp',['stan_csv_reader.hpp',['../stan__csv__reader_8hpp.html',1,'']]], + ['stan_5fprint_2ehpp',['stan_print.hpp',['../agrad_2rev_2matrix_2stan__print_8hpp.html',1,'']]], + ['stan_5fprint_2ehpp',['stan_print.hpp',['../math_2matrix_2stan__print_8hpp.html',1,'']]], + ['stanc_2ecpp',['stanc.cpp',['../stanc_8cpp.html',1,'']]], + ['stanc_5fhelper_2ehpp',['stanc_helper.hpp',['../stanc__helper_8hpp.html',1,'']]], + ['statement_5f2_5fgrammar_2ehpp',['statement_2_grammar.hpp',['../statement__2__grammar_8hpp.html',1,'']]], + ['statement_5f2_5fgrammar_5fdef_2ehpp',['statement_2_grammar_def.hpp',['../statement__2__grammar__def_8hpp.html',1,'']]], + ['statement_5f2_5fgrammar_5finst_2ecpp',['statement_2_grammar_inst.cpp',['../statement__2__grammar__inst_8cpp.html',1,'']]], + ['statement_5fgrammar_2ehpp',['statement_grammar.hpp',['../statement__grammar_8hpp.html',1,'']]], + ['statement_5fgrammar_5fdef_2ehpp',['statement_grammar_def.hpp',['../statement__grammar__def_8hpp.html',1,'']]], + ['statement_5fgrammar_5finst_2ecpp',['statement_grammar_inst.cpp',['../statement__grammar__inst_8cpp.html',1,'']]], + ['std_2edox',['std.dox',['../std_8dox.html',1,'']]], + ['step_2ehpp',['step.hpp',['../agrad_2rev_2functions_2step_8hpp.html',1,'']]], + ['step_2ehpp',['step.hpp',['../math_2functions_2step_8hpp.html',1,'']]], + ['stepsize_5fadaptation_2ehpp',['stepsize_adaptation.hpp',['../stepsize__adaptation_8hpp.html',1,'']]], + ['stepsize_5fadapter_2ehpp',['stepsize_adapter.hpp',['../stepsize__adapter_8hpp.html',1,'']]], + ['stepsize_5fcovar_5fadapter_2ehpp',['stepsize_covar_adapter.hpp',['../stepsize__covar__adapter_8hpp.html',1,'']]], + ['stepsize_5fvar_5fadapter_2ehpp',['stepsize_var_adapter.hpp',['../stepsize__var__adapter_8hpp.html',1,'']]], + ['stored_5fgradient_5fvari_2ehpp',['stored_gradient_vari.hpp',['../stored__gradient__vari_8hpp.html',1,'']]], + ['student_5ft_2ehpp',['student_t.hpp',['../student__t_8hpp.html',1,'']]], + ['sub_2ehpp',['sub.hpp',['../sub_8hpp.html',1,'']]], + ['sub_5fcol_2ehpp',['sub_col.hpp',['../sub__col_8hpp.html',1,'']]], + ['sub_5frow_2ehpp',['sub_row.hpp',['../sub__row_8hpp.html',1,'']]], + ['subtract_2ehpp',['subtract.hpp',['../subtract_8hpp.html',1,'']]], + ['sum_2ehpp',['sum.hpp',['../math_2functions_2sum_8hpp.html',1,'']]], + ['sum_2ehpp',['sum.hpp',['../agrad_2rev_2matrix_2sum_8hpp.html',1,'']]], + ['sum_2ehpp',['sum.hpp',['../agrad_2fwd_2matrix_2sum_8hpp.html',1,'']]], + ['sum_2ehpp',['sum.hpp',['../math_2matrix_2sum_8hpp.html',1,'']]] +]; diff --git a/doc/api/html/search/files_74.html b/doc/api/html/search/files_74.html new file mode 100644 index 00000000000..017b3fe9fa0 --- /dev/null +++ b/doc/api/html/search/files_74.html @@ -0,0 +1,25 @@ + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/doc/api/html/search/files_74.js b/doc/api/html/search/files_74.js new file mode 100644 index 00000000000..6b533d4065b --- /dev/null +++ b/doc/api/html/search/files_74.js @@ -0,0 +1,38 @@ +var searchData= +[ + ['tail_2ehpp',['tail.hpp',['../tail_8hpp.html',1,'']]], + ['tan_2ehpp',['tan.hpp',['../rev_2functions_2tan_8hpp.html',1,'']]], + ['tan_2ehpp',['tan.hpp',['../fwd_2functions_2tan_8hpp.html',1,'']]], + ['tanh_2ehpp',['tanh.hpp',['../rev_2functions_2tanh_8hpp.html',1,'']]], + ['tanh_2ehpp',['tanh.hpp',['../fwd_2functions_2tanh_8hpp.html',1,'']]], + ['tcrossprod_2ehpp',['tcrossprod.hpp',['../agrad_2fwd_2matrix_2tcrossprod_8hpp.html',1,'']]], + ['tcrossprod_2ehpp',['tcrossprod.hpp',['../agrad_2rev_2matrix_2tcrossprod_8hpp.html',1,'']]], + ['tcrossprod_2ehpp',['tcrossprod.hpp',['../math_2matrix_2tcrossprod_8hpp.html',1,'']]], + ['term_5fgrammar_2ehpp',['term_grammar.hpp',['../term__grammar_8hpp.html',1,'']]], + ['term_5fgrammar_5fdef_2ehpp',['term_grammar_def.hpp',['../term__grammar__def_8hpp.html',1,'']]], + ['term_5fgrammar_5finst_2ecpp',['term_grammar_inst.cpp',['../term__grammar__inst_8cpp.html',1,'']]], + ['tgamma_2ehpp',['tgamma.hpp',['../fwd_2functions_2tgamma_8hpp.html',1,'']]], + ['tgamma_2ehpp',['tgamma.hpp',['../rev_2functions_2tgamma_8hpp.html',1,'']]], + ['to_5ffvar_2ehpp',['to_fvar.hpp',['../to__fvar_8hpp.html',1,'']]], + ['to_5fvar_2ehpp',['to_var.hpp',['../to__var_8hpp.html',1,'']]], + ['to_5fvector_2ehpp',['to_vector.hpp',['../to__vector_8hpp.html',1,'']]], + ['trace_2ehpp',['trace.hpp',['../trace_8hpp.html',1,'']]], + ['trace_5fgen_5finv_5fquad_5fform_5fldlt_2ehpp',['trace_gen_inv_quad_form_ldlt.hpp',['../agrad_2rev_2matrix_2trace__gen__inv__quad__form__ldlt_8hpp.html',1,'']]], + ['trace_5fgen_5finv_5fquad_5fform_5fldlt_2ehpp',['trace_gen_inv_quad_form_ldlt.hpp',['../math_2matrix_2trace__gen__inv__quad__form__ldlt_8hpp.html',1,'']]], + ['trace_5fgen_5fquad_5fform_2ehpp',['trace_gen_quad_form.hpp',['../agrad_2rev_2matrix_2trace__gen__quad__form_8hpp.html',1,'']]], + ['trace_5fgen_5fquad_5fform_2ehpp',['trace_gen_quad_form.hpp',['../math_2matrix_2trace__gen__quad__form_8hpp.html',1,'']]], + ['trace_5finv_5fquad_5fform_5fldlt_2ehpp',['trace_inv_quad_form_ldlt.hpp',['../agrad_2rev_2matrix_2trace__inv__quad__form__ldlt_8hpp.html',1,'']]], + ['trace_5finv_5fquad_5fform_5fldlt_2ehpp',['trace_inv_quad_form_ldlt.hpp',['../math_2matrix_2trace__inv__quad__form__ldlt_8hpp.html',1,'']]], + ['trace_5fquad_5fform_2ehpp',['trace_quad_form.hpp',['../math_2matrix_2trace__quad__form_8hpp.html',1,'']]], + ['trace_5fquad_5fform_2ehpp',['trace_quad_form.hpp',['../agrad_2rev_2matrix_2trace__quad__form_8hpp.html',1,'']]], + ['traits_2ehpp',['traits.hpp',['../meta_2traits_8hpp.html',1,'']]], + ['traits_2ehpp',['traits.hpp',['../prob_2traits_8hpp.html',1,'']]], + ['transform_2ehpp',['transform.hpp',['../transform_8hpp.html',1,'']]], + ['transpose_2ehpp',['transpose.hpp',['../transpose_8hpp.html',1,'']]], + ['trigamma_2ehpp',['trigamma.hpp',['../trigamma_8hpp.html',1,'']]], + ['trunc_2ehpp',['trunc.hpp',['../fwd_2functions_2trunc_8hpp.html',1,'']]], + ['trunc_2ehpp',['trunc.hpp',['../rev_2functions_2trunc_8hpp.html',1,'']]], + ['typedefs_2ehpp',['typedefs.hpp',['../agrad_2rev_2matrix_2typedefs_8hpp.html',1,'']]], + ['typedefs_2ehpp',['typedefs.hpp',['../math_2matrix_2typedefs_8hpp.html',1,'']]], + ['typedefs_2ehpp',['typedefs.hpp',['../agrad_2fwd_2matrix_2typedefs_8hpp.html',1,'']]] +]; diff --git a/doc/api/html/search/files_75.html b/doc/api/html/search/files_75.html new file mode 100644 index 00000000000..8ea7b3d4b84 --- /dev/null +++ b/doc/api/html/search/files_75.html @@ -0,0 +1,25 @@ + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/doc/api/html/search/files_75.js b/doc/api/html/search/files_75.js new file mode 100644 index 00000000000..44119bd2407 --- /dev/null +++ b/doc/api/html/search/files_75.js @@ -0,0 +1,12 @@ +var searchData= +[ + ['uniform_2ehpp',['uniform.hpp',['../uniform_8hpp.html',1,'']]], + ['unit_5fe_5fmetric_2ehpp',['unit_e_metric.hpp',['../unit__e__metric_8hpp.html',1,'']]], + ['unit_5fe_5fnuts_2ehpp',['unit_e_nuts.hpp',['../unit__e__nuts_8hpp.html',1,'']]], + ['unit_5fe_5fpoint_2ehpp',['unit_e_point.hpp',['../unit__e__point_8hpp.html',1,'']]], + ['unit_5fe_5fstatic_5fhmc_2ehpp',['unit_e_static_hmc.hpp',['../unit__e__static__hmc_8hpp.html',1,'']]], + ['univariate_2ehpp',['univariate.hpp',['../univariate_8hpp.html',1,'']]], + ['unvalued_5fargument_2ehpp',['unvalued_argument.hpp',['../unvalued__argument_8hpp.html',1,'']]], + ['util_2ehpp',['util.hpp',['../model_2util_8hpp.html',1,'']]], + ['util_2ehpp',['util.hpp',['../io_2util_8hpp.html',1,'']]] +]; diff --git a/doc/api/html/search/files_76.html b/doc/api/html/search/files_76.html new file mode 100644 index 00000000000..e53e134cd31 --- /dev/null +++ b/doc/api/html/search/files_76.html @@ -0,0 +1,25 @@ + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/doc/api/html/search/files_76.js b/doc/api/html/search/files_76.js new file mode 100644 index 00000000000..5e0e11ff2fb --- /dev/null +++ b/doc/api/html/search/files_76.js @@ -0,0 +1,44 @@ +var searchData= +[ + ['v_5fvari_2ehpp',['v_vari.hpp',['../v__vari_8hpp.html',1,'']]], + ['validate_5fcolumn_5findex_2ehpp',['validate_column_index.hpp',['../validate__column__index_8hpp.html',1,'']]], + ['validate_5fgreater_2ehpp',['validate_greater.hpp',['../validate__greater_8hpp.html',1,'']]], + ['validate_5fgreater_5for_5fequal_2ehpp',['validate_greater_or_equal.hpp',['../validate__greater__or__equal_8hpp.html',1,'']]], + ['validate_5fless_2ehpp',['validate_less.hpp',['../validate__less_8hpp.html',1,'']]], + ['validate_5fless_5for_5fequal_2ehpp',['validate_less_or_equal.hpp',['../validate__less__or__equal_8hpp.html',1,'']]], + ['validate_5fmatching_5fdims_2ehpp',['validate_matching_dims.hpp',['../validate__matching__dims_8hpp.html',1,'']]], + ['validate_5fmatching_5fsizes_2ehpp',['validate_matching_sizes.hpp',['../validate__matching__sizes_8hpp.html',1,'']]], + ['validate_5fmultiplicable_2ehpp',['validate_multiplicable.hpp',['../validate__multiplicable_8hpp.html',1,'']]], + ['validate_5fnon_5fnegative_5findex_2ehpp',['validate_non_negative_index.hpp',['../validate__non__negative__index_8hpp.html',1,'']]], + ['validate_5fnon_5fnegative_5frep_2ehpp',['validate_non_negative_rep.hpp',['../validate__non__negative__rep_8hpp.html',1,'']]], + ['validate_5fnonzero_5fsize_2ehpp',['validate_nonzero_size.hpp',['../validate__nonzero__size_8hpp.html',1,'']]], + ['validate_5frow_5findex_2ehpp',['validate_row_index.hpp',['../validate__row__index_8hpp.html',1,'']]], + ['validate_5fsquare_2ehpp',['validate_square.hpp',['../validate__square_8hpp.html',1,'']]], + ['validate_5fstd_5fvector_5findex_2ehpp',['validate_std_vector_index.hpp',['../validate__std__vector__index_8hpp.html',1,'']]], + ['validate_5fsymmetric_2ehpp',['validate_symmetric.hpp',['../validate__symmetric_8hpp.html',1,'']]], + ['validate_5fvector_2ehpp',['validate_vector.hpp',['../validate__vector_8hpp.html',1,'']]], + ['value_5fof_2ehpp',['value_of.hpp',['../agrad_2rev_2matrix_2value__of_8hpp.html',1,'']]], + ['value_5fof_2ehpp',['value_of.hpp',['../agrad_2rev_2functions_2value__of_8hpp.html',1,'']]], + ['value_5fof_2ehpp',['value_of.hpp',['../math_2functions_2value__of_8hpp.html',1,'']]], + ['valued_5fargument_2ehpp',['valued_argument.hpp',['../valued__argument_8hpp.html',1,'']]], + ['var_2ehpp',['var.hpp',['../var_8hpp.html',1,'']]], + ['var_5fadaptation_2ehpp',['var_adaptation.hpp',['../var__adaptation_8hpp.html',1,'']]], + ['var_5fcontext_2ehpp',['var_context.hpp',['../var__context_8hpp.html',1,'']]], + ['var_5fdecls_5fgrammar_2ehpp',['var_decls_grammar.hpp',['../var__decls__grammar_8hpp.html',1,'']]], + ['var_5fdecls_5fgrammar_5fdef_2ehpp',['var_decls_grammar_def.hpp',['../var__decls__grammar__def_8hpp.html',1,'']]], + ['var_5fdecls_5fgrammar_5finst_2ecpp',['var_decls_grammar_inst.cpp',['../var__decls__grammar__inst_8cpp.html',1,'']]], + ['var_5fstack_2ecpp',['var_stack.cpp',['../var__stack_8cpp.html',1,'']]], + ['var_5fstack_2ehpp',['var_stack.hpp',['../var__stack_8hpp.html',1,'']]], + ['vari_2ehpp',['vari.hpp',['../vari_8hpp.html',1,'']]], + ['variance_2ehpp',['variance.hpp',['../agrad_2rev_2matrix_2variance_8hpp.html',1,'']]], + ['variance_2ehpp',['variance.hpp',['../math_2matrix_2variance_8hpp.html',1,'']]], + ['vd_5fvari_2ehpp',['vd_vari.hpp',['../vd__vari_8hpp.html',1,'']]], + ['vdd_5fvari_2ehpp',['vdd_vari.hpp',['../vdd__vari_8hpp.html',1,'']]], + ['vdv_5fvari_2ehpp',['vdv_vari.hpp',['../vdv__vari_8hpp.html',1,'']]], + ['vector_5fvari_2ehpp',['vector_vari.hpp',['../vector__vari_8hpp.html',1,'']]], + ['version_2ehpp',['version.hpp',['../version_8hpp.html',1,'']]], + ['von_5fmises_2ehpp',['von_mises.hpp',['../von__mises_8hpp.html',1,'']]], + ['vv_5fvari_2ehpp',['vv_vari.hpp',['../vv__vari_8hpp.html',1,'']]], + ['vvd_5fvari_2ehpp',['vvd_vari.hpp',['../vvd__vari_8hpp.html',1,'']]], + ['vvv_5fvari_2ehpp',['vvv_vari.hpp',['../vvv__vari_8hpp.html',1,'']]] +]; diff --git a/doc/api/html/search/files_77.html b/doc/api/html/search/files_77.html new file mode 100644 index 00000000000..69f6897820e --- /dev/null +++ b/doc/api/html/search/files_77.html @@ -0,0 +1,25 @@ + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/doc/api/html/search/files_77.js b/doc/api/html/search/files_77.js new file mode 100644 index 00000000000..b237fac7c5d --- /dev/null +++ b/doc/api/html/search/files_77.js @@ -0,0 +1,12 @@ +var searchData= +[ + ['weibull_2ehpp',['weibull.hpp',['../weibull_8hpp.html',1,'']]], + ['welford_5fcovar_5festimator_2ehpp',['welford_covar_estimator.hpp',['../welford__covar__estimator_8hpp.html',1,'']]], + ['welford_5fvar_5festimator_2ehpp',['welford_var_estimator.hpp',['../welford__var__estimator_8hpp.html',1,'']]], + ['whitespace_5fgrammar_2ehpp',['whitespace_grammar.hpp',['../whitespace__grammar_8hpp.html',1,'']]], + ['whitespace_5fgrammar_5fdef_2ehpp',['whitespace_grammar_def.hpp',['../whitespace__grammar__def_8hpp.html',1,'']]], + ['whitespace_5fgrammar_5finst_2ecpp',['whitespace_grammar_inst.cpp',['../whitespace__grammar__inst_8cpp.html',1,'']]], + ['windowed_5fadaptation_2ehpp',['windowed_adaptation.hpp',['../windowed__adaptation_8hpp.html',1,'']]], + ['wishart_2ehpp',['wishart.hpp',['../wishart_8hpp.html',1,'']]], + ['writer_2ehpp',['writer.hpp',['../writer_8hpp.html',1,'']]] +]; diff --git a/doc/api/html/search/functions_5f.html b/doc/api/html/search/functions_5f.html new file mode 100644 index 00000000000..cb54e927d59 --- /dev/null +++ b/doc/api/html/search/functions_5f.html @@ -0,0 +1,25 @@ + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/doc/api/html/search/functions_5f.js b/doc/api/html/search/functions_5f.js new file mode 100644 index 00000000000..219183bf2b2 --- /dev/null +++ b/doc/api/html/search/functions_5f.js @@ -0,0 +1,7 @@ +var searchData= +[ + ['_5ffast_5fmatrix_5fcopy',['_fast_matrix_copy',['../classstan_1_1mcmc_1_1ps__point.html#aa701eacefbab10b9cac8273267bbf39d',1,'stan::mcmc::ps_point']]], + ['_5ffast_5fvector_5fcopy',['_fast_vector_copy',['../classstan_1_1mcmc_1_1ps__point.html#a685e73353f2931b3afbfccd4acbe598d',1,'stan::mcmc::ps_point']]], + ['_5fupdate_5fl',['_update_L',['../classstan_1_1mcmc_1_1base__static__hmc.html#a99f17a731044a9880298f5e254b94a69',1,'stan::mcmc::base_static_hmc']]], + ['_5fwrite_5ferror_5fmsg',['_write_error_msg',['../classstan_1_1mcmc_1_1base__hamiltonian.html#a21467777d0c2768f9eb57e76c9fd1b85',1,'stan::mcmc::base_hamiltonian']]] +]; diff --git a/doc/api/html/search/functions_61.html b/doc/api/html/search/functions_61.html new file mode 100644 index 00000000000..7f395337e22 --- /dev/null +++ b/doc/api/html/search/functions_61.html @@ -0,0 +1,25 @@ + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/doc/api/html/search/functions_61.js b/doc/api/html/search/functions_61.js new file mode 100644 index 00000000000..f9335d505db --- /dev/null +++ b/doc/api/html/search/functions_61.js @@ -0,0 +1,104 @@ +var searchData= +[ + ['abs',['abs',['../namespacestan_1_1agrad.html#a2d5337cd9cddc3807cb3b3740221ace1',1,'stan::agrad::abs(const var &a)'],['../namespacestan_1_1agrad.html#a16237ddae626928422d7c63f7f02ae6f',1,'stan::agrad::abs(const fvar< T > &x)'],['../namespacestan_1_1math.html#aeb4764556637084eee528b45d8eaa767',1,'stan::math::abs()']]], + ['accept_5fstat',['accept_stat',['../classstan_1_1mcmc_1_1sample.html#ab427230e7e2d5cb3b541c3b7040d0fb7',1,'stan::mcmc::sample']]], + ['accumulator',['accumulator',['../classstan_1_1math_1_1accumulator.html#afb44f3c753ac1373482e123df612a266',1,'stan::math::accumulator']]], + ['acos',['acos',['../namespacestan_1_1agrad.html#a3d7b4b9ba0df66c3ae59a4478fecdc2b',1,'stan::agrad::acos(const var &a)'],['../namespacestan_1_1agrad.html#a8d58f71cd77c7447a63eb336f9b29857',1,'stan::agrad::acos(const fvar< T > &x)']]], + ['acosh',['acosh',['../namespacestan_1_1agrad.html#a7f0ba2a81fb92e3f18d75fd4da3f5b67',1,'stan::agrad::acosh(const fvar< T > &x)'],['../namespacestan_1_1agrad.html#a55d6c606ed591f3aa617ccf6ef912d17',1,'stan::agrad::acosh(const stan::agrad::var &a)']]], + ['adapt_5fdense_5fe_5fnuts',['adapt_dense_e_nuts',['../classstan_1_1mcmc_1_1adapt__dense__e__nuts.html#a7f2a7a4f48cbc0f7667f01e9045e069a',1,'stan::mcmc::adapt_dense_e_nuts']]], + ['adapt_5fdense_5fe_5fstatic_5fhmc',['adapt_dense_e_static_hmc',['../classstan_1_1mcmc_1_1adapt__dense__e__static__hmc.html#a7d57f187b6877982cf329800e47b5370',1,'stan::mcmc::adapt_dense_e_static_hmc']]], + ['adapt_5fdiag_5fe_5fnuts',['adapt_diag_e_nuts',['../classstan_1_1mcmc_1_1adapt__diag__e__nuts.html#a8e2eb81bdeed65fb1cdf8512643c5247',1,'stan::mcmc::adapt_diag_e_nuts']]], + ['adapt_5fdiag_5fe_5fstatic_5fhmc',['adapt_diag_e_static_hmc',['../classstan_1_1mcmc_1_1adapt__diag__e__static__hmc.html#a08c8c79cc0a4c5fcfc8a2be30b9ab858',1,'stan::mcmc::adapt_diag_e_static_hmc']]], + ['adapt_5funit_5fe_5fnuts',['adapt_unit_e_nuts',['../classstan_1_1mcmc_1_1adapt__unit__e__nuts.html#a65a0e3a8ff345164784d1c411c1d685f',1,'stan::mcmc::adapt_unit_e_nuts']]], + ['adapt_5funit_5fe_5fstatic_5fhmc',['adapt_unit_e_static_hmc',['../classstan_1_1mcmc_1_1adapt__unit__e__static__hmc.html#ab6e501da21dace8ba4deb0378df2e74f',1,'stan::mcmc::adapt_unit_e_static_hmc']]], + ['adaptation_5fwindow',['adaptation_window',['../classstan_1_1mcmc_1_1windowed__adaptation.html#a8e82facfbdd25e23a6dc04dfb47f6f55',1,'stan::mcmc::windowed_adaptation']]], + ['adapting',['adapting',['../classstan_1_1mcmc_1_1base__adapter.html#a56b7bacc5a6d31b2e0d0d2dc8f096cb7',1,'stan::mcmc::base_adapter']]], + ['add',['add',['../classstan_1_1gm_1_1function__signatures.html#a2cd5e6592f8f0839d0744d0ac6c889a6',1,'stan::gm::function_signatures::add(const std::string &name, const expr_type &result_type, const std::vector< expr_type > &arg_types)'],['../classstan_1_1gm_1_1function__signatures.html#a155a6d04ca2dd66396558e55afee2ac9',1,'stan::gm::function_signatures::add(const std::string &name, const expr_type &result_type)'],['../classstan_1_1gm_1_1function__signatures.html#a7030b5e710a69202f33055d64f506aac',1,'stan::gm::function_signatures::add(const std::string &name, const expr_type &result_type, const expr_type &arg_type)'],['../classstan_1_1gm_1_1function__signatures.html#aa0947100246ba8239f476a6b337c7a45',1,'stan::gm::function_signatures::add(const std::string &name, const expr_type &result_type, const expr_type &arg_type1, const expr_type &arg_type2)'],['../classstan_1_1gm_1_1function__signatures.html#a827e5f55c134829c58dc20924ba02d8e',1,'stan::gm::function_signatures::add(const std::string &name, const expr_type &result_type, const expr_type &arg_type1, const expr_type &arg_type2, const expr_type &arg_type3)'],['../classstan_1_1gm_1_1function__signatures.html#a029bfb7842b41f1c3cd853ca9806a6c9',1,'stan::gm::function_signatures::add(const std::string &name, const expr_type &result_type, const expr_type &arg_type1, const expr_type &arg_type2, const expr_type &arg_type3, const expr_type &arg_type4)'],['../classstan_1_1gm_1_1function__signatures.html#acb2e2b50157a56f5a924cf9d8c134025',1,'stan::gm::function_signatures::add(const std::string &name, const expr_type &result_type, const expr_type &arg_type1, const expr_type &arg_type2, const expr_type &arg_type3, const expr_type &arg_type4, const expr_type &arg_type5)'],['../classstan_1_1gm_1_1function__signatures.html#a59a3c6beef4febbc41c38a7ed92e4b8a',1,'stan::gm::function_signatures::add(const std::string &name, const expr_type &result_type, const expr_type &arg_type1, const expr_type &arg_type2, const expr_type &arg_type3, const expr_type &arg_type4, const expr_type &arg_type5, const expr_type &arg_type6)'],['../classstan_1_1gm_1_1function__signatures.html#ab8b4feffbf25d433f7f4545a28fed897',1,'stan::gm::function_signatures::add(const std::string &name, const expr_type &result_type, const expr_type &arg_type1, const expr_type &arg_type2, const expr_type &arg_type3, const expr_type &arg_type4, const expr_type &arg_type5, const expr_type &arg_type6, const expr_type &arg_type7)'],['../structstan_1_1gm_1_1variable__map.html#a2a1c8d42745d2ba940577f8f9d4da17e',1,'stan::gm::variable_map::add()'],['../classstan_1_1math_1_1accumulator.html#af2da77a509c4e7e9c16d8a6f691a6901',1,'stan::math::accumulator::add(S x)'],['../classstan_1_1math_1_1accumulator.html#a35bd3df3c2f49e6e4e13e8c09da5ac89',1,'stan::math::accumulator::add(const S &x)'],['../classstan_1_1math_1_1accumulator.html#af66ce8b37f8d8af158dd38784b34d86b',1,'stan::math::accumulator::add(const Eigen::Matrix< S, R, C > &m)'],['../classstan_1_1math_1_1accumulator.html#acf91e7cb369f45142386598d552a30e2',1,'stan::math::accumulator::add(const std::vector< S > &xs)'],['../structstan_1_1math_1_1array__builder.html#a085e0190d7a41c4e33bfa9f542b1d62a',1,'stan::math::array_builder::add()'],['../classstan_1_1mcmc_1_1chains.html#af47331852814d5853f769cfb5d71fbe2',1,'stan::mcmc::chains::add(const int chain, const Eigen::MatrixXd &sample)'],['../classstan_1_1mcmc_1_1chains.html#a87a66fd3d8395bd6b44e8e9fba8e4068',1,'stan::mcmc::chains::add(const Eigen::MatrixXd &sample)'],['../classstan_1_1mcmc_1_1chains.html#a0c7ad1958670871f1d080d8feb8233b6',1,'stan::mcmc::chains::add(const stan::io::stan_csv &stan_csv)'],['../namespacestan_1_1math.html#a3d4b97f71328d3de40de286ec6e3754e',1,'stan::math::add(const Eigen::Matrix< T1, R, C > &m1, const Eigen::Matrix< T2, R, C > &m2)'],['../namespacestan_1_1math.html#aa92ade0aeac74c8366b8c210446324a1',1,'stan::math::add(const Eigen::Matrix< T1, R, C > &m, const T2 &c)'],['../namespacestan_1_1math.html#ac4cbcb4a48d3284e93afe13093412683',1,'stan::math::add(const T1 &c, const Eigen::Matrix< T2, R, C > &m)']]], + ['add_5fbinary',['add_binary',['../classstan_1_1gm_1_1function__signatures.html#a3cac5b9cb17575d88d76286fcff64344',1,'stan::gm::function_signatures']]], + ['add_5fnullary',['add_nullary',['../classstan_1_1gm_1_1function__signatures.html#a5ef070db4552215d2de0ebdcf2298481',1,'stan::gm::function_signatures']]], + ['add_5fquaternary',['add_quaternary',['../classstan_1_1gm_1_1function__signatures.html#a7e6eae9e711df2373c8f624c7d9da53c',1,'stan::gm::function_signatures']]], + ['add_5fsample',['add_sample',['../classstan_1_1prob_1_1welford__covar__estimator.html#a3446b92b64b15d105b399c1723fcad57',1,'stan::prob::welford_covar_estimator::add_sample()'],['../classstan_1_1prob_1_1welford__var__estimator.html#a3706c5c31c545bafd3dee6fa1dcce816',1,'stan::prob::welford_var_estimator::add_sample()']]], + ['add_5fternary',['add_ternary',['../classstan_1_1gm_1_1function__signatures.html#a028061fc0bf4b4842aacd64be3fcc89e',1,'stan::gm::function_signatures']]], + ['add_5funary',['add_unary',['../classstan_1_1gm_1_1function__signatures.html#a9ce2dcdafcd2370053c4eb0c9be10042',1,'stan::gm::function_signatures']]], + ['add_5fvec',['add_vec',['../classstan_1_1io_1_1var__context.html#a4cdc64bb5dbdc26f15885fc34737752e',1,'stan::io::var_context']]], + ['adj',['adj',['../classstan_1_1agrad_1_1var.html#a44db5cfbac5b6858bc26cbb2518a6826',1,'stan::agrad::var']]], + ['alloc',['alloc',['../classstan_1_1memory_1_1chunk__alloc.html#a220d04d5ca74562e28a6c01111d8fd22',1,'stan::memory::chunk_alloc::alloc()'],['../classstan_1_1memory_1_1stack__alloc.html#a90eb1978d8bbc20e4357b1ea2c686f5b',1,'stan::memory::stack_alloc::alloc()']]], + ['alpha',['alpha',['../classstan_1_1optimization_1_1_b_f_g_s_minimizer.html#a2efb26e144b4d4d29f982df93e761823',1,'stan::optimization::BFGSMinimizer']]], + ['alpha0',['alpha0',['../classstan_1_1optimization_1_1_b_f_g_s_minimizer.html#ae534c5316049196626b103bb461f428c',1,'stan::optimization::BFGSMinimizer']]], + ['apply_5frecover',['apply_recover',['../namespacestan_1_1agrad.html#a1505aa1613749c7e976b2bf2d822070d',1,'stan::agrad']]], + ['arg',['arg',['../classstan_1_1gm_1_1argument.html#a30ba1fe18d6f4016b030835969039e9d',1,'stan::gm::argument::arg()'],['../classstan_1_1gm_1_1argument__parser.html#a3e40d509ada7d1ea9def28f819f54ee9',1,'stan::gm::argument_parser::arg()'],['../classstan_1_1gm_1_1categorical__argument.html#a5ae28cffcf6579400a8736fc581c6ab5',1,'stan::gm::categorical_argument::arg()'],['../classstan_1_1gm_1_1list__argument.html#a649267bc16e4863f507aaeecb9cbf2f1',1,'stan::gm::list_argument::arg()']]], + ['arg_5fadapt',['arg_adapt',['../classstan_1_1gm_1_1arg__adapt.html#a7db5d900f8ce94a610cbb2f129d02763',1,'stan::gm::arg_adapt']]], + ['arg_5fadapt_5fdelta',['arg_adapt_delta',['../classstan_1_1gm_1_1arg__adapt__delta.html#ab994caa2d7658bd6548f17b18cd5efaf',1,'stan::gm::arg_adapt_delta']]], + ['arg_5fadapt_5fengaged',['arg_adapt_engaged',['../classstan_1_1gm_1_1arg__adapt__engaged.html#a93164af8cdf69db14252d54d654278f2',1,'stan::gm::arg_adapt_engaged']]], + ['arg_5fadapt_5fgamma',['arg_adapt_gamma',['../classstan_1_1gm_1_1arg__adapt__gamma.html#a1e89fd146d9a20e98c550321d03aa674',1,'stan::gm::arg_adapt_gamma']]], + ['arg_5fadapt_5finit_5fbuffer',['arg_adapt_init_buffer',['../classstan_1_1gm_1_1arg__adapt__init__buffer.html#a458117f29f2665be1b17d7ce3fc2728b',1,'stan::gm::arg_adapt_init_buffer']]], + ['arg_5fadapt_5fkappa',['arg_adapt_kappa',['../classstan_1_1gm_1_1arg__adapt__kappa.html#a69a930fe17bcb920dd1beaa31d47ac20',1,'stan::gm::arg_adapt_kappa']]], + ['arg_5fadapt_5ft0',['arg_adapt_t0',['../classstan_1_1gm_1_1arg__adapt__t0.html#a92a0c0524b5f854828cb6e22c4119e8b',1,'stan::gm::arg_adapt_t0']]], + ['arg_5fadapt_5fterm_5fbuffer',['arg_adapt_term_buffer',['../classstan_1_1gm_1_1arg__adapt__term__buffer.html#a8e4699ec0baa6885ba9c34430b6d83b2',1,'stan::gm::arg_adapt_term_buffer']]], + ['arg_5fadapt_5fwindow',['arg_adapt_window',['../classstan_1_1gm_1_1arg__adapt__window.html#a95facd1874bc025735aeb9bc0b4297fe',1,'stan::gm::arg_adapt_window']]], + ['arg_5fbfgs',['arg_bfgs',['../classstan_1_1gm_1_1arg__bfgs.html#a0c1429d90a7c7f0943730e16cde44fac',1,'stan::gm::arg_bfgs']]], + ['arg_5fdata',['arg_data',['../classstan_1_1gm_1_1arg__data.html#af14bc033277233421428ef9fde504b07',1,'stan::gm::arg_data']]], + ['arg_5fdata_5ffile',['arg_data_file',['../classstan_1_1gm_1_1arg__data__file.html#a2432968effc35f8973394e91b941cf86',1,'stan::gm::arg_data_file']]], + ['arg_5fdense_5fe',['arg_dense_e',['../classstan_1_1gm_1_1arg__dense__e.html#af591c90b48c64017b2eed129e7fd2de6',1,'stan::gm::arg_dense_e']]], + ['arg_5fdiag_5fe',['arg_diag_e',['../classstan_1_1gm_1_1arg__diag__e.html#a090d24faf43dccdb255de369c396947f',1,'stan::gm::arg_diag_e']]], + ['arg_5fdiagnose',['arg_diagnose',['../classstan_1_1gm_1_1arg__diagnose.html#a29fa2b3eb2a85d31f3de053e7ab4a7cb',1,'stan::gm::arg_diagnose']]], + ['arg_5fdiagnostic_5ffile',['arg_diagnostic_file',['../classstan_1_1gm_1_1arg__diagnostic__file.html#a59b7ff8a694fa099456fc6c4466eb300',1,'stan::gm::arg_diagnostic_file']]], + ['arg_5fengine',['arg_engine',['../classstan_1_1gm_1_1arg__engine.html#a565b15c3703faddc7346db01b5a7fa3d',1,'stan::gm::arg_engine']]], + ['arg_5ffail',['arg_fail',['../classstan_1_1gm_1_1arg__fail.html#a09c9ceb2645fafb62b79172287ce0797',1,'stan::gm::arg_fail']]], + ['arg_5ffixed_5fparam',['arg_fixed_param',['../classstan_1_1gm_1_1arg__fixed__param.html#a7f7ae50b88b61add733eb2053712353a',1,'stan::gm::arg_fixed_param']]], + ['arg_5fhmc',['arg_hmc',['../classstan_1_1gm_1_1arg__hmc.html#a21bce37da4a429c509a142d2989c9e25',1,'stan::gm::arg_hmc']]], + ['arg_5fid',['arg_id',['../classstan_1_1gm_1_1arg__id.html#a9db2f80b010bff893370ae4b230bd966',1,'stan::gm::arg_id']]], + ['arg_5finit',['arg_init',['../classstan_1_1gm_1_1arg__init.html#acfb9b2317ca874c9c9c266c03ac1368f',1,'stan::gm::arg_init']]], + ['arg_5finit_5falpha',['arg_init_alpha',['../classstan_1_1gm_1_1arg__init__alpha.html#a62422aee45bcf245c6707a75ad762f4a',1,'stan::gm::arg_init_alpha']]], + ['arg_5fint_5ftime',['arg_int_time',['../classstan_1_1gm_1_1arg__int__time.html#a8374ed135e25d27819e08b474b6170c4',1,'stan::gm::arg_int_time']]], + ['arg_5fiter',['arg_iter',['../classstan_1_1gm_1_1arg__iter.html#addc4d554b12927d3e099cb78e84b4c69',1,'stan::gm::arg_iter']]], + ['arg_5fmax_5fdepth',['arg_max_depth',['../classstan_1_1gm_1_1arg__max__depth.html#aa43e5f69ecea1ab64a93d0544f5b2204',1,'stan::gm::arg_max_depth']]], + ['arg_5fmethod',['arg_method',['../classstan_1_1gm_1_1arg__method.html#a0ab921dbf66c5b63669cb77f07d797e9',1,'stan::gm::arg_method']]], + ['arg_5fmetric',['arg_metric',['../classstan_1_1gm_1_1arg__metric.html#a8f59bf4d98051c730af026865135958d',1,'stan::gm::arg_metric']]], + ['arg_5fnesterov',['arg_nesterov',['../classstan_1_1gm_1_1arg__nesterov.html#aff8818db928802f6e048d6a3dcf080ea',1,'stan::gm::arg_nesterov']]], + ['arg_5fnewton',['arg_newton',['../classstan_1_1gm_1_1arg__newton.html#a40a307722a2f91f3c1507261183fd4a2',1,'stan::gm::arg_newton']]], + ['arg_5fnum_5fsamples',['arg_num_samples',['../classstan_1_1gm_1_1arg__num__samples.html#af03561fdb3d19b14fa8ce33db4bfbb92',1,'stan::gm::arg_num_samples']]], + ['arg_5fnum_5fwarmup',['arg_num_warmup',['../classstan_1_1gm_1_1arg__num__warmup.html#a12b94f117fb965fee31d2a53d946a3b9',1,'stan::gm::arg_num_warmup']]], + ['arg_5fnuts',['arg_nuts',['../classstan_1_1gm_1_1arg__nuts.html#a54338616bb4ea3c6cdaa922fe60f6279',1,'stan::gm::arg_nuts']]], + ['arg_5foptimize',['arg_optimize',['../classstan_1_1gm_1_1arg__optimize.html#a212f9e1a9ea25739e42913cd99f6cfa3',1,'stan::gm::arg_optimize']]], + ['arg_5foptimize_5falgo',['arg_optimize_algo',['../classstan_1_1gm_1_1arg__optimize__algo.html#a6c60961805502a27dd60db458155b30e',1,'stan::gm::arg_optimize_algo']]], + ['arg_5foutput',['arg_output',['../classstan_1_1gm_1_1arg__output.html#a00b3df35f243cba8de0e50cacff5f9f8',1,'stan::gm::arg_output']]], + ['arg_5foutput_5ffile',['arg_output_file',['../classstan_1_1gm_1_1arg__output__file.html#a7653a338dae46687a0cd46607cb8df30',1,'stan::gm::arg_output_file']]], + ['arg_5frandom',['arg_random',['../classstan_1_1gm_1_1arg__random.html#a04356fb8dd2badb38de8d957d89ccd25',1,'stan::gm::arg_random']]], + ['arg_5frefresh',['arg_refresh',['../classstan_1_1gm_1_1arg__refresh.html#a1055e8b9beac79398a5efd25106bef73',1,'stan::gm::arg_refresh']]], + ['arg_5frwm',['arg_rwm',['../classstan_1_1gm_1_1arg__rwm.html#a7e6e4430b6cc5d35128899c2d7e7f4c1',1,'stan::gm::arg_rwm']]], + ['arg_5fsample',['arg_sample',['../classstan_1_1gm_1_1arg__sample.html#a76e9dba4b18fff10db3938783e4bbc84',1,'stan::gm::arg_sample']]], + ['arg_5fsample_5falgo',['arg_sample_algo',['../classstan_1_1gm_1_1arg__sample__algo.html#a677c78a97f6e522c2b532d5ec8cdc436',1,'stan::gm::arg_sample_algo']]], + ['arg_5fsave_5fiterations',['arg_save_iterations',['../classstan_1_1gm_1_1arg__save__iterations.html#ac3c6147547688bf229a5a229b761891f',1,'stan::gm::arg_save_iterations']]], + ['arg_5fsave_5fwarmup',['arg_save_warmup',['../classstan_1_1gm_1_1arg__save__warmup.html#abc63cf780ff0ec05b668034557e66e5a',1,'stan::gm::arg_save_warmup']]], + ['arg_5fseed',['arg_seed',['../classstan_1_1gm_1_1arg__seed.html#a49ef4eab0312fb9eebdaf8901a24a50f',1,'stan::gm::arg_seed']]], + ['arg_5fstatic',['arg_static',['../classstan_1_1gm_1_1arg__static.html#aad5c9ed706c879ffc39b2f44b4ce9aef',1,'stan::gm::arg_static']]], + ['arg_5fstepsize',['arg_stepsize',['../classstan_1_1gm_1_1arg__stepsize.html#ab10f7c015e43cae0bd66ebd7d2ea60bb',1,'stan::gm::arg_stepsize']]], + ['arg_5fstepsize_5fjitter',['arg_stepsize_jitter',['../classstan_1_1gm_1_1arg__stepsize__jitter.html#af57b445faa0178cddfc60633a0452e02',1,'stan::gm::arg_stepsize_jitter']]], + ['arg_5ftest',['arg_test',['../classstan_1_1gm_1_1arg__test.html#a09019b7ca0e874ecc2946309b1032acd',1,'stan::gm::arg_test']]], + ['arg_5ftest_5fgrad_5feps',['arg_test_grad_eps',['../classstan_1_1gm_1_1arg__test__grad__eps.html#a1105ef70c0defa9892e9bd5993fd24cf',1,'stan::gm::arg_test_grad_eps']]], + ['arg_5ftest_5fgrad_5ferr',['arg_test_grad_err',['../classstan_1_1gm_1_1arg__test__grad__err.html#a3c862ad4e9f4ae7010ca45c77da8d380',1,'stan::gm::arg_test_grad_err']]], + ['arg_5ftest_5fgradient',['arg_test_gradient',['../classstan_1_1gm_1_1arg__test__gradient.html#aa61549ae85bb062c3cc5f76668b3e1dd',1,'stan::gm::arg_test_gradient']]], + ['arg_5fthin',['arg_thin',['../classstan_1_1gm_1_1arg__thin.html#a968a02a29a6fc8097ce610f3be4e5ac9',1,'stan::gm::arg_thin']]], + ['arg_5ftolerance',['arg_tolerance',['../classstan_1_1gm_1_1arg__tolerance.html#aba6a7ae537bca04e284af54e9a231e3f',1,'stan::gm::arg_tolerance']]], + ['arg_5funit_5fe',['arg_unit_e',['../classstan_1_1gm_1_1arg__unit__e.html#a6772c5923ce0c23db100e1157aa232c5',1,'stan::gm::arg_unit_e']]], + ['argument',['argument',['../classstan_1_1gm_1_1argument.html#ad3b825604d30e95f4e66eef6cbadf533',1,'stan::gm::argument::argument()'],['../classstan_1_1gm_1_1argument.html#af5c733afb4fdc0f55795f8cdd2891d7f',1,'stan::gm::argument::argument(const std::string name)']]], + ['argument_5fparser',['argument_parser',['../classstan_1_1gm_1_1argument__parser.html#a540ddee5190ee5dd85a8773d98a5cb83',1,'stan::gm::argument_parser']]], + ['argument_5fprobe',['argument_probe',['../classstan_1_1gm_1_1argument__probe.html#a82b991e17fd517f1a04ba905acb545be',1,'stan::gm::argument_probe']]], + ['array',['array',['../structstan_1_1math_1_1array__builder.html#a725410c59aa282c6b23c52fd252aa1a3',1,'stan::math::array_builder']]], + ['array_5fbuilder',['array_builder',['../structstan_1_1math_1_1array__builder.html#a8e2649b71c980137fa5d86433d2be50c',1,'stan::math::array_builder']]], + ['array_5fliteral',['array_literal',['../structstan_1_1gm_1_1array__literal.html#a462b152d7868e7d588994d215e81b26d',1,'stan::gm::array_literal::array_literal()'],['../structstan_1_1gm_1_1array__literal.html#a08529fbee87e23323340317b11f4a71c',1,'stan::gm::array_literal::array_literal(const std::vector< expression > &args)']]], + ['as_5fbool',['as_bool',['../namespacestan_1_1agrad.html#a0e0e98b7b8248f6303a3ae565a46305c',1,'stan::agrad::as_bool()'],['../namespacestan_1_1math.html#a6ad1c484220022b3abfb79c16d1d7f72',1,'stan::math::as_bool()']]], + ['as_5fbool_3c_20int_20_3e',['as_bool< int >',['../namespacestan_1_1math.html#a86b5156aa25d21592dbd3624aae1ea39',1,'stan::math']]], + ['asin',['asin',['../namespacestan_1_1agrad.html#a376ec296a189c47edee18e50ba72b2f5',1,'stan::agrad::asin(const var &a)'],['../namespacestan_1_1agrad.html#afd98c31d8d43e552287de2dc9170ff3e',1,'stan::agrad::asin(const fvar< T > &x)']]], + ['asinh',['asinh',['../namespacestan_1_1agrad.html#aaf137922ce743a1f63adfaed2630dfe6',1,'stan::agrad::asinh(const fvar< T > &x)'],['../namespacestan_1_1agrad.html#a0fd3a2e895d3c03de0b670b3ba8b3b3c',1,'stan::agrad::asinh(const stan::agrad::var &a)']]], + ['assign',['assign',['../namespacestan_1_1math.html#a5f394c15ea3eb97743382631f91801cf',1,'stan::math::assign(LHS &lhs, const RHS &rhs)'],['../namespacestan_1_1math.html#a5371f0f914e9b79a0700577e5557c0b7',1,'stan::math::assign(Eigen::Matrix< LHS, R1, C1 > &x, const Eigen::Matrix< RHS, R2, C2 > &y)'],['../namespacestan_1_1math.html#a0a80c719463c4e3caa03df731e2c2cb9',1,'stan::math::assign(Eigen::Matrix< LHS, R, C > &x, const Eigen::Matrix< RHS, R, C > &y)'],['../namespacestan_1_1math.html#aa4af3a90ad3b5ec1507dfc1823fdb8da',1,'stan::math::assign(Eigen::Block< LHS > x, const Eigen::Matrix< RHS, R, C > &y)'],['../namespacestan_1_1math.html#a2c6dec98c71fd478c2ee16bc274b464d',1,'stan::math::assign(std::vector< LHS > &x, const std::vector< RHS > &y)']]], + ['assignment',['assignment',['../structstan_1_1gm_1_1assignment.html#ad3690469ab15526cf947f92e2ae9aef3',1,'stan::gm::assignment::assignment()'],['../structstan_1_1gm_1_1assignment.html#a5f93f2431c52a23bab7288491a6f02b7',1,'stan::gm::assignment::assignment(variable_dims &var_dims, expression &expr)']]], + ['atan',['atan',['../namespacestan_1_1agrad.html#a0dfbfab0e6051aa349a6090f102f6742',1,'stan::agrad::atan(const var &a)'],['../namespacestan_1_1agrad.html#a6546708d4dc0f19756f4e2380eb9b9e4',1,'stan::agrad::atan(const fvar< T > &x)']]], + ['atan2',['atan2',['../namespacestan_1_1agrad.html#ae76a1cfac43312edacb47fd87fc2393a',1,'stan::agrad::atan2(const var &a, const var &b)'],['../namespacestan_1_1agrad.html#a8d5bc116190d363cc639326df5e04aea',1,'stan::agrad::atan2(const var &a, const double &b)'],['../namespacestan_1_1agrad.html#ad1a44f881f4e456e06374ee511387769',1,'stan::agrad::atan2(const double &a, const var &b)'],['../namespacestan_1_1agrad.html#aed06ff6c2ea34535f6c75ea7582aa203',1,'stan::agrad::atan2(const fvar< T > &x1, const fvar< T > &x2)'],['../namespacestan_1_1agrad.html#aa982d2dff799ce857c3c0853628d3f1f',1,'stan::agrad::atan2(const double x1, const fvar< T > &x2)'],['../namespacestan_1_1agrad.html#ac193d89ea00a38466c89eff9c13bcd48',1,'stan::agrad::atan2(const fvar< T > &x1, const double x2)'],['../namespacestan_1_1agrad.html#a675cbb776b5402953bd180b4d6e1d90b',1,'stan::agrad::atan2(const var &a, const double b)'],['../namespacestan_1_1agrad.html#a9963689c927130aef845582a1160678b',1,'stan::agrad::atan2(const double a, const var &b)']]], + ['atanh',['atanh',['../namespacestan_1_1agrad.html#a5063c907c581ab5a2e735f8cccd7aad3',1,'stan::agrad::atanh(const fvar< T > &x)'],['../namespacestan_1_1agrad.html#af87034c9a4d6edfc1df46d96069fd68c',1,'stan::agrad::atanh(const stan::agrad::var &a)']]], + ['autocorrelation',['autocorrelation',['../classstan_1_1mcmc_1_1chains.html#a4f666226faa6abbf0083da66da0a8d10',1,'stan::mcmc::chains::autocorrelation(const int chain, const int index)'],['../classstan_1_1mcmc_1_1chains.html#ab1de31b2bda945c27829ac7823bef3f2',1,'stan::mcmc::chains::autocorrelation(const int chain, const std::string &name)'],['../namespacestan_1_1prob.html#afca2f21cad2a74d9d5ff27c4ae47d6cf',1,'stan::prob::autocorrelation(const std::vector< T > &y, std::vector< T > &ac, Eigen::FFT< T > &fft)'],['../namespacestan_1_1prob.html#a426d883667d0707d0d6d6337831e41c4',1,'stan::prob::autocorrelation(const std::vector< T > &y, std::vector< T > &ac)']]], + ['autocovariance',['autocovariance',['../classstan_1_1mcmc_1_1chains.html#a24f75bd6ba8e24fe99b54c9226a18320',1,'stan::mcmc::chains::autocovariance(const int chain, const int index)'],['../classstan_1_1mcmc_1_1chains.html#a3d2a87745cfded05b30a8b517c4e5a88',1,'stan::mcmc::chains::autocovariance(const int chain, const std::string &name)'],['../namespacestan_1_1prob.html#ac4390e4cb6742ab59c9d6c401cd7a188',1,'stan::prob::autocovariance(const std::vector< T > &y, std::vector< T > &acov, Eigen::FFT< T > &fft)'],['../namespacestan_1_1prob.html#a73aec38db728d2f43f80fbdcc314b3db',1,'stan::prob::autocovariance(const std::vector< T > &y, std::vector< T > &acov)']]], + ['available',['available',['../classstan_1_1io_1_1reader.html#a581d87c0d6f4fbcc889fcda61d9da129',1,'stan::io::reader']]], + ['available_5fi',['available_i',['../classstan_1_1io_1_1reader.html#a69f82bd5d88795b0012d04b239685858',1,'stan::io::reader']]] +]; diff --git a/doc/api/html/search/functions_62.html b/doc/api/html/search/functions_62.html new file mode 100644 index 00000000000..def0606e751 --- /dev/null +++ b/doc/api/html/search/functions_62.html @@ -0,0 +1,25 @@ + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/doc/api/html/search/functions_62.js b/doc/api/html/search/functions_62.js new file mode 100644 index 00000000000..0c0fa73fc54 --- /dev/null +++ b/doc/api/html/search/functions_62.js @@ -0,0 +1,52 @@ +var searchData= +[ + ['bare',['bare',['../classstan_1_1io_1_1cmd__line.html#a3879e1290c19f6580ee0285dc1625675',1,'stan::io::cmd_line']]], + ['bare_5fsize',['bare_size',['../classstan_1_1io_1_1cmd__line.html#a5cfdf91b7237b7db7cd9ea0b7de571b6',1,'stan::io::cmd_line']]], + ['base_5fadapter',['base_adapter',['../classstan_1_1mcmc_1_1base__adapter.html#ac1d2bf71f98f15445b607766f5451bba',1,'stan::mcmc::base_adapter']]], + ['base_5fhamiltonian',['base_hamiltonian',['../classstan_1_1mcmc_1_1base__hamiltonian.html#aff93f8e3e83acfe9b8e6f88ed1a63c85',1,'stan::mcmc::base_hamiltonian']]], + ['base_5fhmc',['base_hmc',['../classstan_1_1mcmc_1_1base__hmc.html#a8c414cb92694b17a02b3d2a799499870',1,'stan::mcmc::base_hmc']]], + ['base_5fintegrator',['base_integrator',['../classstan_1_1mcmc_1_1base__integrator.html#aca59e40275dc1404de7077455e267d3d',1,'stan::mcmc::base_integrator']]], + ['base_5fleapfrog',['base_leapfrog',['../classstan_1_1mcmc_1_1base__leapfrog.html#a633d75fe0c95602fe6546e5a2cb217ae',1,'stan::mcmc::base_leapfrog']]], + ['base_5fmcmc',['base_mcmc',['../classstan_1_1mcmc_1_1base__mcmc.html#a4fb817f487dc4fe86a91acca8109ac2a',1,'stan::mcmc::base_mcmc']]], + ['base_5fnuts',['base_nuts',['../classstan_1_1mcmc_1_1base__nuts.html#a553804373eddffd3b7079fe7cf25a611',1,'stan::mcmc::base_nuts']]], + ['base_5fparam_5fname',['base_param_name',['../print_8hpp.html#a44680d963f2fac28eca89f94f3eb99dc',1,'print.hpp']]], + ['base_5fstatic_5fhmc',['base_static_hmc',['../classstan_1_1mcmc_1_1base__static__hmc.html#adc496c9b987be1297a40fa0e07e44fdf',1,'stan::mcmc::base_static_hmc']]], + ['base_5ftype_5fto_5fstring',['base_type_to_string',['../namespacestan_1_1gm.html#a9c695724226e13246eefc23216841ffc',1,'stan::gm']]], + ['base_5fvar_5fdecl',['base_var_decl',['../structstan_1_1gm_1_1base__var__decl.html#afbf37085102e8852cc11bf7d3cc4e07a',1,'stan::gm::base_var_decl::base_var_decl()'],['../structstan_1_1gm_1_1base__var__decl.html#af89f3d0b355688ee0099f6300c045c19',1,'stan::gm::base_var_decl::base_var_decl(const base_expr_type &base_type)'],['../structstan_1_1gm_1_1base__var__decl.html#ad83579cb2af06544b1367d91d041b2ab',1,'stan::gm::base_var_decl::base_var_decl(const std::string &name, const std::vector< expression > &dims, const base_expr_type &base_type)']]], + ['basic_5fvalidate',['basic_validate',['../structstan_1_1gm_1_1validate__var__decl__visgen.html#aee960e3728540789c2da4b55b95a6a14',1,'stan::gm::validate_var_decl_visgen']]], + ['begin_5fupdate_5fp',['begin_update_p',['../classstan_1_1mcmc_1_1base__leapfrog.html#a32f9d6a2fdca2ac0b81941bece5ada93',1,'stan::mcmc::base_leapfrog::begin_update_p()'],['../classstan_1_1mcmc_1_1expl__leapfrog.html#a8db6aa8c6efa80ced2123390d02d1079',1,'stan::mcmc::expl_leapfrog::begin_update_p()']]], + ['bernoulli_5fccdf_5flog',['bernoulli_ccdf_log',['../namespacestan_1_1prob.html#a726363482ee79c9eec5168e0662878ee',1,'stan::prob']]], + ['bernoulli_5fcdf',['bernoulli_cdf',['../namespacestan_1_1prob.html#acc2b8587b0d9e02ae857a2b3f5cba35d',1,'stan::prob']]], + ['bernoulli_5fcdf_5flog',['bernoulli_cdf_log',['../namespacestan_1_1prob.html#aba32173189278464e98a8126eb552cde',1,'stan::prob']]], + ['bernoulli_5flog',['bernoulli_log',['../namespacestan_1_1prob.html#a0bc33fe590391b82dab751bdadaf7b62',1,'stan::prob::bernoulli_log(const T_n &n, const T_prob &theta)'],['../namespacestan_1_1prob.html#a219ad54841aea16fc57524fca232f2e7',1,'stan::prob::bernoulli_log(const T_y &n, const T_prob &theta)']]], + ['bernoulli_5flogit_5flog',['bernoulli_logit_log',['../namespacestan_1_1prob.html#a5c8219bcfefefbfb4035de576837ab45',1,'stan::prob::bernoulli_logit_log(const T_n &n, const T_prob &theta)'],['../namespacestan_1_1prob.html#a41019ebe0811bb5c4dab0b3c2c836680',1,'stan::prob::bernoulli_logit_log(const T_n &n, const T_prob &theta)']]], + ['bernoulli_5frng',['bernoulli_rng',['../namespacestan_1_1prob.html#afea2d4a81899214550a87b8a09220620',1,'stan::prob']]], + ['bessel_5ffirst_5fkind',['bessel_first_kind',['../namespacestan_1_1agrad.html#a15ef0c83a99d3629e9ea8eb982ffe91c',1,'stan::agrad::bessel_first_kind(int v, const fvar< T > &z)'],['../namespacestan_1_1agrad.html#afc6ca13242211e5b43d3fcfb3bc8f3a7',1,'stan::agrad::bessel_first_kind(const int &v, const var &a)'],['../namespacestan_1_1math.html#aebfb3835848bd8550192cd5e090d3b5a',1,'stan::math::bessel_first_kind()']]], + ['bessel_5fsecond_5fkind',['bessel_second_kind',['../namespacestan_1_1agrad.html#a70cd3f5b630e4cae786470b8a7d70c62',1,'stan::agrad::bessel_second_kind(int v, const fvar< T > &z)'],['../namespacestan_1_1agrad.html#a17fd5151af2e0e715f84fbdcdea202cd',1,'stan::agrad::bessel_second_kind(const int &v, const var &a)'],['../namespacestan_1_1math.html#a645ce13c6454913ec39be807751604dc',1,'stan::math::bessel_second_kind()']]], + ['beta_5fbinomial_5fccdf_5flog',['beta_binomial_ccdf_log',['../namespacestan_1_1prob.html#a5d2307b3b214c6a219dc1ae47cbba4d0',1,'stan::prob']]], + ['beta_5fbinomial_5fcdf',['beta_binomial_cdf',['../namespacestan_1_1prob.html#a6549c9b89bee939a79c35a797977e48e',1,'stan::prob']]], + ['beta_5fbinomial_5fcdf_5flog',['beta_binomial_cdf_log',['../namespacestan_1_1prob.html#a260dee97213ab1ea2bcb345f2e5699f8',1,'stan::prob']]], + ['beta_5fbinomial_5flog',['beta_binomial_log',['../namespacestan_1_1prob.html#a6b05e0ee6a8e83b15ab01a8bd2f75621',1,'stan::prob::beta_binomial_log(const T_n &n, const T_N &N, const T_size1 &alpha, const T_size2 &beta)'],['../namespacestan_1_1prob.html#a08bb45fa7fefa94d7e243b4df5686909',1,'stan::prob::beta_binomial_log(const T_n &n, const T_N &N, const T_size1 &alpha, const T_size2 &beta)']]], + ['beta_5fbinomial_5frng',['beta_binomial_rng',['../namespacestan_1_1prob.html#a0ab5a0632c3782b2feed87f13731a3cb',1,'stan::prob']]], + ['beta_5fccdf_5flog',['beta_ccdf_log',['../namespacestan_1_1prob.html#a2cf7120d50b02585fd722748e624b13e',1,'stan::prob']]], + ['beta_5fcdf',['beta_cdf',['../namespacestan_1_1prob.html#ae99fab56f54c2e0f879345eee28b82ca',1,'stan::prob']]], + ['beta_5fcdf_5flog',['beta_cdf_log',['../namespacestan_1_1prob.html#ab63ea302e7cd29f7a5f3f23152b3de1f',1,'stan::prob']]], + ['beta_5flog',['beta_log',['../namespacestan_1_1prob.html#adcb4e073c7510ab55a2fd6f310168559',1,'stan::prob::beta_log(const T_y &y, const T_scale_succ &alpha, const T_scale_fail &beta)'],['../namespacestan_1_1prob.html#a76da5fc9b833aaf3844f98e9d032bb83',1,'stan::prob::beta_log(const T_y &y, const T_scale_succ &alpha, const T_scale_fail &beta)']]], + ['beta_5frng',['beta_rng',['../namespacestan_1_1prob.html#af9ffa205c1948b93323a12b13954558b',1,'stan::prob']]], + ['bfgslinesearch',['BFGSLineSearch',['../classstan_1_1optimization_1_1_b_f_g_s_line_search.html#a4979246eff3a7ea7e456ff6a78b9f947',1,'stan::optimization::BFGSLineSearch']]], + ['bfgsminimizer',['BFGSMinimizer',['../classstan_1_1optimization_1_1_b_f_g_s_minimizer.html#a49e517b4678f438f201bea8576ca1b2f',1,'stan::optimization::BFGSMinimizer']]], + ['bfgsoptions',['BFGSOptions',['../structstan_1_1optimization_1_1_b_f_g_s_minimizer_1_1_b_f_g_s_options.html#a73b45c4d12854633eaa946de5c3def7b',1,'stan::optimization::BFGSMinimizer::BFGSOptions']]], + ['binary_5flog_5floss',['binary_log_loss',['../namespacestan_1_1agrad.html#af5d9abde22a78da0378d464f1ce24544',1,'stan::agrad::binary_log_loss(const int y, const fvar< T > &y_hat)'],['../namespacestan_1_1agrad.html#acbbcd95da81df518f28454f7d2cb8772',1,'stan::agrad::binary_log_loss(const int y, const stan::agrad::var &y_hat)'],['../namespacestan_1_1math.html#add2a043f562537b8cc57bb35780ac5b5',1,'stan::math::binary_log_loss()']]], + ['binary_5fop',['binary_op',['../structstan_1_1gm_1_1binary__op.html#a65335603651a7ea889960d4cddebcac4',1,'stan::gm::binary_op::binary_op()'],['../structstan_1_1gm_1_1binary__op.html#a78c4a1e12c510a73c172bc8155118678',1,'stan::gm::binary_op::binary_op(const expression &left, const std::string &op, const expression &right)']]], + ['binomial_5fccdf_5flog',['binomial_ccdf_log',['../namespacestan_1_1prob.html#a6a5c4f320e9c4fd342a2bc95cd5cab06',1,'stan::prob']]], + ['binomial_5fcdf',['binomial_cdf',['../namespacestan_1_1prob.html#aeed3ba1a20bc8adb20b6a15d35945533',1,'stan::prob']]], + ['binomial_5fcdf_5flog',['binomial_cdf_log',['../namespacestan_1_1prob.html#ab5b95dc562c6fc2d9474debaae03903c',1,'stan::prob']]], + ['binomial_5fcoefficient_5flog',['binomial_coefficient_log',['../namespacestan_1_1agrad.html#a4ec7cdb5d5ad2c9b0a0257398570e55b',1,'stan::agrad::binomial_coefficient_log(const fvar< T > &x1, const fvar< T > &x2)'],['../namespacestan_1_1agrad.html#a02695b9403bc2bd772610aec257b71ab',1,'stan::agrad::binomial_coefficient_log(const fvar< T > &x1, const double x2)'],['../namespacestan_1_1agrad.html#a9b9e7ad2199a7cbcf958b4bab56eb5ba',1,'stan::agrad::binomial_coefficient_log(const double x1, const fvar< T > &x2)'],['../namespacestan_1_1math.html#a27dad23d38c6d5e74c65e7571c70272e',1,'stan::math::binomial_coefficient_log()']]], + ['binomial_5flog',['binomial_log',['../namespacestan_1_1prob.html#ad12aae68875554db5a4e4934bfa1e24a',1,'stan::prob::binomial_log(const T_n &n, const T_N &N, const T_prob &theta)'],['../namespacestan_1_1prob.html#a255338df1c9dc1edcaf556ec019e70f9',1,'stan::prob::binomial_log(const T_n &n, const T_N &N, const T_prob &theta)']]], + ['binomial_5flogit_5flog',['binomial_logit_log',['../namespacestan_1_1prob.html#aeec51733f46d26326f271edaeb2c85fd',1,'stan::prob::binomial_logit_log(const T_n &n, const T_N &N, const T_prob &alpha)'],['../namespacestan_1_1prob.html#a36b4660673caceb27df26e36771d3b82',1,'stan::prob::binomial_logit_log(const T_n &n, const T_N &N, const T_prob &alpha)']]], + ['binomial_5frng',['binomial_rng',['../namespacestan_1_1prob.html#a4fedb58fc6bbe6d006bab9fe0b72c2d2',1,'stan::prob']]], + ['block',['block',['../namespacestan_1_1math.html#af163dfd071f1cff0297b7418156563a8',1,'stan::math']]], + ['boost_5ffusion_5fadapt_5fstruct',['BOOST_FUSION_ADAPT_STRUCT',['../program__grammar__def_8hpp.html#ada0ff5807ec701c3ec7f2ecc0d99aaf4',1,'BOOST_FUSION_ADAPT_STRUCT(stan::gm::program,(std::vector< stan::gm::var_decl >, data_decl_)(DUMMY_STRUCT::type, derived_data_decl_)(std::vector< stan::gm::var_decl >, parameter_decl_)(DUMMY_STRUCT::type, derived_decl_)(stan::gm::statement, statement_)(DUMMY_STRUCT::type, generated_decl_)) namespace stan: program_grammar_def.hpp'],['../statement__grammar__def_8hpp.html#a7bcb20f801376d20d08e7bbf352e88b8',1,'BOOST_FUSION_ADAPT_STRUCT(stan::gm::assignment,(stan::gm::variable_dims, var_dims_)(stan::gm::expression, expr_)): statement_grammar_def.hpp'],['../statement__grammar__def_8hpp.html#aaa7e207109145caa601bf2d96667b5a8',1,'BOOST_FUSION_ADAPT_STRUCT(stan::gm::variable_dims,(std::string, name_)(std::vector< stan::gm::expression >, dims_)): statement_grammar_def.hpp'],['../statement__grammar__def_8hpp.html#a6961e24e92dd0d1f84976386c45cc1b6',1,'BOOST_FUSION_ADAPT_STRUCT(stan::gm::distribution,(std::string, family_)(std::vector< stan::gm::expression >, args_)): statement_grammar_def.hpp'],['../statement__grammar__def_8hpp.html#a1cae61dafe9d4dd9285b7b6f76d05f92',1,'BOOST_FUSION_ADAPT_STRUCT(stan::gm::for_statement,(std::string, variable_)(stan::gm::range, range_)(stan::gm::statement, statement_)): statement_grammar_def.hpp'],['../statement__grammar__def_8hpp.html#af7c34bfed453a4a6d29961f3abe165cf',1,'BOOST_FUSION_ADAPT_STRUCT(stan::gm::print_statement,(std::vector< stan::gm::printable >, printables_)): statement_grammar_def.hpp'],['../statement__grammar__def_8hpp.html#a25d0b6c291f5f1b8a1c2558998206def',1,'BOOST_FUSION_ADAPT_STRUCT(stan::gm::increment_log_prob_statement,(stan::gm::expression, log_prob_)): statement_grammar_def.hpp'],['../statement__grammar__def_8hpp.html#ad9066625d7cda371ed588877a22cd806',1,'BOOST_FUSION_ADAPT_STRUCT(stan::gm::sample,(stan::gm::expression, expr_)(stan::gm::distribution, dist_)(stan::gm::range, truncation_)): statement_grammar_def.hpp'],['../statement__grammar__def_8hpp.html#acb06b32b35e8c116ccf4275f22cce0aa',1,'BOOST_FUSION_ADAPT_STRUCT(stan::gm::statements,(std::vector< stan::gm::var_decl >, local_decl_)(std::vector< stan::gm::statement >, statements_)): statement_grammar_def.hpp'],['../term__grammar__def_8hpp.html#a2aa48ab7197d456209104ec48170e6e7',1,'BOOST_FUSION_ADAPT_STRUCT(stan::gm::index_op,(stan::gm::expression, expr_)(std::vector< std::vector< stan::gm::expression > >, dimss_)): term_grammar_def.hpp'],['../term__grammar__def_8hpp.html#a480456e9da4c14c5519988cdc778facc',1,'BOOST_FUSION_ADAPT_STRUCT(stan::gm::fun,(std::string, name_)(std::vector< stan::gm::expression >, args_)): term_grammar_def.hpp'],['../term__grammar__def_8hpp.html#a1e81a41b83af331d2ab9038c3ab22c8e',1,'BOOST_FUSION_ADAPT_STRUCT(stan::gm::int_literal,(int, val_)(stan::gm::expr_type, type_)): term_grammar_def.hpp'],['../term__grammar__def_8hpp.html#a449100aff0b5136c9793061cb929bec8',1,'BOOST_FUSION_ADAPT_STRUCT(stan::gm::double_literal,(double, val_)(stan::gm::expr_type, type_)): term_grammar_def.hpp'],['../var__decls__grammar__def_8hpp.html#a1bf1e318d7e36dbd7a26eb65a05fcd13',1,'BOOST_FUSION_ADAPT_STRUCT(stan::gm::int_var_decl,(stan::gm::range, range_)(std::string, name_)(std::vector< stan::gm::expression >, dims_)) BOOST_FUSION_ADAPT_STRUCT(stan: var_decls_grammar_def.hpp']]], + ['build_5ftree',['build_tree',['../classstan_1_1mcmc_1_1base__nuts.html#abfa3f7a87c96c0021bbd4e9a87ad9f4b',1,'stan::mcmc::base_nuts']]], + ['bytes_5fallocated',['bytes_allocated',['../classstan_1_1memory_1_1stack__alloc.html#abcb69b7fce963fc559fea22912d67795',1,'stan::memory::stack_alloc']]] +]; diff --git a/doc/api/html/search/functions_63.html b/doc/api/html/search/functions_63.html new file mode 100644 index 00000000000..9ebe11d691b --- /dev/null +++ b/doc/api/html/search/functions_63.html @@ -0,0 +1,25 @@ + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/doc/api/html/search/functions_63.js b/doc/api/html/search/functions_63.js new file mode 100644 index 00000000000..df6668abc91 --- /dev/null +++ b/doc/api/html/search/functions_63.js @@ -0,0 +1,113 @@ +var searchData= +[ + ['bare_3c_20std_3a_3astring_20_3e',['bare< std::string >',['../namespacestan_1_1io.html#aec5638401c1a9174c2a1755dbb9b9a1c',1,'stan::io']]], + ['calculate_5fchain',['calculate_chain',['../namespacestan_1_1agrad.html#aa16e752d268f0240dab6f484fe0026da',1,'stan::agrad']]], + ['calculate_5fcolumn_5fwidth',['calculate_column_width',['../print_8hpp.html#a5e7bd64dd538b38c24f0950e20336b9e',1,'print.hpp']]], + ['calculate_5fcolumn_5fwidths',['calculate_column_widths',['../print_8hpp.html#aca6645f28f92ff465e290fef0fefa9bc',1,'print.hpp']]], + ['categorical_5flog',['categorical_log',['../namespacestan_1_1prob.html#af95a794f03919aea39098f278d2c59d6',1,'stan::prob::categorical_log(int n, const Eigen::Matrix< T_prob, Eigen::Dynamic, 1 > &theta)'],['../namespacestan_1_1prob.html#a246986bd8f60af47c1f81ebb814dd563',1,'stan::prob::categorical_log(const typename Eigen::Matrix< T_prob, Eigen::Dynamic, 1 >::size_type n, const Eigen::Matrix< T_prob, Eigen::Dynamic, 1 > &theta)'],['../namespacestan_1_1prob.html#a02f82adf130605305c98f4e011bbe9ac',1,'stan::prob::categorical_log(const std::vector< int > &ns, const Eigen::Matrix< T_prob, Eigen::Dynamic, 1 > &theta)'],['../namespacestan_1_1prob.html#a16675570c76e20595a8a6b7b1beeabea',1,'stan::prob::categorical_log(const std::vector< int > &ns, const Eigen::Matrix< T_prob, Eigen::Dynamic, 1 > &theta)']]], + ['categorical_5flogit_5flog',['categorical_logit_log',['../namespacestan_1_1prob.html#a2a925c941d407c44cac03cfdee07c20f',1,'stan::prob::categorical_logit_log(int n, const Eigen::Matrix< T_prob, Eigen::Dynamic, 1 > &beta)'],['../namespacestan_1_1prob.html#a56b41ad5a9d6c90837fe573771174921',1,'stan::prob::categorical_logit_log(int n, const Eigen::Matrix< T_prob, Eigen::Dynamic, 1 > &beta)'],['../namespacestan_1_1prob.html#a3fa98ec586dbbbceafb56261324b5170',1,'stan::prob::categorical_logit_log(const std::vector< int > &ns, const Eigen::Matrix< T_prob, Eigen::Dynamic, 1 > &beta)'],['../namespacestan_1_1prob.html#a9195250cdb8eb73cbfc24e6b78ce8fcb',1,'stan::prob::categorical_logit_log(const std::vector< int > &ns, const Eigen::Matrix< T_prob, Eigen::Dynamic, 1 > &beta)']]], + ['categorical_5frng',['categorical_rng',['../namespacestan_1_1prob.html#a4c3ca0ee1deca1cacd5211bbc995152e',1,'stan::prob']]], + ['cauchy_5fccdf_5flog',['cauchy_ccdf_log',['../namespacestan_1_1prob.html#ac70c31a88a9078a1abe3b7404504f1fe',1,'stan::prob']]], + ['cauchy_5fcdf',['cauchy_cdf',['../namespacestan_1_1prob.html#a47c7985de17346e84f8d63941d094c6f',1,'stan::prob']]], + ['cauchy_5fcdf_5flog',['cauchy_cdf_log',['../namespacestan_1_1prob.html#a438076c7412e6cc425b59489fd2288c3',1,'stan::prob']]], + ['cauchy_5flog',['cauchy_log',['../namespacestan_1_1prob.html#a336c31f3968917b4cb73fdd6bcb7dbda',1,'stan::prob::cauchy_log(const T_y &y, const T_loc &mu, const T_scale &sigma)'],['../namespacestan_1_1prob.html#adeee6144ac19be6775669835d4b0a544',1,'stan::prob::cauchy_log(const T_y &y, const T_loc &mu, const T_scale &sigma)']]], + ['cauchy_5frng',['cauchy_rng',['../namespacestan_1_1prob.html#a018d09865f9ab743ec78422a4e69d2d0',1,'stan::prob']]], + ['cbrt',['cbrt',['../namespacestan_1_1agrad.html#a183eb686f1c72d5de6a1997e53bd2b49',1,'stan::agrad::cbrt(const fvar< T > &x)'],['../namespacestan_1_1agrad.html#a56daa2a3973305eca89f54b45b215b08',1,'stan::agrad::cbrt(const stan::agrad::var &a)']]], + ['ceil',['ceil',['../namespacestan_1_1agrad.html#a3edfb95b57f8b42c6c68968628ba0158',1,'stan::agrad::ceil(const var &a)'],['../namespacestan_1_1agrad.html#ab5aa6d910a8a47ea9fc1b6199d710069',1,'stan::agrad::ceil(const fvar< T > &x)']]], + ['central_5finterval',['central_interval',['../classstan_1_1mcmc_1_1chains.html#afc466fb86c162616dc6db2d4a6904e81',1,'stan::mcmc::chains::central_interval(const int chain, const int index, const double prob)'],['../classstan_1_1mcmc_1_1chains.html#a819d8aff3c3b7c40de79e493850deba3',1,'stan::mcmc::chains::central_interval(const int index, const double prob)'],['../classstan_1_1mcmc_1_1chains.html#a3c52c722eb9f5d1bde7b27307602f592',1,'stan::mcmc::chains::central_interval(const int chain, const std::string &name, const double prob)'],['../classstan_1_1mcmc_1_1chains.html#a7dcc333dfe0d01bf595700bd72e5999f',1,'stan::mcmc::chains::central_interval(const std::string &name, const double prob)']]], + ['chain',['chain',['../classstan_1_1agrad_1_1vari.html#aa0a84901028b116fad7020b30b926b98',1,'stan::agrad::vari::chain()'],['../classstan_1_1agrad_1_1partials__vari.html#a0fa792b38fdadfd389dcffcea597deeb',1,'stan::agrad::partials_vari::chain()'],['../classstan_1_1agrad_1_1chainable.html#a4d1b4d61c1b10d6da4ababce3d276592',1,'stan::agrad::chainable::chain()'],['../classstan_1_1agrad_1_1precomp__v__vari.html#a009196476cbeca0b4721a2615e275d10',1,'stan::agrad::precomp_v_vari::chain()'],['../classstan_1_1agrad_1_1precomputed__gradients__vari.html#a31b3e07fec41f84ae8948353a6fbff1d',1,'stan::agrad::precomputed_gradients_vari::chain()'],['../classstan_1_1agrad_1_1stored__gradient__vari.html#ae97f9740598ac7be4c3af5769a54ac19',1,'stan::agrad::stored_gradient_vari::chain()']]], + ['chainable',['chainable',['../classstan_1_1agrad_1_1chainable.html#a7a645b2e90197e1d6a0431707b7fad59',1,'stan::agrad::chainable']]], + ['chainable_5falloc',['chainable_alloc',['../classstan_1_1agrad_1_1chainable__alloc.html#a0e5e6212324cb2453fd58b961aa1f098',1,'stan::agrad::chainable_alloc']]], + ['chains',['chains',['../classstan_1_1mcmc_1_1chains.html#ac3aa526b28133ca5e40369f1267abd51',1,'stan::mcmc::chains::chains(const Eigen::Matrix< std::string, Eigen::Dynamic, 1 > &param_names)'],['../classstan_1_1mcmc_1_1chains.html#a9155b524e66935f9e30bac5d6ae31a53',1,'stan::mcmc::chains::chains(const stan::io::stan_csv &stan_csv)']]], + ['check_5fbounded',['check_bounded',['../namespacestan_1_1math.html#a244fb67601cb568b79137450f934047b',1,'stan::math::check_bounded(const char *function, const T_y &y, const T_low &low, const T_high &high, const char *name, T_result *result)'],['../namespacestan_1_1math.html#a1e00f0db84045333d946bb2a49b924ac',1,'stan::math::check_bounded(const char *function, const T_y &y, const T_low &low, const T_high &high, const char *name)']]], + ['check_5fcholesky_5ffactor',['check_cholesky_factor',['../namespacestan_1_1math.html#a6ea62b7ae38dc4b6a84bfe90f72b1fc9',1,'stan::math::check_cholesky_factor(const char *function, const Eigen::Matrix< T_y, Eigen::Dynamic, Eigen::Dynamic > &y, const char *name, T_result *result)'],['../namespacestan_1_1math.html#ab78172933a2bd63bdd511f062564a505',1,'stan::math::check_cholesky_factor(const char *function, const Eigen::Matrix< T, Eigen::Dynamic, Eigen::Dynamic > &y, const char *name, T *result=0)'],['../namespacestan_1_1math.html#a63e498bfd9699c99b57b207e2869023a',1,'stan::math::check_cholesky_factor(const char *function, const Eigen::Matrix< T_y, Eigen::Dynamic, Eigen::Dynamic > &y, T_result *result)'],['../namespacestan_1_1math.html#a1bba6a9591ff4834950d8819d17ec105',1,'stan::math::check_cholesky_factor(const char *function, const Eigen::Matrix< T, Eigen::Dynamic, Eigen::Dynamic > &y, T *result=0)']]], + ['check_5fconsistent_5fsize',['check_consistent_size',['../namespacestan_1_1math.html#a8987da44a92a90edb79fd84fd39e39d3',1,'stan::math']]], + ['check_5fconsistent_5fsizes',['check_consistent_sizes',['../namespacestan_1_1math.html#ac0e0ad1687b604c6f0667a12922a2545',1,'stan::math::check_consistent_sizes(const char *function, const T1 &x1, const T2 &x2, const char *name1, const char *name2, T_result *result)'],['../namespacestan_1_1math.html#a0a4c9f7aec5e75731b7e3d0c33a758b6',1,'stan::math::check_consistent_sizes(const char *function, const T1 &x1, const T2 &x2, const T3 &x3, const char *name1, const char *name2, const char *name3, T_result *result)'],['../namespacestan_1_1math.html#a1244db32f5cb1447091b8f7965fe09d6',1,'stan::math::check_consistent_sizes(const char *function, const T1 &x1, const T2 &x2, const T3 &x3, const T4 &x4, const char *name1, const char *name2, const char *name3, const char *name4, T_result *result)']]], + ['check_5fcorr_5fmatrix',['check_corr_matrix',['../namespacestan_1_1math.html#a19892bf98f113034430413117fddd012',1,'stan::math::check_corr_matrix(const char *function, const Eigen::Matrix< T_y, Eigen::Dynamic, Eigen::Dynamic > &y, const char *name, T_result *result)'],['../namespacestan_1_1math.html#ad32dc573d6046854e39913596554961b',1,'stan::math::check_corr_matrix(const char *function, const Eigen::Matrix< T, Eigen::Dynamic, Eigen::Dynamic > &y, const char *name, T *result=0)']]], + ['check_5fcov_5fmatrix',['check_cov_matrix',['../namespacestan_1_1math.html#a90326b7bfecdcd28d2555c001ca7cf0f',1,'stan::math::check_cov_matrix(const char *function, const Eigen::Matrix< T_y, Eigen::Dynamic, Eigen::Dynamic > &y, const char *name, T_result *result)'],['../namespacestan_1_1math.html#adf9d505abaaf8ae26ad366f51d71fbd8',1,'stan::math::check_cov_matrix(const char *function, const Eigen::Matrix< T, Eigen::Dynamic, Eigen::Dynamic > &y, const char *name, T *result=0)'],['../namespacestan_1_1math.html#aea06d3b49639cdd7f4eee1a9e21d01a0',1,'stan::math::check_cov_matrix(const char *function, const Eigen::Matrix< T_covar, Eigen::Dynamic, Eigen::Dynamic > &Sigma, T_result *result)'],['../namespacestan_1_1math.html#ac60a94eb57a3b80ccdb54d75a38d5aa4',1,'stan::math::check_cov_matrix(const char *function, const Eigen::Matrix< T, Eigen::Dynamic, Eigen::Dynamic > &Sigma, T *result=0)']]], + ['check_5ffinite',['check_finite',['../namespacestan_1_1math.html#af6feab878b8ff447121df2e6a9461680',1,'stan::math::check_finite(const char *function, const T_y &y, const char *name, T_result *result)'],['../namespacestan_1_1math.html#a46c87d5d26732e2860ae58d00f4fdff2',1,'stan::math::check_finite(const char *function, const T &y, const char *name)']]], + ['check_5fgreater',['check_greater',['../namespacestan_1_1math.html#aada3014caf18d49104f7d63d0d6ea15e',1,'stan::math::check_greater(const char *function, const T_y &y, const T_low &low, const char *name, T_result *result)'],['../namespacestan_1_1math.html#aaaf1c4b2de4ed60a01fe919a0b3655fd',1,'stan::math::check_greater(const char *function, const T_y &y, const T_low &low, const char *name)']]], + ['check_5fgreater_5for_5fequal',['check_greater_or_equal',['../namespacestan_1_1math.html#adbb58d3f6d9657f8488bc74a6db0a056',1,'stan::math::check_greater_or_equal(const char *function, const T_y &y, const T_low &low, const char *name, T_result *result)'],['../namespacestan_1_1math.html#abe66408d89f69a9d59b13d7c3d73423b',1,'stan::math::check_greater_or_equal(const char *function, const T_y &y, const T_low &low, const char *name)']]], + ['check_5fldlt_5ffactor',['check_ldlt_factor',['../namespacestan_1_1math.html#ac9067bd3252ec66389f27fb9147a765f',1,'stan::math::check_ldlt_factor(const char *function, stan::math::LDLT_factor< T, R, C > &A, const char *name, T_result *result)'],['../namespacestan_1_1math.html#a1333847e7f49a3e4ddf504e0508a2503',1,'stan::math::check_ldlt_factor(const char *function, stan::math::LDLT_factor< T, R, C > &A, const char *name, T *result=0)']]], + ['check_5fless',['check_less',['../namespacestan_1_1math.html#a7187754b7dfb0727664c3bed40ccf7b4',1,'stan::math::check_less(const char *function, const T_y &y, const T_high &high, const char *name, T_result *result)'],['../namespacestan_1_1math.html#a359cf57677ad750cbe12441ba34df391',1,'stan::math::check_less(const char *function, const T_y &y, const T_high &high, const char *name)']]], + ['check_5fless_5for_5fequal',['check_less_or_equal',['../namespacestan_1_1math.html#a1c5a1e6a543017c50d64bcdd9d53bd83',1,'stan::math::check_less_or_equal(const char *function, const T_y &y, const T_high &high, const char *name, T_result *result)'],['../namespacestan_1_1math.html#adaaa5ed482610e1a8c0477cdd60e8033',1,'stan::math::check_less_or_equal(const char *function, const T_y &y, const T_high &high, const char *name)']]], + ['check_5flower_5ftriangular',['check_lower_triangular',['../namespacestan_1_1math.html#a54f45f5cee19ad65fdd516e1b855d0fe',1,'stan::math::check_lower_triangular(const char *function, const Eigen::Matrix< T_y, Eigen::Dynamic, Eigen::Dynamic > &y, const char *name, T_result *result)'],['../namespacestan_1_1math.html#a5cd9fc9fd09527b5b8adf811d3d5b5e5',1,'stan::math::check_lower_triangular(const char *function, const Eigen::Matrix< T, Eigen::Dynamic, Eigen::Dynamic > &y, const char *name, T *result=0)']]], + ['check_5fnonnegative',['check_nonnegative',['../namespacestan_1_1math.html#a68e2e1e4423183dabe9e5cdad6bee6c2',1,'stan::math::check_nonnegative(const char *function, const T_y &y, const char *name, T_result *result)'],['../namespacestan_1_1math.html#a88d0fc72c0c2a6612f355cd48ddffab8',1,'stan::math::check_nonnegative(const char *function, const T_y &y, const char *name)']]], + ['check_5fnot_5fnan',['check_not_nan',['../namespacestan_1_1math.html#aee36bc9bba89bed1d1568d20046cd3da',1,'stan::math::check_not_nan(const char *function, const T_y &y, const char *name, T_result *result=0)'],['../namespacestan_1_1math.html#a4d490dd2ffa3a5775cfd4f5347111505',1,'stan::math::check_not_nan(const char *function, const T &y, const char *name)']]], + ['check_5fordered',['check_ordered',['../namespacestan_1_1math.html#a55bd442a2e6c56c40d7b60d0079ac8a7',1,'stan::math::check_ordered(const char *function, const Eigen::Matrix< T_y, Eigen::Dynamic, 1 > &y, const char *name, T_result *result)'],['../namespacestan_1_1math.html#a69935f4ef1aad90e6a48c49ba945efc2',1,'stan::math::check_ordered(const char *function, const Eigen::Matrix< T, Eigen::Dynamic, 1 > &y, const char *name, T *result=0)']]], + ['check_5fpos_5fdefinite',['check_pos_definite',['../namespacestan_1_1agrad.html#a5f647d8ef1686ba2b85035726e395f40',1,'stan::agrad::check_pos_definite()'],['../namespacestan_1_1math.html#aa543443cb0c96a44613255c83d593a86',1,'stan::math::check_pos_definite(const char *function, const Eigen::Matrix< T_y, Eigen::Dynamic, Eigen::Dynamic > &y, const char *name, T_result *result)'],['../namespacestan_1_1math.html#aa38f7f1aacfd755763e5b00af14ff9b6',1,'stan::math::check_pos_definite(const char *function, const Eigen::Matrix< T, Eigen::Dynamic, Eigen::Dynamic > &y, const char *name, T *result=0)']]], + ['check_5fpos_5fsemidefinite',['check_pos_semidefinite',['../namespacestan_1_1math.html#a7341142ee291b13f1ad04152a37f974f',1,'stan::math::check_pos_semidefinite(const char *function, const Eigen::Matrix< T_y, Eigen::Dynamic, Eigen::Dynamic > &y, const char *name, T_result *result)'],['../namespacestan_1_1math.html#af9a161786def6581011502056d92c021',1,'stan::math::check_pos_semidefinite(const char *function, const Eigen::Matrix< T, Eigen::Dynamic, Eigen::Dynamic > &y, const char *name, T *result=0)']]], + ['check_5fpositive',['check_positive',['../namespacestan_1_1math.html#a573ec8402d9e6928596057ee179a96a9',1,'stan::math::check_positive(const char *function, const T_y &y, const char *name, T_result *result)'],['../namespacestan_1_1math.html#ac07e0ff96981b93a266298e6c9343395',1,'stan::math::check_positive(const char *function, const T &x, const char *name)']]], + ['check_5fpositive_5fordered',['check_positive_ordered',['../namespacestan_1_1math.html#a953ca730fb62ef45047f2a73c0f84a88',1,'stan::math::check_positive_ordered(const char *function, const Eigen::Matrix< T_y, Eigen::Dynamic, 1 > &y, const char *name, T_result *result)'],['../namespacestan_1_1math.html#a153b3fac80bd9f9739f87cfccb7eb870',1,'stan::math::check_positive_ordered(const char *function, const Eigen::Matrix< T, Eigen::Dynamic, 1 > &y, const char *name, T *result=0)']]], + ['check_5frange',['check_range',['../namespacestan_1_1math.html#a1220906f5cf5892f9867a4b9bcec08c9',1,'stan::math']]], + ['check_5fsimplex',['check_simplex',['../namespacestan_1_1math.html#a4cbbf2c5799c876b8b5a40a6be59fad4',1,'stan::math::check_simplex(const char *function, const Eigen::Matrix< T_prob, Eigen::Dynamic, 1 > &theta, const char *name, T_result *result)'],['../namespacestan_1_1math.html#ac5371fc49b7503afbe9a49867fc5d075',1,'stan::math::check_simplex(const char *function, const Eigen::Matrix< T, Eigen::Dynamic, 1 > &theta, const char *name, T *result=0)']]], + ['check_5fsize_5fmatch',['check_size_match',['../namespacestan_1_1math.html#aa604267d7189b6fde0be2c83f03f60f8',1,'stan::math::check_size_match(const char *function, T_size1 i, const char *name_i, T_size2 j, const char *name_j, T_result *result)'],['../namespacestan_1_1math.html#a7db9ba4076101c008a4164d1f4f0881d',1,'stan::math::check_size_match(const char *function, T_size1 i, const char *name_i, T_size2 j, const char *name_j, T_size1 *result=0)']]], + ['check_5fspsd_5fmatrix',['check_spsd_matrix',['../namespacestan_1_1math.html#a1f953f345a5fc4d4258d65c9fd494d0d',1,'stan::math::check_spsd_matrix(const char *function, const Eigen::Matrix< T_y, Eigen::Dynamic, Eigen::Dynamic > &y, const char *name, T_result *result)'],['../namespacestan_1_1math.html#a919b0ac7be6e9129159dcd57b5aaa229',1,'stan::math::check_spsd_matrix(const char *function, const Eigen::Matrix< T, Eigen::Dynamic, Eigen::Dynamic > &y, const char *name, T *result=0)']]], + ['check_5fsquare',['check_square',['../namespacestan_1_1math.html#aaa8e58058a05567645f7589f90f5acaf',1,'stan::math::check_square(const char *function, const Eigen::Matrix< T_y, Eigen::Dynamic, Eigen::Dynamic > &y, const char *name, T_result *result)'],['../namespacestan_1_1math.html#a354049e8dec929a4b054b7e8db06a4fb',1,'stan::math::check_square(const char *function, const Eigen::Matrix< T, Eigen::Dynamic, Eigen::Dynamic > &y, const char *name, T *result=0)']]], + ['check_5fsymmetric',['check_symmetric',['../namespacestan_1_1math.html#a7d97aebea4cf628724dfd08030284bb2',1,'stan::math::check_symmetric(const char *function, const Eigen::Matrix< T_y, Eigen::Dynamic, Eigen::Dynamic > &y, const char *name, T_result *result)'],['../namespacestan_1_1math.html#a8aebef4c723a2963977653559ebd2374',1,'stan::math::check_symmetric(const char *function, const Eigen::Matrix< T, Eigen::Dynamic, Eigen::Dynamic > &y, const char *name, T *result=0)']]], + ['check_5funit_5fvector',['check_unit_vector',['../namespacestan_1_1math.html#ab722ab154aebf9a162df8e9bd4e3e42f',1,'stan::math::check_unit_vector(const char *function, const Eigen::Matrix< T_prob, Eigen::Dynamic, 1 > &theta, const char *name, T_result *result)'],['../namespacestan_1_1math.html#a7496b0022b662c358931d1ab0458f60e',1,'stan::math::check_unit_vector(const char *function, const Eigen::Matrix< T, Eigen::Dynamic, 1 > &theta, const char *name, T *result=0)']]], + ['chi_5fsquare_5fccdf_5flog',['chi_square_ccdf_log',['../namespacestan_1_1prob.html#a3053cf28f5702b2b815e90f6e13a0931',1,'stan::prob']]], + ['chi_5fsquare_5fcdf',['chi_square_cdf',['../namespacestan_1_1prob.html#a200487188f204a155be81bcf76e3e578',1,'stan::prob']]], + ['chi_5fsquare_5fcdf_5flog',['chi_square_cdf_log',['../namespacestan_1_1prob.html#abec586221c76c3d3da9654cba160b35d',1,'stan::prob']]], + ['chi_5fsquare_5flog',['chi_square_log',['../namespacestan_1_1prob.html#ab7eb2d6575574aa8b2838532bb81832d',1,'stan::prob::chi_square_log(const T_y &y, const T_dof &nu)'],['../namespacestan_1_1prob.html#ab08231831678e188d428e0bd78c900f0',1,'stan::prob::chi_square_log(const T_y &y, const T_dof &nu)']]], + ['chi_5fsquare_5frng',['chi_square_rng',['../namespacestan_1_1prob.html#a367304c7727de79fa5d8660f1406754b',1,'stan::prob']]], + ['cholesky_5fdecompose',['cholesky_decompose',['../namespacestan_1_1math.html#abbcc91ff24e86fa318fe0f8a9111b4c5',1,'stan::math']]], + ['cholesky_5ffactor',['cholesky_factor',['../classstan_1_1io_1_1reader.html#a9572cd028cf0d073c45ab83ae6f4477e',1,'stan::io::reader']]], + ['cholesky_5ffactor_5fconstrain',['cholesky_factor_constrain',['../classstan_1_1io_1_1reader.html#a6c6bee8c526c8d114c95646f171413cc',1,'stan::io::reader::cholesky_factor_constrain(size_t M, size_t N)'],['../classstan_1_1io_1_1reader.html#ac49f77d0cd4d89f3d06ac62515cfa809',1,'stan::io::reader::cholesky_factor_constrain(size_t M, size_t N, T &lp)'],['../namespacestan_1_1prob.html#a1fed06bde5073fb875496b5a680c39ca',1,'stan::prob::cholesky_factor_constrain(const Eigen::Matrix< T, Eigen::Dynamic, 1 > &x, int M, int N)'],['../namespacestan_1_1prob.html#aaac795244dbcd9bb3fa44d2275ddc3c1',1,'stan::prob::cholesky_factor_constrain(const Eigen::Matrix< T, Eigen::Dynamic, 1 > &x, int M, int N, T &lp)']]], + ['cholesky_5ffactor_5ffree',['cholesky_factor_free',['../namespacestan_1_1prob.html#a74157f1d9c708df760d602d6adb53712',1,'stan::prob']]], + ['cholesky_5ffactor_5funconstrain',['cholesky_factor_unconstrain',['../classstan_1_1io_1_1writer.html#ae96ed09cbcd87375c712e20503894264',1,'stan::io::writer']]], + ['cholesky_5ffactor_5fvar_5fdecl',['cholesky_factor_var_decl',['../structstan_1_1gm_1_1cholesky__factor__var__decl.html#ae19a9b374feff362b4f32d0d8cb8a4df',1,'stan::gm::cholesky_factor_var_decl::cholesky_factor_var_decl()'],['../structstan_1_1gm_1_1cholesky__factor__var__decl.html#a661cb5898a5139eba744d9d53309584f',1,'stan::gm::cholesky_factor_var_decl::cholesky_factor_var_decl(expression const &M, expression const &N, std::string const &name, std::vector< expression > const &dims)']]], + ['chunk_5falloc',['chunk_alloc',['../classstan_1_1memory_1_1chunk__alloc.html#a51cecbbac945e0b108229b21ecd6abf7',1,'stan::memory::chunk_alloc']]], + ['cmd_5fline',['cmd_line',['../classstan_1_1io_1_1cmd__line.html#a8b00f5947e12e84d1740116a05a4ca16',1,'stan::io::cmd_line']]], + ['col',['col',['../namespacestan_1_1math.html#ae497ca37fd7867fd11c4cd095c8aaa71',1,'stan::math']]], + ['cols',['cols',['../classstan_1_1math_1_1_l_d_l_t__factor_3_01stan_1_1agrad_1_1var_00_01_r_00_01_c_01_4.html#a00df49ca9dbf61b2f6b1fc6c991c1fb9',1,'stan::math::LDLT_factor< stan::agrad::var, R, C >::cols()'],['../classstan_1_1math_1_1_l_d_l_t__factor_3_01double_00_01_r_00_01_c_01_4.html#adf662c7112e7274e630e07d7ac14c78a',1,'stan::math::LDLT_factor< double, R, C >::cols()'],['../namespacestan_1_1math.html#a871bccc233a4dcd764ffece5a3f9a399',1,'stan::math::cols()']]], + ['columns_5fdot_5fproduct',['columns_dot_product',['../namespacestan_1_1agrad.html#a4690cc81441d5be35328e09c11b6d0bb',1,'stan::agrad::columns_dot_product(const Eigen::Matrix< fvar< T >, R1, C1 > &v1, const Eigen::Matrix< fvar< T >, R2, C2 > &v2)'],['../namespacestan_1_1agrad.html#ad72bd7f6e164cb2341d055ace67c32af',1,'stan::agrad::columns_dot_product(const Eigen::Matrix< fvar< T >, R1, C1 > &v1, const Eigen::Matrix< double, R2, C2 > &v2)'],['../namespacestan_1_1agrad.html#ad2c2338e972cab17e0f8cbcaa190d90b',1,'stan::agrad::columns_dot_product(const Eigen::Matrix< double, R1, C1 > &v1, const Eigen::Matrix< fvar< T >, R2, C2 > &v2)'],['../namespacestan_1_1agrad.html#a3d6da62972dd8c1d717b7e99838c84bc',1,'stan::agrad::columns_dot_product(const Eigen::Matrix< T1, R1, C1 > &v1, const Eigen::Matrix< T2, R2, C2 > &v2)'],['../namespacestan_1_1math.html#a6d03b34aa7329a68f31d1c7bc500c5c8',1,'stan::math::columns_dot_product()']]], + ['columns_5fdot_5fself',['columns_dot_self',['../namespacestan_1_1agrad.html#aa4910329638fc8776c1568e9c41ae014',1,'stan::agrad::columns_dot_self(const Eigen::Matrix< fvar< T >, R, C > &x)'],['../namespacestan_1_1agrad.html#a6b316428660dff0e79e67e804ad1cbce',1,'stan::agrad::columns_dot_self(const Eigen::Matrix< var, R, C > &x)'],['../namespacestan_1_1math.html#af03701ff6420231890468e9881eb9245',1,'stan::math::columns_dot_self()']]], + ['comma',['comma',['../classstan_1_1io_1_1csv__writer.html#a3b3dd2236e6e62005bad3a4dfbea6596',1,'stan::io::csv_writer']]], + ['command',['command',['../classstan_1_1io_1_1cmd__line.html#acffdc087dbbe052e4827b281e2c388f7',1,'stan::io::cmd_line::command()'],['../namespacestan_1_1gm.html#a4f99fc7285080014068543c8d5ab71b1',1,'stan::gm::command()']]], + ['compile',['compile',['../namespacestan_1_1gm.html#afa03c3de30429fab595ea53c97b9edc8',1,'stan::gm']]], + ['complete_5fadaptation',['complete_adaptation',['../classstan_1_1mcmc_1_1stepsize__adaptation.html#a6a58fb8dd3f3b90c16ac9f86299c7da3',1,'stan::mcmc::stepsize_adaptation']]], + ['compute',['compute',['../classstan_1_1agrad_1_1_l_d_l_t__alloc.html#a1379821d069685022c0e5ff0efe6cb0b',1,'stan::agrad::LDLT_alloc::compute()'],['../classstan_1_1math_1_1_l_d_l_t__factor_3_01stan_1_1agrad_1_1var_00_01_r_00_01_c_01_4.html#adea90c563014600ac9d7aa05056db56d',1,'stan::math::LDLT_factor< stan::agrad::var, R, C >::compute()'],['../classstan_1_1math_1_1_l_d_l_t__factor_3_01double_00_01_r_00_01_c_01_4.html#add76e21a65bdd840ca67d24531612573',1,'stan::math::LDLT_factor< double, R, C >::compute()']]], + ['compute_5fcriterion',['compute_criterion',['../classstan_1_1mcmc_1_1base__nuts.html#ac2961f3ce35af570405291a8011e1064',1,'stan::mcmc::base_nuts::compute_criterion()'],['../classstan_1_1mcmc_1_1dense__e__nuts.html#aa23ebe0b61e0ed91a9a94457e69e08da',1,'stan::mcmc::dense_e_nuts::compute_criterion()'],['../classstan_1_1mcmc_1_1diag__e__nuts.html#a61f9db95ebdc67274cdea0f479dc0a5e',1,'stan::mcmc::diag_e_nuts::compute_criterion()'],['../classstan_1_1mcmc_1_1unit__e__nuts.html#ab61a9ee4db3845a88adc78249e35c170',1,'stan::mcmc::unit_e_nuts::compute_criterion()']]], + ['compute_5findent',['compute_indent',['../classstan_1_1gm_1_1argument.html#a1df06fb3f558fc0eecfce30d38f77359',1,'stan::gm::argument']]], + ['compute_5fnext_5fwindow',['compute_next_window',['../classstan_1_1mcmc_1_1windowed__adaptation.html#a99adff4a3380c627160d995b5584bf8e',1,'stan::mcmc::windowed_adaptation']]], + ['compute_5fprecision',['compute_precision',['../print_8hpp.html#a0fc6b77bb6e90f0e770af8b3fe5ac44d',1,'print.hpp']]], + ['compute_5fwidth',['compute_width',['../print_8hpp.html#a78042a12545744a3a7978b458faea92c',1,'print.hpp']]], + ['compute_5fwidth_5fand_5fprecision',['compute_width_and_precision',['../print_8hpp.html#a16acdd9987d7a0e6d03b905f9c6cc65b',1,'print.hpp']]], + ['conditional_5fstatement',['conditional_statement',['../structstan_1_1gm_1_1conditional__statement.html#a1abc13ef1fe45721706610334a3fc111',1,'stan::gm::conditional_statement::conditional_statement()'],['../structstan_1_1gm_1_1conditional__statement.html#a9ee4cb8e757e7be347cb40f870b77494',1,'stan::gm::conditional_statement::conditional_statement(const std::vector< expression > &conditions, const std::vector< statement > &statements)']]], + ['constrained_5fparam_5fnames_5fvisgen',['constrained_param_names_visgen',['../structstan_1_1gm_1_1constrained__param__names__visgen.html#ab1fef3623722eef039191cf79b87e84b',1,'stan::gm::constrained_param_names_visgen']]], + ['cont_5fparams',['cont_params',['../classstan_1_1mcmc_1_1sample.html#aa6dbff10de92bcd52e156ac8ca8eba6e',1,'stan::mcmc::sample::cont_params(int k) const '],['../classstan_1_1mcmc_1_1sample.html#ae659b68fe8ac4a7a87fcd53549133c90',1,'stan::mcmc::sample::cont_params(Eigen::VectorXd &x) const '],['../classstan_1_1mcmc_1_1sample.html#afa5f116f5b79a757bfb7d68931bd3c17',1,'stan::mcmc::sample::cont_params() const ']]], + ['contains_5fi',['contains_i',['../classstan_1_1io_1_1dump.html#a1865fdffc3451dd6460a5540c8e0912e',1,'stan::io::dump::contains_i()'],['../classstan_1_1io_1_1var__context.html#a57b4df63029aa81a4ee3e93899722068',1,'stan::io::var_context::contains_i()']]], + ['contains_5fnonparam_5fvar',['contains_nonparam_var',['../structstan_1_1gm_1_1contains__nonparam__var.html#a6beb41e5c41785733e1cc6881eba82a9',1,'stan::gm::contains_nonparam_var']]], + ['contains_5fr',['contains_r',['../classstan_1_1io_1_1dump.html#ac531d67fb8a74300ebbe014dfe367706',1,'stan::io::dump::contains_r()'],['../classstan_1_1io_1_1var__context.html#abaa6a87ecb4d45c29386f0de57b330f4',1,'stan::io::var_context::contains_r()']]], + ['contains_5fvar',['contains_var',['../structstan_1_1gm_1_1contains__var.html#a8d00ba5b2f7fcecec2baca23d1ddb200',1,'stan::gm::contains_var']]], + ['corr',['corr',['../classstan_1_1io_1_1reader.html#af409911d7c4b3996291884fbebecfd85',1,'stan::io::reader']]], + ['corr_5fconstrain',['corr_constrain',['../classstan_1_1io_1_1reader.html#aeaafba520a6ad5ae7654e24d46ffbb39',1,'stan::io::reader::corr_constrain()'],['../classstan_1_1io_1_1reader.html#a83d52f9f5ffec50991cf3224f1caad9c',1,'stan::io::reader::corr_constrain(T &lp)'],['../namespacestan_1_1prob.html#a1a965b7e5c7fc2ef6bbd3a436ae17b99',1,'stan::prob::corr_constrain(const T x)'],['../namespacestan_1_1prob.html#a845c7b8687f4e6b588820b815e464729',1,'stan::prob::corr_constrain(const T x, T &lp)']]], + ['corr_5ffree',['corr_free',['../namespacestan_1_1prob.html#ade592c3579e0e7a685b7e2ec5bb0218b',1,'stan::prob']]], + ['corr_5fmatrix',['corr_matrix',['../classstan_1_1io_1_1reader.html#aa410515341701109fb937c14b101e20d',1,'stan::io::reader']]], + ['corr_5fmatrix_5fconstrain',['corr_matrix_constrain',['../classstan_1_1io_1_1reader.html#a75eb056f8f7b1032865feb97f506e3e6',1,'stan::io::reader::corr_matrix_constrain(size_t k)'],['../classstan_1_1io_1_1reader.html#ab23e0b88e39d354121b66e6823e1cac9',1,'stan::io::reader::corr_matrix_constrain(size_t k, T &lp)'],['../namespacestan_1_1prob.html#ad9af41714d33fbe0e5e29aab85553ccc',1,'stan::prob::corr_matrix_constrain(const Eigen::Matrix< T, Eigen::Dynamic, 1 > &x, typename Eigen::Matrix< T, Eigen::Dynamic, 1 >::size_type k)'],['../namespacestan_1_1prob.html#a2767379e92ce98f2f7016b47e7aeec47',1,'stan::prob::corr_matrix_constrain(const Eigen::Matrix< T, Eigen::Dynamic, 1 > &x, typename Eigen::Matrix< T, Eigen::Dynamic, 1 >::size_type k, T &lp)']]], + ['corr_5fmatrix_5ffree',['corr_matrix_free',['../namespacestan_1_1prob.html#acc2abdf331f1cc4b3f36b15a66088ab2',1,'stan::prob']]], + ['corr_5fmatrix_5funconstrain',['corr_matrix_unconstrain',['../classstan_1_1io_1_1writer.html#af26ec20d15ff3a57ab0e1a87579decbb',1,'stan::io::writer']]], + ['corr_5fmatrix_5fvar_5fdecl',['corr_matrix_var_decl',['../structstan_1_1gm_1_1corr__matrix__var__decl.html#acb8f9bbb7cbfcc2a5cae3b6b6e5aa3a3',1,'stan::gm::corr_matrix_var_decl::corr_matrix_var_decl()'],['../structstan_1_1gm_1_1corr__matrix__var__decl.html#a208b78416bf4d23b7b093014c19c03d2',1,'stan::gm::corr_matrix_var_decl::corr_matrix_var_decl(expression const &K, std::string const &name, std::vector< expression > const &dims)']]], + ['corr_5funconstrain',['corr_unconstrain',['../classstan_1_1io_1_1writer.html#a00cb858ddd90f1af498f1dfe552f2658',1,'stan::io::writer']]], + ['correlation',['correlation',['../classstan_1_1mcmc_1_1chains.html#aaf76107a82d21ec2a1b49e436faa459b',1,'stan::mcmc::chains::correlation(const int chain, const int index1, const int index2)'],['../classstan_1_1mcmc_1_1chains.html#a2cf11cd1b7b928ebf87d6708a0bada74',1,'stan::mcmc::chains::correlation(const int index1, const int index2)'],['../classstan_1_1mcmc_1_1chains.html#ab581e93f8ad9222927be0ab55de4e83c',1,'stan::mcmc::chains::correlation(const int chain, const std::string &name1, const std::string &name2)'],['../classstan_1_1mcmc_1_1chains.html#aa5f25ea09b915b3c768947c3e3e03bf5',1,'stan::mcmc::chains::correlation(const std::string &name1, const std::string &name2)']]], + ['cos',['cos',['../namespacestan_1_1agrad.html#a6f03b0ce8e8e381865f09baa3036d48d',1,'stan::agrad::cos(const var &a)'],['../namespacestan_1_1agrad.html#a1768b39c559d7c8e0f467ea1916b625f',1,'stan::agrad::cos(const fvar< T > &x)']]], + ['cosh',['cosh',['../namespacestan_1_1agrad.html#a0c2536220a01717d9efc8aa9b993d46b',1,'stan::agrad::cosh(const var &a)'],['../namespacestan_1_1agrad.html#a2401e1b775fc8f3ba201a30d66022d09',1,'stan::agrad::cosh(const fvar< T > &x)']]], + ['cov_5fmatrix',['cov_matrix',['../classstan_1_1io_1_1reader.html#a6b0b034457a37f2eb7c27cec9b8e600d',1,'stan::io::reader']]], + ['cov_5fmatrix_5fconstrain',['cov_matrix_constrain',['../classstan_1_1io_1_1reader.html#ab8ada631ae87ef2de7978a33299e872e',1,'stan::io::reader::cov_matrix_constrain(size_t k)'],['../classstan_1_1io_1_1reader.html#a1ea7077509503ff9bf2777430cb70fcf',1,'stan::io::reader::cov_matrix_constrain(size_t k, T &lp)'],['../namespacestan_1_1prob.html#afe73ba3027bcb8e30424b81a5460828b',1,'stan::prob::cov_matrix_constrain(const Eigen::Matrix< T, Eigen::Dynamic, 1 > &x, typename Eigen::Matrix< T, Eigen::Dynamic, 1 >::size_type K)'],['../namespacestan_1_1prob.html#af8bbcd6e6f8239799dc9b2661059801b',1,'stan::prob::cov_matrix_constrain(const Eigen::Matrix< T, Eigen::Dynamic, 1 > &x, typename Eigen::Matrix< T, Eigen::Dynamic, 1 >::size_type K, T &lp)']]], + ['cov_5fmatrix_5fconstrain_5flkj',['cov_matrix_constrain_lkj',['../namespacestan_1_1prob.html#ae151aa1645e82ec7cb298466edcbbb0b',1,'stan::prob::cov_matrix_constrain_lkj(const Eigen::Matrix< T, Eigen::Dynamic, 1 > &x, size_t k)'],['../namespacestan_1_1prob.html#a26ee45f1dd50ceaca0eea65cab7e85b3',1,'stan::prob::cov_matrix_constrain_lkj(const Eigen::Matrix< T, Eigen::Dynamic, 1 > &x, size_t k, T &lp)']]], + ['cov_5fmatrix_5ffree',['cov_matrix_free',['../namespacestan_1_1prob.html#a402fcdcfe19b2a5c25f4729d1cf31678',1,'stan::prob']]], + ['cov_5fmatrix_5ffree_5flkj',['cov_matrix_free_lkj',['../namespacestan_1_1prob.html#a7f6a575490d3de6839a6f544781bf464',1,'stan::prob']]], + ['cov_5fmatrix_5funconstrain',['cov_matrix_unconstrain',['../classstan_1_1io_1_1writer.html#a2f9bb2387b552311a613cc00391e6bb4',1,'stan::io::writer']]], + ['cov_5fmatrix_5fvar_5fdecl',['cov_matrix_var_decl',['../structstan_1_1gm_1_1cov__matrix__var__decl.html#aebf75d147fbbf2ee7e8d52aa48a0fd76',1,'stan::gm::cov_matrix_var_decl::cov_matrix_var_decl()'],['../structstan_1_1gm_1_1cov__matrix__var__decl.html#aedec8ffe9e2f319afd7eb903e3b17dc6',1,'stan::gm::cov_matrix_var_decl::cov_matrix_var_decl(expression const &K, std::string const &name, std::vector< expression > const &dims)']]], + ['covar_5fadaptation',['covar_adaptation',['../classstan_1_1mcmc_1_1covar__adaptation.html#a32edd1badb6af5fad1348168ab4d5d91',1,'stan::mcmc::covar_adaptation']]], + ['covariance',['covariance',['../classstan_1_1mcmc_1_1chains.html#a1611771bf5fa3c15e528d26836aa2ac5',1,'stan::mcmc::chains::covariance(const int chain, const int index1, const int index2)'],['../classstan_1_1mcmc_1_1chains.html#a5bc40586bfcc5bfef6e5b6bf651608ec',1,'stan::mcmc::chains::covariance(const int index1, const int index2)'],['../classstan_1_1mcmc_1_1chains.html#a99a0247f578644538745f03510f0f268',1,'stan::mcmc::chains::covariance(const int chain, const std::string &name1, const std::string &name2)'],['../classstan_1_1mcmc_1_1chains.html#a2920dbf4b733612596fc7b306043aceb',1,'stan::mcmc::chains::covariance(const std::string &name1, const std::string &name2)']]], + ['crossprod',['crossprod',['../namespacestan_1_1agrad.html#a5091c4a9b716a75406b9cbee072a27c1',1,'stan::agrad::crossprod(const Eigen::Matrix< fvar< T >, R, C > &m)'],['../namespacestan_1_1agrad.html#a704fdafdbf6fd44b9b3a382bc23a026e',1,'stan::agrad::crossprod(const matrix_v &M)'],['../namespacestan_1_1math.html#a62cc3a137ff3220bdd0137a52a4b9714',1,'stan::math::crossprod()']]], + ['csv_5fwriter',['csv_writer',['../classstan_1_1io_1_1csv__writer.html#a50ab9dce7685e32f9e7575a4aac66e0f',1,'stan::io::csv_writer']]], + ['cumulative_5fsum',['cumulative_sum',['../namespacestan_1_1math.html#a7340f6be8ae1e121c6d854005560fef5',1,'stan::math::cumulative_sum(const std::vector< T > &x)'],['../namespacestan_1_1math.html#affab469ac332306aa00947f4a7c5d30b',1,'stan::math::cumulative_sum(const Eigen::Matrix< T, R, C > &m)']]], + ['curr_5ff',['curr_f',['../classstan_1_1optimization_1_1_b_f_g_s_minimizer.html#afaba4589a2a29fd201c3642f06cc11c3',1,'stan::optimization::BFGSMinimizer']]], + ['curr_5fg',['curr_g',['../classstan_1_1optimization_1_1_b_f_g_s_minimizer.html#a9010c566033a5a18b1f7ece46811f552',1,'stan::optimization::BFGSMinimizer']]], + ['curr_5fs',['curr_s',['../classstan_1_1optimization_1_1_b_f_g_s_minimizer.html#a76bc647acbfdad3f5f593ec940df8d84',1,'stan::optimization::BFGSMinimizer']]], + ['curr_5fx',['curr_x',['../classstan_1_1optimization_1_1_b_f_g_s_minimizer.html#a23c0ccc29dcf6eed8995300a8642f887',1,'stan::optimization::BFGSMinimizer']]], + ['val_3c_20std_3a_3astring_20_3e',['val< std::string >',['../namespacestan_1_1io.html#a6717f7e0267a49b9c35e24aa6183236a',1,'stan::io']]] +]; diff --git a/doc/api/html/search/functions_64.html b/doc/api/html/search/functions_64.html new file mode 100644 index 00000000000..d8b63943c86 --- /dev/null +++ b/doc/api/html/search/functions_64.html @@ -0,0 +1,25 @@ + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/doc/api/html/search/functions_64.js b/doc/api/html/search/functions_64.js new file mode 100644 index 00000000000..07de1d09691 --- /dev/null +++ b/doc/api/html/search/functions_64.js @@ -0,0 +1,62 @@ +var searchData= +[ + ['data_5fi',['data_i',['../classstan_1_1io_1_1writer.html#a6cf35dda98f2d8d322f337fa5e4db8c5',1,'stan::io::writer']]], + ['data_5fr',['data_r',['../classstan_1_1io_1_1writer.html#afc520ab8c7f1a351ba7b8955d7045a73',1,'stan::io::writer']]], + ['declare_5farray',['declare_array',['../structstan_1_1gm_1_1member__var__decl__visgen.html#a7cd6cbe9a4e154a4b47437ec8506b4a0',1,'stan::gm::member_var_decl_visgen::declare_array()'],['../structstan_1_1gm_1_1local__var__decl__visgen.html#aa021dda326a4032145da713d78091b30',1,'stan::gm::local_var_decl_visgen::declare_array()']]], + ['delete_5ffile',['delete_file',['../stanc__helper_8hpp.html#a018575b1df2fee775b6583718a7ddc18',1,'stanc_helper.hpp']]], + ['denorm_5fmin',['denorm_min',['../structstd_1_1numeric__limits_3_01stan_1_1agrad_1_1fvar_3_01_t_01_4_01_4.html#a60e936662fc9da655a32defc4b13c305',1,'std::numeric_limits< stan::agrad::fvar< T > >::denorm_min()'],['../structstd_1_1numeric__limits_3_01stan_1_1agrad_1_1var_01_4.html#afc66e528e2fad364eb324e672d49fe86',1,'std::numeric_limits< stan::agrad::var >::denorm_min()']]], + ['dense_5fe_5fmetric',['dense_e_metric',['../classstan_1_1mcmc_1_1dense__e__metric.html#aacbf4525e5660fd18eaea038e54e10e2',1,'stan::mcmc::dense_e_metric']]], + ['dense_5fe_5fnuts',['dense_e_nuts',['../classstan_1_1mcmc_1_1dense__e__nuts.html#a556e5c4e0ddf32b50ccd4bae8cb54e22',1,'stan::mcmc::dense_e_nuts']]], + ['dense_5fe_5fpoint',['dense_e_point',['../classstan_1_1mcmc_1_1dense__e__point.html#a3b437b07a44c6994c669ee8ae673e975',1,'stan::mcmc::dense_e_point::dense_e_point(int n)'],['../classstan_1_1mcmc_1_1dense__e__point.html#a493b3745174b5d6dcc50dd2ec6b5e422',1,'stan::mcmc::dense_e_point::dense_e_point(const dense_e_point &z)']]], + ['dense_5fe_5fstatic_5fhmc',['dense_e_static_hmc',['../classstan_1_1mcmc_1_1dense__e__static__hmc.html#a8eae1f2e8a48c368ecd5d013099b692e',1,'stan::mcmc::dense_e_static_hmc']]], + ['derivative',['derivative',['../namespacestan_1_1agrad.html#adf138af35c36b51a588f35e10dfa6e06',1,'stan::agrad']]], + ['description',['description',['../classstan_1_1gm_1_1argument.html#a49d0e69d3fbade5ba476bac73f68cb24',1,'stan::gm::argument']]], + ['determinant',['determinant',['../namespacestan_1_1agrad.html#aa27b1abc14538bd9946ad1d6d1e8e60a',1,'stan::agrad::determinant(const Eigen::Matrix< fvar< T >, R, C > &m)'],['../namespacestan_1_1agrad.html#a6d1cf84909394145bb264afb9fee64ac',1,'stan::agrad::determinant(const Eigen::Matrix< var, R, C > &m)'],['../namespacestan_1_1math.html#ab65e9ab0e6f725c7e11068b0be2af84f',1,'stan::math::determinant()']]], + ['df',['df',['../classstan_1_1optimization_1_1_model_adaptor.html#a5c832385e9d4792ccf2c4375e2b1ade3',1,'stan::optimization::ModelAdaptor']]], + ['diag_5fe_5fmetric',['diag_e_metric',['../classstan_1_1mcmc_1_1diag__e__metric.html#aa85e6a49b53531d5cd722666394fbd70',1,'stan::mcmc::diag_e_metric']]], + ['diag_5fe_5fnuts',['diag_e_nuts',['../classstan_1_1mcmc_1_1diag__e__nuts.html#a2adb4853ab835ff95474e593750cc4f7',1,'stan::mcmc::diag_e_nuts']]], + ['diag_5fe_5fpoint',['diag_e_point',['../classstan_1_1mcmc_1_1diag__e__point.html#a5cfefc79d93c982528c7cf957fdc20a2',1,'stan::mcmc::diag_e_point::diag_e_point(int n)'],['../classstan_1_1mcmc_1_1diag__e__point.html#a7fd76371128c831232948273a46c50b2',1,'stan::mcmc::diag_e_point::diag_e_point(const diag_e_point &z)']]], + ['diag_5fe_5fstatic_5fhmc',['diag_e_static_hmc',['../classstan_1_1mcmc_1_1diag__e__static__hmc.html#a3188ee6bf11965a9e5a582302483f8fc',1,'stan::mcmc::diag_e_static_hmc']]], + ['diag_5fmatrix',['diag_matrix',['../namespacestan_1_1math.html#af970bc3201f476e84259e7ba2d4eb276',1,'stan::math']]], + ['diag_5fpost_5fmultiply',['diag_post_multiply',['../namespacestan_1_1math.html#a00896827d3247350178c86c0aed533f6',1,'stan::math']]], + ['diag_5fpre_5fmultiply',['diag_pre_multiply',['../namespacestan_1_1math.html#a6159f8ffb5a37c394dff93781622f504',1,'stan::math']]], + ['diagonal',['diagonal',['../namespacestan_1_1math.html#a877aa9df52c3a3f300a3d214c7bde64a',1,'stan::math']]], + ['digamma',['digamma',['../namespacestan_1_1agrad.html#a253104e7f6fed46947b23b3e9515b668',1,'stan::agrad::digamma(const fvar< T > &x)'],['../namespacestan_1_1agrad.html#aec8af996186baacdbb3e707fa02d80ea',1,'stan::agrad::digamma(const stan::agrad::var &a)'],['../namespacestan_1_1math.html#a5eb54ce92709046c6d168e851d2481c7',1,'stan::math::digamma()']]], + ['dimensions',['dimensions',['../print_8hpp.html#aca9cbff882a3a995d9d4bc69d0f693da',1,'print.hpp']]], + ['dims',['dims',['../classstan_1_1io_1_1dump__reader.html#a6ada826cbef5e7ab4213efe629945d95',1,'stan::io::dump_reader::dims()'],['../namespacestan_1_1math.html#a2b9073e39033e56eb31344091f0170fd',1,'stan::math::dims(const T &x, std::vector< int > &result)'],['../namespacestan_1_1math.html#af95a2dcde478c06e3543511821618902',1,'stan::math::dims(const Eigen::Matrix< T, R, C > &x, std::vector< int > &result)'],['../namespacestan_1_1math.html#a467589eef4220a87d457c8a268a1fd5d',1,'stan::math::dims(const std::vector< T > &x, std::vector< int > &result)'],['../namespacestan_1_1math.html#a33777ee768c7032331ca8b92e5323384',1,'stan::math::dims(const T &x)']]], + ['dims_5fi',['dims_i',['../classstan_1_1io_1_1dump.html#a1bdf386abd7e81a9a287c6a59a48eac9',1,'stan::io::dump::dims_i()'],['../classstan_1_1io_1_1var__context.html#a445c05ee5f0fbe9548cdbdc7b08d31f1',1,'stan::io::var_context::dims_i()']]], + ['dims_5fr',['dims_r',['../classstan_1_1io_1_1dump.html#ad1a19a706880befca7fe4a3c4dc4a39f',1,'stan::io::dump::dims_r()'],['../classstan_1_1io_1_1var__context.html#ae1e90fd2b90b43267a5ab1c1b5cf880a',1,'stan::io::var_context::dims_r()']]], + ['dirichlet_5flog',['dirichlet_log',['../namespacestan_1_1prob.html#a788f709440fd4c6189fa6d40a32cc328',1,'stan::prob::dirichlet_log(const Eigen::Matrix< T_prob, Eigen::Dynamic, 1 > &theta, const Eigen::Matrix< T_prior_sample_size, Eigen::Dynamic, 1 > &alpha)'],['../namespacestan_1_1prob.html#a91bcdf333694f9c1f685de29105d9bf5',1,'stan::prob::dirichlet_log(const Eigen::Matrix< T_prob, Eigen::Dynamic, 1 > &theta, const Eigen::Matrix< T_prior_sample_size, Eigen::Dynamic, 1 > &alpha)']]], + ['dirichlet_5frng',['dirichlet_rng',['../namespacestan_1_1prob.html#a4324e10af97b35a6b667f7b02ddbb7e2',1,'stan::prob']]], + ['disengage_5fadaptation',['disengage_adaptation',['../classstan_1_1mcmc_1_1base__adapter.html#af8eb7f179d54f984c61aa945ceb56492',1,'stan::mcmc::base_adapter::disengage_adaptation()'],['../classstan_1_1mcmc_1_1adapt__dense__e__nuts.html#aac70c0c7dc28e85fa793176e0f05b2e0',1,'stan::mcmc::adapt_dense_e_nuts::disengage_adaptation()'],['../classstan_1_1mcmc_1_1adapt__diag__e__nuts.html#a6b7d857c9b602525cbdddf78f18f5f52',1,'stan::mcmc::adapt_diag_e_nuts::disengage_adaptation()'],['../classstan_1_1mcmc_1_1adapt__unit__e__nuts.html#a7024d8a1794d7d3afa01a7cc92e1a734',1,'stan::mcmc::adapt_unit_e_nuts::disengage_adaptation()'],['../classstan_1_1mcmc_1_1adapt__dense__e__static__hmc.html#a82b0383814a0aa603f06651c562ac649',1,'stan::mcmc::adapt_dense_e_static_hmc::disengage_adaptation()'],['../classstan_1_1mcmc_1_1adapt__diag__e__static__hmc.html#afcc9890fefe667daf023826a054324b3',1,'stan::mcmc::adapt_diag_e_static_hmc::disengage_adaptation()'],['../classstan_1_1mcmc_1_1adapt__unit__e__static__hmc.html#a3b2afe0cec71096e356ac100014c9073',1,'stan::mcmc::adapt_unit_e_static_hmc::disengage_adaptation()']]], + ['dist',['dist',['../namespacestan_1_1math.html#ae86020a972c6efc6b3407c3cfc30f4a6',1,'stan::math']]], + ['distance',['distance',['../namespacestan_1_1math.html#a354d9d6e7465ec8a49116f276d971db1',1,'stan::math']]], + ['divide',['divide',['../namespacestan_1_1agrad.html#a8834a2f7763f46dd14e765d6c3287d23',1,'stan::agrad::divide(const T1 &v, const T2 &c)'],['../namespacestan_1_1agrad.html#a8bfe03ac15191df9f6777217e8d698b8',1,'stan::agrad::divide(const Eigen::Matrix< fvar< T >, R, C > &v, const fvar< T > &c)'],['../namespacestan_1_1agrad.html#a1897f84d86b89b5485b10f20e30a2613',1,'stan::agrad::divide(const Eigen::Matrix< fvar< T >, R, C > &v, const double c)'],['../namespacestan_1_1agrad.html#a9e95e534e22aad48cd9a29584958f7a2',1,'stan::agrad::divide(const Eigen::Matrix< double, R, C > &v, const fvar< T > &c)'],['../namespacestan_1_1agrad.html#af3abe6f014b50c5873fa84734cad4131',1,'stan::agrad::divide(double x, double y)'],['../namespacestan_1_1agrad.html#a6b7cb944896ee4923018198ea3946773',1,'stan::agrad::divide(const Eigen::Matrix< T1, R, C > &v, const T2 &c)'],['../namespacestan_1_1math.html#a082ee76b34a2ea656d2c8ab9186c1a2b',1,'stan::math::divide()']]], + ['do_5flkj_5fconstant',['do_lkj_constant',['../namespacestan_1_1prob.html#a3e884a06b4337008b72a3e75c1aee386',1,'stan::prob']]], + ['do_5fprint',['do_print',['../namespacestan_1_1gm.html#a50d74ffa83dbb5b20d65ba75b1e5e066',1,'stan::gm::do_print(int n, bool special, int refresh)'],['../namespacestan_1_1gm.html#a0505a5edd8692d9113977c9cd19bc778',1,'stan::gm::do_print(int n, int refresh)']]], + ['dom_5ferr',['dom_err',['../namespacestan_1_1math.html#a5af45491b0f1852295f1c7ec0730294c',1,'stan::math']]], + ['dom_5ferr_5fvec',['dom_err_vec',['../namespacestan_1_1math.html#a5114bd4a8397e21dd60cc596d24022fe',1,'stan::math']]], + ['dot',['dot',['../namespacestan_1_1math.html#afd3b73319bd8df9dad1d3902997d8e89',1,'stan::math']]], + ['dot_5fproduct',['dot_product',['../namespacestan_1_1agrad.html#a6ab5996a680002f996384f7f7cc2ba86',1,'stan::agrad::dot_product(const Eigen::Matrix< fvar< T >, R1, C1 > &v1, const Eigen::Matrix< fvar< T >, R2, C2 > &v2)'],['../namespacestan_1_1agrad.html#a516128a11f53f55e533ed1d0bcd07b1d',1,'stan::agrad::dot_product(const Eigen::Matrix< fvar< T >, R1, C1 > &v1, const Eigen::Matrix< double, R2, C2 > &v2)'],['../namespacestan_1_1agrad.html#a2e18b595e821acf4af3bd9615b51eeff',1,'stan::agrad::dot_product(const Eigen::Matrix< double, R1, C1 > &v1, const Eigen::Matrix< fvar< T >, R2, C2 > &v2)'],['../namespacestan_1_1agrad.html#aaf1dc132cacae954cde8a4bd94d3d33e',1,'stan::agrad::dot_product(const Eigen::Matrix< fvar< T >, R1, C1 > &v1, const Eigen::Matrix< fvar< T >, R2, C2 > &v2, size_type &length)'],['../namespacestan_1_1agrad.html#a48ed77a6a9982642731d22f05f729281',1,'stan::agrad::dot_product(const Eigen::Matrix< fvar< T >, R1, C1 > &v1, const Eigen::Matrix< double, R2, C2 > &v2, size_type &length)'],['../namespacestan_1_1agrad.html#a2588ccae6e0c5bd5cfa50c08477025c9',1,'stan::agrad::dot_product(const Eigen::Matrix< double, R1, C1 > &v1, const Eigen::Matrix< fvar< T >, R2, C2 > &v2, size_type &length)'],['../namespacestan_1_1agrad.html#adc99c244a2cd1ac8e60ba4a14874d874',1,'stan::agrad::dot_product(const std::vector< fvar< T > > &v1, const std::vector< fvar< T > > &v2)'],['../namespacestan_1_1agrad.html#a427294fe7f03d86b0d13c588de3056f6',1,'stan::agrad::dot_product(const std::vector< double > &v1, const std::vector< fvar< T > > &v2)'],['../namespacestan_1_1agrad.html#aa01ea6a323474c7fbb9be783a9f805ff',1,'stan::agrad::dot_product(const std::vector< fvar< T > > &v1, const std::vector< double > &v2)'],['../namespacestan_1_1agrad.html#aba1e86a65c31342dc920bec07eeeac1b',1,'stan::agrad::dot_product(const std::vector< fvar< T > > &v1, const std::vector< fvar< T > > &v2, size_type &length)'],['../namespacestan_1_1agrad.html#ab66e08f88fa7d6a448082ade1153cac3',1,'stan::agrad::dot_product(const std::vector< double > &v1, const std::vector< fvar< T > > &v2, size_type &length)'],['../namespacestan_1_1agrad.html#ae8dea21d83c52cfdd1a0d6114633f2d3',1,'stan::agrad::dot_product(const std::vector< fvar< T > > &v1, const std::vector< double > &v2, size_type &length)'],['../namespacestan_1_1agrad.html#a4011d7bf9c85f3408ed0139436bcc958',1,'stan::agrad::dot_product(const Eigen::Matrix< T1, R1, C1 > &v1, const Eigen::Matrix< T2, R2, C2 > &v2)'],['../namespacestan_1_1agrad.html#ad390f00556d047ae51e5a6a8dd5842a5',1,'stan::agrad::dot_product(const T1 *v1, const T2 *v2, size_t length)'],['../namespacestan_1_1agrad.html#a349c89cb994774063fd7fb561d130ad5',1,'stan::agrad::dot_product(const std::vector< T1 > &v1, const std::vector< T2 > &v2)'],['../namespacestan_1_1math.html#af8d73851895fb151fdf79e55bf33e98e',1,'stan::math::dot_product(const Eigen::Matrix< double, R1, C1 > &v1, const Eigen::Matrix< double, R2, C2 > &v2)'],['../namespacestan_1_1math.html#a58da447df259e9e092e8fd910b338e1f',1,'stan::math::dot_product(const double *v1, const double *v2, size_t length)'],['../namespacestan_1_1math.html#ab7cd93708bf432b3bd3d284958972ede',1,'stan::math::dot_product(const std::vector< double > &v1, const std::vector< double > &v2)']]], + ['dot_5fself',['dot_self',['../namespacestan_1_1agrad.html#a4c1836521010bd6f18b5a58061cc3198',1,'stan::agrad::dot_self(const Eigen::Matrix< fvar< T >, R, C > &v)'],['../namespacestan_1_1agrad.html#a88446fe7bdc500d280a66cd8b58bf475',1,'stan::agrad::dot_self(const Eigen::Matrix< var, R, C > &v)'],['../namespacestan_1_1math.html#a8a6a4ef7c701db7984297d153580c8d4',1,'stan::math::dot_self(const std::vector< double > &x)'],['../namespacestan_1_1math.html#ac81ab85d390fcb594884773a85fac657',1,'stan::math::dot_self(const Eigen::Matrix< double, R, C > &v)']]], + ['double_5fexponential_5fccdf_5flog',['double_exponential_ccdf_log',['../namespacestan_1_1prob.html#a799d82a35ad39823a27340bb57656643',1,'stan::prob']]], + ['double_5fexponential_5fcdf',['double_exponential_cdf',['../namespacestan_1_1prob.html#acb5d3e2870190b33cb60f9165820a07b',1,'stan::prob']]], + ['double_5fexponential_5fcdf_5flog',['double_exponential_cdf_log',['../namespacestan_1_1prob.html#a9f090972ba99ef96684475140e8d7e39',1,'stan::prob']]], + ['double_5fexponential_5flog',['double_exponential_log',['../namespacestan_1_1prob.html#a7621036746361ce33a182006375fcf56',1,'stan::prob::double_exponential_log(const T_y &y, const T_loc &mu, const T_scale &sigma)'],['../namespacestan_1_1prob.html#a2fd04507640d7df4025cdf22bc1940e1',1,'stan::prob::double_exponential_log(const T_y &y, const T_loc &mu, const T_scale &sigma)']]], + ['double_5fexponential_5frng',['double_exponential_rng',['../namespacestan_1_1prob.html#aced8b51bafb8aa39773b8f278559ec09',1,'stan::prob']]], + ['double_5fliteral',['double_literal',['../structstan_1_1gm_1_1double__literal.html#abab56647c315a43fdb62b7b2f1ff3ce2',1,'stan::gm::double_literal::double_literal()'],['../structstan_1_1gm_1_1double__literal.html#a99fefae4612adf8c085e2ce158bba7b3',1,'stan::gm::double_literal::double_literal(double val)']]], + ['double_5fvalues',['double_values',['../classstan_1_1io_1_1dump__reader.html#ac275a400d67c89a01d980fa2ea093ed3',1,'stan::io::dump_reader']]], + ['double_5fvar_5fdecl',['double_var_decl',['../structstan_1_1gm_1_1double__var__decl.html#ac777d487174edeba42d587ff70ebbf38',1,'stan::gm::double_var_decl::double_var_decl()'],['../structstan_1_1gm_1_1double__var__decl.html#a0f4506bf06efcfc3bdec5db3aad51f80',1,'stan::gm::double_var_decl::double_var_decl(range const &range, std::string const &name, std::vector< expression > const &dims)']]], + ['doublevectorview',['DoubleVectorView',['../classstan_1_1_double_vector_view.html#a574803fc6d532f052ffcce6b8cefac58',1,'stan::DoubleVectorView::DoubleVectorView()'],['../classstan_1_1_double_vector_view_3_01true_00_01false_01_4.html#a73f42b82f90108127bcd8e4952328618',1,'stan::DoubleVectorView< true, false >::DoubleVectorView()'],['../classstan_1_1_double_vector_view_3_01true_00_01true_01_4.html#a2ed705a71ac46654258500ecdff057aa',1,'stan::DoubleVectorView< true, true >::DoubleVectorView()']]], + ['dphi_5fdq',['dphi_dq',['../classstan_1_1mcmc_1_1base__hamiltonian.html#a4ac1d9af0360d98a5f5725752d784d26',1,'stan::mcmc::base_hamiltonian::dphi_dq()'],['../classstan_1_1mcmc_1_1dense__e__metric.html#a1172afcf9fdfe07704c6fde165d2c65d',1,'stan::mcmc::dense_e_metric::dphi_dq()'],['../classstan_1_1mcmc_1_1diag__e__metric.html#afdc9e9ca146ec4afc943f1643d1abf5c',1,'stan::mcmc::diag_e_metric::dphi_dq()'],['../classstan_1_1mcmc_1_1unit__e__metric.html#aa309e8c017d1d65eb4c1996ec52375a1',1,'stan::mcmc::unit_e_metric::dphi_dq()']]], + ['dtau_5fdp',['dtau_dp',['../classstan_1_1mcmc_1_1base__hamiltonian.html#a52f1eecd0e71160cbe496af89ecb163e',1,'stan::mcmc::base_hamiltonian::dtau_dp()'],['../classstan_1_1mcmc_1_1dense__e__metric.html#a42125a6efb109bad98202343bd4f16dc',1,'stan::mcmc::dense_e_metric::dtau_dp()'],['../classstan_1_1mcmc_1_1diag__e__metric.html#a02386e255cd255f066f9620d3dbb41f3',1,'stan::mcmc::diag_e_metric::dtau_dp()'],['../classstan_1_1mcmc_1_1unit__e__metric.html#a7f21e1814aac56a2be51674b07f70744',1,'stan::mcmc::unit_e_metric::dtau_dp()']]], + ['dtau_5fdq',['dtau_dq',['../classstan_1_1mcmc_1_1base__hamiltonian.html#af61e96b9766092a3c161a020f440785d',1,'stan::mcmc::base_hamiltonian::dtau_dq()'],['../classstan_1_1mcmc_1_1dense__e__metric.html#acb07208943a4c9a73baa825e5c164b5c',1,'stan::mcmc::dense_e_metric::dtau_dq()'],['../classstan_1_1mcmc_1_1diag__e__metric.html#af03722a421a4b8f8a21fb2f4ae65d98e',1,'stan::mcmc::diag_e_metric::dtau_dq()'],['../classstan_1_1mcmc_1_1unit__e__metric.html#a87728dc744116e7e7b90ca0ffbc3c186',1,'stan::mcmc::unit_e_metric::dtau_dq()']]], + ['dummy_5fprecision',['dummy_precision',['../struct_eigen_1_1_num_traits_3_01stan_1_1agrad_1_1var_01_4.html#ae1b9c4f662ce5e4087ff27b4374116cf',1,'Eigen::NumTraits< stan::agrad::var >']]], + ['dump',['dump',['../classstan_1_1io_1_1dump.html#a05c2de349bdf89ef97e2940dfabe3064',1,'stan::io::dump']]], + ['dump_5flist',['dump_list',['../classstan_1_1io_1_1dump__writer.html#adeb591bec98817e4e2d3c049d672137f',1,'stan::io::dump_writer']]], + ['dump_5fmember_5fvar_5fvisgen',['dump_member_var_visgen',['../structstan_1_1gm_1_1dump__member__var__visgen.html#a4c22ce134acbfefce374269220cfd1d0',1,'stan::gm::dump_member_var_visgen']]], + ['dump_5freader',['dump_reader',['../classstan_1_1io_1_1dump__reader.html#a60f0c45b98358118444362c4a954068f',1,'stan::io::dump_reader::dump_reader()'],['../classstan_1_1io_1_1dump__reader.html#a5a2d82e204b9dc1b0af62fc902a17e37',1,'stan::io::dump_reader::dump_reader(std::istream &in)']]], + ['dump_5fstructure',['dump_structure',['../classstan_1_1io_1_1dump__writer.html#aeffcdc7277269597f6f9e0bbd6110ef8',1,'stan::io::dump_writer']]], + ['dump_5fvar',['dump_var',['../classstan_1_1io_1_1dump__writer.html#a7f58183f74acada75a5dd61a83234502',1,'stan::io::dump_writer']]], + ['dump_5fwriter',['dump_writer',['../classstan_1_1io_1_1dump__writer.html#ad5f0fd7ec8b1fc78d6719cabb6caa0d9',1,'stan::io::dump_writer::dump_writer()'],['../classstan_1_1io_1_1dump__writer.html#a783a19484fcba2bf776369f012a30509',1,'stan::io::dump_writer::dump_writer(std::ostream &out)']]] +]; diff --git a/doc/api/html/search/functions_65.html b/doc/api/html/search/functions_65.html new file mode 100644 index 00000000000..a77debae038 --- /dev/null +++ b/doc/api/html/search/functions_65.html @@ -0,0 +1,25 @@ + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/doc/api/html/search/functions_65.js b/doc/api/html/search/functions_65.js new file mode 100644 index 00000000000..d567ad816d5 --- /dev/null +++ b/doc/api/html/search/functions_65.js @@ -0,0 +1,39 @@ +var searchData= +[ + ['e',['e',['../namespacestan_1_1math.html#a3b650a0131d41167ef4837ecc7d02be5',1,'stan::math']]], + ['effective_5fsample_5fsize',['effective_sample_size',['../classstan_1_1mcmc_1_1chains.html#a37b1a6f5c8aa8cc7ecbce3008c4638b7',1,'stan::mcmc::chains::effective_sample_size(const int index)'],['../classstan_1_1mcmc_1_1chains.html#a02a748353706e1b811639d35021bfe7c',1,'stan::mcmc::chains::effective_sample_size(const std::string &name)']]], + ['eigenvalues_5fsym',['eigenvalues_sym',['../namespacestan_1_1math.html#aa37c65f508af7ad1d0b010aa5c932cbe',1,'stan::math']]], + ['eigenvectors_5fsym',['eigenvectors_sym',['../namespacestan_1_1math.html#a9bd4729756e6ed00a35f1e4531444c13',1,'stan::math']]], + ['elt_5fdivide',['elt_divide',['../namespacestan_1_1math.html#a3c9262da41fbf44fefc9a66141a0759d',1,'stan::math']]], + ['elt_5fmultiply',['elt_multiply',['../namespacestan_1_1math.html#a998e2dce5971bba8c059995797e22ba0',1,'stan::math']]], + ['empty_5fexp_5fvector',['EMPTY_EXP_VECTOR',['../namespacestan_1_1gm.html#a7b75153f298993fbca07d0e128a75771',1,'stan::gm']]], + ['end_5fadaptation_5fwindow',['end_adaptation_window',['../classstan_1_1mcmc_1_1windowed__adaptation.html#ae4b5c1e4712c89086d7f7e2c0463e245',1,'stan::mcmc::windowed_adaptation']]], + ['end_5fupdate_5fp',['end_update_p',['../classstan_1_1mcmc_1_1base__leapfrog.html#a4e043d1858bcbdaa2d84af24fadf0958',1,'stan::mcmc::base_leapfrog::end_update_p()'],['../classstan_1_1mcmc_1_1expl__leapfrog.html#a512ff7eeb698eb2aa276d10c77a25a2b',1,'stan::mcmc::expl_leapfrog::end_update_p()']]], + ['engage_5fadaptation',['engage_adaptation',['../classstan_1_1mcmc_1_1base__adapter.html#a7e1c264d6a6091938373903c813b6a0b',1,'stan::mcmc::base_adapter']]], + ['eol',['EOL',['../namespacestan_1_1gm.html#a24fe8f1f728798f3f4e922ae086c2473',1,'stan::gm']]], + ['eol2',['EOL2',['../namespacestan_1_1gm.html#affc181dd85ce73c82cfbd0cde2321c6b',1,'stan::gm']]], + ['epsilon',['epsilon',['../structstd_1_1numeric__limits_3_01stan_1_1agrad_1_1fvar_3_01_t_01_4_01_4.html#a5080115d295c7180feb653a44bfb0724',1,'std::numeric_limits< stan::agrad::fvar< T > >::epsilon()'],['../struct_eigen_1_1_num_traits_3_01stan_1_1agrad_1_1var_01_4.html#a9d192c3e8fe70d6ea68998877103ff6b',1,'Eigen::NumTraits< stan::agrad::var >::epsilon()'],['../structstd_1_1numeric__limits_3_01stan_1_1agrad_1_1var_01_4.html#a2f80ac604bf9bb4fd6d42d720264c803',1,'std::numeric_limits< stan::agrad::var >::epsilon()']]], + ['erf',['erf',['../namespacestan_1_1agrad.html#ac4d0f7557b5cea3a8e3a4ca05b5967fa',1,'stan::agrad::erf(const fvar< T > &x)'],['../namespacestan_1_1agrad.html#aa84c9d13118bbeb0d8838e79edb33406',1,'stan::agrad::erf(const stan::agrad::var &a)']]], + ['erfc',['erfc',['../namespacestan_1_1agrad.html#ad43010d593e90d2e8fffe7d314fc78a1',1,'stan::agrad::erfc(const fvar< T > &x)'],['../namespacestan_1_1agrad.html#a5e56afd5e6984624acdf4e6b0aebc251',1,'stan::agrad::erfc(const stan::agrad::var &a)']]], + ['evolve',['evolve',['../classstan_1_1mcmc_1_1base__integrator.html#a9462d1729356a62c9d3264c81bfe2ea8',1,'stan::mcmc::base_integrator::evolve()'],['../classstan_1_1mcmc_1_1base__leapfrog.html#aeaa5e375882c8792817432d5fb83cf1b',1,'stan::mcmc::base_leapfrog::evolve()']]], + ['exists',['exists',['../structstan_1_1gm_1_1variable__map.html#a29d85bf3018b2393c737dbb7d641ad32',1,'stan::gm::variable_map']]], + ['exp',['exp',['../namespacestan_1_1agrad.html#af8dbb5923cb5c5e94b80b21e1263e0e7',1,'stan::agrad::exp(const var &a)'],['../namespacestan_1_1agrad.html#a3953dfa2629b70db4117da64e77a1ba6',1,'stan::agrad::exp(const fvar< T > &x)'],['../namespacestan_1_1math.html#ac38f1fab5fe3e9b45c8c6e78ac3cc749',1,'stan::math::exp()']]], + ['exp2',['exp2',['../namespacestan_1_1agrad.html#a4bb4a54d8488b2d7ca364037c7495cf8',1,'stan::agrad::exp2(const fvar< T > &x)'],['../namespacestan_1_1agrad.html#a3c7b9522635566471bd40c9b994bd8b8',1,'stan::agrad::exp2(const stan::agrad::var &a)'],['../namespacestan_1_1math.html#a0ef734d7c3b8ebd689012295bf826e94',1,'stan::math::exp2()']]], + ['exp_5fmod_5fnormal_5fccdf_5flog',['exp_mod_normal_ccdf_log',['../namespacestan_1_1prob.html#acda3771d153ce0b6699db1bcabc7f994',1,'stan::prob']]], + ['exp_5fmod_5fnormal_5fcdf',['exp_mod_normal_cdf',['../namespacestan_1_1prob.html#a829c8e7a571893d48ee513be108162ac',1,'stan::prob']]], + ['exp_5fmod_5fnormal_5fcdf_5flog',['exp_mod_normal_cdf_log',['../namespacestan_1_1prob.html#a292d6dc1426b3aecc6a6415b0a5d9851',1,'stan::prob']]], + ['exp_5fmod_5fnormal_5flog',['exp_mod_normal_log',['../namespacestan_1_1prob.html#a95e73a8689e52bd28a8bb88f8ef0131b',1,'stan::prob::exp_mod_normal_log(const T_y &y, const T_loc &mu, const T_scale &sigma, const T_inv_scale &lambda)'],['../namespacestan_1_1prob.html#a0c333035ef21be05f6124919256ca7df',1,'stan::prob::exp_mod_normal_log(const T_y &y, const T_loc &mu, const T_scale &sigma, const T_inv_scale &lambda)']]], + ['exp_5fmod_5fnormal_5frng',['exp_mod_normal_rng',['../namespacestan_1_1prob.html#ad44443eca9be898e4a2fc013353a0f3c',1,'stan::prob']]], + ['expl_5fleapfrog',['expl_leapfrog',['../classstan_1_1mcmc_1_1expl__leapfrog.html#a2e93db18fb24e447931497904ae42421',1,'stan::mcmc::expl_leapfrog']]], + ['expm1',['expm1',['../namespacestan_1_1agrad.html#a0ebbcc9d6368c357c1daba678d71beec',1,'stan::agrad::expm1(const fvar< T > &x)'],['../namespacestan_1_1agrad.html#a0d2243d6b4d61aa41c095622e61e7a3e',1,'stan::agrad::expm1(const stan::agrad::var &a)']]], + ['exponential_5fccdf_5flog',['exponential_ccdf_log',['../namespacestan_1_1prob.html#a3ec6b8d579b4f186acb357692219d08e',1,'stan::prob']]], + ['exponential_5fcdf',['exponential_cdf',['../namespacestan_1_1prob.html#a3ed11c9b495e23976817f9c37b1f2af7',1,'stan::prob']]], + ['exponential_5fcdf_5flog',['exponential_cdf_log',['../namespacestan_1_1prob.html#a1f2a5189acae75f0eee599d604e872ab',1,'stan::prob']]], + ['exponential_5flog',['exponential_log',['../namespacestan_1_1prob.html#a6b5f560921b5b09edfe2f55ee909b17e',1,'stan::prob::exponential_log(const T_y &y, const T_inv_scale &beta)'],['../namespacestan_1_1prob.html#ae71620681df03e43f03002634a3c1855',1,'stan::prob::exponential_log(const T_y &y, const T_inv_scale &beta)']]], + ['exponential_5frng',['exponential_rng',['../namespacestan_1_1prob.html#a87460d0e1f55ec9fa5df01d59ef55bc0',1,'stan::prob']]], + ['expr_5ftype',['expr_type',['../structstan_1_1gm_1_1expr__type.html#a1ff96386c9bd4174c1a20d805238a992',1,'stan::gm::expr_type::expr_type()'],['../structstan_1_1gm_1_1expr__type.html#aa5e743430fd9c3891c635c3a23c038b1',1,'stan::gm::expr_type::expr_type(const base_expr_type base_type)'],['../structstan_1_1gm_1_1expr__type.html#a3c5bf10403a3eeb277f097f4c596ab92',1,'stan::gm::expr_type::expr_type(const base_expr_type base_type, size_t num_dims)']]], + ['expression',['expression',['../structstan_1_1gm_1_1expression.html#ab361d5eb3d8bb5fe05e601760781fdce',1,'stan::gm::expression::expression()'],['../structstan_1_1gm_1_1expression.html#a192ef1829feee7075f4d3490d025948c',1,'stan::gm::expression::expression(const expression &e)'],['../structstan_1_1gm_1_1expression.html#a865d7dc525a001c8168f4d171922cd1b',1,'stan::gm::expression::expression(const nil &expr)'],['../structstan_1_1gm_1_1expression.html#a1c8a3f8fb8bbe3d29f8dfe561926a757',1,'stan::gm::expression::expression(const int_literal &expr)'],['../structstan_1_1gm_1_1expression.html#a07b50b75a888a4cc0e04b11697448178',1,'stan::gm::expression::expression(const double_literal &expr)'],['../structstan_1_1gm_1_1expression.html#ab9dfe0c525980b4e33a6f635dd5a5201',1,'stan::gm::expression::expression(const array_literal &expr)'],['../structstan_1_1gm_1_1expression.html#ad6d7cf87fda52077b952285867864bca',1,'stan::gm::expression::expression(const variable &expr)'],['../structstan_1_1gm_1_1expression.html#a54c0b18de4561bf0cbfa866e95516b75',1,'stan::gm::expression::expression(const fun &expr)'],['../structstan_1_1gm_1_1expression.html#a369b4548b7c22bb6e5c9011009ed1689',1,'stan::gm::expression::expression(const index_op &expr)'],['../structstan_1_1gm_1_1expression.html#af033e3bb265198db64040977ef64ff2e',1,'stan::gm::expression::expression(const binary_op &expr)'],['../structstan_1_1gm_1_1expression.html#a51c9181abfa94bdc35c586b15cd65e8f',1,'stan::gm::expression::expression(const unary_op &expr)'],['../structstan_1_1gm_1_1expression.html#a9b2fb897812c6d640bc8eff392afcbb0',1,'stan::gm::expression::expression(const expression_t &expr_)']]], + ['expression_5fgrammar',['expression_grammar',['../structstan_1_1gm_1_1expression__grammar.html#a9a1dcf37552e3ba1eecc18cd4fe88528',1,'stan::gm::expression_grammar']]], + ['expression_5ftype',['expression_type',['../structstan_1_1gm_1_1expression.html#a61fc6d63842363ebf2c501286874a159',1,'stan::gm::expression']]], + ['expression_5fvisgen',['expression_visgen',['../structstan_1_1gm_1_1expression__visgen.html#a216c5cae399487b3a82c0e9005eb063c',1,'stan::gm::expression_visgen']]] +]; diff --git a/doc/api/html/search/functions_66.html b/doc/api/html/search/functions_66.html new file mode 100644 index 00000000000..319a5316a66 --- /dev/null +++ b/doc/api/html/search/functions_66.html @@ -0,0 +1,25 @@ + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/doc/api/html/search/functions_66.js b/doc/api/html/search/functions_66.js new file mode 100644 index 00000000000..bebac2294c9 --- /dev/null +++ b/doc/api/html/search/functions_66.js @@ -0,0 +1,25 @@ +var searchData= +[ + ['f32',['F32',['../namespacestan_1_1math.html#a582d3c65ec66505882d2d1b740887ae8',1,'stan::math']]], + ['fabs',['fabs',['../namespacestan_1_1agrad.html#a16b719a6d38dc2ccc9eeae9ecbdc6cce',1,'stan::agrad::fabs(const var &a)'],['../namespacestan_1_1agrad.html#ae8cb1fd9f1e72fef6e442c1e566006b9',1,'stan::agrad::fabs(const fvar< T > &x)']]], + ['factor_5fcov_5fmatrix',['factor_cov_matrix',['../namespacestan_1_1prob.html#a12303c67d7416a48497afe8b59913d13',1,'stan::prob']]], + ['falling_5ffactorial',['falling_factorial',['../namespacestan_1_1agrad.html#afd34f7d31e0b8259abb0f61fac5e6fcd',1,'stan::agrad::falling_factorial(const fvar< T > &x, const fvar< T > &n)'],['../namespacestan_1_1agrad.html#a22978d7897d2c1b62f9faa70b69969bb',1,'stan::agrad::falling_factorial(const fvar< T > &x, const double n)'],['../namespacestan_1_1agrad.html#a371442e647e39bf957ec3c9c58454d03',1,'stan::agrad::falling_factorial(const double x, const fvar< T > &n)'],['../namespacestan_1_1agrad.html#a3fe9336533c29b3f48381f31e5b2f34d',1,'stan::agrad::falling_factorial(const var &a, const double &b)'],['../namespacestan_1_1agrad.html#ac91a3d31a2220937ca9052d66c12292b',1,'stan::agrad::falling_factorial(const var &a, const var &b)'],['../namespacestan_1_1agrad.html#a9dee7426dac152938bbdb79b70395106',1,'stan::agrad::falling_factorial(const double &a, const var &b)'],['../namespacestan_1_1math.html#ac2df2a7019f7f68a915b3edab21921a1',1,'stan::math::falling_factorial()']]], + ['fdim',['fdim',['../namespacestan_1_1agrad.html#a3602c7867931bfd2085509c75596ce09',1,'stan::agrad::fdim(const fvar< T > &x1, const fvar< T > &x2)'],['../namespacestan_1_1agrad.html#a0be65ebed198f4ea8dbc5b7b1cd7126f',1,'stan::agrad::fdim(const fvar< T > &x1, const double x2)'],['../namespacestan_1_1agrad.html#a1035a00ecb52c988bab0a77698c00f44',1,'stan::agrad::fdim(const double x1, const fvar< T > &x2)'],['../namespacestan_1_1agrad.html#a8b11e04370013c6df527524463f9ca74',1,'stan::agrad::fdim(const stan::agrad::var &a, const stan::agrad::var &b)'],['../namespacestan_1_1agrad.html#a3cbb5f05f4a177ad199188f3be030b3e',1,'stan::agrad::fdim(const double &a, const stan::agrad::var &b)'],['../namespacestan_1_1agrad.html#ace71dd32d041a962cb481242ecacab0b',1,'stan::agrad::fdim(const stan::agrad::var &a, const double &b)'],['../namespacestan_1_1math.html#a7d2db622c0f83134b7f3ebd1eec3c1d6',1,'stan::math::fdim()']]], + ['fevals',['fevals',['../classstan_1_1optimization_1_1_model_adaptor.html#a77cd72166cb46c21e16c82f24dd84caf',1,'stan::optimization::ModelAdaptor']]], + ['fill',['fill',['../namespacestan_1_1math.html#a6d362e53d3d40b61e68fdd08dc5eb38b',1,'stan::math::fill(T &x, const S &y)'],['../namespacestan_1_1math.html#a73e791042ed648602eed1754679feff4',1,'stan::math::fill(Eigen::Matrix< T, R, C > &x, const S &y)'],['../namespacestan_1_1math.html#aa7f5d81c4d45f2407096def8810ffe00',1,'stan::math::fill(std::vector< T > &x, const S &y)']]], + ['find_5farg',['find_arg',['../classstan_1_1gm_1_1argument.html#af6212284d6fbf9ee71cdc0563d9bf891',1,'stan::gm::argument::find_arg()'],['../classstan_1_1gm_1_1categorical__argument.html#a24aa833497801c7a66c8ef8c599181ce',1,'stan::gm::categorical_argument::find_arg()'],['../classstan_1_1gm_1_1list__argument.html#a2428856fc920f6d7b4f50c1408bd9c9a',1,'stan::gm::list_argument::find_arg()'],['../classstan_1_1gm_1_1singleton__argument.html#a343a60ef80e0dd3eafe685141a6c3fa8',1,'stan::gm::singleton_argument::find_arg()']]], + ['finite_5fdiff_5fgrad',['finite_diff_grad',['../namespacestan_1_1model.html#a2660b5de2ccd8322d61f077d43289d18',1,'stan::model']]], + ['fixed_5fparam_5fsampler',['fixed_param_sampler',['../classstan_1_1mcmc_1_1fixed__param__sampler.html#a4499990d01be06e4302386f5fe8feac2',1,'stan::mcmc::fixed_param_sampler']]], + ['floor',['floor',['../namespacestan_1_1agrad.html#aa9046719ea83cad7cf7dace32ede78ce',1,'stan::agrad::floor(const var &a)'],['../namespacestan_1_1agrad.html#a266dcbe1451957c1fc2c32b2ae2870f3',1,'stan::agrad::floor(const fvar< T > &x)']]], + ['fma',['fma',['../namespacestan_1_1agrad.html#a5f77bec24d717ec5f98b996f0be4cab4',1,'stan::agrad::fma(const fvar< T1 > &x1, const fvar< T2 > &x2, const fvar< T3 > &x3)'],['../namespacestan_1_1agrad.html#a86c32e534514f635bf641508b30804bb',1,'stan::agrad::fma(const T1 &x1, const fvar< T2 > &x2, const fvar< T3 > &x3)'],['../namespacestan_1_1agrad.html#ab0b96f19fcab78ceea15a6c0a95f8d7d',1,'stan::agrad::fma(const fvar< T1 > &x1, const T2 &x2, const fvar< T3 > &x3)'],['../namespacestan_1_1agrad.html#a663c1cc77abf57686013dbb666bf1ed0',1,'stan::agrad::fma(const fvar< T1 > &x1, const fvar< T2 > &x2, const T3 &x3)'],['../namespacestan_1_1agrad.html#a48956c680d59182a8b63d9e52f2ee2d8',1,'stan::agrad::fma(const T1 &x1, const T2 &x2, const fvar< T3 > &x3)'],['../namespacestan_1_1agrad.html#a2f1cefa8d0717c47703394f7724f86d8',1,'stan::agrad::fma(const fvar< T1 > &x1, const T2 &x2, const T3 &x3)'],['../namespacestan_1_1agrad.html#a1116b96b95098db023b128fa810a3828',1,'stan::agrad::fma(const T1 &x1, const fvar< T2 > &x2, const T3 &x3)'],['../namespacestan_1_1agrad.html#a236c6ba1684b8993ab0ca0d4319ebc15',1,'stan::agrad::fma(const stan::agrad::var &a, const stan::agrad::var &b, const stan::agrad::var &c)'],['../namespacestan_1_1agrad.html#a60d474fe443809433d909f153e326f63',1,'stan::agrad::fma(const stan::agrad::var &a, const stan::agrad::var &b, const double &c)'],['../namespacestan_1_1agrad.html#a4a8f1b59063836f79f91e61aa37e7f24',1,'stan::agrad::fma(const stan::agrad::var &a, const double &b, const stan::agrad::var &c)'],['../namespacestan_1_1agrad.html#afbff5da93a0ea4d23fc83faf70d866c0',1,'stan::agrad::fma(const stan::agrad::var &a, const double &b, const double &c)'],['../namespacestan_1_1agrad.html#a114089c3582069352ec3055927da54b3',1,'stan::agrad::fma(const double &a, const stan::agrad::var &b, const double &c)'],['../namespacestan_1_1agrad.html#a2858845a5ac98800b708c7c42ccaac35',1,'stan::agrad::fma(const double &a, const double &b, const stan::agrad::var &c)'],['../namespacestan_1_1agrad.html#aba5953fcb09dca0142b23409bd6c2766',1,'stan::agrad::fma(const double &a, const stan::agrad::var &b, const stan::agrad::var &c)'],['../namespacestan_1_1math.html#ad8ac3f1f4f177645d84a1d6480f70d96',1,'stan::math::fma()']]], + ['fmax',['fmax',['../namespacestan_1_1agrad.html#a2cf89150207e0d529ffd68744593a2bc',1,'stan::agrad::fmax(const fvar< T > &x1, const fvar< T > &x2)'],['../namespacestan_1_1agrad.html#a2cf4931ad43b37de539770207eb9e531',1,'stan::agrad::fmax(const double x1, const fvar< T > &x2)'],['../namespacestan_1_1agrad.html#a3f3435dc40e6c86fd4fd495357fbf6a9',1,'stan::agrad::fmax(const fvar< T > &x1, const double x2)'],['../namespacestan_1_1agrad.html#a6bfbbbe6a55f984d587261a0d7213936',1,'stan::agrad::fmax(const stan::agrad::var &a, const stan::agrad::var &b)'],['../namespacestan_1_1agrad.html#ae46ecdd6d3cfa395ddfe12b425ae292a',1,'stan::agrad::fmax(const stan::agrad::var &a, const double &b)'],['../namespacestan_1_1agrad.html#adc9389efdd26ce3ba31890e70620026b',1,'stan::agrad::fmax(const double &a, const stan::agrad::var &b)']]], + ['fmin',['fmin',['../namespacestan_1_1agrad.html#aac4bc7dd96a78ed7ba7a03d268ead9eb',1,'stan::agrad::fmin(const fvar< T > &x1, const fvar< T > &x2)'],['../namespacestan_1_1agrad.html#a855b36ac5868d163a4501b77359560ab',1,'stan::agrad::fmin(const double x1, const fvar< T > &x2)'],['../namespacestan_1_1agrad.html#a3f0537c9981801bd4c0f04d6580b9385',1,'stan::agrad::fmin(const fvar< T > &x1, const double x2)'],['../namespacestan_1_1agrad.html#af9ad06d7c50e65542e3a83c1d7bf8bcc',1,'stan::agrad::fmin(const stan::agrad::var &a, const stan::agrad::var &b)'],['../namespacestan_1_1agrad.html#a46d5b1c42b386e876cadf5948cdf8256',1,'stan::agrad::fmin(const stan::agrad::var &a, const double &b)'],['../namespacestan_1_1agrad.html#a3afd698a7b861deeca2539c60ce89743',1,'stan::agrad::fmin(const double &a, const stan::agrad::var &b)']]], + ['fmod',['fmod',['../namespacestan_1_1agrad.html#ad475182b7f8b4849bb596e2529838bb6',1,'stan::agrad::fmod(const var &a, const var &b)'],['../namespacestan_1_1agrad.html#af96a5057c49216f1bda2be3a906b93f3',1,'stan::agrad::fmod(const var &a, const double &b)'],['../namespacestan_1_1agrad.html#adf82aceb2eca59a1fa422ea6dcfad435',1,'stan::agrad::fmod(const double &a, const var &b)'],['../namespacestan_1_1agrad.html#a4f6323825127dbf709facbed66f9e788',1,'stan::agrad::fmod(const fvar< T > &x1, const fvar< T > &x2)'],['../namespacestan_1_1agrad.html#ad974df65ff640e773ea32c6061d732f9',1,'stan::agrad::fmod(const fvar< T > &x1, const double x2)'],['../namespacestan_1_1agrad.html#a419533f3ed45a0fd5c77673e0db37915',1,'stan::agrad::fmod(const double x1, const fvar< T > &x2)'],['../namespacestan_1_1agrad.html#a48a712f23dfb6e5fe484fdda678bdff9',1,'stan::agrad::fmod(const var &a, const double b)'],['../namespacestan_1_1agrad.html#a478d71eb2e0aeb0df8fdba5c6933a2e6',1,'stan::agrad::fmod(const double a, const var &b)']]], + ['for_5fstatement',['for_statement',['../structstan_1_1gm_1_1for__statement.html#a34c29e8875104ecab7481e308626666e',1,'stan::gm::for_statement::for_statement()'],['../structstan_1_1gm_1_1for__statement.html#acc3bc5c944315988c6b7724b170e77b3',1,'stan::gm::for_statement::for_statement(std::string &variable, range &range, statement &stmt)']]], + ['fpclassify',['fpclassify',['../namespaceboost_1_1math.html#a81d6724493d3ad55a65f18a3e780ddf7',1,'boost::math']]], + ['free_5fall',['free_all',['../classstan_1_1memory_1_1chunk__alloc.html#aa313a74350df2c4dabf4b61d63e4a2a9',1,'stan::memory::chunk_alloc::free_all()'],['../classstan_1_1memory_1_1stack__alloc.html#a02e126e827732287d7f4ede17316089a',1,'stan::memory::stack_alloc::free_all()']]], + ['free_5fmemory',['free_memory',['../classstan_1_1agrad_1_1vari.html#a7f23c079bd16b3183a46bb250ec231ac',1,'stan::agrad::vari::free_memory()'],['../namespacestan_1_1agrad.html#a97c8b13e0b24beeb9a67b880ac34b48c',1,'stan::agrad::free_memory()']]], + ['fun',['fun',['../structstan_1_1gm_1_1fun.html#ac61c1007763bc47ad4bbf7142de638fb',1,'stan::gm::fun::fun()'],['../structstan_1_1gm_1_1fun.html#ae988678efe42ba4871f47c7d30879feb',1,'stan::gm::fun::fun(std::string const &name, std::vector< expression > const &args)']]], + ['function_5fargs',['function_args',['../structstan_1_1gm_1_1generate__init__visgen.html#aa4efef315371d95e3fe70fd042da3705',1,'stan::gm::generate_init_visgen']]], + ['fvar',['fvar',['../structstan_1_1agrad_1_1fvar.html#a289970c8de6526ad9e5e8b323f26c7b5',1,'stan::agrad::fvar::fvar(const TV &val, const TD &deriv)'],['../structstan_1_1agrad_1_1fvar.html#a8aa84b5da53f24362d9b04f6e248d3d9',1,'stan::agrad::fvar::fvar(const TV &val)'],['../structstan_1_1agrad_1_1fvar.html#a18f9e0f72bd845ef6445ca616acbffcd',1,'stan::agrad::fvar::fvar()']]] +]; diff --git a/doc/api/html/search/functions_67.html b/doc/api/html/search/functions_67.html new file mode 100644 index 00000000000..d0ab42a3f73 --- /dev/null +++ b/doc/api/html/search/functions_67.html @@ -0,0 +1,25 @@ + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/doc/api/html/search/functions_67.js b/doc/api/html/search/functions_67.js new file mode 100644 index 00000000000..307034128d4 --- /dev/null +++ b/doc/api/html/search/functions_67.js @@ -0,0 +1,135 @@ +var searchData= +[ + ['gamma_5fccdf_5flog',['gamma_ccdf_log',['../namespacestan_1_1prob.html#ad7ee96f7433a8a2213f6c00d053fcc98',1,'stan::prob']]], + ['gamma_5fcdf',['gamma_cdf',['../namespacestan_1_1prob.html#a0056f042d18ab321812adae932f7788e',1,'stan::prob']]], + ['gamma_5fcdf_5flog',['gamma_cdf_log',['../namespacestan_1_1prob.html#a74f0bab3925e33a3f4d41ad844172b27',1,'stan::prob']]], + ['gamma_5flog',['gamma_log',['../namespacestan_1_1prob.html#a79b5cdb98cde395af01ceeb3e643788b',1,'stan::prob::gamma_log(const T_y &y, const T_shape &alpha, const T_inv_scale &beta)'],['../namespacestan_1_1prob.html#a762b08e1b594764a002a4503042a1782',1,'stan::prob::gamma_log(const T_y &y, const T_shape &alpha, const T_inv_scale &beta)']]], + ['gamma_5fp',['gamma_p',['../namespacestan_1_1agrad.html#af866ffae5b244d1e6e93bd7ed85452c9',1,'stan::agrad::gamma_p(const fvar< T > &x1, const fvar< T > &x2)'],['../namespacestan_1_1agrad.html#a8448454064a4337b6358d60e2d6820ff',1,'stan::agrad::gamma_p(const fvar< T > &x1, const double x2)'],['../namespacestan_1_1agrad.html#a0b6a1689e89d7de041e7bc4e57bcd1c7',1,'stan::agrad::gamma_p(const double x1, const fvar< T > &x2)'],['../namespacestan_1_1agrad.html#a998c50e583b44604ded2c213ed565b72',1,'stan::agrad::gamma_p(const stan::agrad::var &a, const stan::agrad::var &b)'],['../namespacestan_1_1agrad.html#a27226e41e865a880d1d5628d7b7aeba5',1,'stan::agrad::gamma_p(const stan::agrad::var &a, const double &b)'],['../namespacestan_1_1agrad.html#a1be9111ad018e40e8388d628e527255d',1,'stan::agrad::gamma_p(const double &a, const stan::agrad::var &b)'],['../namespacestan_1_1math.html#aed411d626d4ae01a76584c454a83673f',1,'stan::math::gamma_p()']]], + ['gamma_5fq',['gamma_q',['../namespacestan_1_1agrad.html#a11135a2ea60dac802a560b6d650df60f',1,'stan::agrad::gamma_q(const fvar< T > &x1, const fvar< T > &x2)'],['../namespacestan_1_1agrad.html#a032ac91edd3d7ca00478b937353fd63f',1,'stan::agrad::gamma_q(const fvar< T > &x1, const double x2)'],['../namespacestan_1_1agrad.html#ad8bb1c38eb8ba69d50c8ccb3452719e3',1,'stan::agrad::gamma_q(const double x1, const fvar< T > &x2)'],['../namespacestan_1_1agrad.html#abbfd6400f96010759da0a7f20a0e6991',1,'stan::agrad::gamma_q(const stan::agrad::var &a, const stan::agrad::var &b)'],['../namespacestan_1_1agrad.html#af9f89bf49133aa1ef45e6b3257b84c63',1,'stan::agrad::gamma_q(const stan::agrad::var &a, const double &b)'],['../namespacestan_1_1agrad.html#a5df71efbadd34735e269ce904160ceb9',1,'stan::agrad::gamma_q(const double &a, const stan::agrad::var &b)'],['../namespacestan_1_1math.html#a0830ba049b81bc98ea9fbcf1eb7b4bd6',1,'stan::math::gamma_q()']]], + ['gamma_5frng',['gamma_rng',['../namespacestan_1_1prob.html#ae48a407db43161a34812a8ed250de25c',1,'stan::prob']]], + ['gaussian_5fdlm_5fobs_5flog',['gaussian_dlm_obs_log',['../namespacestan_1_1prob.html#a2788e0ec29af261204d5a071a9ac6abb',1,'stan::prob::gaussian_dlm_obs_log(const Eigen::Matrix< T_y, Eigen::Dynamic, Eigen::Dynamic > &y, const Eigen::Matrix< T_F, Eigen::Dynamic, Eigen::Dynamic > &F, const Eigen::Matrix< T_G, Eigen::Dynamic, Eigen::Dynamic > &G, const Eigen::Matrix< T_V, Eigen::Dynamic, Eigen::Dynamic > &V, const Eigen::Matrix< T_W, Eigen::Dynamic, Eigen::Dynamic > &W, const Eigen::Matrix< T_m0, Eigen::Dynamic, 1 > &m0, const Eigen::Matrix< T_C0, Eigen::Dynamic, Eigen::Dynamic > &C0)'],['../namespacestan_1_1prob.html#abe03afe63c5a16f0900578622143fe11',1,'stan::prob::gaussian_dlm_obs_log(const Eigen::Matrix< T_y, Eigen::Dynamic, Eigen::Dynamic > &y, const Eigen::Matrix< T_F, Eigen::Dynamic, Eigen::Dynamic > &F, const Eigen::Matrix< T_G, Eigen::Dynamic, Eigen::Dynamic > &G, const Eigen::Matrix< T_V, Eigen::Dynamic, Eigen::Dynamic > &V, const Eigen::Matrix< T_W, Eigen::Dynamic, Eigen::Dynamic > &W, const Eigen::Matrix< T_m0, Eigen::Dynamic, 1 > &m0, const Eigen::Matrix< T_C0, Eigen::Dynamic, Eigen::Dynamic > &C0)'],['../namespacestan_1_1prob.html#a7205d695b5a1a8358299908ab943c812',1,'stan::prob::gaussian_dlm_obs_log(const Eigen::Matrix< T_y, Eigen::Dynamic, Eigen::Dynamic > &y, const Eigen::Matrix< T_F, Eigen::Dynamic, Eigen::Dynamic > &F, const Eigen::Matrix< T_G, Eigen::Dynamic, Eigen::Dynamic > &G, const Eigen::Matrix< T_V, Eigen::Dynamic, 1 > &V, const Eigen::Matrix< T_W, Eigen::Dynamic, Eigen::Dynamic > &W, const Eigen::Matrix< T_m0, Eigen::Dynamic, 1 > &m0, const Eigen::Matrix< T_C0, Eigen::Dynamic, Eigen::Dynamic > &C0)'],['../namespacestan_1_1prob.html#ab2f8f2486dabf18bc892a59326aabba6',1,'stan::prob::gaussian_dlm_obs_log(const Eigen::Matrix< T_y, Eigen::Dynamic, Eigen::Dynamic > &y, const Eigen::Matrix< T_F, Eigen::Dynamic, Eigen::Dynamic > &F, const Eigen::Matrix< T_G, Eigen::Dynamic, Eigen::Dynamic > &G, const Eigen::Matrix< T_V, Eigen::Dynamic, 1 > &V, const Eigen::Matrix< T_W, Eigen::Dynamic, Eigen::Dynamic > &W, const Eigen::Matrix< T_m0, Eigen::Dynamic, 1 > &m0, const Eigen::Matrix< T_C0, Eigen::Dynamic, Eigen::Dynamic > &C0)']]], + ['generate_5fbegin_5ffor_5fdims',['generate_begin_for_dims',['../structstan_1_1gm_1_1validate__var__decl__visgen.html#aff830ed631f54eff36b9a643d14d0223',1,'stan::gm::validate_var_decl_visgen']]], + ['generate_5fbuffer_5floop',['generate_buffer_loop',['../structstan_1_1gm_1_1generate__init__visgen.html#a05aa9ddaf49b4e575bf8c8ddd1c9caa8',1,'stan::gm::generate_init_visgen']]], + ['generate_5fcheck_5fdouble',['generate_check_double',['../structstan_1_1gm_1_1generate__init__visgen.html#adb02e4312d893d26819ea0535e72a395',1,'stan::gm::generate_init_visgen']]], + ['generate_5fcheck_5fint',['generate_check_int',['../structstan_1_1gm_1_1generate__init__visgen.html#ad97c800e8b97eb5e99e15be9e731856e',1,'stan::gm::generate_init_visgen']]], + ['generate_5fclass_5fdecl',['generate_class_decl',['../namespacestan_1_1gm.html#af08d462ee1f0e163d614e9ed03fe53c0',1,'stan::gm']]], + ['generate_5fcomment',['generate_comment',['../namespacestan_1_1gm.html#abba632c440fa0d045a469d12a7cef474',1,'stan::gm']]], + ['generate_5fconstrained_5fparam_5fnames_5fmethod',['generate_constrained_param_names_method',['../namespacestan_1_1gm.html#a5064d8f1632c7557de53ab9af11342f3',1,'stan::gm']]], + ['generate_5fconstructor',['generate_constructor',['../namespacestan_1_1gm.html#aa582396b750dabd6768f4adb30508349',1,'stan::gm']]], + ['generate_5fcpp',['generate_cpp',['../namespacestan_1_1gm.html#a668b578a61c97daacf978986469d1af1',1,'stan::gm']]], + ['generate_5fcsv_5fheader_5farray',['generate_csv_header_array',['../structstan_1_1gm_1_1write__csv__header__visgen.html#a8b2bffaeddce0015c69d6a300ce624de',1,'stan::gm::write_csv_header_visgen']]], + ['generate_5fdeclaration',['generate_declaration',['../structstan_1_1gm_1_1generate__init__visgen.html#a1d115ad0f68566f36cb724b45a67c6a0',1,'stan::gm::generate_init_visgen']]], + ['generate_5fdestructor',['generate_destructor',['../namespacestan_1_1gm.html#a2547842ef250f715e7121eab59f2263c',1,'stan::gm']]], + ['generate_5fdims_5farray',['generate_dims_array',['../structstan_1_1gm_1_1write__dims__visgen.html#ab1da381e42f08f05b968b62ff8ed8df0',1,'stan::gm::write_dims_visgen']]], + ['generate_5fdims_5floop_5ffwd',['generate_dims_loop_fwd',['../structstan_1_1gm_1_1generate__init__visgen.html#a793258abd85f441fd2ca1a15d06e81a3',1,'stan::gm::generate_init_visgen']]], + ['generate_5fdims_5fmethod',['generate_dims_method',['../namespacestan_1_1gm.html#ad25e6e8b2a6244b38ce779887bb4c17f',1,'stan::gm']]], + ['generate_5fend_5fclass_5fdecl',['generate_end_class_decl',['../namespacestan_1_1gm.html#adc6eed04035b3dd32a5e04d227d4cf68',1,'stan::gm']]], + ['generate_5fend_5ffor_5fdims',['generate_end_for_dims',['../structstan_1_1gm_1_1validate__var__decl__visgen.html#a84366f1b6aca2e4e6ce0dffbb65fd523',1,'stan::gm::validate_var_decl_visgen']]], + ['generate_5fend_5fnamespace',['generate_end_namespace',['../namespacestan_1_1gm.html#a9771868cf777556e7ea3dfabbfcccecb',1,'stan::gm']]], + ['generate_5fexpression',['generate_expression',['../namespacestan_1_1gm.html#a6d7cbee2be927cee628328a4e879294a',1,'stan::gm']]], + ['generate_5finclude',['generate_include',['../namespacestan_1_1gm.html#ab12d33faf3ee33c50995679a53496706',1,'stan::gm']]], + ['generate_5fincludes',['generate_includes',['../namespacestan_1_1gm.html#a6a9d6cf24f2051d0804f641525a36f8a',1,'stan::gm']]], + ['generate_5fincrement',['generate_increment',['../structstan_1_1gm_1_1set__param__ranges__visgen.html#a03bf3d67902d7addab06e8348fcad034',1,'stan::gm::set_param_ranges_visgen::generate_increment(std::vector< expression > dims) const '],['../structstan_1_1gm_1_1set__param__ranges__visgen.html#a643b15f7e1aebb50457c29795d98dbba',1,'stan::gm::set_param_ranges_visgen::generate_increment(expression K, std::vector< expression > dims) const '],['../structstan_1_1gm_1_1set__param__ranges__visgen.html#a02f19b449b05e3cc0c265dec2310bbcb',1,'stan::gm::set_param_ranges_visgen::generate_increment(expression M, expression N, std::vector< expression > dims) const ']]], + ['generate_5fincrement_5fi',['generate_increment_i',['../structstan_1_1gm_1_1set__param__ranges__visgen.html#a80cc6bdadbd3cfb04fb75d3674d3d74a',1,'stan::gm::set_param_ranges_visgen']]], + ['generate_5findent',['generate_indent',['../namespacestan_1_1gm.html#a5dfdee531df2c1a3fa39c3c5d9ee5edd',1,'stan::gm']]], + ['generate_5findent_5fnum_5fdims',['generate_indent_num_dims',['../structstan_1_1gm_1_1generate__init__visgen.html#a39fe228dfb30354fddb0bc9c3076fe78',1,'stan::gm::generate_init_visgen']]], + ['generate_5findexed_5fexpr',['generate_indexed_expr',['../namespacestan_1_1gm.html#acd8d56cc6cd4afabfb2b65f2e721be01',1,'stan::gm']]], + ['generate_5finit',['generate_init',['../structstan_1_1gm_1_1generate__local__var__init__nan__visgen.html#a90bfb805ab0dc6b9612a05254d86dbe5',1,'stan::gm::generate_local_var_init_nan_visgen']]], + ['generate_5finit_5fargs',['generate_init_args',['../structstan_1_1gm_1_1local__var__decl__visgen.html#ac57a75ce0bdc9749ed24792421119511',1,'stan::gm::local_var_decl_visgen']]], + ['generate_5finit_5fmethod',['generate_init_method',['../namespacestan_1_1gm.html#a208a651630210246d1cff43ebd3e7d0e',1,'stan::gm']]], + ['generate_5finit_5fvars',['generate_init_vars',['../namespacestan_1_1gm.html#a5e4c218a7d9e607732925c5a266a8f79',1,'stan::gm']]], + ['generate_5finit_5fvars_5fvisgen',['generate_init_vars_visgen',['../structstan_1_1gm_1_1generate__init__vars__visgen.html#a74161c591ed31e81372e5adbf9ae48d3',1,'stan::gm::generate_init_vars_visgen']]], + ['generate_5finit_5fvisgen',['generate_init_visgen',['../structstan_1_1gm_1_1generate__init__visgen.html#a245dc3d8b132021896c5f17d90901dc4',1,'stan::gm::generate_init_visgen']]], + ['generate_5finitialization',['generate_initialization',['../namespacestan_1_1gm.html#a2a09040ccbbc3628b80d4b17278a9d02',1,'stan::gm']]], + ['generate_5finitialize_5farray',['generate_initialize_array',['../structstan_1_1gm_1_1init__local__var__visgen.html#a5779f760dc12ada7971f2d8c009d45f3',1,'stan::gm::init_local_var_visgen::generate_initialize_array()'],['../structstan_1_1gm_1_1write__csv__visgen.html#a2a171b9ce86cbc005df39f73a0914db3',1,'stan::gm::write_csv_visgen::generate_initialize_array()'],['../structstan_1_1gm_1_1write__array__visgen.html#a58d0d5f31f9a489b4cc23f5256f0b56f',1,'stan::gm::write_array_visgen::generate_initialize_array()']]], + ['generate_5finitialize_5farray_5fbounded',['generate_initialize_array_bounded',['../structstan_1_1gm_1_1init__local__var__visgen.html#a7efee35863c753717d4831e51d2f2419',1,'stan::gm::init_local_var_visgen::generate_initialize_array_bounded()'],['../structstan_1_1gm_1_1write__csv__visgen.html#adfabff813b3be4aa0d56dfe894ab1da4',1,'stan::gm::write_csv_visgen::generate_initialize_array_bounded()'],['../structstan_1_1gm_1_1write__array__visgen.html#a149aa727af8bfdd53d2e494eb75c9201',1,'stan::gm::write_array_visgen::generate_initialize_array_bounded()']]], + ['generate_5finitializer',['generate_initializer',['../namespacestan_1_1gm.html#ac3b48b7ab230ddd3d882103245827857',1,'stan::gm']]], + ['generate_5flocal_5fvar_5fdecls',['generate_local_var_decls',['../namespacestan_1_1gm.html#a258ce4643ff39bb93d455f8ae8698a8e',1,'stan::gm']]], + ['generate_5flocal_5fvar_5finit_5fnan',['generate_local_var_init_nan',['../namespacestan_1_1gm.html#a6b6842504d267f2ec759ad7b25e7fac3',1,'stan::gm']]], + ['generate_5flocal_5fvar_5finit_5fnan_5fvisgen',['generate_local_var_init_nan_visgen',['../structstan_1_1gm_1_1generate__local__var__init__nan__visgen.html#a49fb5d91eaa967066d5f5c39a64fa972',1,'stan::gm::generate_local_var_init_nan_visgen']]], + ['generate_5flocal_5fvar_5finits',['generate_local_var_inits',['../namespacestan_1_1gm.html#a890d6d9cd0b21a64327ccf76a9a7e824',1,'stan::gm']]], + ['generate_5flog_5fprob',['generate_log_prob',['../namespacestan_1_1gm.html#a4d93a678fb6ead7a8554de1758f36034',1,'stan::gm']]], + ['generate_5floop_5fvar',['generate_loop_var',['../structstan_1_1gm_1_1validate__var__decl__visgen.html#ad480023da77dc0a07bd592377dde6479',1,'stan::gm::validate_var_decl_visgen']]], + ['generate_5fmain',['generate_main',['../namespacestan_1_1gm.html#a425cf99f39ca9123446a5192eeee83e0',1,'stan::gm']]], + ['generate_5fmember_5fvar_5fdecls',['generate_member_var_decls',['../namespacestan_1_1gm.html#a63d43e75db4c7e7ff2dda2d1036df363',1,'stan::gm']]], + ['generate_5fmember_5fvar_5finits',['generate_member_var_inits',['../namespacestan_1_1gm.html#adc65399d7375f831d8d4d806b62b6293',1,'stan::gm']]], + ['generate_5fmodel_5fname_5fmethod',['generate_model_name_method',['../namespacestan_1_1gm.html#a06761a1392734570a22e5a492141bce8',1,'stan::gm']]], + ['generate_5fname_5fdims',['generate_name_dims',['../structstan_1_1gm_1_1generate__init__visgen.html#aeb5f4afc816218d11e8e76222d766a08',1,'stan::gm::generate_init_visgen']]], + ['generate_5fparam_5fnames',['generate_param_names',['../structstan_1_1gm_1_1write__param__names__visgen.html#a2532b08b83077c52daedb50fc6864f44',1,'stan::gm::write_param_names_visgen']]], + ['generate_5fparam_5fnames_5farray',['generate_param_names_array',['../structstan_1_1gm_1_1constrained__param__names__visgen.html#a797d0bdd948219ece7f55b13d9ab5bff',1,'stan::gm::constrained_param_names_visgen::generate_param_names_array()'],['../structstan_1_1gm_1_1unconstrained__param__names__visgen.html#aa147cbae3df22ef747f281ccb73e8f4f',1,'stan::gm::unconstrained_param_names_visgen::generate_param_names_array()']]], + ['generate_5fparam_5fnames_5fmethod',['generate_param_names_method',['../namespacestan_1_1gm.html#a4c248f99b9df350026ff05c604181358',1,'stan::gm']]], + ['generate_5fprintable',['generate_printable',['../namespacestan_1_1gm.html#ae27bbd9b3b5dbc0f93bbcd9f198a46eb',1,'stan::gm']]], + ['generate_5fprivate_5fdecl',['generate_private_decl',['../namespacestan_1_1gm.html#a8c0b83999d50ab15f1c8503f33a3d47c',1,'stan::gm']]], + ['generate_5fpublic_5fdecl',['generate_public_decl',['../namespacestan_1_1gm.html#a30e9216cd9f5d025bcb3dde6aa0c86b0',1,'stan::gm']]], + ['generate_5fset_5fparam_5franges',['generate_set_param_ranges',['../namespacestan_1_1gm.html#a7ce48f574b608d4ecebac5dc7c3fe21e',1,'stan::gm']]], + ['generate_5fstart_5fnamespace',['generate_start_namespace',['../namespacestan_1_1gm.html#a297a49a54728e0866002eeb4350f46dd',1,'stan::gm']]], + ['generate_5fstatement',['generate_statement',['../namespacestan_1_1gm.html#ad06f7d19c1a004ec456362bd32369cc9',1,'stan::gm']]], + ['generate_5fstatements',['generate_statements',['../namespacestan_1_1gm.html#a09382dd26edd6d5095555b7b1dea2c6d',1,'stan::gm']]], + ['generate_5ftype',['generate_type',['../structstan_1_1gm_1_1local__var__decl__visgen.html#a9eac0e6e7549ecf508f56097b8beaaa5',1,'stan::gm::local_var_decl_visgen::generate_type()'],['../namespacestan_1_1gm.html#a513a251d0b3d2e80bc0b9e32ecfeea0d',1,'stan::gm::generate_type()']]], + ['generate_5ftypedef',['generate_typedef',['../namespacestan_1_1gm.html#a6150f8826fdd1742c1287552966cb6d0',1,'stan::gm']]], + ['generate_5ftypedefs',['generate_typedefs',['../namespacestan_1_1gm.html#a1515682780f226a7001d930fd2c1e1d0',1,'stan::gm']]], + ['generate_5funconstrained_5fparam_5fnames_5fmethod',['generate_unconstrained_param_names_method',['../namespacestan_1_1gm.html#a7caf37b3f443d37d400f9f647a5d4f7b',1,'stan::gm']]], + ['generate_5fusing',['generate_using',['../namespacestan_1_1gm.html#a8669bcb4fa524c442de23cedeb7aaa23',1,'stan::gm']]], + ['generate_5fusing_5fnamespace',['generate_using_namespace',['../namespacestan_1_1gm.html#aab6c7437ec473e5dbe083f86b1b059ae',1,'stan::gm']]], + ['generate_5fusings',['generate_usings',['../namespacestan_1_1gm.html#aa985aaef054c7f1af4a9628ef6a9155d',1,'stan::gm']]], + ['generate_5fvalidate_5fcontext_5fsize',['generate_validate_context_size',['../namespacestan_1_1gm.html#a33b21b6ece1a626d859d7d0e16bc0914',1,'stan::gm']]], + ['generate_5fvalidate_5fpositive',['generate_validate_positive',['../namespacestan_1_1gm.html#ae5e451a20922d72237b17635a04629c6',1,'stan::gm']]], + ['generate_5fvalidate_5ftransformed_5fparams',['generate_validate_transformed_params',['../namespacestan_1_1gm.html#ae40fee02e525b4599929a3898b14493a',1,'stan::gm']]], + ['generate_5fvalidate_5fvar_5fdecl',['generate_validate_var_decl',['../namespacestan_1_1gm.html#a52bae0dc2622d9a571205c83441d1bce',1,'stan::gm']]], + ['generate_5fvalidate_5fvar_5fdecls',['generate_validate_var_decls',['../namespacestan_1_1gm.html#a43655ffe4072e69181e20c6e5e3254cf',1,'stan::gm']]], + ['generate_5fvar_5fresizing',['generate_var_resizing',['../namespacestan_1_1gm.html#a3d65cdc4d78792bed25979830e67b9eb',1,'stan::gm']]], + ['generate_5fversion_5fcomment',['generate_version_comment',['../namespacestan_1_1gm.html#ad46a7bc5909963f3af53bb69c764c415',1,'stan::gm']]], + ['generate_5fvoid_5fstatement',['generate_void_statement',['../structstan_1_1gm_1_1local__var__decl__visgen.html#aa2abf6410868390e087ab93c583a5eaf',1,'stan::gm::local_var_decl_visgen::generate_void_statement()'],['../namespacestan_1_1gm.html#aa1deb42499e1aeaf64a3f66f7e08220e',1,'stan::gm::generate_void_statement()']]], + ['generate_5fwrite_5farray_5fmethod',['generate_write_array_method',['../namespacestan_1_1gm.html#a56f6bed9b4ff736ba8282d9cb81ff0c2',1,'stan::gm']]], + ['generate_5fwrite_5fcsv_5fheader_5fmethod',['generate_write_csv_header_method',['../namespacestan_1_1gm.html#a175fe5ebc2de7986e91d335a0f973642',1,'stan::gm']]], + ['generate_5fwrite_5fcsv_5fmethod',['generate_write_csv_method',['../namespacestan_1_1gm.html#a8576715fcf1c68be750ae6f9b5928923',1,'stan::gm']]], + ['generate_5fwrite_5floop',['generate_write_loop',['../structstan_1_1gm_1_1generate__init__visgen.html#a6a491ca19f67492859f69414e65c2859',1,'stan::gm::generate_init_visgen']]], + ['get',['get',['../structstan_1_1gm_1_1variable__map.html#af16b9b2424cf92cd3804908986d53ff1',1,'stan::gm::variable_map::get()'],['../namespacestan.html#a2e926e5518c0c2f289f79d23010815d3',1,'stan::get(const T &x, size_t n)'],['../namespacestan.html#a431bd201f09a215cccb16cda10a1e840',1,'stan::get(const std::vector< T > &x, size_t n)'],['../namespacestan.html#aa0b8055d979ee18e43048b99eccb5640',1,'stan::get(const Eigen::Matrix< T, R, C > &m, size_t n)']]], + ['get_5fbase1',['get_base1',['../namespacestan_1_1math.html#a7535c86e2c9ee9d5391a8cc63187317e',1,'stan::math::get_base1(const std::vector< T > &x, size_t i, const char *error_msg, size_t idx)'],['../namespacestan_1_1math.html#aca7c84b936da0d3422507927cf9a68cc',1,'stan::math::get_base1(const std::vector< std::vector< T > > &x, size_t i1, size_t i2, const char *error_msg, size_t idx)'],['../namespacestan_1_1math.html#a714e39ba9fcbbd90c787a51d511c9af1',1,'stan::math::get_base1(const std::vector< std::vector< std::vector< T > > > &x, size_t i1, size_t i2, size_t i3, const char *error_msg, size_t idx)'],['../namespacestan_1_1math.html#aa23b355397df347249da513307fd6667',1,'stan::math::get_base1(const std::vector< std::vector< std::vector< std::vector< T > > > > &x, size_t i1, size_t i2, size_t i3, size_t i4, const char *error_msg, size_t idx)'],['../namespacestan_1_1math.html#a25c1fac0445beea55c521c94f360e13e',1,'stan::math::get_base1(const std::vector< std::vector< std::vector< std::vector< std::vector< T > > > > > &x, size_t i1, size_t i2, size_t i3, size_t i4, size_t i5, const char *error_msg, size_t idx)'],['../namespacestan_1_1math.html#a20a82151947fc8816c5ce5b7bc6d8abd',1,'stan::math::get_base1(const std::vector< std::vector< std::vector< std::vector< std::vector< std::vector< T > > > > > > &x, size_t i1, size_t i2, size_t i3, size_t i4, size_t i5, size_t i6, const char *error_msg, size_t idx)'],['../namespacestan_1_1math.html#a6fb72caff19c8ce19dc6e3c25c79f7b8',1,'stan::math::get_base1(const std::vector< std::vector< std::vector< std::vector< std::vector< std::vector< std::vector< T > > > > > > > &x, size_t i1, size_t i2, size_t i3, size_t i4, size_t i5, size_t i6, size_t i7, const char *error_msg, size_t idx)'],['../namespacestan_1_1math.html#accc97dd76490d575638ebb22da233a53',1,'stan::math::get_base1(const std::vector< std::vector< std::vector< std::vector< std::vector< std::vector< std::vector< std::vector< T > > > > > > > > &x, size_t i1, size_t i2, size_t i3, size_t i4, size_t i5, size_t i6, size_t i7, size_t i8, const char *error_msg, size_t idx)'],['../namespacestan_1_1math.html#ae72208605f731144cab862feecb456a2',1,'stan::math::get_base1(const Eigen::Matrix< T, Eigen::Dynamic, Eigen::Dynamic > &x, size_t m, const char *error_msg, size_t idx)'],['../namespacestan_1_1math.html#a51091bb67549e42c241f4e08e7d291d6',1,'stan::math::get_base1(const Eigen::Matrix< T, Eigen::Dynamic, Eigen::Dynamic > &x, size_t m, size_t n, const char *error_msg, size_t idx)'],['../namespacestan_1_1math.html#ab0dbeed50ff3f8630ea3cd54f9ecb804',1,'stan::math::get_base1(const Eigen::Matrix< T, Eigen::Dynamic, 1 > &x, size_t m, const char *error_msg, size_t idx)'],['../namespacestan_1_1math.html#abf9dcd5236495d3f581b31dd05b9a227',1,'stan::math::get_base1(const Eigen::Matrix< T, 1, Eigen::Dynamic > &x, size_t n, const char *error_msg, size_t idx)']]], + ['get_5fbase1_5flhs',['get_base1_lhs',['../namespacestan_1_1math.html#ac54b1427fd9d0765f0200dc9caa830f9',1,'stan::math::get_base1_lhs(std::vector< T > &x, size_t i, const char *error_msg, size_t idx)'],['../namespacestan_1_1math.html#a4d5711f99869d05a6263218f3256e582',1,'stan::math::get_base1_lhs(std::vector< std::vector< T > > &x, size_t i1, size_t i2, const char *error_msg, size_t idx)'],['../namespacestan_1_1math.html#a37f3ceaa6197904ef662f1edc8245e1a',1,'stan::math::get_base1_lhs(std::vector< std::vector< std::vector< T > > > &x, size_t i1, size_t i2, size_t i3, const char *error_msg, size_t idx)'],['../namespacestan_1_1math.html#a3132eb36eaf861cfbd119b38e0a85a15',1,'stan::math::get_base1_lhs(std::vector< std::vector< std::vector< std::vector< T > > > > &x, size_t i1, size_t i2, size_t i3, size_t i4, const char *error_msg, size_t idx)'],['../namespacestan_1_1math.html#afbcc061003aabcaf675f4415adc80c0a',1,'stan::math::get_base1_lhs(std::vector< std::vector< std::vector< std::vector< std::vector< T > > > > > &x, size_t i1, size_t i2, size_t i3, size_t i4, size_t i5, const char *error_msg, size_t idx)'],['../namespacestan_1_1math.html#a1958245532761be08be7ac9bc781f3a7',1,'stan::math::get_base1_lhs(std::vector< std::vector< std::vector< std::vector< std::vector< std::vector< T > > > > > > &x, size_t i1, size_t i2, size_t i3, size_t i4, size_t i5, size_t i6, const char *error_msg, size_t idx)'],['../namespacestan_1_1math.html#aedc7fc712ebe439bec1892c8f69447cd',1,'stan::math::get_base1_lhs(std::vector< std::vector< std::vector< std::vector< std::vector< std::vector< std::vector< T > > > > > > > &x, size_t i1, size_t i2, size_t i3, size_t i4, size_t i5, size_t i6, size_t i7, const char *error_msg, size_t idx)'],['../namespacestan_1_1math.html#a64467731d9abfaf97ea8d541d528142c',1,'stan::math::get_base1_lhs(std::vector< std::vector< std::vector< std::vector< std::vector< std::vector< std::vector< std::vector< T > > > > > > > > &x, size_t i1, size_t i2, size_t i3, size_t i4, size_t i5, size_t i6, size_t i7, size_t i8, const char *error_msg, size_t idx)'],['../namespacestan_1_1math.html#abbdd7246170c1c0cade6c7be73f436e0',1,'stan::math::get_base1_lhs(Eigen::Matrix< T, Eigen::Dynamic, Eigen::Dynamic > &x, size_t m, const char *error_msg, size_t idx)'],['../namespacestan_1_1math.html#af8cb7e6e670cddcdf5527ec92fa3ff37',1,'stan::math::get_base1_lhs(Eigen::Matrix< T, Eigen::Dynamic, Eigen::Dynamic > &x, size_t m, size_t n, const char *error_msg, size_t idx)'],['../namespacestan_1_1math.html#adffeab694f7588c92dc97b6736e5be7b',1,'stan::math::get_base1_lhs(Eigen::Matrix< T, Eigen::Dynamic, 1 > &x, size_t m, const char *error_msg, size_t idx)'],['../namespacestan_1_1math.html#a6133d90708e16760b6394c6ca6a305ff',1,'stan::math::get_base1_lhs(Eigen::Matrix< T, 1, Eigen::Dynamic > &x, size_t n, const char *error_msg, size_t idx)']]], + ['get_5fbase_5ftype',['get_base_type',['../structstan_1_1gm_1_1variable__map.html#aca8dd3f11c916e9f3e960da5a54fabcd',1,'stan::gm::variable_map']]], + ['get_5fcode_5fstring',['get_code_string',['../classstan_1_1optimization_1_1_b_f_g_s_minimizer.html#adc021871519f45628bdd50446e3d4075',1,'stan::optimization::BFGSMinimizer']]], + ['get_5fcovar_5fadaptation',['get_covar_adaptation',['../classstan_1_1mcmc_1_1stepsize__covar__adapter.html#a78b53fec4bef5a7ba2e7531f416ba3a1',1,'stan::mcmc::stepsize_covar_adapter']]], + ['get_5fcurrent_5fstepsize',['get_current_stepsize',['../classstan_1_1mcmc_1_1base__hmc.html#a6e9333e00268e9ea5e0145a17bfbe4d2',1,'stan::mcmc::base_hmc']]], + ['get_5fdelta',['get_delta',['../classstan_1_1mcmc_1_1stepsize__adaptation.html#a9b009709850567a0c8859c6184b79099',1,'stan::mcmc::stepsize_adaptation']]], + ['get_5fgamma',['get_gamma',['../classstan_1_1mcmc_1_1stepsize__adaptation.html#af73d1fae6249bec73f9a1b5d9993ff2f',1,'stan::mcmc::stepsize_adaptation']]], + ['get_5fkappa',['get_kappa',['../classstan_1_1mcmc_1_1stepsize__adaptation.html#aef3ef49e43ab17cd2d8c10a101603971',1,'stan::mcmc::stepsize_adaptation']]], + ['get_5fl',['get_L',['../classstan_1_1mcmc_1_1base__static__hmc.html#a0f7bee31ab516375f70c8b1857ecc095',1,'stan::mcmc::base_static_hmc']]], + ['get_5fmax_5fdelta',['get_max_delta',['../classstan_1_1mcmc_1_1base__nuts.html#a29db7ce203e322ba14d06fe99d05806e',1,'stan::mcmc::base_nuts']]], + ['get_5fmax_5fdepth',['get_max_depth',['../classstan_1_1mcmc_1_1base__nuts.html#aef3fb41adbe18bbd10f31be06075d0f8',1,'stan::mcmc::base_nuts']]], + ['get_5fmu',['get_mu',['../classstan_1_1mcmc_1_1stepsize__adaptation.html#ad39004ce73f47a9a08ad523333a142dc',1,'stan::mcmc::stepsize_adaptation']]], + ['get_5fnominal_5fstepsize',['get_nominal_stepsize',['../classstan_1_1mcmc_1_1base__hmc.html#a33aa7f0e7d733ca915e5bb4b77117fd1',1,'stan::mcmc::base_hmc']]], + ['get_5fnum_5fdims',['get_num_dims',['../structstan_1_1gm_1_1variable__map.html#a0aacb56aae39f1ee43126951336876ee',1,'stan::gm::variable_map']]], + ['get_5forigin',['get_origin',['../structstan_1_1gm_1_1variable__map.html#a489c5362720bcea3520b36b8fbf139c3',1,'stan::gm::variable_map']]], + ['get_5fparam_5fnames',['get_param_names',['../classstan_1_1mcmc_1_1ps__point.html#a3e1b059004a82c80200402ae840df17c',1,'stan::mcmc::ps_point']]], + ['get_5fparams',['get_params',['../classstan_1_1mcmc_1_1ps__point.html#a90335d3f5df5ffd758b7282ac55e2239',1,'stan::mcmc::ps_point']]], + ['get_5fresult_5ftype',['get_result_type',['../classstan_1_1gm_1_1function__signatures.html#ae14f96665097dc1c77f89750e73e8af9',1,'stan::gm::function_signatures']]], + ['get_5fsample_5fparam_5fnames',['get_sample_param_names',['../classstan_1_1mcmc_1_1sample.html#af9d0b064b26b744a8a3416726ed64ad0',1,'stan::mcmc::sample']]], + ['get_5fsample_5fparams',['get_sample_params',['../classstan_1_1mcmc_1_1sample.html#a0a0f69f242625c8f7d033cefae3b066c',1,'stan::mcmc::sample']]], + ['get_5fsampler_5fdiagnostic_5fnames',['get_sampler_diagnostic_names',['../classstan_1_1mcmc_1_1base__mcmc.html#a439ab0edaa1e186e5c0639dd30a367c7',1,'stan::mcmc::base_mcmc::get_sampler_diagnostic_names()'],['../classstan_1_1mcmc_1_1base__hmc.html#ab03fa8ffe91879f8bd8b364641c4de5a',1,'stan::mcmc::base_hmc::get_sampler_diagnostic_names()']]], + ['get_5fsampler_5fdiagnostics',['get_sampler_diagnostics',['../classstan_1_1mcmc_1_1base__mcmc.html#a0d3f7f318891d813a1b3f78a194aa060',1,'stan::mcmc::base_mcmc::get_sampler_diagnostics()'],['../classstan_1_1mcmc_1_1base__hmc.html#abcf75357ef756a2c74f9855386b3be47',1,'stan::mcmc::base_hmc::get_sampler_diagnostics()']]], + ['get_5fsampler_5fparam_5fnames',['get_sampler_param_names',['../classstan_1_1mcmc_1_1base__mcmc.html#aca923f3231a9487745a999d95b5923ce',1,'stan::mcmc::base_mcmc::get_sampler_param_names()'],['../classstan_1_1mcmc_1_1base__nuts.html#a1f1085f2b4bd6b4e94fbce9f43243a6c',1,'stan::mcmc::base_nuts::get_sampler_param_names()'],['../classstan_1_1mcmc_1_1base__static__hmc.html#a101e66c9b73da1301847477ace7caebb',1,'stan::mcmc::base_static_hmc::get_sampler_param_names()']]], + ['get_5fsampler_5fparams',['get_sampler_params',['../classstan_1_1mcmc_1_1base__mcmc.html#af599911f5d38fbf91c4a475b0d27c1b6',1,'stan::mcmc::base_mcmc::get_sampler_params()'],['../classstan_1_1mcmc_1_1base__nuts.html#a7b804d04e40e371e8d543e78a6b1fc12',1,'stan::mcmc::base_nuts::get_sampler_params()'],['../classstan_1_1mcmc_1_1base__static__hmc.html#a743d29144c3d7f6159995f71524abff9',1,'stan::mcmc::base_static_hmc::get_sampler_params()']]], + ['get_5fstepsize_5fadaptation',['get_stepsize_adaptation',['../classstan_1_1mcmc_1_1stepsize__adapter.html#afc1a82938cba4951ea63cc983ae77844',1,'stan::mcmc::stepsize_adapter::get_stepsize_adaptation()'],['../classstan_1_1mcmc_1_1stepsize__covar__adapter.html#a84390e298b70ce828d8e04ebdad63d56',1,'stan::mcmc::stepsize_covar_adapter::get_stepsize_adaptation()'],['../classstan_1_1mcmc_1_1stepsize__var__adapter.html#af38b99277aa2cf9af8bbf69c1e683c0a',1,'stan::mcmc::stepsize_var_adapter::get_stepsize_adaptation()']]], + ['get_5fstepsize_5fjitter',['get_stepsize_jitter',['../classstan_1_1mcmc_1_1base__hmc.html#a17660d32d37d39df87f49ed0e8f97262',1,'stan::mcmc::base_hmc']]], + ['get_5ft',['get_T',['../classstan_1_1mcmc_1_1base__static__hmc.html#a2c983e383003ed37eccb11bcaef22179',1,'stan::mcmc::base_static_hmc']]], + ['get_5ft0',['get_t0',['../classstan_1_1mcmc_1_1stepsize__adaptation.html#a12f4547328cdc7a469d3369568954d14',1,'stan::mcmc::stepsize_adaptation']]], + ['get_5fvar_5fadaptation',['get_var_adaptation',['../classstan_1_1mcmc_1_1stepsize__var__adapter.html#a63d086dbff4db90650091784bd48e54a',1,'stan::mcmc::stepsize_var_adapter']]], + ['grad',['grad',['../classstan_1_1agrad_1_1var.html#adafe2731ffff76ed74a84299633d70ac',1,'stan::agrad::var::grad(std::vector< var > &x, std::vector< double > &g)'],['../classstan_1_1agrad_1_1var.html#a14d0349fa31df6ae544165b40cd01d94',1,'stan::agrad::var::grad()'],['../classstan_1_1agrad_1_1var.html#adafe2731ffff76ed74a84299633d70ac',1,'stan::agrad::var::grad(std::vector< var > &x, std::vector< double > &g)'],['../classstan_1_1agrad_1_1var.html#a14d0349fa31df6ae544165b40cd01d94',1,'stan::agrad::var::grad()'],['../classstan_1_1optimization_1_1_b_f_g_s_line_search.html#a800198f26824c242a030d7ab838b0a2c',1,'stan::optimization::BFGSLineSearch::grad()'],['../classstan_1_1optimization_1_1_nesterov_gradient.html#a0b4971e472f7ab5708535a9a87d8fc9c',1,'stan::optimization::NesterovGradient::grad()'],['../namespacestan_1_1agrad.html#a1fb22c831a12e8fea76ef7ee0bd32cb3',1,'stan::agrad::grad(chainable *vi)'],['../namespacestan_1_1agrad.html#aab9a3ff45fadad49e4797f3687ab7e8a',1,'stan::agrad::grad(var &v, Eigen::Matrix< var, Eigen::Dynamic, 1 > &x, Eigen::VectorXd &g)'],['../namespacestan_1_1agrad.html#a1fb22c831a12e8fea76ef7ee0bd32cb3',1,'stan::agrad::grad(chainable *vi)']]], + ['grad2f1',['grad2F1',['../namespacestan_1_1math.html#a71aed6cfebd1e7a926130982018cfefe',1,'stan::math']]], + ['grad_5fevals',['grad_evals',['../classstan_1_1optimization_1_1_b_f_g_s_line_search.html#aa39e8aa1b28762bd358986c11c67838a',1,'stan::optimization::BFGSLineSearch']]], + ['grad_5fhess_5flog_5fprob',['grad_hess_log_prob',['../namespacestan_1_1model.html#ad83f35a2e6e0b78d505d8128dee49588',1,'stan::model']]], + ['grad_5fnorm',['grad_norm',['../classstan_1_1optimization_1_1_b_f_g_s_line_search.html#ae9f74939356da68cdb2763647fe5f1b7',1,'stan::optimization::BFGSLineSearch']]], + ['grad_5ftr_5fmat_5ftimes_5fhessian',['grad_tr_mat_times_hessian',['../namespacestan_1_1agrad.html#acba3577a92618529775046335dc015ac',1,'stan::agrad::grad_tr_mat_times_hessian()'],['../namespacestan_1_1model.html#ac9f018a163d9dc97339f88d82664ce73',1,'stan::model::grad_tr_mat_times_hessian()']]], + ['gradf32',['gradF32',['../namespacestan_1_1math.html#a8db199c237a3b502dccc197db9dfcd7d',1,'stan::math']]], + ['gradient',['gradient',['../namespacestan_1_1agrad.html#a3a0d7a65cb491249a40ce309b4c74433',1,'stan::agrad::gradient(const F &f, const Eigen::Matrix< double, Eigen::Dynamic, 1 > &x, double &fx, Eigen::Matrix< double, Eigen::Dynamic, 1 > &grad_fx)'],['../namespacestan_1_1agrad.html#a90556a6034444a74ac3859ab41d79334',1,'stan::agrad::gradient(const F &f, const Eigen::Matrix< T, Eigen::Dynamic, 1 > &x, T &fx, Eigen::Matrix< T, Eigen::Dynamic, 1 > &grad_fx)'],['../namespacestan_1_1model.html#ab4e546deccf701b0255fc6ffee22848c',1,'stan::model::gradient()']]], + ['gradient_5fdot_5fvector',['gradient_dot_vector',['../namespacestan_1_1agrad.html#a193936962d2fceadcf578dd09b127776',1,'stan::agrad::gradient_dot_vector()'],['../namespacestan_1_1model.html#a3fbd2cae4a29ea16ebe9c60597d2d84e',1,'stan::model::gradient_dot_vector()']]], + ['gradincbeta',['gradIncBeta',['../namespacestan_1_1math.html#a6e61bf2a2523eac620649be1b836f6af',1,'stan::math']]], + ['gradregincbeta',['gradRegIncBeta',['../namespacestan_1_1math.html#a748e297c3c711bde9cd125cdc873dc8d',1,'stan::math']]], + ['gradregincgamma',['gradRegIncGamma',['../namespacestan_1_1math.html#a55877c24977357ef441acc0b37f6b337',1,'stan::math']]], + ['gumbel_5fccdf_5flog',['gumbel_ccdf_log',['../namespacestan_1_1prob.html#a7031408cb549ef6e62d05a0e23050913',1,'stan::prob']]], + ['gumbel_5fcdf',['gumbel_cdf',['../namespacestan_1_1prob.html#a51c9e75ef3d9f0aa113b1dff27bfd5f8',1,'stan::prob']]], + ['gumbel_5fcdf_5flog',['gumbel_cdf_log',['../namespacestan_1_1prob.html#af3a4abf9379ede54947a4a46c520a286',1,'stan::prob']]], + ['gumbel_5flog',['gumbel_log',['../namespacestan_1_1prob.html#ad56fe89a003692852a43ed83e9020ade',1,'stan::prob::gumbel_log(const T_y &y, const T_loc &mu, const T_scale &beta)'],['../namespacestan_1_1prob.html#a09ae16a393bdb54599b3e0794e626df0',1,'stan::prob::gumbel_log(const T_y &y, const T_loc &mu, const T_scale &beta)']]], + ['gumbel_5frng',['gumbel_rng',['../namespacestan_1_1prob.html#a717c41a1a31ff84f523df17a4e894c23',1,'stan::prob']]] +]; diff --git a/doc/api/html/search/functions_68.html b/doc/api/html/search/functions_68.html new file mode 100644 index 00000000000..66b85be313c --- /dev/null +++ b/doc/api/html/search/functions_68.html @@ -0,0 +1,25 @@ + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/doc/api/html/search/functions_68.js b/doc/api/html/search/functions_68.js new file mode 100644 index 00000000000..a44d68f4251 --- /dev/null +++ b/doc/api/html/search/functions_68.js @@ -0,0 +1,22 @@ +var searchData= +[ + ['h',['H',['../classstan_1_1mcmc_1_1base__hamiltonian.html#abb069ceb36c44afad1ba03f97e8a097d',1,'stan::mcmc::base_hamiltonian']]], + ['has_5fflag',['has_flag',['../classstan_1_1io_1_1cmd__line.html#a2d24eb7b0df0df0f9237e722c9935344',1,'stan::io::cmd_line']]], + ['has_5fhigh',['has_high',['../structstan_1_1gm_1_1range.html#a4fd2933ba84accb4d4df4fa7af5570b8',1,'stan::gm::range']]], + ['has_5fkey',['has_key',['../classstan_1_1io_1_1cmd__line.html#a6d18234501f15e832c610807519091bc',1,'stan::io::cmd_line']]], + ['has_5flb',['has_lb',['../namespacestan_1_1gm.html#a5f8f794036a1282d39160c8005350fb6',1,'stan::gm']]], + ['has_5flow',['has_low',['../structstan_1_1gm_1_1range.html#a5602af4e9ea366a5c256798a372f7d26',1,'stan::gm::range']]], + ['has_5flub',['has_lub',['../namespacestan_1_1gm.html#a354abd99f7fd052b3be9e590a90f51af',1,'stan::gm']]], + ['has_5fnon_5fparam_5fvar',['has_non_param_var',['../namespacestan_1_1gm.html#a5cd24fa3880414fae68b9f140341781c',1,'stan::gm']]], + ['has_5frng_5fsuffix',['has_rng_suffix',['../namespacestan_1_1gm.html#adbc7bd18dc8464af8d3deee3dc1119de',1,'stan::gm']]], + ['has_5fub',['has_ub',['../namespacestan_1_1gm.html#af96a2f3903f1feab3fce868fefee250b',1,'stan::gm']]], + ['has_5fvar',['has_var',['../namespacestan_1_1gm.html#a2fd9d0472225916eae17d19fde00fe30',1,'stan::gm']]], + ['head',['head',['../namespacestan_1_1math.html#a140b54b11069aed039f67c6dd172256b',1,'stan::math::head(const Eigen::Matrix< T, Eigen::Dynamic, 1 > &v, size_t n)'],['../namespacestan_1_1math.html#a4d7964d83597ea54cd7ba63bee50409f',1,'stan::math::head(const Eigen::Matrix< T, 1, Eigen::Dynamic > &rv, size_t n)'],['../namespacestan_1_1math.html#a5e746ba14994b318a0a192a97a0a28db',1,'stan::math::head(const std::vector< T > &sv, size_t n)']]], + ['help_5fprinted',['help_printed',['../classstan_1_1gm_1_1argument__parser.html#a97217b4fce24caa4f13f01366ba7eede',1,'stan::gm::argument_parser']]], + ['hessian',['hessian',['../namespacestan_1_1agrad.html#a757135302068c250c2379b0c13a28e2e',1,'stan::agrad::hessian(const F &f, const Eigen::Matrix< double, Eigen::Dynamic, 1 > &x, double &fx, Eigen::Matrix< double, Eigen::Dynamic, 1 > &grad, Eigen::Matrix< double, Eigen::Dynamic, Eigen::Dynamic > &H)'],['../namespacestan_1_1agrad.html#ae0c1250f021e0a792f89308da1798c52',1,'stan::agrad::hessian(const F &f, const Eigen::Matrix< T, Eigen::Dynamic, 1 > &x, T &fx, Eigen::Matrix< T, Eigen::Dynamic, 1 > &grad, Eigen::Matrix< T, Eigen::Dynamic, Eigen::Dynamic > &H)'],['../namespacestan_1_1agrad.html#a7bb9b2db82474a079e4fe1cfe980f41b',1,'stan::agrad::hessian(const F &f, const std::vector< double > &x, const std::vector< double > &v, std::vector< double > &Hv)'],['../namespacestan_1_1model.html#a060489d342b8fd3139e7df33b4a01170',1,'stan::model::hessian()']]], + ['hessian_5ftimes_5fvector',['hessian_times_vector',['../namespacestan_1_1agrad.html#a65e3ff9debccf35476fd084b965c3eb1',1,'stan::agrad::hessian_times_vector(const F &f, const Eigen::Matrix< double, Eigen::Dynamic, 1 > &x, const Eigen::Matrix< double, Eigen::Dynamic, 1 > &v, double &fx, Eigen::Matrix< double, Eigen::Dynamic, 1 > &Hv)'],['../namespacestan_1_1agrad.html#a410d4227fbb881a70b80ae5d110dafe9',1,'stan::agrad::hessian_times_vector(const F &f, const Eigen::Matrix< T, Eigen::Dynamic, 1 > &x, const Eigen::Matrix< T, Eigen::Dynamic, 1 > &v, T &fx, Eigen::Matrix< T, Eigen::Dynamic, 1 > &Hv)'],['../namespacestan_1_1model.html#a2b836ad2524ecb1b50f465d6305f88d2',1,'stan::model::hessian_times_vector()']]], + ['highest',['highest',['../struct_eigen_1_1_num_traits_3_01stan_1_1agrad_1_1var_01_4.html#a91c90fce61fb31c3a9bc079ff8a07d35',1,'Eigen::NumTraits< stan::agrad::var >']]], + ['hypergeometric_5flog',['hypergeometric_log',['../namespacestan_1_1prob.html#a66e4f57cee9af34a961de0ff06cbd778',1,'stan::prob::hypergeometric_log(const T_n &n, const T_N &N, const T_a &a, const T_b &b)'],['../namespacestan_1_1prob.html#aa8045ba7d2d74aa5142128b020ef91f9',1,'stan::prob::hypergeometric_log(const T_n &n, const T_N &N, const T_a &a, const T_b &b)']]], + ['hypergeometric_5frng',['hypergeometric_rng',['../namespacestan_1_1prob.html#ac1f5eb0ed8be3298f817d5f5b976144d',1,'stan::prob']]], + ['hypot',['hypot',['../namespacestan_1_1agrad.html#abefe7efd440d029f4ae53c723c1835cf',1,'stan::agrad::hypot(const fvar< T > &x1, const fvar< T > &x2)'],['../namespacestan_1_1agrad.html#afaa49a34b4a0d6977cacc4eed74aa276',1,'stan::agrad::hypot(const fvar< T > &x1, const double x2)'],['../namespacestan_1_1agrad.html#a8ec2045c8ca3af2bc0f411819e287108',1,'stan::agrad::hypot(const double x1, const fvar< T > &x2)'],['../namespacestan_1_1agrad.html#aca9ecbd3c8db717865343fe7dc363490',1,'stan::agrad::hypot(const stan::agrad::var &a, const stan::agrad::var &b)'],['../namespacestan_1_1agrad.html#a4671da443c63a084e9511fc3dad810c6',1,'stan::agrad::hypot(const stan::agrad::var &a, const double &b)'],['../namespacestan_1_1agrad.html#a6b4379c4eaaa6367836430274d82a06b',1,'stan::agrad::hypot(const double &a, const stan::agrad::var &b)']]] +]; diff --git a/doc/api/html/search/functions_69.html b/doc/api/html/search/functions_69.html new file mode 100644 index 00000000000..e2041976c97 --- /dev/null +++ b/doc/api/html/search/functions_69.html @@ -0,0 +1,25 @@ + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/doc/api/html/search/functions_69.js b/doc/api/html/search/functions_69.js new file mode 100644 index 00000000000..b5b00b2c896 --- /dev/null +++ b/doc/api/html/search/functions_69.js @@ -0,0 +1,81 @@ +var searchData= +[ + ['ibeta',['ibeta',['../namespacestan_1_1agrad.html#a54d4bc3e46a75315a2c098c3d4e0b3f4',1,'stan::agrad::ibeta()'],['../namespacestan_1_1math.html#af7b430ac57e75ba2d55843cd868506e1',1,'stan::math::ibeta()']]], + ['identity_5fconstrain',['identity_constrain',['../namespacestan_1_1prob.html#ad85151d68bb1f8edbdc64960cf14a86e',1,'stan::prob::identity_constrain(T x)'],['../namespacestan_1_1prob.html#a2efcd423525f2b20c28888283eb41079',1,'stan::prob::identity_constrain(const T x, T &)']]], + ['identity_5ffree',['identity_free',['../namespacestan_1_1prob.html#ae9e2475641a356dc2b0b103f5152eb84',1,'stan::prob']]], + ['if_5felse',['if_else',['../namespacestan_1_1agrad.html#a2a018c9770257f38d93125db6c7eda5f',1,'stan::agrad::if_else(bool c, const var &y_true, const var &y_false)'],['../namespacestan_1_1agrad.html#a2b19777661eada4e32b7d84b64c9f4db',1,'stan::agrad::if_else(bool c, double y_true, const var &y_false)'],['../namespacestan_1_1agrad.html#a86ce2dc25f73176ea45b300a9cfd63eb',1,'stan::agrad::if_else(bool c, const var &y_true, const double y_false)'],['../namespacestan_1_1math.html#aa732732442d65936275d718b7286cb51',1,'stan::math::if_else()']]], + ['increment_5flog_5fprob_5fstatement',['increment_log_prob_statement',['../structstan_1_1gm_1_1increment__log__prob__statement.html#a7cac1e4c4bf79fce11fc836ab1ea0cc1',1,'stan::gm::increment_log_prob_statement::increment_log_prob_statement()'],['../structstan_1_1gm_1_1increment__log__prob__statement.html#ab828f581d60e699e3fa1ea4f82fa24eb',1,'stan::gm::increment_log_prob_statement::increment_log_prob_statement(const expression &log_prob)']]], + ['indent',['INDENT',['../namespacestan_1_1gm.html#a0c2dcd808a0d9ba32a552d5da9449dad',1,'stan::gm']]], + ['indent2',['INDENT2',['../namespacestan_1_1gm.html#ac233ed8139ded7c35ee0583d7840914a',1,'stan::gm']]], + ['indent3',['INDENT3',['../namespacestan_1_1gm.html#a6ff34cca044609d9dd669dcc9c992c60',1,'stan::gm']]], + ['index',['index',['../classstan_1_1mcmc_1_1chains.html#ab87d44365c2f2a83afc9351020bfc3ed',1,'stan::mcmc::chains']]], + ['index_5fop',['index_op',['../structstan_1_1gm_1_1index__op.html#a862956865d36615fa28089dea1d1217d',1,'stan::gm::index_op::index_op()'],['../structstan_1_1gm_1_1index__op.html#a12f574d13a3b1d3d34c536cb8d7d6aa2',1,'stan::gm::index_op::index_op(const expression &expr, const std::vector< std::vector< expression > > &dimss)']]], + ['infer_5ftype',['infer_type',['../structstan_1_1gm_1_1fun.html#a20f538c7866f306aa80274fddebf727d',1,'stan::gm::fun::infer_type()'],['../structstan_1_1gm_1_1index__op.html#a529d7cb01f9d404a881fda27c82dc460',1,'stan::gm::index_op::infer_type()']]], + ['infer_5ftype_5findexing',['infer_type_indexing',['../namespacestan_1_1gm.html#a17574edb8e226bfd71f69da1d4f97168',1,'stan::gm::infer_type_indexing(const base_expr_type &expr_base_type, size_t num_expr_dims, size_t num_index_dims)'],['../namespacestan_1_1gm.html#a46f979229875f1d6d427dbbe87fa8a59',1,'stan::gm::infer_type_indexing(const expression &expr, size_t num_index_dims)']]], + ['infinity',['infinity',['../structstd_1_1numeric__limits_3_01stan_1_1agrad_1_1fvar_3_01_t_01_4_01_4.html#ad148a929c21b1747b25cecd70cf212cf',1,'std::numeric_limits< stan::agrad::fvar< T > >::infinity()'],['../structstd_1_1numeric__limits_3_01stan_1_1agrad_1_1var_01_4.html#ad4b150d32c6d506c86f20072a9bcfa57',1,'std::numeric_limits< stan::agrad::var >::infinity()']]], + ['init',['init',['../classstan_1_1mcmc_1_1base__hamiltonian.html#a43a6071f6c711fc9e2980515c3223d10',1,'stan::mcmc::base_hamiltonian']]], + ['init_5fadapt',['init_adapt',['../namespacestan_1_1gm.html#ab49a5fee3bf2cacd63f0ce7e252a6a93',1,'stan::gm::init_adapt(Sampler *sampler, const double delta, const double gamma, const double kappa, const double t0, const Eigen::VectorXd &cont_params)'],['../namespacestan_1_1gm.html#ae3483b7eb32848c5bee0ee48b431f46e',1,'stan::gm::init_adapt(stan::mcmc::base_mcmc *sampler, categorical_argument *adapt, const Eigen::VectorXd &cont_params)']]], + ['init_5fdependent',['init_dependent',['../classstan_1_1agrad_1_1chainable.html#a9ef6020dcc949b73c1c3dfb1d4623bae',1,'stan::agrad::chainable::init_dependent()'],['../classstan_1_1agrad_1_1vari.html#ac668b532eb7eb33af863dfb035c0b8dc',1,'stan::agrad::vari::init_dependent()']]], + ['init_5flocal_5fvar_5fvisgen',['init_local_var_visgen',['../structstan_1_1gm_1_1init__local__var__visgen.html#a25c03b95d95240b52cf0b06801478a87',1,'stan::gm::init_local_var_visgen']]], + ['init_5fnuts',['init_nuts',['../namespacestan_1_1gm.html#aaa8e6ed991ef6bf3b5afc96b953e18ca',1,'stan::gm']]], + ['init_5fstatic_5fhmc',['init_static_hmc',['../namespacestan_1_1gm.html#ad9e999952303f4c193f24b063ff55d91',1,'stan::gm']]], + ['init_5fstepsize',['init_stepsize',['../classstan_1_1mcmc_1_1base__hmc.html#a6ec1af08b215fda50b23dade2aa615a8',1,'stan::mcmc::base_hmc']]], + ['init_5fwindowed_5fadapt',['init_windowed_adapt',['../namespacestan_1_1gm.html#a5121125c3b419aa099ab6fca8cb9d1c6',1,'stan::gm']]], + ['initialize',['initialize',['../classstan_1_1optimization_1_1_b_f_g_s_minimizer.html#a1b31f5b47ab4af27c17ab8f620aaf914',1,'stan::optimization::BFGSMinimizer::initialize()'],['../namespacestan_1_1math.html#af81e05dfd6918524dafff10715f21a8d',1,'stan::math::initialize(T &x, const T &v)'],['../namespacestan_1_1math.html#a067af584ff2d244d2041c9b13f6d9247',1,'stan::math::initialize(T &x, V v)'],['../namespacestan_1_1math.html#aa2d6d42a356af95988b3a7005b5cf408',1,'stan::math::initialize(Eigen::Matrix< T, R, C > &x, const T &v)'],['../namespacestan_1_1math.html#ad27706378f77dc22746ad74721d495d4',1,'stan::math::initialize(std::vector< T > &x, const V &v)']]], + ['initialize_5fepsilon',['initialize_epsilon',['../classstan_1_1optimization_1_1_nesterov_gradient.html#af4dd5e1558ecf25c7a0bb57cb4e71c90',1,'stan::optimization::NesterovGradient']]], + ['initialize_5fvariable',['initialize_variable',['../namespacestan_1_1agrad.html#ae4df62fded6cf60ac4928f942190f39d',1,'stan::agrad::initialize_variable(var &variable, const var &value)'],['../namespacestan_1_1agrad.html#a6de2168e9cf12f2dad32a9a823b385a6',1,'stan::agrad::initialize_variable(Eigen::Matrix< var, R, C > &matrix, const var &value)'],['../namespacestan_1_1agrad.html#a15a79398931d22105e55c92dc3b8c6be',1,'stan::agrad::initialize_variable(std::vector< T > &variables, const var &value)']]], + ['instance',['instance',['../classstan_1_1gm_1_1function__signatures.html#a7f9782621df19462a0f088d0cf1542ff',1,'stan::gm::function_signatures']]], + ['int_5fliteral',['int_literal',['../structstan_1_1gm_1_1int__literal.html#a621c688b553f3f113f9b8ec9dc007ac8',1,'stan::gm::int_literal::int_literal()'],['../structstan_1_1gm_1_1int__literal.html#ae1dde9e342981c83edcc3832b10a19ca',1,'stan::gm::int_literal::int_literal(int val)'],['../structstan_1_1gm_1_1int__literal.html#aad91821fd816aa1be8b6313a12898141',1,'stan::gm::int_literal::int_literal(const int_literal &il)']]], + ['int_5fstep',['int_step',['../namespacestan_1_1math.html#a8c507cff4b7b473cd86e1d428fb03136',1,'stan::math']]], + ['int_5fvalues',['int_values',['../classstan_1_1io_1_1dump__reader.html#a595a2345787b84d1cb763c5f45a2c749',1,'stan::io::dump_reader']]], + ['int_5fvar_5fdecl',['int_var_decl',['../structstan_1_1gm_1_1int__var__decl.html#a47be885b904c190c2cdeae110ff4ca1c',1,'stan::gm::int_var_decl::int_var_decl()'],['../structstan_1_1gm_1_1int__var__decl.html#a8f08077bdf5b897c09ee679149eebd8a',1,'stan::gm::int_var_decl::int_var_decl(range const &range, std::string const &name, std::vector< expression > const &dims)']]], + ['integer',['integer',['../classstan_1_1io_1_1reader.html#af1a2b111d918d34bfebf6bb3b821495f',1,'stan::io::reader::integer()'],['../classstan_1_1io_1_1writer.html#a5614adc99ab468fdc3957c6444df46c7',1,'stan::io::writer::integer()']]], + ['integer_5fconstrain',['integer_constrain',['../classstan_1_1io_1_1reader.html#aeccd55003bc47a1eade2c75c20d0d13f',1,'stan::io::reader::integer_constrain()'],['../classstan_1_1io_1_1reader.html#a41d16a67c77fa38a5da05da6b4eb563f',1,'stan::io::reader::integer_constrain(T &)']]], + ['integer_5flb',['integer_lb',['../classstan_1_1io_1_1reader.html#a1535fc6c26ecedd2aa25989853a09261',1,'stan::io::reader']]], + ['integer_5flb_5fconstrain',['integer_lb_constrain',['../classstan_1_1io_1_1reader.html#a9287c3669f5eea0a5b2f22708d26da67',1,'stan::io::reader::integer_lb_constrain(int lb)'],['../classstan_1_1io_1_1reader.html#a786ee459470898a8fbc8a240dec6f269',1,'stan::io::reader::integer_lb_constrain(int lb, T &)']]], + ['integer_5flub',['integer_lub',['../classstan_1_1io_1_1reader.html#af9be53bcf3f435d5c25b07774853afa3',1,'stan::io::reader']]], + ['integer_5flub_5fconstrain',['integer_lub_constrain',['../classstan_1_1io_1_1reader.html#aa73203544d85c8e7f4a6e682edb8db4f',1,'stan::io::reader::integer_lub_constrain(int lb, int ub)'],['../classstan_1_1io_1_1reader.html#a0934519cf50d98a616b4e3a0bc9539fc',1,'stan::io::reader::integer_lub_constrain(int lb, int ub, T &)']]], + ['integer_5fub',['integer_ub',['../classstan_1_1io_1_1reader.html#a5dce1d461bcef2fda9d996fb07bb6782',1,'stan::io::reader']]], + ['integer_5fub_5fconstrain',['integer_ub_constrain',['../classstan_1_1io_1_1reader.html#aa492d17e0aeaba5a082fc554d248048e',1,'stan::io::reader::integer_ub_constrain(int ub)'],['../classstan_1_1io_1_1reader.html#ad23ce5d0b04667272770eb04eff2bfd4',1,'stan::io::reader::integer_ub_constrain(int ub, T &)']]], + ['inv',['inv',['../namespacestan_1_1agrad.html#a08b011331905f0a026fa4270582fe5d5',1,'stan::agrad::inv(const fvar< T > &x)'],['../namespacestan_1_1agrad.html#ab3034b6e4ac96bb83a5b6f40c310d64d',1,'stan::agrad::inv(const var &a)'],['../namespacestan_1_1math.html#ab64935e0bdac8227bfd9608285d4e699',1,'stan::math::inv()']]], + ['inv_5fchi_5fsquare_5fccdf_5flog',['inv_chi_square_ccdf_log',['../namespacestan_1_1prob.html#a51e89cc15295d67eba75dfb4ccdbe27c',1,'stan::prob']]], + ['inv_5fchi_5fsquare_5fcdf',['inv_chi_square_cdf',['../namespacestan_1_1prob.html#ad68b6e115796a534a753491eae9744cb',1,'stan::prob']]], + ['inv_5fchi_5fsquare_5fcdf_5flog',['inv_chi_square_cdf_log',['../namespacestan_1_1prob.html#a624df4d53f7a8d24a4014e1e57ccaf3c',1,'stan::prob']]], + ['inv_5fchi_5fsquare_5flog',['inv_chi_square_log',['../namespacestan_1_1prob.html#ad6fd48ecb4e2a0cc22225cff5a7997e2',1,'stan::prob::inv_chi_square_log(const T_y &y, const T_dof &nu)'],['../namespacestan_1_1prob.html#a4c772dff5074551415e50920347b83cd',1,'stan::prob::inv_chi_square_log(const T_y &y, const T_dof &nu)']]], + ['inv_5fchi_5fsquare_5frng',['inv_chi_square_rng',['../namespacestan_1_1prob.html#ad7d3c06abef9546ac2f0a9174f1446fa',1,'stan::prob']]], + ['inv_5fcloglog',['inv_cloglog',['../namespacestan_1_1agrad.html#a14ec5b6590b42a6405fa06a34105ce84',1,'stan::agrad::inv_cloglog(const fvar< T > &x)'],['../namespacestan_1_1agrad.html#afa07068a7659049c1404ff6e380176ef',1,'stan::agrad::inv_cloglog(const stan::agrad::var &a)'],['../namespacestan_1_1math.html#a008bf0b6c2ab38d088b0aba5d7b10c8d',1,'stan::math::inv_cloglog()']]], + ['inv_5fgamma_5fccdf_5flog',['inv_gamma_ccdf_log',['../namespacestan_1_1prob.html#ac95b1a5f812a121f1fce3120f54caabc',1,'stan::prob']]], + ['inv_5fgamma_5fcdf',['inv_gamma_cdf',['../namespacestan_1_1prob.html#a9295ef95ac9022168eff6748495294bf',1,'stan::prob']]], + ['inv_5fgamma_5fcdf_5flog',['inv_gamma_cdf_log',['../namespacestan_1_1prob.html#af5bc8f367605c27867cc93ec4f7b19d9',1,'stan::prob']]], + ['inv_5fgamma_5flog',['inv_gamma_log',['../namespacestan_1_1prob.html#a94f9022a58b4d16ac6eac9edc8c1cecc',1,'stan::prob::inv_gamma_log(const T_y &y, const T_shape &alpha, const T_scale &beta)'],['../namespacestan_1_1prob.html#a5aada55fa2a26ebfc6d38a1c5a2dc956',1,'stan::prob::inv_gamma_log(const T_y &y, const T_shape &alpha, const T_scale &beta)']]], + ['inv_5fgamma_5frng',['inv_gamma_rng',['../namespacestan_1_1prob.html#af588e525e8543ac66f21b5273196deaf',1,'stan::prob']]], + ['inv_5flogit',['inv_logit',['../namespacestan_1_1agrad.html#ab812d33218848139b280e30cd8863ac2',1,'stan::agrad::inv_logit(const fvar< T > &x)'],['../namespacestan_1_1agrad.html#a015c1e0733bd9a3d7c26175d7072a759',1,'stan::agrad::inv_logit(const stan::agrad::var &a)'],['../namespacestan_1_1math.html#ad2c4834fc581f55acf8491ec3f80ecb7',1,'stan::math::inv_logit()']]], + ['inv_5fsqrt',['inv_sqrt',['../namespacestan_1_1agrad.html#a17ce517fb5ec226947603b3dfbbc235b',1,'stan::agrad::inv_sqrt(const fvar< T > &x)'],['../namespacestan_1_1agrad.html#aac8f303b29b23f9952c2ad5ada543319',1,'stan::agrad::inv_sqrt(const var &a)'],['../namespacestan_1_1math.html#a4b4db5e98585c71cc7c14319f96e0c04',1,'stan::math::inv_sqrt()']]], + ['inv_5fsquare',['inv_square',['../namespacestan_1_1agrad.html#ad0cd65a6699f1fa471523ecef19102b4',1,'stan::agrad::inv_square(const fvar< T > &x)'],['../namespacestan_1_1agrad.html#ab283916863ab97eab6aed628480f8a8b',1,'stan::agrad::inv_square(const var &a)'],['../namespacestan_1_1math.html#a3d2e922aa13e2dfae510fc13d86eaea3',1,'stan::math::inv_square()']]], + ['inv_5fwishart_5flog',['inv_wishart_log',['../namespacestan_1_1prob.html#a3052d1f67722328b643b7adb1fbae485',1,'stan::prob::inv_wishart_log(const Eigen::Matrix< T_y, Eigen::Dynamic, Eigen::Dynamic > &W, const T_dof &nu, const Eigen::Matrix< T_scale, Eigen::Dynamic, Eigen::Dynamic > &S)'],['../namespacestan_1_1prob.html#ad6efba06df0f3ccf2455b60bc7bbbdef',1,'stan::prob::inv_wishart_log(const Eigen::Matrix< T_y, Eigen::Dynamic, Eigen::Dynamic > &W, const T_dof &nu, const Eigen::Matrix< T_scale, Eigen::Dynamic, Eigen::Dynamic > &S)']]], + ['inv_5fwishart_5frng',['inv_wishart_rng',['../namespacestan_1_1prob.html#a6c0745153ef776d59ddac99f480972e5',1,'stan::prob']]], + ['inverse',['inverse',['../classstan_1_1math_1_1_l_d_l_t__factor_3_01double_00_01_r_00_01_c_01_4.html#ac4f64ce4ad745b09bbb59113697760f4',1,'stan::math::LDLT_factor< double, R, C >::inverse()'],['../namespacestan_1_1agrad.html#ad04d66a7b2f44ae630c904534a43687a',1,'stan::agrad::inverse()'],['../namespacestan_1_1math.html#a461598c914f5634fa5057da7a817803d',1,'stan::math::inverse()']]], + ['inverse_5fsoftmax',['inverse_softmax',['../namespacestan_1_1math.html#a1edc35cc581dda178263f6a4a4fd1158',1,'stan::math']]], + ['inverse_5fspd',['inverse_spd',['../namespacestan_1_1math.html#a989989548db02c34cd6134790bd93478',1,'stan::math']]], + ['is_5faligned',['is_aligned',['../namespacestan_1_1memory.html#a952ba61b6936bdcad3955ec1f5e6ef8f',1,'stan::memory']]], + ['is_5fdefault',['is_default',['../classstan_1_1gm_1_1list__argument.html#a1f1d85337d7e4d67ef688997d8418dbd',1,'stan::gm::list_argument::is_default()'],['../classstan_1_1gm_1_1singleton__argument.html#a6ea5538fe5533addc1f6795a4ac1eb49',1,'stan::gm::singleton_argument::is_default()'],['../classstan_1_1gm_1_1valued__argument.html#af72ce3805416a25c51304b5448dae967',1,'stan::gm::valued_argument::is_default()']]], + ['is_5fdouble_5freturn',['is_double_return',['../structstan_1_1gm_1_1validate__sample.html#a457fa512cf1ad5c13e3c1fb0e02e9adf',1,'stan::gm::validate_sample']]], + ['is_5fill_5fformed',['is_ill_formed',['../structstan_1_1gm_1_1expr__type.html#af9a85e43e814f13ccadd9640308b86de',1,'stan::gm::expr_type::is_ill_formed()'],['../structstan_1_1gm_1_1sample.html#ab2f55c7ff636a10cc46e1d86c401041d',1,'stan::gm::sample::is_ill_formed()']]], + ['is_5fint',['is_int',['../classstan_1_1io_1_1dump__reader.html#a17c0c96ad8cb3c3c362fa74384b45bb7',1,'stan::io::dump_reader']]], + ['is_5fmatrix',['is_matrix',['../print_8hpp.html#a4405283b10c32553e10a7273d2a4f9d8',1,'print.hpp']]], + ['is_5fnil',['is_nil',['../namespacestan_1_1gm.html#a90e5f154350b02c39f381659672f9581',1,'stan::gm']]], + ['is_5fnonempty',['is_nonempty',['../namespacestan_1_1gm.html#a9cb045831aff85e2a5bc5d51bfc6584a',1,'stan::gm']]], + ['is_5fpresent',['is_present',['../classstan_1_1gm_1_1unvalued__argument.html#a87b246d97afb366e67ae99984dc4540e',1,'stan::gm::unvalued_argument']]], + ['is_5fprimitive',['is_primitive',['../structstan_1_1gm_1_1expr__type.html#a28728288384b1c9510ffe1a3cbb5efa3',1,'stan::gm::expr_type']]], + ['is_5fprimitive_5fdouble',['is_primitive_double',['../structstan_1_1gm_1_1expr__type.html#a01d1300672955a943b60f1f7220371a7',1,'stan::gm::expr_type']]], + ['is_5fprimitive_5fint',['is_primitive_int',['../structstan_1_1gm_1_1expr__type.html#a745e55e1e245badd91138475f8f7bddb',1,'stan::gm::expr_type']]], + ['is_5fspace',['is_space',['../namespacestan_1_1gm.html#a68fe0b83fbaa4ec1300a89f5097127b3',1,'stan::gm']]], + ['is_5funinitialized',['is_uninitialized',['../classstan_1_1agrad_1_1var.html#ab7764c9ed32774d35c18d512d5c96f96',1,'stan::agrad::var::is_uninitialized()'],['../namespacestan_1_1agrad.html#a72761c1c17a04122ee2dbb0c56cbb9c0',1,'stan::agrad::is_uninitialized()'],['../namespacestan_1_1math.html#a40c14c26dc55a985e05695b3ff1eeef2',1,'stan::math::is_uninitialized()']]], + ['is_5funivariate',['is_univariate',['../structstan_1_1gm_1_1validate__sample.html#aca344bafbf0b16055bc48307645f4c81',1,'stan::gm::validate_sample']]], + ['is_5fvalid',['is_valid',['../classstan_1_1gm_1_1arg__adapt__delta.html#a916005859f965aabc1d829a7062ec424',1,'stan::gm::arg_adapt_delta::is_valid()'],['../classstan_1_1gm_1_1arg__adapt__gamma.html#a6fe8d59b8c1315ee5c6dc6b466698e19',1,'stan::gm::arg_adapt_gamma::is_valid()'],['../classstan_1_1gm_1_1arg__adapt__kappa.html#a1b03b095c18343b8932d36aca1211e12',1,'stan::gm::arg_adapt_kappa::is_valid()'],['../classstan_1_1gm_1_1arg__adapt__t0.html#a98cacbc166aa6b2ceb14094dddc7fad6',1,'stan::gm::arg_adapt_t0::is_valid()'],['../classstan_1_1gm_1_1arg__id.html#a477cdfd1a053c2e7b63bdadada63ff60',1,'stan::gm::arg_id::is_valid()'],['../classstan_1_1gm_1_1arg__init__alpha.html#ac40372ef2c1cbe5d9ede053b1014c003',1,'stan::gm::arg_init_alpha::is_valid()'],['../classstan_1_1gm_1_1arg__int__time.html#a71716eb472c59395c6de8cbca1755c00',1,'stan::gm::arg_int_time::is_valid()'],['../classstan_1_1gm_1_1arg__iter.html#a390a002c014d9d88c41ab5b224b0e771',1,'stan::gm::arg_iter::is_valid()'],['../classstan_1_1gm_1_1arg__max__depth.html#a30a8bb165ba3b981ab802337641bbe60',1,'stan::gm::arg_max_depth::is_valid()'],['../classstan_1_1gm_1_1arg__num__samples.html#aeca6a105ba2ef2e80ec02969bd581af2',1,'stan::gm::arg_num_samples::is_valid()'],['../classstan_1_1gm_1_1arg__num__warmup.html#a3671f012b8c32dbc0cc470db0be437ff',1,'stan::gm::arg_num_warmup::is_valid()'],['../classstan_1_1gm_1_1arg__refresh.html#a2ea73528686bcd3386826638346a7173',1,'stan::gm::arg_refresh::is_valid()'],['../classstan_1_1gm_1_1arg__stepsize.html#a39d1b37895f28567618958d5b7df849d',1,'stan::gm::arg_stepsize::is_valid()'],['../classstan_1_1gm_1_1arg__stepsize__jitter.html#acf9b3e56f3f411ecf82e0af58f05517d',1,'stan::gm::arg_stepsize_jitter::is_valid()'],['../classstan_1_1gm_1_1arg__test__grad__eps.html#aa547cb6de6ea0e76098b79cce8e94cf7',1,'stan::gm::arg_test_grad_eps::is_valid()'],['../classstan_1_1gm_1_1arg__test__grad__err.html#a449f28acf765be6f6998f1fabebc7b40',1,'stan::gm::arg_test_grad_err::is_valid()'],['../classstan_1_1gm_1_1arg__thin.html#a98ba3e88a6641e25ca08d3c35ca68e68',1,'stan::gm::arg_thin::is_valid()'],['../classstan_1_1gm_1_1arg__tolerance.html#a003c31f5f93a8a7f77ec46b7c9e2420c',1,'stan::gm::arg_tolerance::is_valid()'],['../classstan_1_1gm_1_1singleton__argument.html#a007c5b0d3f9498c45089075bb0c3c390',1,'stan::gm::singleton_argument::is_valid()']]], + ['isfinite',['isfinite',['../namespaceboost_1_1math.html#aacb94b2d8f46034875d78e4260274709',1,'boost::math']]], + ['isinf',['isinf',['../namespaceboost_1_1math.html#ad274b0c69c7bd9e4ca76ac7519fd9f74',1,'boost::math::isinf()'],['../namespacestd.html#a458a0f3c809188e7fb9a9e10d335ac60',1,'std::isinf()']]], + ['isnan',['isnan',['../namespaceboost_1_1math.html#a3987c91e5ae7f757baf28ae8efc0fbbe',1,'boost::math::isnan()'],['../namespacestd.html#a197a4417fc07456e4f2d545e176dc97a',1,'std::isnan()']]], + ['isnormal',['isnormal',['../namespaceboost_1_1math.html#a66748d24fc22dc865ef9b64d17ed4d66',1,'boost::math']]], + ['iter_5fnum',['iter_num',['../classstan_1_1optimization_1_1_b_f_g_s_minimizer.html#a7c686dded117ef891b9a0aff363a511d',1,'stan::optimization::BFGSMinimizer']]] +]; diff --git a/doc/api/html/search/functions_6a.html b/doc/api/html/search/functions_6a.html new file mode 100644 index 00000000000..2b208e183ba --- /dev/null +++ b/doc/api/html/search/functions_6a.html @@ -0,0 +1,25 @@ + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/doc/api/html/search/functions_6a.js b/doc/api/html/search/functions_6a.js new file mode 100644 index 00000000000..7d12f0d45cc --- /dev/null +++ b/doc/api/html/search/functions_6a.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['jacobian',['jacobian',['../namespacestan_1_1agrad.html#a660e1cd77e3dcb11faf98da2521ee0f8',1,'stan::agrad::jacobian(const F &f, const Eigen::Matrix< double, Eigen::Dynamic, 1 > &x, Eigen::Matrix< double, Eigen::Dynamic, 1 > &fx, Eigen::Matrix< double, Eigen::Dynamic, Eigen::Dynamic > &J)'],['../namespacestan_1_1agrad.html#a7d496770e4f01fa73a4adf17e2ea1313',1,'stan::agrad::jacobian(const F &f, const Eigen::Matrix< T, Eigen::Dynamic, 1 > &x, Eigen::Matrix< T, Eigen::Dynamic, 1 > &fx, Eigen::Matrix< T, Eigen::Dynamic, Eigen::Dynamic > &J)'],['../namespacestan_1_1agrad.html#a4121d2877f4a3569f878b8e9207af3c1',1,'stan::agrad::jacobian(std::vector< var > &dependents, std::vector< var > &independents, std::vector< std::vector< double > > &jacobian)']]] +]; diff --git a/doc/api/html/search/functions_6b.html b/doc/api/html/search/functions_6b.html new file mode 100644 index 00000000000..5b1fb4a3ae5 --- /dev/null +++ b/doc/api/html/search/functions_6b.html @@ -0,0 +1,25 @@ + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/doc/api/html/search/functions_6b.js b/doc/api/html/search/functions_6b.js new file mode 100644 index 00000000000..ff629187233 --- /dev/null +++ b/doc/api/html/search/functions_6b.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['key_5fset',['key_set',['../classstan_1_1gm_1_1function__signatures.html#a6b48032da5b50b100fdb4ebcba899197',1,'stan::gm::function_signatures']]] +]; diff --git a/doc/api/html/search/functions_6c.html b/doc/api/html/search/functions_6c.html new file mode 100644 index 00000000000..da371cfab0f --- /dev/null +++ b/doc/api/html/search/functions_6c.html @@ -0,0 +1,25 @@ + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/doc/api/html/search/functions_6c.js b/doc/api/html/search/functions_6c.js new file mode 100644 index 00000000000..7d101723e9a --- /dev/null +++ b/doc/api/html/search/functions_6c.js @@ -0,0 +1,68 @@ +var searchData= +[ + ['lb_5fconstrain',['lb_constrain',['../namespacestan_1_1prob.html#a680c6f47862a16f0b45c85ce534e8211',1,'stan::prob::lb_constrain(const T x, const TL lb)'],['../namespacestan_1_1prob.html#a76b59a59ddaad0ad5a82226192ffd843',1,'stan::prob::lb_constrain(const T x, const TL lb, T &lp)']]], + ['lb_5ffree',['lb_free',['../namespacestan_1_1prob.html#a5f8562f1f72bf02ac21b36ef8dcfe3d7',1,'stan::prob']]], + ['lbeta',['lbeta',['../namespacestan_1_1agrad.html#ab7f20a5b3ac5abeef9b69b629c64f075',1,'stan::agrad::lbeta(const fvar< T > &x1, const fvar< T > &x2)'],['../namespacestan_1_1agrad.html#ae4c9ce80559602ab8d0ec6f5ae3e7d3b',1,'stan::agrad::lbeta(const double x1, const fvar< T > &x2)'],['../namespacestan_1_1agrad.html#a2f095ba758cbca01594b6b7be1513ce4',1,'stan::agrad::lbeta(const fvar< T > &x1, const double x2)'],['../namespacestan_1_1math.html#a3ccdb3f505b7db61c510e59e97b947b6',1,'stan::math::lbeta()']]], + ['ldlt_5falloc',['LDLT_alloc',['../classstan_1_1agrad_1_1_l_d_l_t__alloc.html#ad2c1bbcc10381b09fe034ef93b16e390',1,'stan::agrad::LDLT_alloc::LDLT_alloc()'],['../classstan_1_1agrad_1_1_l_d_l_t__alloc.html#ab1359cdaf7324e0d46b5c468bd70a2af',1,'stan::agrad::LDLT_alloc::LDLT_alloc(const Eigen::Matrix< var, R, C > &A)']]], + ['ldlt_5ffactor',['LDLT_factor',['../classstan_1_1math_1_1_l_d_l_t__factor_3_01stan_1_1agrad_1_1var_00_01_r_00_01_c_01_4.html#abdc7a01f87ac33c781d58a2d5ed2fd26',1,'stan::math::LDLT_factor< stan::agrad::var, R, C >::LDLT_factor()'],['../classstan_1_1math_1_1_l_d_l_t__factor_3_01stan_1_1agrad_1_1var_00_01_r_00_01_c_01_4.html#a86525804bc537ac3a74297484626d45a',1,'stan::math::LDLT_factor< stan::agrad::var, R, C >::LDLT_factor(const Eigen::Matrix< stan::agrad::var, R, C > &A)'],['../classstan_1_1math_1_1_l_d_l_t__factor_3_01double_00_01_r_00_01_c_01_4.html#ab710d201cf60112e05283a2b57c3547c',1,'stan::math::LDLT_factor< double, R, C >::LDLT_factor()'],['../classstan_1_1math_1_1_l_d_l_t__factor_3_01double_00_01_r_00_01_c_01_4.html#a88d83ef1c8b2536fc47c2e822aabaee2',1,'stan::math::LDLT_factor< double, R, C >::LDLT_factor(const Eigen::Matrix< double, R, C > &A)']]], + ['learn_5fcovariance',['learn_covariance',['../classstan_1_1mcmc_1_1covar__adaptation.html#a6c50cab9f1bebe465e8c28db2a9581f4',1,'stan::mcmc::covar_adaptation']]], + ['learn_5fstepsize',['learn_stepsize',['../classstan_1_1mcmc_1_1stepsize__adaptation.html#a29b24c73369c15114624b44b703d100e',1,'stan::mcmc::stepsize_adaptation']]], + ['learn_5fvariance',['learn_variance',['../classstan_1_1mcmc_1_1var__adaptation.html#a52f68d10bf0c8628b395bf18a00ba34e',1,'stan::mcmc::var_adaptation']]], + ['length',['length',['../namespacestan.html#a59c48c2ee48c5a6e8048fa2d6a035445',1,'stan::length(const T &)'],['../namespacestan.html#adb2e0700b1ec87a5e080cd50026b0182',1,'stan::length(const std::vector< T > &x)'],['../namespacestan.html#a12b8544448f77da1a773c7b7c0ebdc01',1,'stan::length(const Eigen::Matrix< T, R, C > &m)']]], + ['lgamma',['lgamma',['../namespacestan_1_1agrad.html#acb8b7366b1ecbe633d2c96f1c8dc62b8',1,'stan::agrad::lgamma(const fvar< T > &x)'],['../namespacestan_1_1agrad.html#a9d1f65093166797ec93ec580abc77d15',1,'stan::agrad::lgamma(const stan::agrad::var &a)'],['../namespacestan_1_1math.html#a836f46d7f63f5118a32cad11382c0551',1,'stan::math::lgamma()']]], + ['list_5fargument',['list_argument',['../classstan_1_1gm_1_1list__argument.html#ac0e9e2d2392255d5d6576390c7560b89',1,'stan::gm::list_argument']]], + ['lkj_5fcorr_5fcholesky_5flog',['lkj_corr_cholesky_log',['../namespacestan_1_1prob.html#a547d5d6ea7f2a985488c75eb2788d7c4',1,'stan::prob::lkj_corr_cholesky_log(const Eigen::Matrix< T_covar, Eigen::Dynamic, Eigen::Dynamic > &L, const T_shape &eta)'],['../namespacestan_1_1prob.html#afa5ff4715e294327b88666b1f9639e55',1,'stan::prob::lkj_corr_cholesky_log(const Eigen::Matrix< T_covar, Eigen::Dynamic, Eigen::Dynamic > &L, const T_shape &eta)']]], + ['lkj_5fcorr_5fcholesky_5frng',['lkj_corr_cholesky_rng',['../namespacestan_1_1prob.html#ab6923f0ee88a517f5be6ac8780e5842c',1,'stan::prob']]], + ['lkj_5fcorr_5flog',['lkj_corr_log',['../namespacestan_1_1prob.html#a89375117dd56efcdf32c2e8d7bb593a9',1,'stan::prob::lkj_corr_log(const Eigen::Matrix< T_y, Eigen::Dynamic, Eigen::Dynamic > &y, const T_shape &eta)'],['../namespacestan_1_1prob.html#a35b120723f2e595892c2d86d00a9cf3e',1,'stan::prob::lkj_corr_log(const Eigen::Matrix< T_y, Eigen::Dynamic, Eigen::Dynamic > &y, const T_shape &eta)']]], + ['lkj_5fcorr_5frng',['lkj_corr_rng',['../namespacestan_1_1prob.html#a54800d037a32da9ecfb59c87152bfbcc',1,'stan::prob']]], + ['lkj_5fcov_5flog',['lkj_cov_log',['../namespacestan_1_1prob.html#a96a69b926127ce2349d86bcbedac81d7',1,'stan::prob::lkj_cov_log(const Eigen::Matrix< T_y, Eigen::Dynamic, Eigen::Dynamic > &y, const Eigen::Matrix< T_loc, Eigen::Dynamic, 1 > &mu, const Eigen::Matrix< T_scale, Eigen::Dynamic, 1 > &sigma, const T_shape &eta)'],['../namespacestan_1_1prob.html#a60be4ec8b4e9dd29b73d49139c489e51',1,'stan::prob::lkj_cov_log(const Eigen::Matrix< T_y, Eigen::Dynamic, Eigen::Dynamic > &y, const Eigen::Matrix< T_loc, Eigen::Dynamic, 1 > &mu, const Eigen::Matrix< T_scale, Eigen::Dynamic, 1 > &sigma, const T_shape &eta)'],['../namespacestan_1_1prob.html#a8d134366536efce845a8f64527e86ff9',1,'stan::prob::lkj_cov_log(const Eigen::Matrix< T_y, Eigen::Dynamic, Eigen::Dynamic > &y, const T_loc &mu, const T_scale &sigma, const T_shape &eta)'],['../namespacestan_1_1prob.html#a78c42178310c4085d186abfb85c97db1',1,'stan::prob::lkj_cov_log(const Eigen::Matrix< T_y, Eigen::Dynamic, Eigen::Dynamic > &y, const T_loc &mu, const T_scale &sigma, const T_shape &eta)']]], + ['lmgamma',['lmgamma',['../namespacestan_1_1agrad.html#abcf5c1dacc44b491a46040004177e1ad',1,'stan::agrad::lmgamma(int x1, const fvar< T > &x2)'],['../namespacestan_1_1agrad.html#af080723d19e8d4fa6dbe74cab69ee3f2',1,'stan::agrad::lmgamma(int a, const stan::agrad::var &b)'],['../namespacestan_1_1math.html#a0ee0706b2cb6d2e1da2c3b6041c06a56',1,'stan::math::lmgamma()']]], + ['local_5fvar_5fdecl_5fvisgen',['local_var_decl_visgen',['../structstan_1_1gm_1_1local__var__decl__visgen.html#a64a2e460136e91077c77fccef2b34c0d',1,'stan::gm::local_var_decl_visgen']]], + ['log',['log',['../namespacestan_1_1agrad.html#ac98c1c298301701efe36438130bac705',1,'stan::agrad::log(const var &a)'],['../namespacestan_1_1agrad.html#a43089bcc90b7c1aaff44406aaa426e85',1,'stan::agrad::log(const fvar< T > &x)'],['../namespacestan_1_1math.html#ae3e7ce33064686ec2a2591fa5d4227cf',1,'stan::math::log()']]], + ['log10',['log10',['../namespacestan_1_1agrad.html#a6eb95bc79aff1cd13c794525c5a907e8',1,'stan::agrad::log10(const var &a)'],['../namespacestan_1_1agrad.html#aa63c2c14dbdb19b7edf2834b287a4676',1,'stan::agrad::log10(const fvar< T > &x)'],['../namespacestan_1_1math.html#a21f4f7c092e2bc9a089885628b86c004',1,'stan::math::log10()']]], + ['log1m',['log1m',['../namespacestan_1_1agrad.html#af4be9cece7a9094512941604d195fafc',1,'stan::agrad::log1m(const fvar< T > &x)'],['../namespacestan_1_1agrad.html#a428e6958e002b027bdbfe4a844a267a4',1,'stan::agrad::log1m(const stan::agrad::var &a)'],['../namespacestan_1_1math.html#a4f92092fb8a70b31d00898bbbe769612',1,'stan::math::log1m()']]], + ['log1m_5fexp',['log1m_exp',['../namespacestan_1_1agrad.html#a501a03587bc86f5ec3745e9fbee6636a',1,'stan::agrad::log1m_exp(const fvar< T > &x)'],['../namespacestan_1_1agrad.html#ab8a7bcd350916b80b3bd0e6633344861',1,'stan::agrad::log1m_exp(const stan::agrad::var &a)'],['../namespacestan_1_1math.html#a3ce261caf05bd371c430e82a0e6389a5',1,'stan::math::log1m_exp()']]], + ['log1m_5finv_5flogit',['log1m_inv_logit',['../namespacestan_1_1agrad.html#a4ef1d069b2a0b0e79e6a96096ced05a5',1,'stan::agrad::log1m_inv_logit()'],['../namespacestan_1_1math.html#ac7f71c696a5e0da4daab30e5f3704842',1,'stan::math::log1m_inv_logit()']]], + ['log1p',['log1p',['../namespacestan_1_1agrad.html#a3e8efd5110369daca4516294e61113cc',1,'stan::agrad::log1p(const fvar< T > &x)'],['../namespacestan_1_1agrad.html#a668283bab0c6bc04b5b106d236a2377a',1,'stan::agrad::log1p(const stan::agrad::var &a)'],['../namespacestan_1_1math.html#a5166d3c58ad8ce0aedbf104179888b69',1,'stan::math::log1p()']]], + ['log1p_5fexp',['log1p_exp',['../namespacestan_1_1agrad.html#a1ff177e7dc2559a9f0e11b60aa024aac',1,'stan::agrad::log1p_exp(const fvar< T > &x)'],['../namespacestan_1_1agrad.html#a10454c0b2b4185635d09ceb22bb1e8b0',1,'stan::agrad::log1p_exp(const stan::agrad::var &a)'],['../namespacestan_1_1math.html#a88151def26813dec3e04c4a8b9674091',1,'stan::math::log1p_exp()']]], + ['log2',['log2',['../namespacestan_1_1agrad.html#adc1fbe8f169e3dbaf05dce2399b87177',1,'stan::agrad::log2(const fvar< T > &x)'],['../namespacestan_1_1agrad.html#aca9b147f7efd83ab91e1169324e42172',1,'stan::agrad::log2(const stan::agrad::var &a)'],['../namespacestan_1_1math.html#aa25e1572bf46e3a6b9ee270f0c7e2c4d',1,'stan::math::log2(const T a)'],['../namespacestan_1_1math.html#a947ba3fe3c87293f7c57395007100c79',1,'stan::math::log2()']]], + ['log_5fabs_5fdet',['log_abs_det',['../classstan_1_1agrad_1_1_l_d_l_t__alloc.html#a063ff0e0e58cc5ad14a3c4a34d614bc3',1,'stan::agrad::LDLT_alloc::log_abs_det()'],['../classstan_1_1math_1_1_l_d_l_t__factor_3_01double_00_01_r_00_01_c_01_4.html#a8c2f622cdd10422db6d9470c7799a189',1,'stan::math::LDLT_factor< double, R, C >::log_abs_det()']]], + ['log_5fdeterminant',['log_determinant',['../namespacestan_1_1agrad.html#a8a1d37f736333bd2c5e22f0ccb645e5c',1,'stan::agrad::log_determinant(const Eigen::Matrix< fvar< T >, R, C > &m)'],['../namespacestan_1_1agrad.html#a987a42c964cf999f61943d6811843964',1,'stan::agrad::log_determinant(const Eigen::Matrix< var, R, C > &m)'],['../namespacestan_1_1math.html#aca29dad18932e3ca17ac52fd0238b364',1,'stan::math::log_determinant()']]], + ['log_5fdeterminant_5fldlt',['log_determinant_ldlt',['../namespacestan_1_1agrad.html#a836b4fbc18e46a0b211c77362ee5ea7f',1,'stan::agrad::log_determinant_ldlt()'],['../namespacestan_1_1math.html#a306d737ee042b8f40e93713cd87fe48b',1,'stan::math::log_determinant_ldlt()']]], + ['log_5fdeterminant_5fspd',['log_determinant_spd',['../namespacestan_1_1agrad.html#acb47e4ac872b94a58defa619ba0b96e3',1,'stan::agrad::log_determinant_spd()'],['../namespacestan_1_1math.html#ae9a296d4414d0193108c70b350a05cfc',1,'stan::math::log_determinant_spd()']]], + ['log_5fdiff_5fexp',['log_diff_exp',['../namespacestan_1_1agrad.html#a8b63a8fd1ac87815107c75c405e810dd',1,'stan::agrad::log_diff_exp(const fvar< T > &x1, const fvar< T > &x2)'],['../namespacestan_1_1agrad.html#a5d5141fbaefe30307b79611c1391ca5c',1,'stan::agrad::log_diff_exp(const T1 &x1, const fvar< T2 > &x2)'],['../namespacestan_1_1agrad.html#a24844c12cad61f5e2ee54fe198347a98',1,'stan::agrad::log_diff_exp(const fvar< T1 > &x1, const T2 &x2)'],['../namespacestan_1_1agrad.html#a119e409264dfab429ffaa814ba6133c0',1,'stan::agrad::log_diff_exp(const stan::agrad::var &a, const stan::agrad::var &b)'],['../namespacestan_1_1agrad.html#a2475060db47484c7a076f404fbb2394d',1,'stan::agrad::log_diff_exp(const stan::agrad::var &a, const double &b)'],['../namespacestan_1_1agrad.html#a9a895635ca7f66a6bf4372fe314f2d21',1,'stan::agrad::log_diff_exp(const double &a, const stan::agrad::var &b)'],['../namespacestan_1_1math.html#aac1dbafd4c2a129415e86f868fc0979a',1,'stan::math::log_diff_exp()']]], + ['log_5ffalling_5ffactorial',['log_falling_factorial',['../namespacestan_1_1agrad.html#a0ffd034a1939c647aead3fdafae32afa',1,'stan::agrad::log_falling_factorial(const fvar< T > &x, const fvar< T > &n)'],['../namespacestan_1_1agrad.html#a21f6f947d6415c306ad111ef43981b90',1,'stan::agrad::log_falling_factorial(const double x, const fvar< T > &n)'],['../namespacestan_1_1agrad.html#ab039c4e5fecc51d8772b632c3a9acb53',1,'stan::agrad::log_falling_factorial(const fvar< T > &x, const double n)'],['../namespacestan_1_1agrad.html#aa5f969e2991f83a5e66a3f8822486215',1,'stan::agrad::log_falling_factorial(const var &a, const double &b)'],['../namespacestan_1_1agrad.html#a08dde4140ae5a400855918f6cd91e17e',1,'stan::agrad::log_falling_factorial(const var &a, const var &b)'],['../namespacestan_1_1agrad.html#adebdfe1af8c92bcd3a142794c954316b',1,'stan::agrad::log_falling_factorial(const double &a, const var &b)'],['../namespacestan_1_1math.html#aa9cb2f3f6c73b2005d9e9fadbad415bf',1,'stan::math::log_falling_factorial()']]], + ['log_5finv_5flogit',['log_inv_logit',['../namespacestan_1_1agrad.html#a25aaaf2eca128514fc4cf52b59872658',1,'stan::agrad::log_inv_logit()'],['../namespacestan_1_1math.html#ad5be889d1ef4284654a04e400f5371a7',1,'stan::math::log_inv_logit()']]], + ['log_5finv_5flogit_5fdiff',['log_inv_logit_diff',['../namespacestan_1_1prob.html#a76c814ad46314b38beb80a1a699617ef',1,'stan::prob']]], + ['log_5fprob',['log_prob',['../classstan_1_1mcmc_1_1sample.html#a42aa100b16656e4904586f80ec028425',1,'stan::mcmc::sample']]], + ['log_5fprob_5fgrad',['log_prob_grad',['../namespacestan_1_1model.html#aad33e9d6c10b589acbe6e527b5f9de80',1,'stan::model::log_prob_grad(const M &model, std::vector< double > &params_r, std::vector< int > &params_i, std::vector< double > &gradient, std::ostream *msgs=0)'],['../namespacestan_1_1model.html#aa8bbac348a197c17f86d57cc3a65e7d2',1,'stan::model::log_prob_grad(const M &model, Eigen::VectorXd &params_r, Eigen::VectorXd &gradient, std::ostream *msgs=0)']]], + ['log_5fprob_5fpropto',['log_prob_propto',['../namespacestan_1_1model.html#a4f75ba8738a5667a7abaef3871e14ca8',1,'stan::model::log_prob_propto(const M &model, std::vector< double > &params_r, std::vector< int > &params_i, std::ostream *msgs=0)'],['../namespacestan_1_1model.html#a0267095f157269950cfd3f1f402abe21',1,'stan::model::log_prob_propto(const M &model, Eigen::VectorXd &params_r, std::ostream *msgs=0)']]], + ['log_5frising_5ffactorial',['log_rising_factorial',['../namespacestan_1_1agrad.html#a3782da231c6c02f7ce65cf7b8a0d0b28',1,'stan::agrad::log_rising_factorial(const fvar< T > &x, const fvar< T > &n)'],['../namespacestan_1_1agrad.html#af00e8b62f7721b68f450588b1842d005',1,'stan::agrad::log_rising_factorial(const fvar< T > &x, const double n)'],['../namespacestan_1_1agrad.html#a58c0933b722f43bed32a6dd069716698',1,'stan::agrad::log_rising_factorial(const double x, const fvar< T > &n)'],['../namespacestan_1_1agrad.html#aa260d82a2cae776fafd0b65f40da2a91',1,'stan::agrad::log_rising_factorial(const var &a, const double &b)'],['../namespacestan_1_1agrad.html#aee3ad0a137a3ac1164ef4afbbfc3aa17',1,'stan::agrad::log_rising_factorial(const var &a, const var &b)'],['../namespacestan_1_1agrad.html#af9ecc1f14a7e33f59a6349b37aeb6846',1,'stan::agrad::log_rising_factorial(const double &a, const var &b)'],['../namespacestan_1_1math.html#aaf23285d755661c14ca29c3ba935b77d',1,'stan::math::log_rising_factorial()']]], + ['log_5fsoftmax',['log_softmax',['../namespacestan_1_1agrad.html#a1669a67b8247ae502926890376c2b68b',1,'stan::agrad::log_softmax(const Eigen::Matrix< fvar< T >, Eigen::Dynamic, 1 > &alpha)'],['../namespacestan_1_1agrad.html#adcaa1e54a0acf38f7a8f10a1bc33e8df',1,'stan::agrad::log_softmax(const Eigen::Matrix< var, Eigen::Dynamic, 1 > &alpha)'],['../namespacestan_1_1math.html#a011a8c8bb83f9b6c700a725240be33b5',1,'stan::math::log_softmax()']]], + ['log_5fsum_5fexp',['log_sum_exp',['../namespacestan_1_1agrad.html#a6cd9f7f4203d0dd299489be37445b5e1',1,'stan::agrad::log_sum_exp(const fvar< T > &x1, const fvar< T > &x2)'],['../namespacestan_1_1agrad.html#a65accd2105cd3b00e370ba7ba2de38e4',1,'stan::agrad::log_sum_exp(const double x1, const fvar< T > &x2)'],['../namespacestan_1_1agrad.html#ac8761a5b8672071d99b5c7cc8dea3276',1,'stan::agrad::log_sum_exp(const fvar< T > &x1, const double x2)'],['../namespacestan_1_1agrad.html#a3d1039fe876efe94f6a8d40f9d1c96cd',1,'stan::agrad::log_sum_exp(const std::vector< fvar< T > > &v)'],['../namespacestan_1_1agrad.html#a5df6229f0b30f3b43f5c6b4744acc62c',1,'stan::agrad::log_sum_exp(const Eigen::Matrix< fvar< T >, R, C > &v)'],['../namespacestan_1_1agrad.html#ac64b74224b38e3bcff5e33c2ffdb673e',1,'stan::agrad::log_sum_exp(const stan::agrad::var &a, const stan::agrad::var &b)'],['../namespacestan_1_1agrad.html#af6960e01ec13ad3bffda2295e5f10c33',1,'stan::agrad::log_sum_exp(const stan::agrad::var &a, const double &b)'],['../namespacestan_1_1agrad.html#a845f5338275b390a8eeedb3e66f097f8',1,'stan::agrad::log_sum_exp(const double &a, const stan::agrad::var &b)'],['../namespacestan_1_1agrad.html#a5706fda535b2473b48024f50ce69be18',1,'stan::agrad::log_sum_exp(const std::vector< var > &x)'],['../namespacestan_1_1agrad.html#a902892cf9092c81ee4d26c54ba672c38',1,'stan::agrad::log_sum_exp(const Eigen::Matrix< var, R, C > &x)'],['../namespacestan_1_1math.html#a3c5f32f7cd1a5690a697f4031df569c4',1,'stan::math::log_sum_exp(const T2 &a, const T1 &b)'],['../namespacestan_1_1math.html#ae5513861b48f8649938d82883b58170c',1,'stan::math::log_sum_exp(const std::vector< T > &x)'],['../namespacestan_1_1math.html#a6205ce595af6efac8746bd83b2b761da',1,'stan::math::log_sum_exp(const Eigen::Matrix< T, R, C > &x)']]], + ['logical_5fand',['logical_and',['../namespacestan_1_1math.html#adc35bab2db89b3ceda66f11e1fa53ec8',1,'stan::math']]], + ['logical_5feq',['logical_eq',['../namespacestan_1_1math.html#ab2213736b55fd6696fa0120fd3fe72e4',1,'stan::math']]], + ['logical_5fgt',['logical_gt',['../namespacestan_1_1math.html#aba86bfd994302061a0260e1202fca777',1,'stan::math']]], + ['logical_5fgte',['logical_gte',['../namespacestan_1_1math.html#ac6bb0b8623192207d35e207ea312d8be',1,'stan::math']]], + ['logical_5flt',['logical_lt',['../namespacestan_1_1math.html#a0b5bd91412749e10933f304b54aef88f',1,'stan::math']]], + ['logical_5flte',['logical_lte',['../namespacestan_1_1math.html#af3649d4c704962c4502cd6220a5e2230',1,'stan::math']]], + ['logical_5fnegation',['logical_negation',['../namespacestan_1_1math.html#aad2fc9ce55dfac079d930335beb7e4a8',1,'stan::math']]], + ['logical_5fneq',['logical_neq',['../namespacestan_1_1math.html#a206eb210d8e7e2c718af25c40de8f9d1',1,'stan::math']]], + ['logical_5for',['logical_or',['../namespacestan_1_1math.html#ac74007e2d5f55d5ae4a308f535869aee',1,'stan::math']]], + ['logistic_5fccdf_5flog',['logistic_ccdf_log',['../namespacestan_1_1prob.html#aeff91e2efd57e631955cb7ebde45a1c7',1,'stan::prob']]], + ['logistic_5fcdf',['logistic_cdf',['../namespacestan_1_1prob.html#ac2a1d5c2316209f3a4d6cc90f3f3b6cf',1,'stan::prob']]], + ['logistic_5fcdf_5flog',['logistic_cdf_log',['../namespacestan_1_1prob.html#aca4c773da2a18fac3e13b91e51e9e18d',1,'stan::prob']]], + ['logistic_5flog',['logistic_log',['../namespacestan_1_1prob.html#a33be4a206231be2a1acda61c06c05039',1,'stan::prob::logistic_log(const T_y &y, const T_loc &mu, const T_scale &sigma)'],['../namespacestan_1_1prob.html#abfa731b9fd1d7ba996e1e5f9eb6e847f',1,'stan::prob::logistic_log(const T_y &y, const T_loc &mu, const T_scale &sigma)']]], + ['logistic_5frng',['logistic_rng',['../namespacestan_1_1prob.html#a664843596a52a9bc23dc5f2073f9806b',1,'stan::prob']]], + ['logit',['logit',['../namespacestan_1_1agrad.html#ab43cf2fb570203a8492c272da3d2922f',1,'stan::agrad::logit()'],['../namespacestan_1_1math.html#a53342d0c2cd3a6e440c533070054aca3',1,'stan::math::logit()']]], + ['lognormal_5fccdf_5flog',['lognormal_ccdf_log',['../namespacestan_1_1prob.html#a576b250e68b4cc83d9df5d697eb57fa2',1,'stan::prob']]], + ['lognormal_5fcdf',['lognormal_cdf',['../namespacestan_1_1prob.html#af50822e781206859400fb659831eb000',1,'stan::prob']]], + ['lognormal_5fcdf_5flog',['lognormal_cdf_log',['../namespacestan_1_1prob.html#aa7a25fc347587649f2ca55656fb23950',1,'stan::prob']]], + ['lognormal_5flog',['lognormal_log',['../namespacestan_1_1prob.html#a72c3cfe83f1bfa2a71d146dde0cc865e',1,'stan::prob::lognormal_log(const T_y &y, const T_loc &mu, const T_scale &sigma)'],['../namespacestan_1_1prob.html#a47dbe7f1b8096c72c8dc40496b9f082d',1,'stan::prob::lognormal_log(const T_y &y, const T_loc &mu, const T_scale &sigma)']]], + ['lognormal_5frng',['lognormal_rng',['../namespacestan_1_1prob.html#a9dbaae05c716d93b29dfc3f00f26d4ed',1,'stan::prob']]], + ['logp',['logp',['../classstan_1_1optimization_1_1_b_f_g_s_line_search.html#a6750ef181409d006239e8693a60daa85',1,'stan::optimization::BFGSLineSearch::logp()'],['../classstan_1_1optimization_1_1_nesterov_gradient.html#af86f9e2d5da6465c6fdaa435a7c48886',1,'stan::optimization::NesterovGradient::logp()']]], + ['lowest',['lowest',['../struct_eigen_1_1_num_traits_3_01stan_1_1agrad_1_1var_01_4.html#a14cfab12cd9b5df0f0663a7bb07fa35d',1,'Eigen::NumTraits< stan::agrad::var >']]], + ['lp_5fno_5fjacobian',['lp_no_jacobian',['../namespacestan_1_1optimization.html#a03faddd9bfe31c6237e1ce662d3f3d2d',1,'stan::optimization']]], + ['lub_5fconstrain',['lub_constrain',['../namespacestan_1_1prob.html#a7333ecac8eb1a974e758a134f30fbf7b',1,'stan::prob::lub_constrain(const T x, TL lb, TU ub)'],['../namespacestan_1_1prob.html#af8825917ff4f4875b7820edc760e4440',1,'stan::prob::lub_constrain(const T x, const TL lb, const TU ub, T &lp)']]], + ['lub_5ffree',['lub_free',['../namespacestan_1_1prob.html#a4e48912671137a74815f5194163279c9',1,'stan::prob']]] +]; diff --git a/doc/api/html/search/functions_6d.html b/doc/api/html/search/functions_6d.html new file mode 100644 index 00000000000..d01ac5376a1 --- /dev/null +++ b/doc/api/html/search/functions_6d.html @@ -0,0 +1,25 @@ + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/doc/api/html/search/functions_6d.js b/doc/api/html/search/functions_6d.js new file mode 100644 index 00000000000..9635c18e6b7 --- /dev/null +++ b/doc/api/html/search/functions_6d.js @@ -0,0 +1,55 @@ +var searchData= +[ + ['machine_5fprecision',['machine_precision',['../namespacestan_1_1math.html#a173839dddd0a8ac8afa710b9e3d5008a',1,'stan::math']]], + ['main',['main',['../print_8cpp.html#ac0f2228420376f4db7e1274f2b41667c',1,'main(int argc, const char *argv[]): print.cpp'],['../stanc_8cpp.html#ac0f2228420376f4db7e1274f2b41667c',1,'main(int argc, const char *argv[]): stanc.cpp']]], + ['make_5fnu',['make_nu',['../namespacestan_1_1prob.html#a4aae2e874c72677ddb53ec9bdec1c29d',1,'stan::prob']]], + ['matrix',['matrix',['../classstan_1_1io_1_1reader.html#afd2aeccae677df87006d976cbcae9fd2',1,'stan::io::reader']]], + ['matrix_5fconstrain',['matrix_constrain',['../classstan_1_1io_1_1reader.html#a72043393997619c044478ced8a867f69',1,'stan::io::reader::matrix_constrain(size_t m, size_t n)'],['../classstan_1_1io_1_1reader.html#a44a9e74ffa53964f23173a5c31e798c8',1,'stan::io::reader::matrix_constrain(size_t m, size_t n, T &)']]], + ['matrix_5findex',['matrix_index',['../print_8hpp.html#ac6106c19828c8abe37b2bb9dc66ce82b',1,'matrix_index(stan::mcmc::chains<> &chains, const int index): print.hpp'],['../print_8hpp.html#abb3cd74cdc531aef4a85bed5fca26c26',1,'matrix_index(std::vector< int > &index, const std::vector< int > &dims): print.hpp']]], + ['matrix_5flb',['matrix_lb',['../classstan_1_1io_1_1reader.html#afcad89dd91b23010956526b523ed8c95',1,'stan::io::reader']]], + ['matrix_5flb_5fconstrain',['matrix_lb_constrain',['../classstan_1_1io_1_1reader.html#a79b98ecf881169d6dd480caa096c0ed8',1,'stan::io::reader::matrix_lb_constrain(const TL lb, size_t m, size_t n)'],['../classstan_1_1io_1_1reader.html#a9b119826c47b45fa83df1758de07c5ff',1,'stan::io::reader::matrix_lb_constrain(const TL lb, size_t m, size_t n, T &lp)']]], + ['matrix_5flb_5funconstrain',['matrix_lb_unconstrain',['../classstan_1_1io_1_1writer.html#a73a1d50b227b9488dc28ee98847aa100',1,'stan::io::writer']]], + ['matrix_5flub',['matrix_lub',['../classstan_1_1io_1_1reader.html#a13209c64b39d9c7515fb561ec788a516',1,'stan::io::reader']]], + ['matrix_5flub_5fconstrain',['matrix_lub_constrain',['../classstan_1_1io_1_1reader.html#a9007b1739c9738d88347f499e9a39021',1,'stan::io::reader::matrix_lub_constrain(const TL lb, const TU ub, size_t m, size_t n)'],['../classstan_1_1io_1_1reader.html#a7b8a944a6d7ff2ea53cf7a3e78843306',1,'stan::io::reader::matrix_lub_constrain(const TL lb, const TU ub, size_t m, size_t n, T &lp)']]], + ['matrix_5flub_5funconstrain',['matrix_lub_unconstrain',['../classstan_1_1io_1_1writer.html#a0f4b5839e3bd701f2c586e7d31bb0dbf',1,'stan::io::writer']]], + ['matrix_5fnormal_5fprec_5flog',['matrix_normal_prec_log',['../namespacestan_1_1prob.html#a04ca61f93c3e75f12a7dafbbb2964069',1,'stan::prob::matrix_normal_prec_log(const Eigen::Matrix< T_y, Eigen::Dynamic, Eigen::Dynamic > &y, const Eigen::Matrix< T_Mu, Eigen::Dynamic, Eigen::Dynamic > &Mu, const Eigen::Matrix< T_Sigma, Eigen::Dynamic, Eigen::Dynamic > &Sigma, const Eigen::Matrix< T_D, Eigen::Dynamic, Eigen::Dynamic > &D)'],['../namespacestan_1_1prob.html#a225aae36a6e9611cdba3b36e20225a5a',1,'stan::prob::matrix_normal_prec_log(const Eigen::Matrix< T_y, Eigen::Dynamic, Eigen::Dynamic > &y, const Eigen::Matrix< T_Mu, Eigen::Dynamic, Eigen::Dynamic > &Mu, const Eigen::Matrix< T_Sigma, Eigen::Dynamic, Eigen::Dynamic > &Sigma, const Eigen::Matrix< T_D, Eigen::Dynamic, Eigen::Dynamic > &D)']]], + ['matrix_5fub',['matrix_ub',['../classstan_1_1io_1_1reader.html#a280b0c933f7dae06f472e56432b45489',1,'stan::io::reader']]], + ['matrix_5fub_5fconstrain',['matrix_ub_constrain',['../classstan_1_1io_1_1reader.html#af70a11c24ac7cfba146d0864a05dcf9a',1,'stan::io::reader::matrix_ub_constrain(const TU ub, size_t m, size_t n)'],['../classstan_1_1io_1_1reader.html#ace55576f9257795f986494e343c11978',1,'stan::io::reader::matrix_ub_constrain(const TU ub, size_t m, size_t n, T &lp)']]], + ['matrix_5fub_5funconstrain',['matrix_ub_unconstrain',['../classstan_1_1io_1_1writer.html#a098679782a22794d929d982a1f1a147b',1,'stan::io::writer']]], + ['matrix_5funconstrain',['matrix_unconstrain',['../classstan_1_1io_1_1writer.html#a1120b4bda9918cce7944b2b857bed5f9',1,'stan::io::writer']]], + ['matrix_5fvar_5fdecl',['matrix_var_decl',['../structstan_1_1gm_1_1matrix__var__decl.html#a80c7b9b96497a250e4b9861131e515aa',1,'stan::gm::matrix_var_decl::matrix_var_decl()'],['../structstan_1_1gm_1_1matrix__var__decl.html#a4a99b5bb963daaeba872633b7753ffff',1,'stan::gm::matrix_var_decl::matrix_var_decl(range const &range, expression const &M, expression const &N, std::string const &name, std::vector< expression > const &dims)']]], + ['max',['max',['../structstd_1_1numeric__limits_3_01stan_1_1agrad_1_1fvar_3_01_t_01_4_01_4.html#ab5052559ef909e48342d86185079a8f3',1,'std::numeric_limits< stan::agrad::fvar< T > >::max()'],['../structstd_1_1numeric__limits_3_01stan_1_1agrad_1_1var_01_4.html#a133cb21b688f8be5f5d86b523d2848c1',1,'std::numeric_limits< stan::agrad::var >::max()'],['../namespacestan_1_1math.html#a86b6be1d580b3b5cf4b4f57546062352',1,'stan::math::max(const double a, const double b)'],['../namespacestan_1_1math.html#a5da0ef87756d3dbd20ca4ff5a3efa10d',1,'stan::math::max(const std::vector< int > &x)'],['../namespacestan_1_1math.html#acde414919e0e4dcfa72d565679819091',1,'stan::math::max(const std::vector< T > &x)'],['../namespacestan_1_1math.html#ae3f299773dc20e8305fc16df1be8d029',1,'stan::math::max(const Eigen::Matrix< T, R, C > &m)']]], + ['max_5fsize',['max_size',['../namespacestan.html#a8b2c79a3a686dcf90566be8492e1065d',1,'stan::max_size(const T1 &x1, const T2 &x2)'],['../namespacestan.html#ac5ca4bf16c3b5c453162473c67f844bb',1,'stan::max_size(const T1 &x1, const T2 &x2, const T3 &x3)'],['../namespacestan.html#afff0e381090b0d490dc3b23f3eaf8846',1,'stan::max_size(const T1 &x1, const T2 &x2, const T3 &x3, const T4 &x4)']]], + ['mcmc_5fwriter',['mcmc_writer',['../classstan_1_1io_1_1mcmc__writer.html#a6a688bb1b2851d68f7305cb97c750a2b',1,'stan::io::mcmc_writer']]], + ['mdivide_5fleft',['mdivide_left',['../namespacestan_1_1agrad.html#a2b41bf2c8372fd934837bcab95ea6218',1,'stan::agrad::mdivide_left(const Eigen::Matrix< fvar< T >, R1, C1 > &A, const Eigen::Matrix< fvar< T >, R2, C2 > &b)'],['../namespacestan_1_1agrad.html#aa1da8d6fb0170dddd868c37b4ae0e243',1,'stan::agrad::mdivide_left(const Eigen::Matrix< double, R1, C1 > &A, const Eigen::Matrix< fvar< T >, R2, C2 > &b)'],['../namespacestan_1_1agrad.html#a9c7cffeb1a3590e2bc9803e2b9b96e57',1,'stan::agrad::mdivide_left(const Eigen::Matrix< fvar< T >, R1, C1 > &A, const Eigen::Matrix< double, R2, C2 > &b)'],['../namespacestan_1_1agrad.html#a290e23ab6f9674cb1400b32a1cadd61b',1,'stan::agrad::mdivide_left(const Eigen::Matrix< var, R1, C1 > &A, const Eigen::Matrix< var, R2, C2 > &b)'],['../namespacestan_1_1agrad.html#ad17f36acd5401a8f3d83410055cacd5b',1,'stan::agrad::mdivide_left(const Eigen::Matrix< var, R1, C1 > &A, const Eigen::Matrix< double, R2, C2 > &b)'],['../namespacestan_1_1agrad.html#a35f1d7800586ac5f5c1930627c2ed408',1,'stan::agrad::mdivide_left(const Eigen::Matrix< double, R1, C1 > &A, const Eigen::Matrix< var, R2, C2 > &b)'],['../namespacestan_1_1math.html#a7266758367e8260b2afbfaeea7d5b418',1,'stan::math::mdivide_left()']]], + ['mdivide_5fleft_5fldlt',['mdivide_left_ldlt',['../namespacestan_1_1agrad.html#a73fe08a0aed98a06f69afd7efdcf7e91',1,'stan::agrad::mdivide_left_ldlt(const stan::math::LDLT_factor< var, R1, C1 > &A, const Eigen::Matrix< var, R2, C2 > &b)'],['../namespacestan_1_1agrad.html#aca6cefcad36a0a43763634d7e399192e',1,'stan::agrad::mdivide_left_ldlt(const stan::math::LDLT_factor< var, R1, C1 > &A, const Eigen::Matrix< double, R2, C2 > &b)'],['../namespacestan_1_1agrad.html#a2cd1fc34cc6a308373729f667a21a243',1,'stan::agrad::mdivide_left_ldlt(const stan::math::LDLT_factor< double, R1, C1 > &A, const Eigen::Matrix< var, R2, C2 > &b)'],['../namespacestan_1_1math.html#a978022fb9cb20fd35f6e9e89ab3bc871',1,'stan::math::mdivide_left_ldlt()']]], + ['mdivide_5fleft_5fspd',['mdivide_left_spd',['../namespacestan_1_1agrad.html#a20ea5c1fbce1ed4ad4d54fc8f2c558c2',1,'stan::agrad::mdivide_left_spd(const Eigen::Matrix< var, R1, C1 > &A, const Eigen::Matrix< var, R2, C2 > &b)'],['../namespacestan_1_1agrad.html#a03fc1f8557646c3d1b11483a1f14c6de',1,'stan::agrad::mdivide_left_spd(const Eigen::Matrix< var, R1, C1 > &A, const Eigen::Matrix< double, R2, C2 > &b)'],['../namespacestan_1_1agrad.html#aec4a59ebe9eae939784d0a7e202bd7de',1,'stan::agrad::mdivide_left_spd(const Eigen::Matrix< double, R1, C1 > &A, const Eigen::Matrix< var, R2, C2 > &b)'],['../namespacestan_1_1math.html#a0c8c6e72f1cbf2b73008d4fc98de1abe',1,'stan::math::mdivide_left_spd()']]], + ['mdivide_5fleft_5ftri',['mdivide_left_tri',['../namespacestan_1_1agrad.html#a4cc1b5631c20f7a48b973d5ca0418c34',1,'stan::agrad::mdivide_left_tri(const Eigen::Matrix< var, R1, C1 > &A, const Eigen::Matrix< var, R2, C2 > &b)'],['../namespacestan_1_1agrad.html#a97be1bb5da2a12a36c9d32235d59bd5f',1,'stan::agrad::mdivide_left_tri(const Eigen::Matrix< double, R1, C1 > &A, const Eigen::Matrix< var, R2, C2 > &b)'],['../namespacestan_1_1agrad.html#aac856c62d730cb5880add59627d59d5a',1,'stan::agrad::mdivide_left_tri(const Eigen::Matrix< var, R1, C1 > &A, const Eigen::Matrix< double, R2, C2 > &b)'],['../namespacestan_1_1math.html#ac9ffa799f8af2cd4941cbd2506bc4573',1,'stan::math::mdivide_left_tri(const Eigen::Matrix< T1, R1, C1 > &A, const Eigen::Matrix< T2, R2, C2 > &b)'],['../namespacestan_1_1math.html#a58dbd828faf06c2ef74152367f749ca4',1,'stan::math::mdivide_left_tri(const Eigen::Matrix< T, R1, C1 > &A)']]], + ['mdivide_5fleft_5ftri_5flow',['mdivide_left_tri_low',['../namespacestan_1_1agrad.html#a4976e3da1ade5b442fdf9a98ce657e1b',1,'stan::agrad::mdivide_left_tri_low(const Eigen::Matrix< fvar< T >, R1, C1 > &A, const Eigen::Matrix< fvar< T >, R2, C2 > &b)'],['../namespacestan_1_1agrad.html#a4cae5cb645fe5bc960315f994d2cce24',1,'stan::agrad::mdivide_left_tri_low(const Eigen::Matrix< double, R1, C1 > &A, const Eigen::Matrix< fvar< T >, R2, C2 > &b)'],['../namespacestan_1_1agrad.html#a88989bbd44ec90171c52d78cf99fa37f',1,'stan::agrad::mdivide_left_tri_low(const Eigen::Matrix< fvar< T >, R1, C1 > &A, const Eigen::Matrix< double, R2, C2 > &b)'],['../namespacestan_1_1math.html#a199a9357715dff8b9a3bae8cc1bb4aa5',1,'stan::math::mdivide_left_tri_low(const Eigen::Matrix< T1, R1, C1 > &A, const Eigen::Matrix< T2, R2, C2 > &b)'],['../namespacestan_1_1math.html#ae8391d23da9e29f3420fdb89116e83cd',1,'stan::math::mdivide_left_tri_low(const Eigen::Matrix< T, R1, C1 > &A)']]], + ['mdivide_5fright',['mdivide_right',['../namespacestan_1_1agrad.html#a92e113c418aa00fb0b0f05de3421a377',1,'stan::agrad::mdivide_right(const Eigen::Matrix< fvar< T >, R1, C1 > &A, const Eigen::Matrix< fvar< T >, R2, C2 > &b)'],['../namespacestan_1_1agrad.html#ab1bf56872a19067bf76e9e0ae0319ff3',1,'stan::agrad::mdivide_right(const Eigen::Matrix< fvar< T >, R1, C1 > &A, const Eigen::Matrix< double, R2, C2 > &b)'],['../namespacestan_1_1agrad.html#ad4d1ebb9e641da4b6d03b08eac67469c',1,'stan::agrad::mdivide_right(const Eigen::Matrix< double, R1, C1 > &A, const Eigen::Matrix< fvar< T >, R2, C2 > &b)'],['../namespacestan_1_1math.html#a5efba9dddcf77889b66c1210ba55cf5f',1,'stan::math::mdivide_right()']]], + ['mdivide_5fright_5fldlt',['mdivide_right_ldlt',['../namespacestan_1_1math.html#a68c862e90d97ea5d5552101b65978813',1,'stan::math::mdivide_right_ldlt(const Eigen::Matrix< T1, R1, C1 > &b, const stan::math::LDLT_factor< T2, R2, C2 > &A)'],['../namespacestan_1_1math.html#a01d77bf4121d56b8491092164d1523ce',1,'stan::math::mdivide_right_ldlt(const Eigen::Matrix< double, R1, C1 > &b, const stan::math::LDLT_factor< double, R2, C2 > &A)']]], + ['mdivide_5fright_5fspd',['mdivide_right_spd',['../namespacestan_1_1math.html#a5d6f32dd8adc4a9ffa28d63b62d4c90f',1,'stan::math']]], + ['mdivide_5fright_5ftri',['mdivide_right_tri',['../namespacestan_1_1math.html#ae158767243e09b91b9ba6cd366e7dab8',1,'stan::math']]], + ['mdivide_5fright_5ftri_5flow',['mdivide_right_tri_low',['../namespacestan_1_1agrad.html#ad91af5d6f2192ec14360aa9f9e70bfc0',1,'stan::agrad::mdivide_right_tri_low(const Eigen::Matrix< fvar< T >, R1, C1 > &A, const Eigen::Matrix< fvar< T >, R2, C2 > &b)'],['../namespacestan_1_1agrad.html#a2dc33743ae5cee446bca0e9f0c18c1fa',1,'stan::agrad::mdivide_right_tri_low(const Eigen::Matrix< fvar< T >, R1, C1 > &A, const Eigen::Matrix< double, R2, C2 > &b)'],['../namespacestan_1_1agrad.html#a6f2d6e5dd89d2094f04d9a81cb8a6191',1,'stan::agrad::mdivide_right_tri_low(const Eigen::Matrix< double, R1, C1 > &A, const Eigen::Matrix< fvar< T >, R2, C2 > &b)'],['../namespacestan_1_1math.html#a09f35fbeab4d8ff311ce77d91492e26b',1,'stan::math::mdivide_right_tri_low()']]], + ['mean',['mean',['../classstan_1_1mcmc_1_1chains.html#a905c53a11c08a53404379096885674ac',1,'stan::mcmc::chains::mean(const int chain, const int index)'],['../classstan_1_1mcmc_1_1chains.html#a9549bed51ad7dac77a4b27b849768049',1,'stan::mcmc::chains::mean(const int index)'],['../classstan_1_1mcmc_1_1chains.html#a5587f727e87620b9f2e9477f7517c9fa',1,'stan::mcmc::chains::mean(const int chain, const std::string &name)'],['../classstan_1_1mcmc_1_1chains.html#ad53b31c4b7b3056d5e38469f3c58ed51',1,'stan::mcmc::chains::mean(const std::string &name)'],['../namespacestan_1_1math.html#a3443c4ac994b039a7f055c55c5afa8a3',1,'stan::math::mean(const std::vector< T > &v)'],['../namespacestan_1_1math.html#a8074c0041b93407c473fd26a7c45dc88',1,'stan::math::mean(const Eigen::Matrix< T, R, C > &m)']]], + ['member_5fvar_5fdecl_5fvisgen',['member_var_decl_visgen',['../structstan_1_1gm_1_1member__var__decl__visgen.html#a665f039f108df78a55e1ddf8651c6dca',1,'stan::gm::member_var_decl_visgen']]], + ['min',['min',['../structstd_1_1numeric__limits_3_01stan_1_1agrad_1_1fvar_3_01_t_01_4_01_4.html#ae238eb8551b8faa9ff191638541d48a6',1,'std::numeric_limits< stan::agrad::fvar< T > >::min()'],['../structstd_1_1numeric__limits_3_01stan_1_1agrad_1_1var_01_4.html#a4442454f1562bcd4cd926cb45b5d16b9',1,'std::numeric_limits< stan::agrad::var >::min()'],['../namespacestan_1_1math.html#ab360c822174f211838f5979760c7e09e',1,'stan::math::min(const double a, const double b)'],['../namespacestan_1_1math.html#a3f076860549f63d55c0e4985dce78099',1,'stan::math::min(const std::vector< int > &x)'],['../namespacestan_1_1math.html#a9e9c3a01030d96fd4c8f28e2ed8d3d61',1,'stan::math::min(const std::vector< T > &x)'],['../namespacestan_1_1math.html#a86f2380e5c54a549e0f74ffd51204d33',1,'stan::math::min(const Eigen::Matrix< T, R, C > &m)']]], + ['minimize',['minimize',['../classstan_1_1optimization_1_1_b_f_g_s_minimizer.html#a27a804ca4bbe7923b8913ab38a8693a6',1,'stan::optimization::BFGSMinimizer']]], + ['minus',['minus',['../namespacestan_1_1math.html#a87b343d6dc12982c2b76c453650c0797',1,'stan::math']]], + ['model_5ffunctional',['model_functional',['../structstan_1_1model_1_1model__functional.html#a1b4c896f4238030fdececc74fd629307',1,'stan::model::model_functional']]], + ['modeladaptor',['ModelAdaptor',['../classstan_1_1optimization_1_1_model_adaptor.html#a28c05023727eb49f55b51ec0dee8413e',1,'stan::optimization::ModelAdaptor']]], + ['modified_5fbessel_5ffirst_5fkind',['modified_bessel_first_kind',['../namespacestan_1_1agrad.html#af1e6f0609bef81a1832bd4c624350e6e',1,'stan::agrad::modified_bessel_first_kind(int v, const fvar< T > &z)'],['../namespacestan_1_1agrad.html#a4667276304c443e9bde5fb7218c56778',1,'stan::agrad::modified_bessel_first_kind(const int &v, const var &a)'],['../namespacestan_1_1math.html#acafecf14b103c7c17da33368d07b1565',1,'stan::math::modified_bessel_first_kind()']]], + ['modified_5fbessel_5fsecond_5fkind',['modified_bessel_second_kind',['../namespacestan_1_1agrad.html#a2af4019aee25cb289b88d3dc946eea77',1,'stan::agrad::modified_bessel_second_kind(int v, const fvar< T > &z)'],['../namespacestan_1_1agrad.html#a4a949984f1a537a77db66f4d4f15cfeb',1,'stan::agrad::modified_bessel_second_kind(const int &v, const var &a)'],['../namespacestan_1_1math.html#a72ce86f3db5478cad4666c9cf1d05a6e',1,'stan::math::modified_bessel_second_kind()']]], + ['multi_5fgp_5flog',['multi_gp_log',['../namespacestan_1_1prob.html#a9c3810ea429509d3fd4e9a435a73f11f',1,'stan::prob::multi_gp_log(const Eigen::Matrix< T_y, Eigen::Dynamic, Eigen::Dynamic > &y, const Eigen::Matrix< T_covar, Eigen::Dynamic, Eigen::Dynamic > &Sigma, const Eigen::Matrix< T_w, Eigen::Dynamic, 1 > &w)'],['../namespacestan_1_1prob.html#a87858b89fe976714f66df92989fb0f03',1,'stan::prob::multi_gp_log(const Eigen::Matrix< T_y, Eigen::Dynamic, Eigen::Dynamic > &y, const Eigen::Matrix< T_covar, Eigen::Dynamic, Eigen::Dynamic > &Sigma, const Eigen::Matrix< T_loc, Eigen::Dynamic, 1 > &w)']]], + ['multi_5fnormal_5fcholesky_5flog',['multi_normal_cholesky_log',['../namespacestan_1_1prob.html#a01330a7c13ec8bb09a28b0983ef805c3',1,'stan::prob::multi_normal_cholesky_log(const Eigen::Matrix< T_y, Eigen::Dynamic, 1 > &y, const Eigen::Matrix< T_loc, Eigen::Dynamic, 1 > &mu, const Eigen::Matrix< T_covar, Eigen::Dynamic, Eigen::Dynamic > &L)'],['../namespacestan_1_1prob.html#adb8d48a2490b405c5f07ff6a316b4d3a',1,'stan::prob::multi_normal_cholesky_log(const Eigen::Matrix< T_y, Eigen::Dynamic, 1 > &y, const Eigen::Matrix< T_loc, Eigen::Dynamic, 1 > &mu, const Eigen::Matrix< T_covar, Eigen::Dynamic, Eigen::Dynamic > &L)'],['../namespacestan_1_1prob.html#aceed1445a3d25c5fc36dcf38ef115692',1,'stan::prob::multi_normal_cholesky_log(const Eigen::Matrix< T_y, Eigen::Dynamic, Eigen::Dynamic > &y, const Eigen::Matrix< T_loc, Eigen::Dynamic, 1 > &mu, const Eigen::Matrix< T_covar, Eigen::Dynamic, Eigen::Dynamic > &L)'],['../namespacestan_1_1prob.html#a59d30c1dea51119a3bc99519eca23f1f',1,'stan::prob::multi_normal_cholesky_log(const Eigen::Matrix< T_y, Eigen::Dynamic, Eigen::Dynamic > &y, const Eigen::Matrix< T_loc, Eigen::Dynamic, 1 > &mu, const Eigen::Matrix< T_covar, Eigen::Dynamic, Eigen::Dynamic > &L)']]], + ['multi_5fnormal_5flog',['multi_normal_log',['../namespacestan_1_1prob.html#a71e8ba5779457e6f532f39e89de717e4',1,'stan::prob::multi_normal_log(const Eigen::Matrix< T_y, Eigen::Dynamic, 1 > &y, const Eigen::Matrix< T_loc, Eigen::Dynamic, 1 > &mu, const Eigen::Matrix< T_covar, Eigen::Dynamic, Eigen::Dynamic > &Sigma)'],['../namespacestan_1_1prob.html#a627102d5b7ce3cf3dc6835cb1e6b3455',1,'stan::prob::multi_normal_log(const Eigen::Matrix< T_y, Eigen::Dynamic, 1 > &y, const Eigen::Matrix< T_loc, Eigen::Dynamic, 1 > &mu, const Eigen::Matrix< T_covar, Eigen::Dynamic, Eigen::Dynamic > &Sigma)'],['../namespacestan_1_1prob.html#a1be2baaf4bbbf9997816256e21fc849c',1,'stan::prob::multi_normal_log(const Eigen::Matrix< T_y, Eigen::Dynamic, Eigen::Dynamic > &y, const Eigen::Matrix< T_loc, Eigen::Dynamic, 1 > &mu, const Eigen::Matrix< T_covar, Eigen::Dynamic, Eigen::Dynamic > &Sigma)'],['../namespacestan_1_1prob.html#a5f7dfeb4f132811e2584b673f808396c',1,'stan::prob::multi_normal_log(const Eigen::Matrix< T_y, Eigen::Dynamic, Eigen::Dynamic > &y, const Eigen::Matrix< T_loc, Eigen::Dynamic, 1 > &mu, const Eigen::Matrix< T_covar, Eigen::Dynamic, Eigen::Dynamic > &Sigma)']]], + ['multi_5fnormal_5fprec_5flog',['multi_normal_prec_log',['../namespacestan_1_1prob.html#a3aa4c668766dc37248e6d5bd84eae338',1,'stan::prob::multi_normal_prec_log(const Eigen::Matrix< T_y, Eigen::Dynamic, 1 > &y, const Eigen::Matrix< T_loc, Eigen::Dynamic, 1 > &mu, const Eigen::Matrix< T_covar, Eigen::Dynamic, Eigen::Dynamic > &Sigma)'],['../namespacestan_1_1prob.html#a9d21551db0a50bd061cbf0147628a255',1,'stan::prob::multi_normal_prec_log(const Eigen::Matrix< T_y, Eigen::Dynamic, 1 > &y, const Eigen::Matrix< T_loc, Eigen::Dynamic, 1 > &mu, const Eigen::Matrix< T_covar, Eigen::Dynamic, Eigen::Dynamic > &Sigma)'],['../namespacestan_1_1prob.html#a45250c0ec42bb7278ced6275eed9ffa1',1,'stan::prob::multi_normal_prec_log(const Eigen::Matrix< T_y, Eigen::Dynamic, Eigen::Dynamic > &y, const Eigen::Matrix< T_loc, Eigen::Dynamic, 1 > &mu, const Eigen::Matrix< T_covar, Eigen::Dynamic, Eigen::Dynamic > &Sigma)'],['../namespacestan_1_1prob.html#a5478d2a990aa6b82b0911707659c1e50',1,'stan::prob::multi_normal_prec_log(const Eigen::Matrix< T_y, Eigen::Dynamic, Eigen::Dynamic > &y, const Eigen::Matrix< T_loc, Eigen::Dynamic, 1 > &mu, const Eigen::Matrix< T_covar, Eigen::Dynamic, Eigen::Dynamic > &Sigma)']]], + ['multi_5fnormal_5frng',['multi_normal_rng',['../namespacestan_1_1prob.html#a93eceb90a88d6432e3bda7c5e35db8e0',1,'stan::prob']]], + ['multi_5fstudent_5ft_5flog',['multi_student_t_log',['../namespacestan_1_1prob.html#a48b71448bd4100f9dbbf884c9fee4de6',1,'stan::prob::multi_student_t_log(const Eigen::Matrix< T_y, Eigen::Dynamic, 1 > &y, const T_dof &nu, const Eigen::Matrix< T_loc, Eigen::Dynamic, 1 > &mu, const Eigen::Matrix< T_scale, Eigen::Dynamic, Eigen::Dynamic > &Sigma)'],['../namespacestan_1_1prob.html#ac5c541f4309051587f35a5187ef5165c',1,'stan::prob::multi_student_t_log(const Eigen::Matrix< T_y, Eigen::Dynamic, 1 > &y, const T_dof &nu, const Eigen::Matrix< T_loc, Eigen::Dynamic, 1 > &mu, const Eigen::Matrix< T_scale, Eigen::Dynamic, Eigen::Dynamic > &Sigma)']]], + ['multi_5fstudent_5ft_5frng',['multi_student_t_rng',['../namespacestan_1_1prob.html#ab61ba841eb4bd76a7df2975e18f0b025',1,'stan::prob']]], + ['multinomial_5flog',['multinomial_log',['../namespacestan_1_1prob.html#a30f2c82429f15f40ab59b038f35d29f4',1,'stan::prob::multinomial_log(const std::vector< int > &ns, const Eigen::Matrix< T_prob, Eigen::Dynamic, 1 > &theta)'],['../namespacestan_1_1prob.html#aee5c8f7cbbbc28455bae7c9f6b6bf2f8',1,'stan::prob::multinomial_log(const std::vector< int > &ns, const Eigen::Matrix< T_prob, Eigen::Dynamic, 1 > &theta)']]], + ['multinomial_5frng',['multinomial_rng',['../namespacestan_1_1prob.html#a7d4d3be39750d795653ce0a8ee25e065',1,'stan::prob']]], + ['multiply',['multiply',['../namespacestan_1_1agrad.html#af5dfb2569a8f7f2f95830d0f0bb5bd40',1,'stan::agrad::multiply(const Eigen::Matrix< fvar< T >, R1, C1 > &m, const fvar< T > &c)'],['../namespacestan_1_1agrad.html#a148bf99bd72fc1ef2e7fb410837bda03',1,'stan::agrad::multiply(const Eigen::Matrix< fvar< T >, R2, C2 > &m, const double c)'],['../namespacestan_1_1agrad.html#ad8c423f41aa11c693cdeff32ec369021',1,'stan::agrad::multiply(const Eigen::Matrix< double, R1, C1 > &m, const fvar< T > &c)'],['../namespacestan_1_1agrad.html#a1bac78b32103f6336d645dcc8e601e1c',1,'stan::agrad::multiply(const fvar< T > &c, const Eigen::Matrix< fvar< T >, R1, C1 > &m)'],['../namespacestan_1_1agrad.html#a5ab5375c22320ffabc25b59bf372b787',1,'stan::agrad::multiply(const double c, const Eigen::Matrix< fvar< T >, R1, C1 > &m)'],['../namespacestan_1_1agrad.html#af88e47add7862504f83f82f6b209ef8d',1,'stan::agrad::multiply(const fvar< T > &c, const Eigen::Matrix< double, R1, C1 > &m)'],['../namespacestan_1_1agrad.html#a19d042d141225843b96006e12359677c',1,'stan::agrad::multiply(const Eigen::Matrix< fvar< T >, R1, C1 > &m1, const Eigen::Matrix< fvar< T >, R2, C2 > &m2)'],['../namespacestan_1_1agrad.html#a467103932d1ea2c9717b85872a3ea60b',1,'stan::agrad::multiply(const Eigen::Matrix< fvar< T >, R1, C1 > &m1, const Eigen::Matrix< double, R2, C2 > &m2)'],['../namespacestan_1_1agrad.html#adbfc25a42aa3f524ea845e592c7ccd2b',1,'stan::agrad::multiply(const Eigen::Matrix< double, R1, C1 > &m1, const Eigen::Matrix< fvar< T >, R2, C2 > &m2)'],['../namespacestan_1_1agrad.html#a115c9006f06661eef4c034d1a2f885dc',1,'stan::agrad::multiply(const Eigen::Matrix< fvar< T >, 1, C1 > &rv, const Eigen::Matrix< fvar< T >, R2, 1 > &v)'],['../namespacestan_1_1agrad.html#a5a6f66eeddc4fcfeced24f4a710fdb97',1,'stan::agrad::multiply(const Eigen::Matrix< fvar< T >, 1, C1 > &rv, const Eigen::Matrix< double, R2, 1 > &v)'],['../namespacestan_1_1agrad.html#af00532cd123eac94a193d0c76e9d58ee',1,'stan::agrad::multiply(const Eigen::Matrix< double, 1, C1 > &rv, const Eigen::Matrix< fvar< T >, R2, 1 > &v)'],['../namespacestan_1_1agrad.html#a57ea43d861a571f86937062eda4fa5af',1,'stan::agrad::multiply(const T1 &v, const T2 &c)'],['../namespacestan_1_1agrad.html#a26ac66272ba16ad14daa9f4952a16454',1,'stan::agrad::multiply(const T1 &c, const Eigen::Matrix< T2, R2, C2 > &m)'],['../namespacestan_1_1agrad.html#a5eb3c1069fc2d98aa42b3b0308bd9c60',1,'stan::agrad::multiply(const Eigen::Matrix< T1, R1, C1 > &m, const T2 &c)'],['../namespacestan_1_1agrad.html#af029b6f77d642a6278df7fced3a1ec12',1,'stan::agrad::multiply(const Eigen::Matrix< T1, R1, C1 > &m1, const Eigen::Matrix< T2, R2, C2 > &m2)'],['../namespacestan_1_1agrad.html#a746363e825961a19e0edb846c0d420cc',1,'stan::agrad::multiply(const Eigen::Matrix< T1, 1, C1 > &rv, const Eigen::Matrix< T2, R2, 1 > &v)'],['../namespacestan_1_1math.html#a919d4a6495c489841df3d0423200b147',1,'stan::math::multiply(const Eigen::Matrix< double, R, C > &m, T c)'],['../namespacestan_1_1math.html#a5a2b6dbfb5543b73dac8496091745ec1',1,'stan::math::multiply(T c, const Eigen::Matrix< double, R, C > &m)'],['../namespacestan_1_1math.html#a7c72cdca253e0230e0dbd19400781b5c',1,'stan::math::multiply(const Eigen::Matrix< double, R1, C1 > &m1, const Eigen::Matrix< double, R2, C2 > &m2)'],['../namespacestan_1_1math.html#a6e67698775aaac248efa49b646ca2a51',1,'stan::math::multiply(const Eigen::Matrix< double, 1, C1 > &rv, const Eigen::Matrix< double, R2, 1 > &v)']]], + ['multiply_5flog',['multiply_log',['../namespacestan_1_1agrad.html#a3d696a83dc04e19d84ea2fb6a0cfa61a',1,'stan::agrad::multiply_log(const fvar< T > &x1, const fvar< T > &x2)'],['../namespacestan_1_1agrad.html#ad21e093d0619e2099f38902925cc292d',1,'stan::agrad::multiply_log(const double x1, const fvar< T > &x2)'],['../namespacestan_1_1agrad.html#a60b90b0dce0a75a73c63673f189ff9aa',1,'stan::agrad::multiply_log(const fvar< T > &x1, const double x2)'],['../namespacestan_1_1agrad.html#a0e93c32718fc1d0762b3543a246f00ec',1,'stan::agrad::multiply_log(const var &a, const var &b)'],['../namespacestan_1_1agrad.html#a041ccf4847a3f896904c7baeaefddb34',1,'stan::agrad::multiply_log(const var &a, const double b)'],['../namespacestan_1_1agrad.html#aca18b1e8909315b63cc1a98f4505a0dd',1,'stan::agrad::multiply_log(const double a, const var &b)'],['../namespacestan_1_1math.html#ab530a1792bc901bb6ade34ef3d9ef8b3',1,'stan::math::multiply_log()']]], + ['multiply_5flower_5ftri_5fself_5ftranspose',['multiply_lower_tri_self_transpose',['../namespacestan_1_1agrad.html#a6635a0f0dfb1767a1930f1ff1984098a',1,'stan::agrad::multiply_lower_tri_self_transpose(const Eigen::Matrix< fvar< T >, R, C > &m)'],['../namespacestan_1_1agrad.html#a0e6a55fe5d7057ad569ec10edfe8187a',1,'stan::agrad::multiply_lower_tri_self_transpose(const matrix_v &L)'],['../namespacestan_1_1math.html#a3c0c953951f141b35277fe2308777cff',1,'stan::math::multiply_lower_tri_self_transpose()']]] +]; diff --git a/doc/api/html/search/functions_6e.html b/doc/api/html/search/functions_6e.html new file mode 100644 index 00000000000..d734dd07e7d --- /dev/null +++ b/doc/api/html/search/functions_6e.html @@ -0,0 +1,25 @@ + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/doc/api/html/search/functions_6e.js b/doc/api/html/search/functions_6e.js new file mode 100644 index 00000000000..6567d321124 --- /dev/null +++ b/doc/api/html/search/functions_6e.js @@ -0,0 +1,34 @@ +var searchData= +[ + ['name',['name',['../classstan_1_1gm_1_1argument.html#a95e720fb0f0dda0b2be4201274fa47c8',1,'stan::gm::argument::name()'],['../structstan_1_1gm_1_1type__name.html#abf38a6f1fbe6d34e8fc4495423a5cd30',1,'stan::gm::type_name::name()'],['../structstan_1_1gm_1_1type__name_3_01int_01_4.html#a467a9397f434235e89512bf3164f2c53',1,'stan::gm::type_name< int >::name()'],['../structstan_1_1gm_1_1type__name_3_01unsigned_01int_01_4.html#af18249277270ae33f01976e0c8246736',1,'stan::gm::type_name< unsigned int >::name()'],['../structstan_1_1gm_1_1type__name_3_01double_01_4.html#a7acfdb1474ab32c35fb8f67a4612c611',1,'stan::gm::type_name< double >::name()'],['../structstan_1_1gm_1_1type__name_3_01bool_01_4.html#a01b4d6b1873e3dabe9186193558d3e4a',1,'stan::gm::type_name< bool >::name()'],['../structstan_1_1gm_1_1type__name_3_01std_1_1string_01_4.html#a06316042d2aa143497f3306752d5bf14',1,'stan::gm::type_name< std::string >::name()'],['../structstan_1_1gm_1_1var__decl.html#a6df298e1c38d35a2fce94b5513df015b',1,'stan::gm::var_decl::name()'],['../classstan_1_1io_1_1dump__reader.html#aed540ae1e798ad34757a2a66c35ad054',1,'stan::io::dump_reader::name()'],['../classstan_1_1mcmc_1_1base__mcmc.html#a999c963237aa4af863b691f1843b25bc',1,'stan::mcmc::base_mcmc::name()'],['../classstan_1_1mcmc_1_1fixed__param__sampler.html#a9247adda376063a2bff759850cbf8839',1,'stan::mcmc::fixed_param_sampler::name()']]], + ['name_5fvis',['name_vis',['../structstan_1_1gm_1_1name__vis.html#a3d6b32de01cd222ea3b016200ede6ed1',1,'stan::gm::name_vis']]], + ['names_5fi',['names_i',['../classstan_1_1io_1_1dump.html#a965e639a5884ffd40d3849c8a706e145',1,'stan::io::dump::names_i()'],['../classstan_1_1io_1_1var__context.html#a2b1417a3a4b012539392eb6f44e8f059',1,'stan::io::var_context::names_i()']]], + ['names_5fr',['names_r',['../classstan_1_1io_1_1dump.html#a4c287f947ed4205be9115f8d4dbffb0d',1,'stan::io::dump::names_r()'],['../classstan_1_1io_1_1var__context.html#a9161afdc65cf035209fcb3da96f3affe',1,'stan::io::var_context::names_r()']]], + ['neg_5fbinomial_5fccdf_5flog',['neg_binomial_ccdf_log',['../namespacestan_1_1prob.html#a6eb2a050c9854f16d47c8a03d16e424d',1,'stan::prob']]], + ['neg_5fbinomial_5fcdf',['neg_binomial_cdf',['../namespacestan_1_1prob.html#a2df22df9c6b60e308e4ccf0b692b5242',1,'stan::prob']]], + ['neg_5fbinomial_5fcdf_5flog',['neg_binomial_cdf_log',['../namespacestan_1_1prob.html#a5c1a6f565a252ab38ef3165fa2d6a7e1',1,'stan::prob']]], + ['neg_5fbinomial_5flog',['neg_binomial_log',['../namespacestan_1_1prob.html#a223eba2920bbf00ffdce87cd9a385d64',1,'stan::prob::neg_binomial_log(const T_n &n, const T_shape &alpha, const T_inv_scale &beta)'],['../namespacestan_1_1prob.html#abb46acd84fce88aa36198b16cc54deae',1,'stan::prob::neg_binomial_log(const T_n &n, const T_shape &alpha, const T_inv_scale &beta)']]], + ['neg_5fbinomial_5frng',['neg_binomial_rng',['../namespacestan_1_1prob.html#a8c1d402a1dd528a63c0a68d63e809644',1,'stan::prob']]], + ['negative_5finfinity',['negative_infinity',['../namespacestan_1_1math.html#a34bffe91b7a24cb29bd69cb60814c39e',1,'stan::math']]], + ['nesterovgradient',['NesterovGradient',['../classstan_1_1optimization_1_1_nesterov_gradient.html#a185bdd404b884473cf22ad75a9b98ede',1,'stan::optimization::NesterovGradient']]], + ['newline',['newline',['../classstan_1_1io_1_1csv__writer.html#a676de0a0f10ef649af9dd81b1b91afab',1,'stan::io::csv_writer']]], + ['newton_5fstep',['newton_step',['../namespacestan_1_1optimization.html#a96fbc01564bc465d164199b41891be0d',1,'stan::optimization']]], + ['next',['next',['../classstan_1_1io_1_1dump__reader.html#aed46c1062b3a19c22a7440b72f1c8ffd',1,'stan::io::dump_reader']]], + ['next_5findex',['next_index',['../print_8hpp.html#ab54368a8bca76f33372859602ca77797',1,'print.hpp']]], + ['nonbasic_5fvalidate',['nonbasic_validate',['../structstan_1_1gm_1_1validate__var__decl__visgen.html#a3008b1b4caf900e42f94e2517c874c8f',1,'stan::gm::validate_var_decl_visgen']]], + ['normal_5fccdf_5flog',['normal_ccdf_log',['../namespacestan_1_1prob.html#a02b0750cf65f06ac78d448731a6e2dc9',1,'stan::prob']]], + ['normal_5fcdf',['normal_cdf',['../namespacestan_1_1prob.html#a886f9e64bad2382679b935d90b527985',1,'stan::prob']]], + ['normal_5fcdf_5flog',['normal_cdf_log',['../namespacestan_1_1prob.html#a44b5ec88e8620ed6ba61bd58bb0fcab5',1,'stan::prob']]], + ['normal_5flog',['normal_log',['../namespacestan_1_1prob.html#ad99bbf0b29a582cc76394c30f23db536',1,'stan::prob::normal_log(const T_y &y, const T_loc &mu, const T_scale &sigma)'],['../namespacestan_1_1prob.html#a4f3e49fd8c69e4f3bfe5b3e74fed912b',1,'stan::prob::normal_log(const T_y &y, const T_loc &mu, const T_scale &sigma)']]], + ['normal_5frng',['normal_rng',['../namespacestan_1_1prob.html#a85cb8a1ee8a40b7545946a979e249dd1',1,'stan::prob']]], + ['not_5fa_5fnumber',['not_a_number',['../namespacestan_1_1math.html#a381493bccc58bd993d797a2a5458c486',1,'stan::math']]], + ['note',['note',['../classstan_1_1optimization_1_1_b_f_g_s_minimizer.html#addb17a450063c4caaa85de952927513c',1,'stan::optimization::BFGSMinimizer']]], + ['num_5fchains',['num_chains',['../classstan_1_1mcmc_1_1chains.html#aa42993978c341f420c38776862f6e0f4',1,'stan::mcmc::chains']]], + ['num_5fdims',['num_dims',['../structstan_1_1gm_1_1expr__type.html#abcd5fe81541025ae63595502b2db4673',1,'stan::gm::expr_type']]], + ['num_5fkept_5fsamples',['num_kept_samples',['../classstan_1_1mcmc_1_1chains.html#a174e16464afa282c23f88651edcf563a',1,'stan::mcmc::chains::num_kept_samples(const int chain)'],['../classstan_1_1mcmc_1_1chains.html#a51ee052b484f3810c4efeed3b7a55812',1,'stan::mcmc::chains::num_kept_samples()']]], + ['num_5fparams',['num_params',['../classstan_1_1mcmc_1_1chains.html#a69301dc29ebf0a2e1049c3a90be229b2',1,'stan::mcmc::chains']]], + ['num_5fparams_5fi',['num_params_i',['../classstan_1_1model_1_1prob__grad.html#a6c758a7e401926bfb453b6c1e0865e74',1,'stan::model::prob_grad']]], + ['num_5fparams_5fr',['num_params_r',['../classstan_1_1model_1_1prob__grad.html#af369b6f368d9a19090f08ed1deeab5be',1,'stan::model::prob_grad']]], + ['num_5fpromotions',['num_promotions',['../classstan_1_1gm_1_1function__signatures.html#a9a6ad50ac8bbc4a95db624019121925d',1,'stan::gm::function_signatures']]], + ['num_5fsamples',['num_samples',['../classstan_1_1mcmc_1_1chains.html#a371c0c26bc0b62b1d1b33019fc66b66c',1,'stan::mcmc::chains::num_samples(const int chain)'],['../classstan_1_1mcmc_1_1chains.html#ae997b88b5d2aa188453748152b1b6c69',1,'stan::mcmc::chains::num_samples()'],['../classstan_1_1prob_1_1welford__covar__estimator.html#aa76e24fffa5e0bf733aafbaab942166e',1,'stan::prob::welford_covar_estimator::num_samples()'],['../classstan_1_1prob_1_1welford__var__estimator.html#aaead1fea2bb10ec78761a7544f47b9ed',1,'stan::prob::welford_var_estimator::num_samples()']]] +]; diff --git a/doc/api/html/search/functions_6f.html b/doc/api/html/search/functions_6f.html new file mode 100644 index 00000000000..222f0f8362f --- /dev/null +++ b/doc/api/html/search/functions_6f.html @@ -0,0 +1,25 @@ + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/doc/api/html/search/functions_6f.js b/doc/api/html/search/functions_6f.js new file mode 100644 index 00000000000..ca15b79805e --- /dev/null +++ b/doc/api/html/search/functions_6f.js @@ -0,0 +1,49 @@ +var searchData= +[ + ['op_5fddv_5fvari',['op_ddv_vari',['../classstan_1_1agrad_1_1op__ddv__vari.html#a0dc6f08e56b65cd270dcc2f7939dacef',1,'stan::agrad::op_ddv_vari']]], + ['op_5fdv_5fvari',['op_dv_vari',['../classstan_1_1agrad_1_1op__dv__vari.html#a25707782c6db0f4cd1fd99418e660eff',1,'stan::agrad::op_dv_vari']]], + ['op_5fdvd_5fvari',['op_dvd_vari',['../classstan_1_1agrad_1_1op__dvd__vari.html#aea81045cbb7574359c547974c1720745',1,'stan::agrad::op_dvd_vari']]], + ['op_5fdvv_5fvari',['op_dvv_vari',['../classstan_1_1agrad_1_1op__dvv__vari.html#a459bde977de6b15f8a9d045ca41c95d1',1,'stan::agrad::op_dvv_vari']]], + ['op_5fmatrix_5fvari',['op_matrix_vari',['../classstan_1_1agrad_1_1op__matrix__vari.html#a64359f048df8adbd625d3cf5e2f9f4d0',1,'stan::agrad::op_matrix_vari']]], + ['op_5fv_5fvari',['op_v_vari',['../classstan_1_1agrad_1_1op__v__vari.html#a9c8f4f7c998f9e01b7b062845dd02826',1,'stan::agrad::op_v_vari']]], + ['op_5fvd_5fvari',['op_vd_vari',['../classstan_1_1agrad_1_1op__vd__vari.html#a90dab6a33453cab385392989faed72a6',1,'stan::agrad::op_vd_vari']]], + ['op_5fvdd_5fvari',['op_vdd_vari',['../classstan_1_1agrad_1_1op__vdd__vari.html#a422712bd9ca49f7295d63efd9db459e1',1,'stan::agrad::op_vdd_vari']]], + ['op_5fvdv_5fvari',['op_vdv_vari',['../classstan_1_1agrad_1_1op__vdv__vari.html#a887420e658b3a11db1a8087f4a86cff4',1,'stan::agrad::op_vdv_vari']]], + ['op_5fvector_5fvari',['op_vector_vari',['../classstan_1_1agrad_1_1op__vector__vari.html#a6171e0b248aae2c5a9ec3d056567ac49',1,'stan::agrad::op_vector_vari']]], + ['op_5fvv_5fvari',['op_vv_vari',['../classstan_1_1agrad_1_1op__vv__vari.html#a45481fc072e8b4792641ed211cb26431',1,'stan::agrad::op_vv_vari']]], + ['op_5fvvd_5fvari',['op_vvd_vari',['../classstan_1_1agrad_1_1op__vvd__vari.html#a889fcc9443f84a8605049ca4cbe3fbe0',1,'stan::agrad::op_vvd_vari']]], + ['op_5fvvv_5fvari',['op_vvv_vari',['../classstan_1_1agrad_1_1op__vvv__vari.html#aab31cc197ce983a6694f238551561dad',1,'stan::agrad::op_vvv_vari']]], + ['operandsandpartials',['OperandsAndPartials',['../structstan_1_1agrad_1_1_operands_and_partials.html#aecabbb142f41aae42881a3b847b4f4e1',1,'stan::agrad::OperandsAndPartials']]], + ['operator_20delete',['operator delete',['../classstan_1_1agrad_1_1chainable.html#ad1ea1170b887c7730a437a9e831e8c54',1,'stan::agrad::chainable']]], + ['operator_20new',['operator new',['../classstan_1_1agrad_1_1vari.html#a1722e422e33d131e88ae9ca351b9e86c',1,'stan::agrad::vari::operator new()'],['../classstan_1_1agrad_1_1chainable.html#ae78a7b4dfaf5f07c01f3d08f663caf06',1,'stan::agrad::chainable::operator new()']]], + ['operator_21',['operator!',['../namespacestan_1_1agrad.html#ae9d3324d88a532f80e9451dd9f9c5a83',1,'stan::agrad']]], + ['operator_21_3d',['operator!=',['../structstan_1_1gm_1_1expr__type.html#abecd19ebe1a5e0a7bb382c86b0c47477',1,'stan::gm::expr_type::operator!=()'],['../namespacestan_1_1agrad.html#a63631a963a524e14c26616a546e75ad7',1,'stan::agrad::operator!=(const var &a, const var &b)'],['../namespacestan_1_1agrad.html#a772cb5941614d15e4796e4e28c7b3626',1,'stan::agrad::operator!=(const var &a, const double &b)'],['../namespacestan_1_1agrad.html#a0896d4e6a953397b0421f25b1583bb66',1,'stan::agrad::operator!=(const double &a, const var &b)'],['../namespacestan_1_1agrad.html#abc2a6a3826a8c40963c2c43de787c6d9',1,'stan::agrad::operator!=(const fvar< T > &x, const fvar< T > &y)'],['../namespacestan_1_1agrad.html#a4d2b7b3282b4dc8853c2a5821668c058',1,'stan::agrad::operator!=(const fvar< T > &x, double y)'],['../namespacestan_1_1agrad.html#a7a0281d5047cfc8842455774716a1c68',1,'stan::agrad::operator!=(double x, const fvar< T > &y)'],['../namespacestan_1_1agrad.html#a7bb28051fbfb4acffa58bc94a78fcf20',1,'stan::agrad::operator!=(const var &a, const double b)'],['../namespacestan_1_1agrad.html#a3068e402162a891ca257dc2bd55fe47e',1,'stan::agrad::operator!=(const double a, const var &b)']]], + ['operator_28_29',['operator()',['../structstan_1_1gm_1_1expression__type__vis.html#ae101d363740a76d72e1b458d8de4aad1',1,'stan::gm::expression_type_vis::operator()(const nil &e) const '],['../structstan_1_1gm_1_1expression__type__vis.html#ae84dca1e40e9af8689e452fb46d9e032',1,'stan::gm::expression_type_vis::operator()(const int_literal &e) const '],['../structstan_1_1gm_1_1expression__type__vis.html#aab6cc33ac330a276c599d390be4edec8',1,'stan::gm::expression_type_vis::operator()(const double_literal &e) const '],['../structstan_1_1gm_1_1expression__type__vis.html#af8b390d2239e791d7411cee8f8992e03',1,'stan::gm::expression_type_vis::operator()(const array_literal &e) const '],['../structstan_1_1gm_1_1expression__type__vis.html#a18ca391f31a93fd1c0346a29a054dfbe',1,'stan::gm::expression_type_vis::operator()(const variable &e) const '],['../structstan_1_1gm_1_1expression__type__vis.html#adccaf0a45107f4ce7fd01c3fe9a7be6e',1,'stan::gm::expression_type_vis::operator()(const fun &e) const '],['../structstan_1_1gm_1_1expression__type__vis.html#a00466288bc82f8e6e65913dffab469f9',1,'stan::gm::expression_type_vis::operator()(const index_op &e) const '],['../structstan_1_1gm_1_1expression__type__vis.html#a3dfc663ba0cac644c99f76a3becc48e2',1,'stan::gm::expression_type_vis::operator()(const binary_op &e) const '],['../structstan_1_1gm_1_1expression__type__vis.html#a526a9e5db2b2e67f80f37d3c157e691e',1,'stan::gm::expression_type_vis::operator()(const unary_op &e) const '],['../structstan_1_1gm_1_1is__nil__op.html#a08ed9c0b2717cc75d3c76742a4e4e473',1,'stan::gm::is_nil_op::operator()(const nil &x) const '],['../structstan_1_1gm_1_1is__nil__op.html#a8d9976b143d73fa3a7781413aa55b346',1,'stan::gm::is_nil_op::operator()(const int_literal &x) const '],['../structstan_1_1gm_1_1is__nil__op.html#a1779f980df65958d9302c441dd9ec6fd',1,'stan::gm::is_nil_op::operator()(const double_literal &x) const '],['../structstan_1_1gm_1_1is__nil__op.html#a718054de1e6a5991154f4de24da3e43c',1,'stan::gm::is_nil_op::operator()(const array_literal &x) const '],['../structstan_1_1gm_1_1is__nil__op.html#a3297c2fa3f7b613ecef9f81f3cac26f4',1,'stan::gm::is_nil_op::operator()(const variable &x) const '],['../structstan_1_1gm_1_1is__nil__op.html#a5e2a04a8705c487b2b58bc48acb564d0',1,'stan::gm::is_nil_op::operator()(const fun &x) const '],['../structstan_1_1gm_1_1is__nil__op.html#a4fed00e3746cf933d44c1451091ff940',1,'stan::gm::is_nil_op::operator()(const index_op &x) const '],['../structstan_1_1gm_1_1is__nil__op.html#a5e6feff96929c5ff3d8aed77b1aa4775',1,'stan::gm::is_nil_op::operator()(const binary_op &x) const '],['../structstan_1_1gm_1_1is__nil__op.html#af5bcccdf1f78faeffbe7217ac2cc51da',1,'stan::gm::is_nil_op::operator()(const unary_op &x) const '],['../structstan_1_1gm_1_1name__vis.html#a77a99ecd9081380c63ef8611973c4764',1,'stan::gm::name_vis::operator()(const nil &x) const '],['../structstan_1_1gm_1_1name__vis.html#a06e7c65a2fc7f371027db2b4c6ce2076',1,'stan::gm::name_vis::operator()(const int_var_decl &x) const '],['../structstan_1_1gm_1_1name__vis.html#ad621523ffc5f454eddf4b9bedfe04445',1,'stan::gm::name_vis::operator()(const double_var_decl &x) const '],['../structstan_1_1gm_1_1name__vis.html#abd9e7de4bd05940079937ea1c8c30ef4',1,'stan::gm::name_vis::operator()(const vector_var_decl &x) const '],['../structstan_1_1gm_1_1name__vis.html#aac0f822ac237b665c3da17927a8942d1',1,'stan::gm::name_vis::operator()(const row_vector_var_decl &x) const '],['../structstan_1_1gm_1_1name__vis.html#ac40f17c0184a5aa7f62cb74c7905fcca',1,'stan::gm::name_vis::operator()(const matrix_var_decl &x) const '],['../structstan_1_1gm_1_1name__vis.html#afb1ee17045f456b5f078fc31e80b4a04',1,'stan::gm::name_vis::operator()(const simplex_var_decl &x) const '],['../structstan_1_1gm_1_1name__vis.html#a54987fdf17b92c69a422b7fb2737dd6c',1,'stan::gm::name_vis::operator()(const unit_vector_var_decl &x) const '],['../structstan_1_1gm_1_1name__vis.html#aa01c0297fecee56aa965f2c5e1f4855f',1,'stan::gm::name_vis::operator()(const ordered_var_decl &x) const '],['../structstan_1_1gm_1_1name__vis.html#abc29cfc00dd904d37af4ae409fc3f405',1,'stan::gm::name_vis::operator()(const positive_ordered_var_decl &x) const '],['../structstan_1_1gm_1_1name__vis.html#ad4cb7341a3374c2edcb8ed0bf5d87900',1,'stan::gm::name_vis::operator()(const cholesky_factor_var_decl &x) const '],['../structstan_1_1gm_1_1name__vis.html#a6be1389d6fb96e624f542c63a8afe1ce',1,'stan::gm::name_vis::operator()(const cov_matrix_var_decl &x) const '],['../structstan_1_1gm_1_1name__vis.html#aa79a10dd8b0b0c89677836c378beae5e',1,'stan::gm::name_vis::operator()(const corr_matrix_var_decl &x) const '],['../structstan_1_1gm_1_1contains__var.html#abd731c09e08561b635b0ccd4a9075502',1,'stan::gm::contains_var::operator()(const nil &e) const '],['../structstan_1_1gm_1_1contains__var.html#aa14c77d41a64da0038ce5574a1b1195c',1,'stan::gm::contains_var::operator()(const int_literal &e) const '],['../structstan_1_1gm_1_1contains__var.html#a3faac1c9345f3db54478636846d97522',1,'stan::gm::contains_var::operator()(const double_literal &e) const '],['../structstan_1_1gm_1_1contains__var.html#a6d21c8096ca0fbf664963be1157c33cd',1,'stan::gm::contains_var::operator()(const array_literal &e) const '],['../structstan_1_1gm_1_1contains__var.html#ae8586b023ba16f5160d0fa861d7ddbc9',1,'stan::gm::contains_var::operator()(const variable &e) const '],['../structstan_1_1gm_1_1contains__var.html#a6899ad69964d75a4f226c9e4fcf45b5b',1,'stan::gm::contains_var::operator()(const fun &e) const '],['../structstan_1_1gm_1_1contains__var.html#adb25dda5b8d245c3aa67ce6baca5baf4',1,'stan::gm::contains_var::operator()(const index_op &e) const '],['../structstan_1_1gm_1_1contains__var.html#a2552f6617b18df1ae1590fa66a8a9dc8',1,'stan::gm::contains_var::operator()(const binary_op &e) const '],['../structstan_1_1gm_1_1contains__var.html#a072b336abd0018f97f342d55fb75a116',1,'stan::gm::contains_var::operator()(const unary_op &e) const '],['../structstan_1_1gm_1_1contains__nonparam__var.html#ae3faaa613f42c8cb8ac24a521e156e8d',1,'stan::gm::contains_nonparam_var::operator()(const nil &e) const '],['../structstan_1_1gm_1_1contains__nonparam__var.html#a60f21f3f6613845cc38688be1d2d9934',1,'stan::gm::contains_nonparam_var::operator()(const int_literal &e) const '],['../structstan_1_1gm_1_1contains__nonparam__var.html#ae434f920314720d08a7fd840c2b2697b',1,'stan::gm::contains_nonparam_var::operator()(const double_literal &e) const '],['../structstan_1_1gm_1_1contains__nonparam__var.html#a01e37e1af206e136e912ed2d2962f105',1,'stan::gm::contains_nonparam_var::operator()(const array_literal &e) const '],['../structstan_1_1gm_1_1contains__nonparam__var.html#a44d42494dd1eb8798afa4a569e3c638f',1,'stan::gm::contains_nonparam_var::operator()(const variable &e) const '],['../structstan_1_1gm_1_1contains__nonparam__var.html#a4cc5cac2f665fc3bd5b2b200508a936c',1,'stan::gm::contains_nonparam_var::operator()(const fun &e) const '],['../structstan_1_1gm_1_1contains__nonparam__var.html#ac09ff2eee4dc1412b2f7919c1726dd28',1,'stan::gm::contains_nonparam_var::operator()(const index_op &e) const '],['../structstan_1_1gm_1_1contains__nonparam__var.html#a8f62d373bb553ecde42728cbccf5abc1',1,'stan::gm::contains_nonparam_var::operator()(const binary_op &e) const '],['../structstan_1_1gm_1_1contains__nonparam__var.html#a9e95a4a6800ad32f799d8b8eb99c7d53',1,'stan::gm::contains_nonparam_var::operator()(const unary_op &e) const '],['../structstan_1_1gm_1_1expression__visgen.html#aab15972d43af74f77cf26c2c2fec82bf',1,'stan::gm::expression_visgen::operator()(nil const &) const '],['../structstan_1_1gm_1_1expression__visgen.html#a09af83f6b3b1f38ad7ff4964fb6aa4a9',1,'stan::gm::expression_visgen::operator()(const int_literal &n) const '],['../structstan_1_1gm_1_1expression__visgen.html#a63098914d92705be895c57e4adef150f',1,'stan::gm::expression_visgen::operator()(const double_literal &x) const '],['../structstan_1_1gm_1_1expression__visgen.html#a1d09589dc5a9b6e3b8d83c6ad2b69935',1,'stan::gm::expression_visgen::operator()(const array_literal &x) const '],['../structstan_1_1gm_1_1expression__visgen.html#a54590d7ff6be63a4b8fe1f91f04261c5',1,'stan::gm::expression_visgen::operator()(const variable &v) const '],['../structstan_1_1gm_1_1expression__visgen.html#a64a5ba8f9ca3ec6ebc78e25946dbe03d',1,'stan::gm::expression_visgen::operator()(int n) const '],['../structstan_1_1gm_1_1expression__visgen.html#afff24140ddd6164642eaac2d11a029a8',1,'stan::gm::expression_visgen::operator()(double x) const '],['../structstan_1_1gm_1_1expression__visgen.html#a20fa0b87d91d4c30a0255b44bb47db06',1,'stan::gm::expression_visgen::operator()(const std::string &x) const '],['../structstan_1_1gm_1_1expression__visgen.html#aa4686c19b616c8c7381b53a1c834bebb',1,'stan::gm::expression_visgen::operator()(const index_op &x) const '],['../structstan_1_1gm_1_1expression__visgen.html#ac6ae9b2a5dae07545dfcc59a295e980f',1,'stan::gm::expression_visgen::operator()(const fun &fx) const '],['../structstan_1_1gm_1_1expression__visgen.html#a7d647894403afdd5dbd0cfa369b3a9fd',1,'stan::gm::expression_visgen::operator()(const binary_op &expr) const '],['../structstan_1_1gm_1_1expression__visgen.html#a031a4d53347d39e110eb3c1d20159dd2',1,'stan::gm::expression_visgen::operator()(const unary_op &expr) const '],['../structstan_1_1gm_1_1printable__visgen.html#a4527a09ed8015d0ffcf004cb1d4a67e6',1,'stan::gm::printable_visgen::operator()(const std::string &s) const '],['../structstan_1_1gm_1_1printable__visgen.html#ab6298d1155c3982e8c2bad7ea562cee6',1,'stan::gm::printable_visgen::operator()(const expression &e) const '],['../structstan_1_1gm_1_1var__size__validating__visgen.html#a0c3d62bd75928038d50e2cb207718936',1,'stan::gm::var_size_validating_visgen::operator()(nil const &) const '],['../structstan_1_1gm_1_1var__size__validating__visgen.html#a9028495f1c1b7eba7789fd640bf1d14e',1,'stan::gm::var_size_validating_visgen::operator()(int_var_decl const &x) const '],['../structstan_1_1gm_1_1var__size__validating__visgen.html#a00c2424a51f337b1b8703244d2ca1e81',1,'stan::gm::var_size_validating_visgen::operator()(double_var_decl const &x) const '],['../structstan_1_1gm_1_1var__size__validating__visgen.html#afab72d75a1111f01b8b1f771f2e736fe',1,'stan::gm::var_size_validating_visgen::operator()(vector_var_decl const &x) const '],['../structstan_1_1gm_1_1var__size__validating__visgen.html#a14ea51e14a4cf91b841aaeb81d11554c',1,'stan::gm::var_size_validating_visgen::operator()(row_vector_var_decl const &x) const '],['../structstan_1_1gm_1_1var__size__validating__visgen.html#acb8091b7c199fb3b49d7bfd24c6be687',1,'stan::gm::var_size_validating_visgen::operator()(unit_vector_var_decl const &x) const '],['../structstan_1_1gm_1_1var__size__validating__visgen.html#ad0527fcfeed7807664a784af7083bc49',1,'stan::gm::var_size_validating_visgen::operator()(simplex_var_decl const &x) const '],['../structstan_1_1gm_1_1var__size__validating__visgen.html#adb42789b5993da3f03577244e65dce74',1,'stan::gm::var_size_validating_visgen::operator()(ordered_var_decl const &x) const '],['../structstan_1_1gm_1_1var__size__validating__visgen.html#a008afb0bcfcdac5b70ce2805c1858387',1,'stan::gm::var_size_validating_visgen::operator()(positive_ordered_var_decl const &x) const '],['../structstan_1_1gm_1_1var__size__validating__visgen.html#a35236dd88f0ebbc900575e63960e0707',1,'stan::gm::var_size_validating_visgen::operator()(matrix_var_decl const &x) const '],['../structstan_1_1gm_1_1var__size__validating__visgen.html#a7c502111b0cb5e27b54d45c0525fbbf3',1,'stan::gm::var_size_validating_visgen::operator()(cholesky_factor_var_decl const &x) const '],['../structstan_1_1gm_1_1var__size__validating__visgen.html#a03c98e95540ffc39e540114b5a67ec42',1,'stan::gm::var_size_validating_visgen::operator()(cov_matrix_var_decl const &x) const '],['../structstan_1_1gm_1_1var__size__validating__visgen.html#aaa4deb5d7e8a85a0acd059f0883384b9',1,'stan::gm::var_size_validating_visgen::operator()(corr_matrix_var_decl const &x) const '],['../structstan_1_1gm_1_1var__resizing__visgen.html#a669faa2dfb234af0ec6f651a92eb3cc7',1,'stan::gm::var_resizing_visgen::operator()(nil const &) const '],['../structstan_1_1gm_1_1var__resizing__visgen.html#ad973da4f52c164e36735bca3e9a1ee80',1,'stan::gm::var_resizing_visgen::operator()(int_var_decl const &x) const '],['../structstan_1_1gm_1_1var__resizing__visgen.html#aac743c79ec0be79ce58ab662316890bd',1,'stan::gm::var_resizing_visgen::operator()(double_var_decl const &x) const '],['../structstan_1_1gm_1_1var__resizing__visgen.html#a8517c46749146da31a0e7f63c4228cc2',1,'stan::gm::var_resizing_visgen::operator()(vector_var_decl const &x) const '],['../structstan_1_1gm_1_1var__resizing__visgen.html#a36cfe5b6c444c2a024db0f30036a5f93',1,'stan::gm::var_resizing_visgen::operator()(row_vector_var_decl const &x) const '],['../structstan_1_1gm_1_1var__resizing__visgen.html#ad811ec41000dbbc94b41d5745f3c3918',1,'stan::gm::var_resizing_visgen::operator()(unit_vector_var_decl const &x) const '],['../structstan_1_1gm_1_1var__resizing__visgen.html#a1db8714cf43b3f5eacb74c826646c80a',1,'stan::gm::var_resizing_visgen::operator()(simplex_var_decl const &x) const '],['../structstan_1_1gm_1_1var__resizing__visgen.html#ad728ef0d927e9712efdc777b44de98a7',1,'stan::gm::var_resizing_visgen::operator()(ordered_var_decl const &x) const '],['../structstan_1_1gm_1_1var__resizing__visgen.html#a9459c303e0852fc8c3e5d4c0c83e5380',1,'stan::gm::var_resizing_visgen::operator()(positive_ordered_var_decl const &x) const '],['../structstan_1_1gm_1_1var__resizing__visgen.html#a9d2ee03b4184c5fe97bbf1e96fdad0f4',1,'stan::gm::var_resizing_visgen::operator()(matrix_var_decl const &x) const '],['../structstan_1_1gm_1_1var__resizing__visgen.html#a1db09012dd2e670383a72a258b47e1e0',1,'stan::gm::var_resizing_visgen::operator()(cholesky_factor_var_decl const &x) const '],['../structstan_1_1gm_1_1var__resizing__visgen.html#a96571adb3b948ef318b7e7fc5c02a282',1,'stan::gm::var_resizing_visgen::operator()(cov_matrix_var_decl const &x) const '],['../structstan_1_1gm_1_1var__resizing__visgen.html#aa60a881ddd0551119087ea501cb7cfb3',1,'stan::gm::var_resizing_visgen::operator()(corr_matrix_var_decl const &x) const '],['../structstan_1_1gm_1_1init__local__var__visgen.html#ab7d91977035552a328beee8465a41554',1,'stan::gm::init_local_var_visgen::operator()(const nil &) const '],['../structstan_1_1gm_1_1init__local__var__visgen.html#a56e547b9d8d98eb235c88a8c1d58409a',1,'stan::gm::init_local_var_visgen::operator()(const int_var_decl &x) const '],['../structstan_1_1gm_1_1init__local__var__visgen.html#a713119b71e590ff2d31089d7c224970b',1,'stan::gm::init_local_var_visgen::operator()(const double_var_decl &x) const '],['../structstan_1_1gm_1_1init__local__var__visgen.html#a135f6581adaecde47e10eb38f167297b',1,'stan::gm::init_local_var_visgen::operator()(const vector_var_decl &x) const '],['../structstan_1_1gm_1_1init__local__var__visgen.html#a1eda8c62c18a93fc3fc33a60a0cf1840',1,'stan::gm::init_local_var_visgen::operator()(const row_vector_var_decl &x) const '],['../structstan_1_1gm_1_1init__local__var__visgen.html#a24592819d7fe9e9571627601a0ca6f94',1,'stan::gm::init_local_var_visgen::operator()(const matrix_var_decl &x) const '],['../structstan_1_1gm_1_1init__local__var__visgen.html#a0edae9cf5200fdb6791a3802ef641dde',1,'stan::gm::init_local_var_visgen::operator()(const unit_vector_var_decl &x) const '],['../structstan_1_1gm_1_1init__local__var__visgen.html#a32c0e1d58251b7aaf9a9c626517ccdc4',1,'stan::gm::init_local_var_visgen::operator()(const simplex_var_decl &x) const '],['../structstan_1_1gm_1_1init__local__var__visgen.html#a8c4a28b3b201923feb3237ab70cbfd26',1,'stan::gm::init_local_var_visgen::operator()(const ordered_var_decl &x) const '],['../structstan_1_1gm_1_1init__local__var__visgen.html#a90db653548c46cf9ea0226491de19dd1',1,'stan::gm::init_local_var_visgen::operator()(const positive_ordered_var_decl &x) const '],['../structstan_1_1gm_1_1init__local__var__visgen.html#a6601554142c706daa7d7c90dcd4405b0',1,'stan::gm::init_local_var_visgen::operator()(const cholesky_factor_var_decl &x) const '],['../structstan_1_1gm_1_1init__local__var__visgen.html#a082b360d9ef23c9fb2cf4e606223e82d',1,'stan::gm::init_local_var_visgen::operator()(const cov_matrix_var_decl &x) const '],['../structstan_1_1gm_1_1init__local__var__visgen.html#a3c92ee4c4c11702308cad9e01cc25a8c',1,'stan::gm::init_local_var_visgen::operator()(const corr_matrix_var_decl &x) const '],['../structstan_1_1gm_1_1validate__var__decl__visgen.html#a293b04f191427eac6d4ebb731380530a',1,'stan::gm::validate_var_decl_visgen::operator()(nil const &) const '],['../structstan_1_1gm_1_1validate__var__decl__visgen.html#aeb09dcce8135ffe469e7a3d388fe23a5',1,'stan::gm::validate_var_decl_visgen::operator()(int_var_decl const &x) const '],['../structstan_1_1gm_1_1validate__var__decl__visgen.html#a57821ae7264ce2b467c99671dd2445f1',1,'stan::gm::validate_var_decl_visgen::operator()(double_var_decl const &x) const '],['../structstan_1_1gm_1_1validate__var__decl__visgen.html#af401582ce790254d4a822c821564749c',1,'stan::gm::validate_var_decl_visgen::operator()(vector_var_decl const &x) const '],['../structstan_1_1gm_1_1validate__var__decl__visgen.html#a8cfc776610aef88901ea9f582c8ee5df',1,'stan::gm::validate_var_decl_visgen::operator()(row_vector_var_decl const &x) const '],['../structstan_1_1gm_1_1validate__var__decl__visgen.html#a31374009014b9209309cebb451e95a6d',1,'stan::gm::validate_var_decl_visgen::operator()(matrix_var_decl const &x) const '],['../structstan_1_1gm_1_1validate__var__decl__visgen.html#ac2692f61a0783cad7ccf53b45dc016c2',1,'stan::gm::validate_var_decl_visgen::operator()(unit_vector_var_decl const &x) const '],['../structstan_1_1gm_1_1validate__var__decl__visgen.html#af783c90b5deb3149733edc1d0bbb80da',1,'stan::gm::validate_var_decl_visgen::operator()(simplex_var_decl const &x) const '],['../structstan_1_1gm_1_1validate__var__decl__visgen.html#ae56af402e25685e48b72cf51a8a81db3',1,'stan::gm::validate_var_decl_visgen::operator()(ordered_var_decl const &x) const '],['../structstan_1_1gm_1_1validate__var__decl__visgen.html#aa90b8ec05ece3e94a2b61ccaeac99b71',1,'stan::gm::validate_var_decl_visgen::operator()(positive_ordered_var_decl const &x) const '],['../structstan_1_1gm_1_1validate__var__decl__visgen.html#aa52047c0ba795b014daf81ffc14c2730',1,'stan::gm::validate_var_decl_visgen::operator()(cholesky_factor_var_decl const &x) const '],['../structstan_1_1gm_1_1validate__var__decl__visgen.html#abe4496806c43c26f25d1d5decf630499',1,'stan::gm::validate_var_decl_visgen::operator()(cov_matrix_var_decl const &x) const '],['../structstan_1_1gm_1_1validate__var__decl__visgen.html#a5b14b6fbf4c38146fd80097a16cb3f8e',1,'stan::gm::validate_var_decl_visgen::operator()(corr_matrix_var_decl const &x) const '],['../structstan_1_1gm_1_1member__var__decl__visgen.html#a5522b70943b2a24749e14dd03c98ade8',1,'stan::gm::member_var_decl_visgen::operator()(nil const &) const '],['../structstan_1_1gm_1_1member__var__decl__visgen.html#a846d68c8fb568e97d8e72a0023c6990e',1,'stan::gm::member_var_decl_visgen::operator()(int_var_decl const &x) const '],['../structstan_1_1gm_1_1member__var__decl__visgen.html#aad6bcbbf2b1ee90edee39b8e194d8682',1,'stan::gm::member_var_decl_visgen::operator()(double_var_decl const &x) const '],['../structstan_1_1gm_1_1member__var__decl__visgen.html#ae071877e2420318e00df38b6fa99aa4c',1,'stan::gm::member_var_decl_visgen::operator()(unit_vector_var_decl const &x) const '],['../structstan_1_1gm_1_1member__var__decl__visgen.html#a452ce11c5be73d030bb2b578f56d92ff',1,'stan::gm::member_var_decl_visgen::operator()(simplex_var_decl const &x) const '],['../structstan_1_1gm_1_1member__var__decl__visgen.html#a4b118f12400d5b68e582659ad7156001',1,'stan::gm::member_var_decl_visgen::operator()(ordered_var_decl const &x) const '],['../structstan_1_1gm_1_1member__var__decl__visgen.html#a188762a0e623abddb891beeb3f8fc7c2',1,'stan::gm::member_var_decl_visgen::operator()(positive_ordered_var_decl const &x) const '],['../structstan_1_1gm_1_1member__var__decl__visgen.html#adf9c99128404dfb300102feef2455c4e',1,'stan::gm::member_var_decl_visgen::operator()(cholesky_factor_var_decl const &x) const '],['../structstan_1_1gm_1_1member__var__decl__visgen.html#a4e6590cdabe3dad424175b40a6b4754a',1,'stan::gm::member_var_decl_visgen::operator()(cov_matrix_var_decl const &x) const '],['../structstan_1_1gm_1_1member__var__decl__visgen.html#a547c121fc9b18960dfb348e37eb04a0e',1,'stan::gm::member_var_decl_visgen::operator()(corr_matrix_var_decl const &x) const '],['../structstan_1_1gm_1_1member__var__decl__visgen.html#a4d8ea1a46fc58335839c7b8c688d147d',1,'stan::gm::member_var_decl_visgen::operator()(vector_var_decl const &x) const '],['../structstan_1_1gm_1_1member__var__decl__visgen.html#a16094bd8d9f8b7ec7ec42a3b7556e2d9',1,'stan::gm::member_var_decl_visgen::operator()(row_vector_var_decl const &x) const '],['../structstan_1_1gm_1_1member__var__decl__visgen.html#a870fbb7b4bb778789eb6bb5d832d7911',1,'stan::gm::member_var_decl_visgen::operator()(matrix_var_decl const &x) const '],['../structstan_1_1gm_1_1local__var__decl__visgen.html#a0896684d42f09ea98f32bbd8f1c0ee29',1,'stan::gm::local_var_decl_visgen::operator()(nil const &) const '],['../structstan_1_1gm_1_1local__var__decl__visgen.html#afaffeaef006f8b9156b79ad911e63686',1,'stan::gm::local_var_decl_visgen::operator()(int_var_decl const &x) const '],['../structstan_1_1gm_1_1local__var__decl__visgen.html#aa1d9d8bd0d10c6cf59318d51606ba322',1,'stan::gm::local_var_decl_visgen::operator()(double_var_decl const &x) const '],['../structstan_1_1gm_1_1local__var__decl__visgen.html#a402d4b157dd157cd05af74e8aede83ac',1,'stan::gm::local_var_decl_visgen::operator()(vector_var_decl const &x) const '],['../structstan_1_1gm_1_1local__var__decl__visgen.html#a891deece1420c22599e64b7bfa85e481',1,'stan::gm::local_var_decl_visgen::operator()(row_vector_var_decl const &x) const '],['../structstan_1_1gm_1_1local__var__decl__visgen.html#aa169624bac1a343c4f76b3c524ccdf92',1,'stan::gm::local_var_decl_visgen::operator()(matrix_var_decl const &x) const '],['../structstan_1_1gm_1_1local__var__decl__visgen.html#a8f523bcdc99b230336b45a73392c6bdc',1,'stan::gm::local_var_decl_visgen::operator()(unit_vector_var_decl const &x) const '],['../structstan_1_1gm_1_1local__var__decl__visgen.html#a19fe01f126a6d2da24531b6853fca054',1,'stan::gm::local_var_decl_visgen::operator()(simplex_var_decl const &x) const '],['../structstan_1_1gm_1_1local__var__decl__visgen.html#ac56bc9b5dea646125b2bc9898a2daf72',1,'stan::gm::local_var_decl_visgen::operator()(ordered_var_decl const &x) const '],['../structstan_1_1gm_1_1local__var__decl__visgen.html#a6dddb8f57c6478c6cd4e9650ee7647f3',1,'stan::gm::local_var_decl_visgen::operator()(positive_ordered_var_decl const &x) const '],['../structstan_1_1gm_1_1local__var__decl__visgen.html#a285e81494c6c7dc4b8c24f4fccd6b551',1,'stan::gm::local_var_decl_visgen::operator()(cholesky_factor_var_decl const &x) const '],['../structstan_1_1gm_1_1local__var__decl__visgen.html#a27dee788268922197969f21368393349',1,'stan::gm::local_var_decl_visgen::operator()(cov_matrix_var_decl const &x) const '],['../structstan_1_1gm_1_1local__var__decl__visgen.html#ab7ed5b969db7d6b35c7c1f1401bc184b',1,'stan::gm::local_var_decl_visgen::operator()(corr_matrix_var_decl const &x) const '],['../structstan_1_1gm_1_1generate__local__var__init__nan__visgen.html#a42d0b0b15905906457cbca26c6d10142',1,'stan::gm::generate_local_var_init_nan_visgen::operator()(const nil &) const '],['../structstan_1_1gm_1_1generate__local__var__init__nan__visgen.html#ae4765b5775d99a95ddb1728302f5cbe0',1,'stan::gm::generate_local_var_init_nan_visgen::operator()(const int_var_decl &x) const '],['../structstan_1_1gm_1_1generate__local__var__init__nan__visgen.html#ad47511bfb6722ed45fbe450cb9ba581a',1,'stan::gm::generate_local_var_init_nan_visgen::operator()(const double_var_decl &x) const '],['../structstan_1_1gm_1_1generate__local__var__init__nan__visgen.html#afa590791c9f6197ca2f85cef55be2f99',1,'stan::gm::generate_local_var_init_nan_visgen::operator()(const vector_var_decl &x) const '],['../structstan_1_1gm_1_1generate__local__var__init__nan__visgen.html#a6c85a19a7505a8454242df4367fe07e9',1,'stan::gm::generate_local_var_init_nan_visgen::operator()(const row_vector_var_decl &x) const '],['../structstan_1_1gm_1_1generate__local__var__init__nan__visgen.html#a45ac40894402f023815850e68f485aef',1,'stan::gm::generate_local_var_init_nan_visgen::operator()(const matrix_var_decl &x) const '],['../structstan_1_1gm_1_1generate__local__var__init__nan__visgen.html#a308932a45f040240680173e54e33d8cf',1,'stan::gm::generate_local_var_init_nan_visgen::operator()(const unit_vector_var_decl &x) const '],['../structstan_1_1gm_1_1generate__local__var__init__nan__visgen.html#a6e735049bbefcc57919868b3a6f08715',1,'stan::gm::generate_local_var_init_nan_visgen::operator()(const simplex_var_decl &x) const '],['../structstan_1_1gm_1_1generate__local__var__init__nan__visgen.html#a10b41b00c40c30ca1bc8ce3e53ff0ebf',1,'stan::gm::generate_local_var_init_nan_visgen::operator()(const ordered_var_decl &x) const '],['../structstan_1_1gm_1_1generate__local__var__init__nan__visgen.html#a4b8549963107c86290863b79cea66c51',1,'stan::gm::generate_local_var_init_nan_visgen::operator()(const positive_ordered_var_decl &x) const '],['../structstan_1_1gm_1_1generate__local__var__init__nan__visgen.html#a6ecfe0a495361f204c894f4e0df8a426',1,'stan::gm::generate_local_var_init_nan_visgen::operator()(const cholesky_factor_var_decl &x) const '],['../structstan_1_1gm_1_1generate__local__var__init__nan__visgen.html#a99b6c01ad0c40e6a38c6e1b2546f56a0',1,'stan::gm::generate_local_var_init_nan_visgen::operator()(const cov_matrix_var_decl &x) const '],['../structstan_1_1gm_1_1generate__local__var__init__nan__visgen.html#aada22b5e887493ac2aafb7952555e684',1,'stan::gm::generate_local_var_init_nan_visgen::operator()(const corr_matrix_var_decl &x) const '],['../structstan_1_1gm_1_1generate__init__vars__visgen.html#a5296c19c9ceeec88da8aea6f7c127a0f',1,'stan::gm::generate_init_vars_visgen::operator()(nil const &) const '],['../structstan_1_1gm_1_1generate__init__vars__visgen.html#a9e7341c528d58e75cce017b798d5a0cc',1,'stan::gm::generate_init_vars_visgen::operator()(int_var_decl const &x) const '],['../structstan_1_1gm_1_1generate__init__vars__visgen.html#a564e16e6d2733419f6124f594b3ce02d',1,'stan::gm::generate_init_vars_visgen::operator()(double_var_decl const &x) const '],['../structstan_1_1gm_1_1generate__init__vars__visgen.html#ae8ae66be4b3102b4c58c1ad5474fc703',1,'stan::gm::generate_init_vars_visgen::operator()(vector_var_decl const &x) const '],['../structstan_1_1gm_1_1generate__init__vars__visgen.html#a322208fcee39dfaae64d6d660e44db9f',1,'stan::gm::generate_init_vars_visgen::operator()(row_vector_var_decl const &x) const '],['../structstan_1_1gm_1_1generate__init__vars__visgen.html#a1f4d18fd1d808922ba1be8c063275576',1,'stan::gm::generate_init_vars_visgen::operator()(matrix_var_decl const &x) const '],['../structstan_1_1gm_1_1generate__init__vars__visgen.html#a76b27f4e0d2cdeef25f8c8653161e8e2',1,'stan::gm::generate_init_vars_visgen::operator()(unit_vector_var_decl const &x) const '],['../structstan_1_1gm_1_1generate__init__vars__visgen.html#a539105c77554c2111c5f819870cba7b4',1,'stan::gm::generate_init_vars_visgen::operator()(simplex_var_decl const &x) const '],['../structstan_1_1gm_1_1generate__init__vars__visgen.html#aa96301578f07886566d1c60605f51a24',1,'stan::gm::generate_init_vars_visgen::operator()(ordered_var_decl const &x) const '],['../structstan_1_1gm_1_1generate__init__vars__visgen.html#a445e438ce16f5da4b477e4c28b29af64',1,'stan::gm::generate_init_vars_visgen::operator()(positive_ordered_var_decl const &x) const '],['../structstan_1_1gm_1_1generate__init__vars__visgen.html#aa623eb8b3406e8025ff2ee4202d1a037',1,'stan::gm::generate_init_vars_visgen::operator()(cholesky_factor_var_decl const &x) const '],['../structstan_1_1gm_1_1generate__init__vars__visgen.html#a67a792b559bef1d3ebc8b3ecd3e7e3d8',1,'stan::gm::generate_init_vars_visgen::operator()(cov_matrix_var_decl const &x) const '],['../structstan_1_1gm_1_1generate__init__vars__visgen.html#ac67da1998f7e6479721e6f419e033a8f',1,'stan::gm::generate_init_vars_visgen::operator()(corr_matrix_var_decl const &x) const '],['../structstan_1_1gm_1_1validate__transformed__params__visgen.html#a14fd7eed71c573311d921da1d1cb901b',1,'stan::gm::validate_transformed_params_visgen::operator()(nil const &) const '],['../structstan_1_1gm_1_1validate__transformed__params__visgen.html#ab43eac10e252f672634e5c3098e6102e',1,'stan::gm::validate_transformed_params_visgen::operator()(int_var_decl const &x) const '],['../structstan_1_1gm_1_1validate__transformed__params__visgen.html#a118d04b0f14440602301eedcf2e00331',1,'stan::gm::validate_transformed_params_visgen::operator()(double_var_decl const &x) const '],['../structstan_1_1gm_1_1validate__transformed__params__visgen.html#a3482660b917b658e4d987f63ed688c2a',1,'stan::gm::validate_transformed_params_visgen::operator()(vector_var_decl const &x) const '],['../structstan_1_1gm_1_1validate__transformed__params__visgen.html#affb011dc7007013be0e7b09c402d4c38',1,'stan::gm::validate_transformed_params_visgen::operator()(unit_vector_var_decl const &x) const '],['../structstan_1_1gm_1_1validate__transformed__params__visgen.html#ad4c97056f7796c9f0335edd1c5a770a4',1,'stan::gm::validate_transformed_params_visgen::operator()(simplex_var_decl const &x) const '],['../structstan_1_1gm_1_1validate__transformed__params__visgen.html#aa046bb1fa3a293080f0b50fd939c48b5',1,'stan::gm::validate_transformed_params_visgen::operator()(ordered_var_decl const &x) const '],['../structstan_1_1gm_1_1validate__transformed__params__visgen.html#a2e5661a4fe0ffa841278abd106b658b8',1,'stan::gm::validate_transformed_params_visgen::operator()(positive_ordered_var_decl const &x) const '],['../structstan_1_1gm_1_1validate__transformed__params__visgen.html#a8c346096587fed22458d55deb48bb556',1,'stan::gm::validate_transformed_params_visgen::operator()(row_vector_var_decl const &x) const '],['../structstan_1_1gm_1_1validate__transformed__params__visgen.html#a9d5589f7e8adae47669af9b1662cf846',1,'stan::gm::validate_transformed_params_visgen::operator()(matrix_var_decl const &x) const '],['../structstan_1_1gm_1_1validate__transformed__params__visgen.html#acaa1f2d1859c10a1c4ac1c0f1c96e82f',1,'stan::gm::validate_transformed_params_visgen::operator()(cholesky_factor_var_decl const &x) const '],['../structstan_1_1gm_1_1validate__transformed__params__visgen.html#a3e5e6857c321533c1083a6ce3088fdfb',1,'stan::gm::validate_transformed_params_visgen::operator()(cov_matrix_var_decl const &x) const '],['../structstan_1_1gm_1_1validate__transformed__params__visgen.html#a99261725b4a378a9919fe7f89e4fa591',1,'stan::gm::validate_transformed_params_visgen::operator()(corr_matrix_var_decl const &x) const '],['../structstan_1_1gm_1_1statement__visgen.html#af85ff0769df52efb90ce2bbc5ff3df23',1,'stan::gm::statement_visgen::operator()(nil const &) const '],['../structstan_1_1gm_1_1statement__visgen.html#a882ddbcdad5d16de84a4d3d658c6ff20',1,'stan::gm::statement_visgen::operator()(assignment const &x) const '],['../structstan_1_1gm_1_1statement__visgen.html#a18f13f4f735a01b9bc621dbacaf64c67',1,'stan::gm::statement_visgen::operator()(expression const &x) const '],['../structstan_1_1gm_1_1statement__visgen.html#a8b4d0dbca715399dad65ca12d81c2caf',1,'stan::gm::statement_visgen::operator()(sample const &x) const '],['../structstan_1_1gm_1_1statement__visgen.html#a42c4a20fb6e15cfc6348f67669a596a3',1,'stan::gm::statement_visgen::operator()(const increment_log_prob_statement &x) const '],['../structstan_1_1gm_1_1statement__visgen.html#a0173ebc27b24f84a454b7dd8d86ad5aa',1,'stan::gm::statement_visgen::operator()(const statements &x) const '],['../structstan_1_1gm_1_1statement__visgen.html#a3210b49a16a34a1f00e5ae4103e4d52d',1,'stan::gm::statement_visgen::operator()(const print_statement &ps) const '],['../structstan_1_1gm_1_1statement__visgen.html#a34c280dce22502fe23321a7104e06516',1,'stan::gm::statement_visgen::operator()(const for_statement &x) const '],['../structstan_1_1gm_1_1statement__visgen.html#a44904f06b384d2d48bc86ce8761c87b7',1,'stan::gm::statement_visgen::operator()(const while_statement &x) const '],['../structstan_1_1gm_1_1statement__visgen.html#a6cd75512cddef8725f4668be6d7ff891',1,'stan::gm::statement_visgen::operator()(const conditional_statement &x) const '],['../structstan_1_1gm_1_1statement__visgen.html#ad5ace1426be86aeec720e50919d711b8',1,'stan::gm::statement_visgen::operator()(const no_op_statement &) const '],['../structstan_1_1gm_1_1dump__member__var__visgen.html#abfa487614709c71e58805b48802e45a4',1,'stan::gm::dump_member_var_visgen::operator()(nil const &) const '],['../structstan_1_1gm_1_1dump__member__var__visgen.html#aa56bad9542006b9d9354f8571c6b722c',1,'stan::gm::dump_member_var_visgen::operator()(int_var_decl const &x) const '],['../structstan_1_1gm_1_1dump__member__var__visgen.html#aef25639b7aa2e8fe80e189de25130ea0',1,'stan::gm::dump_member_var_visgen::operator()(double_var_decl const &x) const '],['../structstan_1_1gm_1_1dump__member__var__visgen.html#ab8092387d74cddae7522efd01d133d43',1,'stan::gm::dump_member_var_visgen::operator()(vector_var_decl const &x) const '],['../structstan_1_1gm_1_1dump__member__var__visgen.html#ac67d9309fc445f1dc5f962995f2cfebc',1,'stan::gm::dump_member_var_visgen::operator()(row_vector_var_decl const &x) const '],['../structstan_1_1gm_1_1dump__member__var__visgen.html#a90cdc8c8b6027bbe9f72c6b4b2ab6351',1,'stan::gm::dump_member_var_visgen::operator()(unit_vector_var_decl const &x) const '],['../structstan_1_1gm_1_1dump__member__var__visgen.html#a1df5811f58ff7a33a96962e1f0527250',1,'stan::gm::dump_member_var_visgen::operator()(simplex_var_decl const &x) const '],['../structstan_1_1gm_1_1dump__member__var__visgen.html#a4c94da368b07ae2933600a6a5f0e7c9f',1,'stan::gm::dump_member_var_visgen::operator()(ordered_var_decl const &x) const '],['../structstan_1_1gm_1_1dump__member__var__visgen.html#a8fbb932a4cb688a85ee6e65ce36a4b13',1,'stan::gm::dump_member_var_visgen::operator()(positive_ordered_var_decl const &x) const '],['../structstan_1_1gm_1_1dump__member__var__visgen.html#ace2352860fab0197f7cf0d43f75b7302',1,'stan::gm::dump_member_var_visgen::operator()(matrix_var_decl const &x) const '],['../structstan_1_1gm_1_1dump__member__var__visgen.html#a1a149800febdc5a296facd5874dbf695',1,'stan::gm::dump_member_var_visgen::operator()(corr_matrix_var_decl const &x) const '],['../structstan_1_1gm_1_1dump__member__var__visgen.html#afe2e3c945b8fbd8fd18a3df5ac91fe5f',1,'stan::gm::dump_member_var_visgen::operator()(cholesky_factor_var_decl const &x) const '],['../structstan_1_1gm_1_1dump__member__var__visgen.html#ab6568cd4e866ced3a2456c4910265eb9',1,'stan::gm::dump_member_var_visgen::operator()(cov_matrix_var_decl const &x) const '],['../structstan_1_1gm_1_1set__param__ranges__visgen.html#a3625dc74eb75e7fa91531810bdf97b9e',1,'stan::gm::set_param_ranges_visgen::operator()(const nil &) const '],['../structstan_1_1gm_1_1set__param__ranges__visgen.html#ae3478b2db9512a083f0ee9bdfd111082',1,'stan::gm::set_param_ranges_visgen::operator()(const int_var_decl &x) const '],['../structstan_1_1gm_1_1set__param__ranges__visgen.html#a706ebdafd5d5ea2db2bfff93a7b1328f',1,'stan::gm::set_param_ranges_visgen::operator()(const double_var_decl &x) const '],['../structstan_1_1gm_1_1set__param__ranges__visgen.html#aee6df5fcfce0657ed53f2c144cf64797',1,'stan::gm::set_param_ranges_visgen::operator()(const vector_var_decl &x) const '],['../structstan_1_1gm_1_1set__param__ranges__visgen.html#a4b318d4a2f5799b9f431ced598a7255a',1,'stan::gm::set_param_ranges_visgen::operator()(const row_vector_var_decl &x) const '],['../structstan_1_1gm_1_1set__param__ranges__visgen.html#a07a9057ea34f41475091f186c465486d',1,'stan::gm::set_param_ranges_visgen::operator()(const matrix_var_decl &x) const '],['../structstan_1_1gm_1_1set__param__ranges__visgen.html#a0a3c6ed449782da43725725db88f0af5',1,'stan::gm::set_param_ranges_visgen::operator()(const unit_vector_var_decl &x) const '],['../structstan_1_1gm_1_1set__param__ranges__visgen.html#abcb216c0ca4b41da7d535ce3a2738a9f',1,'stan::gm::set_param_ranges_visgen::operator()(const simplex_var_decl &x) const '],['../structstan_1_1gm_1_1set__param__ranges__visgen.html#a33f608b08e2821547825696f04d0fdbf',1,'stan::gm::set_param_ranges_visgen::operator()(const ordered_var_decl &x) const '],['../structstan_1_1gm_1_1set__param__ranges__visgen.html#a376e19d3c9d4ee5bd05651b3f7b8400c',1,'stan::gm::set_param_ranges_visgen::operator()(const positive_ordered_var_decl &x) const '],['../structstan_1_1gm_1_1set__param__ranges__visgen.html#ad0298bb2fcb14381f78fcdf45deb8334',1,'stan::gm::set_param_ranges_visgen::operator()(const cholesky_factor_var_decl &x) const '],['../structstan_1_1gm_1_1set__param__ranges__visgen.html#a852e85c5a92311b692c6ea2278168f37',1,'stan::gm::set_param_ranges_visgen::operator()(const cov_matrix_var_decl &x) const '],['../structstan_1_1gm_1_1set__param__ranges__visgen.html#a183d4048461fbc6648583ea9c9738204',1,'stan::gm::set_param_ranges_visgen::operator()(const corr_matrix_var_decl &x) const '],['../structstan_1_1gm_1_1generate__init__visgen.html#ae64d5b09459e81886886f4b8bb93ad5e',1,'stan::gm::generate_init_visgen::operator()(nil const &) const '],['../structstan_1_1gm_1_1generate__init__visgen.html#a4acfea897c0949cfc6d0a93e1206d19f',1,'stan::gm::generate_init_visgen::operator()(int_var_decl const &x) const '],['../structstan_1_1gm_1_1generate__init__visgen.html#a1a20fef969f980bd76d76f649fee2f8f',1,'stan::gm::generate_init_visgen::operator()(double_var_decl const &x) const '],['../structstan_1_1gm_1_1generate__init__visgen.html#aea32eea12e6ecd555c45f4f70d84fdd4',1,'stan::gm::generate_init_visgen::operator()(vector_var_decl const &x) const '],['../structstan_1_1gm_1_1generate__init__visgen.html#a2d29390aa764b8b85a2648d4ea2f68b6',1,'stan::gm::generate_init_visgen::operator()(row_vector_var_decl const &x) const '],['../structstan_1_1gm_1_1generate__init__visgen.html#ad04937033077af89a4b73ebfe5212c97',1,'stan::gm::generate_init_visgen::operator()(matrix_var_decl const &x) const '],['../structstan_1_1gm_1_1generate__init__visgen.html#adc2c6e42617cf083e62c8173858903f5',1,'stan::gm::generate_init_visgen::operator()(unit_vector_var_decl const &x) const '],['../structstan_1_1gm_1_1generate__init__visgen.html#a849ab1352d5c6ecf926e2062eaec1fe6',1,'stan::gm::generate_init_visgen::operator()(simplex_var_decl const &x) const '],['../structstan_1_1gm_1_1generate__init__visgen.html#a9982f4abc1aeea75644c95d262a4664c',1,'stan::gm::generate_init_visgen::operator()(ordered_var_decl const &x) const '],['../structstan_1_1gm_1_1generate__init__visgen.html#aa9b31667894e82fcce665487e56df858',1,'stan::gm::generate_init_visgen::operator()(positive_ordered_var_decl const &x) const '],['../structstan_1_1gm_1_1generate__init__visgen.html#a15640d3d0ed7f8bd5e3791760873a141',1,'stan::gm::generate_init_visgen::operator()(cholesky_factor_var_decl const &x) const '],['../structstan_1_1gm_1_1generate__init__visgen.html#a1902bf22a0d19fa6c0608d80f79fbd15',1,'stan::gm::generate_init_visgen::operator()(cov_matrix_var_decl const &x) const '],['../structstan_1_1gm_1_1generate__init__visgen.html#ac7801f6cac14339b13bd6e33a16479fd',1,'stan::gm::generate_init_visgen::operator()(corr_matrix_var_decl const &x) const '],['../structstan_1_1gm_1_1write__dims__visgen.html#a241e8488f5df6048133f3fc3436b4f73',1,'stan::gm::write_dims_visgen::operator()(const nil &) const '],['../structstan_1_1gm_1_1write__dims__visgen.html#a285f76d658ddd8b018079da23eb88ab2',1,'stan::gm::write_dims_visgen::operator()(const int_var_decl &x) const '],['../structstan_1_1gm_1_1write__dims__visgen.html#a739b3a41bd03346e6364ed563644fca3',1,'stan::gm::write_dims_visgen::operator()(const double_var_decl &x) const '],['../structstan_1_1gm_1_1write__dims__visgen.html#ac46344be8a564d0019c582f9604ea797',1,'stan::gm::write_dims_visgen::operator()(const vector_var_decl &x) const '],['../structstan_1_1gm_1_1write__dims__visgen.html#adc6fbaedd6b426908b335d9ed6363c64',1,'stan::gm::write_dims_visgen::operator()(const row_vector_var_decl &x) const '],['../structstan_1_1gm_1_1write__dims__visgen.html#a9399300d81344525a1c52ca3003bd123',1,'stan::gm::write_dims_visgen::operator()(const matrix_var_decl &x) const '],['../structstan_1_1gm_1_1write__dims__visgen.html#a0e7495ad6875b725669909150209d36e',1,'stan::gm::write_dims_visgen::operator()(const unit_vector_var_decl &x) const '],['../structstan_1_1gm_1_1write__dims__visgen.html#abfe9bcecd2b4081a1970a514dfa2f7bb',1,'stan::gm::write_dims_visgen::operator()(const simplex_var_decl &x) const '],['../structstan_1_1gm_1_1write__dims__visgen.html#a735927dd81ac131434272269eb9853fd',1,'stan::gm::write_dims_visgen::operator()(const ordered_var_decl &x) const '],['../structstan_1_1gm_1_1write__dims__visgen.html#a6823e7c0f43cb493bc166f3e6f7ce169',1,'stan::gm::write_dims_visgen::operator()(const positive_ordered_var_decl &x) const '],['../structstan_1_1gm_1_1write__dims__visgen.html#a5affc0ae2fa501d9d98ea0421688fdc9',1,'stan::gm::write_dims_visgen::operator()(const cholesky_factor_var_decl &x) const '],['../structstan_1_1gm_1_1write__dims__visgen.html#afcd238f2d6c7d48a4e13f3bfc4e640f8',1,'stan::gm::write_dims_visgen::operator()(const cov_matrix_var_decl &x) const '],['../structstan_1_1gm_1_1write__dims__visgen.html#ae252214d9acdfd84be53e5f3803e0bee',1,'stan::gm::write_dims_visgen::operator()(const corr_matrix_var_decl &x) const '],['../structstan_1_1gm_1_1write__param__names__visgen.html#a661aeeb81f7e904501160518ef2ba145',1,'stan::gm::write_param_names_visgen::operator()(const nil &) const '],['../structstan_1_1gm_1_1write__param__names__visgen.html#abff2286d0b2a3d185d304917ebc4492a',1,'stan::gm::write_param_names_visgen::operator()(const int_var_decl &x) const '],['../structstan_1_1gm_1_1write__param__names__visgen.html#a470817ce578b1abc52f0fdc56c1b28f4',1,'stan::gm::write_param_names_visgen::operator()(const double_var_decl &x) const '],['../structstan_1_1gm_1_1write__param__names__visgen.html#a62123b5999a928689b74ce0adf406067',1,'stan::gm::write_param_names_visgen::operator()(const vector_var_decl &x) const '],['../structstan_1_1gm_1_1write__param__names__visgen.html#a4f921a15549249daf2b0dc4ddc13614c',1,'stan::gm::write_param_names_visgen::operator()(const row_vector_var_decl &x) const '],['../structstan_1_1gm_1_1write__param__names__visgen.html#a930d1005cd6effae68a9e30c38ae5547',1,'stan::gm::write_param_names_visgen::operator()(const matrix_var_decl &x) const '],['../structstan_1_1gm_1_1write__param__names__visgen.html#a4e2f1c39a4f283e4c13107a84093aa1e',1,'stan::gm::write_param_names_visgen::operator()(const unit_vector_var_decl &x) const '],['../structstan_1_1gm_1_1write__param__names__visgen.html#a2a82891f7cd347774f01ee587527d607',1,'stan::gm::write_param_names_visgen::operator()(const simplex_var_decl &x) const '],['../structstan_1_1gm_1_1write__param__names__visgen.html#a5244ace83897596a9a898062a466f3a7',1,'stan::gm::write_param_names_visgen::operator()(const ordered_var_decl &x) const '],['../structstan_1_1gm_1_1write__param__names__visgen.html#a13381b4ec5fc1104cec86d0630c0073a',1,'stan::gm::write_param_names_visgen::operator()(const positive_ordered_var_decl &x) const '],['../structstan_1_1gm_1_1write__param__names__visgen.html#aaf7e806be4b3ad34f72b37b65f6d9f69',1,'stan::gm::write_param_names_visgen::operator()(const cholesky_factor_var_decl &x) const '],['../structstan_1_1gm_1_1write__param__names__visgen.html#acdd883b61a36735c8647fe83618f6fa7',1,'stan::gm::write_param_names_visgen::operator()(const cov_matrix_var_decl &x) const '],['../structstan_1_1gm_1_1write__param__names__visgen.html#a9910044b2795a6255a78c9f672c1bf0c',1,'stan::gm::write_param_names_visgen::operator()(const corr_matrix_var_decl &x) const '],['../structstan_1_1gm_1_1write__csv__header__visgen.html#ae9ad9fd29629c1a5fa7eaf95aef5d8d7',1,'stan::gm::write_csv_header_visgen::operator()(const nil &) const '],['../structstan_1_1gm_1_1write__csv__header__visgen.html#ae604f0f9b1cc6db35f15f655b00cd262',1,'stan::gm::write_csv_header_visgen::operator()(const int_var_decl &x) const '],['../structstan_1_1gm_1_1write__csv__header__visgen.html#a8d445e07f41720cce733711c33acaa76',1,'stan::gm::write_csv_header_visgen::operator()(const double_var_decl &x) const '],['../structstan_1_1gm_1_1write__csv__header__visgen.html#ab1ef373185ef957afb786883c4f1ab79',1,'stan::gm::write_csv_header_visgen::operator()(const vector_var_decl &x) const '],['../structstan_1_1gm_1_1write__csv__header__visgen.html#ab1fcfc4ab4f58ef149e8492fe967194c',1,'stan::gm::write_csv_header_visgen::operator()(const row_vector_var_decl &x) const '],['../structstan_1_1gm_1_1write__csv__header__visgen.html#aa7f849a4a814eadaaecf4a6ce8ca4db5',1,'stan::gm::write_csv_header_visgen::operator()(const matrix_var_decl &x) const '],['../structstan_1_1gm_1_1write__csv__header__visgen.html#af409c6ebc10fd7efd7c964033c8d0c27',1,'stan::gm::write_csv_header_visgen::operator()(const unit_vector_var_decl &x) const '],['../structstan_1_1gm_1_1write__csv__header__visgen.html#a1225374f023caada43d88fb6cc879d3c',1,'stan::gm::write_csv_header_visgen::operator()(const simplex_var_decl &x) const '],['../structstan_1_1gm_1_1write__csv__header__visgen.html#ab1ee25227b1498266d43231b824c31d7',1,'stan::gm::write_csv_header_visgen::operator()(const ordered_var_decl &x) const '],['../structstan_1_1gm_1_1write__csv__header__visgen.html#a9be3a2194404fd09e0ba9e3de51bc5fa',1,'stan::gm::write_csv_header_visgen::operator()(const positive_ordered_var_decl &x) const '],['../structstan_1_1gm_1_1write__csv__header__visgen.html#a38e2400334cbb5ca23835db8c0a1126f',1,'stan::gm::write_csv_header_visgen::operator()(const cholesky_factor_var_decl &x) const '],['../structstan_1_1gm_1_1write__csv__header__visgen.html#ad3adb663e082ceea28006f88cc48e584',1,'stan::gm::write_csv_header_visgen::operator()(const cov_matrix_var_decl &x) const '],['../structstan_1_1gm_1_1write__csv__header__visgen.html#ab64e2f461383641fbbdb0ada35a8ecc3',1,'stan::gm::write_csv_header_visgen::operator()(const corr_matrix_var_decl &x) const '],['../structstan_1_1gm_1_1constrained__param__names__visgen.html#a7c3101dca78af8f11df33f8e69272d1f',1,'stan::gm::constrained_param_names_visgen::operator()(const nil &) const '],['../structstan_1_1gm_1_1constrained__param__names__visgen.html#a42d95194ca06e7281883aac7a71cd8e0',1,'stan::gm::constrained_param_names_visgen::operator()(const int_var_decl &x) const '],['../structstan_1_1gm_1_1constrained__param__names__visgen.html#a6b0c36939bea3557e78606b4cad1c6ed',1,'stan::gm::constrained_param_names_visgen::operator()(const double_var_decl &x) const '],['../structstan_1_1gm_1_1constrained__param__names__visgen.html#aa768bee970f4f260a25afe9469cb94f2',1,'stan::gm::constrained_param_names_visgen::operator()(const vector_var_decl &x) const '],['../structstan_1_1gm_1_1constrained__param__names__visgen.html#ab6aedd3a1d06e93388765f6322439b91',1,'stan::gm::constrained_param_names_visgen::operator()(const row_vector_var_decl &x) const '],['../structstan_1_1gm_1_1constrained__param__names__visgen.html#a80882376e2174653b40047ef3e74e641',1,'stan::gm::constrained_param_names_visgen::operator()(const matrix_var_decl &x) const '],['../structstan_1_1gm_1_1constrained__param__names__visgen.html#abbeaf19e5de404502b219c5f8c6ec5ea',1,'stan::gm::constrained_param_names_visgen::operator()(const unit_vector_var_decl &x) const '],['../structstan_1_1gm_1_1constrained__param__names__visgen.html#acd0d2716db8d9b32253916c959680df9',1,'stan::gm::constrained_param_names_visgen::operator()(const simplex_var_decl &x) const '],['../structstan_1_1gm_1_1constrained__param__names__visgen.html#addad66465bf189869bd62f872a17edbc',1,'stan::gm::constrained_param_names_visgen::operator()(const ordered_var_decl &x) const '],['../structstan_1_1gm_1_1constrained__param__names__visgen.html#a6c880b88ca3ca940cea321b0617b97af',1,'stan::gm::constrained_param_names_visgen::operator()(const positive_ordered_var_decl &x) const '],['../structstan_1_1gm_1_1constrained__param__names__visgen.html#a7e406cdece7bcf4e87d2c225baf9ffce',1,'stan::gm::constrained_param_names_visgen::operator()(const cholesky_factor_var_decl &x) const '],['../structstan_1_1gm_1_1constrained__param__names__visgen.html#a8a496777aa89fd7699f822b67500a50b',1,'stan::gm::constrained_param_names_visgen::operator()(const cov_matrix_var_decl &x) const '],['../structstan_1_1gm_1_1constrained__param__names__visgen.html#ab836f4938f43c78bfdd417ee4b8bb88a',1,'stan::gm::constrained_param_names_visgen::operator()(const corr_matrix_var_decl &x) const '],['../structstan_1_1gm_1_1unconstrained__param__names__visgen.html#a8d1853ed4e7a8999b2f548e2bd3dedc4',1,'stan::gm::unconstrained_param_names_visgen::operator()(const nil &) const '],['../structstan_1_1gm_1_1unconstrained__param__names__visgen.html#a227e9459dd3354627bf7c95a3e2805d4',1,'stan::gm::unconstrained_param_names_visgen::operator()(const int_var_decl &x) const '],['../structstan_1_1gm_1_1unconstrained__param__names__visgen.html#a336ad68a4364f534af6c3b8ba4148af0',1,'stan::gm::unconstrained_param_names_visgen::operator()(const double_var_decl &x) const '],['../structstan_1_1gm_1_1unconstrained__param__names__visgen.html#a6dde9e6aa7dff433b48f2b53c6f57966',1,'stan::gm::unconstrained_param_names_visgen::operator()(const vector_var_decl &x) const '],['../structstan_1_1gm_1_1unconstrained__param__names__visgen.html#a68a7a4f4f7a0027c312f093ced7a8036',1,'stan::gm::unconstrained_param_names_visgen::operator()(const row_vector_var_decl &x) const '],['../structstan_1_1gm_1_1unconstrained__param__names__visgen.html#a01ef3b571744b182fd2b2679aa14c90c',1,'stan::gm::unconstrained_param_names_visgen::operator()(const matrix_var_decl &x) const '],['../structstan_1_1gm_1_1unconstrained__param__names__visgen.html#acf780131651d54be9029160c82ce5c7b',1,'stan::gm::unconstrained_param_names_visgen::operator()(const unit_vector_var_decl &x) const '],['../structstan_1_1gm_1_1unconstrained__param__names__visgen.html#a510b9bb20dda3fb01a1ff9dbabb0bf78',1,'stan::gm::unconstrained_param_names_visgen::operator()(const simplex_var_decl &x) const '],['../structstan_1_1gm_1_1unconstrained__param__names__visgen.html#a3296924b11f2a2a1aad3ffe4c48d3772',1,'stan::gm::unconstrained_param_names_visgen::operator()(const ordered_var_decl &x) const '],['../structstan_1_1gm_1_1unconstrained__param__names__visgen.html#af672a2749665faa902b87e17f7be9eef',1,'stan::gm::unconstrained_param_names_visgen::operator()(const positive_ordered_var_decl &x) const '],['../structstan_1_1gm_1_1unconstrained__param__names__visgen.html#a9a938d11ae97283b176fefd67ac79e6b',1,'stan::gm::unconstrained_param_names_visgen::operator()(const cholesky_factor_var_decl &x) const '],['../structstan_1_1gm_1_1unconstrained__param__names__visgen.html#a40bde127dc4cd55e31d53fe0a9d7b9a5',1,'stan::gm::unconstrained_param_names_visgen::operator()(const cov_matrix_var_decl &x) const '],['../structstan_1_1gm_1_1unconstrained__param__names__visgen.html#a3735b01da2e94eff9780b03d95f0c5b6',1,'stan::gm::unconstrained_param_names_visgen::operator()(const corr_matrix_var_decl &x) const '],['../structstan_1_1gm_1_1write__csv__visgen.html#a832c79f771732b731f04153cafe0dd37',1,'stan::gm::write_csv_visgen::operator()(const nil &) const '],['../structstan_1_1gm_1_1write__csv__visgen.html#a4b42d735e3420ec31517fee504c52793',1,'stan::gm::write_csv_visgen::operator()(const int_var_decl &x) const '],['../structstan_1_1gm_1_1write__csv__visgen.html#a9c86371fd1160881efc97c46c67235ca',1,'stan::gm::write_csv_visgen::operator()(const double_var_decl &x) const '],['../structstan_1_1gm_1_1write__csv__visgen.html#a0c5d75d85a6fd4065cfcac82070672d0',1,'stan::gm::write_csv_visgen::operator()(const vector_var_decl &x) const '],['../structstan_1_1gm_1_1write__csv__visgen.html#aa7ca047c2be3c5b568480846296a94ec',1,'stan::gm::write_csv_visgen::operator()(const row_vector_var_decl &x) const '],['../structstan_1_1gm_1_1write__csv__visgen.html#a7b6c88d0194ef11baef723f5add65b10',1,'stan::gm::write_csv_visgen::operator()(const matrix_var_decl &x) const '],['../structstan_1_1gm_1_1write__csv__visgen.html#afbd0de485f3be611e1b7789ff2a12dc7',1,'stan::gm::write_csv_visgen::operator()(const unit_vector_var_decl &x) const '],['../structstan_1_1gm_1_1write__csv__visgen.html#aa427354c26e25e85863c118f12fa0a13',1,'stan::gm::write_csv_visgen::operator()(const simplex_var_decl &x) const '],['../structstan_1_1gm_1_1write__csv__visgen.html#a93880784b37e0d8a73cfeccd1c8a162c',1,'stan::gm::write_csv_visgen::operator()(const ordered_var_decl &x) const '],['../structstan_1_1gm_1_1write__csv__visgen.html#a595f05ac1587bfd0647519eb0698b6a2',1,'stan::gm::write_csv_visgen::operator()(const positive_ordered_var_decl &x) const '],['../structstan_1_1gm_1_1write__csv__visgen.html#ad1b3b76918fbd09d02b35e25a91d7f36',1,'stan::gm::write_csv_visgen::operator()(const cholesky_factor_var_decl &x) const '],['../structstan_1_1gm_1_1write__csv__visgen.html#a2072ed961ae54bcdcc7cf5a66efec313',1,'stan::gm::write_csv_visgen::operator()(const cov_matrix_var_decl &x) const '],['../structstan_1_1gm_1_1write__csv__visgen.html#af88449a647d8d4aaf5d4cb296e923f8d',1,'stan::gm::write_csv_visgen::operator()(const corr_matrix_var_decl &x) const '],['../structstan_1_1gm_1_1write__csv__vars__visgen.html#a2719acba4b1a18fb662c97dcb830d103',1,'stan::gm::write_csv_vars_visgen::operator()(const nil &) const '],['../structstan_1_1gm_1_1write__csv__vars__visgen.html#adb67f6f8f3816f872f4cd5db25993fbc',1,'stan::gm::write_csv_vars_visgen::operator()(const int_var_decl &x) const '],['../structstan_1_1gm_1_1write__csv__vars__visgen.html#a2b0ba004b7c8510e89ef81da784f0e1c',1,'stan::gm::write_csv_vars_visgen::operator()(const double_var_decl &x) const '],['../structstan_1_1gm_1_1write__csv__vars__visgen.html#afeca4060a34a32397dfcf01615405bdb',1,'stan::gm::write_csv_vars_visgen::operator()(const vector_var_decl &x) const '],['../structstan_1_1gm_1_1write__csv__vars__visgen.html#a80ba2c361cccd8f57935e9d6668be516',1,'stan::gm::write_csv_vars_visgen::operator()(const row_vector_var_decl &x) const '],['../structstan_1_1gm_1_1write__csv__vars__visgen.html#a1d97ffbfc321ee5120a71055372ded4e',1,'stan::gm::write_csv_vars_visgen::operator()(const matrix_var_decl &x) const '],['../structstan_1_1gm_1_1write__csv__vars__visgen.html#a3035bb84db8ce7a78918d76bc8a1fb4c',1,'stan::gm::write_csv_vars_visgen::operator()(const unit_vector_var_decl &x) const '],['../structstan_1_1gm_1_1write__csv__vars__visgen.html#ac74b4f9071b03f3a66b83023b568e797',1,'stan::gm::write_csv_vars_visgen::operator()(const simplex_var_decl &x) const '],['../structstan_1_1gm_1_1write__csv__vars__visgen.html#a019d32e99ccad2f6c17485519507e8b7',1,'stan::gm::write_csv_vars_visgen::operator()(const ordered_var_decl &x) const '],['../structstan_1_1gm_1_1write__csv__vars__visgen.html#aae675794a40e6c613b11f6fd28fcebf3',1,'stan::gm::write_csv_vars_visgen::operator()(const positive_ordered_var_decl &x) const '],['../structstan_1_1gm_1_1write__csv__vars__visgen.html#ab9336edc282edfd966c36da2514f09dc',1,'stan::gm::write_csv_vars_visgen::operator()(const cholesky_factor_var_decl &x) const '],['../structstan_1_1gm_1_1write__csv__vars__visgen.html#a77f63c9fcd04bab901a8efe09a2acbee',1,'stan::gm::write_csv_vars_visgen::operator()(const cov_matrix_var_decl &x) const '],['../structstan_1_1gm_1_1write__csv__vars__visgen.html#ad622ac454a8959f9621901235f01001b',1,'stan::gm::write_csv_vars_visgen::operator()(const corr_matrix_var_decl &x) const '],['../structstan_1_1gm_1_1write__array__visgen.html#a5e023f2fef25f89a84e7ef9cc3fffb28',1,'stan::gm::write_array_visgen::operator()(const nil &) const '],['../structstan_1_1gm_1_1write__array__visgen.html#a76890f5af58b5249068657a2bd5b6efa',1,'stan::gm::write_array_visgen::operator()(const int_var_decl &x) const '],['../structstan_1_1gm_1_1write__array__visgen.html#a24364e34f4993b5b367c81ce3f2b659a',1,'stan::gm::write_array_visgen::operator()(const double_var_decl &x) const '],['../structstan_1_1gm_1_1write__array__visgen.html#ac622e7cbe2c27da32f5be2d828b2e7e8',1,'stan::gm::write_array_visgen::operator()(const vector_var_decl &x) const '],['../structstan_1_1gm_1_1write__array__visgen.html#a24849551217534810a461fed799f5f2b',1,'stan::gm::write_array_visgen::operator()(const row_vector_var_decl &x) const '],['../structstan_1_1gm_1_1write__array__visgen.html#a25dffda3b1d6542f6e7d4842080c42a8',1,'stan::gm::write_array_visgen::operator()(const matrix_var_decl &x) const '],['../structstan_1_1gm_1_1write__array__visgen.html#a0b22a9605e7f90682f451d1ff8be1b67',1,'stan::gm::write_array_visgen::operator()(const unit_vector_var_decl &x) const '],['../structstan_1_1gm_1_1write__array__visgen.html#a8c54d3d13d4ca2d2cc09ae6a90ef441a',1,'stan::gm::write_array_visgen::operator()(const simplex_var_decl &x) const '],['../structstan_1_1gm_1_1write__array__visgen.html#a3fbb94eaca23339aa18664d3a808cd2d',1,'stan::gm::write_array_visgen::operator()(const ordered_var_decl &x) const '],['../structstan_1_1gm_1_1write__array__visgen.html#ad554817b1894e39e2ad30bad286f4563',1,'stan::gm::write_array_visgen::operator()(const positive_ordered_var_decl &x) const '],['../structstan_1_1gm_1_1write__array__visgen.html#ae4e903cfb0434aa8b0d1cfc1ff46fd13',1,'stan::gm::write_array_visgen::operator()(const cholesky_factor_var_decl &x) const '],['../structstan_1_1gm_1_1write__array__visgen.html#a2b7fc3532750391146c46bbf15ad605f',1,'stan::gm::write_array_visgen::operator()(const cov_matrix_var_decl &x) const '],['../structstan_1_1gm_1_1write__array__visgen.html#a79cfed1b9d05d41c66727331ec4fa0e2',1,'stan::gm::write_array_visgen::operator()(const corr_matrix_var_decl &x) const '],['../structstan_1_1gm_1_1write__array__vars__visgen.html#ad601dd8e1b7c3294e9dbb779b7a64090',1,'stan::gm::write_array_vars_visgen::operator()(const nil &) const '],['../structstan_1_1gm_1_1write__array__vars__visgen.html#a4bdb9cfceafeff1f37c18f0a2d8b4262',1,'stan::gm::write_array_vars_visgen::operator()(const int_var_decl &x) const '],['../structstan_1_1gm_1_1write__array__vars__visgen.html#adef25be6d3bdb7365fb6f26aeddabe65',1,'stan::gm::write_array_vars_visgen::operator()(const double_var_decl &x) const '],['../structstan_1_1gm_1_1write__array__vars__visgen.html#a8b05bf8a27d5f0d495a7302bef516f6c',1,'stan::gm::write_array_vars_visgen::operator()(const vector_var_decl &x) const '],['../structstan_1_1gm_1_1write__array__vars__visgen.html#a049135667941289c42a3b081610ab298',1,'stan::gm::write_array_vars_visgen::operator()(const row_vector_var_decl &x) const '],['../structstan_1_1gm_1_1write__array__vars__visgen.html#aea55b2a06d469e5d499eef36190fd037',1,'stan::gm::write_array_vars_visgen::operator()(const matrix_var_decl &x) const '],['../structstan_1_1gm_1_1write__array__vars__visgen.html#ae62dfbbd8d1d79af6bbdfccbfc09d6bc',1,'stan::gm::write_array_vars_visgen::operator()(const unit_vector_var_decl &x) const '],['../structstan_1_1gm_1_1write__array__vars__visgen.html#ace51ff0942e94f73235fa37cbefab194',1,'stan::gm::write_array_vars_visgen::operator()(const simplex_var_decl &x) const '],['../structstan_1_1gm_1_1write__array__vars__visgen.html#af12814f9cf2f360f33c363d3492746eb',1,'stan::gm::write_array_vars_visgen::operator()(const ordered_var_decl &x) const '],['../structstan_1_1gm_1_1write__array__vars__visgen.html#af7fa42ced7c5d892234d8db022397754',1,'stan::gm::write_array_vars_visgen::operator()(const positive_ordered_var_decl &x) const '],['../structstan_1_1gm_1_1write__array__vars__visgen.html#a7ef33b812611b18bf7340cc5cf586dd5',1,'stan::gm::write_array_vars_visgen::operator()(const cholesky_factor_var_decl &x) const '],['../structstan_1_1gm_1_1write__array__vars__visgen.html#a66250932aff2ae2ffd3cff5d361f95b4',1,'stan::gm::write_array_vars_visgen::operator()(const cov_matrix_var_decl &x) const '],['../structstan_1_1gm_1_1write__array__vars__visgen.html#a5763e948b3e12feb9e988e11eeb4553a',1,'stan::gm::write_array_vars_visgen::operator()(const corr_matrix_var_decl &x) const '],['../structstan_1_1gm_1_1validate__expr__type2.html#a882be65b1df71e890016fb4f7751e962',1,'stan::gm::validate_expr_type2::operator()()'],['../structstan_1_1gm_1_1set__fun__type2.html#a3727191c07f903e90039d085047aec77',1,'stan::gm::set_fun_type2::operator()()'],['../structstan_1_1gm_1_1binary__op__expr.html#ae729ce9f535a2edbfe88a313d3f7184e',1,'stan::gm::binary_op_expr::operator()()'],['../structstan_1_1gm_1_1addition__expr.html#a6f511d62b60d4c5708c0dc9a5687809f',1,'stan::gm::addition_expr::operator()()'],['../structstan_1_1gm_1_1subtraction__expr.html#af01e91cfb196709e94cba69ca6055f48',1,'stan::gm::subtraction_expr::operator()()'],['../structstan_1_1gm_1_1add__conditional__condition.html#aace3227298368df282a3c6fc29dea385',1,'stan::gm::add_conditional_condition::operator()()'],['../structstan_1_1gm_1_1add__conditional__body.html#a329d5d20cbf88349147d98045ba2d79e',1,'stan::gm::add_conditional_body::operator()()'],['../structstan_1_1gm_1_1validate__assignment.html#afa6d6906c1128cadfdf4d041bc1bfcf0',1,'stan::gm::validate_assignment::operator()()'],['../structstan_1_1gm_1_1validate__sample.html#a77de03d8f8a44b98afa75e7fa02fe705',1,'stan::gm::validate_sample::operator()()'],['../structstan_1_1gm_1_1expression__as__statement.html#ad91df00b5b3c97d4ed401b0ac898f17c',1,'stan::gm::expression_as_statement::operator()()'],['../structstan_1_1gm_1_1unscope__locals.html#a5be53d7ab77a85c6002a787b8aa2dbe2',1,'stan::gm::unscope_locals::operator()()'],['../structstan_1_1gm_1_1add__while__condition.html#af1707344a4485a9844789de02036a99b',1,'stan::gm::add_while_condition::operator()()'],['../structstan_1_1gm_1_1add__while__body.html#a95c4e95049a6f5175ad6e6d862f1e02e',1,'stan::gm::add_while_body::operator()()'],['../structstan_1_1gm_1_1add__loop__identifier.html#a6b40d339f94aa76d22665c2f4328e095',1,'stan::gm::add_loop_identifier::operator()()'],['../structstan_1_1gm_1_1remove__loop__identifier.html#af7b8d2468ac908978b92fc852cbb0208',1,'stan::gm::remove_loop_identifier::operator()()'],['../structstan_1_1gm_1_1validate__int__expr2.html#a462cc8619e7c1454119a75fa019b4d51',1,'stan::gm::validate_int_expr2::operator()()'],['../structstan_1_1gm_1_1validate__allow__sample.html#a4e15d9514eb63e9ddefa8bbede4b0fb5',1,'stan::gm::validate_allow_sample::operator()()'],['../structstan_1_1gm_1_1set__fun__type.html#aa047855ac672fdda270a623cfe44f9dc',1,'stan::gm::set_fun_type::operator()()'],['../structstan_1_1gm_1_1set__fun__type__named.html#ae4a66b5e2003663c4d0651ccc9b22633',1,'stan::gm::set_fun_type_named::operator()()'],['../structstan_1_1gm_1_1multiplication__expr.html#a5a3418a174c704a06dc078189e1e75bf',1,'stan::gm::multiplication_expr::operator()()'],['../structstan_1_1gm_1_1division__expr.html#a727db3527c40866ff8dd2709959fcbbf',1,'stan::gm::division_expr::operator()()'],['../structstan_1_1gm_1_1left__division__expr.html#a78883f0a7a5cad2f9654189fd5d834cf',1,'stan::gm::left_division_expr::operator()()'],['../structstan_1_1gm_1_1elt__multiplication__expr.html#a1df3b42b009deca11a8e01a437a67798',1,'stan::gm::elt_multiplication_expr::operator()()'],['../structstan_1_1gm_1_1elt__division__expr.html#addc060e5b9609d1e16a8c749f8e81363',1,'stan::gm::elt_division_expr::operator()()'],['../structstan_1_1gm_1_1negate__expr.html#a75cef8d0a29e9cb72a9f80f4ad2f6403',1,'stan::gm::negate_expr::operator()()'],['../structstan_1_1gm_1_1logical__negate__expr.html#a1a428268ae11c49de22066e600e5ce9c',1,'stan::gm::logical_negate_expr::operator()()'],['../structstan_1_1gm_1_1transpose__expr.html#aeca6b173a3530e7e56029c3f95d8dbc9',1,'stan::gm::transpose_expr::operator()()'],['../structstan_1_1gm_1_1add__expression__dimss.html#ad1b37475cdfb437df9fdaa2ba13a3bcc',1,'stan::gm::add_expression_dimss::operator()()'],['../structstan_1_1gm_1_1set__var__type.html#a81e8e16e1f75675c8aa2e99a45230fdd',1,'stan::gm::set_var_type::operator()()'],['../structstan_1_1gm_1_1validate__int__expr3.html#ad00cc4a51aa05e4cac78c6da0c54755f',1,'stan::gm::validate_int_expr3::operator()()'],['../structstan_1_1gm_1_1validate__expr__type.html#a867deadb8d8aa863e91ba057584f88aa',1,'stan::gm::validate_expr_type::operator()()'],['../structstan_1_1model_1_1model__functional.html#a7de709dc8075a21aea22f1f8b508bfcc',1,'stan::model::model_functional::operator()()'],['../classstan_1_1optimization_1_1_model_adaptor.html#a6ef3bd561e81ae2cfdc96143aacd4fa7',1,'stan::optimization::ModelAdaptor::operator()(const Eigen::Matrix< double, Eigen::Dynamic, 1 > &x, double &f)'],['../classstan_1_1optimization_1_1_model_adaptor.html#adb0fdd3e2c65d765607c3f30ba16aec8',1,'stan::optimization::ModelAdaptor::operator()(const Eigen::Matrix< double, Eigen::Dynamic, 1 > &x, double &f, Eigen::Matrix< double, Eigen::Dynamic, 1 > &g)']]], + ['operator_2a',['operator*',['../classstan_1_1agrad_1_1var.html#ab9b31165b391c7db9e1b47f0573bc747',1,'stan::agrad::var::operator*()'],['../namespacestan_1_1agrad.html#ab98d09a4888ed80cc22ef9fbdd63c725',1,'stan::agrad::operator*(const var &a, const var &b)'],['../namespacestan_1_1agrad.html#acd3d5f35e32b3b80f294ae2581744963',1,'stan::agrad::operator*(const var &a, const double &b)'],['../namespacestan_1_1agrad.html#aaf70e0701de307a0228d8b26e2b03043',1,'stan::agrad::operator*(const double &a, const var &b)'],['../namespacestan_1_1agrad.html#a58030b052901596ec4978f651504619c',1,'stan::agrad::operator*(const fvar< T > &x1, const fvar< T > &x2)'],['../namespacestan_1_1agrad.html#a4e2bbe49f478f96a9fb2716c76523bea',1,'stan::agrad::operator*(const double x1, const fvar< T > &x2)'],['../namespacestan_1_1agrad.html#a31ef0939decd80327614cbf795f23b05',1,'stan::agrad::operator*(const fvar< T > &x1, const double x2)'],['../namespacestan_1_1agrad.html#a19282727c9f5d3b03a33fc3e1400ffe9',1,'stan::agrad::operator*(const var &a, const double b)'],['../namespacestan_1_1agrad.html#a8683cc0c4ae269dde86a7a75adff3962',1,'stan::agrad::operator*(const double a, const var &b)']]], + ['operator_2a_3d',['operator*=',['../classstan_1_1agrad_1_1var.html#a9a9aedf7da287c55b7ef482c452b5be7',1,'stan::agrad::var::operator*=(const var &b)'],['../classstan_1_1agrad_1_1var.html#a222ff48b7d30354f136787e634811809',1,'stan::agrad::var::operator*=(const double &b)'],['../structstan_1_1agrad_1_1fvar.html#a345b88c637ae96c0516354b6484347d2',1,'stan::agrad::fvar::operator*=(const fvar< T2 > &x2)'],['../structstan_1_1agrad_1_1fvar.html#a26a112d55140f52b3a5724794348459e',1,'stan::agrad::fvar::operator*=(const T2 &x2)'],['../classstan_1_1agrad_1_1var.html#a4ea7fa4896c40fce1c9d6cf2d59b695e',1,'stan::agrad::var::operator*=(const var &b)'],['../classstan_1_1agrad_1_1var.html#a724480f8a861f8f5430439da4765d1a4',1,'stan::agrad::var::operator*=(const double b)'],['../structstan_1_1gm_1_1expression.html#a2809197528eaa19de579ddb94927c399',1,'stan::gm::expression::operator*=()']]], + ['operator_2b',['operator+',['../namespacestan_1_1agrad.html#a3c56114bde6eda1fc7d8a2a86c7df5e0',1,'stan::agrad::operator+(const var &a)'],['../namespacestan_1_1agrad.html#a9b0bdcc1fdb32b8025983612faa4900d',1,'stan::agrad::operator+(const var &a, const var &b)'],['../namespacestan_1_1agrad.html#aeba6062298b3063bb259ee201d941bc6',1,'stan::agrad::operator+(const var &a, const double &b)'],['../namespacestan_1_1agrad.html#aba8668d340bca165895e64479728b8da',1,'stan::agrad::operator+(const double &a, const var &b)'],['../namespacestan_1_1agrad.html#a8bfe21c1bd8ab796527f2b74cf389469',1,'stan::agrad::operator+(const fvar< T > &x1, const fvar< T > &x2)'],['../namespacestan_1_1agrad.html#a952d610e660fc372f93fac76ede56096',1,'stan::agrad::operator+(const double x1, const fvar< T > &x2)'],['../namespacestan_1_1agrad.html#af8208f5ba8bb28ad10e61f7b374c84dd',1,'stan::agrad::operator+(const fvar< T > &x1, const double x2)'],['../namespacestan_1_1agrad.html#adf0933c87c5d700de971755f40979d2a',1,'stan::agrad::operator+(const var &a, const double b)'],['../namespacestan_1_1agrad.html#a71d87c889481dd165b69e5ae18afd358',1,'stan::agrad::operator+(const double a, const var &b)']]], + ['operator_2b_2b',['operator++',['../structstan_1_1agrad_1_1fvar.html#adb8af0c2332bd8fcc102eba6e16e5bc1',1,'stan::agrad::fvar::operator++()'],['../structstan_1_1agrad_1_1fvar.html#ac558947777c6867650377130fed604de',1,'stan::agrad::fvar::operator++(int)'],['../namespacestan_1_1agrad.html#ac3d5ee13c66c2eeef697c20567fb9fe3',1,'stan::agrad::operator++(var &a)'],['../namespacestan_1_1agrad.html#ae5bc7c4bde258ad0fc845b2aa2897a11',1,'stan::agrad::operator++(var &a, int)']]], + ['operator_2b_3d',['operator+=',['../classstan_1_1agrad_1_1var.html#a7aed84a14a5c7f34bddc0d5a17a2c77f',1,'stan::agrad::var::operator+=(const var &b)'],['../classstan_1_1agrad_1_1var.html#a64086c7c9362cf53e57551f8ed5add14',1,'stan::agrad::var::operator+=(const double &b)'],['../structstan_1_1agrad_1_1fvar.html#a42855e5405cb603222286c34d4bd1ffc',1,'stan::agrad::fvar::operator+=(const fvar< T2 > &x2)'],['../structstan_1_1agrad_1_1fvar.html#a0af6f5512f976604a5f7ea908cedccf5',1,'stan::agrad::fvar::operator+=(const T2 &x2)'],['../classstan_1_1agrad_1_1var.html#a8066e2b84e91f0993b63611d8ca9db4a',1,'stan::agrad::var::operator+=(const var &b)'],['../classstan_1_1agrad_1_1var.html#a1f61621b09c7d87facf17e63f036db57',1,'stan::agrad::var::operator+=(const double b)'],['../structstan_1_1gm_1_1expression.html#a80b6ae53326a5bc334b0b64574d4687e',1,'stan::gm::expression::operator+=()']]], + ['operator_2d',['operator-',['../namespacestan_1_1agrad.html#a32cdb534a0a3e4efb74ac57b240b2abd',1,'stan::agrad::operator-(const var &a)'],['../namespacestan_1_1agrad.html#a50db79b36e350ddadea93da21467bd2b',1,'stan::agrad::operator-(const var &a, const var &b)'],['../namespacestan_1_1agrad.html#a1a85fcc0258ec8c8f93e544c9099cc78',1,'stan::agrad::operator-(const var &a, const double &b)'],['../namespacestan_1_1agrad.html#a922d9be5b47d2964d681da023ce86252',1,'stan::agrad::operator-(const double &a, const var &b)'],['../namespacestan_1_1agrad.html#af03dcfffbcfab11eadf069f9e7549683',1,'stan::agrad::operator-(const fvar< T > &x1, const fvar< T > &x2)'],['../namespacestan_1_1agrad.html#aa503cf2df6453a29ea38e921c1f72702',1,'stan::agrad::operator-(const double x1, const fvar< T > &x2)'],['../namespacestan_1_1agrad.html#a3ad03eae992d5dd4475f4462cda0460c',1,'stan::agrad::operator-(const fvar< T > &x1, const double x2)'],['../namespacestan_1_1agrad.html#ab7ca680c6523576a2ffefabe1fce682b',1,'stan::agrad::operator-(const fvar< T > &x)'],['../namespacestan_1_1agrad.html#aab2ad74276bb5b689f6d3e4a3d68b588',1,'stan::agrad::operator-(const var &a, const double b)'],['../namespacestan_1_1agrad.html#a2f4fae66485d0711155ff06709d90d40',1,'stan::agrad::operator-(const double a, const var &b)']]], + ['operator_2d_2d',['operator--',['../structstan_1_1agrad_1_1fvar.html#a018ea15f734397c5b035d2b08292a1af',1,'stan::agrad::fvar::operator--()'],['../structstan_1_1agrad_1_1fvar.html#a4b67eb3587d853feb8d7ca14cea9d1d0',1,'stan::agrad::fvar::operator--(int)'],['../namespacestan_1_1agrad.html#afd628cbe961d30214e9599706cb9df3d',1,'stan::agrad::operator--(var &a)'],['../namespacestan_1_1agrad.html#a2c7866db3308cb99e1e6ebe3d276f805',1,'stan::agrad::operator--(var &a, int)']]], + ['operator_2d_3d',['operator-=',['../classstan_1_1agrad_1_1var.html#adc63a21e809772e4e1943dcde7d81501',1,'stan::agrad::var::operator-=(const var &b)'],['../classstan_1_1agrad_1_1var.html#af175a08753073e2b5cd0431df96f685e',1,'stan::agrad::var::operator-=(const double &b)'],['../structstan_1_1agrad_1_1fvar.html#acab2cd650a6ace2d2cbc919a2e295281',1,'stan::agrad::fvar::operator-=(const fvar< T2 > &x2)'],['../structstan_1_1agrad_1_1fvar.html#a9265544f8ff15013032381543e917321',1,'stan::agrad::fvar::operator-=(const T2 &x2)'],['../classstan_1_1agrad_1_1var.html#a7f0d2c15e16e20a61269259b7f7cc5b7',1,'stan::agrad::var::operator-=(const var &b)'],['../classstan_1_1agrad_1_1var.html#a27e309010cc293bfc7b0895010ea576e',1,'stan::agrad::var::operator-=(const double b)'],['../structstan_1_1gm_1_1expression.html#ab7fbe72fb912a2fa66c1084c69bfd1dd',1,'stan::gm::expression::operator-=()']]], + ['operator_2d_3e',['operator->',['../classstan_1_1agrad_1_1var.html#af706ab2096ce340463d8794edb603a22',1,'stan::agrad::var']]], + ['operator_2f',['operator/',['../namespacestan_1_1agrad.html#a7712039ced9aa4a7d848369b36a81832',1,'stan::agrad::operator/(const var &a, const var &b)'],['../namespacestan_1_1agrad.html#af02e91c7d6a2402c055905816ae914e7',1,'stan::agrad::operator/(const var &a, const double &b)'],['../namespacestan_1_1agrad.html#ac920e55ed730cdc2989729a7237f5975',1,'stan::agrad::operator/(const double &a, const var &b)'],['../namespacestan_1_1agrad.html#af4268a75b7456526175bcf5db4210ef4',1,'stan::agrad::operator/(const Eigen::Matrix< fvar< T >, R, C > &v, const fvar< T > &c)'],['../namespacestan_1_1agrad.html#a18ac8b46664850a5703fd3caa9c68c08',1,'stan::agrad::operator/(const Eigen::Matrix< fvar< T >, R, C > &v, const double c)'],['../namespacestan_1_1agrad.html#abc825eb3bf95f70a94e073eaaddff374',1,'stan::agrad::operator/(const Eigen::Matrix< double, R, C > &v, const fvar< T > &c)'],['../namespacestan_1_1agrad.html#a72c74ea31db523c28cef63c20b1a66ef',1,'stan::agrad::operator/(const fvar< T > &x1, const fvar< T > &x2)'],['../namespacestan_1_1agrad.html#a7e7e231514df7e0e61bb94dea9436b57',1,'stan::agrad::operator/(const fvar< T > &x1, const double x2)'],['../namespacestan_1_1agrad.html#a00027f1730fec7abb98522c809f4cf40',1,'stan::agrad::operator/(const double x1, const fvar< T > &x2)'],['../namespacestan_1_1agrad.html#acfdf2b1289c99bb87bc37e44dae5b3c4',1,'stan::agrad::operator/(const var &a, const double b)'],['../namespacestan_1_1agrad.html#aef6041bf907aa9f560f2902c96d9befb',1,'stan::agrad::operator/(const double a, const var &b)']]], + ['operator_2f_3d',['operator/=',['../classstan_1_1agrad_1_1var.html#aa006b46d2909a3924efd0275a57f85a9',1,'stan::agrad::var::operator/=(const var &b)'],['../classstan_1_1agrad_1_1var.html#ad2d16ef5b3e1dfda05252a41e80d2276',1,'stan::agrad::var::operator/=(const double &b)'],['../structstan_1_1agrad_1_1fvar.html#a51f4cc010b2c7c553c5ad138f53d2fd5',1,'stan::agrad::fvar::operator/=(const fvar< T2 > &x2)'],['../structstan_1_1agrad_1_1fvar.html#acd050be117d173a998ddc0f3f6e2d00d',1,'stan::agrad::fvar::operator/=(const T2 &x2)'],['../classstan_1_1agrad_1_1var.html#ae193444d7017bca48834761230b6cd76',1,'stan::agrad::var::operator/=(const var &b)'],['../classstan_1_1agrad_1_1var.html#a6bde2e6f35855e8455f3c9ec8bea97ee',1,'stan::agrad::var::operator/=(const double b)'],['../structstan_1_1gm_1_1expression.html#a83a58233b24992d4a4ec01114522df90',1,'stan::gm::expression::operator/=()']]], + ['operator_3c',['operator<',['../namespacestan_1_1agrad.html#a7ee2f26775300ee2e40be6815f68cc2f',1,'stan::agrad::operator<(const var &a, const var &b)'],['../namespacestan_1_1agrad.html#a6955eaac53f1f699cd00859bec37f035',1,'stan::agrad::operator<(const var &a, const double &b)'],['../namespacestan_1_1agrad.html#a30910779586484a4244b3730b9a6d7c7',1,'stan::agrad::operator<(const double &a, const var &b)'],['../namespacestan_1_1agrad.html#a46f6bae01b579578493c501932d6df19',1,'stan::agrad::operator<(const fvar< T > &x, double y)'],['../namespacestan_1_1agrad.html#a302261483eb474a1c2791a19a68efb89',1,'stan::agrad::operator<(double x, const fvar< T > &y)'],['../namespacestan_1_1agrad.html#abe5f505189008af63094d119f3e8f375',1,'stan::agrad::operator<(const fvar< T > &x, const fvar< T > &y)'],['../namespacestan_1_1agrad.html#ad3a4834d55bf56c24cc32d847f2c4116',1,'stan::agrad::operator<(const var &a, const double b)'],['../namespacestan_1_1agrad.html#a190ba1fcff502eab8db57971c2fee3c2',1,'stan::agrad::operator<(const double a, const var &b)']]], + ['operator_3c_3c',['operator<<',['../namespacestan_1_1gm.html#ae9c40c419ed4088b66443029e8359904',1,'stan::gm']]], + ['operator_3c_3d',['operator<=',['../namespacestan_1_1agrad.html#a16c687c4cda4039dc722cfbccb98a836',1,'stan::agrad::operator<=(const var &a, const var &b)'],['../namespacestan_1_1agrad.html#a7994ac18959dc8e5dfa2a2e184e6f844',1,'stan::agrad::operator<=(const var &a, const double &b)'],['../namespacestan_1_1agrad.html#a922f5b8418b94d72ad5751b057fa2a6f',1,'stan::agrad::operator<=(const double &a, const var &b)'],['../namespacestan_1_1agrad.html#a37a95747a6282483fd15682760013967',1,'stan::agrad::operator<=(const fvar< T > &x, const fvar< T > &y)'],['../namespacestan_1_1agrad.html#a85d1a3b82ccc2cdec61adbce358a23de',1,'stan::agrad::operator<=(const fvar< T > &x, double y)'],['../namespacestan_1_1agrad.html#a59152358a21913aa69c58e87fc895559',1,'stan::agrad::operator<=(double x, const fvar< T > &y)'],['../namespacestan_1_1agrad.html#ad79a6afe31a88499457cd316da3228f6',1,'stan::agrad::operator<=(const var &a, const double b)'],['../namespacestan_1_1agrad.html#a95038cb175ff8a78ae74260dad67762a',1,'stan::agrad::operator<=(const double a, const var &b)']]], + ['operator_3d',['operator=',['../structstan_1_1gm_1_1int__literal.html#a1e480a251d65ebd3b68eb0d88886918e',1,'stan::gm::int_literal::operator=()'],['../structstan_1_1gm_1_1double__literal.html#ac89f8c39a91a251fb0af83e2af876d3f',1,'stan::gm::double_literal::operator=()'],['../structstan_1_1gm_1_1array__literal.html#a944703d4016be32de3902eb090e78002',1,'stan::gm::array_literal::operator=()'],['../classstan_1_1mcmc_1_1ps__point.html#a6465e2b1c8c8abf56bd716fcb069be47',1,'stan::mcmc::ps_point::operator=()']]], + ['operator_3d_3d',['operator==',['../structstan_1_1gm_1_1expr__type.html#a40ff8512daac53614b78023e131f4638',1,'stan::gm::expr_type::operator==()'],['../namespacestan_1_1agrad.html#a830d82c706b521cee378eb7e8a0cd7b7',1,'stan::agrad::operator==(const var &a, const var &b)'],['../namespacestan_1_1agrad.html#a927bbd061c1f873a70aca58c803315e0',1,'stan::agrad::operator==(const var &a, const double &b)'],['../namespacestan_1_1agrad.html#a55d28b38ec68e94b1504f657bcfe0e07',1,'stan::agrad::operator==(const double &a, const var &b)'],['../namespacestan_1_1agrad.html#af7ac331f5be998e2ecfbcd7359a295e8',1,'stan::agrad::operator==(const fvar< T > &x, const fvar< T > &y)'],['../namespacestan_1_1agrad.html#a0e5426b1de61dd143a791ea9375ea1f3',1,'stan::agrad::operator==(const fvar< T > &x, double y)'],['../namespacestan_1_1agrad.html#aa935399fdfdb5cb9017062c403623897',1,'stan::agrad::operator==(double x, const fvar< T > &y)'],['../namespacestan_1_1agrad.html#a1188a11f7af64553356cad475e6d6fd7',1,'stan::agrad::operator==(const var &a, const double b)'],['../namespacestan_1_1agrad.html#adf03ce96aca2d91ebfd9082ddb08ab60',1,'stan::agrad::operator==(const double a, const var &b)']]], + ['operator_3e',['operator>',['../namespacestan_1_1agrad.html#ad712e7d5e7b6ac090a17367ce063ad12',1,'stan::agrad::operator>(const var &a, const var &b)'],['../namespacestan_1_1agrad.html#abb74b46284f1c5e4b878a63ee1400cb9',1,'stan::agrad::operator>(const var &a, const double &b)'],['../namespacestan_1_1agrad.html#af3baa98195c96dfda85e1d3e7b3dad18',1,'stan::agrad::operator>(const double &a, const var &b)'],['../namespacestan_1_1agrad.html#a5e161b7bc2dbcb9d990969ccb12499d9',1,'stan::agrad::operator>(const fvar< T > &x, const fvar< T > &y)'],['../namespacestan_1_1agrad.html#a50f810a2b10225f4aaabafb9e7e89054',1,'stan::agrad::operator>(const fvar< T > &x, double y)'],['../namespacestan_1_1agrad.html#ada1ccd3c3b7edb45aa02f9775e9a955d',1,'stan::agrad::operator>(double x, const fvar< T > &y)'],['../namespacestan_1_1agrad.html#a15ed77a2c9f81fb7293fdd4748a6ea53',1,'stan::agrad::operator>(const var &a, const double b)'],['../namespacestan_1_1agrad.html#a8c76a2c886c5a8dfd04a8db314b023dc',1,'stan::agrad::operator>(const double a, const var &b)']]], + ['operator_3e_3d',['operator>=',['../namespacestan_1_1agrad.html#a31cdf0b7a08d01a685d30822f9d395dc',1,'stan::agrad::operator>=(const var &a, const var &b)'],['../namespacestan_1_1agrad.html#aa5ec0b4f2ff8cc4c9119b9cc2a5d3c58',1,'stan::agrad::operator>=(const var &a, const double &b)'],['../namespacestan_1_1agrad.html#af841090352d0e1f31978afbf7e1469db',1,'stan::agrad::operator>=(const double &a, const var &b)'],['../namespacestan_1_1agrad.html#ac654b0ca4c217705ed1bff6503723405',1,'stan::agrad::operator>=(const fvar< T > &x, const fvar< T > &y)'],['../namespacestan_1_1agrad.html#a4edcfc2e7c89ac76c0c43f1d01b9edb1',1,'stan::agrad::operator>=(const fvar< T > &x, double y)'],['../namespacestan_1_1agrad.html#af90b0c11af13e7d31bab2b7429bec732',1,'stan::agrad::operator>=(double x, const fvar< T > &y)'],['../namespacestan_1_1agrad.html#a9907066c12b56235c233ec56e108b684',1,'stan::agrad::operator>=(const var &a, const double b)'],['../namespacestan_1_1agrad.html#a89e08d2dddf60454bbae9c3a7078d14a',1,'stan::agrad::operator>=(const double a, const var &b)']]], + ['operator_5b_5d',['operator[]',['../classstan_1_1agrad_1_1op__matrix__vari.html#a33373afd7da2f7adc9283b5e7b140868',1,'stan::agrad::op_matrix_vari::operator[]()'],['../classstan_1_1agrad_1_1op__vector__vari.html#a4ad5b26a8c5e46b57eec2e9622c13fbc',1,'stan::agrad::op_vector_vari::operator[]()'],['../classstan_1_1math_1_1seq__view.html#abdd1705b880895c4e32e917fad70fb0b',1,'stan::math::seq_view::operator[]()'],['../classstan_1_1math_1_1seq__view_3_01_t_00_01_eigen_1_1_matrix_3_01_s_00_01_eigen_1_1_dynamic_00_011_01_4_01_4.html#a6466225a392d75a98f0ae43c5f001820',1,'stan::math::seq_view< T, Eigen::Matrix< S, Eigen::Dynamic, 1 > >::operator[]()'],['../classstan_1_1math_1_1seq__view_3_01_t_00_01_eigen_1_1_matrix_3_01_s_00_011_00_01_eigen_1_1_dynamic_01_4_01_4.html#aafd342f1f6f9851fd8f8e3494b36068e',1,'stan::math::seq_view< T, Eigen::Matrix< S, 1, Eigen::Dynamic > >::operator[]()'],['../classstan_1_1math_1_1seq__view_3_01_t_00_01_eigen_1_1_matrix_3_01_s_00_01_eigen_1_1_dynamic_00_01_eigen_1_1_dynamic_01_4_01_4.html#ab45edf39aad64a4093db924b02322af9',1,'stan::math::seq_view< T, Eigen::Matrix< S, Eigen::Dynamic, Eigen::Dynamic > >::operator[]()'],['../classstan_1_1math_1_1seq__view_3_01_t_00_01std_1_1vector_3_01_s_01_4_01_4.html#acfe4d699397a114cabd8d970e569aac6',1,'stan::math::seq_view< T, std::vector< S > >::operator[]()'],['../classstan_1_1math_1_1seq__view_3_01_t_00_01std_1_1vector_3_01_t_01_4_01_4.html#afe1bd346e72ac6adc53826801a7e54f2',1,'stan::math::seq_view< T, std::vector< T > >::operator[]()'],['../classstan_1_1math_1_1seq__view_3_01_t_00_01std_1_1vector_3_01std_1_1vector_3_01_t_01_4_01_4_01_4.html#aa8d34d4dd171acbd81d642aea1b8b61e',1,'stan::math::seq_view< T, std::vector< std::vector< T > > >::operator[]()'],['../classstan_1_1math_1_1seq__view_3_01double_00_01std_1_1vector_3_01int_01_4_01_4.html#a05bbd23ec952656521365f99d575a64c',1,'stan::math::seq_view< double, std::vector< int > >::operator[]()'],['../classstan_1_1_vector_view.html#afa380e5d11746837925198eeb8669299',1,'stan::VectorView::operator[]()'],['../classstan_1_1_vector_view_3_01const_01_t_00_01is__array_00_01throw__if__accessed_01_4.html#a4ebd6fad997a99a0cb1ed71e4143befe',1,'stan::VectorView< const T, is_array, throw_if_accessed >::operator[]()'],['../classstan_1_1_vector_view_3_01const_01double_00_01false_00_01false_01_4.html#a2d4a632cfb7533c7ab183c8437b9433c',1,'stan::VectorView< const double, false, false >::operator[]()'],['../classstan_1_1_double_vector_view.html#a2d22664770b4a3061079683994cc5531',1,'stan::DoubleVectorView::operator[]()'],['../classstan_1_1_double_vector_view_3_01true_00_01false_01_4.html#adfc928699f9b1fdd936ff631ab68d405',1,'stan::DoubleVectorView< true, false >::operator[]()'],['../classstan_1_1_double_vector_view_3_01true_00_01true_01_4.html#a7b95c038ecbc5526605715fca51f6737',1,'stan::DoubleVectorView< true, true >::operator[]()']]], + ['ordered',['ordered',['../classstan_1_1io_1_1reader.html#ae5597679b7085f74c44ae623ef117410',1,'stan::io::reader']]], + ['ordered_5fconstrain',['ordered_constrain',['../classstan_1_1io_1_1reader.html#ae371520b9f4d28912092b43c40fdccb3',1,'stan::io::reader::ordered_constrain(size_t k)'],['../classstan_1_1io_1_1reader.html#a8e91154c913c5645c8a4ae474f1a6748',1,'stan::io::reader::ordered_constrain(size_t k, T &lp)'],['../namespacestan_1_1prob.html#a5b7b0a65348e29f0f018002a80ed035f',1,'stan::prob::ordered_constrain(const Eigen::Matrix< T, Eigen::Dynamic, 1 > &x)'],['../namespacestan_1_1prob.html#a8013ef2d8df4e964a99688d4d5b66b30',1,'stan::prob::ordered_constrain(const Eigen::Matrix< T, Eigen::Dynamic, 1 > &x, T &lp)']]], + ['ordered_5ffree',['ordered_free',['../namespacestan_1_1prob.html#a49254bbed7656ffce7d701755f35591a',1,'stan::prob']]], + ['ordered_5flogistic_5flog',['ordered_logistic_log',['../namespacestan_1_1prob.html#a08672b48d49723b22234418ea31725e9',1,'stan::prob::ordered_logistic_log(int y, const T_lambda &lambda, const Eigen::Matrix< T_cut, Eigen::Dynamic, 1 > &c)'],['../namespacestan_1_1prob.html#a5dd231c095c24f5c6b344b6b06e85802',1,'stan::prob::ordered_logistic_log(int y, const T_lambda &lambda, const Eigen::Matrix< T_cut, Eigen::Dynamic, 1 > &c)']]], + ['ordered_5flogistic_5frng',['ordered_logistic_rng',['../namespacestan_1_1prob.html#a5becd684e61c1e96447752b65c202465',1,'stan::prob']]], + ['ordered_5funconstrain',['ordered_unconstrain',['../classstan_1_1io_1_1writer.html#af9e8b0cc64f52fe8b893aa68b24efe28',1,'stan::io::writer']]], + ['ordered_5fvar_5fdecl',['ordered_var_decl',['../structstan_1_1gm_1_1ordered__var__decl.html#a245a2f9aa050ab85b5586f98a7fa890d',1,'stan::gm::ordered_var_decl::ordered_var_decl()'],['../structstan_1_1gm_1_1ordered__var__decl.html#a805bcb3c7b339fb728ee04a4b1bc3dff',1,'stan::gm::ordered_var_decl::ordered_var_decl(expression const &K, std::string const &name, std::vector< expression > const &dims)']]], + ['owens_5ft',['owens_t',['../namespacestan_1_1agrad.html#a6a34e8ac9ab34d8bd7309b914670f77f',1,'stan::agrad::owens_t(const fvar< T > &x1, const fvar< T > &x2)'],['../namespacestan_1_1agrad.html#ad7c9ae7ec1a20f802579797c3951846d',1,'stan::agrad::owens_t(const double x1, const fvar< T > &x2)'],['../namespacestan_1_1agrad.html#a9888ef51a909a957ca30b306cfd90beb',1,'stan::agrad::owens_t(const fvar< T > &x1, const double x2)'],['../namespacestan_1_1agrad.html#a4ffb11bd376c638b747a8be17548b021',1,'stan::agrad::owens_t(const var &h, const var &a)'],['../namespacestan_1_1agrad.html#af68b3a37d8fede3f6ab613cf4278b86c',1,'stan::agrad::owens_t(const var &h, const double &a)'],['../namespacestan_1_1agrad.html#a0e87f87799c9d0290d5c972494e4caea',1,'stan::agrad::owens_t(const double &h, const var &a)'],['../namespacestan_1_1math.html#a66a7e8ebefd11e5801aab51d6ed9c9d8',1,'stan::math::owens_t()']]] +]; diff --git a/doc/api/html/search/functions_70.html b/doc/api/html/search/functions_70.html new file mode 100644 index 00000000000..c62125ede7b --- /dev/null +++ b/doc/api/html/search/functions_70.html @@ -0,0 +1,25 @@ + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/doc/api/html/search/functions_70.js b/doc/api/html/search/functions_70.js new file mode 100644 index 00000000000..b90ddcc3bd7 --- /dev/null +++ b/doc/api/html/search/functions_70.js @@ -0,0 +1,80 @@ +var searchData= +[ + ['pad_5fhelp_5foption',['pad_help_option',['../namespacestan_1_1io.html#aefe8bb54168558ab08f140cb2886f1e3',1,'stan::io']]], + ['param_5fname',['param_name',['../classstan_1_1mcmc_1_1chains.html#a1205fef2f70da7bdc88d8ff140b5d19b',1,'stan::mcmc::chains']]], + ['param_5fnames',['param_names',['../classstan_1_1mcmc_1_1chains.html#a95881c6244f8c1a59de9dc1b2ada3fbe',1,'stan::mcmc::chains']]], + ['param_5frange_5fi',['param_range_i',['../classstan_1_1model_1_1prob__grad.html#ac0eefb4d3d667a368820f0e7d2fb847c',1,'stan::model::prob_grad']]], + ['params_5fr',['params_r',['../classstan_1_1optimization_1_1_b_f_g_s_line_search.html#a3668e57491999e53bc083fa9ce7be0c2',1,'stan::optimization::BFGSLineSearch::params_r()'],['../classstan_1_1optimization_1_1_nesterov_gradient.html#a8b9b14a7b025c2978785d4b289c03a87',1,'stan::optimization::NesterovGradient::params_r()']]], + ['pareto_5fccdf_5flog',['pareto_ccdf_log',['../namespacestan_1_1prob.html#adbbe4b2736aa52b527690320f589f444',1,'stan::prob']]], + ['pareto_5fcdf',['pareto_cdf',['../namespacestan_1_1prob.html#a7f3bb39af8cf343288bc03b08d4995c1',1,'stan::prob']]], + ['pareto_5fcdf_5flog',['pareto_cdf_log',['../namespacestan_1_1prob.html#a355fe2fac0b8f75ba9152a5641584db0',1,'stan::prob']]], + ['pareto_5flog',['pareto_log',['../namespacestan_1_1prob.html#a6f227b32b40751c0969ed9208e53f250',1,'stan::prob::pareto_log(const T_y &y, const T_scale &y_min, const T_shape &alpha)'],['../namespacestan_1_1prob.html#ae76190b63d49cd29c4cf6cec4e530d2c',1,'stan::prob::pareto_log(const T_y &y, const T_scale &y_min, const T_shape &alpha)']]], + ['pareto_5frng',['pareto_rng',['../namespacestan_1_1prob.html#a28f8c3e807edaa26151a701410dbe540',1,'stan::prob']]], + ['parse',['parse',['../classstan_1_1io_1_1stan__csv__reader.html#a113f6a5169758e1c03370b0156f926e3',1,'stan::io::stan_csv_reader::parse()'],['../namespacestan_1_1gm.html#a027bc5ebd84646c7ce8fb6128e33dae8',1,'stan::gm::parse()']]], + ['parse_5fargs',['parse_args',['../classstan_1_1gm_1_1argument.html#ab89f5fe38e4a01cd098d5c38b25b63bd',1,'stan::gm::argument::parse_args()'],['../classstan_1_1gm_1_1argument__parser.html#acc91054d8cad8ed7b123bfc008589f91',1,'stan::gm::argument_parser::parse_args()'],['../classstan_1_1gm_1_1categorical__argument.html#aa5fcc67aed6fecfb8b1b4b430fbe8f9e',1,'stan::gm::categorical_argument::parse_args()'],['../classstan_1_1gm_1_1list__argument.html#a70d41fb22dbc0d4b7be35ad12ee28cd8',1,'stan::gm::list_argument::parse_args()'],['../classstan_1_1gm_1_1singleton__argument.html#a6ae2898ccb341e201a3f70af8d63b34f',1,'stan::gm::singleton_argument::parse_args()'],['../classstan_1_1gm_1_1unvalued__argument.html#a43ec298199e879d2254b0b22a07932fd',1,'stan::gm::unvalued_argument::parse_args()']]], + ['partial_5fderivative',['partial_derivative',['../namespacestan_1_1agrad.html#ad8a49a8b8a5b06f4053c40cb64a1fe48',1,'stan::agrad']]], + ['partials_5fvari',['partials_vari',['../classstan_1_1agrad_1_1partials__vari.html#a8c03a1f677444ee503551cc9cc718467',1,'stan::agrad::partials_vari']]], + ['phi',['phi',['../classstan_1_1mcmc_1_1base__hamiltonian.html#a4daa5d6148f56985b92397eb637868d8',1,'stan::mcmc::base_hamiltonian::phi()'],['../classstan_1_1mcmc_1_1dense__e__metric.html#a132d41ed5cea3b3f4e83f4d27f6e0984',1,'stan::mcmc::dense_e_metric::phi()'],['../classstan_1_1mcmc_1_1diag__e__metric.html#aab16db232dd37b1227032249d01dd0b5',1,'stan::mcmc::diag_e_metric::phi()'],['../classstan_1_1mcmc_1_1unit__e__metric.html#af866a9fc23c184997591e3377ad6e2bb',1,'stan::mcmc::unit_e_metric::phi()'],['../namespacestan_1_1agrad.html#a310443649bed5c3a85c01ee0cb5a8499',1,'stan::agrad::Phi(const fvar< T > &x)'],['../namespacestan_1_1agrad.html#aab4d19226597a86f74257bde4f457521',1,'stan::agrad::Phi(const stan::agrad::var &a)'],['../namespacestan_1_1math.html#ac85644bbd92359d699f374adea62c643',1,'stan::math::Phi()']]], + ['phi_5fapprox',['Phi_approx',['../namespacestan_1_1agrad.html#a8332749395cd428484eb176964e28052',1,'stan::agrad::Phi_approx()'],['../namespacestan_1_1math.html#a6cf4bf2074175fd7bcde43f9f94e4d16',1,'stan::math::Phi_approx()']]], + ['pi',['pi',['../namespacestan_1_1math.html#aa2ffd66726e0532160e16e6b48d6f428',1,'stan::math']]], + ['poisson_5fccdf_5flog',['poisson_ccdf_log',['../namespacestan_1_1prob.html#a47e7fb827ea3efb81744f00ae02d3c8c',1,'stan::prob']]], + ['poisson_5fcdf',['poisson_cdf',['../namespacestan_1_1prob.html#a493a94836898c1c7daeefc66f76f3bcb',1,'stan::prob']]], + ['poisson_5fcdf_5flog',['poisson_cdf_log',['../namespacestan_1_1prob.html#a4bcc9d28c6419db6908062a120203225',1,'stan::prob']]], + ['poisson_5flog',['poisson_log',['../namespacestan_1_1prob.html#a4af491958f18e73de79a50f0eeab5cbf',1,'stan::prob::poisson_log(const T_n &n, const T_rate &lambda)'],['../namespacestan_1_1prob.html#a4c14df398fd68d83f82e93d7cf012e88',1,'stan::prob::poisson_log(const T_n &n, const T_rate &lambda)']]], + ['poisson_5flog_5flog',['poisson_log_log',['../namespacestan_1_1prob.html#a37ad053fe5e90d0886876e8be27e57f5',1,'stan::prob::poisson_log_log(const T_n &n, const T_log_rate &alpha)'],['../namespacestan_1_1prob.html#a4e7496b229fa8eb51083e449cfd20704',1,'stan::prob::poisson_log_log(const T_n &n, const T_log_rate &alpha)']]], + ['poisson_5frng',['poisson_rng',['../namespacestan_1_1prob.html#ae76f4412a22e18c1aacf098ab6c41dc5',1,'stan::prob']]], + ['positive_5fconstrain',['positive_constrain',['../namespacestan_1_1prob.html#a9cb1d75e59f02fa90c1052b403012dc8',1,'stan::prob::positive_constrain(const T x)'],['../namespacestan_1_1prob.html#a2ee662d6ef96688a59a873ef6e41a461',1,'stan::prob::positive_constrain(const T x, T &lp)']]], + ['positive_5ffree',['positive_free',['../namespacestan_1_1prob.html#af8aecbd34195ffe481fb331d62c7b9d5',1,'stan::prob']]], + ['positive_5finfinity',['positive_infinity',['../namespacestan_1_1math.html#a34675a70d3df614d88d33ddbdd49b49a',1,'stan::math']]], + ['positive_5fordered',['positive_ordered',['../classstan_1_1io_1_1reader.html#ac3f49da1bc5719a4cd6da4b35f488b34',1,'stan::io::reader']]], + ['positive_5fordered_5fconstrain',['positive_ordered_constrain',['../classstan_1_1io_1_1reader.html#aedeee305b5de15af5e1e296a07649dc2',1,'stan::io::reader::positive_ordered_constrain(size_t k)'],['../classstan_1_1io_1_1reader.html#ad2794458867712e2e7dd40674b8e2196',1,'stan::io::reader::positive_ordered_constrain(size_t k, T &lp)'],['../namespacestan_1_1prob.html#a264b000ea11a127f82b2a635c37af760',1,'stan::prob::positive_ordered_constrain(const Eigen::Matrix< T, Eigen::Dynamic, 1 > &x)'],['../namespacestan_1_1prob.html#ac046e29dc1e72c04cad85faf7884b1e8',1,'stan::prob::positive_ordered_constrain(const Eigen::Matrix< T, Eigen::Dynamic, 1 > &x, T &lp)']]], + ['positive_5fordered_5ffree',['positive_ordered_free',['../namespacestan_1_1prob.html#aed117c56ae59674e81e38faadf423a4d',1,'stan::prob']]], + ['positive_5fordered_5funconstrain',['positive_ordered_unconstrain',['../classstan_1_1io_1_1writer.html#adf62c05a81fce5b27e1a2bdcd2eb51f3',1,'stan::io::writer']]], + ['positive_5fordered_5fvar_5fdecl',['positive_ordered_var_decl',['../structstan_1_1gm_1_1positive__ordered__var__decl.html#af60da77bab73766c34a6322d0c75d129',1,'stan::gm::positive_ordered_var_decl::positive_ordered_var_decl()'],['../structstan_1_1gm_1_1positive__ordered__var__decl.html#aa92b00bd4b03fa2192bdecbc3c816539',1,'stan::gm::positive_ordered_var_decl::positive_ordered_var_decl(expression const &K, std::string const &name, std::vector< expression > const &dims)']]], + ['pow',['pow',['../namespacestan_1_1agrad.html#ab1f104b0302a07417e72b4dbae3fc74c',1,'stan::agrad::pow(const var &base, const var &exponent)'],['../namespacestan_1_1agrad.html#abff57b6f6ebb58545a7e8d4a0c05611d',1,'stan::agrad::pow(const var &base, const double &exponent)'],['../namespacestan_1_1agrad.html#a8e4a959251353750a1656804b46507fd',1,'stan::agrad::pow(const double &base, const var &exponent)'],['../namespacestan_1_1agrad.html#a2d8fddd3123eb3574ff8e06d4fc7248d',1,'stan::agrad::pow(const fvar< T > &x1, const fvar< T > &x2)'],['../namespacestan_1_1agrad.html#ace3246b2d3ac1a77d9f4a0f8974960b8',1,'stan::agrad::pow(const double x1, const fvar< T > &x2)'],['../namespacestan_1_1agrad.html#a25f02a3133f34b96d74727823e21d70b',1,'stan::agrad::pow(const fvar< T > &x1, const double x2)'],['../namespacestan_1_1agrad.html#add7765fa6394e825bd26a69f84218193',1,'stan::agrad::pow(const var &base, const double exponent)'],['../namespacestan_1_1agrad.html#acd1d27b770b1609c7f161ed57c4621ac',1,'stan::agrad::pow(const double base, const var &exponent)']]], + ['precomp_5fv_5fvari',['precomp_v_vari',['../classstan_1_1agrad_1_1precomp__v__vari.html#a3ca5c79bf568105418d1b0048a96967f',1,'stan::agrad::precomp_v_vari']]], + ['precomputed_5fgradients',['precomputed_gradients',['../namespacestan_1_1agrad.html#aaf702f5ec3f90079697f2b5e5e2fc9d1',1,'stan::agrad']]], + ['precomputed_5fgradients_5fvari',['precomputed_gradients_vari',['../classstan_1_1agrad_1_1precomputed__gradients__vari.html#a21523b50b50acccf8abe38c92f654705',1,'stan::agrad::precomputed_gradients_vari']]], + ['prev_5ff',['prev_f',['../classstan_1_1optimization_1_1_b_f_g_s_minimizer.html#ab29933c9bf9263b7b165b589c0e1aba3',1,'stan::optimization::BFGSMinimizer']]], + ['prev_5fg',['prev_g',['../classstan_1_1optimization_1_1_b_f_g_s_minimizer.html#a846398bc345d84bab66dc1f1df9e95e0',1,'stan::optimization::BFGSMinimizer']]], + ['prev_5fs',['prev_s',['../classstan_1_1optimization_1_1_b_f_g_s_minimizer.html#a902e16cc988e9ca31cace95dea86dfb7',1,'stan::optimization::BFGSMinimizer']]], + ['prev_5fstep_5fsize',['prev_step_size',['../classstan_1_1optimization_1_1_b_f_g_s_minimizer.html#a5fe16e6f70fed6e1911fe856cd52476e',1,'stan::optimization::BFGSMinimizer']]], + ['prev_5fx',['prev_x',['../classstan_1_1optimization_1_1_b_f_g_s_minimizer.html#a000b87bcf59d279ba44efec85f971078',1,'stan::optimization::BFGSMinimizer']]], + ['print',['print',['../classstan_1_1gm_1_1argument.html#a11317e60b39f5d6bc5b58d8631ee2f11',1,'stan::gm::argument::print()'],['../classstan_1_1gm_1_1argument__parser.html#a80aa8bc37aa78aab3338a84ed8d198bc',1,'stan::gm::argument_parser::print()'],['../classstan_1_1gm_1_1categorical__argument.html#a55cf7cc7f496634ee3afe9126861f135',1,'stan::gm::categorical_argument::print()'],['../classstan_1_1gm_1_1list__argument.html#aeb216deba3fff79b8be0bbb45a5303bb',1,'stan::gm::list_argument::print()'],['../classstan_1_1gm_1_1unvalued__argument.html#a5cb68a5f95b5c0b17237e985309f347c',1,'stan::gm::unvalued_argument::print()'],['../classstan_1_1gm_1_1valued__argument.html#aac8d5773b84682e2776f232e5f7bc199',1,'stan::gm::valued_argument::print()'],['../classstan_1_1io_1_1cmd__line.html#a7b567a1d5ff8fbfd102541ff7165f0a8',1,'stan::io::cmd_line::print()']]], + ['print_5fadapt_5ffinish',['print_adapt_finish',['../classstan_1_1io_1_1mcmc__writer.html#a19e50100237ae6ceedb36f3485db0a98',1,'stan::io::mcmc_writer::print_adapt_finish(stan::mcmc::base_mcmc *sampler, std::ostream *stream)'],['../classstan_1_1io_1_1mcmc__writer.html#a8e38711ae1d5cb3562d739e65a26a672',1,'stan::io::mcmc_writer::print_adapt_finish(stan::mcmc::base_mcmc *sampler)']]], + ['print_5fdiagnostic_5fnames',['print_diagnostic_names',['../classstan_1_1io_1_1mcmc__writer.html#a92e6f182bccdd993e73f751e5aafd7e9',1,'stan::io::mcmc_writer']]], + ['print_5fdiagnostic_5fparams',['print_diagnostic_params',['../classstan_1_1io_1_1mcmc__writer.html#a611c78b4786bb2a649bbaa660350dc35',1,'stan::io::mcmc_writer']]], + ['print_5fhelp',['print_help',['../classstan_1_1gm_1_1argument.html#aa2e3ed12ca3904af93b24c42f8a008ff',1,'stan::gm::argument::print_help()'],['../classstan_1_1gm_1_1argument__parser.html#a9ab402e181e3de508c3a7b594cb67960',1,'stan::gm::argument_parser::print_help()'],['../classstan_1_1gm_1_1categorical__argument.html#a6d8744329f8af88ec15747b57851bc67',1,'stan::gm::categorical_argument::print_help()'],['../classstan_1_1gm_1_1list__argument.html#a55d7f8d70a85d02895446acc7e9402ee',1,'stan::gm::list_argument::print_help()'],['../classstan_1_1gm_1_1unvalued__argument.html#a97c066f9a95356069ff6923d483ea03b',1,'stan::gm::unvalued_argument::print_help()'],['../classstan_1_1gm_1_1valued__argument.html#a67c2fcf60e605b17de08ef051e54876c',1,'stan::gm::valued_argument::print_help()']]], + ['print_5fhelp_5fhelper',['print_help_helper',['../namespacestan_1_1io.html#a6a7173ea51d2f2c2dc710d3a846fc732',1,'stan::io']]], + ['print_5fhelp_5foption',['print_help_option',['../namespacestan_1_1io.html#a0b47261532cf7c027e939aca02088c06',1,'stan::io']]], + ['print_5fprogress',['print_progress',['../namespacestan_1_1gm.html#a36c90a4a1e6a4833c1e3a12a964f31dc',1,'stan::gm']]], + ['print_5fquoted_5fexpression',['print_quoted_expression',['../namespacestan_1_1gm.html#a53960511e1fa7ae0e66d681f3055f199',1,'stan::gm']]], + ['print_5fsample_5fnames',['print_sample_names',['../classstan_1_1io_1_1mcmc__writer.html#a4ff21af4911d312b84f3ad955c6be1f7',1,'stan::io::mcmc_writer']]], + ['print_5fsample_5fparams',['print_sample_params',['../classstan_1_1io_1_1mcmc__writer.html#a1141fad60b8e8587b5f84ded115a870f',1,'stan::io::mcmc_writer']]], + ['print_5fstack',['print_stack',['../namespacestan_1_1agrad.html#a77de304bacc69535fb9a5ccd52454219',1,'stan::agrad']]], + ['print_5fstanc_5fhelp',['print_stanc_help',['../stanc__helper_8hpp.html#ab8ff534ebd7aa89be78b2b9e65f5f33a',1,'stanc_helper.hpp']]], + ['print_5fstatement',['print_statement',['../structstan_1_1gm_1_1print__statement.html#aeebe03d9212e3ddbe4fabdaf4873a466',1,'stan::gm::print_statement::print_statement()'],['../structstan_1_1gm_1_1print__statement.html#ab4522e7d5640848cebed9fd2509bfd32',1,'stan::gm::print_statement::print_statement(const std::vector< printable > &printables)']]], + ['print_5fstring_5fliteral',['print_string_literal',['../namespacestan_1_1gm.html#ab0047255699c74937f85d6fc52a25cb7',1,'stan::gm']]], + ['print_5ftiming',['print_timing',['../classstan_1_1io_1_1mcmc__writer.html#a628eb2bcaf467470d81f9c66e264750c',1,'stan::io::mcmc_writer::print_timing(double warmDeltaT, double sampleDeltaT, std::ostream *stream, const std::string &prefix="")'],['../classstan_1_1io_1_1mcmc__writer.html#a18d3702721db48c5a6a6ae0f693988fe',1,'stan::io::mcmc_writer::print_timing(double warmDeltaT, double sampleDeltaT)']]], + ['print_5fusage',['print_usage',['../classstan_1_1gm_1_1argument__parser.html#aab87bcb3b493725f33fe83d51a402f92',1,'stan::gm::argument_parser::print_usage()'],['../print_8hpp.html#ae5ad5cbeccaedc03a48d3c7eaa803e79',1,'print_usage(): print.hpp']]], + ['print_5fvalid',['print_valid',['../classstan_1_1gm_1_1list__argument.html#aec1358b17e4ab6e88093d9601bd574ad',1,'stan::gm::list_argument::print_valid()'],['../classstan_1_1gm_1_1singleton__argument.html#a8b1ec553f2faad91f393a16301f283b7',1,'stan::gm::singleton_argument::print_valid()'],['../classstan_1_1gm_1_1valued__argument.html#a71e5e9f18b38112a0f37e631e06479c2',1,'stan::gm::valued_argument::print_valid()']]], + ['print_5fvalue',['print_value',['../classstan_1_1gm_1_1list__argument.html#a7fe07f7eb68fcbe07902f275c36a9de7',1,'stan::gm::list_argument::print_value()'],['../classstan_1_1gm_1_1singleton__argument.html#a314ff92f87549d7b79966e5ff0148f27',1,'stan::gm::singleton_argument::print_value()'],['../classstan_1_1gm_1_1valued__argument.html#a3d7db8f03b459a944745799cb17fbb22',1,'stan::gm::valued_argument::print_value()']]], + ['print_5fvar_5forigin',['print_var_origin',['../namespacestan_1_1gm.html#afbacd22142d44e8f79d40a512441c060',1,'stan::gm']]], + ['print_5fversion',['print_version',['../stanc__helper_8hpp.html#a89aadce7a620baad44661f64650a2c57',1,'stanc_helper.hpp']]], + ['printable',['printable',['../structstan_1_1gm_1_1printable.html#a08d5587f674f2bcea656dfc21b4368a7',1,'stan::gm::printable::printable()'],['../structstan_1_1gm_1_1printable.html#a698c3a1a3e88fe55ef803940688f2fe7',1,'stan::gm::printable::printable(const expression &expression)'],['../structstan_1_1gm_1_1printable.html#aa88ce12741897574e993ddf73630a2dc',1,'stan::gm::printable::printable(const std::string &msg)'],['../structstan_1_1gm_1_1printable.html#ab6c9efb0d66476e95420d0d0a9a34971',1,'stan::gm::printable::printable(const printable_t &printable)'],['../structstan_1_1gm_1_1printable.html#a73fd1eca794d1abeedf35458c1298fcc',1,'stan::gm::printable::printable(const printable &printable)']]], + ['printable_5fvisgen',['printable_visgen',['../structstan_1_1gm_1_1printable__visgen.html#a07ac177e70ed67abf0a8c104ae00c12b',1,'stan::gm::printable_visgen']]], + ['prob',['prob',['../classstan_1_1io_1_1reader.html#ad57e12e95a36df2d9448f6123e3d2cfa',1,'stan::io::reader']]], + ['prob_5fconstrain',['prob_constrain',['../classstan_1_1io_1_1reader.html#a2d999e486addc7652b2be90365b89bc4',1,'stan::io::reader::prob_constrain()'],['../classstan_1_1io_1_1reader.html#a07a0565ad1ff42fe678bcb51ed748455',1,'stan::io::reader::prob_constrain(T &lp)'],['../namespacestan_1_1prob.html#a675a89a2298e205693a1291bff9e8517',1,'stan::prob::prob_constrain(const T x)'],['../namespacestan_1_1prob.html#a5c2e4977a32258e859e18c3d93ff7fb2',1,'stan::prob::prob_constrain(const T x, T &lp)']]], + ['prob_5ffree',['prob_free',['../namespacestan_1_1prob.html#a6df28f004649a2e2453b2dc068dce763',1,'stan::prob']]], + ['prob_5fgrad',['prob_grad',['../classstan_1_1model_1_1prob__grad.html#a8b51f2731af4391fb46981ee6d65deb6',1,'stan::model::prob_grad::prob_grad(size_t num_params_r)'],['../classstan_1_1model_1_1prob__grad.html#a879682609a70983fde0ac281a6a3c5d0',1,'stan::model::prob_grad::prob_grad(size_t num_params_r, std::vector< std::pair< int, int > > &param_ranges_i)']]], + ['prob_5funconstrain',['prob_unconstrain',['../classstan_1_1io_1_1writer.html#a320165b59bc22f73db4898d4d4a5a7e1',1,'stan::io::writer']]], + ['probe_5fargs',['probe_args',['../classstan_1_1gm_1_1argument.html#a1d9fabf656c50a0e5bc3d5d47ca091aa',1,'stan::gm::argument::probe_args()'],['../classstan_1_1gm_1_1argument__probe.html#a4754d08a83d1bdf23e18ceb1b16dc26a',1,'stan::gm::argument_probe::probe_args()'],['../classstan_1_1gm_1_1categorical__argument.html#a5d662cc0b84b02e3b3622a0eeec02bf7',1,'stan::gm::categorical_argument::probe_args()'],['../classstan_1_1gm_1_1list__argument.html#a0ffea05532b87732f82f2099e189306e',1,'stan::gm::list_argument::probe_args()'],['../classstan_1_1gm_1_1singleton__argument.html#aaf5dc642547b460e7df60fd9a1e3a025',1,'stan::gm::singleton_argument::probe_args()']]], + ['prod',['prod',['../namespacestan_1_1math.html#a1649a895ec6e79097d5645a3f8b8a1e6',1,'stan::math::prod(const std::vector< T > &v)'],['../namespacestan_1_1math.html#ad7082de8742d87f7a0fa0842207341c9',1,'stan::math::prod(const Eigen::Matrix< T, R, C > &v)']]], + ['program',['program',['../structstan_1_1gm_1_1program.html#a3bdfcb0bc8822d6edd2253bda7dcbfdb',1,'stan::gm::program::program()'],['../structstan_1_1gm_1_1program.html#aa11648de93a4e6496c0cfe7850134436',1,'stan::gm::program::program(const std::vector< var_decl > &data_decl, const std::pair< std::vector< var_decl >, std::vector< statement > > &derived_data_decl, const std::vector< var_decl > &parameter_decl, const std::pair< std::vector< var_decl >, std::vector< statement > > &derived_decl, const statement &st, const std::pair< std::vector< var_decl >, std::vector< statement > > &generated_decl)']]], + ['program_5fgrammar',['program_grammar',['../structstan_1_1gm_1_1program__grammar.html#a37628310038c1d41ac858edc87763f6e',1,'stan::gm::program_grammar']]], + ['promote',['promote',['../structstan_1_1math_1_1promoter.html#ab3df6e7131a09943826d1b995142d7d6',1,'stan::math::promoter::promote()'],['../structstan_1_1math_1_1promoter_3_01_t_00_01_t_01_4.html#ac8db3f3f3410059f5cae51383f1b38c2',1,'stan::math::promoter< T, T >::promote()'],['../structstan_1_1math_1_1promoter_3_01std_1_1vector_3_01_f_01_4_00_01std_1_1vector_3_01_t_01_4_01_4.html#a357d5eb63ba812437c51640670cef745',1,'stan::math::promoter< std::vector< F >, std::vector< T > >::promote()'],['../structstan_1_1math_1_1promoter_3_01std_1_1vector_3_01_t_01_4_00_01std_1_1vector_3_01_t_01_4_01_4.html#adb1706254fcd6734bf986e2cd01b093f',1,'stan::math::promoter< std::vector< T >, std::vector< T > >::promote()'],['../structstan_1_1math_1_1promoter_3_01_eigen_1_1_matrix_3_01_f_00_01_r_00_01_c_01_4_00_01_eigen_1_142b48fda94601374e41a81325f3f7b84.html#a9964d13b9f2f05efca2b21ac165210d8',1,'stan::math::promoter< Eigen::Matrix< F, R, C >, Eigen::Matrix< T, R, C > >::promote()'],['../structstan_1_1math_1_1promoter_3_01_eigen_1_1_matrix_3_01_t_00_01_r_00_01_c_01_4_00_01_eigen_1_12d7fadf0560f1f2f3abc5388b7666f9c.html#a525fc8cb91f5c4c22195cdb004b1eb0f',1,'stan::math::promoter< Eigen::Matrix< T, R, C >, Eigen::Matrix< T, R, C > >::promote()']]], + ['promote_5fcommon',['promote_common',['../namespacestan_1_1math.html#a91458631115a8d1cf29298431f745556',1,'stan::math']]], + ['promote_5fprimitive',['promote_primitive',['../namespacestan_1_1gm.html#a6ca8ea09cf26b1fdd7c5e31c8febd8d9',1,'stan::gm::promote_primitive(const expr_type &et)'],['../namespacestan_1_1gm.html#a08ffae837e524e7ee4ede3cc51c7a2fb',1,'stan::gm::promote_primitive(const expr_type &et1, const expr_type &et2)']]], + ['promote_5fto',['promote_to',['../structstan_1_1math_1_1promoter.html#a892e350b17a5930b9de4a9ff05eddc39',1,'stan::math::promoter::promote_to()'],['../structstan_1_1math_1_1promoter_3_01_t_00_01_t_01_4.html#a108a1ffe4c0560f0c0b384270ea801f1',1,'stan::math::promoter< T, T >::promote_to()'],['../structstan_1_1math_1_1promoter_3_01std_1_1vector_3_01_f_01_4_00_01std_1_1vector_3_01_t_01_4_01_4.html#a3da744179c9bbe7fe2ac326a4dcba352',1,'stan::math::promoter< std::vector< F >, std::vector< T > >::promote_to()'],['../structstan_1_1math_1_1promoter_3_01std_1_1vector_3_01_t_01_4_00_01std_1_1vector_3_01_t_01_4_01_4.html#a099437577ccd004d58c5b2ee3e5acf06',1,'stan::math::promoter< std::vector< T >, std::vector< T > >::promote_to()'],['../structstan_1_1math_1_1promoter_3_01_eigen_1_1_matrix_3_01_f_00_01_r_00_01_c_01_4_00_01_eigen_1_142b48fda94601374e41a81325f3f7b84.html#a7ed5c4e3899aca0cb2ed4cea530807af',1,'stan::math::promoter< Eigen::Matrix< F, R, C >, Eigen::Matrix< T, R, C > >::promote_to()'],['../structstan_1_1math_1_1promoter_3_01_eigen_1_1_matrix_3_01_t_00_01_r_00_01_c_01_4_00_01_eigen_1_12d7fadf0560f1f2f3abc5388b7666f9c.html#a46f61632d1bdeede4431d730b4251d37',1,'stan::math::promoter< Eigen::Matrix< T, R, C >, Eigen::Matrix< T, R, C > >::promote_to()']]], + ['ps_5fpoint',['ps_point',['../classstan_1_1mcmc_1_1ps__point.html#ab3577ab2d8d6109485e03e893e770654',1,'stan::mcmc::ps_point::ps_point(int n)'],['../classstan_1_1mcmc_1_1ps__point.html#aa31c2f392681f074461372c98f76b7d0',1,'stan::mcmc::ps_point::ps_point(const ps_point &z)']]] +]; diff --git a/doc/api/html/search/functions_71.html b/doc/api/html/search/functions_71.html new file mode 100644 index 00000000000..af909d4a26b --- /dev/null +++ b/doc/api/html/search/functions_71.html @@ -0,0 +1,25 @@ + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/doc/api/html/search/functions_71.js b/doc/api/html/search/functions_71.js new file mode 100644 index 00000000000..e4329330ede --- /dev/null +++ b/doc/api/html/search/functions_71.js @@ -0,0 +1,8 @@ +var searchData= +[ + ['quad_5fform',['quad_form',['../namespacestan_1_1agrad.html#a12051c57c37d841f90b64d18d18b3572',1,'stan::agrad::quad_form(const Eigen::Matrix< TA, RA, CA > &A, const Eigen::Matrix< TB, RB, CB > &B)'],['../namespacestan_1_1agrad.html#ad10e001e4f70e7c20a0d0e4fc9ad6e45',1,'stan::agrad::quad_form(const Eigen::Matrix< TA, RA, CA > &A, const Eigen::Matrix< TB, RB, 1 > &B)'],['../namespacestan_1_1math.html#a376cbe31002df6a319da4caaaeb8598c',1,'stan::math::quad_form(const Eigen::Matrix< double, RA, CA > &A, const Eigen::Matrix< double, RB, CB > &B)'],['../namespacestan_1_1math.html#a0e0213e916c2185844b48eea25312e86',1,'stan::math::quad_form(const Eigen::Matrix< double, RA, CA > &A, const Eigen::Matrix< double, RB, 1 > &B)']]], + ['quad_5fform_5fsym',['quad_form_sym',['../namespacestan_1_1agrad.html#a0065419b6716e2e9bd2b046209eeb29d',1,'stan::agrad::quad_form_sym(const Eigen::Matrix< TA, RA, CA > &A, const Eigen::Matrix< TB, RB, CB > &B)'],['../namespacestan_1_1agrad.html#a18283c753845a6ff14c457500314171c',1,'stan::agrad::quad_form_sym(const Eigen::Matrix< TA, RA, CA > &A, const Eigen::Matrix< TB, RB, 1 > &B)'],['../namespacestan_1_1math.html#a2cc753af413f715d82b992aae8b10fde',1,'stan::math::quad_form_sym(const Eigen::Matrix< double, RA, CA > &A, const Eigen::Matrix< double, RB, CB > &B)'],['../namespacestan_1_1math.html#a9355d4e6239f0bb06e0b8d2302f37af4',1,'stan::math::quad_form_sym(const Eigen::Matrix< double, RA, CA > &A, const Eigen::Matrix< double, RB, 1 > &B)']]], + ['quantile',['quantile',['../classstan_1_1mcmc_1_1chains.html#a56d312e2c426bff532c77b9156031023',1,'stan::mcmc::chains::quantile(const int chain, const int index, const double prob)'],['../classstan_1_1mcmc_1_1chains.html#adc3507c5fadc08b20d8a62278ea1403d',1,'stan::mcmc::chains::quantile(const int index, const double prob)'],['../classstan_1_1mcmc_1_1chains.html#ad53b60119eb5c4c0b6dda5b718d10bcf',1,'stan::mcmc::chains::quantile(const int chain, const std::string &name, const double prob)'],['../classstan_1_1mcmc_1_1chains.html#a7234fcd741119e1973f1879dfee16494',1,'stan::mcmc::chains::quantile(const std::string &name, const double prob)']]], + ['quantiles',['quantiles',['../classstan_1_1mcmc_1_1chains.html#ad387dd810f96b6ac37efd2992fc29630',1,'stan::mcmc::chains::quantiles(const int chain, const int index, const Eigen::VectorXd &probs)'],['../classstan_1_1mcmc_1_1chains.html#a491e846ff148541c564d7db4a0794589',1,'stan::mcmc::chains::quantiles(const int index, const Eigen::VectorXd &probs)'],['../classstan_1_1mcmc_1_1chains.html#ab71e51ca47d8961e7a338a4275ddc718',1,'stan::mcmc::chains::quantiles(const int chain, const std::string &name, const Eigen::VectorXd &probs)'],['../classstan_1_1mcmc_1_1chains.html#a5ab7f0a936ba813e9086172f2946baa4',1,'stan::mcmc::chains::quantiles(const std::string &name, const Eigen::VectorXd &probs)']]], + ['quiet_5fnan',['quiet_NaN',['../structstd_1_1numeric__limits_3_01stan_1_1agrad_1_1fvar_3_01_t_01_4_01_4.html#a8c903c018ba2cf816a16b981cd0148fd',1,'std::numeric_limits< stan::agrad::fvar< T > >::quiet_NaN()'],['../structstd_1_1numeric__limits_3_01stan_1_1agrad_1_1var_01_4.html#ac27177b2b7f896ddd695084b3616eae6',1,'std::numeric_limits< stan::agrad::var >::quiet_NaN()']]] +]; diff --git a/doc/api/html/search/functions_72.html b/doc/api/html/search/functions_72.html new file mode 100644 index 00000000000..a4336f7c495 --- /dev/null +++ b/doc/api/html/search/functions_72.html @@ -0,0 +1,25 @@ + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/doc/api/html/search/functions_72.js b/doc/api/html/search/functions_72.js new file mode 100644 index 00000000000..b5313f5cce0 --- /dev/null +++ b/doc/api/html/search/functions_72.js @@ -0,0 +1,51 @@ +var searchData= +[ + ['raise_5fdomain_5ferror',['raise_domain_error',['../namespacestan_1_1math_1_1policies_1_1detail.html#a247352f3a333a7aebbe6ccf09473f2f9',1,'stan::math::policies::detail::raise_domain_error(const char *function, const char *message, const T_val &val, const ::boost::math::policies::domain_error< ::boost::math::policies::throw_on_error > &)'],['../namespacestan_1_1math_1_1policies_1_1detail.html#a1e05fecf80a5d9760597fa17374ac729',1,'stan::math::policies::detail::raise_domain_error(const char *, const char *, const T_val &, const ::boost::math::policies::domain_error< ::boost::math::policies::ignore_error > &)'],['../namespacestan_1_1math_1_1policies_1_1detail.html#a37a116f5cfdd061c779fa174223cc64b',1,'stan::math::policies::detail::raise_domain_error(const char *, const char *, const T_val &, const ::boost::math::policies::domain_error< ::boost::math::policies::errno_on_error > &)'],['../namespacestan_1_1math_1_1policies_1_1detail.html#a84db90eb3648bab11711b7282e69cf0b',1,'stan::math::policies::detail::raise_domain_error(const char *function, const char *message, const T_val &val, const ::boost::math::policies::domain_error< ::boost::math::policies::user_error > &)'],['../namespacestan_1_1math_1_1policies.html#ac83ded77a40cbdc0bdb98879f0d24fb7',1,'stan::math::policies::raise_domain_error()']]], + ['range',['range',['../structstan_1_1gm_1_1range.html#a64e3d1cc595ede56d2c46cca8689cc95',1,'stan::gm::range::range()'],['../structstan_1_1gm_1_1range.html#a0b26a72500318c7840baed6ca87ce946',1,'stan::gm::range::range(expression const &low, expression const &high)']]], + ['rank',['rank',['../namespacestan_1_1math.html#a1baa9539e0a8d4ea50aa16b73d736d93',1,'stan::math::rank(const std::vector< T > &v, int s)'],['../namespacestan_1_1math.html#a808d3133624cd36ac410ba872ea653c2',1,'stan::math::rank(const Eigen::Matrix< T, R, C > &v, int s)']]], + ['rayleigh_5fccdf_5flog',['rayleigh_ccdf_log',['../namespacestan_1_1prob.html#acb3f08ecac9dc1faebaff9f209c39c3e',1,'stan::prob']]], + ['rayleigh_5fcdf',['rayleigh_cdf',['../namespacestan_1_1prob.html#a21adf5dd176a990c274cb58c6b6ad491',1,'stan::prob']]], + ['rayleigh_5fcdf_5flog',['rayleigh_cdf_log',['../namespacestan_1_1prob.html#a6790ee20a779a4ec36207229ed36bf4e',1,'stan::prob']]], + ['rayleigh_5flog',['rayleigh_log',['../namespacestan_1_1prob.html#a98165bd7ce46385b8c12fa228ee90718',1,'stan::prob::rayleigh_log(const T_y &y, const T_scale &sigma)'],['../namespacestan_1_1prob.html#af1c16f2642c0e8fb3237ba5f4b704e98',1,'stan::prob::rayleigh_log(const T_y &y, const T_scale &sigma)']]], + ['rayleigh_5frng',['rayleigh_rng',['../namespacestan_1_1prob.html#ac500ff019314d3a79c6d1cd0e41ce0dd',1,'stan::prob']]], + ['read_5fadaptation',['read_adaptation',['../classstan_1_1io_1_1stan__csv__reader.html#afa996f8c6897a2e40f3e5b44a26db0e3',1,'stan::io::stan_csv_reader']]], + ['read_5fcorr_5fl',['read_corr_L',['../namespacestan_1_1prob.html#a12361bac5c2810d6245cf97465f1f09d',1,'stan::prob::read_corr_L(const Eigen::Array< T, Eigen::Dynamic, 1 > &CPCs, const size_t K)'],['../namespacestan_1_1prob.html#a18ea63e587986f4c53909c26b718cc17',1,'stan::prob::read_corr_L(const Eigen::Array< T, Eigen::Dynamic, 1 > &CPCs, const size_t K, T &log_prob)']]], + ['read_5fcorr_5fmatrix',['read_corr_matrix',['../namespacestan_1_1prob.html#a049065737ff2e957c65db870c99d509d',1,'stan::prob::read_corr_matrix(const Eigen::Array< T, Eigen::Dynamic, 1 > &CPCs, const size_t K)'],['../namespacestan_1_1prob.html#a21dcd8cff30b002e3483120f231dde9e',1,'stan::prob::read_corr_matrix(const Eigen::Array< T, Eigen::Dynamic, 1 > &CPCs, const size_t K, T &log_prob)']]], + ['read_5fcov_5fl',['read_cov_L',['../namespacestan_1_1prob.html#a1545e79c24324fc626f4422b45d4c2b8',1,'stan::prob']]], + ['read_5fcov_5fmatrix',['read_cov_matrix',['../namespacestan_1_1prob.html#ad5a94ee9ba8f88bc5f06a1bc0973cd64',1,'stan::prob::read_cov_matrix(const Eigen::Array< T, Eigen::Dynamic, 1 > &CPCs, const Eigen::Array< T, Eigen::Dynamic, 1 > &sds, T &log_prob)'],['../namespacestan_1_1prob.html#a39d24789bf8d8528e6d308c57ec8d309',1,'stan::prob::read_cov_matrix(const Eigen::Array< T, Eigen::Dynamic, 1 > &CPCs, const Eigen::Array< T, Eigen::Dynamic, 1 > &sds)']]], + ['read_5fheader',['read_header',['../classstan_1_1io_1_1stan__csv__reader.html#a7b816d25cface2d2236069cfc54367bf',1,'stan::io::stan_csv_reader']]], + ['read_5fmetadata',['read_metadata',['../classstan_1_1io_1_1stan__csv__reader.html#a882e750d8fb201dfa1cdb5e174f21957',1,'stan::io::stan_csv_reader']]], + ['read_5fsamples',['read_samples',['../classstan_1_1io_1_1stan__csv__reader.html#a1ec68f0382342bfd8e7de9d823239247',1,'stan::io::stan_csv_reader']]], + ['reader',['reader',['../classstan_1_1io_1_1reader.html#aa3ae88d711db3f2469c86131c28191ac',1,'stan::io::reader']]], + ['recover_5fall',['recover_all',['../classstan_1_1memory_1_1chunk__alloc.html#a25506eb4680556464e3a52772bb09794',1,'stan::memory::chunk_alloc::recover_all()'],['../classstan_1_1memory_1_1stack__alloc.html#a453c7dd354d0cb89389f648882cd459d',1,'stan::memory::stack_alloc::recover_all()']]], + ['recover_5fmemory',['recover_memory',['../classstan_1_1agrad_1_1vari.html#a653f4d93055013f4b4332e2e992268c8',1,'stan::agrad::vari::recover_memory()'],['../namespacestan_1_1agrad.html#a352bfc3b18e738626b7cbbbbcd23ef06',1,'stan::agrad::recover_memory()'],['../namespacestan_1_1agrad.html#a352bfc3b18e738626b7cbbbbcd23ef06',1,'stan::agrad::recover_memory()']]], + ['remove',['remove',['../structstan_1_1gm_1_1variable__map.html#ab50a247ce7a5a9c041f02e51de75ab8c',1,'stan::gm::variable_map::remove()'],['../classstan_1_1io_1_1dump.html#ae73ebbf7c924c54f04cb4cab5d3bb61c',1,'stan::io::dump::remove()']]], + ['rep_5farray',['rep_array',['../namespacestan_1_1math.html#ad3d78d2735a35451f02bcd2f4da24886',1,'stan::math::rep_array(const T &x, int n)'],['../namespacestan_1_1math.html#a8edf0b7ec2ad24b1fda26a8d58513106',1,'stan::math::rep_array(const T &x, int m, int n)'],['../namespacestan_1_1math.html#a53054db4cfa6672654fbaedafbdae242',1,'stan::math::rep_array(const T &x, int k, int m, int n)']]], + ['rep_5fmatrix',['rep_matrix',['../namespacestan_1_1math.html#ad31fd1c6f1cd56836b049489009d2221',1,'stan::math::rep_matrix(const T &x, int m, int n)'],['../namespacestan_1_1math.html#a79febbfc52e2118819bb0eb77fbea561',1,'stan::math::rep_matrix(const Eigen::Matrix< T, Eigen::Dynamic, 1 > &v, int n)'],['../namespacestan_1_1math.html#aa70f063ee9a5790fbed08ba8ae07c52e',1,'stan::math::rep_matrix(const Eigen::Matrix< T, 1, Eigen::Dynamic > &rv, int m)']]], + ['rep_5frow_5fvector',['rep_row_vector',['../namespacestan_1_1math.html#ac9d77ddf6ad38a102ebd6f5e433c3e6c',1,'stan::math']]], + ['rep_5fvector',['rep_vector',['../namespacestan_1_1math.html#a2b132ea41ccfdb7b0ca4897cbb64649a',1,'stan::math']]], + ['resize',['resize',['../namespacestan_1_1math.html#a8abf3ffa6d67a158348134225c9d3090',1,'stan::math']]], + ['restart',['restart',['../classstan_1_1mcmc_1_1base__adaptation.html#afc41c7354b21fd64eb4a3d5964b4e230',1,'stan::mcmc::base_adaptation::restart()'],['../classstan_1_1mcmc_1_1stepsize__adaptation.html#ae0eba1b2db8fce83d078f095b6407c40',1,'stan::mcmc::stepsize_adaptation::restart()'],['../classstan_1_1mcmc_1_1windowed__adaptation.html#a0c6ce68d4fdde8df0bdcb5436aae9675',1,'stan::mcmc::windowed_adaptation::restart()'],['../classstan_1_1prob_1_1welford__covar__estimator.html#ac753e07b944404946cba323d0f33481d',1,'stan::prob::welford_covar_estimator::restart()'],['../classstan_1_1prob_1_1welford__var__estimator.html#a61dacc8a07628708042aaf83aa7b1f70',1,'stan::prob::welford_var_estimator::restart()']]], + ['rising_5ffactorial',['rising_factorial',['../namespacestan_1_1agrad.html#ae4c3b430f306e040a9179e658765b149',1,'stan::agrad::rising_factorial(const fvar< T > &x, const fvar< T > &n)'],['../namespacestan_1_1agrad.html#ad41059332ac855c615d8595f1ec2912d',1,'stan::agrad::rising_factorial(const fvar< T > &x, const double n)'],['../namespacestan_1_1agrad.html#af7f09d1c92ebab44b0765c7cbbece686',1,'stan::agrad::rising_factorial(const double x, const fvar< T > &n)'],['../namespacestan_1_1agrad.html#a2938f3b0f93ab4f19e3809fe4f69c94f',1,'stan::agrad::rising_factorial(const var &a, const double &b)'],['../namespacestan_1_1agrad.html#a20247c229eb0eff045d4f8eb46754d2e',1,'stan::agrad::rising_factorial(const var &a, const var &b)'],['../namespacestan_1_1agrad.html#abe622a48fa2a2942b149fdba55f333e1',1,'stan::agrad::rising_factorial(const double &a, const var &b)'],['../namespacestan_1_1math.html#a3c25994a9886374662f280ecba376a42',1,'stan::math::rising_factorial()']]], + ['round',['round',['../namespacestan_1_1agrad.html#afec6a38f518019111c47c6e6c2a593b2',1,'stan::agrad::round(const fvar< T > &x)'],['../namespacestan_1_1agrad.html#ad590e62d8c71957c7af8415e85905161',1,'stan::agrad::round(const stan::agrad::var &a)']]], + ['round_5ferror',['round_error',['../structstd_1_1numeric__limits_3_01stan_1_1agrad_1_1fvar_3_01_t_01_4_01_4.html#af3bf0d1a9d694cf2ab881c0a648ddaa7',1,'std::numeric_limits< stan::agrad::fvar< T > >::round_error()'],['../structstd_1_1numeric__limits_3_01stan_1_1agrad_1_1var_01_4.html#aaac0b0266785c7bd359eee49a89231a4',1,'std::numeric_limits< stan::agrad::var >::round_error()']]], + ['row',['row',['../namespacestan_1_1math.html#ab540ec1825d8a36cf690a3f061d544bb',1,'stan::math']]], + ['row_5fvector',['row_vector',['../classstan_1_1io_1_1reader.html#a857c3ed31d34189e5768ef2475024b36',1,'stan::io::reader']]], + ['row_5fvector_5fconstrain',['row_vector_constrain',['../classstan_1_1io_1_1reader.html#a83f84052299bcadcd6bdf0273e7a48d4',1,'stan::io::reader::row_vector_constrain(size_t m)'],['../classstan_1_1io_1_1reader.html#a2165af289c7ec046db04aec5d369bc9b',1,'stan::io::reader::row_vector_constrain(size_t m, T &)']]], + ['row_5fvector_5flb',['row_vector_lb',['../classstan_1_1io_1_1reader.html#a91cbfaaef51a6f1537ae86c13403c8fc',1,'stan::io::reader']]], + ['row_5fvector_5flb_5fconstrain',['row_vector_lb_constrain',['../classstan_1_1io_1_1reader.html#ac2a358a28348483347a0c3d18587dcff',1,'stan::io::reader::row_vector_lb_constrain(const TL lb, size_t m)'],['../classstan_1_1io_1_1reader.html#a03477c8e7dec8028b31d7435161a58d1',1,'stan::io::reader::row_vector_lb_constrain(const TL lb, size_t m, T &lp)']]], + ['row_5fvector_5flb_5funconstrain',['row_vector_lb_unconstrain',['../classstan_1_1io_1_1writer.html#a2c478d495e007c8eba20f089a089c163',1,'stan::io::writer']]], + ['row_5fvector_5flub',['row_vector_lub',['../classstan_1_1io_1_1reader.html#a4cb4db5f423c38abdf0e3cb8f9d9188b',1,'stan::io::reader']]], + ['row_5fvector_5flub_5fconstrain',['row_vector_lub_constrain',['../classstan_1_1io_1_1reader.html#aaa3a163e402812f41d271adcf974e455',1,'stan::io::reader::row_vector_lub_constrain(const TL lb, const TU ub, size_t m)'],['../classstan_1_1io_1_1reader.html#ab1d1b3316dd321fdf4965d8843920800',1,'stan::io::reader::row_vector_lub_constrain(const TL lb, const TU ub, size_t m, T &lp)']]], + ['row_5fvector_5flub_5funconstrain',['row_vector_lub_unconstrain',['../classstan_1_1io_1_1writer.html#a044b59a59c26439b2bb2bc19071531d6',1,'stan::io::writer']]], + ['row_5fvector_5fub',['row_vector_ub',['../classstan_1_1io_1_1reader.html#a7e2430e335d19e695f50494130e9a183',1,'stan::io::reader']]], + ['row_5fvector_5fub_5fconstrain',['row_vector_ub_constrain',['../classstan_1_1io_1_1reader.html#a956b2417c03f1f4645377fc06e1eee94',1,'stan::io::reader::row_vector_ub_constrain(const TU ub, size_t m)'],['../classstan_1_1io_1_1reader.html#a66650f9f00be4acabf92acfca8c53dbc',1,'stan::io::reader::row_vector_ub_constrain(const TU ub, size_t m, T &lp)']]], + ['row_5fvector_5fub_5funconstrain',['row_vector_ub_unconstrain',['../classstan_1_1io_1_1writer.html#afd20cc10409dce8c8f19dd7739bf05bb',1,'stan::io::writer']]], + ['row_5fvector_5funconstrain',['row_vector_unconstrain',['../classstan_1_1io_1_1writer.html#ac994c53580dee20c98e2734b889be4ad',1,'stan::io::writer']]], + ['row_5fvector_5fvar_5fdecl',['row_vector_var_decl',['../structstan_1_1gm_1_1row__vector__var__decl.html#aa014117956dbd7c14c2008ddef880824',1,'stan::gm::row_vector_var_decl::row_vector_var_decl()'],['../structstan_1_1gm_1_1row__vector__var__decl.html#a5519c24ae953da7a875c0f39ce69704c',1,'stan::gm::row_vector_var_decl::row_vector_var_decl(range const &range, expression const &N, std::string const &name, std::vector< expression > const &dims)']]], + ['rows',['rows',['../classstan_1_1math_1_1_l_d_l_t__factor_3_01stan_1_1agrad_1_1var_00_01_r_00_01_c_01_4.html#a6ed9e0cd72d929449d5257f11b7aad45',1,'stan::math::LDLT_factor< stan::agrad::var, R, C >::rows()'],['../classstan_1_1math_1_1_l_d_l_t__factor_3_01double_00_01_r_00_01_c_01_4.html#a481dd3025ce906d56ab57d6f33759426',1,'stan::math::LDLT_factor< double, R, C >::rows()'],['../namespacestan_1_1math.html#adb157990709e17068a450238d0a579fb',1,'stan::math::rows()']]], + ['rows_5fdot_5fproduct',['rows_dot_product',['../namespacestan_1_1agrad.html#ad53bb44b66e3b1129e5454cda93c700c',1,'stan::agrad::rows_dot_product(const Eigen::Matrix< fvar< T >, R1, C1 > &v1, const Eigen::Matrix< fvar< T >, R2, C2 > &v2)'],['../namespacestan_1_1agrad.html#a78dcc991d879df3adf65cd1869015317',1,'stan::agrad::rows_dot_product(const Eigen::Matrix< double, R1, C1 > &v1, const Eigen::Matrix< fvar< T >, R2, C2 > &v2)'],['../namespacestan_1_1agrad.html#aa6efe02004903faea4953ea2b0a6c02c',1,'stan::agrad::rows_dot_product(const Eigen::Matrix< fvar< T >, R1, C1 > &v1, const Eigen::Matrix< double, R2, C2 > &v2)'],['../namespacestan_1_1agrad.html#a515860810335a99d111cda0614bc00e1',1,'stan::agrad::rows_dot_product(const Eigen::Matrix< T1, R1, C1 > &v1, const Eigen::Matrix< T2, R2, C2 > &v2)'],['../namespacestan_1_1math.html#a6e1fb33918f8c4e61cc7709905db012c',1,'stan::math::rows_dot_product()']]], + ['rows_5fdot_5fself',['rows_dot_self',['../namespacestan_1_1agrad.html#aba5acba7161f7e4080052f1bd6063e9a',1,'stan::agrad::rows_dot_self()'],['../namespacestan_1_1math.html#a7b071fe169e76df6dc2a49c85ec28b2f',1,'stan::math::rows_dot_self()']]], + ['run',['run',['../struct_eigen_1_1internal_1_1significant__decimals__default__impl_3_01stan_1_1agrad_1_1var_00_01false_01_4.html#ac2f97f18b6f0c481a111bbf82a4fc7e5',1,'Eigen::internal::significant_decimals_default_impl< stan::agrad::var, false >::run()'],['../struct_eigen_1_1internal_1_1general__matrix__vector__product_3_01_index_00_01stan_1_1agrad_1_1va44da5f98e1caea9523bacbd5bdc025fe.html#a62cd81217587325b39ccdd4668b13e7a',1,'Eigen::internal::general_matrix_vector_product< Index, stan::agrad::var, ColMajor, ConjugateLhs, stan::agrad::var, ConjugateRhs >::run()'],['../struct_eigen_1_1internal_1_1general__matrix__vector__product_3_01_index_00_01stan_1_1agrad_1_1vacd54cabc78c49ca719650381b68b105e.html#aec3ce42cbaf2a03d150a0ae70b72220e',1,'Eigen::internal::general_matrix_vector_product< Index, stan::agrad::var, RowMajor, ConjugateLhs, stan::agrad::var, ConjugateRhs >::run()'],['../struct_eigen_1_1internal_1_1general__matrix__matrix__product_3_01_index_00_01stan_1_1agrad_1_1va9b485de9571b6e46d7a64aff43a6d9d3.html#a6e9d5e398a3e5602fa39b1938bb6f155',1,'Eigen::internal::general_matrix_matrix_product< Index, stan::agrad::var, LhsStorageOrder, ConjugateLhs, stan::agrad::var, RhsStorageOrder, ConjugateRhs, ColMajor >::run()']]], + ['run_5fmarkov_5fchain',['run_markov_chain',['../namespacestan_1_1gm.html#a9209ad79a636ceb3152038e76e81acc4',1,'stan::gm']]] +]; diff --git a/doc/api/html/search/functions_73.html b/doc/api/html/search/functions_73.html new file mode 100644 index 00000000000..774d577f552 --- /dev/null +++ b/doc/api/html/search/functions_73.html @@ -0,0 +1,25 @@ + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/doc/api/html/search/functions_73.js b/doc/api/html/search/functions_73.js new file mode 100644 index 00000000000..d417101c3bf --- /dev/null +++ b/doc/api/html/search/functions_73.js @@ -0,0 +1,116 @@ +var searchData= +[ + ['sample',['sample',['../structstan_1_1gm_1_1sample.html#af848ffe2b840908129a6ec949f4ef881',1,'stan::gm::sample::sample()'],['../structstan_1_1gm_1_1sample.html#af9ef88ac0fe1bca70dd1a598a805125d',1,'stan::gm::sample::sample(expression &e, distribution &dist)'],['../classstan_1_1mcmc_1_1sample.html#a028816248fc7ec7dbee24d0e7ea621dc',1,'stan::mcmc::sample::sample()'],['../namespacestan_1_1gm.html#a7cf4c17c47162f69708fa787fa09d4dc',1,'stan::gm::sample()']]], + ['sample_5fcovariance',['sample_covariance',['../classstan_1_1prob_1_1welford__covar__estimator.html#a5e36ff271130c52b707d261f0cf72205',1,'stan::prob::welford_covar_estimator']]], + ['sample_5fmean',['sample_mean',['../classstan_1_1prob_1_1welford__covar__estimator.html#a025fef3ddbd1b600ff60f293757c7dda',1,'stan::prob::welford_covar_estimator::sample_mean()'],['../classstan_1_1prob_1_1welford__var__estimator.html#a9204b9e61b85661377f48f0d4c55531c',1,'stan::prob::welford_var_estimator::sample_mean()']]], + ['sample_5fp',['sample_p',['../classstan_1_1mcmc_1_1base__hamiltonian.html#a3207510e682d531885cc65e91b7e9af9',1,'stan::mcmc::base_hamiltonian::sample_p()'],['../classstan_1_1mcmc_1_1dense__e__metric.html#a6226a2831ba574b3219536c5c3b31d42',1,'stan::mcmc::dense_e_metric::sample_p()'],['../classstan_1_1mcmc_1_1diag__e__metric.html#a4006b1b08873b2f09a4c7a718f4f7517',1,'stan::mcmc::diag_e_metric::sample_p()'],['../classstan_1_1mcmc_1_1unit__e__metric.html#a97f537f349ad486cb8ca40bbfdc8135b',1,'stan::mcmc::unit_e_metric::sample_p()']]], + ['sample_5fstepsize',['sample_stepsize',['../classstan_1_1mcmc_1_1base__hmc.html#a3ac766b0cce7b20168fb576cc7b399af',1,'stan::mcmc::base_hmc']]], + ['sample_5fvariance',['sample_variance',['../classstan_1_1prob_1_1welford__var__estimator.html#a97832111891ecd58739f528506f64bbb',1,'stan::prob::welford_var_estimator']]], + ['samples',['samples',['../classstan_1_1mcmc_1_1chains.html#a9db136c877e767e92877f162fc613af0',1,'stan::mcmc::chains::samples(const int chain, const int index)'],['../classstan_1_1mcmc_1_1chains.html#aaa2edbb4814eaf82fa21bb5795008b86',1,'stan::mcmc::chains::samples(const int index)'],['../classstan_1_1mcmc_1_1chains.html#a32d4494522c2cb233f48960d2ed57198',1,'stan::mcmc::chains::samples(const int chain, const std::string &name)'],['../classstan_1_1mcmc_1_1chains.html#aa00ee119c518e1912e3153be0797fbaf',1,'stan::mcmc::chains::samples(const std::string &name)']]], + ['scalar',['scalar',['../classstan_1_1io_1_1reader.html#a804e3de3992c9f6a53c03596369dd1d0',1,'stan::io::reader']]], + ['scalar_5fconstrain',['scalar_constrain',['../classstan_1_1io_1_1reader.html#a1436d19aa2acb5c139f7abccda0245c0',1,'stan::io::reader::scalar_constrain()'],['../classstan_1_1io_1_1reader.html#adc2d45ed51c042512f07e2c977894b7b',1,'stan::io::reader::scalar_constrain(T &)']]], + ['scalar_5flb',['scalar_lb',['../classstan_1_1io_1_1reader.html#a63d5909de270e2f187707c7bdfa1b2ba',1,'stan::io::reader']]], + ['scalar_5flb_5fconstrain',['scalar_lb_constrain',['../classstan_1_1io_1_1reader.html#aa9191795f375a3e3c5e048ca1eb045ba',1,'stan::io::reader::scalar_lb_constrain(const TL lb)'],['../classstan_1_1io_1_1reader.html#a8fc8affb3f2c3835965d943c7a7ce83c',1,'stan::io::reader::scalar_lb_constrain(const TL lb, T &lp)']]], + ['scalar_5flb_5funconstrain',['scalar_lb_unconstrain',['../classstan_1_1io_1_1writer.html#a7f2596b8de12ff0a3121a6acbbf79536',1,'stan::io::writer']]], + ['scalar_5flub',['scalar_lub',['../classstan_1_1io_1_1reader.html#a13f36e576e51d8e9d72589133d7cf107',1,'stan::io::reader']]], + ['scalar_5flub_5fconstrain',['scalar_lub_constrain',['../classstan_1_1io_1_1reader.html#a12299645ca45f2b765fea6fe14447733',1,'stan::io::reader::scalar_lub_constrain(const TL lb, const TU ub)'],['../classstan_1_1io_1_1reader.html#ad821d1abbeefcd04f3350a213276d53e',1,'stan::io::reader::scalar_lub_constrain(TL lb, TU ub, T &lp)']]], + ['scalar_5flub_5funconstrain',['scalar_lub_unconstrain',['../classstan_1_1io_1_1writer.html#a841fbd5b6feddfbad117c3cb23f2844c',1,'stan::io::writer']]], + ['scalar_5fpos',['scalar_pos',['../classstan_1_1io_1_1reader.html#acf5c5343597a44d4d2173881c7c68912',1,'stan::io::reader']]], + ['scalar_5fpos_5fconstrain',['scalar_pos_constrain',['../classstan_1_1io_1_1reader.html#a45d5a9c201fb25c44f1bba987e64d387',1,'stan::io::reader::scalar_pos_constrain()'],['../classstan_1_1io_1_1reader.html#a41d6bf28bfa13c861ce1afe8cd7d4c1e',1,'stan::io::reader::scalar_pos_constrain(T &lp)']]], + ['scalar_5fpos_5funconstrain',['scalar_pos_unconstrain',['../classstan_1_1io_1_1writer.html#a0711f8ca4117ca12cdb301e40838dc74',1,'stan::io::writer']]], + ['scalar_5fub',['scalar_ub',['../classstan_1_1io_1_1reader.html#aa5e2f8eca996110fb2be2e436d583b62',1,'stan::io::reader']]], + ['scalar_5fub_5fconstrain',['scalar_ub_constrain',['../classstan_1_1io_1_1reader.html#a21b4b63d07615a9d0a7c5de364a43a36',1,'stan::io::reader::scalar_ub_constrain(const TU ub)'],['../classstan_1_1io_1_1reader.html#a48afbd36262b7a2f51dec8d2fad471dd',1,'stan::io::reader::scalar_ub_constrain(const TU ub, T &lp)']]], + ['scalar_5fub_5funconstrain',['scalar_ub_unconstrain',['../classstan_1_1io_1_1writer.html#a747459c1f2b0d23711d7d36f18269ed6',1,'stan::io::writer']]], + ['scalar_5funconstrain',['scalar_unconstrain',['../classstan_1_1io_1_1writer.html#a15d75c45cfa52d103ad5660283fdde45',1,'stan::io::writer']]], + ['scaled_5fadd',['scaled_add',['../namespacestan_1_1math.html#a2eb786f14699d69c39cfdd49893a8006',1,'stan::math']]], + ['scaled_5finv_5fchi_5fsquare_5fccdf_5flog',['scaled_inv_chi_square_ccdf_log',['../namespacestan_1_1prob.html#a93cfec0873f41fb0f7e4c83d874b45fc',1,'stan::prob']]], + ['scaled_5finv_5fchi_5fsquare_5fcdf',['scaled_inv_chi_square_cdf',['../namespacestan_1_1prob.html#aeed68e0c4e8cfb8b5c470ae0b59345c9',1,'stan::prob']]], + ['scaled_5finv_5fchi_5fsquare_5fcdf_5flog',['scaled_inv_chi_square_cdf_log',['../namespacestan_1_1prob.html#ac9609fecff26e0c07646f794f65a39a7',1,'stan::prob']]], + ['scaled_5finv_5fchi_5fsquare_5flog',['scaled_inv_chi_square_log',['../namespacestan_1_1prob.html#a6428f925f8c1b43c323ce549da410d58',1,'stan::prob::scaled_inv_chi_square_log(const T_y &y, const T_dof &nu, const T_scale &s)'],['../namespacestan_1_1prob.html#a33291b85f39ebace4a4bae7633551cb0',1,'stan::prob::scaled_inv_chi_square_log(const T_y &y, const T_dof &nu, const T_scale &s)']]], + ['scaled_5finv_5fchi_5fsquare_5frng',['scaled_inv_chi_square_rng',['../namespacestan_1_1prob.html#af34f411fc637d2d1163663c0cf0a850e',1,'stan::prob']]], + ['sd',['sd',['../classstan_1_1mcmc_1_1chains.html#ab2763e38f54eb42ecaffe3202d2b945c',1,'stan::mcmc::chains::sd(const int chain, const int index)'],['../classstan_1_1mcmc_1_1chains.html#a5a63a0830242bcb793d0b058a2037a0c',1,'stan::mcmc::chains::sd(const int index)'],['../classstan_1_1mcmc_1_1chains.html#aa4d9e5490c0f67fb36f524d3398d7fdd',1,'stan::mcmc::chains::sd(const int chain, const std::string &name)'],['../classstan_1_1mcmc_1_1chains.html#add89272071040d56370525dae0a341f2',1,'stan::mcmc::chains::sd(const std::string &name)'],['../namespacestan_1_1agrad.html#a0d4edc50e38fa85f989dd2bc6a0b35b2',1,'stan::agrad::sd(const std::vector< var > &v)'],['../namespacestan_1_1agrad.html#ab13ef786c424299f0312dc5372c97ee1',1,'stan::agrad::sd(const Eigen::Matrix< var, R, C > &m)'],['../namespacestan_1_1math.html#a34fd02fe795ea38c98f4a02befed309f',1,'stan::math::sd(const std::vector< T > &v)'],['../namespacestan_1_1math.html#a8e1cb72c1528f0ff383033c642341147',1,'stan::math::sd(const Eigen::Matrix< T, R, C > &m)']]], + ['seed',['seed',['../classstan_1_1mcmc_1_1base__hmc.html#af14724fbb8065467b10deeb4134c6e74',1,'stan::mcmc::base_hmc']]], + ['segment',['segment',['../namespacestan_1_1math.html#a4e828d606f1a1c8faf42e6d901089543',1,'stan::math::segment(const Eigen::Matrix< T, Eigen::Dynamic, 1 > &v, size_t i, size_t n)'],['../namespacestan_1_1math.html#ad2c340addebdc88ac086b0e1fac2c1b7',1,'stan::math::segment(const Eigen::Matrix< T, 1, Eigen::Dynamic > &v, size_t i, size_t n)'],['../namespacestan_1_1math.html#a721232b5c8e7c068a120719255f5fb0c',1,'stan::math::segment(const std::vector< T > &sv, size_t i, size_t n)']]], + ['seq_5fview',['seq_view',['../classstan_1_1math_1_1seq__view.html#a0c10cc8d25cff8c90c8bbecf3cd054a1',1,'stan::math::seq_view::seq_view()'],['../classstan_1_1math_1_1seq__view_3_01_t_00_01_eigen_1_1_matrix_3_01_s_00_01_eigen_1_1_dynamic_00_011_01_4_01_4.html#ae570c324a14b81a018475195a77e4430',1,'stan::math::seq_view< T, Eigen::Matrix< S, Eigen::Dynamic, 1 > >::seq_view()'],['../classstan_1_1math_1_1seq__view_3_01_t_00_01_eigen_1_1_matrix_3_01_s_00_011_00_01_eigen_1_1_dynamic_01_4_01_4.html#a57ab58ed09da14b8efcf83b9d1528b88',1,'stan::math::seq_view< T, Eigen::Matrix< S, 1, Eigen::Dynamic > >::seq_view()'],['../classstan_1_1math_1_1seq__view_3_01_t_00_01_eigen_1_1_matrix_3_01_s_00_01_eigen_1_1_dynamic_00_01_eigen_1_1_dynamic_01_4_01_4.html#a706e3bea5d58f77fd9d6d427e64aa370',1,'stan::math::seq_view< T, Eigen::Matrix< S, Eigen::Dynamic, Eigen::Dynamic > >::seq_view()'],['../classstan_1_1math_1_1seq__view_3_01_t_00_01std_1_1vector_3_01_s_01_4_01_4.html#a42ff5c63f8f83390fc7c585b41c0d5ed',1,'stan::math::seq_view< T, std::vector< S > >::seq_view()'],['../classstan_1_1math_1_1seq__view_3_01_t_00_01std_1_1vector_3_01_t_01_4_01_4.html#a2e9627b1092238710ed116adc7c1cab5',1,'stan::math::seq_view< T, std::vector< T > >::seq_view()'],['../classstan_1_1math_1_1seq__view_3_01_t_00_01std_1_1vector_3_01std_1_1vector_3_01_t_01_4_01_4_01_4.html#ac35e60cb3f9e9f4dde81b8ed3b532a2b',1,'stan::math::seq_view< T, std::vector< std::vector< T > > >::seq_view()'],['../classstan_1_1math_1_1seq__view_3_01double_00_01std_1_1vector_3_01int_01_4_01_4.html#ad82423565c559cd4e889350bc204319b',1,'stan::math::seq_view< double, std::vector< int > >::seq_view()']]], + ['set_5fdelta',['set_delta',['../classstan_1_1mcmc_1_1stepsize__adaptation.html#a1e6d6d34e50d9a5ff106f739ca81a851',1,'stan::mcmc::stepsize_adaptation']]], + ['set_5fgamma',['set_gamma',['../classstan_1_1mcmc_1_1stepsize__adaptation.html#a7feb00e53bc871dc9e796668b65c95b7',1,'stan::mcmc::stepsize_adaptation']]], + ['set_5fkappa',['set_kappa',['../classstan_1_1mcmc_1_1stepsize__adaptation.html#a5efe516ab71582fda45991235ea64a80',1,'stan::mcmc::stepsize_adaptation']]], + ['set_5fmax_5fdelta',['set_max_delta',['../classstan_1_1mcmc_1_1base__nuts.html#ae53e9049abf738dd6e1a3c1d6d0fb5e2',1,'stan::mcmc::base_nuts']]], + ['set_5fmax_5fdepth',['set_max_depth',['../classstan_1_1mcmc_1_1base__nuts.html#ac587ab4dc49a366f588314cffce64471',1,'stan::mcmc::base_nuts']]], + ['set_5fmu',['set_mu',['../classstan_1_1mcmc_1_1stepsize__adaptation.html#a8be8064cdb258e343922c186ecaaaf18',1,'stan::mcmc::stepsize_adaptation']]], + ['set_5fnominal_5fstepsize',['set_nominal_stepsize',['../classstan_1_1mcmc_1_1base__hmc.html#ad9ecfad54327ebceea08415e8b1514c3',1,'stan::mcmc::base_hmc::set_nominal_stepsize()'],['../classstan_1_1mcmc_1_1base__static__hmc.html#a0219d73bf44be4797b47c150d349d261',1,'stan::mcmc::base_static_hmc::set_nominal_stepsize()']]], + ['set_5fnominal_5fstepsize_5fand_5fl',['set_nominal_stepsize_and_L',['../classstan_1_1mcmc_1_1base__static__hmc.html#a42697249fbc38355195528383ad7d08f',1,'stan::mcmc::base_static_hmc']]], + ['set_5fnominal_5fstepsize_5fand_5ft',['set_nominal_stepsize_and_T',['../classstan_1_1mcmc_1_1base__static__hmc.html#a90ce61c9dce1d02419f4488efb4950a3',1,'stan::mcmc::base_static_hmc']]], + ['set_5fparam_5franges_5fvisgen',['set_param_ranges_visgen',['../structstan_1_1gm_1_1set__param__ranges__visgen.html#a260565c9456f52828d4dab2472536c8c',1,'stan::gm::set_param_ranges_visgen']]], + ['set_5fstepsize_5fjitter',['set_stepsize_jitter',['../classstan_1_1mcmc_1_1base__hmc.html#aa049a77cf8131f53a707a3a976fa3c11',1,'stan::mcmc::base_hmc']]], + ['set_5ft',['set_T',['../classstan_1_1mcmc_1_1base__static__hmc.html#ab7f3e3cfb7c79053aec34e27647a573a',1,'stan::mcmc::base_static_hmc']]], + ['set_5ft0',['set_t0',['../classstan_1_1mcmc_1_1stepsize__adaptation.html#a1afb2430aad55e460826f70db13bae9c',1,'stan::mcmc::stepsize_adaptation']]], + ['set_5ftype',['set_type',['../structstan_1_1gm_1_1variable.html#accf431520ba5cee016d698e01f089b37',1,'stan::gm::variable']]], + ['set_5fvalue',['set_value',['../classstan_1_1gm_1_1singleton__argument.html#a71e1284e9af67ce97dc32baa943a59a9',1,'stan::gm::singleton_argument']]], + ['set_5fwarmup',['set_warmup',['../classstan_1_1mcmc_1_1chains.html#a6bb363076e9988fb98ee7241456e06b0',1,'stan::mcmc::chains::set_warmup(const int chain, const int warmup)'],['../classstan_1_1mcmc_1_1chains.html#a0e955cb8e43f1b9f8da98c5dff663768',1,'stan::mcmc::chains::set_warmup(const int warmup)']]], + ['set_5fwindow_5fparams',['set_window_params',['../classstan_1_1mcmc_1_1stepsize__covar__adapter.html#ae337a1a05112f580a3d105a8b60fe83f',1,'stan::mcmc::stepsize_covar_adapter::set_window_params()'],['../classstan_1_1mcmc_1_1stepsize__var__adapter.html#a9de24f09147a18ab6974426a518ba691',1,'stan::mcmc::stepsize_var_adapter::set_window_params()'],['../classstan_1_1mcmc_1_1windowed__adaptation.html#a818edfc11176b8ebc0bdb1b1d9c3319c',1,'stan::mcmc::windowed_adaptation::set_window_params()']]], + ['set_5fzero_5fadjoint',['set_zero_adjoint',['../classstan_1_1agrad_1_1chainable.html#a6cb7ffe4555cbba60c2136053d2c2a5f',1,'stan::agrad::chainable::set_zero_adjoint()'],['../classstan_1_1agrad_1_1vari.html#a1b9805e76f3afcb3199d8455c577a4dc',1,'stan::agrad::vari::set_zero_adjoint()']]], + ['set_5fzero_5fall_5fadjoints',['set_zero_all_adjoints',['../namespacestan_1_1agrad.html#aadb1e5a1bc99069eeab84a0b27c4dceb',1,'stan::agrad']]], + ['sign',['sign',['../namespacestan_1_1prob.html#af054a122bafce0c367eaca60a181bd47',1,'stan::prob']]], + ['signaling_5fnan',['signaling_NaN',['../structstd_1_1numeric__limits_3_01stan_1_1agrad_1_1fvar_3_01_t_01_4_01_4.html#a2f08955d86f725887a49949ebef19626',1,'std::numeric_limits< stan::agrad::fvar< T > >::signaling_NaN()'],['../structstd_1_1numeric__limits_3_01stan_1_1agrad_1_1var_01_4.html#a4c69e978e7814b7215f29a2e57a73993',1,'std::numeric_limits< stan::agrad::var >::signaling_NaN()']]], + ['simplex',['simplex',['../classstan_1_1io_1_1reader.html#a9b15c1f051764a8a50a08c5880f810bb',1,'stan::io::reader']]], + ['simplex_5fconstrain',['simplex_constrain',['../classstan_1_1io_1_1reader.html#a1fa21fc736a271ff845ffddc5ecae125',1,'stan::io::reader::simplex_constrain(size_t k)'],['../classstan_1_1io_1_1reader.html#a8ee8c20266159e7ce8763c8014bf2899',1,'stan::io::reader::simplex_constrain(size_t k, T &lp)'],['../namespacestan_1_1prob.html#a34fe9ae8e8dcc7b4f619ffcdf2ac5387',1,'stan::prob::simplex_constrain(const Eigen::Matrix< T, Eigen::Dynamic, 1 > &y)'],['../namespacestan_1_1prob.html#a373ba2418f71147953238312e5bd6954',1,'stan::prob::simplex_constrain(const Eigen::Matrix< T, Eigen::Dynamic, 1 > &y, T &lp)']]], + ['simplex_5ffree',['simplex_free',['../namespacestan_1_1prob.html#a6703d995557396cc5fd013c6cd882327',1,'stan::prob']]], + ['simplex_5funconstrain',['simplex_unconstrain',['../classstan_1_1io_1_1writer.html#ae9bc049dd109093051e7db16aa18be56',1,'stan::io::writer']]], + ['simplex_5fvar_5fdecl',['simplex_var_decl',['../structstan_1_1gm_1_1simplex__var__decl.html#a7e1687968e4f300e3ebae4720065db42',1,'stan::gm::simplex_var_decl::simplex_var_decl()'],['../structstan_1_1gm_1_1simplex__var__decl.html#a9f61771cca77cde06b1e0723d4b8471a',1,'stan::gm::simplex_var_decl::simplex_var_decl(expression const &K, std::string const &name, std::vector< expression > const &dims)']]], + ['sin',['sin',['../namespacestan_1_1agrad.html#a7b48feb9c99466a3be1efb1abc686779',1,'stan::agrad::sin(const var &a)'],['../namespacestan_1_1agrad.html#acd0120597292585e7729ba613fdbb42a',1,'stan::agrad::sin(const fvar< T > &x)']]], + ['singleton_5fargument',['singleton_argument',['../classstan_1_1gm_1_1singleton__argument.html#af6cb0a5be1281e4f5e3c6889fa50eaa9',1,'stan::gm::singleton_argument::singleton_argument()'],['../classstan_1_1gm_1_1singleton__argument.html#a33f50fa7bdbeaf5e7bb2255d80b78945',1,'stan::gm::singleton_argument::singleton_argument(const std::string name)']]], + ['singular_5fvalues',['singular_values',['../namespacestan_1_1math.html#a204f15e3685b2c610ca2c0c80a3005d5',1,'stan::math']]], + ['sinh',['sinh',['../namespacestan_1_1agrad.html#afac6cdf77cc95b678ffde768754810e5',1,'stan::agrad::sinh(const var &a)'],['../namespacestan_1_1agrad.html#a6d1505ab5904db650f5d478a09beb7dc',1,'stan::agrad::sinh(const fvar< T > &x)']]], + ['size',['size',['../classstan_1_1agrad_1_1op__matrix__vari.html#a6611078e47e0bb3d017e78e29f194036',1,'stan::agrad::op_matrix_vari::size()'],['../classstan_1_1agrad_1_1op__vector__vari.html#af0560b5a659dae6c49afae0b3657e8f2',1,'stan::agrad::op_vector_vari::size()'],['../classstan_1_1math_1_1seq__view.html#ab20467423ddb3b3e45513abb8e4a21d3',1,'stan::math::seq_view::size()'],['../classstan_1_1math_1_1seq__view_3_01_t_00_01_eigen_1_1_matrix_3_01_s_00_01_eigen_1_1_dynamic_00_011_01_4_01_4.html#a3284abfb2471ad555d43a8693658c5ec',1,'stan::math::seq_view< T, Eigen::Matrix< S, Eigen::Dynamic, 1 > >::size()'],['../classstan_1_1math_1_1seq__view_3_01_t_00_01_eigen_1_1_matrix_3_01_s_00_011_00_01_eigen_1_1_dynamic_01_4_01_4.html#a8c830a8c9c9c431a71a89cf4b996b27e',1,'stan::math::seq_view< T, Eigen::Matrix< S, 1, Eigen::Dynamic > >::size()'],['../classstan_1_1math_1_1seq__view_3_01_t_00_01_eigen_1_1_matrix_3_01_s_00_01_eigen_1_1_dynamic_00_01_eigen_1_1_dynamic_01_4_01_4.html#a07185ddaf17963a5724ddc2c62208922',1,'stan::math::seq_view< T, Eigen::Matrix< S, Eigen::Dynamic, Eigen::Dynamic > >::size()'],['../classstan_1_1math_1_1seq__view_3_01_t_00_01std_1_1vector_3_01_s_01_4_01_4.html#a3a6031049d11ce5429727dcbe5e29130',1,'stan::math::seq_view< T, std::vector< S > >::size()'],['../classstan_1_1math_1_1seq__view_3_01_t_00_01std_1_1vector_3_01_t_01_4_01_4.html#a3f616444293b86fdb17272494c88cc4c',1,'stan::math::seq_view< T, std::vector< T > >::size()'],['../classstan_1_1math_1_1seq__view_3_01_t_00_01std_1_1vector_3_01std_1_1vector_3_01_t_01_4_01_4_01_4.html#ab81a7a5c2de89631c7aec2ab701854a1',1,'stan::math::seq_view< T, std::vector< std::vector< T > > >::size()'],['../classstan_1_1math_1_1seq__view_3_01double_00_01std_1_1vector_3_01int_01_4_01_4.html#af56447dd766a3a5a9d6c97b0a2de9563',1,'stan::math::seq_view< double, std::vector< int > >::size()'],['../namespacestan_1_1math.html#aa1f9966aade9c4515d33d3ffa7305462',1,'stan::math::size()']]], + ['size_5fcont',['size_cont',['../classstan_1_1mcmc_1_1sample.html#aadbb128a85fb6d72df04d3097acfc3e5',1,'stan::mcmc::sample']]], + ['size_5fof',['size_of',['../structstan_1_1size__of__helper.html#a8f7056983b7948acf66a2e8b3e37e855',1,'stan::size_of_helper::size_of()'],['../structstan_1_1size__of__helper_3_01_t_00_01true_01_4.html#af0810fc0270af209916e67d5defe4b7d',1,'stan::size_of_helper< T, true >::size_of()'],['../namespacestan.html#a4741beaf7ec88631fd2735cadf05365f',1,'stan::size_of()']]], + ['skew_5fnormal_5fccdf_5flog',['skew_normal_ccdf_log',['../namespacestan_1_1prob.html#a9b9d2a0cb044b4683b8ebc1f5664067a',1,'stan::prob']]], + ['skew_5fnormal_5fcdf',['skew_normal_cdf',['../namespacestan_1_1prob.html#af883c9ea717a01e7835a5071cfb132bd',1,'stan::prob']]], + ['skew_5fnormal_5fcdf_5flog',['skew_normal_cdf_log',['../namespacestan_1_1prob.html#aa702b78d553fccea5853eb3fad971200',1,'stan::prob']]], + ['skew_5fnormal_5flog',['skew_normal_log',['../namespacestan_1_1prob.html#aa490430040824f21c59eb415f0b77051',1,'stan::prob::skew_normal_log(const T_y &y, const T_loc &mu, const T_scale &sigma, const T_shape &alpha)'],['../namespacestan_1_1prob.html#a72d94de0c6230acb70815802bddf5587',1,'stan::prob::skew_normal_log(const T_y &y, const T_loc &mu, const T_scale &sigma, const T_shape &alpha)']]], + ['skew_5fnormal_5frng',['skew_normal_rng',['../namespacestan_1_1prob.html#ad193097bedddda283ba854e2ddcd6013',1,'stan::prob']]], + ['softmax',['softmax',['../namespacestan_1_1agrad.html#afb1b8b97d1a6b36f59618a80a9c3778d',1,'stan::agrad::softmax(const Eigen::Matrix< fvar< T >, Eigen::Dynamic, 1 > &alpha)'],['../namespacestan_1_1agrad.html#a611391662c0928a68fa23be96188a49d',1,'stan::agrad::softmax(const Eigen::Matrix< var, Eigen::Dynamic, 1 > &alpha)'],['../namespacestan_1_1math.html#a724679c01caa9ae44c146fe8019ddcf6',1,'stan::math::softmax()']]], + ['solve',['solve',['../classstan_1_1math_1_1_l_d_l_t__factor_3_01stan_1_1agrad_1_1var_00_01_r_00_01_c_01_4.html#a94d5fa0c327e9f55e1fc90734040c845',1,'stan::math::LDLT_factor< stan::agrad::var, R, C >::solve()'],['../classstan_1_1math_1_1_l_d_l_t__factor_3_01double_00_01_r_00_01_c_01_4.html#a1974a3e67f6d9aa1d1cdfe803a7aaaef',1,'stan::math::LDLT_factor< double, R, C >::solve()']]], + ['solveright',['solveRight',['../classstan_1_1math_1_1_l_d_l_t__factor_3_01double_00_01_r_00_01_c_01_4.html#aed238516181016209dbe39a879146092',1,'stan::math::LDLT_factor< double, R, C >']]], + ['sort_5fasc',['sort_asc',['../namespacestan_1_1agrad.html#ad95245f78e0f8d52eb288842562fc4a4',1,'stan::agrad::sort_asc(std::vector< fvar< T > > xs)'],['../namespacestan_1_1agrad.html#a9ac1f0102b58f1e1a1dee468a383f27d',1,'stan::agrad::sort_asc(Eigen::Matrix< fvar< T >, R, C > xs)'],['../namespacestan_1_1agrad.html#a9eb00d0b49af47ecd65373ef59ae1640',1,'stan::agrad::sort_asc(std::vector< var > xs)'],['../namespacestan_1_1agrad.html#a64d1e2a0f135d1ce0a1e1f4e768bc8e5',1,'stan::agrad::sort_asc(Eigen::Matrix< var, R, C > xs)'],['../namespacestan_1_1math.html#a80f5418b16ea26e9bc6d2a8f9b764897',1,'stan::math::sort_asc(std::vector< T > xs)'],['../namespacestan_1_1math.html#aea0d013ec0a699e61dd74f32aa722fa0',1,'stan::math::sort_asc(Eigen::Matrix< T, R, C > xs)']]], + ['sort_5fdesc',['sort_desc',['../namespacestan_1_1agrad.html#abcc2609354cc5a38ad45c3b0a656e63f',1,'stan::agrad::sort_desc(std::vector< fvar< T > > xs)'],['../namespacestan_1_1agrad.html#a77b9ed0b3272b0bf9623fe31b69bc965',1,'stan::agrad::sort_desc(Eigen::Matrix< fvar< T >, R, C > xs)'],['../namespacestan_1_1agrad.html#acdf543712f8bac6eb1b7dff1eae7c3c6',1,'stan::agrad::sort_desc(std::vector< var > xs)'],['../namespacestan_1_1agrad.html#a41cc77adf1c2cb5df2034d8d94da39da',1,'stan::agrad::sort_desc(Eigen::Matrix< var, R, C > xs)'],['../namespacestan_1_1math.html#ab0b2712eab9b95535c0589455ed11cfc',1,'stan::math::sort_desc(std::vector< T > xs)'],['../namespacestan_1_1math.html#a13ae8cd1155e8c4c684efb4405a1e277',1,'stan::math::sort_desc(Eigen::Matrix< T, R, C > xs)']]], + ['split_5farg',['split_arg',['../classstan_1_1gm_1_1argument.html#ab68a5c3e2ba856a6717ffe71b7968f53',1,'stan::gm::argument']]], + ['split_5fpotential_5fscale_5freduction',['split_potential_scale_reduction',['../classstan_1_1mcmc_1_1chains.html#aff7e664bd9451e0854d65bd8c4a6aa9d',1,'stan::mcmc::chains::split_potential_scale_reduction(const int index)'],['../classstan_1_1mcmc_1_1chains.html#a2ae7c29a53d548f408ddc9a9d894d767',1,'stan::mcmc::chains::split_potential_scale_reduction(const std::string &name)']]], + ['sqrt',['sqrt',['../namespacestan_1_1agrad.html#a14e7c78163cf5677786955053de27a98',1,'stan::agrad::sqrt(const var &a)'],['../namespacestan_1_1agrad.html#af7d52e77074ba94b4485cc33f8f637df',1,'stan::agrad::sqrt(const fvar< T > &x)']]], + ['sqrt2',['sqrt2',['../namespacestan_1_1math.html#a1369f60a09e3af4933096de3a54ac28c',1,'stan::math']]], + ['square',['square',['../namespacestan_1_1agrad.html#a5de00b0d86ae64136a4952a28f9bd84f',1,'stan::agrad::square(const fvar< T > &x)'],['../namespacestan_1_1agrad.html#a18783225f7d6895849af12dd12b305bf',1,'stan::agrad::square(const var &x)'],['../namespacestan_1_1math.html#a056b82f11f784f321bce2c5677089e24',1,'stan::math::square()']]], + ['squared_5fdistance',['squared_distance',['../namespacestan_1_1agrad.html#a8f9d3b07b865ebc8bed53892db695f36',1,'stan::agrad::squared_distance(const Eigen::Matrix< var, R1, C1 > &v1, const Eigen::Matrix< var, R2, C2 > &v2)'],['../namespacestan_1_1agrad.html#a431c8d9ee7789f210ec61246013df4ea',1,'stan::agrad::squared_distance(const Eigen::Matrix< var, R1, C1 > &v1, const Eigen::Matrix< double, R2, C2 > &v2)'],['../namespacestan_1_1agrad.html#a2d990c45fff084820acb757b90fabaa7',1,'stan::agrad::squared_distance(const Eigen::Matrix< double, R1, C1 > &v1, const Eigen::Matrix< var, R2, C2 > &v2)'],['../namespacestan_1_1math.html#a472573d1349d235dcdb501576ef66d15',1,'stan::math::squared_distance()']]], + ['stack_5falloc',['stack_alloc',['../classstan_1_1memory_1_1stack__alloc.html#a3da167b8f4f9bd981f948ac03c29604b',1,'stan::memory::stack_alloc']]], + ['stan_5fcsv_5fadaptation',['stan_csv_adaptation',['../structstan_1_1io_1_1stan__csv__adaptation.html#a80dd57392300524f88f68f09959a1918',1,'stan::io::stan_csv_adaptation']]], + ['stan_5fcsv_5fmetadata',['stan_csv_metadata',['../structstan_1_1io_1_1stan__csv__metadata.html#abb84cf3a6ecfaceb2fe108180e9897eb',1,'stan::io::stan_csv_metadata']]], + ['stan_5fcsv_5freader',['stan_csv_reader',['../classstan_1_1io_1_1stan__csv__reader.html#a959ed39477ffd99a18b8ee217f6ad457',1,'stan::io::stan_csv_reader']]], + ['stan_5fcsv_5ftiming',['stan_csv_timing',['../structstan_1_1io_1_1stan__csv__timing.html#acbab41cb7a74d799bafda67688bf3e8e',1,'stan::io::stan_csv_timing']]], + ['stan_5fprint',['stan_print',['../namespacestan_1_1agrad.html#a0d1d06f46e761f9f0fbcf078b6e6208e',1,'stan::agrad::stan_print()'],['../namespacestan_1_1math.html#a7c14b7fd70050f03a07fdf73a1df06d2',1,'stan::math::stan_print(std::ostream *o, const T &x)'],['../namespacestan_1_1math.html#a37cb2d874adcc950cb0439af044f549f',1,'stan::math::stan_print(std::ostream *o, const std::vector< T > &x)'],['../namespacestan_1_1math.html#ae94f7170ee85d4b353f55e3a044d2345',1,'stan::math::stan_print(std::ostream *o, const Eigen::Matrix< T, Eigen::Dynamic, 1 > &x)'],['../namespacestan_1_1math.html#ad9c9057d71cf2795d0042f665c0f89c1',1,'stan::math::stan_print(std::ostream *o, const Eigen::Matrix< T, 1, Eigen::Dynamic > &x)'],['../namespacestan_1_1math.html#adffa61a0521d0c07b8c4cd7ccbbb4aca',1,'stan::math::stan_print(std::ostream *o, const Eigen::Matrix< T, Eigen::Dynamic, Eigen::Dynamic > &x)']]], + ['stanc_5fhelper',['stanc_helper',['../stanc__helper_8hpp.html#a6285d39574513b78cafc494a8f614852',1,'stanc_helper.hpp']]], + ['statement',['statement',['../structstan_1_1gm_1_1statement.html#abe28b81d5ca623dfbee35480dd7aed2e',1,'stan::gm::statement::statement()'],['../structstan_1_1gm_1_1statement.html#ab5dc6d05e69a9d8443a05edbca545446',1,'stan::gm::statement::statement(const statement_t &st)'],['../structstan_1_1gm_1_1statement.html#ad9eb67ce544f05bb158d1d660537d22d',1,'stan::gm::statement::statement(const nil &st)'],['../structstan_1_1gm_1_1statement.html#a7edde6e19d06ecabc83b4d0b20287f8c',1,'stan::gm::statement::statement(const assignment &st)'],['../structstan_1_1gm_1_1statement.html#af2e6691a2c9b6ebe50a2980782077a14',1,'stan::gm::statement::statement(const sample &st)'],['../structstan_1_1gm_1_1statement.html#ac61a640e5137d6644f0e6a4f2cf5a0f6',1,'stan::gm::statement::statement(const increment_log_prob_statement &st)'],['../structstan_1_1gm_1_1statement.html#a87f9d00e9b62804b5022958df5ba12df',1,'stan::gm::statement::statement(const expression &st)'],['../structstan_1_1gm_1_1statement.html#adcfaa1a8e2045291440780abf58f7203',1,'stan::gm::statement::statement(const statements &st)'],['../structstan_1_1gm_1_1statement.html#aee6de7e7d5063346e281a197ba3054c9',1,'stan::gm::statement::statement(const for_statement &st)'],['../structstan_1_1gm_1_1statement.html#a9326bcbb2bfbc31fe3bf8e5295496dac',1,'stan::gm::statement::statement(const conditional_statement &st)'],['../structstan_1_1gm_1_1statement.html#ac5c288cb0c748f276f04694c182cd612',1,'stan::gm::statement::statement(const while_statement &st)'],['../structstan_1_1gm_1_1statement.html#ab17da65c74a3282835af18dccd20d5cd',1,'stan::gm::statement::statement(const print_statement &st)'],['../structstan_1_1gm_1_1statement.html#ae88961e04050f67fdf34a6a5b1b872b9',1,'stan::gm::statement::statement(const no_op_statement &st)']]], + ['statement_5f2_5fgrammar',['statement_2_grammar',['../structstan_1_1gm_1_1statement__2__grammar.html#a124bb789c4c06388a498dffc981b1726',1,'stan::gm::statement_2_grammar']]], + ['statement_5fgrammar',['statement_grammar',['../structstan_1_1gm_1_1statement__grammar.html#af39ce5043643ec014ef8f16ed32fa9a8',1,'stan::gm::statement_grammar']]], + ['statement_5fvisgen',['statement_visgen',['../structstan_1_1gm_1_1statement__visgen.html#a5b426890ad86afc18588037d3acd1cdf',1,'stan::gm::statement_visgen']]], + ['statements',['statements',['../structstan_1_1gm_1_1statements.html#aa4e43d906c204aacbd111474d080c466',1,'stan::gm::statements::statements()'],['../structstan_1_1gm_1_1statements.html#afd82e89ed40745f135579777e52e2277',1,'stan::gm::statements::statements(const std::vector< var_decl > &local_decl, const std::vector< statement > &stmts)']]], + ['std_5fvector',['std_vector',['../classstan_1_1io_1_1reader.html#a72a39fbd649e5be85b0f20ac00721c35',1,'stan::io::reader']]], + ['step',['step',['../classstan_1_1optimization_1_1_b_f_g_s_minimizer.html#adfa1ece56a78fbd805212d31179da105',1,'stan::optimization::BFGSMinimizer::step()'],['../classstan_1_1optimization_1_1_nesterov_gradient.html#af3e12bb8b1db3c38fcbd359f6c7f5bc9',1,'stan::optimization::NesterovGradient::step()'],['../namespacestan_1_1agrad.html#a40c71c5396dbbbbcee5a8ae890345060',1,'stan::agrad::step()'],['../namespacestan_1_1math.html#a8fdc5e5ba8e306c2a594e928bfd62ea2',1,'stan::math::step()']]], + ['stepsize_5fadaptation',['stepsize_adaptation',['../classstan_1_1mcmc_1_1stepsize__adaptation.html#a288d386b790bc25abc7a2b7f93bddb00',1,'stan::mcmc::stepsize_adaptation']]], + ['stepsize_5fadapter',['stepsize_adapter',['../classstan_1_1mcmc_1_1stepsize__adapter.html#a36b5d0fb4a2d8bb3025b4104a29f6068',1,'stan::mcmc::stepsize_adapter']]], + ['stepsize_5fcovar_5fadapter',['stepsize_covar_adapter',['../classstan_1_1mcmc_1_1stepsize__covar__adapter.html#a9aba8c876cb1207ce110ae95e90308e9',1,'stan::mcmc::stepsize_covar_adapter']]], + ['stepsize_5fvar_5fadapter',['stepsize_var_adapter',['../classstan_1_1mcmc_1_1stepsize__var__adapter.html#a1599b792341a655efeeebadf15c08d63',1,'stan::mcmc::stepsize_var_adapter']]], + ['stored_5fgradient_5fvari',['stored_gradient_vari',['../classstan_1_1agrad_1_1stored__gradient__vari.html#af779bcf6d92cccf16672907758f5bedc',1,'stan::agrad::stored_gradient_vari']]], + ['student_5ft_5fccdf_5flog',['student_t_ccdf_log',['../namespacestan_1_1prob.html#a927a64a2497df7302ae7fa9098e65546',1,'stan::prob']]], + ['student_5ft_5fcdf',['student_t_cdf',['../namespacestan_1_1prob.html#a19cc3cf5b600b92144c79356c0e879fc',1,'stan::prob']]], + ['student_5ft_5fcdf_5flog',['student_t_cdf_log',['../namespacestan_1_1prob.html#aab514e4c15e40c36184b0291e3c2e814',1,'stan::prob']]], + ['student_5ft_5flog',['student_t_log',['../namespacestan_1_1prob.html#a72933c1b9a4eb2005d32e811ae124bd0',1,'stan::prob::student_t_log(const T_y &y, const T_dof &nu, const T_loc &mu, const T_scale &sigma)'],['../namespacestan_1_1prob.html#a9097e9dad2bbb017a14c491fa3750203',1,'stan::prob::student_t_log(const T_y &y, const T_dof &nu, const T_loc &mu, const T_scale &sigma)']]], + ['student_5ft_5frng',['student_t_rng',['../namespacestan_1_1prob.html#adb81f1474168ce77e5bb71ef3c7432d9',1,'stan::prob']]], + ['sub',['sub',['../namespacestan_1_1math.html#a9e4c5e5b76b18a41b28f646104b3cd46',1,'stan::math']]], + ['sub_5fcol',['sub_col',['../namespacestan_1_1math.html#a63cf32e07d51c4ebfe042dd452eeae14',1,'stan::math']]], + ['sub_5frow',['sub_row',['../namespacestan_1_1math.html#aa1ea780efd8d0282dbf069f0776d727b',1,'stan::math']]], + ['subarguments',['subarguments',['../classstan_1_1gm_1_1categorical__argument.html#a5ca383118480518414b2b5b52bc42dfb',1,'stan::gm::categorical_argument']]], + ['subtract',['subtract',['../namespacestan_1_1math.html#a90c28e884c638ed67fa0c81ffc01e2d3',1,'stan::math::subtract(const Eigen::Matrix< T1, R, C > &m1, const Eigen::Matrix< T2, R, C > &m2)'],['../namespacestan_1_1math.html#a36726c055970205db893867a77e9d0a7',1,'stan::math::subtract(const T1 &c, const Eigen::Matrix< T2, R, C > &m)'],['../namespacestan_1_1math.html#a776789f307db599fddcda6a68c480557',1,'stan::math::subtract(const Eigen::Matrix< T1, R, C > &m, const T2 &c)']]], + ['success',['success',['../classstan_1_1math_1_1_l_d_l_t__factor_3_01stan_1_1agrad_1_1var_00_01_r_00_01_c_01_4.html#aa9e011b37205e0bfa198c9f032d19edb',1,'stan::math::LDLT_factor< stan::agrad::var, R, C >::success()'],['../classstan_1_1math_1_1_l_d_l_t__factor_3_01double_00_01_r_00_01_c_01_4.html#a98215f2467d234354d398ec3e415dfce',1,'stan::math::LDLT_factor< double, R, C >::success()']]], + ['sum',['sum',['../classstan_1_1math_1_1accumulator.html#a289e9e869da8e29e78fa6c6c5bb9bddf',1,'stan::math::accumulator::sum()'],['../namespacestan_1_1agrad.html#a8baa11534c7cfb1b5e6f96bd958dfd03',1,'stan::agrad::sum(const Eigen::Matrix< fvar< T >, R, C > &m)'],['../namespacestan_1_1agrad.html#ad6c767cb7dcb4963f468cc5a2aa494ac',1,'stan::agrad::sum(const Eigen::Matrix< var, R, C > &m)'],['../namespacestan_1_1math.html#adde1fe0f002efa49cf9f7c129fe1a1d0',1,'stan::math::sum(std::vector< double > &x)'],['../namespacestan_1_1math.html#a1efee0b4f8879a114af50b7e9802745c',1,'stan::math::sum(const std::vector< T > &xs)'],['../namespacestan_1_1math.html#a44c32c2d7e895378feb11c99091765ad',1,'stan::math::sum(const Eigen::Matrix< T, R, C > &v)']]], + ['suppress_5fwarning',['suppress_warning',['../namespacestan_1_1gm.html#a33ab69ad9d56b9d1c99d8808fd106648',1,'stan::gm']]] +]; diff --git a/doc/api/html/search/functions_74.html b/doc/api/html/search/functions_74.html new file mode 100644 index 00000000000..e3c96c3398b --- /dev/null +++ b/doc/api/html/search/functions_74.html @@ -0,0 +1,25 @@ + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/doc/api/html/search/functions_74.js b/doc/api/html/search/functions_74.js new file mode 100644 index 00000000000..fbe827a5491 --- /dev/null +++ b/doc/api/html/search/functions_74.js @@ -0,0 +1,29 @@ +var searchData= +[ + ['t',['T',['../classstan_1_1mcmc_1_1base__hamiltonian.html#a4f3adba6ad80e9b538e57bd655362eee',1,'stan::mcmc::base_hamiltonian::T()'],['../classstan_1_1mcmc_1_1dense__e__metric.html#a02cdb81d16115734815790a5dc5e6c90',1,'stan::mcmc::dense_e_metric::T()'],['../classstan_1_1mcmc_1_1diag__e__metric.html#a0a6a65c2291eac1e13ee48f4ed61f636',1,'stan::mcmc::diag_e_metric::T()'],['../classstan_1_1mcmc_1_1unit__e__metric.html#ae924e01d719ba1ccbaca6daff56f762a',1,'stan::mcmc::unit_e_metric::T()']]], + ['tail',['tail',['../namespacestan_1_1math.html#ac5b2770a97397fc738125d70420393fb',1,'stan::math::tail(const Eigen::Matrix< T, Eigen::Dynamic, 1 > &v, size_t n)'],['../namespacestan_1_1math.html#a7ae4ee69ace75bb2fb216247ab8272ec',1,'stan::math::tail(const Eigen::Matrix< T, 1, Eigen::Dynamic > &rv, size_t n)'],['../namespacestan_1_1math.html#a9956cf78180c6340f61667e797cf7055',1,'stan::math::tail(const std::vector< T > &sv, size_t n)']]], + ['tan',['tan',['../namespacestan_1_1agrad.html#adbc956463e3d58643e2a10dd3b6fd00c',1,'stan::agrad::tan(const var &a)'],['../namespacestan_1_1agrad.html#a48c6154fdb08d77249c5fa5216d34e2f',1,'stan::agrad::tan(const fvar< T > &x)']]], + ['tangent',['tangent',['../structstan_1_1agrad_1_1fvar.html#aa9f2f0107f7a9e3d92de38b615d22dd6',1,'stan::agrad::fvar']]], + ['tanh',['tanh',['../namespacestan_1_1agrad.html#a9e4ae39cc622b5388d16b971616da01d',1,'stan::agrad::tanh(const var &a)'],['../namespacestan_1_1agrad.html#ae56147f3f502e8436c2a02ed7d275128',1,'stan::agrad::tanh(const fvar< T > &x)']]], + ['tau',['tau',['../classstan_1_1mcmc_1_1base__hamiltonian.html#a12c9833e59b1aa7455872ebffe0819ce',1,'stan::mcmc::base_hamiltonian::tau()'],['../classstan_1_1mcmc_1_1dense__e__metric.html#a80d1467817d80ee50aca96b4f5b85146',1,'stan::mcmc::dense_e_metric::tau()'],['../classstan_1_1mcmc_1_1diag__e__metric.html#ad8b4d7e8c1cdfb0b98520bc6b6b3c5a2',1,'stan::mcmc::diag_e_metric::tau()'],['../classstan_1_1mcmc_1_1unit__e__metric.html#a428fcc506d11bfc227125153ef3e87d4',1,'stan::mcmc::unit_e_metric::tau()']]], + ['tcrossprod',['tcrossprod',['../namespacestan_1_1agrad.html#afe68149651e5bbdab5c531bc82b0868e',1,'stan::agrad::tcrossprod(const Eigen::Matrix< fvar< T >, R, C > &m)'],['../namespacestan_1_1agrad.html#a756be37f5934ada1e12abec937e3d13b',1,'stan::agrad::tcrossprod(const matrix_v &M)'],['../namespacestan_1_1math.html#a16b07b3f7d18cdb710806c5793a83d31',1,'stan::math::tcrossprod()']]], + ['term_5fgrammar',['term_grammar',['../structstan_1_1gm_1_1term__grammar.html#a190b57b393dca19c78dbe5e8e88d4cba',1,'stan::gm::term_grammar']]], + ['test_5fgradients',['test_gradients',['../namespacestan_1_1model.html#a53b2d650c95140811fa1dee58bdfb0c4',1,'stan::model']]], + ['tgamma',['tgamma',['../namespacestan_1_1agrad.html#a1a5ceb1f1202bd9c910bb9a447ea12a4',1,'stan::agrad::tgamma(const fvar< T > &x)'],['../namespacestan_1_1agrad.html#ad3efbbe0949604d6a169864776508b5d',1,'stan::agrad::tgamma(const stan::agrad::var &a)']]], + ['to_5ffvar',['to_fvar',['../namespacestan_1_1agrad.html#afd6883af022a54c60dd207c733917425',1,'stan::agrad::to_fvar(const T &x)'],['../namespacestan_1_1agrad.html#a88f3f805d72a977a680135249341f0e6',1,'stan::agrad::to_fvar(const fvar< T > &x)'],['../namespacestan_1_1agrad.html#a6a028d6aadad12e84b3a7a587458313d',1,'stan::agrad::to_fvar(const stan::math::matrix_d &m)'],['../namespacestan_1_1agrad.html#ab901750d171a340d359d4366ce18e920',1,'stan::agrad::to_fvar(const matrix_fd &m)'],['../namespacestan_1_1agrad.html#a8bf93f28ef32c8a01acee60bf3a86953',1,'stan::agrad::to_fvar(const matrix_fv &m)'],['../namespacestan_1_1agrad.html#ac33cf85a99591eab48c23e6243935827',1,'stan::agrad::to_fvar(const matrix_ffd &m)'],['../namespacestan_1_1agrad.html#aa5f13b4aac2e833fbc550adf15bbb89c',1,'stan::agrad::to_fvar(const matrix_ffv &m)'],['../namespacestan_1_1agrad.html#acb1b51857662ff7aceb7bf33e977fda2',1,'stan::agrad::to_fvar(const stan::math::vector_d &v)'],['../namespacestan_1_1agrad.html#ac5b829ba1d8c567a4ddc153e8e8deb28',1,'stan::agrad::to_fvar(const vector_fd &v)'],['../namespacestan_1_1agrad.html#af5034319341d60121260723636478ac1',1,'stan::agrad::to_fvar(const vector_fv &v)'],['../namespacestan_1_1agrad.html#af5fbf0e0b0386b87379bb330e9a97a3e',1,'stan::agrad::to_fvar(const vector_ffd &v)'],['../namespacestan_1_1agrad.html#ab7ee85577850baf2a033d4bcfb1bf630',1,'stan::agrad::to_fvar(const vector_ffv &v)'],['../namespacestan_1_1agrad.html#a795793505477543f5c1138585049d597',1,'stan::agrad::to_fvar(const stan::math::row_vector_d &rv)'],['../namespacestan_1_1agrad.html#a2f32b3cb37dc324f9dc3566aaf516a28',1,'stan::agrad::to_fvar(const row_vector_fd &rv)'],['../namespacestan_1_1agrad.html#accbd0fa22f2dc7ae894380a09ad2bccb',1,'stan::agrad::to_fvar(const row_vector_fv &rv)'],['../namespacestan_1_1agrad.html#af95bfe51597f252ca2d110f4cd6bc553',1,'stan::agrad::to_fvar(const row_vector_ffd &rv)'],['../namespacestan_1_1agrad.html#a6ec009827c7274b73a0a5dbdac33d2e0',1,'stan::agrad::to_fvar(const row_vector_ffv &rv)'],['../namespacestan_1_1agrad.html#aefe945fec82fc902015d82c4363e3adc',1,'stan::agrad::to_fvar(const Eigen::Matrix< T, R, C > &val, const Eigen::Matrix< T, R, C > &deriv)']]], + ['to_5fstring',['to_string',['../namespacestan_1_1gm.html#abd7966e0ee430a0e4e12326fd9cd762f',1,'stan::gm']]], + ['to_5fvar',['to_var',['../structstan_1_1agrad_1_1_operands_and_partials.html#a8d193a68235f335ad3ee7dc9fd130094',1,'stan::agrad::OperandsAndPartials::to_var()'],['../namespacestan_1_1agrad.html#a29fd7db9833fa17e3ff54709c13bba7e',1,'stan::agrad::to_var(const double &x)'],['../namespacestan_1_1agrad.html#a7d1c1c2fdd2ac909cde84c4cf3ae0b97',1,'stan::agrad::to_var(const var &x)'],['../namespacestan_1_1agrad.html#a3a13a3857bc425dab978636de428a7cf',1,'stan::agrad::to_var(const stan::math::matrix_d &m)'],['../namespacestan_1_1agrad.html#affc9f72e4afab7464103565795be6b5a',1,'stan::agrad::to_var(const matrix_v &m)'],['../namespacestan_1_1agrad.html#a87949ec636f056e2ed3956675ab2cfd1',1,'stan::agrad::to_var(const stan::math::vector_d &v)'],['../namespacestan_1_1agrad.html#a5ccc4666fffc6f06b1fcae217ea7b9a5',1,'stan::agrad::to_var(const vector_v &v)'],['../namespacestan_1_1agrad.html#a27974665dae3441df744285776390314',1,'stan::agrad::to_var(const stan::math::row_vector_d &rv)'],['../namespacestan_1_1agrad.html#a3f723b593d96af7f204e0f138ee49ec3',1,'stan::agrad::to_var(const row_vector_v &rv)']]], + ['to_5fvec',['to_vec',['../classstan_1_1io_1_1var__context.html#a4dead4b7dda5bc87bbc73f95fbc5cc14',1,'stan::io::var_context::to_vec()'],['../classstan_1_1io_1_1var__context.html#ae127d4a7b16d0584a1fc352715f9496f',1,'stan::io::var_context::to_vec(size_t n1)'],['../classstan_1_1io_1_1var__context.html#a6476d396377cd81c55b2870585ae6b80',1,'stan::io::var_context::to_vec(size_t n1, size_t n2)'],['../classstan_1_1io_1_1var__context.html#ae14b5a7e54016763fc3ab8f29d98b7ed',1,'stan::io::var_context::to_vec(size_t n1, size_t n2, size_t n3)'],['../classstan_1_1io_1_1var__context.html#a936afdc0abaf478ad05baaa9e5c899ed',1,'stan::io::var_context::to_vec(size_t n1, size_t n2, size_t n3, size_t n4)'],['../classstan_1_1io_1_1var__context.html#a5592642ebe6a9ec30cdc97c05e025456',1,'stan::io::var_context::to_vec(size_t n1, size_t n2, size_t n3, size_t n4, size_t n5)'],['../classstan_1_1io_1_1var__context.html#a16f365bd3c63c030a9fb7ef48f0b53a6',1,'stan::io::var_context::to_vec(size_t n1, size_t n2, size_t n3, size_t n4, size_t n5, size_t n6)'],['../classstan_1_1io_1_1var__context.html#a7c9a822c3aeb4f3d49dbd0ce509be573',1,'stan::io::var_context::to_vec(size_t n1, size_t n2, size_t n3, size_t n4, size_t n5, size_t n6, size_t n7)'],['../classstan_1_1io_1_1var__context.html#aab65fbc55030028781f4060cf8dba8b8',1,'stan::io::var_context::to_vec(size_t n1, size_t n2, size_t n3, size_t n4, size_t n5, size_t n6, size_t n7, size_t n8)']]], + ['to_5fvector',['to_vector',['../namespacestan_1_1math.html#a2576c9799bbb676b1b2d930be8032b8c',1,'stan::math']]], + ['total_5fdims',['total_dims',['../namespacestan_1_1gm.html#a0888f90c4bb279ad09b9f7724912a2cd',1,'stan::gm']]], + ['trace',['trace',['../namespacestan_1_1math.html#a7001fd7e0296d5dae6ab0a88e1a28547',1,'stan::math']]], + ['trace_5fgen_5finv_5fquad_5fform_5fldlt',['trace_gen_inv_quad_form_ldlt',['../namespacestan_1_1agrad.html#a26390ee1784c9c658bf548383edb128b',1,'stan::agrad::trace_gen_inv_quad_form_ldlt()'],['../namespacestan_1_1math.html#a6fa96e90adc5b27eae970843471ded52',1,'stan::math::trace_gen_inv_quad_form_ldlt()']]], + ['trace_5fgen_5fquad_5fform',['trace_gen_quad_form',['../namespacestan_1_1agrad.html#ad63e47021cd7aa676fe91db80092997e',1,'stan::agrad::trace_gen_quad_form()'],['../namespacestan_1_1math.html#a09d402800ee27ba77d03dc3ec365d22e',1,'stan::math::trace_gen_quad_form()']]], + ['trace_5finv_5fquad_5fform_5fldlt',['trace_inv_quad_form_ldlt',['../namespacestan_1_1agrad.html#a9e9f878f6533c815e81193669c47a4f1',1,'stan::agrad::trace_inv_quad_form_ldlt()'],['../namespacestan_1_1math.html#aa0261f49dc318d8ee553e378325ee3db',1,'stan::math::trace_inv_quad_form_ldlt()']]], + ['trace_5fquad_5fform',['trace_quad_form',['../namespacestan_1_1agrad.html#a0d688dadede814a9e3f2a3b6af6601c5',1,'stan::agrad::trace_quad_form()'],['../namespacestan_1_1math.html#a097af33142548fd565d1dab2233fa3e5',1,'stan::math::trace_quad_form()']]], + ['transition',['transition',['../classstan_1_1mcmc_1_1base__mcmc.html#acb8c38a588d49495a6dc2bb22d3eb435',1,'stan::mcmc::base_mcmc::transition()'],['../classstan_1_1mcmc_1_1fixed__param__sampler.html#a63cc72329d8fdcb8b276370621a22b9b',1,'stan::mcmc::fixed_param_sampler::transition()'],['../classstan_1_1mcmc_1_1adapt__dense__e__nuts.html#a18ea2702c10597236f0ea359f251c9f5',1,'stan::mcmc::adapt_dense_e_nuts::transition()'],['../classstan_1_1mcmc_1_1adapt__diag__e__nuts.html#ab1732e3ce940a436110a7cf8a0f17aac',1,'stan::mcmc::adapt_diag_e_nuts::transition()'],['../classstan_1_1mcmc_1_1adapt__unit__e__nuts.html#ad1130b322d697d62f7d8d3fbef6ee17f',1,'stan::mcmc::adapt_unit_e_nuts::transition()'],['../classstan_1_1mcmc_1_1base__nuts.html#aceabaf9d1acdf64b0d084e354ede9564',1,'stan::mcmc::base_nuts::transition()'],['../classstan_1_1mcmc_1_1adapt__dense__e__static__hmc.html#a406a335276134a2f86fa3e4c24925e4f',1,'stan::mcmc::adapt_dense_e_static_hmc::transition()'],['../classstan_1_1mcmc_1_1adapt__diag__e__static__hmc.html#a1dfaa6a5fe56df79856bc2f3789e9895',1,'stan::mcmc::adapt_diag_e_static_hmc::transition()'],['../classstan_1_1mcmc_1_1adapt__unit__e__static__hmc.html#a7db6fa5aedf5f35ceadca297f28f9914',1,'stan::mcmc::adapt_unit_e_static_hmc::transition()'],['../classstan_1_1mcmc_1_1base__static__hmc.html#aad1ceb75b092cdefe079b2c81275f501',1,'stan::mcmc::base_static_hmc::transition()']]], + ['transpose',['transpose',['../namespacestan_1_1math.html#a9db6bf273b69e20dc12e0c348b928296',1,'stan::math']]], + ['trigamma',['trigamma',['../namespacestan_1_1math.html#ab18c21bad37c9af26424d0922936355e',1,'stan::math']]], + ['trunc',['trunc',['../namespacestan_1_1agrad.html#aea02c702f338cc531cdb7b6e11344b34',1,'stan::agrad::trunc(const fvar< T > &x)'],['../namespacestan_1_1agrad.html#af5cde78a4f7b7ee45f8f98c75343174e',1,'stan::agrad::trunc(const stan::agrad::var &a)']]], + ['type',['type',['../structstan_1_1gm_1_1expr__type.html#adb52e22aa9f56f528c4a5305ae562364',1,'stan::gm::expr_type']]] +]; diff --git a/doc/api/html/search/functions_75.html b/doc/api/html/search/functions_75.html new file mode 100644 index 00000000000..2d61754d166 --- /dev/null +++ b/doc/api/html/search/functions_75.html @@ -0,0 +1,25 @@ + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/doc/api/html/search/functions_75.js b/doc/api/html/search/functions_75.js new file mode 100644 index 00000000000..b81d3e32441 --- /dev/null +++ b/doc/api/html/search/functions_75.js @@ -0,0 +1,25 @@ +var searchData= +[ + ['ub_5fconstrain',['ub_constrain',['../namespacestan_1_1prob.html#a3cc62d5f301ccbb23e1e97231d736c4c',1,'stan::prob::ub_constrain(const T x, const TU ub)'],['../namespacestan_1_1prob.html#ac41afc3f7ad3b927d352383d4a8dea7f',1,'stan::prob::ub_constrain(const T x, const TU ub, T &lp)']]], + ['ub_5ffree',['ub_free',['../namespacestan_1_1prob.html#aa0fbf5448b5fdc2510256bbc73cc9b49',1,'stan::prob']]], + ['unary_5fop',['unary_op',['../structstan_1_1gm_1_1unary__op.html#a98e5a64686af8cefd3293e1925c2a3b1',1,'stan::gm::unary_op']]], + ['unconstrained_5fparam_5fnames_5fvisgen',['unconstrained_param_names_visgen',['../structstan_1_1gm_1_1unconstrained__param__names__visgen.html#a0fe661e868b54bff65d31a93d2c9e86e',1,'stan::gm::unconstrained_param_names_visgen']]], + ['uniform_5fccdf_5flog',['uniform_ccdf_log',['../namespacestan_1_1prob.html#ab524f79f1c0a3d5f97b1e481b21f1736',1,'stan::prob']]], + ['uniform_5fcdf',['uniform_cdf',['../namespacestan_1_1prob.html#a2540292f80682fd8971fcf9b5c0b35b1',1,'stan::prob']]], + ['uniform_5fcdf_5flog',['uniform_cdf_log',['../namespacestan_1_1prob.html#a05dfe81e20c266f06cc111b1571edb4d',1,'stan::prob']]], + ['uniform_5flog',['uniform_log',['../namespacestan_1_1prob.html#a20f9e437a772626e4e6aac94f58f60fa',1,'stan::prob::uniform_log(const T_y &y, const T_low &alpha, const T_high &beta)'],['../namespacestan_1_1prob.html#a520f558845310e1de1e8692a8ac5ab23',1,'stan::prob::uniform_log(const T_y &y, const T_low &alpha, const T_high &beta)']]], + ['uniform_5frng',['uniform_rng',['../namespacestan_1_1prob.html#ab9c29e62027123e900b55f29170e2426',1,'stan::prob']]], + ['unit_5fe_5fmetric',['unit_e_metric',['../classstan_1_1mcmc_1_1unit__e__metric.html#acdbee1cba43deae117af1312703ab2b4',1,'stan::mcmc::unit_e_metric']]], + ['unit_5fe_5fnuts',['unit_e_nuts',['../classstan_1_1mcmc_1_1unit__e__nuts.html#a0e74025d0c07dee2edc39b43d6fa85be',1,'stan::mcmc::unit_e_nuts']]], + ['unit_5fe_5fpoint',['unit_e_point',['../classstan_1_1mcmc_1_1unit__e__point.html#a8ab0ffea3990bf0b8cdb289e1f7327ef',1,'stan::mcmc::unit_e_point']]], + ['unit_5fe_5fstatic_5fhmc',['unit_e_static_hmc',['../classstan_1_1mcmc_1_1unit__e__static__hmc.html#aa3f18e181e9b27bc487ec48af5ddd9c1',1,'stan::mcmc::unit_e_static_hmc']]], + ['unit_5fvector',['unit_vector',['../classstan_1_1io_1_1reader.html#a6b8ebf459013095c8bef590c5e7f2dd2',1,'stan::io::reader']]], + ['unit_5fvector_5fconstrain',['unit_vector_constrain',['../classstan_1_1io_1_1reader.html#aafcb145538d7414947c3420b652ad962',1,'stan::io::reader::unit_vector_constrain(size_t k)'],['../classstan_1_1io_1_1reader.html#ac4c986f3ceee7c402820835ba7bfde62',1,'stan::io::reader::unit_vector_constrain(size_t k, T &lp)'],['../namespacestan_1_1prob.html#afd9044ce24ca929e0d1fcf49fdfcb7cc',1,'stan::prob::unit_vector_constrain(const Eigen::Matrix< T, Eigen::Dynamic, 1 > &y)'],['../namespacestan_1_1prob.html#ac361cea0021ad5cbd7d9daa32935bf9b',1,'stan::prob::unit_vector_constrain(const Eigen::Matrix< T, Eigen::Dynamic, 1 > &y, T &lp)']]], + ['unit_5fvector_5ffree',['unit_vector_free',['../namespacestan_1_1prob.html#aa72cd0f07fe68884774feea5e5c0056c',1,'stan::prob']]], + ['unit_5fvector_5funconstrain',['unit_vector_unconstrain',['../classstan_1_1io_1_1writer.html#aa0f2b9b17db03235f4cd3f90092ac6d0',1,'stan::io::writer']]], + ['unit_5fvector_5fvar_5fdecl',['unit_vector_var_decl',['../structstan_1_1gm_1_1unit__vector__var__decl.html#a76baa9fd153a608c6d4e0b4077ddd1bc',1,'stan::gm::unit_vector_var_decl::unit_vector_var_decl()'],['../structstan_1_1gm_1_1unit__vector__var__decl.html#a2cdc1ee5970cc4e9d06362b1a51bdb7c',1,'stan::gm::unit_vector_var_decl::unit_vector_var_decl(expression const &K, std::string const &name, std::vector< expression > const &dims)']]], + ['unvalued_5fargument',['unvalued_argument',['../classstan_1_1gm_1_1unvalued__argument.html#ad92f588ed35ed51647cac11f883a945a',1,'stan::gm::unvalued_argument']]], + ['update',['update',['../classstan_1_1mcmc_1_1base__hamiltonian.html#a72b6cc15dc1f074e871fbd77c3d49ed8',1,'stan::mcmc::base_hamiltonian']]], + ['update_5fq',['update_q',['../classstan_1_1mcmc_1_1base__leapfrog.html#aafd8bbf5fcf3ac4246ce798bbe085098',1,'stan::mcmc::base_leapfrog::update_q()'],['../classstan_1_1mcmc_1_1expl__leapfrog.html#ab0ac437892b1206c0bb581e5db52ba0e',1,'stan::mcmc::expl_leapfrog::update_q()']]], + ['utc_5ftime_5fstring',['utc_time_string',['../namespacestan_1_1io.html#a56441daea55f49d4bcb168b30d7313f0',1,'stan::io']]] +]; diff --git a/doc/api/html/search/functions_76.html b/doc/api/html/search/functions_76.html new file mode 100644 index 00000000000..2ec05695c16 --- /dev/null +++ b/doc/api/html/search/functions_76.html @@ -0,0 +1,25 @@ + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/doc/api/html/search/functions_76.js b/doc/api/html/search/functions_76.js new file mode 100644 index 00000000000..21ae31ddfe2 --- /dev/null +++ b/doc/api/html/search/functions_76.js @@ -0,0 +1,60 @@ +var searchData= +[ + ['v',['V',['../classstan_1_1mcmc_1_1base__hamiltonian.html#a833128e107a090d7b285ca34a80c6881',1,'stan::mcmc::base_hamiltonian']]], + ['val',['val',['../classstan_1_1agrad_1_1var.html#a3c15579ed3018cae0a0bf556bed164e3',1,'stan::agrad::var::val()'],['../structstan_1_1agrad_1_1fvar.html#a4a8422fc2fcf430e05a5a05cf3c14fe0',1,'stan::agrad::fvar::val()'],['../classstan_1_1agrad_1_1var.html#a3c15579ed3018cae0a0bf556bed164e3',1,'stan::agrad::var::val()'],['../classstan_1_1io_1_1cmd__line.html#a44c058f7d1a236d9fdc95720191e8bd2',1,'stan::io::cmd_line::val()']]], + ['valid_5fvalue',['valid_value',['../classstan_1_1gm_1_1list__argument.html#a73dd9564f755fa41db8dfad1186ba269',1,'stan::gm::list_argument']]], + ['validate_5farray',['validate_array',['../structstan_1_1gm_1_1validate__transformed__params__visgen.html#a36abc2dc33d5d8053dbe93a30444fca4',1,'stan::gm::validate_transformed_params_visgen']]], + ['validate_5fcolumn_5findex',['validate_column_index',['../namespacestan_1_1math.html#a0908a541f73f2d206d9bc0d41c487a4d',1,'stan::math']]], + ['validate_5fdims',['validate_dims',['../classstan_1_1io_1_1var__context.html#a6b4a742d7a221312bc81fc4fdd9bf011',1,'stan::io::var_context']]], + ['validate_5fgreater',['validate_greater',['../namespacestan_1_1math.html#a954f9705a277937f1a4e39f85c226304',1,'stan::math']]], + ['validate_5fgreater_5for_5fequal',['validate_greater_or_equal',['../namespacestan_1_1math.html#a153a2d6e5f828a2dc08ccba7dab2ba02',1,'stan::math']]], + ['validate_5fless',['validate_less',['../namespacestan_1_1math.html#a849c8dde0b08965817c862676d5b8aa3',1,'stan::math']]], + ['validate_5fless_5for_5fequal',['validate_less_or_equal',['../namespacestan_1_1math.html#a3f5968c67a61a65e3fe2a434d9ffb7bf',1,'stan::math']]], + ['validate_5fmatching_5fdims',['validate_matching_dims',['../namespacestan_1_1math.html#a6c2cb320ad093bb28e503258b3681826',1,'stan::math']]], + ['validate_5fmatching_5fsizes',['validate_matching_sizes',['../namespacestan_1_1math.html#ad53597362a6c7c1158057959fcac292e',1,'stan::math::validate_matching_sizes(const std::vector< T1 > &x1, const std::vector< T2 > &x2, const char *msg)'],['../namespacestan_1_1math.html#a41ec7da4239a007943fc013e07cba3aa',1,'stan::math::validate_matching_sizes(const Eigen::Matrix< T1, R1, C1 > &x1, const Eigen::Matrix< T2, R2, C2 > &x2, const char *msg)'],['../namespacestan_1_1math.html#a263171956617573c8cd3c1d18fd6ceb3',1,'stan::math::validate_matching_sizes(const Eigen::Block< Derived > &x1, const Eigen::Matrix< T2, R2, C2 > &x2, const char *msg)'],['../namespacestan_1_1math.html#a8129ae89cd2dbb265cb12b92f8e04422',1,'stan::math::validate_matching_sizes(const Eigen::Matrix< T1, R1, C1 > &x1, const Eigen::Block< Derived > &x2, const char *msg)'],['../namespacestan_1_1math.html#affd4c08b7da0d68132fa34cb400ea42f',1,'stan::math::validate_matching_sizes(const Eigen::Block< Derived1 > &x1, const Eigen::Block< Derived2 > &x2, const char *msg)']]], + ['validate_5fmultiplicable',['validate_multiplicable',['../namespacestan_1_1math.html#a2f8623dd71addc9eb308adbd79650173',1,'stan::math']]], + ['validate_5fnon_5fnegative_5findex',['validate_non_negative_index',['../namespacestan_1_1math.html#a3abcd9b7deac4b6378eae04ee927f498',1,'stan::math']]], + ['validate_5fnon_5fnegative_5frep',['validate_non_negative_rep',['../namespacestan_1_1math.html#aa5fcab47a4a1c557ed22ce8c9dfa4690',1,'stan::math']]], + ['validate_5fnonzero_5fsize',['validate_nonzero_size',['../namespacestan_1_1math.html#ab4ad50f7ce663f08887cc98f00325102',1,'stan::math']]], + ['validate_5frow_5findex',['validate_row_index',['../namespacestan_1_1math.html#a89eabaf81a12e1ba52dc95991f3c7cec',1,'stan::math']]], + ['validate_5fsquare',['validate_square',['../namespacestan_1_1math.html#a80e2967cc986a918329c7e226aa97d35',1,'stan::math']]], + ['validate_5fstd_5fvector_5findex',['validate_std_vector_index',['../namespacestan_1_1math.html#aa8bef2aad224049eb13f5de732d60805',1,'stan::math']]], + ['validate_5fsymmetric',['validate_symmetric',['../namespacestan_1_1math.html#a3e7c964f96b6454223b9204f463ad674',1,'stan::math']]], + ['validate_5ftransformed_5fparams_5fvisgen',['validate_transformed_params_visgen',['../structstan_1_1gm_1_1validate__transformed__params__visgen.html#a7a4e7704245e4a73bc886041c82c91e5',1,'stan::gm::validate_transformed_params_visgen']]], + ['validate_5fvar_5fdecl_5fvisgen',['validate_var_decl_visgen',['../structstan_1_1gm_1_1validate__var__decl__visgen.html#a271a3fadedfb0fe40560244c26f4aef4',1,'stan::gm::validate_var_decl_visgen']]], + ['validate_5fvector',['validate_vector',['../namespacestan_1_1math.html#a883b9b83e5ca3d865f9dcf26d57a69fe',1,'stan::math']]], + ['vals_5fi',['vals_i',['../classstan_1_1io_1_1dump.html#ac9a6ba06213461f7d86c5823813de2bd',1,'stan::io::dump::vals_i()'],['../classstan_1_1io_1_1var__context.html#ae491a228dc66136ed04f9d22b18386d2',1,'stan::io::var_context::vals_i()']]], + ['vals_5fr',['vals_r',['../classstan_1_1io_1_1dump.html#aa9b7bc08c1152a313e90b74ade5338b5',1,'stan::io::dump::vals_r()'],['../classstan_1_1io_1_1var__context.html#aaf3c30da7aa7a81b67d0cb3a480a5295',1,'stan::io::var_context::vals_r()']]], + ['value',['value',['../classstan_1_1gm_1_1list__argument.html#a5c53e1ae1cbfea372b538425868f0c42',1,'stan::gm::list_argument::value()'],['../classstan_1_1gm_1_1singleton__argument.html#a7c7d0321e410a7cf3cecfcda7ddbaa4a',1,'stan::gm::singleton_argument::value()']]], + ['value_5fof',['value_of',['../namespacestan_1_1agrad.html#a8ce52917ab0cd91c9db4d615f1988e11',1,'stan::agrad::value_of(const agrad::var &v)'],['../namespacestan_1_1agrad.html#a241ff687791a297532aeed5955d6b137',1,'stan::agrad::value_of(const Eigen::Matrix< double, R, C > &M)'],['../namespacestan_1_1agrad.html#aef1424bdc8ef1058ec2cef4584bb6d5f',1,'stan::agrad::value_of(const Eigen::Matrix< var, R, C > &M)'],['../namespacestan_1_1math.html#a73087d72fd937f4be66684bd2613ae6e',1,'stan::math::value_of()']]], + ['value_5fof_3c_20double_20_3e',['value_of< double >',['../namespacestan_1_1math.html#a2d7774df98215b7d113075019d74ebbf',1,'stan::math']]], + ['values',['values',['../classstan_1_1gm_1_1list__argument.html#a0e44b787e5dd125a719e8ea75d621ceb',1,'stan::gm::list_argument']]], + ['var',['var',['../classstan_1_1agrad_1_1var.html#adfb9d02c364f36d433ebbe551ed5cf6d',1,'stan::agrad::var::var(vari *vi)'],['../classstan_1_1agrad_1_1var.html#a338e1033dc034d6333060ec779200146',1,'stan::agrad::var::var()'],['../classstan_1_1agrad_1_1var.html#af45c7283eb94f118473d6590387ae2bb',1,'stan::agrad::var::var(bool b)'],['../classstan_1_1agrad_1_1var.html#a36df08fb95336e5c4475768447cc17dc',1,'stan::agrad::var::var(char c)'],['../classstan_1_1agrad_1_1var.html#add6c4253ae479385de58f2dd02e5e82e',1,'stan::agrad::var::var(short n)'],['../classstan_1_1agrad_1_1var.html#ac4651f0c746a0f08974866f3052b7137',1,'stan::agrad::var::var(unsigned short n)'],['../classstan_1_1agrad_1_1var.html#a8a75e2e91a261d9919cc05ca0e2535c3',1,'stan::agrad::var::var(int n)'],['../classstan_1_1agrad_1_1var.html#a3044e37414ac3abe97862ec2a9bbc7a7',1,'stan::agrad::var::var(unsigned int n)'],['../classstan_1_1agrad_1_1var.html#a5603249b00e49e3b3176a7652274bd8f',1,'stan::agrad::var::var(long int n)'],['../classstan_1_1agrad_1_1var.html#acdc706002d30bae61e31b94706110f66',1,'stan::agrad::var::var(unsigned long int n)'],['../classstan_1_1agrad_1_1var.html#a4160c721453aae2e1ab1a10d082e5ea4',1,'stan::agrad::var::var(float x)'],['../classstan_1_1agrad_1_1var.html#a5af3ea95797e2c3789a01a32dab060e6',1,'stan::agrad::var::var(double x)'],['../classstan_1_1agrad_1_1var.html#ab2b3011f87a92d85b32f6a0da738c46e',1,'stan::agrad::var::var(long double x)'],['../classstan_1_1agrad_1_1var.html#adfb9d02c364f36d433ebbe551ed5cf6d',1,'stan::agrad::var::var(vari *vi)'],['../classstan_1_1agrad_1_1var.html#a338e1033dc034d6333060ec779200146',1,'stan::agrad::var::var()'],['../classstan_1_1agrad_1_1var.html#af45c7283eb94f118473d6590387ae2bb',1,'stan::agrad::var::var(bool b)'],['../classstan_1_1agrad_1_1var.html#a36df08fb95336e5c4475768447cc17dc',1,'stan::agrad::var::var(char c)'],['../classstan_1_1agrad_1_1var.html#add6c4253ae479385de58f2dd02e5e82e',1,'stan::agrad::var::var(short n)'],['../classstan_1_1agrad_1_1var.html#ac4651f0c746a0f08974866f3052b7137',1,'stan::agrad::var::var(unsigned short n)'],['../classstan_1_1agrad_1_1var.html#a8a75e2e91a261d9919cc05ca0e2535c3',1,'stan::agrad::var::var(int n)'],['../classstan_1_1agrad_1_1var.html#a3044e37414ac3abe97862ec2a9bbc7a7',1,'stan::agrad::var::var(unsigned int n)'],['../classstan_1_1agrad_1_1var.html#a5603249b00e49e3b3176a7652274bd8f',1,'stan::agrad::var::var(long int n)'],['../classstan_1_1agrad_1_1var.html#acdc706002d30bae61e31b94706110f66',1,'stan::agrad::var::var(unsigned long int n)'],['../classstan_1_1agrad_1_1var.html#a050ffd5f911d423f27673bc531e1e9c1',1,'stan::agrad::var::var(unsigned long long n)'],['../classstan_1_1agrad_1_1var.html#a078422d44f10f7e4dadfeb9424f6fa94',1,'stan::agrad::var::var(long long n)'],['../classstan_1_1agrad_1_1var.html#a4160c721453aae2e1ab1a10d082e5ea4',1,'stan::agrad::var::var(float x)'],['../classstan_1_1agrad_1_1var.html#a5af3ea95797e2c3789a01a32dab060e6',1,'stan::agrad::var::var(double x)'],['../classstan_1_1agrad_1_1var.html#ab2b3011f87a92d85b32f6a0da738c46e',1,'stan::agrad::var::var(long double x)']]], + ['var_5fadaptation',['var_adaptation',['../classstan_1_1mcmc_1_1var__adaptation.html#a6a890bf02c8dba36880f8e273b2f9549',1,'stan::mcmc::var_adaptation']]], + ['var_5fdecl',['var_decl',['../structstan_1_1gm_1_1var__decl.html#a609249d793137a66288e59763f0c0ca1',1,'stan::gm::var_decl::var_decl()'],['../structstan_1_1gm_1_1var__decl.html#ad6b9ea345106c83e5c9a006142d195e7',1,'stan::gm::var_decl::var_decl(const var_decl_t &decl)'],['../structstan_1_1gm_1_1var__decl.html#a2e0ba8dd969d92d891856d0e9b0d6b15',1,'stan::gm::var_decl::var_decl(const nil &decl)'],['../structstan_1_1gm_1_1var__decl.html#aea6f39c72a547284867577e99479f92c',1,'stan::gm::var_decl::var_decl(const int_var_decl &decl)'],['../structstan_1_1gm_1_1var__decl.html#ace6a19a8b112ee1bae58bb097cc4cde1',1,'stan::gm::var_decl::var_decl(const double_var_decl &decl)'],['../structstan_1_1gm_1_1var__decl.html#adabe31b1d68c4fedd82c583cebf31144',1,'stan::gm::var_decl::var_decl(const vector_var_decl &decl)'],['../structstan_1_1gm_1_1var__decl.html#a99d47a87450d915d42f2a5ab0731a307',1,'stan::gm::var_decl::var_decl(const row_vector_var_decl &decl)'],['../structstan_1_1gm_1_1var__decl.html#ac4ec89ef8d699e42d15ad4313a85b912',1,'stan::gm::var_decl::var_decl(const matrix_var_decl &decl)'],['../structstan_1_1gm_1_1var__decl.html#a1375d5fae7161b6788290acb062bf332',1,'stan::gm::var_decl::var_decl(const simplex_var_decl &decl)'],['../structstan_1_1gm_1_1var__decl.html#a02bd1875a6b106c8200a8c1c268ce23a',1,'stan::gm::var_decl::var_decl(const unit_vector_var_decl &decl)'],['../structstan_1_1gm_1_1var__decl.html#a6c5e46d11317ad8b9952c3732a50ba3a',1,'stan::gm::var_decl::var_decl(const ordered_var_decl &decl)'],['../structstan_1_1gm_1_1var__decl.html#a6c0661f7389c05f0c1a7f2ab94886205',1,'stan::gm::var_decl::var_decl(const positive_ordered_var_decl &decl)'],['../structstan_1_1gm_1_1var__decl.html#a9557a2d4d9e64c5bccc65c7110c726f5',1,'stan::gm::var_decl::var_decl(const cholesky_factor_var_decl &decl)'],['../structstan_1_1gm_1_1var__decl.html#a700ecb84f6ed7e2f100409c026cc6a6a',1,'stan::gm::var_decl::var_decl(const cov_matrix_var_decl &decl)'],['../structstan_1_1gm_1_1var__decl.html#acacc89bd6b788a9ea8b509153957e21e',1,'stan::gm::var_decl::var_decl(const corr_matrix_var_decl &decl)']]], + ['var_5fdecls_5fgrammar',['var_decls_grammar',['../structstan_1_1gm_1_1var__decls__grammar.html#ae9971b3fb03092c02d4f4d12a9d05277',1,'stan::gm::var_decls_grammar']]], + ['var_5fresizing_5fvisgen',['var_resizing_visgen',['../structstan_1_1gm_1_1var__resizing__visgen.html#ac5178b0a38aa8258bcbf689ae03d895b',1,'stan::gm::var_resizing_visgen']]], + ['var_5fsize_5fvalidating_5fvisgen',['var_size_validating_visgen',['../structstan_1_1gm_1_1var__size__validating__visgen.html#ade6d9d7b7a8904cf3d32ff16283143cc',1,'stan::gm::var_size_validating_visgen']]], + ['vari',['vari',['../classstan_1_1agrad_1_1vari.html#add6d0976a3103aebe8b529fb3a4aede3',1,'stan::agrad::vari::vari(const double x)'],['../classstan_1_1agrad_1_1vari.html#add6d0976a3103aebe8b529fb3a4aede3',1,'stan::agrad::vari::vari(const double x)'],['../classstan_1_1agrad_1_1vari.html#a38eab19f6ecee276e3f306c14df18403',1,'stan::agrad::vari::vari(const double x, bool stacked)']]], + ['variable',['variable',['../structstan_1_1gm_1_1variable.html#a4d6553f00364503f9b3c1b09cce2742a',1,'stan::gm::variable::variable()'],['../structstan_1_1gm_1_1variable.html#a7a550a388056ef05489c8947aaa4d664',1,'stan::gm::variable::variable(std::string name)']]], + ['variable_5fdims',['variable_dims',['../structstan_1_1gm_1_1variable__dims.html#a58ef01ac93eb73561446431890023fcb',1,'stan::gm::variable_dims::variable_dims()'],['../structstan_1_1gm_1_1variable__dims.html#aa35ae19b846c7eed5571dc6c62b51629',1,'stan::gm::variable_dims::variable_dims(std::string const &name, std::vector< expression > const &dims)']]], + ['variance',['variance',['../classstan_1_1mcmc_1_1chains.html#ada94492fb9209194467c40ee0c70ae7e',1,'stan::mcmc::chains::variance(const int chain, const int index)'],['../classstan_1_1mcmc_1_1chains.html#a2a490e9c65ef24c24d90363c762606cb',1,'stan::mcmc::chains::variance(const int index)'],['../classstan_1_1mcmc_1_1chains.html#a5e82c2ed22640dc97e77000030cad474',1,'stan::mcmc::chains::variance(const int chain, const std::string &name)'],['../classstan_1_1mcmc_1_1chains.html#ac73d02b763998c65a573f3e3f770833b',1,'stan::mcmc::chains::variance(const std::string &name)'],['../namespacestan_1_1agrad.html#a4cb2a39469233dedb86b1000789a9595',1,'stan::agrad::variance(const std::vector< var > &v)'],['../namespacestan_1_1agrad.html#a7ef648c386bf96d4cdc8b688f8de02af',1,'stan::agrad::variance(const Eigen::Matrix< var, R, C > &m)'],['../namespacestan_1_1math.html#aa433ac2fc47bbd40a6d87f62574dff85',1,'stan::math::variance(const std::vector< T > &v)'],['../namespacestan_1_1math.html#a1f055da8754c2215aac70d7787692f54',1,'stan::math::variance(const Eigen::Matrix< T, R, C > &m)']]], + ['vector',['vector',['../classstan_1_1io_1_1reader.html#ac7cbe04c9a1439e20b27c3cf612bd963',1,'stan::io::reader']]], + ['vector_5fconstrain',['vector_constrain',['../classstan_1_1io_1_1reader.html#a393939c8de7bd2609b069424244b005a',1,'stan::io::reader::vector_constrain(size_t m)'],['../classstan_1_1io_1_1reader.html#aec8c3e697090c981438b94da63c02ccc',1,'stan::io::reader::vector_constrain(size_t m, T &)']]], + ['vector_5flb',['vector_lb',['../classstan_1_1io_1_1reader.html#ae6eeeaea16178783def48d93e92e502e',1,'stan::io::reader']]], + ['vector_5flb_5fconstrain',['vector_lb_constrain',['../classstan_1_1io_1_1reader.html#a8edd356b9b6575e74458dfc36fd1079c',1,'stan::io::reader::vector_lb_constrain(const TL lb, size_t m)'],['../classstan_1_1io_1_1reader.html#a380b2abea05be45eef534178ccddae74',1,'stan::io::reader::vector_lb_constrain(const TL lb, size_t m, T &lp)']]], + ['vector_5flb_5funconstrain',['vector_lb_unconstrain',['../classstan_1_1io_1_1writer.html#ad47362a39537ff1b5d771780ee652d2b',1,'stan::io::writer']]], + ['vector_5flub',['vector_lub',['../classstan_1_1io_1_1reader.html#acfa86e4338c499595998dd4dc0b58c6d',1,'stan::io::reader']]], + ['vector_5flub_5fconstrain',['vector_lub_constrain',['../classstan_1_1io_1_1reader.html#aa0eb51076e214b1cfee60b70260186c8',1,'stan::io::reader::vector_lub_constrain(const TL lb, const TU ub, size_t m)'],['../classstan_1_1io_1_1reader.html#a6f0780b890a223ecc7840732bda385e5',1,'stan::io::reader::vector_lub_constrain(const TL lb, const TU ub, size_t m, T &lp)']]], + ['vector_5flub_5funconstrain',['vector_lub_unconstrain',['../classstan_1_1io_1_1writer.html#a2cd367320f480096f724c2e180f6abfe',1,'stan::io::writer']]], + ['vector_5fub',['vector_ub',['../classstan_1_1io_1_1reader.html#a35d1322b79079e9227ae225a480807db',1,'stan::io::reader']]], + ['vector_5fub_5fconstrain',['vector_ub_constrain',['../classstan_1_1io_1_1reader.html#a5f5c24c79245cdcdc447f1d70ab16f67',1,'stan::io::reader::vector_ub_constrain(const TU ub, size_t m)'],['../classstan_1_1io_1_1reader.html#a7c62e6ad093def5f59767807a3c46b74',1,'stan::io::reader::vector_ub_constrain(const TU ub, size_t m, T &lp)']]], + ['vector_5fub_5funconstrain',['vector_ub_unconstrain',['../classstan_1_1io_1_1writer.html#a4d032dfecf63d6cc4f4fbe9acfbf1d26',1,'stan::io::writer']]], + ['vector_5funconstrain',['vector_unconstrain',['../classstan_1_1io_1_1writer.html#a5fac170691f85ce21490c654985c2880',1,'stan::io::writer']]], + ['vector_5fvar_5fdecl',['vector_var_decl',['../structstan_1_1gm_1_1vector__var__decl.html#a75bee96d48f65c3656c0195e9ddd658c',1,'stan::gm::vector_var_decl::vector_var_decl()'],['../structstan_1_1gm_1_1vector__var__decl.html#ae60a0d9f611230785a264fe1057b070c',1,'stan::gm::vector_var_decl::vector_var_decl(range const &range, expression const &M, std::string const &name, std::vector< expression > const &dims)']]], + ['vectord',['vectorD',['../classstan_1_1math_1_1_l_d_l_t__factor_3_01stan_1_1agrad_1_1var_00_01_r_00_01_c_01_4.html#a70f353ecf9a5d7e74e3685fda7c35abb',1,'stan::math::LDLT_factor< stan::agrad::var, R, C >::vectorD()'],['../classstan_1_1math_1_1_l_d_l_t__factor_3_01double_00_01_r_00_01_c_01_4.html#a6cb8d421e1c1578b6ce1885cffe73155',1,'stan::math::LDLT_factor< double, R, C >::vectorD()']]], + ['vectorview',['VectorView',['../classstan_1_1_vector_view.html#a49530fcffe86b987cc16c9db07433a01',1,'stan::VectorView::VectorView(scalar_t &c)'],['../classstan_1_1_vector_view.html#aa8cf0eb6c25b3e6e7ab4164d3327cab3',1,'stan::VectorView::VectorView(std::vector< scalar_t > &v)'],['../classstan_1_1_vector_view.html#a1a2167039be334fe553432580f7ec4ee',1,'stan::VectorView::VectorView(Eigen::Matrix< scalar_t, R, C > &m)'],['../classstan_1_1_vector_view.html#ace98de1e8835b3317330d98fa34b981b',1,'stan::VectorView::VectorView(scalar_t *x)'],['../classstan_1_1_vector_view_3_01const_01_t_00_01is__array_00_01throw__if__accessed_01_4.html#a144dc75865388d9e80c153d6651a9bab',1,'stan::VectorView< const T, is_array, throw_if_accessed >::VectorView(const scalar_t &c)'],['../classstan_1_1_vector_view_3_01const_01_t_00_01is__array_00_01throw__if__accessed_01_4.html#a2e063aacbcb8999b921bce5d52557646',1,'stan::VectorView< const T, is_array, throw_if_accessed >::VectorView(const scalar_t *x)'],['../classstan_1_1_vector_view_3_01const_01_t_00_01is__array_00_01throw__if__accessed_01_4.html#a8a70c613d18b72f45466591168f354dc',1,'stan::VectorView< const T, is_array, throw_if_accessed >::VectorView(const std::vector< scalar_t > &v)'],['../classstan_1_1_vector_view_3_01const_01_t_00_01is__array_00_01throw__if__accessed_01_4.html#af337a1b8ede134a1debe59fbee1cd1e1',1,'stan::VectorView< const T, is_array, throw_if_accessed >::VectorView(const Eigen::Matrix< scalar_t, R, C > &m)'],['../classstan_1_1_vector_view_3_01const_01double_00_01false_00_01false_01_4.html#af57df094db378d9da317b93d23c34ab1',1,'stan::VectorView< const double, false, false >::VectorView()']]], + ['verbose_5fevolve',['verbose_evolve',['../classstan_1_1mcmc_1_1base__leapfrog.html#a514877fc7879757485b997d90074393d',1,'stan::mcmc::base_leapfrog']]], + ['visgen',['visgen',['../structstan_1_1gm_1_1visgen.html#a3e7e38e3b411dc26e0451cc3327018ca',1,'stan::gm::visgen']]], + ['von_5fmises_5flog',['von_mises_log',['../namespacestan_1_1prob.html#a5f25537bc65fd6699824c9c5829c9e0a',1,'stan::prob::von_mises_log(T_y const &y, T_loc const &mu, T_scale const &kappa)'],['../namespacestan_1_1prob.html#a34be34d214b53bf3d2f158ebe9b4c93d',1,'stan::prob::von_mises_log(T_y const &y, T_loc const &mu, T_scale const &kappa)']]] +]; diff --git a/doc/api/html/search/functions_77.html b/doc/api/html/search/functions_77.html new file mode 100644 index 00000000000..8fe97554fba --- /dev/null +++ b/doc/api/html/search/functions_77.html @@ -0,0 +1,25 @@ + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/doc/api/html/search/functions_77.js b/doc/api/html/search/functions_77.js new file mode 100644 index 00000000000..90b34bb6c41 --- /dev/null +++ b/doc/api/html/search/functions_77.js @@ -0,0 +1,38 @@ +var searchData= +[ + ['warmup',['warmup',['../classstan_1_1mcmc_1_1chains.html#a4a6916b3af4d4f7ecf848a4587157e2d',1,'stan::mcmc::chains::warmup()'],['../classstan_1_1mcmc_1_1chains.html#a5d009a5e09853cdf0181c6bb68f1680a',1,'stan::mcmc::chains::warmup(const int chain)'],['../namespacestan_1_1gm.html#a98eeb261d85ab5d16b98b8cfeaeb31cc',1,'stan::gm::warmup()']]], + ['weibull_5fccdf_5flog',['weibull_ccdf_log',['../namespacestan_1_1prob.html#a77b3086174c8c53f64a6040926e463c7',1,'stan::prob']]], + ['weibull_5fcdf',['weibull_cdf',['../namespacestan_1_1prob.html#aebe40f64269bb4cad34cbf93faa258a3',1,'stan::prob']]], + ['weibull_5fcdf_5flog',['weibull_cdf_log',['../namespacestan_1_1prob.html#adf406916a5b4faaa7ff6c09f38029418',1,'stan::prob']]], + ['weibull_5flog',['weibull_log',['../namespacestan_1_1prob.html#ac9dd426180e500e8ce9ab2e401393c5a',1,'stan::prob::weibull_log(const T_y &y, const T_shape &alpha, const T_scale &sigma)'],['../namespacestan_1_1prob.html#ac782f55b0a8994488c5a02f7977799cf',1,'stan::prob::weibull_log(const T_y &y, const T_shape &alpha, const T_scale &sigma)']]], + ['weibull_5frng',['weibull_rng',['../namespacestan_1_1prob.html#a446b0eda07246d07a2d539c9a511ea7e',1,'stan::prob']]], + ['welford_5fcovar_5festimator',['welford_covar_estimator',['../classstan_1_1prob_1_1welford__covar__estimator.html#a185e1767d0634b283c66f8d845bb42d7',1,'stan::prob::welford_covar_estimator']]], + ['welford_5fvar_5festimator',['welford_var_estimator',['../classstan_1_1prob_1_1welford__var__estimator.html#adcb9ab77cf1496f0d81a605e4b503608',1,'stan::prob::welford_var_estimator']]], + ['while_5fstatement',['while_statement',['../structstan_1_1gm_1_1while__statement.html#a3d22ddf0941379465a1d233308baa78c',1,'stan::gm::while_statement::while_statement()'],['../structstan_1_1gm_1_1while__statement.html#afcb474205331a4302d5b57e1d334208a',1,'stan::gm::while_statement::while_statement(const expression &condition, const statement &body)']]], + ['whitespace_5fgrammar',['whitespace_grammar',['../structstan_1_1gm_1_1whitespace__grammar.html#aa64db66377f7420f39162295148f2582',1,'stan::gm::whitespace_grammar']]], + ['windowed_5fadaptation',['windowed_adaptation',['../classstan_1_1mcmc_1_1windowed__adaptation.html#a80584644c847ec89734ec4dd578ce6af',1,'stan::mcmc::windowed_adaptation']]], + ['wishart_5flog',['wishart_log',['../namespacestan_1_1prob.html#a10fd2efedb0954c290861d22335bd384',1,'stan::prob::wishart_log(const Eigen::Matrix< T_y, Eigen::Dynamic, Eigen::Dynamic > &W, const T_dof &nu, const Eigen::Matrix< T_scale, Eigen::Dynamic, Eigen::Dynamic > &S)'],['../namespacestan_1_1prob.html#a50a5c47de11d55fe41ce044e3298e7d6',1,'stan::prob::wishart_log(const Eigen::Matrix< T_y, Eigen::Dynamic, Eigen::Dynamic > &W, const T_dof &nu, const Eigen::Matrix< T_scale, Eigen::Dynamic, Eigen::Dynamic > &S)']]], + ['wishart_5frng',['wishart_rng',['../namespacestan_1_1prob.html#a7b8c234f87f003d4f67545ee9eb998b5',1,'stan::prob']]], + ['write',['write',['../classstan_1_1io_1_1csv__writer.html#ac4e076bd6f52bae564b785cb868bac5a',1,'stan::io::csv_writer::write(int n)'],['../classstan_1_1io_1_1csv__writer.html#af5ad776d96e98944627f61f046cd5745',1,'stan::io::csv_writer::write(double x)'],['../classstan_1_1io_1_1csv__writer.html#abeea10d26f5a33df95941359955f6429',1,'stan::io::csv_writer::write(const Eigen::Matrix< double, R, C > &m)'],['../classstan_1_1io_1_1csv__writer.html#a756aee107218b98b5aa5d283f27e853b',1,'stan::io::csv_writer::write(const std::string &s)'],['../classstan_1_1io_1_1dump__writer.html#a7505270979a70bd19a2893f33a0ba346',1,'stan::io::dump_writer::write()']]], + ['write_5farray',['write_array',['../structstan_1_1gm_1_1write__csv__vars__visgen.html#a981030df9dd0720a86077e98a3b7c2f0',1,'stan::gm::write_csv_vars_visgen::write_array()'],['../structstan_1_1gm_1_1write__array__vars__visgen.html#a46d1925738b1d24f2a0f849165d9193c',1,'stan::gm::write_array_vars_visgen::write_array()']]], + ['write_5farray_5fvars_5fvisgen',['write_array_vars_visgen',['../structstan_1_1gm_1_1write__array__vars__visgen.html#a28c75cf8b30d7a8e7121b325c34b028c',1,'stan::gm::write_array_vars_visgen']]], + ['write_5farray_5fvisgen',['write_array_visgen',['../structstan_1_1gm_1_1write__array__visgen.html#afeb5e731732edea5c690dc4b44503557',1,'stan::gm::write_array_visgen']]], + ['write_5fbase_5fexpr_5ftype',['write_base_expr_type',['../namespacestan_1_1gm.html#a281907d01ac42b6c4c703f9285361419',1,'stan::gm']]], + ['write_5fcol_5fmajor',['write_col_major',['../classstan_1_1io_1_1csv__writer.html#ac301f64044fc4f019df0ceea3223434d',1,'stan::io::csv_writer']]], + ['write_5fcsv_5fheader_5fvisgen',['write_csv_header_visgen',['../structstan_1_1gm_1_1write__csv__header__visgen.html#a7931a3de7356bb9013a56703434f57c9',1,'stan::gm::write_csv_header_visgen']]], + ['write_5fcsv_5fvars_5fvisgen',['write_csv_vars_visgen',['../structstan_1_1gm_1_1write__csv__vars__visgen.html#aa0072ea087bb79c27ce204ef8b7d7421',1,'stan::gm::write_csv_vars_visgen']]], + ['write_5fcsv_5fvisgen',['write_csv_visgen',['../structstan_1_1gm_1_1write__csv__visgen.html#a9da769ec38611f0cd1cc785bedb35b31',1,'stan::gm::write_csv_visgen']]], + ['write_5fdims_5fvisgen',['write_dims_visgen',['../structstan_1_1gm_1_1write__dims__visgen.html#a1ab14d8dc3ff1affdc050a81590124d2',1,'stan::gm::write_dims_visgen']]], + ['write_5ferror_5fmsg',['write_error_msg',['../namespacestan_1_1gm.html#aa3f3dcbd71428d79866f8329dc7a3457',1,'stan::gm']]], + ['write_5fiteration',['write_iteration',['../namespacestan_1_1gm.html#aa107b76e763f640def08786dad8785ed',1,'stan::gm']]], + ['write_5fiteration_5fcsv',['write_iteration_csv',['../namespacestan_1_1gm.html#a49e8302dc8c5c3b044f0b5e357d5930b',1,'stan::gm']]], + ['write_5fmetric',['write_metric',['../classstan_1_1mcmc_1_1dense__e__point.html#a9a5591a32c9768f2dd6e80f92b16cf93',1,'stan::mcmc::dense_e_point::write_metric()'],['../classstan_1_1mcmc_1_1diag__e__point.html#a8002286217f14c53715bffe395b9755d',1,'stan::mcmc::diag_e_point::write_metric()'],['../classstan_1_1mcmc_1_1ps__point.html#a5bee8061481a677349a329a037afed1a',1,'stan::mcmc::ps_point::write_metric()']]], + ['write_5fmodel',['write_model',['../namespacestan_1_1gm.html#a62128a7ef9014d6fedf9a2f2358a8976',1,'stan::gm']]], + ['write_5fparam_5fnames_5fvisgen',['write_param_names_visgen',['../structstan_1_1gm_1_1write__param__names__visgen.html#ac4dd97f7d6688523100d412bcd7bfa59',1,'stan::gm::write_param_names_visgen']]], + ['write_5frow_5fmajor',['write_row_major',['../classstan_1_1io_1_1csv__writer.html#a52c5a9818363f72590cc1f3f2a70ab02',1,'stan::io::csv_writer']]], + ['write_5fsampler_5fparam_5fnames',['write_sampler_param_names',['../classstan_1_1mcmc_1_1base__mcmc.html#a2555bcff40b4656f370c751bfe06e9ab',1,'stan::mcmc::base_mcmc::write_sampler_param_names()'],['../classstan_1_1mcmc_1_1base__nuts.html#ae79f7f88b5156db27898504be9560a49',1,'stan::mcmc::base_nuts::write_sampler_param_names()'],['../classstan_1_1mcmc_1_1base__static__hmc.html#a08b235a3894d765791330ab7b0c5d473',1,'stan::mcmc::base_static_hmc::write_sampler_param_names()']]], + ['write_5fsampler_5fparams',['write_sampler_params',['../classstan_1_1mcmc_1_1base__mcmc.html#a4c30ef76ab8e9f78e46b1984b29c7f26',1,'stan::mcmc::base_mcmc::write_sampler_params()'],['../classstan_1_1mcmc_1_1base__nuts.html#aabe0eae0ae8241775760102c74053e6c',1,'stan::mcmc::base_nuts::write_sampler_params()'],['../classstan_1_1mcmc_1_1base__static__hmc.html#a26e2e7facb3998237644d7320c8db501',1,'stan::mcmc::base_static_hmc::write_sampler_params()']]], + ['write_5fsampler_5fstate',['write_sampler_state',['../classstan_1_1mcmc_1_1base__mcmc.html#a10f416fdcd1a9eb9aab56f63c0fda786',1,'stan::mcmc::base_mcmc::write_sampler_state()'],['../classstan_1_1mcmc_1_1base__hmc.html#a84c87e49136f89f49511bf46b2001f2b',1,'stan::mcmc::base_hmc::write_sampler_state()']]], + ['write_5fstan',['write_stan',['../namespacestan_1_1gm.html#ab8fc6564ecbcb13e8ae6fcc27dd59c58',1,'stan::gm']]], + ['writer',['writer',['../classstan_1_1io_1_1writer.html#a7dcb9072dd6ce295bd1c73721c339c51',1,'stan::io::writer']]] +]; diff --git a/doc/api/html/search/functions_7a.html b/doc/api/html/search/functions_7a.html new file mode 100644 index 00000000000..c1347710f0b --- /dev/null +++ b/doc/api/html/search/functions_7a.html @@ -0,0 +1,25 @@ + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/doc/api/html/search/functions_7a.js b/doc/api/html/search/functions_7a.js new file mode 100644 index 00000000000..5e05b2b36b4 --- /dev/null +++ b/doc/api/html/search/functions_7a.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['z',['z',['../classstan_1_1mcmc_1_1base__hmc.html#a7b9f7a04975626ce6ea23a81d903b325',1,'stan::mcmc::base_hmc']]] +]; diff --git a/doc/api/html/search/functions_7e.html b/doc/api/html/search/functions_7e.html new file mode 100644 index 00000000000..fd1d3ce20d5 --- /dev/null +++ b/doc/api/html/search/functions_7e.html @@ -0,0 +1,25 @@ + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/doc/api/html/search/functions_7e.js b/doc/api/html/search/functions_7e.js new file mode 100644 index 00000000000..4a4ba9d8a69 --- /dev/null +++ b/doc/api/html/search/functions_7e.js @@ -0,0 +1,32 @@ +var searchData= +[ + ['_7eaccumulator',['~accumulator',['../classstan_1_1math_1_1accumulator.html#a298d4088fbfdfca98d2c8e36a5ea4f1c',1,'stan::math::accumulator']]], + ['_7eadapt_5fdense_5fe_5fnuts',['~adapt_dense_e_nuts',['../classstan_1_1mcmc_1_1adapt__dense__e__nuts.html#ac74d2958a5e578cdd10e844237e36500',1,'stan::mcmc::adapt_dense_e_nuts']]], + ['_7eadapt_5fdense_5fe_5fstatic_5fhmc',['~adapt_dense_e_static_hmc',['../classstan_1_1mcmc_1_1adapt__dense__e__static__hmc.html#ae81ad6f37f41e6a587c36e9e369a425f',1,'stan::mcmc::adapt_dense_e_static_hmc']]], + ['_7eadapt_5fdiag_5fe_5fnuts',['~adapt_diag_e_nuts',['../classstan_1_1mcmc_1_1adapt__diag__e__nuts.html#a53e11fcb574220f40be06e43e7744a74',1,'stan::mcmc::adapt_diag_e_nuts']]], + ['_7eadapt_5fdiag_5fe_5fstatic_5fhmc',['~adapt_diag_e_static_hmc',['../classstan_1_1mcmc_1_1adapt__diag__e__static__hmc.html#a4f2a2e5b2046f456483ef4eed6aa7822',1,'stan::mcmc::adapt_diag_e_static_hmc']]], + ['_7eadapt_5funit_5fe_5fnuts',['~adapt_unit_e_nuts',['../classstan_1_1mcmc_1_1adapt__unit__e__nuts.html#a615794e2c10bcda9dd7f3aba29903f28',1,'stan::mcmc::adapt_unit_e_nuts']]], + ['_7eadapt_5funit_5fe_5fstatic_5fhmc',['~adapt_unit_e_static_hmc',['../classstan_1_1mcmc_1_1adapt__unit__e__static__hmc.html#a4001b78d765ab895a38b569ec915d9f6',1,'stan::mcmc::adapt_unit_e_static_hmc']]], + ['_7eargument',['~argument',['../classstan_1_1gm_1_1argument.html#a58068b14405201e7fde123047e251dc0',1,'stan::gm::argument']]], + ['_7ebase_5fhamiltonian',['~base_hamiltonian',['../classstan_1_1mcmc_1_1base__hamiltonian.html#a16a9150dc16c40c1e137ff1462f1d53f',1,'stan::mcmc::base_hamiltonian']]], + ['_7ebase_5fmcmc',['~base_mcmc',['../classstan_1_1mcmc_1_1base__mcmc.html#a7c8f525f093ac911bab10f619e7736fe',1,'stan::mcmc::base_mcmc']]], + ['_7ebase_5fnuts',['~base_nuts',['../classstan_1_1mcmc_1_1base__nuts.html#a84f3b26c2dd43965496766cdd6ba1245',1,'stan::mcmc::base_nuts']]], + ['_7ebase_5fstatic_5fhmc',['~base_static_hmc',['../classstan_1_1mcmc_1_1base__static__hmc.html#aab5a4f0ef94b01b624262a2484d7047b',1,'stan::mcmc::base_static_hmc']]], + ['_7ecategorical_5fargument',['~categorical_argument',['../classstan_1_1gm_1_1categorical__argument.html#ae72c69a4cbf867643694227c006c53a4',1,'stan::gm::categorical_argument']]], + ['_7echainable',['~chainable',['../classstan_1_1agrad_1_1chainable.html#a962b7191aa156e1f1714ba4750971636',1,'stan::agrad::chainable']]], + ['_7echainable_5falloc',['~chainable_alloc',['../classstan_1_1agrad_1_1chainable__alloc.html#acc8ec0b3e4b6c1ef9c4f6bb03fd57eca',1,'stan::agrad::chainable_alloc']]], + ['_7echunk_5falloc',['~chunk_alloc',['../classstan_1_1memory_1_1chunk__alloc.html#aa69ee56e6bd33c0beffbe798c2bf81e1',1,'stan::memory::chunk_alloc']]], + ['_7edense_5fe_5fmetric',['~dense_e_metric',['../classstan_1_1mcmc_1_1dense__e__metric.html#ab8327239e30c1ac20c624f2d0d2a22dc',1,'stan::mcmc::dense_e_metric']]], + ['_7ediag_5fe_5fmetric',['~diag_e_metric',['../classstan_1_1mcmc_1_1diag__e__metric.html#a64127ae540bb5ad55b871a94e0684236',1,'stan::mcmc::diag_e_metric']]], + ['_7edump_5freader',['~dump_reader',['../classstan_1_1io_1_1dump__reader.html#aff43241b7509e1877e4bca83e292fff1',1,'stan::io::dump_reader']]], + ['_7edump_5fwriter',['~dump_writer',['../classstan_1_1io_1_1dump__writer.html#a69f9822358de693b3de8acf4e8dbae1b',1,'stan::io::dump_writer']]], + ['_7elist_5fargument',['~list_argument',['../classstan_1_1gm_1_1list__argument.html#a21e0538351cb27f121f7307111bb9998',1,'stan::gm::list_argument']]], + ['_7eprob_5fgrad',['~prob_grad',['../classstan_1_1model_1_1prob__grad.html#aa81011f24dd20466efdf2971ae0df2da',1,'stan::model::prob_grad']]], + ['_7ereader',['~reader',['../classstan_1_1io_1_1reader.html#a679801e4a7936f90c13e9a6498745314',1,'stan::io::reader']]], + ['_7esample',['~sample',['../classstan_1_1mcmc_1_1sample.html#a20ad72aee8c1982a32277a374401f6db',1,'stan::mcmc::sample']]], + ['_7estack_5falloc',['~stack_alloc',['../classstan_1_1memory_1_1stack__alloc.html#a9031a182931d5cd7f11e0bfa8357c6bf',1,'stan::memory::stack_alloc']]], + ['_7estan_5fcsv_5freader',['~stan_csv_reader',['../classstan_1_1io_1_1stan__csv__reader.html#a53321a2f3045ed4cec11c77413f18759',1,'stan::io::stan_csv_reader']]], + ['_7eunit_5fe_5fmetric',['~unit_e_metric',['../classstan_1_1mcmc_1_1unit__e__metric.html#aa895987fa4375871ea9c523455bcf090',1,'stan::mcmc::unit_e_metric']]], + ['_7evari',['~vari',['../classstan_1_1agrad_1_1vari.html#aa95acf2a60125ef1083a0b929cf39adb',1,'stan::agrad::vari']]], + ['_7ewriter',['~writer',['../classstan_1_1io_1_1writer.html#aab627c99226cf0e3dd237512f673c8e5',1,'stan::io::writer']]] +]; diff --git a/doc/api/html/search/mag_sel.png b/doc/api/html/search/mag_sel.png new file mode 100644 index 0000000000000000000000000000000000000000..81f6040a2092402b4d98f9ffa8855d12a0d4ca17 GIT binary patch literal 563 zcmV-30?hr1P)zxx&tqG15pu7)IiiXFflOc2k;dXd>%13GZAy? zRz!q0=|E6a6vV)&ZBS~G9oe0kbqyw1*gvY`{Pop2oKq#FlzgXt@Xh-7fxh>}`Fxg> z$%N%{$!4=5nM{(;=c!aG1Ofr^Do{u%Ih{^&Fc@H2)+a-?TBXrw5DW&z%Nb6mQ!L9O zl}b@6mB?f=tX3;#vl)}ggh(Vpyh(IK z(Mb0D{l{U$FsRjP;!{($+bsaaVi8T#1c0V#qEIOCYa9@UVLV`f__E81L;?WEaRA;Y zUH;rZ;vb;mk7JX|$=i3O~&If0O@oZfLg8gfIjW=dcBsz;gI=!{-r4# z4%6v$&~;q^j7Fo67yJ(NJWuX+I~I!tj^nW3?}^9bq|<3^+vapS5sgM^x7!cs(+mMT z&y%j};&~po+YO)3hoUH4E*E;e9>?R6SS&`X)p`njycAVcg{rEb41T{~Hk(bl-7eSb zmFxA2uIqo#@R?lKm50ND`~6Nfn|-b1|L6O98vt3Tx@gKz#isxO002ovPDHLkV1kyW B_l^Jn literal 0 HcmV?d00001 diff --git a/doc/api/html/search/namespaces_62.html b/doc/api/html/search/namespaces_62.html new file mode 100644 index 00000000000..6caccc17249 --- /dev/null +++ b/doc/api/html/search/namespaces_62.html @@ -0,0 +1,25 @@ + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/doc/api/html/search/namespaces_62.js b/doc/api/html/search/namespaces_62.js new file mode 100644 index 00000000000..65285fe078e --- /dev/null +++ b/doc/api/html/search/namespaces_62.js @@ -0,0 +1,5 @@ +var searchData= +[ + ['boost',['boost',['../namespaceboost.html',1,'']]], + ['math',['math',['../namespaceboost_1_1math.html',1,'boost']]] +]; diff --git a/doc/api/html/search/namespaces_65.html b/doc/api/html/search/namespaces_65.html new file mode 100644 index 00000000000..e646ede3183 --- /dev/null +++ b/doc/api/html/search/namespaces_65.html @@ -0,0 +1,25 @@ + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/doc/api/html/search/namespaces_65.js b/doc/api/html/search/namespaces_65.js new file mode 100644 index 00000000000..5e56472a9b9 --- /dev/null +++ b/doc/api/html/search/namespaces_65.js @@ -0,0 +1,5 @@ +var searchData= +[ + ['eigen',['Eigen',['../namespace_eigen.html',1,'']]], + ['internal',['internal',['../namespace_eigen_1_1internal.html',1,'Eigen']]] +]; diff --git a/doc/api/html/search/namespaces_73.html b/doc/api/html/search/namespaces_73.html new file mode 100644 index 00000000000..5ebf8e4abd1 --- /dev/null +++ b/doc/api/html/search/namespaces_73.html @@ -0,0 +1,25 @@ + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/doc/api/html/search/namespaces_73.js b/doc/api/html/search/namespaces_73.js new file mode 100644 index 00000000000..a5b37295b21 --- /dev/null +++ b/doc/api/html/search/namespaces_73.js @@ -0,0 +1,16 @@ +var searchData= +[ + ['agrad',['agrad',['../namespacestan_1_1agrad.html',1,'stan']]], + ['detail',['detail',['../namespacestan_1_1math_1_1policies_1_1detail.html',1,'stan::math::policies']]], + ['gm',['gm',['../namespacestan_1_1gm.html',1,'stan']]], + ['io',['io',['../namespacestan_1_1io.html',1,'stan']]], + ['math',['math',['../namespacestan_1_1math.html',1,'stan']]], + ['mcmc',['mcmc',['../namespacestan_1_1mcmc.html',1,'stan']]], + ['memory',['memory',['../namespacestan_1_1memory.html',1,'stan']]], + ['model',['model',['../namespacestan_1_1model.html',1,'stan']]], + ['optimization',['optimization',['../namespacestan_1_1optimization.html',1,'stan']]], + ['policies',['policies',['../namespacestan_1_1math_1_1policies.html',1,'stan::math']]], + ['prob',['prob',['../namespacestan_1_1prob.html',1,'stan']]], + ['stan',['stan',['../namespacestan.html',1,'']]], + ['std',['std',['../namespacestd.html',1,'']]] +]; diff --git a/doc/api/html/search/nomatches.html b/doc/api/html/search/nomatches.html new file mode 100644 index 00000000000..b1ded27e9ad --- /dev/null +++ b/doc/api/html/search/nomatches.html @@ -0,0 +1,12 @@ + + + + + + + +
+
No Matches
+
+ + diff --git a/doc/api/html/search/pages_65.html b/doc/api/html/search/pages_65.html new file mode 100644 index 00000000000..e6b363ac165 --- /dev/null +++ b/doc/api/html/search/pages_65.html @@ -0,0 +1,25 @@ + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/doc/api/html/search/pages_65.js b/doc/api/html/search/pages_65.js new file mode 100644 index 00000000000..ca8bf3b0483 --- /dev/null +++ b/doc/api/html/search/pages_65.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['error_20handling_20policies',['Error Handling Policies',['../policy_page.html',1,'']]] +]; diff --git a/doc/api/html/search/related_6f.html b/doc/api/html/search/related_6f.html new file mode 100644 index 00000000000..22c66d86ba1 --- /dev/null +++ b/doc/api/html/search/related_6f.html @@ -0,0 +1,25 @@ + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/doc/api/html/search/related_6f.js b/doc/api/html/search/related_6f.js new file mode 100644 index 00000000000..ea3f6f83ef5 --- /dev/null +++ b/doc/api/html/search/related_6f.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['operator_3c_3c',['operator<<',['../classstan_1_1agrad_1_1var.html#a3545860122fa159c57e23dd0fbfbf5cd',1,'stan::agrad::var::operator<<()'],['../classstan_1_1agrad_1_1vari.html#abd24d4e4eb6b0c65c8447bd2cc73b200',1,'stan::agrad::vari::operator<<()']]] +]; diff --git a/doc/api/html/search/related_76.html b/doc/api/html/search/related_76.html new file mode 100644 index 00000000000..7460bc68b31 --- /dev/null +++ b/doc/api/html/search/related_76.html @@ -0,0 +1,25 @@ + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/doc/api/html/search/related_76.js b/doc/api/html/search/related_76.js new file mode 100644 index 00000000000..40cb30a4179 --- /dev/null +++ b/doc/api/html/search/related_76.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['var',['var',['../classstan_1_1agrad_1_1vari.html#a335628f2e9085305224b4f9cc6e95ed5',1,'stan::agrad::vari']]] +]; diff --git a/doc/api/html/search/search.css b/doc/api/html/search/search.css new file mode 100644 index 00000000000..d18c1da8c0d --- /dev/null +++ b/doc/api/html/search/search.css @@ -0,0 +1,238 @@ +/*---------------- Search Box */ + +#FSearchBox { + float: left; +} + +#MSearchBox { + white-space : nowrap; + position: absolute; + float: none; + display: inline; + margin-top: 8px; + right: 0px; + width: 170px; + z-index: 102; + background-color: white; +} + +#MSearchBox .left +{ + display:block; + position:absolute; + left:10px; + width:20px; + height:19px; + background:url('search_l.png') no-repeat; + background-position:right; +} + +#MSearchSelect { + display:block; + position:absolute; + width:20px; + height:19px; +} + +.left #MSearchSelect { + left:4px; +} + +.right #MSearchSelect { + right:5px; +} + +#MSearchField { + display:block; + position:absolute; + height:19px; + background:url('search_m.png') repeat-x; + border:none; + width:116px; + margin-left:20px; + padding-left:4px; + color: #909090; + outline: none; + font: 9pt Arial, Verdana, sans-serif; +} + +#FSearchBox #MSearchField { + margin-left:15px; +} + +#MSearchBox .right { + display:block; + position:absolute; + right:10px; + top:0px; + width:20px; + height:19px; + background:url('search_r.png') no-repeat; + background-position:left; +} + +#MSearchClose { + display: none; + position: absolute; + top: 4px; + background : none; + border: none; + margin: 0px 4px 0px 0px; + padding: 0px 0px; + outline: none; +} + +.left #MSearchClose { + left: 6px; +} + +.right #MSearchClose { + right: 2px; +} + +.MSearchBoxActive #MSearchField { + color: #000000; +} + +/*---------------- Search filter selection */ + +#MSearchSelectWindow { + display: none; + position: absolute; + left: 0; top: 0; + border: 1px solid #90A5CE; + background-color: #F9FAFC; + z-index: 1; + padding-top: 4px; + padding-bottom: 4px; + -moz-border-radius: 4px; + -webkit-border-top-left-radius: 4px; + -webkit-border-top-right-radius: 4px; + -webkit-border-bottom-left-radius: 4px; + -webkit-border-bottom-right-radius: 4px; + -webkit-box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15); +} + +.SelectItem { + font: 8pt Arial, Verdana, sans-serif; + padding-left: 2px; + padding-right: 12px; + border: 0px; +} + +span.SelectionMark { + margin-right: 4px; + font-family: monospace; + outline-style: none; + text-decoration: none; +} + +a.SelectItem { + display: block; + outline-style: none; + color: #000000; + text-decoration: none; + padding-left: 6px; + padding-right: 12px; +} + +a.SelectItem:focus, +a.SelectItem:active { + color: #000000; + outline-style: none; + text-decoration: none; +} + +a.SelectItem:hover { + color: #FFFFFF; + background-color: #3D578C; + outline-style: none; + text-decoration: none; + cursor: pointer; + display: block; +} + +/*---------------- Search results window */ + +iframe#MSearchResults { + width: 60ex; + height: 15em; +} + +#MSearchResultsWindow { + display: none; + position: absolute; + left: 0; top: 0; + border: 1px solid #000; + background-color: #EEF1F7; +} + +/* ----------------------------------- */ + + +#SRIndex { + clear:both; + padding-bottom: 15px; +} + +.SREntry { + font-size: 10pt; + padding-left: 1ex; +} + +.SRPage .SREntry { + font-size: 8pt; + padding: 1px 5px; +} + +body.SRPage { + margin: 5px 2px; +} + +.SRChildren { + padding-left: 3ex; padding-bottom: .5em +} + +.SRPage .SRChildren { + display: none; +} + +.SRSymbol { + font-weight: bold; + color: #425E97; + font-family: Arial, Verdana, sans-serif; + text-decoration: none; + outline: none; +} + +a.SRScope { + display: block; + color: #425E97; + font-family: Arial, Verdana, sans-serif; + text-decoration: none; + outline: none; +} + +a.SRSymbol:focus, a.SRSymbol:active, +a.SRScope:focus, a.SRScope:active { + text-decoration: underline; +} + +span.SRScope { + padding-left: 4px; +} + +.SRPage .SRStatus { + padding: 2px 5px; + font-size: 8pt; + font-style: italic; +} + +.SRResult { + display: none; +} + +DIV.searchresults { + margin-left: 10px; + margin-right: 10px; +} diff --git a/doc/api/html/search/search.js b/doc/api/html/search/search.js new file mode 100644 index 00000000000..f25fa27be64 --- /dev/null +++ b/doc/api/html/search/search.js @@ -0,0 +1,815 @@ +// Search script generated by doxygen +// Copyright (C) 2009 by Dimitri van Heesch. + +// The code in this file is loosly based on main.js, part of Natural Docs, +// which is Copyright (C) 2003-2008 Greg Valure +// Natural Docs is licensed under the GPL. + +var indexSectionsWithContent = +{ + 0: "0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010111111111111111111111111010001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + 1: "0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000111111101001111101111110000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + 2: "0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010010000000000000100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + 3: "0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000111111111101111111111110000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + 4: "0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010111111111111111111111110010001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + 5: "0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010111111111011111111111111000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + 6: "0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000110011011001110101111100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + 7: "0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000101100011001111001101100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + 8: "0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001000000100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + 9: "0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010000110000001000000001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + 10: "0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000" +}; + +var indexSectionNames = +{ + 0: "all", + 1: "classes", + 2: "namespaces", + 3: "files", + 4: "functions", + 5: "variables", + 6: "typedefs", + 7: "enumvalues", + 8: "related", + 9: "defines", + 10: "pages" +}; + +function convertToId(search) +{ + var result = ''; + for (i=0;i do a search + { + this.Search(); + } + } + + this.OnSearchSelectKey = function(evt) + { + var e = (evt) ? evt : window.event; // for IE + if (e.keyCode==40 && this.searchIndex0) // Up + { + this.searchIndex--; + this.OnSelectItem(this.searchIndex); + } + else if (e.keyCode==13 || e.keyCode==27) + { + this.OnSelectItem(this.searchIndex); + this.CloseSelectionWindow(); + this.DOMSearchField().focus(); + } + return false; + } + + // --------- Actions + + // Closes the results window. + this.CloseResultsWindow = function() + { + this.DOMPopupSearchResultsWindow().style.display = 'none'; + this.DOMSearchClose().style.display = 'none'; + this.Activate(false); + } + + this.CloseSelectionWindow = function() + { + this.DOMSearchSelectWindow().style.display = 'none'; + } + + // Performs a search. + this.Search = function() + { + this.keyTimeout = 0; + + // strip leading whitespace + var searchValue = this.DOMSearchField().value.replace(/^ +/, ""); + + var code = searchValue.toLowerCase().charCodeAt(0); + var hexCode; + if (code<16) + { + hexCode="0"+code.toString(16); + } + else + { + hexCode=code.toString(16); + } + + var resultsPage; + var resultsPageWithSearch; + var hasResultsPage; + + if (indexSectionsWithContent[this.searchIndex].charAt(code) == '1') + { + resultsPage = this.resultsPath + '/' + indexSectionNames[this.searchIndex] + '_' + hexCode + '.html'; + resultsPageWithSearch = resultsPage+'?'+escape(searchValue); + hasResultsPage = true; + } + else // nothing available for this search term + { + resultsPage = this.resultsPath + '/nomatches.html'; + resultsPageWithSearch = resultsPage; + hasResultsPage = false; + } + + window.frames.MSearchResults.location = resultsPageWithSearch; + var domPopupSearchResultsWindow = this.DOMPopupSearchResultsWindow(); + + if (domPopupSearchResultsWindow.style.display!='block') + { + var domSearchBox = this.DOMSearchBox(); + this.DOMSearchClose().style.display = 'inline'; + if (this.insideFrame) + { + var domPopupSearchResults = this.DOMPopupSearchResults(); + domPopupSearchResultsWindow.style.position = 'relative'; + domPopupSearchResultsWindow.style.display = 'block'; + var width = document.body.clientWidth - 8; // the -8 is for IE :-( + domPopupSearchResultsWindow.style.width = width + 'px'; + domPopupSearchResults.style.width = width + 'px'; + } + else + { + var domPopupSearchResults = this.DOMPopupSearchResults(); + var left = getXPos(domSearchBox) + 150; // domSearchBox.offsetWidth; + var top = getYPos(domSearchBox) + 20; // domSearchBox.offsetHeight + 1; + domPopupSearchResultsWindow.style.display = 'block'; + left -= domPopupSearchResults.offsetWidth; + domPopupSearchResultsWindow.style.top = top + 'px'; + domPopupSearchResultsWindow.style.left = left + 'px'; + } + } + + this.lastSearchValue = searchValue; + this.lastResultsPage = resultsPage; + } + + // -------- Activation Functions + + // Activates or deactivates the search panel, resetting things to + // their default values if necessary. + this.Activate = function(isActive) + { + if (isActive || // open it + this.DOMPopupSearchResultsWindow().style.display == 'block' + ) + { + this.DOMSearchBox().className = 'MSearchBoxActive'; + + var searchField = this.DOMSearchField(); + + if (searchField.value == this.searchLabel) // clear "Search" term upon entry + { + searchField.value = ''; + this.searchActive = true; + } + } + else if (!isActive) // directly remove the panel + { + this.DOMSearchBox().className = 'MSearchBoxInactive'; + this.DOMSearchField().value = this.searchLabel; + this.searchActive = false; + this.lastSearchValue = '' + this.lastResultsPage = ''; + } + } +} + +// ----------------------------------------------------------------------- + +// The class that handles everything on the search results page. +function SearchResults(name) +{ + // The number of matches from the last run of . + this.lastMatchCount = 0; + this.lastKey = 0; + this.repeatOn = false; + + // Toggles the visibility of the passed element ID. + this.FindChildElement = function(id) + { + var parentElement = document.getElementById(id); + var element = parentElement.firstChild; + + while (element && element!=parentElement) + { + if (element.nodeName == 'DIV' && element.className == 'SRChildren') + { + return element; + } + + if (element.nodeName == 'DIV' && element.hasChildNodes()) + { + element = element.firstChild; + } + else if (element.nextSibling) + { + element = element.nextSibling; + } + else + { + do + { + element = element.parentNode; + } + while (element && element!=parentElement && !element.nextSibling); + + if (element && element!=parentElement) + { + element = element.nextSibling; + } + } + } + } + + this.Toggle = function(id) + { + var element = this.FindChildElement(id); + if (element) + { + if (element.style.display == 'block') + { + element.style.display = 'none'; + } + else + { + element.style.display = 'block'; + } + } + } + + // Searches for the passed string. If there is no parameter, + // it takes it from the URL query. + // + // Always returns true, since other documents may try to call it + // and that may or may not be possible. + this.Search = function(search) + { + if (!search) // get search word from URL + { + search = window.location.search; + search = search.substring(1); // Remove the leading '?' + search = unescape(search); + } + + search = search.replace(/^ +/, ""); // strip leading spaces + search = search.replace(/ +$/, ""); // strip trailing spaces + search = search.toLowerCase(); + search = convertToId(search); + + var resultRows = document.getElementsByTagName("div"); + var matches = 0; + + var i = 0; + while (i < resultRows.length) + { + var row = resultRows.item(i); + if (row.className == "SRResult") + { + var rowMatchName = row.id.toLowerCase(); + rowMatchName = rowMatchName.replace(/^sr\d*_/, ''); // strip 'sr123_' + + if (search.length<=rowMatchName.length && + rowMatchName.substr(0, search.length)==search) + { + row.style.display = 'block'; + matches++; + } + else + { + row.style.display = 'none'; + } + } + i++; + } + document.getElementById("Searching").style.display='none'; + if (matches == 0) // no results + { + document.getElementById("NoMatches").style.display='block'; + } + else // at least one result + { + document.getElementById("NoMatches").style.display='none'; + } + this.lastMatchCount = matches; + return true; + } + + // return the first item with index index or higher that is visible + this.NavNext = function(index) + { + var focusItem; + while (1) + { + var focusName = 'Item'+index; + focusItem = document.getElementById(focusName); + if (focusItem && focusItem.parentNode.parentNode.style.display=='block') + { + break; + } + else if (!focusItem) // last element + { + break; + } + focusItem=null; + index++; + } + return focusItem; + } + + this.NavPrev = function(index) + { + var focusItem; + while (1) + { + var focusName = 'Item'+index; + focusItem = document.getElementById(focusName); + if (focusItem && focusItem.parentNode.parentNode.style.display=='block') + { + break; + } + else if (!focusItem) // last element + { + break; + } + focusItem=null; + index--; + } + return focusItem; + } + + this.ProcessKeys = function(e) + { + if (e.type == "keydown") + { + this.repeatOn = false; + this.lastKey = e.keyCode; + } + else if (e.type == "keypress") + { + if (!this.repeatOn) + { + if (this.lastKey) this.repeatOn = true; + return false; // ignore first keypress after keydown + } + } + else if (e.type == "keyup") + { + this.lastKey = 0; + this.repeatOn = false; + } + return this.lastKey!=0; + } + + this.Nav = function(evt,itemIndex) + { + var e = (evt) ? evt : window.event; // for IE + if (e.keyCode==13) return true; + if (!this.ProcessKeys(e)) return false; + + if (this.lastKey==38) // Up + { + var newIndex = itemIndex-1; + var focusItem = this.NavPrev(newIndex); + if (focusItem) + { + var child = this.FindChildElement(focusItem.parentNode.parentNode.id); + if (child && child.style.display == 'block') // children visible + { + var n=0; + var tmpElem; + while (1) // search for last child + { + tmpElem = document.getElementById('Item'+newIndex+'_c'+n); + if (tmpElem) + { + focusItem = tmpElem; + } + else // found it! + { + break; + } + n++; + } + } + } + if (focusItem) + { + focusItem.focus(); + } + else // return focus to search field + { + parent.document.getElementById("MSearchField").focus(); + } + } + else if (this.lastKey==40) // Down + { + var newIndex = itemIndex+1; + var focusItem; + var item = document.getElementById('Item'+itemIndex); + var elem = this.FindChildElement(item.parentNode.parentNode.id); + if (elem && elem.style.display == 'block') // children visible + { + focusItem = document.getElementById('Item'+itemIndex+'_c0'); + } + if (!focusItem) focusItem = this.NavNext(newIndex); + if (focusItem) focusItem.focus(); + } + else if (this.lastKey==39) // Right + { + var item = document.getElementById('Item'+itemIndex); + var elem = this.FindChildElement(item.parentNode.parentNode.id); + if (elem) elem.style.display = 'block'; + } + else if (this.lastKey==37) // Left + { + var item = document.getElementById('Item'+itemIndex); + var elem = this.FindChildElement(item.parentNode.parentNode.id); + if (elem) elem.style.display = 'none'; + } + else if (this.lastKey==27) // Escape + { + parent.searchBox.CloseResultsWindow(); + parent.document.getElementById("MSearchField").focus(); + } + else if (this.lastKey==13) // Enter + { + return true; + } + return false; + } + + this.NavChild = function(evt,itemIndex,childIndex) + { + var e = (evt) ? evt : window.event; // for IE + if (e.keyCode==13) return true; + if (!this.ProcessKeys(e)) return false; + + if (this.lastKey==38) // Up + { + if (childIndex>0) + { + var newIndex = childIndex-1; + document.getElementById('Item'+itemIndex+'_c'+newIndex).focus(); + } + else // already at first child, jump to parent + { + document.getElementById('Item'+itemIndex).focus(); + } + } + else if (this.lastKey==40) // Down + { + var newIndex = childIndex+1; + var elem = document.getElementById('Item'+itemIndex+'_c'+newIndex); + if (!elem) // last child, jump to parent next parent + { + elem = this.NavNext(itemIndex+1); + } + if (elem) + { + elem.focus(); + } + } + else if (this.lastKey==27) // Escape + { + parent.searchBox.CloseResultsWindow(); + parent.document.getElementById("MSearchField").focus(); + } + else if (this.lastKey==13) // Enter + { + return true; + } + return false; + } +} + +function setKeyActions(elem,action) +{ + elem.setAttribute('onkeydown',action); + elem.setAttribute('onkeypress',action); + elem.setAttribute('onkeyup',action); +} + +function setClassAttr(elem,attr) +{ + elem.setAttribute('class',attr); + elem.setAttribute('className',attr); +} + +function createResults() +{ + var results = document.getElementById("SRResults"); + for (var e=0; ek7RCwB~R6VQOP#AvB$vH7i{6H{96zot$7cZT<7246EF5Np6N}+$IbiG6W zg#87A+NFaX+=_^xM1#gCtshC=E{%9^uQX_%?YwXvo{#q&MnpJ8uh(O?ZRc&~_1%^SsPxG@rfElJg-?U zm!Cz-IOn(qJP3kDp-^~qt+FGbl=5jNli^Wj_xIBG{Rc0en{!oFvyoNC7{V~T8}b>| z=jL2WIReZzX(YN(_9fV;BBD$VXQIxNasAL8ATvEu822WQ%mvv4FO#qs` BFGc_W literal 0 HcmV?d00001 diff --git a/doc/api/html/search/search_r.png b/doc/api/html/search/search_r.png new file mode 100644 index 0000000000000000000000000000000000000000..97ee8b439687084201b79c6f776a41f495c6392a GIT binary patch literal 612 zcmV-q0-ODbP)PbXFRCwB?)W514K@j&X?z2*SxFI6-@HT2E2K=9X9%Pb zEK*!TBw&g(DMC;|A)uGlRkOS9vd-?zNs%bR4d$w+ox_iFnE8fvIvv7^5<(>Te12Li z7C)9srCzmK{ZcNM{YIl9j{DePFgOWiS%xG@5CnnnJa4nvY<^glbz7^|-ZY!dUkAwd z{gaTC@_>b5h~;ug#R0wRL0>o5!hxm*s0VW?8dr}O#zXTRTnrQm_Z7z1Mrnx>&p zD4qifUjzLvbVVWi?l?rUzwt^sdb~d!f_LEhsRVIXZtQ=qSxuxqm zEX#tf>$?M_Y1-LSDT)HqG?`%-%ZpY!#{N!rcNIiL;G7F0`l?)mNGTD9;f9F5Up3Kg zw}a<-JylhG&;=!>B+fZaCX+?C+kHYrP%c?X2!Zu_olK|GcS4A70HEy;vn)I0>0kLH z`jc(WIaaHc7!HS@f*^R^Znx8W=_jIl2oWJoQ*h1^$FX!>*PqR1J8k|fw}w_y}TpE>7m8DqDO<3z`OzXt$ccSejbEZCg@0000 + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/doc/api/html/search/typedefs_61.js b/doc/api/html/search/typedefs_61.js new file mode 100644 index 00000000000..ca98ab8c2f5 --- /dev/null +++ b/doc/api/html/search/typedefs_61.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['array_5fvec_5ft',['array_vec_t',['../classstan_1_1io_1_1writer.html#a897e6e5d45368b1c69a5f773f71f03e7',1,'stan::io::writer']]] +]; diff --git a/doc/api/html/search/typedefs_62.html b/doc/api/html/search/typedefs_62.html new file mode 100644 index 00000000000..249aca42540 --- /dev/null +++ b/doc/api/html/search/typedefs_62.html @@ -0,0 +1,25 @@ + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/doc/api/html/search/typedefs_62.js b/doc/api/html/search/typedefs_62.js new file mode 100644 index 00000000000..e045d409f66 --- /dev/null +++ b/doc/api/html/search/typedefs_62.js @@ -0,0 +1,6 @@ +var searchData= +[ + ['base_5fexpr_5ftype',['base_expr_type',['../namespacestan_1_1gm.html#acf4d6f01fec7bb88dc578ad058392b78',1,'stan::gm']]], + ['base_5fiterator_5ft',['base_iterator_t',['../namespacestan_1_1gm.html#a48761b304b8039f53b3a6fc76e4efc87',1,'stan::gm']]], + ['bool_5fargument',['bool_argument',['../namespacestan_1_1gm.html#adb787df02fb46fca9c39b4d8f2438a28',1,'stan::gm']]] +]; diff --git a/doc/api/html/search/typedefs_65.html b/doc/api/html/search/typedefs_65.html new file mode 100644 index 00000000000..8511baf9b12 --- /dev/null +++ b/doc/api/html/search/typedefs_65.html @@ -0,0 +1,25 @@ + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/doc/api/html/search/typedefs_65.js b/doc/api/html/search/typedefs_65.js new file mode 100644 index 00000000000..52986f9e695 --- /dev/null +++ b/doc/api/html/search/typedefs_65.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['expression_5ft',['expression_t',['../structstan_1_1gm_1_1expression.html#abae5cb68846d118c4e78e11afbaa4826',1,'stan::gm::expression']]] +]; diff --git a/doc/api/html/search/typedefs_66.html b/doc/api/html/search/typedefs_66.html new file mode 100644 index 00000000000..d0276b994dc --- /dev/null +++ b/doc/api/html/search/typedefs_66.html @@ -0,0 +1,25 @@ + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/doc/api/html/search/typedefs_66.js b/doc/api/html/search/typedefs_66.js new file mode 100644 index 00000000000..3e18218e520 --- /dev/null +++ b/doc/api/html/search/typedefs_66.js @@ -0,0 +1,5 @@ +var searchData= +[ + ['forward_5fiterator_5ft',['forward_iterator_t',['../namespacestan_1_1gm.html#aa1c432dd6520c6f137b092953345f7d5',1,'stan::gm']]], + ['function_5fsignature_5ft',['function_signature_t',['../namespacestan_1_1gm.html#ab969833a2ffdf92a759238a5d9ba5859',1,'stan::gm']]] +]; diff --git a/doc/api/html/search/typedefs_68.html b/doc/api/html/search/typedefs_68.html new file mode 100644 index 00000000000..75c9c6b3a35 --- /dev/null +++ b/doc/api/html/search/typedefs_68.html @@ -0,0 +1,25 @@ + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/doc/api/html/search/typedefs_68.js b/doc/api/html/search/typedefs_68.js new file mode 100644 index 00000000000..dbcb3d72ec8 --- /dev/null +++ b/doc/api/html/search/typedefs_68.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['hessiant',['HessianT',['../classstan_1_1optimization_1_1_b_f_g_s_minimizer.html#a80b2c5e6ef5839aa3a580a9a9a37de64',1,'stan::optimization::BFGSMinimizer']]] +]; diff --git a/doc/api/html/search/typedefs_69.html b/doc/api/html/search/typedefs_69.html new file mode 100644 index 00000000000..983811b6f57 --- /dev/null +++ b/doc/api/html/search/typedefs_69.html @@ -0,0 +1,25 @@ + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/doc/api/html/search/typedefs_69.js b/doc/api/html/search/typedefs_69.js new file mode 100644 index 00000000000..7b9379721da --- /dev/null +++ b/doc/api/html/search/typedefs_69.js @@ -0,0 +1,5 @@ +var searchData= +[ + ['idx_5ft',['idx_t',['../classstan_1_1optimization_1_1_b_f_g_s_line_search.html#afa2cfdf9357f5d63982f8ff00b4c6916',1,'stan::optimization::BFGSLineSearch']]], + ['int_5fargument',['int_argument',['../namespacestan_1_1gm.html#ab772327341c716a591776dda31107ee7',1,'stan::gm']]] +]; diff --git a/doc/api/html/search/typedefs_6c.html b/doc/api/html/search/typedefs_6c.html new file mode 100644 index 00000000000..67afacccf7b --- /dev/null +++ b/doc/api/html/search/typedefs_6c.html @@ -0,0 +1,25 @@ + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/doc/api/html/search/typedefs_6c.js b/doc/api/html/search/typedefs_6c.js new file mode 100644 index 00000000000..569fbfbd8cb --- /dev/null +++ b/doc/api/html/search/typedefs_6c.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['lhsscalar',['LhsScalar',['../struct_eigen_1_1internal_1_1general__matrix__vector__product_3_01_index_00_01stan_1_1agrad_1_1va44da5f98e1caea9523bacbd5bdc025fe.html#a53b8b1e508aa14de16ac804960453975',1,'Eigen::internal::general_matrix_vector_product< Index, stan::agrad::var, ColMajor, ConjugateLhs, stan::agrad::var, ConjugateRhs >::LhsScalar()'],['../struct_eigen_1_1internal_1_1general__matrix__vector__product_3_01_index_00_01stan_1_1agrad_1_1vacd54cabc78c49ca719650381b68b105e.html#a8b1863097b547b5a7f2d24b8ccfe5796',1,'Eigen::internal::general_matrix_vector_product< Index, stan::agrad::var, RowMajor, ConjugateLhs, stan::agrad::var, ConjugateRhs >::LhsScalar()'],['../struct_eigen_1_1internal_1_1general__matrix__matrix__product_3_01_index_00_01stan_1_1agrad_1_1va9b485de9571b6e46d7a64aff43a6d9d3.html#a4b77e4f22ba05c8daaa850af323db4c5',1,'Eigen::internal::general_matrix_matrix_product< Index, stan::agrad::var, LhsStorageOrder, ConjugateLhs, stan::agrad::var, RhsStorageOrder, ConjugateRhs, ColMajor >::LhsScalar()']]] +]; diff --git a/doc/api/html/search/typedefs_6d.html b/doc/api/html/search/typedefs_6d.html new file mode 100644 index 00000000000..383ce5f1469 --- /dev/null +++ b/doc/api/html/search/typedefs_6d.html @@ -0,0 +1,25 @@ + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/doc/api/html/search/typedefs_6d.js b/doc/api/html/search/typedefs_6d.js new file mode 100644 index 00000000000..3bdcd6b164b --- /dev/null +++ b/doc/api/html/search/typedefs_6d.js @@ -0,0 +1,13 @@ +var searchData= +[ + ['map_5fmatrix_5ft',['map_matrix_t',['../classstan_1_1io_1_1reader.html#a05f161f2ef596f356d249afbb0b43ca6',1,'stan::io::reader']]], + ['map_5frow_5fvector_5ft',['map_row_vector_t',['../classstan_1_1io_1_1reader.html#a71946c44faafcf4669f3cfde52816633',1,'stan::io::reader']]], + ['map_5fvector_5ft',['map_vector_t',['../classstan_1_1io_1_1reader.html#a1285611f704d4a3ec0d0e10ff98206d4',1,'stan::io::reader']]], + ['matrix_5fd',['matrix_d',['../namespacestan_1_1math.html#ac1a24821b475ee296830ebac12f70460',1,'stan::math::matrix_d()'],['../namespacestan_1_1optimization.html#afd985f1c123f049985ad18ad074474c4',1,'stan::optimization::matrix_d()']]], + ['matrix_5ffd',['matrix_fd',['../namespacestan_1_1agrad.html#a9568a3aa8bbf0ba6c2e96ab703e83184',1,'stan::agrad']]], + ['matrix_5fffd',['matrix_ffd',['../namespacestan_1_1agrad.html#aff56af7392587b36f7071967f87ad7d1',1,'stan::agrad']]], + ['matrix_5fffv',['matrix_ffv',['../namespacestan_1_1agrad.html#a3e6bc2f7c13dfbbb0c30dce6dcb62951',1,'stan::agrad']]], + ['matrix_5ffv',['matrix_fv',['../namespacestan_1_1agrad.html#aac5f57e2caa5ea24203633335cfe3fc6',1,'stan::agrad']]], + ['matrix_5ft',['matrix_t',['../classstan_1_1io_1_1reader.html#aded74129931435c293b0fd0885535d93',1,'stan::io::reader::matrix_t()'],['../classstan_1_1io_1_1writer.html#aadbf07fa0a161b2037f3dfbe0548f263',1,'stan::io::writer::matrix_t()']]], + ['matrix_5fv',['matrix_v',['../namespacestan_1_1agrad.html#a31a0e0ac129c0a7d965b1fb17301c942',1,'stan::agrad']]] +]; diff --git a/doc/api/html/search/typedefs_6e.html b/doc/api/html/search/typedefs_6e.html new file mode 100644 index 00000000000..ebbf394de71 --- /dev/null +++ b/doc/api/html/search/typedefs_6e.html @@ -0,0 +1,25 @@ + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/doc/api/html/search/typedefs_6e.js b/doc/api/html/search/typedefs_6e.js new file mode 100644 index 00000000000..a4058438667 --- /dev/null +++ b/doc/api/html/search/typedefs_6e.js @@ -0,0 +1,5 @@ +var searchData= +[ + ['nested',['Nested',['../struct_eigen_1_1_num_traits_3_01stan_1_1agrad_1_1var_01_4.html#aa313e91d6d8163393d270e3c70ad50cf',1,'Eigen::NumTraits< stan::agrad::var >']]], + ['noninteger',['NonInteger',['../struct_eigen_1_1_num_traits_3_01stan_1_1agrad_1_1var_01_4.html#a0b7008c189ffa66353158a30af2aabaf',1,'Eigen::NumTraits< stan::agrad::var >']]] +]; diff --git a/doc/api/html/search/typedefs_70.html b/doc/api/html/search/typedefs_70.html new file mode 100644 index 00000000000..77095275d87 --- /dev/null +++ b/doc/api/html/search/typedefs_70.html @@ -0,0 +1,25 @@ + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/doc/api/html/search/typedefs_70.js b/doc/api/html/search/typedefs_70.js new file mode 100644 index 00000000000..b40f211d9a2 --- /dev/null +++ b/doc/api/html/search/typedefs_70.js @@ -0,0 +1,5 @@ +var searchData= +[ + ['pos_5fiterator_5ft',['pos_iterator_t',['../namespacestan_1_1gm.html#aa941962f9fda48879b4d84fd518852c9',1,'stan::gm']]], + ['printable_5ft',['printable_t',['../structstan_1_1gm_1_1printable.html#a0fe5ff9b4d1c7581f75ab444b6e9828b',1,'stan::gm::printable']]] +]; diff --git a/doc/api/html/search/typedefs_72.html b/doc/api/html/search/typedefs_72.html new file mode 100644 index 00000000000..5f19d63ac69 --- /dev/null +++ b/doc/api/html/search/typedefs_72.html @@ -0,0 +1,25 @@ + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/doc/api/html/search/typedefs_72.js b/doc/api/html/search/typedefs_72.js new file mode 100644 index 00000000000..f4df5ac90fa --- /dev/null +++ b/doc/api/html/search/typedefs_72.js @@ -0,0 +1,17 @@ +var searchData= +[ + ['range_5ft',['range_t',['../structstan_1_1gm_1_1variable__map.html#a2da97e3733b1c7695abd1eef547df69e',1,'stan::gm::variable_map']]], + ['real',['Real',['../struct_eigen_1_1_num_traits_3_01stan_1_1agrad_1_1var_01_4.html#a4c2ce540647aaade50bc0c572a4741ee',1,'Eigen::NumTraits< stan::agrad::var >']]], + ['real_5fargument',['real_argument',['../namespacestan_1_1gm.html#a2d364040dd6f2d340627acb37db9c2be',1,'stan::gm']]], + ['resscalar',['ResScalar',['../struct_eigen_1_1internal_1_1general__matrix__vector__product_3_01_index_00_01stan_1_1agrad_1_1va44da5f98e1caea9523bacbd5bdc025fe.html#a5eccd0cab616793b2cd6a27ec9603e53',1,'Eigen::internal::general_matrix_vector_product< Index, stan::agrad::var, ColMajor, ConjugateLhs, stan::agrad::var, ConjugateRhs >::ResScalar()'],['../struct_eigen_1_1internal_1_1general__matrix__vector__product_3_01_index_00_01stan_1_1agrad_1_1vacd54cabc78c49ca719650381b68b105e.html#a2a3d011e77719fbba9c50c4c98f4098e',1,'Eigen::internal::general_matrix_vector_product< Index, stan::agrad::var, RowMajor, ConjugateLhs, stan::agrad::var, ConjugateRhs >::ResScalar()'],['../struct_eigen_1_1internal_1_1general__matrix__matrix__product_3_01_index_00_01stan_1_1agrad_1_1va9b485de9571b6e46d7a64aff43a6d9d3.html#a794af3646b14e20ff11c169ecd57a64a',1,'Eigen::internal::general_matrix_matrix_product< Index, stan::agrad::var, LhsStorageOrder, ConjugateLhs, stan::agrad::var, RhsStorageOrder, ConjugateRhs, ColMajor >::ResScalar()']]], + ['result_5ftype',['result_type',['../structstan_1_1gm_1_1visgen.html#a109e318e1629afb884191005e56b040e',1,'stan::gm::visgen']]], + ['returntype',['ReturnType',['../struct_eigen_1_1internal_1_1scalar__product__traits_3_01stan_1_1agrad_1_1var_00_01double_01_4.html#a7a3a05b2596fc2bf37c31456c2f5646e',1,'Eigen::internal::scalar_product_traits< stan::agrad::var, double >::ReturnType()'],['../struct_eigen_1_1internal_1_1scalar__product__traits_3_01double_00_01stan_1_1agrad_1_1var_01_4.html#ae4eab286198b6597cf9fb9f009facfde',1,'Eigen::internal::scalar_product_traits< double, stan::agrad::var >::ReturnType()']]], + ['rhsscalar',['RhsScalar',['../struct_eigen_1_1internal_1_1general__matrix__vector__product_3_01_index_00_01stan_1_1agrad_1_1va44da5f98e1caea9523bacbd5bdc025fe.html#a032c6f6f307ed07b410a6d9cfc933588',1,'Eigen::internal::general_matrix_vector_product< Index, stan::agrad::var, ColMajor, ConjugateLhs, stan::agrad::var, ConjugateRhs >::RhsScalar()'],['../struct_eigen_1_1internal_1_1general__matrix__vector__product_3_01_index_00_01stan_1_1agrad_1_1vacd54cabc78c49ca719650381b68b105e.html#afe67acef0cc902389c761f0a3a914e73',1,'Eigen::internal::general_matrix_vector_product< Index, stan::agrad::var, RowMajor, ConjugateLhs, stan::agrad::var, ConjugateRhs >::RhsScalar()'],['../struct_eigen_1_1internal_1_1general__matrix__matrix__product_3_01_index_00_01stan_1_1agrad_1_1va9b485de9571b6e46d7a64aff43a6d9d3.html#ae39f7406453977f1c2341a05397f7024',1,'Eigen::internal::general_matrix_matrix_product< Index, stan::agrad::var, LhsStorageOrder, ConjugateLhs, stan::agrad::var, RhsStorageOrder, ConjugateRhs, ColMajor >::RhsScalar()']]], + ['row_5fvector_5fd',['row_vector_d',['../namespacestan_1_1math.html#ac105e584e4ed2d24a5c3a40df4d94697',1,'stan::math']]], + ['row_5fvector_5ffd',['row_vector_fd',['../namespacestan_1_1agrad.html#a034dc4f78e984e287123599a3b87ac97',1,'stan::agrad']]], + ['row_5fvector_5fffd',['row_vector_ffd',['../namespacestan_1_1agrad.html#a493bb030b1f2016276f58fe67662e252',1,'stan::agrad']]], + ['row_5fvector_5fffv',['row_vector_ffv',['../namespacestan_1_1agrad.html#a4a52427f4040846e15dca434ea633b7b',1,'stan::agrad']]], + ['row_5fvector_5ffv',['row_vector_fv',['../namespacestan_1_1agrad.html#a031f0408fe91a974e1cc09d61cea8807',1,'stan::agrad']]], + ['row_5fvector_5ft',['row_vector_t',['../classstan_1_1io_1_1reader.html#a9266295ff05e7617d42304c90e485b52',1,'stan::io::reader::row_vector_t()'],['../classstan_1_1io_1_1writer.html#a51abce190e367fccf3c1f8ddfa3c5170',1,'stan::io::writer::row_vector_t()']]], + ['row_5fvector_5fv',['row_vector_v',['../namespacestan_1_1agrad.html#ac3832e2dace4d1299a812cdcc53ab091',1,'stan::agrad']]] +]; diff --git a/doc/api/html/search/typedefs_73.html b/doc/api/html/search/typedefs_73.html new file mode 100644 index 00000000000..3f28c4d2629 --- /dev/null +++ b/doc/api/html/search/typedefs_73.html @@ -0,0 +1,25 @@ + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/doc/api/html/search/typedefs_73.js b/doc/api/html/search/typedefs_73.js new file mode 100644 index 00000000000..b5015072432 --- /dev/null +++ b/doc/api/html/search/typedefs_73.js @@ -0,0 +1,8 @@ +var searchData= +[ + ['scalar',['Scalar',['../classstan_1_1agrad_1_1var.html#a9ddcf3d9523473d4c99eb4dc81c6938f',1,'stan::agrad::var::Scalar()'],['../classstan_1_1agrad_1_1var.html#a9ddcf3d9523473d4c99eb4dc81c6938f',1,'stan::agrad::var::Scalar()']]], + ['scalar_5ft',['scalar_t',['../classstan_1_1_vector_view.html#a2a17f256f923b7271b7008682995c072',1,'stan::VectorView::scalar_t()'],['../classstan_1_1_vector_view_3_01const_01_t_00_01is__array_00_01throw__if__accessed_01_4.html#ab4284d2fe6f3e884e2bc9ec7c5621372',1,'stan::VectorView< const T, is_array, throw_if_accessed >::scalar_t()']]], + ['size_5ftype',['size_type',['../classstan_1_1math_1_1_l_d_l_t__factor_3_01stan_1_1agrad_1_1var_00_01_r_00_01_c_01_4.html#ad21eca557d202a3f2f1db369f08afb89',1,'stan::math::LDLT_factor< stan::agrad::var, R, C >::size_type()'],['../classstan_1_1math_1_1_l_d_l_t__factor_3_01double_00_01_r_00_01_c_01_4.html#a226a632082480f5715a8ef2979719fa1',1,'stan::math::LDLT_factor< double, R, C >::size_type()'],['../namespacestan_1_1agrad.html#aeae9e6e94d5656d748136a7c4780856e',1,'stan::agrad::size_type()'],['../namespacestan_1_1math.html#aa29284c242450c2000920599105e4eb0',1,'stan::math::size_type()']]], + ['statement_5ft',['statement_t',['../structstan_1_1gm_1_1statement.html#ab5c314341c7dd06f32786185b5689314',1,'stan::gm::statement']]], + ['string_5fargument',['string_argument',['../namespacestan_1_1gm.html#ae180adbeec14bbafaf3c7634061c614d',1,'stan::gm']]] +]; diff --git a/doc/api/html/search/typedefs_74.html b/doc/api/html/search/typedefs_74.html new file mode 100644 index 00000000000..4c98afb2e57 --- /dev/null +++ b/doc/api/html/search/typedefs_74.html @@ -0,0 +1,25 @@ + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/doc/api/html/search/typedefs_74.js b/doc/api/html/search/typedefs_74.js new file mode 100644 index 00000000000..d22a9c7b4f9 --- /dev/null +++ b/doc/api/html/search/typedefs_74.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['type',['type',['../structstan_1_1gm_1_1validate__expr__type2_1_1result.html#acf9da899e777ac9cfb14f120a5a4e6e7',1,'stan::gm::validate_expr_type2::result::type()'],['../structstan_1_1gm_1_1set__fun__type2_1_1result.html#a797bb1fd338a65fa9377535addd51aa2',1,'stan::gm::set_fun_type2::result::type()'],['../structstan_1_1gm_1_1binary__op__expr_1_1result.html#a6613b3bbad33fe2edf7b1337ff10c4ab',1,'stan::gm::binary_op_expr::result::type()'],['../structstan_1_1gm_1_1addition__expr_1_1result.html#abbb7eba785d1bf2b37be6983c21abde2',1,'stan::gm::addition_expr::result::type()'],['../structstan_1_1gm_1_1subtraction__expr_1_1result.html#a83d53c7bf088539887e8d349745dbbd3',1,'stan::gm::subtraction_expr::result::type()'],['../structstan_1_1gm_1_1add__conditional__condition_1_1result.html#a7ae524581e60adf8ec58ff362d123b04',1,'stan::gm::add_conditional_condition::result::type()'],['../structstan_1_1gm_1_1add__conditional__body_1_1result.html#af12e1aa0082754acf1218bd767b65f97',1,'stan::gm::add_conditional_body::result::type()'],['../structstan_1_1gm_1_1validate__assignment_1_1result.html#a8ed777fd03014c406553a98a2092d597',1,'stan::gm::validate_assignment::result::type()'],['../structstan_1_1gm_1_1validate__sample_1_1result.html#ad554b4aaf143a4c535708ac7ee56a12f',1,'stan::gm::validate_sample::result::type()'],['../structstan_1_1gm_1_1expression__as__statement_1_1result.html#aa817fc2a2eab202b696d81dc5054a233',1,'stan::gm::expression_as_statement::result::type()'],['../structstan_1_1gm_1_1unscope__locals_1_1result.html#a78057309e7356062ee1abf3978fb75ad',1,'stan::gm::unscope_locals::result::type()'],['../structstan_1_1gm_1_1add__while__condition_1_1result.html#a3355eac5ec601747e940106ca5a9553c',1,'stan::gm::add_while_condition::result::type()'],['../structstan_1_1gm_1_1add__while__body_1_1result.html#a14b5d10c7fd59660a6d9070f2adb50a0',1,'stan::gm::add_while_body::result::type()'],['../structstan_1_1gm_1_1add__loop__identifier_1_1result.html#ad8cb4be555a262642d21fbca93669692',1,'stan::gm::add_loop_identifier::result::type()'],['../structstan_1_1gm_1_1remove__loop__identifier_1_1result.html#a651b017053ea891677678fd434ae2b6a',1,'stan::gm::remove_loop_identifier::result::type()'],['../structstan_1_1gm_1_1validate__int__expr2_1_1result.html#ac09fa987115620b2b268f7050ea2b53c',1,'stan::gm::validate_int_expr2::result::type()'],['../structstan_1_1gm_1_1validate__allow__sample_1_1result.html#a35e630d24e687699327b33e071c2a993',1,'stan::gm::validate_allow_sample::result::type()'],['../structstan_1_1gm_1_1set__fun__type_1_1result.html#a8a3b4372dd614aed3ed3e683a9e93cea',1,'stan::gm::set_fun_type::result::type()'],['../structstan_1_1gm_1_1set__fun__type__named_1_1result.html#af8b27e490e0b8ddeaba4c65ee5dff707',1,'stan::gm::set_fun_type_named::result::type()'],['../structstan_1_1gm_1_1multiplication__expr_1_1result.html#a0ab75c7570d913a4a3122048e092b76a',1,'stan::gm::multiplication_expr::result::type()'],['../structstan_1_1gm_1_1division__expr_1_1result.html#a18185a370c691f1eea0847551e78ed83',1,'stan::gm::division_expr::result::type()'],['../structstan_1_1gm_1_1left__division__expr_1_1result.html#ae7eade30901e506aca5bd0b4a7296595',1,'stan::gm::left_division_expr::result::type()'],['../structstan_1_1gm_1_1elt__multiplication__expr_1_1result.html#acd68e9b5d774c889c1064e1350495620',1,'stan::gm::elt_multiplication_expr::result::type()'],['../structstan_1_1gm_1_1elt__division__expr_1_1result.html#a96008a34740a7ff158716517993aa6f0',1,'stan::gm::elt_division_expr::result::type()'],['../structstan_1_1gm_1_1negate__expr_1_1result.html#ae3983d7993aa29e8d6c9b488dcde6312',1,'stan::gm::negate_expr::result::type()'],['../structstan_1_1gm_1_1logical__negate__expr_1_1result.html#a4f04e5a391864ce1cd4e295b38800aa9',1,'stan::gm::logical_negate_expr::result::type()'],['../structstan_1_1gm_1_1transpose__expr_1_1result.html#a46200139ae3022913240e7afb1e1a98f',1,'stan::gm::transpose_expr::result::type()'],['../structstan_1_1gm_1_1add__expression__dimss_1_1result.html#ac7ba6f938007515f8585e7f3edfa17fd',1,'stan::gm::add_expression_dimss::result::type()'],['../structstan_1_1gm_1_1set__var__type_1_1result.html#ab76768683b619416b7df951add24cf65',1,'stan::gm::set_var_type::result::type()'],['../structstan_1_1gm_1_1validate__int__expr3_1_1result.html#a3561c5435c7ea45b40819bb2937b792d',1,'stan::gm::validate_int_expr3::result::type()'],['../structstan_1_1gm_1_1validate__expr__type_1_1result.html#a27afcd81cf29e2a4e3cd1456a9580998',1,'stan::gm::validate_expr_type::result::type()'],['../structstan_1_1math_1_1common__type.html#aab77e3179df5479c1531afad8687a83f',1,'stan::math::common_type::type()'],['../structstan_1_1math_1_1common__type_3_01std_1_1vector_3_01_t1_01_4_00_01std_1_1vector_3_01_t2_01_4_01_4.html#a57e2603ca0216acd5592ebbd45aee70d',1,'stan::math::common_type< std::vector< T1 >, std::vector< T2 > >::type()'],['../structstan_1_1math_1_1common__type_3_01_eigen_1_1_matrix_3_01_t1_00_01_r_00_01_c_01_4_00_01_eiged8accfa00e73f240c58ad02ac582ba93.html#a233e6e69eead8714ccd05f2c49c0d56d',1,'stan::math::common_type< Eigen::Matrix< T1, R, C >, Eigen::Matrix< T2, R, C > >::type()'],['../structstan_1_1math_1_1store__type.html#a4911dad4e7692aae90f6a93466a3e88b',1,'stan::math::store_type::type()'],['../structstan_1_1math_1_1store__type_3_01double_01_4.html#a36449fc098f0ee60b5e078771f5395e8',1,'stan::math::store_type< double >::type()'],['../structstan_1_1math_1_1store__type_3_01int_01_4.html#aa10e456268690936392e9ea31e24645f',1,'stan::math::store_type< int >::type()'],['../structstan_1_1math_1_1pass__type.html#aaf902ad0b26acab6888195ed0b528ec5',1,'stan::math::pass_type::type()'],['../structstan_1_1math_1_1pass__type_3_01double_01_4.html#adee94e36436cf8e5628e961330047738',1,'stan::math::pass_type< double >::type()'],['../structstan_1_1math_1_1pass__type_3_01int_01_4.html#a6e1bfc775f016451ab261ecede07402c',1,'stan::math::pass_type< int >::type()'],['../structstan_1_1is__vector.html#a5384dc7751d6efdfd7b7bd9ccc442ca2',1,'stan::is_vector::type()'],['../structstan_1_1is__vector_3_01const_01_t_01_4.html#a438013ddac03fc30456a132b069b6db7',1,'stan::is_vector< const T >::type()'],['../structstan_1_1is__vector_3_01std_1_1vector_3_01_t_01_4_01_4.html#aefecb429647f6ad44faa02cb233050da',1,'stan::is_vector< std::vector< T > >::type()'],['../structstan_1_1is__vector_3_01_eigen_1_1_matrix_3_01_t_00_01_eigen_1_1_dynamic_00_011_01_4_01_4.html#ab0c2ebfaeaf2d18b25665573a01dab1e',1,'stan::is_vector< Eigen::Matrix< T, Eigen::Dynamic, 1 > >::type()'],['../structstan_1_1is__vector_3_01_eigen_1_1_matrix_3_01_t_00_011_00_01_eigen_1_1_dynamic_01_4_01_4.html#a07a4e818504882fb191b9d3a5ba6677a',1,'stan::is_vector< Eigen::Matrix< T, 1, Eigen::Dynamic > >::type()'],['../structstan_1_1scalar__type.html#aa9068e42d81d7091f822df126fe932b7',1,'stan::scalar_type::type()'],['../structstan_1_1scalar__type_3_01_eigen_1_1_matrix_3_01_t_00_01_eigen_1_1_dynamic_00_01_eigen_1_1_dynamic_01_4_01_4.html#a3cbf7ba7c3d16da948863b3180075b36',1,'stan::scalar_type< Eigen::Matrix< T, Eigen::Dynamic, Eigen::Dynamic > >::type()'],['../structstan_1_1scalar__type_3_01_t_01_5_01_4.html#a38f00242ece28298968a43f30508c940',1,'stan::scalar_type< T * >::type()'],['../structstan_1_1return__type.html#af3130731cc471801ccef3bc753dd790b',1,'stan::return_type::type()']]] +]; diff --git a/doc/api/html/search/typedefs_75.html b/doc/api/html/search/typedefs_75.html new file mode 100644 index 00000000000..35bb0050f0b --- /dev/null +++ b/doc/api/html/search/typedefs_75.html @@ -0,0 +1,25 @@ + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/doc/api/html/search/typedefs_75.js b/doc/api/html/search/typedefs_75.js new file mode 100644 index 00000000000..99c80cc96c1 --- /dev/null +++ b/doc/api/html/search/typedefs_75.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['u_5fint_5fargument',['u_int_argument',['../namespacestan_1_1gm.html#ae43d445dc26f5d0423f77c37236d3b38',1,'stan::gm']]] +]; diff --git a/doc/api/html/search/typedefs_76.html b/doc/api/html/search/typedefs_76.html new file mode 100644 index 00000000000..57eab51a2c6 --- /dev/null +++ b/doc/api/html/search/typedefs_76.html @@ -0,0 +1,25 @@ + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/doc/api/html/search/typedefs_76.js b/doc/api/html/search/typedefs_76.js new file mode 100644 index 00000000000..c84fafaa322 --- /dev/null +++ b/doc/api/html/search/typedefs_76.js @@ -0,0 +1,13 @@ +var searchData= +[ + ['var_5fdecl_5ft',['var_decl_t',['../structstan_1_1gm_1_1var__decl.html#a053ae171df165a1fba298555456bb7ee',1,'stan::gm::var_decl']]], + ['var_5forigin',['var_origin',['../namespacestan_1_1gm.html#a37c3937aa5961352d95274c274bf0b17',1,'stan::gm']]], + ['vector_5fd',['vector_d',['../namespacestan_1_1math.html#a0c7ab54df86be3a3d61e58623c210d86',1,'stan::math::vector_d()'],['../namespacestan_1_1optimization.html#af557a7d4dc0f32c569400f2b71c76d1d',1,'stan::optimization::vector_d()']]], + ['vector_5ffd',['vector_fd',['../namespacestan_1_1agrad.html#a50e8b3ee954a699c1467801ab52be810',1,'stan::agrad']]], + ['vector_5fffd',['vector_ffd',['../namespacestan_1_1agrad.html#a97cd52b23aca617183eb7deadb1c6d9d',1,'stan::agrad']]], + ['vector_5fffv',['vector_ffv',['../namespacestan_1_1agrad.html#a96902ae4f8847b57803a5ac7e5d9754d',1,'stan::agrad']]], + ['vector_5ffv',['vector_fv',['../namespacestan_1_1agrad.html#a4ee7f0ffda84be0aec51dfd293951daf',1,'stan::agrad']]], + ['vector_5ft',['vector_t',['../classstan_1_1io_1_1reader.html#acc7ad774f8ec903caa164a9ac1e78b30',1,'stan::io::reader::vector_t()'],['../classstan_1_1io_1_1writer.html#a4f9ede8dc253f291c7a27cacd03cf542',1,'stan::io::writer::vector_t()'],['../classstan_1_1optimization_1_1_b_f_g_s_line_search.html#af45bef442ce47a3821c2c19292283ecd',1,'stan::optimization::BFGSLineSearch::vector_t()']]], + ['vector_5fv',['vector_v',['../namespacestan_1_1agrad.html#acf0241b312ef1f17733c24766df1f49f',1,'stan::agrad']]], + ['vectort',['VectorT',['../classstan_1_1optimization_1_1_b_f_g_s_minimizer.html#ae26c7119488745c9d70158da1bc1d2ae',1,'stan::optimization::BFGSMinimizer']]] +]; diff --git a/doc/api/html/search/variables_5f.html b/doc/api/html/search/variables_5f.html new file mode 100644 index 00000000000..375abd9bec3 --- /dev/null +++ b/doc/api/html/search/variables_5f.html @@ -0,0 +1,25 @@ + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/doc/api/html/search/variables_5f.js b/doc/api/html/search/variables_5f.js new file mode 100644 index 00000000000..ef96fbb0e9c --- /dev/null +++ b/doc/api/html/search/variables_5f.js @@ -0,0 +1,93 @@ +var searchData= +[ + ['_5fadapt_5fbase_5fwindow',['_adapt_base_window',['../classstan_1_1mcmc_1_1windowed__adaptation.html#ae25e5dc1480c6e553d65e24beb964dec',1,'stan::mcmc::windowed_adaptation']]], + ['_5fadapt_5fflag',['_adapt_flag',['../classstan_1_1mcmc_1_1base__adapter.html#aef437ec008b42d9364f0165bd783a4de',1,'stan::mcmc::base_adapter']]], + ['_5fadapt_5finit_5fbuffer',['_adapt_init_buffer',['../classstan_1_1mcmc_1_1windowed__adaptation.html#a7a79530d16f82b9d8beb0961b4bb1018',1,'stan::mcmc::windowed_adaptation']]], + ['_5fadapt_5fnext_5fwindow',['_adapt_next_window',['../classstan_1_1mcmc_1_1windowed__adaptation.html#a0b3771ea39bc3fd60c43aea960b2df98',1,'stan::mcmc::windowed_adaptation']]], + ['_5fadapt_5fterm_5fbuffer',['_adapt_term_buffer',['../classstan_1_1mcmc_1_1windowed__adaptation.html#a81191d64fdfb010c997a538d479a270a',1,'stan::mcmc::windowed_adaptation']]], + ['_5fadapt_5fwindow_5fcounter',['_adapt_window_counter',['../classstan_1_1mcmc_1_1windowed__adaptation.html#ab589266e966065c3088e6b02c73ad1e3',1,'stan::mcmc::windowed_adaptation']]], + ['_5fadapt_5fwindow_5fsize',['_adapt_window_size',['../classstan_1_1mcmc_1_1windowed__adaptation.html#a9b669ff236cb187f69901064ce4835d3',1,'stan::mcmc::windowed_adaptation']]], + ['_5fadjaref',['_adjARef',['../agrad_2rev_2matrix_2determinant_8hpp.html#ac289fdc094f4376437157416320ac3bd',1,'_adjARef(): determinant.hpp'],['../agrad_2rev_2matrix_2log__determinant_8hpp.html#ac289fdc094f4376437157416320ac3bd',1,'_adjARef(): log_determinant.hpp'],['../agrad_2rev_2matrix_2log__determinant__spd_8hpp.html#ac289fdc094f4376437157416320ac3bd',1,'_adjARef(): log_determinant_spd.hpp']]], + ['_5falloc',['_alloc',['../classstan_1_1math_1_1_l_d_l_t__factor_3_01stan_1_1agrad_1_1var_00_01_r_00_01_c_01_4.html#ac161188fa80c04c2affb499c81e8b3bd',1,'stan::math::LDLT_factor< stan::agrad::var, R, C >::_alloc()'],['../agrad_2rev_2matrix_2log__determinant__spd_8hpp.html#a6a66022aa2c567d6be6ecc6a4818e36d',1,'_alloc(): log_determinant_spd.hpp'],['../agrad_2rev_2matrix_2mdivide__left__ldlt_8hpp.html#ac8fd1d052b1749cdac48e692c69b01e4',1,'_alloc(): mdivide_left_ldlt.hpp'],['../agrad_2rev_2matrix_2mdivide__left__spd_8hpp.html#af33a1ef9d6061ad644079483e4811d9c',1,'_alloc(): mdivide_left_spd.hpp']]], + ['_5falloc_5fldlt',['_alloc_ldlt',['../agrad_2rev_2matrix_2log__determinant__ldlt_8hpp.html#a33bff37593aa7c24792769893d6cd60d',1,'_alloc_ldlt(): log_determinant_ldlt.hpp'],['../agrad_2rev_2matrix_2mdivide__left__ldlt_8hpp.html#acb7147b3011bb4bb4d08ed4da2dd9ed6',1,'_alloc_ldlt(): mdivide_left_ldlt.hpp']]], + ['_5falpha',['_alpha',['../classstan_1_1optimization_1_1_b_f_g_s_minimizer.html#ad45ecfae1cf522aeccd74690e3ca5ab1',1,'stan::optimization::BFGSMinimizer']]], + ['_5falpha0',['_alpha0',['../classstan_1_1optimization_1_1_b_f_g_s_minimizer.html#ace039fd8789a6eba09a0fbc15584f003',1,'stan::optimization::BFGSMinimizer']]], + ['_5falphak_5f1',['_alphak_1',['../classstan_1_1optimization_1_1_b_f_g_s_minimizer.html#afc093ad16e0b1c8668463303ccc03429',1,'stan::optimization::BFGSMinimizer']]], + ['_5farguments',['_arguments',['../classstan_1_1gm_1_1argument__parser.html#a123bcf0183cb6bbe71068ff187a67e67',1,'stan::gm::argument_parser::_arguments()'],['../classstan_1_1gm_1_1argument__probe.html#a92cda768d0cd100860a9de7e3b1b6838',1,'stan::gm::argument_probe::_arguments()']]], + ['_5fbad_5fvalue',['_bad_value',['../classstan_1_1gm_1_1singleton__argument.html#a6c77999833a1f8e580fb13f76af3c4be',1,'stan::gm::singleton_argument']]], + ['_5fcols',['_cols',['../agrad_2rev_2matrix_2determinant_8hpp.html#a9c07cb6acc3ea9dc957ef6874d075e7b',1,'_cols(): determinant.hpp'],['../agrad_2rev_2matrix_2log__determinant_8hpp.html#a9c07cb6acc3ea9dc957ef6874d075e7b',1,'_cols(): log_determinant.hpp'],['../agrad_2rev_2matrix_2log__determinant__spd_8hpp.html#a9c07cb6acc3ea9dc957ef6874d075e7b',1,'_cols(): log_determinant_spd.hpp']]], + ['_5fconstrained',['_constrained',['../classstan_1_1gm_1_1singleton__argument.html#a3fb0b88831bbc32580be800e735654ef',1,'stan::gm::singleton_argument']]], + ['_5fcounter',['_counter',['../classstan_1_1mcmc_1_1stepsize__adaptation.html#ade5951f7ef5e42f0571838b2932408ee',1,'stan::mcmc::stepsize_adaptation']]], + ['_5fcovar_5fadaptation',['_covar_adaptation',['../classstan_1_1mcmc_1_1stepsize__covar__adapter.html#a81e2e0c870bf71ae803ed7bc29e7c10d',1,'stan::mcmc::stepsize_covar_adapter']]], + ['_5fcursor',['_cursor',['../classstan_1_1gm_1_1list__argument.html#ad55e26c7c3dad56b1755e7ff48ad105a',1,'stan::gm::list_argument']]], + ['_5fdefault',['_default',['../classstan_1_1gm_1_1valued__argument.html#abca552e2f3f5a60700aef0fb4b7e2982',1,'stan::gm::valued_argument']]], + ['_5fdefault_5fcursor',['_default_cursor',['../classstan_1_1gm_1_1list__argument.html#ad83ee16d6f572997bd75a2e573ebad6b',1,'stan::gm::list_argument']]], + ['_5fdefault_5fvalue',['_default_value',['../classstan_1_1gm_1_1singleton__argument.html#a09f10b878343aa0cce9e33a5cf7f8032',1,'stan::gm::singleton_argument']]], + ['_5fdelta',['_delta',['../classstan_1_1mcmc_1_1stepsize__adaptation.html#adceaf56188458666a1d2c9e390f03a74',1,'stan::mcmc::stepsize_adaptation']]], + ['_5fdepth',['_depth',['../classstan_1_1mcmc_1_1base__nuts.html#acb7e67dd254cab229429fcead7f18248',1,'stan::mcmc::base_nuts']]], + ['_5fdescription',['_description',['../classstan_1_1gm_1_1argument.html#aa0d6c7ba1141afefb7e78b829bc556a7',1,'stan::gm::argument']]], + ['_5fepsilon',['_epsilon',['../classstan_1_1mcmc_1_1base__hmc.html#a0d4321fe558ad0295196d79c5525a777',1,'stan::mcmc::base_hmc']]], + ['_5fepsilon_5fjitter',['_epsilon_jitter',['../classstan_1_1mcmc_1_1base__hmc.html#a1eb0217fe58fa1a2e4d0691831f062d6',1,'stan::mcmc::base_hmc']]], + ['_5ferr_5fstream',['_err_stream',['../classstan_1_1mcmc_1_1base__mcmc.html#a38c1899ffa57046d3da3ac5496ac4a8e',1,'stan::mcmc::base_mcmc::_err_stream()'],['../classstan_1_1mcmc_1_1base__hamiltonian.html#a7db84e905cea2560e6a223656594c393',1,'stan::mcmc::base_hamiltonian::_err_stream()']]], + ['_5festimator',['_estimator',['../classstan_1_1mcmc_1_1covar__adaptation.html#a58ed3f592a8a0ef46f440c9174ec439d',1,'stan::mcmc::covar_adaptation::_estimator()'],['../classstan_1_1mcmc_1_1var__adaptation.html#ac7cca0e0ab1286b812f2d890049a09e4',1,'stan::mcmc::var_adaptation::_estimator()']]], + ['_5festimator_5fname',['_estimator_name',['../classstan_1_1mcmc_1_1windowed__adaptation.html#a3a5f0f2df10b1e0e5431a97d9edc0a83',1,'stan::mcmc::windowed_adaptation']]], + ['_5ffk',['_fk',['../classstan_1_1optimization_1_1_b_f_g_s_minimizer.html#a75288a0a0783ca985d0539f82a47a800',1,'stan::optimization::BFGSMinimizer']]], + ['_5ffk_5f1',['_fk_1',['../classstan_1_1optimization_1_1_b_f_g_s_minimizer.html#a244de3265b928cb15d10069931641a83',1,'stan::optimization::BFGSMinimizer']]], + ['_5ffunc',['_func',['../classstan_1_1optimization_1_1_b_f_g_s_minimizer.html#a02a192467c7706cf70db60141a3615f6',1,'stan::optimization::BFGSMinimizer']]], + ['_5fgamma',['_gamma',['../classstan_1_1mcmc_1_1stepsize__adaptation.html#a4747f034cf8440b500e76aada963ab41',1,'stan::mcmc::stepsize_adaptation']]], + ['_5fgk',['_gk',['../classstan_1_1optimization_1_1_b_f_g_s_minimizer.html#a8bf1d09f17e9a5665d3dcc821f153d33',1,'stan::optimization::BFGSMinimizer']]], + ['_5fgk_5f1',['_gk_1',['../classstan_1_1optimization_1_1_b_f_g_s_minimizer.html#aef94fd725067fd7fede3bc48a3b62c7b',1,'stan::optimization::BFGSMinimizer']]], + ['_5fgood_5fvalue',['_good_value',['../classstan_1_1gm_1_1singleton__argument.html#a69fa41809718b5093ddff19c515beeee',1,'stan::gm::singleton_argument']]], + ['_5fhamiltonian',['_hamiltonian',['../classstan_1_1mcmc_1_1base__hmc.html#a1181763cca26e4cde7db08023709bceb',1,'stan::mcmc::base_hmc']]], + ['_5fhelp_5fflag',['_help_flag',['../classstan_1_1gm_1_1argument__parser.html#a8756ce3f3d1e6a9ee3076439d5af15a7',1,'stan::gm::argument_parser']]], + ['_5fimpl',['_impl',['../agrad_2rev_2matrix_2quad__form_8hpp.html#aba5296c623c71f7372cb23517d7a9cfa',1,'_impl(): quad_form.hpp'],['../agrad_2rev_2matrix_2trace__gen__quad__form_8hpp.html#afd17a8260936f41e3700b767282501fa',1,'_impl(): trace_gen_quad_form.hpp'],['../agrad_2rev_2matrix_2trace__inv__quad__form__ldlt_8hpp.html#ab89158b8e67137e7d7693f9d285e6a6b',1,'_impl(): trace_inv_quad_form_ldlt.hpp'],['../agrad_2rev_2matrix_2trace__quad__form_8hpp.html#a0b5bde925768070ceaa12322cd5da836',1,'_impl(): trace_quad_form.hpp']]], + ['_5fintegrator',['_integrator',['../classstan_1_1mcmc_1_1base__hmc.html#a2f9b84971fc6b6ef1e46ff480b514240',1,'stan::mcmc::base_hmc']]], + ['_5finva',['_invA',['../agrad_2rev_2matrix_2log__determinant__spd_8hpp.html#ac62e1300d96ac0909e7fe11f8d8166ef',1,'log_determinant_spd.hpp']]], + ['_5fis_5fpresent',['_is_present',['../classstan_1_1gm_1_1unvalued__argument.html#a6b227464109b7ecf60f8a9093b92ee50',1,'stan::gm::unvalued_argument']]], + ['_5fitnum',['_itNum',['../classstan_1_1optimization_1_1_b_f_g_s_minimizer.html#a6a7e635b790a21bf66419b240c08936f',1,'stan::optimization::BFGSMinimizer']]], + ['_5fkappa',['_kappa',['../classstan_1_1mcmc_1_1stepsize__adaptation.html#abfa89219ff2a4b2895627b305fa9f83e',1,'stan::mcmc::stepsize_adaptation']]], + ['_5fldlt',['_ldlt',['../classstan_1_1agrad_1_1_l_d_l_t__alloc.html#ae09914c4457d949e9463ff514ddb3796',1,'stan::agrad::LDLT_alloc::_ldlt()'],['../classstan_1_1optimization_1_1_b_f_g_s_minimizer.html#a8b5218fc992daacb2748f6ea34a437b6',1,'stan::optimization::BFGSMinimizer::_ldlt()'],['../agrad_2rev_2matrix_2trace__inv__quad__form__ldlt_8hpp.html#a8ff5c08d7409eec748e7d3c88ec37eda',1,'_ldlt(): trace_inv_quad_form_ldlt.hpp']]], + ['_5fldltp',['_ldltP',['../classstan_1_1math_1_1_l_d_l_t__factor_3_01double_00_01_r_00_01_c_01_4.html#aa41484403512f2b107922d0d7fc5c63d',1,'stan::math::LDLT_factor< double, R, C >::_ldltP()'],['../agrad_2rev_2matrix_2mdivide__left__ldlt_8hpp.html#a65ac506e2dfa234b42d90ed38b481b50',1,'_ldltP(): mdivide_left_ldlt.hpp']]], + ['_5fllt',['_llt',['../agrad_2rev_2matrix_2mdivide__left__spd_8hpp.html#a9443c5162b5e88a4425734a7c46ed32a',1,'mdivide_left_spd.hpp']]], + ['_5fm',['_m',['../classstan_1_1prob_1_1welford__covar__estimator.html#a7cb4d78c9a9496b27f719eb93c56436d',1,'stan::prob::welford_covar_estimator::_m()'],['../classstan_1_1prob_1_1welford__var__estimator.html#a97a3e57c6fd9781409f061b9f2937284',1,'stan::prob::welford_var_estimator::_m()']]], + ['_5fm2',['_m2',['../classstan_1_1prob_1_1welford__covar__estimator.html#a9ebe972e6e8ea3e680031c36f59bc3c5',1,'stan::prob::welford_covar_estimator::_m2()'],['../classstan_1_1prob_1_1welford__var__estimator.html#aa805b2a914cff1c8326b2b9037cdbcec',1,'stan::prob::welford_var_estimator::_m2()']]], + ['_5fmax_5fdelta',['_max_delta',['../classstan_1_1mcmc_1_1base__nuts.html#a32c5b1250b06867e5bfad17cb33943b7',1,'stan::mcmc::base_nuts']]], + ['_5fmax_5fdepth',['_max_depth',['../classstan_1_1mcmc_1_1base__nuts.html#aca7e01df1dadea953191cb0818e45e2f',1,'stan::mcmc::base_nuts']]], + ['_5fmethod_5fflag',['_method_flag',['../classstan_1_1gm_1_1argument__parser.html#a0d7e3677a25c3602d9491c5876cb398c',1,'stan::gm::argument_parser']]], + ['_5fmodel',['_model',['../classstan_1_1mcmc_1_1base__hamiltonian.html#a7c187e854abd5b0aca8726cbfab86a21',1,'stan::mcmc::base_hamiltonian']]], + ['_5fmu',['_mu',['../classstan_1_1mcmc_1_1stepsize__adaptation.html#a3ba1ba74a735ae0c6826b49e7bd284df',1,'stan::mcmc::stepsize_adaptation']]], + ['_5fn_5fdivergent',['_n_divergent',['../classstan_1_1mcmc_1_1base__nuts.html#a103b33df985e433f37a56ee0626a7861',1,'stan::mcmc::base_nuts']]], + ['_5fn_5fleapfrog',['_n_leapfrog',['../classstan_1_1mcmc_1_1base__nuts.html#a37b2e2d56dd02f9840562a7b055d8644',1,'stan::mcmc::base_nuts']]], + ['_5fname',['_name',['../classstan_1_1gm_1_1argument.html#a23946e8de0291c9868b0e5430ff71cf0',1,'stan::gm::argument::_name()'],['../classstan_1_1mcmc_1_1base__mcmc.html#ad2c7124c9b80002735c5db2b7aecf482',1,'stan::mcmc::base_mcmc::_name()']]], + ['_5fnom_5fepsilon',['_nom_epsilon',['../classstan_1_1mcmc_1_1base__hmc.html#a514b2e6f2d9481218709b1a16747f8a6',1,'stan::mcmc::base_hmc']]], + ['_5fnote',['_note',['../classstan_1_1optimization_1_1_b_f_g_s_minimizer.html#a85128ba7124ddd7e9e604df71a9c71c5',1,'stan::optimization::BFGSMinimizer']]], + ['_5fnum_5fsamples',['_num_samples',['../classstan_1_1prob_1_1welford__covar__estimator.html#ac3239162bce3b35ff653b8072aa8e7e3',1,'stan::prob::welford_covar_estimator::_num_samples()'],['../classstan_1_1prob_1_1welford__var__estimator.html#a8b378660396e184e69b5cd7152f4e094',1,'stan::prob::welford_var_estimator::_num_samples()']]], + ['_5fnum_5fwarmup',['_num_warmup',['../classstan_1_1mcmc_1_1windowed__adaptation.html#a49833a6e927a0e7dec9a82d756626e16',1,'stan::mcmc::windowed_adaptation']]], + ['_5fopts',['_opts',['../classstan_1_1optimization_1_1_b_f_g_s_minimizer.html#a2f69cfce2ab1a2004dd6687df21b565a',1,'stan::optimization::BFGSMinimizer']]], + ['_5fout_5fstream',['_out_stream',['../classstan_1_1mcmc_1_1base__mcmc.html#ab021a0550faee8630a30990d7ebf7b88',1,'stan::mcmc::base_mcmc::_out_stream()'],['../classstan_1_1mcmc_1_1base__integrator.html#a4cc219f3069be428aa6a74c01d08d333',1,'stan::mcmc::base_integrator::_out_stream()']]], + ['_5frand_5fint',['_rand_int',['../classstan_1_1mcmc_1_1base__hmc.html#a06d0bc3d17266ca80823487f6a6e1180',1,'stan::mcmc::base_hmc']]], + ['_5frand_5funiform',['_rand_uniform',['../classstan_1_1mcmc_1_1base__hmc.html#a5970ff139255992393ebd05cd8cc68f0',1,'stan::mcmc::base_hmc']]], + ['_5frows',['_rows',['../agrad_2rev_2matrix_2determinant_8hpp.html#a3e8959363f536b448785cdfdb1dd461a',1,'_rows(): determinant.hpp'],['../agrad_2rev_2matrix_2log__determinant_8hpp.html#a3e8959363f536b448785cdfdb1dd461a',1,'_rows(): log_determinant.hpp'],['../agrad_2rev_2matrix_2log__determinant__spd_8hpp.html#a3e8959363f536b448785cdfdb1dd461a',1,'_rows(): log_determinant_spd.hpp']]], + ['_5fs_5fbar',['_s_bar',['../classstan_1_1mcmc_1_1stepsize__adaptation.html#a0a3fe27836b539b99e81b5ba3b7e36e1',1,'stan::mcmc::stepsize_adaptation']]], + ['_5fsk',['_sk',['../classstan_1_1optimization_1_1_b_f_g_s_minimizer.html#a7cef3ef923dfd139bb8bb6990b6d47f1',1,'stan::optimization::BFGSMinimizer']]], + ['_5fsk_5f1',['_sk_1',['../classstan_1_1optimization_1_1_b_f_g_s_minimizer.html#a972b1176a858cd4c3209c6d1629953af',1,'stan::optimization::BFGSMinimizer']]], + ['_5fstepsize_5fadaptation',['_stepsize_adaptation',['../classstan_1_1mcmc_1_1stepsize__adapter.html#a560cd9f56401167b284e7eb36e58cbec',1,'stan::mcmc::stepsize_adapter::_stepsize_adaptation()'],['../classstan_1_1mcmc_1_1stepsize__covar__adapter.html#a50045d3383df82e4c3dda971ed0ddf38',1,'stan::mcmc::stepsize_covar_adapter::_stepsize_adaptation()'],['../classstan_1_1mcmc_1_1stepsize__var__adapter.html#aed1abeb55985ad65b435e7a7ced9d4d5',1,'stan::mcmc::stepsize_var_adapter::_stepsize_adaptation()']]], + ['_5fsubarguments',['_subarguments',['../classstan_1_1gm_1_1categorical__argument.html#ae906b6761d356c568023f68020647240',1,'stan::gm::categorical_argument']]], + ['_5fsym',['_sym',['../agrad_2rev_2matrix_2quad__form_8hpp.html#a0f0c3a82aa9cb1ecd7d97fce67fea63d',1,'quad_form.hpp']]], + ['_5ft0',['_t0',['../classstan_1_1mcmc_1_1stepsize__adaptation.html#a9343ca729fb8566cde5b102d391d7003',1,'stan::mcmc::stepsize_adaptation']]], + ['_5fvalidity',['_validity',['../classstan_1_1gm_1_1singleton__argument.html#a74d2460a6fd7de8d3d05b191856f5468',1,'stan::gm::singleton_argument']]], + ['_5fvalue',['_value',['../classstan_1_1gm_1_1singleton__argument.html#a841db6c125379f5a359f3049f532f53b',1,'stan::gm::singleton_argument::_value()'],['../agrad_2rev_2matrix_2trace__inv__quad__form__ldlt_8hpp.html#a3e78e92b9e102f837e1433ff78edd53c',1,'_value(): trace_inv_quad_form_ldlt.hpp']]], + ['_5fvalue_5ftype',['_value_type',['../classstan_1_1gm_1_1valued__argument.html#a8a47f35a2b7426e96bbed0739714b767',1,'stan::gm::valued_argument']]], + ['_5fvalues',['_values',['../classstan_1_1gm_1_1list__argument.html#a784a4d1f183a4404936d25136e27b0f7',1,'stan::gm::list_argument']]], + ['_5fvar_5fadaptation',['_var_adaptation',['../classstan_1_1mcmc_1_1stepsize__var__adapter.html#a4b0e0a10b281ecbc17a22731cabd5032',1,'stan::mcmc::stepsize_var_adapter']]], + ['_5fvaria',['_variA',['../classstan_1_1agrad_1_1_l_d_l_t__alloc.html#a6dce12eeba806f82e50fa553633ba33e',1,'stan::agrad::LDLT_alloc']]], + ['_5fvarib',['_variB',['../agrad_2rev_2matrix_2trace__inv__quad__form__ldlt_8hpp.html#a6d2efaefd09e1eb3e1a9a28f2b3a509b',1,'trace_inv_quad_form_ldlt.hpp']]], + ['_5fvarid',['_variD',['../agrad_2rev_2matrix_2trace__inv__quad__form__ldlt_8hpp.html#ad7f5a226630b241aa90441b387c06c41',1,'trace_inv_quad_form_ldlt.hpp']]], + ['_5fvarirefa',['_variRefA',['../agrad_2rev_2matrix_2mdivide__left_8hpp.html#aea7df605462946b48f6c8200fe67a467',1,'_variRefA(): mdivide_left.hpp'],['../agrad_2rev_2matrix_2mdivide__left__spd_8hpp.html#aea7df605462946b48f6c8200fe67a467',1,'_variRefA(): mdivide_left_spd.hpp'],['../agrad_2rev_2matrix_2mdivide__left__tri_8hpp.html#aea7df605462946b48f6c8200fe67a467',1,'_variRefA(): mdivide_left_tri.hpp']]], + ['_5fvarirefb',['_variRefB',['../agrad_2rev_2matrix_2mdivide__left_8hpp.html#aa2a293603982ac5da732ef1c85aabcd4',1,'_variRefB(): mdivide_left.hpp'],['../agrad_2rev_2matrix_2mdivide__left__ldlt_8hpp.html#aa2a293603982ac5da732ef1c85aabcd4',1,'_variRefB(): mdivide_left_ldlt.hpp'],['../agrad_2rev_2matrix_2mdivide__left__spd_8hpp.html#aa2a293603982ac5da732ef1c85aabcd4',1,'_variRefB(): mdivide_left_spd.hpp'],['../agrad_2rev_2matrix_2mdivide__left__tri_8hpp.html#aa2a293603982ac5da732ef1c85aabcd4',1,'_variRefB(): mdivide_left_tri.hpp']]], + ['_5fvarirefc',['_variRefC',['../agrad_2rev_2matrix_2mdivide__left_8hpp.html#ab81845acdc3a00d1a9358f95da0d560e',1,'_variRefC(): mdivide_left.hpp'],['../agrad_2rev_2matrix_2mdivide__left__ldlt_8hpp.html#ab81845acdc3a00d1a9358f95da0d560e',1,'_variRefC(): mdivide_left_ldlt.hpp'],['../agrad_2rev_2matrix_2mdivide__left__spd_8hpp.html#ab81845acdc3a00d1a9358f95da0d560e',1,'_variRefC(): mdivide_left_spd.hpp'],['../agrad_2rev_2matrix_2mdivide__left__tri_8hpp.html#ab81845acdc3a00d1a9358f95da0d560e',1,'_variRefC(): mdivide_left_tri.hpp']]], + ['_5fx_5fbar',['_x_bar',['../classstan_1_1mcmc_1_1stepsize__adaptation.html#a0091180522b7f03d801a6f8ec46c7f21',1,'stan::mcmc::stepsize_adaptation']]], + ['_5fxk',['_xk',['../classstan_1_1optimization_1_1_b_f_g_s_minimizer.html#a6107a86ad15de26b4dd7c8877a892331',1,'stan::optimization::BFGSMinimizer']]], + ['_5fxk_5f1',['_xk_1',['../classstan_1_1optimization_1_1_b_f_g_s_minimizer.html#a5659d96d4d5d37d72cb62ab6b747eb7a',1,'stan::optimization::BFGSMinimizer']]], + ['_5fz',['_z',['../classstan_1_1mcmc_1_1base__hmc.html#abaa8c5f40b664481b188c8342f3917db',1,'stan::mcmc::base_hmc']]] +]; diff --git a/doc/api/html/search/variables_61.html b/doc/api/html/search/variables_61.html new file mode 100644 index 00000000000..ff1f937dfc6 --- /dev/null +++ b/doc/api/html/search/variables_61.html @@ -0,0 +1,25 @@ + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/doc/api/html/search/variables_61.js b/doc/api/html/search/variables_61.js new file mode 100644 index 00000000000..e386b8f6059 --- /dev/null +++ b/doc/api/html/search/variables_61.js @@ -0,0 +1,26 @@ +var searchData= +[ + ['a_5f',['A_',['../agrad_2rev_2matrix_2determinant_8hpp.html#a11b6b3ab6459db606ab7f4bfd4ad2823',1,'A_(): determinant.hpp'],['../agrad_2rev_2matrix_2log__determinant_8hpp.html#a11b6b3ab6459db606ab7f4bfd4ad2823',1,'A_(): log_determinant.hpp'],['../agrad_2rev_2matrix_2mdivide__left_8hpp.html#a11b6b3ab6459db606ab7f4bfd4ad2823',1,'A_(): mdivide_left.hpp'],['../agrad_2rev_2matrix_2mdivide__left__tri_8hpp.html#a11b6b3ab6459db606ab7f4bfd4ad2823',1,'A_(): mdivide_left_tri.hpp'],['../agrad_2rev_2matrix_2quad__form_8hpp.html#a74fc8e511e9ed21b74f2b3e281ff4c72',1,'A_(): quad_form.hpp'],['../agrad_2rev_2matrix_2trace__gen__quad__form_8hpp.html#a74fc8e511e9ed21b74f2b3e281ff4c72',1,'A_(): trace_gen_quad_form.hpp'],['../agrad_2rev_2matrix_2trace__quad__form_8hpp.html#a74fc8e511e9ed21b74f2b3e281ff4c72',1,'A_(): trace_quad_form.hpp']]], + ['ad_5f',['ad_',['../classstan_1_1agrad_1_1op__ddv__vari.html#ab8049b0e5cba4646440a2a1c1cd04df8',1,'stan::agrad::op_ddv_vari::ad_()'],['../classstan_1_1agrad_1_1op__dv__vari.html#ad87be470866f04643d2f34067ae4b772',1,'stan::agrad::op_dv_vari::ad_()'],['../classstan_1_1agrad_1_1op__dvd__vari.html#ab2a01176a41145a445de4a77f2a5e733',1,'stan::agrad::op_dvd_vari::ad_()'],['../classstan_1_1agrad_1_1op__dvv__vari.html#a73736e271f0a642a887c75903729c76d',1,'stan::agrad::op_dvv_vari::ad_()'],['../agrad__thread__safe_8hpp.html#a7e82ab18118812301f1d7f89468aab1f',1,'ad_(): agrad_thread_safe.hpp']]], + ['adaptation',['adaptation',['../structstan_1_1io_1_1stan__csv.html#aef8315d92141f9f96c832340b7d6553d',1,'stan::io::stan_csv']]], + ['add_5fconditional_5fbody_5ff',['add_conditional_body_f',['../namespacestan_1_1gm.html#ad78f054e040e1e50bbca1c359bdfb212',1,'stan::gm']]], + ['add_5fconditional_5fcondition_5ff',['add_conditional_condition_f',['../namespacestan_1_1gm.html#ac933d49bf64b047878de0a9cd6bee469',1,'stan::gm']]], + ['add_5fexpression_5fdimss_5ff',['add_expression_dimss_f',['../namespacestan_1_1gm.html#a59538d290878f4de9cd33e6d21f57a3c',1,'stan::gm']]], + ['add_5floop_5fidentifier_5ff',['add_loop_identifier_f',['../namespacestan_1_1gm.html#aa52cffaf304fc09f5936e0fe6a708a15',1,'stan::gm']]], + ['add_5fwhile_5fbody_5ff',['add_while_body_f',['../namespacestan_1_1gm.html#a6cd03a1b864b365878417733f67b523e',1,'stan::gm']]], + ['add_5fwhile_5fcondition_5ff',['add_while_condition_f',['../namespacestan_1_1gm.html#adb748e38743964139413d8a31c622474',1,'stan::gm']]], + ['addition',['addition',['../namespacestan_1_1gm.html#a66dd9d718181d0b71df757b512a9e7b6',1,'stan::gm']]], + ['adj_5f',['adj_',['../classstan_1_1agrad_1_1vari.html#a23c19b981f1a4f850e840884b76d08a0',1,'stan::agrad::vari']]], + ['ainvb_5f',['AinvB_',['../agrad_2rev_2matrix_2trace__inv__quad__form__ldlt_8hpp.html#ab94d72eb089cbdafd7d658f9f21e2749',1,'trace_inv_quad_form_ldlt.hpp']]], + ['algorithm',['algorithm',['../structstan_1_1io_1_1stan__csv__metadata.html#ade7047cd16512c5a03c4d1dc9b6a3282',1,'stan::io::stan_csv_metadata']]], + ['all_5fconstant',['all_constant',['../structstan_1_1agrad_1_1_operands_and_partials.html#af8cdd957e2c7d02ea713440ae2ff0d5c',1,'stan::agrad::OperandsAndPartials']]], + ['all_5fpartials',['all_partials',['../structstan_1_1agrad_1_1_operands_and_partials.html#a72bcc7c3e6fb628355b1d147660dd1c1',1,'stan::agrad::OperandsAndPartials']]], + ['all_5fvaris',['all_varis',['../structstan_1_1agrad_1_1_operands_and_partials.html#a3af6956efe05f1ae634bcff64224b25f',1,'stan::agrad::OperandsAndPartials']]], + ['alpha0',['alpha0',['../structstan_1_1optimization_1_1_b_f_g_s_minimizer_1_1_b_f_g_s_options.html#a07597137b348a11f639d2c9eb9dd7207',1,'stan::optimization::BFGSMinimizer::BFGSOptions']]], + ['alpha_5f',['alpha_',['../_eigen___num_traits_8hpp.html#a1b79ed4274c457ae581283a7fc8e51af',1,'alpha_(): Eigen_NumTraits.hpp'],['../agrad_2rev_2matrix_2log__softmax_8hpp.html#acd28daa1fad3aaa17c91e2ca90526175',1,'alpha_(): log_softmax.hpp'],['../agrad_2rev_2matrix_2softmax_8hpp.html#acd28daa1fad3aaa17c91e2ca90526175',1,'alpha_(): softmax.hpp']]], + ['append_5fsamples',['append_samples',['../structstan_1_1io_1_1stan__csv__metadata.html#a5dd804a343d097dabe18f8a48701accb',1,'stan::io::stan_csv_metadata']]], + ['args_5f',['args_',['../structstan_1_1gm_1_1distribution.html#aab595ee25d571021f9c27db31b187f6b',1,'stan::gm::distribution::args_()'],['../structstan_1_1gm_1_1array__literal.html#a26de2c2e4c1319f282766524f991d065',1,'stan::gm::array_literal::args_()'],['../structstan_1_1gm_1_1fun.html#a7c4dc2f722ef80460d8171d6bcab8d00',1,'stan::gm::fun::args_()']]], + ['args_5fr',['args_r',['../structstan_1_1gm_1_1term__grammar.html#a6e06cb76720538efdb14c0c2ada2d370',1,'stan::gm::term_grammar']]], + ['assignment_5fr',['assignment_r',['../structstan_1_1gm_1_1statement__grammar.html#aa3deabcf92016a9afde6ce09215288ff',1,'stan::gm::statement_grammar']]], + ['avi_5f',['avi_',['../classstan_1_1agrad_1_1op__v__vari.html#ae8e93664ac7970bf32c2289f6b8d23fd',1,'stan::agrad::op_v_vari::avi_()'],['../classstan_1_1agrad_1_1op__vd__vari.html#a0bcd38664a8c961ccae91a7c4a5af468',1,'stan::agrad::op_vd_vari::avi_()'],['../classstan_1_1agrad_1_1op__vdd__vari.html#ac48a55ac9e4fe37c975bc0da3795e5cc',1,'stan::agrad::op_vdd_vari::avi_()'],['../classstan_1_1agrad_1_1op__vdv__vari.html#aedb9c63989ef1592cdf387c3a655b772',1,'stan::agrad::op_vdv_vari::avi_()'],['../classstan_1_1agrad_1_1op__vv__vari.html#acdd44b7d08e9f182c70ad91c782f8c79',1,'stan::agrad::op_vv_vari::avi_()'],['../classstan_1_1agrad_1_1op__vvd__vari.html#a16e916a50bb457803ab104e014f07419',1,'stan::agrad::op_vvd_vari::avi_()'],['../classstan_1_1agrad_1_1op__vvv__vari.html#ae8912106d3514178b27ee59f6e964654',1,'stan::agrad::op_vvv_vari::avi_()'],['../agrad__thread__safe_8hpp.html#a7ed9dc49639747c6e4466603cb99f37a',1,'avi_(): agrad_thread_safe.hpp']]] +]; diff --git a/doc/api/html/search/variables_62.html b/doc/api/html/search/variables_62.html new file mode 100644 index 00000000000..c55a15ed3c9 --- /dev/null +++ b/doc/api/html/search/variables_62.html @@ -0,0 +1,25 @@ + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/doc/api/html/search/variables_62.js b/doc/api/html/search/variables_62.js new file mode 100644 index 00000000000..eba1d72047e --- /dev/null +++ b/doc/api/html/search/variables_62.js @@ -0,0 +1,10 @@ +var searchData= +[ + ['b_5f',['B_',['../agrad_2rev_2matrix_2quad__form_8hpp.html#a9e12a47e6a37454b96cc03670779ebf0',1,'B_(): quad_form.hpp'],['../agrad_2rev_2matrix_2trace__gen__quad__form_8hpp.html#a9e12a47e6a37454b96cc03670779ebf0',1,'B_(): trace_gen_quad_form.hpp'],['../agrad_2rev_2matrix_2trace__quad__form_8hpp.html#a9e12a47e6a37454b96cc03670779ebf0',1,'B_(): trace_quad_form.hpp']]], + ['base_5ftype_5f',['base_type_',['../structstan_1_1gm_1_1expr__type.html#aefee7b86134990f92cce19ef8e88f800',1,'stan::gm::expr_type::base_type_()'],['../structstan_1_1gm_1_1base__var__decl.html#a55f45e9a1c2aec254ab96335f85b9399',1,'stan::gm::base_var_decl::base_type_()']]], + ['bd_5f',['bd_',['../classstan_1_1agrad_1_1op__ddv__vari.html#ae35305f4cfd7182e903c8bc40b83e1e4',1,'stan::agrad::op_ddv_vari::bd_()'],['../classstan_1_1agrad_1_1op__vd__vari.html#aeb6e24f98c7ea9a0861d2651e78fba0f',1,'stan::agrad::op_vd_vari::bd_()'],['../classstan_1_1agrad_1_1op__vdd__vari.html#a287e3ff89d946a2eb877abbc525ed132',1,'stan::agrad::op_vdd_vari::bd_()'],['../classstan_1_1agrad_1_1op__vdv__vari.html#ac7de165236d121d5ee5dea22c131aa7f',1,'stan::agrad::op_vdv_vari::bd_()'],['../agrad__thread__safe_8hpp.html#a6bc687cb96fe2e6f4d9f4db190eb789f',1,'bd_(): agrad_thread_safe.hpp']]], + ['binary_5fop_5ff',['binary_op_f',['../namespacestan_1_1gm.html#ac468cb2fce622382db58f8e9f2f6c628',1,'stan::gm']]], + ['bodies_5f',['bodies_',['../structstan_1_1gm_1_1conditional__statement.html#aa050a0eba5609aba1a82615cab5be84b',1,'stan::gm::conditional_statement']]], + ['body_5f',['body_',['../structstan_1_1gm_1_1while__statement.html#a02751b1da71e77005c2e31df9c901997',1,'stan::gm::while_statement']]], + ['bvi_5f',['bvi_',['../classstan_1_1agrad_1_1op__dv__vari.html#a98d635e1f027bdfc2b334b4e1c37c3ac',1,'stan::agrad::op_dv_vari::bvi_()'],['../classstan_1_1agrad_1_1op__dvd__vari.html#ac260097674d6178986ce2bca1bf06f18',1,'stan::agrad::op_dvd_vari::bvi_()'],['../classstan_1_1agrad_1_1op__dvv__vari.html#a7e8348772bd3a834702dbaf107102fcf',1,'stan::agrad::op_dvv_vari::bvi_()'],['../classstan_1_1agrad_1_1op__vv__vari.html#ad5479c2e11d97e789b12555069856f64',1,'stan::agrad::op_vv_vari::bvi_()'],['../classstan_1_1agrad_1_1op__vvd__vari.html#a641c2f4fdf8fb63130bf1ac50705ca11',1,'stan::agrad::op_vvd_vari::bvi_()'],['../classstan_1_1agrad_1_1op__vvv__vari.html#a3bff8e5ca6a08bba14b5383ee5af0526',1,'stan::agrad::op_vvv_vari::bvi_()'],['../agrad__thread__safe_8hpp.html#adf2a9af952f9152b9565cce4349b3dbc',1,'bvi_(): agrad_thread_safe.hpp']]] +]; diff --git a/doc/api/html/search/variables_63.html b/doc/api/html/search/variables_63.html new file mode 100644 index 00000000000..c649c81fbf6 --- /dev/null +++ b/doc/api/html/search/variables_63.html @@ -0,0 +1,25 @@ + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/doc/api/html/search/variables_63.js b/doc/api/html/search/variables_63.js new file mode 100644 index 00000000000..e9a98e048ff --- /dev/null +++ b/doc/api/html/search/variables_63.js @@ -0,0 +1,17 @@ +var searchData= +[ + ['c1',['c1',['../structstan_1_1optimization_1_1_b_f_g_s_minimizer_1_1_b_f_g_s_options.html#a77d9e5ac3274c6810e1aacc63df5dbe1',1,'stan::optimization::BFGSMinimizer::BFGSOptions']]], + ['c2',['c2',['../structstan_1_1optimization_1_1_b_f_g_s_minimizer_1_1_b_f_g_s_options.html#a6379b29a858127f1ef3cc0ab5426cc82',1,'stan::optimization::BFGSMinimizer::BFGSOptions']]], + ['c_5f',['C_',['../agrad_2rev_2matrix_2mdivide__left_8hpp.html#a03e9f8989e0f5a0117b426e2b204933a',1,'C_(): mdivide_left.hpp'],['../agrad_2rev_2matrix_2mdivide__left__ldlt_8hpp.html#a71042c83f662a5f71b52b6e6c2ae4915',1,'C_(): mdivide_left_ldlt.hpp'],['../agrad_2rev_2matrix_2mdivide__left__spd_8hpp.html#a71042c83f662a5f71b52b6e6c2ae4915',1,'C_(): mdivide_left_spd.hpp'],['../agrad_2rev_2matrix_2mdivide__left__tri_8hpp.html#a03e9f8989e0f5a0117b426e2b204933a',1,'C_(): mdivide_left_tri.hpp'],['../agrad_2rev_2matrix_2quad__form_8hpp.html#a55687fe74d2b370950b50b750657c48e',1,'C_(): quad_form.hpp'],['../agrad_2rev_2matrix_2trace__inv__quad__form__ldlt_8hpp.html#aaed1328a1a8dc253591d2941edfec676',1,'C_(): trace_inv_quad_form_ldlt.hpp']]], + ['cd_5f',['cd_',['../classstan_1_1agrad_1_1op__dvd__vari.html#afb19614ab6249ef02fd7b25cffc08025',1,'stan::agrad::op_dvd_vari::cd_()'],['../classstan_1_1agrad_1_1op__vdd__vari.html#a07feae28b7d06e95a4c5221728eaeb59',1,'stan::agrad::op_vdd_vari::cd_()'],['../classstan_1_1agrad_1_1op__vvd__vari.html#a77be8bf88a35750ac9bb0d6c7bd77d1a',1,'stan::agrad::op_vvd_vari::cd_()'],['../agrad__thread__safe_8hpp.html#a1671afec9ddeea25855e744cb53988f4',1,'cd_(): agrad_thread_safe.hpp']]], + ['chain_5fid',['chain_id',['../structstan_1_1io_1_1stan__csv__metadata.html#ad18cd985fe4d6c8c451950cc158438e4',1,'stan::io::stan_csv_metadata']]], + ['cholesky_5ffactor_5fdecl_5fr',['cholesky_factor_decl_r',['../structstan_1_1gm_1_1var__decls__grammar.html#af6c3b1a0eb00517659faa2f659d0abd0',1,'stan::gm::var_decls_grammar']]], + ['condition_5f',['condition_',['../structstan_1_1gm_1_1while__statement.html#ac28766c928629d492f3cb633a70d446d',1,'stan::gm::while_statement']]], + ['conditional_5fstatement_5fr',['conditional_statement_r',['../structstan_1_1gm_1_1statement__2__grammar.html#a5d6a2f57ba3e3e2d05f9aad72fcbc97c',1,'stan::gm::statement_2_grammar']]], + ['conditions_5f',['conditions_',['../structstan_1_1gm_1_1conditional__statement.html#a1afeedc0d7f192d1fac3cda264918a22',1,'stan::gm::conditional_statement']]], + ['constraint_5ftolerance',['CONSTRAINT_TOLERANCE',['../classstan_1_1io_1_1writer.html#a028f6ddc6fd884c8be9cdb5e17d49d73',1,'stan::io::writer::CONSTRAINT_TOLERANCE()'],['../namespacestan_1_1math.html#aece739c5a2672028f0c7848045b89f08',1,'stan::math::CONSTRAINT_TOLERANCE()'],['../namespacestan_1_1prob.html#a42d98044ad33e2fe147c7edcf09282f6',1,'stan::prob::CONSTRAINT_TOLERANCE()']]], + ['corr_5fmatrix_5fdecl_5fr',['corr_matrix_decl_r',['../structstan_1_1gm_1_1var__decls__grammar.html#a8a1a3bc0f32b4484648ba7ed1cc1e6ec',1,'stan::gm::var_decls_grammar']]], + ['cov_5fmatrix_5fdecl_5fr',['cov_matrix_decl_r',['../structstan_1_1gm_1_1var__decls__grammar.html#af7029c6e49af878a50f5717713430798',1,'stan::gm::var_decls_grammar']]], + ['criterion',['criterion',['../structstan_1_1mcmc_1_1nuts__util.html#ad957f342afb9aa4d0e838486885f31d3',1,'stan::mcmc::nuts_util']]], + ['cvi_5f',['cvi_',['../classstan_1_1agrad_1_1op__ddv__vari.html#a9fa975086d0c27cd1506fc76f0a826a1',1,'stan::agrad::op_ddv_vari::cvi_()'],['../classstan_1_1agrad_1_1op__dvv__vari.html#a7b45480bb231853d2849a225e98395b0',1,'stan::agrad::op_dvv_vari::cvi_()'],['../classstan_1_1agrad_1_1op__vdv__vari.html#a35aaa74843a75c3e340eaa2be01428fb',1,'stan::agrad::op_vdv_vari::cvi_()'],['../classstan_1_1agrad_1_1op__vvv__vari.html#a9f790058e86519dd043af8799e5269ff',1,'stan::agrad::op_vvv_vari::cvi_()'],['../agrad__thread__safe_8hpp.html#a85cb3e45be84a247edd670178d7585b1',1,'cvi_(): agrad_thread_safe.hpp']]] +]; diff --git a/doc/api/html/search/variables_64.html b/doc/api/html/search/variables_64.html new file mode 100644 index 00000000000..fee6769deda --- /dev/null +++ b/doc/api/html/search/variables_64.html @@ -0,0 +1,25 @@ + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/doc/api/html/search/variables_64.js b/doc/api/html/search/variables_64.js new file mode 100644 index 00000000000..5860bd03296 --- /dev/null +++ b/doc/api/html/search/variables_64.js @@ -0,0 +1,36 @@ +var searchData= +[ + ['d_5f',['d_',['../structstan_1_1agrad_1_1fvar.html#a189f3e99b3716c92b73b43e709245787',1,'stan::agrad::fvar::d_()'],['../agrad_2rev_2matrix_2trace__gen__quad__form_8hpp.html#ab8b790d54b5b04c9c5dd60e063ed40bc',1,'D_(): trace_gen_quad_form.hpp'],['../agrad_2rev_2matrix_2trace__inv__quad__form__ldlt_8hpp.html#a924a423d56557fce1ab298532ab03bb8',1,'D_(): trace_inv_quad_form_ldlt.hpp']]], + ['d_5fx1',['d_x1',['../structstan_1_1agrad_1_1_operands_and_partials.html#a3c0b97cb24df6cf073c7585a2ced93ea',1,'stan::agrad::OperandsAndPartials']]], + ['d_5fx2',['d_x2',['../structstan_1_1agrad_1_1_operands_and_partials.html#ae36664450bb09392fe8e0dae036ebfa1',1,'stan::agrad::OperandsAndPartials']]], + ['d_5fx3',['d_x3',['../structstan_1_1agrad_1_1_operands_and_partials.html#a1858e4f3e9bc2dee0f3bd25b72ac7862',1,'stan::agrad::OperandsAndPartials']]], + ['d_5fx4',['d_x4',['../structstan_1_1agrad_1_1_operands_and_partials.html#a1ca64b9b641bf4fe7a34bf2a6804c50a',1,'stan::agrad::OperandsAndPartials']]], + ['d_5fx5',['d_x5',['../structstan_1_1agrad_1_1_operands_and_partials.html#a99c7a29399d12adf8c55f31a60cbf6aa',1,'stan::agrad::OperandsAndPartials']]], + ['d_5fx6',['d_x6',['../structstan_1_1agrad_1_1_operands_and_partials.html#acd4f4706460ff63b51e987d343cd8bbf',1,'stan::agrad::OperandsAndPartials']]], + ['da_5f',['da_',['../classstan_1_1agrad_1_1precomp__v__vari.html#af0cd4c5436b3bdc84f0d5c499a628be3',1,'stan::agrad::precomp_v_vari']]], + ['data',['data',['../structstan_1_1io_1_1stan__csv__metadata.html#ab98a28bde3ef2a0c2a04588d527902da',1,'stan::io::stan_csv_metadata']]], + ['data_5fdecl_5f',['data_decl_',['../structstan_1_1gm_1_1program.html#a6703cdf4c559cfdf4675c68eeff40fa5',1,'stan::gm::program']]], + ['data_5forigin',['data_origin',['../namespacestan_1_1gm.html#aa21145a91e4c8dd4d9495868c6f729a7',1,'stan::gm']]], + ['data_5fvar_5fdecls_5fr',['data_var_decls_r',['../structstan_1_1gm_1_1program__grammar.html#a739949e8b7237c5a60f4968d75bf9058',1,'stan::gm::program_grammar']]], + ['decl_5f',['decl_',['../structstan_1_1gm_1_1var__decl.html#a9d23fb1315d50ec89c135e1ccfd60a6c',1,'stan::gm::var_decl']]], + ['declare_5fvars_5f',['declare_vars_',['../structstan_1_1gm_1_1init__local__var__visgen.html#a2c9f12770f32bb4cffe9444898a89ddf',1,'stan::gm::init_local_var_visgen::declare_vars_()'],['../structstan_1_1gm_1_1generate__local__var__init__nan__visgen.html#ae1f7b8e29eb89aff4c1b2394e27a051c',1,'stan::gm::generate_local_var_init_nan_visgen::declare_vars_()']]], + ['derived_5fdata_5fdecl_5f',['derived_data_decl_',['../structstan_1_1gm_1_1program.html#abb7b64b4d14faf7c161d6fc0c73a859d',1,'stan::gm::program']]], + ['derived_5fdata_5fvar_5fdecls_5fr',['derived_data_var_decls_r',['../structstan_1_1gm_1_1program__grammar.html#acf4498316a5b25d57a2391749f4a82fc',1,'stan::gm::program_grammar']]], + ['derived_5fdecl_5f',['derived_decl_',['../structstan_1_1gm_1_1program.html#a24e02f27c716fefbf3ec7c3a766778f5',1,'stan::gm::program']]], + ['derived_5forigin',['derived_origin',['../namespacestan_1_1gm.html#af2cb1df6a23d138782246a8304ad7d86',1,'stan::gm']]], + ['derived_5fvar_5fdecls_5fr',['derived_var_decls_r',['../structstan_1_1gm_1_1program__grammar.html#a3dd0e48430d1ef2e41b8bb670ed872e6',1,'stan::gm::program_grammar']]], + ['digits',['digits',['../structstd_1_1numeric__limits_3_01stan_1_1agrad_1_1fvar_3_01_t_01_4_01_4.html#ab7fc728472be7d381bf47674c5d158db',1,'std::numeric_limits< stan::agrad::fvar< T > >::digits()'],['../structstd_1_1numeric__limits_3_01stan_1_1agrad_1_1var_01_4.html#a98f7189075cd866db3f13c1d8bc8f210',1,'std::numeric_limits< stan::agrad::var >::digits()']]], + ['digits10',['digits10',['../structstd_1_1numeric__limits_3_01stan_1_1agrad_1_1fvar_3_01_t_01_4_01_4.html#a82bc6dd47767407e075cfbc04a9872d4',1,'std::numeric_limits< stan::agrad::fvar< T > >::digits10()'],['../structstd_1_1numeric__limits_3_01stan_1_1agrad_1_1var_01_4.html#afa394a3a7449a6a03d19176378ae5ea4',1,'std::numeric_limits< stan::agrad::var >::digits10()']]], + ['dims_5f',['dims_',['../structstan_1_1gm_1_1variable__dims.html#a70f46c11bdd84865ec1b65c37f9ad23c',1,'stan::gm::variable_dims::dims_()'],['../structstan_1_1gm_1_1base__var__decl.html#a34df8ccee8d884095d1b95ea2503a42c',1,'stan::gm::base_var_decl::dims_()']]], + ['dims_5fr',['dims_r',['../structstan_1_1gm_1_1statement__grammar.html#a894de01f7a57cb4f67c157e12faf33ad',1,'stan::gm::statement_grammar::dims_r()'],['../structstan_1_1gm_1_1term__grammar.html#a572196c88493b512a11e7995fe201505',1,'stan::gm::term_grammar::dims_r()'],['../structstan_1_1gm_1_1var__decls__grammar.html#a18dc853a54fc1727eea828ef99f36e01',1,'stan::gm::var_decls_grammar::dims_r()']]], + ['dimss_5f',['dimss_',['../structstan_1_1gm_1_1index__op.html#a8a7e436ba365c1e1f4bafee5a3be34a9',1,'stan::gm::index_op']]], + ['dist_5f',['dist_',['../structstan_1_1gm_1_1sample.html#a516dbdf8e9b0deee39b6ff63c8d5cde1',1,'stan::gm::sample']]], + ['distribution_5fr',['distribution_r',['../structstan_1_1gm_1_1statement__grammar.html#ad54fcb7f586876e0dbbf146d8aa7099b',1,'stan::gm::statement_grammar']]], + ['division',['division',['../namespacestan_1_1gm.html#aba4de316e472e23ea0f375d1e1a7cc33',1,'stan::gm']]], + ['dotval_5f',['dotval_',['../_eigen___num_traits_8hpp.html#a7616b0eef5b3dc26e5a5b62a3ead2035',1,'Eigen_NumTraits.hpp']]], + ['double_5fdecl_5fr',['double_decl_r',['../structstan_1_1gm_1_1var__decls__grammar.html#aaa761edc4a269b040365070ae0e1b38b',1,'stan::gm::var_decls_grammar']]], + ['double_5fliteral_5fr',['double_literal_r',['../structstan_1_1gm_1_1term__grammar.html#a91f8666c8899032d59c1ad4f54a9c0c3',1,'stan::gm::term_grammar']]], + ['double_5ft',['DOUBLE_T',['../namespacestan_1_1gm.html#a903b745f5e5ae0c05b667e45e5d62e66',1,'stan::gm']]], + ['dtrs_5f',['dtrs_',['../classstan_1_1agrad_1_1stored__gradient__vari.html#afb98edd9fb9584921e7ef283e5c9478e',1,'stan::agrad::stored_gradient_vari']]], + ['dtype_5f',['Dtype_',['../agrad_2rev_2matrix_2trace__inv__quad__form__ldlt_8hpp.html#a7c830ea3da654e2c30a3e8d4c41610e8',1,'trace_inv_quad_form_ldlt.hpp']]] +]; diff --git a/doc/api/html/search/variables_65.html b/doc/api/html/search/variables_65.html new file mode 100644 index 00000000000..95b64e699ac --- /dev/null +++ b/doc/api/html/search/variables_65.html @@ -0,0 +1,25 @@ + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/doc/api/html/search/variables_65.js b/doc/api/html/search/variables_65.js new file mode 100644 index 00000000000..4821a0ec7ec --- /dev/null +++ b/doc/api/html/search/variables_65.js @@ -0,0 +1,19 @@ +var searchData= +[ + ['e',['E',['../namespacestan_1_1math.html#a66f94e47c6dc073bbd3929903b4431fe',1,'stan::math']]], + ['elt_5fdivision',['elt_division',['../namespacestan_1_1gm.html#a754bafd927243560d1f783d46ecb34a9',1,'stan::gm']]], + ['elt_5fmultiplication',['elt_multiplication',['../namespacestan_1_1gm.html#a0953feed6c7def5c5a3e9326007e81ea',1,'stan::gm']]], + ['engine',['engine',['../structstan_1_1io_1_1stan__csv__metadata.html#af9275dd04e87640591d6f365ae2416cc',1,'stan::io::stan_csv_metadata']]], + ['epsilon',['EPSILON',['../namespacestan_1_1math.html#a5ffd625c2083751d7ccabb7dbe39cbe0',1,'stan::math']]], + ['error_5fmsgs_5f',['error_msgs_',['../structstan_1_1gm_1_1expression__grammar.html#ad7c2d0065b399be4677ff2a934880bab',1,'stan::gm::expression_grammar::error_msgs_()'],['../structstan_1_1gm_1_1program__grammar.html#abdcce1575595284876756bbccc1d782d',1,'stan::gm::program_grammar::error_msgs_()'],['../structstan_1_1gm_1_1statement__2__grammar.html#acd1c878d999eb7e0b296b8171effcff5',1,'stan::gm::statement_2_grammar::error_msgs_()'],['../structstan_1_1gm_1_1statement__grammar.html#a778922e661a8179a719c1c4f148a8e89',1,'stan::gm::statement_grammar::error_msgs_()'],['../structstan_1_1gm_1_1term__grammar.html#af0c016d0b7ee4d1a637697956fb1903b',1,'stan::gm::term_grammar::error_msgs_()'],['../structstan_1_1gm_1_1var__decls__grammar.html#a0de9ad5f258a7bd55322ee06caa43559',1,'stan::gm::var_decls_grammar::error_msgs_()']]], + ['exp_5fval_5f',['exp_val_',['../agrad__thread__safe_8hpp.html#ad5fa8da685c6b471f471d6ed4fc99ebd',1,'exp_val_(): agrad_thread_safe.hpp'],['../rev_2functions_2log10_8hpp.html#ad5fa8da685c6b471f471d6ed4fc99ebd',1,'exp_val_(): log10.hpp']]], + ['expr_5f',['expr_',['../structstan_1_1gm_1_1expression.html#aea4b4bd3a099e637be3b6495cacf7a38',1,'stan::gm::expression::expr_()'],['../structstan_1_1gm_1_1index__op.html#acff80ac7b92703b3fc8e0e26d8ffa4ea',1,'stan::gm::index_op::expr_()'],['../structstan_1_1gm_1_1sample.html#a29225bfbf5c3cc9b6f259782ac957891',1,'stan::gm::sample::expr_()'],['../structstan_1_1gm_1_1assignment.html#a5b4337392501b66b3d72f1561e969fed',1,'stan::gm::assignment::expr_()']]], + ['expression07_5fg',['expression07_g',['../structstan_1_1gm_1_1var__decls__grammar.html#a873990473ac21516e6aef9eeb17516b7',1,'stan::gm::var_decls_grammar']]], + ['expression07_5fr',['expression07_r',['../structstan_1_1gm_1_1expression__grammar.html#a039d451d73377c293b768acc290f4fe0',1,'stan::gm::expression_grammar']]], + ['expression09_5fr',['expression09_r',['../structstan_1_1gm_1_1expression__grammar.html#a49f5da4ddf11067e5f9234850f0246b7',1,'stan::gm::expression_grammar']]], + ['expression10_5fr',['expression10_r',['../structstan_1_1gm_1_1expression__grammar.html#a842a2f82871c9b725a4e01408412dfef',1,'stan::gm::expression_grammar']]], + ['expression14_5fr',['expression14_r',['../structstan_1_1gm_1_1expression__grammar.html#ad8c1a56d832543048c8c8ce78af686f6',1,'stan::gm::expression_grammar']]], + ['expression_5fas_5fstatement_5ff',['expression_as_statement_f',['../namespacestan_1_1gm.html#a235997d18cc5a475e44e279951e7e96e',1,'stan::gm']]], + ['expression_5fg',['expression_g',['../structstan_1_1gm_1_1program__grammar.html#a57e35e3566d20e80fbfdaecd4035e850',1,'stan::gm::program_grammar::expression_g()'],['../structstan_1_1gm_1_1statement__2__grammar.html#ab1dd748c47712014575913b6d6d94b78',1,'stan::gm::statement_2_grammar::expression_g()'],['../structstan_1_1gm_1_1statement__grammar.html#ab7be40f62219856f74ad71670614c078',1,'stan::gm::statement_grammar::expression_g()'],['../structstan_1_1gm_1_1term__grammar.html#adc0324028be557cb8d639c30ffb4fe6d',1,'stan::gm::term_grammar::expression_g()'],['../structstan_1_1gm_1_1var__decls__grammar.html#a53b96dbd7fc4bf896e0e56c0087727cf',1,'stan::gm::var_decls_grammar::expression_g()']]], + ['expression_5fr',['expression_r',['../structstan_1_1gm_1_1expression__grammar.html#a86d9c1c1655244e6ba1bfe2cb68d4bde',1,'stan::gm::expression_grammar']]] +]; diff --git a/doc/api/html/search/variables_66.html b/doc/api/html/search/variables_66.html new file mode 100644 index 00000000000..9ff42ab7c45 --- /dev/null +++ b/doc/api/html/search/variables_66.html @@ -0,0 +1,25 @@ + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/doc/api/html/search/variables_66.js b/doc/api/html/search/variables_66.js new file mode 100644 index 00000000000..34e09be488a --- /dev/null +++ b/doc/api/html/search/variables_66.js @@ -0,0 +1,7 @@ +var searchData= +[ + ['factor_5fr',['factor_r',['../structstan_1_1gm_1_1term__grammar.html#a9d446cacd531a1f58fbd26edf3465065',1,'stan::gm::term_grammar']]], + ['family_5f',['family_',['../structstan_1_1gm_1_1distribution.html#ab09553687b34895debe5818c548f26b8',1,'stan::gm::distribution']]], + ['for_5fstatement_5fr',['for_statement_r',['../structstan_1_1gm_1_1statement__grammar.html#a5b68ed64ef9f0602474270b4de26c268',1,'stan::gm::statement_grammar']]], + ['fun_5fr',['fun_r',['../structstan_1_1gm_1_1term__grammar.html#a8b08e0616ee62cfba37e6db5e22fa63f',1,'stan::gm::term_grammar']]] +]; diff --git a/doc/api/html/search/variables_67.html b/doc/api/html/search/variables_67.html new file mode 100644 index 00000000000..a7dd43814f3 --- /dev/null +++ b/doc/api/html/search/variables_67.html @@ -0,0 +1,25 @@ + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/doc/api/html/search/variables_67.js b/doc/api/html/search/variables_67.js new file mode 100644 index 00000000000..c398605e48e --- /dev/null +++ b/doc/api/html/search/variables_67.js @@ -0,0 +1,7 @@ +var searchData= +[ + ['g',['g',['../classstan_1_1mcmc_1_1ps__point.html#a651cacb5446e2c6c9931ec23ffe547d3',1,'stan::mcmc::ps_point']]], + ['generated_5fdecl_5f',['generated_decl_',['../structstan_1_1gm_1_1program.html#a8317c188381639e8751e651c0cabccb3',1,'stan::gm::program']]], + ['generated_5fvar_5fdecls_5fr',['generated_var_decls_r',['../structstan_1_1gm_1_1program__grammar.html#a3cc3698f28d843ac60b46504c2171243',1,'stan::gm::program_grammar']]], + ['gradients_5f',['gradients_',['../classstan_1_1agrad_1_1precomputed__gradients__vari.html#aa4f445b1847ec700de7460c4615d4d6f',1,'stan::agrad::precomputed_gradients_vari']]] +]; diff --git a/doc/api/html/search/variables_68.html b/doc/api/html/search/variables_68.html new file mode 100644 index 00000000000..f11c2c94888 --- /dev/null +++ b/doc/api/html/search/variables_68.html @@ -0,0 +1,25 @@ + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/doc/api/html/search/variables_68.js b/doc/api/html/search/variables_68.js new file mode 100644 index 00000000000..7eb7bf691c7 --- /dev/null +++ b/doc/api/html/search/variables_68.js @@ -0,0 +1,12 @@ +var searchData= +[ + ['h0',['H0',['../structstan_1_1mcmc_1_1nuts__util.html#a083059897da783bc5a50a483b3d1a183',1,'stan::mcmc::nuts_util']]], + ['has_5fdenorm',['has_denorm',['../structstd_1_1numeric__limits_3_01stan_1_1agrad_1_1fvar_3_01_t_01_4_01_4.html#ab74374d12ef2fd157e9da0da9bca17aa',1,'std::numeric_limits< stan::agrad::fvar< T > >::has_denorm()'],['../structstd_1_1numeric__limits_3_01stan_1_1agrad_1_1var_01_4.html#a39f58441200febe35d15375e04002318',1,'std::numeric_limits< stan::agrad::var >::has_denorm()']]], + ['has_5fdenorm_5floss',['has_denorm_loss',['../structstd_1_1numeric__limits_3_01stan_1_1agrad_1_1fvar_3_01_t_01_4_01_4.html#ac1de307325406b40bd2aa6753c8b77a4',1,'std::numeric_limits< stan::agrad::fvar< T > >::has_denorm_loss()'],['../structstd_1_1numeric__limits_3_01stan_1_1agrad_1_1var_01_4.html#a07a601c0d75d68be0894f1ec263261ee',1,'std::numeric_limits< stan::agrad::var >::has_denorm_loss()']]], + ['has_5finfinity',['has_infinity',['../structstd_1_1numeric__limits_3_01stan_1_1agrad_1_1fvar_3_01_t_01_4_01_4.html#a4900fc01499241dbb808e1ab376c8f20',1,'std::numeric_limits< stan::agrad::fvar< T > >::has_infinity()'],['../structstd_1_1numeric__limits_3_01stan_1_1agrad_1_1var_01_4.html#ac994e94ce600838a8387132c7b11e481',1,'std::numeric_limits< stan::agrad::var >::has_infinity()']]], + ['has_5fquiet_5fnan',['has_quiet_NaN',['../structstd_1_1numeric__limits_3_01stan_1_1agrad_1_1fvar_3_01_t_01_4_01_4.html#a3d523ce5c3189091d5a7e108cdc4d0fa',1,'std::numeric_limits< stan::agrad::fvar< T > >::has_quiet_NaN()'],['../structstd_1_1numeric__limits_3_01stan_1_1agrad_1_1var_01_4.html#a636301ed6183639045a28156565e7d98',1,'std::numeric_limits< stan::agrad::var >::has_quiet_NaN()']]], + ['has_5fsignaling_5fnan',['has_signaling_NaN',['../structstd_1_1numeric__limits_3_01stan_1_1agrad_1_1fvar_3_01_t_01_4_01_4.html#a9e18e0a8ae010b0eab03652a91df9073',1,'std::numeric_limits< stan::agrad::fvar< T > >::has_signaling_NaN()'],['../structstd_1_1numeric__limits_3_01stan_1_1agrad_1_1var_01_4.html#af303ec0e4b68e63d6d0a3c5962af28f0',1,'std::numeric_limits< stan::agrad::var >::has_signaling_NaN()']]], + ['header',['header',['../structstan_1_1io_1_1stan__csv.html#afacde95dde068821de91fc137eb86515',1,'stan::io::stan_csv']]], + ['help_5fwidth',['help_width',['../classstan_1_1gm_1_1argument.html#a1604ff4589c7f92728663ce1c4709c3b',1,'stan::gm::argument']]], + ['high_5f',['high_',['../structstan_1_1gm_1_1range.html#a1b2c5b66107277bccac20593700fce54',1,'stan::gm::range']]] +]; diff --git a/doc/api/html/search/variables_69.html b/doc/api/html/search/variables_69.html new file mode 100644 index 00000000000..d4ddaf0ae0f --- /dev/null +++ b/doc/api/html/search/variables_69.html @@ -0,0 +1,25 @@ + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/doc/api/html/search/variables_69.js b/doc/api/html/search/variables_69.js new file mode 100644 index 00000000000..616a11f6aa9 --- /dev/null +++ b/doc/api/html/search/variables_69.js @@ -0,0 +1,28 @@ +var searchData= +[ + ['identifier_5fname_5fr',['identifier_name_r',['../structstan_1_1gm_1_1var__decls__grammar.html#abe3a037eddfdf6c101755e4fc09436f9',1,'stan::gm::var_decls_grammar']]], + ['identifier_5fr',['identifier_r',['../structstan_1_1gm_1_1statement__grammar.html#a416d3908d9a67cf4d3a9b5774475fee1',1,'stan::gm::statement_grammar::identifier_r()'],['../structstan_1_1gm_1_1term__grammar.html#a58df34f539d1aa793e3cc607350bd9f3',1,'stan::gm::term_grammar::identifier_r()'],['../structstan_1_1gm_1_1var__decls__grammar.html#a633a9520c7d6578925fe33bc0106db7f',1,'stan::gm::var_decls_grammar::identifier_r()']]], + ['idx_5f',['idx_',['../agrad_2rev_2matrix_2log__softmax_8hpp.html#a48e1ddf96b6a9b19ecead9aca544bb31',1,'idx_(): log_softmax.hpp'],['../agrad_2rev_2matrix_2softmax_8hpp.html#a48e1ddf96b6a9b19ecead9aca544bb31',1,'idx_(): softmax.hpp']]], + ['ill_5fformed_5ft',['ILL_FORMED_T',['../namespacestan_1_1gm.html#a41679a8cc9b047f5ce5aea48a4d6800a',1,'stan::gm']]], + ['include_5fsampling_5f',['include_sampling_',['../structstan_1_1gm_1_1statement__visgen.html#a021d7d6fb6d86d0d05f91fead1b7beaf',1,'stan::gm::statement_visgen']]], + ['increment_5flog_5fprob_5fstatement_5fr',['increment_log_prob_statement_r',['../structstan_1_1gm_1_1statement__grammar.html#a63ae1e77864d40c126f8f5f2ea389c92',1,'stan::gm::statement_grammar']]], + ['indent_5f',['indent_',['../structstan_1_1gm_1_1generate__local__var__init__nan__visgen.html#a74906d451df5f65a04ae1d0125ed7e76',1,'stan::gm::generate_local_var_init_nan_visgen::indent_()'],['../structstan_1_1gm_1_1generate__init__vars__visgen.html#a647f2748887eb08a54ae5c79617ef662',1,'stan::gm::generate_init_vars_visgen::indent_()'],['../structstan_1_1gm_1_1statement__visgen.html#ae4c1610db98461ae144b353bcee4ef0c',1,'stan::gm::statement_visgen::indent_()']]], + ['indent_5fwidth',['indent_width',['../classstan_1_1gm_1_1argument.html#a63234e5b668b59bda3c18c3ade793332',1,'stan::gm::argument']]], + ['indents_5f',['indents_',['../structstan_1_1gm_1_1validate__var__decl__visgen.html#a68936cf8226f63807082c4c9201b659c',1,'stan::gm::validate_var_decl_visgen::indents_()'],['../structstan_1_1gm_1_1member__var__decl__visgen.html#a4e3a93b4b15745447bcc0f25c71c2818',1,'stan::gm::member_var_decl_visgen::indents_()'],['../structstan_1_1gm_1_1local__var__decl__visgen.html#a684598c909a697b029cbd625574b473a',1,'stan::gm::local_var_decl_visgen::indents_()'],['../structstan_1_1gm_1_1validate__transformed__params__visgen.html#abbc7f7f70068b351832f9ed884bd700e',1,'stan::gm::validate_transformed_params_visgen::indents_()']]], + ['indexed_5ffactor_5fr',['indexed_factor_r',['../structstan_1_1gm_1_1term__grammar.html#a2423c5db80eac040aa5a28db10db99cf',1,'stan::gm::term_grammar']]], + ['infty',['INFTY',['../namespacestan_1_1math.html#a7f2ac8ebf3095e9934715bb34f0669b3',1,'stan::math']]], + ['init',['init',['../structstan_1_1io_1_1stan__csv__metadata.html#ad962db2e20c7b01804ed3e2553cca168',1,'stan::io::stan_csv_metadata']]], + ['int_5fdecl_5fr',['int_decl_r',['../structstan_1_1gm_1_1var__decls__grammar.html#a95017547beb96098c7578e64b8b278eb',1,'stan::gm::var_decls_grammar']]], + ['int_5fliteral_5fr',['int_literal_r',['../structstan_1_1gm_1_1term__grammar.html#a74cece98c11632b9d78665d719908735',1,'stan::gm::term_grammar']]], + ['int_5ft',['INT_T',['../namespacestan_1_1gm.html#a2da21cb21d76a1fbafe6857e23e37b5b',1,'stan::gm']]], + ['inv_5fsqrt_5f2',['INV_SQRT_2',['../namespacestan_1_1math.html#a5491e346d5a812af988f8de4a5948c88',1,'stan::math']]], + ['inv_5fsqrt_5ftwo_5fpi',['INV_SQRT_TWO_PI',['../namespacestan_1_1math.html#a44d54686aa26009d0e9101be42afd877',1,'stan::math']]], + ['is_5fbounded',['is_bounded',['../structstd_1_1numeric__limits_3_01stan_1_1agrad_1_1fvar_3_01_t_01_4_01_4.html#a00d51ca94f9c0e1b616831de051cbb5d',1,'std::numeric_limits< stan::agrad::fvar< T > >::is_bounded()'],['../structstd_1_1numeric__limits_3_01stan_1_1agrad_1_1var_01_4.html#a0e9247bdf394e889d350e1440ec16838',1,'std::numeric_limits< stan::agrad::var >::is_bounded()']]], + ['is_5fexact',['is_exact',['../structstd_1_1numeric__limits_3_01stan_1_1agrad_1_1fvar_3_01_t_01_4_01_4.html#aad19ba909c19a94944d95dd1b08d1710',1,'std::numeric_limits< stan::agrad::fvar< T > >::is_exact()'],['../structstd_1_1numeric__limits_3_01stan_1_1agrad_1_1var_01_4.html#aaf190bf85cc7519a8a1b14e14c97da00',1,'std::numeric_limits< stan::agrad::var >::is_exact()']]], + ['is_5fiec559',['is_iec559',['../structstd_1_1numeric__limits_3_01stan_1_1agrad_1_1fvar_3_01_t_01_4_01_4.html#ade091447063275d7c0b78ee66ff60cf5',1,'std::numeric_limits< stan::agrad::fvar< T > >::is_iec559()'],['../structstd_1_1numeric__limits_3_01stan_1_1agrad_1_1var_01_4.html#ae82edc8f86c529ccf0160b314a551d2f',1,'std::numeric_limits< stan::agrad::var >::is_iec559()']]], + ['is_5finteger',['is_integer',['../structstd_1_1numeric__limits_3_01stan_1_1agrad_1_1fvar_3_01_t_01_4_01_4.html#a0bab63fa64809576a620da21303d0811',1,'std::numeric_limits< stan::agrad::fvar< T > >::is_integer()'],['../structstd_1_1numeric__limits_3_01stan_1_1agrad_1_1var_01_4.html#a0fa54365a3bc3ca63ad1eeb4ca90aa99',1,'std::numeric_limits< stan::agrad::var >::is_integer()']]], + ['is_5fmodulo',['is_modulo',['../structstd_1_1numeric__limits_3_01stan_1_1agrad_1_1fvar_3_01_t_01_4_01_4.html#ad516d6dd56d51063f07ba00a55a40c61',1,'std::numeric_limits< stan::agrad::fvar< T > >::is_modulo()'],['../structstd_1_1numeric__limits_3_01stan_1_1agrad_1_1var_01_4.html#a03869da904ea370a26159a4b5b44552c',1,'std::numeric_limits< stan::agrad::var >::is_modulo()']]], + ['is_5fsigned',['is_signed',['../structstd_1_1numeric__limits_3_01stan_1_1agrad_1_1fvar_3_01_t_01_4_01_4.html#a233290aa081cce7372665d112465e6aa',1,'std::numeric_limits< stan::agrad::fvar< T > >::is_signed()'],['../structstd_1_1numeric__limits_3_01stan_1_1agrad_1_1var_01_4.html#a4c82808a270534c93824fa6ad9d03654',1,'std::numeric_limits< stan::agrad::var >::is_signed()']]], + ['is_5fspecialized',['is_specialized',['../structstd_1_1numeric__limits_3_01stan_1_1agrad_1_1fvar_3_01_t_01_4_01_4.html#a1376e2f62fedbf5cabaa9ee991faaca4',1,'std::numeric_limits< stan::agrad::fvar< T > >::is_specialized()'],['../structstd_1_1numeric__limits_3_01stan_1_1agrad_1_1var_01_4.html#ae66652be3cbe3f3b88a06b3a036e47cf',1,'std::numeric_limits< stan::agrad::var >::is_specialized()']]], + ['is_5fvar_5f',['is_var_',['../structstan_1_1gm_1_1init__local__var__visgen.html#a06307f8a9f7b1ef4c6d8823d23e355e8',1,'stan::gm::init_local_var_visgen::is_var_()'],['../structstan_1_1gm_1_1local__var__decl__visgen.html#abe44f6bbd4ad19111fd011c02dd228bb',1,'stan::gm::local_var_decl_visgen::is_var_()'],['../structstan_1_1gm_1_1generate__local__var__init__nan__visgen.html#af0d41615f91253c476b881ee7e90134e',1,'stan::gm::generate_local_var_init_nan_visgen::is_var_()'],['../structstan_1_1gm_1_1statement__visgen.html#ad951339b35d33e87ee6900f7423c1592',1,'stan::gm::statement_visgen::is_var_()']]] +]; diff --git a/doc/api/html/search/variables_6b.html b/doc/api/html/search/variables_6b.html new file mode 100644 index 00000000000..4cc58a6910f --- /dev/null +++ b/doc/api/html/search/variables_6b.html @@ -0,0 +1,25 @@ + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/doc/api/html/search/variables_6b.js b/doc/api/html/search/variables_6b.js new file mode 100644 index 00000000000..77f49725252 --- /dev/null +++ b/doc/api/html/search/variables_6b.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['k_5f',['K_',['../structstan_1_1gm_1_1unit__vector__var__decl.html#a5e60137ec4a7b3f0ccfd0e6841ebb46f',1,'stan::gm::unit_vector_var_decl::K_()'],['../structstan_1_1gm_1_1simplex__var__decl.html#ac395e69af88b82ab0dd6f17413bf9552',1,'stan::gm::simplex_var_decl::K_()'],['../structstan_1_1gm_1_1ordered__var__decl.html#aa3a7d1133246c773a8a23825cf6a71b9',1,'stan::gm::ordered_var_decl::K_()'],['../structstan_1_1gm_1_1positive__ordered__var__decl.html#a46cd009bcd34cae3f1a1eac88ffb9df9',1,'stan::gm::positive_ordered_var_decl::K_()'],['../structstan_1_1gm_1_1cov__matrix__var__decl.html#a015b2522873880fbe7788f3b2627f6ac',1,'stan::gm::cov_matrix_var_decl::K_()'],['../structstan_1_1gm_1_1corr__matrix__var__decl.html#aed341a4b3496c14fe2e12ec4c4ae6389',1,'stan::gm::corr_matrix_var_decl::K_()']]] +]; diff --git a/doc/api/html/search/variables_6c.html b/doc/api/html/search/variables_6c.html new file mode 100644 index 00000000000..6016f5cccf5 --- /dev/null +++ b/doc/api/html/search/variables_6c.html @@ -0,0 +1,25 @@ + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/doc/api/html/search/variables_6c.js b/doc/api/html/search/variables_6c.js new file mode 100644 index 00000000000..3b9b9613d76 --- /dev/null +++ b/doc/api/html/search/variables_6c.js @@ -0,0 +1,17 @@ +var searchData= +[ + ['l_5f',['L_',['../classstan_1_1mcmc_1_1base__static__hmc.html#a90fa0670ef5e51de2534f25c0a34a2c7',1,'stan::mcmc::base_static_hmc']]], + ['left',['left',['../structstan_1_1gm_1_1binary__op.html#a08aaf31f8a247550eac0475e4a260a10',1,'stan::gm::binary_op']]], + ['left_5fdivision',['left_division',['../namespacestan_1_1gm.html#a7ce0894487b3983ccf7f1d1ed59a1f4b',1,'stan::gm']]], + ['length_5f',['length_',['../agrad_2rev_2matrix_2dot__product_8hpp.html#af0c9b7dcc98dce1d0edf7cb6ce49103b',1,'length_(): dot_product.hpp'],['../_eigen___num_traits_8hpp.html#af0c9b7dcc98dce1d0edf7cb6ce49103b',1,'length_(): Eigen_NumTraits.hpp'],['../agrad_2rev_2matrix_2squared__distance_8hpp.html#af0c9b7dcc98dce1d0edf7cb6ce49103b',1,'length_(): squared_distance.hpp'],['../agrad_2rev_2matrix_2sum_8hpp.html#af0c9b7dcc98dce1d0edf7cb6ce49103b',1,'length_(): sum.hpp']]], + ['local_5fdecl_5f',['local_decl_',['../structstan_1_1gm_1_1statements.html#a277fff5acdb257537ee927d68d7fa139',1,'stan::gm::statements']]], + ['local_5forigin',['local_origin',['../namespacestan_1_1gm.html#ae5497a13c6ad9d782269f4b25fc7608a',1,'stan::gm']]], + ['local_5fvar_5fdecls_5fr',['local_var_decls_r',['../structstan_1_1gm_1_1statement__grammar.html#ac5e7f4b79105a972ddfae455a7f28709',1,'stan::gm::statement_grammar']]], + ['log_5f10',['LOG_10',['../namespacestan_1_1math.html#ab773773e2db53015eb48ab1730816fb5',1,'stan::math']]], + ['log_5f2',['LOG_2',['../namespacestan_1_1math.html#a43fb48f0a7f26bc60c1dfb572283b149',1,'stan::math']]], + ['log_5fpi_5fover_5ffour',['LOG_PI_OVER_FOUR',['../namespacestan_1_1math.html#a177764626d2378e0d7bdfb26aac187b6',1,'stan::math']]], + ['log_5fprob_5f',['log_prob_',['../structstan_1_1gm_1_1increment__log__prob__statement.html#a7ba573d094c1453cf8e425eb2bf8a48e',1,'stan::gm::increment_log_prob_statement']]], + ['log_5fu',['log_u',['../structstan_1_1mcmc_1_1nuts__util.html#a825716d6d5b78da51a930844d3b33ccf',1,'stan::mcmc::nuts_util']]], + ['logical_5fnegate_5fexpr_5ff',['logical_negate_expr_f',['../namespacestan_1_1gm.html#a5d5139168f13961e213defe8bd85ba16',1,'stan::gm']]], + ['low_5f',['low_',['../structstan_1_1gm_1_1range.html#a9b009f03d27b53ed652e22fbf5932d97',1,'stan::gm::range']]] +]; diff --git a/doc/api/html/search/variables_6d.html b/doc/api/html/search/variables_6d.html new file mode 100644 index 00000000000..b7924e3562c --- /dev/null +++ b/doc/api/html/search/variables_6d.html @@ -0,0 +1,25 @@ + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/doc/api/html/search/variables_6d.js b/doc/api/html/search/variables_6d.js new file mode 100644 index 00000000000..ab824044074 --- /dev/null +++ b/doc/api/html/search/variables_6d.js @@ -0,0 +1,24 @@ +var searchData= +[ + ['m_5f',['M_',['../structstan_1_1gm_1_1vector__var__decl.html#a2a503a710912ec9280682c48252c673f',1,'stan::gm::vector_var_decl::M_()'],['../structstan_1_1gm_1_1matrix__var__decl.html#ac65e9e100b4199313535f4ce92e7c583',1,'stan::gm::matrix_var_decl::M_()'],['../structstan_1_1gm_1_1cholesky__factor__var__decl.html#a20ba381f18b44d1cd09bf468eb957eb0',1,'stan::gm::cholesky_factor_var_decl::M_()'],['../agrad_2rev_2matrix_2mdivide__left_8hpp.html#ac7022caeebffc39337bdfd893db75983',1,'M_(): mdivide_left.hpp'],['../agrad_2rev_2matrix_2mdivide__left__ldlt_8hpp.html#ac7022caeebffc39337bdfd893db75983',1,'M_(): mdivide_left_ldlt.hpp'],['../agrad_2rev_2matrix_2mdivide__left__spd_8hpp.html#ac7022caeebffc39337bdfd893db75983',1,'M_(): mdivide_left_spd.hpp'],['../agrad_2rev_2matrix_2mdivide__left__tri_8hpp.html#ac7022caeebffc39337bdfd893db75983',1,'M_(): mdivide_left_tri.hpp']]], + ['major_5fversion',['MAJOR_VERSION',['../namespacestan.html#a75c4bb3d494fafd9d1714d4db258975c',1,'stan']]], + ['map_5f',['map_',['../structstan_1_1gm_1_1variable__map.html#a1473c759fc630466b193cbcb6a128cc7',1,'stan::gm::variable_map']]], + ['matrix_5fdecl_5fr',['matrix_decl_r',['../structstan_1_1gm_1_1var__decls__grammar.html#ae0a681145e09c4810cebdb1a43024b0f',1,'stan::gm::var_decls_grammar']]], + ['matrix_5ft',['MATRIX_T',['../namespacestan_1_1gm.html#af68190cae932b66ca3aa3c56bc2b0dc6',1,'stan::gm']]], + ['max_5fexponent',['max_exponent',['../structstd_1_1numeric__limits_3_01stan_1_1agrad_1_1fvar_3_01_t_01_4_01_4.html#a20ce95f45b11a6e1649fe88ed29e9c18',1,'std::numeric_limits< stan::agrad::fvar< T > >::max_exponent()'],['../structstd_1_1numeric__limits_3_01stan_1_1agrad_1_1var_01_4.html#a8cfd734ee404aa28cf57f64d24d192d7',1,'std::numeric_limits< stan::agrad::var >::max_exponent()']]], + ['max_5fexponent10',['max_exponent10',['../structstd_1_1numeric__limits_3_01stan_1_1agrad_1_1fvar_3_01_t_01_4_01_4.html#aa7f994271a89f8f913680464f37e1033',1,'std::numeric_limits< stan::agrad::fvar< T > >::max_exponent10()'],['../structstd_1_1numeric__limits_3_01stan_1_1agrad_1_1var_01_4.html#ac513d112aece630b48c538b6ac397b13',1,'std::numeric_limits< stan::agrad::var >::max_exponent10()']]], + ['maxits',['maxIts',['../structstan_1_1optimization_1_1_b_f_g_s_minimizer_1_1_b_f_g_s_options.html#af876cbedf84144450e0762520e9ff191',1,'stan::optimization::BFGSMinimizer::BFGSOptions']]], + ['memalloc_5f',['memalloc_',['../agrad__thread__safe_8hpp.html#a101adb62dfa9c36d8fe9d782b145b638',1,'memalloc_(): agrad_thread_safe.hpp'],['../namespacestan_1_1agrad.html#aaa104691d168acd62c8adff8e1888d5f',1,'stan::agrad::memalloc_()']]], + ['metadata',['metadata',['../structstan_1_1io_1_1stan__csv.html#a4ecfceb7adb01489b02afae2d38bb32d',1,'stan::io::stan_csv']]], + ['metric',['metric',['../structstan_1_1io_1_1stan__csv__adaptation.html#acb7a22f17dae3c239bab54097f06a082',1,'stan::io::stan_csv_adaptation']]], + ['min_5fexponent',['min_exponent',['../structstd_1_1numeric__limits_3_01stan_1_1agrad_1_1fvar_3_01_t_01_4_01_4.html#ace35430e8870ecb76f33c3053c88dabe',1,'std::numeric_limits< stan::agrad::fvar< T > >::min_exponent()'],['../structstd_1_1numeric__limits_3_01stan_1_1agrad_1_1var_01_4.html#ae36c2c99f19cedb4fc1e791d6e18d097',1,'std::numeric_limits< stan::agrad::var >::min_exponent()']]], + ['min_5fexponent10',['min_exponent10',['../structstd_1_1numeric__limits_3_01stan_1_1agrad_1_1fvar_3_01_t_01_4_01_4.html#a7a7c9a1c6899d243cb31c6173d887bc2',1,'std::numeric_limits< stan::agrad::fvar< T > >::min_exponent10()'],['../structstd_1_1numeric__limits_3_01stan_1_1agrad_1_1var_01_4.html#a4d51c2b58c296c505325170f1b24a2c2',1,'std::numeric_limits< stan::agrad::var >::min_exponent10()']]], + ['minalpha',['minAlpha',['../structstan_1_1optimization_1_1_b_f_g_s_minimizer_1_1_b_f_g_s_options.html#af96e08cafc1f70370eee848f0a4e0b05',1,'stan::optimization::BFGSMinimizer::BFGSOptions']]], + ['minor_5fversion',['MINOR_VERSION',['../namespacestan.html#ad48b562c737bb49645bd8117067858b9',1,'stan']]], + ['minv',['mInv',['../classstan_1_1mcmc_1_1dense__e__point.html#abf64e065e1579f7aeb211d764dc62eb1',1,'stan::mcmc::dense_e_point::mInv()'],['../classstan_1_1mcmc_1_1diag__e__point.html#aaeb41431de534f7237ea8a180b2b3d1a',1,'stan::mcmc::diag_e_point::mInv()']]], + ['model',['model',['../structstan_1_1io_1_1stan__csv__metadata.html#ab8e05cb697a29eac28fd070ab8567de7',1,'stan::io::stan_csv_metadata::model()'],['../structstan_1_1model_1_1model__functional.html#a3930666df0fcdc90f7585423d7d2f7c6',1,'stan::model::model_functional::model()']]], + ['model_5fname_5f',['model_name_',['../structstan_1_1gm_1_1program__grammar.html#a32cf25177064369c7fcccc8e3f8e5cf1',1,'stan::gm::program_grammar']]], + ['model_5fname_5forigin',['model_name_origin',['../namespacestan_1_1gm.html#a119c68ad93a3fc5589c594433b8cb258',1,'stan::gm']]], + ['model_5fr',['model_r',['../structstan_1_1gm_1_1program__grammar.html#a082357dac44c70fe58bb9941c5ff4972',1,'stan::gm::program_grammar']]], + ['multiplication',['multiplication',['../namespacestan_1_1gm.html#a84ada99320bf1c4bb7bc1609d29965a4',1,'stan::gm']]] +]; diff --git a/doc/api/html/search/variables_6e.html b/doc/api/html/search/variables_6e.html new file mode 100644 index 00000000000..4cc41d57fc5 --- /dev/null +++ b/doc/api/html/search/variables_6e.html @@ -0,0 +1,25 @@ + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/doc/api/html/search/variables_6e.js b/doc/api/html/search/variables_6e.js new file mode 100644 index 00000000000..95278ec9cdc --- /dev/null +++ b/doc/api/html/search/variables_6e.js @@ -0,0 +1,19 @@ +var searchData= +[ + ['n_5f',['N_',['../classstan_1_1agrad_1_1_l_d_l_t__alloc.html#a7d6115e4f5432d12eb2f803910287f8f',1,'stan::agrad::LDLT_alloc::N_()'],['../structstan_1_1gm_1_1row__vector__var__decl.html#afcf4381a6b4bf0f832e30dca34c2e418',1,'stan::gm::row_vector_var_decl::N_()'],['../structstan_1_1gm_1_1matrix__var__decl.html#af2a6738f8c8aec9255ea286504ef8d30',1,'stan::gm::matrix_var_decl::N_()'],['../structstan_1_1gm_1_1cholesky__factor__var__decl.html#ac4c2902b224d2808a2a879b85e555359',1,'stan::gm::cholesky_factor_var_decl::N_()'],['../classstan_1_1math_1_1_l_d_l_t__factor_3_01double_00_01_r_00_01_c_01_4.html#aef6f29f77406d69af69d903b629e96dd',1,'stan::math::LDLT_factor< double, R, C >::N_()'],['../agrad_2rev_2matrix_2mdivide__left_8hpp.html#a733553beee6dadc63ea8c537055a9e04',1,'N_(): mdivide_left.hpp'],['../agrad_2rev_2matrix_2mdivide__left__ldlt_8hpp.html#a733553beee6dadc63ea8c537055a9e04',1,'N_(): mdivide_left_ldlt.hpp'],['../agrad_2rev_2matrix_2mdivide__left__spd_8hpp.html#a733553beee6dadc63ea8c537055a9e04',1,'N_(): mdivide_left_spd.hpp'],['../agrad_2rev_2matrix_2mdivide__left__tri_8hpp.html#a733553beee6dadc63ea8c537055a9e04',1,'N_(): mdivide_left_tri.hpp']]], + ['n_5ftree',['n_tree',['../structstan_1_1mcmc_1_1nuts__util.html#ad3f10003284b647aa8a6d246e8d73935',1,'stan::mcmc::nuts_util']]], + ['name_5f',['name_',['../structstan_1_1gm_1_1variable__dims.html#a639052828000ec7614d7b40c859f592a',1,'stan::gm::variable_dims::name_()'],['../structstan_1_1gm_1_1variable.html#afb1d3556c61360990675ef1e886719ea',1,'stan::gm::variable::name_()'],['../structstan_1_1gm_1_1fun.html#a7bacce5646beb34ceca62564465e5512',1,'stan::gm::fun::name_()'],['../structstan_1_1gm_1_1base__var__decl.html#af95b3b01bd96c57240dabd226a64809e',1,'stan::gm::base_var_decl::name_()']]], + ['neg_5ftwo_5fover_5fsqrt_5fpi',['NEG_TWO_OVER_SQRT_PI',['../namespacestan_1_1math.html#a344504ea0c1f4f956c85ea8027a07ba9',1,'stan::math']]], + ['negate_5fexpr_5ff',['negate_expr_f',['../namespacestan_1_1gm.html#a1b6085f99e8b4fb9b42a7add98ac9488',1,'stan::gm']]], + ['negated_5ffactor_5fr',['negated_factor_r',['../structstan_1_1gm_1_1term__grammar.html#a8a82771553bc80dbd016853cf37676e9',1,'stan::gm::term_grammar']]], + ['negative_5fepsilon',['NEGATIVE_EPSILON',['../namespacestan_1_1math.html#a1dcea3a9752d079c9f972040b873b704',1,'stan::math']]], + ['negative_5finfty',['NEGATIVE_INFTY',['../namespacestan_1_1math.html#aa37d0f67f02e0a0b5797ed9f4df56bfb',1,'stan::math']]], + ['no_5fop_5fstatement_5fr',['no_op_statement_r',['../structstan_1_1gm_1_1statement__grammar.html#a0be0bd6e7a44724c32ff73e1bb96375e',1,'stan::gm::statement_grammar']]], + ['non_5flvalue_5fassign_5fr',['non_lvalue_assign_r',['../structstan_1_1gm_1_1statement__grammar.html#a1af0cfdf0b99e6e93c39b7fd326b0069',1,'stan::gm::statement_grammar']]], + ['not_5fa_5fnumber',['NOT_A_NUMBER',['../namespacestan_1_1math.html#a9cf147700a2e38335abc618b2c913b8a',1,'stan::math']]], + ['num_5fdims_5f',['num_dims_',['../structstan_1_1gm_1_1expr__type.html#abf2edf8c79d5990be66b23016dbd2143',1,'stan::gm::expr_type']]], + ['num_5fparams_5fr_5f_5f',['num_params_r__',['../classstan_1_1model_1_1prob__grad.html#a26e7379db0cea5dc64fa8c505f4edfda',1,'stan::model::prob_grad']]], + ['num_5fsamples',['num_samples',['../structstan_1_1io_1_1stan__csv__metadata.html#ab9d717fdea1c34f826112cd197ca530b',1,'stan::io::stan_csv_metadata']]], + ['num_5fwarmup',['num_warmup',['../structstan_1_1io_1_1stan__csv__metadata.html#a220bc990428b915e65cebf3877658008',1,'stan::io::stan_csv_metadata']]], + ['nvaris',['nvaris',['../structstan_1_1agrad_1_1_operands_and_partials.html#a4ae05b02b6c5a839f43a1815e7714c49',1,'stan::agrad::OperandsAndPartials']]] +]; diff --git a/doc/api/html/search/variables_6f.html b/doc/api/html/search/variables_6f.html new file mode 100644 index 00000000000..12fe64f3f20 --- /dev/null +++ b/doc/api/html/search/variables_6f.html @@ -0,0 +1,25 @@ + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/doc/api/html/search/variables_6f.js b/doc/api/html/search/variables_6f.js new file mode 100644 index 00000000000..7f3bc4eb31c --- /dev/null +++ b/doc/api/html/search/variables_6f.js @@ -0,0 +1,8 @@ +var searchData= +[ + ['o',['o',['../structstan_1_1model_1_1model__functional.html#a9ae3ad68fafb77720c0f4fb5ac5ac627',1,'stan::model::model_functional']]], + ['o_5f',['o_',['../structstan_1_1gm_1_1visgen.html#a05817588766bc44447698a3602e82cdb',1,'stan::gm::visgen']]], + ['op',['op',['../structstan_1_1gm_1_1binary__op.html#ad657bf27d15914af4925d567fbc725c6',1,'stan::gm::binary_op::op()'],['../structstan_1_1gm_1_1unary__op.html#aca16006ca03efadf9bd194bdaea1b07b',1,'stan::gm::unary_op::op()']]], + ['opt_5fdims_5fr',['opt_dims_r',['../structstan_1_1gm_1_1statement__grammar.html#a11edf3c28eba99f15d511531a874bd55',1,'stan::gm::statement_grammar::opt_dims_r()'],['../structstan_1_1gm_1_1var__decls__grammar.html#abb097b3fed3a38b056724635d2fafa88',1,'stan::gm::var_decls_grammar::opt_dims_r()']]], + ['ordered_5fdecl_5fr',['ordered_decl_r',['../structstan_1_1gm_1_1var__decls__grammar.html#a9e7481c3a94cac4e78006f7c10fb9cab',1,'stan::gm::var_decls_grammar']]] +]; diff --git a/doc/api/html/search/variables_70.html b/doc/api/html/search/variables_70.html new file mode 100644 index 00000000000..bc5c193ce73 --- /dev/null +++ b/doc/api/html/search/variables_70.html @@ -0,0 +1,25 @@ + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/doc/api/html/search/variables_70.js b/doc/api/html/search/variables_70.js new file mode 100644 index 00000000000..bed7e5227a6 --- /dev/null +++ b/doc/api/html/search/variables_70.js @@ -0,0 +1,17 @@ +var searchData= +[ + ['p',['p',['../classstan_1_1mcmc_1_1ps__point.html#a1bb62217e59e573da4cc5ff391c1b2ce',1,'stan::mcmc::ps_point']]], + ['param_5franges_5fi_5f_5f',['param_ranges_i__',['../classstan_1_1model_1_1prob__grad.html#a19436879a5602e7b47676ce3a6ea8f5f',1,'stan::model::prob_grad']]], + ['param_5fvar_5fdecls_5fr',['param_var_decls_r',['../structstan_1_1gm_1_1program__grammar.html#a84e0908a657b1bc073abd5a134e53bc8',1,'stan::gm::program_grammar']]], + ['parameter_5fdecl_5f',['parameter_decl_',['../structstan_1_1gm_1_1program.html#aa468fc1c6838a4a02031d41391d0feee',1,'stan::gm::program']]], + ['parameter_5forigin',['parameter_origin',['../namespacestan_1_1gm.html#a15fbbd2865f57526a81f238175751b83',1,'stan::gm']]], + ['partials_5f',['partials_',['../classstan_1_1agrad_1_1stored__gradient__vari.html#a6cc0dc9d0c215f4eedd8684f8d9d04ec',1,'stan::agrad::stored_gradient_vari']]], + ['patch_5fversion',['PATCH_VERSION',['../namespacestan.html#ae9ae37a39676ea8ca7cbfeffce12f938',1,'stan']]], + ['positive_5fordered_5fdecl_5fr',['positive_ordered_decl_r',['../structstan_1_1gm_1_1var__decls__grammar.html#a18e4327f093a7e92cc4b2bca94d50470',1,'stan::gm::var_decls_grammar']]], + ['print_5fstatement_5fr',['print_statement_r',['../structstan_1_1gm_1_1statement__grammar.html#a481ea25baea5242da113c3e80b830bf8',1,'stan::gm::statement_grammar']]], + ['printable_5f',['printable_',['../structstan_1_1gm_1_1printable.html#ac9bcfe693d24c2c7b3363596fc380b26',1,'stan::gm::printable']]], + ['printable_5fr',['printable_r',['../structstan_1_1gm_1_1statement__grammar.html#a54e7e6691e72cb4983d430c033777431',1,'stan::gm::statement_grammar']]], + ['printable_5fstring_5fr',['printable_string_r',['../structstan_1_1gm_1_1statement__grammar.html#a5ba49f86716949ae1bc36585d081aba8',1,'stan::gm::statement_grammar']]], + ['printables_5f',['printables_',['../structstan_1_1gm_1_1print__statement.html#a2de577f68c38d6494d0c5b01337c3106',1,'stan::gm::print_statement']]], + ['program_5fr',['program_r',['../structstan_1_1gm_1_1program__grammar.html#a6db277442a938e2a146edcb2d7f8ebb0',1,'stan::gm::program_grammar']]] +]; diff --git a/doc/api/html/search/variables_71.html b/doc/api/html/search/variables_71.html new file mode 100644 index 00000000000..cceeff20476 --- /dev/null +++ b/doc/api/html/search/variables_71.html @@ -0,0 +1,25 @@ + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/doc/api/html/search/variables_71.js b/doc/api/html/search/variables_71.js new file mode 100644 index 00000000000..da15abca23e --- /dev/null +++ b/doc/api/html/search/variables_71.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['q',['q',['../classstan_1_1mcmc_1_1ps__point.html#a3a12cd50a8d7e0d8c698a4debc767283',1,'stan::mcmc::ps_point']]] +]; diff --git a/doc/api/html/search/variables_72.html b/doc/api/html/search/variables_72.html new file mode 100644 index 00000000000..29b87f042e2 --- /dev/null +++ b/doc/api/html/search/variables_72.html @@ -0,0 +1,25 @@ + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/doc/api/html/search/variables_72.js b/doc/api/html/search/variables_72.js new file mode 100644 index 00000000000..833199d338a --- /dev/null +++ b/doc/api/html/search/variables_72.js @@ -0,0 +1,15 @@ +var searchData= +[ + ['radix',['radix',['../structstd_1_1numeric__limits_3_01stan_1_1agrad_1_1fvar_3_01_t_01_4_01_4.html#afd5b4f9c99692d107b041363e1224f5c',1,'std::numeric_limits< stan::agrad::fvar< T > >::radix()'],['../structstd_1_1numeric__limits_3_01stan_1_1agrad_1_1var_01_4.html#ab0737f3e76c801f971530861695381fa',1,'std::numeric_limits< stan::agrad::var >::radix()']]], + ['random_5fseed',['random_seed',['../structstan_1_1io_1_1stan__csv__metadata.html#a11e87094a178f9c9942cd7e2f5d7bd02',1,'stan::io::stan_csv_metadata']]], + ['range_5f',['range_',['../structstan_1_1gm_1_1int__var__decl.html#aaa6d328f10dd0d0ae838d83ba81a1951',1,'stan::gm::int_var_decl::range_()'],['../structstan_1_1gm_1_1double__var__decl.html#ae592f05b693896629cf2c33039819404',1,'stan::gm::double_var_decl::range_()'],['../structstan_1_1gm_1_1vector__var__decl.html#aaa8d18715438632ddf572e90dea01973',1,'stan::gm::vector_var_decl::range_()'],['../structstan_1_1gm_1_1row__vector__var__decl.html#a2f731ff1b9109a953a4b145f5ab35dec',1,'stan::gm::row_vector_var_decl::range_()'],['../structstan_1_1gm_1_1matrix__var__decl.html#a787d753dd8fab870cf529e569b1556b3',1,'stan::gm::matrix_var_decl::range_()'],['../structstan_1_1gm_1_1for__statement.html#a9398fccd6c9d3e0d5c25e90fd09d3d4a',1,'stan::gm::for_statement::range_()']]], + ['range_5fbrackets_5fdouble_5fr',['range_brackets_double_r',['../structstan_1_1gm_1_1var__decls__grammar.html#a0aaf89ef89fa49d93c4b5b23b37be1ff',1,'stan::gm::var_decls_grammar']]], + ['range_5fbrackets_5fint_5fr',['range_brackets_int_r',['../structstan_1_1gm_1_1var__decls__grammar.html#a09e210333cb4aa7173c8b3f80fde5208',1,'stan::gm::var_decls_grammar']]], + ['range_5fr',['range_r',['../structstan_1_1gm_1_1statement__grammar.html#a6dc40f704e7efaccfc1a7886a051773f',1,'stan::gm::statement_grammar::range_r()'],['../structstan_1_1gm_1_1var__decls__grammar.html#aac6aeaf9cbe3c714711c2d3e387c941e',1,'stan::gm::var_decls_grammar::range_r()']]], + ['remove_5floop_5fidentifier_5ff',['remove_loop_identifier_f',['../namespacestan_1_1gm.html#add53eab5545aad3acada8a2f5c253a13',1,'stan::gm']]], + ['rho',['rho',['../structstan_1_1optimization_1_1_b_f_g_s_minimizer_1_1_b_f_g_s_options.html#ae62684f34eac1552c27bed815c2e4ea3',1,'stan::optimization::BFGSMinimizer::BFGSOptions']]], + ['right',['right',['../structstan_1_1gm_1_1binary__op.html#a8c4d835d3bf96f0163e265f824130210',1,'stan::gm::binary_op']]], + ['round_5fstyle',['round_style',['../structstd_1_1numeric__limits_3_01stan_1_1agrad_1_1fvar_3_01_t_01_4_01_4.html#a1c70d1cf58dba42f0bb1987810ae07a7',1,'std::numeric_limits< stan::agrad::fvar< T > >::round_style()'],['../structstd_1_1numeric__limits_3_01stan_1_1agrad_1_1var_01_4.html#a87a2f9fb70b542ca087f476622d51a57',1,'std::numeric_limits< stan::agrad::var >::round_style()']]], + ['row_5fvector_5fdecl_5fr',['row_vector_decl_r',['../structstan_1_1gm_1_1var__decls__grammar.html#a2ead8250ab9ab408323ca23af20cd734',1,'stan::gm::var_decls_grammar']]], + ['row_5fvector_5ft',['ROW_VECTOR_T',['../namespacestan_1_1gm.html#a262a14a590dd1cc841d61cfec98b1ecd',1,'stan::gm']]] +]; diff --git a/doc/api/html/search/variables_73.html b/doc/api/html/search/variables_73.html new file mode 100644 index 00000000000..65b8f642d84 --- /dev/null +++ b/doc/api/html/search/variables_73.html @@ -0,0 +1,25 @@ + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/doc/api/html/search/variables_73.js b/doc/api/html/search/variables_73.js new file mode 100644 index 00000000000..8d5b4aab944 --- /dev/null +++ b/doc/api/html/search/variables_73.js @@ -0,0 +1,32 @@ +var searchData= +[ + ['sample_5fr',['sample_r',['../structstan_1_1gm_1_1statement__grammar.html#a3058435c851fca6533f0a859e06e32f2',1,'stan::gm::statement_grammar']]], + ['samples',['samples',['../structstan_1_1io_1_1stan__csv.html#a5e17346c48ca1e2b9146d2700c6433a8',1,'stan::io::stan_csv']]], + ['sampling',['sampling',['../structstan_1_1io_1_1stan__csv__timing.html#ac519541a29874dcefa08af1e0584f595',1,'stan::io::stan_csv_timing']]], + ['save_5fwarmup',['save_warmup',['../structstan_1_1io_1_1stan__csv__metadata.html#aeb01b3bd545cb53379cc3d9b4965574a',1,'stan::io::stan_csv_metadata']]], + ['seed',['seed',['../structstan_1_1io_1_1stan__csv__metadata.html#a1c59ab6a12137c935db71dae89472dd4',1,'stan::io::stan_csv_metadata']]], + ['set_5ffun_5ftype2_5ff',['set_fun_type2_f',['../namespacestan_1_1gm.html#a071fa25593504eb98cd7d9da2baab92d',1,'stan::gm']]], + ['set_5ffun_5ftype_5ff',['set_fun_type_f',['../namespacestan_1_1gm.html#a7e620438867564889b2124e8877a6707',1,'stan::gm']]], + ['set_5ffun_5ftype_5fnamed_5ff',['set_fun_type_named_f',['../namespacestan_1_1gm.html#a7c2b54c2a8ea3233bb4e6b6984a5e2c7',1,'stan::gm']]], + ['set_5fvar_5ftype_5ff',['set_var_type_f',['../namespacestan_1_1gm.html#a4e0139a9c5cc5c02221aabee7b75d5aa',1,'stan::gm']]], + ['sign',['sign',['../structstan_1_1mcmc_1_1nuts__util.html#a1a1ff33b599f6046e6137d127a641b5e',1,'stan::mcmc::nuts_util']]], + ['simplex_5fdecl_5fr',['simplex_decl_r',['../structstan_1_1gm_1_1var__decls__grammar.html#a3fb24659ce9b09c18ac09acc4079510f',1,'stan::gm::var_decls_grammar']]], + ['size_5f',['size_',['../classstan_1_1agrad_1_1op__matrix__vari.html#acb63d498d5e4c7008bc2fd5407bf37cf',1,'stan::agrad::op_matrix_vari::size_()'],['../classstan_1_1agrad_1_1op__vector__vari.html#a71e9b994ff0ea34aa6ea109365e9ca27',1,'stan::agrad::op_vector_vari::size_()'],['../classstan_1_1agrad_1_1stored__gradient__vari.html#ae0a8a41b1a8e68d294cecb3ef46692e9',1,'stan::agrad::stored_gradient_vari::size_()'],['../agrad_2rev_2matrix_2dot__self_8hpp.html#a5f31775800bbb46b35b5791def1f3acc',1,'size_(): dot_self.hpp'],['../agrad_2rev_2matrix_2log__softmax_8hpp.html#a50218915641ec8f39877c2565e95a604',1,'size_(): log_softmax.hpp'],['../agrad_2rev_2matrix_2softmax_8hpp.html#a50218915641ec8f39877c2565e95a604',1,'size_(): softmax.hpp']]], + ['softmax_5falpha_5f',['softmax_alpha_',['../agrad_2rev_2matrix_2log__softmax_8hpp.html#a1e7fc23c4da87820ad49b66444825c34',1,'softmax_alpha_(): log_softmax.hpp'],['../agrad_2rev_2matrix_2softmax_8hpp.html#a1e7fc23c4da87820ad49b66444825c34',1,'softmax_alpha_(): softmax.hpp']]], + ['sqrt_5f2',['SQRT_2',['../namespacestan_1_1math.html#a491d6e40aaa2a3e205ea6708dc3c75dd',1,'stan::math']]], + ['stage_5f',['stage_',['../structstan_1_1gm_1_1var__size__validating__visgen.html#ae878013c66844f15680c8748629f51b7',1,'stan::gm::var_size_validating_visgen']]], + ['stan_5fversion_5fmajor',['stan_version_major',['../structstan_1_1io_1_1stan__csv__metadata.html#a8f6f94ea53c82fcb9269a649066af0dc',1,'stan::io::stan_csv_metadata']]], + ['stan_5fversion_5fminor',['stan_version_minor',['../structstan_1_1io_1_1stan__csv__metadata.html#a259cf0626d25c32dc03b82fc4cd1f08a',1,'stan::io::stan_csv_metadata']]], + ['stan_5fversion_5fpatch',['stan_version_patch',['../structstan_1_1io_1_1stan__csv__metadata.html#a05c438d9a575f0d8b5326cde887c51ad',1,'stan::io::stan_csv_metadata']]], + ['statement_5f',['statement_',['../structstan_1_1gm_1_1statement.html#a42dac92fef21d4502828e531cc6ea4b9',1,'stan::gm::statement::statement_()'],['../structstan_1_1gm_1_1for__statement.html#a88a12e92114b27b638669beb3a4fa795',1,'stan::gm::for_statement::statement_()'],['../structstan_1_1gm_1_1program.html#a68db9c547c8a9a585860305efa83ee38',1,'stan::gm::program::statement_()']]], + ['statement_5f2_5fg',['statement_2_g',['../structstan_1_1gm_1_1statement__grammar.html#a711cbab281b543290a3efa6012ef39c1',1,'stan::gm::statement_grammar']]], + ['statement_5f2_5fr',['statement_2_r',['../structstan_1_1gm_1_1statement__2__grammar.html#ade56d3d85cad306fb8a918671335bc26',1,'stan::gm::statement_2_grammar']]], + ['statement_5fg',['statement_g',['../structstan_1_1gm_1_1program__grammar.html#adac531fa3a2b1db28c4ae98e90af0a2b',1,'stan::gm::program_grammar::statement_g()'],['../structstan_1_1gm_1_1statement__2__grammar.html#a71b74b870a48887d16af27eb90154492',1,'stan::gm::statement_2_grammar::statement_g()']]], + ['statement_5fr',['statement_r',['../structstan_1_1gm_1_1statement__grammar.html#af25706af04c4ddca423562a701a693a3',1,'stan::gm::statement_grammar']]], + ['statement_5fseq_5fr',['statement_seq_r',['../structstan_1_1gm_1_1statement__grammar.html#a041b22f44ddbc558223b1ffeae95bbb9',1,'stan::gm::statement_grammar']]], + ['statements_5f',['statements_',['../structstan_1_1gm_1_1statements.html#a4de24354bdefdcf2b482150027a4b841',1,'stan::gm::statements']]], + ['step_5fsize',['step_size',['../structstan_1_1io_1_1stan__csv__adaptation.html#ac3cef3b693c2834695a9d7f6e21614f7',1,'stan::io::stan_csv_adaptation']]], + ['subject',['subject',['../structstan_1_1gm_1_1unary__op.html#a2030562bec45cd179d0087e2760e606f',1,'stan::gm::unary_op']]], + ['subtraction',['subtraction',['../namespacestan_1_1gm.html#abd39613c1505c278ec7a2cdcc009bbcb',1,'stan::gm']]], + ['sum_5fprob',['sum_prob',['../structstan_1_1mcmc_1_1nuts__util.html#adf4917a8569f79ecd47cc4ebf443a102',1,'stan::mcmc::nuts_util']]] +]; diff --git a/doc/api/html/search/variables_74.html b/doc/api/html/search/variables_74.html new file mode 100644 index 00000000000..60939222e90 --- /dev/null +++ b/doc/api/html/search/variables_74.html @@ -0,0 +1,25 @@ + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/doc/api/html/search/variables_74.js b/doc/api/html/search/variables_74.js new file mode 100644 index 00000000000..67a0f41f5aa --- /dev/null +++ b/doc/api/html/search/variables_74.js @@ -0,0 +1,20 @@ +var searchData= +[ + ['t_5f',['T_',['../classstan_1_1mcmc_1_1base__static__hmc.html#affe6fd6d44fea89db4bc396cc7f64fa9',1,'stan::mcmc::base_static_hmc']]], + ['term_5fg',['term_g',['../structstan_1_1gm_1_1expression__grammar.html#af321c7c9134b2e63ebdf52245d0358c5',1,'stan::gm::expression_grammar']]], + ['term_5fr',['term_r',['../structstan_1_1gm_1_1term__grammar.html#a2e84fd310e862d276ac7ea3f2b4b0ee3',1,'stan::gm::term_grammar']]], + ['thin',['thin',['../structstan_1_1io_1_1stan__csv__metadata.html#afe9c15f7c7e774a40f83e3a7f24e4279',1,'stan::io::stan_csv_metadata']]], + ['timing',['timing',['../structstan_1_1io_1_1stan__csv.html#aeac96bfaa43c3d99db3972b6407394d7',1,'stan::io::stan_csv']]], + ['tinyness_5fbefore',['tinyness_before',['../structstd_1_1numeric__limits_3_01stan_1_1agrad_1_1fvar_3_01_t_01_4_01_4.html#a96cfd06162e299fdd889f865df8f88ec',1,'std::numeric_limits< stan::agrad::fvar< T > >::tinyness_before()'],['../structstd_1_1numeric__limits_3_01stan_1_1agrad_1_1var_01_4.html#a9dd41511966171dd188b4bb1f65b5911',1,'std::numeric_limits< stan::agrad::var >::tinyness_before()']]], + ['tolf',['tolF',['../structstan_1_1optimization_1_1_b_f_g_s_minimizer_1_1_b_f_g_s_options.html#ab0aa0121e1acca46338f9e25e9650192',1,'stan::optimization::BFGSMinimizer::BFGSOptions']]], + ['tolgrad',['tolGrad',['../structstan_1_1optimization_1_1_b_f_g_s_minimizer_1_1_b_f_g_s_options.html#aa459b03a3adde843c5bb742bc73ac55a',1,'stan::optimization::BFGSMinimizer::BFGSOptions']]], + ['tolx',['tolX',['../structstan_1_1optimization_1_1_b_f_g_s_minimizer_1_1_b_f_g_s_options.html#a0aec50286d347f1a64bf344f36088771',1,'stan::optimization::BFGSMinimizer::BFGSOptions']]], + ['transformed_5fdata_5forigin',['transformed_data_origin',['../namespacestan_1_1gm.html#a8badb02edbcc98351299f2b1a0f23740',1,'stan::gm']]], + ['transformed_5fparameter_5forigin',['transformed_parameter_origin',['../namespacestan_1_1gm.html#acd24a39b6850fab486aa1ab63d45d537',1,'stan::gm']]], + ['transpose_5ff',['transpose_f',['../namespacestan_1_1gm.html#a7f4d79c4779b3252cb5d22ce80c79d98',1,'stan::gm']]], + ['traps',['traps',['../structstd_1_1numeric__limits_3_01stan_1_1agrad_1_1fvar_3_01_t_01_4_01_4.html#a5bc84afce7db610312123c95a0f893f7',1,'std::numeric_limits< stan::agrad::fvar< T > >::traps()'],['../structstd_1_1numeric__limits_3_01stan_1_1agrad_1_1var_01_4.html#a9bf9a84401ae310d4855a7d5b483fa34',1,'std::numeric_limits< stan::agrad::var >::traps()']]], + ['truncation_5f',['truncation_',['../structstan_1_1gm_1_1sample.html#a5e796a4be6bef910fcad25dfbc8ca3b6',1,'stan::gm::sample']]], + ['truncation_5frange_5fr',['truncation_range_r',['../structstan_1_1gm_1_1statement__grammar.html#a1fc065c2e3cd518346178e31b84f713c',1,'stan::gm::statement_grammar']]], + ['two_5fover_5fsqrt_5fpi',['TWO_OVER_SQRT_PI',['../namespacestan_1_1math.html#a935530f53a026ebb80fcd9006059e9c8',1,'stan::math']]], + ['type_5f',['type_',['../structstan_1_1gm_1_1int__literal.html#a72e3ed5537084bf3ff324105cce4b457',1,'stan::gm::int_literal::type_()'],['../structstan_1_1gm_1_1double__literal.html#ae571ef14f106d406302e3fe0ac9bd204',1,'stan::gm::double_literal::type_()'],['../structstan_1_1gm_1_1array__literal.html#a722c9507094a61e528cb017ed6abaac0',1,'stan::gm::array_literal::type_()'],['../structstan_1_1gm_1_1variable.html#a6ff634fb68f6f6f51fe4e014a2d1dae0',1,'stan::gm::variable::type_()'],['../structstan_1_1gm_1_1fun.html#adff7eb341e34851eda4f8c38ce9c001a',1,'stan::gm::fun::type_()'],['../structstan_1_1gm_1_1index__op.html#ada5fa6fc111a5c01cdcb4bfd34cef545',1,'stan::gm::index_op::type_()'],['../structstan_1_1gm_1_1binary__op.html#a4b1a2844ace11d2be56ad75ea416a0dd',1,'stan::gm::binary_op::type_()'],['../structstan_1_1gm_1_1unary__op.html#a4963df25da0d8fd9a8697b6bc3573846',1,'stan::gm::unary_op::type_()']]] +]; diff --git a/doc/api/html/search/variables_75.html b/doc/api/html/search/variables_75.html new file mode 100644 index 00000000000..b9cc25cf223 --- /dev/null +++ b/doc/api/html/search/variables_75.html @@ -0,0 +1,25 @@ + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/doc/api/html/search/variables_75.js b/doc/api/html/search/variables_75.js new file mode 100644 index 00000000000..10097781bb6 --- /dev/null +++ b/doc/api/html/search/variables_75.js @@ -0,0 +1,5 @@ +var searchData= +[ + ['unit_5fvector_5fdecl_5fr',['unit_vector_decl_r',['../structstan_1_1gm_1_1var__decls__grammar.html#ad6400ff89afd46d01c13dd93ef231edd',1,'stan::gm::var_decls_grammar']]], + ['unscope_5flocals_5ff',['unscope_locals_f',['../namespacestan_1_1gm.html#aecac3234ee1a4b8b9b6344c0679cfd8d',1,'stan::gm']]] +]; diff --git a/doc/api/html/search/variables_76.html b/doc/api/html/search/variables_76.html new file mode 100644 index 00000000000..ab1aba9f49e --- /dev/null +++ b/doc/api/html/search/variables_76.html @@ -0,0 +1,25 @@ + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/doc/api/html/search/variables_76.js b/doc/api/html/search/variables_76.js new file mode 100644 index 00000000000..62568d6c3ad --- /dev/null +++ b/doc/api/html/search/variables_76.js @@ -0,0 +1,34 @@ +var searchData= +[ + ['v',['V',['../classstan_1_1mcmc_1_1ps__point.html#a21cea778ac74b5c026a2f23fbae71304',1,'stan::mcmc::ps_point']]], + ['v1_5f',['v1_',['../agrad_2rev_2matrix_2dot__product_8hpp.html#a8c886c0e0b0df10a90267645bac46674',1,'v1_(): dot_product.hpp'],['../_eigen___num_traits_8hpp.html#a26e986ea55e50b52a5f24dc12146b280',1,'v1_(): Eigen_NumTraits.hpp'],['../agrad_2rev_2matrix_2squared__distance_8hpp.html#a83c5c6dc5ed503252611e6e50af3557a',1,'v1_(): squared_distance.hpp']]], + ['v2_5f',['v2_',['../agrad_2rev_2matrix_2dot__product_8hpp.html#a27e3d8b375e8f1fb1cb0078d150879ea',1,'v2_(): dot_product.hpp'],['../_eigen___num_traits_8hpp.html#a07b9904c44113353bf64f61d7c1e5672',1,'v2_(): Eigen_NumTraits.hpp'],['../agrad_2rev_2matrix_2squared__distance_8hpp.html#a2157c9243530cdafcfb1665c9e682ed7',1,'v2_(): squared_distance.hpp']]], + ['v_5f',['v_',['../agrad_2rev_2matrix_2dot__self_8hpp.html#ad96f2a078f01703996f5677e20cc34cd',1,'v_(): dot_self.hpp'],['../agrad_2rev_2matrix_2sum_8hpp.html#ad96f2a078f01703996f5677e20cc34cd',1,'v_(): sum.hpp']]], + ['val_5f',['val_',['../classstan_1_1agrad_1_1vari.html#a03ed9389d9c07f294820e406adfc865e',1,'stan::agrad::vari::val_()'],['../structstan_1_1agrad_1_1fvar.html#a8aa2f2b763eea9bf8928fe5f4dcd0a3d',1,'stan::agrad::fvar::val_()'],['../structstan_1_1gm_1_1int__literal.html#a298151e163dc54d45f2876fe296cde5d',1,'stan::gm::int_literal::val_()'],['../structstan_1_1gm_1_1double__literal.html#a15debd030159098dafaac809c9565c48',1,'stan::gm::double_literal::val_()']]], + ['validate_5fallow_5fsample_5ff',['validate_allow_sample_f',['../namespacestan_1_1gm.html#aa30c31af794258c24cb18df976cf4296',1,'stan::gm']]], + ['validate_5fassignment_5ff',['validate_assignment_f',['../namespacestan_1_1gm.html#a06237cc6105be14cdd2eb0575bef7ae4',1,'stan::gm']]], + ['validate_5fexpr_5ftype2_5ff',['validate_expr_type2_f',['../namespacestan_1_1gm.html#a4a3fe9f1de32042785143d781cdaaae9',1,'stan::gm']]], + ['validate_5fexpr_5ftype_5ff',['validate_expr_type_f',['../namespacestan_1_1gm.html#a32f93691dd2a6209d3f19ac875b17f3e',1,'stan::gm']]], + ['validate_5fint_5fexpr2_5ff',['validate_int_expr2_f',['../namespacestan_1_1gm.html#a46fe00392f8da59e985d5d347198d137',1,'stan::gm']]], + ['validate_5fint_5fexpr3_5ff',['validate_int_expr3_f',['../namespacestan_1_1gm.html#a275f5389777c95f7178c6bc23f1e6441',1,'stan::gm']]], + ['validate_5fsample_5ff',['validate_sample_f',['../namespacestan_1_1gm.html#ac38f7f49db3ee6f8fabb7b317eaa126c',1,'stan::gm']]], + ['var_5falloc_5fstack_5f',['var_alloc_stack_',['../namespacestan_1_1agrad.html#aab83e8df917b0f383dc6c2821fac522a',1,'stan::agrad']]], + ['var_5fdecl_5fr',['var_decl_r',['../structstan_1_1gm_1_1var__decls__grammar.html#a2ec92bd1cdd1d5fca11adfc6d51d9090',1,'stan::gm::var_decls_grammar']]], + ['var_5fdecls_5fg',['var_decls_g',['../structstan_1_1gm_1_1program__grammar.html#a5449b77a88443dc754276cb5e19320ef',1,'stan::gm::program_grammar::var_decls_g()'],['../structstan_1_1gm_1_1statement__grammar.html#aa09ea489cb32def2470106aea74eb2ce',1,'stan::gm::statement_grammar::var_decls_g()']]], + ['var_5fdecls_5fr',['var_decls_r',['../structstan_1_1gm_1_1var__decls__grammar.html#ac22f2373eb5a3a464aeff6f74086ab4f',1,'stan::gm::var_decls_grammar']]], + ['var_5fdims_5f',['var_dims_',['../structstan_1_1gm_1_1assignment.html#a2d2d3c02b849dae3dbf789473eac2ea0',1,'stan::gm::assignment']]], + ['var_5flhs_5fr',['var_lhs_r',['../structstan_1_1gm_1_1statement__grammar.html#aec8e5ec3102aa27c455d4eeb321ba74c',1,'stan::gm::statement_grammar']]], + ['var_5fmap_5f',['var_map_',['../structstan_1_1gm_1_1contains__var.html#abf59ec75e5e6729db7424da7ecce4ea7',1,'stan::gm::contains_var::var_map_()'],['../structstan_1_1gm_1_1contains__nonparam__var.html#adddb447cfb03a1031db491d6ff004d8d',1,'stan::gm::contains_nonparam_var::var_map_()'],['../structstan_1_1gm_1_1expression__grammar.html#a0bf2d69a4ee05a6f7f073087afe40929',1,'stan::gm::expression_grammar::var_map_()'],['../structstan_1_1gm_1_1program__grammar.html#a612c1a5b4a954dd9960d00d9d621a738',1,'stan::gm::program_grammar::var_map_()'],['../structstan_1_1gm_1_1statement__2__grammar.html#a3626cba34b0c81150a12ee6b045fd197',1,'stan::gm::statement_2_grammar::var_map_()'],['../structstan_1_1gm_1_1statement__grammar.html#a3e38af92fc643463ac93d825d5997c7d',1,'stan::gm::statement_grammar::var_map_()'],['../structstan_1_1gm_1_1term__grammar.html#a8a79bec27b23f79504c768be5942c958',1,'stan::gm::term_grammar::var_map_()'],['../structstan_1_1gm_1_1var__decls__grammar.html#a0a5d7aec5bad30ea0164823c04e04faf',1,'stan::gm::var_decls_grammar::var_map_()']]], + ['var_5fnochain_5fstack_5f',['var_nochain_stack_',['../namespacestan_1_1agrad.html#a1da2503303417b341d207feb1bfc9ef1',1,'stan::agrad']]], + ['var_5fresizer_5f',['var_resizer_',['../structstan_1_1gm_1_1dump__member__var__visgen.html#ae6b91a5e31677edd71859d18ad79b24c',1,'stan::gm::dump_member_var_visgen']]], + ['var_5fsize_5fvalidator_5f',['var_size_validator_',['../structstan_1_1gm_1_1dump__member__var__visgen.html#a977c2256249340da5264d61fc42fa37b',1,'stan::gm::dump_member_var_visgen::var_size_validator_()'],['../structstan_1_1gm_1_1generate__init__visgen.html#a81dbd32331a4a957f17f7dfd9a9259d0',1,'stan::gm::generate_init_visgen::var_size_validator_()']]], + ['var_5fstack_5f',['var_stack_',['../agrad__thread__safe_8hpp.html#ae14d7988968e318f7272640e9bd558aa',1,'var_stack_(): agrad_thread_safe.hpp'],['../namespacestan_1_1agrad.html#a02d750bf3c4aca82309533ecb869237b',1,'stan::agrad::var_stack_()']]], + ['var_5ftype_5f',['var_type_',['../structstan_1_1gm_1_1assignment.html#a32c7f69945a9335aad93f5b6c44b6b34',1,'stan::gm::assignment']]], + ['variable_5f',['variable_',['../structstan_1_1gm_1_1for__statement.html#acc156ec777cc5ca5a60e65506a94c60f',1,'stan::gm::for_statement']]], + ['variable_5fr',['variable_r',['../structstan_1_1gm_1_1term__grammar.html#ab0c2f2623b8f78f859c358cdf3e161a6',1,'stan::gm::term_grammar']]], + ['varis_5f',['varis_',['../classstan_1_1agrad_1_1precomputed__gradients__vari.html#a0f7895b9edc0610a09990e4179c2904e',1,'stan::agrad::precomputed_gradients_vari']]], + ['vector_5fdecl_5fr',['vector_decl_r',['../structstan_1_1gm_1_1var__decls__grammar.html#abc85787fdc330600e8ed8418a29fb6ac',1,'stan::gm::var_decls_grammar']]], + ['vector_5ft',['VECTOR_T',['../namespacestan_1_1gm.html#a994b5bf5385c2c96190f9aaf19e0c711',1,'stan::gm']]], + ['vi_5f',['vi_',['../classstan_1_1agrad_1_1var.html#af62c13dcd2bfab818579f6715fbda6af',1,'stan::agrad::var']]], + ['vis_5f',['vis_',['../classstan_1_1agrad_1_1op__matrix__vari.html#ac0dbd0805a80054b5cd0335ef8a6b144',1,'stan::agrad::op_matrix_vari::vis_()'],['../classstan_1_1agrad_1_1op__vector__vari.html#a63beb3a08614befd8eca4ed45e4ff438',1,'stan::agrad::op_vector_vari::vis_()']]] +]; diff --git a/doc/api/html/search/variables_77.html b/doc/api/html/search/variables_77.html new file mode 100644 index 00000000000..25c3e3a7aa4 --- /dev/null +++ b/doc/api/html/search/variables_77.html @@ -0,0 +1,25 @@ + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/doc/api/html/search/variables_77.js b/doc/api/html/search/variables_77.js new file mode 100644 index 00000000000..f1fb4ee0ddf --- /dev/null +++ b/doc/api/html/search/variables_77.js @@ -0,0 +1,6 @@ +var searchData= +[ + ['warmup',['warmup',['../structstan_1_1io_1_1stan__csv__timing.html#a26e38502db9dfbb27cf5747c8e96d229',1,'stan::io::stan_csv_timing']]], + ['while_5fstatement_5fr',['while_statement_r',['../structstan_1_1gm_1_1statement__grammar.html#ab8208e8ab3c4e29d3a153da6566a076d',1,'stan::gm::statement_grammar']]], + ['whitespace',['whitespace',['../structstan_1_1gm_1_1whitespace__grammar.html#a5b8a5755ab01dd301f1a32e1ef3dbf22',1,'stan::gm::whitespace_grammar']]] +]; diff --git a/doc/api/html/search/variables_78.html b/doc/api/html/search/variables_78.html new file mode 100644 index 00000000000..4a1263d84c4 --- /dev/null +++ b/doc/api/html/search/variables_78.html @@ -0,0 +1,25 @@ + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/doc/api/html/search/variables_78.js b/doc/api/html/search/variables_78.js new file mode 100644 index 00000000000..4863289b85f --- /dev/null +++ b/doc/api/html/search/variables_78.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['x_5f',['x_',['../structstan_1_1math_1_1array__builder.html#aeeffff75de3c356257e419fc8591afcb',1,'stan::math::array_builder']]] +]; diff --git a/doc/api/html/segment_8hpp.html b/doc/api/html/segment_8hpp.html new file mode 100644 index 00000000000..3b2046cebe0 --- /dev/null +++ b/doc/api/html/segment_8hpp.html @@ -0,0 +1,141 @@ + + + + + +Stan: src/stan/math/matrix/segment.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
segment.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::math
 Matrices and templated mathematical functions.
 
+ + + + + + + + + + + +

+Functions

template<typename T >
Eigen::Matrix< T,
+Eigen::Dynamic, 1 > 
stan::math::segment (const Eigen::Matrix< T, Eigen::Dynamic, 1 > &v, size_t i, size_t n)
 Return the specified number of elements as a vector starting from the specified element - 1 of the specified vector.
 
template<typename T >
Eigen::Matrix< T,
+1, Eigen::Dynamic > 
stan::math::segment (const Eigen::Matrix< T, 1, Eigen::Dynamic > &v, size_t i, size_t n)
 
template<typename T >
std::vector< T > stan::math::segment (const std::vector< T > &sv, size_t i, size_t n)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/segment_8hpp_source.html b/doc/api/html/segment_8hpp_source.html new file mode 100644 index 00000000000..b37a26d1423 --- /dev/null +++ b/doc/api/html/segment_8hpp_source.html @@ -0,0 +1,158 @@ + + + + + +Stan: src/stan/math/matrix/segment.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
segment.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MATH__MATRIX__SEGMENT_HPP__
+
2 #define __STAN__MATH__MATRIX__SEGMENT_HPP__
+
3 
+ + + + +
8 
+
9 
+
10 namespace stan {
+
11  namespace math {
+
12 
+
17  template <typename T>
+
18  inline
+
19  Eigen::Matrix<T,Eigen::Dynamic,1>
+
20  segment(const Eigen::Matrix<T,Eigen::Dynamic,1>& v,
+
21  size_t i, size_t n) {
+
22  validate_row_index(v, i, "segment");
+
23  if (n != 0) validate_row_index(v, i + n - 1, "segment");
+
24  return v.segment(i-1,n);
+
25  }
+
26 
+
27  template <typename T>
+
28  inline
+
29  Eigen::Matrix<T,1,Eigen::Dynamic>
+
30  segment(const Eigen::Matrix<T,1,Eigen::Dynamic>& v,
+
31  size_t i, size_t n) {
+
32  validate_column_index(v, i, "segment");
+
33  if (n != 0) validate_column_index(v, i + n - 1, "segment");
+
34  return v.segment(i-1,n);
+
35  }
+
36 
+
37 
+
38  template <typename T>
+
39  std::vector<T>
+
40  segment(const std::vector<T>& sv,
+
41  size_t i, size_t n) {
+
42  validate_std_vector_index(sv, i, "segment");
+
43  if (n != 0) validate_std_vector_index(sv, i + n - 1, "segment");
+
44  std::vector<T> s;
+
45  for (size_t j = 0; j < n; ++j)
+
46  s.push_back(sv[i + j - 1]);
+
47  return s;
+
48  }
+
49 
+
50 
+
51 
+
52  }
+
53 }
+
54 
+
55 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/seq__view_8hpp.html b/doc/api/html/seq__view_8hpp.html new file mode 100644 index 00000000000..2190a9fc41f --- /dev/null +++ b/doc/api/html/seq__view_8hpp.html @@ -0,0 +1,155 @@ + + + + + +Stan: src/stan/math/seq_view.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
seq_view.hpp File Reference
+
+ +
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/seq__view_8hpp_source.html b/doc/api/html/seq__view_8hpp_source.html new file mode 100644 index 00000000000..fbbb5937cc9 --- /dev/null +++ b/doc/api/html/seq__view_8hpp_source.html @@ -0,0 +1,302 @@ + + + + + +Stan: src/stan/math/seq_view.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
seq_view.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MATH__SEQ_VIEW_HPP__
+
2 #define __STAN__MATH__SEQ_VIEW_HPP__
+
3 
+
4 #include <vector>
+
5 
+ +
7 
+
8 namespace stan {
+
9 
+
10  namespace math {
+
11 
+
12 
+
13  template <typename T>
+
14  struct store_type {
+
15  typedef const T& type;
+
16  };
+
17  template <>
+
18  struct store_type<double> {
+
19  typedef const double type;
+
20  };
+
21  template <>
+
22  struct store_type<int> {
+
23  typedef const int type;
+
24  };
+
25 
+
26 
+
27  template <typename T>
+
28  struct pass_type {
+
29  typedef const T& type;
+
30  };
+
31  template <>
+
32  struct pass_type<double> {
+
33  typedef double type;
+
34  };
+
35  template <>
+
36  struct pass_type<int> {
+
37  typedef int type;
+
38  };
+
39 
+
40 
+
41  // S assignable to T
+
42  template <typename T, typename S>
+
43  class seq_view {
+
44  private:
+
45  typename store_type<S>::type x_;
+
46  public:
+ +
48  : x_(x) {
+
49  }
+
50  inline typename pass_type<T>::type
+
51  operator[](int n) const {
+
52  return x_;
+
53  }
+
54  int size() const {
+
55  return 1;
+
56  }
+
57  };
+
58 
+
59  template <typename T, typename S>
+
60  class seq_view<T, Eigen::Matrix<S,Eigen::Dynamic,1> > {
+
61  private:
+ +
63  public:
+
64  seq_view(typename pass_type<Eigen::Matrix<S,Eigen::Dynamic,1> >::type x)
+
65  : x_(x) {
+
66  }
+
67  inline typename pass_type<T>::type
+
68  operator[](int n) const {
+
69  return x_(n);
+
70  }
+
71  int size() const {
+
72  return x_.size();
+
73  }
+
74  };
+
75 
+
76 
+
77  template <typename T, typename S>
+
78  class seq_view<T, Eigen::Matrix<S,1,Eigen::Dynamic> > {
+
79  private:
+ +
81  public:
+
82  seq_view(typename pass_type<Eigen::Matrix<S,1,Eigen::Dynamic> >::type x)
+
83  : x_(x) {
+
84  }
+
85  inline typename pass_type<T>::type
+
86  operator[](int n) const {
+
87  return x_(n);
+
88  }
+
89  int size() const {
+
90  return x_.size();
+
91  }
+
92  };
+
93 
+
94 
+
95 
+
96  // row-major order of returns to match std::vector
+
97  template <typename T, typename S>
+
98  class seq_view<T, Eigen::Matrix<S,Eigen::Dynamic,Eigen::Dynamic> > {
+
99  private:
+ +
101  public:
+
102  seq_view(typename pass_type<Eigen::Matrix<S,Eigen::Dynamic,Eigen::Dynamic> >::type x)
+
103  : x_(x) {
+
104  }
+
105  inline typename pass_type<T>::type
+
106  operator[](int n) const {
+
107  return x_(n / x_.cols(), n % x_.cols());
+
108  }
+
109  int size() const {
+
110  return x_.size();
+
111  }
+
112  };
+
113 
+
114  // question is how expensive the ctor is
+
115  template <typename T, typename S>
+
116  class seq_view<T, std::vector<S> > {
+
117  private:
+
118  typename store_type<std::vector<S> >::type x_;
+
119  const size_t elt_size_;
+
120  public:
+
121  seq_view(typename pass_type<std::vector<S> >::type x)
+
122  : x_(x),
+
123  elt_size_(x_.size() == 0 ? 0 : seq_view<T,S>(x_[0]).size()) {
+
124  }
+
125  inline typename pass_type<T>::type
+
126  operator[](int n) const {
+
127  return seq_view<T,S>(x_[n / elt_size_])[n % elt_size_];
+
128  }
+
129  int size() const {
+
130  return x_.size() * elt_size_;
+
131  }
+
132  };
+
133 
+
134  // BELOW HERE JUST FOR EFFICIENCY
+
135 
+
136  template <typename T>
+
137  class seq_view<T, std::vector<T> > {
+
138  private:
+
139  typename store_type<std::vector<T> >::type x_;
+
140  public:
+
141  seq_view(typename pass_type<std::vector<T> >::type x)
+
142  : x_(x) {
+
143  }
+
144  inline typename pass_type<T>::type
+
145  operator[](int n) const {
+
146  return x_[n];
+
147  }
+
148  int size() const {
+
149  return x_.size();
+
150  }
+
151  };
+
152 
+
153  // if vector of S with S assignable to T, also works
+
154  // use enable_if? (and disable_if for the general case)
+
155  template <typename T>
+
156  class seq_view<T, std::vector<std::vector<T> > > {
+
157  private:
+
158  typename store_type<std::vector<std::vector<T> > >::type x_;
+
159  const size_t cols_;
+
160  public:
+
161  seq_view(typename pass_type<std::vector<std::vector<T> > >::type x)
+
162  : x_(x),
+
163  cols_(x_.size() == 0 ? 0 : x_[0].size()) { }
+
164  inline typename pass_type<T>::type
+
165  operator[](int n) const {
+
166  return x_[n / cols_][n % cols_];
+
167  }
+
168  int size() const {
+
169  return x_.size() * cols_;
+
170  }
+
171  };
+
172 
+
173  template <>
+
174  class seq_view<double, std::vector<int> > {
+
175  private:
+
176  store_type<std::vector<int> >::type x_;
+
177  public:
+
178  seq_view(pass_type<std::vector<int> >::type x)
+
179  : x_(x) {
+
180  }
+
181  inline pass_type<double>::type operator[](int n) const {
+
182  return x_[n];
+
183  }
+
184  int size() const {
+
185  return x_.size();
+
186  }
+
187  };
+
188 
+
189 
+
190 
+
191 
+
192  }
+
193 }
+
194 
+
195 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/singleton__argument_8hpp.html b/doc/api/html/singleton__argument_8hpp.html new file mode 100644 index 00000000000..bec1d0a0510 --- /dev/null +++ b/doc/api/html/singleton__argument_8hpp.html @@ -0,0 +1,159 @@ + + + + + +Stan: src/stan/gm/arguments/singleton_argument.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
singleton_argument.hpp File Reference
+
+
+
#include <iostream>
+#include <boost/lexical_cast.hpp>
+#include <stan/gm/arguments/valued_argument.hpp>
+
+

Go to the source code of this file.

+ + + + + + + + + + + + + + + + +

+Classes

struct  stan::gm::type_name< T >
 
struct  stan::gm::type_name< int >
 
struct  stan::gm::type_name< unsigned int >
 
struct  stan::gm::type_name< double >
 
struct  stan::gm::type_name< bool >
 
struct  stan::gm::type_name< std::string >
 
class  stan::gm::singleton_argument< T >
 
+ + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::gm
 Directed graphical model compiler.
 
+ + + + + + + + + + + +

+Typedefs

typedef singleton_argument
+< double > 
stan::gm::real_argument
 
typedef singleton_argument< int > stan::gm::int_argument
 
typedef singleton_argument
+< unsigned int > 
stan::gm::u_int_argument
 
typedef singleton_argument< bool > stan::gm::bool_argument
 
typedef singleton_argument
+< std::string > 
stan::gm::string_argument
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/singleton__argument_8hpp_source.html b/doc/api/html/singleton__argument_8hpp_source.html new file mode 100644 index 00000000000..d616f416ea8 --- /dev/null +++ b/doc/api/html/singleton__argument_8hpp_source.html @@ -0,0 +1,281 @@ + + + + + +Stan: src/stan/gm/arguments/singleton_argument.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
singleton_argument.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__GM__ARGUMENTS__SINGLETON__ARGUMENT__BETA__
+
2 #define __STAN__GM__ARGUMENTS__SINGLETON__ARGUMENT__BETA__
+
3 
+
4 #include <iostream>
+
5 #include <boost/lexical_cast.hpp>
+ +
7 
+
8 namespace stan {
+
9 
+
10  namespace gm {
+
11 
+
12  template <typename T>
+
13  struct type_name {
+
14  static std::string name() { return typeid(T).name(); }
+
15  };
+
16 
+
17  // Specialize to something more readable
+
18  template <>
+
19  struct type_name<int> {
+
20  static std::string name() { return "int"; }
+
21  };
+
22 
+
23  template <>
+
24  struct type_name<unsigned int> {
+
25  static std::string name() { return "unsigned int"; }
+
26  };
+
27 
+
28  template <>
+
29  struct type_name<double> {
+
30  static std::string name() { return "double"; }
+
31  };
+
32 
+
33  template <>
+
34  struct type_name<bool> {
+
35  static std::string name() { return "boolean"; }
+
36  };
+
37 
+
38  template <>
+
39  struct type_name<std::string> {
+
40  static std::string name() { return "string"; }
+
41  };
+
42 
+
43  template<typename T>
+ +
45 
+
46  public:
+
47 
+ +
49  _constrained = false;
+
50  _name = "";
+ +
52  }
+
53 
+
54  singleton_argument(const std::string name): _validity("All") {
+
55  _name = name;
+
56  }
+
57 
+
58 
+
59  bool parse_args(std::vector<std::string>& args, std::ostream* out,
+
60  std::ostream* err, bool& help_flag) {
+
61  if (args.size() == 0)
+
62  return true;
+
63 
+
64  if ( (args.back() == "help") || (args.back() == "help-all") ) {
+
65  print_help(out, 0);
+
66  help_flag |= true;
+
67  args.clear();
+
68  return true;
+
69  }
+
70 
+
71  std::string name;
+
72  std::string value;
+
73  split_arg(args.back(), name, value);
+
74 
+
75  if (_name == name) {
+
76 
+
77  args.pop_back();
+
78 
+
79  T proposed_value = boost::lexical_cast<T>(value);
+
80 
+
81  if (!set_value(proposed_value)) {
+
82 
+
83  if (err) {
+
84  *err << proposed_value << " is not a valid value for "
+
85  << "\"" << _name << "\"" << std::endl;
+
86  *err << std::string(indent_width, ' ')
+
87  << "Valid values:" << print_valid() << std::endl;
+
88  }
+
89 
+
90  args.clear();
+
91  return false;
+
92  }
+
93 
+
94  }
+
95  return true;
+
96  }
+
97 
+
98  virtual void probe_args(argument* base_arg, std::stringstream& s) {
+
99 
+
100  s << "good" << std::endl;
+ +
102  base_arg->print(&s, 0, "");
+
103  s << std::endl;
+
104 
+
105  if (_constrained) {
+
106  s << "bad" << std::endl;
+
107  _value = _bad_value;
+
108  base_arg->print(&s, 0, "");
+
109  s << std::endl;
+
110  }
+
111 
+ +
113 
+
114  }
+
115 
+
116  void find_arg(std::string name,
+
117  std::string prefix,
+
118  std::vector<std::string>& valid_paths) {
+
119  if (name == _name) {
+
120  valid_paths.push_back(prefix + _name + "=<" + _value_type + ">");
+
121  }
+
122  }
+
123 
+
124  T value() { return _value; }
+
125 
+
126  bool set_value(const T& value) {
+
127 
+
128  if (is_valid(value)) {
+
129  _value = value;
+
130  return true;
+
131  }
+
132 
+
133  return false;
+
134  }
+
135 
+
136  std::string print_value() {
+
137  return boost::lexical_cast<std::string>(_value);
+
138  }
+
139 
+
140  std::string print_valid() {
+
141  return " " + _validity;
+
142  }
+
143 
+
144  bool is_default() {
+
145  return _value == _default_value;
+
146  }
+
147 
+
148 
+
149  protected:
+
150 
+
151  std::string _validity;
+
152  virtual bool is_valid(T value) { return true; }
+
153 
+ + +
156 
+ +
158 
+ + +
161 
+
162  };
+
163 
+ + + + + +
169 
+
170  } // gm
+
171 
+
172 } // stan
+
173 
+
174 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/singular__values_8hpp.html b/doc/api/html/singular__values_8hpp.html new file mode 100644 index 00000000000..c8e2139b48f --- /dev/null +++ b/doc/api/html/singular__values_8hpp.html @@ -0,0 +1,131 @@ + + + + + +Stan: src/stan/math/matrix/singular_values.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
singular_values.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::math
 Matrices and templated mathematical functions.
 
+ + + + + +

+Functions

template<typename T >
Eigen::Matrix< T,
+Eigen::Dynamic, 1 > 
stan::math::singular_values (const Eigen::Matrix< T, Eigen::Dynamic, Eigen::Dynamic > &m)
 Return the vector of the singular values of the specified matrix in decreasing order of magnitude.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/singular__values_8hpp_source.html b/doc/api/html/singular__values_8hpp_source.html new file mode 100644 index 00000000000..37e167bb6e9 --- /dev/null +++ b/doc/api/html/singular__values_8hpp_source.html @@ -0,0 +1,125 @@ + + + + + +Stan: src/stan/math/matrix/singular_values.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
singular_values.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MATH__MATRIX__SINGULAR_VALUES_HPP__
+
2 #define __STAN__MATH__MATRIX__SINGULAR_VALUES_HPP__
+
3 
+ +
5 
+
6 namespace stan {
+
7  namespace math {
+
8 
+
17  template <typename T>
+
18  Eigen::Matrix<T,Eigen::Dynamic,1>
+
19  singular_values(const Eigen::Matrix<T,Eigen::Dynamic,Eigen::Dynamic>& m) {
+
20  return Eigen::JacobiSVD<Eigen::Matrix<T,Eigen::Dynamic,Eigen::Dynamic> >(m)
+
21  .singularValues();
+
22  }
+
23 
+
24  }
+
25 }
+
26 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/size_8hpp.html b/doc/api/html/size_8hpp.html new file mode 100644 index 00000000000..e94d0b41fab --- /dev/null +++ b/doc/api/html/size_8hpp.html @@ -0,0 +1,129 @@ + + + + + +Stan: src/stan/math/matrix/size.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
size.hpp File Reference
+
+
+
#include <vector>
+
+

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::math
 Matrices and templated mathematical functions.
 
+ + + + +

+Functions

template<typename T >
int stan::math::size (const std::vector< T > &x)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/size_8hpp_source.html b/doc/api/html/size_8hpp_source.html new file mode 100644 index 00000000000..f9eb1ce231c --- /dev/null +++ b/doc/api/html/size_8hpp_source.html @@ -0,0 +1,124 @@ + + + + + +Stan: src/stan/math/matrix/size.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
size.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MATH__MATRIX__SIZE_HPP__
+
2 #define __STAN__MATH__MATRIX__SIZE_HPP__
+
3 
+
4 #include <vector>
+
5 
+
6 namespace stan {
+
7  namespace math {
+
8 
+
9  template <typename T>
+
10  inline int
+
11  size(const std::vector<T>& x) {
+
12  return x.size();
+
13  }
+
14 
+
15  }
+
16 }
+
17 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/skew__normal_8hpp.html b/doc/api/html/skew__normal_8hpp.html new file mode 100644 index 00000000000..f4cc1262efb --- /dev/null +++ b/doc/api/html/skew__normal_8hpp.html @@ -0,0 +1,158 @@ + + + + + +Stan: src/stan/prob/distributions/univariate/continuous/skew_normal.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
skew_normal.hpp File Reference
+
+
+
#include <boost/random/variate_generator.hpp>
+#include <boost/math/distributions.hpp>
+#include <stan/prob/distributions/univariate/continuous/uniform.hpp>
+#include <stan/agrad/partials_vari.hpp>
+#include <stan/math/error_handling.hpp>
+#include <stan/math/functions/owens_t.hpp>
+#include <stan/meta/traits.hpp>
+#include <stan/prob/constants.hpp>
+#include <stan/prob/traits.hpp>
+#include <stan/math/functions/value_of.hpp>
+
+

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::prob
 Templated probability distributions.
 
+ + + + + + + + + + + + + + + + + + + +

+Functions

template<bool propto, typename T_y , typename T_loc , typename T_scale , typename T_shape >
return_type< T_y, T_loc,
+T_scale, T_shape >::type 
stan::prob::skew_normal_log (const T_y &y, const T_loc &mu, const T_scale &sigma, const T_shape &alpha)
 
template<typename T_y , typename T_loc , typename T_scale , typename T_shape >
return_type< T_y, T_loc,
+T_scale, T_shape >::type 
stan::prob::skew_normal_log (const T_y &y, const T_loc &mu, const T_scale &sigma, const T_shape &alpha)
 
template<typename T_y , typename T_loc , typename T_scale , typename T_shape >
return_type< T_y, T_loc,
+T_scale, T_shape >::type 
stan::prob::skew_normal_cdf (const T_y &y, const T_loc &mu, const T_scale &sigma, const T_shape &alpha)
 
template<typename T_y , typename T_loc , typename T_scale , typename T_shape >
return_type< T_y, T_loc,
+T_scale, T_shape >::type 
stan::prob::skew_normal_cdf_log (const T_y &y, const T_loc &mu, const T_scale &sigma, const T_shape &alpha)
 
template<typename T_y , typename T_loc , typename T_scale , typename T_shape >
return_type< T_y, T_loc,
+T_scale, T_shape >::type 
stan::prob::skew_normal_ccdf_log (const T_y &y, const T_loc &mu, const T_scale &sigma, const T_shape &alpha)
 
template<class RNG >
double stan::prob::skew_normal_rng (const double mu, const double sigma, const double alpha, RNG &rng)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/skew__normal_8hpp_source.html b/doc/api/html/skew__normal_8hpp_source.html new file mode 100644 index 00000000000..a10974475b5 --- /dev/null +++ b/doc/api/html/skew__normal_8hpp_source.html @@ -0,0 +1,562 @@ + + + + + +Stan: src/stan/prob/distributions/univariate/continuous/skew_normal.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
skew_normal.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__PROB__DISTRIBUTIONS__UNIVARIATE__CONTINUOUS__SKEW__NORMAL__HPP__
+
2 #define __STAN__PROB__DISTRIBUTIONS__UNIVARIATE__CONTINUOUS__SKEW__NORMAL__HPP__
+
3 
+
4 #include <boost/random/variate_generator.hpp>
+
5 #include <boost/math/distributions.hpp>
+ +
7 
+ + + +
11 #include <stan/meta/traits.hpp>
+
12 #include <stan/prob/constants.hpp>
+
13 #include <stan/prob/traits.hpp>
+ +
15 
+
16 namespace stan {
+
17 
+
18  namespace prob {
+
19 
+
20  template <bool propto,
+
21  typename T_y, typename T_loc, typename T_scale, typename T_shape>
+
22  typename return_type<T_y,T_loc,T_scale,T_shape>::type
+
23  skew_normal_log(const T_y& y, const T_loc& mu, const T_scale& sigma,
+
24  const T_shape& alpha) {
+
25  static const char* function = "stan::prob::skew_normal_log(%1%)";
+
26 
+
27  using std::log;
+ + + + + + + +
35 
+
36  // check if any vectors are zero length
+
37  if (!(stan::length(y)
+
38  && stan::length(mu)
+
39  && stan::length(sigma)
+
40  && stan::length(alpha)))
+
41  return 0.0;
+
42 
+
43  // set up return value accumulator
+
44  double logp(0.0);
+
45 
+
46  // validate args (here done over var, which should be OK)
+
47  if (!check_not_nan(function, y, "Random variable", &logp))
+
48  return logp;
+
49  if (!check_finite(function, mu, "Location parameter",
+
50  &logp))
+
51  return logp;
+
52  if (!check_finite(function, alpha, "Shape parameter",
+
53  &logp))
+
54  return logp;
+
55  if (!check_positive(function, sigma, "Scale parameter",
+
56  &logp))
+
57  return logp;
+
58  if (!(check_consistent_sizes(function,
+
59  y,mu,sigma,alpha,
+
60  "Random variable","Location parameter",
+
61  "Scale parameter", "Shape paramter",
+
62  &logp)))
+
63  return logp;
+
64 
+
65  // check if no variables are involved and prop-to
+ +
67  return 0.0;
+
68 
+
69  // set up template expressions wrapping scalars into vector views
+ +
71  operands_and_partials(y, mu, sigma, alpha);
+
72 
+
73  VectorView<const T_y> y_vec(y);
+
74  VectorView<const T_loc> mu_vec(mu);
+
75  VectorView<const T_scale> sigma_vec(sigma);
+
76  VectorView<const T_shape> alpha_vec(alpha);
+
77  size_t N = max_size(y, mu, sigma, alpha);
+
78 
+ + +
81  is_vector<T_scale>::value> log_sigma(length(sigma));
+
82  for (size_t i = 0; i < length(sigma); i++) {
+
83  inv_sigma[i] = 1.0 / value_of(sigma_vec[i]);
+ +
85  log_sigma[i] = log(value_of(sigma_vec[i]));
+
86  }
+
87 
+
88  for (size_t n = 0; n < N; n++) {
+
89  // pull out values of arguments
+
90  const double y_dbl = value_of(y_vec[n]);
+
91  const double mu_dbl = value_of(mu_vec[n]);
+
92  const double sigma_dbl = value_of(sigma_vec[n]);
+
93  const double alpha_dbl = value_of(alpha_vec[n]);
+
94 
+
95  // reusable subexpression values
+
96  const double y_minus_mu_over_sigma
+
97  = (y_dbl - mu_dbl) * inv_sigma[n];
+
98  const double pi_dbl = boost::math::constants::pi<double>();
+
99 
+
100  // log probability
+ +
102  logp -= 0.5 * log(2.0 * pi_dbl);
+ +
104  logp -= log(sigma_dbl);
+ +
106  logp -= y_minus_mu_over_sigma * y_minus_mu_over_sigma / 2.0;
+ +
108  logp += log(boost::math::erfc(-alpha_dbl * y_minus_mu_over_sigma
+
109  / std::sqrt(2.0)));
+
110 
+
111  // gradients
+
112  double deriv_logerf
+
113  = 2.0 / std::sqrt(pi_dbl)
+
114  * exp(-alpha_dbl * y_minus_mu_over_sigma / std::sqrt(2.0)
+
115  * alpha_dbl * y_minus_mu_over_sigma / std::sqrt(2.0))
+
116  / (1 + boost::math::erf(alpha_dbl * y_minus_mu_over_sigma
+
117  / std::sqrt(2.0)));
+ +
119  operands_and_partials.d_x1[n]
+
120  += -y_minus_mu_over_sigma / sigma_dbl
+
121  + deriv_logerf * alpha_dbl / (sigma_dbl * std::sqrt(2.0)) ;
+ +
123  operands_and_partials.d_x2[n]
+
124  += y_minus_mu_over_sigma / sigma_dbl
+
125  + deriv_logerf * -alpha_dbl / (sigma_dbl * std::sqrt(2.0));
+ +
127  operands_and_partials.d_x3[n]
+
128  += -1.0 / sigma_dbl
+
129  + y_minus_mu_over_sigma * y_minus_mu_over_sigma / sigma_dbl
+
130  - deriv_logerf * y_minus_mu_over_sigma * alpha_dbl
+
131  / (sigma_dbl * std::sqrt(2.0));
+ +
133  operands_and_partials.d_x4[n]
+
134  += deriv_logerf * y_minus_mu_over_sigma / std::sqrt(2.0);
+
135  }
+
136  return operands_and_partials.to_var(logp);
+
137  }
+
138 
+
139  template <typename T_y, typename T_loc, typename T_scale, typename T_shape>
+
140  inline
+ +
142  skew_normal_log(const T_y& y, const T_loc& mu, const T_scale& sigma,
+
143  const T_shape& alpha) {
+
144  return skew_normal_log<false>(y,mu,sigma,alpha);
+
145  }
+
146 
+
147  template <typename T_y, typename T_loc, typename T_scale, typename T_shape>
+ +
149  skew_normal_cdf(const T_y& y, const T_loc& mu, const T_scale& sigma,
+
150  const T_shape& alpha) {
+
151  static const char* function = "stan::prob::skew_normal_cdf(%1%)";
+
152 
+ + + + +
157  using stan::math::owens_t;
+
158  using stan::math::value_of;
+
159 
+
160  double cdf(1.0);
+
161 
+
162  // check if any vectors are zero length
+
163  if (!(stan::length(y)
+
164  && stan::length(mu)
+
165  && stan::length(sigma)
+
166  && stan::length(alpha)))
+
167  return cdf;
+
168 
+
169  if (!check_not_nan(function, y, "Random variable", &cdf))
+
170  return cdf;
+
171  if (!check_finite(function, mu, "Location parameter", &cdf))
+
172  return cdf;
+
173  if (!check_not_nan(function, sigma, "Scale parameter", &cdf))
+
174  return cdf;
+
175  if (!check_positive(function, sigma, "Scale parameter", &cdf))
+
176  return cdf;
+
177  if (!check_finite(function, alpha, "Shape parameter", &cdf))
+
178  return cdf;
+
179  if (!check_not_nan(function, alpha, "Shape parameter", &cdf))
+
180  return cdf;
+
181  if (!(check_consistent_sizes(function,
+
182  y,mu,sigma,alpha,
+
183  "Random variable","Location parameter",
+
184  "Scale parameter","Shape paramter",
+
185  &cdf)))
+
186  return cdf;
+
187 
+ +
189  operands_and_partials(y, mu, sigma, alpha);
+
190 
+
191  using stan::math::SQRT_2;
+
192  using stan::math::pi;
+
193 
+
194  VectorView<const T_y> y_vec(y);
+
195  VectorView<const T_loc> mu_vec(mu);
+
196  VectorView<const T_scale> sigma_vec(sigma);
+
197  VectorView<const T_shape> alpha_vec(alpha);
+
198  size_t N = max_size(y, mu, sigma, alpha);
+
199  const double SQRT_TWO_OVER_PI = std::sqrt(2.0 / stan::math::pi());
+
200 
+
201  for (size_t n = 0; n < N; n++) {
+
202  const double y_dbl = value_of(y_vec[n]);
+
203  const double mu_dbl = value_of(mu_vec[n]);
+
204  const double sigma_dbl = value_of(sigma_vec[n]);
+
205  const double alpha_dbl = value_of(alpha_vec[n]);
+
206  const double alpha_dbl_sq = alpha_dbl * alpha_dbl;
+
207  const double diff = (y_dbl - mu_dbl) / sigma_dbl;
+
208  const double diff_sq = diff * diff;
+
209  const double scaled_diff = diff / SQRT_2;
+
210  const double scaled_diff_sq = diff_sq * 0.5;
+
211  const double cdf_ = 0.5 * erfc(-scaled_diff) - 2 * owens_t(diff,
+
212  alpha_dbl);
+
213  //cdf
+
214  cdf *= cdf_;
+
215 
+
216  //gradients
+
217  const double deriv_erfc = SQRT_TWO_OVER_PI * 0.5 * exp(-scaled_diff_sq)
+
218  / sigma_dbl;
+
219  const double deriv_owens = erf(alpha_dbl * scaled_diff)
+
220  * exp(-scaled_diff_sq) / SQRT_TWO_OVER_PI / (-2.0 * pi()) / sigma_dbl;
+
221  const double rep_deriv = (-2.0 * deriv_owens + deriv_erfc) / cdf_;
+
222 
+ +
224  operands_and_partials.d_x1[n] += rep_deriv;
+ +
226  operands_and_partials.d_x2[n] -= rep_deriv;
+ +
228  operands_and_partials.d_x3[n] -= rep_deriv * diff;
+ +
230  operands_and_partials.d_x4[n] += -2.0 * exp(-0.5 * diff_sq * (1.0
+
231  + alpha_dbl_sq)) / ((1 + alpha_dbl_sq) * 2.0 * pi()) / cdf_;
+
232  }
+
233 
+ +
235  for (size_t n = 0; n < stan::length(y); ++n)
+
236  operands_and_partials.d_x1[n] *= cdf;
+ +
238  for (size_t n = 0; n < stan::length(mu); ++n)
+
239  operands_and_partials.d_x2[n] *= cdf;
+ +
241  for (size_t n = 0; n < stan::length(sigma); ++n)
+
242  operands_and_partials.d_x3[n] *= cdf;
+ +
244  for (size_t n = 0; n < stan::length(alpha); ++n)
+
245  operands_and_partials.d_x4[n] *= cdf;
+
246 
+
247  return operands_and_partials.to_var(cdf);
+
248  }
+
249 
+
250  template <typename T_y, typename T_loc, typename T_scale, typename T_shape>
+ +
252  skew_normal_cdf_log(const T_y& y, const T_loc& mu, const T_scale& sigma,
+
253  const T_shape& alpha) {
+
254  static const char* function = "stan::prob::skew_normal_cdf_log(%1%)";
+
255 
+ + + +
259  using stan::math::value_of;
+ +
261  using stan::math::owens_t;
+
262 
+
263  double cdf_log(0.0);
+
264 
+
265  // check if any vectors are zero length
+
266  if (!(stan::length(y)
+
267  && stan::length(mu)
+
268  && stan::length(sigma)
+
269  && stan::length(alpha)))
+
270  return cdf_log;
+
271 
+
272  if (!check_not_nan(function, y, "Random variable", &cdf_log))
+
273  return cdf_log;
+
274  if (!check_finite(function, mu, "Location parameter", &cdf_log))
+
275  return cdf_log;
+
276  if (!check_not_nan(function, sigma, "Scale parameter", &cdf_log))
+
277  return cdf_log;
+
278  if (!check_positive(function, sigma, "Scale parameter", &cdf_log))
+
279  return cdf_log;
+
280  if (!check_finite(function, alpha, "Shape parameter", &cdf_log))
+
281  return cdf_log;
+
282  if (!check_not_nan(function, alpha, "Shape parameter", &cdf_log))
+
283  return cdf_log;
+
284  if (!(check_consistent_sizes(function,
+
285  y,mu,sigma,alpha,
+
286  "Random variable","Location parameter",
+
287  "Scale parameter","Shape paramter",
+
288  &cdf_log)))
+
289  return cdf_log;
+
290 
+ +
292  operands_and_partials(y, mu, sigma, alpha);
+
293 
+
294  using stan::math::SQRT_2;
+
295  using stan::math::pi;
+
296 
+
297  VectorView<const T_y> y_vec(y);
+
298  VectorView<const T_loc> mu_vec(mu);
+
299  VectorView<const T_scale> sigma_vec(sigma);
+
300  VectorView<const T_shape> alpha_vec(alpha);
+
301  size_t N = max_size(y, mu, sigma, alpha);
+
302  const double SQRT_TWO_OVER_PI = std::sqrt(2.0 / stan::math::pi());
+
303 
+
304  for (size_t n = 0; n < N; n++) {
+
305  const double y_dbl = value_of(y_vec[n]);
+
306  const double mu_dbl = value_of(mu_vec[n]);
+
307  const double sigma_dbl = value_of(sigma_vec[n]);
+
308  const double alpha_dbl = value_of(alpha_vec[n]);
+
309  const double alpha_dbl_sq = alpha_dbl * alpha_dbl;
+
310  const double diff = (y_dbl - mu_dbl) / sigma_dbl;
+
311  const double diff_sq = diff * diff;
+
312  const double scaled_diff = diff / SQRT_2;
+
313  const double scaled_diff_sq = diff_sq * 0.5;
+
314  const double cdf_log_ = 0.5 * erfc(-scaled_diff) - 2 * owens_t(diff,
+
315  alpha_dbl);
+
316  //cdf_log
+
317  cdf_log += log(cdf_log_);
+
318 
+
319  //gradients
+
320  const double deriv_erfc = SQRT_TWO_OVER_PI * 0.5 * exp(-scaled_diff_sq)
+
321  / sigma_dbl;
+
322  const double deriv_owens = erf(alpha_dbl * scaled_diff)
+
323  * exp(-scaled_diff_sq) / SQRT_TWO_OVER_PI / (-2.0 * pi()) / sigma_dbl;
+
324  const double rep_deriv = (-2.0 * deriv_owens + deriv_erfc) / cdf_log_;
+
325 
+ +
327  operands_and_partials.d_x1[n] += rep_deriv;
+ +
329  operands_and_partials.d_x2[n] -= rep_deriv;
+ +
331  operands_and_partials.d_x3[n] -= rep_deriv * diff;
+ +
333  operands_and_partials.d_x4[n] += -2.0 * exp(-0.5 * diff_sq * (1.0
+
334  + alpha_dbl_sq)) / ((1 + alpha_dbl_sq) * 2.0 * pi()) / cdf_log_;
+
335  }
+
336 
+
337  return operands_and_partials.to_var(cdf_log);
+
338  }
+
339 
+
340  template <typename T_y, typename T_loc, typename T_scale, typename T_shape>
+ +
342  skew_normal_ccdf_log(const T_y& y, const T_loc& mu, const T_scale& sigma,
+
343  const T_shape& alpha) {
+
344  static const char* function = "stan::prob::skew_normal_ccdf_log(%1%)";
+
345 
+ + + + +
350  using stan::math::owens_t;
+
351  using stan::math::value_of;
+
352 
+
353  double ccdf_log(0.0);
+
354 
+
355  // check if any vectors are zero length
+
356  if (!(stan::length(y)
+
357  && stan::length(mu)
+
358  && stan::length(sigma)
+
359  && stan::length(alpha)))
+
360  return ccdf_log;
+
361 
+
362  if (!check_not_nan(function, y, "Random variable", &ccdf_log))
+
363  return ccdf_log;
+
364  if (!check_finite(function, mu, "Location parameter", &ccdf_log))
+
365  return ccdf_log;
+
366  if (!check_not_nan(function, sigma, "Scale parameter", &ccdf_log))
+
367  return ccdf_log;
+
368  if (!check_positive(function, sigma, "Scale parameter", &ccdf_log))
+
369  return ccdf_log;
+
370  if (!check_finite(function, alpha, "Shape parameter", &ccdf_log))
+
371  return ccdf_log;
+
372  if (!check_not_nan(function, alpha, "Shape parameter", &ccdf_log))
+
373  return ccdf_log;
+
374  if (!(check_consistent_sizes(function,
+
375  y,mu,sigma,alpha,
+
376  "Random variable","Location parameter",
+
377  "Scale parameter","Shape paramter",
+
378  &ccdf_log)))
+
379  return ccdf_log;
+
380 
+ +
382  operands_and_partials(y, mu, sigma, alpha);
+
383 
+
384  using stan::math::SQRT_2;
+
385  using stan::math::pi;
+
386 
+
387  VectorView<const T_y> y_vec(y);
+
388  VectorView<const T_loc> mu_vec(mu);
+
389  VectorView<const T_scale> sigma_vec(sigma);
+
390  VectorView<const T_shape> alpha_vec(alpha);
+
391  size_t N = max_size(y, mu, sigma, alpha);
+
392  const double SQRT_TWO_OVER_PI = std::sqrt(2.0 / stan::math::pi());
+
393 
+
394  for (size_t n = 0; n < N; n++) {
+
395  const double y_dbl = value_of(y_vec[n]);
+
396  const double mu_dbl = value_of(mu_vec[n]);
+
397  const double sigma_dbl = value_of(sigma_vec[n]);
+
398  const double alpha_dbl = value_of(alpha_vec[n]);
+
399  const double alpha_dbl_sq = alpha_dbl * alpha_dbl;
+
400  const double diff = (y_dbl - mu_dbl) / sigma_dbl;
+
401  const double diff_sq = diff * diff;
+
402  const double scaled_diff = diff / SQRT_2;
+
403  const double scaled_diff_sq = diff_sq * 0.5;
+
404  const double ccdf_log_ = 1.0 - 0.5 * erfc(-scaled_diff) + 2 * owens_t(diff,
+
405  alpha_dbl);
+
406  //ccdf_log
+
407  ccdf_log += log(ccdf_log_);
+
408 
+
409  //gradients
+
410  const double deriv_erfc = SQRT_TWO_OVER_PI * 0.5 * exp(-scaled_diff_sq)
+
411  / sigma_dbl;
+
412  const double deriv_owens = erf(alpha_dbl * scaled_diff)
+
413  * exp(-scaled_diff_sq) / SQRT_TWO_OVER_PI / (-2.0 * pi()) / sigma_dbl;
+
414  const double rep_deriv = (-2.0 * deriv_owens + deriv_erfc) / ccdf_log_;
+
415 
+ +
417  operands_and_partials.d_x1[n] -= rep_deriv;
+ +
419  operands_and_partials.d_x2[n] += rep_deriv;
+ +
421  operands_and_partials.d_x3[n] += rep_deriv * diff;
+ +
423  operands_and_partials.d_x4[n] -= -2.0 * exp(-0.5 * diff_sq * (1.0
+
424  + alpha_dbl_sq)) / ((1 + alpha_dbl_sq) * 2.0 * pi()) / ccdf_log_;
+
425  }
+
426 
+
427  return operands_and_partials.to_var(ccdf_log);
+
428  }
+
429 
+
430  template <class RNG>
+
431  inline double
+
432  skew_normal_rng(const double mu,
+
433  const double sigma,
+
434  const double alpha,
+
435  RNG& rng) {
+
436  boost::math::skew_normal_distribution<>dist (mu, sigma, alpha);
+
437 
+
438  static const char* function = "stan::prob::skew_normal_rng(%1%)";
+
439 
+ + +
442 
+
443  if (!check_finite(function, mu, "Location parameter"))
+
444  return 0;
+
445  if (!check_finite(function, alpha, "Shape parameter"))
+
446  return 0;
+
447  if (!check_positive(function, sigma, "Scale parameter"))
+
448  return 0;
+
449 
+
450  return quantile(dist, stan::prob::uniform_rng(0.0,1.0,rng));
+
451  }
+
452  }
+
453 }
+
454 #endif
+
455 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/stack__alloc_8hpp.html b/doc/api/html/stack__alloc_8hpp.html new file mode 100644 index 00000000000..b3be2b2092e --- /dev/null +++ b/doc/api/html/stack__alloc_8hpp.html @@ -0,0 +1,187 @@ + + + + + +Stan: src/stan/memory/stack_alloc.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stack_alloc.hpp File Reference
+
+
+
#include <cstdlib>
+#include <cstddef>
+#include <sstream>
+#include <stdexcept>
+#include <stdint.h>
+#include <vector>
+
+

Go to the source code of this file.

+ + + + + +

+Classes

class  stan::memory::stack_alloc
 An instance of this class provides a memory pool through which blocks of raw memory may be allocated and then collected simultaneously. More...
 
+ + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::memory
 (Expert) Allocate, free, and manage underlying system memory.
 
+ + + + + +

+Macros

#define likely(x)   (x)
 
#define unlikely(x)   (x)
 
+ + + + + +

+Functions

template<typename T >
bool stan::memory::is_aligned (T *ptr, unsigned int bytes_aligned)
 Return true if the specified pointer is aligned on the number of bytes.
 
+

Macro Definition Documentation

+ +
+
+ + + + + + + + +
#define likely( x)   (x)
+
+ +

Definition at line 15 of file stack_alloc.hpp.

+ +
+
+ +
+
+ + + + + + + + +
#define unlikely( x)   (x)
+
+ +

Definition at line 16 of file stack_alloc.hpp.

+ +
+
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/stack__alloc_8hpp_source.html b/doc/api/html/stack__alloc_8hpp_source.html new file mode 100644 index 00000000000..35f8639a0db --- /dev/null +++ b/doc/api/html/stack__alloc_8hpp_source.html @@ -0,0 +1,245 @@ + + + + + +Stan: src/stan/memory/stack_alloc.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stack_alloc.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MEMORY__STACK_ALLOC_HPP__
+
2 #define __STAN__MEMORY__STACK_ALLOC_HPP__
+
3 
+
4 #include <cstdlib>
+
5 #include <cstddef>
+
6 #include <sstream>
+
7 #include <stdexcept>
+
8 #include <stdint.h> // FIXME: replace with cstddef?
+
9 #include <vector>
+
10 
+
11 #ifdef __GNUC__
+
12 #define likely(x) (__builtin_expect((x),1))
+
13 #define unlikely(x) (__builtin_expect((x),0))
+
14 #else
+
15 #define likely(x) (x)
+
16 #define unlikely(x) (x)
+
17 #endif
+
18 
+
19 namespace stan {
+
20 
+
21  namespace memory {
+
22 
+
34  template <typename T>
+
35  bool is_aligned(T* ptr, unsigned int bytes_aligned) {
+
36  return (reinterpret_cast<uintptr_t>(ptr) % bytes_aligned) == 0U;
+
37  }
+
38 
+
39 
+
40  namespace {
+
41  const size_t DEFAULT_INITIAL_NBYTES = 1 << 16; // 64KB
+
42 
+
43 
+
44  // FIXME: enforce alignment
+
45  // big fun to inline, but only called twice
+
46  inline char* eight_byte_aligned_malloc(size_t size) {
+
47  char* ptr = static_cast<char*>(malloc(size));
+
48  if (!ptr) return ptr; // malloc failed to alloc
+
49  if (!is_aligned(ptr,8U)) {
+
50  std::stringstream s;
+
51  s << "invalid alignment to 8 bytes, ptr="
+
52  << reinterpret_cast<uintptr_t>(ptr)
+
53  << std::endl;
+
54  throw std::runtime_error(s.str());
+
55  }
+
56  return ptr;
+
57  }
+
58  }
+
59 
+
79  class stack_alloc {
+
80  private:
+
81  std::vector<char*> blocks_; // storage for blocks, may be bigger than cur_block_
+
82  std::vector<size_t> sizes_; // could store initial & shift for others
+
83  size_t cur_block_; // index into blocks_ for next alloc
+
84  char* cur_block_end_; // ptr to cur_block_ptr_ + sizes_[cur_block_]
+
85  char* next_loc_; // ptr to next available spot in cur block
+
86 
+
95  char* move_to_next_block(size_t len) {
+
96  char* result;
+
97  ++cur_block_;
+
98  // Find the next block (if any) containing at least len bytes.
+
99  while ((cur_block_ < blocks_.size()) && (sizes_[cur_block_] < len))
+
100  ++cur_block_;
+
101  // Allocate a new block if necessary.
+
102  if (unlikely(cur_block_ >= blocks_.size())) {
+
103  // New block should be max(2*size of last block, len) bytes.
+
104  size_t newsize = sizes_.back() * 2;
+
105  if (newsize < len)
+
106  newsize = len;
+
107  blocks_.push_back(eight_byte_aligned_malloc(newsize));
+
108  if (!blocks_.back())
+
109  throw std::bad_alloc();
+
110  sizes_.push_back(newsize);
+
111  }
+
112  result = blocks_[cur_block_];
+
113  // Get the object's state back in order.
+
114  next_loc_ = result + len;
+
115  cur_block_end_ = result + sizes_[cur_block_];
+
116  return result;
+
117  }
+
118 
+
119  public:
+
120 
+
130  stack_alloc(size_t initial_nbytes = DEFAULT_INITIAL_NBYTES) :
+
131  blocks_(1, eight_byte_aligned_malloc(initial_nbytes)),
+
132  sizes_(1,initial_nbytes),
+
133  cur_block_(0),
+
134  cur_block_end_(blocks_[0] + initial_nbytes),
+
135  next_loc_(blocks_[0]) {
+
136  if (!blocks_[0])
+
137  throw std::bad_alloc(); // no msg allowed in bad_alloc ctor
+
138  }
+
139 
+ +
147  // free ALL blocks
+
148  for (size_t i = 0; i < blocks_.size(); ++i)
+
149  if (blocks_[i])
+
150  free(blocks_[i]);
+
151  }
+
152 
+
165  inline void* alloc(size_t len) {
+
166  // Typically, just return and increment the next location.
+
167  char* result = next_loc_;
+
168  next_loc_ += len;
+
169  // Occasionally, we have to switch blocks.
+
170  if (unlikely(next_loc_ >= cur_block_end_))
+
171  result = move_to_next_block(len);
+
172  return (void*)result;
+
173  }
+
174 
+
181  inline void recover_all() {
+
182  cur_block_ = 0;
+
183  next_loc_ = blocks_[0];
+
184  cur_block_end_ = next_loc_ + sizes_[0];
+
185  }
+
186 
+
192  inline void free_all() {
+
193  // frees all BUT the first (index 0) block
+
194  for (size_t i = 1; i < blocks_.size(); ++i)
+
195  if (blocks_[i])
+
196  free(blocks_[i]);
+
197  sizes_.resize(1);
+
198  blocks_.resize(1);
+
199  recover_all();
+
200  }
+
201 
+
212  size_t bytes_allocated() {
+
213  size_t sum = 0;
+
214  for (size_t i = 0; i <= cur_block_; ++i) {
+
215  sum += sizes_[i];
+
216  }
+
217  return sum;
+
218  }
+
219 
+
220  };
+
221 
+
222  }
+
223 }
+
224 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/stan_8dox.html b/doc/api/html/stan_8dox.html new file mode 100644 index 00000000000..d5cc30507c8 --- /dev/null +++ b/doc/api/html/stan_8dox.html @@ -0,0 +1,142 @@ + + + + + +Stan: src/doxygen/stan.dox File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ +
+
+ +
+
src/doxygen/stan.dox File Reference
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
namespace  stan::gm
 Directed graphical model compiler.
 
namespace  stan::io
 Input/output utilities.
 
namespace  stan::math
 Matrices and templated mathematical functions.
 
namespace  stan::math::policies
 Extending boost functionality.
 
namespace  stan::math::policies::detail
 Reimplementing boost::math::policies::detail::raise_domain_error.
 
namespace  stan::mcmc
 Markov chain Monte Carlo samplers.
 
namespace  stan::memory
 (Expert) Allocate, free, and manage underlying system memory.
 
namespace  stan::model
 For compiling models.
 
namespace  stan::prob
 Templated probability distributions.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/stan__csv__reader_8hpp.html b/doc/api/html/stan__csv__reader_8hpp.html new file mode 100644 index 00000000000..84c021642d4 --- /dev/null +++ b/doc/api/html/stan__csv__reader_8hpp.html @@ -0,0 +1,143 @@ + + + + + +Stan: src/stan/io/stan_csv_reader.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan_csv_reader.hpp File Reference
+
+
+
#include <istream>
+#include <iostream>
+#include <sstream>
+#include <string>
+#include <boost/algorithm/string.hpp>
+#include <boost/lexical_cast.hpp>
+#include <stan/math/matrix.hpp>
+
+

Go to the source code of this file.

+ + + + + + + + + + + + + +

+Classes

struct  stan::io::stan_csv_metadata
 
struct  stan::io::stan_csv_adaptation
 
struct  stan::io::stan_csv_timing
 
struct  stan::io::stan_csv
 
class  stan::io::stan_csv_reader
 Reads from a Stan output csv file. More...
 
+ + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::io
 Input/output utilities.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/stan__csv__reader_8hpp_source.html b/doc/api/html/stan__csv__reader_8hpp_source.html new file mode 100644 index 00000000000..355f872804e --- /dev/null +++ b/doc/api/html/stan__csv__reader_8hpp_source.html @@ -0,0 +1,453 @@ + + + + + +Stan: src/stan/io/stan_csv_reader.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan_csv_reader.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__IO__STAN_CSV_READER_HPP__
+
2 #define __STAN__IO__STAN_CSV_READER_HPP__
+
3 
+
4 #include <istream>
+
5 #include <iostream>
+
6 #include <sstream>
+
7 #include <string>
+
8 #include <boost/algorithm/string.hpp>
+
9 #include <boost/lexical_cast.hpp>
+
10 #include <stan/math/matrix.hpp>
+
11 
+
12 namespace stan {
+
13  namespace io {
+
14 
+
15  // FIXME: should consolidate with the options from the command line in stan::gm
+ + + + +
20 
+
21  std::string model;
+
22  std::string data;
+
23  std::string init;
+
24  size_t chain_id;
+
25  size_t seed;
+ +
27  size_t num_samples;
+
28  size_t num_warmup;
+ +
30  size_t thin;
+ +
32  std::string algorithm;
+
33  std::string engine;
+
34 
+ + +
37  model(""), data(""), init(""),
+
38  chain_id(1), seed(0), random_seed(false),
+
39  num_samples(0), num_warmup(0), save_warmup(false), thin(0),
+
40  append_samples(false),
+
41  algorithm(""), engine("") {}
+
42  };
+
43 
+ +
45  double step_size;
+
46  Eigen::MatrixXd metric;
+
47 
+ +
49  : step_size(0), metric(0,0) {}
+
50  };
+
51 
+
52  struct stan_csv_timing {
+
53  double warmup;
+
54  double sampling;
+
55 
+ +
57  : warmup(0), sampling(0) {}
+
58  };
+
59 
+
60  struct stan_csv {
+ +
62  Eigen::Matrix<std::string, Eigen::Dynamic, 1> header;
+ +
64  Eigen::MatrixXd samples;
+ +
66  };
+
67 
+ +
72 
+
73  public:
+
74 
+ + +
77 
+
78  static bool read_metadata(std::istream& in, stan_csv_metadata& metadata) {
+
79 
+
80  std::stringstream ss;
+
81  std::string line;
+
82 
+
83  if (in.peek() != '#')
+
84  return false;
+
85  while (in.peek() == '#') {
+
86  std::getline(in, line);
+
87  ss << line << '\n';
+
88  }
+
89  ss.seekg(std::ios_base::beg);
+
90 
+
91  char comment;
+
92  std::string lhs;
+
93 
+
94  std::string name;
+
95  std::string value;
+
96 
+
97  while (ss.good()) {
+
98 
+
99  ss >> comment;
+
100  std::getline(ss, lhs);
+
101 
+
102  size_t equal = lhs.find("=");
+
103  if (equal != std::string::npos) {
+
104  name = lhs.substr(0, equal);
+
105  boost::trim(name);
+
106  value = lhs.substr(equal + 2, lhs.size());
+
107  boost::replace_first(value, " (Default)", "");
+
108  } else {
+
109  continue;
+
110  }
+
111 
+
112  if (name.compare("stan_version_major") == 0) {
+
113  metadata.stan_version_major = boost::lexical_cast<int>(value);
+
114  } else if (name.compare("stan_version_minor") == 0) {
+
115  metadata.stan_version_minor = boost::lexical_cast<int>(value);
+
116  } else if (name.compare("stan_version_patch") == 0) {
+
117  metadata.stan_version_patch = boost::lexical_cast<int>(value);
+
118  } else if (name.compare("model") == 0) {
+
119  metadata.model = value;
+
120  } else if (name.compare("num_samples") == 0) {
+
121  metadata.num_samples = boost::lexical_cast<int>(value);
+
122  } else if (name.compare("num_warmup") == 0) {
+
123  metadata.num_warmup = boost::lexical_cast<int>(value);
+
124  } else if (name.compare("save_warmup") == 0) {
+
125  metadata.save_warmup = boost::lexical_cast<bool>(value);
+
126  } else if (name.compare("thin") == 0) {
+
127  metadata.thin = boost::lexical_cast<int>(value);
+
128  } else if (name.compare("chain_id") == 0) {
+
129  metadata.chain_id = boost::lexical_cast<int>(value);
+
130  } else if (name.compare("data") == 0) {
+
131  metadata.data = value;
+
132  } else if (name.compare("init") == 0) {
+
133  metadata.init = value;
+
134  boost::trim(metadata.init);
+
135  } else if (name.compare("seed") == 0) {
+
136  metadata.seed = boost::lexical_cast<unsigned int>(value);
+
137  metadata.random_seed = false;
+
138  } else if (name.compare("append_samples") == 0) {
+
139  metadata.append_samples = boost::lexical_cast<bool>(value);
+
140  } else if (name.compare("algorithm") == 0) {
+
141  metadata.algorithm = value;
+
142  } else if (name.compare("engine") == 0) {
+
143  metadata.engine = value;
+
144  }
+
145 
+
146  }
+
147 
+
148  if (ss.good() == true)
+
149  return false;
+
150 
+
151  return true;
+
152 
+
153  } // read_metadata
+
154 
+
155  static bool read_header(std::istream& in, Eigen::Matrix<std::string, Eigen::Dynamic, 1>& header) {
+
156 
+
157  std::string line;
+
158 
+
159  if (in.peek() != 'l')
+
160  return false;
+
161 
+
162  std::getline(in, line);
+
163  std::stringstream ss(line);
+
164 
+
165  header.resize(std::count(line.begin(), line.end(), ',') + 1);
+
166  int idx = 0;
+
167  while (ss.good()) {
+
168  std::string token;
+
169  std::getline(ss, token, ',');
+
170  boost::trim(token);
+
171 
+
172  int pos = token.find('.');
+
173  if (pos > 0) {
+
174  token.replace(pos, 1, "[");
+
175  std::replace(token.begin(), token.end(), '.', ',');
+
176  token += "]";
+
177  }
+
178  header(idx++) = token;
+
179  }
+
180  return true;
+
181  }
+
182 
+
183  static bool read_adaptation(std::istream& in, stan_csv_adaptation& adaptation) {
+
184 
+
185  std::stringstream ss;
+
186  std::string line;
+
187  int lines = 0;
+
188 
+
189  if (in.peek() != '#' || in.good() == false)
+
190  return false;
+
191 
+
192  while (in.peek() == '#') {
+
193  std::getline(in, line);
+
194  ss << line << std::endl;
+
195  lines++;
+
196  }
+
197  ss.seekg(std::ios_base::beg);
+
198 
+
199  char comment; // Buffer for comment indicator, #
+
200 
+
201  // Skip first two lines
+
202  std::getline(ss, line);
+
203 
+
204  // Stepsize
+
205  std::getline(ss, line, '=');
+
206  boost::trim(line);
+
207  ss >> adaptation.step_size;
+
208 
+
209  // Metric parameters
+
210  std::getline(ss, line);
+
211  std::getline(ss, line);
+
212  std::getline(ss, line);
+
213 
+
214  int rows = lines - 3;
+
215  int cols = std::count(line.begin(), line.end(), ',') + 1;
+
216  adaptation.metric.resize(rows, cols);
+
217 
+
218  for (int row = 0; row < rows; row++) {
+
219 
+
220  std::stringstream line_ss;
+
221  line_ss.str(line);
+
222  line_ss >> comment;
+
223 
+
224  for (int col = 0; col < cols; col++) {
+
225  std::string token;
+
226  std::getline(line_ss, token, ',');
+
227  boost::trim(token);
+
228  adaptation.metric(row, col) = boost::lexical_cast<double>(token);
+
229  }
+
230 
+
231  std::getline(ss, line); // Read in next line
+
232 
+
233  }
+
234 
+
235  if (ss.good())
+
236  return false;
+
237  else
+
238  return true;
+
239 
+
240  }
+
241 
+
242  static bool read_samples(std::istream& in, Eigen::MatrixXd& samples, stan_csv_timing& timing) {
+
243 
+
244  std::stringstream ss;
+
245  std::string line;
+
246 
+
247  int rows = 0;
+
248  int cols = -1;
+
249 
+
250  if (in.peek() == '#' || in.good() == false)
+
251  return false;
+
252 
+
253  while (in.good()) {
+
254 
+
255  bool comment_line = (in.peek() == '#');
+
256  bool empty_line = (in.peek() == '\n');
+
257 
+
258  std::getline(in, line);
+
259 
+
260  if (empty_line) continue;
+
261  if (!line.length()) break;
+
262 
+
263  if (comment_line) {
+
264 
+
265  if (line.find("(Warm-up)") != std::string::npos) {
+
266  int left = 17;
+
267  int right = line.find(" seconds");
+
268  timing.warmup += boost::lexical_cast<double>(line.substr(left, right - left));
+
269  } else if (line.find("(Sampling)") != std::string::npos) {
+
270  int left = 17;
+
271  int right = line.find(" seconds");
+
272  timing.sampling += boost::lexical_cast<double>(line.substr(left, right - left));
+
273  }
+
274 
+
275  }
+
276  else {
+
277 
+
278  ss << line << '\n';
+
279 
+
280  int current_cols = std::count(line.begin(), line.end(), ',') + 1;
+
281  if (cols == -1) {
+
282  cols = current_cols;
+
283  } else if (cols != current_cols) {
+
284  std::cout << "Error: expected " << cols << " columns, but found "
+
285  << current_cols << " instead for row " << rows + 1 << std::endl;
+
286  return false;
+
287  }
+
288  rows++;
+
289 
+
290  }
+
291 
+
292  in.peek();
+
293 
+
294  }
+
295 
+
296  ss.seekg(std::ios_base::beg);
+
297 
+
298  if (rows > 0) {
+
299  samples.resize(rows, cols);
+
300  for (int row = 0; row < rows; row++) {
+
301  std::getline(ss, line);
+
302  std::stringstream ls(line);
+
303  for (int col = 0; col < cols; col++) {
+
304  std::getline(ls, line, ',');
+
305  boost::trim(line);
+
306  //std::cout << "line: !" << line << "@" << std::endl;
+
307  samples(row, col) = boost::lexical_cast<double>(line);
+
308  //std::cout << "after" << std::endl << std::endl;
+
309  }
+
310  }
+
311  }
+
312  return true;
+
313  }
+
314 
+
319  static stan_csv parse(std::istream& in) {
+
320 
+
321  stan_csv data;
+
322 
+
323  if (!read_metadata(in, data.metadata)) {
+
324  std::cout << "Warning: non-fatal error reading metadata" << std::endl;
+
325  }
+
326 
+
327  if (!read_header(in, data.header)) {
+
328  std::cout << "Error: error reading header" << std::endl;
+
329  throw std::invalid_argument("Error with header of input file in parse");
+
330  }
+
331 
+
332  if (!read_adaptation(in, data.adaptation)) {
+
333  std::cout << "Warning: non-fatal error reading adapation data" << std::endl;
+
334  }
+
335 
+
336  data.timing.warmup = 0;
+
337  data.timing.sampling = 0;
+
338 
+
339  if (!read_samples(in, data.samples, data.timing)) {
+
340  std::cout << "Warning: non-fatal error reading samples" << std::endl;
+
341  }
+
342 
+
343  return data;
+
344 
+
345  }
+
346 
+
347  };
+
348 
+
349  } // io
+
350 
+
351 } // stan
+
352 
+
353 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/stanc_8cpp.html b/doc/api/html/stanc_8cpp.html new file mode 100644 index 00000000000..38051747ce2 --- /dev/null +++ b/doc/api/html/stanc_8cpp.html @@ -0,0 +1,158 @@ + + + + + +Stan: src/stan/command/stanc.cpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stanc.cpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + +

+Functions

int main (int argc, const char *argv[])
 The Stan compiler (stanc).
 
+

Function Documentation

+ +
+
+ + + + + + + + + + + + + + + + + + +
int main (int argc,
const char * argv[] 
)
+
+ +

The Stan compiler (stanc).

+
Parameters
+ + + +
argcNumber of arguments
argvArguments
+
+
+
Returns
0 for success, -1 for exception, -2 for parser failure, -3 for invalid arguments.
+ +

Definition at line 12 of file stanc.cpp.

+ +
+
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/stanc_8cpp_source.html b/doc/api/html/stanc_8cpp_source.html new file mode 100644 index 00000000000..752c68be6d8 --- /dev/null +++ b/doc/api/html/stanc_8cpp_source.html @@ -0,0 +1,115 @@ + + + + + +Stan: src/stan/command/stanc.cpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stanc.cpp
+
+
+Go to the documentation of this file.
+
2 
+
12 int main(int argc, const char* argv[]) {
+
13  return stanc_helper(argc,argv,&std::cout,&std::cerr);
+
14 }
+
15 
+
16 
+
17 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/stanc__helper_8hpp.html b/doc/api/html/stanc__helper_8hpp.html new file mode 100644 index 00000000000..4671efbf0b5 --- /dev/null +++ b/doc/api/html/stanc__helper_8hpp.html @@ -0,0 +1,239 @@ + + + + + +Stan: src/stan/command/stanc_helper.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stanc_helper.hpp File Reference
+
+
+
#include <stan/version.hpp>
+#include <stan/gm/compiler.hpp>
+#include <exception>
+#include <fstream>
+#include <iostream>
+#include <stdexcept>
+#include <string>
+#include <stan/io/cmd_line.hpp>
+
+

Go to the source code of this file.

+ + + + + + + + + + + +

+Functions

void print_version (std::ostream *out_stream)
 
void print_stanc_help (std::ostream *out_stream)
 Prints the Stan compiler (stanc) help.
 
void delete_file (std::ostream *err_stream, const std::string &file_name)
 
int stanc_helper (int argc, const char *argv[], std::ostream *out_stream, std::ostream *err_stream)
 
+

Function Documentation

+ +
+
+ + + + + + + + + + + + + + + + + + +
void delete_file (std::ostream * err_stream,
const std::string & file_name 
)
+
+ +

Definition at line 55 of file stanc_helper.hpp.

+ +
+
+ +
+
+ + + + + + + + +
void print_stanc_help (std::ostream * out_stream)
+
+ +

Prints the Stan compiler (stanc) help.

+ +

Definition at line 26 of file stanc_helper.hpp.

+ +
+
+ +
+
+ + + + + + + + +
void print_version (std::ostream * out_stream)
+
+ +

Definition at line 12 of file stanc_helper.hpp.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
int stanc_helper (int argc,
const char * argv[],
std::ostream * out_stream,
std::ostream * err_stream 
)
+
+ +

Definition at line 65 of file stanc_helper.hpp.

+ +
+
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/stanc__helper_8hpp_source.html b/doc/api/html/stanc__helper_8hpp_source.html new file mode 100644 index 00000000000..8f34b0b31cb --- /dev/null +++ b/doc/api/html/stanc__helper_8hpp_source.html @@ -0,0 +1,284 @@ + + + + + +Stan: src/stan/command/stanc_helper.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stanc_helper.hpp
+
+
+Go to the documentation of this file.
1 #include <stan/version.hpp>
+
2 #include <stan/gm/compiler.hpp>
+
3 
+
4 #include <exception>
+
5 #include <fstream>
+
6 #include <iostream>
+
7 #include <stdexcept>
+
8 #include <string>
+
9 
+
10 #include <stan/io/cmd_line.hpp>
+
11 
+
12 void print_version(std::ostream* out_stream) {
+
13  if (!out_stream) return;
+
14  *out_stream << "stanc version "
+ +
16  << "."
+ +
18  << "."
+ +
20  << std::endl;
+
21 }
+
22 
+
26 void print_stanc_help(std::ostream* out_stream) {
+ +
28 
+
29  if (!out_stream) return;
+
30 
+
31  *out_stream << std::endl;
+
32  print_version(out_stream);
+
33  *out_stream << std::endl;
+
34 
+
35  *out_stream << "USAGE: " << "stanc [options] <model_file>" << std::endl;
+
36  *out_stream << std::endl;
+
37 
+
38  *out_stream << "OPTIONS:" << std::endl;
+
39  *out_stream << std::endl;
+
40 
+
41  print_help_option(out_stream,"help","","Display this information");
+
42 
+
43  print_help_option(out_stream,"version","","Display stanc version number");
+
44 
+
45  print_help_option(out_stream,"name","string",
+
46  "Model name",
+
47  "default = \"$model_filename_model\"");
+
48 
+
49  print_help_option(out_stream,"o","file",
+
50  "Output file for generated C++ code",
+
51  "default = \"$name.cpp\"");
+
52 
+
53 }
+
54 
+
55 void delete_file(std::ostream* err_stream,
+
56  const std::string& file_name) {
+
57  int deleted = std::remove(file_name.c_str());
+
58  if (deleted != 0 && file_name.size() > 0)
+
59  if (err_stream)
+
60  std::cerr << "Could not remove output file=" << file_name
+
61  << std::endl;
+
62 }
+
63 
+
64 
+
65 int stanc_helper(int argc, const char* argv[],
+
66  std::ostream* out_stream, std::ostream* err_stream) {
+
67  static const int SUCCESS_RC = 0;
+
68  static const int EXCEPTION_RC = -1;
+
69  static const int PARSE_FAIL_RC = -2;
+
70  static const int INVALID_ARGUMENT_RC = -3;
+
71 
+
72  std::string out_file_name; // declare outside of try to delete in catch
+
73 
+
74  try {
+
75 
+
76  stan::io::cmd_line cmd(argc,argv);
+
77 
+
78  if (cmd.has_flag("help")) {
+
79  print_stanc_help(out_stream);
+
80  return SUCCESS_RC;
+
81  }
+
82 
+
83  if (cmd.has_flag("version")) {
+
84  print_version(out_stream);
+
85  return SUCCESS_RC;
+
86  }
+
87 
+
88  if (cmd.bare_size() != 1) {
+
89  std::string msg("Require model file as argument. ");
+
90  throw std::invalid_argument(msg);
+
91  }
+
92  std::string in_file_name;
+
93  cmd.bare(0,in_file_name);
+
94  std::fstream in(in_file_name.c_str());
+
95 
+
96  std::string model_name;
+
97  if (cmd.has_key("name")) {
+
98  cmd.val("name",model_name);
+
99  } else {
+
100  size_t slashInd = in_file_name.rfind('/');
+
101  size_t ptInd = in_file_name.rfind('.');
+
102  if (ptInd == std::string::npos)
+
103  ptInd = in_file_name.length();
+
104  if (slashInd == std::string::npos) {
+
105  slashInd = in_file_name.rfind('\\');
+
106  }
+
107  if (slashInd == std::string::npos) {
+
108  slashInd = 0;
+
109  } else {
+
110  slashInd++;
+
111  }
+
112  model_name = in_file_name.substr(slashInd,ptInd - slashInd) + "_model";
+
113  for (std::string::iterator strIt = model_name.begin();
+
114  strIt != model_name.end(); strIt++) {
+
115  if (!isalnum(*strIt) && *strIt != '_') {
+
116  *strIt = '_';
+
117  }
+
118  }
+
119  }
+
120 
+
121  if (cmd.has_key("o")) {
+
122  cmd.val("o",out_file_name);
+
123  } else {
+
124  out_file_name = model_name;
+
125  out_file_name += ".cpp";
+
126  }
+
127 
+
128  if (!isalpha(model_name[0]) && model_name[0] != '_') {
+
129  std::string msg("model_name must not start with a number or symbol other than _");
+
130  throw std::invalid_argument(msg);
+
131  }
+
132  for (std::string::iterator strIt = model_name.begin();
+
133  strIt != model_name.end(); strIt++) {
+
134  if (!isalnum(*strIt) && *strIt != '_') {
+
135  std::string msg("model_name must contain only letters, numbers and _");
+
136  throw std::invalid_argument(msg);
+
137  }
+
138  }
+
139 
+
140  stan::gm::program prog;
+
141  std::fstream out(out_file_name.c_str(),
+
142  std::fstream::out);
+
143  if (out_stream) {
+
144  *out_stream << "Model name=" << model_name << std::endl;
+
145  *out_stream << "Input file=" << in_file_name << std::endl;
+
146  *out_stream << "Output file=" << out_file_name << std::endl;
+
147  }
+
148  bool include_main = !cmd.has_flag("no_main");
+
149  bool valid_model
+
150  = stan::gm::compile(err_stream,in,out,model_name,include_main,in_file_name);
+
151  out.close();
+
152  if (!valid_model) {
+
153  if (err_stream)
+
154  *err_stream << "PARSING FAILED." << std::endl;
+
155  delete_file(out_stream,out_file_name); // FIXME: how to remove triple cut-and-paste?
+
156  return PARSE_FAIL_RC;
+
157  }
+
158  } catch (const std::invalid_argument& e) {
+
159  if (err_stream) {
+
160  *err_stream << std::endl
+
161  << e.what()
+
162  << std::endl;
+
163  *err_stream << "Execute \"stanc --help\" for more information"
+
164  << std::endl;
+
165  delete_file(out_stream,out_file_name);
+
166  }
+
167  return INVALID_ARGUMENT_RC;
+
168  } catch (const std::exception& e) {
+
169  if (err_stream) {
+
170  *err_stream << std::endl
+
171  << e.what()
+
172  << std::endl;
+
173  }
+
174  delete_file(out_stream,out_file_name);
+
175  return EXCEPTION_RC;
+
176  }
+
177 
+
178  return SUCCESS_RC;
+
179 }
+
180 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/stanlogo-main.png b/doc/api/html/stanlogo-main.png new file mode 100644 index 0000000000000000000000000000000000000000..93988f5dd4cb4fb6fab854a3b15b5092092c6440 GIT binary patch literal 7353 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 literal 0 HcmV?d00001 diff --git a/doc/api/html/statement__2__grammar_8hpp.html b/doc/api/html/statement__2__grammar_8hpp.html new file mode 100644 index 00000000000..46fbc409218 --- /dev/null +++ b/doc/api/html/statement__2__grammar_8hpp.html @@ -0,0 +1,137 @@ + + + + + +Stan: src/stan/gm/grammars/statement_2_grammar.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
statement_2_grammar.hpp File Reference
+
+
+
#include <string>
+#include <sstream>
+#include <vector>
+#include <boost/spirit/include/qi.hpp>
+#include <stan/gm/ast.hpp>
+#include <stan/gm/grammars/whitespace_grammar.hpp>
+#include <stan/gm/grammars/expression_grammar.hpp>
+#include <stan/gm/grammars/var_decls_grammar.hpp>
+
+

Go to the source code of this file.

+ + + + + + +

+Classes

struct  statement_grammar< Iterator >
 
struct  stan::gm::statement_2_grammar< Iterator >
 
+ + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::gm
 Directed graphical model compiler.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/statement__2__grammar_8hpp_source.html b/doc/api/html/statement__2__grammar_8hpp_source.html new file mode 100644 index 00000000000..881058bf5fd --- /dev/null +++ b/doc/api/html/statement__2__grammar_8hpp_source.html @@ -0,0 +1,169 @@ + + + + + +Stan: src/stan/gm/grammars/statement_2_grammar.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
statement_2_grammar.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__GM__PARSER__STATEMENT_2_GRAMMAR__HPP__
+
2 #define __STAN__GM__PARSER__STATEMENT_2_GRAMMAR__HPP__
+
3 
+
4 #include <string>
+
5 #include <sstream>
+
6 #include <vector>
+
7 
+
8 #include <boost/spirit/include/qi.hpp>
+
9 
+
10 #include <stan/gm/ast.hpp>
+ + + +
14 
+
15 namespace stan {
+
16 
+
17  namespace gm {
+
18 
+
19  template <typename Iterator>
+ +
21 
+
22  template <typename Iterator>
+ +
24  : boost::spirit::qi::grammar<Iterator,
+
25  statement(bool,var_origin),
+
26  whitespace_grammar<Iterator> > {
+
27 
+
28 
+
29 
+ +
31  std::stringstream& error_msgs,
+ +
33 
+
34 
+
35  // global info for parses
+ +
37  std::stringstream& error_msgs_;
+
38 
+
39  // grammars
+ + +
42 
+
43  // rules
+
44 
+
45  boost::spirit::qi::rule<Iterator,
+ + + +
49 
+
50 
+
51  boost::spirit::qi::rule<Iterator,
+
52  statement(bool,var_origin),
+ + +
55 
+
56  };
+
57 
+
58 
+
59  }
+
60 }
+
61 
+
62 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/statement__2__grammar__def_8hpp.html b/doc/api/html/statement__2__grammar__def_8hpp.html new file mode 100644 index 00000000000..8c2f413385f --- /dev/null +++ b/doc/api/html/statement__2__grammar__def_8hpp.html @@ -0,0 +1,178 @@ + + + + + +Stan: src/stan/gm/grammars/statement_2_grammar_def.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
statement_2_grammar_def.hpp File Reference
+
+
+
#include <cstddef>
+#include <iomanip>
+#include <iostream>
+#include <istream>
+#include <map>
+#include <set>
+#include <sstream>
+#include <string>
+#include <utility>
+#include <vector>
+#include <stdexcept>
+#include <boost/spirit/include/qi.hpp>
+#include <boost/spirit/include/phoenix_core.hpp>
+#include <boost/spirit/include/phoenix_function.hpp>
+#include <boost/spirit/include/phoenix_fusion.hpp>
+#include <boost/spirit/include/phoenix_object.hpp>
+#include <boost/spirit/include/phoenix_operator.hpp>
+#include <boost/spirit/include/phoenix_stl.hpp>
+#include <boost/lexical_cast.hpp>
+#include <boost/fusion/include/adapt_struct.hpp>
+#include <boost/fusion/include/std_pair.hpp>
+#include <boost/config/warning_disable.hpp>
+#include <boost/spirit/include/qi_numeric.hpp>
+#include <boost/spirit/include/classic_position_iterator.hpp>
+#include <boost/spirit/include/support_multi_pass.hpp>
+#include <boost/tuple/tuple.hpp>
+#include <boost/variant/apply_visitor.hpp>
+#include <boost/variant/recursive_variant.hpp>
+#include <stan/gm/ast.hpp>
+#include <stan/gm/grammars/whitespace_grammar.hpp>
+#include <stan/gm/grammars/expression_grammar.hpp>
+#include <stan/gm/grammars/var_decls_grammar.hpp>
+#include <stan/gm/grammars/statement_grammar.hpp>
+#include <stan/gm/grammars/statement_2_grammar.hpp>
+#include <stan/gm/grammars/common_adaptors_def.hpp>
+
+

Go to the source code of this file.

+ + + + + + + + + + +

+Classes

struct  stan::gm::add_conditional_condition
 
struct  stan::gm::add_conditional_condition::result< T1, T2, T3 >
 
struct  stan::gm::add_conditional_body
 
struct  stan::gm::add_conditional_body::result< T1, T2 >
 
+ + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::gm
 Directed graphical model compiler.
 
+ + + + + +

+Variables

boost::phoenix::function
+< add_conditional_condition > 
stan::gm::add_conditional_condition_f
 
boost::phoenix::function
+< add_conditional_body > 
stan::gm::add_conditional_body_f
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/statement__2__grammar__def_8hpp_source.html b/doc/api/html/statement__2__grammar__def_8hpp_source.html new file mode 100644 index 00000000000..7b93de684e9 --- /dev/null +++ b/doc/api/html/statement__2__grammar__def_8hpp_source.html @@ -0,0 +1,252 @@ + + + + + +Stan: src/stan/gm/grammars/statement_2_grammar_def.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
statement_2_grammar_def.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__GM__PARSER__STATEMENT_2_GRAMMAR_DEF__HPP__
+
2 #define __STAN__GM__PARSER__STATEMENT_2_GRAMMAR_DEF__HPP__
+
3 
+
4 #include <cstddef>
+
5 #include <iomanip>
+
6 #include <iostream>
+
7 #include <istream>
+
8 #include <map>
+
9 #include <set>
+
10 #include <sstream>
+
11 #include <string>
+
12 #include <utility>
+
13 #include <vector>
+
14 #include <stdexcept>
+
15 
+
16 #include <boost/spirit/include/qi.hpp>
+
17 // FIXME: get rid of unused include
+
18 #include <boost/spirit/include/phoenix_core.hpp>
+
19 #include <boost/spirit/include/phoenix_function.hpp>
+
20 #include <boost/spirit/include/phoenix_fusion.hpp>
+
21 #include <boost/spirit/include/phoenix_object.hpp>
+
22 #include <boost/spirit/include/phoenix_operator.hpp>
+
23 #include <boost/spirit/include/phoenix_stl.hpp>
+
24 
+
25 #include <boost/lexical_cast.hpp>
+
26 #include <boost/fusion/include/adapt_struct.hpp>
+
27 #include <boost/fusion/include/std_pair.hpp>
+
28 #include <boost/config/warning_disable.hpp>
+
29 #include <boost/spirit/include/qi.hpp>
+
30 #include <boost/spirit/include/qi_numeric.hpp>
+
31 #include <boost/spirit/include/classic_position_iterator.hpp>
+
32 #include <boost/spirit/include/phoenix_core.hpp>
+
33 #include <boost/spirit/include/phoenix_function.hpp>
+
34 #include <boost/spirit/include/phoenix_fusion.hpp>
+
35 #include <boost/spirit/include/phoenix_object.hpp>
+
36 #include <boost/spirit/include/phoenix_operator.hpp>
+
37 #include <boost/spirit/include/phoenix_stl.hpp>
+
38 #include <boost/spirit/include/support_multi_pass.hpp>
+
39 #include <boost/tuple/tuple.hpp>
+
40 #include <boost/variant/apply_visitor.hpp>
+
41 #include <boost/variant/recursive_variant.hpp>
+
42 
+
43 #include <stan/gm/ast.hpp>
+ + + + + + +
50 
+
51 
+
52 namespace stan {
+
53 
+
54  namespace gm {
+
55 
+
56 
+
57 
+ +
59  template <typename T1, typename T2, typename T3>
+
60  struct result { typedef bool type; };
+ +
62  const expression& e,
+
63  std::stringstream& error_msgs) const {
+
64  if (!e.expression_type().is_primitive()) {
+
65  error_msgs << "conditions in if-else statement must be primitive int or real;"
+
66  << " found type=" << e.expression_type() << std::endl;
+
67  return false;
+
68  }
+
69  cs.conditions_.push_back(e);
+
70  return true;
+
71  }
+
72  };
+
73  boost::phoenix::function<add_conditional_condition> add_conditional_condition_f;
+
74 
+ +
76  template <typename T1, typename T2>
+
77  struct result { typedef void type; };
+ +
79  const statement& s) const {
+
80  cs.bodies_.push_back(s);
+
81  }
+
82  };
+
83  boost::phoenix::function<add_conditional_body> add_conditional_body_f;
+
84 
+
85 
+
86 
+
87  template <typename Iterator>
+ +
89  std::stringstream& error_msgs,
+ +
91  : statement_2_grammar::base_type(statement_2_r),
+
92  var_map_(var_map),
+
93  error_msgs_(error_msgs),
+
94  expression_g(var_map,error_msgs),
+
95  statement_g(sg)
+
96  {
+
97  using boost::spirit::qi::_1;
+
98  using boost::spirit::qi::char_;
+
99  using boost::spirit::qi::lit;
+
100  using boost::spirit::qi::_pass;
+
101  using boost::spirit::qi::_val;
+
102 
+
103  using boost::spirit::qi::labels::_r1;
+
104  using boost::spirit::qi::labels::_r2;
+
105 
+
106  // _r1 true if sample_r allowed (inherited)
+
107  // _r2 source of variables allowed for assignments
+
108  // set to true if sample_r are allowed
+
109  statement_2_r.name("statement");
+ +
111  %= conditional_statement_r(_r1,_r2)
+
112  ;
+
113 
+
114 
+
115  conditional_statement_r.name("if-else statement");
+ +
117  = lit("if")
+
118  > lit('(')
+
119  > expression_g(_r2)
+
120  [_pass = add_conditional_condition_f(_val,_1,
+
121  boost::phoenix::ref(error_msgs_))]
+
122  > lit(')')
+
123  > statement_g(_r1,_r2)
+
124  [add_conditional_body_f(_val,_1)]
+
125  > * (( lit("else")
+
126  >> lit("if") )
+
127  > lit('(')
+
128  > expression_g(_r2)
+
129  [_pass = add_conditional_condition_f(_val,_1,
+
130  boost::phoenix::ref(error_msgs_))]
+
131  > lit(')')
+
132  > statement_g(_r1,_r2)
+
133  [add_conditional_body_f(_val,_1)]
+
134  )
+
135  > - (lit("else")
+
136  > statement_g(_r1,_r2)
+
137  [add_conditional_body_f(_val,_1)]
+
138  )
+
139  ;
+
140 
+
141  }
+
142 
+
143  }
+
144 }
+
145 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/statement__2__grammar__inst_8cpp.html b/doc/api/html/statement__2__grammar__inst_8cpp.html new file mode 100644 index 00000000000..bdefb81e884 --- /dev/null +++ b/doc/api/html/statement__2__grammar__inst_8cpp.html @@ -0,0 +1,123 @@ + + + + + +Stan: src/stan/gm/grammars/statement_2_grammar_inst.cpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
statement_2_grammar_inst.cpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::gm
 Directed graphical model compiler.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/statement__2__grammar__inst_8cpp_source.html b/doc/api/html/statement__2__grammar__inst_8cpp_source.html new file mode 100644 index 00000000000..3d7eebcf2db --- /dev/null +++ b/doc/api/html/statement__2__grammar__inst_8cpp_source.html @@ -0,0 +1,115 @@ + + + + + +Stan: src/stan/gm/grammars/statement_2_grammar_inst.cpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
statement_2_grammar_inst.cpp
+
+
+Go to the documentation of this file.
+ +
3 
+
4 namespace stan {
+
5  namespace gm {
+
6  template struct statement_2_grammar<pos_iterator_t>;
+
7  }
+
8 }
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/statement__grammar_8hpp.html b/doc/api/html/statement__grammar_8hpp.html new file mode 100644 index 00000000000..bcb10a9806a --- /dev/null +++ b/doc/api/html/statement__grammar_8hpp.html @@ -0,0 +1,136 @@ + + + + + +Stan: src/stan/gm/grammars/statement_grammar.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
statement_grammar.hpp File Reference
+
+
+
#include <string>
+#include <sstream>
+#include <vector>
+#include <boost/spirit/include/qi.hpp>
+#include <stan/gm/ast.hpp>
+#include <stan/gm/grammars/whitespace_grammar.hpp>
+#include <stan/gm/grammars/expression_grammar.hpp>
+#include <stan/gm/grammars/var_decls_grammar.hpp>
+#include <stan/gm/grammars/statement_2_grammar.hpp>
+
+

Go to the source code of this file.

+ + + + +

+Classes

struct  stan::gm::statement_grammar< Iterator >
 
+ + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::gm
 Directed graphical model compiler.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/statement__grammar_8hpp_source.html b/doc/api/html/statement__grammar_8hpp_source.html new file mode 100644 index 00000000000..c5d05d4c791 --- /dev/null +++ b/doc/api/html/statement__grammar_8hpp_source.html @@ -0,0 +1,264 @@ + + + + + +Stan: src/stan/gm/grammars/statement_grammar.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
statement_grammar.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__GM__PARSER__STATEMENT_GRAMMAR__HPP__
+
2 #define __STAN__GM__PARSER__STATEMENT_GRAMMAR__HPP__
+
3 
+
4 #include <string>
+
5 #include <sstream>
+
6 #include <vector>
+
7 
+
8 #include <boost/spirit/include/qi.hpp>
+
9 
+
10 #include <stan/gm/ast.hpp>
+ + + + +
15 
+
16 namespace stan {
+
17 
+
18  namespace gm {
+
19 
+
20  template <typename Iterator>
+ +
22  : boost::spirit::qi::grammar<Iterator,
+
23  statement(bool,var_origin),
+
24  whitespace_grammar<Iterator> > {
+
25 
+
26 
+
27 
+ +
29  std::stringstream& error_msgs);
+
30 
+
31 
+
32  // global info for parses
+ +
34  std::stringstream& error_msgs_;
+
35 
+
36  // grammars
+ + + +
40 
+
41  // rules
+
42  boost::spirit::qi::rule<Iterator,
+ + + +
46 
+
47  boost::spirit::qi::rule<Iterator,
+ + + +
51 
+
52 
+
53  boost::spirit::qi::rule<Iterator,
+
54  std::vector<expression>(var_origin),
+ + +
57 
+
58 
+
59  boost::spirit::qi::rule<Iterator,
+ + + +
63 
+
64 
+
65  boost::spirit::qi::rule<Iterator,
+ + + +
69 
+
70  boost::spirit::qi::rule<Iterator,
+
71  boost::spirit::qi::locals<std::string>,
+ + + +
75 
+
76 
+
77  boost::spirit::qi::rule<Iterator,
+ + + +
81 
+
82 
+
83  boost::spirit::qi::rule<Iterator,
+ + + +
87 
+
88 
+
89  boost::spirit::qi::rule<Iterator,
+ + + +
93 
+
94  boost::spirit::qi::rule<Iterator,
+
95  std::string(),
+ + +
98 
+
99 
+
100  boost::spirit::qi::rule<Iterator,
+
101  std::string(),
+ + +
104 
+
105  boost::spirit::qi::rule<Iterator,
+
106  std::vector<var_decl>(),
+ + +
109 
+
110  boost::spirit::qi::rule<Iterator,
+
111  no_op_statement(),
+ + +
114 
+
115  boost::spirit::qi::rule<Iterator,
+
116  std::vector<expression>(var_origin),
+ + +
119 
+
120  boost::spirit::qi::rule<Iterator,
+
121  range(var_origin),
+ + +
124 
+
125  boost::spirit::qi::rule<Iterator,
+
126  sample(bool,var_origin),
+ + +
129 
+
130  boost::spirit::qi::rule<Iterator,
+
131  statement(bool,var_origin),
+ + +
134 
+
135  boost::spirit::qi::rule<Iterator,
+
136  boost::spirit::qi::locals<std::vector<var_decl> >,
+
137  statements(bool,var_origin),
+ + +
140 
+
141  boost::spirit::qi::rule<Iterator,
+
142  range(var_origin),
+ + +
145 
+
146  boost::spirit::qi::rule<Iterator,
+ + + +
150 
+
151  };
+
152 
+
153 
+
154  }
+
155 }
+
156 
+
157 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/statement__grammar__def_8hpp.html b/doc/api/html/statement__grammar__def_8hpp.html new file mode 100644 index 00000000000..c525e58ca8c --- /dev/null +++ b/doc/api/html/statement__grammar__def_8hpp.html @@ -0,0 +1,462 @@ + + + + + +Stan: src/stan/gm/grammars/statement_grammar_def.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
statement_grammar_def.hpp File Reference
+
+
+
#include <cstddef>
+#include <iomanip>
+#include <iostream>
+#include <istream>
+#include <map>
+#include <set>
+#include <sstream>
+#include <string>
+#include <utility>
+#include <vector>
+#include <stdexcept>
+#include <boost/spirit/include/qi.hpp>
+#include <boost/spirit/include/phoenix_core.hpp>
+#include <boost/spirit/include/phoenix_function.hpp>
+#include <boost/spirit/include/phoenix_fusion.hpp>
+#include <boost/spirit/include/phoenix_object.hpp>
+#include <boost/spirit/include/phoenix_operator.hpp>
+#include <boost/spirit/include/phoenix_stl.hpp>
+#include <boost/lexical_cast.hpp>
+#include <boost/fusion/include/adapt_struct.hpp>
+#include <boost/fusion/include/std_pair.hpp>
+#include <boost/config/warning_disable.hpp>
+#include <boost/spirit/include/qi_numeric.hpp>
+#include <boost/spirit/include/classic_position_iterator.hpp>
+#include <boost/spirit/include/support_multi_pass.hpp>
+#include <boost/tuple/tuple.hpp>
+#include <boost/variant/apply_visitor.hpp>
+#include <boost/variant/recursive_variant.hpp>
+#include <stan/gm/ast.hpp>
+#include <stan/gm/grammars/whitespace_grammar.hpp>
+#include <stan/gm/grammars/expression_grammar.hpp>
+#include <stan/gm/grammars/var_decls_grammar.hpp>
+#include <stan/gm/grammars/statement_grammar.hpp>
+#include <stan/gm/grammars/common_adaptors_def.hpp>
+
+

Go to the source code of this file.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Classes

struct  stan::gm::validate_assignment
 
struct  stan::gm::validate_assignment::result< T1, T2, T3, T4 >
 
struct  stan::gm::validate_sample
 
struct  stan::gm::validate_sample::result< T1, T2, T3 >
 
struct  stan::gm::expression_as_statement
 
struct  stan::gm::expression_as_statement::result< T1, T2, T3 >
 
struct  stan::gm::unscope_locals
 
struct  stan::gm::unscope_locals::result< T1, T2 >
 
struct  stan::gm::add_while_condition
 
struct  stan::gm::add_while_condition::result< T1, T2, T3 >
 
struct  stan::gm::add_while_body
 
struct  stan::gm::add_while_body::result< T1, T2 >
 
struct  stan::gm::add_loop_identifier
 
struct  stan::gm::add_loop_identifier::result< T1, T2, T3, T4 >
 
struct  stan::gm::remove_loop_identifier
 
struct  stan::gm::remove_loop_identifier::result< T1, T2 >
 
struct  stan::gm::validate_int_expr2
 
struct  stan::gm::validate_int_expr2::result< T1, T2 >
 
struct  stan::gm::validate_allow_sample
 
struct  stan::gm::validate_allow_sample::result< T1, T2 >
 
+ + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::gm
 Directed graphical model compiler.
 
+ + + + + + + + + + + + + + + + + +

+Functions

 BOOST_FUSION_ADAPT_STRUCT (stan::gm::assignment,(stan::gm::variable_dims, var_dims_)(stan::gm::expression, expr_))
 
 BOOST_FUSION_ADAPT_STRUCT (stan::gm::variable_dims,(std::string, name_)(std::vector< stan::gm::expression >, dims_))
 
 BOOST_FUSION_ADAPT_STRUCT (stan::gm::distribution,(std::string, family_)(std::vector< stan::gm::expression >, args_))
 
 BOOST_FUSION_ADAPT_STRUCT (stan::gm::for_statement,(std::string, variable_)(stan::gm::range, range_)(stan::gm::statement, statement_))
 
 BOOST_FUSION_ADAPT_STRUCT (stan::gm::print_statement,(std::vector< stan::gm::printable >, printables_))
 
 BOOST_FUSION_ADAPT_STRUCT (stan::gm::increment_log_prob_statement,(stan::gm::expression, log_prob_))
 
 BOOST_FUSION_ADAPT_STRUCT (stan::gm::sample,(stan::gm::expression, expr_)(stan::gm::distribution, dist_)(stan::gm::range, truncation_))
 
 BOOST_FUSION_ADAPT_STRUCT (stan::gm::statements,(std::vector< stan::gm::var_decl >, local_decl_)(std::vector< stan::gm::statement >, statements_))
 
+ + + + + + + + + + + + + + + + + + + + + +

+Variables

boost::phoenix::function
+< validate_assignment > 
stan::gm::validate_assignment_f
 
boost::phoenix::function
+< validate_sample > 
stan::gm::validate_sample_f
 
boost::phoenix::function
+< expression_as_statement > 
stan::gm::expression_as_statement_f
 
boost::phoenix::function
+< unscope_locals > 
stan::gm::unscope_locals_f
 
boost::phoenix::function
+< add_while_condition > 
stan::gm::add_while_condition_f
 
boost::phoenix::function
+< add_while_body > 
stan::gm::add_while_body_f
 
boost::phoenix::function
+< add_loop_identifier > 
stan::gm::add_loop_identifier_f
 
boost::phoenix::function
+< remove_loop_identifier > 
stan::gm::remove_loop_identifier_f
 
boost::phoenix::function
+< validate_int_expr2 > 
stan::gm::validate_int_expr2_f
 
boost::phoenix::function
+< validate_allow_sample > 
stan::gm::validate_allow_sample_f
 
+

Function Documentation

+ +
+
+ + + + + + + + + + + + + + + + + + +
BOOST_FUSION_ADAPT_STRUCT (stan::gm::assignment ,
(stan::gm::variable_dims, var_dims_)(stan::gm::expression, expr_)  
)
+
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
BOOST_FUSION_ADAPT_STRUCT (stan::gm::variable_dims ,
(std::string, name_)(std::vector< stan::gm::expression >, dims_)  
)
+
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
BOOST_FUSION_ADAPT_STRUCT (stan::gm::distribution ,
(std::string, family_)(std::vector< stan::gm::expression >, args_)  
)
+
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
BOOST_FUSION_ADAPT_STRUCT (stan::gm::for_statement ,
(std::string, variable_)(stan::gm::range, range_)(stan::gm::statement, statement_)  
)
+
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
BOOST_FUSION_ADAPT_STRUCT (stan::gm::print_statement ,
(std::vector< stan::gm::printable >, printables_)  
)
+
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
BOOST_FUSION_ADAPT_STRUCT (stan::gm::increment_log_prob_statement ,
(stan::gm::expression, log_prob_)  
)
+
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
BOOST_FUSION_ADAPT_STRUCT (stan::gm::sample ,
(stan::gm::expression, expr_)(stan::gm::distribution, dist_)(stan::gm::range, truncation_)  
)
+
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
BOOST_FUSION_ADAPT_STRUCT (stan::gm::statements ,
(std::vector< stan::gm::var_decl >, local_decl_)(std::vector< stan::gm::statement >, statements_)  
)
+
+ +
+
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/statement__grammar__def_8hpp_source.html b/doc/api/html/statement__grammar__def_8hpp_source.html new file mode 100644 index 00000000000..f6fa579de30 --- /dev/null +++ b/doc/api/html/statement__grammar__def_8hpp_source.html @@ -0,0 +1,729 @@ + + + + + +Stan: src/stan/gm/grammars/statement_grammar_def.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
statement_grammar_def.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__GM__PARSER__STATEMENT_GRAMMAR_DEF__HPP__
+
2 #define __STAN__GM__PARSER__STATEMENT_GRAMMAR_DEF__HPP__
+
3 
+
4 #include <cstddef>
+
5 #include <iomanip>
+
6 #include <iostream>
+
7 #include <istream>
+
8 #include <map>
+
9 #include <set>
+
10 #include <sstream>
+
11 #include <string>
+
12 #include <utility>
+
13 #include <vector>
+
14 #include <stdexcept>
+
15 
+
16 #include <boost/spirit/include/qi.hpp>
+
17 // FIXME: get rid of unused include
+
18 #include <boost/spirit/include/phoenix_core.hpp>
+
19 #include <boost/spirit/include/phoenix_function.hpp>
+
20 #include <boost/spirit/include/phoenix_fusion.hpp>
+
21 #include <boost/spirit/include/phoenix_object.hpp>
+
22 #include <boost/spirit/include/phoenix_operator.hpp>
+
23 #include <boost/spirit/include/phoenix_stl.hpp>
+
24 
+
25 #include <boost/lexical_cast.hpp>
+
26 #include <boost/fusion/include/adapt_struct.hpp>
+
27 #include <boost/fusion/include/std_pair.hpp>
+
28 #include <boost/config/warning_disable.hpp>
+
29 #include <boost/spirit/include/qi.hpp>
+
30 #include <boost/spirit/include/qi_numeric.hpp>
+
31 #include <boost/spirit/include/classic_position_iterator.hpp>
+
32 #include <boost/spirit/include/phoenix_core.hpp>
+
33 #include <boost/spirit/include/phoenix_function.hpp>
+
34 #include <boost/spirit/include/phoenix_fusion.hpp>
+
35 #include <boost/spirit/include/phoenix_object.hpp>
+
36 #include <boost/spirit/include/phoenix_operator.hpp>
+
37 #include <boost/spirit/include/phoenix_stl.hpp>
+
38 #include <boost/spirit/include/support_multi_pass.hpp>
+
39 #include <boost/tuple/tuple.hpp>
+
40 #include <boost/variant/apply_visitor.hpp>
+
41 #include <boost/variant/recursive_variant.hpp>
+
42 
+
43 #include <stan/gm/ast.hpp>
+ + + + + +
49 
+ +
51  (stan::gm::variable_dims, var_dims_)
+
52  (stan::gm::expression, expr_) );
+
53 
+ +
55  (std::string, name_)
+
56  (std::vector<stan::gm::expression>, dims_) );
+
57 
+ +
59  (std::string, family_)
+
60  (std::vector<stan::gm::expression>, args_) );
+
61 
+ +
63  (std::string, variable_)
+
64  (stan::gm::range, range_)
+
65  (stan::gm::statement, statement_) );
+
66 
+ +
68  (std::vector<stan::gm::printable>, printables_) );
+
69 
+ +
71  (stan::gm::expression, log_prob_) );
+
72 
+ +
74  (stan::gm::expression, expr_)
+
75  (stan::gm::distribution, dist_)
+
76  (stan::gm::range, truncation_) );
+
77 
+ +
79  (std::vector<stan::gm::var_decl>, local_decl_)
+
80  (std::vector<stan::gm::statement>, statements_) );
+
81 
+
82 namespace stan {
+
83 
+
84  namespace gm {
+
85 
+ +
87  template <typename T1, typename T2, typename T3, typename T4>
+
88  struct result { typedef bool type; };
+
89 
+ +
91  const var_origin& origin_allowed,
+
92  variable_map& vm,
+
93  std::stringstream& error_msgs) const {
+
94 
+
95  // validate existence
+
96  std::string name = a.var_dims_.name_;
+
97  if (!vm.exists(name)) {
+
98  error_msgs << "unknown variable in assignment"
+
99  << "; lhs variable=" << a.var_dims_.name_
+
100  << std::endl;
+
101  return false;
+
102  }
+
103 
+
104  // validate origin
+
105  var_origin lhs_origin = vm.get_origin(name);
+
106  if (lhs_origin != local_origin
+
107  && lhs_origin != origin_allowed) {
+
108  error_msgs << "attempt to assign variable in wrong block."
+
109  << " left-hand-side variable origin=";
+
110  print_var_origin(error_msgs,lhs_origin);
+
111  error_msgs << std::endl;
+
112  return false;
+
113  }
+
114 
+
115  // validate types
+
116  a.var_type_ = vm.get(name);
+
117  size_t lhs_var_num_dims = a.var_type_.dims_.size();
+
118  size_t num_index_dims = a.var_dims_.dims_.size();
+
119 
+ +
121  lhs_var_num_dims,
+
122  num_index_dims);
+
123 
+
124  if (lhs_type.is_ill_formed()) {
+
125  error_msgs << "too many indexes for variable "
+
126  << "; variable name = " << name
+
127  << "; num dimensions given = " << num_index_dims
+
128  << "; variable array dimensions = " << lhs_var_num_dims;
+
129  return false;
+
130  }
+
131  if (lhs_type.num_dims_ != a.expr_.expression_type().num_dims_) {
+
132  error_msgs << "mismatched dimensions on left- and right-hand side of assignment"
+
133  << "; left dims=" << lhs_type.num_dims_
+
134  << "; right dims=" << a.expr_.expression_type().num_dims_
+
135  << std::endl;
+
136  return false;
+
137  }
+
138 
+
139  base_expr_type lhs_base_type = lhs_type.base_type_;
+
140  base_expr_type rhs_base_type = a.expr_.expression_type().base_type_;
+
141  // int -> double promotion
+
142  bool types_compatible
+
143  = lhs_base_type == rhs_base_type
+
144  || ( lhs_base_type == DOUBLE_T && rhs_base_type == INT_T );
+
145  if (!types_compatible) {
+
146  error_msgs << "base type mismatch in assignment"
+
147  << "; left variable=" << a.var_dims_.name_
+
148  << "; left base type=";
+
149  write_base_expr_type(error_msgs,lhs_base_type);
+
150  error_msgs << "; right base type=";
+
151  write_base_expr_type(error_msgs,rhs_base_type);
+
152  error_msgs << std::endl;
+
153  return false;
+
154  }
+
155  return true;
+
156  }
+
157  };
+
158  boost::phoenix::function<validate_assignment> validate_assignment_f;
+
159 
+ +
161  template <typename T1, typename T2, typename T3>
+
162  struct result { typedef bool type; };
+
163 
+
164  bool is_double_return(const std::string& function_name,
+
165  const std::vector<expr_type>& arg_types,
+
166  std::ostream& error_msgs) const {
+ +
168  .get_result_type(function_name,arg_types,error_msgs)
+ +
170  }
+
171  static bool is_univariate(const expr_type& et) {
+
172  return et.num_dims_ == 0
+
173  && ( et.base_type_ == INT_T
+
174  || et.base_type_ == DOUBLE_T );
+
175  }
+
176  bool operator()(const sample& s,
+
177  const variable_map& var_map,
+
178  std::ostream& error_msgs) const {
+
179  std::vector<expr_type> arg_types;
+
180  arg_types.push_back(s.expr_.expression_type());
+
181  for (size_t i = 0; i < s.dist_.args_.size(); ++i)
+
182  arg_types.push_back(s.dist_.args_[i].expression_type());
+
183  std::string function_name(s.dist_.family_);
+
184  function_name += "_log";
+
185  if (!is_double_return(function_name,arg_types,error_msgs)) {
+
186  error_msgs << "unknown distribution=" << s.dist_.family_ << std::endl;
+
187  return false;
+
188  }
+
189  // test for LHS not being purely a variable
+
190  if (has_non_param_var(s.expr_,var_map)) {
+
191  // FIXME: really want to get line numbers in here too
+
192  error_msgs << "Warning (non-fatal):"
+
193  << " sampling statement (~) contains a transformed parameter or local variable."
+
194  << std::endl
+
195  << " You must increment lp__ with the log absolute determinant"
+
196  << " of the Jacobian of the transform."
+
197  << std::endl
+
198  << " Sampling Statement left-hand-side expression:"
+
199  << std::endl
+
200  << " ";
+
201  generate_expression(s.expr_,error_msgs);
+
202  error_msgs << " ~ ";
+
203  error_msgs << function_name << "(...)";
+
204  error_msgs << std::endl;
+
205  }
+
206  // validate that variable and params are univariate if truncated
+
207  if (s.truncation_.has_low() || s.truncation_.has_high()) {
+
208  if (!is_univariate(s.expr_.expression_type())) { // .num_dims_ > 0) {
+
209  error_msgs << "Outcomes in truncated distributions must be univariate."
+
210  << std::endl
+
211  << " Found outcome expression: ";
+
212  generate_expression(s.expr_,error_msgs);
+
213  error_msgs << std::endl
+
214  << " with non-univariate type: "
+
215  << s.expr_.expression_type()
+
216  << std::endl;
+
217  return false;
+
218  }
+
219  for (size_t i = 0; i < s.dist_.args_.size(); ++i)
+
220  if (!is_univariate(s.dist_.args_[i].expression_type())) { // .num_dims_ > 0) {
+
221  error_msgs << "Parameters in truncated distributions must be univariate."
+
222  << std::endl
+
223  << " Found parameter expression: ";
+
224  generate_expression(s.dist_.args_[i],error_msgs);
+
225  error_msgs << std::endl
+
226  << " with non-univariate type: "
+
227  << s.dist_.args_[i].expression_type()
+
228  << std::endl;
+
229  return false;
+
230  }
+
231  }
+
232  if (s.truncation_.has_low()
+ +
234  error_msgs << "Lower boundsin truncated distributions must be univariate."
+
235  << std::endl
+
236  << " Found lower bound expression: ";
+
237  generate_expression(s.truncation_.low_,error_msgs);
+
238  error_msgs << std::endl
+
239  << " with non-univariate type: "
+ +
241  << std::endl;
+
242  return false;
+
243  }
+
244  if (s.truncation_.has_high()
+ +
246  error_msgs << "Upper bounds in truncated distributions must be univariate."
+
247  << std::endl
+
248  << " Found upper bound expression: ";
+
249  generate_expression(s.truncation_.high_,error_msgs);
+
250  error_msgs << std::endl
+
251  << " with non-univariate type: "
+ +
253  << std::endl;
+
254  return false;
+
255  }
+
256 
+
257  if (s.truncation_.has_low()) {
+
258  std::vector<expr_type> arg_types_trunc(arg_types);
+
259  arg_types_trunc[0] = s.truncation_.low_.expression_type();
+
260  std::string function_name_cdf(s.dist_.family_);
+
261  function_name_cdf += "_cdf_log";
+
262  if (!is_double_return(function_name_cdf,arg_types_trunc,error_msgs)) {
+
263  error_msgs << "lower truncation not defined for specified arguments to "
+
264  << s.dist_.family_ << std::endl;
+
265  return false;
+
266  }
+
267  if (!is_double_return(function_name_cdf,arg_types,error_msgs)) {
+
268  error_msgs << "lower bound in truncation type does not match"
+
269  << " sampled variate in distribution's type"
+
270  << std::endl;
+
271  return false;
+
272  }
+
273  }
+
274  if (s.truncation_.has_high()) {
+
275  std::vector<expr_type> arg_types_trunc(arg_types);
+
276  arg_types_trunc[0] = s.truncation_.high_.expression_type();
+
277  std::string function_name_cdf(s.dist_.family_);
+
278  function_name_cdf += "_cdf_log";
+
279  if (!is_double_return(function_name_cdf,arg_types_trunc,error_msgs)) {
+
280  error_msgs << "upper truncation not defined for specified arguments to "
+
281  << s.dist_.family_ << std::endl;
+
282  return false;
+
283  }
+
284  if (!is_double_return(function_name_cdf,arg_types,error_msgs)) {
+
285  error_msgs << "upper bound in truncation type does not match"
+
286  << " sampled variate in distribution's type"
+
287  << std::endl;
+
288  return false;
+
289  }
+
290  }
+
291  return true;
+
292 
+
293  }
+
294  };
+
295  boost::phoenix::function<validate_sample> validate_sample_f;
+
296 
+ +
298  template <typename T1, typename T2, typename T3>
+
299  struct result { typedef void type; };
+
300  void operator()(bool& pass,
+
301  const stan::gm::expression& expr,
+
302  std::stringstream& error_msgs) const {
+
303  error_msgs << "Illegal statement beginning with expression parsed as"
+
304  << std::endl << " ";
+
305  generate_expression(expr.expr_,error_msgs);
+
306  error_msgs << std::endl
+
307  << "Not a legal assignment or sampling statement. Note that"
+
308  << std::endl
+
309  << " * Assignment statements only allow variables (with optional indexes) on the left;"
+
310  << std::endl
+
311  << " if you see an outer function logical_lt (<) with negated (-) second argument,"
+
312  << std::endl
+
313  << " it indicates an assignment statement A <- B with illegal left"
+
314  << std::endl
+
315  << " side A parsed as expression (A < (-B))."
+
316  << std::endl
+
317  << " * Sampling statements allow arbitrary value-denoting expressions on the left."
+
318  << std::endl
+
319  << std::endl << std::endl;
+
320  pass = false;
+
321  }
+
322  };
+
323  boost::phoenix::function<expression_as_statement> expression_as_statement_f;
+
324 
+
325  struct unscope_locals {
+
326  template <typename T1, typename T2>
+
327  struct result { typedef void type; };
+
328  void operator()(const std::vector<var_decl>& var_decls,
+
329  variable_map& vm) const {
+
330  for (size_t i = 0; i < var_decls.size(); ++i)
+
331  vm.remove(var_decls[i].name());
+
332  }
+
333  };
+
334  boost::phoenix::function<unscope_locals> unscope_locals_f;
+
335 
+ +
337  template <typename T1, typename T2, typename T3>
+
338  struct result { typedef bool type; };
+ +
340  const expression& e,
+
341  std::stringstream& error_msgs) const {
+
342  if (!e.expression_type().is_primitive()) {
+
343  error_msgs << "conditions in while statement must be primitive int or real;"
+
344  << " found type=" << e.expression_type() << std::endl;
+
345  return false;
+
346  }
+
347  ws.condition_ = e;
+
348  return true;
+
349  }
+
350  };
+
351  boost::phoenix::function<add_while_condition> add_while_condition_f;
+
352 
+
353  struct add_while_body {
+
354  template <typename T1, typename T2>
+
355  struct result { typedef void type; };
+ +
357  const statement& s) const {
+
358  ws.body_ = s;
+
359  }
+
360  };
+
361  boost::phoenix::function<add_while_body> add_while_body_f;
+
362 
+ +
364  template <typename T1, typename T2, typename T3, typename T4>
+
365  struct result { typedef bool type; };
+
366  bool operator()(const std::string& name,
+
367  std::string& name_local,
+
368  variable_map& vm,
+
369  std::stringstream& error_msgs) const {
+
370  name_local = name;
+
371  if (vm.exists(name)) {
+
372  error_msgs << "ERROR: loop variable already declared."
+
373  << " variable name=\"" << name << "\"" << std::endl;
+
374  return false; // variable exists
+
375  }
+
376  vm.add(name,
+
377  base_var_decl(name,std::vector<expression>(),
+
378  INT_T),
+
379  local_origin); // loop var acts like local
+
380  return true;
+
381  }
+
382  };
+
383  boost::phoenix::function<add_loop_identifier> add_loop_identifier_f;
+
384 
+ +
386  template <typename T1, typename T2>
+
387  struct result { typedef void type; };
+
388  void operator()(const std::string& name,
+
389  variable_map& vm) const {
+
390  vm.remove(name);
+
391  }
+
392  };
+
393  boost::phoenix::function<remove_loop_identifier> remove_loop_identifier_f;
+
394 
+ +
396  template <typename T1, typename T2>
+
397  struct result { typedef bool type; };
+
398 
+
399  bool operator()(const expression& expr,
+
400  std::stringstream& error_msgs) const {
+
401  if (!expr.expression_type().is_primitive_int()) {
+
402  error_msgs << "expression denoting integer required; found type="
+
403  << expr.expression_type() << std::endl;
+
404  return false;
+
405  }
+
406  return true;
+
407  }
+
408  };
+
409  boost::phoenix::function<validate_int_expr2> validate_int_expr2_f;
+
410 
+ +
412  template <typename T1, typename T2>
+
413  struct result { typedef bool type; };
+
414 
+
415  bool operator()(const bool& allow_sample,
+
416  std::stringstream& error_msgs) const {
+
417  if (!allow_sample) {
+
418  error_msgs << "ERROR: sampling only allowed in model."
+
419  << std::endl;
+
420  return false;
+
421  }
+
422  return true;
+
423  }
+
424  };
+
425  boost::phoenix::function<validate_allow_sample> validate_allow_sample_f;
+
426 
+
427 
+
428  template <typename Iterator>
+ +
430  std::stringstream& error_msgs)
+
431  : statement_grammar::base_type(statement_r),
+
432  var_map_(var_map),
+
433  error_msgs_(error_msgs),
+
434  expression_g(var_map,error_msgs),
+
435  var_decls_g(var_map,error_msgs),
+
436  statement_2_g(var_map,error_msgs,*this)
+
437  {
+
438  using boost::spirit::qi::_1;
+
439  using boost::spirit::qi::char_;
+
440  using boost::spirit::qi::eps;
+
441  using boost::spirit::qi::lexeme;
+
442  using boost::spirit::qi::lit;
+
443  using boost::spirit::qi::no_skip;
+
444  using boost::spirit::qi::_pass;
+
445  using boost::spirit::qi::_val;
+
446 
+
447  using boost::spirit::qi::labels::_a;
+
448  using boost::spirit::qi::labels::_r1;
+
449  using boost::spirit::qi::labels::_r2;
+
450 
+
451  // _r1 true if sample_r allowed (inherited)
+
452  // _r2 source of variables allowed for assignments
+
453  // set to true if sample_r are allowed
+
454  statement_r.name("statement");
+ +
456  %= no_op_statement_r // key ";"
+
457  | statement_seq_r(_r1,_r2) // key "{"
+
458  | increment_log_prob_statement_r(_r2) // key "increment"
+
459  | for_statement_r(_r1,_r2) // key "for"
+
460  | while_statement_r(_r1,_r2) // key "while"
+
461  | statement_2_g(_r1,_r2) // key "if"
+
462  | print_statement_r(_r2) // key "print"
+
463  | assignment_r(_r2) // lvalue "<-"
+
464  // [_pass = validate_assignment_f(_1,_r2,boost::phoenix::ref(var_map_),
+
465  // boost::phoenix::ref(error_msgs_))]
+
466  | sample_r(_r1,_r2) // expression "~"
+
467  | expression_g(_r2) // expression
+
468  [expression_as_statement_f(_pass,_1,boost::phoenix::ref(error_msgs_))]
+
469  ;
+
470 
+
471  // _r1, _r2 same as statement_r
+
472  statement_seq_r.name("sequence of statements");
+ +
474  %= lit('{')
+
475  > local_var_decls_r[_a = _1]
+
476  > *statement_r(_r1,_r2)
+
477  > lit('}')
+
478  > eps[unscope_locals_f(_a,boost::phoenix::ref(var_map_))]
+
479  ;
+
480 
+ +
482  %= var_decls_g(false,local_origin); // - constants
+
483 
+
484  increment_log_prob_statement_r.name("increment log prob statement");
+ +
486  = lit("increment_log_prob")
+
487  > lit('(')
+
488  > expression_g(_r1)
+
489  > lit(')')
+
490  > lit(';')
+
491  ;
+
492 
+
493  while_statement_r.name("while statement");
+ +
495  = lit("while")
+
496  > lit('(')
+
497  > expression_g(_r2)
+
498  [_pass = add_while_condition_f(_val,_1,
+
499  boost::phoenix::ref(error_msgs_))]
+
500  > lit(')')
+
501  > statement_r(_r1,_r2)
+
502  [add_while_body_f(_val,_1)]
+
503  ;
+
504 
+
505 
+
506  // _r1, _r2 same as statement_r
+
507  for_statement_r.name("for statement");
+ +
509  %= lit("for")
+
510  > lit('(')
+
511  > identifier_r [_pass
+
512  = add_loop_identifier_f(_1,_a,
+
513  boost::phoenix::ref(var_map_),
+
514  boost::phoenix::ref(error_msgs_))]
+
515  > lit("in")
+
516  > range_r(_r2)
+
517  > lit(')')
+
518  > statement_r(_r1,_r2)
+
519  > eps
+
520  [remove_loop_identifier_f(_a,boost::phoenix::ref(var_map_))];
+
521  ;
+
522 
+
523  print_statement_r.name("print statement");
+ +
525  %= lit("print")
+
526  > lit('(')
+
527  > (printable_r(_r1) % ',')
+
528  > lit(')');
+
529 
+
530  printable_r.name("printable");
+ + +
533  | expression_g(_r1);
+
534 
+
535  printable_string_r.name("printable quoted string");
+ +
537  %= lit('"')
+
538  > no_skip[*char_("a-zA-Z0-9/~!@#$%^&*()`_+-={}|[]:;'<>?,./ ")]
+
539  > lit('"');
+
540 
+
541  identifier_r.name("identifier");
+ +
543  %= (lexeme[char_("a-zA-Z")
+
544  >> *char_("a-zA-Z0-9_.")]);
+
545 
+
546  range_r.name("range expression pair, colon");
+
547  range_r
+
548  %= expression_g(_r1)
+
549  [_pass = validate_int_expr2_f(_1,boost::phoenix::ref(error_msgs_))]
+
550  >> lit(':')
+
551  >> expression_g(_r1)
+
552  [_pass = validate_int_expr2_f(_1,boost::phoenix::ref(error_msgs_))];
+
553 
+
554  assignment_r.name("variable assignment by expression");
+ +
556  %= ( var_lhs_r(_r1)
+
557  >> lit("<-") )
+
558  > expression_g(_r1)
+
559  > lit(';')
+
560  [_pass = validate_assignment_f(_val,_r1,boost::phoenix::ref(var_map_),
+
561  boost::phoenix::ref(error_msgs_))]
+
562  ;
+
563 
+
564  var_lhs_r.name("variable and array dimensions");
+
565  var_lhs_r
+
566  %= identifier_r
+
567  >> opt_dims_r(_r1);
+
568 
+
569  opt_dims_r.name("array dimensions (optional)");
+
570  opt_dims_r
+
571  %= * dims_r(_r1);
+
572 
+
573  dims_r.name("array dimensions");
+
574  dims_r
+
575  %= lit('[')
+
576  > (expression_g(_r1)
+
577  [_pass = validate_int_expr2_f(_1,boost::phoenix::ref(error_msgs_))]
+
578  % ',')
+
579  > lit(']')
+
580  ;
+
581 
+
582  // inherited _r1 = true if samples allowed as statements
+
583  sample_r.name("distribution of expression");
+
584  sample_r
+
585  %= ( expression_g(_r2)
+
586  >> lit('~') )
+
587  > eps
+
588  [_pass = validate_allow_sample_f(_r1,
+
589  boost::phoenix::ref(error_msgs_))]
+
590  > distribution_r(_r2)
+
591  > -truncation_range_r(_r2)
+
592  > lit(';')
+
593  > eps
+
594  [_pass = validate_sample_f(_val,
+
595  boost::phoenix::ref(var_map_),
+
596  boost::phoenix::ref(error_msgs_))]
+
597  ;
+
598  distribution_r.name("distribution and parameters");
+ +
600  %= ( identifier_r
+
601  >> lit('(')
+
602  >> -(expression_g(_r1) % ',') )
+
603  > lit(')');
+
604 
+
605  truncation_range_r.name("range pair");
+ +
607  %= lit('T')
+
608  > lit('[')
+
609  > -expression_g(_r1)
+
610  > lit(',')
+
611  > -expression_g(_r1)
+
612  > lit(']');
+
613 
+
614  no_op_statement_r.name("no op statement");
+ +
616  %= lit(';') [_val = no_op_statement()]; // ok to re-use instance
+
617 
+
618  }
+
619 
+
620  }
+
621 }
+
622 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/statement__grammar__inst_8cpp.html b/doc/api/html/statement__grammar__inst_8cpp.html new file mode 100644 index 00000000000..75f17aa9bd9 --- /dev/null +++ b/doc/api/html/statement__grammar__inst_8cpp.html @@ -0,0 +1,123 @@ + + + + + +Stan: src/stan/gm/grammars/statement_grammar_inst.cpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
statement_grammar_inst.cpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::gm
 Directed graphical model compiler.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/statement__grammar__inst_8cpp_source.html b/doc/api/html/statement__grammar__inst_8cpp_source.html new file mode 100644 index 00000000000..eebfd43b2bb --- /dev/null +++ b/doc/api/html/statement__grammar__inst_8cpp_source.html @@ -0,0 +1,115 @@ + + + + + +Stan: src/stan/gm/grammars/statement_grammar_inst.cpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
statement_grammar_inst.cpp
+
+
+Go to the documentation of this file.
+ +
3 
+
4 namespace stan {
+
5  namespace gm {
+
6  template struct statement_grammar<pos_iterator_t>;
+
7  }
+
8 }
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/std_8dox.html b/doc/api/html/std_8dox.html new file mode 100644 index 00000000000..a795f8b6704 --- /dev/null +++ b/doc/api/html/std_8dox.html @@ -0,0 +1,112 @@ + + + + + +Stan: src/doxygen/std.dox File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ +
+
+ +
+
src/doxygen/std.dox File Reference
+
+
+ + + + + +

+Namespaces

namespace  std
 Template specification of functions in std for Stan.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/stepsize__adaptation_8hpp.html b/doc/api/html/stepsize__adaptation_8hpp.html new file mode 100644 index 00000000000..bd9ea626c0d --- /dev/null +++ b/doc/api/html/stepsize__adaptation_8hpp.html @@ -0,0 +1,129 @@ + + + + + +Stan: src/stan/mcmc/stepsize_adaptation.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stepsize_adaptation.hpp File Reference
+
+
+
#include <cmath>
+#include <stan/mcmc/base_adaptation.hpp>
+
+

Go to the source code of this file.

+ + + + +

+Classes

class  stan::mcmc::stepsize_adaptation
 
+ + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::mcmc
 Markov chain Monte Carlo samplers.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/stepsize__adaptation_8hpp_source.html b/doc/api/html/stepsize__adaptation_8hpp_source.html new file mode 100644 index 00000000000..693e7af4fde --- /dev/null +++ b/doc/api/html/stepsize__adaptation_8hpp_source.html @@ -0,0 +1,185 @@ + + + + + +Stan: src/stan/mcmc/stepsize_adaptation.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stepsize_adaptation.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MCMC__STEPSIZE__ADAPTATION__BETA__
+
2 #define __STAN__MCMC__STEPSIZE__ADAPTATION__BETA__
+
3 
+
4 #include <cmath>
+ +
6 
+
7 namespace stan {
+
8 
+
9  namespace mcmc {
+
10 
+ +
12 
+
13  public:
+
14 
+
15  stepsize_adaptation(): _mu(0.5), _delta(0.5), _gamma(0.05),
+
16  _kappa(0.75), _t0(10)
+
17  { restart(); }
+
18 
+
19  void set_mu(double m) { _mu = m; }
+
20  void set_delta(double d) { if(d > 0 && d < 1) _delta = d; }
+
21  void set_gamma(double g) { if(g > 0) _gamma = g; }
+
22  void set_kappa(double k) { if(k > 0) _kappa = k; }
+
23  void set_t0(double t) { if(t > 0) _t0 = t; }
+
24 
+
25  double get_mu() { return _mu; }
+
26  double get_delta() { return _delta; }
+
27  double get_gamma() { return _gamma; }
+
28  double get_kappa() { return _kappa; }
+
29  double get_t0() { return _t0; }
+
30 
+
31  void restart() {
+
32  _counter = 0;
+
33  _s_bar = 0;
+
34  _x_bar = 0;
+
35  }
+
36 
+
37  void learn_stepsize(double& epsilon, double adapt_stat) {
+
38 
+
39  ++_counter;
+
40 
+
41  adapt_stat = adapt_stat > 1 ? 1 : adapt_stat;
+
42 
+
43  // Nesterov Dual-Averaging of log(epsilon)
+
44  const double eta = 1.0 / (_counter + _t0);
+
45 
+
46  _s_bar = (1.0 - eta) * _s_bar + eta * (_delta - adapt_stat);
+
47 
+
48  const double x = _mu - _s_bar * std::sqrt(_counter) / _gamma;
+
49  const double x_eta = std::pow(_counter, - _kappa);
+
50 
+
51  _x_bar = (1.0 - x_eta) * _x_bar + x_eta * x;
+
52 
+
53  epsilon = std::exp(x);
+
54 
+
55  }
+
56 
+
57  void complete_adaptation(double& epsilon) {
+
58  epsilon = std::exp(_x_bar);
+
59  }
+
60 
+
61  protected:
+
62 
+
63  double _counter; // Adaptation iteration
+
64  double _s_bar; // Moving average statistic
+
65  double _x_bar; // Moving average parameter
+
66  double _mu; // Asymptotic mean of parameter
+
67  double _delta; // Target value of statistic
+
68  double _gamma; // Adaptation scaling
+
69  double _kappa; // Adaptation shrinkage
+
70  double _t0; // Effective starting iteration
+
71 
+
72  };
+
73 
+
74  } // mcmc
+
75 
+
76 } // stan
+
77 
+
78 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/stepsize__adapter_8hpp.html b/doc/api/html/stepsize__adapter_8hpp.html new file mode 100644 index 00000000000..9d4229c817b --- /dev/null +++ b/doc/api/html/stepsize__adapter_8hpp.html @@ -0,0 +1,129 @@ + + + + + +Stan: src/stan/mcmc/stepsize_adapter.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stepsize_adapter.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + +

+Classes

class  stan::mcmc::stepsize_adapter
 
+ + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::mcmc
 Markov chain Monte Carlo samplers.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/stepsize__adapter_8hpp_source.html b/doc/api/html/stepsize__adapter_8hpp_source.html new file mode 100644 index 00000000000..839fe82e759 --- /dev/null +++ b/doc/api/html/stepsize__adapter_8hpp_source.html @@ -0,0 +1,138 @@ + + + + + +Stan: src/stan/mcmc/stepsize_adapter.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stepsize_adapter.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MCMC__STEPSIZE__ADAPTER__BETA__
+
2 #define __STAN__MCMC__STEPSIZE__ADAPTER__BETA__
+
3 
+ + +
6 
+
7 namespace stan {
+
8 
+
9  namespace mcmc {
+
10 
+ +
12 
+
13  public:
+
14 
+ +
16 
+ +
18  return _stepsize_adaptation;
+
19  }
+
20 
+
21  protected:
+
22 
+ +
24 
+
25  };
+
26 
+
27  } // mcmc
+
28 
+
29 } // stan
+
30 
+
31 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/stepsize__covar__adapter_8hpp.html b/doc/api/html/stepsize__covar__adapter_8hpp.html new file mode 100644 index 00000000000..ec9c4a21680 --- /dev/null +++ b/doc/api/html/stepsize__covar__adapter_8hpp.html @@ -0,0 +1,130 @@ + + + + + +Stan: src/stan/mcmc/stepsize_covar_adapter.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stepsize_covar_adapter.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + +

+Classes

class  stan::mcmc::stepsize_covar_adapter
 
+ + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::mcmc
 Markov chain Monte Carlo samplers.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/stepsize__covar__adapter_8hpp_source.html b/doc/api/html/stepsize__covar__adapter_8hpp_source.html new file mode 100644 index 00000000000..ea3415b14b5 --- /dev/null +++ b/doc/api/html/stepsize__covar__adapter_8hpp_source.html @@ -0,0 +1,157 @@ + + + + + +Stan: src/stan/mcmc/stepsize_covar_adapter.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stepsize_covar_adapter.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MCMC__STEPSIZE__COVAR__ADAPTER__BETA__
+
2 #define __STAN__MCMC__STEPSIZE__COVAR__ADAPTER__BETA__
+
3 
+ + + +
7 
+
8 namespace stan {
+
9 
+
10  namespace mcmc {
+
11 
+ +
13 
+
14  public:
+
15 
+ +
17  {};
+
18 
+ +
20  return _stepsize_adaptation;
+
21  }
+
22 
+ +
24  return _covar_adaptation;
+
25  }
+
26 
+
27  void set_window_params(unsigned int num_warmup,
+
28  unsigned int init_buffer,
+
29  unsigned int term_buffer,
+
30  unsigned int base_window,
+
31  std::ostream* e = 0) {
+ +
33  init_buffer,
+
34  term_buffer,
+
35  base_window,
+
36  e);
+
37  }
+
38 
+
39  protected:
+
40 
+ + +
43 
+
44  };
+
45 
+
46  } // mcmc
+
47 
+
48 } // stan
+
49 
+
50 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/stepsize__var__adapter_8hpp.html b/doc/api/html/stepsize__var__adapter_8hpp.html new file mode 100644 index 00000000000..8b36c2fc208 --- /dev/null +++ b/doc/api/html/stepsize__var__adapter_8hpp.html @@ -0,0 +1,130 @@ + + + + + +Stan: src/stan/mcmc/stepsize_var_adapter.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stepsize_var_adapter.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + +

+Classes

class  stan::mcmc::stepsize_var_adapter
 
+ + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::mcmc
 Markov chain Monte Carlo samplers.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/stepsize__var__adapter_8hpp_source.html b/doc/api/html/stepsize__var__adapter_8hpp_source.html new file mode 100644 index 00000000000..eb5858e796f --- /dev/null +++ b/doc/api/html/stepsize__var__adapter_8hpp_source.html @@ -0,0 +1,158 @@ + + + + + +Stan: src/stan/mcmc/stepsize_var_adapter.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stepsize_var_adapter.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MCMC__STEPSIZE__VAR__ADAPTER__BETA__
+
2 #define __STAN__MCMC__STEPSIZE__VAR__ADAPTER__BETA__
+
3 
+ + + +
7 
+
8 namespace stan {
+
9 
+
10  namespace mcmc {
+
11 
+ +
13 
+
14  public:
+
15 
+ +
17  {};
+
18 
+ +
20  return _stepsize_adaptation;
+
21  }
+
22 
+ +
24  return _var_adaptation;
+
25  }
+
26 
+
27  void set_window_params(unsigned int num_warmup,
+
28  unsigned int init_buffer,
+
29  unsigned int term_buffer,
+
30  unsigned int base_window,
+
31  std::ostream* e = 0) {
+ +
33  init_buffer,
+
34  term_buffer,
+
35  base_window,
+
36  e);
+
37  }
+
38 
+
39 
+
40  protected:
+
41 
+ + +
44 
+
45  };
+
46 
+
47  } // mcmc
+
48 
+
49 } // stan
+
50 
+
51 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/stored__gradient__vari_8hpp.html b/doc/api/html/stored__gradient__vari_8hpp.html new file mode 100644 index 00000000000..b8f277c6fff --- /dev/null +++ b/doc/api/html/stored__gradient__vari_8hpp.html @@ -0,0 +1,129 @@ + + + + + +Stan: src/stan/agrad/rev/matrix/stored_gradient_vari.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stored_gradient_vari.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + +

+Classes

class  stan::agrad::stored_gradient_vari
 A var implementation that stores the daughter variable implementation pointers and the partial derivative with respect to the result explicitly in arrays constructed on the auto-diff memory stack. More...
 
+ + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/stored__gradient__vari_8hpp_source.html b/doc/api/html/stored__gradient__vari_8hpp_source.html new file mode 100644 index 00000000000..66bbfbbcf6f --- /dev/null +++ b/doc/api/html/stored__gradient__vari_8hpp_source.html @@ -0,0 +1,146 @@ + + + + + +Stan: src/stan/agrad/rev/matrix/stored_gradient_vari.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stored_gradient_vari.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__REV__MATRIX__STORED_GRADIENT_HPP__
+
2 #define __STAN__AGRAD__REV__MATRIX__STORED_GRADIENT_HPP__
+
3 
+ +
5 
+
6 namespace stan {
+
7 
+
8  namespace agrad {
+
9 
+
18  class stored_gradient_vari : public vari {
+
19 
+
20  protected:
+
21 
+
22  size_t size_;
+ +
24  double* partials_;
+
25 
+
26  public:
+
27 
+
38  stored_gradient_vari(double value,
+
39  size_t size,
+
40  vari** dtrs,
+
41  double* partials)
+
42  : vari(value),
+
43  size_(size),
+
44  dtrs_(dtrs),
+
45  partials_(partials) {
+
46  }
+
47 
+
52  void chain() {
+
53  for (size_t i = 0; i < size_; ++i)
+
54  dtrs_[i]->adj_ += adj_ * partials_[i];
+
55  }
+
56  };
+
57 
+
58  }
+
59 }
+
60 
+
61 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/struct_eigen_1_1_num_traits_3_01stan_1_1agrad_1_1var_01_4-members.html b/doc/api/html/struct_eigen_1_1_num_traits_3_01stan_1_1agrad_1_1var_01_4-members.html new file mode 100644 index 00000000000..6651723758a --- /dev/null +++ b/doc/api/html/struct_eigen_1_1_num_traits_3_01stan_1_1agrad_1_1var_01_4-members.html @@ -0,0 +1,127 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
Eigen::NumTraits< stan::agrad::var > Member List
+
+ +
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/struct_eigen_1_1_num_traits_3_01stan_1_1agrad_1_1var_01_4.html b/doc/api/html/struct_eigen_1_1_num_traits_3_01stan_1_1agrad_1_1var_01_4.html new file mode 100644 index 00000000000..b468c2dd488 --- /dev/null +++ b/doc/api/html/struct_eigen_1_1_num_traits_3_01stan_1_1agrad_1_1var_01_4.html @@ -0,0 +1,371 @@ + + + + + +Stan: Eigen::NumTraits< stan::agrad::var > Struct Template Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
Eigen::NumTraits< stan::agrad::var > Struct Template Reference
+
+
+ +

Numerical traits template override for Eigen for automatic gradient variables. + More...

+ +

#include <Eigen_NumTraits.hpp>

+ + + + + + + + + + + + + + +

+Public Types

enum  {
+  IsInteger = 0, +IsSigned = 1, +IsComplex = 0, +RequireInitialization = 0, +
+  ReadCost = 1, +AddCost = 1, +MulCost = 1, +HasFloatingPoint = 1 +
+ }
 Properties for automatic differentiation variables read by Eigen matrix library. More...
 
typedef stan::agrad::var Real
 Real-valued variables.
 
typedef stan::agrad::var NonInteger
 Non-integer valued variables.
 
typedef stan::agrad::var Nested
 Nested variables.
 
+ + + + + + + + + + + + + +

+Static Public Member Functions

static Real epsilon ()
 Return standard library's epsilon for double-precision floating point, std::numeric_limits<double>::epsilon().
 
static Real dummy_precision ()
 Return dummy precision.
 
static Real highest ()
 Return standard library's highest for double-precision floating point, std::numeric_limits<double>max().
 
static Real lowest ()
 Return standard library's lowest for double-precision floating point, &#45;std::numeric_limits<double>max().
 
+

Detailed Description

+

template<>
+struct Eigen::NumTraits< stan::agrad::var >

+ +

Numerical traits template override for Eigen for automatic gradient variables.

+ +

Definition at line 65 of file Eigen_NumTraits.hpp.

+

Member Typedef Documentation

+ +
+
+ + + + +
typedef stan::agrad::var Eigen::NumTraits< stan::agrad::var >::Nested
+
+ +

Nested variables.

+

Required for numerical traits.

+ +

Definition at line 85 of file Eigen_NumTraits.hpp.

+ +
+
+ +
+
+ + + + +
typedef stan::agrad::var Eigen::NumTraits< stan::agrad::var >::NonInteger
+
+ +

Non-integer valued variables.

+

Required for numerical traits.

+ +

Definition at line 78 of file Eigen_NumTraits.hpp.

+ +
+
+ +
+
+ + + + +
typedef stan::agrad::var Eigen::NumTraits< stan::agrad::var >::Real
+
+ +

Real-valued variables.

+

Required for numerical traits.

+ +

Definition at line 71 of file Eigen_NumTraits.hpp.

+ +
+
+

Member Enumeration Documentation

+ +
+
+ + + + +
anonymous enum
+
+ +

Properties for automatic differentiation variables read by Eigen matrix library.

+
Enumerator:
+ + + + + + + + +
IsInteger  +
IsSigned  +
IsComplex  +
RequireInitialization  +
ReadCost  +
AddCost  +
MulCost  +
HasFloatingPoint  +
+
+
+ +

Definition at line 128 of file Eigen_NumTraits.hpp.

+ +
+
+

Member Function Documentation

+ +
+
+ + + + + +
+ + + + + + + +
static Real Eigen::NumTraits< stan::agrad::var >::dummy_precision ()
+
+inlinestatic
+
+ +

Return dummy precision.

+ +

Definition at line 100 of file Eigen_NumTraits.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
static Real Eigen::NumTraits< stan::agrad::var >::epsilon ()
+
+inlinestatic
+
+ +

Return standard library's epsilon for double-precision floating point, std::numeric_limits<double>::epsilon().

+
Returns
Same epsilon as a double.
+ +

Definition at line 93 of file Eigen_NumTraits.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
static Real Eigen::NumTraits< stan::agrad::var >::highest ()
+
+inlinestatic
+
+ +

Return standard library's highest for double-precision floating point, std::numeric_limits<double>max().

+
Returns
Same highest value as a double.
+ +

Definition at line 110 of file Eigen_NumTraits.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
static Real Eigen::NumTraits< stan::agrad::var >::lowest ()
+
+inlinestatic
+
+ +

Return standard library's lowest for double-precision floating point, &#45;std::numeric_limits<double>max().

+
Returns
Same lowest value as a double.
+ +

Definition at line 120 of file Eigen_NumTraits.hpp.

+ +
+
+
The documentation for this struct was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/struct_eigen_1_1internal_1_1general__matrix__matrix__product_3_01_index_00_01stan_1_1agrad_1_1va753d9f8f3d54fbedc22d657246672d94.html b/doc/api/html/struct_eigen_1_1internal_1_1general__matrix__matrix__product_3_01_index_00_01stan_1_1agrad_1_1va753d9f8f3d54fbedc22d657246672d94.html new file mode 100644 index 00000000000..779d3ccfb94 --- /dev/null +++ b/doc/api/html/struct_eigen_1_1internal_1_1general__matrix__matrix__product_3_01_index_00_01stan_1_1agrad_1_1va753d9f8f3d54fbedc22d657246672d94.html @@ -0,0 +1,116 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
Eigen::internal::general_matrix_matrix_product< Index, stan::agrad::var, LhsStorageOrder, ConjugateLhs, stan::agrad::var, RhsStorageOrder, ConjugateRhs, ColMajor > Member List
+
+ +
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/struct_eigen_1_1internal_1_1general__matrix__matrix__product_3_01_index_00_01stan_1_1agrad_1_1va9b485de9571b6e46d7a64aff43a6d9d3.html b/doc/api/html/struct_eigen_1_1internal_1_1general__matrix__matrix__product_3_01_index_00_01stan_1_1agrad_1_1va9b485de9571b6e46d7a64aff43a6d9d3.html new file mode 100644 index 00000000000..91d2ab66696 --- /dev/null +++ b/doc/api/html/struct_eigen_1_1internal_1_1general__matrix__matrix__product_3_01_index_00_01stan_1_1agrad_1_1va9b485de9571b6e46d7a64aff43a6d9d3.html @@ -0,0 +1,289 @@ + + + + + +Stan: Eigen::internal::general_matrix_matrix_product< Index, stan::agrad::var, LhsStorageOrder, ConjugateLhs, stan::agrad::var, RhsStorageOrder, ConjugateRhs, ColMajor > Struct Template Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
Eigen::internal::general_matrix_matrix_product< Index, stan::agrad::var, LhsStorageOrder, ConjugateLhs, stan::agrad::var, RhsStorageOrder, ConjugateRhs, ColMajor > Struct Template Reference
+
+
+ +

#include <Eigen_NumTraits.hpp>

+ + + + + + + + +

+Public Types

typedef stan::agrad::var LhsScalar
 
typedef stan::agrad::var RhsScalar
 
typedef scalar_product_traits
+< LhsScalar, RhsScalar >
+::ReturnType 
ResScalar
 
+ + + +

+Static Public Member Functions

static void run (Index rows, Index cols, Index depth, const LhsScalar *_lhs, Index lhsStride, const RhsScalar *_rhs, Index rhsStride, ResScalar *res, Index resStride, const ResScalar &alpha, level3_blocking< LhsScalar, RhsScalar > &, GemmParallelInfo< Index > *)
 
+

Detailed Description

+

template<typename Index, int LhsStorageOrder, bool ConjugateLhs, int RhsStorageOrder, bool ConjugateRhs>
+struct Eigen::internal::general_matrix_matrix_product< Index, stan::agrad::var, LhsStorageOrder, ConjugateLhs, stan::agrad::var, RhsStorageOrder, ConjugateRhs, ColMajor >

+ + +

Definition at line 216 of file Eigen_NumTraits.hpp.

+

Member Typedef Documentation

+ +
+
+
+template<typename Index , int LhsStorageOrder, bool ConjugateLhs, int RhsStorageOrder, bool ConjugateRhs>
+ + + + +
typedef stan::agrad::var Eigen::internal::general_matrix_matrix_product< Index, stan::agrad::var, LhsStorageOrder, ConjugateLhs, stan::agrad::var, RhsStorageOrder, ConjugateRhs, ColMajor >::LhsScalar
+
+ +

Definition at line 218 of file Eigen_NumTraits.hpp.

+ +
+
+ +
+
+
+template<typename Index , int LhsStorageOrder, bool ConjugateLhs, int RhsStorageOrder, bool ConjugateRhs>
+ + + + +
typedef scalar_product_traits<LhsScalar, RhsScalar>::ReturnType Eigen::internal::general_matrix_matrix_product< Index, stan::agrad::var, LhsStorageOrder, ConjugateLhs, stan::agrad::var, RhsStorageOrder, ConjugateRhs, ColMajor >::ResScalar
+
+ +

Definition at line 220 of file Eigen_NumTraits.hpp.

+ +
+
+ +
+
+
+template<typename Index , int LhsStorageOrder, bool ConjugateLhs, int RhsStorageOrder, bool ConjugateRhs>
+ + + + +
typedef stan::agrad::var Eigen::internal::general_matrix_matrix_product< Index, stan::agrad::var, LhsStorageOrder, ConjugateLhs, stan::agrad::var, RhsStorageOrder, ConjugateRhs, ColMajor >::RhsScalar
+
+ +

Definition at line 219 of file Eigen_NumTraits.hpp.

+ +
+
+

Member Function Documentation

+ +
+
+
+template<typename Index , int LhsStorageOrder, bool ConjugateLhs, int RhsStorageOrder, bool ConjugateRhs>
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
static void Eigen::internal::general_matrix_matrix_product< Index, stan::agrad::var, LhsStorageOrder, ConjugateLhs, stan::agrad::var, RhsStorageOrder, ConjugateRhs, ColMajor >::run (Index rows,
Index cols,
Index depth,
const LhsScalar_lhs,
Index lhsStride,
const RhsScalar_rhs,
Index rhsStride,
ResScalarres,
Index resStride,
const ResScalaralpha,
level3_blocking< LhsScalar, RhsScalar > & ,
GemmParallelInfo< Index > *  
)
+
+inlinestatic
+
+ +

Definition at line 221 of file Eigen_NumTraits.hpp.

+ +
+
+
The documentation for this struct was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/struct_eigen_1_1internal_1_1general__matrix__vector__product_3_01_index_00_01stan_1_1agrad_1_1va16fe21f36cb92096f2fc63d419437421.html b/doc/api/html/struct_eigen_1_1internal_1_1general__matrix__vector__product_3_01_index_00_01stan_1_1agrad_1_1va16fe21f36cb92096f2fc63d419437421.html new file mode 100644 index 00000000000..a1c38540d86 --- /dev/null +++ b/doc/api/html/struct_eigen_1_1internal_1_1general__matrix__vector__product_3_01_index_00_01stan_1_1agrad_1_1va16fe21f36cb92096f2fc63d419437421.html @@ -0,0 +1,117 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
Eigen::internal::general_matrix_vector_product< Index, stan::agrad::var, ColMajor, ConjugateLhs, stan::agrad::var, ConjugateRhs > Member List
+
+ +
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/struct_eigen_1_1internal_1_1general__matrix__vector__product_3_01_index_00_01stan_1_1agrad_1_1va3d1bc254c18abbf59c1006f7e7cbcbac.html b/doc/api/html/struct_eigen_1_1internal_1_1general__matrix__vector__product_3_01_index_00_01stan_1_1agrad_1_1va3d1bc254c18abbf59c1006f7e7cbcbac.html new file mode 100644 index 00000000000..7dfad2661a1 --- /dev/null +++ b/doc/api/html/struct_eigen_1_1internal_1_1general__matrix__vector__product_3_01_index_00_01stan_1_1agrad_1_1va3d1bc254c18abbf59c1006f7e7cbcbac.html @@ -0,0 +1,117 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
Eigen::internal::general_matrix_vector_product< Index, stan::agrad::var, RowMajor, ConjugateLhs, stan::agrad::var, ConjugateRhs > Member List
+
+ +
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/struct_eigen_1_1internal_1_1general__matrix__vector__product_3_01_index_00_01stan_1_1agrad_1_1va44da5f98e1caea9523bacbd5bdc025fe.html b/doc/api/html/struct_eigen_1_1internal_1_1general__matrix__vector__product_3_01_index_00_01stan_1_1agrad_1_1va44da5f98e1caea9523bacbd5bdc025fe.html new file mode 100644 index 00000000000..5ca438796ca --- /dev/null +++ b/doc/api/html/struct_eigen_1_1internal_1_1general__matrix__vector__product_3_01_index_00_01stan_1_1agrad_1_1va44da5f98e1caea9523bacbd5bdc025fe.html @@ -0,0 +1,301 @@ + + + + + +Stan: Eigen::internal::general_matrix_vector_product< Index, stan::agrad::var, ColMajor, ConjugateLhs, stan::agrad::var, ConjugateRhs > Struct Template Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
Eigen::internal::general_matrix_vector_product< Index, stan::agrad::var, ColMajor, ConjugateLhs, stan::agrad::var, ConjugateRhs > Struct Template Reference
+
+
+ +

Override matrix-vector and matrix-matrix products to use more efficient implementation. + More...

+ +

#include <Eigen_NumTraits.hpp>

+ + + + + + + + + + +

+Public Types

enum  { LhsStorageOrder = ColMajor + }
 
typedef stan::agrad::var LhsScalar
 
typedef stan::agrad::var RhsScalar
 
typedef scalar_product_traits
+< LhsScalar, RhsScalar >
+::ReturnType 
ResScalar
 
+ + + +

+Static Public Member Functions

static EIGEN_DONT_INLINE void run (Index rows, Index cols, const LhsScalar *lhs, Index lhsStride, const RhsScalar *rhs, Index rhsIncr, ResScalar *res, Index resIncr, const ResScalar &alpha)
 
+

Detailed Description

+

template<typename Index, bool ConjugateLhs, bool ConjugateRhs>
+struct Eigen::internal::general_matrix_vector_product< Index, stan::agrad::var, ColMajor, ConjugateLhs, stan::agrad::var, ConjugateRhs >

+ +

Override matrix-vector and matrix-matrix products to use more efficient implementation.

+ +

Definition at line 178 of file Eigen_NumTraits.hpp.

+

Member Typedef Documentation

+ +
+
+
+template<typename Index , bool ConjugateLhs, bool ConjugateRhs>
+ + + + +
typedef stan::agrad::var Eigen::internal::general_matrix_vector_product< Index, stan::agrad::var, ColMajor, ConjugateLhs, stan::agrad::var, ConjugateRhs >::LhsScalar
+
+ +

Definition at line 180 of file Eigen_NumTraits.hpp.

+ +
+
+ +
+
+
+template<typename Index , bool ConjugateLhs, bool ConjugateRhs>
+ + + + +
typedef scalar_product_traits<LhsScalar, RhsScalar>::ReturnType Eigen::internal::general_matrix_vector_product< Index, stan::agrad::var, ColMajor, ConjugateLhs, stan::agrad::var, ConjugateRhs >::ResScalar
+
+ +

Definition at line 182 of file Eigen_NumTraits.hpp.

+ +
+
+ +
+
+
+template<typename Index , bool ConjugateLhs, bool ConjugateRhs>
+ + + + +
typedef stan::agrad::var Eigen::internal::general_matrix_vector_product< Index, stan::agrad::var, ColMajor, ConjugateLhs, stan::agrad::var, ConjugateRhs >::RhsScalar
+
+ +

Definition at line 181 of file Eigen_NumTraits.hpp.

+ +
+
+

Member Enumeration Documentation

+ +
+
+
+template<typename Index , bool ConjugateLhs, bool ConjugateRhs>
+ + + + +
anonymous enum
+
+
Enumerator:
+ +
LhsStorageOrder  +
+
+
+ +

Definition at line 183 of file Eigen_NumTraits.hpp.

+ +
+
+

Member Function Documentation

+ +
+
+
+template<typename Index , bool ConjugateLhs, bool ConjugateRhs>
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
static EIGEN_DONT_INLINE void Eigen::internal::general_matrix_vector_product< Index, stan::agrad::var, ColMajor, ConjugateLhs, stan::agrad::var, ConjugateRhs >::run (Index rows,
Index cols,
const LhsScalarlhs,
Index lhsStride,
const RhsScalarrhs,
Index rhsIncr,
ResScalarres,
Index resIncr,
const ResScalaralpha 
)
+
+inlinestatic
+
+ +

Definition at line 185 of file Eigen_NumTraits.hpp.

+ +
+
+
The documentation for this struct was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/struct_eigen_1_1internal_1_1general__matrix__vector__product_3_01_index_00_01stan_1_1agrad_1_1vacd54cabc78c49ca719650381b68b105e.html b/doc/api/html/struct_eigen_1_1internal_1_1general__matrix__vector__product_3_01_index_00_01stan_1_1agrad_1_1vacd54cabc78c49ca719650381b68b105e.html new file mode 100644 index 00000000000..5a9e49dc447 --- /dev/null +++ b/doc/api/html/struct_eigen_1_1internal_1_1general__matrix__vector__product_3_01_index_00_01stan_1_1agrad_1_1vacd54cabc78c49ca719650381b68b105e.html @@ -0,0 +1,297 @@ + + + + + +Stan: Eigen::internal::general_matrix_vector_product< Index, stan::agrad::var, RowMajor, ConjugateLhs, stan::agrad::var, ConjugateRhs > Struct Template Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
Eigen::internal::general_matrix_vector_product< Index, stan::agrad::var, RowMajor, ConjugateLhs, stan::agrad::var, ConjugateRhs > Struct Template Reference
+
+
+ +

#include <Eigen_NumTraits.hpp>

+ + + + + + + + + + +

+Public Types

enum  { LhsStorageOrder = RowMajor + }
 
typedef stan::agrad::var LhsScalar
 
typedef stan::agrad::var RhsScalar
 
typedef scalar_product_traits
+< LhsScalar, RhsScalar >
+::ReturnType 
ResScalar
 
+ + + +

+Static Public Member Functions

static EIGEN_DONT_INLINE void run (Index rows, Index cols, const LhsScalar *lhs, Index lhsStride, const RhsScalar *rhs, Index rhsIncr, ResScalar *res, Index resIncr, const RhsScalar &alpha)
 
+

Detailed Description

+

template<typename Index, bool ConjugateLhs, bool ConjugateRhs>
+struct Eigen::internal::general_matrix_vector_product< Index, stan::agrad::var, RowMajor, ConjugateLhs, stan::agrad::var, ConjugateRhs >

+ + +

Definition at line 197 of file Eigen_NumTraits.hpp.

+

Member Typedef Documentation

+ +
+
+
+template<typename Index , bool ConjugateLhs, bool ConjugateRhs>
+ + + + +
typedef stan::agrad::var Eigen::internal::general_matrix_vector_product< Index, stan::agrad::var, RowMajor, ConjugateLhs, stan::agrad::var, ConjugateRhs >::LhsScalar
+
+ +

Definition at line 199 of file Eigen_NumTraits.hpp.

+ +
+
+ +
+
+
+template<typename Index , bool ConjugateLhs, bool ConjugateRhs>
+ + + + +
typedef scalar_product_traits<LhsScalar, RhsScalar>::ReturnType Eigen::internal::general_matrix_vector_product< Index, stan::agrad::var, RowMajor, ConjugateLhs, stan::agrad::var, ConjugateRhs >::ResScalar
+
+ +

Definition at line 201 of file Eigen_NumTraits.hpp.

+ +
+
+ +
+
+
+template<typename Index , bool ConjugateLhs, bool ConjugateRhs>
+ + + + +
typedef stan::agrad::var Eigen::internal::general_matrix_vector_product< Index, stan::agrad::var, RowMajor, ConjugateLhs, stan::agrad::var, ConjugateRhs >::RhsScalar
+
+ +

Definition at line 200 of file Eigen_NumTraits.hpp.

+ +
+
+

Member Enumeration Documentation

+ +
+
+
+template<typename Index , bool ConjugateLhs, bool ConjugateRhs>
+ + + + +
anonymous enum
+
+
Enumerator:
+ +
LhsStorageOrder  +
+
+
+ +

Definition at line 202 of file Eigen_NumTraits.hpp.

+ +
+
+

Member Function Documentation

+ +
+
+
+template<typename Index , bool ConjugateLhs, bool ConjugateRhs>
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
static EIGEN_DONT_INLINE void Eigen::internal::general_matrix_vector_product< Index, stan::agrad::var, RowMajor, ConjugateLhs, stan::agrad::var, ConjugateRhs >::run (Index rows,
Index cols,
const LhsScalarlhs,
Index lhsStride,
const RhsScalarrhs,
Index rhsIncr,
ResScalarres,
Index resIncr,
const RhsScalaralpha 
)
+
+inlinestatic
+
+ +

Definition at line 204 of file Eigen_NumTraits.hpp.

+ +
+
+
The documentation for this struct was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/struct_eigen_1_1internal_1_1scalar__product__traits_3_01double_00_01stan_1_1agrad_1_1var_01_4-members.html b/doc/api/html/struct_eigen_1_1internal_1_1scalar__product__traits_3_01double_00_01stan_1_1agrad_1_1var_01_4-members.html new file mode 100644 index 00000000000..c6fdc6cbb94 --- /dev/null +++ b/doc/api/html/struct_eigen_1_1internal_1_1scalar__product__traits_3_01double_00_01stan_1_1agrad_1_1var_01_4-members.html @@ -0,0 +1,113 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
Eigen::internal::scalar_product_traits< double, stan::agrad::var > Member List
+
+ +
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/struct_eigen_1_1internal_1_1scalar__product__traits_3_01double_00_01stan_1_1agrad_1_1var_01_4.html b/doc/api/html/struct_eigen_1_1internal_1_1scalar__product__traits_3_01double_00_01stan_1_1agrad_1_1var_01_4.html new file mode 100644 index 00000000000..71cc15cc267 --- /dev/null +++ b/doc/api/html/struct_eigen_1_1internal_1_1scalar__product__traits_3_01double_00_01stan_1_1agrad_1_1var_01_4.html @@ -0,0 +1,148 @@ + + + + + +Stan: Eigen::internal::scalar_product_traits< double, stan::agrad::var > Struct Template Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
Eigen::internal::scalar_product_traits< double, stan::agrad::var > Struct Template Reference
+
+
+ +

Scalar product traits override for Eigen for automatic gradient variables. + More...

+ +

#include <Eigen_NumTraits.hpp>

+ + + + +

+Public Types

typedef stan::agrad::var ReturnType
 
+

Detailed Description

+

template<>
+struct Eigen::internal::scalar_product_traits< double, stan::agrad::var >

+ +

Scalar product traits override for Eigen for automatic gradient variables.

+ +

Definition at line 170 of file Eigen_NumTraits.hpp.

+

Member Typedef Documentation

+ +
+
+ + + + +
typedef stan::agrad::var Eigen::internal::scalar_product_traits< double, stan::agrad::var >::ReturnType
+
+ +

Definition at line 171 of file Eigen_NumTraits.hpp.

+ +
+
+
The documentation for this struct was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/struct_eigen_1_1internal_1_1scalar__product__traits_3_01stan_1_1agrad_1_1var_00_01double_01_4-members.html b/doc/api/html/struct_eigen_1_1internal_1_1scalar__product__traits_3_01stan_1_1agrad_1_1var_00_01double_01_4-members.html new file mode 100644 index 00000000000..790faeaa837 --- /dev/null +++ b/doc/api/html/struct_eigen_1_1internal_1_1scalar__product__traits_3_01stan_1_1agrad_1_1var_00_01double_01_4-members.html @@ -0,0 +1,113 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
Eigen::internal::scalar_product_traits< stan::agrad::var, double > Member List
+
+ +
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/struct_eigen_1_1internal_1_1scalar__product__traits_3_01stan_1_1agrad_1_1var_00_01double_01_4.html b/doc/api/html/struct_eigen_1_1internal_1_1scalar__product__traits_3_01stan_1_1agrad_1_1var_00_01double_01_4.html new file mode 100644 index 00000000000..ee8253b85ba --- /dev/null +++ b/doc/api/html/struct_eigen_1_1internal_1_1scalar__product__traits_3_01stan_1_1agrad_1_1var_00_01double_01_4.html @@ -0,0 +1,148 @@ + + + + + +Stan: Eigen::internal::scalar_product_traits< stan::agrad::var, double > Struct Template Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
Eigen::internal::scalar_product_traits< stan::agrad::var, double > Struct Template Reference
+
+
+ +

Scalar product traits override for Eigen for automatic gradient variables. + More...

+ +

#include <Eigen_NumTraits.hpp>

+ + + + +

+Public Types

typedef stan::agrad::var ReturnType
 
+

Detailed Description

+

template<>
+struct Eigen::internal::scalar_product_traits< stan::agrad::var, double >

+ +

Scalar product traits override for Eigen for automatic gradient variables.

+ +

Definition at line 161 of file Eigen_NumTraits.hpp.

+

Member Typedef Documentation

+ +
+
+ + + + +
typedef stan::agrad::var Eigen::internal::scalar_product_traits< stan::agrad::var, double >::ReturnType
+
+ +

Definition at line 162 of file Eigen_NumTraits.hpp.

+ +
+
+
The documentation for this struct was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/struct_eigen_1_1internal_1_1significant__decimals__default__impl_3_01stan_1_1agrad_1_1var_00_01false_01_4-members.html b/doc/api/html/struct_eigen_1_1internal_1_1significant__decimals__default__impl_3_01stan_1_1agrad_1_1var_00_01false_01_4-members.html new file mode 100644 index 00000000000..89049340179 --- /dev/null +++ b/doc/api/html/struct_eigen_1_1internal_1_1significant__decimals__default__impl_3_01stan_1_1agrad_1_1var_00_01false_01_4-members.html @@ -0,0 +1,113 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
Eigen::internal::significant_decimals_default_impl< stan::agrad::var, false > Member List
+
+ +
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/struct_eigen_1_1internal_1_1significant__decimals__default__impl_3_01stan_1_1agrad_1_1var_00_01false_01_4.html b/doc/api/html/struct_eigen_1_1internal_1_1significant__decimals__default__impl_3_01stan_1_1agrad_1_1var_00_01false_01_4.html new file mode 100644 index 00000000000..15b114e5800 --- /dev/null +++ b/doc/api/html/struct_eigen_1_1internal_1_1significant__decimals__default__impl_3_01stan_1_1agrad_1_1var_00_01false_01_4.html @@ -0,0 +1,159 @@ + + + + + +Stan: Eigen::internal::significant_decimals_default_impl< stan::agrad::var, false > Struct Template Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
Eigen::internal::significant_decimals_default_impl< stan::agrad::var, false > Struct Template Reference
+
+
+ +

Implemented this for printing to stream. + More...

+ +

#include <Eigen_NumTraits.hpp>

+ + + + +

+Static Public Member Functions

static int run ()
 
+

Detailed Description

+

template<>
+struct Eigen::internal::significant_decimals_default_impl< stan::agrad::var, false >

+ +

Implemented this for printing to stream.

+ +

Definition at line 145 of file Eigen_NumTraits.hpp.

+

Member Function Documentation

+ +
+
+ + + + + +
+ + + + + + + +
static int Eigen::internal::significant_decimals_default_impl< stan::agrad::var, false >::run ()
+
+inlinestatic
+
+ +

Definition at line 147 of file Eigen_NumTraits.hpp.

+ +
+
+
The documentation for this struct was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structdot__product__store__type.html b/doc/api/html/structdot__product__store__type.html new file mode 100644 index 00000000000..40280922055 --- /dev/null +++ b/doc/api/html/structdot__product__store__type.html @@ -0,0 +1,116 @@ + + + + + +Stan: dot_product_store_type< T > Struct Template Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ +
+
+
+
dot_product_store_type< T > Struct Template Reference
+
+
+ +

#include <dot_product.hpp>

+

Detailed Description

+

template<typename T>
+struct dot_product_store_type< T >

+ + +

Definition at line 22 of file dot_product.hpp.

+

The documentation for this struct was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structexpression__grammar.html b/doc/api/html/structexpression__grammar.html new file mode 100644 index 00000000000..fcce2d494ec --- /dev/null +++ b/doc/api/html/structexpression__grammar.html @@ -0,0 +1,116 @@ + + + + + +Stan: expression_grammar< Iterator > Struct Template Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ +
+
+
+
expression_grammar< Iterator > Struct Template Reference
+
+
+ +

#include <expression_grammar.hpp>

+

Detailed Description

+

template<typename Iterator>
+struct expression_grammar< Iterator >

+ + +

Definition at line 22 of file expression_grammar.hpp.

+

The documentation for this struct was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1agrad_1_1_operands_and_partials-members.html b/doc/api/html/structstan_1_1agrad_1_1_operands_and_partials-members.html new file mode 100644 index 00000000000..d57da6e1241 --- /dev/null +++ b/doc/api/html/structstan_1_1agrad_1_1_operands_and_partials-members.html @@ -0,0 +1,124 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::agrad::OperandsAndPartials< T1, T2, T3, T4, T5, T6, T_return_type > Member List
+
+ +
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1agrad_1_1_operands_and_partials.html b/doc/api/html/structstan_1_1agrad_1_1_operands_and_partials.html new file mode 100644 index 00000000000..d9650e6aa1b --- /dev/null +++ b/doc/api/html/structstan_1_1agrad_1_1_operands_and_partials.html @@ -0,0 +1,442 @@ + + + + + +Stan: stan::agrad::OperandsAndPartials< T1, T2, T3, T4, T5, T6, T_return_type > Struct Template Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::agrad::OperandsAndPartials< T1, T2, T3, T4, T5, T6, T_return_type > Struct Template Reference
+
+
+ +

A variable implementation that stores operands and derivatives with respect to the variable. + More...

+ +

#include <partials_vari.hpp>

+ + + + + + +

+Public Member Functions

 OperandsAndPartials (const T1 &x1=0, const T2 &x2=0, const T3 &x3=0, const T4 &x4=0, const T5 &x5=0, const T6 &x6=0)
 
T_return_type to_var (double logp)
 
+ + + + + + + + + + + + + + + + + + + +

+Public Attributes

size_t nvaris
 
agrad::vari ** all_varis
 
double * all_partials
 
VectorView< double
+*, is_vector< T1 >::value,
+is_constant_struct< T1 >
+::value > 
d_x1
 
VectorView< double
+*, is_vector< T2 >::value,
+is_constant_struct< T2 >
+::value > 
d_x2
 
VectorView< double
+*, is_vector< T3 >::value,
+is_constant_struct< T3 >
+::value > 
d_x3
 
VectorView< double
+*, is_vector< T4 >::value,
+is_constant_struct< T4 >
+::value > 
d_x4
 
VectorView< double
+*, is_vector< T5 >::value,
+is_constant_struct< T5 >
+::value > 
d_x5
 
VectorView< double
+*, is_vector< T6 >::value,
+is_constant_struct< T6 >
+::value > 
d_x6
 
+ + + +

+Static Public Attributes

static const bool all_constant = is_constant<T_return_type>::value
 
+

Detailed Description

+

template<typename T1 = double, typename T2 = double, typename T3 = double, typename T4 = double, typename T5 = double, typename T6 = double, typename T_return_type = typename return_type<T1,T2,T3,T4,T5,T6>::type>
+struct stan::agrad::OperandsAndPartials< T1, T2, T3, T4, T5, T6, T_return_type >

+ +

A variable implementation that stores operands and derivatives with respect to the variable.

+ +

Definition at line 76 of file partials_vari.hpp.

+

Constructor & Destructor Documentation

+ +
+
+
+template<typename T1 = double, typename T2 = double, typename T3 = double, typename T4 = double, typename T5 = double, typename T6 = double, typename T_return_type = typename return_type<T1,T2,T3,T4,T5,T6>::type>
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
stan::agrad::OperandsAndPartials< T1, T2, T3, T4, T5, T6, T_return_type >::OperandsAndPartials (const T1 & x1 = 0,
const T2 & x2 = 0,
const T3 & x3 = 0,
const T4 & x4 = 0,
const T5 & x5 = 0,
const T6 & x6 = 0 
)
+
+inline
+
+ +

Definition at line 89 of file partials_vari.hpp.

+ +
+
+

Member Function Documentation

+ +
+
+
+template<typename T1 = double, typename T2 = double, typename T3 = double, typename T4 = double, typename T5 = double, typename T6 = double, typename T_return_type = typename return_type<T1,T2,T3,T4,T5,T6>::type>
+ + + + + +
+ + + + + + + + +
T_return_type stan::agrad::OperandsAndPartials< T1, T2, T3, T4, T5, T6, T_return_type >::to_var (double logp)
+
+inline
+
+ +

Definition at line 138 of file partials_vari.hpp.

+ +
+
+

Member Data Documentation

+ +
+
+
+template<typename T1 = double, typename T2 = double, typename T3 = double, typename T4 = double, typename T5 = double, typename T6 = double, typename T_return_type = typename return_type<T1,T2,T3,T4,T5,T6>::type>
+ + + + + +
+ + + + +
const bool stan::agrad::OperandsAndPartials< T1, T2, T3, T4, T5, T6, T_return_type >::all_constant = is_constant<T_return_type>::value
+
+static
+
+ +

Definition at line 77 of file partials_vari.hpp.

+ +
+
+ +
+
+
+template<typename T1 = double, typename T2 = double, typename T3 = double, typename T4 = double, typename T5 = double, typename T6 = double, typename T_return_type = typename return_type<T1,T2,T3,T4,T5,T6>::type>
+ + + + +
double* stan::agrad::OperandsAndPartials< T1, T2, T3, T4, T5, T6, T_return_type >::all_partials
+
+ +

Definition at line 80 of file partials_vari.hpp.

+ +
+
+ +
+
+
+template<typename T1 = double, typename T2 = double, typename T3 = double, typename T4 = double, typename T5 = double, typename T6 = double, typename T_return_type = typename return_type<T1,T2,T3,T4,T5,T6>::type>
+ + + + +
agrad::vari** stan::agrad::OperandsAndPartials< T1, T2, T3, T4, T5, T6, T_return_type >::all_varis
+
+ +

Definition at line 79 of file partials_vari.hpp.

+ +
+
+ +
+
+
+template<typename T1 = double, typename T2 = double, typename T3 = double, typename T4 = double, typename T5 = double, typename T6 = double, typename T_return_type = typename return_type<T1,T2,T3,T4,T5,T6>::type>
+ + + + +
VectorView<double*, is_vector<T1>::value, is_constant_struct<T1>::value> stan::agrad::OperandsAndPartials< T1, T2, T3, T4, T5, T6, T_return_type >::d_x1
+
+ +

Definition at line 82 of file partials_vari.hpp.

+ +
+
+ +
+
+
+template<typename T1 = double, typename T2 = double, typename T3 = double, typename T4 = double, typename T5 = double, typename T6 = double, typename T_return_type = typename return_type<T1,T2,T3,T4,T5,T6>::type>
+ + + + +
VectorView<double*, is_vector<T2>::value, is_constant_struct<T2>::value> stan::agrad::OperandsAndPartials< T1, T2, T3, T4, T5, T6, T_return_type >::d_x2
+
+ +

Definition at line 83 of file partials_vari.hpp.

+ +
+
+ +
+
+
+template<typename T1 = double, typename T2 = double, typename T3 = double, typename T4 = double, typename T5 = double, typename T6 = double, typename T_return_type = typename return_type<T1,T2,T3,T4,T5,T6>::type>
+ + + + +
VectorView<double*, is_vector<T3>::value, is_constant_struct<T3>::value> stan::agrad::OperandsAndPartials< T1, T2, T3, T4, T5, T6, T_return_type >::d_x3
+
+ +

Definition at line 84 of file partials_vari.hpp.

+ +
+
+ +
+
+
+template<typename T1 = double, typename T2 = double, typename T3 = double, typename T4 = double, typename T5 = double, typename T6 = double, typename T_return_type = typename return_type<T1,T2,T3,T4,T5,T6>::type>
+ + + + +
VectorView<double*, is_vector<T4>::value, is_constant_struct<T4>::value> stan::agrad::OperandsAndPartials< T1, T2, T3, T4, T5, T6, T_return_type >::d_x4
+
+ +

Definition at line 85 of file partials_vari.hpp.

+ +
+
+ +
+
+
+template<typename T1 = double, typename T2 = double, typename T3 = double, typename T4 = double, typename T5 = double, typename T6 = double, typename T_return_type = typename return_type<T1,T2,T3,T4,T5,T6>::type>
+ + + + +
VectorView<double*, is_vector<T5>::value, is_constant_struct<T5>::value> stan::agrad::OperandsAndPartials< T1, T2, T3, T4, T5, T6, T_return_type >::d_x5
+
+ +

Definition at line 86 of file partials_vari.hpp.

+ +
+
+ +
+
+
+template<typename T1 = double, typename T2 = double, typename T3 = double, typename T4 = double, typename T5 = double, typename T6 = double, typename T_return_type = typename return_type<T1,T2,T3,T4,T5,T6>::type>
+ + + + +
VectorView<double*, is_vector<T6>::value, is_constant_struct<T6>::value> stan::agrad::OperandsAndPartials< T1, T2, T3, T4, T5, T6, T_return_type >::d_x6
+
+ +

Definition at line 87 of file partials_vari.hpp.

+ +
+
+ +
+
+
+template<typename T1 = double, typename T2 = double, typename T3 = double, typename T4 = double, typename T5 = double, typename T6 = double, typename T_return_type = typename return_type<T1,T2,T3,T4,T5,T6>::type>
+ + + + +
size_t stan::agrad::OperandsAndPartials< T1, T2, T3, T4, T5, T6, T_return_type >::nvaris
+
+ +

Definition at line 78 of file partials_vari.hpp.

+ +
+
+
The documentation for this struct was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1agrad_1_1fvar-members.html b/doc/api/html/structstan_1_1agrad_1_1fvar-members.html new file mode 100644 index 00000000000..f737c3ec289 --- /dev/null +++ b/doc/api/html/structstan_1_1agrad_1_1fvar-members.html @@ -0,0 +1,131 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::agrad::fvar< T > Member List
+
+
+ +

This is the complete list of members for stan::agrad::fvar< T >, including all inherited members.

+ + + + + + + + + + + + + + + + + + + + +
d_stan::agrad::fvar< T >
fvar(const TV &val, const TD &deriv)stan::agrad::fvar< T >inline
fvar(const TV &val)stan::agrad::fvar< T >inline
fvar()stan::agrad::fvar< T >inline
operator*=(const fvar< T2 > &x2)stan::agrad::fvar< T >inline
operator*=(const T2 &x2)stan::agrad::fvar< T >inline
operator++()stan::agrad::fvar< T >inline
operator++(int)stan::agrad::fvar< T >inline
operator+=(const fvar< T2 > &x2)stan::agrad::fvar< T >inline
operator+=(const T2 &x2)stan::agrad::fvar< T >inline
operator--()stan::agrad::fvar< T >inline
operator--(int)stan::agrad::fvar< T >inline
operator-=(const fvar< T2 > &x2)stan::agrad::fvar< T >inline
operator-=(const T2 &x2)stan::agrad::fvar< T >inline
operator/=(const fvar< T2 > &x2)stan::agrad::fvar< T >inline
operator/=(const T2 &x2)stan::agrad::fvar< T >inline
tangent()stan::agrad::fvar< T >inline
val()stan::agrad::fvar< T >inline
val_stan::agrad::fvar< T >
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1agrad_1_1fvar.html b/doc/api/html/structstan_1_1agrad_1_1fvar.html new file mode 100644 index 00000000000..a70b599436f --- /dev/null +++ b/doc/api/html/structstan_1_1agrad_1_1fvar.html @@ -0,0 +1,715 @@ + + + + + +Stan: stan::agrad::fvar< T > Struct Template Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::agrad::fvar< T > Struct Template Reference
+
+
+ +

#include <fvar.hpp>

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

val ()
 
tangent ()
 
template<typename TV , typename TD >
 fvar (const TV &val, const TD &deriv)
 
template<typename TV >
 fvar (const TV &val)
 
 fvar ()
 
template<typename T2 >
fvar< T > & operator+= (const fvar< T2 > &x2)
 
template<typename T2 >
fvar< T > & operator+= (const T2 &x2)
 
template<typename T2 >
fvar< T > & operator-= (const fvar< T2 > &x2)
 
template<typename T2 >
fvar< T > & operator-= (const T2 &x2)
 
template<typename T2 >
fvar< T > & operator*= (const fvar< T2 > &x2)
 
template<typename T2 >
fvar< T > & operator*= (const T2 &x2)
 
template<typename T2 >
fvar< T > & operator/= (const fvar< T2 > &x2)
 
template<typename T2 >
fvar< T > & operator/= (const T2 &x2)
 
fvar< T > & operator++ ()
 
fvar< T > operator++ (int)
 
fvar< T > & operator-- ()
 
fvar< T > operator-- (int)
 
+ + + + + +

+Public Attributes

val_
 
d_
 
+

Detailed Description

+

template<typename T>
+struct stan::agrad::fvar< T >

+ + +

Definition at line 9 of file fvar.hpp.

+

Constructor & Destructor Documentation

+ +
+
+
+template<typename T>
+
+template<typename TV , typename TD >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
stan::agrad::fvar< T >::fvar (const TV & val,
const TD & deriv 
)
+
+inline
+
+ +

Definition at line 19 of file fvar.hpp.

+ +
+
+ +
+
+
+template<typename T>
+
+template<typename TV >
+ + + + + +
+ + + + + + + + +
stan::agrad::fvar< T >::fvar (const TV & val)
+
+inline
+
+ +

Definition at line 23 of file fvar.hpp.

+ +
+
+ +
+
+
+template<typename T>
+ + + + + +
+ + + + + + + +
stan::agrad::fvar< T >::fvar ()
+
+inline
+
+ +

Definition at line 25 of file fvar.hpp.

+ +
+
+

Member Function Documentation

+ +
+
+
+template<typename T>
+
+template<typename T2 >
+ + + + + +
+ + + + + + + + +
fvar<T>& stan::agrad::fvar< T >::operator*= (const fvar< T2 > & x2)
+
+inline
+
+ +

Definition at line 64 of file fvar.hpp.

+ +
+
+ +
+
+
+template<typename T>
+
+template<typename T2 >
+ + + + + +
+ + + + + + + + +
fvar<T>& stan::agrad::fvar< T >::operator*= (const T2 & x2)
+
+inline
+
+ +

Definition at line 73 of file fvar.hpp.

+ +
+
+ +
+
+
+template<typename T>
+ + + + + +
+ + + + + + + +
fvar<T>& stan::agrad::fvar< T >::operator++ ()
+
+inline
+
+ +

Definition at line 99 of file fvar.hpp.

+ +
+
+ +
+
+
+template<typename T>
+ + + + + +
+ + + + + + + + +
fvar<T> stan::agrad::fvar< T >::operator++ (int )
+
+inline
+
+ +

Definition at line 106 of file fvar.hpp.

+ +
+
+ +
+
+
+template<typename T>
+
+template<typename T2 >
+ + + + + +
+ + + + + + + + +
fvar<T>& stan::agrad::fvar< T >::operator+= (const fvar< T2 > & x2)
+
+inline
+
+ +

Definition at line 30 of file fvar.hpp.

+ +
+
+ +
+
+
+template<typename T>
+
+template<typename T2 >
+ + + + + +
+ + + + + + + + +
fvar<T>& stan::agrad::fvar< T >::operator+= (const T2 & x2)
+
+inline
+
+ +

Definition at line 39 of file fvar.hpp.

+ +
+
+ +
+
+
+template<typename T>
+ + + + + +
+ + + + + + + +
fvar<T>& stan::agrad::fvar< T >::operator-- ()
+
+inline
+
+ +

Definition at line 114 of file fvar.hpp.

+ +
+
+ +
+
+
+template<typename T>
+ + + + + +
+ + + + + + + + +
fvar<T> stan::agrad::fvar< T >::operator-- (int )
+
+inline
+
+ +

Definition at line 120 of file fvar.hpp.

+ +
+
+ +
+
+
+template<typename T>
+
+template<typename T2 >
+ + + + + +
+ + + + + + + + +
fvar<T>& stan::agrad::fvar< T >::operator-= (const fvar< T2 > & x2)
+
+inline
+
+ +

Definition at line 47 of file fvar.hpp.

+ +
+
+ +
+
+
+template<typename T>
+
+template<typename T2 >
+ + + + + +
+ + + + + + + + +
fvar<T>& stan::agrad::fvar< T >::operator-= (const T2 & x2)
+
+inline
+
+ +

Definition at line 56 of file fvar.hpp.

+ +
+
+ +
+
+
+template<typename T>
+
+template<typename T2 >
+ + + + + +
+ + + + + + + + +
fvar<T>& stan::agrad::fvar< T >::operator/= (const fvar< T2 > & x2)
+
+inline
+
+ +

Definition at line 83 of file fvar.hpp.

+ +
+
+ +
+
+
+template<typename T>
+
+template<typename T2 >
+ + + + + +
+ + + + + + + + +
fvar<T>& stan::agrad::fvar< T >::operator/= (const T2 & x2)
+
+inline
+
+ +

Definition at line 92 of file fvar.hpp.

+ +
+
+ +
+
+
+template<typename T>
+ + + + + +
+ + + + + + + +
T stan::agrad::fvar< T >::tangent ()
+
+inline
+
+ +

Definition at line 15 of file fvar.hpp.

+ +
+
+ +
+
+
+template<typename T>
+ + + + + +
+ + + + + + + +
T stan::agrad::fvar< T >::val ()
+
+inline
+
+ +

Definition at line 14 of file fvar.hpp.

+ +
+
+

Member Data Documentation

+ +
+
+
+template<typename T>
+ + + + +
T stan::agrad::fvar< T >::d_
+
+ +

Definition at line 12 of file fvar.hpp.

+ +
+
+ +
+
+
+template<typename T>
+ + + + +
T stan::agrad::fvar< T >::val_
+
+ +

Definition at line 11 of file fvar.hpp.

+ +
+
+
The documentation for this struct was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1contains__fvar-members.html b/doc/api/html/structstan_1_1contains__fvar-members.html new file mode 100644 index 00000000000..3ba5020318e --- /dev/null +++ b/doc/api/html/structstan_1_1contains__fvar-members.html @@ -0,0 +1,113 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::contains_fvar< T1, T2, T3, T4, T5, T6 > Member List
+
+
+ +

This is the complete list of members for stan::contains_fvar< T1, T2, T3, T4, T5, T6 >, including all inherited members.

+ + +
value enum valuestan::contains_fvar< T1, T2, T3, T4, T5, T6 >
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1contains__fvar.html b/doc/api/html/structstan_1_1contains__fvar.html new file mode 100644 index 00000000000..8392d2af7bb --- /dev/null +++ b/doc/api/html/structstan_1_1contains__fvar.html @@ -0,0 +1,157 @@ + + + + + +Stan: stan::contains_fvar< T1, T2, T3, T4, T5, T6 > Struct Template Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::contains_fvar< T1, T2, T3, T4, T5, T6 > Struct Template Reference
+
+
+ +

Metaprogram to calculate the base scalar return type resulting from promoting all the scalar types of the template parameters. + More...

+ +

#include <traits.hpp>

+ + + + +

+Public Types

enum  { value + }
 
+

Detailed Description

+

template<typename T1, typename T2 = double, typename T3 = double, typename T4 = double, typename T5 = double, typename T6 = double>
+struct stan::contains_fvar< T1, T2, T3, T4, T5, T6 >

+ +

Metaprogram to calculate the base scalar return type resulting from promoting all the scalar types of the template parameters.

+ +

Definition at line 421 of file traits.hpp.

+

Member Enumeration Documentation

+ +
+
+
+template<typename T1 , typename T2 = double, typename T3 = double, typename T4 = double, typename T5 = double, typename T6 = double>
+ + + + +
anonymous enum
+
+
Enumerator:
+ +
value  +
+
+
+ +

Definition at line 422 of file traits.hpp.

+ +
+
+
The documentation for this struct was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1add__conditional__body-members.html b/doc/api/html/structstan_1_1gm_1_1add__conditional__body-members.html new file mode 100644 index 00000000000..19903d6451b --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1add__conditional__body-members.html @@ -0,0 +1,113 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::gm::add_conditional_body Member List
+
+
+ +

This is the complete list of members for stan::gm::add_conditional_body, including all inherited members.

+ + +
operator()(conditional_statement &cs, const statement &s) const stan::gm::add_conditional_bodyinline
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1add__conditional__body.html b/doc/api/html/structstan_1_1gm_1_1add__conditional__body.html new file mode 100644 index 00000000000..32948e25765 --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1add__conditional__body.html @@ -0,0 +1,169 @@ + + + + + +Stan: stan::gm::add_conditional_body Struct Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::gm::add_conditional_body Struct Reference
+
+
+ +

#include <statement_2_grammar_def.hpp>

+ + + + +

+Classes

struct  result
 
+ + + +

+Public Member Functions

void operator() (conditional_statement &cs, const statement &s) const
 
+

Detailed Description

+
+

Definition at line 75 of file statement_2_grammar_def.hpp.

+

Member Function Documentation

+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
void stan::gm::add_conditional_body::operator() (conditional_statementcs,
const statements 
) const
+
+inline
+
+ +

Definition at line 78 of file statement_2_grammar_def.hpp.

+ +
+
+
The documentation for this struct was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1add__conditional__body_1_1result-members.html b/doc/api/html/structstan_1_1gm_1_1add__conditional__body_1_1result-members.html new file mode 100644 index 00000000000..fe9ed67f0f1 --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1add__conditional__body_1_1result-members.html @@ -0,0 +1,113 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::gm::add_conditional_body::result< T1, T2 > Member List
+
+
+ +

This is the complete list of members for stan::gm::add_conditional_body::result< T1, T2 >, including all inherited members.

+ + +
type typedefstan::gm::add_conditional_body::result< T1, T2 >
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1add__conditional__body_1_1result.html b/doc/api/html/structstan_1_1gm_1_1add__conditional__body_1_1result.html new file mode 100644 index 00000000000..b187df24c48 --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1add__conditional__body_1_1result.html @@ -0,0 +1,146 @@ + + + + + +Stan: stan::gm::add_conditional_body::result< T1, T2 > Struct Template Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::gm::add_conditional_body::result< T1, T2 > Struct Template Reference
+
+
+ +

#include <statement_2_grammar_def.hpp>

+ + + + +

+Public Types

typedef void type
 
+

Detailed Description

+

template<typename T1, typename T2>
+struct stan::gm::add_conditional_body::result< T1, T2 >

+ + +

Definition at line 77 of file statement_2_grammar_def.hpp.

+

Member Typedef Documentation

+ +
+
+
+template<typename T1 , typename T2 >
+ + + + +
typedef void stan::gm::add_conditional_body::result< T1, T2 >::type
+
+ +

Definition at line 77 of file statement_2_grammar_def.hpp.

+ +
+
+
The documentation for this struct was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1add__conditional__condition-members.html b/doc/api/html/structstan_1_1gm_1_1add__conditional__condition-members.html new file mode 100644 index 00000000000..0b849ac5e79 --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1add__conditional__condition-members.html @@ -0,0 +1,113 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::gm::add_conditional_condition Member List
+
+
+ +

This is the complete list of members for stan::gm::add_conditional_condition, including all inherited members.

+ + +
operator()(conditional_statement &cs, const expression &e, std::stringstream &error_msgs) const stan::gm::add_conditional_conditioninline
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1add__conditional__condition.html b/doc/api/html/structstan_1_1gm_1_1add__conditional__condition.html new file mode 100644 index 00000000000..0dcce0b36ff --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1add__conditional__condition.html @@ -0,0 +1,175 @@ + + + + + +Stan: stan::gm::add_conditional_condition Struct Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::gm::add_conditional_condition Struct Reference
+
+
+ +

#include <statement_2_grammar_def.hpp>

+ + + + +

+Classes

struct  result
 
+ + + +

+Public Member Functions

bool operator() (conditional_statement &cs, const expression &e, std::stringstream &error_msgs) const
 
+

Detailed Description

+
+

Definition at line 58 of file statement_2_grammar_def.hpp.

+

Member Function Documentation

+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
bool stan::gm::add_conditional_condition::operator() (conditional_statementcs,
const expressione,
std::stringstream & error_msgs 
) const
+
+inline
+
+ +

Definition at line 61 of file statement_2_grammar_def.hpp.

+ +
+
+
The documentation for this struct was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1add__conditional__condition_1_1result-members.html b/doc/api/html/structstan_1_1gm_1_1add__conditional__condition_1_1result-members.html new file mode 100644 index 00000000000..27f8dc36775 --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1add__conditional__condition_1_1result-members.html @@ -0,0 +1,113 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::gm::add_conditional_condition::result< T1, T2, T3 > Member List
+
+
+ +

This is the complete list of members for stan::gm::add_conditional_condition::result< T1, T2, T3 >, including all inherited members.

+ + +
type typedefstan::gm::add_conditional_condition::result< T1, T2, T3 >
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1add__conditional__condition_1_1result.html b/doc/api/html/structstan_1_1gm_1_1add__conditional__condition_1_1result.html new file mode 100644 index 00000000000..c4940e4041a --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1add__conditional__condition_1_1result.html @@ -0,0 +1,146 @@ + + + + + +Stan: stan::gm::add_conditional_condition::result< T1, T2, T3 > Struct Template Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::gm::add_conditional_condition::result< T1, T2, T3 > Struct Template Reference
+
+
+ +

#include <statement_2_grammar_def.hpp>

+ + + + +

+Public Types

typedef bool type
 
+

Detailed Description

+

template<typename T1, typename T2, typename T3>
+struct stan::gm::add_conditional_condition::result< T1, T2, T3 >

+ + +

Definition at line 60 of file statement_2_grammar_def.hpp.

+

Member Typedef Documentation

+ +
+
+
+template<typename T1 , typename T2 , typename T3 >
+ + + + +
typedef bool stan::gm::add_conditional_condition::result< T1, T2, T3 >::type
+
+ +

Definition at line 60 of file statement_2_grammar_def.hpp.

+ +
+
+
The documentation for this struct was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1add__expression__dimss-members.html b/doc/api/html/structstan_1_1gm_1_1add__expression__dimss-members.html new file mode 100644 index 00000000000..3ab552c62eb --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1add__expression__dimss-members.html @@ -0,0 +1,113 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::gm::add_expression_dimss Member List
+
+
+ +

This is the complete list of members for stan::gm::add_expression_dimss, including all inherited members.

+ + +
operator()(expression &expression, std::vector< std::vector< stan::gm::expression > > &dimss, bool &pass, std::ostream &error_msgs) const stan::gm::add_expression_dimssinline
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1add__expression__dimss.html b/doc/api/html/structstan_1_1gm_1_1add__expression__dimss.html new file mode 100644 index 00000000000..01a6557785d --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1add__expression__dimss.html @@ -0,0 +1,181 @@ + + + + + +Stan: stan::gm::add_expression_dimss Struct Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::gm::add_expression_dimss Struct Reference
+
+
+ +

#include <term_grammar_def.hpp>

+ + + + +

+Classes

struct  result
 
+ + + +

+Public Member Functions

expression operator() (expression &expression, std::vector< std::vector< stan::gm::expression > > &dimss, bool &pass, std::ostream &error_msgs) const
 
+

Detailed Description

+
+

Definition at line 343 of file term_grammar_def.hpp.

+

Member Function Documentation

+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
expression stan::gm::add_expression_dimss::operator() (expressionexpression,
std::vector< std::vector< stan::gm::expression > > & dimss,
bool & pass,
std::ostream & error_msgs 
) const
+
+inline
+
+ +

Definition at line 346 of file term_grammar_def.hpp.

+ +
+
+
The documentation for this struct was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1add__expression__dimss_1_1result-members.html b/doc/api/html/structstan_1_1gm_1_1add__expression__dimss_1_1result-members.html new file mode 100644 index 00000000000..ddcbba4e82c --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1add__expression__dimss_1_1result-members.html @@ -0,0 +1,113 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::gm::add_expression_dimss::result< T1, T2, T3, T4 > Member List
+
+
+ +

This is the complete list of members for stan::gm::add_expression_dimss::result< T1, T2, T3, T4 >, including all inherited members.

+ + +
type typedefstan::gm::add_expression_dimss::result< T1, T2, T3, T4 >
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1add__expression__dimss_1_1result.html b/doc/api/html/structstan_1_1gm_1_1add__expression__dimss_1_1result.html new file mode 100644 index 00000000000..dc8134670b7 --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1add__expression__dimss_1_1result.html @@ -0,0 +1,146 @@ + + + + + +Stan: stan::gm::add_expression_dimss::result< T1, T2, T3, T4 > Struct Template Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::gm::add_expression_dimss::result< T1, T2, T3, T4 > Struct Template Reference
+
+
+ +

#include <term_grammar_def.hpp>

+ + + + +

+Public Types

typedef T1 type
 
+

Detailed Description

+

template<typename T1, typename T2, typename T3, typename T4>
+struct stan::gm::add_expression_dimss::result< T1, T2, T3, T4 >

+ + +

Definition at line 345 of file term_grammar_def.hpp.

+

Member Typedef Documentation

+ +
+
+
+template<typename T1 , typename T2 , typename T3 , typename T4 >
+ + + + +
typedef T1 stan::gm::add_expression_dimss::result< T1, T2, T3, T4 >::type
+
+ +

Definition at line 345 of file term_grammar_def.hpp.

+ +
+
+
The documentation for this struct was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1add__loop__identifier-members.html b/doc/api/html/structstan_1_1gm_1_1add__loop__identifier-members.html new file mode 100644 index 00000000000..94c8796a415 --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1add__loop__identifier-members.html @@ -0,0 +1,113 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::gm::add_loop_identifier Member List
+
+
+ +

This is the complete list of members for stan::gm::add_loop_identifier, including all inherited members.

+ + +
operator()(const std::string &name, std::string &name_local, variable_map &vm, std::stringstream &error_msgs) const stan::gm::add_loop_identifierinline
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1add__loop__identifier.html b/doc/api/html/structstan_1_1gm_1_1add__loop__identifier.html new file mode 100644 index 00000000000..901bace721d --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1add__loop__identifier.html @@ -0,0 +1,181 @@ + + + + + +Stan: stan::gm::add_loop_identifier Struct Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::gm::add_loop_identifier Struct Reference
+
+
+ +

#include <statement_grammar_def.hpp>

+ + + + +

+Classes

struct  result
 
+ + + +

+Public Member Functions

bool operator() (const std::string &name, std::string &name_local, variable_map &vm, std::stringstream &error_msgs) const
 
+

Detailed Description

+
+

Definition at line 363 of file statement_grammar_def.hpp.

+

Member Function Documentation

+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
bool stan::gm::add_loop_identifier::operator() (const std::string & name,
std::string & name_local,
variable_mapvm,
std::stringstream & error_msgs 
) const
+
+inline
+
+ +

Definition at line 366 of file statement_grammar_def.hpp.

+ +
+
+
The documentation for this struct was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1add__loop__identifier_1_1result-members.html b/doc/api/html/structstan_1_1gm_1_1add__loop__identifier_1_1result-members.html new file mode 100644 index 00000000000..ddb1945ca60 --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1add__loop__identifier_1_1result-members.html @@ -0,0 +1,113 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::gm::add_loop_identifier::result< T1, T2, T3, T4 > Member List
+
+
+ +

This is the complete list of members for stan::gm::add_loop_identifier::result< T1, T2, T3, T4 >, including all inherited members.

+ + +
type typedefstan::gm::add_loop_identifier::result< T1, T2, T3, T4 >
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1add__loop__identifier_1_1result.html b/doc/api/html/structstan_1_1gm_1_1add__loop__identifier_1_1result.html new file mode 100644 index 00000000000..a0928b9dca1 --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1add__loop__identifier_1_1result.html @@ -0,0 +1,146 @@ + + + + + +Stan: stan::gm::add_loop_identifier::result< T1, T2, T3, T4 > Struct Template Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::gm::add_loop_identifier::result< T1, T2, T3, T4 > Struct Template Reference
+
+
+ +

#include <statement_grammar_def.hpp>

+ + + + +

+Public Types

typedef bool type
 
+

Detailed Description

+

template<typename T1, typename T2, typename T3, typename T4>
+struct stan::gm::add_loop_identifier::result< T1, T2, T3, T4 >

+ + +

Definition at line 365 of file statement_grammar_def.hpp.

+

Member Typedef Documentation

+ +
+
+
+template<typename T1 , typename T2 , typename T3 , typename T4 >
+ + + + +
typedef bool stan::gm::add_loop_identifier::result< T1, T2, T3, T4 >::type
+
+ +

Definition at line 365 of file statement_grammar_def.hpp.

+ +
+
+
The documentation for this struct was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1add__while__body-members.html b/doc/api/html/structstan_1_1gm_1_1add__while__body-members.html new file mode 100644 index 00000000000..03f1da288f5 --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1add__while__body-members.html @@ -0,0 +1,113 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::gm::add_while_body Member List
+
+
+ +

This is the complete list of members for stan::gm::add_while_body, including all inherited members.

+ + +
operator()(while_statement &ws, const statement &s) const stan::gm::add_while_bodyinline
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1add__while__body.html b/doc/api/html/structstan_1_1gm_1_1add__while__body.html new file mode 100644 index 00000000000..2a97967bb2e --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1add__while__body.html @@ -0,0 +1,169 @@ + + + + + +Stan: stan::gm::add_while_body Struct Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::gm::add_while_body Struct Reference
+
+
+ +

#include <statement_grammar_def.hpp>

+ + + + +

+Classes

struct  result
 
+ + + +

+Public Member Functions

void operator() (while_statement &ws, const statement &s) const
 
+

Detailed Description

+
+

Definition at line 353 of file statement_grammar_def.hpp.

+

Member Function Documentation

+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
void stan::gm::add_while_body::operator() (while_statementws,
const statements 
) const
+
+inline
+
+ +

Definition at line 356 of file statement_grammar_def.hpp.

+ +
+
+
The documentation for this struct was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1add__while__body_1_1result-members.html b/doc/api/html/structstan_1_1gm_1_1add__while__body_1_1result-members.html new file mode 100644 index 00000000000..b40ff2c409a --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1add__while__body_1_1result-members.html @@ -0,0 +1,113 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::gm::add_while_body::result< T1, T2 > Member List
+
+
+ +

This is the complete list of members for stan::gm::add_while_body::result< T1, T2 >, including all inherited members.

+ + +
type typedefstan::gm::add_while_body::result< T1, T2 >
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1add__while__body_1_1result.html b/doc/api/html/structstan_1_1gm_1_1add__while__body_1_1result.html new file mode 100644 index 00000000000..9e0d980c288 --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1add__while__body_1_1result.html @@ -0,0 +1,146 @@ + + + + + +Stan: stan::gm::add_while_body::result< T1, T2 > Struct Template Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::gm::add_while_body::result< T1, T2 > Struct Template Reference
+
+
+ +

#include <statement_grammar_def.hpp>

+ + + + +

+Public Types

typedef void type
 
+

Detailed Description

+

template<typename T1, typename T2>
+struct stan::gm::add_while_body::result< T1, T2 >

+ + +

Definition at line 355 of file statement_grammar_def.hpp.

+

Member Typedef Documentation

+ +
+
+
+template<typename T1 , typename T2 >
+ + + + +
typedef void stan::gm::add_while_body::result< T1, T2 >::type
+
+ +

Definition at line 355 of file statement_grammar_def.hpp.

+ +
+
+
The documentation for this struct was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1add__while__condition-members.html b/doc/api/html/structstan_1_1gm_1_1add__while__condition-members.html new file mode 100644 index 00000000000..13acf6f6f41 --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1add__while__condition-members.html @@ -0,0 +1,113 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::gm::add_while_condition Member List
+
+
+ +

This is the complete list of members for stan::gm::add_while_condition, including all inherited members.

+ + +
operator()(while_statement &ws, const expression &e, std::stringstream &error_msgs) const stan::gm::add_while_conditioninline
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1add__while__condition.html b/doc/api/html/structstan_1_1gm_1_1add__while__condition.html new file mode 100644 index 00000000000..4bbbf68f125 --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1add__while__condition.html @@ -0,0 +1,175 @@ + + + + + +Stan: stan::gm::add_while_condition Struct Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::gm::add_while_condition Struct Reference
+
+
+ +

#include <statement_grammar_def.hpp>

+ + + + +

+Classes

struct  result
 
+ + + +

+Public Member Functions

bool operator() (while_statement &ws, const expression &e, std::stringstream &error_msgs) const
 
+

Detailed Description

+
+

Definition at line 336 of file statement_grammar_def.hpp.

+

Member Function Documentation

+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
bool stan::gm::add_while_condition::operator() (while_statementws,
const expressione,
std::stringstream & error_msgs 
) const
+
+inline
+
+ +

Definition at line 339 of file statement_grammar_def.hpp.

+ +
+
+
The documentation for this struct was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1add__while__condition_1_1result-members.html b/doc/api/html/structstan_1_1gm_1_1add__while__condition_1_1result-members.html new file mode 100644 index 00000000000..8f165e72935 --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1add__while__condition_1_1result-members.html @@ -0,0 +1,113 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::gm::add_while_condition::result< T1, T2, T3 > Member List
+
+
+ +

This is the complete list of members for stan::gm::add_while_condition::result< T1, T2, T3 >, including all inherited members.

+ + +
type typedefstan::gm::add_while_condition::result< T1, T2, T3 >
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1add__while__condition_1_1result.html b/doc/api/html/structstan_1_1gm_1_1add__while__condition_1_1result.html new file mode 100644 index 00000000000..2383d0fd4cf --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1add__while__condition_1_1result.html @@ -0,0 +1,146 @@ + + + + + +Stan: stan::gm::add_while_condition::result< T1, T2, T3 > Struct Template Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::gm::add_while_condition::result< T1, T2, T3 > Struct Template Reference
+
+
+ +

#include <statement_grammar_def.hpp>

+ + + + +

+Public Types

typedef bool type
 
+

Detailed Description

+

template<typename T1, typename T2, typename T3>
+struct stan::gm::add_while_condition::result< T1, T2, T3 >

+ + +

Definition at line 338 of file statement_grammar_def.hpp.

+

Member Typedef Documentation

+ +
+
+
+template<typename T1 , typename T2 , typename T3 >
+ + + + +
typedef bool stan::gm::add_while_condition::result< T1, T2, T3 >::type
+
+ +

Definition at line 338 of file statement_grammar_def.hpp.

+ +
+
+
The documentation for this struct was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1addition__expr-members.html b/doc/api/html/structstan_1_1gm_1_1addition__expr-members.html new file mode 100644 index 00000000000..83e09dd524d --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1addition__expr-members.html @@ -0,0 +1,113 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::gm::addition_expr Member List
+
+
+ +

This is the complete list of members for stan::gm::addition_expr, including all inherited members.

+ + +
operator()(expression &expr1, const expression &expr2, std::ostream &error_msgs) const stan::gm::addition_exprinline
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1addition__expr.html b/doc/api/html/structstan_1_1gm_1_1addition__expr.html new file mode 100644 index 00000000000..9461e1d2ced --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1addition__expr.html @@ -0,0 +1,175 @@ + + + + + +Stan: stan::gm::addition_expr Struct Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::gm::addition_expr Struct Reference
+
+
+ +

#include <expression_grammar_def.hpp>

+ + + + +

+Classes

struct  result
 
+ + + +

+Public Member Functions

expression operator() (expression &expr1, const expression &expr2, std::ostream &error_msgs) const
 
+

Detailed Description

+
+

Definition at line 119 of file expression_grammar_def.hpp.

+

Member Function Documentation

+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
expression stan::gm::addition_expr::operator() (expressionexpr1,
const expressionexpr2,
std::ostream & error_msgs 
) const
+
+inline
+
+ +

Definition at line 123 of file expression_grammar_def.hpp.

+ +
+
+
The documentation for this struct was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1addition__expr_1_1result-members.html b/doc/api/html/structstan_1_1gm_1_1addition__expr_1_1result-members.html new file mode 100644 index 00000000000..c614c39c875 --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1addition__expr_1_1result-members.html @@ -0,0 +1,113 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::gm::addition_expr::result< T1, T2, T3 > Member List
+
+
+ +

This is the complete list of members for stan::gm::addition_expr::result< T1, T2, T3 >, including all inherited members.

+ + +
type typedefstan::gm::addition_expr::result< T1, T2, T3 >
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1addition__expr_1_1result.html b/doc/api/html/structstan_1_1gm_1_1addition__expr_1_1result.html new file mode 100644 index 00000000000..0904aab3af8 --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1addition__expr_1_1result.html @@ -0,0 +1,146 @@ + + + + + +Stan: stan::gm::addition_expr::result< T1, T2, T3 > Struct Template Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::gm::addition_expr::result< T1, T2, T3 > Struct Template Reference
+
+
+ +

#include <expression_grammar_def.hpp>

+ + + + +

+Public Types

typedef expression type
 
+

Detailed Description

+

template<typename T1, typename T2, typename T3>
+struct stan::gm::addition_expr::result< T1, T2, T3 >

+ + +

Definition at line 121 of file expression_grammar_def.hpp.

+

Member Typedef Documentation

+ +
+
+
+template<typename T1 , typename T2 , typename T3 >
+ + + + +
typedef expression stan::gm::addition_expr::result< T1, T2, T3 >::type
+
+ +

Definition at line 121 of file expression_grammar_def.hpp.

+ +
+
+
The documentation for this struct was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1array__literal-members.html b/doc/api/html/structstan_1_1gm_1_1array__literal-members.html new file mode 100644 index 00000000000..690704602b5 --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1array__literal-members.html @@ -0,0 +1,117 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::gm::array_literal Member List
+
+
+ +

This is the complete list of members for stan::gm::array_literal, including all inherited members.

+ + + + + + +
args_stan::gm::array_literal
array_literal()stan::gm::array_literal
array_literal(const std::vector< expression > &args)stan::gm::array_literal
operator=(const array_literal &al)stan::gm::array_literal
type_stan::gm::array_literal
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1array__literal.html b/doc/api/html/structstan_1_1gm_1_1array__literal.html new file mode 100644 index 00000000000..3368a73ee4e --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1array__literal.html @@ -0,0 +1,223 @@ + + + + + +Stan: stan::gm::array_literal Struct Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::gm::array_literal Struct Reference
+
+
+ +

#include <ast.hpp>

+ + + + + + + + +

+Public Member Functions

 array_literal ()
 
 array_literal (const std::vector< expression > &args)
 
array_literaloperator= (const array_literal &al)
 
+ + + + + +

+Public Attributes

std::vector< expressionargs_
 
expr_type type_
 
+

Detailed Description

+
+

Definition at line 290 of file ast.hpp.

+

Constructor & Destructor Documentation

+ +
+
+ + + + + + + +
stan::gm::array_literal::array_literal ()
+
+ +

Definition at line 545 of file ast_def.cpp.

+ +
+
+ +
+
+ + + + + + + + +
stan::gm::array_literal::array_literal (const std::vector< expression > & args)
+
+ +

Definition at line 549 of file ast_def.cpp.

+ +
+
+

Member Function Documentation

+ +
+
+ + + + + + + + +
array_literal & stan::gm::array_literal::operator= (const array_literalal)
+
+ +

Definition at line 553 of file ast_def.cpp.

+ +
+
+

Member Data Documentation

+ +
+
+ + + + +
std::vector<expression> stan::gm::array_literal::args_
+
+ +

Definition at line 291 of file ast.hpp.

+ +
+
+ +
+
+ + + + +
expr_type stan::gm::array_literal::type_
+
+ +

Definition at line 292 of file ast.hpp.

+ +
+
+
The documentation for this struct was generated from the following files: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1assignment-members.html b/doc/api/html/structstan_1_1gm_1_1assignment-members.html new file mode 100644 index 00000000000..3856496c281 --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1assignment-members.html @@ -0,0 +1,117 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::gm::assignment Member List
+
+
+ +

This is the complete list of members for stan::gm::assignment, including all inherited members.

+ + + + + + +
assignment()stan::gm::assignment
assignment(variable_dims &var_dims, expression &expr)stan::gm::assignment
expr_stan::gm::assignment
var_dims_stan::gm::assignment
var_type_stan::gm::assignment
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1assignment.html b/doc/api/html/structstan_1_1gm_1_1assignment.html new file mode 100644 index 00000000000..12ee11ff466 --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1assignment.html @@ -0,0 +1,228 @@ + + + + + +Stan: stan::gm::assignment Struct Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::gm::assignment Struct Reference
+
+
+ +

#include <ast.hpp>

+ + + + + + +

+Public Member Functions

 assignment ()
 
 assignment (variable_dims &var_dims, expression &expr)
 
+ + + + + + + +

+Public Attributes

variable_dims var_dims_
 
expression expr_
 
base_var_decl var_type_
 
+

Detailed Description

+
+

Definition at line 687 of file ast.hpp.

+

Constructor & Destructor Documentation

+ +
+
+ + + + + + + +
stan::gm::assignment::assignment ()
+
+ +

Definition at line 1011 of file ast_def.cpp.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
stan::gm::assignment::assignment (variable_dimsvar_dims,
expressionexpr 
)
+
+ +

Definition at line 1013 of file ast_def.cpp.

+ +
+
+

Member Data Documentation

+ +
+
+ + + + +
expression stan::gm::assignment::expr_
+
+ +

Definition at line 689 of file ast.hpp.

+ +
+
+ +
+
+ + + + +
variable_dims stan::gm::assignment::var_dims_
+
+ +

Definition at line 688 of file ast.hpp.

+ +
+
+ +
+
+ + + + +
base_var_decl stan::gm::assignment::var_type_
+
+ +

Definition at line 690 of file ast.hpp.

+ +
+
+
The documentation for this struct was generated from the following files: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1base__var__decl-members.html b/doc/api/html/structstan_1_1gm_1_1base__var__decl-members.html new file mode 100644 index 00000000000..23f147802c6 --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1base__var__decl-members.html @@ -0,0 +1,118 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::gm::base_var_decl Member List
+
+
+ +

This is the complete list of members for stan::gm::base_var_decl, including all inherited members.

+ + + + + + + +
base_type_stan::gm::base_var_decl
base_var_decl()stan::gm::base_var_decl
base_var_decl(const base_expr_type &base_type)stan::gm::base_var_decl
base_var_decl(const std::string &name, const std::vector< expression > &dims, const base_expr_type &base_type)stan::gm::base_var_decl
dims_stan::gm::base_var_decl
name_stan::gm::base_var_decl
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1base__var__decl.html b/doc/api/html/structstan_1_1gm_1_1base__var__decl.html new file mode 100644 index 00000000000..4e7b88dd35c --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1base__var__decl.html @@ -0,0 +1,274 @@ + + + + + +Stan: stan::gm::base_var_decl Struct Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::gm::base_var_decl Struct Reference
+
+
+ +

#include <ast.hpp>

+
+Inheritance diagram for stan::gm::base_var_decl:
+
+
+ + +stan::gm::cholesky_factor_var_decl +stan::gm::corr_matrix_var_decl +stan::gm::cov_matrix_var_decl +stan::gm::double_var_decl +stan::gm::int_var_decl +stan::gm::matrix_var_decl +stan::gm::ordered_var_decl +stan::gm::positive_ordered_var_decl +stan::gm::row_vector_var_decl +stan::gm::simplex_var_decl +stan::gm::unit_vector_var_decl +stan::gm::vector_var_decl + +
+ + + + + + + + +

+Public Member Functions

 base_var_decl ()
 
 base_var_decl (const base_expr_type &base_type)
 
 base_var_decl (const std::string &name, const std::vector< expression > &dims, const base_expr_type &base_type)
 
+ + + + + + + +

+Public Attributes

std::string name_
 
std::vector< expressiondims_
 
base_expr_type base_type_
 
+

Detailed Description

+
+

Definition at line 381 of file ast.hpp.

+

Constructor & Destructor Documentation

+ +
+
+ + + + + + + +
stan::gm::base_var_decl::base_var_decl ()
+
+ +

Definition at line 678 of file ast_def.cpp.

+ +
+
+ +
+
+ + + + + + + + +
stan::gm::base_var_decl::base_var_decl (const base_expr_typebase_type)
+
+ +

Definition at line 679 of file ast_def.cpp.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
stan::gm::base_var_decl::base_var_decl (const std::string & name,
const std::vector< expression > & dims,
const base_expr_typebase_type 
)
+
+ +

Definition at line 682 of file ast_def.cpp.

+ +
+
+

Member Data Documentation

+ +
+
+ + + + +
base_expr_type stan::gm::base_var_decl::base_type_
+
+ +

Definition at line 384 of file ast.hpp.

+ +
+
+ +
+
+ + + + +
std::vector<expression> stan::gm::base_var_decl::dims_
+
+ +

Definition at line 383 of file ast.hpp.

+ +
+
+ +
+
+ + + + +
std::string stan::gm::base_var_decl::name_
+
+ +

Definition at line 382 of file ast.hpp.

+ +
+
+
The documentation for this struct was generated from the following files: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1base__var__decl.png b/doc/api/html/structstan_1_1gm_1_1base__var__decl.png new file mode 100644 index 0000000000000000000000000000000000000000..3635ae02fe955ae64c0bc521680430401b257788 GIT binary patch literal 6084 zcmdT|2~bn#z7M4qmx`buDq(p6K~UM0J&Lv{DkO>tqO4L>1WYhMSY!!8l>h=R1r&%_ ztzrU%3WNm0rX(P;RWYC>EFQ|1utP-FyboyaZF}FH&YkIfGtEpUC+8$*&V0Y`xBcTz zpl#N#-L@76gRMV$#QG!*CdGomK4Yzx24@WCx4^;2mJ@c^LlTJu91aYLiODZ+f}`bk zRaMohIDs1Yx;pSA8Uq7AT6*zbVU1ugCCpLlgV+$MVTvdfGLx%O=!JJmZl!6NYHRK_ zC^T55=DR&czqfOvp5(EpbVOR})202BBtr~3l-QGR@sXKIZf^D6%`eAJf3pE|eU(VRenhF}Sl5=IYY@d5wRh<%*Vt-g2KoC zG`Hk9<;^#wYV>W5Rd#;3$~s?2mQMZnQUVoEbm-vkg}M&cBn^WI_btvFfzZ>$w^C+ZN)u}ua54k7xT>X{g}$Oq5@rLF70?5xh%6mCH4bsAsl7`PlgF>IZ}e^tp07?`SQP8h6n2MGAC~O$+Zz(r$b?%M^#p> zQHQ-nKrkV}f(t)jj*xwz>g8uBb0U!}z2j(+l!E5JtmMiqz~v*HzvA+QDj}k4T5WYz zPRJcIUa|&+UAK`y1IY2BtuuWNRvdT9o>dna^H;Ow+3X9{&TgN^H}V8ps-j*^5KR-{#5?=VW$lfi|W%I8Y`-`65@h<3a7_p@}k43 zEc54>VoO)X)w=GH29)Go-&B55jgfax@l1Jc|E0qq182ed4gQUqOD+y~)Rq{dKKKJMd(K!bjOFu3vT@XTlwkafi*mgRQyWk0SK;M!0F)zl;R9-oA+5nM$iFu4Snml^YS!#` zskS!RICjIOiT2HW;&{2mk)9t2%=2BYgvqx-XXn>tQ(B$FQ_OhIxf^M-TSzPyaU=qd z;bXHrEw)&x@iO4e>^)y`jMrcy($nrU$(Y?oIn>RXzggDs7*@sTT(fkyLzxZy04yZ^ zFT?Wpl>5_-GAiFT9U-|2D~mUc!z`E~&mUH!Dy_}v(;g#adS`vwpz-m0M#x6D7mHJgnDkH$)LmY&C<1}T zwcq^Nke7z^Z7aT7ch)ihJwJ82V1IpvTMl<8A;+M;E0A%VLq#c17+!c>*Q3S6^`+L; z4}C-y7dr3pwH!ugY-0HCg5DN45(ivvEf%ndoIF-ZkXy=&nXzV(M3Io)GC1Wg%TZCN zs#M22uVX6umA%B@XNiMo%Ko(~WPS;Seodf*_v*U^_#B-2>U*Qzv1j#yg7EzF7bZ&` zbV-P&x-Lc2Ca1WqS6b(+GlkM{O*^r>I)r5kK0VH%o2%W(N*1D$`a6{W2g3SIT-@g1 zZu zAq$=)MrX`Z*`;y6lPZBGk!fC)#IocN`+o?W?8$ss@4Iz=>sD3NXm5Sd0~O~ddWNJ~ zy@f_jXzv!hW~c_ICC~8$ke`L zq6128@Y}b`+xHIBu2a4Zjcd#uF3K^{_GvrKq0-L?J5IN$Dll~ehVQvtT%)}zr~lEF zJ3XP(hfkz!CeSRAnMZj_zZJe;*#NW}kR%k4WST6!8g_is|Dosq9|Zn+A2eGrY9$xt zIIcyYsoDH-6AC5bIA zZ})=teNz^^oHjbE(Q3N-XU;w+-R#@qV9xrhsqZn{k#fwTx#RJc6m)i4Kr#y`?oMsI zVtL7$4QRnEmez^T#!n~l$R7Z7M-md&QE1Q;nLmP_o{30UR3anqNnQCVEghcGRD<#$5yV(xr@tE%V+OSx4n64(TLq~NGt{J#=ZH%@D@sF zYSDgfw72q1vAI3F1|fTvivdaLd~-rZe2?6@oa zj>^l(!R~AQw{y_H(b|_`9C1V!Ngb9Cp&+ak*ni9B_)kA4dQ*gjb_r_h{Eg=-dgZhA zhV#K5%_2*`>p>Gb%so2h&9X-)oW39(zFvF#!=R{OBzyEtmmT~C>T31}tr4WrNban% zJo8*IKFu*Z2k0rB-IqVm#VuwixPb4|Q1E-?A@XV#5U#Y^g872#T@$e`ktRY&i-o(BEtl{5k@^Zbi``4XixYGgyjij z%tDG)LxIp;>u(GpYrKWJzkVDFt9EOg!+CHH!K-kK_5i!1OV|yqU}w`3He(d%em{f$ zp{x4kH{V$LF=`8Z(rH($Iqyq~?7yX;lzZ(aQtwT^711vYJGofq&q$xjF{#|h+lj#2 zy}tWYi;)q?tQ&f}o>J-&aXH;@CE1MZOu^(`aTEL)k`%BVMA*i%M%8*62`v~5v?$MX z=i+R8TeL@*F$~wB2&gr|A^BxoVSslSbSk)$&f=*si#z&AW|!GZI(ms!h?V8~m@8pq z^;Iav!$tw84E4?s8Gw?3N$(b=aNpu|9Lfs(nza)Mg)ttTmXOF z0e_Pm6kftYi%C8A1{{55!Sf3x)&Ta#tE`dCTVT*I84$WV#!935QQe2K3k?HEv*0i7 zQ>!qw<8Lp-dhi{9CGkzpkq8FD)9qE~F53<4T{t4(`93SM_$pSTG5=vG760i1!4}Fu z;{DmLTpo$eUZf0_KPs6mwenX4!8kbW71dy&gf*z3_gt2X;u7wbYU7o`1>Y4-HkV`W zPDzeeUgXC+Z=ZX@>M0BXf3qE7NfUA`N1X&IiQ@_?odg?<=~AjaqZ|9G2p+BDk(Pw! zn>ey4BJYa5wXYqfdZ@~VUpH%!g~nYw(c;ZAYcLB+0IuDpk%K<`rfjJH(X4VUMr}2S zv$e?d!@Rb?b*`NUxz^LGZj*h`<^|R5(BiIM+D?RQcmCyA0P0f!YD>@xsGf{-JS)A@ z%WD`Lf84gsF%N3i2vFd8BJi&yh_hqwKmmO~L1oP4KP;MYpFM1w)99FBQYpt%LEsl7 zlIwilu#bjj{1jSum7Yj3`MJ+}cv}K%&bAkuKeDOqyH~!1ufI!SQO(d_w?V0Sl7lPF zb3`tfGVjjy4(7GqF$sQ1p|kcAL>TH7JG7uvg(=UhsF2OYjj}#O;e_MM6D3E1t8Q#G zBQsGac?s2GM_qn2pX}5XA5auD8TxuEo;3$33QZ$BO>M;bV9vs1jl$rK=4uZ>4ZYqY z&vOULoFTZ^k!coHS?3OjD%tYKj<lL6rcL>h=aRrRAy9Unao+CMx}L9#v+u z)QM$21D#kCE$;ajK~ZX>?yn6U)X&LU6UpdP2Q!ELU~D$;4v!N>CN<2PX%7JF)z|hR z=3e)1X~=3rn#iJDZ3R@%HHDORyg|5kjCE$IPt0xmhV9ku4BT0xki7w-z)7cFDs~+= zZag!6hBXamuzIHjn*MhLCPcPV5(hVxYwD&obi-v8XsEp)`Pz|o;d4W*zK`5ws#xnG zywAeP@pk7cu0-G?f@0XBA|dBomqKv(=KScV_&SwfO?9wdcvkl~20a5Ey1n^hfhQw=eHY-~wdTJ!ujc$im#jtkU+P zN$RJWr;9b?Z)KLWYQ1XXBcbiz*m@E4nLrwevqzrZDp1sf0833IKLVEK0hR^?|02Dp z(Q6)k1tG%IefaER`|J9+o8+(qf(Pdm0*+P$;gs)wS-gjt&wbN6zW9>G(@GVh5OgZq zvnCzxH_>^4X!<_yK5^>&i>8+jay-7Z;G}N$Lt+-|8MM$KK?$(%SZWwld=O+Dr(YPl zk?9T_m1iFNh$7T_jq8$yI5%C{ZZVQri{s>tlsQD~tLUL01MFNI46hP}KETR4_?oL@ zjFvJKu40S6ZEc%^hofLiSj6UK92XKn=%ui4Q)hKS9ySTi`i#hHk{RfKRQe&rTC57r rDJ|~e(nz3?{h=xFqJNqE^;ng^Q1O_T)!>1VJM8Eov^D*!v(f(xP<`nr literal 0 HcmV?d00001 diff --git a/doc/api/html/structstan_1_1gm_1_1binary__op-members.html b/doc/api/html/structstan_1_1gm_1_1binary__op-members.html new file mode 100644 index 00000000000..932c24dd75a --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1binary__op-members.html @@ -0,0 +1,118 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::gm::binary_op Member List
+
+
+ +

This is the complete list of members for stan::gm::binary_op, including all inherited members.

+ + + + + + + +
binary_op()stan::gm::binary_op
binary_op(const expression &left, const std::string &op, const expression &right)stan::gm::binary_op
leftstan::gm::binary_op
opstan::gm::binary_op
rightstan::gm::binary_op
type_stan::gm::binary_op
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1binary__op.html b/doc/api/html/structstan_1_1gm_1_1binary__op.html new file mode 100644 index 00000000000..a9d0a1ac265 --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1binary__op.html @@ -0,0 +1,250 @@ + + + + + +Stan: stan::gm::binary_op Struct Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::gm::binary_op Struct Reference
+
+
+ +

#include <ast.hpp>

+ + + + + + +

+Public Member Functions

 binary_op ()
 
 binary_op (const expression &left, const std::string &op, const expression &right)
 
+ + + + + + + + + +

+Public Attributes

std::string op
 
expression left
 
expression right
 
expr_type type_
 
+

Detailed Description

+
+

Definition at line 339 of file ast.hpp.

+

Constructor & Destructor Documentation

+ +
+
+ + + + + + + +
stan::gm::binary_op::binary_op ()
+
+ +

Definition at line 625 of file ast_def.cpp.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
stan::gm::binary_op::binary_op (const expressionleft,
const std::string & op,
const expressionright 
)
+
+ +

Definition at line 626 of file ast_def.cpp.

+ +
+
+

Member Data Documentation

+ +
+
+ + + + +
expression stan::gm::binary_op::left
+
+ +

Definition at line 341 of file ast.hpp.

+ +
+
+ +
+
+ + + + +
std::string stan::gm::binary_op::op
+
+ +

Definition at line 340 of file ast.hpp.

+ +
+
+ +
+
+ + + + +
expression stan::gm::binary_op::right
+
+ +

Definition at line 342 of file ast.hpp.

+ +
+
+ +
+
+ + + + +
expr_type stan::gm::binary_op::type_
+
+ +

Definition at line 343 of file ast.hpp.

+ +
+
+
The documentation for this struct was generated from the following files: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1binary__op__expr-members.html b/doc/api/html/structstan_1_1gm_1_1binary__op__expr-members.html new file mode 100644 index 00000000000..c96465a71da --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1binary__op__expr-members.html @@ -0,0 +1,113 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::gm::binary_op_expr Member List
+
+
+ +

This is the complete list of members for stan::gm::binary_op_expr, including all inherited members.

+ + +
operator()(expression &expr1, const expression &expr2, const std::string &op, const std::string &fun_name, std::ostream &error_msgs) const stan::gm::binary_op_exprinline
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1binary__op__expr.html b/doc/api/html/structstan_1_1gm_1_1binary__op__expr.html new file mode 100644 index 00000000000..2ad5e43906a --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1binary__op__expr.html @@ -0,0 +1,187 @@ + + + + + +Stan: stan::gm::binary_op_expr Struct Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::gm::binary_op_expr Struct Reference
+
+
+ +

#include <expression_grammar_def.hpp>

+ + + + +

+Classes

struct  result
 
+ + + +

+Public Member Functions

expression operator() (expression &expr1, const expression &expr2, const std::string &op, const std::string &fun_name, std::ostream &error_msgs) const
 
+

Detailed Description

+
+

Definition at line 87 of file expression_grammar_def.hpp.

+

Member Function Documentation

+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
expression stan::gm::binary_op_expr::operator() (expressionexpr1,
const expressionexpr2,
const std::string & op,
const std::string & fun_name,
std::ostream & error_msgs 
) const
+
+inline
+
+ +

Definition at line 91 of file expression_grammar_def.hpp.

+ +
+
+
The documentation for this struct was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1binary__op__expr_1_1result-members.html b/doc/api/html/structstan_1_1gm_1_1binary__op__expr_1_1result-members.html new file mode 100644 index 00000000000..cf933789031 --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1binary__op__expr_1_1result-members.html @@ -0,0 +1,113 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::gm::binary_op_expr::result< T1, T2, T3, T4, T5 > Member List
+
+
+ +

This is the complete list of members for stan::gm::binary_op_expr::result< T1, T2, T3, T4, T5 >, including all inherited members.

+ + +
type typedefstan::gm::binary_op_expr::result< T1, T2, T3, T4, T5 >
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1binary__op__expr_1_1result.html b/doc/api/html/structstan_1_1gm_1_1binary__op__expr_1_1result.html new file mode 100644 index 00000000000..26c2bbade19 --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1binary__op__expr_1_1result.html @@ -0,0 +1,146 @@ + + + + + +Stan: stan::gm::binary_op_expr::result< T1, T2, T3, T4, T5 > Struct Template Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::gm::binary_op_expr::result< T1, T2, T3, T4, T5 > Struct Template Reference
+
+
+ +

#include <expression_grammar_def.hpp>

+ + + + +

+Public Types

typedef expression type
 
+

Detailed Description

+

template<typename T1, typename T2, typename T3, typename T4, typename T5>
+struct stan::gm::binary_op_expr::result< T1, T2, T3, T4, T5 >

+ + +

Definition at line 89 of file expression_grammar_def.hpp.

+

Member Typedef Documentation

+ +
+
+
+template<typename T1 , typename T2 , typename T3 , typename T4 , typename T5 >
+ + + + +
typedef expression stan::gm::binary_op_expr::result< T1, T2, T3, T4, T5 >::type
+
+ +

Definition at line 89 of file expression_grammar_def.hpp.

+ +
+
+
The documentation for this struct was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1cholesky__factor__var__decl-members.html b/doc/api/html/structstan_1_1gm_1_1cholesky__factor__var__decl-members.html new file mode 100644 index 00000000000..40cd7377123 --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1cholesky__factor__var__decl-members.html @@ -0,0 +1,122 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::gm::cholesky_factor_var_decl Member List
+
+
+ +

This is the complete list of members for stan::gm::cholesky_factor_var_decl, including all inherited members.

+ + + + + + + + + + + +
base_type_stan::gm::base_var_decl
base_var_decl()stan::gm::base_var_decl
base_var_decl(const base_expr_type &base_type)stan::gm::base_var_decl
base_var_decl(const std::string &name, const std::vector< expression > &dims, const base_expr_type &base_type)stan::gm::base_var_decl
cholesky_factor_var_decl()stan::gm::cholesky_factor_var_decl
cholesky_factor_var_decl(expression const &M, expression const &N, std::string const &name, std::vector< expression > const &dims)stan::gm::cholesky_factor_var_decl
dims_stan::gm::base_var_decl
M_stan::gm::cholesky_factor_var_decl
N_stan::gm::cholesky_factor_var_decl
name_stan::gm::base_var_decl
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1cholesky__factor__var__decl.html b/doc/api/html/structstan_1_1gm_1_1cholesky__factor__var__decl.html new file mode 100644 index 00000000000..8a335e68485 --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1cholesky__factor__var__decl.html @@ -0,0 +1,247 @@ + + + + + +Stan: stan::gm::cholesky_factor_var_decl Struct Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::gm::cholesky_factor_var_decl Struct Reference
+
+
+ +

#include <ast.hpp>

+
+Inheritance diagram for stan::gm::cholesky_factor_var_decl:
+
+
+ + +stan::gm::base_var_decl + +
+ + + + + + + + + + + + + +

+Public Member Functions

 cholesky_factor_var_decl ()
 
 cholesky_factor_var_decl (expression const &M, expression const &N, std::string const &name, std::vector< expression > const &dims)
 
- Public Member Functions inherited from stan::gm::base_var_decl
 base_var_decl ()
 
 base_var_decl (const base_expr_type &base_type)
 
 base_var_decl (const std::string &name, const std::vector< expression > &dims, const base_expr_type &base_type)
 
+ + + + + + + + + + + + +

+Public Attributes

expression M_
 
expression N_
 
- Public Attributes inherited from stan::gm::base_var_decl
std::string name_
 
std::vector< expressiondims_
 
base_expr_type base_type_
 
+

Detailed Description

+
+

Definition at line 487 of file ast.hpp.

+

Constructor & Destructor Documentation

+ +
+
+ + + + + + + +
stan::gm::cholesky_factor_var_decl::cholesky_factor_var_decl ()
+
+ +

Definition at line 820 of file ast_def.cpp.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
stan::gm::cholesky_factor_var_decl::cholesky_factor_var_decl (expression const & M,
expression const & N,
std::string const & name,
std::vector< expression > const & dims 
)
+
+ +

Definition at line 823 of file ast_def.cpp.

+ +
+
+

Member Data Documentation

+ +
+
+ + + + +
expression stan::gm::cholesky_factor_var_decl::M_
+
+ +

Definition at line 488 of file ast.hpp.

+ +
+
+ +
+
+ + + + +
expression stan::gm::cholesky_factor_var_decl::N_
+
+ +

Definition at line 489 of file ast.hpp.

+ +
+
+
The documentation for this struct was generated from the following files: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1cholesky__factor__var__decl.png b/doc/api/html/structstan_1_1gm_1_1cholesky__factor__var__decl.png new file mode 100644 index 0000000000000000000000000000000000000000..41a8dd18fd63f47f3ad0437b61609ea331a80d7c GIT binary patch literal 792 zcmeAS@N?(olHy`uVBq!ia0vp^mw-5cgBeIh+uvRcq$C1-LR|m<{|{uoc=NTi|Ih>= z3ycpOIKbL@M;^%KC<*clW&kPzfvcxNj2IZ0mV3H5hEy=VoqJJeu>y}P|Mi*w{;RJS z6X1y2x;1uM>apzA6DBx2)uhf^wo>2FGss`cW73sfY?D;BuFLlDn{@8gr4&!2Rd4*Q z{>-0v=goz++i(8;tj?>a{BN4lhu}SqKPM#BX!Sfj_Aha3Z?Ni1hxCax8x)_Y&v^3b zwDzW{!B3{FW7<_Q^P<}4ORXxhFPVb6jvWhgjeVlfpDw&o?nc^Aw}(fgcCIxs&bBaA@_b(6 zKh3V!X;R+h+*WnZ+zbWJpx0o}rY*^wwQL>B2WeY|UqSUA{qE&He-+QV>@_UyFtL(z z_$}qZur^zPam%_!mJ7SsgdBjn@CzK6U36~ez82;ep3IyJN_kZpuBA@6_fR``O}lS@ zaX8ba*Plx-ckgcs+5emG(xzhX;P2a06*hl7Yj@|9f0UWA-O>7gTeo*8?~F{Fx^{N{ zrmxf2%I>q&1GvO@6C>ZFwS} zqWL*uE^~B+yT|XJn|0XJPb!F}XY2o-ovvx~UU}x`5YvshOCE2Yaw_HI(_OX~7rfzm zeLG3`yVbp8&)Pj#?tdn`{?+Nite>gYZz>q{zn)wE*si!?vQ>MCD9ZuWwa0DVXdhVj z?fKk~1xDWKOpG@!zb`6T`hnpeCn#7 + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::gm::conditional_statement Member List
+
+
+ +

This is the complete list of members for stan::gm::conditional_statement, including all inherited members.

+ + + + + +
bodies_stan::gm::conditional_statement
conditional_statement()stan::gm::conditional_statement
conditional_statement(const std::vector< expression > &conditions, const std::vector< statement > &statements)stan::gm::conditional_statement
conditions_stan::gm::conditional_statement
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1conditional__statement.html b/doc/api/html/structstan_1_1gm_1_1conditional__statement.html new file mode 100644 index 00000000000..395e5ec22c1 --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1conditional__statement.html @@ -0,0 +1,212 @@ + + + + + +Stan: stan::gm::conditional_statement Struct Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::gm::conditional_statement Struct Reference
+
+
+ +

#include <ast.hpp>

+ + + + + + +

+Public Member Functions

 conditional_statement ()
 
 conditional_statement (const std::vector< expression > &conditions, const std::vector< statement > &statements)
 
+ + + + + +

+Public Attributes

std::vector< expressionconditions_
 
std::vector< statementbodies_
 
+

Detailed Description

+
+

Definition at line 625 of file ast.hpp.

+

Constructor & Destructor Documentation

+ +
+
+ + + + + + + +
stan::gm::conditional_statement::conditional_statement ()
+
+ +

Definition at line 961 of file ast_def.cpp.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
stan::gm::conditional_statement::conditional_statement (const std::vector< expression > & conditions,
const std::vector< statement > & statements 
)
+
+ +

Definition at line 964 of file ast_def.cpp.

+ +
+
+

Member Data Documentation

+ +
+
+ + + + +
std::vector<statement> stan::gm::conditional_statement::bodies_
+
+ +

Definition at line 627 of file ast.hpp.

+ +
+
+ +
+
+ + + + +
std::vector<expression> stan::gm::conditional_statement::conditions_
+
+ +

Definition at line 626 of file ast.hpp.

+ +
+
+
The documentation for this struct was generated from the following files: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1constrained__param__names__visgen-members.html b/doc/api/html/structstan_1_1gm_1_1constrained__param__names__visgen-members.html new file mode 100644 index 00000000000..4c672040d73 --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1constrained__param__names__visgen-members.html @@ -0,0 +1,130 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::gm::constrained_param_names_visgen Member List
+
+
+ +

This is the complete list of members for stan::gm::constrained_param_names_visgen, including all inherited members.

+ + + + + + + + + + + + + + + + + + + +
constrained_param_names_visgen(std::ostream &o)stan::gm::constrained_param_names_visgeninline
generate_param_names_array(const std::vector< expression > &matrix_dims, const std::string &name, const std::vector< expression > &dims) const stan::gm::constrained_param_names_visgeninline
o_stan::gm::visgen
operator()(const nil &) const stan::gm::constrained_param_names_visgeninline
operator()(const int_var_decl &x) const stan::gm::constrained_param_names_visgeninline
operator()(const double_var_decl &x) const stan::gm::constrained_param_names_visgeninline
operator()(const vector_var_decl &x) const stan::gm::constrained_param_names_visgeninline
operator()(const row_vector_var_decl &x) const stan::gm::constrained_param_names_visgeninline
operator()(const matrix_var_decl &x) const stan::gm::constrained_param_names_visgeninline
operator()(const unit_vector_var_decl &x) const stan::gm::constrained_param_names_visgeninline
operator()(const simplex_var_decl &x) const stan::gm::constrained_param_names_visgeninline
operator()(const ordered_var_decl &x) const stan::gm::constrained_param_names_visgeninline
operator()(const positive_ordered_var_decl &x) const stan::gm::constrained_param_names_visgeninline
operator()(const cholesky_factor_var_decl &x) const stan::gm::constrained_param_names_visgeninline
operator()(const cov_matrix_var_decl &x) const stan::gm::constrained_param_names_visgeninline
operator()(const corr_matrix_var_decl &x) const stan::gm::constrained_param_names_visgeninline
result_type typedefstan::gm::visgen
visgen(std::ostream &o)stan::gm::visgeninline
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1constrained__param__names__visgen.html b/doc/api/html/structstan_1_1gm_1_1constrained__param__names__visgen.html new file mode 100644 index 00000000000..b6ec71946bb --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1constrained__param__names__visgen.html @@ -0,0 +1,583 @@ + + + + + +Stan: stan::gm::constrained_param_names_visgen Struct Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::gm::constrained_param_names_visgen Struct Reference
+
+
+ +

#include <generator.hpp>

+
+Inheritance diagram for stan::gm::constrained_param_names_visgen:
+
+
+ + +stan::gm::visgen + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 constrained_param_names_visgen (std::ostream &o)
 
void operator() (const nil &) const
 
void operator() (const int_var_decl &x) const
 
void operator() (const double_var_decl &x) const
 
void operator() (const vector_var_decl &x) const
 
void operator() (const row_vector_var_decl &x) const
 
void operator() (const matrix_var_decl &x) const
 
void operator() (const unit_vector_var_decl &x) const
 
void operator() (const simplex_var_decl &x) const
 
void operator() (const ordered_var_decl &x) const
 
void operator() (const positive_ordered_var_decl &x) const
 
void operator() (const cholesky_factor_var_decl &x) const
 
void operator() (const cov_matrix_var_decl &x) const
 
void operator() (const corr_matrix_var_decl &x) const
 
void generate_param_names_array (const std::vector< expression > &matrix_dims, const std::string &name, const std::vector< expression > &dims) const
 
- Public Member Functions inherited from stan::gm::visgen
 visgen (std::ostream &o)
 
+ + + + + + + +

+Additional Inherited Members

- Public Types inherited from stan::gm::visgen
typedef void result_type
 
- Public Attributes inherited from stan::gm::visgen
std::ostream & o_
 
+

Detailed Description

+
+

Definition at line 2949 of file generator.hpp.

+

Constructor & Destructor Documentation

+ +
+
+ + + + + +
+ + + + + + + + +
stan::gm::constrained_param_names_visgen::constrained_param_names_visgen (std::ostream & o)
+
+inline
+
+ +

Definition at line 2950 of file generator.hpp.

+ +
+
+

Member Function Documentation

+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
void stan::gm::constrained_param_names_visgen::generate_param_names_array (const std::vector< expression > & matrix_dims,
const std::string & name,
const std::vector< expression > & dims 
) const
+
+inline
+
+ +

Definition at line 3015 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::constrained_param_names_visgen::operator() (const nil) const
+
+inline
+
+ +

Definition at line 2953 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::constrained_param_names_visgen::operator() (const int_var_declx) const
+
+inline
+
+ +

Definition at line 2954 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::constrained_param_names_visgen::operator() (const double_var_declx) const
+
+inline
+
+ +

Definition at line 2957 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::constrained_param_names_visgen::operator() (const vector_var_declx) const
+
+inline
+
+ +

Definition at line 2960 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::constrained_param_names_visgen::operator() (const row_vector_var_declx) const
+
+inline
+
+ +

Definition at line 2965 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::constrained_param_names_visgen::operator() (const matrix_var_declx) const
+
+inline
+
+ +

Definition at line 2970 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::constrained_param_names_visgen::operator() (const unit_vector_var_declx) const
+
+inline
+
+ +

Definition at line 2976 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::constrained_param_names_visgen::operator() (const simplex_var_declx) const
+
+inline
+
+ +

Definition at line 2981 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::constrained_param_names_visgen::operator() (const ordered_var_declx) const
+
+inline
+
+ +

Definition at line 2986 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::constrained_param_names_visgen::operator() (const positive_ordered_var_declx) const
+
+inline
+
+ +

Definition at line 2991 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::constrained_param_names_visgen::operator() (const cholesky_factor_var_declx) const
+
+inline
+
+ +

Definition at line 2996 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::constrained_param_names_visgen::operator() (const cov_matrix_var_declx) const
+
+inline
+
+ +

Definition at line 3002 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::constrained_param_names_visgen::operator() (const corr_matrix_var_declx) const
+
+inline
+
+ +

Definition at line 3008 of file generator.hpp.

+ +
+
+
The documentation for this struct was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1constrained__param__names__visgen.png b/doc/api/html/structstan_1_1gm_1_1constrained__param__names__visgen.png new file mode 100644 index 0000000000000000000000000000000000000000..bc815d9ff5e834ad0e8efcbb491981ef7549dc62 GIT binary patch literal 781 zcmeAS@N?(olHy`uVBq!ia0y~yU}OTa12~w0PCVUSn59zouEi^L1JO3)H!pUY+ zK}YSDZG!dp%Hm_!pXL&8P~pFP#c4(59)3r?o-mHrAM=?fJV~5YA^Yn~9aH1?96OcD z4fo2#Em-c}y%6fJ6#bjIH6X6#Yt8N6`5xELsMiSoJM5%za^tt$^h?$ro3{2V+$dl4 z`P|$kne$IJ&AF{o>Hm9;$EWaL5sDL@lzVWrIB>KqP>7h8YPpr+!RB2I2X?BmOh5fn zlH=gi12-i(8rL~13NRrM!-ZJ_9F6FRA;XuW<$<)ok|~#Vwz4p!PXjA(Y2z3>z+PUlQ+JP%FQF)%^L4n~(jenAZPt@86fQQFCUON*W)&x{CEv^0kX+ zZ$xgpD7IBOrfs*T`R(ZNNo!a8-|WndoZ7mzM>ebd>v!2{|E#WAUXyh8-YsXm(fz{v zh0$x>FHE|;MxEz+>L%sH-&H$q&$s(?p)f^K)~!b&W|{j0|D`FX^aW;Es5;+0n7df| z`qiDqGLf?$>&_E%I$6Da$y=shlVs*zHs+|33ydhg5#4cEa=W{vWRAd{_ya%m3OJgK zIfGA6{klWo-5pka#ShC&XS0Kijzt(UVm vh<}- + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::gm::contains_nonparam_var Member List
+
+
+ +

This is the complete list of members for stan::gm::contains_nonparam_var, including all inherited members.

+ + + + + + + + + + + + +
contains_nonparam_var(const variable_map &var_map)stan::gm::contains_nonparam_var
operator()(const nil &e) const stan::gm::contains_nonparam_var
operator()(const int_literal &e) const stan::gm::contains_nonparam_var
operator()(const double_literal &e) const stan::gm::contains_nonparam_var
operator()(const array_literal &e) const stan::gm::contains_nonparam_var
operator()(const variable &e) const stan::gm::contains_nonparam_var
operator()(const fun &e) const stan::gm::contains_nonparam_var
operator()(const index_op &e) const stan::gm::contains_nonparam_var
operator()(const binary_op &e) const stan::gm::contains_nonparam_var
operator()(const unary_op &e) const stan::gm::contains_nonparam_var
var_map_stan::gm::contains_nonparam_var
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1contains__nonparam__var.html b/doc/api/html/structstan_1_1gm_1_1contains__nonparam__var.html new file mode 100644 index 00000000000..e03ae54f66b --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1contains__nonparam__var.html @@ -0,0 +1,356 @@ + + + + + +Stan: stan::gm::contains_nonparam_var Struct Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::gm::contains_nonparam_var Struct Reference
+
+
+ +

#include <ast.hpp>

+
+Inheritance diagram for stan::gm::contains_nonparam_var:
+
+
+ + + +
+ + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 contains_nonparam_var (const variable_map &var_map)
 
bool operator() (const nil &e) const
 
bool operator() (const int_literal &e) const
 
bool operator() (const double_literal &e) const
 
bool operator() (const array_literal &e) const
 
bool operator() (const variable &e) const
 
bool operator() (const fun &e) const
 
bool operator() (const index_op &e) const
 
bool operator() (const binary_op &e) const
 
bool operator() (const unary_op &e) const
 
+ + + +

+Public Attributes

const variable_mapvar_map_
 
+

Detailed Description

+
+

Definition at line 721 of file ast.hpp.

+

Constructor & Destructor Documentation

+ +
+
+ + + + + + + + +
stan::gm::contains_nonparam_var::contains_nonparam_var (const variable_mapvar_map)
+
+ +

Definition at line 442 of file ast_def.cpp.

+ +
+
+

Member Function Documentation

+ +
+
+ + + + + + + + +
bool stan::gm::contains_nonparam_var::operator() (const nile) const
+
+ +

Definition at line 445 of file ast_def.cpp.

+ +
+
+ +
+
+ + + + + + + + +
bool stan::gm::contains_nonparam_var::operator() (const int_literale) const
+
+ +

Definition at line 448 of file ast_def.cpp.

+ +
+
+ +
+
+ + + + + + + + +
bool stan::gm::contains_nonparam_var::operator() (const double_literale) const
+
+ +

Definition at line 451 of file ast_def.cpp.

+ +
+
+ +
+
+ + + + + + + + +
bool stan::gm::contains_nonparam_var::operator() (const array_literale) const
+
+ +

Definition at line 454 of file ast_def.cpp.

+ +
+
+ +
+
+ + + + + + + + +
bool stan::gm::contains_nonparam_var::operator() (const variablee) const
+
+ +

Definition at line 460 of file ast_def.cpp.

+ +
+
+ +
+
+ + + + + + + + +
bool stan::gm::contains_nonparam_var::operator() (const fune) const
+
+ +

Definition at line 465 of file ast_def.cpp.

+ +
+
+ +
+
+ + + + + + + + +
bool stan::gm::contains_nonparam_var::operator() (const index_ope) const
+
+ +

Definition at line 471 of file ast_def.cpp.

+ +
+
+ +
+
+ + + + + + + + +
bool stan::gm::contains_nonparam_var::operator() (const binary_ope) const
+
+ +

Definition at line 474 of file ast_def.cpp.

+ +
+
+ +
+
+ + + + + + + + +
bool stan::gm::contains_nonparam_var::operator() (const unary_ope) const
+
+ +

Definition at line 477 of file ast_def.cpp.

+ +
+
+

Member Data Documentation

+ +
+
+ + + + +
const variable_map& stan::gm::contains_nonparam_var::var_map_
+
+ +

Definition at line 722 of file ast.hpp.

+ +
+
+
The documentation for this struct was generated from the following files: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1contains__nonparam__var.png b/doc/api/html/structstan_1_1gm_1_1contains__nonparam__var.png new file mode 100644 index 0000000000000000000000000000000000000000..c7c5ba5109d460223ea561ac2d2db6eba77eef21 GIT binary patch literal 737 zcmeAS@N?(olHy`uVBq!ia0vp^$ALJ2gBeK9+A)zINJ#|vgt-3y{~ySF@#br3|Dg#$ z78oBmaDcV*jy#adQ4-`A%m7pb0#{Fk7%?y~6?nQhhEy=VoqN0QumX=uf4tTI|Hp5e zu<-CM*?l*}WYdu+ZMhZ?W`v(Pqo?3AXK#6dUn={bRP^nhAHG{=(#~%y|4RImw_bVWr~S5_USa0><*)uS6p>*7dYs`|U;)FK#Sa)}xF2LR=x<_9kYi;( zV8g}NP>H6XA}}pYT!8JvSD4(2hZXXxTzSx!lk+5&=t%f~M`?1TNx_9 z{rZ()*`lutDqC&bPjaQ-u=uTMd4ATZX!FxM)8qP|vEPeso454*>fGb^o}3W86>9w? z!uI+JJFmIZmzK9D+eiO9^zqA=kYiOcY$mS?DtiC-w zho~EsoD=EUw)N|&tIZ;b6T*9^uMWSxrFM#X->FaG&ws9DKYaUO{NojqcpmUa)t%YW z$gs7qng4G5y?#fQhV5S${$-dE4GSh+_6aj@UVqKbol+`m+c%*Xm>wBCUHx3vIVCg! E0AL+s=l}o! literal 0 HcmV?d00001 diff --git a/doc/api/html/structstan_1_1gm_1_1contains__var-members.html b/doc/api/html/structstan_1_1gm_1_1contains__var-members.html new file mode 100644 index 00000000000..4dfeb914121 --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1contains__var-members.html @@ -0,0 +1,123 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::gm::contains_var Member List
+
+
+ +

This is the complete list of members for stan::gm::contains_var, including all inherited members.

+ + + + + + + + + + + + +
contains_var(const variable_map &var_map)stan::gm::contains_var
operator()(const nil &e) const stan::gm::contains_var
operator()(const int_literal &e) const stan::gm::contains_var
operator()(const double_literal &e) const stan::gm::contains_var
operator()(const array_literal &e) const stan::gm::contains_var
operator()(const variable &e) const stan::gm::contains_var
operator()(const fun &e) const stan::gm::contains_var
operator()(const index_op &e) const stan::gm::contains_var
operator()(const binary_op &e) const stan::gm::contains_var
operator()(const unary_op &e) const stan::gm::contains_var
var_map_stan::gm::contains_var
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1contains__var.html b/doc/api/html/structstan_1_1gm_1_1contains__var.html new file mode 100644 index 00000000000..87988f2b8c6 --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1contains__var.html @@ -0,0 +1,356 @@ + + + + + +Stan: stan::gm::contains_var Struct Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::gm::contains_var Struct Reference
+
+
+ +

#include <ast.hpp>

+
+Inheritance diagram for stan::gm::contains_var:
+
+
+ + + +
+ + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 contains_var (const variable_map &var_map)
 
bool operator() (const nil &e) const
 
bool operator() (const int_literal &e) const
 
bool operator() (const double_literal &e) const
 
bool operator() (const array_literal &e) const
 
bool operator() (const variable &e) const
 
bool operator() (const fun &e) const
 
bool operator() (const index_op &e) const
 
bool operator() (const binary_op &e) const
 
bool operator() (const unary_op &e) const
 
+ + + +

+Public Attributes

const variable_mapvar_map_
 
+

Detailed Description

+
+

Definition at line 703 of file ast.hpp.

+

Constructor & Destructor Documentation

+ +
+
+ + + + + + + + +
stan::gm::contains_var::contains_var (const variable_mapvar_map)
+
+ +

Definition at line 394 of file ast_def.cpp.

+ +
+
+

Member Function Documentation

+ +
+
+ + + + + + + + +
bool stan::gm::contains_var::operator() (const nile) const
+
+ +

Definition at line 397 of file ast_def.cpp.

+ +
+
+ +
+
+ + + + + + + + +
bool stan::gm::contains_var::operator() (const int_literale) const
+
+ +

Definition at line 400 of file ast_def.cpp.

+ +
+
+ +
+
+ + + + + + + + +
bool stan::gm::contains_var::operator() (const double_literale) const
+
+ +

Definition at line 403 of file ast_def.cpp.

+ +
+
+ +
+
+ + + + + + + + +
bool stan::gm::contains_var::operator() (const array_literale) const
+
+ +

Definition at line 406 of file ast_def.cpp.

+ +
+
+ +
+
+ + + + + + + + +
bool stan::gm::contains_var::operator() (const variablee) const
+
+ +

Definition at line 412 of file ast_def.cpp.

+ +
+
+ +
+
+ + + + + + + + +
bool stan::gm::contains_var::operator() (const fune) const
+
+ +

Definition at line 418 of file ast_def.cpp.

+ +
+
+ +
+
+ + + + + + + + +
bool stan::gm::contains_var::operator() (const index_ope) const
+
+ +

Definition at line 424 of file ast_def.cpp.

+ +
+
+ +
+
+ + + + + + + + +
bool stan::gm::contains_var::operator() (const binary_ope) const
+
+ +

Definition at line 427 of file ast_def.cpp.

+ +
+
+ +
+
+ + + + + + + + +
bool stan::gm::contains_var::operator() (const unary_ope) const
+
+ +

Definition at line 431 of file ast_def.cpp.

+ +
+
+

Member Data Documentation

+ +
+
+ + + + +
const variable_map& stan::gm::contains_var::var_map_
+
+ +

Definition at line 704 of file ast.hpp.

+ +
+
+
The documentation for this struct was generated from the following files: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1contains__var.png b/doc/api/html/structstan_1_1gm_1_1contains__var.png new file mode 100644 index 0000000000000000000000000000000000000000..689b460b0f9efe171e2ce0865962fd883e00576a GIT binary patch literal 675 zcmeAS@N?(olHy`uVBq!ia0vp^%YZn5gBeIJnfuQXNJ#|vgt-3y{~ySF@#br3|Dg#$ z78oBmaDcV*jy#adQ4-`A%m7pb0#{Fk7%?y~8F{)mhEy=VoqKW9Y6TwG@VH(7|M#yC z<7#ADe*9V48=15lT~d=$oxX?~Z+^`^dCBVRM6aMJV#`!qHIw}^X1hNvn%z6?>2KlL zfmhC*EjLtsseUx+R_(Uh#jAqng-!pt!M=#iy=Th7-*4~c7Z&M!xHfl1@R`Hg`;~51 zoCtB7oH%)&yW;ufg;#E^()^Xsct8E=CZ`vv#?jSh%>Gzp{j~}{<9>Hl>dJG>XF|gF z?>P3w`ic6PN&hULecn`earcZ#I|ZkleR=QAmC6m~@*0z_9=^SIv$^}+ee$dBo%Ox< z`b$$}*E{RjNz(h@m3Z!2cgW!TvaCy5o{qn=Z%$eAe|f8>XJFKfNg_*mFQ0kyiK*in z?}J~z_|DvZt8KBLxp?s(wsZOiW9IS+EN|r$SV}Cm@5xLnt4(AGzkZ0N;}QtVeEu7* zA$RZ7S4*FU%Th^s^H=?yJd1DlTw|Mk$uA%5Kk&3fXN66Q`qb6!mloTd=lIOvA@MyR zp-!giL)GbXO#3zNuQuS;Juq2q#?q8?zK?IY>m1|VvOSM0z;ay@L!M9fzZJ)3&$#Jq zp4$1q;FoFI{we7O^V3YvIzC{%@Z#y-n+avxBGr2@M}DnRHw?ZQJpY;bxzr;W?zdmA zyE>`8ZvK)#Y4aJ@`u%UU`~BIf)p8}@0q + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::gm::corr_matrix_var_decl Member List
+
+
+ +

This is the complete list of members for stan::gm::corr_matrix_var_decl, including all inherited members.

+ + + + + + + + + + +
base_type_stan::gm::base_var_decl
base_var_decl()stan::gm::base_var_decl
base_var_decl(const base_expr_type &base_type)stan::gm::base_var_decl
base_var_decl(const std::string &name, const std::vector< expression > &dims, const base_expr_type &base_type)stan::gm::base_var_decl
corr_matrix_var_decl()stan::gm::corr_matrix_var_decl
corr_matrix_var_decl(expression const &K, std::string const &name, std::vector< expression > const &dims)stan::gm::corr_matrix_var_decl
dims_stan::gm::base_var_decl
K_stan::gm::corr_matrix_var_decl
name_stan::gm::base_var_decl
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1corr__matrix__var__decl.html b/doc/api/html/structstan_1_1gm_1_1corr__matrix__var__decl.html new file mode 100644 index 00000000000..0495bed2f9c --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1corr__matrix__var__decl.html @@ -0,0 +1,225 @@ + + + + + +Stan: stan::gm::corr_matrix_var_decl Struct Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::gm::corr_matrix_var_decl Struct Reference
+
+
+ +

#include <ast.hpp>

+
+Inheritance diagram for stan::gm::corr_matrix_var_decl:
+
+
+ + +stan::gm::base_var_decl + +
+ + + + + + + + + + + + + +

+Public Member Functions

 corr_matrix_var_decl ()
 
 corr_matrix_var_decl (expression const &K, std::string const &name, std::vector< expression > const &dims)
 
- Public Member Functions inherited from stan::gm::base_var_decl
 base_var_decl ()
 
 base_var_decl (const base_expr_type &base_type)
 
 base_var_decl (const std::string &name, const std::vector< expression > &dims, const base_expr_type &base_type)
 
+ + + + + + + + + + +

+Public Attributes

expression K_
 
- Public Attributes inherited from stan::gm::base_var_decl
std::string name_
 
std::vector< expressiondims_
 
base_expr_type base_type_
 
+

Detailed Description

+
+

Definition at line 506 of file ast.hpp.

+

Constructor & Destructor Documentation

+ +
+
+ + + + + + + +
stan::gm::corr_matrix_var_decl::corr_matrix_var_decl ()
+
+ +

Definition at line 841 of file ast_def.cpp.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
stan::gm::corr_matrix_var_decl::corr_matrix_var_decl (expression const & K,
std::string const & name,
std::vector< expression > const & dims 
)
+
+ +

Definition at line 842 of file ast_def.cpp.

+ +
+
+

Member Data Documentation

+ +
+
+ + + + +
expression stan::gm::corr_matrix_var_decl::K_
+
+ +

Definition at line 507 of file ast.hpp.

+ +
+
+
The documentation for this struct was generated from the following files: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1corr__matrix__var__decl.png b/doc/api/html/structstan_1_1gm_1_1corr__matrix__var__decl.png new file mode 100644 index 0000000000000000000000000000000000000000..d6a2e3d82e0b44efb7aaf22f826418ffdabe9fc7 GIT binary patch literal 745 zcmeAS@N?(olHy`uVBq!ia0vp^JAgQVgBeK9{pBwOq$C1-LR|m<{|{uoc=NTi|Ih>= z3ycpOIKbL@M;^%KC<*clW&kPzfvcxNj2IZ0Dm+~rLn;{G&b>WpwSs`F`0Z7H{;SV- z5y%Kg);r9zeAltwaaN3+dhhDFkBYzZmQA|yn#D#*b%SU;*H_W4 zXAjKMSP_$!_3U_--_g5m6PC!%ZJs_y*YSATwaw>tao^j2L%nW)$hN!Hyf#)#7+x+6 z30~F0{9)3Y=EFDN{c-(}bn|_g)|1Pk+jlE@?u}ddk?qcvn$kJ`**1Uo^Z#2ab-&DN z-iJLw(N})?Ok2IBh2>Jo)IFj%|NoA4o#gj5^ZK+U+rR4l_*vvJ>1x%pH<#>dl|9?5 zs*m13q3RibS$(OJ=YBQz=}RUS6?jUmwEnS4=X49x55v0*X;;=f*nWG-lg&-{cRp8{ zFLq})*MSI2ivu3SV~5oOPBQ{o8h$=`z@YpTh_5#Mf1o()?DV_&%jp@d;Z}2 zxgRfHzWkvg@aK_jGuwU%2i)J}DY{GIh~nR?E{3ytlP}$}(XH^A6tuQd;Y#=wv*uey z>i60vnI6tJf1Go`cgCSBPj51=Uq1P<$;Q`HrlxOO_x%#r?_ zS|GiV_59XkuZ4cmf4=iS&tt4%+_ScIS%^?G=jF9Ke9NOA^ZxKF{pKKkuw1AA!2IhK zmeKvSC%XgqLK~jF+I7lv|8{_nmN%Ha3)_`VI-56sqOvA9+>?aWK&7o|Dn zs)vq>?q^~$@VoBK`hfrBK}NSzK>X@sEQeyt&oBJisp{+}%-)0m( + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::gm::cov_matrix_var_decl Member List
+
+
+ +

This is the complete list of members for stan::gm::cov_matrix_var_decl, including all inherited members.

+ + + + + + + + + + +
base_type_stan::gm::base_var_decl
base_var_decl()stan::gm::base_var_decl
base_var_decl(const base_expr_type &base_type)stan::gm::base_var_decl
base_var_decl(const std::string &name, const std::vector< expression > &dims, const base_expr_type &base_type)stan::gm::base_var_decl
cov_matrix_var_decl()stan::gm::cov_matrix_var_decl
cov_matrix_var_decl(expression const &K, std::string const &name, std::vector< expression > const &dims)stan::gm::cov_matrix_var_decl
dims_stan::gm::base_var_decl
K_stan::gm::cov_matrix_var_decl
name_stan::gm::base_var_decl
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1cov__matrix__var__decl.html b/doc/api/html/structstan_1_1gm_1_1cov__matrix__var__decl.html new file mode 100644 index 00000000000..f6a5e3d938c --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1cov__matrix__var__decl.html @@ -0,0 +1,225 @@ + + + + + +Stan: stan::gm::cov_matrix_var_decl Struct Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::gm::cov_matrix_var_decl Struct Reference
+
+
+ +

#include <ast.hpp>

+
+Inheritance diagram for stan::gm::cov_matrix_var_decl:
+
+
+ + +stan::gm::base_var_decl + +
+ + + + + + + + + + + + + +

+Public Member Functions

 cov_matrix_var_decl ()
 
 cov_matrix_var_decl (expression const &K, std::string const &name, std::vector< expression > const &dims)
 
- Public Member Functions inherited from stan::gm::base_var_decl
 base_var_decl ()
 
 base_var_decl (const base_expr_type &base_type)
 
 base_var_decl (const std::string &name, const std::vector< expression > &dims, const base_expr_type &base_type)
 
+ + + + + + + + + + +

+Public Attributes

expression K_
 
- Public Attributes inherited from stan::gm::base_var_decl
std::string name_
 
std::vector< expressiondims_
 
base_expr_type base_type_
 
+

Detailed Description

+
+

Definition at line 497 of file ast.hpp.

+

Constructor & Destructor Documentation

+ +
+
+ + + + + + + +
stan::gm::cov_matrix_var_decl::cov_matrix_var_decl ()
+
+ +

Definition at line 832 of file ast_def.cpp.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
stan::gm::cov_matrix_var_decl::cov_matrix_var_decl (expression const & K,
std::string const & name,
std::vector< expression > const & dims 
)
+
+ +

Definition at line 834 of file ast_def.cpp.

+ +
+
+

Member Data Documentation

+ +
+
+ + + + +
expression stan::gm::cov_matrix_var_decl::K_
+
+ +

Definition at line 498 of file ast.hpp.

+ +
+
+
The documentation for this struct was generated from the following files: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1cov__matrix__var__decl.png b/doc/api/html/structstan_1_1gm_1_1cov__matrix__var__decl.png new file mode 100644 index 0000000000000000000000000000000000000000..fc841dca24e602dc80abf4aca0acb7d2275a3854 GIT binary patch literal 747 zcmeAS@N?(olHy`uVBq!ia0vp^TY)%$gBeI>upC(hq$C1-LR|m<{|{uoc=NTi|Ih>= z3ycpOIKbL@M;^%KC<*clW&kPzfvcxNj2IZ0sytmBLn;{G&V4&+v4Vgr|MgXS{ww<{ zX_%}CocvOD+lr@;Bz`^Sxcer4S>~)=!jn}>mpSTs+DToR^ki}Q6~{^EUQODl5}Nhr zJJY}ND-T}^UwbK;Soh@Ub+0)^lQM*4-*_LJG4-0)^B#x4bn>qZWtElJ?xd7mzQ4}nQs29G zU!S^6`eIrepg8GEzsU;KlkUw?lWM*!nYS$Sl`q5oCF~C6uO|Ka_(E{E_bc_1_8YZ9 z{nji8yql#CxD$^Jlv@OL2{SG*=FMV|2jS2w`@eB|Kgi~kdi|x@-1I=@-sN?1P3w1C z`>t<2q<(Kgrq=pjerR{~4CXGKIFPtlwt%&FrUdZ1@#v*U0Ewx_1_@^S%Ck+OOK!idt0K7^Mlm2r5_!UWhz*)|4aP~%U7>HFqD~?_h*_ng#9i{SDJI@ uwXp(&pH;jfL%l03l-B>YZxOJ%%s;bQEj8-8(?4L!WbkzLb6Mw<&;$UigI`Dh literal 0 HcmV?d00001 diff --git a/doc/api/html/structstan_1_1gm_1_1distribution-members.html b/doc/api/html/structstan_1_1gm_1_1distribution-members.html new file mode 100644 index 00000000000..e30985d3fde --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1distribution-members.html @@ -0,0 +1,114 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::gm::distribution Member List
+
+
+ +

This is the complete list of members for stan::gm::distribution, including all inherited members.

+ + + +
args_stan::gm::distribution
family_stan::gm::distribution
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1distribution.html b/doc/api/html/structstan_1_1gm_1_1distribution.html new file mode 100644 index 00000000000..9e853693638 --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1distribution.html @@ -0,0 +1,157 @@ + + + + + +Stan: stan::gm::distribution Struct Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::gm::distribution Struct Reference
+
+
+ +

#include <ast.hpp>

+ + + + + + +

+Public Attributes

std::string family_
 
std::vector< expressionargs_
 
+

Detailed Description

+
+

Definition at line 171 of file ast.hpp.

+

Member Data Documentation

+ +
+
+ + + + +
std::vector<expression> stan::gm::distribution::args_
+
+ +

Definition at line 173 of file ast.hpp.

+ +
+
+ +
+
+ + + + +
std::string stan::gm::distribution::family_
+
+ +

Definition at line 172 of file ast.hpp.

+ +
+
+
The documentation for this struct was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1division__expr-members.html b/doc/api/html/structstan_1_1gm_1_1division__expr-members.html new file mode 100644 index 00000000000..510dee629ee --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1division__expr-members.html @@ -0,0 +1,113 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::gm::division_expr Member List
+
+
+ +

This is the complete list of members for stan::gm::division_expr, including all inherited members.

+ + +
operator()(expression &expr1, const expression &expr2, std::ostream &error_msgs) const stan::gm::division_exprinline
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1division__expr.html b/doc/api/html/structstan_1_1gm_1_1division__expr.html new file mode 100644 index 00000000000..de4257d1b96 --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1division__expr.html @@ -0,0 +1,175 @@ + + + + + +Stan: stan::gm::division_expr Struct Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::gm::division_expr Struct Reference
+
+
+ +

#include <term_grammar_def.hpp>

+ + + + +

+Classes

struct  result
 
+ + + +

+Public Member Functions

expression operator() (expression &expr1, const expression &expr2, std::ostream &error_msgs) const
 
+

Detailed Description

+
+

Definition at line 158 of file term_grammar_def.hpp.

+

Member Function Documentation

+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
expression stan::gm::division_expr::operator() (expressionexpr1,
const expressionexpr2,
std::ostream & error_msgs 
) const
+
+inline
+
+ +

Definition at line 162 of file term_grammar_def.hpp.

+ +
+
+
The documentation for this struct was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1division__expr_1_1result-members.html b/doc/api/html/structstan_1_1gm_1_1division__expr_1_1result-members.html new file mode 100644 index 00000000000..06d7433906d --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1division__expr_1_1result-members.html @@ -0,0 +1,113 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::gm::division_expr::result< T1, T2, T3 > Member List
+
+
+ +

This is the complete list of members for stan::gm::division_expr::result< T1, T2, T3 >, including all inherited members.

+ + +
type typedefstan::gm::division_expr::result< T1, T2, T3 >
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1division__expr_1_1result.html b/doc/api/html/structstan_1_1gm_1_1division__expr_1_1result.html new file mode 100644 index 00000000000..fd93e348c1a --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1division__expr_1_1result.html @@ -0,0 +1,146 @@ + + + + + +Stan: stan::gm::division_expr::result< T1, T2, T3 > Struct Template Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::gm::division_expr::result< T1, T2, T3 > Struct Template Reference
+
+
+ +

#include <term_grammar_def.hpp>

+ + + + +

+Public Types

typedef expression type
 
+

Detailed Description

+

template<typename T1, typename T2, typename T3>
+struct stan::gm::division_expr::result< T1, T2, T3 >

+ + +

Definition at line 160 of file term_grammar_def.hpp.

+

Member Typedef Documentation

+ +
+
+
+template<typename T1 , typename T2 , typename T3 >
+ + + + +
typedef expression stan::gm::division_expr::result< T1, T2, T3 >::type
+
+ +

Definition at line 160 of file term_grammar_def.hpp.

+ +
+
+
The documentation for this struct was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1double__literal-members.html b/doc/api/html/structstan_1_1gm_1_1double__literal-members.html new file mode 100644 index 00000000000..2946a87878d --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1double__literal-members.html @@ -0,0 +1,117 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::gm::double_literal Member List
+
+
+ +

This is the complete list of members for stan::gm::double_literal, including all inherited members.

+ + + + + + +
double_literal()stan::gm::double_literal
double_literal(double val)stan::gm::double_literal
operator=(const double_literal &dl)stan::gm::double_literal
type_stan::gm::double_literal
val_stan::gm::double_literal
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1double__literal.html b/doc/api/html/structstan_1_1gm_1_1double__literal.html new file mode 100644 index 00000000000..e8e61b1b85c --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1double__literal.html @@ -0,0 +1,223 @@ + + + + + +Stan: stan::gm::double_literal Struct Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::gm::double_literal Struct Reference
+
+
+ +

#include <ast.hpp>

+ + + + + + + + +

+Public Member Functions

 double_literal ()
 
 double_literal (double val)
 
double_literaloperator= (const double_literal &dl)
 
+ + + + + +

+Public Attributes

double val_
 
expr_type type_
 
+

Detailed Description

+
+

Definition at line 282 of file ast.hpp.

+

Constructor & Destructor Documentation

+ +
+
+ + + + + + + +
stan::gm::double_literal::double_literal ()
+
+ +

Definition at line 531 of file ast_def.cpp.

+ +
+
+ +
+
+ + + + + + + + +
stan::gm::double_literal::double_literal (double val)
+
+ +

Definition at line 534 of file ast_def.cpp.

+ +
+
+

Member Function Documentation

+ +
+
+ + + + + + + + +
double_literal & stan::gm::double_literal::operator= (const double_literaldl)
+
+ +

Definition at line 538 of file ast_def.cpp.

+ +
+
+

Member Data Documentation

+ +
+
+ + + + +
expr_type stan::gm::double_literal::type_
+
+ +

Definition at line 284 of file ast.hpp.

+ +
+
+ +
+
+ + + + +
double stan::gm::double_literal::val_
+
+ +

Definition at line 283 of file ast.hpp.

+ +
+
+
The documentation for this struct was generated from the following files: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1double__var__decl-members.html b/doc/api/html/structstan_1_1gm_1_1double__var__decl-members.html new file mode 100644 index 00000000000..db6b2beb0d1 --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1double__var__decl-members.html @@ -0,0 +1,121 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::gm::double_var_decl Member List
+
+
+ +

This is the complete list of members for stan::gm::double_var_decl, including all inherited members.

+ + + + + + + + + + +
base_type_stan::gm::base_var_decl
base_var_decl()stan::gm::base_var_decl
base_var_decl(const base_expr_type &base_type)stan::gm::base_var_decl
base_var_decl(const std::string &name, const std::vector< expression > &dims, const base_expr_type &base_type)stan::gm::base_var_decl
dims_stan::gm::base_var_decl
double_var_decl()stan::gm::double_var_decl
double_var_decl(range const &range, std::string const &name, std::vector< expression > const &dims)stan::gm::double_var_decl
name_stan::gm::base_var_decl
range_stan::gm::double_var_decl
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1double__var__decl.html b/doc/api/html/structstan_1_1gm_1_1double__var__decl.html new file mode 100644 index 00000000000..74c7f3c6b74 --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1double__var__decl.html @@ -0,0 +1,225 @@ + + + + + +Stan: stan::gm::double_var_decl Struct Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::gm::double_var_decl Struct Reference
+
+
+ +

#include <ast.hpp>

+
+Inheritance diagram for stan::gm::double_var_decl:
+
+
+ + +stan::gm::base_var_decl + +
+ + + + + + + + + + + + + +

+Public Member Functions

 double_var_decl ()
 
 double_var_decl (range const &range, std::string const &name, std::vector< expression > const &dims)
 
- Public Member Functions inherited from stan::gm::base_var_decl
 base_var_decl ()
 
 base_var_decl (const base_expr_type &base_type)
 
 base_var_decl (const std::string &name, const std::vector< expression > &dims, const base_expr_type &base_type)
 
+ + + + + + + + + + +

+Public Attributes

range range_
 
- Public Attributes inherited from stan::gm::base_var_decl
std::string name_
 
std::vector< expressiondims_
 
base_expr_type base_type_
 
+

Detailed Description

+
+

Definition at line 415 of file ast.hpp.

+

Constructor & Destructor Documentation

+ +
+
+ + + + + + + +
stan::gm::double_var_decl::double_var_decl ()
+
+ +

Definition at line 731 of file ast_def.cpp.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
stan::gm::double_var_decl::double_var_decl (range const & range,
std::string const & name,
std::vector< expression > const & dims 
)
+
+ +

Definition at line 735 of file ast_def.cpp.

+ +
+
+

Member Data Documentation

+ +
+
+ + + + +
range stan::gm::double_var_decl::range_
+
+ +

Definition at line 416 of file ast.hpp.

+ +
+
+
The documentation for this struct was generated from the following files: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1double__var__decl.png b/doc/api/html/structstan_1_1gm_1_1double__var__decl.png new file mode 100644 index 0000000000000000000000000000000000000000..1bf784ce2b540cbca24cdb8e57da0390c07a8563 GIT binary patch literal 693 zcmeAS@N?(olHy`uVBq!ia0vp^^ME*jgBeKP-)Ykeq$C1-LR|m<{|{uoc=NTi|Ih>= z3ycpOIKbL@M;^%KC<*clW&kPzfvcxNj2IZ0Ts&PILn;{G&V9LQv4TLWeP3whe|I@$ zjn&+>#^oNop>m5I%;)c&uwUo&rXFoEPpMF0|4D0RRZL0=+ln^XodzPsBf}n|&xI>rFi0?b?@|^X^;Z?059i+qC^!9$Q;yr6_cF)V)=>CI>&BcswW>qi%)iJDAlWPbS z=0C8ilRe?;5#|k9j~F9NKQaIV2O<4ma$fPdUTv8JD`28rd-ATGQs61EvMT?qTJc)) zvmNu{x3&{+{9x9&({=H1Lhy#}$0zGfCP+;?-o1YB~R>^bdO$FXB9$z^wo7c3!W|PWjHb zQnw|m?uM)_jjLvjiwl0ci1X`BpS+5^$9J#CdE~vg^EkM?d6Dv^i#LkG=T?V&f4FLO zF{9pB|9`Rb9!{-fs#vl1(Px8u=Su!Rzqga|hji7vn1=Z4P~U#FbDdk97xI_Up<8i= U*95b8U>alaboFyt=akR{05SDVrvLx| literal 0 HcmV?d00001 diff --git a/doc/api/html/structstan_1_1gm_1_1dump__member__var__visgen-members.html b/doc/api/html/structstan_1_1gm_1_1dump__member__var__visgen-members.html new file mode 100644 index 00000000000..6cb6cb15c0d --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1dump__member__var__visgen-members.html @@ -0,0 +1,131 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::gm::dump_member_var_visgen Member List
+
+
+ +

This is the complete list of members for stan::gm::dump_member_var_visgen, including all inherited members.

+ + + + + + + + + + + + + + + + + + + + +
dump_member_var_visgen(std::ostream &o)stan::gm::dump_member_var_visgeninline
o_stan::gm::visgen
operator()(nil const &) const stan::gm::dump_member_var_visgeninline
operator()(int_var_decl const &x) const stan::gm::dump_member_var_visgeninline
operator()(double_var_decl const &x) const stan::gm::dump_member_var_visgeninline
operator()(vector_var_decl const &x) const stan::gm::dump_member_var_visgeninline
operator()(row_vector_var_decl const &x) const stan::gm::dump_member_var_visgeninline
operator()(unit_vector_var_decl const &x) const stan::gm::dump_member_var_visgeninline
operator()(simplex_var_decl const &x) const stan::gm::dump_member_var_visgeninline
operator()(ordered_var_decl const &x) const stan::gm::dump_member_var_visgeninline
operator()(positive_ordered_var_decl const &x) const stan::gm::dump_member_var_visgeninline
operator()(matrix_var_decl const &x) const stan::gm::dump_member_var_visgeninline
operator()(corr_matrix_var_decl const &x) const stan::gm::dump_member_var_visgeninline
operator()(cholesky_factor_var_decl const &x) const stan::gm::dump_member_var_visgeninline
operator()(cov_matrix_var_decl const &x) const stan::gm::dump_member_var_visgeninline
result_type typedefstan::gm::visgen
var_resizer_stan::gm::dump_member_var_visgen
var_size_validator_stan::gm::dump_member_var_visgen
visgen(std::ostream &o)stan::gm::visgeninline
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1dump__member__var__visgen.html b/doc/api/html/structstan_1_1gm_1_1dump__member__var__visgen.html new file mode 100644 index 00000000000..dd359d44792 --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1dump__member__var__visgen.html @@ -0,0 +1,576 @@ + + + + + +Stan: stan::gm::dump_member_var_visgen Struct Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::gm::dump_member_var_visgen Struct Reference
+
+
+ +

#include <generator.hpp>

+
+Inheritance diagram for stan::gm::dump_member_var_visgen:
+
+
+ + +stan::gm::visgen + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 dump_member_var_visgen (std::ostream &o)
 
void operator() (nil const &) const
 
void operator() (int_var_decl const &x) const
 
void operator() (double_var_decl const &x) const
 
void operator() (vector_var_decl const &x) const
 
void operator() (row_vector_var_decl const &x) const
 
void operator() (unit_vector_var_decl const &x) const
 
void operator() (simplex_var_decl const &x) const
 
void operator() (ordered_var_decl const &x) const
 
void operator() (positive_ordered_var_decl const &x) const
 
void operator() (matrix_var_decl const &x) const
 
void operator() (corr_matrix_var_decl const &x) const
 
void operator() (cholesky_factor_var_decl const &x) const
 
void operator() (cov_matrix_var_decl const &x) const
 
- Public Member Functions inherited from stan::gm::visgen
 visgen (std::ostream &o)
 
+ + + + + + + + +

+Public Attributes

var_resizing_visgen var_resizer_
 
var_size_validating_visgen var_size_validator_
 
- Public Attributes inherited from stan::gm::visgen
std::ostream & o_
 
+ + + + +

+Additional Inherited Members

- Public Types inherited from stan::gm::visgen
typedef void result_type
 
+

Detailed Description

+
+

Definition at line 1666 of file generator.hpp.

+

Constructor & Destructor Documentation

+ +
+
+ + + + + +
+ + + + + + + + +
stan::gm::dump_member_var_visgen::dump_member_var_visgen (std::ostream & o)
+
+inline
+
+ +

Definition at line 1669 of file generator.hpp.

+ +
+
+

Member Function Documentation

+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::dump_member_var_visgen::operator() (nil const & ) const
+
+inline
+
+ +

Definition at line 1674 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::dump_member_var_visgen::operator() (int_var_decl const & x) const
+
+inline
+
+ +

Definition at line 1675 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::dump_member_var_visgen::operator() (double_var_decl const & x) const
+
+inline
+
+ +

Definition at line 1705 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::dump_member_var_visgen::operator() (vector_var_decl const & x) const
+
+inline
+
+ +

Definition at line 1733 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::dump_member_var_visgen::operator() (row_vector_var_decl const & x) const
+
+inline
+
+ +

Definition at line 1767 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::dump_member_var_visgen::operator() (unit_vector_var_decl const & x) const
+
+inline
+
+ +

Definition at line 1801 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::dump_member_var_visgen::operator() (simplex_var_decl const & x) const
+
+inline
+
+ +

Definition at line 1835 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::dump_member_var_visgen::operator() (ordered_var_decl const & x) const
+
+inline
+
+ +

Definition at line 1869 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::dump_member_var_visgen::operator() (positive_ordered_var_decl const & x) const
+
+inline
+
+ +

Definition at line 1903 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::dump_member_var_visgen::operator() (matrix_var_decl const & x) const
+
+inline
+
+ +

Definition at line 1937 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::dump_member_var_visgen::operator() (corr_matrix_var_decl const & x) const
+
+inline
+
+ +

Definition at line 1975 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::dump_member_var_visgen::operator() (cholesky_factor_var_decl const & x) const
+
+inline
+
+ +

Definition at line 2011 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::dump_member_var_visgen::operator() (cov_matrix_var_decl const & x) const
+
+inline
+
+ +

Definition at line 2056 of file generator.hpp.

+ +
+
+

Member Data Documentation

+ +
+
+ + + + +
var_resizing_visgen stan::gm::dump_member_var_visgen::var_resizer_
+
+ +

Definition at line 1667 of file generator.hpp.

+ +
+
+ +
+
+ + + + +
var_size_validating_visgen stan::gm::dump_member_var_visgen::var_size_validator_
+
+ +

Definition at line 1668 of file generator.hpp.

+ +
+
+
The documentation for this struct was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1dump__member__var__visgen.png b/doc/api/html/structstan_1_1gm_1_1dump__member__var__visgen.png new file mode 100644 index 0000000000000000000000000000000000000000..936a97d4308df60640b6e2418d974f81375fcd2c GIT binary patch literal 744 zcmeAS@N?(olHy`uVBq!ia0vp^*MK;HgBeH$U8%kaq$C1-LR|m<{|{uoc=NTi|Ih>= z3ycpOIKbL@M;^%KC<*clW&kPzfvcxNj2IZ0$~|2iLn;{G&VAeWT7iePU3lgD|0lM` z2JL%!$>e3MvI^hsqYgGVX6(!}iOy|(s`AoTHd5J>`Pcl2 zNhK5g4iuHEi0`s~aDIM9O+?M~c?aztJpUDWmRIFvZEfGvztvScgO{CseRBFao%B>` zk4uSjn?xrYScM-`{c0+$yC^(I!IQltNXV`@gXgq*s?Q;TWmU|cRtti?+-64QCrs6T zEahpnhWlMuq-yiOl$bR$W zd`JJ1C9$%)^TQ{7@k-vTk{J;1;pF*io7gm!$cu+2sc7#?&b__OSG^(sC7Z$gXGeD3 zUG`*_@M}L)U%^nCZUV{*D{;)+<3ggTe~DWM4fU&B%A literal 0 HcmV?d00001 diff --git a/doc/api/html/structstan_1_1gm_1_1elt__division__expr-members.html b/doc/api/html/structstan_1_1gm_1_1elt__division__expr-members.html new file mode 100644 index 00000000000..437e139df64 --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1elt__division__expr-members.html @@ -0,0 +1,113 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::gm::elt_division_expr Member List
+
+
+ +

This is the complete list of members for stan::gm::elt_division_expr, including all inherited members.

+ + +
operator()(expression &expr1, const expression &expr2, std::ostream &error_msgs) const stan::gm::elt_division_exprinline
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1elt__division__expr.html b/doc/api/html/structstan_1_1gm_1_1elt__division__expr.html new file mode 100644 index 00000000000..020661234e3 --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1elt__division__expr.html @@ -0,0 +1,175 @@ + + + + + +Stan: stan::gm::elt_division_expr Struct Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::gm::elt_division_expr Struct Reference
+
+
+ +

#include <term_grammar_def.hpp>

+ + + + +

+Classes

struct  result
 
+ + + +

+Public Member Functions

expression operator() (expression &expr1, const expression &expr2, std::ostream &error_msgs) const
 
+

Detailed Description

+
+

Definition at line 256 of file term_grammar_def.hpp.

+

Member Function Documentation

+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
expression stan::gm::elt_division_expr::operator() (expressionexpr1,
const expressionexpr2,
std::ostream & error_msgs 
) const
+
+inline
+
+ +

Definition at line 260 of file term_grammar_def.hpp.

+ +
+
+
The documentation for this struct was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1elt__division__expr_1_1result-members.html b/doc/api/html/structstan_1_1gm_1_1elt__division__expr_1_1result-members.html new file mode 100644 index 00000000000..df960f12d07 --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1elt__division__expr_1_1result-members.html @@ -0,0 +1,113 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::gm::elt_division_expr::result< T1, T2, T3 > Member List
+
+
+ +

This is the complete list of members for stan::gm::elt_division_expr::result< T1, T2, T3 >, including all inherited members.

+ + +
type typedefstan::gm::elt_division_expr::result< T1, T2, T3 >
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1elt__division__expr_1_1result.html b/doc/api/html/structstan_1_1gm_1_1elt__division__expr_1_1result.html new file mode 100644 index 00000000000..dc89b84516d --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1elt__division__expr_1_1result.html @@ -0,0 +1,146 @@ + + + + + +Stan: stan::gm::elt_division_expr::result< T1, T2, T3 > Struct Template Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::gm::elt_division_expr::result< T1, T2, T3 > Struct Template Reference
+
+
+ +

#include <term_grammar_def.hpp>

+ + + + +

+Public Types

typedef expression type
 
+

Detailed Description

+

template<typename T1, typename T2, typename T3>
+struct stan::gm::elt_division_expr::result< T1, T2, T3 >

+ + +

Definition at line 258 of file term_grammar_def.hpp.

+

Member Typedef Documentation

+ +
+
+
+template<typename T1 , typename T2 , typename T3 >
+ + + + +
typedef expression stan::gm::elt_division_expr::result< T1, T2, T3 >::type
+
+ +

Definition at line 258 of file term_grammar_def.hpp.

+ +
+
+
The documentation for this struct was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1elt__multiplication__expr-members.html b/doc/api/html/structstan_1_1gm_1_1elt__multiplication__expr-members.html new file mode 100644 index 00000000000..7450d341f1e --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1elt__multiplication__expr-members.html @@ -0,0 +1,113 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::gm::elt_multiplication_expr Member List
+
+
+ +

This is the complete list of members for stan::gm::elt_multiplication_expr, including all inherited members.

+ + +
operator()(expression &expr1, const expression &expr2, std::ostream &error_msgs) const stan::gm::elt_multiplication_exprinline
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1elt__multiplication__expr.html b/doc/api/html/structstan_1_1gm_1_1elt__multiplication__expr.html new file mode 100644 index 00000000000..d876770c9c6 --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1elt__multiplication__expr.html @@ -0,0 +1,175 @@ + + + + + +Stan: stan::gm::elt_multiplication_expr Struct Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::gm::elt_multiplication_expr Struct Reference
+
+
+ +

#include <term_grammar_def.hpp>

+ + + + +

+Classes

struct  result
 
+ + + +

+Public Member Functions

expression operator() (expression &expr1, const expression &expr2, std::ostream &error_msgs) const
 
+

Detailed Description

+
+

Definition at line 232 of file term_grammar_def.hpp.

+

Member Function Documentation

+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
expression stan::gm::elt_multiplication_expr::operator() (expressionexpr1,
const expressionexpr2,
std::ostream & error_msgs 
) const
+
+inline
+
+ +

Definition at line 236 of file term_grammar_def.hpp.

+ +
+
+
The documentation for this struct was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1elt__multiplication__expr_1_1result-members.html b/doc/api/html/structstan_1_1gm_1_1elt__multiplication__expr_1_1result-members.html new file mode 100644 index 00000000000..203c3455aca --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1elt__multiplication__expr_1_1result-members.html @@ -0,0 +1,113 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::gm::elt_multiplication_expr::result< T1, T2, T3 > Member List
+
+
+ +

This is the complete list of members for stan::gm::elt_multiplication_expr::result< T1, T2, T3 >, including all inherited members.

+ + +
type typedefstan::gm::elt_multiplication_expr::result< T1, T2, T3 >
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1elt__multiplication__expr_1_1result.html b/doc/api/html/structstan_1_1gm_1_1elt__multiplication__expr_1_1result.html new file mode 100644 index 00000000000..5157fe1268f --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1elt__multiplication__expr_1_1result.html @@ -0,0 +1,146 @@ + + + + + +Stan: stan::gm::elt_multiplication_expr::result< T1, T2, T3 > Struct Template Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::gm::elt_multiplication_expr::result< T1, T2, T3 > Struct Template Reference
+
+
+ +

#include <term_grammar_def.hpp>

+ + + + +

+Public Types

typedef expression type
 
+

Detailed Description

+

template<typename T1, typename T2, typename T3>
+struct stan::gm::elt_multiplication_expr::result< T1, T2, T3 >

+ + +

Definition at line 234 of file term_grammar_def.hpp.

+

Member Typedef Documentation

+ +
+
+
+template<typename T1 , typename T2 , typename T3 >
+ + + + +
typedef expression stan::gm::elt_multiplication_expr::result< T1, T2, T3 >::type
+
+ +

Definition at line 234 of file term_grammar_def.hpp.

+ +
+
+
The documentation for this struct was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1error__codes-members.html b/doc/api/html/structstan_1_1gm_1_1error__codes-members.html new file mode 100644 index 00000000000..46e25831df0 --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1error__codes-members.html @@ -0,0 +1,118 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::gm::error_codes Member List
+
+
+ +

This is the complete list of members for stan::gm::error_codes, including all inherited members.

+ + + + + + + +
CONFIG enum valuestan::gm::error_codes
DATAERR enum valuestan::gm::error_codes
NOINPUT enum valuestan::gm::error_codes
OK enum valuestan::gm::error_codes
SOFTWARE enum valuestan::gm::error_codes
USAGE enum valuestan::gm::error_codes
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1error__codes.html b/doc/api/html/structstan_1_1gm_1_1error__codes.html new file mode 100644 index 00000000000..4c7bafacc37 --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1error__codes.html @@ -0,0 +1,166 @@ + + + + + +Stan: stan::gm::error_codes Struct Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::gm::error_codes Struct Reference
+
+
+ +

#include <error_codes.hpp>

+ + + + +

+Public Types

enum  {
+  OK = 0, +USAGE = 64, +DATAERR = 65, +NOINPUT = 66, +
+  SOFTWARE = 70, +CONFIG = 78 +
+ }
 
+

Detailed Description

+
+

Definition at line 7 of file error_codes.hpp.

+

Member Enumeration Documentation

+ +
+
+ + + + +
anonymous enum
+
+
Enumerator:
+ + + + + + +
OK  +
USAGE  +
DATAERR  +
NOINPUT  +
SOFTWARE  +
CONFIG  +
+
+
+ +

Definition at line 10 of file error_codes.hpp.

+ +
+
+
The documentation for this struct was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1expr__type-members.html b/doc/api/html/structstan_1_1gm_1_1expr__type-members.html new file mode 100644 index 00000000000..80cc7f130d9 --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1expr__type-members.html @@ -0,0 +1,125 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::gm::expr_type Member List
+
+
+ +

This is the complete list of members for stan::gm::expr_type, including all inherited members.

+ + + + + + + + + + + + + + +
base_type_stan::gm::expr_type
expr_type()stan::gm::expr_type
expr_type(const base_expr_type base_type)stan::gm::expr_type
expr_type(const base_expr_type base_type, size_t num_dims)stan::gm::expr_type
is_ill_formed() const stan::gm::expr_type
is_primitive() const stan::gm::expr_type
is_primitive_double() const stan::gm::expr_type
is_primitive_int() const stan::gm::expr_type
num_dims() const stan::gm::expr_type
num_dims_stan::gm::expr_type
operator!=(const expr_type &et) const stan::gm::expr_type
operator==(const expr_type &et) const stan::gm::expr_type
type() const stan::gm::expr_type
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1expr__type.html b/doc/api/html/structstan_1_1gm_1_1expr__type.html new file mode 100644 index 00000000000..65c310c670c --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1expr__type.html @@ -0,0 +1,387 @@ + + + + + +Stan: stan::gm::expr_type Struct Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::gm::expr_type Struct Reference
+
+
+ +

#include <ast.hpp>

+ + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 expr_type ()
 
 expr_type (const base_expr_type base_type)
 
 expr_type (const base_expr_type base_type, size_t num_dims)
 
bool operator== (const expr_type &et) const
 
bool operator!= (const expr_type &et) const
 
bool is_primitive () const
 
bool is_primitive_int () const
 
bool is_primitive_double () const
 
bool is_ill_formed () const
 
base_expr_type type () const
 
size_t num_dims () const
 
+ + + + + +

+Public Attributes

base_expr_type base_type_
 
size_t num_dims_
 
+

Detailed Description

+
+

Definition at line 68 of file ast.hpp.

+

Constructor & Destructor Documentation

+ +
+
+ + + + + + + +
stan::gm::expr_type::expr_type ()
+
+ +

Definition at line 50 of file ast_def.cpp.

+ +
+
+ +
+
+ + + + + + + + +
stan::gm::expr_type::expr_type (const base_expr_type base_type)
+
+ +

Definition at line 54 of file ast_def.cpp.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
stan::gm::expr_type::expr_type (const base_expr_type base_type,
size_t num_dims 
)
+
+ +

Definition at line 58 of file ast_def.cpp.

+ +
+
+

Member Function Documentation

+ +
+
+ + + + + + + +
bool stan::gm::expr_type::is_ill_formed () const
+
+ +

Definition at line 82 of file ast_def.cpp.

+ +
+
+ +
+
+ + + + + + + +
bool stan::gm::expr_type::is_primitive () const
+
+ +

Definition at line 70 of file ast_def.cpp.

+ +
+
+ +
+
+ + + + + + + +
bool stan::gm::expr_type::is_primitive_double () const
+
+ +

Definition at line 78 of file ast_def.cpp.

+ +
+
+ +
+
+ + + + + + + +
bool stan::gm::expr_type::is_primitive_int () const
+
+ +

Definition at line 74 of file ast_def.cpp.

+ +
+
+ +
+
+ + + + + + + +
size_t stan::gm::expr_type::num_dims () const
+
+ +

Definition at line 88 of file ast_def.cpp.

+ +
+
+ +
+
+ + + + + + + + +
bool stan::gm::expr_type::operator!= (const expr_typeet) const
+
+ +

Definition at line 67 of file ast_def.cpp.

+ +
+
+ +
+
+ + + + + + + + +
bool stan::gm::expr_type::operator== (const expr_typeet) const
+
+ +

Definition at line 63 of file ast_def.cpp.

+ +
+
+ +
+
+ + + + + + + +
base_expr_type stan::gm::expr_type::type () const
+
+ +

Definition at line 85 of file ast_def.cpp.

+ +
+
+

Member Data Documentation

+ +
+
+ + + + +
base_expr_type stan::gm::expr_type::base_type_
+
+ +

Definition at line 69 of file ast.hpp.

+ +
+
+ +
+
+ + + + +
size_t stan::gm::expr_type::num_dims_
+
+ +

Definition at line 70 of file ast.hpp.

+ +
+
+
The documentation for this struct was generated from the following files: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1expression-members.html b/doc/api/html/structstan_1_1gm_1_1expression-members.html new file mode 100644 index 00000000000..657664f0fe7 --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1expression-members.html @@ -0,0 +1,131 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::gm::expression Member List
+
+
+ +

This is the complete list of members for stan::gm::expression, including all inherited members.

+ + + + + + + + + + + + + + + + + + + + +
expr_stan::gm::expression
expression()stan::gm::expression
expression(const expression &e)stan::gm::expression
expression(const nil &expr)stan::gm::expression
expression(const int_literal &expr)stan::gm::expression
expression(const double_literal &expr)stan::gm::expression
expression(const array_literal &expr)stan::gm::expression
expression(const variable &expr)stan::gm::expression
expression(const fun &expr)stan::gm::expression
expression(const index_op &expr)stan::gm::expression
expression(const binary_op &expr)stan::gm::expression
expression(const unary_op &expr)stan::gm::expression
expression(const expression_t &expr_)stan::gm::expression
expression_t typedefstan::gm::expression
expression_type() const stan::gm::expression
operator*=(const expression &rhs)stan::gm::expression
operator+=(const expression &rhs)stan::gm::expression
operator-=(const expression &rhs)stan::gm::expression
operator/=(const expression &rhs)stan::gm::expression
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1expression.html b/doc/api/html/structstan_1_1gm_1_1expression.html new file mode 100644 index 00000000000..b6c9ff1f9bd --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1expression.html @@ -0,0 +1,525 @@ + + + + + +Stan: stan::gm::expression Struct Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::gm::expression Struct Reference
+
+
+ +

#include <ast.hpp>

+ + + + +

+Public Types

typedef boost::variant
+< boost::recursive_wrapper
+< nil >
+, boost::recursive_wrapper
+< int_literal >
+, boost::recursive_wrapper
+< double_literal >
+, boost::recursive_wrapper
+< array_literal >
+, boost::recursive_wrapper
+< variable >
+, boost::recursive_wrapper
+< fun >
+, boost::recursive_wrapper
+< index_op >
+, boost::recursive_wrapper
+< binary_op >
+, boost::recursive_wrapper
+< unary_op > > 
expression_t
 
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 expression ()
 
 expression (const expression &e)
 
 expression (const nil &expr)
 
 expression (const int_literal &expr)
 
 expression (const double_literal &expr)
 
 expression (const array_literal &expr)
 
 expression (const variable &expr)
 
 expression (const fun &expr)
 
 expression (const index_op &expr)
 
 expression (const binary_op &expr)
 
 expression (const unary_op &expr)
 
 expression (const expression_t &expr_)
 
expr_type expression_type () const
 
expressionoperator+= (const expression &rhs)
 
expressionoperator-= (const expression &rhs)
 
expressionoperator*= (const expression &rhs)
 
expressionoperator/= (const expression &rhs)
 
+ + + +

+Public Attributes

expression_t expr_
 
+

Detailed Description

+
+

Definition at line 194 of file ast.hpp.

+

Member Typedef Documentation

+ +
+
+ + + + +
typedef boost::variant<boost::recursive_wrapper<nil>, boost::recursive_wrapper<int_literal>, boost::recursive_wrapper<double_literal>, boost::recursive_wrapper<array_literal>, boost::recursive_wrapper<variable>, boost::recursive_wrapper<fun>, boost::recursive_wrapper<index_op>, boost::recursive_wrapper<binary_op>, boost::recursive_wrapper<unary_op> > stan::gm::expression::expression_t
+
+ +

Definition at line 204 of file ast.hpp.

+ +
+
+

Constructor & Destructor Documentation

+ +
+
+ + + + + + + +
stan::gm::expression::expression ()
+
+ +

Definition at line 362 of file ast_def.cpp.

+ +
+
+ +
+
+ + + + + + + + +
stan::gm::expression::expression (const expressione)
+
+ +

Definition at line 365 of file ast_def.cpp.

+ +
+
+ +
+
+ + + + + + + + +
stan::gm::expression::expression (const nilexpr)
+
+ +

Definition at line 376 of file ast_def.cpp.

+ +
+
+ +
+
+ + + + + + + + +
stan::gm::expression::expression (const int_literalexpr)
+
+ +

Definition at line 377 of file ast_def.cpp.

+ +
+
+ +
+
+ + + + + + + + +
stan::gm::expression::expression (const double_literalexpr)
+
+ +

Definition at line 378 of file ast_def.cpp.

+ +
+
+ +
+
+ + + + + + + + +
stan::gm::expression::expression (const array_literalexpr)
+
+ +

Definition at line 379 of file ast_def.cpp.

+ +
+
+ +
+
+ + + + + + + + +
stan::gm::expression::expression (const variableexpr)
+
+ +

Definition at line 380 of file ast_def.cpp.

+ +
+
+ +
+
+ + + + + + + + +
stan::gm::expression::expression (const funexpr)
+
+ +

Definition at line 381 of file ast_def.cpp.

+ +
+
+ +
+
+ + + + + + + + +
stan::gm::expression::expression (const index_opexpr)
+
+ +

Definition at line 382 of file ast_def.cpp.

+ +
+
+ +
+
+ + + + + + + + +
stan::gm::expression::expression (const binary_opexpr)
+
+ +

Definition at line 383 of file ast_def.cpp.

+ +
+
+ +
+
+ + + + + + + + +
stan::gm::expression::expression (const unary_opexpr)
+
+ +

Definition at line 384 of file ast_def.cpp.

+ +
+
+ +
+
+ + + + + + + + +
stan::gm::expression::expression (const expression_texpr_)
+
+ +

Definition at line 375 of file ast_def.cpp.

+ +
+
+

Member Function Documentation

+ +
+
+ + + + + + + +
expr_type stan::gm::expression::expression_type () const
+
+ +

Definition at line 368 of file ast_def.cpp.

+ +
+
+ +
+
+ + + + + + + + +
expression & stan::gm::expression::operator*= (const expressionrhs)
+
+ +

Definition at line 1029 of file ast_def.cpp.

+ +
+
+ +
+
+ + + + + + + + +
expression & stan::gm::expression::operator+= (const expressionrhs)
+
+ +

Definition at line 1019 of file ast_def.cpp.

+ +
+
+ +
+
+ + + + + + + + +
expression & stan::gm::expression::operator-= (const expressionrhs)
+
+ +

Definition at line 1024 of file ast_def.cpp.

+ +
+
+ +
+
+ + + + + + + + +
expression & stan::gm::expression::operator/= (const expressionrhs)
+
+ +

Definition at line 1034 of file ast_def.cpp.

+ +
+
+

Member Data Documentation

+ +
+
+ + + + +
expression_t stan::gm::expression::expr_
+
+ +

Definition at line 228 of file ast.hpp.

+ +
+
+
The documentation for this struct was generated from the following files: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1expression__as__statement-members.html b/doc/api/html/structstan_1_1gm_1_1expression__as__statement-members.html new file mode 100644 index 00000000000..c107532604a --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1expression__as__statement-members.html @@ -0,0 +1,113 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::gm::expression_as_statement Member List
+
+
+ +

This is the complete list of members for stan::gm::expression_as_statement, including all inherited members.

+ + +
operator()(bool &pass, const stan::gm::expression &expr, std::stringstream &error_msgs) const stan::gm::expression_as_statementinline
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1expression__as__statement.html b/doc/api/html/structstan_1_1gm_1_1expression__as__statement.html new file mode 100644 index 00000000000..2324e0148d2 --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1expression__as__statement.html @@ -0,0 +1,175 @@ + + + + + +Stan: stan::gm::expression_as_statement Struct Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::gm::expression_as_statement Struct Reference
+
+
+ +

#include <statement_grammar_def.hpp>

+ + + + +

+Classes

struct  result
 
+ + + +

+Public Member Functions

void operator() (bool &pass, const stan::gm::expression &expr, std::stringstream &error_msgs) const
 
+

Detailed Description

+
+

Definition at line 297 of file statement_grammar_def.hpp.

+

Member Function Documentation

+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
void stan::gm::expression_as_statement::operator() (bool & pass,
const stan::gm::expressionexpr,
std::stringstream & error_msgs 
) const
+
+inline
+
+ +

Definition at line 300 of file statement_grammar_def.hpp.

+ +
+
+
The documentation for this struct was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1expression__as__statement_1_1result-members.html b/doc/api/html/structstan_1_1gm_1_1expression__as__statement_1_1result-members.html new file mode 100644 index 00000000000..3433c55ce6c --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1expression__as__statement_1_1result-members.html @@ -0,0 +1,113 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::gm::expression_as_statement::result< T1, T2, T3 > Member List
+
+
+ +

This is the complete list of members for stan::gm::expression_as_statement::result< T1, T2, T3 >, including all inherited members.

+ + +
type typedefstan::gm::expression_as_statement::result< T1, T2, T3 >
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1expression__as__statement_1_1result.html b/doc/api/html/structstan_1_1gm_1_1expression__as__statement_1_1result.html new file mode 100644 index 00000000000..8e756efa369 --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1expression__as__statement_1_1result.html @@ -0,0 +1,146 @@ + + + + + +Stan: stan::gm::expression_as_statement::result< T1, T2, T3 > Struct Template Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::gm::expression_as_statement::result< T1, T2, T3 > Struct Template Reference
+
+
+ +

#include <statement_grammar_def.hpp>

+ + + + +

+Public Types

typedef void type
 
+

Detailed Description

+

template<typename T1, typename T2, typename T3>
+struct stan::gm::expression_as_statement::result< T1, T2, T3 >

+ + +

Definition at line 299 of file statement_grammar_def.hpp.

+

Member Typedef Documentation

+ +
+
+
+template<typename T1 , typename T2 , typename T3 >
+ + + + +
typedef void stan::gm::expression_as_statement::result< T1, T2, T3 >::type
+
+ +

Definition at line 299 of file statement_grammar_def.hpp.

+ +
+
+
The documentation for this struct was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1expression__grammar-members.html b/doc/api/html/structstan_1_1gm_1_1expression__grammar-members.html new file mode 100644 index 00000000000..9e6554def91 --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1expression__grammar-members.html @@ -0,0 +1,121 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::gm::expression_grammar< Iterator > Member List
+
+ +
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1expression__grammar.html b/doc/api/html/structstan_1_1gm_1_1expression__grammar.html new file mode 100644 index 00000000000..ef9c8c4ff22 --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1expression__grammar.html @@ -0,0 +1,334 @@ + + + + + +Stan: stan::gm::expression_grammar< Iterator > Struct Template Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::gm::expression_grammar< Iterator > Struct Template Reference
+
+
+ +

#include <expression_grammar.hpp>

+
+Inheritance diagram for stan::gm::expression_grammar< Iterator >:
+
+
+ + + +
+ + + + +

+Public Member Functions

 expression_grammar (variable_map &var_map, std::stringstream &error_msgs, bool allow_lte=true)
 
+ + + + + + + + + + + + + + + + + +

+Public Attributes

variable_mapvar_map_
 
std::stringstream & error_msgs_
 
term_grammar< Iterator > term_g
 
boost::spirit::qi::rule
+< Iterator, expression(var_origin),
+whitespace_grammar< Iterator > > 
expression_r
 
boost::spirit::qi::rule
+< Iterator, expression(var_origin),
+whitespace_grammar< Iterator > > 
expression07_r
 
boost::spirit::qi::rule
+< Iterator, expression(var_origin),
+whitespace_grammar< Iterator > > 
expression09_r
 
boost::spirit::qi::rule
+< Iterator, expression(var_origin),
+whitespace_grammar< Iterator > > 
expression10_r
 
boost::spirit::qi::rule
+< Iterator, expression(var_origin),
+whitespace_grammar< Iterator > > 
expression14_r
 
+

Detailed Description

+

template<typename Iterator>
+struct stan::gm::expression_grammar< Iterator >

+ + +

Definition at line 25 of file expression_grammar.hpp.

+

Constructor & Destructor Documentation

+ +
+
+
+template<typename Iterator >
+ + + + + + + + + + + + + + + + + + + + + + + + +
expression_grammar< Iterator >::expression_grammar (variable_mapvar_map,
std::stringstream & error_msgs,
bool allow_lte = true 
)
+
+ +

Definition at line 168 of file expression_grammar_def.hpp.

+ +
+
+

Member Data Documentation

+ +
+
+
+template<typename Iterator>
+ + + + +
std::stringstream& stan::gm::expression_grammar< Iterator >::error_msgs_
+
+ +

Definition at line 36 of file expression_grammar.hpp.

+ +
+
+ +
+
+
+template<typename Iterator>
+ + + + +
boost::spirit::qi::rule<Iterator, expression(var_origin), whitespace_grammar<Iterator> > stan::gm::expression_grammar< Iterator >::expression07_r
+
+ +

Definition at line 50 of file expression_grammar.hpp.

+ +
+
+ +
+
+
+template<typename Iterator>
+ + + + +
boost::spirit::qi::rule<Iterator, expression(var_origin), whitespace_grammar<Iterator> > stan::gm::expression_grammar< Iterator >::expression09_r
+
+ +

Definition at line 55 of file expression_grammar.hpp.

+ +
+
+ +
+
+
+template<typename Iterator>
+ + + + +
boost::spirit::qi::rule<Iterator, expression(var_origin), whitespace_grammar<Iterator> > stan::gm::expression_grammar< Iterator >::expression10_r
+
+ +

Definition at line 60 of file expression_grammar.hpp.

+ +
+
+ +
+
+
+template<typename Iterator>
+ + + + +
boost::spirit::qi::rule<Iterator, expression(var_origin), whitespace_grammar<Iterator> > stan::gm::expression_grammar< Iterator >::expression14_r
+
+ +

Definition at line 65 of file expression_grammar.hpp.

+ +
+
+ +
+
+
+template<typename Iterator>
+ + + + +
boost::spirit::qi::rule<Iterator, expression(var_origin), whitespace_grammar<Iterator> > stan::gm::expression_grammar< Iterator >::expression_r
+
+ +

Definition at line 45 of file expression_grammar.hpp.

+ +
+
+ +
+
+
+template<typename Iterator>
+ + + + +
term_grammar<Iterator> stan::gm::expression_grammar< Iterator >::term_g
+
+ +

Definition at line 38 of file expression_grammar.hpp.

+ +
+
+ +
+
+
+template<typename Iterator>
+ + + + +
variable_map& stan::gm::expression_grammar< Iterator >::var_map_
+
+ +

Definition at line 34 of file expression_grammar.hpp.

+ +
+
+
The documentation for this struct was generated from the following files: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1expression__grammar.png b/doc/api/html/structstan_1_1gm_1_1expression__grammar.png new file mode 100644 index 0000000000000000000000000000000000000000..15884fe9f1da3a3440f7d6248531b60d76180942 GIT binary patch literal 1419 zcmcgsdsLDK6#tZ?S(D1S($7klLu^`Ru7i)zY-;*7bgDMQ-(s)@ z0021T=Ijjs>YxgHX~9%BNtLlWOj!rr5=rkwO`dU$`0k85Cfk!@ zO^oZEo$scEre`9)f{I)t=L*2eNTBj@sT7_ zHEPwqWBpG7FM=siM9+jZ%N~>aLGBs}pJ$-~aqUlmG|Y;5IY)DKP?(ZmG8VBmv`DHt zV|3**A!)j9j&ume$`QybZcg0bt+w(e8$L3N&d2v(;bb_#9omcG#0fO-^nRZ;dRm^` z-Wqp3V!LY-yXq2t3Q^Wcuk?6YoBWy+0($qK?nDi>hD-fjd)>(alR0OG-Lg3AH2SfO z{*gEB#d@!5dYwL}t(Q_WqnIU;DWYO!u6P9T!FIGO#I9!$J*nFRA`T$4>;`D%;TUYe zaqe784d&x3MmVL!m`w;JeERqvG^8Lcd*b`(U|*lW_`8#&AmHvIp0K)3kbW1ALEu^X4&q^khHrJ$P}Nx z66#NHN2?ZWKFY<1INT?9ND`=%iAOvy&^(*!?V7eEAg{G=Ggk9dLD=v@wUwg zMaGNSUl$Q}xkYuO?6((tvJdU@x`nl}VjbFKXEun-Az|Sw*Thh#TCEjg z+#!PU*TthUf0|*C!Jy0!@(x75GMtGl8J{PaLYvU1K&SiJg;n=9*_`)bOfDoqW|K4W z%)Ad`!kQ(1uIDX0ztwPF!6jbJv1Du_++^A3FV;XF?ZHM+a$K zKl~a0$y>cdHA_dLk7lCUK1zb00ie0BRR~xD$!V7R;Q(xyfCuyw4W;UQ0P{o}fO%C~ z0oslY8x=duVgGBAN^wzLkCv_uO9#;858n#hnCx1%+Bv{%WBO8G5YYT(Zc!N9JM-ZE z^84tirTN8vB^Crqg7E(~p+JkYit;97x_BolHKaMbe`>o^^Nj=H%6En)$)W@fZj?;T ztAn-y7X?cheW z0ye3a!8kl!lE(=0V^f4i2WK&0LX)b8B0OM_i`+(^ZTo%sdRItUo79nHYdR*nJ;J6= z%6y4&I4Z^6!#c`gOU^4bE^Cj|9O{plJJ@^09ALUNJ|77P#QG}%?lKZdJ#uUQBWgrG z>?7KyvN=QXVro`9c}U&ZQsCTz(JrQy VK-;UfQ}sCk$i>r{{q4DHe*+9#pf~^k literal 0 HcmV?d00001 diff --git a/doc/api/html/structstan_1_1gm_1_1expression__type__vis-members.html b/doc/api/html/structstan_1_1gm_1_1expression__type__vis-members.html new file mode 100644 index 00000000000..786f94207d0 --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1expression__type__vis-members.html @@ -0,0 +1,121 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::gm::expression_type_vis Member List
+
+
+ +

This is the complete list of members for stan::gm::expression_type_vis, including all inherited members.

+ + + + + + + + + + +
operator()(const nil &e) const stan::gm::expression_type_vis
operator()(const int_literal &e) const stan::gm::expression_type_vis
operator()(const double_literal &e) const stan::gm::expression_type_vis
operator()(const array_literal &e) const stan::gm::expression_type_vis
operator()(const variable &e) const stan::gm::expression_type_vis
operator()(const fun &e) const stan::gm::expression_type_vis
operator()(const index_op &e) const stan::gm::expression_type_vis
operator()(const binary_op &e) const stan::gm::expression_type_vis
operator()(const unary_op &e) const stan::gm::expression_type_vis
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1expression__type__vis.html b/doc/api/html/structstan_1_1gm_1_1expression__type__vis.html new file mode 100644 index 00000000000..3ac0d1ce055 --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1expression__type__vis.html @@ -0,0 +1,314 @@ + + + + + +Stan: stan::gm::expression_type_vis Struct Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::gm::expression_type_vis Struct Reference
+
+
+ +

#include <ast.hpp>

+
+Inheritance diagram for stan::gm::expression_type_vis:
+
+
+ + + +
+ + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

expr_type operator() (const nil &e) const
 
expr_type operator() (const int_literal &e) const
 
expr_type operator() (const double_literal &e) const
 
expr_type operator() (const array_literal &e) const
 
expr_type operator() (const variable &e) const
 
expr_type operator() (const fun &e) const
 
expr_type operator() (const index_op &e) const
 
expr_type operator() (const binary_op &e) const
 
expr_type operator() (const unary_op &e) const
 
+

Detailed Description

+
+

Definition at line 176 of file ast.hpp.

+

Member Function Documentation

+ +
+
+ + + + + + + + +
expr_type stan::gm::expression_type_vis::operator() (const nile) const
+
+ +

Definition at line 330 of file ast_def.cpp.

+ +
+
+ +
+
+ + + + + + + + +
expr_type stan::gm::expression_type_vis::operator() (const int_literale) const
+
+ +

Definition at line 337 of file ast_def.cpp.

+ +
+
+ +
+
+ + + + + + + + +
expr_type stan::gm::expression_type_vis::operator() (const double_literale) const
+
+ +

Definition at line 340 of file ast_def.cpp.

+ +
+
+ +
+
+ + + + + + + + +
expr_type stan::gm::expression_type_vis::operator() (const array_literale) const
+
+ +

Definition at line 343 of file ast_def.cpp.

+ +
+
+ +
+
+ + + + + + + + +
expr_type stan::gm::expression_type_vis::operator() (const variablee) const
+
+ +

Definition at line 346 of file ast_def.cpp.

+ +
+
+ +
+
+ + + + + + + + +
expr_type stan::gm::expression_type_vis::operator() (const fune) const
+
+ +

Definition at line 349 of file ast_def.cpp.

+ +
+
+ +
+
+ + + + + + + + +
expr_type stan::gm::expression_type_vis::operator() (const index_ope) const
+
+ +

Definition at line 352 of file ast_def.cpp.

+ +
+
+ +
+
+ + + + + + + + +
expr_type stan::gm::expression_type_vis::operator() (const binary_ope) const
+
+ +

Definition at line 355 of file ast_def.cpp.

+ +
+
+ +
+
+ + + + + + + + +
expr_type stan::gm::expression_type_vis::operator() (const unary_ope) const
+
+ +

Definition at line 358 of file ast_def.cpp.

+ +
+
+
The documentation for this struct was generated from the following files: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1expression__type__vis.png b/doc/api/html/structstan_1_1gm_1_1expression__type__vis.png new file mode 100644 index 0000000000000000000000000000000000000000..e342df4ce2c604e4b71cda34649f2d2200f4b4d6 GIT binary patch literal 818 zcmeAS@N?(olHy`uVBq!ia0vp^$ACD1gBeJcR{b&rQW60^A+G=b{|7Q(y!l$%e`o@b z1;z&s9ANFdBM;y~4d0f@M|NYCg zoE#QxDSyXPwlS>lsu0udmLFX+Z~krdymWV~fl8*BE|2FdSHZ>3!8}WkKab6h`m_JB zvZua@)z{?`lfHQU7d!lIcRK&Mx<|R+B=m1jD7Fyelf3c&-lJs-$65COv#a2n>Q~r$ z`kzXrw}iXJe(saE)PgrDIjhC$PCPpQ((T9Tsx#UCCfz$P9?H9T#pf?GayL%veeu@t z)KlBIXC((u)Ok&?bK`oytko(jp=HvC$;CZuG`3l+H{5iyGIZ|Cx5+WzZfdO3YD+mc z>*k8(XWpMm_V5Zj>GnM*s$F5W@^tLIM(#KmpHqCl;pg%8?(YyTTr9WSzbH?{x_V)4v%9rH*ap z&X1p5a5HAk`HPDVAFZ!B^x3TFhrHcGyV&wr=J|X7bI9HK%k}(*B#%efL5n%(H5*Ue zUO4%9b=Chb++~LEUrawMex}`U663j75}FQ@>*RFzrXE=LNzr(Rm0R+TqZc$+8Gmn< zXisN7%zxw|Ut2nV@#eXG;-Qj72GU#SisWw=x3Gx~ia02tw@S~gEbNqS%jZg6E#~~# zo?ACNWK+K6wA^Vod;IJ8&Nj!yUcafkd>03&N_^aSYo*Y!ia^FKUz3jc+c9*?C&au@ znlh73Z3YLEQYv2%@pPsCuazNc{F4F_q+Mp1I$(e}^XBM?G8gy^-@11$` b?pO8>y`qV0INx{x6F7sXtDnm{r-UW|> + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::gm::expression_visgen Member List
+
+
+ +

This is the complete list of members for stan::gm::expression_visgen, including all inherited members.

+ + + + + + + + + + + + + + + + + +
expression_visgen(std::ostream &o)stan::gm::expression_visgeninline
o_stan::gm::visgen
operator()(nil const &) const stan::gm::expression_visgeninline
operator()(const int_literal &n) const stan::gm::expression_visgeninline
operator()(const double_literal &x) const stan::gm::expression_visgeninline
operator()(const array_literal &x) const stan::gm::expression_visgeninline
operator()(const variable &v) const stan::gm::expression_visgeninline
operator()(int n) const stan::gm::expression_visgeninline
operator()(double x) const stan::gm::expression_visgeninline
operator()(const std::string &x) const stan::gm::expression_visgeninline
operator()(const index_op &x) const stan::gm::expression_visgeninline
operator()(const fun &fx) const stan::gm::expression_visgeninline
operator()(const binary_op &expr) const stan::gm::expression_visgeninline
operator()(const unary_op &expr) const stan::gm::expression_visgeninline
result_type typedefstan::gm::visgen
visgen(std::ostream &o)stan::gm::visgeninline
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1expression__visgen.html b/doc/api/html/structstan_1_1gm_1_1expression__visgen.html new file mode 100644 index 00000000000..010685f2e55 --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1expression__visgen.html @@ -0,0 +1,511 @@ + + + + + +Stan: stan::gm::expression_visgen Struct Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::gm::expression_visgen Struct Reference
+
+
+ +

#include <generator.hpp>

+
+Inheritance diagram for stan::gm::expression_visgen:
+
+
+ + +stan::gm::visgen + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 expression_visgen (std::ostream &o)
 
void operator() (nil const &) const
 
void operator() (const int_literal &n) const
 
void operator() (const double_literal &x) const
 
void operator() (const array_literal &x) const
 
void operator() (const variable &v) const
 
void operator() (int n) const
 
void operator() (double x) const
 
void operator() (const std::string &x) const
 
void operator() (const index_op &x) const
 
void operator() (const fun &fx) const
 
void operator() (const binary_op &expr) const
 
void operator() (const unary_op &expr) const
 
- Public Member Functions inherited from stan::gm::visgen
 visgen (std::ostream &o)
 
+ + + + + + + +

+Additional Inherited Members

- Public Types inherited from stan::gm::visgen
typedef void result_type
 
- Public Attributes inherited from stan::gm::visgen
std::ostream & o_
 
+

Detailed Description

+
+

Definition at line 142 of file generator.hpp.

+

Constructor & Destructor Documentation

+ +
+
+ + + + + +
+ + + + + + + + +
stan::gm::expression_visgen::expression_visgen (std::ostream & o)
+
+inline
+
+ +

Definition at line 143 of file generator.hpp.

+ +
+
+

Member Function Documentation

+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::expression_visgen::operator() (nil const & ) const
+
+inline
+
+ +

Definition at line 144 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::expression_visgen::operator() (const int_literaln) const
+
+inline
+
+ +

Definition at line 147 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::expression_visgen::operator() (const double_literalx) const
+
+inline
+
+ +

Definition at line 148 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::expression_visgen::operator() (const array_literalx) const
+
+inline
+
+ +

Definition at line 154 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::expression_visgen::operator() (const variablev) const
+
+inline
+
+ +

Definition at line 168 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::expression_visgen::operator() (int n) const
+
+inline
+
+ +

Definition at line 169 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::expression_visgen::operator() (double x) const
+
+inline
+
+ +

Definition at line 170 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::expression_visgen::operator() (const std::string & x) const
+
+inline
+
+ +

Definition at line 171 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::expression_visgen::operator() (const index_opx) const
+
+inline
+
+ +

Definition at line 172 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::expression_visgen::operator() (const funfx) const
+
+inline
+
+ +

Definition at line 184 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::expression_visgen::operator() (const binary_opexpr) const
+
+inline
+
+ +

Definition at line 194 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::expression_visgen::operator() (const unary_opexpr) const
+
+inline
+
+ +

Definition at line 201 of file generator.hpp.

+ +
+
+
The documentation for this struct was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1expression__visgen.png b/doc/api/html/structstan_1_1gm_1_1expression__visgen.png new file mode 100644 index 0000000000000000000000000000000000000000..3418abb1fd714c10b41bbb6cf4081741e5137eae GIT binary patch literal 692 zcmeAS@N?(olHy`uVBq!ia0vp^D}XqFgBeKf3OV-)NJ#|vgt-3y{~ySF@#br3|Dg#$ z78oBmaDcV*jy#adQ4-`A%m7pb0#{Fk7%?y~IeWS|hEy=Vo%_1)wE_=YyMEC9{}atM zRbrg-*51DSA|mP1-A6N4^8QJaXnV+K;Bo2w<3*EFI=j6lsZMuoR*8KwwOl3ivG$@# zU-ZIV4r@qGJHF!2pA(ZW`_xR?uT?9UoE&1_sPeYJ(PW*)`q_I<3(o94eZp*&mxAZ< z7~!*P&!679RXcqBzFe(4DifC2uG?1k?vCZf9im0Arw6SQ_P8W>oiF(I1@1*}XaAJ- zw0btz_Etw&^|o93j;9`Huk~MEw=&f3s$-Vh#~1T{^>2-vw9Rt+i*E6aQ(x?S6|-vL zlB5}-CS}2szFCN?dg@MFJAFz2LzvqazcAoA%*$Z#oUwrYozkz0J4e3gEn58C)+b;2 z)pEH5V&beDj<_=F6b3SQ$A}yd!p;4ce^J0`2Qy2<{o_#eQWyIpdq%lu9=(RE3$ubmII*OXGWUi9>c(OpqrrrcRm z7HaRxdoibAWv?$!jIB$z zQ(~O8vGCP& + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::gm::for_statement Member List
+
+
+ +

This is the complete list of members for stan::gm::for_statement, including all inherited members.

+ + + + + + +
for_statement()stan::gm::for_statement
for_statement(std::string &variable, range &range, statement &stmt)stan::gm::for_statement
range_stan::gm::for_statement
statement_stan::gm::for_statement
variable_stan::gm::for_statement
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1for__statement.html b/doc/api/html/structstan_1_1gm_1_1for__statement.html new file mode 100644 index 00000000000..27fb170b045 --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1for__statement.html @@ -0,0 +1,234 @@ + + + + + +Stan: stan::gm::for_statement Struct Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::gm::for_statement Struct Reference
+
+
+ +

#include <ast.hpp>

+ + + + + + +

+Public Member Functions

 for_statement ()
 
 for_statement (std::string &variable, range &range, statement &stmt)
 
+ + + + + + + +

+Public Attributes

std::string variable_
 
range range_
 
statement statement_
 
+

Detailed Description

+
+

Definition at line 614 of file ast.hpp.

+

Constructor & Destructor Documentation

+ +
+
+ + + + + + + +
stan::gm::for_statement::for_statement ()
+
+ +

Definition at line 943 of file ast_def.cpp.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
stan::gm::for_statement::for_statement (std::string & variable,
rangerange,
statementstmt 
)
+
+ +

Definition at line 945 of file ast_def.cpp.

+ +
+
+

Member Data Documentation

+ +
+
+ + + + +
range stan::gm::for_statement::range_
+
+ +

Definition at line 616 of file ast.hpp.

+ +
+
+ +
+
+ + + + +
statement stan::gm::for_statement::statement_
+
+ +

Definition at line 617 of file ast.hpp.

+ +
+
+ +
+
+ + + + +
std::string stan::gm::for_statement::variable_
+
+ +

Definition at line 615 of file ast.hpp.

+ +
+
+
The documentation for this struct was generated from the following files: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1fun-members.html b/doc/api/html/structstan_1_1gm_1_1fun-members.html new file mode 100644 index 00000000000..6d35129a3c1 --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1fun-members.html @@ -0,0 +1,118 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::gm::fun Member List
+
+
+ +

This is the complete list of members for stan::gm::fun, including all inherited members.

+ + + + + + + +
args_stan::gm::fun
fun()stan::gm::fun
fun(std::string const &name, std::vector< expression > const &args)stan::gm::fun
infer_type()stan::gm::fun
name_stan::gm::fun
type_stan::gm::fun
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1fun.html b/doc/api/html/structstan_1_1gm_1_1fun.html new file mode 100644 index 00000000000..97462711709 --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1fun.html @@ -0,0 +1,248 @@ + + + + + +Stan: stan::gm::fun Struct Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::gm::fun Struct Reference
+
+
+ +

#include <ast.hpp>

+ + + + + + + + +

+Public Member Functions

 fun ()
 
 fun (std::string const &name, std::vector< expression > const &args)
 
void infer_type ()
 
+ + + + + + + +

+Public Attributes

std::string name_
 
std::vector< expressionargs_
 
expr_type type_
 
+

Detailed Description

+
+

Definition at line 307 of file ast.hpp.

+

Constructor & Destructor Documentation

+ +
+
+ + + + + + + +
stan::gm::fun::fun ()
+
+ +

Definition at line 567 of file ast_def.cpp.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
stan::gm::fun::fun (std::string const & name,
std::vector< expression > const & args 
)
+
+ +

Definition at line 568 of file ast_def.cpp.

+ +
+
+

Member Function Documentation

+ +
+
+ + + + + + + +
void stan::gm::fun::infer_type ()
+
+ +

Definition at line 574 of file ast_def.cpp.

+ +
+
+

Member Data Documentation

+ +
+
+ + + + +
std::vector<expression> stan::gm::fun::args_
+
+ +

Definition at line 309 of file ast.hpp.

+ +
+
+ +
+
+ + + + +
std::string stan::gm::fun::name_
+
+ +

Definition at line 308 of file ast.hpp.

+ +
+
+ +
+
+ + + + +
expr_type stan::gm::fun::type_
+
+ +

Definition at line 310 of file ast.hpp.

+ +
+
+
The documentation for this struct was generated from the following files: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1generate__init__vars__visgen-members.html b/doc/api/html/structstan_1_1gm_1_1generate__init__vars__visgen-members.html new file mode 100644 index 00000000000..8befea18778 --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1generate__init__vars__visgen-members.html @@ -0,0 +1,130 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::gm::generate_init_vars_visgen Member List
+
+
+ +

This is the complete list of members for stan::gm::generate_init_vars_visgen, including all inherited members.

+ + + + + + + + + + + + + + + + + + + +
generate_init_vars_visgen(int indent, std::ostream &o)stan::gm::generate_init_vars_visgeninline
indent_stan::gm::generate_init_vars_visgen
o_stan::gm::visgen
operator()(nil const &) const stan::gm::generate_init_vars_visgeninline
operator()(int_var_decl const &x) const stan::gm::generate_init_vars_visgeninline
operator()(double_var_decl const &x) const stan::gm::generate_init_vars_visgeninline
operator()(vector_var_decl const &x) const stan::gm::generate_init_vars_visgeninline
operator()(row_vector_var_decl const &x) const stan::gm::generate_init_vars_visgeninline
operator()(matrix_var_decl const &x) const stan::gm::generate_init_vars_visgeninline
operator()(unit_vector_var_decl const &x) const stan::gm::generate_init_vars_visgeninline
operator()(simplex_var_decl const &x) const stan::gm::generate_init_vars_visgeninline
operator()(ordered_var_decl const &x) const stan::gm::generate_init_vars_visgeninline
operator()(positive_ordered_var_decl const &x) const stan::gm::generate_init_vars_visgeninline
operator()(cholesky_factor_var_decl const &x) const stan::gm::generate_init_vars_visgeninline
operator()(cov_matrix_var_decl const &x) const stan::gm::generate_init_vars_visgeninline
operator()(corr_matrix_var_decl const &x) const stan::gm::generate_init_vars_visgeninline
result_type typedefstan::gm::visgen
visgen(std::ostream &o)stan::gm::visgeninline
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1generate__init__vars__visgen.html b/doc/api/html/structstan_1_1gm_1_1generate__init__vars__visgen.html new file mode 100644 index 00000000000..6f54106e16a --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1generate__init__vars__visgen.html @@ -0,0 +1,570 @@ + + + + + +Stan: stan::gm::generate_init_vars_visgen Struct Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::gm::generate_init_vars_visgen Struct Reference
+
+
+ +

#include <generator.hpp>

+
+Inheritance diagram for stan::gm::generate_init_vars_visgen:
+
+
+ + +stan::gm::visgen + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 generate_init_vars_visgen (int indent, std::ostream &o)
 
void operator() (nil const &) const
 
void operator() (int_var_decl const &x) const
 
void operator() (double_var_decl const &x) const
 
void operator() (vector_var_decl const &x) const
 
void operator() (row_vector_var_decl const &x) const
 
void operator() (matrix_var_decl const &x) const
 
void operator() (unit_vector_var_decl const &x) const
 
void operator() (simplex_var_decl const &x) const
 
void operator() (ordered_var_decl const &x) const
 
void operator() (positive_ordered_var_decl const &x) const
 
void operator() (cholesky_factor_var_decl const &x) const
 
void operator() (cov_matrix_var_decl const &x) const
 
void operator() (corr_matrix_var_decl const &x) const
 
- Public Member Functions inherited from stan::gm::visgen
 visgen (std::ostream &o)
 
+ + + + + + +

+Public Attributes

int indent_
 
- Public Attributes inherited from stan::gm::visgen
std::ostream & o_
 
+ + + + +

+Additional Inherited Members

- Public Types inherited from stan::gm::visgen
typedef void result_type
 
+

Detailed Description

+
+

Definition at line 1195 of file generator.hpp.

+

Constructor & Destructor Documentation

+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
stan::gm::generate_init_vars_visgen::generate_init_vars_visgen (int indent,
std::ostream & o 
)
+
+inline
+
+ +

Definition at line 1197 of file generator.hpp.

+ +
+
+

Member Function Documentation

+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::generate_init_vars_visgen::operator() (nil const & ) const
+
+inline
+
+ +

Definition at line 1202 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::generate_init_vars_visgen::operator() (int_var_decl const & x) const
+
+inline
+
+ +

Definition at line 1203 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::generate_init_vars_visgen::operator() (double_var_decl const & x) const
+
+inline
+
+ +

Definition at line 1207 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::generate_init_vars_visgen::operator() (vector_var_decl const & x) const
+
+inline
+
+ +

Definition at line 1211 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::generate_init_vars_visgen::operator() (row_vector_var_decl const & x) const
+
+inline
+
+ +

Definition at line 1215 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::generate_init_vars_visgen::operator() (matrix_var_decl const & x) const
+
+inline
+
+ +

Definition at line 1219 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::generate_init_vars_visgen::operator() (unit_vector_var_decl const & x) const
+
+inline
+
+ +

Definition at line 1223 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::generate_init_vars_visgen::operator() (simplex_var_decl const & x) const
+
+inline
+
+ +

Definition at line 1227 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::generate_init_vars_visgen::operator() (ordered_var_decl const & x) const
+
+inline
+
+ +

Definition at line 1231 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::generate_init_vars_visgen::operator() (positive_ordered_var_decl const & x) const
+
+inline
+
+ +

Definition at line 1235 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::generate_init_vars_visgen::operator() (cholesky_factor_var_decl const & x) const
+
+inline
+
+ +

Definition at line 1239 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::generate_init_vars_visgen::operator() (cov_matrix_var_decl const & x) const
+
+inline
+
+ +

Definition at line 1243 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::generate_init_vars_visgen::operator() (corr_matrix_var_decl const & x) const
+
+inline
+
+ +

Definition at line 1247 of file generator.hpp.

+ +
+
+

Member Data Documentation

+ +
+
+ + + + +
int stan::gm::generate_init_vars_visgen::indent_
+
+ +

Definition at line 1196 of file generator.hpp.

+ +
+
+
The documentation for this struct was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1generate__init__vars__visgen.png b/doc/api/html/structstan_1_1gm_1_1generate__init__vars__visgen.png new file mode 100644 index 0000000000000000000000000000000000000000..8d98ba1b7d327492bd042d941c790468d2e23e91 GIT binary patch literal 763 zcmeAS@N?(olHy`uVBq!ia0vp^SAaNxgBeJMDXxA3q$C1-LR|m<{|{uoc=NTi|Ih>= z3ycpOIKbL@M;^%KC<*clW&kPzfvcxNj2IZ0x;$MRLn;{G&b>IPS%Jru|N6{-|JB#) zY6x7&TD_b5Fwgb7Op2CjN5Yq7&Z-igtnzg!qpGKFhJ$Ai_b!f8o|implaxK*e{Bz# zRMNk%y~ub%w7l`X*Zwgz>wdWZVms7w|8;pN|AZx%e@UHk-+n|w;_}0-7nWMTUH68; z^H)f?!_iOO3vbR@GBItlTJbXmPpkFWr}9_MOAgp4ll*h7rWR1==Us~eZ!EH6Ox0c7 zt5Un__4_G}r`|<`ZT9PW96v4oMO`*uQhD(t$&-t3{r%_q)AQ1{KGuqt?eF4NB?Ci`>qN<+NR@=NM^}YP}Y4VczYYmf@h?y)y2t965giQk$3bIX3-d*HvI!6L6fa^bUg|Nf-49xqlbd>&n2F(WehL4E7qXBSND zS6|%qK>ZD;WgSOCVd%&CPCxH<`zH9bUw4{*E~@!zZcoz8-hD>(sTV%B-1^m5&n+r@ z+u%*%R)rjon`<=}Zdz&+oOvl{;WD$* + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::gm::generate_init_visgen Member List
+
+
+ +

This is the complete list of members for stan::gm::generate_init_visgen, including all inherited members.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + +
function_args(const std::string &fun_prefix, const D &x) const stan::gm::generate_init_visgeninline
generate_buffer_loop(const std::string &base_type, const std::string &name, const std::vector< expression > &dims, const expression &dim1=expression(), const expression &dim2=expression(), int indent=2U) const stan::gm::generate_init_visgeninline
generate_check_double(const std::string &name, size_t) const stan::gm::generate_init_visgeninline
generate_check_int(const std::string &name, size_t) const stan::gm::generate_init_visgeninline
generate_declaration(const std::string &name, const std::string &base_type, const std::vector< expression > &dims, const expression &type_arg1=expression(), const expression &type_arg2=expression()) const stan::gm::generate_init_visgeninline
generate_dims_loop_fwd(const std::vector< expression > &dims, int indent=2U) const stan::gm::generate_init_visgeninline
generate_indent_num_dims(size_t base_indent, const std::vector< expression > &dims, const expression &dim1, const expression &dim2) const stan::gm::generate_init_visgeninline
generate_init_visgen(std::ostream &o)stan::gm::generate_init_visgeninline
generate_name_dims(const std::string name, size_t num_dims) const stan::gm::generate_init_visgeninline
generate_write_loop(const std::string &write_method_name, const std::string &var_name, const std::vector< expression > &dims) const stan::gm::generate_init_visgeninline
o_stan::gm::visgen
operator()(nil const &) const stan::gm::generate_init_visgeninline
operator()(int_var_decl const &x) const stan::gm::generate_init_visgeninline
operator()(double_var_decl const &x) const stan::gm::generate_init_visgeninline
operator()(vector_var_decl const &x) const stan::gm::generate_init_visgeninline
operator()(row_vector_var_decl const &x) const stan::gm::generate_init_visgeninline
operator()(matrix_var_decl const &x) const stan::gm::generate_init_visgeninline
operator()(unit_vector_var_decl const &x) const stan::gm::generate_init_visgeninline
operator()(simplex_var_decl const &x) const stan::gm::generate_init_visgeninline
operator()(ordered_var_decl const &x) const stan::gm::generate_init_visgeninline
operator()(positive_ordered_var_decl const &x) const stan::gm::generate_init_visgeninline
operator()(cholesky_factor_var_decl const &x) const stan::gm::generate_init_visgeninline
operator()(cov_matrix_var_decl const &x) const stan::gm::generate_init_visgeninline
operator()(corr_matrix_var_decl const &x) const stan::gm::generate_init_visgeninline
result_type typedefstan::gm::visgen
var_size_validator_stan::gm::generate_init_visgen
visgen(std::ostream &o)stan::gm::visgeninline
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1generate__init__visgen.html b/doc/api/html/structstan_1_1gm_1_1generate__init__visgen.html new file mode 100644 index 00000000000..df826c83a86 --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1generate__init__visgen.html @@ -0,0 +1,965 @@ + + + + + +Stan: stan::gm::generate_init_visgen Struct Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::gm::generate_init_visgen Struct Reference
+
+
+ +

#include <generator.hpp>

+
+Inheritance diagram for stan::gm::generate_init_visgen:
+
+
+ + +stan::gm::visgen + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 generate_init_visgen (std::ostream &o)
 
void operator() (nil const &) const
 
void operator() (int_var_decl const &x) const
 
template<typename D >
std::string function_args (const std::string &fun_prefix, const D &x) const
 
void operator() (double_var_decl const &x) const
 
void operator() (vector_var_decl const &x) const
 
void operator() (row_vector_var_decl const &x) const
 
void operator() (matrix_var_decl const &x) const
 
void operator() (unit_vector_var_decl const &x) const
 
void operator() (simplex_var_decl const &x) const
 
void operator() (ordered_var_decl const &x) const
 
void operator() (positive_ordered_var_decl const &x) const
 
void operator() (cholesky_factor_var_decl const &x) const
 
void operator() (cov_matrix_var_decl const &x) const
 
void operator() (corr_matrix_var_decl const &x) const
 
void generate_write_loop (const std::string &write_method_name, const std::string &var_name, const std::vector< expression > &dims) const
 
void generate_name_dims (const std::string name, size_t num_dims) const
 
void generate_declaration (const std::string &name, const std::string &base_type, const std::vector< expression > &dims, const expression &type_arg1=expression(), const expression &type_arg2=expression()) const
 
void generate_indent_num_dims (size_t base_indent, const std::vector< expression > &dims, const expression &dim1, const expression &dim2) const
 
void generate_buffer_loop (const std::string &base_type, const std::string &name, const std::vector< expression > &dims, const expression &dim1=expression(), const expression &dim2=expression(), int indent=2U) const
 
void generate_dims_loop_fwd (const std::vector< expression > &dims, int indent=2U) const
 
void generate_check_int (const std::string &name, size_t) const
 
void generate_check_double (const std::string &name, size_t) const
 
- Public Member Functions inherited from stan::gm::visgen
 visgen (std::ostream &o)
 
+ + + + + + +

+Public Attributes

var_size_validating_visgen var_size_validator_
 
- Public Attributes inherited from stan::gm::visgen
std::ostream & o_
 
+ + + + +

+Additional Inherited Members

- Public Types inherited from stan::gm::visgen
typedef void result_type
 
+

Detailed Description

+
+

Definition at line 2335 of file generator.hpp.

+

Constructor & Destructor Documentation

+ +
+
+ + + + + +
+ + + + + + + + +
stan::gm::generate_init_visgen::generate_init_visgen (std::ostream & o)
+
+inline
+
+ +

Definition at line 2337 of file generator.hpp.

+ +
+
+

Member Function Documentation

+ +
+
+
+template<typename D >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
std::string stan::gm::generate_init_visgen::function_args (const std::string & fun_prefix,
const D & x 
) const
+
+inline
+
+ +

Definition at line 2350 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
void stan::gm::generate_init_visgen::generate_buffer_loop (const std::string & base_type,
const std::string & name,
const std::vector< expression > & dims,
const expressiondim1 = expression(),
const expressiondim2 = expression(),
int indent = 2U 
) const
+
+inline
+
+ +

Definition at line 2490 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
void stan::gm::generate_init_visgen::generate_check_double (const std::string & name,
size_t  
) const
+
+inline
+
+ +

Definition at line 2552 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
void stan::gm::generate_init_visgen::generate_check_int (const std::string & name,
size_t  
) const
+
+inline
+
+ +

Definition at line 2544 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
void stan::gm::generate_init_visgen::generate_declaration (const std::string & name,
const std::string & base_type,
const std::vector< expression > & dims,
const expressiontype_arg1 = expression(),
const expressiontype_arg2 = expression() 
) const
+
+inline
+
+ +

Definition at line 2471 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
void stan::gm::generate_init_visgen::generate_dims_loop_fwd (const std::vector< expression > & dims,
int indent = 2U 
) const
+
+inline
+
+ +

Definition at line 2533 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
void stan::gm::generate_init_visgen::generate_indent_num_dims (size_t base_indent,
const std::vector< expression > & dims,
const expressiondim1,
const expressiondim2 
) const
+
+inline
+
+ +

Definition at line 2482 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
void stan::gm::generate_init_visgen::generate_name_dims (const std::string name,
size_t num_dims 
) const
+
+inline
+
+ +

Definition at line 2465 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
void stan::gm::generate_init_visgen::generate_write_loop (const std::string & write_method_name,
const std::string & var_name,
const std::vector< expression > & dims 
) const
+
+inline
+
+ +

Definition at line 2455 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::generate_init_visgen::operator() (nil const & ) const
+
+inline
+
+ +

Definition at line 2341 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::generate_init_visgen::operator() (int_var_decl const & x) const
+
+inline
+
+ +

Definition at line 2342 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::generate_init_visgen::operator() (double_var_decl const & x) const
+
+inline
+
+ +

Definition at line 2374 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::generate_init_visgen::operator() (vector_var_decl const & x) const
+
+inline
+
+ +

Definition at line 2382 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::generate_init_visgen::operator() (row_vector_var_decl const & x) const
+
+inline
+
+ +

Definition at line 2390 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::generate_init_visgen::operator() (matrix_var_decl const & x) const
+
+inline
+
+ +

Definition at line 2398 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::generate_init_visgen::operator() (unit_vector_var_decl const & x) const
+
+inline
+
+ +

Definition at line 2406 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::generate_init_visgen::operator() (simplex_var_decl const & x) const
+
+inline
+
+ +

Definition at line 2413 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::generate_init_visgen::operator() (ordered_var_decl const & x) const
+
+inline
+
+ +

Definition at line 2420 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::generate_init_visgen::operator() (positive_ordered_var_decl const & x) const
+
+inline
+
+ +

Definition at line 2427 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::generate_init_visgen::operator() (cholesky_factor_var_decl const & x) const
+
+inline
+
+ +

Definition at line 2434 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::generate_init_visgen::operator() (cov_matrix_var_decl const & x) const
+
+inline
+
+ +

Definition at line 2441 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::generate_init_visgen::operator() (corr_matrix_var_decl const & x) const
+
+inline
+
+ +

Definition at line 2448 of file generator.hpp.

+ +
+
+

Member Data Documentation

+ +
+
+ + + + +
var_size_validating_visgen stan::gm::generate_init_visgen::var_size_validator_
+
+ +

Definition at line 2336 of file generator.hpp.

+ +
+
+
The documentation for this struct was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1generate__init__visgen.png b/doc/api/html/structstan_1_1gm_1_1generate__init__visgen.png new file mode 100644 index 0000000000000000000000000000000000000000..7451bf7d9dd74f34187df3f6227a620b2143c5ba GIT binary patch literal 714 zcmeAS@N?(olHy`uVBq!ia0vp^TYxx#gBeJ+A6q{KNJ#|vgt-3y{~ySF@#br3|Dg#$ z78oBmaDcV*jy#adQ4-`A%m7pb0#{Fk7%?y~MS8k8hEy=Vo%^v+f2z^@|0k|T z25ew;k6r$K(u9C>r`(Hky6)}wxoq-PP0jO_H*?e^8Y03cFne0XL&WB)h*TA$-W=$Kq7OyGx+~9ZHb+E-Q!Z^ z-+PzYsvdvrUEVb1_WT>lq5Y=qJFQqwZg~{AR!;BRgeBX~G5%R~!JfNTFWbCGdu0ZH zy4AcLDzY!{=yhj?)vsgdso;7tm{bybGwZTJO5tx=J~C59r+836L$CVZa?4i_ays`hI>4rWtm6s-%hsd&Au?3^`-8)DEDdi zoL{hPzO`8De%z6@wtA^m-^0>s!j+Wlne!q-<9XYn^|d-ZwW-~U^r{>yy%R?=V1DD`V+ zP-+_g?%N;z({_n%zRLZfC+g$*+sqH_FE+4!xB$YtzqAWD#s6aGkyhIVvj6}9 literal 0 HcmV?d00001 diff --git a/doc/api/html/structstan_1_1gm_1_1generate__local__var__init__nan__visgen-members.html b/doc/api/html/structstan_1_1gm_1_1generate__local__var__init__nan__visgen-members.html new file mode 100644 index 00000000000..ff8b9792cb8 --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1generate__local__var__init__nan__visgen-members.html @@ -0,0 +1,133 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::gm::generate_local_var_init_nan_visgen Member List
+
+
+ +

This is the complete list of members for stan::gm::generate_local_var_init_nan_visgen, including all inherited members.

+ + + + + + + + + + + + + + + + + + + + + + +
declare_vars_stan::gm::generate_local_var_init_nan_visgen
generate_init(const T &x) const stan::gm::generate_local_var_init_nan_visgeninline
generate_local_var_init_nan_visgen(bool declare_vars, bool is_var, int indent, std::ostream &o)stan::gm::generate_local_var_init_nan_visgeninline
indent_stan::gm::generate_local_var_init_nan_visgen
is_var_stan::gm::generate_local_var_init_nan_visgen
o_stan::gm::visgen
operator()(const nil &) const stan::gm::generate_local_var_init_nan_visgeninline
operator()(const int_var_decl &x) const stan::gm::generate_local_var_init_nan_visgeninline
operator()(const double_var_decl &x) const stan::gm::generate_local_var_init_nan_visgeninline
operator()(const vector_var_decl &x) const stan::gm::generate_local_var_init_nan_visgeninline
operator()(const row_vector_var_decl &x) const stan::gm::generate_local_var_init_nan_visgeninline
operator()(const matrix_var_decl &x) const stan::gm::generate_local_var_init_nan_visgeninline
operator()(const unit_vector_var_decl &x) const stan::gm::generate_local_var_init_nan_visgeninline
operator()(const simplex_var_decl &x) const stan::gm::generate_local_var_init_nan_visgeninline
operator()(const ordered_var_decl &x) const stan::gm::generate_local_var_init_nan_visgeninline
operator()(const positive_ordered_var_decl &x) const stan::gm::generate_local_var_init_nan_visgeninline
operator()(const cholesky_factor_var_decl &x) const stan::gm::generate_local_var_init_nan_visgeninline
operator()(const cov_matrix_var_decl &x) const stan::gm::generate_local_var_init_nan_visgeninline
operator()(const corr_matrix_var_decl &x) const stan::gm::generate_local_var_init_nan_visgeninline
result_type typedefstan::gm::visgen
visgen(std::ostream &o)stan::gm::visgeninline
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1generate__local__var__init__nan__visgen.html b/doc/api/html/structstan_1_1gm_1_1generate__local__var__init__nan__visgen.html new file mode 100644 index 00000000000..eed92bf3093 --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1generate__local__var__init__nan__visgen.html @@ -0,0 +1,645 @@ + + + + + +Stan: stan::gm::generate_local_var_init_nan_visgen Struct Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::gm::generate_local_var_init_nan_visgen Struct Reference
+
+
+ +

#include <generator.hpp>

+
+Inheritance diagram for stan::gm::generate_local_var_init_nan_visgen:
+
+
+ + +stan::gm::visgen + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 generate_local_var_init_nan_visgen (bool declare_vars, bool is_var, int indent, std::ostream &o)
 
void operator() (const nil &) const
 
void operator() (const int_var_decl &x) const
 
void operator() (const double_var_decl &x) const
 
void operator() (const vector_var_decl &x) const
 
void operator() (const row_vector_var_decl &x) const
 
void operator() (const matrix_var_decl &x) const
 
void operator() (const unit_vector_var_decl &x) const
 
void operator() (const simplex_var_decl &x) const
 
void operator() (const ordered_var_decl &x) const
 
void operator() (const positive_ordered_var_decl &x) const
 
void operator() (const cholesky_factor_var_decl &x) const
 
void operator() (const cov_matrix_var_decl &x) const
 
void operator() (const corr_matrix_var_decl &x) const
 
template<typename T >
void generate_init (const T &x) const
 
- Public Member Functions inherited from stan::gm::visgen
 visgen (std::ostream &o)
 
+ + + + + + + + + + +

+Public Attributes

const bool declare_vars_
 
const bool is_var_
 
const int indent_
 
- Public Attributes inherited from stan::gm::visgen
std::ostream & o_
 
+ + + + +

+Additional Inherited Members

- Public Types inherited from stan::gm::visgen
typedef void result_type
 
+

Detailed Description

+
+

Definition at line 1122 of file generator.hpp.

+

Constructor & Destructor Documentation

+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
stan::gm::generate_local_var_init_nan_visgen::generate_local_var_init_nan_visgen (bool declare_vars,
bool is_var,
int indent,
std::ostream & o 
)
+
+inline
+
+ +

Definition at line 1126 of file generator.hpp.

+ +
+
+

Member Function Documentation

+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + +
void stan::gm::generate_local_var_init_nan_visgen::generate_init (const T & x) const
+
+inline
+
+ +

Definition at line 1175 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::generate_local_var_init_nan_visgen::operator() (const nil) const
+
+inline
+
+ +

Definition at line 1135 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::generate_local_var_init_nan_visgen::operator() (const int_var_declx) const
+
+inline
+
+ +

Definition at line 1138 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::generate_local_var_init_nan_visgen::operator() (const double_var_declx) const
+
+inline
+
+ +

Definition at line 1141 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::generate_local_var_init_nan_visgen::operator() (const vector_var_declx) const
+
+inline
+
+ +

Definition at line 1144 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::generate_local_var_init_nan_visgen::operator() (const row_vector_var_declx) const
+
+inline
+
+ +

Definition at line 1147 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::generate_local_var_init_nan_visgen::operator() (const matrix_var_declx) const
+
+inline
+
+ +

Definition at line 1150 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::generate_local_var_init_nan_visgen::operator() (const unit_vector_var_declx) const
+
+inline
+
+ +

Definition at line 1153 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::generate_local_var_init_nan_visgen::operator() (const simplex_var_declx) const
+
+inline
+
+ +

Definition at line 1156 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::generate_local_var_init_nan_visgen::operator() (const ordered_var_declx) const
+
+inline
+
+ +

Definition at line 1159 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::generate_local_var_init_nan_visgen::operator() (const positive_ordered_var_declx) const
+
+inline
+
+ +

Definition at line 1162 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::generate_local_var_init_nan_visgen::operator() (const cholesky_factor_var_declx) const
+
+inline
+
+ +

Definition at line 1165 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::generate_local_var_init_nan_visgen::operator() (const cov_matrix_var_declx) const
+
+inline
+
+ +

Definition at line 1168 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::generate_local_var_init_nan_visgen::operator() (const corr_matrix_var_declx) const
+
+inline
+
+ +

Definition at line 1171 of file generator.hpp.

+ +
+
+

Member Data Documentation

+ +
+
+ + + + +
const bool stan::gm::generate_local_var_init_nan_visgen::declare_vars_
+
+ +

Definition at line 1123 of file generator.hpp.

+ +
+
+ +
+
+ + + + +
const int stan::gm::generate_local_var_init_nan_visgen::indent_
+
+ +

Definition at line 1125 of file generator.hpp.

+ +
+
+ +
+
+ + + + +
const bool stan::gm::generate_local_var_init_nan_visgen::is_var_
+
+ +

Definition at line 1124 of file generator.hpp.

+ +
+
+
The documentation for this struct was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1generate__local__var__init__nan__visgen.png b/doc/api/html/structstan_1_1gm_1_1generate__local__var__init__nan__visgen.png new file mode 100644 index 0000000000000000000000000000000000000000..7644a7f0d20e5957d96d1ee469b347e5c3cb4195 GIT binary patch literal 846 zcmeAS@N?(olHy`uVBq!ia0y~yVB`U^12~w0{;3|H5Rpozo zJHLRPCQoL}oZ-3eme_5V%votSdFvymrEdImRLS$&_f&~CMbE&tM2SfvUzsF4C&^v$ zKjv}i{g-71Dlfn85_5}kT=IBZ($2qA&b^;kv-)JN{-)e*QdSd|EPoXwQ5pLCmYG@U z>02wWOxqj!*kRJT3s()iW=>K4Y8kM8L*?yMujdYv=B<8xI_3PQVuPZaQ;aNwlz@7l zzk0>H#s43B!WZS!5}v!9*55U@k~k}O=}Oonuiwj0rC9s+<;VGTtCX(Y#p^%0Ur*R` z*6TZm*4g-~PW@JHaIW@gcd=v8)qe)YMbEr1+0NZOY03T9`KMhb-SYtZ1L7s^p43RO z*JX@*8uu~i9A=pH?Q5!38{>t{)I=a9kRk#kfC|YY-m@z&owBB8BEy>KIEl7I1{O&m z;Zka#rzkw#kCfWw-zOK3=!{3dVTM1D%1LUyY7HtZl{vY zR=y2CJ3q>2TO2dn7&d=XzpBM<;d1`PEO*-P@0NDGbNs%}AGw~3VgWa|JKx^8neniR z^_%02?M62@KR1*(+wfL1TGsaWZONWTi_YG-byHKK`9XQQdl&EHcjgz&F3X+j`4E!s zapN0vPvE>Onq^YQG=AK=S@Z69wHteKz>3(nM~!~|oVPLkT5*ERxwh(KdwjO_{!fT3 zd&m;|y8P)oh8zE$-~DwY^U}Oex65tRh6w-w literal 0 HcmV?d00001 diff --git a/doc/api/html/structstan_1_1gm_1_1increment__log__prob__statement-members.html b/doc/api/html/structstan_1_1gm_1_1increment__log__prob__statement-members.html new file mode 100644 index 00000000000..5e02cbdc20d --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1increment__log__prob__statement-members.html @@ -0,0 +1,115 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::gm::increment_log_prob_statement Member List
+
+ +
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1increment__log__prob__statement.html b/doc/api/html/structstan_1_1gm_1_1increment__log__prob__statement.html new file mode 100644 index 00000000000..a19cdf3730d --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1increment__log__prob__statement.html @@ -0,0 +1,186 @@ + + + + + +Stan: stan::gm::increment_log_prob_statement Struct Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::gm::increment_log_prob_statement Struct Reference
+
+
+ +

#include <ast.hpp>

+ + + + + + +

+Public Member Functions

 increment_log_prob_statement ()
 
 increment_log_prob_statement (const expression &log_prob)
 
+ + + +

+Public Attributes

expression log_prob_
 
+

Detailed Description

+
+

Definition at line 608 of file ast.hpp.

+

Constructor & Destructor Documentation

+ +
+
+ + + + + + + +
stan::gm::increment_log_prob_statement::increment_log_prob_statement ()
+
+ +

Definition at line 937 of file ast_def.cpp.

+ +
+
+ +
+
+ + + + + + + + +
stan::gm::increment_log_prob_statement::increment_log_prob_statement (const expressionlog_prob)
+
+ +

Definition at line 939 of file ast_def.cpp.

+ +
+
+

Member Data Documentation

+ +
+
+ + + + +
expression stan::gm::increment_log_prob_statement::log_prob_
+
+ +

Definition at line 609 of file ast.hpp.

+ +
+
+
The documentation for this struct was generated from the following files: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1index__op-members.html b/doc/api/html/structstan_1_1gm_1_1index__op-members.html new file mode 100644 index 00000000000..52c13516c85 --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1index__op-members.html @@ -0,0 +1,118 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::gm::index_op Member List
+
+
+ +

This is the complete list of members for stan::gm::index_op, including all inherited members.

+ + + + + + + +
dimss_stan::gm::index_op
expr_stan::gm::index_op
index_op()stan::gm::index_op
index_op(const expression &expr, const std::vector< std::vector< expression > > &dimss)stan::gm::index_op
infer_type()stan::gm::index_op
type_stan::gm::index_op
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1index__op.html b/doc/api/html/structstan_1_1gm_1_1index__op.html new file mode 100644 index 00000000000..ee37b2ad504 --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1index__op.html @@ -0,0 +1,249 @@ + + + + + +Stan: stan::gm::index_op Struct Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::gm::index_op Struct Reference
+
+
+ +

#include <ast.hpp>

+ + + + + + + + +

+Public Member Functions

 index_op ()
 
 index_op (const expression &expr, const std::vector< std::vector< expression > > &dimss)
 
void infer_type ()
 
+ + + + + + + +

+Public Attributes

expression expr_
 
std::vector< std::vector
+< expression > > 
dimss_
 
expr_type type_
 
+

Detailed Description

+
+

Definition at line 327 of file ast.hpp.

+

Constructor & Destructor Documentation

+ +
+
+ + + + + + + +
stan::gm::index_op::index_op ()
+
+ +

Definition at line 614 of file ast_def.cpp.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
stan::gm::index_op::index_op (const expressionexpr,
const std::vector< std::vector< expression > > & dimss 
)
+
+ +

Definition at line 615 of file ast_def.cpp.

+ +
+
+

Member Function Documentation

+ +
+
+ + + + + + + +
void stan::gm::index_op::infer_type ()
+
+ +

Definition at line 621 of file ast_def.cpp.

+ +
+
+

Member Data Documentation

+ +
+
+ + + + +
std::vector<std::vector<expression> > stan::gm::index_op::dimss_
+
+ +

Definition at line 329 of file ast.hpp.

+ +
+
+ +
+
+ + + + +
expression stan::gm::index_op::expr_
+
+ +

Definition at line 328 of file ast.hpp.

+ +
+
+ +
+
+ + + + +
expr_type stan::gm::index_op::type_
+
+ +

Definition at line 330 of file ast.hpp.

+ +
+
+
The documentation for this struct was generated from the following files: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1init__local__var__visgen-members.html b/doc/api/html/structstan_1_1gm_1_1init__local__var__visgen-members.html new file mode 100644 index 00000000000..2ec879a7a33 --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1init__local__var__visgen-members.html @@ -0,0 +1,133 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::gm::init_local_var_visgen Member List
+
+
+ +

This is the complete list of members for stan::gm::init_local_var_visgen, including all inherited members.

+ + + + + + + + + + + + + + + + + + + + + + +
declare_vars_stan::gm::init_local_var_visgen
generate_initialize_array(const std::string &var_type, const std::string &read_type, const std::vector< expression > &read_args, const std::string &name, const std::vector< expression > &dims) const stan::gm::init_local_var_visgeninline
generate_initialize_array_bounded(const D &x, const std::string &base_type, const std::string &read_fun_prefix, const std::vector< expression > &dim_args) const stan::gm::init_local_var_visgeninline
init_local_var_visgen(bool declare_vars, bool is_var, std::ostream &o)stan::gm::init_local_var_visgeninline
is_var_stan::gm::init_local_var_visgen
o_stan::gm::visgen
operator()(const nil &) const stan::gm::init_local_var_visgeninline
operator()(const int_var_decl &x) const stan::gm::init_local_var_visgeninline
operator()(const double_var_decl &x) const stan::gm::init_local_var_visgeninline
operator()(const vector_var_decl &x) const stan::gm::init_local_var_visgeninline
operator()(const row_vector_var_decl &x) const stan::gm::init_local_var_visgeninline
operator()(const matrix_var_decl &x) const stan::gm::init_local_var_visgeninline
operator()(const unit_vector_var_decl &x) const stan::gm::init_local_var_visgeninline
operator()(const simplex_var_decl &x) const stan::gm::init_local_var_visgeninline
operator()(const ordered_var_decl &x) const stan::gm::init_local_var_visgeninline
operator()(const positive_ordered_var_decl &x) const stan::gm::init_local_var_visgeninline
operator()(const cholesky_factor_var_decl &x) const stan::gm::init_local_var_visgeninline
operator()(const cov_matrix_var_decl &x) const stan::gm::init_local_var_visgeninline
operator()(const corr_matrix_var_decl &x) const stan::gm::init_local_var_visgeninline
result_type typedefstan::gm::visgen
visgen(std::ostream &o)stan::gm::visgeninline
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1init__local__var__visgen.html b/doc/api/html/structstan_1_1gm_1_1init__local__var__visgen.html new file mode 100644 index 00000000000..6aaf90fe312 --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1init__local__var__visgen.html @@ -0,0 +1,701 @@ + + + + + +Stan: stan::gm::init_local_var_visgen Struct Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::gm::init_local_var_visgen Struct Reference
+
+
+ +

#include <generator.hpp>

+
+Inheritance diagram for stan::gm::init_local_var_visgen:
+
+
+ + +stan::gm::visgen + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 init_local_var_visgen (bool declare_vars, bool is_var, std::ostream &o)
 
template<typename D >
void generate_initialize_array_bounded (const D &x, const std::string &base_type, const std::string &read_fun_prefix, const std::vector< expression > &dim_args) const
 
void operator() (const nil &) const
 
void operator() (const int_var_decl &x) const
 
void operator() (const double_var_decl &x) const
 
void operator() (const vector_var_decl &x) const
 
void operator() (const row_vector_var_decl &x) const
 
void operator() (const matrix_var_decl &x) const
 
void operator() (const unit_vector_var_decl &x) const
 
void operator() (const simplex_var_decl &x) const
 
void operator() (const ordered_var_decl &x) const
 
void operator() (const positive_ordered_var_decl &x) const
 
void operator() (const cholesky_factor_var_decl &x) const
 
void operator() (const cov_matrix_var_decl &x) const
 
void operator() (const corr_matrix_var_decl &x) const
 
void generate_initialize_array (const std::string &var_type, const std::string &read_type, const std::vector< expression > &read_args, const std::string &name, const std::vector< expression > &dims) const
 
- Public Member Functions inherited from stan::gm::visgen
 visgen (std::ostream &o)
 
+ + + + + + + + +

+Public Attributes

const bool declare_vars_
 
const bool is_var_
 
- Public Attributes inherited from stan::gm::visgen
std::ostream & o_
 
+ + + + +

+Additional Inherited Members

- Public Types inherited from stan::gm::visgen
typedef void result_type
 
+

Detailed Description

+
+

Definition at line 501 of file generator.hpp.

+

Constructor & Destructor Documentation

+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
stan::gm::init_local_var_visgen::init_local_var_visgen (bool declare_vars,
bool is_var,
std::ostream & o 
)
+
+inline
+
+ +

Definition at line 504 of file generator.hpp.

+ +
+
+

Member Function Documentation

+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
void stan::gm::init_local_var_visgen::generate_initialize_array (const std::string & var_type,
const std::string & read_type,
const std::vector< expression > & read_args,
const std::string & name,
const std::vector< expression > & dims 
) const
+
+inline
+
+ +

Definition at line 595 of file generator.hpp.

+ +
+
+ +
+
+
+template<typename D >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
void stan::gm::init_local_var_visgen::generate_initialize_array_bounded (const D & x,
const std::string & base_type,
const std::string & read_fun_prefix,
const std::vector< expression > & dim_args 
) const
+
+inline
+
+ +

Definition at line 512 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::init_local_var_visgen::operator() (const nil) const
+
+inline
+
+ +

Definition at line 532 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::init_local_var_visgen::operator() (const int_var_declx) const
+
+inline
+
+ +

Definition at line 533 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::init_local_var_visgen::operator() (const double_var_declx) const
+
+inline
+
+ +

Definition at line 536 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::init_local_var_visgen::operator() (const vector_var_declx) const
+
+inline
+
+ +

Definition at line 540 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::init_local_var_visgen::operator() (const row_vector_var_declx) const
+
+inline
+
+ +

Definition at line 545 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::init_local_var_visgen::operator() (const matrix_var_declx) const
+
+inline
+
+ +

Definition at line 550 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::init_local_var_visgen::operator() (const unit_vector_var_declx) const
+
+inline
+
+ +

Definition at line 556 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::init_local_var_visgen::operator() (const simplex_var_declx) const
+
+inline
+
+ +

Definition at line 561 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::init_local_var_visgen::operator() (const ordered_var_declx) const
+
+inline
+
+ +

Definition at line 566 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::init_local_var_visgen::operator() (const positive_ordered_var_declx) const
+
+inline
+
+ +

Definition at line 571 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::init_local_var_visgen::operator() (const cholesky_factor_var_declx) const
+
+inline
+
+ +

Definition at line 576 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::init_local_var_visgen::operator() (const cov_matrix_var_declx) const
+
+inline
+
+ +

Definition at line 583 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::init_local_var_visgen::operator() (const corr_matrix_var_declx) const
+
+inline
+
+ +

Definition at line 589 of file generator.hpp.

+ +
+
+

Member Data Documentation

+ +
+
+ + + + +
const bool stan::gm::init_local_var_visgen::declare_vars_
+
+ +

Definition at line 502 of file generator.hpp.

+ +
+
+ +
+
+ + + + +
const bool stan::gm::init_local_var_visgen::is_var_
+
+ +

Definition at line 503 of file generator.hpp.

+ +
+
+
The documentation for this struct was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1init__local__var__visgen.png b/doc/api/html/structstan_1_1gm_1_1init__local__var__visgen.png new file mode 100644 index 0000000000000000000000000000000000000000..aefe9ad1766b46c49c006c305a8be5f2dda0539e GIT binary patch literal 711 zcmeAS@N?(olHy`uVBq!ia0vp^+krTMgBeKXd=!}uq$C1-LR|m<{|{uoc=NTi|Ih>= z3ycpOIKbL@M;^%KC<*clW&kPzfvcxNj2IZ0!aQ9ZLn;{G&V4;;wSoZK?DMPk{8wJj zsU@!1z9a2hfNAI!&xDpVnUnF;QX|z`Tqi9%yjS%k-}h-M*6XU+J%3Hm{_YXP?Vazr ztDE~?VkzJ8)Vl{?EA!g9KT^H_~YCr z`kvsqORl~?^UTOKf9n4%pt6TabKmq=p0U2>yK1uX#pj$VnJwP$Q~!Rk|FG`8&v&2} z^DE^~W3N;P#yEPtUH>Y@+P}|d*=Hq>(9?QnKOb4;r?T?=jKli>8S=i#oxZ!2$NSW+ zyFdH-<0joR6jSxI-4~!f=}YOI=t*x1@;x^te~p`#I+MR4|0BbU37&i9`z?>Ee~sI^ zTx9;$+vkNDyzfXK;QP+D;qYEYpmGLleB6dE0jC)POb1GKm^aA2<4tgX`uCz*(1%}Z ze=rt2YTo%@_Lp?N!q(`$jQ1w*xvu=Na$5fM=MLKfZ1lH#PkgHU<3)Yxk@-j6cW$=P z;>}eqG|;UnvwGKg@we@5vrl3-%_n@H_gW=>-w%u1vTavA_PYGr`pM7oq*|`ub%8gP z-|sc#+%#GB=tvPe!wt`4ub-^FxAskXknH<^F7IFO z{*)K;X+rtttZgOcd-^A))qZ~s3dP*z)2$sgr(WJ~?SG27-1~)LZnpc{&r2fJ8EXH% zso%Qu!;J4QGnuaJiJSN50=vcw_b+a{xcQ&`-phYr`U_o~ICX~q{6K%VS2N$(Sk*3Y csOAsDYzcL<00F1{z*NWJ>FVdQ&MBb@05 + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::gm::int_literal Member List
+
+
+ +

This is the complete list of members for stan::gm::int_literal, including all inherited members.

+ + + + + + + +
int_literal()stan::gm::int_literal
int_literal(int val)stan::gm::int_literal
int_literal(const int_literal &il)stan::gm::int_literal
operator=(const int_literal &il)stan::gm::int_literal
type_stan::gm::int_literal
val_stan::gm::int_literal
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1int__literal.html b/doc/api/html/structstan_1_1gm_1_1int__literal.html new file mode 100644 index 00000000000..5ce7044aa65 --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1int__literal.html @@ -0,0 +1,243 @@ + + + + + +Stan: stan::gm::int_literal Struct Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::gm::int_literal Struct Reference
+
+
+ +

#include <ast.hpp>

+ + + + + + + + + + +

+Public Member Functions

 int_literal ()
 
 int_literal (int val)
 
 int_literal (const int_literal &il)
 
int_literaloperator= (const int_literal &il)
 
+ + + + + +

+Public Attributes

int val_
 
expr_type type_
 
+

Detailed Description

+
+

Definition at line 272 of file ast.hpp.

+

Constructor & Destructor Documentation

+ +
+
+ + + + + + + +
stan::gm::int_literal::int_literal ()
+
+ +

Definition at line 513 of file ast_def.cpp.

+ +
+
+ +
+
+ + + + + + + + +
stan::gm::int_literal::int_literal (int val)
+
+ +

Definition at line 516 of file ast_def.cpp.

+ +
+
+ +
+
+ + + + + + + + +
stan::gm::int_literal::int_literal (const int_literalil)
+
+ +

Definition at line 520 of file ast_def.cpp.

+ +
+
+

Member Function Documentation

+ +
+
+ + + + + + + + +
int_literal & stan::gm::int_literal::operator= (const int_literalil)
+
+ +

Definition at line 524 of file ast_def.cpp.

+ +
+
+

Member Data Documentation

+ +
+
+ + + + +
expr_type stan::gm::int_literal::type_
+
+ +

Definition at line 274 of file ast.hpp.

+ +
+
+ +
+
+ + + + +
int stan::gm::int_literal::val_
+
+ +

Definition at line 273 of file ast.hpp.

+ +
+
+
The documentation for this struct was generated from the following files: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1int__var__decl-members.html b/doc/api/html/structstan_1_1gm_1_1int__var__decl-members.html new file mode 100644 index 00000000000..63471d4d87e --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1int__var__decl-members.html @@ -0,0 +1,121 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::gm::int_var_decl Member List
+
+
+ +

This is the complete list of members for stan::gm::int_var_decl, including all inherited members.

+ + + + + + + + + + +
base_type_stan::gm::base_var_decl
base_var_decl()stan::gm::base_var_decl
base_var_decl(const base_expr_type &base_type)stan::gm::base_var_decl
base_var_decl(const std::string &name, const std::vector< expression > &dims, const base_expr_type &base_type)stan::gm::base_var_decl
dims_stan::gm::base_var_decl
int_var_decl()stan::gm::int_var_decl
int_var_decl(range const &range, std::string const &name, std::vector< expression > const &dims)stan::gm::int_var_decl
name_stan::gm::base_var_decl
range_stan::gm::int_var_decl
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1int__var__decl.html b/doc/api/html/structstan_1_1gm_1_1int__var__decl.html new file mode 100644 index 00000000000..2559d2c7523 --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1int__var__decl.html @@ -0,0 +1,225 @@ + + + + + +Stan: stan::gm::int_var_decl Struct Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::gm::int_var_decl Struct Reference
+
+
+ +

#include <ast.hpp>

+
+Inheritance diagram for stan::gm::int_var_decl:
+
+
+ + +stan::gm::base_var_decl + +
+ + + + + + + + + + + + + +

+Public Member Functions

 int_var_decl ()
 
 int_var_decl (range const &range, std::string const &name, std::vector< expression > const &dims)
 
- Public Member Functions inherited from stan::gm::base_var_decl
 base_var_decl ()
 
 base_var_decl (const base_expr_type &base_type)
 
 base_var_decl (const std::string &name, const std::vector< expression > &dims, const base_expr_type &base_type)
 
+ + + + + + + + + + +

+Public Attributes

range range_
 
- Public Attributes inherited from stan::gm::base_var_decl
std::string name_
 
std::vector< expressiondims_
 
base_expr_type base_type_
 
+

Detailed Description

+
+

Definition at line 406 of file ast.hpp.

+

Constructor & Destructor Documentation

+ +
+
+ + + + + + + +
stan::gm::int_var_decl::int_var_decl ()
+
+ +

Definition at line 718 of file ast_def.cpp.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
stan::gm::int_var_decl::int_var_decl (range const & range,
std::string const & name,
std::vector< expression > const & dims 
)
+
+ +

Definition at line 722 of file ast_def.cpp.

+ +
+
+

Member Data Documentation

+ +
+
+ + + + +
range stan::gm::int_var_decl::range_
+
+ +

Definition at line 407 of file ast.hpp.

+ +
+
+
The documentation for this struct was generated from the following files: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1int__var__decl.png b/doc/api/html/structstan_1_1gm_1_1int__var__decl.png new file mode 100644 index 0000000000000000000000000000000000000000..4f1bdd301c3afdf841976f5789164baf1d88280e GIT binary patch literal 670 zcmeAS@N?(olHy`uVBq!ia0vp^lYuyZgBeI_xo@`xQW60^A+G=b{|7Q(y!l$%e`o@b z1;z&s9ANFdBM;#(N**O6l%!o`ReL~jVhtLek||Y zIrC7l+MNF9zy7J~?+bgR+}@#fabe9#&$6YauVv!>?jOElbTmivxt|)V^&-9#PFNuY2V4Ur9z17U8_f)Qh=oCttmazV>O`e63}R_Mcg~+U;UjEhEBD#a_rw>MS$tV;%SzudRBf5T0Q5OSd^hKT>q$%>w&Ld2 zpA&K7nB2)=FjY*rVf|5-2dmGT9GTf$eOIsS=@IrB$L_k#oVWe(>r-C+*LN9qgu7SG zXt=0VHOI5;sOD_dSo`B%r;3h?Y+gF2T8^X4MYf=9+r6VQN9w}2ZHsKMk@A^&+hwiM zO^dY`j;&qgEW9lFecz*hb6$2xH*c9y^kbf!{`YsfYOAy7o{Hl85_~k|%XQvht>DR- zTjpQ7w=}qzopr0MJW4rT_o{ literal 0 HcmV?d00001 diff --git a/doc/api/html/structstan_1_1gm_1_1is__nil__op-members.html b/doc/api/html/structstan_1_1gm_1_1is__nil__op-members.html new file mode 100644 index 00000000000..5c1f3542718 --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1is__nil__op-members.html @@ -0,0 +1,121 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::gm::is_nil_op Member List
+
+
+ +

This is the complete list of members for stan::gm::is_nil_op, including all inherited members.

+ + + + + + + + + + +
operator()(const nil &x) const stan::gm::is_nil_op
operator()(const int_literal &x) const stan::gm::is_nil_op
operator()(const double_literal &x) const stan::gm::is_nil_op
operator()(const array_literal &x) const stan::gm::is_nil_op
operator()(const variable &x) const stan::gm::is_nil_op
operator()(const fun &x) const stan::gm::is_nil_op
operator()(const index_op &x) const stan::gm::is_nil_op
operator()(const binary_op &x) const stan::gm::is_nil_op
operator()(const unary_op &x) const stan::gm::is_nil_op
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1is__nil__op.html b/doc/api/html/structstan_1_1gm_1_1is__nil__op.html new file mode 100644 index 00000000000..58ebf4e8db1 --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1is__nil__op.html @@ -0,0 +1,314 @@ + + + + + +Stan: stan::gm::is_nil_op Struct Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::gm::is_nil_op Struct Reference
+
+
+ +

#include <ast.hpp>

+
+Inheritance diagram for stan::gm::is_nil_op:
+
+
+ + + +
+ + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

bool operator() (const nil &x) const
 
bool operator() (const int_literal &x) const
 
bool operator() (const double_literal &x) const
 
bool operator() (const array_literal &x) const
 
bool operator() (const variable &x) const
 
bool operator() (const fun &x) const
 
bool operator() (const index_op &x) const
 
bool operator() (const binary_op &x) const
 
bool operator() (const unary_op &x) const
 
+

Detailed Description

+
+

Definition at line 246 of file ast.hpp.

+

Member Function Documentation

+ +
+
+ + + + + + + + +
bool stan::gm::is_nil_op::operator() (const nilx) const
+
+ +

Definition at line 487 of file ast_def.cpp.

+ +
+
+ +
+
+ + + + + + + + +
bool stan::gm::is_nil_op::operator() (const int_literalx) const
+
+ +

Definition at line 488 of file ast_def.cpp.

+ +
+
+ +
+
+ + + + + + + + +
bool stan::gm::is_nil_op::operator() (const double_literalx) const
+
+ +

Definition at line 489 of file ast_def.cpp.

+ +
+
+ +
+
+ + + + + + + + +
bool stan::gm::is_nil_op::operator() (const array_literalx) const
+
+ +

Definition at line 490 of file ast_def.cpp.

+ +
+
+ +
+
+ + + + + + + + +
bool stan::gm::is_nil_op::operator() (const variablex) const
+
+ +

Definition at line 491 of file ast_def.cpp.

+ +
+
+ +
+
+ + + + + + + + +
bool stan::gm::is_nil_op::operator() (const funx) const
+
+ +

Definition at line 492 of file ast_def.cpp.

+ +
+
+ +
+
+ + + + + + + + +
bool stan::gm::is_nil_op::operator() (const index_opx) const
+
+ +

Definition at line 493 of file ast_def.cpp.

+ +
+
+ +
+
+ + + + + + + + +
bool stan::gm::is_nil_op::operator() (const binary_opx) const
+
+ +

Definition at line 494 of file ast_def.cpp.

+ +
+
+ +
+
+ + + + + + + + +
bool stan::gm::is_nil_op::operator() (const unary_opx) const
+
+ +

Definition at line 495 of file ast_def.cpp.

+ +
+
+
The documentation for this struct was generated from the following files: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1is__nil__op.png b/doc/api/html/structstan_1_1gm_1_1is__nil__op.png new file mode 100644 index 0000000000000000000000000000000000000000..8263c358f91506dd214b695992e2933b54d7b62e GIT binary patch literal 639 zcmeAS@N?(olHy`uVBq!ia0vp^%YZn5gBeIJnfuQXNJ#|vgt-3y{~ySF@#br3|Dg#$ z78oBmaDcV*jy#adQ4-`A%m7pb0#{Fk7%?y~@p-y9hEy=VoqM~e*?`BTKW^9m|HoTr zJn+t$Zl=T>e71s9;-rm{ymVD`#-t}p4@^+3?*0a#Mn0Ib@zyBOb z6WMC~Q*W8dUzK>D>N~pWAzwG&59|M(S{o{{L?W6^{_^Wxl@p%?M3pb{GrW8&RpjI` z=VdmtcxHdGGWz+?xGyT&)K%VM%5NR}Fpj-B@2;t)N!Q72{WnMR+2*{dx5J(@J`1~k zY3DJW@)Q0uEdLgt3Ey6KarcZ#qK7qSU*3Cj<>!QayFiuI?wQ}u-IFQ(RkgCJJpWVN z^7Jz?Up8G<6@7etuAb-hsnXAGh4@CPp7i{$J9|>eJf`4DdqhCKVZD6j%_pW0*TfHe zE#*J6etmSoJ?7$tdzhd58Z5rd_(x<0LmZb6gFdTT!*nL$1Ky3C50)Na`4E)ARH13W z2s8pA{m*b2D3};yVxfvIC7y||J$s;H=D*~ia|c;oymmSB^h%Wf^|zaLiP*jLxUHw^ zlR9PItDJ9P%r9Otq(#+me{5jYcE2=PT)F>~^X;8krVX8aiO;f9Z&^j0z0kI9P295@ zgYQkY|HAu|%v}F7q(y&8o>9BxvqAi~wC0;PE0ULd{`M^F%i7D6oe$o9JxAH~`@52c zmG`0^&iK50#^<$Lzr}dnDtKo+Bl;!7zh(T1Omo&leUfP#d-lw_b@>}7#{Y7C{PZ6% PwJ>qa;1 literal 0 HcmV?d00001 diff --git a/doc/api/html/structstan_1_1gm_1_1left__division__expr-members.html b/doc/api/html/structstan_1_1gm_1_1left__division__expr-members.html new file mode 100644 index 00000000000..6a4541f6b3a --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1left__division__expr-members.html @@ -0,0 +1,113 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::gm::left_division_expr Member List
+
+
+ +

This is the complete list of members for stan::gm::left_division_expr, including all inherited members.

+ + +
operator()(expression &expr1, const expression &expr2, std::ostream &error_msgs) const stan::gm::left_division_exprinline
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1left__division__expr.html b/doc/api/html/structstan_1_1gm_1_1left__division__expr.html new file mode 100644 index 00000000000..8a3e41ab8cc --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1left__division__expr.html @@ -0,0 +1,175 @@ + + + + + +Stan: stan::gm::left_division_expr Struct Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::gm::left_division_expr Struct Reference
+
+
+ +

#include <term_grammar_def.hpp>

+ + + + +

+Classes

struct  result
 
+ + + +

+Public Member Functions

expression operator() (expression &expr1, const expression &expr2, std::ostream &error_msgs) const
 
+

Detailed Description

+
+

Definition at line 202 of file term_grammar_def.hpp.

+

Member Function Documentation

+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
expression stan::gm::left_division_expr::operator() (expressionexpr1,
const expressionexpr2,
std::ostream & error_msgs 
) const
+
+inline
+
+ +

Definition at line 206 of file term_grammar_def.hpp.

+ +
+
+
The documentation for this struct was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1left__division__expr_1_1result-members.html b/doc/api/html/structstan_1_1gm_1_1left__division__expr_1_1result-members.html new file mode 100644 index 00000000000..e2f45c2424c --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1left__division__expr_1_1result-members.html @@ -0,0 +1,113 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::gm::left_division_expr::result< T1, T2, T3 > Member List
+
+
+ +

This is the complete list of members for stan::gm::left_division_expr::result< T1, T2, T3 >, including all inherited members.

+ + +
type typedefstan::gm::left_division_expr::result< T1, T2, T3 >
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1left__division__expr_1_1result.html b/doc/api/html/structstan_1_1gm_1_1left__division__expr_1_1result.html new file mode 100644 index 00000000000..5082cb9cfd1 --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1left__division__expr_1_1result.html @@ -0,0 +1,146 @@ + + + + + +Stan: stan::gm::left_division_expr::result< T1, T2, T3 > Struct Template Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::gm::left_division_expr::result< T1, T2, T3 > Struct Template Reference
+
+
+ +

#include <term_grammar_def.hpp>

+ + + + +

+Public Types

typedef expression type
 
+

Detailed Description

+

template<typename T1, typename T2, typename T3>
+struct stan::gm::left_division_expr::result< T1, T2, T3 >

+ + +

Definition at line 204 of file term_grammar_def.hpp.

+

Member Typedef Documentation

+ +
+
+
+template<typename T1 , typename T2 , typename T3 >
+ + + + +
typedef expression stan::gm::left_division_expr::result< T1, T2, T3 >::type
+
+ +

Definition at line 204 of file term_grammar_def.hpp.

+ +
+
+
The documentation for this struct was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1local__var__decl__visgen-members.html b/doc/api/html/structstan_1_1gm_1_1local__var__decl__visgen-members.html new file mode 100644 index 00000000000..9b865cb6c41 --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1local__var__decl__visgen-members.html @@ -0,0 +1,135 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::gm::local_var_decl_visgen Member List
+
+
+ +

This is the complete list of members for stan::gm::local_var_decl_visgen, including all inherited members.

+ + + + + + + + + + + + + + + + + + + + + + + + +
declare_array(const std::string &type, const std::vector< expression > &ctor_args, const std::string &name, const std::vector< expression > &dims) const stan::gm::local_var_decl_visgeninline
generate_init_args(const std::string &type, const std::vector< expression > &ctor_args, const std::vector< expression > &dims, size_t dim) const stan::gm::local_var_decl_visgeninline
generate_type(const std::string &type, size_t num_dims) const stan::gm::local_var_decl_visgeninline
generate_void_statement(const std::string &name) const stan::gm::local_var_decl_visgeninline
indents_stan::gm::local_var_decl_visgen
is_var_stan::gm::local_var_decl_visgen
local_var_decl_visgen(int indents, bool is_var, std::ostream &o)stan::gm::local_var_decl_visgeninline
o_stan::gm::visgen
operator()(nil const &) const stan::gm::local_var_decl_visgeninline
operator()(int_var_decl const &x) const stan::gm::local_var_decl_visgeninline
operator()(double_var_decl const &x) const stan::gm::local_var_decl_visgeninline
operator()(vector_var_decl const &x) const stan::gm::local_var_decl_visgeninline
operator()(row_vector_var_decl const &x) const stan::gm::local_var_decl_visgeninline
operator()(matrix_var_decl const &x) const stan::gm::local_var_decl_visgeninline
operator()(unit_vector_var_decl const &x) const stan::gm::local_var_decl_visgeninline
operator()(simplex_var_decl const &x) const stan::gm::local_var_decl_visgeninline
operator()(ordered_var_decl const &x) const stan::gm::local_var_decl_visgeninline
operator()(positive_ordered_var_decl const &x) const stan::gm::local_var_decl_visgeninline
operator()(cholesky_factor_var_decl const &x) const stan::gm::local_var_decl_visgeninline
operator()(cov_matrix_var_decl const &x) const stan::gm::local_var_decl_visgeninline
operator()(corr_matrix_var_decl const &x) const stan::gm::local_var_decl_visgeninline
result_type typedefstan::gm::visgen
visgen(std::ostream &o)stan::gm::visgeninline
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1local__var__decl__visgen.html b/doc/api/html/structstan_1_1gm_1_1local__var__decl__visgen.html new file mode 100644 index 00000000000..92e9fd54625 --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1local__var__decl__visgen.html @@ -0,0 +1,758 @@ + + + + + +Stan: stan::gm::local_var_decl_visgen Struct Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::gm::local_var_decl_visgen Struct Reference
+
+
+ +

#include <generator.hpp>

+
+Inheritance diagram for stan::gm::local_var_decl_visgen:
+
+
+ + +stan::gm::visgen + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 local_var_decl_visgen (int indents, bool is_var, std::ostream &o)
 
void operator() (nil const &) const
 
void operator() (int_var_decl const &x) const
 
void operator() (double_var_decl const &x) const
 
void operator() (vector_var_decl const &x) const
 
void operator() (row_vector_var_decl const &x) const
 
void operator() (matrix_var_decl const &x) const
 
void operator() (unit_vector_var_decl const &x) const
 
void operator() (simplex_var_decl const &x) const
 
void operator() (ordered_var_decl const &x) const
 
void operator() (positive_ordered_var_decl const &x) const
 
void operator() (cholesky_factor_var_decl const &x) const
 
void operator() (cov_matrix_var_decl const &x) const
 
void operator() (corr_matrix_var_decl const &x) const
 
void generate_type (const std::string &type, size_t num_dims) const
 
void generate_void_statement (const std::string &name) const
 
void generate_init_args (const std::string &type, const std::vector< expression > &ctor_args, const std::vector< expression > &dims, size_t dim) const
 
void declare_array (const std::string &type, const std::vector< expression > &ctor_args, const std::string &name, const std::vector< expression > &dims) const
 
- Public Member Functions inherited from stan::gm::visgen
 visgen (std::ostream &o)
 
+ + + + + + + + +

+Public Attributes

int indents_
 
bool is_var_
 
- Public Attributes inherited from stan::gm::visgen
std::ostream & o_
 
+ + + + +

+Additional Inherited Members

- Public Types inherited from stan::gm::visgen
typedef void result_type
 
+

Detailed Description

+
+

Definition at line 936 of file generator.hpp.

+

Constructor & Destructor Documentation

+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
stan::gm::local_var_decl_visgen::local_var_decl_visgen (int indents,
bool is_var,
std::ostream & o 
)
+
+inline
+
+ +

Definition at line 939 of file generator.hpp.

+ +
+
+

Member Function Documentation

+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
void stan::gm::local_var_decl_visgen::declare_array (const std::string & type,
const std::vector< expression > & ctor_args,
const std::string & name,
const std::vector< expression > & dims 
) const
+
+inline
+
+ +

Definition at line 1085 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
void stan::gm::local_var_decl_visgen::generate_init_args (const std::string & type,
const std::vector< expression > & ctor_args,
const std::vector< expression > & dims,
size_t dim 
) const
+
+inline
+
+ +

Definition at line 1038 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
void stan::gm::local_var_decl_visgen::generate_type (const std::string & type,
size_t num_dims 
) const
+
+inline
+
+ +

Definition at line 1020 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::local_var_decl_visgen::generate_void_statement (const std::string & name) const
+
+inline
+
+ +

Definition at line 1031 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::local_var_decl_visgen::operator() (nil const & ) const
+
+inline
+
+ +

Definition at line 946 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::local_var_decl_visgen::operator() (int_var_decl const & x) const
+
+inline
+
+ +

Definition at line 947 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::local_var_decl_visgen::operator() (double_var_decl const & x) const
+
+inline
+
+ +

Definition at line 951 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::local_var_decl_visgen::operator() (vector_var_decl const & x) const
+
+inline
+
+ +

Definition at line 956 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::local_var_decl_visgen::operator() (row_vector_var_decl const & x) const
+
+inline
+
+ +

Definition at line 962 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::local_var_decl_visgen::operator() (matrix_var_decl const & x) const
+
+inline
+
+ +

Definition at line 968 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::local_var_decl_visgen::operator() (unit_vector_var_decl const & x) const
+
+inline
+
+ +

Definition at line 975 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::local_var_decl_visgen::operator() (simplex_var_decl const & x) const
+
+inline
+
+ +

Definition at line 981 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::local_var_decl_visgen::operator() (ordered_var_decl const & x) const
+
+inline
+
+ +

Definition at line 987 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::local_var_decl_visgen::operator() (positive_ordered_var_decl const & x) const
+
+inline
+
+ +

Definition at line 993 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::local_var_decl_visgen::operator() (cholesky_factor_var_decl const & x) const
+
+inline
+
+ +

Definition at line 999 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::local_var_decl_visgen::operator() (cov_matrix_var_decl const & x) const
+
+inline
+
+ +

Definition at line 1006 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::local_var_decl_visgen::operator() (corr_matrix_var_decl const & x) const
+
+inline
+
+ +

Definition at line 1013 of file generator.hpp.

+ +
+
+

Member Data Documentation

+ +
+
+ + + + +
int stan::gm::local_var_decl_visgen::indents_
+
+ +

Definition at line 937 of file generator.hpp.

+ +
+
+ +
+
+ + + + +
bool stan::gm::local_var_decl_visgen::is_var_
+
+ +

Definition at line 938 of file generator.hpp.

+ +
+
+
The documentation for this struct was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1local__var__decl__visgen.png b/doc/api/html/structstan_1_1gm_1_1local__var__decl__visgen.png new file mode 100644 index 0000000000000000000000000000000000000000..2fe8cdf8c8bc8c0909cab667c0cde87602121b9b GIT binary patch literal 711 zcmeAS@N?(olHy`uVBq!ia0vp^`++!sgBeKHtA!*3DTx4|5ZC|z{{xvX-h3_XKQsZz z0^6|{Y!Q;}F9s5;oKKwT+<#_&|W|i0{e)67Hk8b~) z^u;glSNm1lH`_~9?d?~7yeX9bGif`!p_yAL`-CNq?|!;ZoPKWGoIhQA#3s343p~m& zsigPzzm;{9T<5-wSyd7B*4?y0rT0_!ugcv2GwRnY53#R)bemBnbIR@a`LUwne_qd9 z*{>4&*!OGvPx1H8fhCS!(@X#6JU>70X30L5mAf`YfB*Bd?61cq!(_eu9}P7J>UE}X zH`deKZ8!0MgwUjtV-ZtS=6+oGYvPji4}flO|Lr|VcJ+Utm-aB!OkzK9#OK}riZgo~ zPW}!5yHea>_x}0z4AXYlH^{!@PiX(meB;v zamaXk?Fos$uQuzd?^jyi8glTg|LTpa-(2P`)nPp~Z)*K12eb6@9adWRSH}H2ZGU^J zDBszZyB}`ZtEJywy!+qE?45f*R-WJg;$q1i^R>MBe}1bLp4`7(`sN$uu-_hR}KEDsUJni4Q|B-)}_uc(vzi$59KR2h(=WAqmd)2c3lyK$g2lwhf{5dIp z&$@osSLTAApXIx>4W7lTvp?vW|6S*Q9nY3IX7XG-&;F-)HJmS2F^IEgsOSIAzTq&? i^AUfYITGXkF)sX|@$CHWsV{)3j=|H_&t;ucLK6T&RB&DZ literal 0 HcmV?d00001 diff --git a/doc/api/html/structstan_1_1gm_1_1logical__negate__expr-members.html b/doc/api/html/structstan_1_1gm_1_1logical__negate__expr-members.html new file mode 100644 index 00000000000..931567cf9db --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1logical__negate__expr-members.html @@ -0,0 +1,113 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::gm::logical_negate_expr Member List
+
+
+ +

This is the complete list of members for stan::gm::logical_negate_expr, including all inherited members.

+ + +
operator()(const expression &expr, std::ostream &error_msgs) const stan::gm::logical_negate_exprinline
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1logical__negate__expr.html b/doc/api/html/structstan_1_1gm_1_1logical__negate__expr.html new file mode 100644 index 00000000000..8ab90abeb72 --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1logical__negate__expr.html @@ -0,0 +1,169 @@ + + + + + +Stan: stan::gm::logical_negate_expr Struct Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::gm::logical_negate_expr Struct Reference
+
+
+ +

#include <term_grammar_def.hpp>

+ + + + +

+Classes

struct  result
 
+ + + +

+Public Member Functions

expression operator() (const expression &expr, std::ostream &error_msgs) const
 
+

Detailed Description

+
+

Definition at line 304 of file term_grammar_def.hpp.

+

Member Function Documentation

+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
expression stan::gm::logical_negate_expr::operator() (const expressionexpr,
std::ostream & error_msgs 
) const
+
+inline
+
+ +

Definition at line 308 of file term_grammar_def.hpp.

+ +
+
+
The documentation for this struct was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1logical__negate__expr_1_1result-members.html b/doc/api/html/structstan_1_1gm_1_1logical__negate__expr_1_1result-members.html new file mode 100644 index 00000000000..25917626e4b --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1logical__negate__expr_1_1result-members.html @@ -0,0 +1,113 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::gm::logical_negate_expr::result< T1, T2 > Member List
+
+
+ +

This is the complete list of members for stan::gm::logical_negate_expr::result< T1, T2 >, including all inherited members.

+ + +
type typedefstan::gm::logical_negate_expr::result< T1, T2 >
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1logical__negate__expr_1_1result.html b/doc/api/html/structstan_1_1gm_1_1logical__negate__expr_1_1result.html new file mode 100644 index 00000000000..57e61f1780d --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1logical__negate__expr_1_1result.html @@ -0,0 +1,146 @@ + + + + + +Stan: stan::gm::logical_negate_expr::result< T1, T2 > Struct Template Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::gm::logical_negate_expr::result< T1, T2 > Struct Template Reference
+
+
+ +

#include <term_grammar_def.hpp>

+ + + + +

+Public Types

typedef expression type
 
+

Detailed Description

+

template<typename T1, typename T2>
+struct stan::gm::logical_negate_expr::result< T1, T2 >

+ + +

Definition at line 306 of file term_grammar_def.hpp.

+

Member Typedef Documentation

+ +
+
+
+template<typename T1 , typename T2 >
+ + + + +
typedef expression stan::gm::logical_negate_expr::result< T1, T2 >::type
+
+ +

Definition at line 306 of file term_grammar_def.hpp.

+ +
+
+
The documentation for this struct was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1matrix__var__decl-members.html b/doc/api/html/structstan_1_1gm_1_1matrix__var__decl-members.html new file mode 100644 index 00000000000..2ac0618e0ef --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1matrix__var__decl-members.html @@ -0,0 +1,123 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::gm::matrix_var_decl Member List
+
+
+ +

This is the complete list of members for stan::gm::matrix_var_decl, including all inherited members.

+ + + + + + + + + + + + +
base_type_stan::gm::base_var_decl
base_var_decl()stan::gm::base_var_decl
base_var_decl(const base_expr_type &base_type)stan::gm::base_var_decl
base_var_decl(const std::string &name, const std::vector< expression > &dims, const base_expr_type &base_type)stan::gm::base_var_decl
dims_stan::gm::base_var_decl
M_stan::gm::matrix_var_decl
matrix_var_decl()stan::gm::matrix_var_decl
matrix_var_decl(range const &range, expression const &M, expression const &N, std::string const &name, std::vector< expression > const &dims)stan::gm::matrix_var_decl
N_stan::gm::matrix_var_decl
name_stan::gm::base_var_decl
range_stan::gm::matrix_var_decl
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1matrix__var__decl.html b/doc/api/html/structstan_1_1gm_1_1matrix__var__decl.html new file mode 100644 index 00000000000..8cd05076d49 --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1matrix__var__decl.html @@ -0,0 +1,269 @@ + + + + + +Stan: stan::gm::matrix_var_decl Struct Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::gm::matrix_var_decl Struct Reference
+
+
+ +

#include <ast.hpp>

+
+Inheritance diagram for stan::gm::matrix_var_decl:
+
+
+ + +stan::gm::base_var_decl + +
+ + + + + + + + + + + + + +

+Public Member Functions

 matrix_var_decl ()
 
 matrix_var_decl (range const &range, expression const &M, expression const &N, std::string const &name, std::vector< expression > const &dims)
 
- Public Member Functions inherited from stan::gm::base_var_decl
 base_var_decl ()
 
 base_var_decl (const base_expr_type &base_type)
 
 base_var_decl (const std::string &name, const std::vector< expression > &dims, const base_expr_type &base_type)
 
+ + + + + + + + + + + + + + +

+Public Attributes

range range_
 
expression M_
 
expression N_
 
- Public Attributes inherited from stan::gm::base_var_decl
std::string name_
 
std::vector< expressiondims_
 
base_expr_type base_type_
 
+

Detailed Description

+
+

Definition at line 475 of file ast.hpp.

+

Constructor & Destructor Documentation

+ +
+
+ + + + + + + +
stan::gm::matrix_var_decl::matrix_var_decl ()
+
+ +

Definition at line 807 of file ast_def.cpp.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
stan::gm::matrix_var_decl::matrix_var_decl (range const & range,
expression const & M,
expression const & N,
std::string const & name,
std::vector< expression > const & dims 
)
+
+ +

Definition at line 808 of file ast_def.cpp.

+ +
+
+

Member Data Documentation

+ +
+
+ + + + +
expression stan::gm::matrix_var_decl::M_
+
+ +

Definition at line 477 of file ast.hpp.

+ +
+
+ +
+
+ + + + +
expression stan::gm::matrix_var_decl::N_
+
+ +

Definition at line 478 of file ast.hpp.

+ +
+
+ +
+
+ + + + +
range stan::gm::matrix_var_decl::range_
+
+ +

Definition at line 476 of file ast.hpp.

+ +
+
+
The documentation for this struct was generated from the following files: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1matrix__var__decl.png b/doc/api/html/structstan_1_1gm_1_1matrix__var__decl.png new file mode 100644 index 0000000000000000000000000000000000000000..de8bf0132b8c0e3a87955644ecea2b5ae1dbdee5 GIT binary patch literal 698 zcmeAS@N?(olHy`uVBq!ia0vp^Gl4jOgBeKLrmBAdQW60^A+G=b{|7Q(y!l$%e`o@b z1;z&s9ANFdBM;n)Y zz9RSej{$P$Lx20vtvP$dy;Nkn3-j%j3(J=7yk=3>l^a*3(rp<0WUfC~ZuhBz4XDH(v)X+Oiha`&t3Xoyy;@`w8?_6m+Z+l%jU1k-MS%Y$vU&s zX=1Bzftx%FJ0xT*}in$W#P zGgaQrefe=#M$V(RljPF&f6v=m-K#o3HL+y6?Ci51+r#F0PSlO$ndJ1gP+^O%mh!TN zmvrrq^((G!cI;!a75ZvMy1Kl7Yt9 zrg_i* + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::gm::member_var_decl_visgen Member List
+
+
+ +

This is the complete list of members for stan::gm::member_var_decl_visgen, including all inherited members.

+ + + + + + + + + + + + + + + + + + + + +
declare_array(std::string const &type, std::string const &name, size_t size) const stan::gm::member_var_decl_visgeninline
indents_stan::gm::member_var_decl_visgen
member_var_decl_visgen(int indents, std::ostream &o)stan::gm::member_var_decl_visgeninline
o_stan::gm::visgen
operator()(nil const &) const stan::gm::member_var_decl_visgeninline
operator()(int_var_decl const &x) const stan::gm::member_var_decl_visgeninline
operator()(double_var_decl const &x) const stan::gm::member_var_decl_visgeninline
operator()(unit_vector_var_decl const &x) const stan::gm::member_var_decl_visgeninline
operator()(simplex_var_decl const &x) const stan::gm::member_var_decl_visgeninline
operator()(ordered_var_decl const &x) const stan::gm::member_var_decl_visgeninline
operator()(positive_ordered_var_decl const &x) const stan::gm::member_var_decl_visgeninline
operator()(cholesky_factor_var_decl const &x) const stan::gm::member_var_decl_visgeninline
operator()(cov_matrix_var_decl const &x) const stan::gm::member_var_decl_visgeninline
operator()(corr_matrix_var_decl const &x) const stan::gm::member_var_decl_visgeninline
operator()(vector_var_decl const &x) const stan::gm::member_var_decl_visgeninline
operator()(row_vector_var_decl const &x) const stan::gm::member_var_decl_visgeninline
operator()(matrix_var_decl const &x) const stan::gm::member_var_decl_visgeninline
result_type typedefstan::gm::visgen
visgen(std::ostream &o)stan::gm::visgeninline
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1member__var__decl__visgen.html b/doc/api/html/structstan_1_1gm_1_1member__var__decl__visgen.html new file mode 100644 index 00000000000..ef7ef88c8c2 --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1member__var__decl__visgen.html @@ -0,0 +1,614 @@ + + + + + +Stan: stan::gm::member_var_decl_visgen Struct Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::gm::member_var_decl_visgen Struct Reference
+
+
+ +

#include <generator.hpp>

+
+Inheritance diagram for stan::gm::member_var_decl_visgen:
+
+
+ + +stan::gm::visgen + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 member_var_decl_visgen (int indents, std::ostream &o)
 
void operator() (nil const &) const
 
void operator() (int_var_decl const &x) const
 
void operator() (double_var_decl const &x) const
 
void operator() (unit_vector_var_decl const &x) const
 
void operator() (simplex_var_decl const &x) const
 
void operator() (ordered_var_decl const &x) const
 
void operator() (positive_ordered_var_decl const &x) const
 
void operator() (cholesky_factor_var_decl const &x) const
 
void operator() (cov_matrix_var_decl const &x) const
 
void operator() (corr_matrix_var_decl const &x) const
 
void operator() (vector_var_decl const &x) const
 
void operator() (row_vector_var_decl const &x) const
 
void operator() (matrix_var_decl const &x) const
 
void declare_array (std::string const &type, std::string const &name, size_t size) const
 
- Public Member Functions inherited from stan::gm::visgen
 visgen (std::ostream &o)
 
+ + + + + + +

+Public Attributes

int indents_
 
- Public Attributes inherited from stan::gm::visgen
std::ostream & o_
 
+ + + + +

+Additional Inherited Members

- Public Types inherited from stan::gm::visgen
typedef void result_type
 
+

Detailed Description

+
+

Definition at line 865 of file generator.hpp.

+

Constructor & Destructor Documentation

+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
stan::gm::member_var_decl_visgen::member_var_decl_visgen (int indents,
std::ostream & o 
)
+
+inline
+
+ +

Definition at line 867 of file generator.hpp.

+ +
+
+

Member Function Documentation

+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
void stan::gm::member_var_decl_visgen::declare_array (std::string const & type,
std::string const & name,
size_t size 
) const
+
+inline
+
+ +

Definition at line 909 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::member_var_decl_visgen::operator() (nil const & ) const
+
+inline
+
+ +

Definition at line 872 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::member_var_decl_visgen::operator() (int_var_decl const & x) const
+
+inline
+
+ +

Definition at line 873 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::member_var_decl_visgen::operator() (double_var_decl const & x) const
+
+inline
+
+ +

Definition at line 876 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::member_var_decl_visgen::operator() (unit_vector_var_decl const & x) const
+
+inline
+
+ +

Definition at line 879 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::member_var_decl_visgen::operator() (simplex_var_decl const & x) const
+
+inline
+
+ +

Definition at line 882 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::member_var_decl_visgen::operator() (ordered_var_decl const & x) const
+
+inline
+
+ +

Definition at line 885 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::member_var_decl_visgen::operator() (positive_ordered_var_decl const & x) const
+
+inline
+
+ +

Definition at line 888 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::member_var_decl_visgen::operator() (cholesky_factor_var_decl const & x) const
+
+inline
+
+ +

Definition at line 891 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::member_var_decl_visgen::operator() (cov_matrix_var_decl const & x) const
+
+inline
+
+ +

Definition at line 894 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::member_var_decl_visgen::operator() (corr_matrix_var_decl const & x) const
+
+inline
+
+ +

Definition at line 897 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::member_var_decl_visgen::operator() (vector_var_decl const & x) const
+
+inline
+
+ +

Definition at line 900 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::member_var_decl_visgen::operator() (row_vector_var_decl const & x) const
+
+inline
+
+ +

Definition at line 903 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::member_var_decl_visgen::operator() (matrix_var_decl const & x) const
+
+inline
+
+ +

Definition at line 906 of file generator.hpp.

+ +
+
+

Member Data Documentation

+ +
+
+ + + + +
int stan::gm::member_var_decl_visgen::indents_
+
+ +

Definition at line 866 of file generator.hpp.

+ +
+
+
The documentation for this struct was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1member__var__decl__visgen.png b/doc/api/html/structstan_1_1gm_1_1member__var__decl__visgen.png new file mode 100644 index 0000000000000000000000000000000000000000..4a85d22bdd6d2109246c04a7926cd28446f57798 GIT binary patch literal 747 zcmeAS@N?(olHy`uVBq!ia0vp^7l1f`gBeK1pW>beq$C1-LR|m<{|{uoc=NTi|Ih>= z3ycpOIKbL@M;^%KC<*clW&kPzfvcxNj2IZ0sytmBLn;{G&V4)SkOGe@|90bj|CQHs zJ>7jb?DZ+5nGdfmoG`=L>DTns$Z0c=D0zN9(V&uQ@4x>3mDPkLldFVJxNkcq{^Qfbt&^Twzm9EX z_N?-K&%AV!cjDEZCl>463zJ+e<8di6Hn1rBs0{Nb)frxT%a)ZYc&2}?3tqwfk|iK_ zW{%2B)7aW}tp$(#L`z>SF=^A@dEx1!o6Gf{Ey+sh&zt_c>ZIqTZGEie58K~Nb~x_$ z`|TW$Q^(wmpRD$n^sOXkx{B<@<=%di{)GS?t9%;djk}H0QX|!b4$ObSW-vL8dDmSv zec)EPGaKo)9u&2#Nv)-TI$<8RiAwP>Kc~K zcao29=vlF4O~a*$DgSSlZZBkeyQd`B=eM@%Nw$FUYThUQ+9@A(0!&s;iV^qwv%hTV zmdu8xM4#;4dl_$8+*>U9Dt*n)TahudCABu+kjP8f6kN31!Ii5{d*>@Y)85tmTguxf zC4T42ogVX|=%Ym*d`i59Cik18mK4^9z>GpIzinD%9yX U!4 + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::gm::multiplication_expr Member List
+
+
+ +

This is the complete list of members for stan::gm::multiplication_expr, including all inherited members.

+ + +
operator()(expression &expr1, const expression &expr2, std::ostream &error_msgs) const stan::gm::multiplication_exprinline
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1multiplication__expr.html b/doc/api/html/structstan_1_1gm_1_1multiplication__expr.html new file mode 100644 index 00000000000..870c2435782 --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1multiplication__expr.html @@ -0,0 +1,175 @@ + + + + + +Stan: stan::gm::multiplication_expr Struct Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::gm::multiplication_expr Struct Reference
+
+
+ +

#include <term_grammar_def.hpp>

+ + + + +

+Classes

struct  result
 
+ + + +

+Public Member Functions

expression operator() (expression &expr1, const expression &expr2, std::ostream &error_msgs) const
 
+

Detailed Description

+
+

Definition at line 133 of file term_grammar_def.hpp.

+

Member Function Documentation

+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
expression stan::gm::multiplication_expr::operator() (expressionexpr1,
const expressionexpr2,
std::ostream & error_msgs 
) const
+
+inline
+
+ +

Definition at line 137 of file term_grammar_def.hpp.

+ +
+
+
The documentation for this struct was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1multiplication__expr_1_1result-members.html b/doc/api/html/structstan_1_1gm_1_1multiplication__expr_1_1result-members.html new file mode 100644 index 00000000000..a4992157f5c --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1multiplication__expr_1_1result-members.html @@ -0,0 +1,113 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::gm::multiplication_expr::result< T1, T2, T3 > Member List
+
+
+ +

This is the complete list of members for stan::gm::multiplication_expr::result< T1, T2, T3 >, including all inherited members.

+ + +
type typedefstan::gm::multiplication_expr::result< T1, T2, T3 >
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1multiplication__expr_1_1result.html b/doc/api/html/structstan_1_1gm_1_1multiplication__expr_1_1result.html new file mode 100644 index 00000000000..e8fb3f8c637 --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1multiplication__expr_1_1result.html @@ -0,0 +1,146 @@ + + + + + +Stan: stan::gm::multiplication_expr::result< T1, T2, T3 > Struct Template Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::gm::multiplication_expr::result< T1, T2, T3 > Struct Template Reference
+
+
+ +

#include <term_grammar_def.hpp>

+ + + + +

+Public Types

typedef expression type
 
+

Detailed Description

+

template<typename T1, typename T2, typename T3>
+struct stan::gm::multiplication_expr::result< T1, T2, T3 >

+ + +

Definition at line 135 of file term_grammar_def.hpp.

+

Member Typedef Documentation

+ +
+
+
+template<typename T1 , typename T2 , typename T3 >
+ + + + +
typedef expression stan::gm::multiplication_expr::result< T1, T2, T3 >::type
+
+ +

Definition at line 135 of file term_grammar_def.hpp.

+ +
+
+
The documentation for this struct was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1name__vis-members.html b/doc/api/html/structstan_1_1gm_1_1name__vis-members.html new file mode 100644 index 00000000000..b9fd5b1fdbc --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1name__vis-members.html @@ -0,0 +1,126 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::gm::name_vis Member List
+
+
+ +

This is the complete list of members for stan::gm::name_vis, including all inherited members.

+ + + + + + + + + + + + + + + +
name_vis()stan::gm::name_vis
operator()(const nil &x) const stan::gm::name_vis
operator()(const int_var_decl &x) const stan::gm::name_vis
operator()(const double_var_decl &x) const stan::gm::name_vis
operator()(const vector_var_decl &x) const stan::gm::name_vis
operator()(const row_vector_var_decl &x) const stan::gm::name_vis
operator()(const matrix_var_decl &x) const stan::gm::name_vis
operator()(const simplex_var_decl &x) const stan::gm::name_vis
operator()(const unit_vector_var_decl &x) const stan::gm::name_vis
operator()(const ordered_var_decl &x) const stan::gm::name_vis
operator()(const positive_ordered_var_decl &x) const stan::gm::name_vis
operator()(const cholesky_factor_var_decl &x) const stan::gm::name_vis
operator()(const cov_matrix_var_decl &x) const stan::gm::name_vis
operator()(const corr_matrix_var_decl &x) const stan::gm::name_vis
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1name__vis.html b/doc/api/html/structstan_1_1gm_1_1name__vis.html new file mode 100644 index 00000000000..30d9ea7d40b --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1name__vis.html @@ -0,0 +1,414 @@ + + + + + +Stan: stan::gm::name_vis Struct Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::gm::name_vis Struct Reference
+
+
+ +

#include <ast.hpp>

+
+Inheritance diagram for stan::gm::name_vis:
+
+
+ + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 name_vis ()
 
std::string operator() (const nil &x) const
 
std::string operator() (const int_var_decl &x) const
 
std::string operator() (const double_var_decl &x) const
 
std::string operator() (const vector_var_decl &x) const
 
std::string operator() (const row_vector_var_decl &x) const
 
std::string operator() (const matrix_var_decl &x) const
 
std::string operator() (const simplex_var_decl &x) const
 
std::string operator() (const unit_vector_var_decl &x) const
 
std::string operator() (const ordered_var_decl &x) const
 
std::string operator() (const positive_ordered_var_decl &x) const
 
std::string operator() (const cholesky_factor_var_decl &x) const
 
std::string operator() (const cov_matrix_var_decl &x) const
 
std::string operator() (const corr_matrix_var_decl &x) const
 
+

Detailed Description

+
+

Definition at line 514 of file ast.hpp.

+

Constructor & Destructor Documentation

+ +
+
+ + + + + + + +
stan::gm::name_vis::name_vis ()
+
+ +

Definition at line 852 of file ast_def.cpp.

+ +
+
+

Member Function Documentation

+ +
+
+ + + + + + + + +
std::string stan::gm::name_vis::operator() (const nilx) const
+
+ +

Definition at line 853 of file ast_def.cpp.

+ +
+
+ +
+
+ + + + + + + + +
std::string stan::gm::name_vis::operator() (const int_var_declx) const
+
+ +

Definition at line 856 of file ast_def.cpp.

+ +
+
+ +
+
+ + + + + + + + +
std::string stan::gm::name_vis::operator() (const double_var_declx) const
+
+ +

Definition at line 859 of file ast_def.cpp.

+ +
+
+ +
+
+ + + + + + + + +
std::string stan::gm::name_vis::operator() (const vector_var_declx) const
+
+ +

Definition at line 862 of file ast_def.cpp.

+ +
+
+ +
+
+ + + + + + + + +
std::string stan::gm::name_vis::operator() (const row_vector_var_declx) const
+
+ +

Definition at line 865 of file ast_def.cpp.

+ +
+
+ +
+
+ + + + + + + + +
std::string stan::gm::name_vis::operator() (const matrix_var_declx) const
+
+ +

Definition at line 868 of file ast_def.cpp.

+ +
+
+ +
+
+ + + + + + + + +
std::string stan::gm::name_vis::operator() (const simplex_var_declx) const
+
+ +

Definition at line 874 of file ast_def.cpp.

+ +
+
+ +
+
+ + + + + + + + +
std::string stan::gm::name_vis::operator() (const unit_vector_var_declx) const
+
+ +

Definition at line 871 of file ast_def.cpp.

+ +
+
+ +
+
+ + + + + + + + +
std::string stan::gm::name_vis::operator() (const ordered_var_declx) const
+
+ +

Definition at line 877 of file ast_def.cpp.

+ +
+
+ +
+
+ + + + + + + + +
std::string stan::gm::name_vis::operator() (const positive_ordered_var_declx) const
+
+ +

Definition at line 880 of file ast_def.cpp.

+ +
+
+ +
+
+ + + + + + + + +
std::string stan::gm::name_vis::operator() (const cholesky_factor_var_declx) const
+
+ +

Definition at line 883 of file ast_def.cpp.

+ +
+
+ +
+
+ + + + + + + + +
std::string stan::gm::name_vis::operator() (const cov_matrix_var_declx) const
+
+ +

Definition at line 886 of file ast_def.cpp.

+ +
+
+ +
+
+ + + + + + + + +
std::string stan::gm::name_vis::operator() (const corr_matrix_var_declx) const
+
+ +

Definition at line 889 of file ast_def.cpp.

+ +
+
+
The documentation for this struct was generated from the following files: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1name__vis.png b/doc/api/html/structstan_1_1gm_1_1name__vis.png new file mode 100644 index 0000000000000000000000000000000000000000..476c09c080bb4ab04ec92457c3799e7a7e3a1ec3 GIT binary patch literal 731 zcmeAS@N?(olHy`uVBq!ia0vp^hk-bNgBeIp4mKxk|C&mwtlY2U%)Io4*V(7J`B8uFNd)uV z`&exA*OkrF>QXn)q$^XBH{8A*l(%{Qk6EUVAK!Y)wr1YpoA>SFulshd5#IBE%MAND zKT79LGz(Yu=2@M*pY`N7-(@LB@6IU6=hXh^@$Br9LyxxS1nhGW^fql%+O~PN|Gup6 z0`Apqm-e2Y*){*wInRK`)}Lg!5I>o5!G1Iae5q+>I}92Y!qpb@$Um;jdRTvqp&)9xX6tIOw2(pli;Lg$g&z%^Z$|#`<+iI*c`uF#qZDq@^Xl=8yhS5Omi4?|WcMWbkzLb6Mw<&;$T73`=zY literal 0 HcmV?d00001 diff --git a/doc/api/html/structstan_1_1gm_1_1negate__expr-members.html b/doc/api/html/structstan_1_1gm_1_1negate__expr-members.html new file mode 100644 index 00000000000..c929d82042b --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1negate__expr-members.html @@ -0,0 +1,113 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::gm::negate_expr Member List
+
+
+ +

This is the complete list of members for stan::gm::negate_expr, including all inherited members.

+ + +
operator()(const expression &expr, std::ostream &error_msgs) const stan::gm::negate_exprinline
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1negate__expr.html b/doc/api/html/structstan_1_1gm_1_1negate__expr.html new file mode 100644 index 00000000000..b9faf7d622f --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1negate__expr.html @@ -0,0 +1,169 @@ + + + + + +Stan: stan::gm::negate_expr Struct Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::gm::negate_expr Struct Reference
+
+
+ +

#include <term_grammar_def.hpp>

+ + + + +

+Classes

struct  result
 
+ + + +

+Public Member Functions

expression operator() (const expression &expr, std::ostream &error_msgs) const
 
+

Detailed Description

+
+

Definition at line 285 of file term_grammar_def.hpp.

+

Member Function Documentation

+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
expression stan::gm::negate_expr::operator() (const expressionexpr,
std::ostream & error_msgs 
) const
+
+inline
+
+ +

Definition at line 289 of file term_grammar_def.hpp.

+ +
+
+
The documentation for this struct was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1negate__expr_1_1result-members.html b/doc/api/html/structstan_1_1gm_1_1negate__expr_1_1result-members.html new file mode 100644 index 00000000000..4559c5a164a --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1negate__expr_1_1result-members.html @@ -0,0 +1,113 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::gm::negate_expr::result< T1, T2 > Member List
+
+
+ +

This is the complete list of members for stan::gm::negate_expr::result< T1, T2 >, including all inherited members.

+ + +
type typedefstan::gm::negate_expr::result< T1, T2 >
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1negate__expr_1_1result.html b/doc/api/html/structstan_1_1gm_1_1negate__expr_1_1result.html new file mode 100644 index 00000000000..351c8c6d946 --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1negate__expr_1_1result.html @@ -0,0 +1,146 @@ + + + + + +Stan: stan::gm::negate_expr::result< T1, T2 > Struct Template Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::gm::negate_expr::result< T1, T2 > Struct Template Reference
+
+
+ +

#include <term_grammar_def.hpp>

+ + + + +

+Public Types

typedef expression type
 
+

Detailed Description

+

template<typename T1, typename T2>
+struct stan::gm::negate_expr::result< T1, T2 >

+ + +

Definition at line 287 of file term_grammar_def.hpp.

+

Member Typedef Documentation

+ +
+
+
+template<typename T1 , typename T2 >
+ + + + +
typedef expression stan::gm::negate_expr::result< T1, T2 >::type
+
+ +

Definition at line 287 of file term_grammar_def.hpp.

+ +
+
+
The documentation for this struct was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1nil.html b/doc/api/html/structstan_1_1gm_1_1nil.html new file mode 100644 index 00000000000..c64c6becfc9 --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1nil.html @@ -0,0 +1,121 @@ + + + + + +Stan: stan::gm::nil Struct Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::gm::nil Struct Reference
+
+
+ +

Placeholder struct for boost::variant default ctors. + More...

+ +

#include <ast.hpp>

+

Detailed Description

+

Placeholder struct for boost::variant default ctors.

+ +

Definition at line 18 of file ast.hpp.

+

The documentation for this struct was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1no__op__statement.html b/doc/api/html/structstan_1_1gm_1_1no__op__statement.html new file mode 100644 index 00000000000..5d14aa5f58a --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1no__op__statement.html @@ -0,0 +1,117 @@ + + + + + +Stan: stan::gm::no_op_statement Struct Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::gm::no_op_statement Struct Reference
+
+
+ +

#include <ast.hpp>

+

Detailed Description

+
+

Definition at line 648 of file ast.hpp.

+

The documentation for this struct was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1ordered__var__decl-members.html b/doc/api/html/structstan_1_1gm_1_1ordered__var__decl-members.html new file mode 100644 index 00000000000..9f4088bb062 --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1ordered__var__decl-members.html @@ -0,0 +1,121 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::gm::ordered_var_decl Member List
+
+
+ +

This is the complete list of members for stan::gm::ordered_var_decl, including all inherited members.

+ + + + + + + + + + +
base_type_stan::gm::base_var_decl
base_var_decl()stan::gm::base_var_decl
base_var_decl(const base_expr_type &base_type)stan::gm::base_var_decl
base_var_decl(const std::string &name, const std::vector< expression > &dims, const base_expr_type &base_type)stan::gm::base_var_decl
dims_stan::gm::base_var_decl
K_stan::gm::ordered_var_decl
name_stan::gm::base_var_decl
ordered_var_decl()stan::gm::ordered_var_decl
ordered_var_decl(expression const &K, std::string const &name, std::vector< expression > const &dims)stan::gm::ordered_var_decl
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1ordered__var__decl.html b/doc/api/html/structstan_1_1gm_1_1ordered__var__decl.html new file mode 100644 index 00000000000..116d7c4b3ad --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1ordered__var__decl.html @@ -0,0 +1,225 @@ + + + + + +Stan: stan::gm::ordered_var_decl Struct Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::gm::ordered_var_decl Struct Reference
+
+
+ +

#include <ast.hpp>

+
+Inheritance diagram for stan::gm::ordered_var_decl:
+
+
+ + +stan::gm::base_var_decl + +
+ + + + + + + + + + + + + +

+Public Member Functions

 ordered_var_decl ()
 
 ordered_var_decl (expression const &K, std::string const &name, std::vector< expression > const &dims)
 
- Public Member Functions inherited from stan::gm::base_var_decl
 base_var_decl ()
 
 base_var_decl (const base_expr_type &base_type)
 
 base_var_decl (const std::string &name, const std::vector< expression > &dims, const base_expr_type &base_type)
 
+ + + + + + + + + + +

+Public Attributes

expression K_
 
- Public Attributes inherited from stan::gm::base_var_decl
std::string name_
 
std::vector< expressiondims_
 
base_expr_type base_type_
 
+

Detailed Description

+
+

Definition at line 439 of file ast.hpp.

+

Constructor & Destructor Documentation

+ +
+
+ + + + + + + +
stan::gm::ordered_var_decl::ordered_var_decl ()
+
+ +

Definition at line 764 of file ast_def.cpp.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
stan::gm::ordered_var_decl::ordered_var_decl (expression const & K,
std::string const & name,
std::vector< expression > const & dims 
)
+
+ +

Definition at line 768 of file ast_def.cpp.

+ +
+
+

Member Data Documentation

+ +
+
+ + + + +
expression stan::gm::ordered_var_decl::K_
+
+ +

Definition at line 440 of file ast.hpp.

+ +
+
+
The documentation for this struct was generated from the following files: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1ordered__var__decl.png b/doc/api/html/structstan_1_1gm_1_1ordered__var__decl.png new file mode 100644 index 0000000000000000000000000000000000000000..77fb430405d348cafeed9b7fadac1bcf9c600812 GIT binary patch literal 719 zcmeAS@N?(olHy`uVBq!ia0vp^OMy6mgBeKruX1$)QW60^A+G=b{|7Q(y!l$%e`o@b z1;z&s9ANFdBM;8ECup5wn-Zg_Y3nV;N8yFyxxln`p#?Tud;_I^ zwQW+hwz92d<_|JEU3&S{v)gNzuK#|r_GaL&+N@`}rb}D|Cy#{(soxeQ8}?m6g{e&$&zP{0i`_T7Es?$D+EJiA(&_vnwq&sIR~%? zF5Y%bBYjr=)c@P3o>;hd?&*tr#DcS@eHQPUGqq(W*GZ>aI;&s)n)>nUlxyqOR_F%{ zd1v0to};%-H;u_kb-`rrl=*)SS?}rX(^vgJ&&c|^h4v}cg&SWNnXG^N@}unkUDM`! zUE94j`{ms7@2T!Dzr9pjdVBi6%WvLHTX}QQpFR5C$4_Tm(~pz+bK%N%)2CU--fr0? zyo|@8w<7BpW7*f)`vZ?_?0&{D=SsFl%yawobNf0{ c#>Un&u+LQHmzHBn2Btm+Pgg&ebxsLQ0LLs_T>t<8 literal 0 HcmV?d00001 diff --git a/doc/api/html/structstan_1_1gm_1_1positive__ordered__var__decl-members.html b/doc/api/html/structstan_1_1gm_1_1positive__ordered__var__decl-members.html new file mode 100644 index 00000000000..59bbe8cfa80 --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1positive__ordered__var__decl-members.html @@ -0,0 +1,121 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::gm::positive_ordered_var_decl Member List
+
+
+ +

This is the complete list of members for stan::gm::positive_ordered_var_decl, including all inherited members.

+ + + + + + + + + + +
base_type_stan::gm::base_var_decl
base_var_decl()stan::gm::base_var_decl
base_var_decl(const base_expr_type &base_type)stan::gm::base_var_decl
base_var_decl(const std::string &name, const std::vector< expression > &dims, const base_expr_type &base_type)stan::gm::base_var_decl
dims_stan::gm::base_var_decl
K_stan::gm::positive_ordered_var_decl
name_stan::gm::base_var_decl
positive_ordered_var_decl()stan::gm::positive_ordered_var_decl
positive_ordered_var_decl(expression const &K, std::string const &name, std::vector< expression > const &dims)stan::gm::positive_ordered_var_decl
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1positive__ordered__var__decl.html b/doc/api/html/structstan_1_1gm_1_1positive__ordered__var__decl.html new file mode 100644 index 00000000000..64d8923259c --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1positive__ordered__var__decl.html @@ -0,0 +1,225 @@ + + + + + +Stan: stan::gm::positive_ordered_var_decl Struct Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::gm::positive_ordered_var_decl Struct Reference
+
+
+ +

#include <ast.hpp>

+
+Inheritance diagram for stan::gm::positive_ordered_var_decl:
+
+
+ + +stan::gm::base_var_decl + +
+ + + + + + + + + + + + + +

+Public Member Functions

 positive_ordered_var_decl ()
 
 positive_ordered_var_decl (expression const &K, std::string const &name, std::vector< expression > const &dims)
 
- Public Member Functions inherited from stan::gm::base_var_decl
 base_var_decl ()
 
 base_var_decl (const base_expr_type &base_type)
 
 base_var_decl (const std::string &name, const std::vector< expression > &dims, const base_expr_type &base_type)
 
+ + + + + + + + + + +

+Public Attributes

expression K_
 
- Public Attributes inherited from stan::gm::base_var_decl
std::string name_
 
std::vector< expressiondims_
 
base_expr_type base_type_
 
+

Detailed Description

+
+

Definition at line 447 of file ast.hpp.

+

Constructor & Destructor Documentation

+ +
+
+ + + + + + + +
stan::gm::positive_ordered_var_decl::positive_ordered_var_decl ()
+
+ +

Definition at line 775 of file ast_def.cpp.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
stan::gm::positive_ordered_var_decl::positive_ordered_var_decl (expression const & K,
std::string const & name,
std::vector< expression > const & dims 
)
+
+ +

Definition at line 779 of file ast_def.cpp.

+ +
+
+

Member Data Documentation

+ +
+
+ + + + +
expression stan::gm::positive_ordered_var_decl::K_
+
+ +

Definition at line 448 of file ast.hpp.

+ +
+
+
The documentation for this struct was generated from the following files: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1positive__ordered__var__decl.png b/doc/api/html/structstan_1_1gm_1_1positive__ordered__var__decl.png new file mode 100644 index 0000000000000000000000000000000000000000..f70ccaee8d08201f9b2196e0db65f813f156694f GIT binary patch literal 794 zcmeAS@N?(olHy`uVBq!ia0vp^*MT^IgBeKf6%%+4q$C1-LR|m<{|{uoc=NTi|Ih>= z3ycpOIKbL@M;^%KC<*clW&kPzfvcxNj2IZ0R(iTPhEy=Vo%?pvY6Tuw@!K;$|Ld<= zTf=tc)yn0?i8B&!Yk8h968OJK=d{s+2$f6=Up>!P?vuSI{koW|r|ubEdOBi~mg&Fg z%zo=kUr1eDdV1HfZ?(_eKMt8(VU>D~<9~c@$ML7KP7MW< zw`bi*V~?raxc{~E*KNB_Ox3-;R)p_j=H47%)t77SEaOF|Tjskix3rCa_}}h&`MK~r zZu`uaewPu~z3nQub7rf}>be(z;h0 zt7_+Usn{-4|GrS=ul}r{nR|h}uU_}!bBdX{*bU~Wi96WOiedP>;?XaOBHjn= z2cl(f|Fv?e_+WBuz8p8wF&6<^C9%lloFw zzAOA{^N)%=;JWU&@2&Fdfc*8V^`#ghjsQjyJz-ZDVSRO&Cj02A~gH^k>h+1^h + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::gm::print_statement Member List
+
+
+ +

This is the complete list of members for stan::gm::print_statement, including all inherited members.

+ + + + +
print_statement()stan::gm::print_statement
print_statement(const std::vector< printable > &printables)stan::gm::print_statement
printables_stan::gm::print_statement
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1print__statement.html b/doc/api/html/structstan_1_1gm_1_1print__statement.html new file mode 100644 index 00000000000..626b905928b --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1print__statement.html @@ -0,0 +1,186 @@ + + + + + +Stan: stan::gm::print_statement Struct Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::gm::print_statement Struct Reference
+
+
+ +

#include <ast.hpp>

+ + + + + + +

+Public Member Functions

 print_statement ()
 
 print_statement (const std::vector< printable > &printables)
 
+ + + +

+Public Attributes

std::vector< printableprintables_
 
+

Detailed Description

+
+

Definition at line 641 of file ast.hpp.

+

Constructor & Destructor Documentation

+ +
+
+ + + + + + + +
stan::gm::print_statement::print_statement ()
+
+ +

Definition at line 970 of file ast_def.cpp.

+ +
+
+ +
+
+ + + + + + + + +
stan::gm::print_statement::print_statement (const std::vector< printable > & printables)
+
+ +

Definition at line 972 of file ast_def.cpp.

+ +
+
+

Member Data Documentation

+ +
+
+ + + + +
std::vector<printable> stan::gm::print_statement::printables_
+
+ +

Definition at line 642 of file ast.hpp.

+ +
+
+
The documentation for this struct was generated from the following files: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1printable-members.html b/doc/api/html/structstan_1_1gm_1_1printable-members.html new file mode 100644 index 00000000000..d7d44d91b5d --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1printable-members.html @@ -0,0 +1,119 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::gm::printable Member List
+
+
+ +

This is the complete list of members for stan::gm::printable, including all inherited members.

+ + + + + + + + +
printable()stan::gm::printable
printable(const expression &expression)stan::gm::printable
printable(const std::string &msg)stan::gm::printable
printable(const printable_t &printable)stan::gm::printable
printable(const printable &printable)stan::gm::printable
printable_stan::gm::printable
printable_t typedefstan::gm::printable
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1printable.html b/doc/api/html/structstan_1_1gm_1_1printable.html new file mode 100644 index 00000000000..19e18256fc4 --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1printable.html @@ -0,0 +1,271 @@ + + + + + +Stan: stan::gm::printable Struct Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::gm::printable Struct Reference
+
+
+ +

#include <ast.hpp>

+ + + + +

+Public Types

typedef boost::variant
+< boost::recursive_wrapper
+< std::string >
+, boost::recursive_wrapper
+< expression > > 
printable_t
 
+ + + + + + + + + + + +

+Public Member Functions

 printable ()
 
 printable (const expression &expression)
 
 printable (const std::string &msg)
 
 printable (const printable_t &printable)
 
 printable (const printable &printable)
 
+ + + +

+Public Attributes

printable_t printable_
 
+

Detailed Description

+
+

Definition at line 232 of file ast.hpp.

+

Member Typedef Documentation

+ +
+
+ + + + +
typedef boost::variant<boost::recursive_wrapper<std::string>, boost::recursive_wrapper<expression> > stan::gm::printable::printable_t
+
+ +

Definition at line 235 of file ast.hpp.

+ +
+
+

Constructor & Destructor Documentation

+ +
+
+ + + + + + + +
stan::gm::printable::printable ()
+
+ +

Definition at line 386 of file ast_def.cpp.

+ +
+
+ +
+
+ + + + + + + + +
stan::gm::printable::printable (const expressionexpression)
+
+ +

Definition at line 387 of file ast_def.cpp.

+ +
+
+ +
+
+ + + + + + + + +
stan::gm::printable::printable (const std::string & msg)
+
+ +

Definition at line 388 of file ast_def.cpp.

+ +
+
+ +
+
+ + + + + + + + +
stan::gm::printable::printable (const printable_tprintable)
+
+ +

Definition at line 389 of file ast_def.cpp.

+ +
+
+ +
+
+ + + + + + + + +
stan::gm::printable::printable (const printableprintable)
+
+ +

Definition at line 391 of file ast_def.cpp.

+ +
+
+

Member Data Documentation

+ +
+
+ + + + +
printable_t stan::gm::printable::printable_
+
+ +

Definition at line 243 of file ast.hpp.

+ +
+
+
The documentation for this struct was generated from the following files: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1printable__visgen-members.html b/doc/api/html/structstan_1_1gm_1_1printable__visgen-members.html new file mode 100644 index 00000000000..45485c212ef --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1printable__visgen-members.html @@ -0,0 +1,118 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::gm::printable_visgen Member List
+
+
+ +

This is the complete list of members for stan::gm::printable_visgen, including all inherited members.

+ + + + + + + +
o_stan::gm::visgen
operator()(const std::string &s) const stan::gm::printable_visgeninline
operator()(const expression &e) const stan::gm::printable_visgeninline
printable_visgen(std::ostream &o)stan::gm::printable_visgeninline
result_type typedefstan::gm::visgen
visgen(std::ostream &o)stan::gm::visgeninline
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1printable__visgen.html b/doc/api/html/structstan_1_1gm_1_1printable__visgen.html new file mode 100644 index 00000000000..3b07366412f --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1printable__visgen.html @@ -0,0 +1,231 @@ + + + + + +Stan: stan::gm::printable_visgen Struct Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::gm::printable_visgen Struct Reference
+
+
+ +

#include <generator.hpp>

+
+Inheritance diagram for stan::gm::printable_visgen:
+
+
+ + +stan::gm::visgen + +
+ + + + + + + + + + + +

+Public Member Functions

 printable_visgen (std::ostream &o)
 
void operator() (const std::string &s) const
 
void operator() (const expression &e) const
 
- Public Member Functions inherited from stan::gm::visgen
 visgen (std::ostream &o)
 
+ + + + + + + +

+Additional Inherited Members

- Public Types inherited from stan::gm::visgen
typedef void result_type
 
- Public Attributes inherited from stan::gm::visgen
std::ostream & o_
 
+

Detailed Description

+
+

Definition at line 231 of file generator.hpp.

+

Constructor & Destructor Documentation

+ +
+
+ + + + + +
+ + + + + + + + +
stan::gm::printable_visgen::printable_visgen (std::ostream & o)
+
+inline
+
+ +

Definition at line 232 of file generator.hpp.

+ +
+
+

Member Function Documentation

+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::printable_visgen::operator() (const std::string & s) const
+
+inline
+
+ +

Definition at line 233 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::printable_visgen::operator() (const expressione) const
+
+inline
+
+ +

Definition at line 236 of file generator.hpp.

+ +
+
+
The documentation for this struct was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1printable__visgen.png b/doc/api/html/structstan_1_1gm_1_1printable__visgen.png new file mode 100644 index 0000000000000000000000000000000000000000..5dd87115101285dc034b61ceb66544b46dccebd7 GIT binary patch literal 661 zcmeAS@N?(olHy`uVBq!ia0vp^bAUL2gBeKP_Ia}bNJ#|vgt-3y{~ySF@#br3|Dg#$ z78oBmaDcV*jy#adQ4-`A%m7pb0#{Fk7%?y~sd&0LhEy=Votr!PwgL~^^y9`q|J(2M zJn-zQUf><+TUl*ipXLZib6UpV+?E?HYUUXwJbkhXx1PGEnB4^KNnaGFncAzVdzL+W zawu3wX8Q7Hzy0feR0-)nHTN`sbjKoF!eLUI&&i{)-}X+*wp7}kYPorCDC>kJ+G$UV zB0r1e_MMVlz1vr9Hp3*7w0&!;L!UiKnpqs#KjkZSzM$1evSRpXP-WlvQ9P88X5WSW5kWT)Sb(3?<(^?UAdj< zMu8;*w;p@K!KVy5J7gMIr!#MOP{be>!*`(RG-Cvk# zdUyHe8T;?Q*4xSLTYX07d(G-S_bOk0stR!FT|cKp^V+`um3RC6+ZFGH98~&P*LN?! z=ETvPzh^y(>N}Aa>0`Mpt}VkzYJt? + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::gm::program Member List
+
+
+ +

This is the complete list of members for stan::gm::program, including all inherited members.

+ + + + + + + + + +
data_decl_stan::gm::program
derived_data_decl_stan::gm::program
derived_decl_stan::gm::program
generated_decl_stan::gm::program
parameter_decl_stan::gm::program
program()stan::gm::program
program(const std::vector< var_decl > &data_decl, const std::pair< std::vector< var_decl >, std::vector< statement > > &derived_data_decl, const std::vector< var_decl > &parameter_decl, const std::pair< std::vector< var_decl >, std::vector< statement > > &derived_decl, const statement &st, const std::pair< std::vector< var_decl >, std::vector< statement > > &generated_decl)stan::gm::program
statement_stan::gm::program
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1program.html b/doc/api/html/structstan_1_1gm_1_1program.html new file mode 100644 index 00000000000..5ded7c5f41f --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1program.html @@ -0,0 +1,306 @@ + + + + + +Stan: stan::gm::program Struct Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::gm::program Struct Reference
+
+
+ +

#include <ast.hpp>

+ + + + + + +

+Public Member Functions

 program ()
 
 program (const std::vector< var_decl > &data_decl, const std::pair< std::vector< var_decl >, std::vector< statement > > &derived_data_decl, const std::vector< var_decl > &parameter_decl, const std::pair< std::vector< var_decl >, std::vector< statement > > &derived_decl, const statement &st, const std::pair< std::vector< var_decl >, std::vector< statement > > &generated_decl)
 
+ + + + + + + + + + + + + +

+Public Attributes

std::vector< var_decldata_decl_
 
std::pair< std::vector
+< var_decl >, std::vector
+< statement > > 
derived_data_decl_
 
std::vector< var_declparameter_decl_
 
std::pair< std::vector
+< var_decl >, std::vector
+< statement > > 
derived_decl_
 
statement statement_
 
std::pair< std::vector
+< var_decl >, std::vector
+< statement > > 
generated_decl_
 
+

Detailed Description

+
+

Definition at line 654 of file ast.hpp.

+

Constructor & Destructor Documentation

+ +
+
+ + + + + + + +
stan::gm::program::program ()
+
+ +

Definition at line 976 of file ast_def.cpp.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
stan::gm::program::program (const std::vector< var_decl > & data_decl,
const std::pair< std::vector< var_decl >, std::vector< statement > > & derived_data_decl,
const std::vector< var_decl > & parameter_decl,
const std::pair< std::vector< var_decl >, std::vector< statement > > & derived_decl,
const statementst,
const std::pair< std::vector< var_decl >, std::vector< statement > > & generated_decl 
)
+
+ +

Definition at line 977 of file ast_def.cpp.

+ +
+
+

Member Data Documentation

+ +
+
+ + + + +
std::vector<var_decl> stan::gm::program::data_decl_
+
+ +

Definition at line 655 of file ast.hpp.

+ +
+
+ +
+
+ + + + +
std::pair<std::vector<var_decl>,std::vector<statement> > stan::gm::program::derived_data_decl_
+
+ +

Definition at line 657 of file ast.hpp.

+ +
+
+ +
+
+ + + + +
std::pair<std::vector<var_decl>,std::vector<statement> > stan::gm::program::derived_decl_
+
+ +

Definition at line 660 of file ast.hpp.

+ +
+
+ +
+
+ + + + +
std::pair<std::vector<var_decl>,std::vector<statement> > stan::gm::program::generated_decl_
+
+ +

Definition at line 662 of file ast.hpp.

+ +
+
+ +
+
+ + + + +
std::vector<var_decl> stan::gm::program::parameter_decl_
+
+ +

Definition at line 658 of file ast.hpp.

+ +
+
+ +
+
+ + + + +
statement stan::gm::program::statement_
+
+ +

Definition at line 661 of file ast.hpp.

+ +
+
+
The documentation for this struct was generated from the following files: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1program__grammar-members.html b/doc/api/html/structstan_1_1gm_1_1program__grammar-members.html new file mode 100644 index 00000000000..985191e561a --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1program__grammar-members.html @@ -0,0 +1,126 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::gm::program_grammar< Iterator > Member List
+
+ +
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1program__grammar.html b/doc/api/html/structstan_1_1gm_1_1program__grammar.html new file mode 100644 index 00000000000..fea7b6e7b1f --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1program__grammar.html @@ -0,0 +1,422 @@ + + + + + +Stan: stan::gm::program_grammar< Iterator > Struct Template Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::gm::program_grammar< Iterator > Struct Template Reference
+
+
+ +

#include <program_grammar.hpp>

+
+Inheritance diagram for stan::gm::program_grammar< Iterator >:
+
+
+ + + +
+ + + + +

+Public Member Functions

 program_grammar (const std::string &model_name)
 
+ + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Attributes

std::string model_name_
 
variable_map var_map_
 
std::stringstream error_msgs_
 
expression_grammar< Iterator > expression_g
 
var_decls_grammar< Iterator > var_decls_g
 
statement_grammar< Iterator > statement_g
 
boost::spirit::qi::rule
+< Iterator, std::vector
+< var_decl >
+), whitespace_grammar
+< Iterator > > 
data_var_decls_r
 
boost::spirit::qi::rule
+< Iterator, std::pair
+< std::vector< var_decl >
+, std::vector< statement >
+ >), whitespace_grammar
+< Iterator > > 
derived_data_var_decls_r
 
boost::spirit::qi::rule
+< Iterator, std::pair
+< std::vector< var_decl >
+, std::vector< statement >
+ >), whitespace_grammar
+< Iterator > > 
derived_var_decls_r
 
boost::spirit::qi::rule
+< Iterator, std::pair
+< std::vector< var_decl >
+, std::vector< statement >
+ >), whitespace_grammar
+< Iterator > > 
generated_var_decls_r
 
boost::spirit::qi::rule
+< Iterator, statement(),
+whitespace_grammar< Iterator > > 
model_r
 
boost::spirit::qi::rule
+< Iterator, std::vector
+< var_decl >
+), whitespace_grammar
+< Iterator > > 
param_var_decls_r
 
boost::spirit::qi::rule
+< Iterator, program(),
+whitespace_grammar< Iterator > > 
program_r
 
+

Detailed Description

+

template<typename Iterator>
+struct stan::gm::program_grammar< Iterator >

+ + +

Definition at line 21 of file program_grammar.hpp.

+

Constructor & Destructor Documentation

+ +
+
+
+template<typename Iterator>
+ + + + + + + + +
stan::gm::program_grammar< Iterator >::program_grammar (const std::string & model_name)
+
+ +
+
+

Member Data Documentation

+ +
+
+
+template<typename Iterator>
+ + + + +
boost::spirit::qi::rule<Iterator, std::vector<var_decl>), whitespace_grammar<Iterator> > stan::gm::program_grammar< Iterator >::data_var_decls_r
+
+ +

Definition at line 43 of file program_grammar.hpp.

+ +
+
+ +
+
+
+template<typename Iterator>
+ + + + +
boost::spirit::qi::rule<Iterator, std::pair<std::vector<var_decl>, std::vector<statement> >), whitespace_grammar<Iterator> > stan::gm::program_grammar< Iterator >::derived_data_var_decls_r
+
+ +

Definition at line 49 of file program_grammar.hpp.

+ +
+
+ +
+
+
+template<typename Iterator>
+ + + + +
boost::spirit::qi::rule<Iterator, std::pair<std::vector<var_decl>, std::vector<statement> >), whitespace_grammar<Iterator> > stan::gm::program_grammar< Iterator >::derived_var_decls_r
+
+ +

Definition at line 55 of file program_grammar.hpp.

+ +
+
+ +
+
+
+template<typename Iterator>
+ + + + +
std::stringstream stan::gm::program_grammar< Iterator >::error_msgs_
+
+ +

Definition at line 31 of file program_grammar.hpp.

+ +
+
+ +
+
+
+template<typename Iterator>
+ + + + +
expression_grammar<Iterator> stan::gm::program_grammar< Iterator >::expression_g
+
+ +

Definition at line 34 of file program_grammar.hpp.

+ +
+
+ +
+
+
+template<typename Iterator>
+ + + + +
boost::spirit::qi::rule<Iterator, std::pair<std::vector<var_decl>, std::vector<statement> >), whitespace_grammar<Iterator> > stan::gm::program_grammar< Iterator >::generated_var_decls_r
+
+ +

Definition at line 61 of file program_grammar.hpp.

+ +
+
+ +
+
+
+template<typename Iterator>
+ + + + +
std::string stan::gm::program_grammar< Iterator >::model_name_
+
+ +

Definition at line 29 of file program_grammar.hpp.

+ +
+
+ +
+
+
+template<typename Iterator>
+ + + + +
boost::spirit::qi::rule<Iterator, statement(), whitespace_grammar<Iterator> > stan::gm::program_grammar< Iterator >::model_r
+
+ +

Definition at line 66 of file program_grammar.hpp.

+ +
+
+ +
+
+
+template<typename Iterator>
+ + + + +
boost::spirit::qi::rule<Iterator, std::vector<var_decl>), whitespace_grammar<Iterator> > stan::gm::program_grammar< Iterator >::param_var_decls_r
+
+ +

Definition at line 71 of file program_grammar.hpp.

+ +
+
+ +
+
+
+template<typename Iterator>
+ + + + +
boost::spirit::qi::rule<Iterator, program(), whitespace_grammar<Iterator> > stan::gm::program_grammar< Iterator >::program_r
+
+ +

Definition at line 76 of file program_grammar.hpp.

+ +
+
+ +
+
+
+template<typename Iterator>
+ + + + +
statement_grammar<Iterator> stan::gm::program_grammar< Iterator >::statement_g
+
+ +

Definition at line 36 of file program_grammar.hpp.

+ +
+
+ +
+
+
+template<typename Iterator>
+ + + + +
var_decls_grammar<Iterator> stan::gm::program_grammar< Iterator >::var_decls_g
+
+ +

Definition at line 35 of file program_grammar.hpp.

+ +
+
+ +
+
+
+template<typename Iterator>
+ + + + +
variable_map stan::gm::program_grammar< Iterator >::var_map_
+
+ +

Definition at line 30 of file program_grammar.hpp.

+ +
+
+
The documentation for this struct was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1program__grammar.png b/doc/api/html/structstan_1_1gm_1_1program__grammar.png new file mode 100644 index 0000000000000000000000000000000000000000..503ab229d570812735ff7868321c4da43403bda9 GIT binary patch literal 1216 zcmeAS@N?(olHy`uVBq!ia0y~yV7v%q2XHV0$-=h%2|!9Bz$e7@|Ns9$=8HF9OZyK^ z0J6aNz<~p-op)Tg1i|YRVyDlA5zq?+2^UbWPull*G1irnwULR|{?bsHcYd8CtI!<4Iy5-5u%3JYE z&YjmTp0;Gc)E6c<=Uo3~plOz#8IAC149BA%P5=Jla`C>}e!soNteO2U{k6qb zFP(p0TIc=i6Jd6Lwy$G4>h)k+8t0Ln9eZC(zV^*$6PTV+Y+a)LQ0!#=tG-{_MbnnZ znl74D;%Cm*a^Aj7-_w4Qe$XV5Ez$>`Sx#M2JJ+PP?%bp;i z2IqrQmL$vGi1WMf^|`5~_oaFBs@;B9sd)NdxfasS_{V04F>~Ck%_^*S9YZF0P5LrX zYtf`Bo~|L2j8?*v0e7JB=1DUn`56Cj)-q0En6#pUN#)Y@a7ES=i6UeTEqZMGmJp(OesNvtS6QLm3X>}C`<+_0H!KxDEMXVau$+afvy22S2T<4 z8ec4bztX$rwqjk%16Pp;5kS1;&911o=S`)=&prKHZMa)B)@RwfpS7nBm9{#ztF3%_QZMt!V#6;?dt%@BrbM0Ewn;eQzM5{v+>^g@_QqZ}I^nw|{gHacy6f&7hJJVY z3-uY^U%1`5?&#^Y{;%In_#LPJ|NRF4V}Tc!Y|eG-^GPVb@w;xBd_d`Q+jrmo<#(95 z|8{Babl!aB@w`((Y`3o8b5;43wk&`B|Jtj6O)tK6lyH&kd3#KfcipQVrV^=l7ad9- z@A$b`=KV$IMZ48*yL^9tF?mt_AGx{HD_3O}>+Iu5>dB4Ty!6M}xEk9zGNms4KD$;) zx0Oa~``EZXs%E^mZhLraLv8QDw=LC5-Ti(d4-9`LEP7aV>-nZ!3;DC}=PL_0`22ce zY$a}TVC&ifb6&>lelr+UF0=!62_48pkEKhkD`rNXJfqY8kCD}k^W-w6tY5(5hQZU- K&t;ucLK6U9(L7WD literal 0 HcmV?d00001 diff --git a/doc/api/html/structstan_1_1gm_1_1range-members.html b/doc/api/html/structstan_1_1gm_1_1range-members.html new file mode 100644 index 00000000000..396ffcfca03 --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1range-members.html @@ -0,0 +1,118 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::gm::range Member List
+
+
+ +

This is the complete list of members for stan::gm::range, including all inherited members.

+ + + + + + + +
has_high() const stan::gm::range
has_low() const stan::gm::range
high_stan::gm::range
low_stan::gm::range
range()stan::gm::range
range(expression const &low, expression const &high)stan::gm::range
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1range.html b/doc/api/html/structstan_1_1gm_1_1range.html new file mode 100644 index 00000000000..161d5d34bc8 --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1range.html @@ -0,0 +1,251 @@ + + + + + +Stan: stan::gm::range Struct Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::gm::range Struct Reference
+
+
+ +

#include <ast.hpp>

+ + + + + + + + + + +

+Public Member Functions

 range ()
 
 range (expression const &low, expression const &high)
 
bool has_low () const
 
bool has_high () const
 
+ + + + + +

+Public Attributes

expression low_
 
expression high_
 
+

Detailed Description

+
+

Definition at line 358 of file ast.hpp.

+

Constructor & Destructor Documentation

+ +
+
+ + + + + + + +
stan::gm::range::range ()
+
+ +

Definition at line 645 of file ast_def.cpp.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
stan::gm::range::range (expression const & low,
expression const & high 
)
+
+ +

Definition at line 646 of file ast_def.cpp.

+ +
+
+

Member Function Documentation

+ +
+
+ + + + + + + +
bool stan::gm::range::has_high () const
+
+ +

Definition at line 654 of file ast_def.cpp.

+ +
+
+ +
+
+ + + + + + + +
bool stan::gm::range::has_low () const
+
+ +

Definition at line 651 of file ast_def.cpp.

+ +
+
+

Member Data Documentation

+ +
+
+ + + + +
expression stan::gm::range::high_
+
+ +

Definition at line 360 of file ast.hpp.

+ +
+
+ +
+
+ + + + +
expression stan::gm::range::low_
+
+ +

Definition at line 359 of file ast.hpp.

+ +
+
+
The documentation for this struct was generated from the following files: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1remove__loop__identifier-members.html b/doc/api/html/structstan_1_1gm_1_1remove__loop__identifier-members.html new file mode 100644 index 00000000000..564d559a063 --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1remove__loop__identifier-members.html @@ -0,0 +1,113 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::gm::remove_loop_identifier Member List
+
+
+ +

This is the complete list of members for stan::gm::remove_loop_identifier, including all inherited members.

+ + +
operator()(const std::string &name, variable_map &vm) const stan::gm::remove_loop_identifierinline
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1remove__loop__identifier.html b/doc/api/html/structstan_1_1gm_1_1remove__loop__identifier.html new file mode 100644 index 00000000000..38f8f50dec7 --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1remove__loop__identifier.html @@ -0,0 +1,169 @@ + + + + + +Stan: stan::gm::remove_loop_identifier Struct Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::gm::remove_loop_identifier Struct Reference
+
+
+ +

#include <statement_grammar_def.hpp>

+ + + + +

+Classes

struct  result
 
+ + + +

+Public Member Functions

void operator() (const std::string &name, variable_map &vm) const
 
+

Detailed Description

+
+

Definition at line 385 of file statement_grammar_def.hpp.

+

Member Function Documentation

+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
void stan::gm::remove_loop_identifier::operator() (const std::string & name,
variable_mapvm 
) const
+
+inline
+
+ +

Definition at line 388 of file statement_grammar_def.hpp.

+ +
+
+
The documentation for this struct was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1remove__loop__identifier_1_1result-members.html b/doc/api/html/structstan_1_1gm_1_1remove__loop__identifier_1_1result-members.html new file mode 100644 index 00000000000..27d5e388d70 --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1remove__loop__identifier_1_1result-members.html @@ -0,0 +1,113 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::gm::remove_loop_identifier::result< T1, T2 > Member List
+
+
+ +

This is the complete list of members for stan::gm::remove_loop_identifier::result< T1, T2 >, including all inherited members.

+ + +
type typedefstan::gm::remove_loop_identifier::result< T1, T2 >
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1remove__loop__identifier_1_1result.html b/doc/api/html/structstan_1_1gm_1_1remove__loop__identifier_1_1result.html new file mode 100644 index 00000000000..bc41447686e --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1remove__loop__identifier_1_1result.html @@ -0,0 +1,146 @@ + + + + + +Stan: stan::gm::remove_loop_identifier::result< T1, T2 > Struct Template Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::gm::remove_loop_identifier::result< T1, T2 > Struct Template Reference
+
+
+ +

#include <statement_grammar_def.hpp>

+ + + + +

+Public Types

typedef void type
 
+

Detailed Description

+

template<typename T1, typename T2>
+struct stan::gm::remove_loop_identifier::result< T1, T2 >

+ + +

Definition at line 387 of file statement_grammar_def.hpp.

+

Member Typedef Documentation

+ +
+
+
+template<typename T1 , typename T2 >
+ + + + +
typedef void stan::gm::remove_loop_identifier::result< T1, T2 >::type
+
+ +

Definition at line 387 of file statement_grammar_def.hpp.

+ +
+
+
The documentation for this struct was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1row__vector__var__decl-members.html b/doc/api/html/structstan_1_1gm_1_1row__vector__var__decl-members.html new file mode 100644 index 00000000000..3cdfcf21bc8 --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1row__vector__var__decl-members.html @@ -0,0 +1,122 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::gm::row_vector_var_decl Member List
+
+
+ +

This is the complete list of members for stan::gm::row_vector_var_decl, including all inherited members.

+ + + + + + + + + + + +
base_type_stan::gm::base_var_decl
base_var_decl()stan::gm::base_var_decl
base_var_decl(const base_expr_type &base_type)stan::gm::base_var_decl
base_var_decl(const std::string &name, const std::vector< expression > &dims, const base_expr_type &base_type)stan::gm::base_var_decl
dims_stan::gm::base_var_decl
N_stan::gm::row_vector_var_decl
name_stan::gm::base_var_decl
range_stan::gm::row_vector_var_decl
row_vector_var_decl()stan::gm::row_vector_var_decl
row_vector_var_decl(range const &range, expression const &N, std::string const &name, std::vector< expression > const &dims)stan::gm::row_vector_var_decl
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1row__vector__var__decl.html b/doc/api/html/structstan_1_1gm_1_1row__vector__var__decl.html new file mode 100644 index 00000000000..a3d7ca5ead3 --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1row__vector__var__decl.html @@ -0,0 +1,247 @@ + + + + + +Stan: stan::gm::row_vector_var_decl Struct Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::gm::row_vector_var_decl Struct Reference
+
+
+ +

#include <ast.hpp>

+
+Inheritance diagram for stan::gm::row_vector_var_decl:
+
+
+ + +stan::gm::base_var_decl + +
+ + + + + + + + + + + + + +

+Public Member Functions

 row_vector_var_decl ()
 
 row_vector_var_decl (range const &range, expression const &N, std::string const &name, std::vector< expression > const &dims)
 
- Public Member Functions inherited from stan::gm::base_var_decl
 base_var_decl ()
 
 base_var_decl (const base_expr_type &base_type)
 
 base_var_decl (const std::string &name, const std::vector< expression > &dims, const base_expr_type &base_type)
 
+ + + + + + + + + + + + +

+Public Attributes

range range_
 
expression N_
 
- Public Attributes inherited from stan::gm::base_var_decl
std::string name_
 
std::vector< expressiondims_
 
base_expr_type base_type_
 
+

Detailed Description

+
+

Definition at line 465 of file ast.hpp.

+

Constructor & Destructor Documentation

+ +
+
+ + + + + + + +
stan::gm::row_vector_var_decl::row_vector_var_decl ()
+
+ +

Definition at line 797 of file ast_def.cpp.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
stan::gm::row_vector_var_decl::row_vector_var_decl (range const & range,
expression const & N,
std::string const & name,
std::vector< expression > const & dims 
)
+
+ +

Definition at line 798 of file ast_def.cpp.

+ +
+
+

Member Data Documentation

+ +
+
+ + + + +
expression stan::gm::row_vector_var_decl::N_
+
+ +

Definition at line 467 of file ast.hpp.

+ +
+
+ +
+
+ + + + +
range stan::gm::row_vector_var_decl::range_
+
+ +

Definition at line 466 of file ast.hpp.

+ +
+
+
The documentation for this struct was generated from the following files: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1row__vector__var__decl.png b/doc/api/html/structstan_1_1gm_1_1row__vector__var__decl.png new file mode 100644 index 0000000000000000000000000000000000000000..e2940a2a56ae084a21d1ecbbb8ab5eb6ff2df1bf GIT binary patch literal 735 zcmeAS@N?(olHy`uVBq!ia0vp^JAgQVgBeK9{pBwOq$C1-LR|m<{|{uoc=NTi|Ih>= z3ycpOIKbL@M;^%KC<*clW&kPzfvcxNj2IZ0@;qG}Ln;{G&V4;;wSoZK?DMPk{8yG& zRxmd_mSTDO+Lc?oxOjMZp6H+6q+@(Y$@6pKqe&)0!qb;b+#^yxsbuPQE$<-L%lqU% z_;>BzI`ejZ_Jp?+x#p|>oA&EtXif7c)tNahoAzw1zj^!Es!3Ohl-^Bky0J`u=bukU z1gC^PnX)b^YMCURP;6GL4O`+=S_TK_71vg}s>cxAi%=axrh zs~CEY9$^HkV^B6MY?wI1;(&*bOoECUpMj7tyF_OvbI%bJX@}n8b7wjD66~O=CVBly zcP~`0x~x|7gZa_xlRs=OAATD-Ve7}^X*;H#etNs5qx#{$gYKS*!d5S{Y0F9> z@n^*!cW`M&gxgsCSmpkxbb{JqzOe7RcKly`boDvEBfqmRvRIz~=(Xp>&#*lkIXB-p z`!VjS*Pqh9_7KkBb@N-c@XCf<-*<@p<<9(Bj~q_;Pd&UUbyuuaD1+b6)cqT-ADR7< z#Ukal$4`BR1BQQBg*U~_`Pi+;(7a=w7Q=oHXgH*ZmY>_n`IG(Y8g)j_zf;x#QzL_? LtDnm{r-UW|n4e(h literal 0 HcmV?d00001 diff --git a/doc/api/html/structstan_1_1gm_1_1sample-members.html b/doc/api/html/structstan_1_1gm_1_1sample-members.html new file mode 100644 index 00000000000..09c434f5402 --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1sample-members.html @@ -0,0 +1,118 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::gm::sample Member List
+
+
+ +

This is the complete list of members for stan::gm::sample, including all inherited members.

+ + + + + + + +
dist_stan::gm::sample
expr_stan::gm::sample
is_ill_formed() const stan::gm::sample
sample()stan::gm::sample
sample(expression &e, distribution &dist)stan::gm::sample
truncation_stan::gm::sample
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1sample.html b/doc/api/html/structstan_1_1gm_1_1sample.html new file mode 100644 index 00000000000..01726543b3d --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1sample.html @@ -0,0 +1,248 @@ + + + + + +Stan: stan::gm::sample Struct Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::gm::sample Struct Reference
+
+
+ +

#include <ast.hpp>

+ + + + + + + + +

+Public Member Functions

 sample ()
 
 sample (expression &e, distribution &dist)
 
bool is_ill_formed () const
 
+ + + + + + + +

+Public Attributes

expression expr_
 
distribution dist_
 
range truncation_
 
+

Detailed Description

+
+

Definition at line 677 of file ast.hpp.

+

Constructor & Destructor Documentation

+ +
+
+ + + + + + + +
stan::gm::sample::sample ()
+
+ +

Definition at line 994 of file ast_def.cpp.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
stan::gm::sample::sample (expressione,
distributiondist 
)
+
+ +

Definition at line 996 of file ast_def.cpp.

+ +
+
+

Member Function Documentation

+ +
+
+ + + + + + + +
bool stan::gm::sample::is_ill_formed () const
+
+ +

Definition at line 1001 of file ast_def.cpp.

+ +
+
+

Member Data Documentation

+ +
+
+ + + + +
distribution stan::gm::sample::dist_
+
+ +

Definition at line 679 of file ast.hpp.

+ +
+
+ +
+
+ + + + +
expression stan::gm::sample::expr_
+
+ +

Definition at line 678 of file ast.hpp.

+ +
+
+ +
+
+ + + + +
range stan::gm::sample::truncation_
+
+ +

Definition at line 680 of file ast.hpp.

+ +
+
+
The documentation for this struct was generated from the following files: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1set__fun__type-members.html b/doc/api/html/structstan_1_1gm_1_1set__fun__type-members.html new file mode 100644 index 00000000000..e88fd2dda15 --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1set__fun__type-members.html @@ -0,0 +1,113 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::gm::set_fun_type Member List
+
+
+ +

This is the complete list of members for stan::gm::set_fun_type, including all inherited members.

+ + +
operator()(fun &fun, std::ostream &error_msgs) const stan::gm::set_fun_typeinline
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1set__fun__type.html b/doc/api/html/structstan_1_1gm_1_1set__fun__type.html new file mode 100644 index 00000000000..497e232e232 --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1set__fun__type.html @@ -0,0 +1,169 @@ + + + + + +Stan: stan::gm::set_fun_type Struct Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::gm::set_fun_type Struct Reference
+
+
+ +

#include <term_grammar_def.hpp>

+ + + + +

+Classes

struct  result
 
+ + + +

+Public Member Functions

fun operator() (fun &fun, std::ostream &error_msgs) const
 
+

Detailed Description

+
+

Definition at line 73 of file term_grammar_def.hpp.

+

Member Function Documentation

+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
fun stan::gm::set_fun_type::operator() (funfun,
std::ostream & error_msgs 
) const
+
+inline
+
+ +

Definition at line 77 of file term_grammar_def.hpp.

+ +
+
+
The documentation for this struct was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1set__fun__type2-members.html b/doc/api/html/structstan_1_1gm_1_1set__fun__type2-members.html new file mode 100644 index 00000000000..6edd0f5b750 --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1set__fun__type2-members.html @@ -0,0 +1,113 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::gm::set_fun_type2 Member List
+
+
+ +

This is the complete list of members for stan::gm::set_fun_type2, including all inherited members.

+ + +
operator()(fun &fun, std::ostream &error_msgs) const stan::gm::set_fun_type2inline
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1set__fun__type2.html b/doc/api/html/structstan_1_1gm_1_1set__fun__type2.html new file mode 100644 index 00000000000..6dbc585c9ca --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1set__fun__type2.html @@ -0,0 +1,169 @@ + + + + + +Stan: stan::gm::set_fun_type2 Struct Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::gm::set_fun_type2 Struct Reference
+
+
+ +

#include <expression_grammar_def.hpp>

+ + + + +

+Classes

struct  result
 
+ + + +

+Public Member Functions

fun operator() (fun &fun, std::ostream &error_msgs) const
 
+

Detailed Description

+
+

Definition at line 70 of file expression_grammar_def.hpp.

+

Member Function Documentation

+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
fun stan::gm::set_fun_type2::operator() (funfun,
std::ostream & error_msgs 
) const
+
+inline
+
+ +

Definition at line 74 of file expression_grammar_def.hpp.

+ +
+
+
The documentation for this struct was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1set__fun__type2_1_1result-members.html b/doc/api/html/structstan_1_1gm_1_1set__fun__type2_1_1result-members.html new file mode 100644 index 00000000000..d7ad2066eaa --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1set__fun__type2_1_1result-members.html @@ -0,0 +1,113 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::gm::set_fun_type2::result< T1, T2 > Member List
+
+
+ +

This is the complete list of members for stan::gm::set_fun_type2::result< T1, T2 >, including all inherited members.

+ + +
type typedefstan::gm::set_fun_type2::result< T1, T2 >
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1set__fun__type2_1_1result.html b/doc/api/html/structstan_1_1gm_1_1set__fun__type2_1_1result.html new file mode 100644 index 00000000000..434f8b49239 --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1set__fun__type2_1_1result.html @@ -0,0 +1,146 @@ + + + + + +Stan: stan::gm::set_fun_type2::result< T1, T2 > Struct Template Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::gm::set_fun_type2::result< T1, T2 > Struct Template Reference
+
+
+ +

#include <expression_grammar_def.hpp>

+ + + + +

+Public Types

typedef fun type
 
+

Detailed Description

+

template<typename T1, typename T2>
+struct stan::gm::set_fun_type2::result< T1, T2 >

+ + +

Definition at line 72 of file expression_grammar_def.hpp.

+

Member Typedef Documentation

+ +
+
+
+template<typename T1 , typename T2 >
+ + + + +
typedef fun stan::gm::set_fun_type2::result< T1, T2 >::type
+
+ +

Definition at line 72 of file expression_grammar_def.hpp.

+ +
+
+
The documentation for this struct was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1set__fun__type_1_1result-members.html b/doc/api/html/structstan_1_1gm_1_1set__fun__type_1_1result-members.html new file mode 100644 index 00000000000..852b02b9910 --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1set__fun__type_1_1result-members.html @@ -0,0 +1,113 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::gm::set_fun_type::result< T1, T2 > Member List
+
+
+ +

This is the complete list of members for stan::gm::set_fun_type::result< T1, T2 >, including all inherited members.

+ + +
type typedefstan::gm::set_fun_type::result< T1, T2 >
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1set__fun__type_1_1result.html b/doc/api/html/structstan_1_1gm_1_1set__fun__type_1_1result.html new file mode 100644 index 00000000000..6d467031cf3 --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1set__fun__type_1_1result.html @@ -0,0 +1,146 @@ + + + + + +Stan: stan::gm::set_fun_type::result< T1, T2 > Struct Template Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::gm::set_fun_type::result< T1, T2 > Struct Template Reference
+
+
+ +

#include <term_grammar_def.hpp>

+ + + + +

+Public Types

typedef fun type
 
+

Detailed Description

+

template<typename T1, typename T2>
+struct stan::gm::set_fun_type::result< T1, T2 >

+ + +

Definition at line 75 of file term_grammar_def.hpp.

+

Member Typedef Documentation

+ +
+
+
+template<typename T1 , typename T2 >
+ + + + +
typedef fun stan::gm::set_fun_type::result< T1, T2 >::type
+
+ +

Definition at line 75 of file term_grammar_def.hpp.

+ +
+
+
The documentation for this struct was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1set__fun__type__named-members.html b/doc/api/html/structstan_1_1gm_1_1set__fun__type__named-members.html new file mode 100644 index 00000000000..179caf16c7f --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1set__fun__type__named-members.html @@ -0,0 +1,113 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::gm::set_fun_type_named Member List
+
+
+ +

This is the complete list of members for stan::gm::set_fun_type_named, including all inherited members.

+ + +
operator()(fun &fun, const var_origin &var_origin, bool &pass, std::ostream &error_msgs) const stan::gm::set_fun_type_namedinline
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1set__fun__type__named.html b/doc/api/html/structstan_1_1gm_1_1set__fun__type__named.html new file mode 100644 index 00000000000..1637b3bf91e --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1set__fun__type__named.html @@ -0,0 +1,181 @@ + + + + + +Stan: stan::gm::set_fun_type_named Struct Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::gm::set_fun_type_named Struct Reference
+
+
+ +

#include <term_grammar_def.hpp>

+ + + + +

+Classes

struct  result
 
+ + + +

+Public Member Functions

fun operator() (fun &fun, const var_origin &var_origin, bool &pass, std::ostream &error_msgs) const
 
+

Detailed Description

+
+

Definition at line 91 of file term_grammar_def.hpp.

+

Member Function Documentation

+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
fun stan::gm::set_fun_type_named::operator() (funfun,
const var_originvar_origin,
bool & pass,
std::ostream & error_msgs 
) const
+
+inline
+
+ +

Definition at line 95 of file term_grammar_def.hpp.

+ +
+
+
The documentation for this struct was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1set__fun__type__named_1_1result-members.html b/doc/api/html/structstan_1_1gm_1_1set__fun__type__named_1_1result-members.html new file mode 100644 index 00000000000..bd25ddb15c5 --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1set__fun__type__named_1_1result-members.html @@ -0,0 +1,113 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::gm::set_fun_type_named::result< T1, T2, T3, T4 > Member List
+
+
+ +

This is the complete list of members for stan::gm::set_fun_type_named::result< T1, T2, T3, T4 >, including all inherited members.

+ + +
type typedefstan::gm::set_fun_type_named::result< T1, T2, T3, T4 >
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1set__fun__type__named_1_1result.html b/doc/api/html/structstan_1_1gm_1_1set__fun__type__named_1_1result.html new file mode 100644 index 00000000000..9bab5123f21 --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1set__fun__type__named_1_1result.html @@ -0,0 +1,146 @@ + + + + + +Stan: stan::gm::set_fun_type_named::result< T1, T2, T3, T4 > Struct Template Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::gm::set_fun_type_named::result< T1, T2, T3, T4 > Struct Template Reference
+
+
+ +

#include <term_grammar_def.hpp>

+ + + + +

+Public Types

typedef fun type
 
+

Detailed Description

+

template<typename T1, typename T2, typename T3, typename T4>
+struct stan::gm::set_fun_type_named::result< T1, T2, T3, T4 >

+ + +

Definition at line 93 of file term_grammar_def.hpp.

+

Member Typedef Documentation

+ +
+
+
+template<typename T1 , typename T2 , typename T3 , typename T4 >
+ + + + +
typedef fun stan::gm::set_fun_type_named::result< T1, T2, T3, T4 >::type
+
+ +

Definition at line 93 of file term_grammar_def.hpp.

+ +
+
+
The documentation for this struct was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1set__param__ranges__visgen-members.html b/doc/api/html/structstan_1_1gm_1_1set__param__ranges__visgen-members.html new file mode 100644 index 00000000000..45a12c1206f --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1set__param__ranges__visgen-members.html @@ -0,0 +1,133 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::gm::set_param_ranges_visgen Member List
+
+
+ +

This is the complete list of members for stan::gm::set_param_ranges_visgen, including all inherited members.

+ + + + + + + + + + + + + + + + + + + + + + +
generate_increment(std::vector< expression > dims) const stan::gm::set_param_ranges_visgeninline
generate_increment(expression K, std::vector< expression > dims) const stan::gm::set_param_ranges_visgeninline
generate_increment(expression M, expression N, std::vector< expression > dims) const stan::gm::set_param_ranges_visgeninline
generate_increment_i(std::vector< expression > dims) const stan::gm::set_param_ranges_visgeninline
o_stan::gm::visgen
operator()(const nil &) const stan::gm::set_param_ranges_visgeninline
operator()(const int_var_decl &x) const stan::gm::set_param_ranges_visgeninline
operator()(const double_var_decl &x) const stan::gm::set_param_ranges_visgeninline
operator()(const vector_var_decl &x) const stan::gm::set_param_ranges_visgeninline
operator()(const row_vector_var_decl &x) const stan::gm::set_param_ranges_visgeninline
operator()(const matrix_var_decl &x) const stan::gm::set_param_ranges_visgeninline
operator()(const unit_vector_var_decl &x) const stan::gm::set_param_ranges_visgeninline
operator()(const simplex_var_decl &x) const stan::gm::set_param_ranges_visgeninline
operator()(const ordered_var_decl &x) const stan::gm::set_param_ranges_visgeninline
operator()(const positive_ordered_var_decl &x) const stan::gm::set_param_ranges_visgeninline
operator()(const cholesky_factor_var_decl &x) const stan::gm::set_param_ranges_visgeninline
operator()(const cov_matrix_var_decl &x) const stan::gm::set_param_ranges_visgeninline
operator()(const corr_matrix_var_decl &x) const stan::gm::set_param_ranges_visgeninline
result_type typedefstan::gm::visgen
set_param_ranges_visgen(std::ostream &o)stan::gm::set_param_ranges_visgeninline
visgen(std::ostream &o)stan::gm::visgeninline
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1set__param__ranges__visgen.html b/doc/api/html/structstan_1_1gm_1_1set__param__ranges__visgen.html new file mode 100644 index 00000000000..cdb531cfe80 --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1set__param__ranges__visgen.html @@ -0,0 +1,677 @@ + + + + + +Stan: stan::gm::set_param_ranges_visgen Struct Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::gm::set_param_ranges_visgen Struct Reference
+
+
+ +

#include <generator.hpp>

+
+Inheritance diagram for stan::gm::set_param_ranges_visgen:
+
+
+ + +stan::gm::visgen + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 set_param_ranges_visgen (std::ostream &o)
 
void operator() (const nil &) const
 
void operator() (const int_var_decl &x) const
 
void operator() (const double_var_decl &x) const
 
void operator() (const vector_var_decl &x) const
 
void operator() (const row_vector_var_decl &x) const
 
void operator() (const matrix_var_decl &x) const
 
void operator() (const unit_vector_var_decl &x) const
 
void operator() (const simplex_var_decl &x) const
 
void operator() (const ordered_var_decl &x) const
 
void operator() (const positive_ordered_var_decl &x) const
 
void operator() (const cholesky_factor_var_decl &x) const
 
void operator() (const cov_matrix_var_decl &x) const
 
void operator() (const corr_matrix_var_decl &x) const
 
void generate_increment_i (std::vector< expression > dims) const
 
void generate_increment (std::vector< expression > dims) const
 
void generate_increment (expression K, std::vector< expression > dims) const
 
void generate_increment (expression M, expression N, std::vector< expression > dims) const
 
- Public Member Functions inherited from stan::gm::visgen
 visgen (std::ostream &o)
 
+ + + + + + + +

+Additional Inherited Members

- Public Types inherited from stan::gm::visgen
typedef void result_type
 
- Public Attributes inherited from stan::gm::visgen
std::ostream & o_
 
+

Detailed Description

+
+

Definition at line 2117 of file generator.hpp.

+

Constructor & Destructor Documentation

+ +
+
+ + + + + +
+ + + + + + + + +
stan::gm::set_param_ranges_visgen::set_param_ranges_visgen (std::ostream & o)
+
+inline
+
+ +

Definition at line 2118 of file generator.hpp.

+ +
+
+

Member Function Documentation

+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::set_param_ranges_visgen::generate_increment (std::vector< expressiondims) const
+
+inline
+
+ +

Definition at line 2244 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
void stan::gm::set_param_ranges_visgen::generate_increment (expression K,
std::vector< expressiondims 
) const
+
+inline
+
+ +

Definition at line 2256 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
void stan::gm::set_param_ranges_visgen::generate_increment (expression M,
expression N,
std::vector< expressiondims 
) const
+
+inline
+
+ +

Definition at line 2267 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::set_param_ranges_visgen::generate_increment_i (std::vector< expressiondims) const
+
+inline
+
+ +

Definition at line 2232 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::set_param_ranges_visgen::operator() (const nil) const
+
+inline
+
+ +

Definition at line 2121 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::set_param_ranges_visgen::operator() (const int_var_declx) const
+
+inline
+
+ +

Definition at line 2122 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::set_param_ranges_visgen::operator() (const double_var_declx) const
+
+inline
+
+ +

Definition at line 2145 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::set_param_ranges_visgen::operator() (const vector_var_declx) const
+
+inline
+
+ +

Definition at line 2148 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::set_param_ranges_visgen::operator() (const row_vector_var_declx) const
+
+inline
+
+ +

Definition at line 2151 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::set_param_ranges_visgen::operator() (const matrix_var_declx) const
+
+inline
+
+ +

Definition at line 2154 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::set_param_ranges_visgen::operator() (const unit_vector_var_declx) const
+
+inline
+
+ +

Definition at line 2157 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::set_param_ranges_visgen::operator() (const simplex_var_declx) const
+
+inline
+
+ +

Definition at line 2168 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::set_param_ranges_visgen::operator() (const ordered_var_declx) const
+
+inline
+
+ +

Definition at line 2179 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::set_param_ranges_visgen::operator() (const positive_ordered_var_declx) const
+
+inline
+
+ +

Definition at line 2182 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::set_param_ranges_visgen::operator() (const cholesky_factor_var_declx) const
+
+inline
+
+ +

Definition at line 2185 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::set_param_ranges_visgen::operator() (const cov_matrix_var_declx) const
+
+inline
+
+ +

Definition at line 2204 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::set_param_ranges_visgen::operator() (const corr_matrix_var_declx) const
+
+inline
+
+ +

Definition at line 2219 of file generator.hpp.

+ +
+
+
The documentation for this struct was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1set__param__ranges__visgen.png b/doc/api/html/structstan_1_1gm_1_1set__param__ranges__visgen.png new file mode 100644 index 0000000000000000000000000000000000000000..83f147f9ad2a98a6fa24bed0c8d673a700813d2e GIT binary patch literal 766 zcmeAS@N?(olHy`uVBq!ia0vp^mw`BdgBeI}`MY5*kdg@S332`Z|38rV;?396{zDUh zEHFNB-~emq9eE&^qa?^Lm;tB=1g@S6F=Aj~>h*MS45?szJNNCR)d~VG{JEj`{!h#o za>H7PPovXFyrTAOos-C~U6u$SoH2ta1q$~U9cux9teQxHgWtlpRHSXpO2Tc?% zzcrJ)(%@6R{Saj9>KAnO?-7W4W+@4(Eb;OJRrq zXbR?paVYYrF&zkiiLXwy;{UOAX{GJO_lAsr)}ATRf8D=3tIozwB=guTd;3${KQ?*K zy)@xx?W-xr);xTjU%WouxE9NHO<*;a?NS0r^)YYXQHa~-#)clw$rph=sWK(Zh`DaF(pS!&6`!lO8I-YtajI+Y7n(uzMbjdWs-1k?v-C9vS^W?hfW#1XL zZT-zu^?R9>L4)M3{*^{b4NIRVuFW=WSSZ4I;lzwg?JDDybANA{$aui({oBipGq*W? qujYSX{sbDd*B>|WD7Gy8!q3pGYxa4z{eEC#W$<+Mb6Mw<&;$T8NpN=n literal 0 HcmV?d00001 diff --git a/doc/api/html/structstan_1_1gm_1_1set__var__type-members.html b/doc/api/html/structstan_1_1gm_1_1set__var__type-members.html new file mode 100644 index 00000000000..1340d89a93a --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1set__var__type-members.html @@ -0,0 +1,113 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::gm::set_var_type Member List
+
+
+ +

This is the complete list of members for stan::gm::set_var_type, including all inherited members.

+ + +
operator()(variable &var_expr, variable_map &vm, std::ostream &error_msgs, bool &pass) const stan::gm::set_var_typeinline
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1set__var__type.html b/doc/api/html/structstan_1_1gm_1_1set__var__type.html new file mode 100644 index 00000000000..2063b0e1a66 --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1set__var__type.html @@ -0,0 +1,181 @@ + + + + + +Stan: stan::gm::set_var_type Struct Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::gm::set_var_type Struct Reference
+
+
+ +

#include <term_grammar_def.hpp>

+ + + + +

+Classes

struct  result
 
+ + + +

+Public Member Functions

variable operator() (variable &var_expr, variable_map &vm, std::ostream &error_msgs, bool &pass) const
 
+

Detailed Description

+
+

Definition at line 363 of file term_grammar_def.hpp.

+

Member Function Documentation

+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
variable stan::gm::set_var_type::operator() (variablevar_expr,
variable_mapvm,
std::ostream & error_msgs,
bool & pass 
) const
+
+inline
+
+ +

Definition at line 366 of file term_grammar_def.hpp.

+ +
+
+
The documentation for this struct was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1set__var__type_1_1result-members.html b/doc/api/html/structstan_1_1gm_1_1set__var__type_1_1result-members.html new file mode 100644 index 00000000000..ad6509d9999 --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1set__var__type_1_1result-members.html @@ -0,0 +1,113 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::gm::set_var_type::result< T1, T2, T3, T4 > Member List
+
+
+ +

This is the complete list of members for stan::gm::set_var_type::result< T1, T2, T3, T4 >, including all inherited members.

+ + +
type typedefstan::gm::set_var_type::result< T1, T2, T3, T4 >
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1set__var__type_1_1result.html b/doc/api/html/structstan_1_1gm_1_1set__var__type_1_1result.html new file mode 100644 index 00000000000..2941e081f2c --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1set__var__type_1_1result.html @@ -0,0 +1,146 @@ + + + + + +Stan: stan::gm::set_var_type::result< T1, T2, T3, T4 > Struct Template Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::gm::set_var_type::result< T1, T2, T3, T4 > Struct Template Reference
+
+
+ +

#include <term_grammar_def.hpp>

+ + + + +

+Public Types

typedef variable type
 
+

Detailed Description

+

template<typename T1, typename T2, typename T3, typename T4>
+struct stan::gm::set_var_type::result< T1, T2, T3, T4 >

+ + +

Definition at line 365 of file term_grammar_def.hpp.

+

Member Typedef Documentation

+ +
+
+
+template<typename T1 , typename T2 , typename T3 , typename T4 >
+ + + + +
typedef variable stan::gm::set_var_type::result< T1, T2, T3, T4 >::type
+
+ +

Definition at line 365 of file term_grammar_def.hpp.

+ +
+
+
The documentation for this struct was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1simplex__var__decl-members.html b/doc/api/html/structstan_1_1gm_1_1simplex__var__decl-members.html new file mode 100644 index 00000000000..0c7b4719acc --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1simplex__var__decl-members.html @@ -0,0 +1,121 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::gm::simplex_var_decl Member List
+
+
+ +

This is the complete list of members for stan::gm::simplex_var_decl, including all inherited members.

+ + + + + + + + + + +
base_type_stan::gm::base_var_decl
base_var_decl()stan::gm::base_var_decl
base_var_decl(const base_expr_type &base_type)stan::gm::base_var_decl
base_var_decl(const std::string &name, const std::vector< expression > &dims, const base_expr_type &base_type)stan::gm::base_var_decl
dims_stan::gm::base_var_decl
K_stan::gm::simplex_var_decl
name_stan::gm::base_var_decl
simplex_var_decl()stan::gm::simplex_var_decl
simplex_var_decl(expression const &K, std::string const &name, std::vector< expression > const &dims)stan::gm::simplex_var_decl
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1simplex__var__decl.html b/doc/api/html/structstan_1_1gm_1_1simplex__var__decl.html new file mode 100644 index 00000000000..3a41de95c58 --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1simplex__var__decl.html @@ -0,0 +1,225 @@ + + + + + +Stan: stan::gm::simplex_var_decl Struct Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::gm::simplex_var_decl Struct Reference
+
+
+ +

#include <ast.hpp>

+
+Inheritance diagram for stan::gm::simplex_var_decl:
+
+
+ + +stan::gm::base_var_decl + +
+ + + + + + + + + + + + + +

+Public Member Functions

 simplex_var_decl ()
 
 simplex_var_decl (expression const &K, std::string const &name, std::vector< expression > const &dims)
 
- Public Member Functions inherited from stan::gm::base_var_decl
 base_var_decl ()
 
 base_var_decl (const base_expr_type &base_type)
 
 base_var_decl (const std::string &name, const std::vector< expression > &dims, const base_expr_type &base_type)
 
+ + + + + + + + + + +

+Public Attributes

expression K_
 
- Public Attributes inherited from stan::gm::base_var_decl
std::string name_
 
std::vector< expressiondims_
 
base_expr_type base_type_
 
+

Detailed Description

+
+

Definition at line 431 of file ast.hpp.

+

Constructor & Destructor Documentation

+ +
+
+ + + + + + + +
stan::gm::simplex_var_decl::simplex_var_decl ()
+
+ +

Definition at line 753 of file ast_def.cpp.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
stan::gm::simplex_var_decl::simplex_var_decl (expression const & K,
std::string const & name,
std::vector< expression > const & dims 
)
+
+ +

Definition at line 757 of file ast_def.cpp.

+ +
+
+

Member Data Documentation

+ +
+
+ + + + +
expression stan::gm::simplex_var_decl::K_
+
+ +

Definition at line 432 of file ast.hpp.

+ +
+
+
The documentation for this struct was generated from the following files: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1simplex__var__decl.png b/doc/api/html/structstan_1_1gm_1_1simplex__var__decl.png new file mode 100644 index 0000000000000000000000000000000000000000..5e6fd794b31ec8b822ce6045944091ad7dbf291c GIT binary patch literal 716 zcmeAS@N?(olHy`uVBq!ia0vp^3xPO*gBeJ=IX<-jQW60^A+G=b{|7Q(y!l$%e`o@b z1;z&s9ANFdBM;Sf8Dt9zx%x- zHC%6wth=RaeVXU`T0tRpPRsh6+j3_|rpH&n2Xfa!l_oC+7mC^6Kwq3K_Cvtz!mpKOS=5mzzX>L*0T6{~D zYt`X72Yt*wT)o>?;UCfbJ(^cQ%{ljn^P!6cJ!K0|S$_P^vDlewLfk7?4_6z-HM3)1 zPT7|s&iVS(!hp^VS6^g*u6Zn1*77XQZ12}^a?AerbH2ZKIA+O>@TYHX?#-QGm8HB) zc6XfKN!@>aanqJ;|5W!^<>jH4x&1zy5+P7QwcE?FjxAYbWF+(H48}& z%l1hjP+FS<~_FaF&n-KME^V4tdKP@-dKhL@0 m{v~L5eED^(P2kXxU(C%jm8|Bh+!+l_dJLYfelF{r5}E) + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::gm::statement Member List
+
+
+ +

This is the complete list of members for stan::gm::statement, including all inherited members.

+ + + + + + + + + + + + + + + + +
statement()stan::gm::statement
statement(const statement_t &st)stan::gm::statement
statement(const nil &st)stan::gm::statement
statement(const assignment &st)stan::gm::statement
statement(const sample &st)stan::gm::statement
statement(const increment_log_prob_statement &st)stan::gm::statement
statement(const expression &st)stan::gm::statement
statement(const statements &st)stan::gm::statement
statement(const for_statement &st)stan::gm::statement
statement(const conditional_statement &st)stan::gm::statement
statement(const while_statement &st)stan::gm::statement
statement(const print_statement &st)stan::gm::statement
statement(const no_op_statement &st)stan::gm::statement
statement_stan::gm::statement
statement_t typedefstan::gm::statement
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1statement.html b/doc/api/html/structstan_1_1gm_1_1statement.html new file mode 100644 index 00000000000..096ef8a318e --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1statement.html @@ -0,0 +1,449 @@ + + + + + +Stan: stan::gm::statement Struct Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::gm::statement Struct Reference
+
+
+ +

#include <ast.hpp>

+ + + + +

+Public Types

typedef boost::variant
+< boost::recursive_wrapper
+< nil >
+, boost::recursive_wrapper
+< assignment >
+, boost::recursive_wrapper
+< sample >
+, boost::recursive_wrapper
+< increment_log_prob_statement >
+, boost::recursive_wrapper
+< expression >
+, boost::recursive_wrapper
+< statements >
+, boost::recursive_wrapper
+< for_statement >
+, boost::recursive_wrapper
+< conditional_statement >
+, boost::recursive_wrapper
+< while_statement >
+, boost::recursive_wrapper
+< print_statement >
+, boost::recursive_wrapper
+< no_op_statement > > 
statement_t
 
+ + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 statement ()
 
 statement (const statement_t &st)
 
 statement (const nil &st)
 
 statement (const assignment &st)
 
 statement (const sample &st)
 
 statement (const increment_log_prob_statement &st)
 
 statement (const expression &st)
 
 statement (const statements &st)
 
 statement (const for_statement &st)
 
 statement (const conditional_statement &st)
 
 statement (const while_statement &st)
 
 statement (const print_statement &st)
 
 statement (const no_op_statement &st)
 
+ + + +

+Public Attributes

statement_t statement_
 
+

Detailed Description

+
+

Definition at line 574 of file ast.hpp.

+

Member Typedef Documentation

+ +
+
+ + + + +
typedef boost::variant<boost::recursive_wrapper<nil>, boost::recursive_wrapper<assignment>, boost::recursive_wrapper<sample>, boost::recursive_wrapper<increment_log_prob_statement>, boost::recursive_wrapper<expression>, boost::recursive_wrapper<statements>, boost::recursive_wrapper<for_statement>, boost::recursive_wrapper<conditional_statement>, boost::recursive_wrapper<while_statement>, boost::recursive_wrapper<print_statement>, boost::recursive_wrapper<no_op_statement> > stan::gm::statement::statement_t
+
+ +

Definition at line 586 of file ast.hpp.

+ +
+
+

Constructor & Destructor Documentation

+ +
+
+ + + + + + + +
stan::gm::statement::statement ()
+
+ +

Definition at line 916 of file ast_def.cpp.

+ +
+
+ +
+
+ + + + + + + + +
stan::gm::statement::statement (const statement_tst)
+
+ +

Definition at line 918 of file ast_def.cpp.

+ +
+
+ +
+
+ + + + + + + + +
stan::gm::statement::statement (const nilst)
+
+ +

Definition at line 919 of file ast_def.cpp.

+ +
+
+ +
+
+ + + + + + + + +
stan::gm::statement::statement (const assignmentst)
+
+ +

Definition at line 920 of file ast_def.cpp.

+ +
+
+ +
+
+ + + + + + + + +
stan::gm::statement::statement (const samplest)
+
+ +

Definition at line 921 of file ast_def.cpp.

+ +
+
+ +
+
+ + + + + + + + +
stan::gm::statement::statement (const increment_log_prob_statementst)
+
+ +

Definition at line 922 of file ast_def.cpp.

+ +
+
+ +
+
+ + + + + + + + +
stan::gm::statement::statement (const expressionst)
+
+ +

Definition at line 924 of file ast_def.cpp.

+ +
+
+ +
+
+ + + + + + + + +
stan::gm::statement::statement (const statementsst)
+
+ +

Definition at line 923 of file ast_def.cpp.

+ +
+
+ +
+
+ + + + + + + + +
stan::gm::statement::statement (const for_statementst)
+
+ +

Definition at line 925 of file ast_def.cpp.

+ +
+
+ +
+
+ + + + + + + + +
stan::gm::statement::statement (const conditional_statementst)
+
+ +

Definition at line 927 of file ast_def.cpp.

+ +
+
+ +
+
+ + + + + + + + +
stan::gm::statement::statement (const while_statementst)
+
+ +

Definition at line 926 of file ast_def.cpp.

+ +
+
+ +
+
+ + + + + + + + +
stan::gm::statement::statement (const print_statementst)
+
+ +

Definition at line 928 of file ast_def.cpp.

+ +
+
+ +
+
+ + + + + + + + +
stan::gm::statement::statement (const no_op_statementst)
+
+ +

Definition at line 929 of file ast_def.cpp.

+ +
+
+

Member Data Documentation

+ +
+
+ + + + +
statement_t stan::gm::statement::statement_
+
+ +

Definition at line 588 of file ast.hpp.

+ +
+
+
The documentation for this struct was generated from the following files: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1statement__2__grammar-members.html b/doc/api/html/structstan_1_1gm_1_1statement__2__grammar-members.html new file mode 100644 index 00000000000..02d574af2b9 --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1statement__2__grammar-members.html @@ -0,0 +1,119 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::gm::statement_2_grammar< Iterator > Member List
+
+ +
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1statement__2__grammar.html b/doc/api/html/structstan_1_1gm_1_1statement__2__grammar.html new file mode 100644 index 00000000000..237db271c46 --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1statement__2__grammar.html @@ -0,0 +1,295 @@ + + + + + +Stan: stan::gm::statement_2_grammar< Iterator > Struct Template Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::gm::statement_2_grammar< Iterator > Struct Template Reference
+
+
+ +

#include <statement_2_grammar.hpp>

+
+Inheritance diagram for stan::gm::statement_2_grammar< Iterator >:
+
+
+ + + +
+ + + + +

+Public Member Functions

 statement_2_grammar (variable_map &var_map, std::stringstream &error_msgs, statement_grammar< Iterator > &sg)
 
+ + + + + + + + + + + + + +

+Public Attributes

variable_mapvar_map_
 
std::stringstream & error_msgs_
 
expression_grammar< Iterator > expression_g
 
statement_grammar< Iterator > & statement_g
 
boost::spirit::qi::rule
+< Iterator,
+conditional_statement(bool,
+var_origin),
+whitespace_grammar< Iterator > > 
conditional_statement_r
 
boost::spirit::qi::rule
+< Iterator, statement(bool,
+var_origin),
+whitespace_grammar< Iterator > > 
statement_2_r
 
+

Detailed Description

+

template<typename Iterator>
+struct stan::gm::statement_2_grammar< Iterator >

+ + +

Definition at line 23 of file statement_2_grammar.hpp.

+

Constructor & Destructor Documentation

+ +
+
+
+template<typename Iterator >
+ + + + + + + + + + + + + + + + + + + + + + + + +
stan::gm::statement_2_grammar< Iterator >::statement_2_grammar (variable_mapvar_map,
std::stringstream & error_msgs,
statement_grammar< Iterator > & sg 
)
+
+ +

Definition at line 88 of file statement_2_grammar_def.hpp.

+ +
+
+

Member Data Documentation

+ +
+
+
+template<typename Iterator >
+ + + + +
boost::spirit::qi::rule<Iterator, conditional_statement(bool,var_origin), whitespace_grammar<Iterator> > stan::gm::statement_2_grammar< Iterator >::conditional_statement_r
+
+ +

Definition at line 48 of file statement_2_grammar.hpp.

+ +
+
+ +
+
+
+template<typename Iterator >
+ + + + +
std::stringstream& stan::gm::statement_2_grammar< Iterator >::error_msgs_
+
+ +

Definition at line 37 of file statement_2_grammar.hpp.

+ +
+
+ +
+
+
+template<typename Iterator >
+ + + + +
expression_grammar<Iterator> stan::gm::statement_2_grammar< Iterator >::expression_g
+
+ +

Definition at line 40 of file statement_2_grammar.hpp.

+ +
+
+ +
+
+
+template<typename Iterator >
+ + + + +
boost::spirit::qi::rule<Iterator, statement(bool,var_origin), whitespace_grammar<Iterator> > stan::gm::statement_2_grammar< Iterator >::statement_2_r
+
+ +

Definition at line 54 of file statement_2_grammar.hpp.

+ +
+
+ +
+
+
+template<typename Iterator >
+ + + + +
statement_grammar<Iterator>& stan::gm::statement_2_grammar< Iterator >::statement_g
+
+ +

Definition at line 41 of file statement_2_grammar.hpp.

+ +
+
+ +
+
+
+template<typename Iterator >
+ + + + +
variable_map& stan::gm::statement_2_grammar< Iterator >::var_map_
+
+ +

Definition at line 36 of file statement_2_grammar.hpp.

+ +
+
+
The documentation for this struct was generated from the following files: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1statement__2__grammar.png b/doc/api/html/structstan_1_1gm_1_1statement__2__grammar.png new file mode 100644 index 0000000000000000000000000000000000000000..48338dce31b256c38a41fe5ca28da24075c40f45 GIT binary patch literal 1468 zcmeAS@N?(olHy`uVBq!ia0y~yU@`=<12~w0+TI79u=%<|m${dLyO*(Mghba&pb_MiSSSD<+J_3s8Ve;ha|_tF3UHTh#9m+sZA zn{irINpt&ojb|CtPKW4w%IfO`PSSglbo5Bk^Ih|gKmN8Wa$W!Z^*0sbZ@s_%RZc(b zbaGvV&sE*(ud}Pa^Ita1&ENF;c~sd337I#0KJGU3n`Ngf_S#3&t$F(1%{RTc-WG7& z)w7of_RP8|x;c02Z_btZCykcud+T_+$9(hJ>e!cgzdmgJuOeQ#?Bw-#OlRNx+Bqv# z{$0(q?p>a{uc}@@Sr_8tvGc66^_ku8KN%aIJ$SbITtwro@quTyE!{KawaDhm+#1_yJNL{1(u())^jLOhg=U<(;xH2hi`UlgaI{%N!6bszia_g|B=&bG9NmY}Q z`#zV29SF!_Zw@njdv#*cwOKhebF}?MjQ1brGR;jYxNu#3&!nVzaW|R+p0pHinDXs{ zz3}CgakFGL*Tfn>c%1%IpS67Rna`=sZ!6`0derY+e{#WN$+wI#;*(;&#NS@Es7$ zOK+}!QgK3S{SM7p`|OuZDmf4>YWyVCbJwhT^MjKwp5Hai-qY85jq{|Cg$7UEle9eD z_n05|S)}DzFEm|m!|nH17yeaF`o(@; zFi126uaRJ24tR83-<$0KL&%0C1|Ek_{euxk3~UP;M41y9Rz>IonQb6uR)paIGYyoL z4!O9@=;#RMU;sME5A0lCZMFjpSCE)HCMMNwxKMlI<%1M~!cd=mf6m0-{V^-bF!*wJ zQ_@j}KjMG(eYtO5zw=*wcV5t;BBQq-w>aNAxH_@y+S92A|5~m2dSSQJqMx_FzpE)X ztYO{3xjo{2kzRjtRG-E6R$nU?Uuiabp6K-AgF0ffBVR8p-pcuN;l8v-$Br7P*)sgu zdB@f8x8bsc=Sr96{!a18-?9ID*UR~zYZ#NWyCSWA`bqomzvpWFeWlmyRv+=NGn3Su z>+D(HtS!8@Y%257FLK`&-+vWa{pzgC;_f)Z?HA6(u6m)PYZH2AkCtx^`_V0ooC}l_ za?~xC6+e|>{$R()b@HC&S})_HEKkhVdNn6~D+vwqvHH33duLMK!s*qaOH~i9_dX}u zxFG-Vgs&^LRbTR4KB+7F`_9fKI+xj>Y%Am0c<0KVAE)(pt!FTQs29rlV21hohxr_W z2UPFG8~UcP|Ioa@GgV*X_3hMmjQ`mFHOXAQBG8asxw*O_`eS*BDg*O}I&kti+{I|X s04(x=DG9>dCn7AEsHEiMazye!L(FLhTi3#CF$_T9>FVdQ&MBb@0KRRTQvd(} literal 0 HcmV?d00001 diff --git a/doc/api/html/structstan_1_1gm_1_1statement__grammar-members.html b/doc/api/html/structstan_1_1gm_1_1statement__grammar-members.html new file mode 100644 index 00000000000..0b97016360a --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1statement__grammar-members.html @@ -0,0 +1,138 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::gm::statement_grammar< Iterator > Member List
+
+
+ +

This is the complete list of members for stan::gm::statement_grammar< Iterator >, including all inherited members.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + +
assignment_rstan::gm::statement_grammar< Iterator >
dims_rstan::gm::statement_grammar< Iterator >
distribution_rstan::gm::statement_grammar< Iterator >
error_msgs_stan::gm::statement_grammar< Iterator >
expression_gstan::gm::statement_grammar< Iterator >
for_statement_rstan::gm::statement_grammar< Iterator >
identifier_rstan::gm::statement_grammar< Iterator >
increment_log_prob_statement_rstan::gm::statement_grammar< Iterator >
local_var_decls_rstan::gm::statement_grammar< Iterator >
no_op_statement_rstan::gm::statement_grammar< Iterator >
non_lvalue_assign_rstan::gm::statement_grammar< Iterator >
opt_dims_rstan::gm::statement_grammar< Iterator >
print_statement_rstan::gm::statement_grammar< Iterator >
printable_rstan::gm::statement_grammar< Iterator >
printable_string_rstan::gm::statement_grammar< Iterator >
range_rstan::gm::statement_grammar< Iterator >
sample_rstan::gm::statement_grammar< Iterator >
statement_2_gstan::gm::statement_grammar< Iterator >
statement_grammar(variable_map &var_map, std::stringstream &error_msgs)stan::gm::statement_grammar< Iterator >
statement_rstan::gm::statement_grammar< Iterator >
statement_seq_rstan::gm::statement_grammar< Iterator >
truncation_range_rstan::gm::statement_grammar< Iterator >
var_decls_gstan::gm::statement_grammar< Iterator >
var_lhs_rstan::gm::statement_grammar< Iterator >
var_map_stan::gm::statement_grammar< Iterator >
while_statement_rstan::gm::statement_grammar< Iterator >
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1statement__grammar.html b/doc/api/html/structstan_1_1gm_1_1statement__grammar.html new file mode 100644 index 00000000000..3a1ef1eff19 --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1statement__grammar.html @@ -0,0 +1,679 @@ + + + + + +Stan: stan::gm::statement_grammar< Iterator > Struct Template Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::gm::statement_grammar< Iterator > Struct Template Reference
+
+
+ +

#include <statement_grammar.hpp>

+
+Inheritance diagram for stan::gm::statement_grammar< Iterator >:
+
+
+ + + +
+ + + + +

+Public Member Functions

 statement_grammar (variable_map &var_map, std::stringstream &error_msgs)
 
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Attributes

variable_mapvar_map_
 
std::stringstream & error_msgs_
 
expression_grammar< Iterator > expression_g
 
var_decls_grammar< Iterator > var_decls_g
 
statement_2_grammar< Iterator > statement_2_g
 
boost::spirit::qi::rule
+< Iterator, assignment(var_origin),
+whitespace_grammar< Iterator > > 
assignment_r
 
boost::spirit::qi::rule
+< Iterator, expression(var_origin),
+whitespace_grammar< Iterator > > 
non_lvalue_assign_r
 
boost::spirit::qi::rule
+< Iterator, std::vector
+< expression >var_origin),
+whitespace_grammar< Iterator > > 
dims_r
 
boost::spirit::qi::rule
+< Iterator, distribution(var_origin),
+whitespace_grammar< Iterator > > 
distribution_r
 
boost::spirit::qi::rule
+< Iterator,
+increment_log_prob_statement(var_origin),
+whitespace_grammar< Iterator > > 
increment_log_prob_statement_r
 
boost::spirit::qi::rule
+< Iterator,
+boost::spirit::qi::locals
+< std::string >, for_statement(bool,
+var_origin),
+whitespace_grammar< Iterator > > 
for_statement_r
 
boost::spirit::qi::rule
+< Iterator, while_statement(bool,
+var_origin),
+whitespace_grammar< Iterator > > 
while_statement_r
 
boost::spirit::qi::rule
+< Iterator, print_statement(var_origin),
+whitespace_grammar< Iterator > > 
print_statement_r
 
boost::spirit::qi::rule
+< Iterator, printable(var_origin),
+whitespace_grammar< Iterator > > 
printable_r
 
boost::spirit::qi::rule
+< Iterator, std::string(),
+whitespace_grammar< Iterator > > 
printable_string_r
 
boost::spirit::qi::rule
+< Iterator, std::string(),
+whitespace_grammar< Iterator > > 
identifier_r
 
boost::spirit::qi::rule
+< Iterator, std::vector
+< var_decl >
+), whitespace_grammar
+< Iterator > > 
local_var_decls_r
 
boost::spirit::qi::rule
+< Iterator, no_op_statement(),
+whitespace_grammar< Iterator > > 
no_op_statement_r
 
boost::spirit::qi::rule
+< Iterator, std::vector
+< expression >var_origin),
+whitespace_grammar< Iterator > > 
opt_dims_r
 
boost::spirit::qi::rule
+< Iterator, range(var_origin),
+whitespace_grammar< Iterator > > 
range_r
 
boost::spirit::qi::rule
+< Iterator, sample(bool,
+var_origin),
+whitespace_grammar< Iterator > > 
sample_r
 
boost::spirit::qi::rule
+< Iterator, statement(bool,
+var_origin),
+whitespace_grammar< Iterator > > 
statement_r
 
boost::spirit::qi::rule
+< Iterator,
+boost::spirit::qi::locals
+< std::vector< var_decl >
+ >, statements(bool,
+var_origin),
+whitespace_grammar< Iterator > > 
statement_seq_r
 
boost::spirit::qi::rule
+< Iterator, range(var_origin),
+whitespace_grammar< Iterator > > 
truncation_range_r
 
boost::spirit::qi::rule
+< Iterator, variable_dims(var_origin),
+whitespace_grammar< Iterator > > 
var_lhs_r
 
+

Detailed Description

+

template<typename Iterator>
+struct stan::gm::statement_grammar< Iterator >

+ + +

Definition at line 21 of file statement_grammar.hpp.

+

Constructor & Destructor Documentation

+ +
+
+
+template<typename Iterator >
+ + + + + + + + + + + + + + + + + + +
statement_grammar< Iterator >::statement_grammar (variable_mapvar_map,
std::stringstream & error_msgs 
)
+
+ +

Definition at line 429 of file statement_grammar_def.hpp.

+ +
+
+

Member Data Documentation

+ +
+
+
+template<typename Iterator>
+ + + + +
boost::spirit::qi::rule<Iterator, assignment(var_origin), whitespace_grammar<Iterator> > stan::gm::statement_grammar< Iterator >::assignment_r
+
+ +

Definition at line 45 of file statement_grammar.hpp.

+ +
+
+ +
+
+
+template<typename Iterator>
+ + + + +
boost::spirit::qi::rule<Iterator, std::vector<expression>var_origin), whitespace_grammar<Iterator> > stan::gm::statement_grammar< Iterator >::dims_r
+
+ +

Definition at line 56 of file statement_grammar.hpp.

+ +
+
+ +
+
+
+template<typename Iterator>
+ + + + +
boost::spirit::qi::rule<Iterator, distribution(var_origin), whitespace_grammar<Iterator> > stan::gm::statement_grammar< Iterator >::distribution_r
+
+ +

Definition at line 62 of file statement_grammar.hpp.

+ +
+
+ +
+
+
+template<typename Iterator>
+ + + + +
std::stringstream& stan::gm::statement_grammar< Iterator >::error_msgs_
+
+ +

Definition at line 34 of file statement_grammar.hpp.

+ +
+
+ +
+
+
+template<typename Iterator>
+ + + + +
expression_grammar<Iterator> stan::gm::statement_grammar< Iterator >::expression_g
+
+ +

Definition at line 37 of file statement_grammar.hpp.

+ +
+
+ +
+
+
+template<typename Iterator>
+ + + + +
boost::spirit::qi::rule<Iterator, boost::spirit::qi::locals<std::string>, for_statement(bool,var_origin), whitespace_grammar<Iterator> > stan::gm::statement_grammar< Iterator >::for_statement_r
+
+ +

Definition at line 74 of file statement_grammar.hpp.

+ +
+
+ +
+
+
+template<typename Iterator>
+ + + + +
boost::spirit::qi::rule<Iterator, std::string(), whitespace_grammar<Iterator> > stan::gm::statement_grammar< Iterator >::identifier_r
+
+ +

Definition at line 103 of file statement_grammar.hpp.

+ +
+
+ +
+
+
+template<typename Iterator>
+ + + + +
boost::spirit::qi::rule<Iterator, increment_log_prob_statement(var_origin), whitespace_grammar<Iterator> > stan::gm::statement_grammar< Iterator >::increment_log_prob_statement_r
+
+ +

Definition at line 68 of file statement_grammar.hpp.

+ +
+
+ +
+
+
+template<typename Iterator>
+ + + + +
boost::spirit::qi::rule<Iterator, std::vector<var_decl>), whitespace_grammar<Iterator> > stan::gm::statement_grammar< Iterator >::local_var_decls_r
+
+ +

Definition at line 108 of file statement_grammar.hpp.

+ +
+
+ +
+
+
+template<typename Iterator>
+ + + + +
boost::spirit::qi::rule<Iterator, no_op_statement(), whitespace_grammar<Iterator> > stan::gm::statement_grammar< Iterator >::no_op_statement_r
+
+ +

Definition at line 113 of file statement_grammar.hpp.

+ +
+
+ +
+
+
+template<typename Iterator>
+ + + + +
boost::spirit::qi::rule<Iterator, expression(var_origin), whitespace_grammar<Iterator> > stan::gm::statement_grammar< Iterator >::non_lvalue_assign_r
+
+ +

Definition at line 50 of file statement_grammar.hpp.

+ +
+
+ +
+
+
+template<typename Iterator>
+ + + + +
boost::spirit::qi::rule<Iterator, std::vector<expression>var_origin), whitespace_grammar<Iterator> > stan::gm::statement_grammar< Iterator >::opt_dims_r
+
+ +

Definition at line 118 of file statement_grammar.hpp.

+ +
+
+ +
+
+
+template<typename Iterator>
+ + + + +
boost::spirit::qi::rule<Iterator, print_statement(var_origin), whitespace_grammar<Iterator> > stan::gm::statement_grammar< Iterator >::print_statement_r
+
+ +

Definition at line 86 of file statement_grammar.hpp.

+ +
+
+ +
+
+
+template<typename Iterator>
+ + + + +
boost::spirit::qi::rule<Iterator, printable(var_origin), whitespace_grammar<Iterator> > stan::gm::statement_grammar< Iterator >::printable_r
+
+ +

Definition at line 92 of file statement_grammar.hpp.

+ +
+
+ +
+
+
+template<typename Iterator>
+ + + + +
boost::spirit::qi::rule<Iterator, std::string(), whitespace_grammar<Iterator> > stan::gm::statement_grammar< Iterator >::printable_string_r
+
+ +

Definition at line 97 of file statement_grammar.hpp.

+ +
+
+ +
+
+
+template<typename Iterator>
+ + + + +
boost::spirit::qi::rule<Iterator, range(var_origin), whitespace_grammar<Iterator> > stan::gm::statement_grammar< Iterator >::range_r
+
+ +

Definition at line 123 of file statement_grammar.hpp.

+ +
+
+ +
+
+
+template<typename Iterator>
+ + + + +
boost::spirit::qi::rule<Iterator, sample(bool,var_origin), whitespace_grammar<Iterator> > stan::gm::statement_grammar< Iterator >::sample_r
+
+ +

Definition at line 128 of file statement_grammar.hpp.

+ +
+
+ +
+
+
+template<typename Iterator>
+ + + + +
statement_2_grammar<Iterator> stan::gm::statement_grammar< Iterator >::statement_2_g
+
+ +

Definition at line 39 of file statement_grammar.hpp.

+ +
+
+ +
+
+
+template<typename Iterator>
+ + + + +
boost::spirit::qi::rule<Iterator, statement(bool,var_origin), whitespace_grammar<Iterator> > stan::gm::statement_grammar< Iterator >::statement_r
+
+ +

Definition at line 133 of file statement_grammar.hpp.

+ +
+
+ +
+
+
+template<typename Iterator>
+ + + + +
boost::spirit::qi::rule<Iterator, boost::spirit::qi::locals<std::vector<var_decl> >, statements(bool,var_origin), whitespace_grammar<Iterator> > stan::gm::statement_grammar< Iterator >::statement_seq_r
+
+ +

Definition at line 139 of file statement_grammar.hpp.

+ +
+
+ +
+
+
+template<typename Iterator>
+ + + + +
boost::spirit::qi::rule<Iterator, range(var_origin), whitespace_grammar<Iterator> > stan::gm::statement_grammar< Iterator >::truncation_range_r
+
+ +

Definition at line 144 of file statement_grammar.hpp.

+ +
+
+ +
+
+
+template<typename Iterator>
+ + + + +
var_decls_grammar<Iterator> stan::gm::statement_grammar< Iterator >::var_decls_g
+
+ +

Definition at line 38 of file statement_grammar.hpp.

+ +
+
+ +
+
+
+template<typename Iterator>
+ + + + +
boost::spirit::qi::rule<Iterator, variable_dims(var_origin), whitespace_grammar<Iterator> > stan::gm::statement_grammar< Iterator >::var_lhs_r
+
+ +

Definition at line 149 of file statement_grammar.hpp.

+ +
+
+ +
+
+
+template<typename Iterator>
+ + + + +
variable_map& stan::gm::statement_grammar< Iterator >::var_map_
+
+ +

Definition at line 33 of file statement_grammar.hpp.

+ +
+
+ +
+
+
+template<typename Iterator>
+ + + + +
boost::spirit::qi::rule<Iterator, while_statement(bool,var_origin), whitespace_grammar<Iterator> > stan::gm::statement_grammar< Iterator >::while_statement_r
+
+ +

Definition at line 80 of file statement_grammar.hpp.

+ +
+
+
The documentation for this struct was generated from the following files: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1statement__grammar.png b/doc/api/html/structstan_1_1gm_1_1statement__grammar.png new file mode 100644 index 0000000000000000000000000000000000000000..775c0e3c639a44fdd69cb2ec9233cd5033ac5802 GIT binary patch literal 1445 zcmcJPdr;C@6vuzcO6r(a#;WDC>*mxZrv6;hQQRdH6j*Z%=!s8A5-l+lGtIKrHo<&A zsAQ?BspBK*VLnT730*UF1C@NcuDCw2T9nj`{pHO5*S~vb?!Di8&*z>wbI+N>@$>cG zY`DV^0D#SS9EJ!0x*(+e^kL9C_G|AJXfyZoA!D^#EhMMsm)IGw7vSe94qJ!VkrjlS^VW?2p!FuEf71*h%q_E9#&mOA~$sQIi|M%A2Q1lLZv?)5F8Gtbz`PZ)9L} za~Aw!rAp~`HOoU5=Ezu93+c`_7m9DbpNu%rD?z>%%VlM8R8u;-7YnRP&PpO(&5-;*f_eIE2$)bJq6-B?$BV2y=h81GA z4#|oq(%RT4Zy-ScK1%P~~_Ku{AwNMRTz3mF(&w=qeOP8Zc zgv+f`bO8y!<83jQG5gp$pleJo&T;jm;{D$8Fi8TAPZ#R1@E{K<1rNZyDuS%#MTu!u ze*!yP%emWJXpVQ}t6N@tq3A-SI6m*b>n`p_mG1d&!U%x*z1t)P%#%n}<^aq=T7b?r zO41Rwa&;U4lKWS*4#;G%VM<-n4F;wjQUN2e<+0C<mH2@DbM#9Cws}Ly!yKcZY z5U~Fnj>lkxDf*^c&l~ClLopeAIi~Yy=`(PQ_WR6u>f?7&a!ri(ABGetKM4Xo^;y)3 zh~3ND=BfNW+PF`nWvnMJt(4<^4k$|g6G`7gOOi>X?1OS4>Oy^3v+i&z>Ttq9NuoS^ zfA_hNTgD!*b6cB2W^A!*s=2gsI8!#VbS&A%--#xJiP1e>+oOAz1gq=Og&D6i2j9jq zx05jXVHD?As368)Gm1Nmsn|MMyu18SVyUn@Q*2ZA z`?v1|lsxWsM6vSMPHCHYic*3J=v_tjjY&)`a} zh66p!p^OrKZU{P)zqsjI;{nh9vRNt~b;>_%g>X_AK3N;6RW z*qQS_l?973Xz>EEd7I*Ly!Ae;Hg#Kx?I$$7!l(T(e~HpqN7W;0%z{4Kg!<)Fn@Iml bO4}8S%!7LlJy&@`Jr%%XeKFOCg0KAxC7Y+^ literal 0 HcmV?d00001 diff --git a/doc/api/html/structstan_1_1gm_1_1statement__visgen-members.html b/doc/api/html/structstan_1_1gm_1_1statement__visgen-members.html new file mode 100644 index 00000000000..6767510ceb6 --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1statement__visgen-members.html @@ -0,0 +1,130 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::gm::statement_visgen Member List
+
+
+ +

This is the complete list of members for stan::gm::statement_visgen, including all inherited members.

+ + + + + + + + + + + + + + + + + + + +
include_sampling_stan::gm::statement_visgen
indent_stan::gm::statement_visgen
is_var_stan::gm::statement_visgen
o_stan::gm::visgen
operator()(nil const &) const stan::gm::statement_visgeninline
operator()(assignment const &x) const stan::gm::statement_visgeninline
operator()(expression const &x) const stan::gm::statement_visgeninline
operator()(sample const &x) const stan::gm::statement_visgeninline
operator()(const increment_log_prob_statement &x) const stan::gm::statement_visgeninline
operator()(const statements &x) const stan::gm::statement_visgeninline
operator()(const print_statement &ps) const stan::gm::statement_visgeninline
operator()(const for_statement &x) const stan::gm::statement_visgeninline
operator()(const while_statement &x) const stan::gm::statement_visgeninline
operator()(const conditional_statement &x) const stan::gm::statement_visgeninline
operator()(const no_op_statement &) const stan::gm::statement_visgeninline
result_type typedefstan::gm::visgen
statement_visgen(size_t indent, bool include_sampling, bool is_var, std::ostream &o)stan::gm::statement_visgeninline
visgen(std::ostream &o)stan::gm::visgeninline
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1statement__visgen.html b/doc/api/html/structstan_1_1gm_1_1statement__visgen.html new file mode 100644 index 00000000000..326d335e3ab --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1statement__visgen.html @@ -0,0 +1,558 @@ + + + + + +Stan: stan::gm::statement_visgen Struct Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::gm::statement_visgen Struct Reference
+
+
+ +

#include <generator.hpp>

+
+Inheritance diagram for stan::gm::statement_visgen:
+
+
+ + +stan::gm::visgen + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 statement_visgen (size_t indent, bool include_sampling, bool is_var, std::ostream &o)
 
void operator() (nil const &) const
 
void operator() (assignment const &x) const
 
void operator() (expression const &x) const
 
void operator() (sample const &x) const
 
void operator() (const increment_log_prob_statement &x) const
 
void operator() (const statements &x) const
 
void operator() (const print_statement &ps) const
 
void operator() (const for_statement &x) const
 
void operator() (const while_statement &x) const
 
void operator() (const conditional_statement &x) const
 
void operator() (const no_op_statement &) const
 
- Public Member Functions inherited from stan::gm::visgen
 visgen (std::ostream &o)
 
+ + + + + + + + + + +

+Public Attributes

size_t indent_
 
bool include_sampling_
 
bool is_var_
 
- Public Attributes inherited from stan::gm::visgen
std::ostream & o_
 
+ + + + +

+Additional Inherited Members

- Public Types inherited from stan::gm::visgen
typedef void result_type
 
+

Detailed Description

+
+

Definition at line 1396 of file generator.hpp.

+

Constructor & Destructor Documentation

+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
stan::gm::statement_visgen::statement_visgen (size_t indent,
bool include_sampling,
bool is_var,
std::ostream & o 
)
+
+inline
+
+ +

Definition at line 1400 of file generator.hpp.

+ +
+
+

Member Function Documentation

+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::statement_visgen::operator() (nil const & ) const
+
+inline
+
+ +

Definition at line 1409 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::statement_visgen::operator() (assignment const & x) const
+
+inline
+
+ +

Definition at line 1411 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::statement_visgen::operator() (expression const & x) const
+
+inline
+
+ +

Definition at line 1423 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::statement_visgen::operator() (sample const & x) const
+
+inline
+
+ +

Definition at line 1426 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::statement_visgen::operator() (const increment_log_prob_statementx) const
+
+inline
+
+ +

Definition at line 1500 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::statement_visgen::operator() (const statementsx) const
+
+inline
+
+ +

Definition at line 1506 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::statement_visgen::operator() (const print_statementps) const
+
+inline
+
+ +

Definition at line 1524 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::statement_visgen::operator() (const for_statementx) const
+
+inline
+
+ +

Definition at line 1538 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::statement_visgen::operator() (const while_statementx) const
+
+inline
+
+ +

Definition at line 1549 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::statement_visgen::operator() (const conditional_statementx) const
+
+inline
+
+ +

Definition at line 1558 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::statement_visgen::operator() (const no_op_statement) const
+
+inline
+
+ +

Definition at line 1581 of file generator.hpp.

+ +
+
+

Member Data Documentation

+ +
+
+ + + + +
bool stan::gm::statement_visgen::include_sampling_
+
+ +

Definition at line 1398 of file generator.hpp.

+ +
+
+ +
+
+ + + + +
size_t stan::gm::statement_visgen::indent_
+
+ +

Definition at line 1397 of file generator.hpp.

+ +
+
+ +
+
+ + + + +
bool stan::gm::statement_visgen::is_var_
+
+ +

Definition at line 1399 of file generator.hpp.

+ +
+
+
The documentation for this struct was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1statement__visgen.png b/doc/api/html/structstan_1_1gm_1_1statement__visgen.png new file mode 100644 index 0000000000000000000000000000000000000000..cdbf235904ccb25abcc3a94bb66c953cc51c95dd GIT binary patch literal 675 zcmeAS@N?(olHy`uVBq!ia0vp^^MN>kgBeH~REKW{QW60^A+G=b{|7Q(y!l$%e`o@b z1;z&s9ANFdBM;3ckXw8c#csebIHq}8N0tR#=o9ftMW4H z*yrmXLZ5H65^+5Bdi(F$&%UqlnRi~nboGs0pR3F3RWsM@JbkF3@!kRR@a~sgo?6#r zzjo_RUZQx@Vc~&uzK4uZbR*Tg9NW=IBqk{;iDS&#NEl z^6s#je_sE9|C1VqGE4b}*mLX&(?2ubc#4yIz5ckk69;!U!-h3;_z&nkXWp>-q49yV z>D$k#H-CTmPgnlHR-^l$S5@9^&8*(5ap-8ZM()$ghnAN4wWV(O@mIlD?PKDu7k)eW z_hsz;z2wf*u3L_rA+Mj*NL)MUS5w+_YR}WtvL}}PEpVRhckkI^;SDR(r|y3DKJKyQ zzCQ0i-df#3Y})Z`fG(w|?2|gueAzW(}eDnFFSMjBPsk y>uVCzon?VdKmRfP*$egC>(bS20*5yJV!COl + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::gm::statements Member List
+
+
+ +

This is the complete list of members for stan::gm::statements, including all inherited members.

+ + + + + +
local_decl_stan::gm::statements
statements()stan::gm::statements
statements(const std::vector< var_decl > &local_decl, const std::vector< statement > &stmts)stan::gm::statements
statements_stan::gm::statements
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1statements.html b/doc/api/html/structstan_1_1gm_1_1statements.html new file mode 100644 index 00000000000..5425e13c558 --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1statements.html @@ -0,0 +1,212 @@ + + + + + +Stan: stan::gm::statements Struct Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::gm::statements Struct Reference
+
+
+ +

#include <ast.hpp>

+ + + + + + +

+Public Member Functions

 statements ()
 
 statements (const std::vector< var_decl > &local_decl, const std::vector< statement > &stmts)
 
+ + + + + +

+Public Attributes

std::vector< var_decllocal_decl_
 
std::vector< statementstatements_
 
+

Detailed Description

+
+

Definition at line 162 of file ast.hpp.

+

Constructor & Destructor Documentation

+ +
+
+ + + + + + + +
stan::gm::statements::statements ()
+
+ +

Definition at line 323 of file ast_def.cpp.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
stan::gm::statements::statements (const std::vector< var_decl > & local_decl,
const std::vector< statement > & stmts 
)
+
+ +

Definition at line 324 of file ast_def.cpp.

+ +
+
+

Member Data Documentation

+ +
+
+ + + + +
std::vector<var_decl> stan::gm::statements::local_decl_
+
+ +

Definition at line 163 of file ast.hpp.

+ +
+
+ +
+
+ + + + +
std::vector<statement> stan::gm::statements::statements_
+
+ +

Definition at line 164 of file ast.hpp.

+ +
+
+
The documentation for this struct was generated from the following files: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1subtraction__expr-members.html b/doc/api/html/structstan_1_1gm_1_1subtraction__expr-members.html new file mode 100644 index 00000000000..1d2f362f3f2 --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1subtraction__expr-members.html @@ -0,0 +1,113 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::gm::subtraction_expr Member List
+
+
+ +

This is the complete list of members for stan::gm::subtraction_expr, including all inherited members.

+ + +
operator()(expression &expr1, const expression &expr2, std::ostream &error_msgs) const stan::gm::subtraction_exprinline
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1subtraction__expr.html b/doc/api/html/structstan_1_1gm_1_1subtraction__expr.html new file mode 100644 index 00000000000..ac494f3418c --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1subtraction__expr.html @@ -0,0 +1,175 @@ + + + + + +Stan: stan::gm::subtraction_expr Struct Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::gm::subtraction_expr Struct Reference
+
+
+ +

#include <expression_grammar_def.hpp>

+ + + + +

+Classes

struct  result
 
+ + + +

+Public Member Functions

expression operator() (expression &expr1, const expression &expr2, std::ostream &error_msgs) const
 
+

Detailed Description

+
+

Definition at line 143 of file expression_grammar_def.hpp.

+

Member Function Documentation

+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
expression stan::gm::subtraction_expr::operator() (expressionexpr1,
const expressionexpr2,
std::ostream & error_msgs 
) const
+
+inline
+
+ +

Definition at line 147 of file expression_grammar_def.hpp.

+ +
+
+
The documentation for this struct was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1subtraction__expr_1_1result-members.html b/doc/api/html/structstan_1_1gm_1_1subtraction__expr_1_1result-members.html new file mode 100644 index 00000000000..9b76ce31f11 --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1subtraction__expr_1_1result-members.html @@ -0,0 +1,113 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::gm::subtraction_expr::result< T1, T2, T3 > Member List
+
+
+ +

This is the complete list of members for stan::gm::subtraction_expr::result< T1, T2, T3 >, including all inherited members.

+ + +
type typedefstan::gm::subtraction_expr::result< T1, T2, T3 >
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1subtraction__expr_1_1result.html b/doc/api/html/structstan_1_1gm_1_1subtraction__expr_1_1result.html new file mode 100644 index 00000000000..42ea58b0393 --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1subtraction__expr_1_1result.html @@ -0,0 +1,146 @@ + + + + + +Stan: stan::gm::subtraction_expr::result< T1, T2, T3 > Struct Template Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::gm::subtraction_expr::result< T1, T2, T3 > Struct Template Reference
+
+
+ +

#include <expression_grammar_def.hpp>

+ + + + +

+Public Types

typedef expression type
 
+

Detailed Description

+

template<typename T1, typename T2, typename T3>
+struct stan::gm::subtraction_expr::result< T1, T2, T3 >

+ + +

Definition at line 145 of file expression_grammar_def.hpp.

+

Member Typedef Documentation

+ +
+
+
+template<typename T1 , typename T2 , typename T3 >
+ + + + +
typedef expression stan::gm::subtraction_expr::result< T1, T2, T3 >::type
+
+ +

Definition at line 145 of file expression_grammar_def.hpp.

+ +
+
+
The documentation for this struct was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1term__grammar-members.html b/doc/api/html/structstan_1_1gm_1_1term__grammar-members.html new file mode 100644 index 00000000000..29a5b2ff8e1 --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1term__grammar-members.html @@ -0,0 +1,127 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::gm::term_grammar< Iterator > Member List
+
+ +
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1term__grammar.html b/doc/api/html/structstan_1_1gm_1_1term__grammar.html new file mode 100644 index 00000000000..844386e25ca --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1term__grammar.html @@ -0,0 +1,459 @@ + + + + + +Stan: stan::gm::term_grammar< Iterator > Struct Template Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::gm::term_grammar< Iterator > Struct Template Reference
+
+
+ +

#include <term_grammar.hpp>

+
+Inheritance diagram for stan::gm::term_grammar< Iterator >:
+
+
+ + + +
+ + + + +

+Public Member Functions

 term_grammar (variable_map &var_map, std::stringstream &error_msgs, expression_grammar< Iterator > &eg)
 
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Attributes

variable_mapvar_map_
 
std::stringstream & error_msgs_
 
stan::gm::expression_grammar
+< Iterator > & 
expression_g
 
boost::spirit::qi::rule
+< Iterator, std::vector
+< expression >var_origin),
+whitespace_grammar< Iterator > > 
args_r
 
boost::spirit::qi::rule
+< Iterator, std::vector
+< expression >var_origin),
+whitespace_grammar< Iterator > > 
dims_r
 
boost::spirit::qi::rule
+< Iterator, double_literal(),
+whitespace_grammar< Iterator > > 
double_literal_r
 
boost::spirit::qi::rule
+< Iterator,
+boost::spirit::qi::locals
+< bool >, expression(var_origin),
+whitespace_grammar< Iterator > > 
factor_r
 
boost::spirit::qi::rule
+< Iterator, fun(var_origin),
+whitespace_grammar< Iterator > > 
fun_r
 
boost::spirit::qi::rule
+< Iterator, std::string(),
+whitespace_grammar< Iterator > > 
identifier_r
 
boost::spirit::qi::rule
+< Iterator, expression(var_origin),
+whitespace_grammar< Iterator > > 
indexed_factor_r
 
boost::spirit::qi::rule
+< Iterator, int_literal(),
+whitespace_grammar< Iterator > > 
int_literal_r
 
boost::spirit::qi::rule
+< Iterator, expression(var_origin),
+whitespace_grammar< Iterator > > 
negated_factor_r
 
boost::spirit::qi::rule
+< Iterator, expression(var_origin),
+whitespace_grammar< Iterator > > 
term_r
 
boost::spirit::qi::rule
+< Iterator, variable(),
+whitespace_grammar< Iterator > > 
variable_r
 
+

Detailed Description

+

template<typename Iterator>
+struct stan::gm::term_grammar< Iterator >

+ + +

Definition at line 25 of file term_grammar.hpp.

+

Constructor & Destructor Documentation

+ +
+
+
+template<typename Iterator >
+ + + + + + + + + + + + + + + + + + + + + + + + +
term_grammar< Iterator >::term_grammar (variable_mapvar_map,
std::stringstream & error_msgs,
expression_grammar< Iterator > & eg 
)
+
+ +

Definition at line 430 of file term_grammar_def.hpp.

+ +
+
+

Member Data Documentation

+ +
+
+
+template<typename Iterator >
+ + + + +
boost::spirit::qi::rule<Iterator, std::vector<expression>var_origin), whitespace_grammar<Iterator> > stan::gm::term_grammar< Iterator >::args_r
+
+ +

Definition at line 44 of file term_grammar.hpp.

+ +
+
+ +
+
+
+template<typename Iterator >
+ + + + +
boost::spirit::qi::rule<Iterator, std::vector<expression>var_origin), whitespace_grammar<Iterator> > stan::gm::term_grammar< Iterator >::dims_r
+
+ +

Definition at line 50 of file term_grammar.hpp.

+ +
+
+ +
+
+
+template<typename Iterator >
+ + + + +
boost::spirit::qi::rule<Iterator, double_literal(), whitespace_grammar<Iterator> > stan::gm::term_grammar< Iterator >::double_literal_r
+
+ +

Definition at line 56 of file term_grammar.hpp.

+ +
+
+ +
+
+
+template<typename Iterator >
+ + + + +
std::stringstream& stan::gm::term_grammar< Iterator >::error_msgs_
+
+ +

Definition at line 36 of file term_grammar.hpp.

+ +
+
+ +
+
+
+template<typename Iterator >
+ + + + +
stan::gm::expression_grammar<Iterator>& stan::gm::term_grammar< Iterator >::expression_g
+
+ +

Definition at line 38 of file term_grammar.hpp.

+ +
+
+ +
+
+
+template<typename Iterator >
+ + + + +
boost::spirit::qi::rule<Iterator, boost::spirit::qi::locals<bool>, expression(var_origin), whitespace_grammar<Iterator> > stan::gm::term_grammar< Iterator >::factor_r
+
+ +

Definition at line 63 of file term_grammar.hpp.

+ +
+
+ +
+
+
+template<typename Iterator >
+ + + + +
boost::spirit::qi::rule<Iterator, fun(var_origin), whitespace_grammar<Iterator> > stan::gm::term_grammar< Iterator >::fun_r
+
+ +

Definition at line 69 of file term_grammar.hpp.

+ +
+
+ +
+
+
+template<typename Iterator >
+ + + + +
boost::spirit::qi::rule<Iterator, std::string(), whitespace_grammar<Iterator> > stan::gm::term_grammar< Iterator >::identifier_r
+
+ +

Definition at line 75 of file term_grammar.hpp.

+ +
+
+ +
+
+
+template<typename Iterator >
+ + + + +
boost::spirit::qi::rule<Iterator, expression(var_origin), whitespace_grammar<Iterator> > stan::gm::term_grammar< Iterator >::indexed_factor_r
+
+ +

Definition at line 81 of file term_grammar.hpp.

+ +
+
+ +
+
+
+template<typename Iterator >
+ + + + +
boost::spirit::qi::rule<Iterator, int_literal(), whitespace_grammar<Iterator> > stan::gm::term_grammar< Iterator >::int_literal_r
+
+ +

Definition at line 87 of file term_grammar.hpp.

+ +
+
+ +
+
+
+template<typename Iterator >
+ + + + +
boost::spirit::qi::rule<Iterator, expression(var_origin), whitespace_grammar<Iterator> > stan::gm::term_grammar< Iterator >::negated_factor_r
+
+ +

Definition at line 93 of file term_grammar.hpp.

+ +
+
+ +
+
+
+template<typename Iterator >
+ + + + +
boost::spirit::qi::rule<Iterator, expression(var_origin), whitespace_grammar<Iterator> > stan::gm::term_grammar< Iterator >::term_r
+
+ +

Definition at line 99 of file term_grammar.hpp.

+ +
+
+ +
+
+
+template<typename Iterator >
+ + + + +
variable_map& stan::gm::term_grammar< Iterator >::var_map_
+
+ +

Definition at line 34 of file term_grammar.hpp.

+ +
+
+ +
+
+
+template<typename Iterator >
+ + + + +
boost::spirit::qi::rule<Iterator, variable(), whitespace_grammar<Iterator> > stan::gm::term_grammar< Iterator >::variable_r
+
+ +

Definition at line 105 of file term_grammar.hpp.

+ +
+
+
The documentation for this struct was generated from the following files: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1term__grammar.png b/doc/api/html/structstan_1_1gm_1_1term__grammar.png new file mode 100644 index 0000000000000000000000000000000000000000..ff073754ff68c9d138348c0af9da6ed8aa263945 GIT binary patch literal 1363 zcmeAS@N?(olHy`uVBq!ia0y~yV3Gu~12~w0WHZln6CfoK;1lBd|Nnm=^TnI5rTvE{ z09jys;J^Xa&O7ozE=Ng_UoZnu5eQs86=KA|!1Bn`#WAFU@$KBZNso1ST>A5@-v2)q zA9Xu|Y0mt-Nq^_aP7k(LVCitYBP5upq~zoBrgegfvZtDDSeuHZ=c)+FNhvBTlTtk< zO1y?N!kzm;An?SHe||Gsh3_v%!e zSguJ$l`D-@R(^7i%lG~A3#B;e5=m;l*;kConKbJWHoyCO`s*k zUQ2mN%rixqV|Sq6N{d8O6a zrG|mW(xfJF?ObT;f9`Vc=2;@<#eNUatE3Vi zzwP~=^HOK~)SesZ%S2}7DxGwVpS^B!$&cN2hjTYw>pL~WSEDyv$>^*hyOq}A_krhp zOHY^|@tee#acaVn-#acY%&xn!SH<>7NlW^AuSr~wUB5N7Tl>b#TYFkPSb9q0(;5}q z**_W1M_zqeQENZR%W{vs%1gO*H}ahKsg_MDIg(v`Ol8%iFKlx1-xtnZ`?|`r=~wl} z-&>7TPI_E&Pex8w$my*p(9NZ#v%}ygqrvOXtO*P}8^pDl4={-A+o!|Jz&s@>l|iE6 zkgLQrwg$$cjYbSS4*jK!2@G0cK>msdNd~qBU=>|c=_}|~2g*M{ckdNoU_0=nClTb# zCNxJBxux2eJPy};|ET)iKViSwQyD*auiew!-d!qR1O6LA}}8pKjc`_5P~krzr$!gK| zDH|p3hq)C?O*nn)f{@Sho+tZuyqH?3mpkX3)SB%l?^-4s%+Od|ZV>0*Zn?Pl=^Vxn ze!up@Y3xR&xfz?6rWR#Pgg&ebxsLQ E02d&6KmY&$ literal 0 HcmV?d00001 diff --git a/doc/api/html/structstan_1_1gm_1_1transpose__expr-members.html b/doc/api/html/structstan_1_1gm_1_1transpose__expr-members.html new file mode 100644 index 00000000000..69189963999 --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1transpose__expr-members.html @@ -0,0 +1,113 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::gm::transpose_expr Member List
+
+
+ +

This is the complete list of members for stan::gm::transpose_expr, including all inherited members.

+ + +
operator()(const expression &expr, std::ostream &error_msgs) const stan::gm::transpose_exprinline
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1transpose__expr.html b/doc/api/html/structstan_1_1gm_1_1transpose__expr.html new file mode 100644 index 00000000000..0456f2baa07 --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1transpose__expr.html @@ -0,0 +1,169 @@ + + + + + +Stan: stan::gm::transpose_expr Struct Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::gm::transpose_expr Struct Reference
+
+
+ +

#include <term_grammar_def.hpp>

+ + + + +

+Classes

struct  result
 
+ + + +

+Public Member Functions

expression operator() (const expression &expr, std::ostream &error_msgs) const
 
+

Detailed Description

+
+

Definition at line 324 of file term_grammar_def.hpp.

+

Member Function Documentation

+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
expression stan::gm::transpose_expr::operator() (const expressionexpr,
std::ostream & error_msgs 
) const
+
+inline
+
+ +

Definition at line 328 of file term_grammar_def.hpp.

+ +
+
+
The documentation for this struct was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1transpose__expr_1_1result-members.html b/doc/api/html/structstan_1_1gm_1_1transpose__expr_1_1result-members.html new file mode 100644 index 00000000000..fd9f1bf6d73 --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1transpose__expr_1_1result-members.html @@ -0,0 +1,113 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::gm::transpose_expr::result< T1, T2 > Member List
+
+
+ +

This is the complete list of members for stan::gm::transpose_expr::result< T1, T2 >, including all inherited members.

+ + +
type typedefstan::gm::transpose_expr::result< T1, T2 >
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1transpose__expr_1_1result.html b/doc/api/html/structstan_1_1gm_1_1transpose__expr_1_1result.html new file mode 100644 index 00000000000..9ace5fd03a0 --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1transpose__expr_1_1result.html @@ -0,0 +1,146 @@ + + + + + +Stan: stan::gm::transpose_expr::result< T1, T2 > Struct Template Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::gm::transpose_expr::result< T1, T2 > Struct Template Reference
+
+
+ +

#include <term_grammar_def.hpp>

+ + + + +

+Public Types

typedef expression type
 
+

Detailed Description

+

template<typename T1, typename T2>
+struct stan::gm::transpose_expr::result< T1, T2 >

+ + +

Definition at line 326 of file term_grammar_def.hpp.

+

Member Typedef Documentation

+ +
+
+
+template<typename T1 , typename T2 >
+ + + + +
typedef expression stan::gm::transpose_expr::result< T1, T2 >::type
+
+ +

Definition at line 326 of file term_grammar_def.hpp.

+ +
+
+
The documentation for this struct was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1type__name-members.html b/doc/api/html/structstan_1_1gm_1_1type__name-members.html new file mode 100644 index 00000000000..c9487001e40 --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1type__name-members.html @@ -0,0 +1,113 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::gm::type_name< T > Member List
+
+
+ +

This is the complete list of members for stan::gm::type_name< T >, including all inherited members.

+ + +
name()stan::gm::type_name< T >inlinestatic
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1type__name.html b/doc/api/html/structstan_1_1gm_1_1type__name.html new file mode 100644 index 00000000000..3ca4681536a --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1type__name.html @@ -0,0 +1,157 @@ + + + + + +Stan: stan::gm::type_name< T > Struct Template Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::gm::type_name< T > Struct Template Reference
+
+
+ +

#include <singleton_argument.hpp>

+ + + + +

+Static Public Member Functions

static std::string name ()
 
+

Detailed Description

+

template<typename T>
+struct stan::gm::type_name< T >

+ + +

Definition at line 13 of file singleton_argument.hpp.

+

Member Function Documentation

+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + +
static std::string stan::gm::type_name< T >::name ()
+
+inlinestatic
+
+ +

Definition at line 14 of file singleton_argument.hpp.

+ +
+
+
The documentation for this struct was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1type__name_3_01bool_01_4-members.html b/doc/api/html/structstan_1_1gm_1_1type__name_3_01bool_01_4-members.html new file mode 100644 index 00000000000..94c23e9a287 --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1type__name_3_01bool_01_4-members.html @@ -0,0 +1,113 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::gm::type_name< bool > Member List
+
+
+ +

This is the complete list of members for stan::gm::type_name< bool >, including all inherited members.

+ + +
name()stan::gm::type_name< bool >inlinestatic
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1type__name_3_01bool_01_4.html b/doc/api/html/structstan_1_1gm_1_1type__name_3_01bool_01_4.html new file mode 100644 index 00000000000..49cde86d0e3 --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1type__name_3_01bool_01_4.html @@ -0,0 +1,155 @@ + + + + + +Stan: stan::gm::type_name< bool > Struct Template Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::gm::type_name< bool > Struct Template Reference
+
+
+ +

#include <singleton_argument.hpp>

+ + + + +

+Static Public Member Functions

static std::string name ()
 
+

Detailed Description

+

template<>
+struct stan::gm::type_name< bool >

+ + +

Definition at line 34 of file singleton_argument.hpp.

+

Member Function Documentation

+ +
+
+ + + + + +
+ + + + + + + +
static std::string stan::gm::type_name< bool >::name ()
+
+inlinestatic
+
+ +

Definition at line 35 of file singleton_argument.hpp.

+ +
+
+
The documentation for this struct was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1type__name_3_01double_01_4-members.html b/doc/api/html/structstan_1_1gm_1_1type__name_3_01double_01_4-members.html new file mode 100644 index 00000000000..875286bf21b --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1type__name_3_01double_01_4-members.html @@ -0,0 +1,113 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::gm::type_name< double > Member List
+
+
+ +

This is the complete list of members for stan::gm::type_name< double >, including all inherited members.

+ + +
name()stan::gm::type_name< double >inlinestatic
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1type__name_3_01double_01_4.html b/doc/api/html/structstan_1_1gm_1_1type__name_3_01double_01_4.html new file mode 100644 index 00000000000..4d163a240dc --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1type__name_3_01double_01_4.html @@ -0,0 +1,155 @@ + + + + + +Stan: stan::gm::type_name< double > Struct Template Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::gm::type_name< double > Struct Template Reference
+
+
+ +

#include <singleton_argument.hpp>

+ + + + +

+Static Public Member Functions

static std::string name ()
 
+

Detailed Description

+

template<>
+struct stan::gm::type_name< double >

+ + +

Definition at line 29 of file singleton_argument.hpp.

+

Member Function Documentation

+ +
+
+ + + + + +
+ + + + + + + +
static std::string stan::gm::type_name< double >::name ()
+
+inlinestatic
+
+ +

Definition at line 30 of file singleton_argument.hpp.

+ +
+
+
The documentation for this struct was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1type__name_3_01int_01_4-members.html b/doc/api/html/structstan_1_1gm_1_1type__name_3_01int_01_4-members.html new file mode 100644 index 00000000000..ae0ec9fe6ff --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1type__name_3_01int_01_4-members.html @@ -0,0 +1,113 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::gm::type_name< int > Member List
+
+
+ +

This is the complete list of members for stan::gm::type_name< int >, including all inherited members.

+ + +
name()stan::gm::type_name< int >inlinestatic
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1type__name_3_01int_01_4.html b/doc/api/html/structstan_1_1gm_1_1type__name_3_01int_01_4.html new file mode 100644 index 00000000000..c5ae28050a1 --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1type__name_3_01int_01_4.html @@ -0,0 +1,155 @@ + + + + + +Stan: stan::gm::type_name< int > Struct Template Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::gm::type_name< int > Struct Template Reference
+
+
+ +

#include <singleton_argument.hpp>

+ + + + +

+Static Public Member Functions

static std::string name ()
 
+

Detailed Description

+

template<>
+struct stan::gm::type_name< int >

+ + +

Definition at line 19 of file singleton_argument.hpp.

+

Member Function Documentation

+ +
+
+ + + + + +
+ + + + + + + +
static std::string stan::gm::type_name< int >::name ()
+
+inlinestatic
+
+ +

Definition at line 20 of file singleton_argument.hpp.

+ +
+
+
The documentation for this struct was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1type__name_3_01std_1_1string_01_4-members.html b/doc/api/html/structstan_1_1gm_1_1type__name_3_01std_1_1string_01_4-members.html new file mode 100644 index 00000000000..b21be6728ab --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1type__name_3_01std_1_1string_01_4-members.html @@ -0,0 +1,113 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::gm::type_name< std::string > Member List
+
+
+ +

This is the complete list of members for stan::gm::type_name< std::string >, including all inherited members.

+ + +
name()stan::gm::type_name< std::string >inlinestatic
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1type__name_3_01std_1_1string_01_4.html b/doc/api/html/structstan_1_1gm_1_1type__name_3_01std_1_1string_01_4.html new file mode 100644 index 00000000000..4d7c6455266 --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1type__name_3_01std_1_1string_01_4.html @@ -0,0 +1,155 @@ + + + + + +Stan: stan::gm::type_name< std::string > Struct Template Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::gm::type_name< std::string > Struct Template Reference
+
+
+ +

#include <singleton_argument.hpp>

+ + + + +

+Static Public Member Functions

static std::string name ()
 
+

Detailed Description

+

template<>
+struct stan::gm::type_name< std::string >

+ + +

Definition at line 39 of file singleton_argument.hpp.

+

Member Function Documentation

+ +
+
+ + + + + +
+ + + + + + + +
static std::string stan::gm::type_name< std::string >::name ()
+
+inlinestatic
+
+ +

Definition at line 40 of file singleton_argument.hpp.

+ +
+
+
The documentation for this struct was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1type__name_3_01unsigned_01int_01_4-members.html b/doc/api/html/structstan_1_1gm_1_1type__name_3_01unsigned_01int_01_4-members.html new file mode 100644 index 00000000000..d5683d491e9 --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1type__name_3_01unsigned_01int_01_4-members.html @@ -0,0 +1,113 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::gm::type_name< unsigned int > Member List
+
+
+ +

This is the complete list of members for stan::gm::type_name< unsigned int >, including all inherited members.

+ + +
name()stan::gm::type_name< unsigned int >inlinestatic
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1type__name_3_01unsigned_01int_01_4.html b/doc/api/html/structstan_1_1gm_1_1type__name_3_01unsigned_01int_01_4.html new file mode 100644 index 00000000000..7cf2b4baef6 --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1type__name_3_01unsigned_01int_01_4.html @@ -0,0 +1,155 @@ + + + + + +Stan: stan::gm::type_name< unsigned int > Struct Template Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::gm::type_name< unsigned int > Struct Template Reference
+
+
+ +

#include <singleton_argument.hpp>

+ + + + +

+Static Public Member Functions

static std::string name ()
 
+

Detailed Description

+

template<>
+struct stan::gm::type_name< unsigned int >

+ + +

Definition at line 24 of file singleton_argument.hpp.

+

Member Function Documentation

+ +
+
+ + + + + +
+ + + + + + + +
static std::string stan::gm::type_name< unsigned int >::name ()
+
+inlinestatic
+
+ +

Definition at line 25 of file singleton_argument.hpp.

+ +
+
+
The documentation for this struct was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1unary__op-members.html b/doc/api/html/structstan_1_1gm_1_1unary__op-members.html new file mode 100644 index 00000000000..140100aa4d4 --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1unary__op-members.html @@ -0,0 +1,116 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::gm::unary_op Member List
+
+
+ +

This is the complete list of members for stan::gm::unary_op, including all inherited members.

+ + + + + +
opstan::gm::unary_op
subjectstan::gm::unary_op
type_stan::gm::unary_op
unary_op(char op, expression const &subject)stan::gm::unary_op
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1unary__op.html b/doc/api/html/structstan_1_1gm_1_1unary__op.html new file mode 100644 index 00000000000..75767b80c54 --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1unary__op.html @@ -0,0 +1,209 @@ + + + + + +Stan: stan::gm::unary_op Struct Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::gm::unary_op Struct Reference
+
+
+ +

#include <ast.hpp>

+ + + + +

+Public Member Functions

 unary_op (char op, expression const &subject)
 
+ + + + + + + +

+Public Attributes

char op
 
expression subject
 
expr_type type_
 
+

Detailed Description

+
+

Definition at line 350 of file ast.hpp.

+

Constructor & Destructor Documentation

+ +
+
+ + + + + + + + + + + + + + + + + + +
stan::gm::unary_op::unary_op (char op,
expression const & subject 
)
+
+ +

Definition at line 637 of file ast_def.cpp.

+ +
+
+

Member Data Documentation

+ +
+
+ + + + +
char stan::gm::unary_op::op
+
+ +

Definition at line 351 of file ast.hpp.

+ +
+
+ +
+
+ + + + +
expression stan::gm::unary_op::subject
+
+ +

Definition at line 352 of file ast.hpp.

+ +
+
+ +
+
+ + + + +
expr_type stan::gm::unary_op::type_
+
+ +

Definition at line 353 of file ast.hpp.

+ +
+
+
The documentation for this struct was generated from the following files: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1unconstrained__param__names__visgen-members.html b/doc/api/html/structstan_1_1gm_1_1unconstrained__param__names__visgen-members.html new file mode 100644 index 00000000000..09272cca716 --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1unconstrained__param__names__visgen-members.html @@ -0,0 +1,130 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::gm::unconstrained_param_names_visgen Member List
+
+
+ +

This is the complete list of members for stan::gm::unconstrained_param_names_visgen, including all inherited members.

+ + + + + + + + + + + + + + + + + + + +
generate_param_names_array(const std::vector< expression > &matrix_dims, const std::string &name, const std::vector< expression > &dims) const stan::gm::unconstrained_param_names_visgeninline
o_stan::gm::visgen
operator()(const nil &) const stan::gm::unconstrained_param_names_visgeninline
operator()(const int_var_decl &x) const stan::gm::unconstrained_param_names_visgeninline
operator()(const double_var_decl &x) const stan::gm::unconstrained_param_names_visgeninline
operator()(const vector_var_decl &x) const stan::gm::unconstrained_param_names_visgeninline
operator()(const row_vector_var_decl &x) const stan::gm::unconstrained_param_names_visgeninline
operator()(const matrix_var_decl &x) const stan::gm::unconstrained_param_names_visgeninline
operator()(const unit_vector_var_decl &x) const stan::gm::unconstrained_param_names_visgeninline
operator()(const simplex_var_decl &x) const stan::gm::unconstrained_param_names_visgeninline
operator()(const ordered_var_decl &x) const stan::gm::unconstrained_param_names_visgeninline
operator()(const positive_ordered_var_decl &x) const stan::gm::unconstrained_param_names_visgeninline
operator()(const cholesky_factor_var_decl &x) const stan::gm::unconstrained_param_names_visgeninline
operator()(const cov_matrix_var_decl &x) const stan::gm::unconstrained_param_names_visgeninline
operator()(const corr_matrix_var_decl &x) const stan::gm::unconstrained_param_names_visgeninline
result_type typedefstan::gm::visgen
unconstrained_param_names_visgen(std::ostream &o)stan::gm::unconstrained_param_names_visgeninline
visgen(std::ostream &o)stan::gm::visgeninline
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1unconstrained__param__names__visgen.html b/doc/api/html/structstan_1_1gm_1_1unconstrained__param__names__visgen.html new file mode 100644 index 00000000000..9986653392d --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1unconstrained__param__names__visgen.html @@ -0,0 +1,583 @@ + + + + + +Stan: stan::gm::unconstrained_param_names_visgen Struct Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::gm::unconstrained_param_names_visgen Struct Reference
+
+
+ +

#include <generator.hpp>

+
+Inheritance diagram for stan::gm::unconstrained_param_names_visgen:
+
+
+ + +stan::gm::visgen + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 unconstrained_param_names_visgen (std::ostream &o)
 
void operator() (const nil &) const
 
void operator() (const int_var_decl &x) const
 
void operator() (const double_var_decl &x) const
 
void operator() (const vector_var_decl &x) const
 
void operator() (const row_vector_var_decl &x) const
 
void operator() (const matrix_var_decl &x) const
 
void operator() (const unit_vector_var_decl &x) const
 
void operator() (const simplex_var_decl &x) const
 
void operator() (const ordered_var_decl &x) const
 
void operator() (const positive_ordered_var_decl &x) const
 
void operator() (const cholesky_factor_var_decl &x) const
 
void operator() (const cov_matrix_var_decl &x) const
 
void operator() (const corr_matrix_var_decl &x) const
 
void generate_param_names_array (const std::vector< expression > &matrix_dims, const std::string &name, const std::vector< expression > &dims) const
 
- Public Member Functions inherited from stan::gm::visgen
 visgen (std::ostream &o)
 
+ + + + + + + +

+Additional Inherited Members

- Public Types inherited from stan::gm::visgen
typedef void result_type
 
- Public Attributes inherited from stan::gm::visgen
std::ostream & o_
 
+

Detailed Description

+
+

Definition at line 3094 of file generator.hpp.

+

Constructor & Destructor Documentation

+ +
+
+ + + + + +
+ + + + + + + + +
stan::gm::unconstrained_param_names_visgen::unconstrained_param_names_visgen (std::ostream & o)
+
+inline
+
+ +

Definition at line 3095 of file generator.hpp.

+ +
+
+

Member Function Documentation

+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
void stan::gm::unconstrained_param_names_visgen::generate_param_names_array (const std::vector< expression > & matrix_dims,
const std::string & name,
const std::vector< expression > & dims 
) const
+
+inline
+
+ +

Definition at line 3186 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::unconstrained_param_names_visgen::operator() (const nil) const
+
+inline
+
+ +

Definition at line 3098 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::unconstrained_param_names_visgen::operator() (const int_var_declx) const
+
+inline
+
+ +

Definition at line 3099 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::unconstrained_param_names_visgen::operator() (const double_var_declx) const
+
+inline
+
+ +

Definition at line 3102 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::unconstrained_param_names_visgen::operator() (const vector_var_declx) const
+
+inline
+
+ +

Definition at line 3105 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::unconstrained_param_names_visgen::operator() (const row_vector_var_declx) const
+
+inline
+
+ +

Definition at line 3110 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::unconstrained_param_names_visgen::operator() (const matrix_var_declx) const
+
+inline
+
+ +

Definition at line 3115 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::unconstrained_param_names_visgen::operator() (const unit_vector_var_declx) const
+
+inline
+
+ +

Definition at line 3121 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::unconstrained_param_names_visgen::operator() (const simplex_var_declx) const
+
+inline
+
+ +

Definition at line 3126 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::unconstrained_param_names_visgen::operator() (const ordered_var_declx) const
+
+inline
+
+ +

Definition at line 3131 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::unconstrained_param_names_visgen::operator() (const positive_ordered_var_declx) const
+
+inline
+
+ +

Definition at line 3136 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::unconstrained_param_names_visgen::operator() (const cholesky_factor_var_declx) const
+
+inline
+
+ +

Definition at line 3141 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::unconstrained_param_names_visgen::operator() (const cov_matrix_var_declx) const
+
+inline
+
+ +

Definition at line 3160 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::unconstrained_param_names_visgen::operator() (const corr_matrix_var_declx) const
+
+inline
+
+ +

Definition at line 3173 of file generator.hpp.

+ +
+
+
The documentation for this struct was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1unconstrained__param__names__visgen.png b/doc/api/html/structstan_1_1gm_1_1unconstrained__param__names__visgen.png new file mode 100644 index 0000000000000000000000000000000000000000..8eb645c3cfab2265d2e6c558329fbe441f3620a8 GIT binary patch literal 872 zcmeAS@N?(olHy`uVBq!ia0y~yU=#qd12~w07TXg&wq7& zLyoO^hMqld@5+XouRPGB=PvbfYHH-Pf}a~bf-L?sb*O|hOnkznFe!%7WzuU+he;~6 zm+enZTyp(UzkcJIQtnW?dH&xw!Gh-Q}XVsSZfku_b=QD4b8lX8dIr|H* z$EC%!e;3{oJ7nIlWu~h8q;(%RpP#_yQMxRoblQ?d_3Ki;ML&!9UDU0za-wb9_A~ME zMw3jw?>re>ec4N^N_9f<>e`?4CZtro+PU+8;*$PzR(XwAj90ncX3~_te#|&$ z-ST%U?|SEFd#u-z{GC6;qWg{5s4qxfPSsl)rc^|NEU;g0;k9pWJ~zJedtVVJlW1J~_YI z;oUq%d!|cm&*qw0IzLn0JpTpz`63myjF9<>Z*?F4zTE%6@Z6JWlB#^(%YIqyNadRF zQP)^UvSH`>V~l@Jt$+JMX2Px$jCvp5Hmv@}b>M`h(1X78g_kAg-ceNF&HiKS{L7bf v+@5>0J+LoeV2ptW=yfiYrBegTe~DWM4fmiCJ6 literal 0 HcmV?d00001 diff --git a/doc/api/html/structstan_1_1gm_1_1unit__vector__var__decl-members.html b/doc/api/html/structstan_1_1gm_1_1unit__vector__var__decl-members.html new file mode 100644 index 00000000000..c72b273a7ad --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1unit__vector__var__decl-members.html @@ -0,0 +1,121 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::gm::unit_vector_var_decl Member List
+
+
+ +

This is the complete list of members for stan::gm::unit_vector_var_decl, including all inherited members.

+ + + + + + + + + + +
base_type_stan::gm::base_var_decl
base_var_decl()stan::gm::base_var_decl
base_var_decl(const base_expr_type &base_type)stan::gm::base_var_decl
base_var_decl(const std::string &name, const std::vector< expression > &dims, const base_expr_type &base_type)stan::gm::base_var_decl
dims_stan::gm::base_var_decl
K_stan::gm::unit_vector_var_decl
name_stan::gm::base_var_decl
unit_vector_var_decl()stan::gm::unit_vector_var_decl
unit_vector_var_decl(expression const &K, std::string const &name, std::vector< expression > const &dims)stan::gm::unit_vector_var_decl
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1unit__vector__var__decl.html b/doc/api/html/structstan_1_1gm_1_1unit__vector__var__decl.html new file mode 100644 index 00000000000..f9995c6215e --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1unit__vector__var__decl.html @@ -0,0 +1,225 @@ + + + + + +Stan: stan::gm::unit_vector_var_decl Struct Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::gm::unit_vector_var_decl Struct Reference
+
+
+ +

#include <ast.hpp>

+
+Inheritance diagram for stan::gm::unit_vector_var_decl:
+
+
+ + +stan::gm::base_var_decl + +
+ + + + + + + + + + + + + +

+Public Member Functions

 unit_vector_var_decl ()
 
 unit_vector_var_decl (expression const &K, std::string const &name, std::vector< expression > const &dims)
 
- Public Member Functions inherited from stan::gm::base_var_decl
 base_var_decl ()
 
 base_var_decl (const base_expr_type &base_type)
 
 base_var_decl (const std::string &name, const std::vector< expression > &dims, const base_expr_type &base_type)
 
+ + + + + + + + + + +

+Public Attributes

expression K_
 
- Public Attributes inherited from stan::gm::base_var_decl
std::string name_
 
std::vector< expressiondims_
 
base_expr_type base_type_
 
+

Detailed Description

+
+

Definition at line 423 of file ast.hpp.

+

Constructor & Destructor Documentation

+ +
+
+ + + + + + + +
stan::gm::unit_vector_var_decl::unit_vector_var_decl ()
+
+ +

Definition at line 742 of file ast_def.cpp.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
stan::gm::unit_vector_var_decl::unit_vector_var_decl (expression const & K,
std::string const & name,
std::vector< expression > const & dims 
)
+
+ +

Definition at line 746 of file ast_def.cpp.

+ +
+
+

Member Data Documentation

+ +
+
+ + + + +
expression stan::gm::unit_vector_var_decl::K_
+
+ +

Definition at line 424 of file ast.hpp.

+ +
+
+
The documentation for this struct was generated from the following files: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1unit__vector__var__decl.png b/doc/api/html/structstan_1_1gm_1_1unit__vector__var__decl.png new file mode 100644 index 0000000000000000000000000000000000000000..13ee086a59f7fea38189efa17e16d17f5b03f6b5 GIT binary patch literal 742 zcmeAS@N?(olHy`uVBq!ia0vp^+krTMgBeKXd=!}uq$C1-LR|m<{|{uoc=NTi|Ih>= z3ycpOIKbL@M;^%KC<*clW&kPzfvcxNj2IZ0NSo=Ubj4qP=UkQ8tI@|MrG)&P z&-O=t=iOINzg?F~{ykZ3zVW}Q(>|)*TlmLAVfLYzcW>;=?q_IuPL;YdPop6B%cRrt z>vuF>a`AhqSr*2V7VY&emBVw@)n|U*Q4L&cEzZ_lbbeR$Na9D?+#^@^9)BzA)bL@V zm*$j%oaIq({_Wk8x&Opmo!24lN_q3jX9|0+`r=nB{ch2{&9m>UdH>Bwz%X*WYsw?NKZCCkv`P5#W(?;_c>b&_I7)>?4KQ>hRvEYvOw+Rmx z7oD$Tx)3~Bdck}(a|e6hyar&fF#I*y$@nX?i22LqCu}d4pX9yZkEX!woTd4K0*1pd zHR^}|9#jjvE`G1PDcmmcLG_*Wd+Xb)b34z+$;F-TJahc}=?|xze_VXA;e6{#iz$ze zHHsXY^^E&Rzm3Pyx1CJaw=wMa^RY|XV)K@0qk5qyohxT@ZuHeTJokNCe{$0ElJ=1F zJ8kQHYK{e*4{>~D)tUKohV_xJ`%mP)>v-VXzaw|TsyTc`zZJJfu0B{huT#ro_dee5 zj-ugT!!ONwd!|TyS=;Z@+IB0>@H+eE7XfkZ*0b*3-4s7{t-^ct(Cp8rr&aI2;LkAY zSM>hX*LSSG!X%Tq+xh24W|`M_zIaXOeqK9~bwU5S>zoJfUxWpQ_V(g)z02j9H>zD> U)n57sm?#-MUHx3vIVCg!0KeXPjsO4v literal 0 HcmV?d00001 diff --git a/doc/api/html/structstan_1_1gm_1_1unscope__locals-members.html b/doc/api/html/structstan_1_1gm_1_1unscope__locals-members.html new file mode 100644 index 00000000000..c062207eaff --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1unscope__locals-members.html @@ -0,0 +1,113 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::gm::unscope_locals Member List
+
+
+ +

This is the complete list of members for stan::gm::unscope_locals, including all inherited members.

+ + +
operator()(const std::vector< var_decl > &var_decls, variable_map &vm) const stan::gm::unscope_localsinline
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1unscope__locals.html b/doc/api/html/structstan_1_1gm_1_1unscope__locals.html new file mode 100644 index 00000000000..f9e4e0b53ef --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1unscope__locals.html @@ -0,0 +1,169 @@ + + + + + +Stan: stan::gm::unscope_locals Struct Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::gm::unscope_locals Struct Reference
+
+
+ +

#include <statement_grammar_def.hpp>

+ + + + +

+Classes

struct  result
 
+ + + +

+Public Member Functions

void operator() (const std::vector< var_decl > &var_decls, variable_map &vm) const
 
+

Detailed Description

+
+

Definition at line 325 of file statement_grammar_def.hpp.

+

Member Function Documentation

+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
void stan::gm::unscope_locals::operator() (const std::vector< var_decl > & var_decls,
variable_mapvm 
) const
+
+inline
+
+ +

Definition at line 328 of file statement_grammar_def.hpp.

+ +
+
+
The documentation for this struct was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1unscope__locals_1_1result-members.html b/doc/api/html/structstan_1_1gm_1_1unscope__locals_1_1result-members.html new file mode 100644 index 00000000000..375af657631 --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1unscope__locals_1_1result-members.html @@ -0,0 +1,113 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::gm::unscope_locals::result< T1, T2 > Member List
+
+
+ +

This is the complete list of members for stan::gm::unscope_locals::result< T1, T2 >, including all inherited members.

+ + +
type typedefstan::gm::unscope_locals::result< T1, T2 >
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1unscope__locals_1_1result.html b/doc/api/html/structstan_1_1gm_1_1unscope__locals_1_1result.html new file mode 100644 index 00000000000..457ad9a2a22 --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1unscope__locals_1_1result.html @@ -0,0 +1,146 @@ + + + + + +Stan: stan::gm::unscope_locals::result< T1, T2 > Struct Template Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::gm::unscope_locals::result< T1, T2 > Struct Template Reference
+
+
+ +

#include <statement_grammar_def.hpp>

+ + + + +

+Public Types

typedef void type
 
+

Detailed Description

+

template<typename T1, typename T2>
+struct stan::gm::unscope_locals::result< T1, T2 >

+ + +

Definition at line 327 of file statement_grammar_def.hpp.

+

Member Typedef Documentation

+ +
+
+
+template<typename T1 , typename T2 >
+ + + + +
typedef void stan::gm::unscope_locals::result< T1, T2 >::type
+
+ +

Definition at line 327 of file statement_grammar_def.hpp.

+ +
+
+
The documentation for this struct was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1validate__allow__sample-members.html b/doc/api/html/structstan_1_1gm_1_1validate__allow__sample-members.html new file mode 100644 index 00000000000..737a13d9901 --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1validate__allow__sample-members.html @@ -0,0 +1,113 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::gm::validate_allow_sample Member List
+
+
+ +

This is the complete list of members for stan::gm::validate_allow_sample, including all inherited members.

+ + +
operator()(const bool &allow_sample, std::stringstream &error_msgs) const stan::gm::validate_allow_sampleinline
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1validate__allow__sample.html b/doc/api/html/structstan_1_1gm_1_1validate__allow__sample.html new file mode 100644 index 00000000000..d767c0f7aef --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1validate__allow__sample.html @@ -0,0 +1,169 @@ + + + + + +Stan: stan::gm::validate_allow_sample Struct Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::gm::validate_allow_sample Struct Reference
+
+
+ +

#include <statement_grammar_def.hpp>

+ + + + +

+Classes

struct  result
 
+ + + +

+Public Member Functions

bool operator() (const bool &allow_sample, std::stringstream &error_msgs) const
 
+

Detailed Description

+
+

Definition at line 411 of file statement_grammar_def.hpp.

+

Member Function Documentation

+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
bool stan::gm::validate_allow_sample::operator() (const bool & allow_sample,
std::stringstream & error_msgs 
) const
+
+inline
+
+ +

Definition at line 415 of file statement_grammar_def.hpp.

+ +
+
+
The documentation for this struct was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1validate__allow__sample_1_1result-members.html b/doc/api/html/structstan_1_1gm_1_1validate__allow__sample_1_1result-members.html new file mode 100644 index 00000000000..6ce084520f4 --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1validate__allow__sample_1_1result-members.html @@ -0,0 +1,113 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::gm::validate_allow_sample::result< T1, T2 > Member List
+
+
+ +

This is the complete list of members for stan::gm::validate_allow_sample::result< T1, T2 >, including all inherited members.

+ + +
type typedefstan::gm::validate_allow_sample::result< T1, T2 >
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1validate__allow__sample_1_1result.html b/doc/api/html/structstan_1_1gm_1_1validate__allow__sample_1_1result.html new file mode 100644 index 00000000000..fa166c2d64e --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1validate__allow__sample_1_1result.html @@ -0,0 +1,146 @@ + + + + + +Stan: stan::gm::validate_allow_sample::result< T1, T2 > Struct Template Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::gm::validate_allow_sample::result< T1, T2 > Struct Template Reference
+
+
+ +

#include <statement_grammar_def.hpp>

+ + + + +

+Public Types

typedef bool type
 
+

Detailed Description

+

template<typename T1, typename T2>
+struct stan::gm::validate_allow_sample::result< T1, T2 >

+ + +

Definition at line 413 of file statement_grammar_def.hpp.

+

Member Typedef Documentation

+ +
+
+
+template<typename T1 , typename T2 >
+ + + + +
typedef bool stan::gm::validate_allow_sample::result< T1, T2 >::type
+
+ +

Definition at line 413 of file statement_grammar_def.hpp.

+ +
+
+
The documentation for this struct was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1validate__assignment-members.html b/doc/api/html/structstan_1_1gm_1_1validate__assignment-members.html new file mode 100644 index 00000000000..98d2007ef80 --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1validate__assignment-members.html @@ -0,0 +1,113 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::gm::validate_assignment Member List
+
+
+ +

This is the complete list of members for stan::gm::validate_assignment, including all inherited members.

+ + +
operator()(assignment &a, const var_origin &origin_allowed, variable_map &vm, std::stringstream &error_msgs) const stan::gm::validate_assignmentinline
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1validate__assignment.html b/doc/api/html/structstan_1_1gm_1_1validate__assignment.html new file mode 100644 index 00000000000..6c246faf64e --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1validate__assignment.html @@ -0,0 +1,181 @@ + + + + + +Stan: stan::gm::validate_assignment Struct Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::gm::validate_assignment Struct Reference
+
+
+ +

#include <statement_grammar_def.hpp>

+ + + + +

+Classes

struct  result
 
+ + + +

+Public Member Functions

bool operator() (assignment &a, const var_origin &origin_allowed, variable_map &vm, std::stringstream &error_msgs) const
 
+

Detailed Description

+
+

Definition at line 86 of file statement_grammar_def.hpp.

+

Member Function Documentation

+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
bool stan::gm::validate_assignment::operator() (assignmenta,
const var_originorigin_allowed,
variable_mapvm,
std::stringstream & error_msgs 
) const
+
+inline
+
+ +

Definition at line 90 of file statement_grammar_def.hpp.

+ +
+
+
The documentation for this struct was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1validate__assignment_1_1result-members.html b/doc/api/html/structstan_1_1gm_1_1validate__assignment_1_1result-members.html new file mode 100644 index 00000000000..c78443fb817 --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1validate__assignment_1_1result-members.html @@ -0,0 +1,113 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::gm::validate_assignment::result< T1, T2, T3, T4 > Member List
+
+
+ +

This is the complete list of members for stan::gm::validate_assignment::result< T1, T2, T3, T4 >, including all inherited members.

+ + +
type typedefstan::gm::validate_assignment::result< T1, T2, T3, T4 >
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1validate__assignment_1_1result.html b/doc/api/html/structstan_1_1gm_1_1validate__assignment_1_1result.html new file mode 100644 index 00000000000..fd40fe90176 --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1validate__assignment_1_1result.html @@ -0,0 +1,146 @@ + + + + + +Stan: stan::gm::validate_assignment::result< T1, T2, T3, T4 > Struct Template Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::gm::validate_assignment::result< T1, T2, T3, T4 > Struct Template Reference
+
+
+ +

#include <statement_grammar_def.hpp>

+ + + + +

+Public Types

typedef bool type
 
+

Detailed Description

+

template<typename T1, typename T2, typename T3, typename T4>
+struct stan::gm::validate_assignment::result< T1, T2, T3, T4 >

+ + +

Definition at line 88 of file statement_grammar_def.hpp.

+

Member Typedef Documentation

+ +
+
+
+template<typename T1 , typename T2 , typename T3 , typename T4 >
+ + + + +
typedef bool stan::gm::validate_assignment::result< T1, T2, T3, T4 >::type
+
+ +

Definition at line 88 of file statement_grammar_def.hpp.

+ +
+
+
The documentation for this struct was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1validate__expr__type-members.html b/doc/api/html/structstan_1_1gm_1_1validate__expr__type-members.html new file mode 100644 index 00000000000..90ae08ca662 --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1validate__expr__type-members.html @@ -0,0 +1,113 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::gm::validate_expr_type Member List
+
+
+ +

This is the complete list of members for stan::gm::validate_expr_type, including all inherited members.

+ + +
operator()(const expression &expr, std::ostream &error_msgs) const stan::gm::validate_expr_typeinline
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1validate__expr__type.html b/doc/api/html/structstan_1_1gm_1_1validate__expr__type.html new file mode 100644 index 00000000000..524451269de --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1validate__expr__type.html @@ -0,0 +1,169 @@ + + + + + +Stan: stan::gm::validate_expr_type Struct Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::gm::validate_expr_type Struct Reference
+
+
+ +

#include <term_grammar_def.hpp>

+ + + + +

+Classes

struct  result
 
+ + + +

+Public Member Functions

bool operator() (const expression &expr, std::ostream &error_msgs) const
 
+

Detailed Description

+
+

Definition at line 410 of file term_grammar_def.hpp.

+

Member Function Documentation

+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
bool stan::gm::validate_expr_type::operator() (const expressionexpr,
std::ostream & error_msgs 
) const
+
+inline
+
+ +

Definition at line 414 of file term_grammar_def.hpp.

+ +
+
+
The documentation for this struct was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1validate__expr__type2-members.html b/doc/api/html/structstan_1_1gm_1_1validate__expr__type2-members.html new file mode 100644 index 00000000000..ea3a54c35bc --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1validate__expr__type2-members.html @@ -0,0 +1,113 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::gm::validate_expr_type2 Member List
+
+
+ +

This is the complete list of members for stan::gm::validate_expr_type2, including all inherited members.

+ + +
operator()(const expression &expr, std::ostream &error_msgs) const stan::gm::validate_expr_type2inline
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1validate__expr__type2.html b/doc/api/html/structstan_1_1gm_1_1validate__expr__type2.html new file mode 100644 index 00000000000..844c97253cd --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1validate__expr__type2.html @@ -0,0 +1,169 @@ + + + + + +Stan: stan::gm::validate_expr_type2 Struct Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::gm::validate_expr_type2 Struct Reference
+
+
+ +

#include <expression_grammar_def.hpp>

+ + + + +

+Classes

struct  result
 
+ + + +

+Public Member Functions

bool operator() (const expression &expr, std::ostream &error_msgs) const
 
+

Detailed Description

+
+

Definition at line 54 of file expression_grammar_def.hpp.

+

Member Function Documentation

+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
bool stan::gm::validate_expr_type2::operator() (const expressionexpr,
std::ostream & error_msgs 
) const
+
+inline
+
+ +

Definition at line 58 of file expression_grammar_def.hpp.

+ +
+
+
The documentation for this struct was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1validate__expr__type2_1_1result-members.html b/doc/api/html/structstan_1_1gm_1_1validate__expr__type2_1_1result-members.html new file mode 100644 index 00000000000..9b0d979c8da --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1validate__expr__type2_1_1result-members.html @@ -0,0 +1,113 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::gm::validate_expr_type2::result< T1, T2 > Member List
+
+
+ +

This is the complete list of members for stan::gm::validate_expr_type2::result< T1, T2 >, including all inherited members.

+ + +
type typedefstan::gm::validate_expr_type2::result< T1, T2 >
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1validate__expr__type2_1_1result.html b/doc/api/html/structstan_1_1gm_1_1validate__expr__type2_1_1result.html new file mode 100644 index 00000000000..ad93e9ef41d --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1validate__expr__type2_1_1result.html @@ -0,0 +1,146 @@ + + + + + +Stan: stan::gm::validate_expr_type2::result< T1, T2 > Struct Template Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::gm::validate_expr_type2::result< T1, T2 > Struct Template Reference
+
+
+ +

#include <expression_grammar_def.hpp>

+ + + + +

+Public Types

typedef bool type
 
+

Detailed Description

+

template<typename T1, typename T2>
+struct stan::gm::validate_expr_type2::result< T1, T2 >

+ + +

Definition at line 56 of file expression_grammar_def.hpp.

+

Member Typedef Documentation

+ +
+
+
+template<typename T1 , typename T2 >
+ + + + +
typedef bool stan::gm::validate_expr_type2::result< T1, T2 >::type
+
+ +

Definition at line 56 of file expression_grammar_def.hpp.

+ +
+
+
The documentation for this struct was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1validate__expr__type_1_1result-members.html b/doc/api/html/structstan_1_1gm_1_1validate__expr__type_1_1result-members.html new file mode 100644 index 00000000000..4ae18958f2f --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1validate__expr__type_1_1result-members.html @@ -0,0 +1,113 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::gm::validate_expr_type::result< T1, T2 > Member List
+
+
+ +

This is the complete list of members for stan::gm::validate_expr_type::result< T1, T2 >, including all inherited members.

+ + +
type typedefstan::gm::validate_expr_type::result< T1, T2 >
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1validate__expr__type_1_1result.html b/doc/api/html/structstan_1_1gm_1_1validate__expr__type_1_1result.html new file mode 100644 index 00000000000..cf4b230ad28 --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1validate__expr__type_1_1result.html @@ -0,0 +1,146 @@ + + + + + +Stan: stan::gm::validate_expr_type::result< T1, T2 > Struct Template Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::gm::validate_expr_type::result< T1, T2 > Struct Template Reference
+
+
+ +

#include <term_grammar_def.hpp>

+ + + + +

+Public Types

typedef bool type
 
+

Detailed Description

+

template<typename T1, typename T2>
+struct stan::gm::validate_expr_type::result< T1, T2 >

+ + +

Definition at line 412 of file term_grammar_def.hpp.

+

Member Typedef Documentation

+ +
+
+
+template<typename T1 , typename T2 >
+ + + + +
typedef bool stan::gm::validate_expr_type::result< T1, T2 >::type
+
+ +

Definition at line 412 of file term_grammar_def.hpp.

+ +
+
+
The documentation for this struct was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1validate__int__expr2-members.html b/doc/api/html/structstan_1_1gm_1_1validate__int__expr2-members.html new file mode 100644 index 00000000000..1488c7dc40f --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1validate__int__expr2-members.html @@ -0,0 +1,113 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::gm::validate_int_expr2 Member List
+
+
+ +

This is the complete list of members for stan::gm::validate_int_expr2, including all inherited members.

+ + +
operator()(const expression &expr, std::stringstream &error_msgs) const stan::gm::validate_int_expr2inline
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1validate__int__expr2.html b/doc/api/html/structstan_1_1gm_1_1validate__int__expr2.html new file mode 100644 index 00000000000..9a9f3933b73 --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1validate__int__expr2.html @@ -0,0 +1,169 @@ + + + + + +Stan: stan::gm::validate_int_expr2 Struct Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::gm::validate_int_expr2 Struct Reference
+
+
+ +

#include <statement_grammar_def.hpp>

+ + + + +

+Classes

struct  result
 
+ + + +

+Public Member Functions

bool operator() (const expression &expr, std::stringstream &error_msgs) const
 
+

Detailed Description

+
+

Definition at line 395 of file statement_grammar_def.hpp.

+

Member Function Documentation

+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
bool stan::gm::validate_int_expr2::operator() (const expressionexpr,
std::stringstream & error_msgs 
) const
+
+inline
+
+ +

Definition at line 399 of file statement_grammar_def.hpp.

+ +
+
+
The documentation for this struct was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1validate__int__expr2_1_1result-members.html b/doc/api/html/structstan_1_1gm_1_1validate__int__expr2_1_1result-members.html new file mode 100644 index 00000000000..477c467e611 --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1validate__int__expr2_1_1result-members.html @@ -0,0 +1,113 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::gm::validate_int_expr2::result< T1, T2 > Member List
+
+
+ +

This is the complete list of members for stan::gm::validate_int_expr2::result< T1, T2 >, including all inherited members.

+ + +
type typedefstan::gm::validate_int_expr2::result< T1, T2 >
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1validate__int__expr2_1_1result.html b/doc/api/html/structstan_1_1gm_1_1validate__int__expr2_1_1result.html new file mode 100644 index 00000000000..a290633684f --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1validate__int__expr2_1_1result.html @@ -0,0 +1,146 @@ + + + + + +Stan: stan::gm::validate_int_expr2::result< T1, T2 > Struct Template Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::gm::validate_int_expr2::result< T1, T2 > Struct Template Reference
+
+
+ +

#include <statement_grammar_def.hpp>

+ + + + +

+Public Types

typedef bool type
 
+

Detailed Description

+

template<typename T1, typename T2>
+struct stan::gm::validate_int_expr2::result< T1, T2 >

+ + +

Definition at line 397 of file statement_grammar_def.hpp.

+

Member Typedef Documentation

+ +
+
+
+template<typename T1 , typename T2 >
+ + + + +
typedef bool stan::gm::validate_int_expr2::result< T1, T2 >::type
+
+ +

Definition at line 397 of file statement_grammar_def.hpp.

+ +
+
+
The documentation for this struct was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1validate__int__expr3-members.html b/doc/api/html/structstan_1_1gm_1_1validate__int__expr3-members.html new file mode 100644 index 00000000000..3b7f5aa5653 --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1validate__int__expr3-members.html @@ -0,0 +1,113 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::gm::validate_int_expr3 Member List
+
+
+ +

This is the complete list of members for stan::gm::validate_int_expr3, including all inherited members.

+ + +
operator()(const expression &expr, std::stringstream &error_msgs) const stan::gm::validate_int_expr3inline
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1validate__int__expr3.html b/doc/api/html/structstan_1_1gm_1_1validate__int__expr3.html new file mode 100644 index 00000000000..7eedd5eef5f --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1validate__int__expr3.html @@ -0,0 +1,169 @@ + + + + + +Stan: stan::gm::validate_int_expr3 Struct Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::gm::validate_int_expr3 Struct Reference
+
+
+ +

#include <term_grammar_def.hpp>

+ + + + +

+Classes

struct  result
 
+ + + +

+Public Member Functions

bool operator() (const expression &expr, std::stringstream &error_msgs) const
 
+

Detailed Description

+
+

Definition at line 393 of file term_grammar_def.hpp.

+

Member Function Documentation

+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
bool stan::gm::validate_int_expr3::operator() (const expressionexpr,
std::stringstream & error_msgs 
) const
+
+inline
+
+ +

Definition at line 397 of file term_grammar_def.hpp.

+ +
+
+
The documentation for this struct was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1validate__int__expr3_1_1result-members.html b/doc/api/html/structstan_1_1gm_1_1validate__int__expr3_1_1result-members.html new file mode 100644 index 00000000000..d65ca371af5 --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1validate__int__expr3_1_1result-members.html @@ -0,0 +1,113 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::gm::validate_int_expr3::result< T1, T2 > Member List
+
+
+ +

This is the complete list of members for stan::gm::validate_int_expr3::result< T1, T2 >, including all inherited members.

+ + +
type typedefstan::gm::validate_int_expr3::result< T1, T2 >
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1validate__int__expr3_1_1result.html b/doc/api/html/structstan_1_1gm_1_1validate__int__expr3_1_1result.html new file mode 100644 index 00000000000..330f6a1fa4a --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1validate__int__expr3_1_1result.html @@ -0,0 +1,146 @@ + + + + + +Stan: stan::gm::validate_int_expr3::result< T1, T2 > Struct Template Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::gm::validate_int_expr3::result< T1, T2 > Struct Template Reference
+
+
+ +

#include <term_grammar_def.hpp>

+ + + + +

+Public Types

typedef bool type
 
+

Detailed Description

+

template<typename T1, typename T2>
+struct stan::gm::validate_int_expr3::result< T1, T2 >

+ + +

Definition at line 395 of file term_grammar_def.hpp.

+

Member Typedef Documentation

+ +
+
+
+template<typename T1 , typename T2 >
+ + + + +
typedef bool stan::gm::validate_int_expr3::result< T1, T2 >::type
+
+ +

Definition at line 395 of file term_grammar_def.hpp.

+ +
+
+
The documentation for this struct was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1validate__sample-members.html b/doc/api/html/structstan_1_1gm_1_1validate__sample-members.html new file mode 100644 index 00000000000..c793140f743 --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1validate__sample-members.html @@ -0,0 +1,115 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::gm::validate_sample Member List
+
+
+ +

This is the complete list of members for stan::gm::validate_sample, including all inherited members.

+ + + + +
is_double_return(const std::string &function_name, const std::vector< expr_type > &arg_types, std::ostream &error_msgs) const stan::gm::validate_sampleinline
is_univariate(const expr_type &et)stan::gm::validate_sampleinlinestatic
operator()(const sample &s, const variable_map &var_map, std::ostream &error_msgs) const stan::gm::validate_sampleinline
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1validate__sample.html b/doc/api/html/structstan_1_1gm_1_1validate__sample.html new file mode 100644 index 00000000000..610ac04065f --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1validate__sample.html @@ -0,0 +1,251 @@ + + + + + +Stan: stan::gm::validate_sample Struct Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::gm::validate_sample Struct Reference
+
+
+ +

#include <statement_grammar_def.hpp>

+ + + + +

+Classes

struct  result
 
+ + + + + +

+Public Member Functions

bool is_double_return (const std::string &function_name, const std::vector< expr_type > &arg_types, std::ostream &error_msgs) const
 
bool operator() (const sample &s, const variable_map &var_map, std::ostream &error_msgs) const
 
+ + + +

+Static Public Member Functions

static bool is_univariate (const expr_type &et)
 
+

Detailed Description

+
+

Definition at line 160 of file statement_grammar_def.hpp.

+

Member Function Documentation

+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
bool stan::gm::validate_sample::is_double_return (const std::string & function_name,
const std::vector< expr_type > & arg_types,
std::ostream & error_msgs 
) const
+
+inline
+
+ +

Definition at line 164 of file statement_grammar_def.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
static bool stan::gm::validate_sample::is_univariate (const expr_typeet)
+
+inlinestatic
+
+ +

Definition at line 171 of file statement_grammar_def.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
bool stan::gm::validate_sample::operator() (const samples,
const variable_mapvar_map,
std::ostream & error_msgs 
) const
+
+inline
+
+ +

Definition at line 176 of file statement_grammar_def.hpp.

+ +
+
+
The documentation for this struct was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1validate__sample_1_1result-members.html b/doc/api/html/structstan_1_1gm_1_1validate__sample_1_1result-members.html new file mode 100644 index 00000000000..94b331bb331 --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1validate__sample_1_1result-members.html @@ -0,0 +1,113 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::gm::validate_sample::result< T1, T2, T3 > Member List
+
+
+ +

This is the complete list of members for stan::gm::validate_sample::result< T1, T2, T3 >, including all inherited members.

+ + +
type typedefstan::gm::validate_sample::result< T1, T2, T3 >
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1validate__sample_1_1result.html b/doc/api/html/structstan_1_1gm_1_1validate__sample_1_1result.html new file mode 100644 index 00000000000..c0a1c7107fa --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1validate__sample_1_1result.html @@ -0,0 +1,146 @@ + + + + + +Stan: stan::gm::validate_sample::result< T1, T2, T3 > Struct Template Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::gm::validate_sample::result< T1, T2, T3 > Struct Template Reference
+
+
+ +

#include <statement_grammar_def.hpp>

+ + + + +

+Public Types

typedef bool type
 
+

Detailed Description

+

template<typename T1, typename T2, typename T3>
+struct stan::gm::validate_sample::result< T1, T2, T3 >

+ + +

Definition at line 162 of file statement_grammar_def.hpp.

+

Member Typedef Documentation

+ +
+
+
+template<typename T1 , typename T2 , typename T3 >
+ + + + +
typedef bool stan::gm::validate_sample::result< T1, T2, T3 >::type
+
+ +

Definition at line 162 of file statement_grammar_def.hpp.

+ +
+
+
The documentation for this struct was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1validate__transformed__params__visgen-members.html b/doc/api/html/structstan_1_1gm_1_1validate__transformed__params__visgen-members.html new file mode 100644 index 00000000000..31c638ef736 --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1validate__transformed__params__visgen-members.html @@ -0,0 +1,131 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::gm::validate_transformed_params_visgen Member List
+
+
+ +

This is the complete list of members for stan::gm::validate_transformed_params_visgen, including all inherited members.

+ + + + + + + + + + + + + + + + + + + + +
indents_stan::gm::validate_transformed_params_visgen
o_stan::gm::visgen
operator()(nil const &) const stan::gm::validate_transformed_params_visgeninline
operator()(int_var_decl const &x) const stan::gm::validate_transformed_params_visgeninline
operator()(double_var_decl const &x) const stan::gm::validate_transformed_params_visgeninline
operator()(vector_var_decl const &x) const stan::gm::validate_transformed_params_visgeninline
operator()(unit_vector_var_decl const &x) const stan::gm::validate_transformed_params_visgeninline
operator()(simplex_var_decl const &x) const stan::gm::validate_transformed_params_visgeninline
operator()(ordered_var_decl const &x) const stan::gm::validate_transformed_params_visgeninline
operator()(positive_ordered_var_decl const &x) const stan::gm::validate_transformed_params_visgeninline
operator()(row_vector_var_decl const &x) const stan::gm::validate_transformed_params_visgeninline
operator()(matrix_var_decl const &x) const stan::gm::validate_transformed_params_visgeninline
operator()(cholesky_factor_var_decl const &x) const stan::gm::validate_transformed_params_visgeninline
operator()(cov_matrix_var_decl const &x) const stan::gm::validate_transformed_params_visgeninline
operator()(corr_matrix_var_decl const &x) const stan::gm::validate_transformed_params_visgeninline
result_type typedefstan::gm::visgen
validate_array(const std::string &name, const std::vector< expression > &dims, size_t matrix_dims) const stan::gm::validate_transformed_params_visgeninline
validate_transformed_params_visgen(int indents, std::ostream &o)stan::gm::validate_transformed_params_visgeninline
visgen(std::ostream &o)stan::gm::visgeninline
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1validate__transformed__params__visgen.html b/doc/api/html/structstan_1_1gm_1_1validate__transformed__params__visgen.html new file mode 100644 index 00000000000..22816677f42 --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1validate__transformed__params__visgen.html @@ -0,0 +1,614 @@ + + + + + +Stan: stan::gm::validate_transformed_params_visgen Struct Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::gm::validate_transformed_params_visgen Struct Reference
+
+
+ +

#include <generator.hpp>

+
+Inheritance diagram for stan::gm::validate_transformed_params_visgen:
+
+
+ + +stan::gm::visgen + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 validate_transformed_params_visgen (int indents, std::ostream &o)
 
void operator() (nil const &) const
 
void operator() (int_var_decl const &x) const
 
void operator() (double_var_decl const &x) const
 
void operator() (vector_var_decl const &x) const
 
void operator() (unit_vector_var_decl const &x) const
 
void operator() (simplex_var_decl const &x) const
 
void operator() (ordered_var_decl const &x) const
 
void operator() (positive_ordered_var_decl const &x) const
 
void operator() (row_vector_var_decl const &x) const
 
void operator() (matrix_var_decl const &x) const
 
void operator() (cholesky_factor_var_decl const &x) const
 
void operator() (cov_matrix_var_decl const &x) const
 
void operator() (corr_matrix_var_decl const &x) const
 
void validate_array (const std::string &name, const std::vector< expression > &dims, size_t matrix_dims) const
 
- Public Member Functions inherited from stan::gm::visgen
 visgen (std::ostream &o)
 
+ + + + + + +

+Public Attributes

int indents_
 
- Public Attributes inherited from stan::gm::visgen
std::ostream & o_
 
+ + + + +

+Additional Inherited Members

- Public Types inherited from stan::gm::visgen
typedef void result_type
 
+

Detailed Description

+
+

Definition at line 1266 of file generator.hpp.

+

Constructor & Destructor Documentation

+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
stan::gm::validate_transformed_params_visgen::validate_transformed_params_visgen (int indents,
std::ostream & o 
)
+
+inline
+
+ +

Definition at line 1268 of file generator.hpp.

+ +
+
+

Member Function Documentation

+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::validate_transformed_params_visgen::operator() (nil const & ) const
+
+inline
+
+ +

Definition at line 1273 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::validate_transformed_params_visgen::operator() (int_var_decl const & x) const
+
+inline
+
+ +

Definition at line 1274 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::validate_transformed_params_visgen::operator() (double_var_decl const & x) const
+
+inline
+
+ +

Definition at line 1278 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::validate_transformed_params_visgen::operator() (vector_var_decl const & x) const
+
+inline
+
+ +

Definition at line 1282 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::validate_transformed_params_visgen::operator() (unit_vector_var_decl const & x) const
+
+inline
+
+ +

Definition at line 1287 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::validate_transformed_params_visgen::operator() (simplex_var_decl const & x) const
+
+inline
+
+ +

Definition at line 1292 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::validate_transformed_params_visgen::operator() (ordered_var_decl const & x) const
+
+inline
+
+ +

Definition at line 1297 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::validate_transformed_params_visgen::operator() (positive_ordered_var_decl const & x) const
+
+inline
+
+ +

Definition at line 1302 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::validate_transformed_params_visgen::operator() (row_vector_var_decl const & x) const
+
+inline
+
+ +

Definition at line 1307 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::validate_transformed_params_visgen::operator() (matrix_var_decl const & x) const
+
+inline
+
+ +

Definition at line 1312 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::validate_transformed_params_visgen::operator() (cholesky_factor_var_decl const & x) const
+
+inline
+
+ +

Definition at line 1318 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::validate_transformed_params_visgen::operator() (cov_matrix_var_decl const & x) const
+
+inline
+
+ +

Definition at line 1324 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::validate_transformed_params_visgen::operator() (corr_matrix_var_decl const & x) const
+
+inline
+
+ +

Definition at line 1330 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
void stan::gm::validate_transformed_params_visgen::validate_array (const std::string & name,
const std::vector< expression > & dims,
size_t matrix_dims 
) const
+
+inline
+
+ +

Definition at line 1336 of file generator.hpp.

+ +
+
+

Member Data Documentation

+ +
+
+ + + + +
int stan::gm::validate_transformed_params_visgen::indents_
+
+ +

Definition at line 1267 of file generator.hpp.

+ +
+
+
The documentation for this struct was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1validate__transformed__params__visgen.png b/doc/api/html/structstan_1_1gm_1_1validate__transformed__params__visgen.png new file mode 100644 index 0000000000000000000000000000000000000000..fdfc42fb20eed2ea2184040a28c79b6356082f83 GIT binary patch literal 919 zcmeAS@N?(olHy`uVBq!ia0y~yU=#$h12~w0B&X%ZgFs3mz$e7@|Ns9$=8HF9OZyK^ z0J6aNz<~p-op6+pnuqa=j8_jkD#jBNgXP|LK9QGlqUIjx=ebh>e8iR z`{MqWiA$FM-RPq7Qg`1h56R3aUz1Zl|6N^I`8(}b$B$>?!M9h2nm4G-ecRpX6CAB( z!Q3@#&w@_f+hJl3lk`4)b;-JVrE=?TMZe4U%&M1hDtIpcEgHHx=U1}JGObmioAdg9 zGfXPkwcbARc2q@!$L-DECNAmz^Qw4>V$$=jsZkSG{oA{0=KEQtUth-tEpdCexcd5^ zzoE*Wx9!Y!ck9P^hQ3!R%GtaAzUZW;d%N71IZaq%E1#|Ex%|gnprZLtRg_LnaZ#BG z^_Ns9&tZclubDpx{$uh`7i`$Kf1ePiz!aB;6@ng0jH@PbG+0+MEK^~cF^MC=OQ}J# zlM0;kia}nQFFyn@Tq5meBEo0-*N)0qCo>ias!cZc2{lkcx=u(jV?;~q4}Bjx#e z=8yeP>JGN8bIH>#+15mwmr;S^8*Ut~%!g+h`71@eMCG zu=Ot9qkKs=V@;)Y-QnQJTOZc+msH%^eQw()71Q#^azFDvsbzF8?!ED5rdrgRS*h}} z%9~2!tZ&THeZOq~t;&i?vvzwgFUiEg{`J*|H^0lz#$JfK+Vb@EUDLa(7;k*LSjM3L zLGtj+V-{{lw%Z+O{%3cf<|ISiL)A+UTko9MW4W|>;rW@o2O{gLY@&m$_@p1y7YH%> rc(NF%3Lco^!f@GR$&{c=Uw<-->szIlvwgG$<{}19S3j3^P6 + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::gm::validate_var_decl_visgen Member List
+
+
+ +

This is the complete list of members for stan::gm::validate_var_decl_visgen, including all inherited members.

+ + + + + + + + + + + + + + + + + + + + + + + + +
basic_validate(T const &x) const stan::gm::validate_var_decl_visgeninline
generate_begin_for_dims(const std::vector< expression > &dims) const stan::gm::validate_var_decl_visgeninline
generate_end_for_dims(size_t dims_size) const stan::gm::validate_var_decl_visgeninline
generate_loop_var(const std::string &name, size_t dims_size) const stan::gm::validate_var_decl_visgeninline
indents_stan::gm::validate_var_decl_visgen
nonbasic_validate(const T &x, const std::string &type_name) const stan::gm::validate_var_decl_visgeninline
o_stan::gm::visgen
operator()(nil const &) const stan::gm::validate_var_decl_visgeninline
operator()(int_var_decl const &x) const stan::gm::validate_var_decl_visgeninline
operator()(double_var_decl const &x) const stan::gm::validate_var_decl_visgeninline
operator()(vector_var_decl const &x) const stan::gm::validate_var_decl_visgeninline
operator()(row_vector_var_decl const &x) const stan::gm::validate_var_decl_visgeninline
operator()(matrix_var_decl const &x) const stan::gm::validate_var_decl_visgeninline
operator()(unit_vector_var_decl const &x) const stan::gm::validate_var_decl_visgeninline
operator()(simplex_var_decl const &x) const stan::gm::validate_var_decl_visgeninline
operator()(ordered_var_decl const &x) const stan::gm::validate_var_decl_visgeninline
operator()(positive_ordered_var_decl const &x) const stan::gm::validate_var_decl_visgeninline
operator()(cholesky_factor_var_decl const &x) const stan::gm::validate_var_decl_visgeninline
operator()(cov_matrix_var_decl const &x) const stan::gm::validate_var_decl_visgeninline
operator()(corr_matrix_var_decl const &x) const stan::gm::validate_var_decl_visgeninline
result_type typedefstan::gm::visgen
validate_var_decl_visgen(int indents, std::ostream &o)stan::gm::validate_var_decl_visgeninline
visgen(std::ostream &o)stan::gm::visgeninline
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1validate__var__decl__visgen.html b/doc/api/html/structstan_1_1gm_1_1validate__var__decl__visgen.html new file mode 100644 index 00000000000..ac407dcbc75 --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1validate__var__decl__visgen.html @@ -0,0 +1,736 @@ + + + + + +Stan: stan::gm::validate_var_decl_visgen Struct Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::gm::validate_var_decl_visgen Struct Reference
+
+
+ +

#include <generator.hpp>

+
+Inheritance diagram for stan::gm::validate_var_decl_visgen:
+
+
+ + +stan::gm::visgen + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 validate_var_decl_visgen (int indents, std::ostream &o)
 
void generate_begin_for_dims (const std::vector< expression > &dims) const
 
void generate_end_for_dims (size_t dims_size) const
 
void generate_loop_var (const std::string &name, size_t dims_size) const
 
void operator() (nil const &) const
 
template<typename T >
void basic_validate (T const &x) const
 
void operator() (int_var_decl const &x) const
 
void operator() (double_var_decl const &x) const
 
void operator() (vector_var_decl const &x) const
 
void operator() (row_vector_var_decl const &x) const
 
void operator() (matrix_var_decl const &x) const
 
template<typename T >
void nonbasic_validate (const T &x, const std::string &type_name) const
 
void operator() (unit_vector_var_decl const &x) const
 
void operator() (simplex_var_decl const &x) const
 
void operator() (ordered_var_decl const &x) const
 
void operator() (positive_ordered_var_decl const &x) const
 
void operator() (cholesky_factor_var_decl const &x) const
 
void operator() (cov_matrix_var_decl const &x) const
 
void operator() (corr_matrix_var_decl const &x) const
 
- Public Member Functions inherited from stan::gm::visgen
 visgen (std::ostream &o)
 
+ + + + + + +

+Public Attributes

int indents_
 
- Public Attributes inherited from stan::gm::visgen
std::ostream & o_
 
+ + + + +

+Additional Inherited Members

- Public Types inherited from stan::gm::visgen
typedef void result_type
 
+

Detailed Description

+
+

Definition at line 729 of file generator.hpp.

+

Constructor & Destructor Documentation

+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
stan::gm::validate_var_decl_visgen::validate_var_decl_visgen (int indents,
std::ostream & o 
)
+
+inline
+
+ +

Definition at line 731 of file generator.hpp.

+ +
+
+

Member Function Documentation

+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + +
void stan::gm::validate_var_decl_visgen::basic_validate (T const & x) const
+
+inline
+
+ +

Definition at line 763 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::validate_var_decl_visgen::generate_begin_for_dims (const std::vector< expression > & dims) const
+
+inline
+
+ +

Definition at line 736 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::validate_var_decl_visgen::generate_end_for_dims (size_t dims_size) const
+
+inline
+
+ +

Definition at line 748 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
void stan::gm::validate_var_decl_visgen::generate_loop_var (const std::string & name,
size_t dims_size 
) const
+
+inline
+
+ +

Definition at line 755 of file generator.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
void stan::gm::validate_var_decl_visgen::nonbasic_validate (const T & x,
const std::string & type_name 
) const
+
+inline
+
+ +

Definition at line 815 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::validate_var_decl_visgen::operator() (nil const & ) const
+
+inline
+
+ +

Definition at line 761 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::validate_var_decl_visgen::operator() (int_var_decl const & x) const
+
+inline
+
+ +

Definition at line 799 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::validate_var_decl_visgen::operator() (double_var_decl const & x) const
+
+inline
+
+ +

Definition at line 802 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::validate_var_decl_visgen::operator() (vector_var_decl const & x) const
+
+inline
+
+ +

Definition at line 805 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::validate_var_decl_visgen::operator() (row_vector_var_decl const & x) const
+
+inline
+
+ +

Definition at line 808 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::validate_var_decl_visgen::operator() (matrix_var_decl const & x) const
+
+inline
+
+ +

Definition at line 811 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::validate_var_decl_visgen::operator() (unit_vector_var_decl const & x) const
+
+inline
+
+ +

Definition at line 826 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::validate_var_decl_visgen::operator() (simplex_var_decl const & x) const
+
+inline
+
+ +

Definition at line 829 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::validate_var_decl_visgen::operator() (ordered_var_decl const & x) const
+
+inline
+
+ +

Definition at line 832 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::validate_var_decl_visgen::operator() (positive_ordered_var_decl const & x) const
+
+inline
+
+ +

Definition at line 835 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::validate_var_decl_visgen::operator() (cholesky_factor_var_decl const & x) const
+
+inline
+
+ +

Definition at line 838 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::validate_var_decl_visgen::operator() (cov_matrix_var_decl const & x) const
+
+inline
+
+ +

Definition at line 841 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::validate_var_decl_visgen::operator() (corr_matrix_var_decl const & x) const
+
+inline
+
+ +

Definition at line 844 of file generator.hpp.

+ +
+
+

Member Data Documentation

+ +
+
+ + + + +
int stan::gm::validate_var_decl_visgen::indents_
+
+ +

Definition at line 730 of file generator.hpp.

+ +
+
+
The documentation for this struct was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1validate__var__decl__visgen.png b/doc/api/html/structstan_1_1gm_1_1validate__var__decl__visgen.png new file mode 100644 index 0000000000000000000000000000000000000000..9667fcb5bf370a20519cb2cd0424c949c4adf4de GIT binary patch literal 760 zcmeAS@N?(olHy`uVBq!ia0vp^7l1f`gBeK1pW>beq$C1-LR|m<{|{uoc=NTi|Ih>= z3ycpOIKbL@M;^%KC<*clW&kPzfvcxNj2IZ0+C5zyLn;{G&b_#4wE~Z;`0bhh{;S7F z2XHL7n&rQf$2iZQf5HS;r<&AR%T}rzdIs4`IZV2;iEV<))-}-$b5!PDQ8%0P#m}C3 z(vtiaS`%g`-uX4_VqE>BC&kD12mLa5aQ#}YPo{NQvOV!On09B@tV@k5bFY3~HbMLn=Yl&% zw>&PT@A}P`>hR2Ord4TB%`EMm7oJ|*+#h?!^XB9|t76|hS5^1CZ6$W6SAJ7IldSdI z)0Pvb*usfmK3g%Vt%!*|8m=tx5$He#Ym5B`hT=*O2U6H=< z_@ZQBzJsxUyvtq2UOn~;+t>sgPD?p3=w>r8Zdt>~a$yr8fe)Q?ir1+>WcYQFfhi-B znPWj}s)P88w95&ybLW(V>(tvbB$Q}hIH%vR{g*-=!(tAT@(<6=HTTRD?zFyt@38jW zcS{ol{&gmI?q1btdG3nA$4uVCd_O;_+_<_le(w#IeP2FCowzi0X6c44-CBifH?IAC zy+*9tCmc<7=>C|MaIQ}B z^Zr$8rVDmd+vQ)1($jBv)mp-^Vup^_x*eNWp5nQwBi1H8bIp`HdJ}w|Znd7fqnJHu z=dIn&7YmZ-ubsr5n`z5`dAH1x^HmAmj@O>nyf+k0_su!5J66xOGiv(kX)*`4>D4S^ z*ta0d<#@xV%S;wauRqSIz9aP_CCO5%HZkh=d#Wzp$Py030*n> literal 0 HcmV?d00001 diff --git a/doc/api/html/structstan_1_1gm_1_1var__decl-members.html b/doc/api/html/structstan_1_1gm_1_1var__decl-members.html new file mode 100644 index 00000000000..84325794cb6 --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1var__decl-members.html @@ -0,0 +1,130 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::gm::var_decl Member List
+
+
+ +

This is the complete list of members for stan::gm::var_decl, including all inherited members.

+ + + + + + + + + + + + + + + + + + + +
decl_stan::gm::var_decl
name() const stan::gm::var_decl
var_decl()stan::gm::var_decl
var_decl(const var_decl_t &decl)stan::gm::var_decl
var_decl(const nil &decl)stan::gm::var_decl
var_decl(const int_var_decl &decl)stan::gm::var_decl
var_decl(const double_var_decl &decl)stan::gm::var_decl
var_decl(const vector_var_decl &decl)stan::gm::var_decl
var_decl(const row_vector_var_decl &decl)stan::gm::var_decl
var_decl(const matrix_var_decl &decl)stan::gm::var_decl
var_decl(const simplex_var_decl &decl)stan::gm::var_decl
var_decl(const unit_vector_var_decl &decl)stan::gm::var_decl
var_decl(const ordered_var_decl &decl)stan::gm::var_decl
var_decl(const positive_ordered_var_decl &decl)stan::gm::var_decl
var_decl(const cholesky_factor_var_decl &decl)stan::gm::var_decl
var_decl(const cov_matrix_var_decl &decl)stan::gm::var_decl
var_decl(const corr_matrix_var_decl &decl)stan::gm::var_decl
var_decl_t typedefstan::gm::var_decl
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1var__decl.html b/doc/api/html/structstan_1_1gm_1_1var__decl.html new file mode 100644 index 00000000000..9277ce1a0d5 --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1var__decl.html @@ -0,0 +1,513 @@ + + + + + +Stan: stan::gm::var_decl Struct Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::gm::var_decl Struct Reference
+
+
+ +

#include <ast.hpp>

+ + + + +

+Public Types

typedef boost::variant
+< boost::recursive_wrapper
+< nil >
+, boost::recursive_wrapper
+< int_var_decl >
+, boost::recursive_wrapper
+< double_var_decl >
+, boost::recursive_wrapper
+< vector_var_decl >
+, boost::recursive_wrapper
+< row_vector_var_decl >
+, boost::recursive_wrapper
+< matrix_var_decl >
+, boost::recursive_wrapper
+< simplex_var_decl >
+, boost::recursive_wrapper
+< unit_vector_var_decl >
+, boost::recursive_wrapper
+< ordered_var_decl >
+, boost::recursive_wrapper
+< positive_ordered_var_decl >
+, boost::recursive_wrapper
+< cholesky_factor_var_decl >
+, boost::recursive_wrapper
+< cov_matrix_var_decl >
+, boost::recursive_wrapper
+< corr_matrix_var_decl > > 
var_decl_t
 
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 var_decl ()
 
 var_decl (const var_decl_t &decl)
 
 var_decl (const nil &decl)
 
 var_decl (const int_var_decl &decl)
 
 var_decl (const double_var_decl &decl)
 
 var_decl (const vector_var_decl &decl)
 
 var_decl (const row_vector_var_decl &decl)
 
 var_decl (const matrix_var_decl &decl)
 
 var_decl (const simplex_var_decl &decl)
 
 var_decl (const unit_vector_var_decl &decl)
 
 var_decl (const ordered_var_decl &decl)
 
 var_decl (const positive_ordered_var_decl &decl)
 
 var_decl (const cholesky_factor_var_decl &decl)
 
 var_decl (const cov_matrix_var_decl &decl)
 
 var_decl (const corr_matrix_var_decl &decl)
 
std::string name () const
 
+ + + +

+Public Attributes

var_decl_t decl_
 
+

Detailed Description

+
+

Definition at line 534 of file ast.hpp.

+

Member Typedef Documentation

+ +
+
+ + + + +
typedef boost::variant<boost::recursive_wrapper<nil>, boost::recursive_wrapper<int_var_decl>, boost::recursive_wrapper<double_var_decl>, boost::recursive_wrapper<vector_var_decl>, boost::recursive_wrapper<row_vector_var_decl>, boost::recursive_wrapper<matrix_var_decl>, boost::recursive_wrapper<simplex_var_decl>, boost::recursive_wrapper<unit_vector_var_decl>, boost::recursive_wrapper<ordered_var_decl>, boost::recursive_wrapper<positive_ordered_var_decl>, boost::recursive_wrapper<cholesky_factor_var_decl>, boost::recursive_wrapper<cov_matrix_var_decl>, boost::recursive_wrapper<corr_matrix_var_decl> > stan::gm::var_decl::var_decl_t
+
+ +

Definition at line 548 of file ast.hpp.

+ +
+
+

Constructor & Destructor Documentation

+ +
+
+ + + + + + + +
stan::gm::var_decl::var_decl ()
+
+ +

Definition at line 897 of file ast_def.cpp.

+ +
+
+ +
+
+ + + + + + + + +
stan::gm::var_decl::var_decl (const var_decl_tdecl)
+
+ +

Definition at line 896 of file ast_def.cpp.

+ +
+
+ +
+
+ + + + + + + + +
stan::gm::var_decl::var_decl (const nildecl)
+
+ +

Definition at line 898 of file ast_def.cpp.

+ +
+
+ +
+
+ + + + + + + + +
stan::gm::var_decl::var_decl (const int_var_decldecl)
+
+ +

Definition at line 899 of file ast_def.cpp.

+ +
+
+ +
+
+ + + + + + + + +
stan::gm::var_decl::var_decl (const double_var_decldecl)
+
+ +

Definition at line 900 of file ast_def.cpp.

+ +
+
+ +
+
+ + + + + + + + +
stan::gm::var_decl::var_decl (const vector_var_decldecl)
+
+ +

Definition at line 901 of file ast_def.cpp.

+ +
+
+ +
+
+ + + + + + + + +
stan::gm::var_decl::var_decl (const row_vector_var_decldecl)
+
+ +

Definition at line 902 of file ast_def.cpp.

+ +
+
+ +
+
+ + + + + + + + +
stan::gm::var_decl::var_decl (const matrix_var_decldecl)
+
+ +

Definition at line 903 of file ast_def.cpp.

+ +
+
+ +
+
+ + + + + + + + +
stan::gm::var_decl::var_decl (const simplex_var_decldecl)
+
+ +

Definition at line 905 of file ast_def.cpp.

+ +
+
+ +
+
+ + + + + + + + +
stan::gm::var_decl::var_decl (const unit_vector_var_decldecl)
+
+ +

Definition at line 904 of file ast_def.cpp.

+ +
+
+ +
+
+ + + + + + + + +
stan::gm::var_decl::var_decl (const ordered_var_decldecl)
+
+ +

Definition at line 906 of file ast_def.cpp.

+ +
+
+ +
+
+ + + + + + + + +
stan::gm::var_decl::var_decl (const positive_ordered_var_decldecl)
+
+ +

Definition at line 907 of file ast_def.cpp.

+ +
+
+ +
+
+ + + + + + + + +
stan::gm::var_decl::var_decl (const cholesky_factor_var_decldecl)
+
+ +

Definition at line 908 of file ast_def.cpp.

+ +
+
+ +
+
+ + + + + + + + +
stan::gm::var_decl::var_decl (const cov_matrix_var_decldecl)
+
+ +

Definition at line 909 of file ast_def.cpp.

+ +
+
+ +
+
+ + + + + + + + +
stan::gm::var_decl::var_decl (const corr_matrix_var_decldecl)
+
+ +

Definition at line 910 of file ast_def.cpp.

+ +
+
+

Member Function Documentation

+ +
+
+ + + + + + + +
std::string stan::gm::var_decl::name () const
+
+ +

Definition at line 912 of file ast_def.cpp.

+ +
+
+

Member Data Documentation

+ +
+
+ + + + +
var_decl_t stan::gm::var_decl::decl_
+
+ +

Definition at line 550 of file ast.hpp.

+ +
+
+
The documentation for this struct was generated from the following files: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1var__decls__grammar-members.html b/doc/api/html/structstan_1_1gm_1_1var__decls__grammar-members.html new file mode 100644 index 00000000000..4f81da94be2 --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1var__decls__grammar-members.html @@ -0,0 +1,138 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::gm::var_decls_grammar< Iterator > Member List
+
+
+ +

This is the complete list of members for stan::gm::var_decls_grammar< Iterator >, including all inherited members.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + +
cholesky_factor_decl_rstan::gm::var_decls_grammar< Iterator >
corr_matrix_decl_rstan::gm::var_decls_grammar< Iterator >
cov_matrix_decl_rstan::gm::var_decls_grammar< Iterator >
dims_rstan::gm::var_decls_grammar< Iterator >
double_decl_rstan::gm::var_decls_grammar< Iterator >
error_msgs_stan::gm::var_decls_grammar< Iterator >
expression07_gstan::gm::var_decls_grammar< Iterator >
expression_gstan::gm::var_decls_grammar< Iterator >
identifier_name_rstan::gm::var_decls_grammar< Iterator >
identifier_rstan::gm::var_decls_grammar< Iterator >
int_decl_rstan::gm::var_decls_grammar< Iterator >
matrix_decl_rstan::gm::var_decls_grammar< Iterator >
opt_dims_rstan::gm::var_decls_grammar< Iterator >
ordered_decl_rstan::gm::var_decls_grammar< Iterator >
positive_ordered_decl_rstan::gm::var_decls_grammar< Iterator >
range_brackets_double_rstan::gm::var_decls_grammar< Iterator >
range_brackets_int_rstan::gm::var_decls_grammar< Iterator >
range_rstan::gm::var_decls_grammar< Iterator >
row_vector_decl_rstan::gm::var_decls_grammar< Iterator >
simplex_decl_rstan::gm::var_decls_grammar< Iterator >
unit_vector_decl_rstan::gm::var_decls_grammar< Iterator >
var_decl_rstan::gm::var_decls_grammar< Iterator >
var_decls_grammar(variable_map &var_map, std::stringstream &error_msgs)stan::gm::var_decls_grammar< Iterator >
var_decls_rstan::gm::var_decls_grammar< Iterator >
var_map_stan::gm::var_decls_grammar< Iterator >
vector_decl_rstan::gm::var_decls_grammar< Iterator >
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1var__decls__grammar.html b/doc/api/html/structstan_1_1gm_1_1var__decls__grammar.html new file mode 100644 index 00000000000..a80a4cd73b4 --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1var__decls__grammar.html @@ -0,0 +1,677 @@ + + + + + +Stan: stan::gm::var_decls_grammar< Iterator > Struct Template Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::gm::var_decls_grammar< Iterator > Struct Template Reference
+
+
+ +

#include <var_decls_grammar.hpp>

+
+Inheritance diagram for stan::gm::var_decls_grammar< Iterator >:
+
+
+ + + +
+ + + + +

+Public Member Functions

 var_decls_grammar (variable_map &var_map, std::stringstream &error_msgs)
 
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Attributes

variable_mapvar_map_
 
std::stringstream & error_msgs_
 
expression_grammar< Iterator > expression_g
 
expression_grammar< Iterator > expression07_g
 
boost::spirit::qi::rule
+< Iterator,
+cholesky_factor_var_decl(var_origin),
+whitespace_grammar< Iterator > > 
cholesky_factor_decl_r
 
boost::spirit::qi::rule
+< Iterator,
+corr_matrix_var_decl(var_origin),
+whitespace_grammar< Iterator > > 
corr_matrix_decl_r
 
boost::spirit::qi::rule
+< Iterator,
+cov_matrix_var_decl(var_origin),
+whitespace_grammar< Iterator > > 
cov_matrix_decl_r
 
boost::spirit::qi::rule
+< Iterator, std::vector
+< expression >var_origin),
+whitespace_grammar< Iterator > > 
dims_r
 
boost::spirit::qi::rule
+< Iterator, double_var_decl(var_origin),
+whitespace_grammar< Iterator > > 
double_decl_r
 
boost::spirit::qi::rule
+< Iterator, std::string(),
+whitespace_grammar< Iterator > > 
identifier_r
 
boost::spirit::qi::rule
+< Iterator, std::string(),
+whitespace_grammar< Iterator > > 
identifier_name_r
 
boost::spirit::qi::rule
+< Iterator, int_var_decl(var_origin),
+whitespace_grammar< Iterator > > 
int_decl_r
 
boost::spirit::qi::rule
+< Iterator, matrix_var_decl(var_origin),
+whitespace_grammar< Iterator > > 
matrix_decl_r
 
boost::spirit::qi::rule
+< Iterator, std::vector
+< expression >var_origin),
+whitespace_grammar< Iterator > > 
opt_dims_r
 
boost::spirit::qi::rule
+< Iterator, ordered_var_decl(var_origin),
+whitespace_grammar< Iterator > > 
ordered_decl_r
 
boost::spirit::qi::rule
+< Iterator,
+positive_ordered_var_decl(var_origin),
+whitespace_grammar< Iterator > > 
positive_ordered_decl_r
 
boost::spirit::qi::rule
+< Iterator, range(var_origin),
+whitespace_grammar< Iterator > > 
range_brackets_double_r
 
boost::spirit::qi::rule
+< Iterator, range(var_origin),
+whitespace_grammar< Iterator > > 
range_brackets_int_r
 
boost::spirit::qi::rule
+< Iterator, range(var_origin),
+whitespace_grammar< Iterator > > 
range_r
 
boost::spirit::qi::rule
+< Iterator,
+row_vector_var_decl(var_origin),
+whitespace_grammar< Iterator > > 
row_vector_decl_r
 
boost::spirit::qi::rule
+< Iterator,
+unit_vector_var_decl(var_origin),
+whitespace_grammar< Iterator > > 
unit_vector_decl_r
 
boost::spirit::qi::rule
+< Iterator, simplex_var_decl(var_origin),
+whitespace_grammar< Iterator > > 
simplex_decl_r
 
boost::spirit::qi::rule
+< Iterator, vector_var_decl(var_origin),
+whitespace_grammar< Iterator > > 
vector_decl_r
 
boost::spirit::qi::rule
+< Iterator,
+boost::spirit::qi::locals
+< bool >, var_decl(bool,
+var_origin),
+whitespace_grammar< Iterator > > 
var_decl_r
 
boost::spirit::qi::rule
+< Iterator,
+boost::spirit::qi::locals
+< bool >, std::vector
+< var_decl >bool, var_origin),
+whitespace_grammar< Iterator > > 
var_decls_r
 
+

Detailed Description

+

template<typename Iterator>
+struct stan::gm::var_decls_grammar< Iterator >

+ + +

Definition at line 19 of file var_decls_grammar.hpp.

+

Constructor & Destructor Documentation

+ +
+
+
+template<typename Iterator >
+ + + + + + + + + + + + + + + + + + +
stan::gm::var_decls_grammar< Iterator >::var_decls_grammar (variable_mapvar_map,
std::stringstream & error_msgs 
)
+
+ +
+
+

Member Data Documentation

+ +
+
+
+template<typename Iterator >
+ + + + +
boost::spirit::qi::rule<Iterator, cholesky_factor_var_decl(var_origin), whitespace_grammar<Iterator> > stan::gm::var_decls_grammar< Iterator >::cholesky_factor_decl_r
+
+ +

Definition at line 42 of file var_decls_grammar.hpp.

+ +
+
+ +
+
+
+template<typename Iterator >
+ + + + +
boost::spirit::qi::rule<Iterator, corr_matrix_var_decl(var_origin), whitespace_grammar<Iterator> > stan::gm::var_decls_grammar< Iterator >::corr_matrix_decl_r
+
+ +

Definition at line 47 of file var_decls_grammar.hpp.

+ +
+
+ +
+
+
+template<typename Iterator >
+ + + + +
boost::spirit::qi::rule<Iterator, cov_matrix_var_decl(var_origin), whitespace_grammar<Iterator> > stan::gm::var_decls_grammar< Iterator >::cov_matrix_decl_r
+
+ +

Definition at line 52 of file var_decls_grammar.hpp.

+ +
+
+ +
+
+
+template<typename Iterator >
+ + + + +
boost::spirit::qi::rule<Iterator, std::vector<expression>var_origin), whitespace_grammar<Iterator> > stan::gm::var_decls_grammar< Iterator >::dims_r
+
+ +

Definition at line 57 of file var_decls_grammar.hpp.

+ +
+
+ +
+
+
+template<typename Iterator >
+ + + + +
boost::spirit::qi::rule<Iterator, double_var_decl(var_origin), whitespace_grammar<Iterator> > stan::gm::var_decls_grammar< Iterator >::double_decl_r
+
+ +

Definition at line 62 of file var_decls_grammar.hpp.

+ +
+
+ +
+
+
+template<typename Iterator >
+ + + + +
std::stringstream& stan::gm::var_decls_grammar< Iterator >::error_msgs_
+
+ +

Definition at line 30 of file var_decls_grammar.hpp.

+ +
+
+ +
+
+
+template<typename Iterator >
+ + + + +
expression_grammar<Iterator> stan::gm::var_decls_grammar< Iterator >::expression07_g
+
+ +

Definition at line 35 of file var_decls_grammar.hpp.

+ +
+
+ +
+
+
+template<typename Iterator >
+ + + + +
expression_grammar<Iterator> stan::gm::var_decls_grammar< Iterator >::expression_g
+
+ +

Definition at line 33 of file var_decls_grammar.hpp.

+ +
+
+ +
+
+
+template<typename Iterator >
+ + + + +
boost::spirit::qi::rule<Iterator, std::string(), whitespace_grammar<Iterator> > stan::gm::var_decls_grammar< Iterator >::identifier_name_r
+
+ +

Definition at line 72 of file var_decls_grammar.hpp.

+ +
+
+ +
+
+
+template<typename Iterator >
+ + + + +
boost::spirit::qi::rule<Iterator, std::string(), whitespace_grammar<Iterator> > stan::gm::var_decls_grammar< Iterator >::identifier_r
+
+ +

Definition at line 67 of file var_decls_grammar.hpp.

+ +
+
+ +
+
+
+template<typename Iterator >
+ + + + +
boost::spirit::qi::rule<Iterator, int_var_decl(var_origin), whitespace_grammar<Iterator> > stan::gm::var_decls_grammar< Iterator >::int_decl_r
+
+ +

Definition at line 77 of file var_decls_grammar.hpp.

+ +
+
+ +
+
+
+template<typename Iterator >
+ + + + +
boost::spirit::qi::rule<Iterator, matrix_var_decl(var_origin), whitespace_grammar<Iterator> > stan::gm::var_decls_grammar< Iterator >::matrix_decl_r
+
+ +

Definition at line 82 of file var_decls_grammar.hpp.

+ +
+
+ +
+
+
+template<typename Iterator >
+ + + + +
boost::spirit::qi::rule<Iterator, std::vector<expression>var_origin), whitespace_grammar<Iterator> > stan::gm::var_decls_grammar< Iterator >::opt_dims_r
+
+ +

Definition at line 87 of file var_decls_grammar.hpp.

+ +
+
+ +
+
+
+template<typename Iterator >
+ + + + +
boost::spirit::qi::rule<Iterator, ordered_var_decl(var_origin), whitespace_grammar<Iterator> > stan::gm::var_decls_grammar< Iterator >::ordered_decl_r
+
+ +

Definition at line 92 of file var_decls_grammar.hpp.

+ +
+
+ +
+
+
+template<typename Iterator >
+ + + + +
boost::spirit::qi::rule<Iterator, positive_ordered_var_decl(var_origin), whitespace_grammar<Iterator> > stan::gm::var_decls_grammar< Iterator >::positive_ordered_decl_r
+
+ +

Definition at line 97 of file var_decls_grammar.hpp.

+ +
+
+ +
+
+
+template<typename Iterator >
+ + + + +
boost::spirit::qi::rule<Iterator, range(var_origin), whitespace_grammar<Iterator> > stan::gm::var_decls_grammar< Iterator >::range_brackets_double_r
+
+ +

Definition at line 102 of file var_decls_grammar.hpp.

+ +
+
+ +
+
+
+template<typename Iterator >
+ + + + +
boost::spirit::qi::rule<Iterator, range(var_origin), whitespace_grammar<Iterator> > stan::gm::var_decls_grammar< Iterator >::range_brackets_int_r
+
+ +

Definition at line 107 of file var_decls_grammar.hpp.

+ +
+
+ +
+
+
+template<typename Iterator >
+ + + + +
boost::spirit::qi::rule<Iterator, range(var_origin), whitespace_grammar<Iterator> > stan::gm::var_decls_grammar< Iterator >::range_r
+
+ +

Definition at line 112 of file var_decls_grammar.hpp.

+ +
+
+ +
+
+
+template<typename Iterator >
+ + + + +
boost::spirit::qi::rule<Iterator, row_vector_var_decl(var_origin), whitespace_grammar<Iterator> > stan::gm::var_decls_grammar< Iterator >::row_vector_decl_r
+
+ +

Definition at line 117 of file var_decls_grammar.hpp.

+ +
+
+ +
+
+
+template<typename Iterator >
+ + + + +
boost::spirit::qi::rule<Iterator, simplex_var_decl(var_origin), whitespace_grammar<Iterator> > stan::gm::var_decls_grammar< Iterator >::simplex_decl_r
+
+ +

Definition at line 127 of file var_decls_grammar.hpp.

+ +
+
+ +
+
+
+template<typename Iterator >
+ + + + +
boost::spirit::qi::rule<Iterator, unit_vector_var_decl(var_origin), whitespace_grammar<Iterator> > stan::gm::var_decls_grammar< Iterator >::unit_vector_decl_r
+
+ +

Definition at line 122 of file var_decls_grammar.hpp.

+ +
+
+ +
+
+
+template<typename Iterator >
+ + + + +
boost::spirit::qi::rule<Iterator, boost::spirit::qi::locals<bool>, var_decl(bool,var_origin), whitespace_grammar<Iterator> > stan::gm::var_decls_grammar< Iterator >::var_decl_r
+
+ +

Definition at line 138 of file var_decls_grammar.hpp.

+ +
+
+ +
+
+
+template<typename Iterator >
+ + + + +
boost::spirit::qi::rule<Iterator, boost::spirit::qi::locals<bool>, std::vector<var_decl>bool,var_origin), whitespace_grammar<Iterator> > stan::gm::var_decls_grammar< Iterator >::var_decls_r
+
+ +

Definition at line 144 of file var_decls_grammar.hpp.

+ +
+
+ +
+
+
+template<typename Iterator >
+ + + + +
variable_map& stan::gm::var_decls_grammar< Iterator >::var_map_
+
+ +

Definition at line 29 of file var_decls_grammar.hpp.

+ +
+
+ +
+
+
+template<typename Iterator >
+ + + + +
boost::spirit::qi::rule<Iterator, vector_var_decl(var_origin), whitespace_grammar<Iterator> > stan::gm::var_decls_grammar< Iterator >::vector_decl_r
+
+ +

Definition at line 132 of file var_decls_grammar.hpp.

+ +
+
+
The documentation for this struct was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1var__decls__grammar.png b/doc/api/html/structstan_1_1gm_1_1var__decls__grammar.png new file mode 100644 index 0000000000000000000000000000000000000000..dde62a3a9d35efa9c48ae266079a37766844cd2e GIT binary patch literal 1786 zcmd6oe>Br;9LEg$a>x9(V%RldF+v=urdCqyx`+UylJgJ_Dlj|Xd z5D*Bo9{9->2?A-t)b6=fQ%zHR)ot~%)zi)Agi57S>*)AwY{t8LYFn8c4hNhngsQh| zV~_}MkowZM(e;Oq6$rE@6>xR&iC-n{YkQPat@HDr0#koEnVV=2aJEK1yl5q5klmLy zYaFKr?H}_AE7@F9fhzCDv|+*uLjj~QaNqa@CD$_npzH$DjDPk1zA#3EcIAlC8HG?m zo#+Tes3Z<9@32s`V+GK3JZzguqu?Vkeo|!QV%qp&p`IZufiFuk7kHZ=7;6p)cswxW zIaDU#K^2S6Z9L!f0K%Y2Bj-AuGNct>hU*#eH#)$Ribvj0la%ueo6(F{EqQY9@!;6E zQarWj=4%;A$r?*}hVL&+_Q=#^u||M}sI43cE+%Z-un{)*fP%BUQ_cuP*IZwvtEkrYD5q>(GmeG6n0&7rg2dX_5W0lUQn~2Y3&RLQkI^qU)`@1Wr{pgI; z5b-&Ab0XSu0nW3x*2^QlE;Gz#rG{92@}(fA%c>l8gLAHFzAf~=V<*HiZ+${`?w4?< znB&8JufAyQEgmQ(HHVSyntO+5dQBrOZSD7GTzamGK4@s2GTP9G+|-q1Eh?_ z)9j?f)zoqBQhjvHx|e4+SeB*+2Pu;`9Rsp}HVOmi(h=C$@}PUS2G zv8Z=()}I{#WC*!GfS^;`8Sn%VbsEMZE0?3``?WTDUTVBjU`A~9SkD36qsiBkO(4BC16~g-}IRrP1S}11BEx$8nnqtXKsKT z$$vju>}@8}GGlX~Uwu|jp6(yihbXob7??f1X7@cp6E3clF>R%$(mSeELCx)8cvg6X Q`lA8?ClIc* + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::gm::var_resizing_visgen Member List
+
+
+ +

This is the complete list of members for stan::gm::var_resizing_visgen, including all inherited members.

+ + + + + + + + + + + + + + + + + + +
o_stan::gm::visgen
operator()(nil const &) const stan::gm::var_resizing_visgeninline
operator()(int_var_decl const &x) const stan::gm::var_resizing_visgeninline
operator()(double_var_decl const &x) const stan::gm::var_resizing_visgeninline
operator()(vector_var_decl const &x) const stan::gm::var_resizing_visgeninline
operator()(row_vector_var_decl const &x) const stan::gm::var_resizing_visgeninline
operator()(unit_vector_var_decl const &x) const stan::gm::var_resizing_visgeninline
operator()(simplex_var_decl const &x) const stan::gm::var_resizing_visgeninline
operator()(ordered_var_decl const &x) const stan::gm::var_resizing_visgeninline
operator()(positive_ordered_var_decl const &x) const stan::gm::var_resizing_visgeninline
operator()(matrix_var_decl const &x) const stan::gm::var_resizing_visgeninline
operator()(cholesky_factor_var_decl const &x) const stan::gm::var_resizing_visgeninline
operator()(cov_matrix_var_decl const &x) const stan::gm::var_resizing_visgeninline
operator()(corr_matrix_var_decl const &x) const stan::gm::var_resizing_visgeninline
result_type typedefstan::gm::visgen
var_resizing_visgen(std::ostream &o)stan::gm::var_resizing_visgeninline
visgen(std::ostream &o)stan::gm::visgeninline
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1var__resizing__visgen.html b/doc/api/html/structstan_1_1gm_1_1var__resizing__visgen.html new file mode 100644 index 00000000000..66b77ff568f --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1var__resizing__visgen.html @@ -0,0 +1,539 @@ + + + + + +Stan: stan::gm::var_resizing_visgen Struct Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::gm::var_resizing_visgen Struct Reference
+
+
+ +

#include <generator.hpp>

+
+Inheritance diagram for stan::gm::var_resizing_visgen:
+
+
+ + +stan::gm::visgen + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 var_resizing_visgen (std::ostream &o)
 
void operator() (nil const &) const
 
void operator() (int_var_decl const &x) const
 
void operator() (double_var_decl const &x) const
 
void operator() (vector_var_decl const &x) const
 
void operator() (row_vector_var_decl const &x) const
 
void operator() (unit_vector_var_decl const &x) const
 
void operator() (simplex_var_decl const &x) const
 
void operator() (ordered_var_decl const &x) const
 
void operator() (positive_ordered_var_decl const &x) const
 
void operator() (matrix_var_decl const &x) const
 
void operator() (cholesky_factor_var_decl const &x) const
 
void operator() (cov_matrix_var_decl const &x) const
 
void operator() (corr_matrix_var_decl const &x) const
 
- Public Member Functions inherited from stan::gm::visgen
 visgen (std::ostream &o)
 
+ + + + + + + +

+Additional Inherited Members

- Public Types inherited from stan::gm::visgen
typedef void result_type
 
- Public Attributes inherited from stan::gm::visgen
std::ostream & o_
 
+

Detailed Description

+
+

Definition at line 449 of file generator.hpp.

+

Constructor & Destructor Documentation

+ +
+
+ + + + + +
+ + + + + + + + +
stan::gm::var_resizing_visgen::var_resizing_visgen (std::ostream & o)
+
+inline
+
+ +

Definition at line 450 of file generator.hpp.

+ +
+
+

Member Function Documentation

+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::var_resizing_visgen::operator() (nil const & ) const
+
+inline
+
+ +

Definition at line 453 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::var_resizing_visgen::operator() (int_var_decl const & x) const
+
+inline
+
+ +

Definition at line 454 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::var_resizing_visgen::operator() (double_var_decl const & x) const
+
+inline
+
+ +

Definition at line 457 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::var_resizing_visgen::operator() (vector_var_decl const & x) const
+
+inline
+
+ +

Definition at line 460 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::var_resizing_visgen::operator() (row_vector_var_decl const & x) const
+
+inline
+
+ +

Definition at line 463 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::var_resizing_visgen::operator() (unit_vector_var_decl const & x) const
+
+inline
+
+ +

Definition at line 466 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::var_resizing_visgen::operator() (simplex_var_decl const & x) const
+
+inline
+
+ +

Definition at line 469 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::var_resizing_visgen::operator() (ordered_var_decl const & x) const
+
+inline
+
+ +

Definition at line 472 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::var_resizing_visgen::operator() (positive_ordered_var_decl const & x) const
+
+inline
+
+ +

Definition at line 475 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::var_resizing_visgen::operator() (matrix_var_decl const & x) const
+
+inline
+
+ +

Definition at line 478 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::var_resizing_visgen::operator() (cholesky_factor_var_decl const & x) const
+
+inline
+
+ +

Definition at line 481 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::var_resizing_visgen::operator() (cov_matrix_var_decl const & x) const
+
+inline
+
+ +

Definition at line 484 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::var_resizing_visgen::operator() (corr_matrix_var_decl const & x) const
+
+inline
+
+ +

Definition at line 487 of file generator.hpp.

+ +
+
+
The documentation for this struct was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1var__resizing__visgen.png b/doc/api/html/structstan_1_1gm_1_1var__resizing__visgen.png new file mode 100644 index 0000000000000000000000000000000000000000..028fd8578ac2d5af7c681e4ec265844354c9132c GIT binary patch literal 712 zcmeAS@N?(olHy`uVBq!ia0vp^8-X~0gBeIBzE8OTq$C1-LR|m<{|{uoc=NTi|Ih>= z3ycpOIKbL@M;^%KC<*clW&kPzfvcxNj2IZ0!aZFaLn;{G&VAkYT7ieHT|eml|B3$5 z?^;xrM2E9?icVh3G=ov*f7een%_`}xR(EPaBLAjezxS2*aar0tWzXh6 zrv1{7wbri=DGJKlf4(a~`_jv&Q4f|Z6YbAiyWu>Sr&U_c*Zm@2@}>IcUjG|BHDt^B zc^mgarOi?NQSr+CoN%wTbq@2iOlTuD!t^j&Sjlrja!RKhnvHs&Zr!Gs{x2gxv zJ6~~?iy?cOVT0~zi38J8c@j<=v293|WWKSfhY_fiVVh1eLo|x?x%zXK=Asr2oe@x3 zsbu57B0rK^vm4_jnQPi}{^*pfza=BLzR&4?_`wev+rJ;{*D-(Z-u6B5&hBY#1{;&b z&m7mTDmTjv;+eM0YQ-$|RnwIxS8P4J$olPOj;VETdtR$*&%S1n?)vZ|Z}|Meznks; zX%*}}TIIL($juv8+K+5|B#)o0J9N)tpZ=HrUgr&EP8^p^?RLD*e(aS||HpR+bdTfcO=3qW2a6tPG(QdPCa!+-+asY$B)-=%&)jr@UKSJMAvi4y|k}~qXOC9=IjsG z-WADM(Brw%j{nwMS>rr?*#*acTd!Ov^`Idl{dX|mbQzn+iM$Pg=bGid_NB8P_NnZ>{5ycjj=|H_&t;ucLK6VYhECc5 literal 0 HcmV?d00001 diff --git a/doc/api/html/structstan_1_1gm_1_1var__size__validating__visgen-members.html b/doc/api/html/structstan_1_1gm_1_1var__size__validating__visgen-members.html new file mode 100644 index 00000000000..0d80537b6d1 --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1var__size__validating__visgen-members.html @@ -0,0 +1,130 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::gm::var_size_validating_visgen Member List
+
+
+ +

This is the complete list of members for stan::gm::var_size_validating_visgen, including all inherited members.

+ + + + + + + + + + + + + + + + + + + +
o_stan::gm::visgen
operator()(nil const &) const stan::gm::var_size_validating_visgeninline
operator()(int_var_decl const &x) const stan::gm::var_size_validating_visgeninline
operator()(double_var_decl const &x) const stan::gm::var_size_validating_visgeninline
operator()(vector_var_decl const &x) const stan::gm::var_size_validating_visgeninline
operator()(row_vector_var_decl const &x) const stan::gm::var_size_validating_visgeninline
operator()(unit_vector_var_decl const &x) const stan::gm::var_size_validating_visgeninline
operator()(simplex_var_decl const &x) const stan::gm::var_size_validating_visgeninline
operator()(ordered_var_decl const &x) const stan::gm::var_size_validating_visgeninline
operator()(positive_ordered_var_decl const &x) const stan::gm::var_size_validating_visgeninline
operator()(matrix_var_decl const &x) const stan::gm::var_size_validating_visgeninline
operator()(cholesky_factor_var_decl const &x) const stan::gm::var_size_validating_visgeninline
operator()(cov_matrix_var_decl const &x) const stan::gm::var_size_validating_visgeninline
operator()(corr_matrix_var_decl const &x) const stan::gm::var_size_validating_visgeninline
result_type typedefstan::gm::visgen
stage_stan::gm::var_size_validating_visgen
var_size_validating_visgen(std::ostream &o, const std::string &stage)stan::gm::var_size_validating_visgeninline
visgen(std::ostream &o)stan::gm::visgeninline
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1var__size__validating__visgen.html b/doc/api/html/structstan_1_1gm_1_1var__size__validating__visgen.html new file mode 100644 index 00000000000..83eac4a152d --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1var__size__validating__visgen.html @@ -0,0 +1,570 @@ + + + + + +Stan: stan::gm::var_size_validating_visgen Struct Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::gm::var_size_validating_visgen Struct Reference
+
+
+ +

#include <generator.hpp>

+
+Inheritance diagram for stan::gm::var_size_validating_visgen:
+
+
+ + +stan::gm::visgen + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 var_size_validating_visgen (std::ostream &o, const std::string &stage)
 
void operator() (nil const &) const
 
void operator() (int_var_decl const &x) const
 
void operator() (double_var_decl const &x) const
 
void operator() (vector_var_decl const &x) const
 
void operator() (row_vector_var_decl const &x) const
 
void operator() (unit_vector_var_decl const &x) const
 
void operator() (simplex_var_decl const &x) const
 
void operator() (ordered_var_decl const &x) const
 
void operator() (positive_ordered_var_decl const &x) const
 
void operator() (matrix_var_decl const &x) const
 
void operator() (cholesky_factor_var_decl const &x) const
 
void operator() (cov_matrix_var_decl const &x) const
 
void operator() (corr_matrix_var_decl const &x) const
 
- Public Member Functions inherited from stan::gm::visgen
 visgen (std::ostream &o)
 
+ + + + + + +

+Public Attributes

const std::string stage_
 
- Public Attributes inherited from stan::gm::visgen
std::ostream & o_
 
+ + + + +

+Additional Inherited Members

- Public Types inherited from stan::gm::visgen
typedef void result_type
 
+

Detailed Description

+
+

Definition at line 370 of file generator.hpp.

+

Constructor & Destructor Documentation

+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
stan::gm::var_size_validating_visgen::var_size_validating_visgen (std::ostream & o,
const std::string & stage 
)
+
+inline
+
+ +

Definition at line 372 of file generator.hpp.

+ +
+
+

Member Function Documentation

+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::var_size_validating_visgen::operator() (nil const & ) const
+
+inline
+
+ +

Definition at line 376 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::var_size_validating_visgen::operator() (int_var_decl const & x) const
+
+inline
+
+ +

Definition at line 377 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::var_size_validating_visgen::operator() (double_var_decl const & x) const
+
+inline
+
+ +

Definition at line 380 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::var_size_validating_visgen::operator() (vector_var_decl const & x) const
+
+inline
+
+ +

Definition at line 383 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::var_size_validating_visgen::operator() (row_vector_var_decl const & x) const
+
+inline
+
+ +

Definition at line 386 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::var_size_validating_visgen::operator() (unit_vector_var_decl const & x) const
+
+inline
+
+ +

Definition at line 389 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::var_size_validating_visgen::operator() (simplex_var_decl const & x) const
+
+inline
+
+ +

Definition at line 392 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::var_size_validating_visgen::operator() (ordered_var_decl const & x) const
+
+inline
+
+ +

Definition at line 395 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::var_size_validating_visgen::operator() (positive_ordered_var_decl const & x) const
+
+inline
+
+ +

Definition at line 398 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::var_size_validating_visgen::operator() (matrix_var_decl const & x) const
+
+inline
+
+ +

Definition at line 401 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::var_size_validating_visgen::operator() (cholesky_factor_var_decl const & x) const
+
+inline
+
+ +

Definition at line 404 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::var_size_validating_visgen::operator() (cov_matrix_var_decl const & x) const
+
+inline
+
+ +

Definition at line 407 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::var_size_validating_visgen::operator() (corr_matrix_var_decl const & x) const
+
+inline
+
+ +

Definition at line 410 of file generator.hpp.

+ +
+
+

Member Data Documentation

+ +
+
+ + + + +
const std::string stan::gm::var_size_validating_visgen::stage_
+
+ +

Definition at line 371 of file generator.hpp.

+ +
+
+
The documentation for this struct was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1var__size__validating__visgen.png b/doc/api/html/structstan_1_1gm_1_1var__size__validating__visgen.png new file mode 100644 index 0000000000000000000000000000000000000000..03073e9d4bddd7a299b1ba0a97082537331963f8 GIT binary patch literal 777 zcmeAS@N?(olHy`uVBq!ia0vp^H-I>RgBeKr$a-f1DTx4|5ZC|z{{xvX-h3_XKQsZz z0^SZyxmj|73Gr zl>~)YHSgWbPN&Y6H09Q8c)Vv*?rpQhH&in1bPYVEJh^=)xdoXUsC(L9k(Kw%x>(OT zd5Ql@_8GSq-l@DT7+?SBQSs6Hmx4L?_pIH%ifzIY=~oQTjBP&g%z62=RAAY(ol`j# zJilLM*V&fjqrcvF*4oNhp$6Ovp5<3oi}w3vF@Ihw8U0ZwRMKJ6yA|g@oREIQp0G3h z%fuzWe;u)&);P2L+?Vx}AAQY^HuO2VS*-AtrRMHQ(WP4dW`#{zlD$>+=1=DznH#oU zejlXldGhPWuAlEFEh*31JZVW-?P5{Ym#?D|CYekUo1xOXL^kL4wp=I18ejefNmK0` zj}0|%u1T=IJ}2dJ)7q6B2GhhO4tPW*Feqm>GWINCWiyyWNZ`ZzqH{YXTbXD0bMqvq z=o&OkoYGjjG>2=OH0$mRx%rG&zI?whpN09yY97DiI!ZU}e$KzYrJ!0*<>TLU#XFb& z#($djQnFQGeSgZ96+2ry9_}tydrQ2D1lurfUUc5c8bE7jhWKGemtHS#%rtWaRdTraIz^i5( z4*z_yeam6q^Op}KsOO2T`LxEu__Cts>G;OI-QUI5tnrNdk|QCp{noPFgq?x+cywha z>@QySR4ZX-Zs7S>w~KhEP5WK4uV7Es(PE98Y3I_8O)NU`J0^El*R{2Cx=yxuO+OX9 z()VbVHdD;&-}84|+q-&oZo*S-mVj4Z`EI{5(PO$&S~LIEx#=@a!``?#F~okUd%ybX pw=fn74_I)O@C7}eGux}4;mC45M}roda$ve;@O1TaS?83{1OPX5ZLa_T literal 0 HcmV?d00001 diff --git a/doc/api/html/structstan_1_1gm_1_1variable-members.html b/doc/api/html/structstan_1_1gm_1_1variable-members.html new file mode 100644 index 00000000000..5ee552f7a4d --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1variable-members.html @@ -0,0 +1,117 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::gm::variable Member List
+
+
+ +

This is the complete list of members for stan::gm::variable, including all inherited members.

+ + + + + + +
name_stan::gm::variable
set_type(const base_expr_type &base_type, size_t num_dims)stan::gm::variable
type_stan::gm::variable
variable()stan::gm::variable
variable(std::string name)stan::gm::variable
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1variable.html b/doc/api/html/structstan_1_1gm_1_1variable.html new file mode 100644 index 00000000000..e3d78a4951a --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1variable.html @@ -0,0 +1,233 @@ + + + + + +Stan: stan::gm::variable Struct Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::gm::variable Struct Reference
+
+
+ +

#include <ast.hpp>

+ + + + + + + + +

+Public Member Functions

 variable ()
 
 variable (std::string name)
 
void set_type (const base_expr_type &base_type, size_t num_dims)
 
+ + + + + +

+Public Attributes

std::string name_
 
expr_type type_
 
+

Detailed Description

+
+

Definition at line 298 of file ast.hpp.

+

Constructor & Destructor Documentation

+ +
+
+ + + + + + + +
stan::gm::variable::variable ()
+
+ +

Definition at line 559 of file ast_def.cpp.

+ +
+
+ +
+
+ + + + + + + + +
stan::gm::variable::variable (std::string name)
+
+ +

Definition at line 560 of file ast_def.cpp.

+ +
+
+

Member Function Documentation

+ +
+
+ + + + + + + + + + + + + + + + + + +
void stan::gm::variable::set_type (const base_expr_typebase_type,
size_t num_dims 
)
+
+ +

Definition at line 561 of file ast_def.cpp.

+ +
+
+

Member Data Documentation

+ +
+
+ + + + +
std::string stan::gm::variable::name_
+
+ +

Definition at line 299 of file ast.hpp.

+ +
+
+ +
+
+ + + + +
expr_type stan::gm::variable::type_
+
+ +

Definition at line 300 of file ast.hpp.

+ +
+
+
The documentation for this struct was generated from the following files: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1variable__dims-members.html b/doc/api/html/structstan_1_1gm_1_1variable__dims-members.html new file mode 100644 index 00000000000..1f7e9f39761 --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1variable__dims-members.html @@ -0,0 +1,116 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::gm::variable_dims Member List
+
+
+ +

This is the complete list of members for stan::gm::variable_dims, including all inherited members.

+ + + + + +
dims_stan::gm::variable_dims
name_stan::gm::variable_dims
variable_dims()stan::gm::variable_dims
variable_dims(std::string const &name, std::vector< expression > const &dims)stan::gm::variable_dims
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1variable__dims.html b/doc/api/html/structstan_1_1gm_1_1variable__dims.html new file mode 100644 index 00000000000..d77311714ed --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1variable__dims.html @@ -0,0 +1,212 @@ + + + + + +Stan: stan::gm::variable_dims Struct Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::gm::variable_dims Struct Reference
+
+
+ +

#include <ast.hpp>

+ + + + + + +

+Public Member Functions

 variable_dims ()
 
 variable_dims (std::string const &name, std::vector< expression > const &dims)
 
+ + + + + +

+Public Attributes

std::string name_
 
std::vector< expressiondims_
 
+

Detailed Description

+
+

Definition at line 263 of file ast.hpp.

+

Constructor & Destructor Documentation

+ +
+
+ + + + + + + +
stan::gm::variable_dims::variable_dims ()
+
+ +

Definition at line 505 of file ast_def.cpp.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
stan::gm::variable_dims::variable_dims (std::string const & name,
std::vector< expression > const & dims 
)
+
+ +

Definition at line 506 of file ast_def.cpp.

+ +
+
+

Member Data Documentation

+ +
+
+ + + + +
std::vector<expression> stan::gm::variable_dims::dims_
+
+ +

Definition at line 265 of file ast.hpp.

+ +
+
+ +
+
+ + + + +
std::string stan::gm::variable_dims::name_
+
+ +

Definition at line 264 of file ast.hpp.

+ +
+
+
The documentation for this struct was generated from the following files: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1variable__map-members.html b/doc/api/html/structstan_1_1gm_1_1variable__map-members.html new file mode 100644 index 00000000000..f6cc1123178 --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1variable__map-members.html @@ -0,0 +1,121 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::gm::variable_map Member List
+
+
+ +

This is the complete list of members for stan::gm::variable_map, including all inherited members.

+ + + + + + + + + + +
add(const std::string &name, const base_var_decl &base_decl, const var_origin &vo)stan::gm::variable_map
exists(const std::string &name) const stan::gm::variable_map
get(const std::string &name) const stan::gm::variable_map
get_base_type(const std::string &name) const stan::gm::variable_map
get_num_dims(const std::string &name) const stan::gm::variable_map
get_origin(const std::string &name) const stan::gm::variable_map
map_stan::gm::variable_map
range_t typedefstan::gm::variable_map
remove(const std::string &name)stan::gm::variable_map
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1variable__map.html b/doc/api/html/structstan_1_1gm_1_1variable__map.html new file mode 100644 index 00000000000..280b8ad0eab --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1variable__map.html @@ -0,0 +1,325 @@ + + + + + +Stan: stan::gm::variable_map Struct Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::gm::variable_map Struct Reference
+
+
+ +

#include <ast.hpp>

+ + + + +

+Public Types

typedef std::pair
+< base_var_decl, var_origin
range_t
 
+ + + + + + + + + + + + + + + +

+Public Member Functions

bool exists (const std::string &name) const
 
base_var_decl get (const std::string &name) const
 
base_expr_type get_base_type (const std::string &name) const
 
size_t get_num_dims (const std::string &name) const
 
var_origin get_origin (const std::string &name) const
 
void add (const std::string &name, const base_var_decl &base_decl, const var_origin &vo)
 
void remove (const std::string &name)
 
+ + + +

+Public Attributes

std::map< std::string, range_tmap_
 
+

Detailed Description

+
+

Definition at line 392 of file ast.hpp.

+

Member Typedef Documentation

+ +
+
+ +

Definition at line 393 of file ast.hpp.

+ +
+
+

Member Function Documentation

+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
void stan::gm::variable_map::add (const std::string & name,
const base_var_declbase_decl,
const var_originvo 
)
+
+ +

Definition at line 709 of file ast_def.cpp.

+ +
+
+ +
+
+ + + + + + + + +
bool stan::gm::variable_map::exists (const std::string & name) const
+
+ +

Definition at line 690 of file ast_def.cpp.

+ +
+
+ +
+
+ + + + + + + + +
base_var_decl stan::gm::variable_map::get (const std::string & name) const
+
+ +

Definition at line 693 of file ast_def.cpp.

+ +
+
+ +
+
+ + + + + + + + +
base_expr_type stan::gm::variable_map::get_base_type (const std::string & name) const
+
+ +

Definition at line 698 of file ast_def.cpp.

+ +
+
+ +
+
+ + + + + + + + +
size_t stan::gm::variable_map::get_num_dims (const std::string & name) const
+
+ +

Definition at line 701 of file ast_def.cpp.

+ +
+
+ +
+
+ + + + + + + + +
var_origin stan::gm::variable_map::get_origin (const std::string & name) const
+
+ +

Definition at line 704 of file ast_def.cpp.

+ +
+
+ +
+
+ + + + + + + + +
void stan::gm::variable_map::remove (const std::string & name)
+
+ +

Definition at line 714 of file ast_def.cpp.

+ +
+
+

Member Data Documentation

+ +
+
+ + + + +
std::map<std::string, range_t> stan::gm::variable_map::map_
+
+ +

Definition at line 394 of file ast.hpp.

+ +
+
+
The documentation for this struct was generated from the following files: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1vector__var__decl-members.html b/doc/api/html/structstan_1_1gm_1_1vector__var__decl-members.html new file mode 100644 index 00000000000..d1d85075efc --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1vector__var__decl-members.html @@ -0,0 +1,122 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::gm::vector_var_decl Member List
+
+
+ +

This is the complete list of members for stan::gm::vector_var_decl, including all inherited members.

+ + + + + + + + + + + +
base_type_stan::gm::base_var_decl
base_var_decl()stan::gm::base_var_decl
base_var_decl(const base_expr_type &base_type)stan::gm::base_var_decl
base_var_decl(const std::string &name, const std::vector< expression > &dims, const base_expr_type &base_type)stan::gm::base_var_decl
dims_stan::gm::base_var_decl
M_stan::gm::vector_var_decl
name_stan::gm::base_var_decl
range_stan::gm::vector_var_decl
vector_var_decl()stan::gm::vector_var_decl
vector_var_decl(range const &range, expression const &M, std::string const &name, std::vector< expression > const &dims)stan::gm::vector_var_decl
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1vector__var__decl.html b/doc/api/html/structstan_1_1gm_1_1vector__var__decl.html new file mode 100644 index 00000000000..89a48e2cd5d --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1vector__var__decl.html @@ -0,0 +1,247 @@ + + + + + +Stan: stan::gm::vector_var_decl Struct Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::gm::vector_var_decl Struct Reference
+
+
+ +

#include <ast.hpp>

+
+Inheritance diagram for stan::gm::vector_var_decl:
+
+
+ + +stan::gm::base_var_decl + +
+ + + + + + + + + + + + + +

+Public Member Functions

 vector_var_decl ()
 
 vector_var_decl (range const &range, expression const &M, std::string const &name, std::vector< expression > const &dims)
 
- Public Member Functions inherited from stan::gm::base_var_decl
 base_var_decl ()
 
 base_var_decl (const base_expr_type &base_type)
 
 base_var_decl (const std::string &name, const std::vector< expression > &dims, const base_expr_type &base_type)
 
+ + + + + + + + + + + + +

+Public Attributes

range range_
 
expression M_
 
- Public Attributes inherited from stan::gm::base_var_decl
std::string name_
 
std::vector< expressiondims_
 
base_expr_type base_type_
 
+

Detailed Description

+
+

Definition at line 455 of file ast.hpp.

+

Constructor & Destructor Documentation

+ +
+
+ + + + + + + +
stan::gm::vector_var_decl::vector_var_decl ()
+
+ +

Definition at line 786 of file ast_def.cpp.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
stan::gm::vector_var_decl::vector_var_decl (range const & range,
expression const & M,
std::string const & name,
std::vector< expression > const & dims 
)
+
+ +

Definition at line 788 of file ast_def.cpp.

+ +
+
+

Member Data Documentation

+ +
+
+ + + + +
expression stan::gm::vector_var_decl::M_
+
+ +

Definition at line 457 of file ast.hpp.

+ +
+
+ +
+
+ + + + +
range stan::gm::vector_var_decl::range_
+
+ +

Definition at line 456 of file ast.hpp.

+ +
+
+
The documentation for this struct was generated from the following files: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1vector__var__decl.png b/doc/api/html/structstan_1_1gm_1_1vector__var__decl.png new file mode 100644 index 0000000000000000000000000000000000000000..37bea37cc356b83999b5523cb35087f521474a10 GIT binary patch literal 691 zcmeAS@N?(olHy`uVBq!ia0vp^bAUL2gBeKP_Ia}bNJ#|vgt-3y{~ySF@#br3|Dg#$ z78oBmaDcV*jy#adQ4-`A%m7pb0#{Fk7%?y~IeEG`hEy=VoqLh*wgQhUzj@IA|C6t? zaj;#QQZd!dbjh79oHy(an(f(?d)sXF4V6qkT?@}o83#QlxvLjAPI4>F-lSss>do73 z`6ll33k&Yd6aGHm=!aD2_D9-&oorv7JGW`~Mn3*gaO2s^F&04#ow}+%#{| zf}+qLSG^C%p2-%^f7o^3%u9TKl=$nPBJ1QWmhbY*j(b^Ma8be1gJ1QtW_JDquMPaX z7t=BY)}6^QDn1bTb=%iheOF_c!>=yLTzGnx_y6+`^RC34^LjJqarfq>Z<~vzhIt>H zm1jHc%ZBfzt5srO<(Hd!?pj#53QoJlZCg>DcP)7c68=Zi~SnKw^v^CuG!#cwL`*;^**!1hVYPOTa0hdce+$}{HF)k z)gM_8bUr;?{xNs@yWYc10nbmeymGfvuZ{Z5)PGR*am9t0!%r;=UrENiUUK@M=QOtm zQtjde@2_tuE{ZMYjR|cI4d1(d=Q_so5ACkUcxAuZ`q+81<6ZWfcA{BVGqy$VzN`3a z-Sv_M(TsXu`TZst?$GmOP`>s0PTmY= + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::gm::visgen Member List
+
+
+ +

This is the complete list of members for stan::gm::visgen, including all inherited members.

+ + + + +
o_stan::gm::visgen
result_type typedefstan::gm::visgen
visgen(std::ostream &o)stan::gm::visgeninline
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1visgen.html b/doc/api/html/structstan_1_1gm_1_1visgen.html new file mode 100644 index 00000000000..b464723c5bf --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1visgen.html @@ -0,0 +1,231 @@ + + + + + +Stan: stan::gm::visgen Struct Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::gm::visgen Struct Reference
+
+
+ +

generic visitor with output for extension + More...

+ +

#include <generator.hpp>

+
+Inheritance diagram for stan::gm::visgen:
+
+
+ + +stan::gm::constrained_param_names_visgen +stan::gm::dump_member_var_visgen +stan::gm::expression_visgen +stan::gm::generate_init_vars_visgen +stan::gm::generate_init_visgen +stan::gm::generate_local_var_init_nan_visgen +stan::gm::init_local_var_visgen +stan::gm::local_var_decl_visgen +stan::gm::member_var_decl_visgen +stan::gm::printable_visgen +stan::gm::set_param_ranges_visgen +stan::gm::statement_visgen +stan::gm::unconstrained_param_names_visgen +stan::gm::validate_transformed_params_visgen +stan::gm::validate_var_decl_visgen +stan::gm::var_resizing_visgen +stan::gm::var_size_validating_visgen +stan::gm::write_array_vars_visgen +stan::gm::write_array_visgen +stan::gm::write_csv_header_visgen +stan::gm::write_csv_vars_visgen +stan::gm::write_csv_visgen +stan::gm::write_dims_visgen +stan::gm::write_param_names_visgen + +
+ + + + +

+Public Types

typedef void result_type
 
+ + + +

+Public Member Functions

 visgen (std::ostream &o)
 
+ + + +

+Public Attributes

std::ostream & o_
 
+

Detailed Description

+

generic visitor with output for extension

+ +

Definition at line 61 of file generator.hpp.

+

Member Typedef Documentation

+ +
+
+ + + + +
typedef void stan::gm::visgen::result_type
+
+ +

Definition at line 62 of file generator.hpp.

+ +
+
+

Constructor & Destructor Documentation

+ +
+
+ + + + + +
+ + + + + + + + +
stan::gm::visgen::visgen (std::ostream & o)
+
+inline
+
+ +

Definition at line 64 of file generator.hpp.

+ +
+
+

Member Data Documentation

+ +
+
+ + + + +
std::ostream& stan::gm::visgen::o_
+
+ +

Definition at line 63 of file generator.hpp.

+ +
+
+
The documentation for this struct was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1visgen.png b/doc/api/html/structstan_1_1gm_1_1visgen.png new file mode 100644 index 0000000000000000000000000000000000000000..356359a8e67ed7f14410e28a587aa92ce96dc0e3 GIT binary patch literal 15238 zcmd^mYgkj)y0x{X)}rRLZc#+Zwhf>dK~X{ElD1eiqCtU*5hS({sFe`z7YRub3$=>T z072ze>LsE;G#~*2L`4Z95>(U(NeDEAh}^>^gxt&=d-UhFf*F_%(|1I0Q+xK&$ z(Fjgo4ot*S@0|r_Gym?~xnput0tbJ-7vqibnFB6@j%Urj4s+(XEJ1Jk)HmU+L1|x{ zd}ro6k3E&n$Ba8Hv#YE=xk@{D9Ti8tbZ^`I>Y`<7-*XqGHxw;c`j09GZc*Ax^;?Ul z6^Fkk!`B!6{-1^vd!@?`U2D{S?BRQ-n&%o9+nVm4;^2hc$=Zeqp7u*PoP8JdF#|3i z%OmFX7KFG-=8$un=Pow9%872Cwo-@2H*Sf%6_Qt7c)NX$;lpebYaIa_zC+?&&s=rs zty~UgSGjl&IUo82*`g-qoHE$?_7#7N8hVy?VV9^FxxSl7an|;#Ot6z{iATHa_ksJ6 zg?kh>N7V_GfyiFN0Mu{$UF6>`M9wdFXj2>eZUUiOo0-tLzdo0vM+#QhTMlawVy;%$@nk=KxW4?p0n1*aqoK4q@g-Y9D3Gf zTJZN^m~B02tH2yyL!#5JfzdsOOh;%;;G1=!x};b++yhvM)I&Wqccugm0;Pq zLi3XAhwa)}$;zu23D`+O%`zLi=chNq?W-iqM8m|>1%W(AQ+pftJZJaTh><}0pz+JG zifogDE)3oO=rRZO$SK+Qx%`dty3#Z?Ts+7y4c!PoqCG%Qr(&^P&XyHLp819pWP`iX zaC7auY7WekdCCb~lTM2abnZ1uV&kaeBX0%np|imu`pQNi|8OK0TiNT{5$E^GP;72N z0?yKMPgN#fGp7_lAfE8j2WwfYgqdnXGI^|k>vykS(;uMgpL%}R@sA%XS53VO6F(~6 zE9-0)sHY?4XHSoA7@NLTs>!K6eMZBGA<{sve`&e8C3$7k=-wnRkHJ-2< z-8)dl1a^IHjSl5&c77zgSrz;f zt;a&QF&jTYfoACx_!2`KcyBM3wgAk?XLz*3HhjwbY%BhM095p2vOd$AUHUJceL=YfJ!uZs5|qc~09ij#}>FT)0*2eB&H{v8x{wEQ$ngx<7H5 z_r!WMl~%(hSa<7XoF(!?>W(s4r23s~6Y~8w!b|Tq;}1wta{Q8kCmwO7{i=V$wwFzW zaCqE(uaWli8mu)@$J|fnWrvg;NwT{7F>LZ{d`h7z*kan3zUPZ7PSVcs4MP4ZcGD`4 zuxA~?8s7u%7S%4Lg!jlP_7z1w`?z&?b5@WfTM$8c!<{g4SS+s0Ep1Z zBQb%s(i+wsY65Ga6+e&hWaP?8v?{tjG5{a~MOXC2$N88U0?;btm{s{XdpAFPiWQ29 z#G$n)EVlky5I&_> zQM-o}!yuk%7|u!=5rs;q7(LlGGI%*XIfdYrY6tuAwYR$D?(Js6I8-E?H;R$>|o~g|G%}Tgc%wQU+N47Em0f5oW+S}G zVNpOj+%#fnD~BL-(WM6`CV^ue`6EGcbmCRkK#tq$6@>)XW>#Sg8w)-S-G8~`crjAB zRA0X^|2hv(5~VHTFQXn5Btb zPUVMrLqleHhOMnq!q(@R{Xg~J>1!mXm+n{2t6DM9r9)`)03r%#imdNE?Sw<8BY*y? zB_W>Mby4UaXCF@tB?vh=-IWcOM!keyG!ux-)(X}YX~&1!##dKseTS_ie3p5~e)_GZ z0eED<*i_f-7ZN>kt{XOE9ZiLl{E$OC?BY?`il+&7H|)5?F!LKi`B-M~T~oel5*!Cz zZ3OiTlZ#mr{pROs9K%R8l5<@ZK{8&ZzQ2#=dKvmrahiL!!uuo3&ism^(hvH9{IZU} zG2BRe?D!71$*<#4afz(6+tbWFd$80h z2^2C7Qb+S!D~k{p#}A<{`=tuWLo zfJk$OL>l=YDFmx6Qt7%a`q%=FIHtr#^tmXdEn|${rk|y2j&$AT)XBxk@IL>YI0>~PWb&h({{|i}hdDAUd7V6ty)%I

AZfI6e{l3~-LFEOR+a=5o+-tUa<=si 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 + + + + +Stan: Member List + + + + + + + + + +

+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::gm::while_statement Member List
+
+
+ +

This is the complete list of members for stan::gm::while_statement, including all inherited members.

+ + + + + +
body_stan::gm::while_statement
condition_stan::gm::while_statement
while_statement()stan::gm::while_statement
while_statement(const expression &condition, const statement &body)stan::gm::while_statement
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1while__statement.html b/doc/api/html/structstan_1_1gm_1_1while__statement.html new file mode 100644 index 00000000000..46e3f444a45 --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1while__statement.html @@ -0,0 +1,212 @@ + + + + + +Stan: stan::gm::while_statement Struct Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::gm::while_statement Struct Reference
+
+
+ +

#include <ast.hpp>

+ + + + + + +

+Public Member Functions

 while_statement ()
 
 while_statement (const expression &condition, const statement &body)
 
+ + + + + +

+Public Attributes

expression condition_
 
statement body_
 
+

Detailed Description

+
+

Definition at line 633 of file ast.hpp.

+

Constructor & Destructor Documentation

+ +
+
+ + + + + + + +
stan::gm::while_statement::while_statement ()
+
+ +

Definition at line 953 of file ast_def.cpp.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
stan::gm::while_statement::while_statement (const expressioncondition,
const statementbody 
)
+
+ +

Definition at line 955 of file ast_def.cpp.

+ +
+
+

Member Data Documentation

+ +
+
+ + + + +
statement stan::gm::while_statement::body_
+
+ +

Definition at line 635 of file ast.hpp.

+ +
+
+ +
+
+ + + + +
expression stan::gm::while_statement::condition_
+
+ +

Definition at line 634 of file ast.hpp.

+ +
+
+
The documentation for this struct was generated from the following files: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1whitespace__grammar-members.html b/doc/api/html/structstan_1_1gm_1_1whitespace__grammar-members.html new file mode 100644 index 00000000000..5930e078a7b --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1whitespace__grammar-members.html @@ -0,0 +1,114 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::gm::whitespace_grammar< Iterator > Member List
+
+ +
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1whitespace__grammar.html b/doc/api/html/structstan_1_1gm_1_1whitespace__grammar.html new file mode 100644 index 00000000000..1134ce82d7f --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1whitespace__grammar.html @@ -0,0 +1,181 @@ + + + + + +Stan: stan::gm::whitespace_grammar< Iterator > Struct Template Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::gm::whitespace_grammar< Iterator > Struct Template Reference
+
+
+ +

#include <whitespace_grammar.hpp>

+
+Inheritance diagram for stan::gm::whitespace_grammar< Iterator >:
+
+
+ + + +
+ + + + +

+Public Member Functions

 whitespace_grammar ()
 
+ + + +

+Public Attributes

boost::spirit::qi::rule< Iterator > whitespace
 
+

Detailed Description

+

template<typename Iterator>
+struct stan::gm::whitespace_grammar< Iterator >

+ + +

Definition at line 11 of file whitespace_grammar.hpp.

+

Constructor & Destructor Documentation

+ +
+
+
+template<typename Iterator >
+ + + + + + + +
stan::gm::whitespace_grammar< Iterator >::whitespace_grammar ()
+
+ +

Definition at line 13 of file whitespace_grammar_def.hpp.

+ +
+
+

Member Data Documentation

+ +
+
+
+template<typename Iterator>
+ + + + +
boost::spirit::qi::rule<Iterator> stan::gm::whitespace_grammar< Iterator >::whitespace
+
+ +

Definition at line 16 of file whitespace_grammar.hpp.

+ +
+
+
The documentation for this struct was generated from the following files: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1whitespace__grammar.png b/doc/api/html/structstan_1_1gm_1_1whitespace__grammar.png new file mode 100644 index 0000000000000000000000000000000000000000..8577a566fe067ac6da2a1dfd8004008edb5cc3e0 GIT binary patch literal 873 zcmeAS@N?(olHy`uVBq!ia0vp^-+(xPgBeK5c2;l#DTx4|5ZC|z{{xvX-h3_XKQsZz z0^bw|PtL zozoBPJO38?d2YMgDmyRvwq|(jr?>xhL@&Gje6eZ8pH;^*rmcCjcJIkxQya~7vbwVD zc9Tpl@L2D2Wzw3iu=Q*N+sa&Pf5UrczddXT@F`wXWT^PYr}^G3?@3mBJw6F;JG<&r z#_~L#Gkg-0XB{!i&WPX7IOp3whI;YcONysHnZ9BB9-g54mmK_h*>?9_Q;d2e`Q!GD z*i^|iXDr{`O#hs;eRjb7yKi4^kIg^8V;ySv`3K*(kK1jJ|2w+9HsoaP%a>Y}vB!#3 zxA!kgFn_A2{`19_TjCY#Z>qXn*7hv+-Jtq%PFzby+y7HD^*r-mq`g`9%HxuF$@jeF zF;kZ0zf!(2=}SH$TzIWp1nzJ?i2lX+L4E!Wdwac|wMqF`whxP1c^|l5olp4D0PhW&fT;T(J7D=2dSf{q4=lXMUe&a4udHAGb}b zMs(3MvKpt!Vx5tzw0xXI8}?==-M@ zCu(dflaRifVcXKiIZ|h}r(Cph>5jd$)N^~Gnq1=X`v*T*?A~1@+~CIe>l-Li(#xx- zEV;U`Z)aP6_1oKay|sUG&u?_Uzip-Vd96!3rhA#q&k8#E_QHlqKqGxmGcw$srRm$T zOngIb$X&*&SgT3?R(EUf%s=u@i}`@0@0@w1C*GMHh_%{zyEKYv&gGS+dnKeFtU9M| nd7yqVENJD}t2q=aF3Ybt*8j-l)O>SbzF_cl^>bP0l+XkK+MuFB literal 0 HcmV?d00001 diff --git a/doc/api/html/structstan_1_1gm_1_1write__array__vars__visgen-members.html b/doc/api/html/structstan_1_1gm_1_1write__array__vars__visgen-members.html new file mode 100644 index 00000000000..abaf6c4ebd4 --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1write__array__vars__visgen-members.html @@ -0,0 +1,130 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::gm::write_array_vars_visgen Member List
+
+
+ +

This is the complete list of members for stan::gm::write_array_vars_visgen, including all inherited members.

+ + + + + + + + + + + + + + + + + + + +
o_stan::gm::visgen
operator()(const nil &) const stan::gm::write_array_vars_visgeninline
operator()(const int_var_decl &x) const stan::gm::write_array_vars_visgeninline
operator()(const double_var_decl &x) const stan::gm::write_array_vars_visgeninline
operator()(const vector_var_decl &x) const stan::gm::write_array_vars_visgeninline
operator()(const row_vector_var_decl &x) const stan::gm::write_array_vars_visgeninline
operator()(const matrix_var_decl &x) const stan::gm::write_array_vars_visgeninline
operator()(const unit_vector_var_decl &x) const stan::gm::write_array_vars_visgeninline
operator()(const simplex_var_decl &x) const stan::gm::write_array_vars_visgeninline
operator()(const ordered_var_decl &x) const stan::gm::write_array_vars_visgeninline
operator()(const positive_ordered_var_decl &x) const stan::gm::write_array_vars_visgeninline
operator()(const cholesky_factor_var_decl &x) const stan::gm::write_array_vars_visgeninline
operator()(const cov_matrix_var_decl &x) const stan::gm::write_array_vars_visgeninline
operator()(const corr_matrix_var_decl &x) const stan::gm::write_array_vars_visgeninline
result_type typedefstan::gm::visgen
visgen(std::ostream &o)stan::gm::visgeninline
write_array(const std::string &name, const std::vector< expression > &arraydims, const std::vector< expression > &matdims) const stan::gm::write_array_vars_visgeninline
write_array_vars_visgen(std::ostream &o)stan::gm::write_array_vars_visgeninline
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1write__array__vars__visgen.html b/doc/api/html/structstan_1_1gm_1_1write__array__vars__visgen.html new file mode 100644 index 00000000000..e022a015aca --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1write__array__vars__visgen.html @@ -0,0 +1,583 @@ + + + + + +Stan: stan::gm::write_array_vars_visgen Struct Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::gm::write_array_vars_visgen Struct Reference
+
+
+ +

#include <generator.hpp>

+
+Inheritance diagram for stan::gm::write_array_vars_visgen:
+
+
+ + +stan::gm::visgen + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 write_array_vars_visgen (std::ostream &o)
 
void operator() (const nil &) const
 
void operator() (const int_var_decl &x) const
 
void operator() (const double_var_decl &x) const
 
void operator() (const vector_var_decl &x) const
 
void operator() (const row_vector_var_decl &x) const
 
void operator() (const matrix_var_decl &x) const
 
void operator() (const unit_vector_var_decl &x) const
 
void operator() (const simplex_var_decl &x) const
 
void operator() (const ordered_var_decl &x) const
 
void operator() (const positive_ordered_var_decl &x) const
 
void operator() (const cholesky_factor_var_decl &x) const
 
void operator() (const cov_matrix_var_decl &x) const
 
void operator() (const corr_matrix_var_decl &x) const
 
void write_array (const std::string &name, const std::vector< expression > &arraydims, const std::vector< expression > &matdims) const
 
- Public Member Functions inherited from stan::gm::visgen
 visgen (std::ostream &o)
 
+ + + + + + + +

+Additional Inherited Members

- Public Types inherited from stan::gm::visgen
typedef void result_type
 
- Public Attributes inherited from stan::gm::visgen
std::ostream & o_
 
+

Detailed Description

+
+

Definition at line 3727 of file generator.hpp.

+

Constructor & Destructor Documentation

+ +
+
+ + + + + +
+ + + + + + + + +
stan::gm::write_array_vars_visgen::write_array_vars_visgen (std::ostream & o)
+
+inline
+
+ +

Definition at line 3728 of file generator.hpp.

+ +
+
+

Member Function Documentation

+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::write_array_vars_visgen::operator() (const nil) const
+
+inline
+
+ +

Definition at line 3731 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::write_array_vars_visgen::operator() (const int_var_declx) const
+
+inline
+
+ +

Definition at line 3733 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::write_array_vars_visgen::operator() (const double_var_declx) const
+
+inline
+
+ +

Definition at line 3736 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::write_array_vars_visgen::operator() (const vector_var_declx) const
+
+inline
+
+ +

Definition at line 3739 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::write_array_vars_visgen::operator() (const row_vector_var_declx) const
+
+inline
+
+ +

Definition at line 3744 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::write_array_vars_visgen::operator() (const matrix_var_declx) const
+
+inline
+
+ +

Definition at line 3749 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::write_array_vars_visgen::operator() (const unit_vector_var_declx) const
+
+inline
+
+ +

Definition at line 3755 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::write_array_vars_visgen::operator() (const simplex_var_declx) const
+
+inline
+
+ +

Definition at line 3760 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::write_array_vars_visgen::operator() (const ordered_var_declx) const
+
+inline
+
+ +

Definition at line 3765 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::write_array_vars_visgen::operator() (const positive_ordered_var_declx) const
+
+inline
+
+ +

Definition at line 3770 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::write_array_vars_visgen::operator() (const cholesky_factor_var_declx) const
+
+inline
+
+ +

Definition at line 3775 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::write_array_vars_visgen::operator() (const cov_matrix_var_declx) const
+
+inline
+
+ +

Definition at line 3781 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::write_array_vars_visgen::operator() (const corr_matrix_var_declx) const
+
+inline
+
+ +

Definition at line 3787 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
void stan::gm::write_array_vars_visgen::write_array (const std::string & name,
const std::vector< expression > & arraydims,
const std::vector< expression > & matdims 
) const
+
+inline
+
+ +

Definition at line 3793 of file generator.hpp.

+ +
+
+
The documentation for this struct was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1write__array__vars__visgen.png b/doc/api/html/structstan_1_1gm_1_1write__array__vars__visgen.png new file mode 100644 index 0000000000000000000000000000000000000000..4164b269af643eb2f182f9a96d320e9100b64f9c GIT binary patch literal 754 zcmeAS@N?(olHy`uVBq!ia0vp^XMi|>gBeIBMP&T|QW60^A+G=b{|7Q(y!l$%e`o@b z1;z&s9ANFdBM;L3DtE6~+f6E2SKl;o z$@8mh!f6vW_!?h3zkbV)sLo)&eKsB2F0R_usB$+**rz9}H#hOL`xURL(NU|Dm_4i9 z*BY!m6XapWUfFUqc(UeZpt9iVnQKFfc-5xGYHik4{mrZLa$b~lgYGS zeLE*H;}M_eR>>tMF;j0|I=ju-|E`utT1xQN*?+TVdS2SNj`iD(_E*IQ*Zp=Hici|~ z@!**wrzS2jj@>+I$^EZ4jV3R#ztS*KrC-Wm(vv{rGbX;l>P$bFYZ<>RnwPL|pVgw5 zoM~w<+m~t2xOkSKChGu0#gzue4=Wg%9|SV99azl9(*X2215h`EoM{4s4Vr=n^PD&q ziVHIQx&YI}wyZIy?C+bMfA;+@HaL5aA=k^GczRuJ@wAs)Cma=v{$Z55P`^rdkBr&- zH_F@gs`{ONX8H4*iut+td7t)099dD`m}hXY>TBeUPl8*6bo)#nXU%w>nOYdy>|3_= ztI@1Scg5899^7|6Fa5{q(%{_NlS}H@Po!=GhJ#}m|1zD;rq#R#7p=873#HxOqj9Vz z_iy#~c|m)Y9bubg-mvM+x&ue%|GgQyF7&7W&GIhaQ$dEW&758rm8A3dRO)JpmQ#5og=$t}Be_S%7KK~_7$kNsfScJ1t{RJMXO>Gn!%cZdF6 zfAGzDp$8H6<(q9{6r^vr+HbasvhR78l;)?*ykq&Xvwe$p#-%Zwg9jatuoK7J7t-73 WYcDeMzbFPwpbVa_elF{r5}E+BXZ literal 0 HcmV?d00001 diff --git a/doc/api/html/structstan_1_1gm_1_1write__array__visgen-members.html b/doc/api/html/structstan_1_1gm_1_1write__array__visgen-members.html new file mode 100644 index 00000000000..4a54786167e --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1write__array__visgen-members.html @@ -0,0 +1,131 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::gm::write_array_visgen Member List
+
+
+ +

This is the complete list of members for stan::gm::write_array_visgen, including all inherited members.

+ + + + + + + + + + + + + + + + + + + + +
generate_initialize_array(const std::string &var_type, const std::string &read_type, const std::vector< expression > &read_args, const std::string &name, const std::vector< expression > &dims) const stan::gm::write_array_visgeninline
generate_initialize_array_bounded(const D &x, const std::string &base_type, const std::string &read_fun_prefix, const std::vector< expression > &dim_args) const stan::gm::write_array_visgeninline
o_stan::gm::visgen
operator()(const nil &) const stan::gm::write_array_visgeninline
operator()(const int_var_decl &x) const stan::gm::write_array_visgeninline
operator()(const double_var_decl &x) const stan::gm::write_array_visgeninline
operator()(const vector_var_decl &x) const stan::gm::write_array_visgeninline
operator()(const row_vector_var_decl &x) const stan::gm::write_array_visgeninline
operator()(const matrix_var_decl &x) const stan::gm::write_array_visgeninline
operator()(const unit_vector_var_decl &x) const stan::gm::write_array_visgeninline
operator()(const simplex_var_decl &x) const stan::gm::write_array_visgeninline
operator()(const ordered_var_decl &x) const stan::gm::write_array_visgeninline
operator()(const positive_ordered_var_decl &x) const stan::gm::write_array_visgeninline
operator()(const cholesky_factor_var_decl &x) const stan::gm::write_array_visgeninline
operator()(const cov_matrix_var_decl &x) const stan::gm::write_array_visgeninline
operator()(const corr_matrix_var_decl &x) const stan::gm::write_array_visgeninline
result_type typedefstan::gm::visgen
visgen(std::ostream &o)stan::gm::visgeninline
write_array_visgen(std::ostream &o)stan::gm::write_array_visgeninline
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1write__array__visgen.html b/doc/api/html/structstan_1_1gm_1_1write__array__visgen.html new file mode 100644 index 00000000000..7b1ae138497 --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1write__array__visgen.html @@ -0,0 +1,648 @@ + + + + + +Stan: stan::gm::write_array_visgen Struct Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::gm::write_array_visgen Struct Reference
+
+
+ +

#include <generator.hpp>

+
+Inheritance diagram for stan::gm::write_array_visgen:
+
+
+ + +stan::gm::visgen + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 write_array_visgen (std::ostream &o)
 
void operator() (const nil &) const
 
void operator() (const int_var_decl &x) const
 
template<typename D >
void generate_initialize_array_bounded (const D &x, const std::string &base_type, const std::string &read_fun_prefix, const std::vector< expression > &dim_args) const
 
void operator() (const double_var_decl &x) const
 
void operator() (const vector_var_decl &x) const
 
void operator() (const row_vector_var_decl &x) const
 
void operator() (const matrix_var_decl &x) const
 
void operator() (const unit_vector_var_decl &x) const
 
void operator() (const simplex_var_decl &x) const
 
void operator() (const ordered_var_decl &x) const
 
void operator() (const positive_ordered_var_decl &x) const
 
void operator() (const cholesky_factor_var_decl &x) const
 
void operator() (const cov_matrix_var_decl &x) const
 
void operator() (const corr_matrix_var_decl &x) const
 
void generate_initialize_array (const std::string &var_type, const std::string &read_type, const std::vector< expression > &read_args, const std::string &name, const std::vector< expression > &dims) const
 
- Public Member Functions inherited from stan::gm::visgen
 visgen (std::ostream &o)
 
+ + + + + + + +

+Additional Inherited Members

- Public Types inherited from stan::gm::visgen
typedef void result_type
 
- Public Attributes inherited from stan::gm::visgen
std::ostream & o_
 
+

Detailed Description

+
+

Definition at line 3579 of file generator.hpp.

+

Constructor & Destructor Documentation

+ +
+
+ + + + + +
+ + + + + + + + +
stan::gm::write_array_visgen::write_array_visgen (std::ostream & o)
+
+inline
+
+ +

Definition at line 3580 of file generator.hpp.

+ +
+
+

Member Function Documentation

+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
void stan::gm::write_array_visgen::generate_initialize_array (const std::string & var_type,
const std::string & read_type,
const std::vector< expression > & read_args,
const std::string & name,
const std::vector< expression > & dims 
) const
+
+inline
+
+ +

Definition at line 3667 of file generator.hpp.

+ +
+
+ +
+
+
+template<typename D >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
void stan::gm::write_array_visgen::generate_initialize_array_bounded (const D & x,
const std::string & base_type,
const std::string & read_fun_prefix,
const std::vector< expression > & dim_args 
) const
+
+inline
+
+ +

Definition at line 3590 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::write_array_visgen::operator() (const nil) const
+
+inline
+
+ +

Definition at line 3583 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::write_array_visgen::operator() (const int_var_declx) const
+
+inline
+
+ +

Definition at line 3584 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::write_array_visgen::operator() (const double_var_declx) const
+
+inline
+
+ +

Definition at line 3611 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::write_array_visgen::operator() (const vector_var_declx) const
+
+inline
+
+ +

Definition at line 3615 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::write_array_visgen::operator() (const row_vector_var_declx) const
+
+inline
+
+ +

Definition at line 3620 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::write_array_visgen::operator() (const matrix_var_declx) const
+
+inline
+
+ +

Definition at line 3625 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::write_array_visgen::operator() (const unit_vector_var_declx) const
+
+inline
+
+ +

Definition at line 3631 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::write_array_visgen::operator() (const simplex_var_declx) const
+
+inline
+
+ +

Definition at line 3636 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::write_array_visgen::operator() (const ordered_var_declx) const
+
+inline
+
+ +

Definition at line 3641 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::write_array_visgen::operator() (const positive_ordered_var_declx) const
+
+inline
+
+ +

Definition at line 3646 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::write_array_visgen::operator() (const cholesky_factor_var_declx) const
+
+inline
+
+ +

Definition at line 3651 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::write_array_visgen::operator() (const cov_matrix_var_declx) const
+
+inline
+
+ +

Definition at line 3657 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::write_array_visgen::operator() (const corr_matrix_var_declx) const
+
+inline
+
+ +

Definition at line 3662 of file generator.hpp.

+ +
+
+
The documentation for this struct was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1write__array__visgen.png b/doc/api/html/structstan_1_1gm_1_1write__array__visgen.png new file mode 100644 index 0000000000000000000000000000000000000000..55625cef17ece10bee50c2e1c77f59bcfb979aec GIT binary patch literal 710 zcmeAS@N?(olHy`uVBq!ia0vp^Yk)X_gBeI}-k;Y2q$C1-LR|m<{|{uoc=NTi|Ih>= z3ycpOIKbL@M;^%KC<*clW&kPzfvcxNj2IZ0LOop^Ln;{G&V8NtMuCT|T|eml|B3$F z1oC$3++0)Lk}`E+7K3pi&)?IVbWZDR@VF$iV~tAWgH4lC4zh1@oRs(Jq?BjYPvuC@ zs&lqCH*~e#S$k{${!Xs>VUpfXRq67(-~8T{cIRCCdZsQ+*kO{} z4(;eu3vzBg-(Z$8uWaT!CXY*|-%ls}?n>UYQO8U2$&`1@K#_9(i2sH8C%$Q)mhzN( z7;21gyv>U>S7ybZ z$@#NsQpwR9I-a*a-!+<`;v5q;Nv9yvb5p|9*lDRVSs0k>7}65eZqA?InUg*#Hum|( zxn9@unHi*G#11e`XWeihl@X|%fg2x}L$M`Nf#FQ!X{Lw=n;67OHu0aizV!UP-+y1d zKWP`oTi`n}Hh<&wxwCg&ci39K=TT7jO4T^#^{kbprJc`XlcqOa&!5)p(wVz`ugA3B z&D%{+?#-Kc)=JlA)}HGfx0iY@-^?^+oAAq2?-si_`E}L%%l52p`?KW9bFXcuON_Vc zHtYW8PkH?6SAC`O>}K<$muj1Im+tkbJ#foNVq&lT?>jP6N`Jdouk)U8Z^7F4pJ%;I zxxLBe$D!$_)w;8f^JjnC!*i+e?E5Ic%!YMuQ~C3o-~QcZWU=z~=i3i9@GzYF`A+qh z-mQl}X1uWzXL$Z+Ua#6whr6E=t!I_)x}A`wU(UAU`0RxA-M!Np57ZxnhE&*10jC)) Z^*Ny`FaGrX&j2Pm22WQ%mvv4FO#nLiPksOZ literal 0 HcmV?d00001 diff --git a/doc/api/html/structstan_1_1gm_1_1write__csv__header__visgen-members.html b/doc/api/html/structstan_1_1gm_1_1write__csv__header__visgen-members.html new file mode 100644 index 00000000000..e0765829f3f --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1write__csv__header__visgen-members.html @@ -0,0 +1,130 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::gm::write_csv_header_visgen Member List
+
+
+ +

This is the complete list of members for stan::gm::write_csv_header_visgen, including all inherited members.

+ + + + + + + + + + + + + + + + + + + +
generate_csv_header_array(const std::vector< expression > &matrix_dims, const std::string &name, const std::vector< expression > &dims) const stan::gm::write_csv_header_visgeninline
o_stan::gm::visgen
operator()(const nil &) const stan::gm::write_csv_header_visgeninline
operator()(const int_var_decl &x) const stan::gm::write_csv_header_visgeninline
operator()(const double_var_decl &x) const stan::gm::write_csv_header_visgeninline
operator()(const vector_var_decl &x) const stan::gm::write_csv_header_visgeninline
operator()(const row_vector_var_decl &x) const stan::gm::write_csv_header_visgeninline
operator()(const matrix_var_decl &x) const stan::gm::write_csv_header_visgeninline
operator()(const unit_vector_var_decl &x) const stan::gm::write_csv_header_visgeninline
operator()(const simplex_var_decl &x) const stan::gm::write_csv_header_visgeninline
operator()(const ordered_var_decl &x) const stan::gm::write_csv_header_visgeninline
operator()(const positive_ordered_var_decl &x) const stan::gm::write_csv_header_visgeninline
operator()(const cholesky_factor_var_decl &x) const stan::gm::write_csv_header_visgeninline
operator()(const cov_matrix_var_decl &x) const stan::gm::write_csv_header_visgeninline
operator()(const corr_matrix_var_decl &x) const stan::gm::write_csv_header_visgeninline
result_type typedefstan::gm::visgen
visgen(std::ostream &o)stan::gm::visgeninline
write_csv_header_visgen(std::ostream &o)stan::gm::write_csv_header_visgeninline
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1write__csv__header__visgen.html b/doc/api/html/structstan_1_1gm_1_1write__csv__header__visgen.html new file mode 100644 index 00000000000..0821ad74b5b --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1write__csv__header__visgen.html @@ -0,0 +1,583 @@ + + + + + +Stan: stan::gm::write_csv_header_visgen Struct Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::gm::write_csv_header_visgen Struct Reference
+
+
+ +

#include <generator.hpp>

+
+Inheritance diagram for stan::gm::write_csv_header_visgen:
+
+
+ + +stan::gm::visgen + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 write_csv_header_visgen (std::ostream &o)
 
void operator() (const nil &) const
 
void operator() (const int_var_decl &x) const
 
void operator() (const double_var_decl &x) const
 
void operator() (const vector_var_decl &x) const
 
void operator() (const row_vector_var_decl &x) const
 
void operator() (const matrix_var_decl &x) const
 
void operator() (const unit_vector_var_decl &x) const
 
void operator() (const simplex_var_decl &x) const
 
void operator() (const ordered_var_decl &x) const
 
void operator() (const positive_ordered_var_decl &x) const
 
void operator() (const cholesky_factor_var_decl &x) const
 
void operator() (const cov_matrix_var_decl &x) const
 
void operator() (const corr_matrix_var_decl &x) const
 
void generate_csv_header_array (const std::vector< expression > &matrix_dims, const std::string &name, const std::vector< expression > &dims) const
 
- Public Member Functions inherited from stan::gm::visgen
 visgen (std::ostream &o)
 
+ + + + + + + +

+Additional Inherited Members

- Public Types inherited from stan::gm::visgen
typedef void result_type
 
- Public Attributes inherited from stan::gm::visgen
std::ostream & o_
 
+

Detailed Description

+
+

Definition at line 2790 of file generator.hpp.

+

Constructor & Destructor Documentation

+ +
+
+ + + + + +
+ + + + + + + + +
stan::gm::write_csv_header_visgen::write_csv_header_visgen (std::ostream & o)
+
+inline
+
+ +

Definition at line 2791 of file generator.hpp.

+ +
+
+

Member Function Documentation

+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
void stan::gm::write_csv_header_visgen::generate_csv_header_array (const std::vector< expression > & matrix_dims,
const std::string & name,
const std::vector< expression > & dims 
) const
+
+inline
+
+ +

Definition at line 2856 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::write_csv_header_visgen::operator() (const nil) const
+
+inline
+
+ +

Definition at line 2794 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::write_csv_header_visgen::operator() (const int_var_declx) const
+
+inline
+
+ +

Definition at line 2795 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::write_csv_header_visgen::operator() (const double_var_declx) const
+
+inline
+
+ +

Definition at line 2798 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::write_csv_header_visgen::operator() (const vector_var_declx) const
+
+inline
+
+ +

Definition at line 2801 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::write_csv_header_visgen::operator() (const row_vector_var_declx) const
+
+inline
+
+ +

Definition at line 2806 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::write_csv_header_visgen::operator() (const matrix_var_declx) const
+
+inline
+
+ +

Definition at line 2811 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::write_csv_header_visgen::operator() (const unit_vector_var_declx) const
+
+inline
+
+ +

Definition at line 2817 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::write_csv_header_visgen::operator() (const simplex_var_declx) const
+
+inline
+
+ +

Definition at line 2822 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::write_csv_header_visgen::operator() (const ordered_var_declx) const
+
+inline
+
+ +

Definition at line 2827 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::write_csv_header_visgen::operator() (const positive_ordered_var_declx) const
+
+inline
+
+ +

Definition at line 2832 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::write_csv_header_visgen::operator() (const cholesky_factor_var_declx) const
+
+inline
+
+ +

Definition at line 2837 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::write_csv_header_visgen::operator() (const cov_matrix_var_declx) const
+
+inline
+
+ +

Definition at line 2843 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::write_csv_header_visgen::operator() (const corr_matrix_var_declx) const
+
+inline
+
+ +

Definition at line 2849 of file generator.hpp.

+ +
+
+
The documentation for this struct was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1write__csv__header__visgen.png b/doc/api/html/structstan_1_1gm_1_1write__csv__header__visgen.png new file mode 100644 index 0000000000000000000000000000000000000000..16aaca5a42bf455b7c876196316903c48ffb4b7f GIT binary patch literal 763 zcmeAS@N?(olHy`uVBq!ia0vp^7l1f`gBeK1pW>beq$C1-LR|m<{|{uoc=NTi|Ih>= z3ycpOIKbL@M;^%KC<*clW&kPzfvcxNj2IZ0x;$MRLn;{G&b>Y9u>ue4?8mGA{8wLZ zobc}318*Z8SKZ??O@&spPKb}3mMZC~Gs&b+ZGy_zHJmD*wyy;hls(l;kGfB)yF8!K z^OAar_=zzHRuQA8)#~5Aiuy~09d@RF zn7Aan>K9+C!^yc`uda9`mV_6rJN@%cyI$Io9GCvA>Aycun!KcTE9>_M?QbSKvm7Q}*$noDXa>+%3XCQ&vIa}&1Pc!vWAo8!e&AO1+K>=j3*f|JkEgWFj^p8vih~; z``FuuUF+^Yv|KRx-t`8CKGBA2eEQvU|$EOuT*V+qb%8 z^Qr$LjKA+sGPaJ4a64EfpS|~|#lDJ&+>~=0)8@GFs!4qe*%fWjqqF$V6YZtbZqJtt zxM6UAABWCaN2~das@d0-bj)?n8{b|yse?&Fi#ys%ym3u=nS2*lSJCS(wR>0g>%42T z-+pBi*Ocio+!OwWKU=@&!MaP?n(NhV-t#9e?n>odvBOz1pvresX`h!~kr#8$4rkXQ zo|cOtMeF>3*0h{UQjk`?kT`uc)6v*-Tj%aL9oq0Jc3o5v!|z=`YZ)pcu6EpN==#iV zap8QdZ{Mm^E`{s!e&)IKs+TCSH0WpOFZwo#`3JvABSY0S7N!@G+7k?q@hqt~G0 + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::gm::write_csv_vars_visgen Member List
+
+
+ +

This is the complete list of members for stan::gm::write_csv_vars_visgen, including all inherited members.

+ + + + + + + + + + + + + + + + + + + +
o_stan::gm::visgen
operator()(const nil &) const stan::gm::write_csv_vars_visgeninline
operator()(const int_var_decl &x) const stan::gm::write_csv_vars_visgeninline
operator()(const double_var_decl &x) const stan::gm::write_csv_vars_visgeninline
operator()(const vector_var_decl &x) const stan::gm::write_csv_vars_visgeninline
operator()(const row_vector_var_decl &x) const stan::gm::write_csv_vars_visgeninline
operator()(const matrix_var_decl &x) const stan::gm::write_csv_vars_visgeninline
operator()(const unit_vector_var_decl &x) const stan::gm::write_csv_vars_visgeninline
operator()(const simplex_var_decl &x) const stan::gm::write_csv_vars_visgeninline
operator()(const ordered_var_decl &x) const stan::gm::write_csv_vars_visgeninline
operator()(const positive_ordered_var_decl &x) const stan::gm::write_csv_vars_visgeninline
operator()(const cholesky_factor_var_decl &x) const stan::gm::write_csv_vars_visgeninline
operator()(const cov_matrix_var_decl &x) const stan::gm::write_csv_vars_visgeninline
operator()(const corr_matrix_var_decl &x) const stan::gm::write_csv_vars_visgeninline
result_type typedefstan::gm::visgen
visgen(std::ostream &o)stan::gm::visgeninline
write_array(const std::string &name, const std::vector< expression > &dims) const stan::gm::write_csv_vars_visgeninline
write_csv_vars_visgen(std::ostream &o)stan::gm::write_csv_vars_visgeninline
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1write__csv__vars__visgen.html b/doc/api/html/structstan_1_1gm_1_1write__csv__vars__visgen.html new file mode 100644 index 00000000000..f80e414131d --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1write__csv__vars__visgen.html @@ -0,0 +1,577 @@ + + + + + +Stan: stan::gm::write_csv_vars_visgen Struct Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::gm::write_csv_vars_visgen Struct Reference
+
+
+ +

#include <generator.hpp>

+
+Inheritance diagram for stan::gm::write_csv_vars_visgen:
+
+
+ + +stan::gm::visgen + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 write_csv_vars_visgen (std::ostream &o)
 
void operator() (const nil &) const
 
void operator() (const int_var_decl &x) const
 
void operator() (const double_var_decl &x) const
 
void operator() (const vector_var_decl &x) const
 
void operator() (const row_vector_var_decl &x) const
 
void operator() (const matrix_var_decl &x) const
 
void operator() (const unit_vector_var_decl &x) const
 
void operator() (const simplex_var_decl &x) const
 
void operator() (const ordered_var_decl &x) const
 
void operator() (const positive_ordered_var_decl &x) const
 
void operator() (const cholesky_factor_var_decl &x) const
 
void operator() (const cov_matrix_var_decl &x) const
 
void operator() (const corr_matrix_var_decl &x) const
 
void write_array (const std::string &name, const std::vector< expression > &dims) const
 
- Public Member Functions inherited from stan::gm::visgen
 visgen (std::ostream &o)
 
+ + + + + + + +

+Additional Inherited Members

- Public Types inherited from stan::gm::visgen
typedef void result_type
 
- Public Attributes inherited from stan::gm::visgen
std::ostream & o_
 
+

Detailed Description

+
+

Definition at line 3421 of file generator.hpp.

+

Constructor & Destructor Documentation

+ +
+
+ + + + + +
+ + + + + + + + +
stan::gm::write_csv_vars_visgen::write_csv_vars_visgen (std::ostream & o)
+
+inline
+
+ +

Definition at line 3422 of file generator.hpp.

+ +
+
+

Member Function Documentation

+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::write_csv_vars_visgen::operator() (const nil) const
+
+inline
+
+ +

Definition at line 3425 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::write_csv_vars_visgen::operator() (const int_var_declx) const
+
+inline
+
+ +

Definition at line 3427 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::write_csv_vars_visgen::operator() (const double_var_declx) const
+
+inline
+
+ +

Definition at line 3430 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::write_csv_vars_visgen::operator() (const vector_var_declx) const
+
+inline
+
+ +

Definition at line 3433 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::write_csv_vars_visgen::operator() (const row_vector_var_declx) const
+
+inline
+
+ +

Definition at line 3436 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::write_csv_vars_visgen::operator() (const matrix_var_declx) const
+
+inline
+
+ +

Definition at line 3439 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::write_csv_vars_visgen::operator() (const unit_vector_var_declx) const
+
+inline
+
+ +

Definition at line 3442 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::write_csv_vars_visgen::operator() (const simplex_var_declx) const
+
+inline
+
+ +

Definition at line 3445 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::write_csv_vars_visgen::operator() (const ordered_var_declx) const
+
+inline
+
+ +

Definition at line 3448 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::write_csv_vars_visgen::operator() (const positive_ordered_var_declx) const
+
+inline
+
+ +

Definition at line 3451 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::write_csv_vars_visgen::operator() (const cholesky_factor_var_declx) const
+
+inline
+
+ +

Definition at line 3454 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::write_csv_vars_visgen::operator() (const cov_matrix_var_declx) const
+
+inline
+
+ +

Definition at line 3457 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::write_csv_vars_visgen::operator() (const corr_matrix_var_declx) const
+
+inline
+
+ +

Definition at line 3460 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
void stan::gm::write_csv_vars_visgen::write_array (const std::string & name,
const std::vector< expression > & dims 
) const
+
+inline
+
+ +

Definition at line 3463 of file generator.hpp.

+ +
+
+
The documentation for this struct was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1write__csv__vars__visgen.png b/doc/api/html/structstan_1_1gm_1_1write__csv__vars__visgen.png new file mode 100644 index 0000000000000000000000000000000000000000..26c81ab5ee9fda55838591397baa1290b96e3857 GIT binary patch literal 732 zcmeAS@N?(olHy`uVBq!ia0vp^2Z1<%gBeIpU-r-gNJ#|vgt-3y{~ySF@#br3|Dg#$ z78oBmaDcV*jy#adQ4-`A%m7pb0#{Fk7%?y~WqZ0fhEy=Vo%?#-5(NRa?(-@4{!a{N ze{yNjX$x^aPRl8~B{SYMvHjnqbK1y6XOfA*Wrs<>jCfU6>gP*ZcvelcHk?#)>O8N? z%f)w03$nlI*@aDiZojhl^~e4g^FI%c{|daysj_nFY&N^8whI-en4e!asejAjE>4w~ zuJ5FmXn9rMxO(ogR-I{elG=nNY4=tx+RJf^rzUi%R#$iZ9EVA>cGgeI&E1obpd8$z zviHRDbB%@?=UfA;{JhrIi?;68SeLgedrnH!w-xtX_pev-v|6q^+rK7YU*d&r^S+12 z23^~?iG81e%FC{8fs;y3ZeQgwsqV1JgeCiYm_1*e&e{Oo)gk`3bLYFeR0I+j#SN-(%kriH~#C>XUC>vv8N1pDND# z=Y_2r$J4W$SGOFv^&olH^;pBxi}-Rgs=WWjCr`MSaKHS-k|}z>eWi}xIc}?AzIhwF z>lQ)#kc<2L^Cf;{6dP>v+W1xa*zzRp-^rp!k8Z#Dbn~>(D@hOj_i>lm+*(-iTJqLi zqrYal(nV!_J&uvD(&nw!I@P3Ab!<_{7WaiKyAI_Fi7Uji^Z8gy#oTlK%KIsQbx5FD z@msxBVS)!N>mS^X^<8-OK|wG>%m + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::gm::write_csv_visgen Member List
+
+
+ +

This is the complete list of members for stan::gm::write_csv_visgen, including all inherited members.

+ + + + + + + + + + + + + + + + + + + + +
generate_initialize_array(const std::string &var_type, const std::string &read_type, const std::vector< expression > &read_args, const std::string &name, const std::vector< expression > &dims) const stan::gm::write_csv_visgeninline
generate_initialize_array_bounded(const D &x, const std::string &base_type, const std::string &read_fun_prefix, const std::vector< expression > &dim_args) const stan::gm::write_csv_visgeninline
o_stan::gm::visgen
operator()(const nil &) const stan::gm::write_csv_visgeninline
operator()(const int_var_decl &x) const stan::gm::write_csv_visgeninline
operator()(const double_var_decl &x) const stan::gm::write_csv_visgeninline
operator()(const vector_var_decl &x) const stan::gm::write_csv_visgeninline
operator()(const row_vector_var_decl &x) const stan::gm::write_csv_visgeninline
operator()(const matrix_var_decl &x) const stan::gm::write_csv_visgeninline
operator()(const unit_vector_var_decl &x) const stan::gm::write_csv_visgeninline
operator()(const simplex_var_decl &x) const stan::gm::write_csv_visgeninline
operator()(const ordered_var_decl &x) const stan::gm::write_csv_visgeninline
operator()(const positive_ordered_var_decl &x) const stan::gm::write_csv_visgeninline
operator()(const cholesky_factor_var_decl &x) const stan::gm::write_csv_visgeninline
operator()(const cov_matrix_var_decl &x) const stan::gm::write_csv_visgeninline
operator()(const corr_matrix_var_decl &x) const stan::gm::write_csv_visgeninline
result_type typedefstan::gm::visgen
visgen(std::ostream &o)stan::gm::visgeninline
write_csv_visgen(std::ostream &o)stan::gm::write_csv_visgeninline
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1write__csv__visgen.html b/doc/api/html/structstan_1_1gm_1_1write__csv__visgen.html new file mode 100644 index 00000000000..480bdeef061 --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1write__csv__visgen.html @@ -0,0 +1,648 @@ + + + + + +Stan: stan::gm::write_csv_visgen Struct Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::gm::write_csv_visgen Struct Reference
+
+
+ +

#include <generator.hpp>

+
+Inheritance diagram for stan::gm::write_csv_visgen:
+
+
+ + +stan::gm::visgen + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 write_csv_visgen (std::ostream &o)
 
template<typename D >
void generate_initialize_array_bounded (const D &x, const std::string &base_type, const std::string &read_fun_prefix, const std::vector< expression > &dim_args) const
 
void operator() (const nil &) const
 
void operator() (const int_var_decl &x) const
 
void operator() (const double_var_decl &x) const
 
void operator() (const vector_var_decl &x) const
 
void operator() (const row_vector_var_decl &x) const
 
void operator() (const matrix_var_decl &x) const
 
void operator() (const unit_vector_var_decl &x) const
 
void operator() (const simplex_var_decl &x) const
 
void operator() (const ordered_var_decl &x) const
 
void operator() (const positive_ordered_var_decl &x) const
 
void operator() (const cholesky_factor_var_decl &x) const
 
void operator() (const cov_matrix_var_decl &x) const
 
void operator() (const corr_matrix_var_decl &x) const
 
void generate_initialize_array (const std::string &var_type, const std::string &read_type, const std::vector< expression > &read_args, const std::string &name, const std::vector< expression > &dims) const
 
- Public Member Functions inherited from stan::gm::visgen
 visgen (std::ostream &o)
 
+ + + + + + + +

+Additional Inherited Members

- Public Types inherited from stan::gm::visgen
typedef void result_type
 
- Public Attributes inherited from stan::gm::visgen
std::ostream & o_
 
+

Detailed Description

+
+

Definition at line 3265 of file generator.hpp.

+

Constructor & Destructor Documentation

+ +
+
+ + + + + +
+ + + + + + + + +
stan::gm::write_csv_visgen::write_csv_visgen (std::ostream & o)
+
+inline
+
+ +

Definition at line 3266 of file generator.hpp.

+ +
+
+

Member Function Documentation

+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
void stan::gm::write_csv_visgen::generate_initialize_array (const std::string & var_type,
const std::string & read_type,
const std::vector< expression > & read_args,
const std::string & name,
const std::vector< expression > & dims 
) const
+
+inline
+
+ +

Definition at line 3351 of file generator.hpp.

+ +
+
+ +
+
+
+template<typename D >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
void stan::gm::write_csv_visgen::generate_initialize_array_bounded (const D & x,
const std::string & base_type,
const std::string & read_fun_prefix,
const std::vector< expression > & dim_args 
) const
+
+inline
+
+ +

Definition at line 3270 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::write_csv_visgen::operator() (const nil) const
+
+inline
+
+ +

Definition at line 3290 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::write_csv_visgen::operator() (const int_var_declx) const
+
+inline
+
+ +

Definition at line 3291 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::write_csv_visgen::operator() (const double_var_declx) const
+
+inline
+
+ +

Definition at line 3295 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::write_csv_visgen::operator() (const vector_var_declx) const
+
+inline
+
+ +

Definition at line 3299 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::write_csv_visgen::operator() (const row_vector_var_declx) const
+
+inline
+
+ +

Definition at line 3304 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::write_csv_visgen::operator() (const matrix_var_declx) const
+
+inline
+
+ +

Definition at line 3309 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::write_csv_visgen::operator() (const unit_vector_var_declx) const
+
+inline
+
+ +

Definition at line 3315 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::write_csv_visgen::operator() (const simplex_var_declx) const
+
+inline
+
+ +

Definition at line 3320 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::write_csv_visgen::operator() (const ordered_var_declx) const
+
+inline
+
+ +

Definition at line 3325 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::write_csv_visgen::operator() (const positive_ordered_var_declx) const
+
+inline
+
+ +

Definition at line 3330 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::write_csv_visgen::operator() (const cholesky_factor_var_declx) const
+
+inline
+
+ +

Definition at line 3335 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::write_csv_visgen::operator() (const cov_matrix_var_declx) const
+
+inline
+
+ +

Definition at line 3341 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::write_csv_visgen::operator() (const corr_matrix_var_declx) const
+
+inline
+
+ +

Definition at line 3346 of file generator.hpp.

+ +
+
+
The documentation for this struct was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1write__csv__visgen.png b/doc/api/html/structstan_1_1gm_1_1write__csv__visgen.png new file mode 100644 index 0000000000000000000000000000000000000000..990697e01348c4829c888d9889ebf5cd295b0c17 GIT binary patch literal 679 zcmeAS@N?(olHy`uVBq!ia0vp^3xPO*gBeJ=IX<-jQW60^A+G=b{|7Q(y!l$%e`o@b z1;z&s9ANFdBM;^rkaB2iDp!EK938d_1}A=u6)4gC|9w zn}6BOlW>%mF=vNj1Ft#DhKFqoW_JV*v`I7FC~#(w&f`cpjF9|jFV!Y+=!yV?+A)Y= z@39LDcDL0D*2)&mUuY@ype1L=zKU(-$yGVRu7`evdG#Ms-{_me=w9-1)7|fO*TOHJ z@2~a!<39PXLC@;%GgM;wPOO{7bY5(JR*c`%*i-w>+A7=2_D}cu+P~_#bZ^%CzQo|m zS-E$g?mfqLSmLhCnJdR%EfDivvFl=*{^D19{SwFQ*RxjcwR%}FS87}4>#FbP6O$w4 zx2DZ6kJW4P`@;Oh@XFH?>3;bc>!Tae_DJp9d)oH!=iN28QXA~*AO4?rStPlw^gYA9 z&o=Kv4fU7r(qzlN;mKYgzE|XNEZYxpXn<@4dHKvA#`Zl*-R(XzzXMYhgQu&X%Q~lo FCII!QKcoNv literal 0 HcmV?d00001 diff --git a/doc/api/html/structstan_1_1gm_1_1write__dims__visgen-members.html b/doc/api/html/structstan_1_1gm_1_1write__dims__visgen-members.html new file mode 100644 index 00000000000..ee90cb71fc1 --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1write__dims__visgen-members.html @@ -0,0 +1,130 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::gm::write_dims_visgen Member List
+
+
+ +

This is the complete list of members for stan::gm::write_dims_visgen, including all inherited members.

+ + + + + + + + + + + + + + + + + + + +
generate_dims_array(const std::vector< expression > &matrix_dims_exprs, const std::vector< expression > &array_dims_exprs) const stan::gm::write_dims_visgeninline
o_stan::gm::visgen
operator()(const nil &) const stan::gm::write_dims_visgeninline
operator()(const int_var_decl &x) const stan::gm::write_dims_visgeninline
operator()(const double_var_decl &x) const stan::gm::write_dims_visgeninline
operator()(const vector_var_decl &x) const stan::gm::write_dims_visgeninline
operator()(const row_vector_var_decl &x) const stan::gm::write_dims_visgeninline
operator()(const matrix_var_decl &x) const stan::gm::write_dims_visgeninline
operator()(const unit_vector_var_decl &x) const stan::gm::write_dims_visgeninline
operator()(const simplex_var_decl &x) const stan::gm::write_dims_visgeninline
operator()(const ordered_var_decl &x) const stan::gm::write_dims_visgeninline
operator()(const positive_ordered_var_decl &x) const stan::gm::write_dims_visgeninline
operator()(const cholesky_factor_var_decl &x) const stan::gm::write_dims_visgeninline
operator()(const cov_matrix_var_decl &x) const stan::gm::write_dims_visgeninline
operator()(const corr_matrix_var_decl &x) const stan::gm::write_dims_visgeninline
result_type typedefstan::gm::visgen
visgen(std::ostream &o)stan::gm::visgeninline
write_dims_visgen(std::ostream &o)stan::gm::write_dims_visgeninline
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1write__dims__visgen.html b/doc/api/html/structstan_1_1gm_1_1write__dims__visgen.html new file mode 100644 index 00000000000..312e587da25 --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1write__dims__visgen.html @@ -0,0 +1,577 @@ + + + + + +Stan: stan::gm::write_dims_visgen Struct Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::gm::write_dims_visgen Struct Reference
+
+
+ +

#include <generator.hpp>

+
+Inheritance diagram for stan::gm::write_dims_visgen:
+
+
+ + +stan::gm::visgen + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 write_dims_visgen (std::ostream &o)
 
void operator() (const nil &) const
 
void operator() (const int_var_decl &x) const
 
void operator() (const double_var_decl &x) const
 
void operator() (const vector_var_decl &x) const
 
void operator() (const row_vector_var_decl &x) const
 
void operator() (const matrix_var_decl &x) const
 
void operator() (const unit_vector_var_decl &x) const
 
void operator() (const simplex_var_decl &x) const
 
void operator() (const ordered_var_decl &x) const
 
void operator() (const positive_ordered_var_decl &x) const
 
void operator() (const cholesky_factor_var_decl &x) const
 
void operator() (const cov_matrix_var_decl &x) const
 
void operator() (const corr_matrix_var_decl &x) const
 
void generate_dims_array (const std::vector< expression > &matrix_dims_exprs, const std::vector< expression > &array_dims_exprs) const
 
- Public Member Functions inherited from stan::gm::visgen
 visgen (std::ostream &o)
 
+ + + + + + + +

+Additional Inherited Members

- Public Types inherited from stan::gm::visgen
typedef void result_type
 
- Public Attributes inherited from stan::gm::visgen
std::ostream & o_
 
+

Detailed Description

+
+

Definition at line 2595 of file generator.hpp.

+

Constructor & Destructor Documentation

+ +
+
+ + + + + +
+ + + + + + + + +
stan::gm::write_dims_visgen::write_dims_visgen (std::ostream & o)
+
+inline
+
+ +

Definition at line 2596 of file generator.hpp.

+ +
+
+

Member Function Documentation

+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
void stan::gm::write_dims_visgen::generate_dims_array (const std::vector< expression > & matrix_dims_exprs,
const std::vector< expression > & array_dims_exprs 
) const
+
+inline
+
+ +

Definition at line 2661 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::write_dims_visgen::operator() (const nil) const
+
+inline
+
+ +

Definition at line 2599 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::write_dims_visgen::operator() (const int_var_declx) const
+
+inline
+
+ +

Definition at line 2600 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::write_dims_visgen::operator() (const double_var_declx) const
+
+inline
+
+ +

Definition at line 2603 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::write_dims_visgen::operator() (const vector_var_declx) const
+
+inline
+
+ +

Definition at line 2606 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::write_dims_visgen::operator() (const row_vector_var_declx) const
+
+inline
+
+ +

Definition at line 2611 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::write_dims_visgen::operator() (const matrix_var_declx) const
+
+inline
+
+ +

Definition at line 2616 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::write_dims_visgen::operator() (const unit_vector_var_declx) const
+
+inline
+
+ +

Definition at line 2622 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::write_dims_visgen::operator() (const simplex_var_declx) const
+
+inline
+
+ +

Definition at line 2627 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::write_dims_visgen::operator() (const ordered_var_declx) const
+
+inline
+
+ +

Definition at line 2632 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::write_dims_visgen::operator() (const positive_ordered_var_declx) const
+
+inline
+
+ +

Definition at line 2637 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::write_dims_visgen::operator() (const cholesky_factor_var_declx) const
+
+inline
+
+ +

Definition at line 2642 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::write_dims_visgen::operator() (const cov_matrix_var_declx) const
+
+inline
+
+ +

Definition at line 2648 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::write_dims_visgen::operator() (const corr_matrix_var_declx) const
+
+inline
+
+ +

Definition at line 2654 of file generator.hpp.

+ +
+
+
The documentation for this struct was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1write__dims__visgen.png b/doc/api/html/structstan_1_1gm_1_1write__dims__visgen.png new file mode 100644 index 0000000000000000000000000000000000000000..ad013bbbabcff923c681754780b031c674d57f0c GIT binary patch literal 689 zcmeAS@N?(olHy`uVBq!ia0vp^%YZn5gBeIJnfuQXNJ#|vgt-3y{~ySF@#br3|Dg#$ z78oBmaDcV*jy#adQ4-`A%m7pb0#{Fk7%?y~Ie5A_hEy=Vo%?XoY6TuQ{`tnW|J~za zLp(%Q=We@xF7;Gl`jiRDOz+~`5+&a8H>=#8yH3+Hu*BE1>(Q#TNlUu-2q~|Wn}1=- z67!u4X1X2S66f~tzWvjOUsU2>mCwq5va|BqJElojp6y9Hw>@R<+Sd~!YhKT+n-=LX zX>2+$#II=5ofUe!)&KU-((}wcx3uQ%Vd*86>x{x*sjrj@ zyn3c~$`a*sXD6w+CtOy2x&FnhNg}S-r!3KMJDVuccAHt?Ec1hZHSNzHe-xc}f1zbm zUGwwl8Q&)J3AkTp=~$G_*c=* z4DbA)q7O~(7sxr6FOL4MpW1sl$F;p=bw=O)WiO?z;+L_9HvM@xOF#7A%$Em6Hn{!X zp>;(kdez+g^YSNp53Sm{W?P$@fpYTacYf<$h1(h}jP{*t9=1UtadCW!G&D&wk|kD!9qle(}uu+pAIx-Fq|dS54UU?K*S49vln%{9?&_v%OsRtzYi;WzYD$@_$%w z|NEI=woPR?{%0OzwAq55YoF8RO}=V#3g~I=^FNm{|1pMzL!j}}DS7Alt5lR%s-|g* Q1Jf6Sr>mdKI;Vst0L(#8-v9sr literal 0 HcmV?d00001 diff --git a/doc/api/html/structstan_1_1gm_1_1write__param__names__visgen-members.html b/doc/api/html/structstan_1_1gm_1_1write__param__names__visgen-members.html new file mode 100644 index 00000000000..e26251f5022 --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1write__param__names__visgen-members.html @@ -0,0 +1,130 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::gm::write_param_names_visgen Member List
+
+
+ +

This is the complete list of members for stan::gm::write_param_names_visgen, including all inherited members.

+ + + + + + + + + + + + + + + + + + + +
generate_param_names(const std::string &name) const stan::gm::write_param_names_visgeninline
o_stan::gm::visgen
operator()(const nil &) const stan::gm::write_param_names_visgeninline
operator()(const int_var_decl &x) const stan::gm::write_param_names_visgeninline
operator()(const double_var_decl &x) const stan::gm::write_param_names_visgeninline
operator()(const vector_var_decl &x) const stan::gm::write_param_names_visgeninline
operator()(const row_vector_var_decl &x) const stan::gm::write_param_names_visgeninline
operator()(const matrix_var_decl &x) const stan::gm::write_param_names_visgeninline
operator()(const unit_vector_var_decl &x) const stan::gm::write_param_names_visgeninline
operator()(const simplex_var_decl &x) const stan::gm::write_param_names_visgeninline
operator()(const ordered_var_decl &x) const stan::gm::write_param_names_visgeninline
operator()(const positive_ordered_var_decl &x) const stan::gm::write_param_names_visgeninline
operator()(const cholesky_factor_var_decl &x) const stan::gm::write_param_names_visgeninline
operator()(const cov_matrix_var_decl &x) const stan::gm::write_param_names_visgeninline
operator()(const corr_matrix_var_decl &x) const stan::gm::write_param_names_visgeninline
result_type typedefstan::gm::visgen
visgen(std::ostream &o)stan::gm::visgeninline
write_param_names_visgen(std::ostream &o)stan::gm::write_param_names_visgeninline
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1write__param__names__visgen.html b/doc/api/html/structstan_1_1gm_1_1write__param__names__visgen.html new file mode 100644 index 00000000000..feb4d33c1d6 --- /dev/null +++ b/doc/api/html/structstan_1_1gm_1_1write__param__names__visgen.html @@ -0,0 +1,567 @@ + + + + + +Stan: stan::gm::write_param_names_visgen Struct Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::gm::write_param_names_visgen Struct Reference
+
+
+ +

#include <generator.hpp>

+
+Inheritance diagram for stan::gm::write_param_names_visgen:
+
+
+ + +stan::gm::visgen + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 write_param_names_visgen (std::ostream &o)
 
void operator() (const nil &) const
 
void operator() (const int_var_decl &x) const
 
void operator() (const double_var_decl &x) const
 
void operator() (const vector_var_decl &x) const
 
void operator() (const row_vector_var_decl &x) const
 
void operator() (const matrix_var_decl &x) const
 
void operator() (const unit_vector_var_decl &x) const
 
void operator() (const simplex_var_decl &x) const
 
void operator() (const ordered_var_decl &x) const
 
void operator() (const positive_ordered_var_decl &x) const
 
void operator() (const cholesky_factor_var_decl &x) const
 
void operator() (const cov_matrix_var_decl &x) const
 
void operator() (const corr_matrix_var_decl &x) const
 
void generate_param_names (const std::string &name) const
 
- Public Member Functions inherited from stan::gm::visgen
 visgen (std::ostream &o)
 
+ + + + + + + +

+Additional Inherited Members

- Public Types inherited from stan::gm::visgen
typedef void result_type
 
- Public Attributes inherited from stan::gm::visgen
std::ostream & o_
 
+

Detailed Description

+
+

Definition at line 2710 of file generator.hpp.

+

Constructor & Destructor Documentation

+ +
+
+ + + + + +
+ + + + + + + + +
stan::gm::write_param_names_visgen::write_param_names_visgen (std::ostream & o)
+
+inline
+
+ +

Definition at line 2711 of file generator.hpp.

+ +
+
+

Member Function Documentation

+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::write_param_names_visgen::generate_param_names (const std::string & name) const
+
+inline
+
+ +

Definition at line 2752 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::write_param_names_visgen::operator() (const nil) const
+
+inline
+
+ +

Definition at line 2714 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::write_param_names_visgen::operator() (const int_var_declx) const
+
+inline
+
+ +

Definition at line 2715 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::write_param_names_visgen::operator() (const double_var_declx) const
+
+inline
+
+ +

Definition at line 2718 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::write_param_names_visgen::operator() (const vector_var_declx) const
+
+inline
+
+ +

Definition at line 2721 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::write_param_names_visgen::operator() (const row_vector_var_declx) const
+
+inline
+
+ +

Definition at line 2724 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::write_param_names_visgen::operator() (const matrix_var_declx) const
+
+inline
+
+ +

Definition at line 2727 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::write_param_names_visgen::operator() (const unit_vector_var_declx) const
+
+inline
+
+ +

Definition at line 2730 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::write_param_names_visgen::operator() (const simplex_var_declx) const
+
+inline
+
+ +

Definition at line 2733 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::write_param_names_visgen::operator() (const ordered_var_declx) const
+
+inline
+
+ +

Definition at line 2736 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::write_param_names_visgen::operator() (const positive_ordered_var_declx) const
+
+inline
+
+ +

Definition at line 2739 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::write_param_names_visgen::operator() (const cholesky_factor_var_declx) const
+
+inline
+
+ +

Definition at line 2742 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::write_param_names_visgen::operator() (const cov_matrix_var_declx) const
+
+inline
+
+ +

Definition at line 2745 of file generator.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void stan::gm::write_param_names_visgen::operator() (const corr_matrix_var_declx) const
+
+inline
+
+ +

Definition at line 2748 of file generator.hpp.

+ +
+
+
The documentation for this struct was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1gm_1_1write__param__names__visgen.png b/doc/api/html/structstan_1_1gm_1_1write__param__names__visgen.png new file mode 100644 index 0000000000000000000000000000000000000000..1258a7142827b84332cef800e7584d9a86327b98 GIT binary patch literal 775 zcmeAS@N?(olHy`uVBq!ia0vp^w}Ci-gBeIJ*ZPnNq$C1-LR|m<{|{uoc=NTi|Ih>= z3ycpOIKbL@M;^%KC<*clW&kPzfvcxNj2IZ0rg^$JhEy=Vo%^t8vx0yt|Mi)B{ws%f zbF7&Wm3-;Yo0^#YZV@*Q$34`)Y~tJ8hny6%X_CCk6M zvsL!`Z{N^5Q#+@B=BMBL@9g|?#C@mW>uw9PzAQfl&*>%X(LP2?cP*NxtK~RN`R$4< zCeJEY^Np$g&v-TH1Ts6=0C3#a+=3aLPs;E~;pS0S8UCKU$?$9PX2vh->C7+u&#_&YKZkdLy`{7RFd$GA z+*u^xBoV^Wp!gJ~DY2TdgzxVQv%h<8)aK~BGv8Tt#w?!wbnJG!X?;ppE5g_GH>F&? zw2>v}V&%8@@vl!y%wM+t+akG{)xjyICB`SON!HKUW4_J8>gbvksoh=^vJ|ro+NBD(^Zl1cTy_hv_~2w{o>CFx4`6y85}Sb4q9e0L~qG(*OVf literal 0 HcmV?d00001 diff --git a/doc/api/html/structstan_1_1io_1_1stan__csv-members.html b/doc/api/html/structstan_1_1io_1_1stan__csv-members.html new file mode 100644 index 00000000000..e8d69d46872 --- /dev/null +++ b/doc/api/html/structstan_1_1io_1_1stan__csv-members.html @@ -0,0 +1,117 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::io::stan_csv Member List
+
+ +
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1io_1_1stan__csv.html b/doc/api/html/structstan_1_1io_1_1stan__csv.html new file mode 100644 index 00000000000..9ae5b455ed8 --- /dev/null +++ b/doc/api/html/structstan_1_1io_1_1stan__csv.html @@ -0,0 +1,206 @@ + + + + + +Stan: stan::io::stan_csv Struct Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::io::stan_csv Struct Reference
+
+
+ +

#include <stan_csv_reader.hpp>

+ + + + + + + + + + + + +

+Public Attributes

stan_csv_metadata metadata
 
Eigen::Matrix< std::string,
+Eigen::Dynamic, 1 > 
header
 
stan_csv_adaptation adaptation
 
Eigen::MatrixXd samples
 
stan_csv_timing timing
 
+

Detailed Description

+
+

Definition at line 60 of file stan_csv_reader.hpp.

+

Member Data Documentation

+ +
+
+ + + + +
stan_csv_adaptation stan::io::stan_csv::adaptation
+
+ +

Definition at line 63 of file stan_csv_reader.hpp.

+ +
+
+ +
+
+ + + + +
Eigen::Matrix<std::string, Eigen::Dynamic, 1> stan::io::stan_csv::header
+
+ +

Definition at line 62 of file stan_csv_reader.hpp.

+ +
+
+ +
+
+ + + + +
stan_csv_metadata stan::io::stan_csv::metadata
+
+ +

Definition at line 61 of file stan_csv_reader.hpp.

+ +
+
+ +
+
+ + + + +
Eigen::MatrixXd stan::io::stan_csv::samples
+
+ +

Definition at line 64 of file stan_csv_reader.hpp.

+ +
+
+ +
+
+ + + + +
stan_csv_timing stan::io::stan_csv::timing
+
+ +

Definition at line 65 of file stan_csv_reader.hpp.

+ +
+
+
The documentation for this struct was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1io_1_1stan__csv__adaptation-members.html b/doc/api/html/structstan_1_1io_1_1stan__csv__adaptation-members.html new file mode 100644 index 00000000000..4960f8d6056 --- /dev/null +++ b/doc/api/html/structstan_1_1io_1_1stan__csv__adaptation-members.html @@ -0,0 +1,115 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::io::stan_csv_adaptation Member List
+
+ +
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1io_1_1stan__csv__adaptation.html b/doc/api/html/structstan_1_1io_1_1stan__csv__adaptation.html new file mode 100644 index 00000000000..aa8d73ca51e --- /dev/null +++ b/doc/api/html/structstan_1_1io_1_1stan__csv__adaptation.html @@ -0,0 +1,189 @@ + + + + + +Stan: stan::io::stan_csv_adaptation Struct Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::io::stan_csv_adaptation Struct Reference
+
+
+ +

#include <stan_csv_reader.hpp>

+ + + + +

+Public Member Functions

 stan_csv_adaptation ()
 
+ + + + + +

+Public Attributes

double step_size
 
Eigen::MatrixXd metric
 
+

Detailed Description

+
+

Definition at line 44 of file stan_csv_reader.hpp.

+

Constructor & Destructor Documentation

+ +
+
+ + + + + +
+ + + + + + + +
stan::io::stan_csv_adaptation::stan_csv_adaptation ()
+
+inline
+
+ +

Definition at line 48 of file stan_csv_reader.hpp.

+ +
+
+

Member Data Documentation

+ +
+
+ + + + +
Eigen::MatrixXd stan::io::stan_csv_adaptation::metric
+
+ +

Definition at line 46 of file stan_csv_reader.hpp.

+ +
+
+ +
+
+ + + + +
double stan::io::stan_csv_adaptation::step_size
+
+ +

Definition at line 45 of file stan_csv_reader.hpp.

+ +
+
+
The documentation for this struct was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1io_1_1stan__csv__metadata-members.html b/doc/api/html/structstan_1_1io_1_1stan__csv__metadata-members.html new file mode 100644 index 00000000000..7226cfb9bb5 --- /dev/null +++ b/doc/api/html/structstan_1_1io_1_1stan__csv__metadata-members.html @@ -0,0 +1,129 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::io::stan_csv_metadata Member List
+
+ +
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1io_1_1stan__csv__metadata.html b/doc/api/html/structstan_1_1io_1_1stan__csv__metadata.html new file mode 100644 index 00000000000..2749ef4990a --- /dev/null +++ b/doc/api/html/structstan_1_1io_1_1stan__csv__metadata.html @@ -0,0 +1,413 @@ + + + + + +Stan: stan::io::stan_csv_metadata Struct Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::io::stan_csv_metadata Struct Reference
+
+
+ +

#include <stan_csv_reader.hpp>

+ + + + +

+Public Member Functions

 stan_csv_metadata ()
 
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Attributes

int stan_version_major
 
int stan_version_minor
 
int stan_version_patch
 
std::string model
 
std::string data
 
std::string init
 
size_t chain_id
 
size_t seed
 
bool random_seed
 
size_t num_samples
 
size_t num_warmup
 
bool save_warmup
 
size_t thin
 
bool append_samples
 
std::string algorithm
 
std::string engine
 
+

Detailed Description

+
+

Definition at line 16 of file stan_csv_reader.hpp.

+

Constructor & Destructor Documentation

+ +
+
+ + + + + +
+ + + + + + + +
stan::io::stan_csv_metadata::stan_csv_metadata ()
+
+inline
+
+ +

Definition at line 35 of file stan_csv_reader.hpp.

+ +
+
+

Member Data Documentation

+ +
+
+ + + + +
std::string stan::io::stan_csv_metadata::algorithm
+
+ +

Definition at line 32 of file stan_csv_reader.hpp.

+ +
+
+ +
+
+ + + + +
bool stan::io::stan_csv_metadata::append_samples
+
+ +

Definition at line 31 of file stan_csv_reader.hpp.

+ +
+
+ +
+
+ + + + +
size_t stan::io::stan_csv_metadata::chain_id
+
+ +

Definition at line 24 of file stan_csv_reader.hpp.

+ +
+
+ +
+
+ + + + +
std::string stan::io::stan_csv_metadata::data
+
+ +

Definition at line 22 of file stan_csv_reader.hpp.

+ +
+
+ +
+
+ + + + +
std::string stan::io::stan_csv_metadata::engine
+
+ +

Definition at line 33 of file stan_csv_reader.hpp.

+ +
+
+ +
+
+ + + + +
std::string stan::io::stan_csv_metadata::init
+
+ +

Definition at line 23 of file stan_csv_reader.hpp.

+ +
+
+ +
+
+ + + + +
std::string stan::io::stan_csv_metadata::model
+
+ +

Definition at line 21 of file stan_csv_reader.hpp.

+ +
+
+ +
+
+ + + + +
size_t stan::io::stan_csv_metadata::num_samples
+
+ +

Definition at line 27 of file stan_csv_reader.hpp.

+ +
+
+ +
+
+ + + + +
size_t stan::io::stan_csv_metadata::num_warmup
+
+ +

Definition at line 28 of file stan_csv_reader.hpp.

+ +
+
+ +
+
+ + + + +
bool stan::io::stan_csv_metadata::random_seed
+
+ +

Definition at line 26 of file stan_csv_reader.hpp.

+ +
+
+ +
+
+ + + + +
bool stan::io::stan_csv_metadata::save_warmup
+
+ +

Definition at line 29 of file stan_csv_reader.hpp.

+ +
+
+ +
+
+ + + + +
size_t stan::io::stan_csv_metadata::seed
+
+ +

Definition at line 25 of file stan_csv_reader.hpp.

+ +
+
+ +
+
+ + + + +
int stan::io::stan_csv_metadata::stan_version_major
+
+ +

Definition at line 17 of file stan_csv_reader.hpp.

+ +
+
+ +
+
+ + + + +
int stan::io::stan_csv_metadata::stan_version_minor
+
+ +

Definition at line 18 of file stan_csv_reader.hpp.

+ +
+
+ +
+
+ + + + +
int stan::io::stan_csv_metadata::stan_version_patch
+
+ +

Definition at line 19 of file stan_csv_reader.hpp.

+ +
+
+ +
+
+ + + + +
size_t stan::io::stan_csv_metadata::thin
+
+ +

Definition at line 30 of file stan_csv_reader.hpp.

+ +
+
+
The documentation for this struct was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1io_1_1stan__csv__timing-members.html b/doc/api/html/structstan_1_1io_1_1stan__csv__timing-members.html new file mode 100644 index 00000000000..3c9cf5be942 --- /dev/null +++ b/doc/api/html/structstan_1_1io_1_1stan__csv__timing-members.html @@ -0,0 +1,115 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::io::stan_csv_timing Member List
+
+
+ +

This is the complete list of members for stan::io::stan_csv_timing, including all inherited members.

+ + + + +
samplingstan::io::stan_csv_timing
stan_csv_timing()stan::io::stan_csv_timinginline
warmupstan::io::stan_csv_timing
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1io_1_1stan__csv__timing.html b/doc/api/html/structstan_1_1io_1_1stan__csv__timing.html new file mode 100644 index 00000000000..ddf17ed4aa0 --- /dev/null +++ b/doc/api/html/structstan_1_1io_1_1stan__csv__timing.html @@ -0,0 +1,189 @@ + + + + + +Stan: stan::io::stan_csv_timing Struct Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::io::stan_csv_timing Struct Reference
+
+
+ +

#include <stan_csv_reader.hpp>

+ + + + +

+Public Member Functions

 stan_csv_timing ()
 
+ + + + + +

+Public Attributes

double warmup
 
double sampling
 
+

Detailed Description

+
+

Definition at line 52 of file stan_csv_reader.hpp.

+

Constructor & Destructor Documentation

+ +
+
+ + + + + +
+ + + + + + + +
stan::io::stan_csv_timing::stan_csv_timing ()
+
+inline
+
+ +

Definition at line 56 of file stan_csv_reader.hpp.

+ +
+
+

Member Data Documentation

+ +
+
+ + + + +
double stan::io::stan_csv_timing::sampling
+
+ +

Definition at line 54 of file stan_csv_reader.hpp.

+ +
+
+ +
+
+ + + + +
double stan::io::stan_csv_timing::warmup
+
+ +

Definition at line 53 of file stan_csv_reader.hpp.

+ +
+
+
The documentation for this struct was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1is__constant-members.html b/doc/api/html/structstan_1_1is__constant-members.html new file mode 100644 index 00000000000..3e992366ffe --- /dev/null +++ b/doc/api/html/structstan_1_1is__constant-members.html @@ -0,0 +1,113 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::is_constant< T > Member List
+
+
+ +

This is the complete list of members for stan::is_constant< T >, including all inherited members.

+ + +
value enum valuestan::is_constant< T >
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1is__constant.html b/doc/api/html/structstan_1_1is__constant.html new file mode 100644 index 00000000000..c1a8e6e7c1c --- /dev/null +++ b/doc/api/html/structstan_1_1is__constant.html @@ -0,0 +1,168 @@ + + + + + +Stan: stan::is_constant< T > Struct Template Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::is_constant< T > Struct Template Reference
+
+
+ +

Metaprogramming struct to detect whether a given type is constant in the mathematical sense (not the C++ const sense). + More...

+ +

#include <traits.hpp>

+ + + + + +

+Public Types

enum  { value = boost::is_convertible<T,double>::value + }
 A boolean constant with equal to true if the type parameter T is a mathematical constant. More...
 
+

Detailed Description

+

template<typename T>
+struct stan::is_constant< T >

+ +

Metaprogramming struct to detect whether a given type is constant in the mathematical sense (not the C++ const sense).

+

If the parameter type is constant, value will be equal to true.

+

The baseline implementation in this abstract base class is to classify a type T as constant if it can be converted (i.e., assigned) to a double. This baseline should be overridden for any type that should be treated as a variable.

+
Template Parameters
+ + +
TType being tested.
+
+
+ +

Definition at line 30 of file traits.hpp.

+

Member Enumeration Documentation

+ +
+
+
+template<typename T >
+ + + + +
anonymous enum
+
+ +

A boolean constant with equal to true if the type parameter T is a mathematical constant.

+
Enumerator:
+ +
value  +
+
+
+ +

Definition at line 35 of file traits.hpp.

+ +
+
+
The documentation for this struct was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1is__constant__struct-members.html b/doc/api/html/structstan_1_1is__constant__struct-members.html new file mode 100644 index 00000000000..be5427a4603 --- /dev/null +++ b/doc/api/html/structstan_1_1is__constant__struct-members.html @@ -0,0 +1,113 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::is_constant_struct< T > Member List
+
+
+ +

This is the complete list of members for stan::is_constant_struct< T >, including all inherited members.

+ + +
value enum valuestan::is_constant_struct< T >
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1is__constant__struct.html b/doc/api/html/structstan_1_1is__constant__struct.html new file mode 100644 index 00000000000..36403c0bc00 --- /dev/null +++ b/doc/api/html/structstan_1_1is__constant__struct.html @@ -0,0 +1,157 @@ + + + + + +Stan: stan::is_constant_struct< T > Struct Template Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::is_constant_struct< T > Struct Template Reference
+
+
+ +

Metaprogram to determine if a type has a base scalar type that can be assigned to type double. + More...

+ +

#include <traits.hpp>

+ + + + +

+Public Types

enum  { value = is_constant<T>::value + }
 
+

Detailed Description

+

template<typename T>
+struct stan::is_constant_struct< T >

+ +

Metaprogram to determine if a type has a base scalar type that can be assigned to type double.

+ +

Definition at line 44 of file traits.hpp.

+

Member Enumeration Documentation

+ +
+
+
+template<typename T>
+ + + + +
anonymous enum
+
+
Enumerator:
+ +
value  +
+
+
+ +

Definition at line 45 of file traits.hpp.

+ +
+
+
The documentation for this struct was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1is__constant__struct_3_01_eigen_1_1_block_3_01_t_01_4_01_4-members.html b/doc/api/html/structstan_1_1is__constant__struct_3_01_eigen_1_1_block_3_01_t_01_4_01_4-members.html new file mode 100644 index 00000000000..201353d0c41 --- /dev/null +++ b/doc/api/html/structstan_1_1is__constant__struct_3_01_eigen_1_1_block_3_01_t_01_4_01_4-members.html @@ -0,0 +1,113 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::is_constant_struct< Eigen::Block< T > > Member List
+
+
+ +

This is the complete list of members for stan::is_constant_struct< Eigen::Block< T > >, including all inherited members.

+ + +
value enum valuestan::is_constant_struct< Eigen::Block< T > >
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1is__constant__struct_3_01_eigen_1_1_block_3_01_t_01_4_01_4.html b/doc/api/html/structstan_1_1is__constant__struct_3_01_eigen_1_1_block_3_01_t_01_4_01_4.html new file mode 100644 index 00000000000..935110aad34 --- /dev/null +++ b/doc/api/html/structstan_1_1is__constant__struct_3_01_eigen_1_1_block_3_01_t_01_4_01_4.html @@ -0,0 +1,153 @@ + + + + + +Stan: stan::is_constant_struct< Eigen::Block< T > > Struct Template Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::is_constant_struct< Eigen::Block< T > > Struct Template Reference
+
+
+ +

#include <traits.hpp>

+ + + + +

+Public Types

enum  { value = is_constant_struct<T>::value + }
 
+

Detailed Description

+

template<typename T>
+struct stan::is_constant_struct< Eigen::Block< T > >

+ + +

Definition at line 60 of file traits.hpp.

+

Member Enumeration Documentation

+ +
+
+
+template<typename T >
+ + + + +
anonymous enum
+
+
Enumerator:
+ +
value  +
+
+
+ +

Definition at line 61 of file traits.hpp.

+ +
+
+
The documentation for this struct was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1is__constant__struct_3_01_eigen_1_1_matrix_3_01_t_00_01_r_00_01_c_01_4_01_4-members.html b/doc/api/html/structstan_1_1is__constant__struct_3_01_eigen_1_1_matrix_3_01_t_00_01_r_00_01_c_01_4_01_4-members.html new file mode 100644 index 00000000000..531cbc94a02 --- /dev/null +++ b/doc/api/html/structstan_1_1is__constant__struct_3_01_eigen_1_1_matrix_3_01_t_00_01_r_00_01_c_01_4_01_4-members.html @@ -0,0 +1,113 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::is_constant_struct< Eigen::Matrix< T, R, C > > Member List
+
+
+ +

This is the complete list of members for stan::is_constant_struct< Eigen::Matrix< T, R, C > >, including all inherited members.

+ + +
value enum valuestan::is_constant_struct< Eigen::Matrix< T, R, C > >
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1is__constant__struct_3_01_eigen_1_1_matrix_3_01_t_00_01_r_00_01_c_01_4_01_4.html b/doc/api/html/structstan_1_1is__constant__struct_3_01_eigen_1_1_matrix_3_01_t_00_01_r_00_01_c_01_4_01_4.html new file mode 100644 index 00000000000..01b862a8f04 --- /dev/null +++ b/doc/api/html/structstan_1_1is__constant__struct_3_01_eigen_1_1_matrix_3_01_t_00_01_r_00_01_c_01_4_01_4.html @@ -0,0 +1,153 @@ + + + + + +Stan: stan::is_constant_struct< Eigen::Matrix< T, R, C > > Struct Template Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::is_constant_struct< Eigen::Matrix< T, R, C > > Struct Template Reference
+
+
+ +

#include <traits.hpp>

+ + + + +

+Public Types

enum  { value = is_constant_struct<T>::value + }
 
+

Detailed Description

+

template<typename T, int R, int C>
+struct stan::is_constant_struct< Eigen::Matrix< T, R, C > >

+ + +

Definition at line 55 of file traits.hpp.

+

Member Enumeration Documentation

+ +
+
+
+template<typename T , int R, int C>
+ + + + +
anonymous enum
+
+
Enumerator:
+ +
value  +
+
+
+ +

Definition at line 56 of file traits.hpp.

+ +
+
+
The documentation for this struct was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1is__constant__struct_3_01std_1_1vector_3_01_t_01_4_01_4-members.html b/doc/api/html/structstan_1_1is__constant__struct_3_01std_1_1vector_3_01_t_01_4_01_4-members.html new file mode 100644 index 00000000000..6b9a2657414 --- /dev/null +++ b/doc/api/html/structstan_1_1is__constant__struct_3_01std_1_1vector_3_01_t_01_4_01_4-members.html @@ -0,0 +1,113 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::is_constant_struct< std::vector< T > > Member List
+
+
+ +

This is the complete list of members for stan::is_constant_struct< std::vector< T > >, including all inherited members.

+ + +
value enum valuestan::is_constant_struct< std::vector< T > >
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1is__constant__struct_3_01std_1_1vector_3_01_t_01_4_01_4.html b/doc/api/html/structstan_1_1is__constant__struct_3_01std_1_1vector_3_01_t_01_4_01_4.html new file mode 100644 index 00000000000..e9a18732f53 --- /dev/null +++ b/doc/api/html/structstan_1_1is__constant__struct_3_01std_1_1vector_3_01_t_01_4_01_4.html @@ -0,0 +1,153 @@ + + + + + +Stan: stan::is_constant_struct< std::vector< T > > Struct Template Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::is_constant_struct< std::vector< T > > Struct Template Reference
+
+
+ +

#include <traits.hpp>

+ + + + +

+Public Types

enum  { value = is_constant_struct<T>::value + }
 
+

Detailed Description

+

template<typename T>
+struct stan::is_constant_struct< std::vector< T > >

+ + +

Definition at line 50 of file traits.hpp.

+

Member Enumeration Documentation

+ +
+
+
+template<typename T >
+ + + + +
anonymous enum
+
+
Enumerator:
+ +
value  +
+
+
+ +

Definition at line 51 of file traits.hpp.

+ +
+
+
The documentation for this struct was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1is__fvar-members.html b/doc/api/html/structstan_1_1is__fvar-members.html new file mode 100644 index 00000000000..332f0471c20 --- /dev/null +++ b/doc/api/html/structstan_1_1is__fvar-members.html @@ -0,0 +1,113 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::is_fvar< T > Member List
+
+
+ +

This is the complete list of members for stan::is_fvar< T >, including all inherited members.

+ + +
value enum valuestan::is_fvar< T >
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1is__fvar.html b/doc/api/html/structstan_1_1is__fvar.html new file mode 100644 index 00000000000..181168842b2 --- /dev/null +++ b/doc/api/html/structstan_1_1is__fvar.html @@ -0,0 +1,153 @@ + + + + + +Stan: stan::is_fvar< T > Struct Template Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::is_fvar< T > Struct Template Reference
+
+
+ +

#include <traits.hpp>

+ + + + +

+Public Types

enum  { value = false + }
 
+

Detailed Description

+

template<typename T>
+struct stan::is_fvar< T >

+ + +

Definition at line 389 of file traits.hpp.

+

Member Enumeration Documentation

+ +
+
+
+template<typename T >
+ + + + +
anonymous enum
+
+
Enumerator:
+ +
value  +
+
+
+ +

Definition at line 390 of file traits.hpp.

+ +
+
+
The documentation for this struct was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1is__fvar_3_01stan_1_1agrad_1_1fvar_3_01_t_01_4_01_4-members.html b/doc/api/html/structstan_1_1is__fvar_3_01stan_1_1agrad_1_1fvar_3_01_t_01_4_01_4-members.html new file mode 100644 index 00000000000..fd07613d49c --- /dev/null +++ b/doc/api/html/structstan_1_1is__fvar_3_01stan_1_1agrad_1_1fvar_3_01_t_01_4_01_4-members.html @@ -0,0 +1,113 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::is_fvar< stan::agrad::fvar< T > > Member List
+
+
+ +

This is the complete list of members for stan::is_fvar< stan::agrad::fvar< T > >, including all inherited members.

+ + +
value enum valuestan::is_fvar< stan::agrad::fvar< T > >
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1is__fvar_3_01stan_1_1agrad_1_1fvar_3_01_t_01_4_01_4.html b/doc/api/html/structstan_1_1is__fvar_3_01stan_1_1agrad_1_1fvar_3_01_t_01_4_01_4.html new file mode 100644 index 00000000000..988479ec880 --- /dev/null +++ b/doc/api/html/structstan_1_1is__fvar_3_01stan_1_1agrad_1_1fvar_3_01_t_01_4_01_4.html @@ -0,0 +1,153 @@ + + + + + +Stan: stan::is_fvar< stan::agrad::fvar< T > > Struct Template Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::is_fvar< stan::agrad::fvar< T > > Struct Template Reference
+
+
+ +

#include <traits.hpp>

+ + + + +

+Public Types

enum  { value = true + }
 
+

Detailed Description

+

template<typename T>
+struct stan::is_fvar< stan::agrad::fvar< T > >

+ + +

Definition at line 393 of file traits.hpp.

+

Member Enumeration Documentation

+ +
+
+
+template<typename T >
+ + + + +
anonymous enum
+
+
Enumerator:
+ +
value  +
+
+
+ +

Definition at line 394 of file traits.hpp.

+ +
+
+
The documentation for this struct was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1is__var-members.html b/doc/api/html/structstan_1_1is__var-members.html new file mode 100644 index 00000000000..5809b8f0a31 --- /dev/null +++ b/doc/api/html/structstan_1_1is__var-members.html @@ -0,0 +1,113 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::is_var< T > Member List
+
+
+ +

This is the complete list of members for stan::is_var< T >, including all inherited members.

+ + +
value enum valuestan::is_var< T >
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1is__var.html b/doc/api/html/structstan_1_1is__var.html new file mode 100644 index 00000000000..4c18775d2ce --- /dev/null +++ b/doc/api/html/structstan_1_1is__var.html @@ -0,0 +1,153 @@ + + + + + +Stan: stan::is_var< T > Struct Template Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::is_var< T > Struct Template Reference
+
+
+ +

#include <traits.hpp>

+ + + + +

+Public Types

enum  { value = false + }
 
+

Detailed Description

+

template<typename T>
+struct stan::is_var< T >

+ + +

Definition at line 399 of file traits.hpp.

+

Member Enumeration Documentation

+ +
+
+
+template<typename T >
+ + + + +
anonymous enum
+
+
Enumerator:
+ +
value  +
+
+
+ +

Definition at line 400 of file traits.hpp.

+ +
+
+
The documentation for this struct was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1is__var_3_01stan_1_1agrad_1_1var_01_4-members.html b/doc/api/html/structstan_1_1is__var_3_01stan_1_1agrad_1_1var_01_4-members.html new file mode 100644 index 00000000000..0ce72823e2b --- /dev/null +++ b/doc/api/html/structstan_1_1is__var_3_01stan_1_1agrad_1_1var_01_4-members.html @@ -0,0 +1,113 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::is_var< stan::agrad::var > Member List
+
+
+ +

This is the complete list of members for stan::is_var< stan::agrad::var >, including all inherited members.

+ + +
value enum valuestan::is_var< stan::agrad::var >
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1is__var_3_01stan_1_1agrad_1_1var_01_4.html b/doc/api/html/structstan_1_1is__var_3_01stan_1_1agrad_1_1var_01_4.html new file mode 100644 index 00000000000..5b66a368955 --- /dev/null +++ b/doc/api/html/structstan_1_1is__var_3_01stan_1_1agrad_1_1var_01_4.html @@ -0,0 +1,151 @@ + + + + + +Stan: stan::is_var< stan::agrad::var > Struct Template Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::is_var< stan::agrad::var > Struct Template Reference
+
+
+ +

#include <traits.hpp>

+ + + + +

+Public Types

enum  { value = true + }
 
+

Detailed Description

+

template<>
+struct stan::is_var< stan::agrad::var >

+ + +

Definition at line 403 of file traits.hpp.

+

Member Enumeration Documentation

+ +
+
+ + + + +
anonymous enum
+
+
Enumerator:
+ +
value  +
+
+
+ +

Definition at line 404 of file traits.hpp.

+ +
+
+
The documentation for this struct was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1is__var__or__arithmetic-members.html b/doc/api/html/structstan_1_1is__var__or__arithmetic-members.html new file mode 100644 index 00000000000..b57f2a54b49 --- /dev/null +++ b/doc/api/html/structstan_1_1is__var__or__arithmetic-members.html @@ -0,0 +1,113 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::is_var_or_arithmetic< T1, T2, T3, T4, T5, T6 > Member List
+
+
+ +

This is the complete list of members for stan::is_var_or_arithmetic< T1, T2, T3, T4, T5, T6 >, including all inherited members.

+ + +
value enum valuestan::is_var_or_arithmetic< T1, T2, T3, T4, T5, T6 >
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1is__var__or__arithmetic.html b/doc/api/html/structstan_1_1is__var__or__arithmetic.html new file mode 100644 index 00000000000..87541243374 --- /dev/null +++ b/doc/api/html/structstan_1_1is__var__or__arithmetic.html @@ -0,0 +1,153 @@ + + + + + +Stan: stan::is_var_or_arithmetic< T1, T2, T3, T4, T5, T6 > Struct Template Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::is_var_or_arithmetic< T1, T2, T3, T4, T5, T6 > Struct Template Reference
+
+
+ +

#include <traits.hpp>

+ + + + +

+Public Types

enum  { value + }
 
+

Detailed Description

+

template<typename T1, typename T2 = double, typename T3 = double, typename T4 = double, typename T5 = double, typename T6 = double>
+struct stan::is_var_or_arithmetic< T1, T2, T3, T4, T5, T6 >

+ + +

Definition at line 439 of file traits.hpp.

+

Member Enumeration Documentation

+ +
+
+
+template<typename T1 , typename T2 = double, typename T3 = double, typename T4 = double, typename T5 = double, typename T6 = double>
+ + + + +
anonymous enum
+
+
Enumerator:
+ +
value  +
+
+
+ +

Definition at line 440 of file traits.hpp.

+ +
+
+
The documentation for this struct was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1is__vector-members.html b/doc/api/html/structstan_1_1is__vector-members.html new file mode 100644 index 00000000000..55ae6efda02 --- /dev/null +++ b/doc/api/html/structstan_1_1is__vector-members.html @@ -0,0 +1,114 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::is_vector< T > Member List
+
+
+ +

This is the complete list of members for stan::is_vector< T >, including all inherited members.

+ + + +
type typedefstan::is_vector< T >
value enum valuestan::is_vector< T >
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1is__vector.html b/doc/api/html/structstan_1_1is__vector.html new file mode 100644 index 00000000000..38f63cb0bb9 --- /dev/null +++ b/doc/api/html/structstan_1_1is__vector.html @@ -0,0 +1,172 @@ + + + + + +Stan: stan::is_vector< T > Struct Template Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::is_vector< T > Struct Template Reference
+
+
+ +

#include <traits.hpp>

+ + + + + + +

+Public Types

enum  { value = 0 + }
 
typedef T type
 
+

Detailed Description

+

template<typename T>
+struct stan::is_vector< T >

+ + +

Definition at line 70 of file traits.hpp.

+

Member Typedef Documentation

+ +
+
+
+template<typename T>
+ + + + +
typedef T stan::is_vector< T >::type
+
+ +

Definition at line 72 of file traits.hpp.

+ +
+
+

Member Enumeration Documentation

+ +
+
+
+template<typename T>
+ + + + +
anonymous enum
+
+
Enumerator:
+ +
value  +
+
+
+ +

Definition at line 71 of file traits.hpp.

+ +
+
+
The documentation for this struct was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1is__vector_3_01_eigen_1_1_matrix_3_01_t_00_011_00_01_eigen_1_1_dynamic_01_4_01_4-members.html b/doc/api/html/structstan_1_1is__vector_3_01_eigen_1_1_matrix_3_01_t_00_011_00_01_eigen_1_1_dynamic_01_4_01_4-members.html new file mode 100644 index 00000000000..9c7b3885dd9 --- /dev/null +++ b/doc/api/html/structstan_1_1is__vector_3_01_eigen_1_1_matrix_3_01_t_00_011_00_01_eigen_1_1_dynamic_01_4_01_4-members.html @@ -0,0 +1,114 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::is_vector< Eigen::Matrix< T, 1, Eigen::Dynamic > > Member List
+
+ +
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1is__vector_3_01_eigen_1_1_matrix_3_01_t_00_011_00_01_eigen_1_1_dynamic_01_4_01_4.html b/doc/api/html/structstan_1_1is__vector_3_01_eigen_1_1_matrix_3_01_t_00_011_00_01_eigen_1_1_dynamic_01_4_01_4.html new file mode 100644 index 00000000000..6549e3d1a3d --- /dev/null +++ b/doc/api/html/structstan_1_1is__vector_3_01_eigen_1_1_matrix_3_01_t_00_011_00_01_eigen_1_1_dynamic_01_4_01_4.html @@ -0,0 +1,172 @@ + + + + + +Stan: stan::is_vector< Eigen::Matrix< T, 1, Eigen::Dynamic > > Struct Template Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::is_vector< Eigen::Matrix< T, 1, Eigen::Dynamic > > Struct Template Reference
+
+
+ +

#include <traits.hpp>

+ + + + + + +

+Public Types

enum  { value = 1 + }
 
typedef T type
 
+

Detailed Description

+

template<typename T>
+struct stan::is_vector< Eigen::Matrix< T, 1, Eigen::Dynamic > >

+ + +

Definition at line 91 of file traits.hpp.

+

Member Typedef Documentation

+ +
+
+
+template<typename T >
+ + + + +
typedef T stan::is_vector< Eigen::Matrix< T, 1, Eigen::Dynamic > >::type
+
+ +

Definition at line 93 of file traits.hpp.

+ +
+
+

Member Enumeration Documentation

+ +
+
+
+template<typename T >
+ + + + +
anonymous enum
+
+
Enumerator:
+ +
value  +
+
+
+ +

Definition at line 92 of file traits.hpp.

+ +
+
+
The documentation for this struct was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1is__vector_3_01_eigen_1_1_matrix_3_01_t_00_01_eigen_1_1_dynamic_00_011_01_4_01_4-members.html b/doc/api/html/structstan_1_1is__vector_3_01_eigen_1_1_matrix_3_01_t_00_01_eigen_1_1_dynamic_00_011_01_4_01_4-members.html new file mode 100644 index 00000000000..135c31b86bd --- /dev/null +++ b/doc/api/html/structstan_1_1is__vector_3_01_eigen_1_1_matrix_3_01_t_00_01_eigen_1_1_dynamic_00_011_01_4_01_4-members.html @@ -0,0 +1,114 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::is_vector< Eigen::Matrix< T, Eigen::Dynamic, 1 > > Member List
+
+ +
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1is__vector_3_01_eigen_1_1_matrix_3_01_t_00_01_eigen_1_1_dynamic_00_011_01_4_01_4.html b/doc/api/html/structstan_1_1is__vector_3_01_eigen_1_1_matrix_3_01_t_00_01_eigen_1_1_dynamic_00_011_01_4_01_4.html new file mode 100644 index 00000000000..4084c4ee214 --- /dev/null +++ b/doc/api/html/structstan_1_1is__vector_3_01_eigen_1_1_matrix_3_01_t_00_01_eigen_1_1_dynamic_00_011_01_4_01_4.html @@ -0,0 +1,172 @@ + + + + + +Stan: stan::is_vector< Eigen::Matrix< T, Eigen::Dynamic, 1 > > Struct Template Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::is_vector< Eigen::Matrix< T, Eigen::Dynamic, 1 > > Struct Template Reference
+
+
+ +

#include <traits.hpp>

+ + + + + + +

+Public Types

enum  { value = 1 + }
 
typedef T type
 
+

Detailed Description

+

template<typename T>
+struct stan::is_vector< Eigen::Matrix< T, Eigen::Dynamic, 1 > >

+ + +

Definition at line 86 of file traits.hpp.

+

Member Typedef Documentation

+ +
+
+
+template<typename T >
+ + + + +
typedef T stan::is_vector< Eigen::Matrix< T, Eigen::Dynamic, 1 > >::type
+
+ +

Definition at line 88 of file traits.hpp.

+ +
+
+

Member Enumeration Documentation

+ +
+
+
+template<typename T >
+ + + + +
anonymous enum
+
+
Enumerator:
+ +
value  +
+
+
+ +

Definition at line 87 of file traits.hpp.

+ +
+
+
The documentation for this struct was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1is__vector_3_01const_01_t_01_4-members.html b/doc/api/html/structstan_1_1is__vector_3_01const_01_t_01_4-members.html new file mode 100644 index 00000000000..47d1417446d --- /dev/null +++ b/doc/api/html/structstan_1_1is__vector_3_01const_01_t_01_4-members.html @@ -0,0 +1,114 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::is_vector< const T > Member List
+
+
+ +

This is the complete list of members for stan::is_vector< const T >, including all inherited members.

+ + + +
type typedefstan::is_vector< const T >
value enum valuestan::is_vector< const T >
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1is__vector_3_01const_01_t_01_4.html b/doc/api/html/structstan_1_1is__vector_3_01const_01_t_01_4.html new file mode 100644 index 00000000000..4c9a7cc5ca9 --- /dev/null +++ b/doc/api/html/structstan_1_1is__vector_3_01const_01_t_01_4.html @@ -0,0 +1,172 @@ + + + + + +Stan: stan::is_vector< const T > Struct Template Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::is_vector< const T > Struct Template Reference
+
+
+ +

#include <traits.hpp>

+ + + + + + +

+Public Types

enum  { value = is_vector<T>::value + }
 
typedef T type
 
+

Detailed Description

+

template<typename T>
+struct stan::is_vector< const T >

+ + +

Definition at line 75 of file traits.hpp.

+

Member Typedef Documentation

+ +
+
+
+template<typename T >
+ + + + +
typedef T stan::is_vector< const T >::type
+
+ +

Definition at line 77 of file traits.hpp.

+ +
+
+

Member Enumeration Documentation

+ +
+
+
+template<typename T >
+ + + + +
anonymous enum
+
+
Enumerator:
+ +
value  +
+
+
+ +

Definition at line 76 of file traits.hpp.

+ +
+
+
The documentation for this struct was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1is__vector_3_01std_1_1vector_3_01_t_01_4_01_4-members.html b/doc/api/html/structstan_1_1is__vector_3_01std_1_1vector_3_01_t_01_4_01_4-members.html new file mode 100644 index 00000000000..71d48777108 --- /dev/null +++ b/doc/api/html/structstan_1_1is__vector_3_01std_1_1vector_3_01_t_01_4_01_4-members.html @@ -0,0 +1,114 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::is_vector< std::vector< T > > Member List
+
+
+ +

This is the complete list of members for stan::is_vector< std::vector< T > >, including all inherited members.

+ + + +
type typedefstan::is_vector< std::vector< T > >
value enum valuestan::is_vector< std::vector< T > >
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1is__vector_3_01std_1_1vector_3_01_t_01_4_01_4.html b/doc/api/html/structstan_1_1is__vector_3_01std_1_1vector_3_01_t_01_4_01_4.html new file mode 100644 index 00000000000..6b4216970b2 --- /dev/null +++ b/doc/api/html/structstan_1_1is__vector_3_01std_1_1vector_3_01_t_01_4_01_4.html @@ -0,0 +1,172 @@ + + + + + +Stan: stan::is_vector< std::vector< T > > Struct Template Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::is_vector< std::vector< T > > Struct Template Reference
+
+
+ +

#include <traits.hpp>

+ + + + + + +

+Public Types

enum  { value = 1 + }
 
typedef T type
 
+

Detailed Description

+

template<typename T>
+struct stan::is_vector< std::vector< T > >

+ + +

Definition at line 80 of file traits.hpp.

+

Member Typedef Documentation

+ +
+
+
+template<typename T >
+ + + + +
typedef T stan::is_vector< std::vector< T > >::type
+
+ +

Definition at line 82 of file traits.hpp.

+ +
+
+

Member Enumeration Documentation

+ +
+
+
+template<typename T >
+ + + + +
anonymous enum
+
+
Enumerator:
+ +
value  +
+
+
+ +

Definition at line 81 of file traits.hpp.

+ +
+
+
The documentation for this struct was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1is__vector__like-members.html b/doc/api/html/structstan_1_1is__vector__like-members.html new file mode 100644 index 00000000000..b4772a66599 --- /dev/null +++ b/doc/api/html/structstan_1_1is__vector__like-members.html @@ -0,0 +1,113 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::is_vector_like< T > Member List
+
+
+ +

This is the complete list of members for stan::is_vector_like< T >, including all inherited members.

+ + +
value enum valuestan::is_vector_like< T >
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1is__vector__like.html b/doc/api/html/structstan_1_1is__vector__like.html new file mode 100644 index 00000000000..c291ee175a7 --- /dev/null +++ b/doc/api/html/structstan_1_1is__vector__like.html @@ -0,0 +1,153 @@ + + + + + +Stan: stan::is_vector_like< T > Struct Template Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::is_vector_like< T > Struct Template Reference
+
+
+ +

#include <traits.hpp>

+ + + + +

+Public Types

enum  { value = stan::is_vector<T>::value + }
 
+

Detailed Description

+

template<typename T>
+struct stan::is_vector_like< T >

+ + +

Definition at line 206 of file traits.hpp.

+

Member Enumeration Documentation

+ +
+
+
+template<typename T >
+ + + + +
anonymous enum
+
+
Enumerator:
+ +
value  +
+
+
+ +

Definition at line 207 of file traits.hpp.

+ +
+
+
The documentation for this struct was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1is__vector__like_3_01_eigen_1_1_matrix_3_01_t_00_01_eigen_1_1_dynamic_00_01_eigen_1_1_dynamic_01_4_01_4-members.html b/doc/api/html/structstan_1_1is__vector__like_3_01_eigen_1_1_matrix_3_01_t_00_01_eigen_1_1_dynamic_00_01_eigen_1_1_dynamic_01_4_01_4-members.html new file mode 100644 index 00000000000..9ddfc9ff030 --- /dev/null +++ b/doc/api/html/structstan_1_1is__vector__like_3_01_eigen_1_1_matrix_3_01_t_00_01_eigen_1_1_dynamic_00_01_eigen_1_1_dynamic_01_4_01_4-members.html @@ -0,0 +1,113 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::is_vector_like< Eigen::Matrix< T, Eigen::Dynamic, Eigen::Dynamic > > Member List
+
+ +
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1is__vector__like_3_01_eigen_1_1_matrix_3_01_t_00_01_eigen_1_1_dynamic_00_01_eigen_1_1_dynamic_01_4_01_4.html b/doc/api/html/structstan_1_1is__vector__like_3_01_eigen_1_1_matrix_3_01_t_00_01_eigen_1_1_dynamic_00_01_eigen_1_1_dynamic_01_4_01_4.html new file mode 100644 index 00000000000..36e74893ba8 --- /dev/null +++ b/doc/api/html/structstan_1_1is__vector__like_3_01_eigen_1_1_matrix_3_01_t_00_01_eigen_1_1_dynamic_00_01_eigen_1_1_dynamic_01_4_01_4.html @@ -0,0 +1,153 @@ + + + + + +Stan: stan::is_vector_like< Eigen::Matrix< T, Eigen::Dynamic, Eigen::Dynamic > > Struct Template Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::is_vector_like< Eigen::Matrix< T, Eigen::Dynamic, Eigen::Dynamic > > Struct Template Reference
+
+
+ +

#include <traits.hpp>

+ + + + +

+Public Types

enum  { value = true + }
 
+

Detailed Description

+

template<typename T>
+struct stan::is_vector_like< Eigen::Matrix< T, Eigen::Dynamic, Eigen::Dynamic > >

+ + +

Definition at line 220 of file traits.hpp.

+

Member Enumeration Documentation

+ +
+
+
+template<typename T >
+ + + + +
anonymous enum
+
+
Enumerator:
+ +
value  +
+
+
+ +

Definition at line 221 of file traits.hpp.

+ +
+
+
The documentation for this struct was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1is__vector__like_3_01_t_01_5_01_4-members.html b/doc/api/html/structstan_1_1is__vector__like_3_01_t_01_5_01_4-members.html new file mode 100644 index 00000000000..004927335c9 --- /dev/null +++ b/doc/api/html/structstan_1_1is__vector__like_3_01_t_01_5_01_4-members.html @@ -0,0 +1,113 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::is_vector_like< T * > Member List
+
+
+ +

This is the complete list of members for stan::is_vector_like< T * >, including all inherited members.

+ + +
value enum valuestan::is_vector_like< T * >
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1is__vector__like_3_01_t_01_5_01_4.html b/doc/api/html/structstan_1_1is__vector__like_3_01_t_01_5_01_4.html new file mode 100644 index 00000000000..43a0166ce74 --- /dev/null +++ b/doc/api/html/structstan_1_1is__vector__like_3_01_t_01_5_01_4.html @@ -0,0 +1,153 @@ + + + + + +Stan: stan::is_vector_like< T * > Struct Template Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::is_vector_like< T * > Struct Template Reference
+
+
+ +

#include <traits.hpp>

+ + + + +

+Public Types

enum  { value = true + }
 
+

Detailed Description

+

template<typename T>
+struct stan::is_vector_like< T * >

+ + +

Definition at line 210 of file traits.hpp.

+

Member Enumeration Documentation

+ +
+
+
+template<typename T >
+ + + + +
anonymous enum
+
+
Enumerator:
+ +
value  +
+
+
+ +

Definition at line 211 of file traits.hpp.

+ +
+
+
The documentation for this struct was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1is__vector__like_3_01const_01_t_01_4-members.html b/doc/api/html/structstan_1_1is__vector__like_3_01const_01_t_01_4-members.html new file mode 100644 index 00000000000..803d8569f75 --- /dev/null +++ b/doc/api/html/structstan_1_1is__vector__like_3_01const_01_t_01_4-members.html @@ -0,0 +1,113 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::is_vector_like< const T > Member List
+
+
+ +

This is the complete list of members for stan::is_vector_like< const T >, including all inherited members.

+ + +
value enum valuestan::is_vector_like< const T >
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1is__vector__like_3_01const_01_t_01_4.html b/doc/api/html/structstan_1_1is__vector__like_3_01const_01_t_01_4.html new file mode 100644 index 00000000000..b1435abfbdf --- /dev/null +++ b/doc/api/html/structstan_1_1is__vector__like_3_01const_01_t_01_4.html @@ -0,0 +1,153 @@ + + + + + +Stan: stan::is_vector_like< const T > Struct Template Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::is_vector_like< const T > Struct Template Reference
+
+
+ +

#include <traits.hpp>

+ + + + +

+Public Types

enum  { value = stan::is_vector_like<T>::value + }
 
+

Detailed Description

+

template<typename T>
+struct stan::is_vector_like< const T >

+ + +

Definition at line 215 of file traits.hpp.

+

Member Enumeration Documentation

+ +
+
+
+template<typename T >
+ + + + +
anonymous enum
+
+
Enumerator:
+ +
value  +
+
+
+ +

Definition at line 216 of file traits.hpp.

+ +
+
+
The documentation for this struct was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1math_1_1array__builder-members.html b/doc/api/html/structstan_1_1math_1_1array__builder-members.html new file mode 100644 index 00000000000..97b8de39a74 --- /dev/null +++ b/doc/api/html/structstan_1_1math_1_1array__builder-members.html @@ -0,0 +1,116 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::math::array_builder< T > Member List
+
+
+ +

This is the complete list of members for stan::math::array_builder< T >, including all inherited members.

+ + + + + +
add(const F &u)stan::math::array_builder< T >inline
array()stan::math::array_builder< T >inline
array_builder()stan::math::array_builder< T >inline
x_stan::math::array_builder< T >
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1math_1_1array__builder.html b/doc/api/html/structstan_1_1math_1_1array__builder.html new file mode 100644 index 00000000000..a4419c68dc5 --- /dev/null +++ b/doc/api/html/structstan_1_1math_1_1array__builder.html @@ -0,0 +1,247 @@ + + + + + +Stan: stan::math::array_builder< T > Struct Template Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::math::array_builder< T > Struct Template Reference
+
+
+ +

Structure for building up arrays in an expression (rather than in statements) using an argumentchaining add() method and a getter method array() to return the result. + More...

+ +

#include <array_builder.hpp>

+ + + + + + + + + +

+Public Member Functions

 array_builder ()
 
template<typename F >
array_builderadd (const F &u)
 
std::vector< T > array ()
 
+ + + +

+Public Attributes

std::vector< T > x_
 
+

Detailed Description

+

template<typename T>
+struct stan::math::array_builder< T >

+ +

Structure for building up arrays in an expression (rather than in statements) using an argumentchaining add() method and a getter method array() to return the result.

+ +

Definition at line 16 of file array_builder.hpp.

+

Constructor & Destructor Documentation

+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + +
stan::math::array_builder< T >::array_builder ()
+
+inline
+
+ +

Definition at line 18 of file array_builder.hpp.

+ +
+
+

Member Function Documentation

+ +
+
+
+template<typename T >
+
+template<typename F >
+ + + + + +
+ + + + + + + + +
array_builder& stan::math::array_builder< T >::add (const F & u)
+
+inline
+
+ +

Definition at line 20 of file array_builder.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + +
std::vector<T> stan::math::array_builder< T >::array ()
+
+inline
+
+ +

Definition at line 26 of file array_builder.hpp.

+ +
+
+

Member Data Documentation

+ +
+
+
+template<typename T >
+ + + + +
std::vector<T> stan::math::array_builder< T >::x_
+
+ +

Definition at line 17 of file array_builder.hpp.

+ +
+
+
The documentation for this struct was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1math_1_1common__type-members.html b/doc/api/html/structstan_1_1math_1_1common__type-members.html new file mode 100644 index 00000000000..03504c0121f --- /dev/null +++ b/doc/api/html/structstan_1_1math_1_1common__type-members.html @@ -0,0 +1,113 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::math::common_type< T1, T2 > Member List
+
+
+ +

This is the complete list of members for stan::math::common_type< T1, T2 >, including all inherited members.

+ + +
type typedefstan::math::common_type< T1, T2 >
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1math_1_1common__type.html b/doc/api/html/structstan_1_1math_1_1common__type.html new file mode 100644 index 00000000000..94fd8c900ea --- /dev/null +++ b/doc/api/html/structstan_1_1math_1_1common__type.html @@ -0,0 +1,148 @@ + + + + + +Stan: stan::math::common_type< T1, T2 > Struct Template Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::math::common_type< T1, T2 > Struct Template Reference
+
+
+ +

#include <common_type.hpp>

+ + + + +

+Public Types

typedef
+boost::math::tools::promote_args
+< T1, T2 >::type 
type
 
+

Detailed Description

+

template<typename T1, typename T2>
+struct stan::math::common_type< T1, T2 >

+ + +

Definition at line 13 of file common_type.hpp.

+

Member Typedef Documentation

+ +
+
+
+template<typename T1, typename T2>
+ + + + +
typedef boost::math::tools::promote_args<T1,T2>::type stan::math::common_type< T1, T2 >::type
+
+ +

Definition at line 14 of file common_type.hpp.

+ +
+
+
The documentation for this struct was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1math_1_1common__type_3_01_eigen_1_1_matrix_3_01_t1_00_01_r_00_01_c_01_4_00_01_eige106a86f1021708b40db478c4e2fef0a7.html b/doc/api/html/structstan_1_1math_1_1common__type_3_01_eigen_1_1_matrix_3_01_t1_00_01_r_00_01_c_01_4_00_01_eige106a86f1021708b40db478c4e2fef0a7.html new file mode 100644 index 00000000000..d271d6d6027 --- /dev/null +++ b/doc/api/html/structstan_1_1math_1_1common__type_3_01_eigen_1_1_matrix_3_01_t1_00_01_r_00_01_c_01_4_00_01_eige106a86f1021708b40db478c4e2fef0a7.html @@ -0,0 +1,113 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::math::common_type< Eigen::Matrix< T1, R, C >, Eigen::Matrix< T2, R, C > > Member List
+
+ +
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1math_1_1common__type_3_01_eigen_1_1_matrix_3_01_t1_00_01_r_00_01_c_01_4_00_01_eiged8accfa00e73f240c58ad02ac582ba93.html b/doc/api/html/structstan_1_1math_1_1common__type_3_01_eigen_1_1_matrix_3_01_t1_00_01_r_00_01_c_01_4_00_01_eiged8accfa00e73f240c58ad02ac582ba93.html new file mode 100644 index 00000000000..7dec6daed24 --- /dev/null +++ b/doc/api/html/structstan_1_1math_1_1common__type_3_01_eigen_1_1_matrix_3_01_t1_00_01_r_00_01_c_01_4_00_01_eiged8accfa00e73f240c58ad02ac582ba93.html @@ -0,0 +1,148 @@ + + + + + +Stan: stan::math::common_type< Eigen::Matrix< T1, R, C >, Eigen::Matrix< T2, R, C > > Struct Template Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::math::common_type< Eigen::Matrix< T1, R, C >, Eigen::Matrix< T2, R, C > > Struct Template Reference
+
+
+ +

#include <common_type.hpp>

+ + + + +

+Public Types

typedef Eigen::Matrix
+< typename common_type< T1, T2 >
+::type, R, C > 
type
 
+

Detailed Description

+

template<typename T1, typename T2, int R, int C>
+struct stan::math::common_type< Eigen::Matrix< T1, R, C >, Eigen::Matrix< T2, R, C > >

+ + +

Definition at line 23 of file common_type.hpp.

+

Member Typedef Documentation

+ +
+
+
+template<typename T1 , typename T2 , int R, int C>
+ + + + +
typedef Eigen::Matrix<typename common_type<T1,T2>::type,R,C> stan::math::common_type< Eigen::Matrix< T1, R, C >, Eigen::Matrix< T2, R, C > >::type
+
+ +

Definition at line 24 of file common_type.hpp.

+ +
+
+
The documentation for this struct was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1math_1_1common__type_3_01std_1_1vector_3_01_t1_01_4_00_01std_1_1vector_3_01_t2_01_4_01_4-members.html b/doc/api/html/structstan_1_1math_1_1common__type_3_01std_1_1vector_3_01_t1_01_4_00_01std_1_1vector_3_01_t2_01_4_01_4-members.html new file mode 100644 index 00000000000..bb9792e42eb --- /dev/null +++ b/doc/api/html/structstan_1_1math_1_1common__type_3_01std_1_1vector_3_01_t1_01_4_00_01std_1_1vector_3_01_t2_01_4_01_4-members.html @@ -0,0 +1,113 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::math::common_type< std::vector< T1 >, std::vector< T2 > > Member List
+
+
+ +

This is the complete list of members for stan::math::common_type< std::vector< T1 >, std::vector< T2 > >, including all inherited members.

+ + +
type typedefstan::math::common_type< std::vector< T1 >, std::vector< T2 > >
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1math_1_1common__type_3_01std_1_1vector_3_01_t1_01_4_00_01std_1_1vector_3_01_t2_01_4_01_4.html b/doc/api/html/structstan_1_1math_1_1common__type_3_01std_1_1vector_3_01_t1_01_4_00_01std_1_1vector_3_01_t2_01_4_01_4.html new file mode 100644 index 00000000000..fb49d9ddd92 --- /dev/null +++ b/doc/api/html/structstan_1_1math_1_1common__type_3_01std_1_1vector_3_01_t1_01_4_00_01std_1_1vector_3_01_t2_01_4_01_4.html @@ -0,0 +1,147 @@ + + + + + +Stan: stan::math::common_type< std::vector< T1 >, std::vector< T2 > > Struct Template Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::math::common_type< std::vector< T1 >, std::vector< T2 > > Struct Template Reference
+
+
+ +

#include <common_type.hpp>

+ + + + +

+Public Types

typedef std::vector< typename
+common_type< T1, T2 >::type
type
 
+

Detailed Description

+

template<typename T1, typename T2>
+struct stan::math::common_type< std::vector< T1 >, std::vector< T2 > >

+ + +

Definition at line 18 of file common_type.hpp.

+

Member Typedef Documentation

+ +
+
+
+template<typename T1 , typename T2 >
+ + + + +
typedef std::vector<typename common_type<T1,T2>::type> stan::math::common_type< std::vector< T1 >, std::vector< T2 > >::type
+
+ +

Definition at line 19 of file common_type.hpp.

+ +
+
+
The documentation for this struct was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1math_1_1pass__type-members.html b/doc/api/html/structstan_1_1math_1_1pass__type-members.html new file mode 100644 index 00000000000..b7df2a53d77 --- /dev/null +++ b/doc/api/html/structstan_1_1math_1_1pass__type-members.html @@ -0,0 +1,113 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::math::pass_type< T > Member List
+
+
+ +

This is the complete list of members for stan::math::pass_type< T >, including all inherited members.

+ + +
type typedefstan::math::pass_type< T >
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1math_1_1pass__type.html b/doc/api/html/structstan_1_1math_1_1pass__type.html new file mode 100644 index 00000000000..79aaf29f6a0 --- /dev/null +++ b/doc/api/html/structstan_1_1math_1_1pass__type.html @@ -0,0 +1,146 @@ + + + + + +Stan: stan::math::pass_type< T > Struct Template Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::math::pass_type< T > Struct Template Reference
+
+
+ +

#include <seq_view.hpp>

+ + + + +

+Public Types

typedef const T & type
 
+

Detailed Description

+

template<typename T>
+struct stan::math::pass_type< T >

+ + +

Definition at line 28 of file seq_view.hpp.

+

Member Typedef Documentation

+ +
+
+
+template<typename T>
+ + + + +
typedef const T& stan::math::pass_type< T >::type
+
+ +

Definition at line 29 of file seq_view.hpp.

+ +
+
+
The documentation for this struct was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1math_1_1pass__type_3_01double_01_4-members.html b/doc/api/html/structstan_1_1math_1_1pass__type_3_01double_01_4-members.html new file mode 100644 index 00000000000..2002285e9c1 --- /dev/null +++ b/doc/api/html/structstan_1_1math_1_1pass__type_3_01double_01_4-members.html @@ -0,0 +1,113 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::math::pass_type< double > Member List
+
+
+ +

This is the complete list of members for stan::math::pass_type< double >, including all inherited members.

+ + +
type typedefstan::math::pass_type< double >
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1math_1_1pass__type_3_01double_01_4.html b/doc/api/html/structstan_1_1math_1_1pass__type_3_01double_01_4.html new file mode 100644 index 00000000000..65df96c06d1 --- /dev/null +++ b/doc/api/html/structstan_1_1math_1_1pass__type_3_01double_01_4.html @@ -0,0 +1,144 @@ + + + + + +Stan: stan::math::pass_type< double > Struct Template Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::math::pass_type< double > Struct Template Reference
+
+
+ +

#include <seq_view.hpp>

+ + + + +

+Public Types

typedef double type
 
+

Detailed Description

+

template<>
+struct stan::math::pass_type< double >

+ + +

Definition at line 32 of file seq_view.hpp.

+

Member Typedef Documentation

+ +
+
+ + + + +
typedef double stan::math::pass_type< double >::type
+
+ +

Definition at line 33 of file seq_view.hpp.

+ +
+
+
The documentation for this struct was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1math_1_1pass__type_3_01int_01_4-members.html b/doc/api/html/structstan_1_1math_1_1pass__type_3_01int_01_4-members.html new file mode 100644 index 00000000000..af0bd9ad074 --- /dev/null +++ b/doc/api/html/structstan_1_1math_1_1pass__type_3_01int_01_4-members.html @@ -0,0 +1,113 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::math::pass_type< int > Member List
+
+
+ +

This is the complete list of members for stan::math::pass_type< int >, including all inherited members.

+ + +
type typedefstan::math::pass_type< int >
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1math_1_1pass__type_3_01int_01_4.html b/doc/api/html/structstan_1_1math_1_1pass__type_3_01int_01_4.html new file mode 100644 index 00000000000..28f8928fafc --- /dev/null +++ b/doc/api/html/structstan_1_1math_1_1pass__type_3_01int_01_4.html @@ -0,0 +1,144 @@ + + + + + +Stan: stan::math::pass_type< int > Struct Template Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::math::pass_type< int > Struct Template Reference
+
+
+ +

#include <seq_view.hpp>

+ + + + +

+Public Types

typedef int type
 
+

Detailed Description

+

template<>
+struct stan::math::pass_type< int >

+ + +

Definition at line 36 of file seq_view.hpp.

+

Member Typedef Documentation

+ +
+
+ + + + +
typedef int stan::math::pass_type< int >::type
+
+ +

Definition at line 37 of file seq_view.hpp.

+ +
+
+
The documentation for this struct was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1math_1_1promoter-members.html b/doc/api/html/structstan_1_1math_1_1promoter-members.html new file mode 100644 index 00000000000..42e83d37e71 --- /dev/null +++ b/doc/api/html/structstan_1_1math_1_1promoter-members.html @@ -0,0 +1,114 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::math::promoter< F, T > Member List
+
+
+ +

This is the complete list of members for stan::math::promoter< F, T >, including all inherited members.

+ + + +
promote(const F &u, T &t)stan::math::promoter< F, T >inlinestatic
promote_to(const F &u)stan::math::promoter< F, T >inlinestatic
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1math_1_1promoter.html b/doc/api/html/structstan_1_1math_1_1promoter.html new file mode 100644 index 00000000000..0af841c1bfe --- /dev/null +++ b/doc/api/html/structstan_1_1math_1_1promoter.html @@ -0,0 +1,198 @@ + + + + + +Stan: stan::math::promoter< F, T > Struct Template Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::math::promoter< F, T > Struct Template Reference
+
+
+ +

#include <promoter.hpp>

+ + + + + + +

+Static Public Member Functions

static void promote (const F &u, T &t)
 
static T promote_to (const F &u)
 
+

Detailed Description

+

template<typename F, typename T>
+struct stan::math::promoter< F, T >

+ + +

Definition at line 14 of file promoter.hpp.

+

Member Function Documentation

+ +
+
+
+template<typename F, typename T>
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
static void stan::math::promoter< F, T >::promote (const F & u,
T & t 
)
+
+inlinestatic
+
+ +

Definition at line 15 of file promoter.hpp.

+ +
+
+ +
+
+
+template<typename F, typename T>
+ + + + + +
+ + + + + + + + +
static T stan::math::promoter< F, T >::promote_to (const F & u)
+
+inlinestatic
+
+ +

Definition at line 18 of file promoter.hpp.

+ +
+
+
The documentation for this struct was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1math_1_1promoter_3_01_eigen_1_1_matrix_3_01_f_00_01_r_00_01_c_01_4_00_01_eigen_1_142b48fda94601374e41a81325f3f7b84.html b/doc/api/html/structstan_1_1math_1_1promoter_3_01_eigen_1_1_matrix_3_01_f_00_01_r_00_01_c_01_4_00_01_eigen_1_142b48fda94601374e41a81325f3f7b84.html new file mode 100644 index 00000000000..d934f88248a --- /dev/null +++ b/doc/api/html/structstan_1_1math_1_1promoter_3_01_eigen_1_1_matrix_3_01_f_00_01_r_00_01_c_01_4_00_01_eigen_1_142b48fda94601374e41a81325f3f7b84.html @@ -0,0 +1,198 @@ + + + + + +Stan: stan::math::promoter< Eigen::Matrix< F, R, C >, Eigen::Matrix< T, R, C > > Struct Template Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::math::promoter< Eigen::Matrix< F, R, C >, Eigen::Matrix< T, R, C > > Struct Template Reference
+
+
+ +

#include <promoter.hpp>

+ + + + + + +

+Static Public Member Functions

static void promote (const Eigen::Matrix< F, R, C > &u, Eigen::Matrix< T, R, C > &t)
 
static Eigen::Matrix< T, R, C > promote_to (const Eigen::Matrix< F, R, C > &u)
 
+

Detailed Description

+

template<typename F, typename T, int R, int C>
+struct stan::math::promoter< Eigen::Matrix< F, R, C >, Eigen::Matrix< T, R, C > >

+ + +

Definition at line 63 of file promoter.hpp.

+

Member Function Documentation

+ +
+
+
+template<typename F , typename T , int R, int C>
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
static void stan::math::promoter< Eigen::Matrix< F, R, C >, Eigen::Matrix< T, R, C > >::promote (const Eigen::Matrix< F, R, C > & u,
Eigen::Matrix< T, R, C > & t 
)
+
+inlinestatic
+
+ +

Definition at line 64 of file promoter.hpp.

+ +
+
+ +
+
+
+template<typename F , typename T , int R, int C>
+ + + + + +
+ + + + + + + + +
static Eigen::Matrix<T,R,C> stan::math::promoter< Eigen::Matrix< F, R, C >, Eigen::Matrix< T, R, C > >::promote_to (const Eigen::Matrix< F, R, C > & u)
+
+inlinestatic
+
+ +

Definition at line 71 of file promoter.hpp.

+ +
+
+
The documentation for this struct was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1math_1_1promoter_3_01_eigen_1_1_matrix_3_01_f_00_01_r_00_01_c_01_4_00_01_eigen_1_19fcbf4e7bc8e106173bfa338a15054ff.html b/doc/api/html/structstan_1_1math_1_1promoter_3_01_eigen_1_1_matrix_3_01_f_00_01_r_00_01_c_01_4_00_01_eigen_1_19fcbf4e7bc8e106173bfa338a15054ff.html new file mode 100644 index 00000000000..1fd8ed018d4 --- /dev/null +++ b/doc/api/html/structstan_1_1math_1_1promoter_3_01_eigen_1_1_matrix_3_01_f_00_01_r_00_01_c_01_4_00_01_eigen_1_19fcbf4e7bc8e106173bfa338a15054ff.html @@ -0,0 +1,114 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::math::promoter< Eigen::Matrix< F, R, C >, Eigen::Matrix< T, R, C > > Member List
+
+
+ +

This is the complete list of members for stan::math::promoter< Eigen::Matrix< F, R, C >, Eigen::Matrix< T, R, C > >, including all inherited members.

+ + + +
promote(const Eigen::Matrix< F, R, C > &u, Eigen::Matrix< T, R, C > &t)stan::math::promoter< Eigen::Matrix< F, R, C >, Eigen::Matrix< T, R, C > >inlinestatic
promote_to(const Eigen::Matrix< F, R, C > &u)stan::math::promoter< Eigen::Matrix< F, R, C >, Eigen::Matrix< T, R, C > >inlinestatic
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1math_1_1promoter_3_01_eigen_1_1_matrix_3_01_t_00_01_r_00_01_c_01_4_00_01_eigen_1_12d7fadf0560f1f2f3abc5388b7666f9c.html b/doc/api/html/structstan_1_1math_1_1promoter_3_01_eigen_1_1_matrix_3_01_t_00_01_r_00_01_c_01_4_00_01_eigen_1_12d7fadf0560f1f2f3abc5388b7666f9c.html new file mode 100644 index 00000000000..03d46e93bcb --- /dev/null +++ b/doc/api/html/structstan_1_1math_1_1promoter_3_01_eigen_1_1_matrix_3_01_t_00_01_r_00_01_c_01_4_00_01_eigen_1_12d7fadf0560f1f2f3abc5388b7666f9c.html @@ -0,0 +1,198 @@ + + + + + +Stan: stan::math::promoter< Eigen::Matrix< T, R, C >, Eigen::Matrix< T, R, C > > Struct Template Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::math::promoter< Eigen::Matrix< T, R, C >, Eigen::Matrix< T, R, C > > Struct Template Reference
+
+
+ +

#include <promoter.hpp>

+ + + + + + +

+Static Public Member Functions

static void promote (const Eigen::Matrix< T, R, C > &u, Eigen::Matrix< T, R, C > &t)
 
static Eigen::Matrix< T, R, C > promote_to (const Eigen::Matrix< T, R, C > &u)
 
+

Detailed Description

+

template<typename T, int R, int C>
+struct stan::math::promoter< Eigen::Matrix< T, R, C >, Eigen::Matrix< T, R, C > >

+ + +

Definition at line 79 of file promoter.hpp.

+

Member Function Documentation

+ +
+
+
+template<typename T , int R, int C>
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
static void stan::math::promoter< Eigen::Matrix< T, R, C >, Eigen::Matrix< T, R, C > >::promote (const Eigen::Matrix< T, R, C > & u,
Eigen::Matrix< T, R, C > & t 
)
+
+inlinestatic
+
+ +

Definition at line 80 of file promoter.hpp.

+ +
+
+ +
+
+
+template<typename T , int R, int C>
+ + + + + +
+ + + + + + + + +
static Eigen::Matrix<T,R,C> stan::math::promoter< Eigen::Matrix< T, R, C >, Eigen::Matrix< T, R, C > >::promote_to (const Eigen::Matrix< T, R, C > & u)
+
+inlinestatic
+
+ +

Definition at line 84 of file promoter.hpp.

+ +
+
+
The documentation for this struct was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1math_1_1promoter_3_01_eigen_1_1_matrix_3_01_t_00_01_r_00_01_c_01_4_00_01_eigen_1_1ab38afe2feaa91a91579e3639d1f03b0.html b/doc/api/html/structstan_1_1math_1_1promoter_3_01_eigen_1_1_matrix_3_01_t_00_01_r_00_01_c_01_4_00_01_eigen_1_1ab38afe2feaa91a91579e3639d1f03b0.html new file mode 100644 index 00000000000..640f0df3a57 --- /dev/null +++ b/doc/api/html/structstan_1_1math_1_1promoter_3_01_eigen_1_1_matrix_3_01_t_00_01_r_00_01_c_01_4_00_01_eigen_1_1ab38afe2feaa91a91579e3639d1f03b0.html @@ -0,0 +1,114 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::math::promoter< Eigen::Matrix< T, R, C >, Eigen::Matrix< T, R, C > > Member List
+
+
+ +

This is the complete list of members for stan::math::promoter< Eigen::Matrix< T, R, C >, Eigen::Matrix< T, R, C > >, including all inherited members.

+ + + +
promote(const Eigen::Matrix< T, R, C > &u, Eigen::Matrix< T, R, C > &t)stan::math::promoter< Eigen::Matrix< T, R, C >, Eigen::Matrix< T, R, C > >inlinestatic
promote_to(const Eigen::Matrix< T, R, C > &u)stan::math::promoter< Eigen::Matrix< T, R, C >, Eigen::Matrix< T, R, C > >inlinestatic
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1math_1_1promoter_3_01_t_00_01_t_01_4-members.html b/doc/api/html/structstan_1_1math_1_1promoter_3_01_t_00_01_t_01_4-members.html new file mode 100644 index 00000000000..5d54d615c13 --- /dev/null +++ b/doc/api/html/structstan_1_1math_1_1promoter_3_01_t_00_01_t_01_4-members.html @@ -0,0 +1,114 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::math::promoter< T, T > Member List
+
+
+ +

This is the complete list of members for stan::math::promoter< T, T >, including all inherited members.

+ + + +
promote(const T &u, T &t)stan::math::promoter< T, T >inlinestatic
promote_to(const T &u)stan::math::promoter< T, T >inlinestatic
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1math_1_1promoter_3_01_t_00_01_t_01_4.html b/doc/api/html/structstan_1_1math_1_1promoter_3_01_t_00_01_t_01_4.html new file mode 100644 index 00000000000..c6201883aad --- /dev/null +++ b/doc/api/html/structstan_1_1math_1_1promoter_3_01_t_00_01_t_01_4.html @@ -0,0 +1,198 @@ + + + + + +Stan: stan::math::promoter< T, T > Struct Template Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::math::promoter< T, T > Struct Template Reference
+
+
+ +

#include <promoter.hpp>

+ + + + + + +

+Static Public Member Functions

static void promote (const T &u, T &t)
 
static T promote_to (const T &u)
 
+

Detailed Description

+

template<typename T>
+struct stan::math::promoter< T, T >

+ + +

Definition at line 24 of file promoter.hpp.

+

Member Function Documentation

+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
static void stan::math::promoter< T, T >::promote (const T & u,
T & t 
)
+
+inlinestatic
+
+ +

Definition at line 25 of file promoter.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + +
static T stan::math::promoter< T, T >::promote_to (const T & u)
+
+inlinestatic
+
+ +

Definition at line 28 of file promoter.hpp.

+ +
+
+
The documentation for this struct was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1math_1_1promoter_3_01std_1_1vector_3_01_f_01_4_00_01std_1_1vector_3_01_t_01_4_01_4-members.html b/doc/api/html/structstan_1_1math_1_1promoter_3_01std_1_1vector_3_01_f_01_4_00_01std_1_1vector_3_01_t_01_4_01_4-members.html new file mode 100644 index 00000000000..2db800fd7a5 --- /dev/null +++ b/doc/api/html/structstan_1_1math_1_1promoter_3_01std_1_1vector_3_01_f_01_4_00_01std_1_1vector_3_01_t_01_4_01_4-members.html @@ -0,0 +1,114 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::math::promoter< std::vector< F >, std::vector< T > > Member List
+
+
+ +

This is the complete list of members for stan::math::promoter< std::vector< F >, std::vector< T > >, including all inherited members.

+ + + +
promote(const std::vector< F > &u, std::vector< T > &t)stan::math::promoter< std::vector< F >, std::vector< T > >inlinestatic
promote_to(const std::vector< F > &u)stan::math::promoter< std::vector< F >, std::vector< T > >inlinestatic
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1math_1_1promoter_3_01std_1_1vector_3_01_f_01_4_00_01std_1_1vector_3_01_t_01_4_01_4.html b/doc/api/html/structstan_1_1math_1_1promoter_3_01std_1_1vector_3_01_f_01_4_00_01std_1_1vector_3_01_t_01_4_01_4.html new file mode 100644 index 00000000000..7234539ff2d --- /dev/null +++ b/doc/api/html/structstan_1_1math_1_1promoter_3_01std_1_1vector_3_01_f_01_4_00_01std_1_1vector_3_01_t_01_4_01_4.html @@ -0,0 +1,198 @@ + + + + + +Stan: stan::math::promoter< std::vector< F >, std::vector< T > > Struct Template Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::math::promoter< std::vector< F >, std::vector< T > > Struct Template Reference
+
+
+ +

#include <promoter.hpp>

+ + + + + + +

+Static Public Member Functions

static void promote (const std::vector< F > &u, std::vector< T > &t)
 
static std::vector< T > promote_to (const std::vector< F > &u)
 
+

Detailed Description

+

template<typename F, typename T>
+struct stan::math::promoter< std::vector< F >, std::vector< T > >

+ + +

Definition at line 35 of file promoter.hpp.

+

Member Function Documentation

+ +
+
+
+template<typename F , typename T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
static void stan::math::promoter< std::vector< F >, std::vector< T > >::promote (const std::vector< F > & u,
std::vector< T > & t 
)
+
+inlinestatic
+
+ +

Definition at line 36 of file promoter.hpp.

+ +
+
+ +
+
+
+template<typename F , typename T >
+ + + + + +
+ + + + + + + + +
static std::vector<T> stan::math::promoter< std::vector< F >, std::vector< T > >::promote_to (const std::vector< F > & u)
+
+inlinestatic
+
+ +

Definition at line 43 of file promoter.hpp.

+ +
+
+
The documentation for this struct was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1math_1_1promoter_3_01std_1_1vector_3_01_t_01_4_00_01std_1_1vector_3_01_t_01_4_01_4-members.html b/doc/api/html/structstan_1_1math_1_1promoter_3_01std_1_1vector_3_01_t_01_4_00_01std_1_1vector_3_01_t_01_4_01_4-members.html new file mode 100644 index 00000000000..660d3c857a1 --- /dev/null +++ b/doc/api/html/structstan_1_1math_1_1promoter_3_01std_1_1vector_3_01_t_01_4_00_01std_1_1vector_3_01_t_01_4_01_4-members.html @@ -0,0 +1,114 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::math::promoter< std::vector< T >, std::vector< T > > Member List
+
+
+ +

This is the complete list of members for stan::math::promoter< std::vector< T >, std::vector< T > >, including all inherited members.

+ + + +
promote(const std::vector< T > &u, std::vector< T > &t)stan::math::promoter< std::vector< T >, std::vector< T > >inlinestatic
promote_to(const std::vector< T > &u)stan::math::promoter< std::vector< T >, std::vector< T > >inlinestatic
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1math_1_1promoter_3_01std_1_1vector_3_01_t_01_4_00_01std_1_1vector_3_01_t_01_4_01_4.html b/doc/api/html/structstan_1_1math_1_1promoter_3_01std_1_1vector_3_01_t_01_4_00_01std_1_1vector_3_01_t_01_4_01_4.html new file mode 100644 index 00000000000..1c320c0c4f2 --- /dev/null +++ b/doc/api/html/structstan_1_1math_1_1promoter_3_01std_1_1vector_3_01_t_01_4_00_01std_1_1vector_3_01_t_01_4_01_4.html @@ -0,0 +1,198 @@ + + + + + +Stan: stan::math::promoter< std::vector< T >, std::vector< T > > Struct Template Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::math::promoter< std::vector< T >, std::vector< T > > Struct Template Reference
+
+
+ +

#include <promoter.hpp>

+ + + + + + +

+Static Public Member Functions

static void promote (const std::vector< T > &u, std::vector< T > &t)
 
static std::vector< T > promote_to (const std::vector< T > &u)
 
+

Detailed Description

+

template<typename T>
+struct stan::math::promoter< std::vector< T >, std::vector< T > >

+ + +

Definition at line 51 of file promoter.hpp.

+

Member Function Documentation

+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
static void stan::math::promoter< std::vector< T >, std::vector< T > >::promote (const std::vector< T > & u,
std::vector< T > & t 
)
+
+inlinestatic
+
+ +

Definition at line 52 of file promoter.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + +
static std::vector<T> stan::math::promoter< std::vector< T >, std::vector< T > >::promote_to (const std::vector< T > & u)
+
+inlinestatic
+
+ +

Definition at line 56 of file promoter.hpp.

+ +
+
+
The documentation for this struct was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1math_1_1store__type-members.html b/doc/api/html/structstan_1_1math_1_1store__type-members.html new file mode 100644 index 00000000000..bd50b4d10da --- /dev/null +++ b/doc/api/html/structstan_1_1math_1_1store__type-members.html @@ -0,0 +1,113 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::math::store_type< T > Member List
+
+
+ +

This is the complete list of members for stan::math::store_type< T >, including all inherited members.

+ + +
type typedefstan::math::store_type< T >
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1math_1_1store__type.html b/doc/api/html/structstan_1_1math_1_1store__type.html new file mode 100644 index 00000000000..a47df021e6a --- /dev/null +++ b/doc/api/html/structstan_1_1math_1_1store__type.html @@ -0,0 +1,146 @@ + + + + + +Stan: stan::math::store_type< T > Struct Template Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::math::store_type< T > Struct Template Reference
+
+
+ +

#include <seq_view.hpp>

+ + + + +

+Public Types

typedef const T & type
 
+

Detailed Description

+

template<typename T>
+struct stan::math::store_type< T >

+ + +

Definition at line 14 of file seq_view.hpp.

+

Member Typedef Documentation

+ +
+
+
+template<typename T>
+ + + + +
typedef const T& stan::math::store_type< T >::type
+
+ +

Definition at line 15 of file seq_view.hpp.

+ +
+
+
The documentation for this struct was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1math_1_1store__type_3_01double_01_4-members.html b/doc/api/html/structstan_1_1math_1_1store__type_3_01double_01_4-members.html new file mode 100644 index 00000000000..e4f4a4741a3 --- /dev/null +++ b/doc/api/html/structstan_1_1math_1_1store__type_3_01double_01_4-members.html @@ -0,0 +1,113 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::math::store_type< double > Member List
+
+
+ +

This is the complete list of members for stan::math::store_type< double >, including all inherited members.

+ + +
type typedefstan::math::store_type< double >
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1math_1_1store__type_3_01double_01_4.html b/doc/api/html/structstan_1_1math_1_1store__type_3_01double_01_4.html new file mode 100644 index 00000000000..c8d6667ed6a --- /dev/null +++ b/doc/api/html/structstan_1_1math_1_1store__type_3_01double_01_4.html @@ -0,0 +1,144 @@ + + + + + +Stan: stan::math::store_type< double > Struct Template Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::math::store_type< double > Struct Template Reference
+
+
+ +

#include <seq_view.hpp>

+ + + + +

+Public Types

typedef const double type
 
+

Detailed Description

+

template<>
+struct stan::math::store_type< double >

+ + +

Definition at line 18 of file seq_view.hpp.

+

Member Typedef Documentation

+ +
+
+ + + + +
typedef const double stan::math::store_type< double >::type
+
+ +

Definition at line 19 of file seq_view.hpp.

+ +
+
+
The documentation for this struct was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1math_1_1store__type_3_01int_01_4-members.html b/doc/api/html/structstan_1_1math_1_1store__type_3_01int_01_4-members.html new file mode 100644 index 00000000000..29231512280 --- /dev/null +++ b/doc/api/html/structstan_1_1math_1_1store__type_3_01int_01_4-members.html @@ -0,0 +1,113 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::math::store_type< int > Member List
+
+
+ +

This is the complete list of members for stan::math::store_type< int >, including all inherited members.

+ + +
type typedefstan::math::store_type< int >
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1math_1_1store__type_3_01int_01_4.html b/doc/api/html/structstan_1_1math_1_1store__type_3_01int_01_4.html new file mode 100644 index 00000000000..bae64487f94 --- /dev/null +++ b/doc/api/html/structstan_1_1math_1_1store__type_3_01int_01_4.html @@ -0,0 +1,144 @@ + + + + + +Stan: stan::math::store_type< int > Struct Template Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::math::store_type< int > Struct Template Reference
+
+
+ +

#include <seq_view.hpp>

+ + + + +

+Public Types

typedef const int type
 
+

Detailed Description

+

template<>
+struct stan::math::store_type< int >

+ + +

Definition at line 22 of file seq_view.hpp.

+

Member Typedef Documentation

+ +
+
+ + + + +
typedef const int stan::math::store_type< int >::type
+
+ +

Definition at line 23 of file seq_view.hpp.

+ +
+
+
The documentation for this struct was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1mcmc_1_1nuts__util-members.html b/doc/api/html/structstan_1_1mcmc_1_1nuts__util-members.html new file mode 100644 index 00000000000..f9cbb4c1fb4 --- /dev/null +++ b/doc/api/html/structstan_1_1mcmc_1_1nuts__util-members.html @@ -0,0 +1,118 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::mcmc::nuts_util Member List
+
+ +
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1mcmc_1_1nuts__util.html b/doc/api/html/structstan_1_1mcmc_1_1nuts__util.html new file mode 100644 index 00000000000..3e8b87dcf14 --- /dev/null +++ b/doc/api/html/structstan_1_1mcmc_1_1nuts__util.html @@ -0,0 +1,221 @@ + + + + + +Stan: stan::mcmc::nuts_util Struct Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::mcmc::nuts_util Struct Reference
+
+
+ +

#include <base_nuts.hpp>

+ + + + + + + + + + + + + + +

+Public Attributes

double log_u
 
double H0
 
int sign
 
int n_tree
 
double sum_prob
 
bool criterion
 
+

Detailed Description

+
+

Definition at line 14 of file base_nuts.hpp.

+

Member Data Documentation

+ +
+
+ + + + +
bool stan::mcmc::nuts_util::criterion
+
+ +

Definition at line 24 of file base_nuts.hpp.

+ +
+
+ +
+
+ + + + +
double stan::mcmc::nuts_util::H0
+
+ +

Definition at line 18 of file base_nuts.hpp.

+ +
+
+ +
+
+ + + + +
double stan::mcmc::nuts_util::log_u
+
+ +

Definition at line 17 of file base_nuts.hpp.

+ +
+
+ +
+
+ + + + +
int stan::mcmc::nuts_util::n_tree
+
+ +

Definition at line 22 of file base_nuts.hpp.

+ +
+
+ +
+
+ + + + +
int stan::mcmc::nuts_util::sign
+
+ +

Definition at line 19 of file base_nuts.hpp.

+ +
+
+ +
+
+ + + + +
double stan::mcmc::nuts_util::sum_prob
+
+ +

Definition at line 23 of file base_nuts.hpp.

+ +
+
+
The documentation for this struct was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1model_1_1model__functional-members.html b/doc/api/html/structstan_1_1model_1_1model__functional-members.html new file mode 100644 index 00000000000..522edf9443f --- /dev/null +++ b/doc/api/html/structstan_1_1model_1_1model__functional-members.html @@ -0,0 +1,116 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::model::model_functional< M > Member List
+
+
+ +

This is the complete list of members for stan::model::model_functional< M >, including all inherited members.

+ + + + + +
modelstan::model::model_functional< M >
model_functional(const M &m, std::ostream *out)stan::model::model_functional< M >inline
ostan::model::model_functional< M >
operator()(Eigen::Matrix< T, Eigen::Dynamic, 1 > &x) const stan::model::model_functional< M >inline
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1model_1_1model__functional.html b/doc/api/html/structstan_1_1model_1_1model__functional.html new file mode 100644 index 00000000000..79702c807b4 --- /dev/null +++ b/doc/api/html/structstan_1_1model_1_1model__functional.html @@ -0,0 +1,243 @@ + + + + + +Stan: stan::model::model_functional< M > Struct Template Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::model::model_functional< M > Struct Template Reference
+
+
+ +

#include <util.hpp>

+ + + + + + + +

+Public Member Functions

 model_functional (const M &m, std::ostream *out)
 
template<typename T >
operator() (Eigen::Matrix< T, Eigen::Dynamic, 1 > &x) const
 
+ + + + + +

+Public Attributes

const M & model
 
std::ostream * o
 
+

Detailed Description

+

template<class M>
+struct stan::model::model_functional< M >

+ + +

Definition at line 387 of file util.hpp.

+

Constructor & Destructor Documentation

+ +
+
+
+template<class M >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
stan::model::model_functional< M >::model_functional (const M & m,
std::ostream * out 
)
+
+inline
+
+ +

Definition at line 392 of file util.hpp.

+ +
+
+

Member Function Documentation

+ +
+
+
+template<class M >
+
+template<typename T >
+ + + + + +
+ + + + + + + + +
T stan::model::model_functional< M >::operator() (Eigen::Matrix< T, Eigen::Dynamic, 1 > & x) const
+
+inline
+
+ +

Definition at line 395 of file util.hpp.

+ +
+
+

Member Data Documentation

+ +
+
+
+template<class M >
+ + + + +
const M& stan::model::model_functional< M >::model
+
+ +

Definition at line 389 of file util.hpp.

+ +
+
+ +
+
+
+template<class M >
+ + + + +
std::ostream* stan::model::model_functional< M >::o
+
+ +

Definition at line 390 of file util.hpp.

+ +
+
+
The documentation for this struct was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1optimization_1_1_b_f_g_s_minimizer_1_1_b_f_g_s_options-members.html b/doc/api/html/structstan_1_1optimization_1_1_b_f_g_s_minimizer_1_1_b_f_g_s_options-members.html new file mode 100644 index 00000000000..5f1167ba9b9 --- /dev/null +++ b/doc/api/html/structstan_1_1optimization_1_1_b_f_g_s_minimizer_1_1_b_f_g_s_options-members.html @@ -0,0 +1,122 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::optimization::BFGSMinimizer< FunctorType, Scalar, DimAtCompile, LineSearchMethod >::BFGSOptions Member List
+
+ +
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1optimization_1_1_b_f_g_s_minimizer_1_1_b_f_g_s_options.html b/doc/api/html/structstan_1_1optimization_1_1_b_f_g_s_minimizer_1_1_b_f_g_s_options.html new file mode 100644 index 00000000000..052eee6e250 --- /dev/null +++ b/doc/api/html/structstan_1_1optimization_1_1_b_f_g_s_minimizer_1_1_b_f_g_s_options.html @@ -0,0 +1,324 @@ + + + + + +Stan: stan::optimization::BFGSMinimizer< FunctorType, Scalar, DimAtCompile, LineSearchMethod >::BFGSOptions Struct Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::optimization::BFGSMinimizer< FunctorType, Scalar, DimAtCompile, LineSearchMethod >::BFGSOptions Struct Reference
+
+
+ +

#include <bfgs.hpp>

+ + + + +

+Public Member Functions

 BFGSOptions ()
 
+ + + + + + + + + + + + + + + + + + + +

+Public Attributes

size_t maxIts
 
Scalar rho
 
Scalar c1
 
Scalar c2
 
Scalar alpha0
 
Scalar minAlpha
 
Scalar tolX
 
Scalar tolF
 
Scalar tolGrad
 
+

Detailed Description

+

template<typename FunctorType, typename Scalar = double, int DimAtCompile = Eigen::Dynamic, int LineSearchMethod = 1>
+struct stan::optimization::BFGSMinimizer< FunctorType, Scalar, DimAtCompile, LineSearchMethod >::BFGSOptions

+ + +

Definition at line 285 of file bfgs.hpp.

+

Constructor & Destructor Documentation

+ +
+
+
+template<typename FunctorType, typename Scalar = double, int DimAtCompile = Eigen::Dynamic, int LineSearchMethod = 1>
+ + + + + +
+ + + + + + + +
stan::optimization::BFGSMinimizer< FunctorType, Scalar, DimAtCompile, LineSearchMethod >::BFGSOptions::BFGSOptions ()
+
+inline
+
+ +

Definition at line 286 of file bfgs.hpp.

+ +
+
+

Member Data Documentation

+ +
+
+
+template<typename FunctorType, typename Scalar = double, int DimAtCompile = Eigen::Dynamic, int LineSearchMethod = 1>
+ + + + +
Scalar stan::optimization::BFGSMinimizer< FunctorType, Scalar, DimAtCompile, LineSearchMethod >::BFGSOptions::alpha0
+
+ +

Definition at line 301 of file bfgs.hpp.

+ +
+
+ +
+
+
+template<typename FunctorType, typename Scalar = double, int DimAtCompile = Eigen::Dynamic, int LineSearchMethod = 1>
+ + + + +
Scalar stan::optimization::BFGSMinimizer< FunctorType, Scalar, DimAtCompile, LineSearchMethod >::BFGSOptions::c1
+
+ +

Definition at line 299 of file bfgs.hpp.

+ +
+
+ +
+
+
+template<typename FunctorType, typename Scalar = double, int DimAtCompile = Eigen::Dynamic, int LineSearchMethod = 1>
+ + + + +
Scalar stan::optimization::BFGSMinimizer< FunctorType, Scalar, DimAtCompile, LineSearchMethod >::BFGSOptions::c2
+
+ +

Definition at line 300 of file bfgs.hpp.

+ +
+
+ +
+
+
+template<typename FunctorType, typename Scalar = double, int DimAtCompile = Eigen::Dynamic, int LineSearchMethod = 1>
+ + + + +
size_t stan::optimization::BFGSMinimizer< FunctorType, Scalar, DimAtCompile, LineSearchMethod >::BFGSOptions::maxIts
+
+ +

Definition at line 297 of file bfgs.hpp.

+ +
+
+ +
+
+
+template<typename FunctorType, typename Scalar = double, int DimAtCompile = Eigen::Dynamic, int LineSearchMethod = 1>
+ + + + +
Scalar stan::optimization::BFGSMinimizer< FunctorType, Scalar, DimAtCompile, LineSearchMethod >::BFGSOptions::minAlpha
+
+ +

Definition at line 302 of file bfgs.hpp.

+ +
+
+ +
+
+
+template<typename FunctorType, typename Scalar = double, int DimAtCompile = Eigen::Dynamic, int LineSearchMethod = 1>
+ + + + +
Scalar stan::optimization::BFGSMinimizer< FunctorType, Scalar, DimAtCompile, LineSearchMethod >::BFGSOptions::rho
+
+ +

Definition at line 298 of file bfgs.hpp.

+ +
+
+ +
+
+
+template<typename FunctorType, typename Scalar = double, int DimAtCompile = Eigen::Dynamic, int LineSearchMethod = 1>
+ + + + +
Scalar stan::optimization::BFGSMinimizer< FunctorType, Scalar, DimAtCompile, LineSearchMethod >::BFGSOptions::tolF
+
+ +

Definition at line 304 of file bfgs.hpp.

+ +
+
+ +
+
+
+template<typename FunctorType, typename Scalar = double, int DimAtCompile = Eigen::Dynamic, int LineSearchMethod = 1>
+ + + + +
Scalar stan::optimization::BFGSMinimizer< FunctorType, Scalar, DimAtCompile, LineSearchMethod >::BFGSOptions::tolGrad
+
+ +

Definition at line 305 of file bfgs.hpp.

+ +
+
+ +
+
+
+template<typename FunctorType, typename Scalar = double, int DimAtCompile = Eigen::Dynamic, int LineSearchMethod = 1>
+ + + + +
Scalar stan::optimization::BFGSMinimizer< FunctorType, Scalar, DimAtCompile, LineSearchMethod >::BFGSOptions::tolX
+
+ +

Definition at line 303 of file bfgs.hpp.

+ +
+
+
The documentation for this struct was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1prob_1_1include__summand-members.html b/doc/api/html/structstan_1_1prob_1_1include__summand-members.html new file mode 100644 index 00000000000..f9e49060946 --- /dev/null +++ b/doc/api/html/structstan_1_1prob_1_1include__summand-members.html @@ -0,0 +1,113 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::prob::include_summand< propto, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10 > Member List
+
+ +
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1prob_1_1include__summand.html b/doc/api/html/structstan_1_1prob_1_1include__summand.html new file mode 100644 index 00000000000..3c1fce7a7c7 --- /dev/null +++ b/doc/api/html/structstan_1_1prob_1_1include__summand.html @@ -0,0 +1,169 @@ + + + + + +Stan: stan::prob::include_summand< propto, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10 > Struct Template Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::prob::include_summand< propto, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10 > Struct Template Reference
+
+
+ +

Template metaprogram to calculate whether a summand needs to be included in a proportional (log) probability calculation. + More...

+ +

#include <traits.hpp>

+ + + + + +

+Public Types

enum  { value + }
 true if a term with the specified propto value and subterm types should be included in a proportionality calculation. More...
 
+

Detailed Description

+

template<bool propto, typename T1 = double, typename T2 = double, typename T3 = double, typename T4 = double, typename T5 = double, typename T6 = double, typename T7 = double, typename T8 = double, typename T9 = double, typename T10 = double>
+struct stan::prob::include_summand< propto, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10 >

+ +

Template metaprogram to calculate whether a summand needs to be included in a proportional (log) probability calculation.

+

For usage, the first boolean parameter should be set to true if calculating a term up to proportionality. Other type parameters should be included for all of the types of variables in a term.

+

The value enum will be true if the propto parameter is false or if any of the other template arguments are not constants as defined by stan::is_constant<T>.

+
Template Parameters
+ + + +
proptotrue if calculating up to a proportionality constant.
T1First
+
+
+ +

Definition at line 35 of file traits.hpp.

+

Member Enumeration Documentation

+ +
+
+
+template<bool propto, typename T1 = double, typename T2 = double, typename T3 = double, typename T4 = double, typename T5 = double, typename T6 = double, typename T7 = double, typename T8 = double, typename T9 = double, typename T10 = double>
+ + + + +
anonymous enum
+
+ +

true if a term with the specified propto value and subterm types should be included in a proportionality calculation.

+
Enumerator:
+ +
value  +
+
+
+ +

Definition at line 42 of file traits.hpp.

+ +
+
+
The documentation for this struct was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1return__type-members.html b/doc/api/html/structstan_1_1return__type-members.html new file mode 100644 index 00000000000..b5585083329 --- /dev/null +++ b/doc/api/html/structstan_1_1return__type-members.html @@ -0,0 +1,113 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::return_type< T1, T2, T3, T4, T5, T6 > Member List
+
+
+ +

This is the complete list of members for stan::return_type< T1, T2, T3, T4, T5, T6 >, including all inherited members.

+ + +
type typedefstan::return_type< T1, T2, T3, T4, T5, T6 >
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1return__type.html b/doc/api/html/structstan_1_1return__type.html new file mode 100644 index 00000000000..31401605c12 --- /dev/null +++ b/doc/api/html/structstan_1_1return__type.html @@ -0,0 +1,160 @@ + + + + + +Stan: stan::return_type< T1, T2, T3, T4, T5, T6 > Struct Template Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::return_type< T1, T2, T3, T4, T5, T6 > Struct Template Reference
+
+
+ +

Metaprogram to calculate the base scalar return type resulting from promoting all the scalar types of the template parameters. + More...

+ +

#include <traits.hpp>

+ + + + +

+Public Types

typedef
+boost::math::tools::promote_args
+< typename scalar_type< T1 >
+::type, typename scalar_type
+< T2 >::type, typename
+scalar_type< T3 >::type,
+typename scalar_type< T4 >
+::type, typename scalar_type
+< T5 >::type, typename
+scalar_type< T6 >::type >
+::type 
type
 
+

Detailed Description

+

template<typename T1, typename T2 = double, typename T3 = double, typename T4 = double, typename T5 = double, typename T6 = double>
+struct stan::return_type< T1, T2, T3, T4, T5, T6 >

+ +

Metaprogram to calculate the base scalar return type resulting from promoting all the scalar types of the template parameters.

+ +

Definition at line 376 of file traits.hpp.

+

Member Typedef Documentation

+ +
+
+
+template<typename T1, typename T2 = double, typename T3 = double, typename T4 = double, typename T5 = double, typename T6 = double>
+ + + + +
typedef boost::math::tools::promote_args<typename scalar_type<T1>::type, typename scalar_type<T2>::type, typename scalar_type<T3>::type, typename scalar_type<T4>::type, typename scalar_type<T5>::type, typename scalar_type<T6>::type>::type stan::return_type< T1, T2, T3, T4, T5, T6 >::type
+
+ +

Definition at line 384 of file traits.hpp.

+ +
+
+
The documentation for this struct was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1scalar__type-members.html b/doc/api/html/structstan_1_1scalar__type-members.html new file mode 100644 index 00000000000..e8d3ce6a38e --- /dev/null +++ b/doc/api/html/structstan_1_1scalar__type-members.html @@ -0,0 +1,113 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::scalar_type< T > Member List
+
+
+ +

This is the complete list of members for stan::scalar_type< T >, including all inherited members.

+ + +
type typedefstan::scalar_type< T >
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1scalar__type.html b/doc/api/html/structstan_1_1scalar__type.html new file mode 100644 index 00000000000..32598264d4e --- /dev/null +++ b/doc/api/html/structstan_1_1scalar__type.html @@ -0,0 +1,159 @@ + + + + + +Stan: stan::scalar_type< T > Struct Template Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::scalar_type< T > Struct Template Reference
+
+
+ +

Metaprogram structure to determine the base scalar type of a template argument. + More...

+ +

#include <traits.hpp>

+ + + + +

+Public Types

typedef scalar_type_helper
+< is_vector< T >::value, T >
+::type 
type
 
+

Detailed Description

+

template<typename T>
+struct stan::scalar_type< T >

+ +

Metaprogram structure to determine the base scalar type of a template argument.

+

This base class should be specialized for structured types.

+
Template Parameters
+ + +
TType of object.
+
+
+ +

Definition at line 116 of file traits.hpp.

+

Member Typedef Documentation

+ +
+
+
+template<typename T>
+ + + + +
typedef scalar_type_helper<is_vector<T>::value, T>::type stan::scalar_type< T >::type
+
+ +

Definition at line 117 of file traits.hpp.

+ +
+
+
The documentation for this struct was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1scalar__type_3_01_eigen_1_1_matrix_3_01_t_00_01_eigen_1_1_dynamic_00_01_eigen_1_1_dynamic_01_4_01_4-members.html b/doc/api/html/structstan_1_1scalar__type_3_01_eigen_1_1_matrix_3_01_t_00_01_eigen_1_1_dynamic_00_01_eigen_1_1_dynamic_01_4_01_4-members.html new file mode 100644 index 00000000000..ab15cc2b5c1 --- /dev/null +++ b/doc/api/html/structstan_1_1scalar__type_3_01_eigen_1_1_matrix_3_01_t_00_01_eigen_1_1_dynamic_00_01_eigen_1_1_dynamic_01_4_01_4-members.html @@ -0,0 +1,113 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::scalar_type< Eigen::Matrix< T, Eigen::Dynamic, Eigen::Dynamic > > Member List
+
+ +
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1scalar__type_3_01_eigen_1_1_matrix_3_01_t_00_01_eigen_1_1_dynamic_00_01_eigen_1_1_dynamic_01_4_01_4.html b/doc/api/html/structstan_1_1scalar__type_3_01_eigen_1_1_matrix_3_01_t_00_01_eigen_1_1_dynamic_00_01_eigen_1_1_dynamic_01_4_01_4.html new file mode 100644 index 00000000000..e96d11520ea --- /dev/null +++ b/doc/api/html/structstan_1_1scalar__type_3_01_eigen_1_1_matrix_3_01_t_00_01_eigen_1_1_dynamic_00_01_eigen_1_1_dynamic_01_4_01_4.html @@ -0,0 +1,146 @@ + + + + + +Stan: stan::scalar_type< Eigen::Matrix< T, Eigen::Dynamic, Eigen::Dynamic > > Struct Template Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::scalar_type< Eigen::Matrix< T, Eigen::Dynamic, Eigen::Dynamic > > Struct Template Reference
+
+
+ +

#include <traits.hpp>

+ + + + +

+Public Types

typedef scalar_type< T >::type type
 
+

Detailed Description

+

template<typename T>
+struct stan::scalar_type< Eigen::Matrix< T, Eigen::Dynamic, Eigen::Dynamic > >

+ + +

Definition at line 194 of file traits.hpp.

+

Member Typedef Documentation

+ +
+
+
+template<typename T >
+ + + + +
typedef scalar_type<T>::type stan::scalar_type< Eigen::Matrix< T, Eigen::Dynamic, Eigen::Dynamic > >::type
+
+ +

Definition at line 195 of file traits.hpp.

+ +
+
+
The documentation for this struct was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1scalar__type_3_01_t_01_5_01_4-members.html b/doc/api/html/structstan_1_1scalar__type_3_01_t_01_5_01_4-members.html new file mode 100644 index 00000000000..f660865e4c5 --- /dev/null +++ b/doc/api/html/structstan_1_1scalar__type_3_01_t_01_5_01_4-members.html @@ -0,0 +1,113 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::scalar_type< T * > Member List
+
+
+ +

This is the complete list of members for stan::scalar_type< T * >, including all inherited members.

+ + +
type typedefstan::scalar_type< T * >
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1scalar__type_3_01_t_01_5_01_4.html b/doc/api/html/structstan_1_1scalar__type_3_01_t_01_5_01_4.html new file mode 100644 index 00000000000..40896266cbf --- /dev/null +++ b/doc/api/html/structstan_1_1scalar__type_3_01_t_01_5_01_4.html @@ -0,0 +1,146 @@ + + + + + +Stan: stan::scalar_type< T * > Struct Template Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::scalar_type< T * > Struct Template Reference
+
+
+ +

#include <traits.hpp>

+ + + + +

+Public Types

typedef scalar_type< T >::type type
 
+

Detailed Description

+

template<typename T>
+struct stan::scalar_type< T * >

+ + +

Definition at line 199 of file traits.hpp.

+

Member Typedef Documentation

+ +
+
+
+template<typename T >
+ + + + +
typedef scalar_type<T>::type stan::scalar_type< T * >::type
+
+ +

Definition at line 200 of file traits.hpp.

+ +
+
+
The documentation for this struct was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1size__of__helper-members.html b/doc/api/html/structstan_1_1size__of__helper-members.html new file mode 100644 index 00000000000..60d5ed6f019 --- /dev/null +++ b/doc/api/html/structstan_1_1size__of__helper-members.html @@ -0,0 +1,113 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::size_of_helper< T, is_vec > Member List
+
+
+ +

This is the complete list of members for stan::size_of_helper< T, is_vec >, including all inherited members.

+ + +
size_of(const T &)stan::size_of_helper< T, is_vec >inlinestatic
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1size__of__helper.html b/doc/api/html/structstan_1_1size__of__helper.html new file mode 100644 index 00000000000..99937df3152 --- /dev/null +++ b/doc/api/html/structstan_1_1size__of__helper.html @@ -0,0 +1,158 @@ + + + + + +Stan: stan::size_of_helper< T, is_vec > Struct Template Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::size_of_helper< T, is_vec > Struct Template Reference
+
+
+ +

#include <traits.hpp>

+ + + + +

+Static Public Member Functions

static size_t size_of (const T &)
 
+

Detailed Description

+

template<typename T, bool is_vec>
+struct stan::size_of_helper< T, is_vec >

+ + +

Definition at line 150 of file traits.hpp.

+

Member Function Documentation

+ +
+
+
+template<typename T, bool is_vec>
+ + + + + +
+ + + + + + + + +
static size_t stan::size_of_helper< T, is_vec >::size_of (const T & )
+
+inlinestatic
+
+ +

Definition at line 151 of file traits.hpp.

+ +
+
+
The documentation for this struct was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1size__of__helper_3_01_t_00_01true_01_4-members.html b/doc/api/html/structstan_1_1size__of__helper_3_01_t_00_01true_01_4-members.html new file mode 100644 index 00000000000..eb3f3b5931d --- /dev/null +++ b/doc/api/html/structstan_1_1size__of__helper_3_01_t_00_01true_01_4-members.html @@ -0,0 +1,113 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
stan::size_of_helper< T, true > Member List
+
+
+ +

This is the complete list of members for stan::size_of_helper< T, true >, including all inherited members.

+ + +
size_of(const T &x)stan::size_of_helper< T, true >inlinestatic
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstan_1_1size__of__helper_3_01_t_00_01true_01_4.html b/doc/api/html/structstan_1_1size__of__helper_3_01_t_00_01true_01_4.html new file mode 100644 index 00000000000..9c32c4341e5 --- /dev/null +++ b/doc/api/html/structstan_1_1size__of__helper_3_01_t_00_01true_01_4.html @@ -0,0 +1,158 @@ + + + + + +Stan: stan::size_of_helper< T, true > Struct Template Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
stan::size_of_helper< T, true > Struct Template Reference
+
+
+ +

#include <traits.hpp>

+ + + + +

+Static Public Member Functions

static size_t size_of (const T &x)
 
+

Detailed Description

+

template<typename T>
+struct stan::size_of_helper< T, true >

+ + +

Definition at line 157 of file traits.hpp.

+

Member Function Documentation

+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + +
static size_t stan::size_of_helper< T, true >::size_of (const T & x)
+
+inlinestatic
+
+ +

Definition at line 158 of file traits.hpp.

+ +
+
+
The documentation for this struct was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstatement__grammar.html b/doc/api/html/structstatement__grammar.html new file mode 100644 index 00000000000..5b860e8cc00 --- /dev/null +++ b/doc/api/html/structstatement__grammar.html @@ -0,0 +1,116 @@ + + + + + +Stan: statement_grammar< Iterator > Struct Template Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ +
+
+
+
statement_grammar< Iterator > Struct Template Reference
+
+
+ +

#include <statement_2_grammar.hpp>

+

Detailed Description

+

template<typename Iterator>
+struct statement_grammar< Iterator >

+ + +

Definition at line 20 of file statement_2_grammar.hpp.

+

The documentation for this struct was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstd_1_1numeric__limits_3_01stan_1_1agrad_1_1fvar_3_01_t_01_4_01_4-members.html b/doc/api/html/structstd_1_1numeric__limits_3_01stan_1_1agrad_1_1fvar_3_01_t_01_4_01_4-members.html new file mode 100644 index 00000000000..cb712bf25eb --- /dev/null +++ b/doc/api/html/structstd_1_1numeric__limits_3_01stan_1_1agrad_1_1fvar_3_01_t_01_4_01_4-members.html @@ -0,0 +1,142 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
std::numeric_limits< stan::agrad::fvar< T > > Member List
+
+
+ +

This is the complete list of members for std::numeric_limits< stan::agrad::fvar< T > >, including all inherited members.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
denorm_min()std::numeric_limits< stan::agrad::fvar< T > >inlinestatic
digitsstd::numeric_limits< stan::agrad::fvar< T > >static
digits10std::numeric_limits< stan::agrad::fvar< T > >static
epsilon()std::numeric_limits< stan::agrad::fvar< T > >inlinestatic
has_denormstd::numeric_limits< stan::agrad::fvar< T > >static
has_denorm_lossstd::numeric_limits< stan::agrad::fvar< T > >static
has_infinitystd::numeric_limits< stan::agrad::fvar< T > >static
has_quiet_NaNstd::numeric_limits< stan::agrad::fvar< T > >static
has_signaling_NaNstd::numeric_limits< stan::agrad::fvar< T > >static
infinity()std::numeric_limits< stan::agrad::fvar< T > >inlinestatic
is_boundedstd::numeric_limits< stan::agrad::fvar< T > >static
is_exactstd::numeric_limits< stan::agrad::fvar< T > >static
is_iec559std::numeric_limits< stan::agrad::fvar< T > >static
is_integerstd::numeric_limits< stan::agrad::fvar< T > >static
is_modulostd::numeric_limits< stan::agrad::fvar< T > >static
is_signedstd::numeric_limits< stan::agrad::fvar< T > >static
is_specializedstd::numeric_limits< stan::agrad::fvar< T > >static
max()std::numeric_limits< stan::agrad::fvar< T > >inlinestatic
max_exponentstd::numeric_limits< stan::agrad::fvar< T > >static
max_exponent10std::numeric_limits< stan::agrad::fvar< T > >static
min()std::numeric_limits< stan::agrad::fvar< T > >inlinestatic
min_exponentstd::numeric_limits< stan::agrad::fvar< T > >static
min_exponent10std::numeric_limits< stan::agrad::fvar< T > >static
quiet_NaN()std::numeric_limits< stan::agrad::fvar< T > >inlinestatic
radixstd::numeric_limits< stan::agrad::fvar< T > >static
round_error()std::numeric_limits< stan::agrad::fvar< T > >inlinestatic
round_stylestd::numeric_limits< stan::agrad::fvar< T > >static
signaling_NaN()std::numeric_limits< stan::agrad::fvar< T > >inlinestatic
tinyness_beforestd::numeric_limits< stan::agrad::fvar< T > >static
trapsstd::numeric_limits< stan::agrad::fvar< T > >static
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstd_1_1numeric__limits_3_01stan_1_1agrad_1_1fvar_3_01_t_01_4_01_4.html b/doc/api/html/structstd_1_1numeric__limits_3_01stan_1_1agrad_1_1fvar_3_01_t_01_4_01_4.html new file mode 100644 index 00000000000..cd642905f5c --- /dev/null +++ b/doc/api/html/structstd_1_1numeric__limits_3_01stan_1_1agrad_1_1fvar_3_01_t_01_4_01_4.html @@ -0,0 +1,943 @@ + + + + + +Stan: std::numeric_limits< stan::agrad::fvar< T > > Struct Template Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
std::numeric_limits< stan::agrad::fvar< T > > Struct Template Reference
+
+
+ +

#include <numeric_limits.hpp>

+ + + + + + + + + + + + + + + + + + +

+Static Public Member Functions

static stan::agrad::fvar< T > min ()
 
static stan::agrad::fvar< T > max ()
 
static stan::agrad::fvar< T > epsilon ()
 
static stan::agrad::fvar< T > round_error ()
 
static stan::agrad::fvar< T > infinity ()
 
static stan::agrad::fvar< T > quiet_NaN ()
 
static stan::agrad::fvar< T > signaling_NaN ()
 
static stan::agrad::fvar< T > denorm_min ()
 
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Static Public Attributes

static const bool is_specialized = true
 
static const int digits = numeric_limits<double>::digits
 
static const int digits10 = numeric_limits<double>::digits10
 
static const bool is_signed = numeric_limits<double>::is_signed
 
static const bool is_integer = numeric_limits<double>::is_integer
 
static const bool is_exact = numeric_limits<double>::is_exact
 
static const int radix = numeric_limits<double>::radix
 
static const int min_exponent = numeric_limits<double>::min_exponent
 
static const int min_exponent10 = numeric_limits<double>::min_exponent10
 
static const int max_exponent = numeric_limits<double>::max_exponent
 
static const int max_exponent10 = numeric_limits<double>::max_exponent10
 
static const bool has_infinity = numeric_limits<double>::has_infinity
 
static const bool has_quiet_NaN = numeric_limits<double>::has_quiet_NaN
 
static const bool has_signaling_NaN
 
static const float_denorm_style has_denorm
 
static const bool has_denorm_loss = numeric_limits<double>::has_denorm_loss
 
static const bool is_iec559 = numeric_limits<double>::is_iec559
 
static const bool is_bounded = numeric_limits<double>::is_bounded
 
static const bool is_modulo = numeric_limits<double>::is_modulo
 
static const bool traps = numeric_limits<double>::traps
 
static const bool tinyness_before = numeric_limits<double>::tinyness_before
 
static const float_round_style round_style
 
+

Detailed Description

+

template<typename T>
+struct std::numeric_limits< stan::agrad::fvar< T > >

+ + +

Definition at line 11 of file numeric_limits.hpp.

+

Member Function Documentation

+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + +
static stan::agrad::fvar<T> std::numeric_limits< stan::agrad::fvar< T > >::denorm_min ()
+
+inlinestatic
+
+ +

Definition at line 44 of file numeric_limits.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + +
static stan::agrad::fvar<T> std::numeric_limits< stan::agrad::fvar< T > >::epsilon ()
+
+inlinestatic
+
+ +

Definition at line 21 of file numeric_limits.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + +
static stan::agrad::fvar<T> std::numeric_limits< stan::agrad::fvar< T > >::infinity ()
+
+inlinestatic
+
+ +

Definition at line 38 of file numeric_limits.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + +
static stan::agrad::fvar<T> std::numeric_limits< stan::agrad::fvar< T > >::max ()
+
+inlinestatic
+
+ +

Definition at line 14 of file numeric_limits.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + +
static stan::agrad::fvar<T> std::numeric_limits< stan::agrad::fvar< T > >::min ()
+
+inlinestatic
+
+ +

Definition at line 13 of file numeric_limits.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + +
static stan::agrad::fvar<T> std::numeric_limits< stan::agrad::fvar< T > >::quiet_NaN ()
+
+inlinestatic
+
+ +

Definition at line 40 of file numeric_limits.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + +
static stan::agrad::fvar<T> std::numeric_limits< stan::agrad::fvar< T > >::round_error ()
+
+inlinestatic
+
+ +

Definition at line 23 of file numeric_limits.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + +
static stan::agrad::fvar<T> std::numeric_limits< stan::agrad::fvar< T > >::signaling_NaN ()
+
+inlinestatic
+
+ +

Definition at line 42 of file numeric_limits.hpp.

+ +
+
+

Member Data Documentation

+ +
+
+
+template<typename T >
+ + + + + +
+ + + + +
const int std::numeric_limits< stan::agrad::fvar< T > >::digits = numeric_limits<double>::digits
+
+static
+
+ +

Definition at line 15 of file numeric_limits.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + +
const int std::numeric_limits< stan::agrad::fvar< T > >::digits10 = numeric_limits<double>::digits10
+
+static
+
+ +

Definition at line 16 of file numeric_limits.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + +
const float_denorm_style std::numeric_limits< stan::agrad::fvar< T > >::has_denorm
+
+static
+
+Initial value:
=
+
numeric_limits<double>::has_denorm
+
+

Definition at line 35 of file numeric_limits.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + +
const bool std::numeric_limits< stan::agrad::fvar< T > >::has_denorm_loss = numeric_limits<double>::has_denorm_loss
+
+static
+
+ +

Definition at line 37 of file numeric_limits.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + +
const bool std::numeric_limits< stan::agrad::fvar< T > >::has_infinity = numeric_limits<double>::has_infinity
+
+static
+
+ +

Definition at line 31 of file numeric_limits.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + +
const bool std::numeric_limits< stan::agrad::fvar< T > >::has_quiet_NaN = numeric_limits<double>::has_quiet_NaN
+
+static
+
+ +

Definition at line 32 of file numeric_limits.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + +
const bool std::numeric_limits< stan::agrad::fvar< T > >::has_signaling_NaN
+
+static
+
+Initial value:
=
+
numeric_limits<double>::has_signaling_NaN
+
+

Definition at line 33 of file numeric_limits.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + +
const bool std::numeric_limits< stan::agrad::fvar< T > >::is_bounded = numeric_limits<double>::is_bounded
+
+static
+
+ +

Definition at line 48 of file numeric_limits.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + +
const bool std::numeric_limits< stan::agrad::fvar< T > >::is_exact = numeric_limits<double>::is_exact
+
+static
+
+ +

Definition at line 19 of file numeric_limits.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + +
const bool std::numeric_limits< stan::agrad::fvar< T > >::is_iec559 = numeric_limits<double>::is_iec559
+
+static
+
+ +

Definition at line 47 of file numeric_limits.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + +
const bool std::numeric_limits< stan::agrad::fvar< T > >::is_integer = numeric_limits<double>::is_integer
+
+static
+
+ +

Definition at line 18 of file numeric_limits.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + +
const bool std::numeric_limits< stan::agrad::fvar< T > >::is_modulo = numeric_limits<double>::is_modulo
+
+static
+
+ +

Definition at line 49 of file numeric_limits.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + +
const bool std::numeric_limits< stan::agrad::fvar< T > >::is_signed = numeric_limits<double>::is_signed
+
+static
+
+ +

Definition at line 17 of file numeric_limits.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + +
const bool std::numeric_limits< stan::agrad::fvar< T > >::is_specialized = true
+
+static
+
+ +

Definition at line 12 of file numeric_limits.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + +
const int std::numeric_limits< stan::agrad::fvar< T > >::max_exponent = numeric_limits<double>::max_exponent
+
+static
+
+ +

Definition at line 28 of file numeric_limits.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + +
const int std::numeric_limits< stan::agrad::fvar< T > >::max_exponent10 = numeric_limits<double>::max_exponent10
+
+static
+
+ +

Definition at line 29 of file numeric_limits.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + +
const int std::numeric_limits< stan::agrad::fvar< T > >::min_exponent = numeric_limits<double>::min_exponent
+
+static
+
+ +

Definition at line 26 of file numeric_limits.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + +
const int std::numeric_limits< stan::agrad::fvar< T > >::min_exponent10 = numeric_limits<double>::min_exponent10
+
+static
+
+ +

Definition at line 27 of file numeric_limits.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + +
const int std::numeric_limits< stan::agrad::fvar< T > >::radix = numeric_limits<double>::radix
+
+static
+
+ +

Definition at line 20 of file numeric_limits.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + +
const float_round_style std::numeric_limits< stan::agrad::fvar< T > >::round_style
+
+static
+
+Initial value:
=
+
numeric_limits<double>::round_style
+
+

Definition at line 53 of file numeric_limits.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + +
const bool std::numeric_limits< stan::agrad::fvar< T > >::tinyness_before = numeric_limits<double>::tinyness_before
+
+static
+
+ +

Definition at line 52 of file numeric_limits.hpp.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + +
const bool std::numeric_limits< stan::agrad::fvar< T > >::traps = numeric_limits<double>::traps
+
+static
+
+ +

Definition at line 51 of file numeric_limits.hpp.

+ +
+
+
The documentation for this struct was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstd_1_1numeric__limits_3_01stan_1_1agrad_1_1var_01_4-members.html b/doc/api/html/structstd_1_1numeric__limits_3_01stan_1_1agrad_1_1var_01_4-members.html new file mode 100644 index 00000000000..482394b9baf --- /dev/null +++ b/doc/api/html/structstd_1_1numeric__limits_3_01stan_1_1agrad_1_1var_01_4-members.html @@ -0,0 +1,142 @@ + + + + + +Stan: Member List + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
std::numeric_limits< stan::agrad::var > Member List
+
+
+ +

This is the complete list of members for std::numeric_limits< stan::agrad::var >, including all inherited members.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
denorm_min()std::numeric_limits< stan::agrad::var >inlinestatic
digitsstd::numeric_limits< stan::agrad::var >static
digits10std::numeric_limits< stan::agrad::var >static
epsilon()std::numeric_limits< stan::agrad::var >inlinestatic
has_denormstd::numeric_limits< stan::agrad::var >static
has_denorm_lossstd::numeric_limits< stan::agrad::var >static
has_infinitystd::numeric_limits< stan::agrad::var >static
has_quiet_NaNstd::numeric_limits< stan::agrad::var >static
has_signaling_NaNstd::numeric_limits< stan::agrad::var >static
infinity()std::numeric_limits< stan::agrad::var >inlinestatic
is_boundedstd::numeric_limits< stan::agrad::var >static
is_exactstd::numeric_limits< stan::agrad::var >static
is_iec559std::numeric_limits< stan::agrad::var >static
is_integerstd::numeric_limits< stan::agrad::var >static
is_modulostd::numeric_limits< stan::agrad::var >static
is_signedstd::numeric_limits< stan::agrad::var >static
is_specializedstd::numeric_limits< stan::agrad::var >static
max()std::numeric_limits< stan::agrad::var >inlinestatic
max_exponentstd::numeric_limits< stan::agrad::var >static
max_exponent10std::numeric_limits< stan::agrad::var >static
min()std::numeric_limits< stan::agrad::var >inlinestatic
min_exponentstd::numeric_limits< stan::agrad::var >static
min_exponent10std::numeric_limits< stan::agrad::var >static
quiet_NaN()std::numeric_limits< stan::agrad::var >inlinestatic
radixstd::numeric_limits< stan::agrad::var >static
round_error()std::numeric_limits< stan::agrad::var >inlinestatic
round_stylestd::numeric_limits< stan::agrad::var >static
signaling_NaN()std::numeric_limits< stan::agrad::var >inlinestatic
tinyness_beforestd::numeric_limits< stan::agrad::var >static
trapsstd::numeric_limits< stan::agrad::var >static
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structstd_1_1numeric__limits_3_01stan_1_1agrad_1_1var_01_4.html b/doc/api/html/structstd_1_1numeric__limits_3_01stan_1_1agrad_1_1var_01_4.html new file mode 100644 index 00000000000..7d28f8f19f3 --- /dev/null +++ b/doc/api/html/structstd_1_1numeric__limits_3_01stan_1_1agrad_1_1var_01_4.html @@ -0,0 +1,882 @@ + + + + + +Stan: std::numeric_limits< stan::agrad::var > Struct Template Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
std::numeric_limits< stan::agrad::var > Struct Template Reference
+
+
+ +

Specialization of numeric limits for var objects. + More...

+ +

#include <numeric_limits.hpp>

+ + + + + + + + + + + + + + + + + + +

+Static Public Member Functions

static stan::agrad::var min ()
 
static stan::agrad::var max ()
 
static stan::agrad::var epsilon ()
 
static stan::agrad::var round_error ()
 
static stan::agrad::var infinity ()
 
static stan::agrad::var quiet_NaN ()
 
static stan::agrad::var signaling_NaN ()
 
static stan::agrad::var denorm_min ()
 
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Static Public Attributes

static const bool is_specialized = true
 
static const int digits = numeric_limits<double>::digits
 
static const int digits10 = numeric_limits<double>::digits10
 
static const bool is_signed = numeric_limits<double>::is_signed
 
static const bool is_integer = numeric_limits<double>::is_integer
 
static const bool is_exact = numeric_limits<double>::is_exact
 
static const int radix = numeric_limits<double>::radix
 
static const int min_exponent = numeric_limits<double>::min_exponent
 
static const int min_exponent10 = numeric_limits<double>::min_exponent10
 
static const int max_exponent = numeric_limits<double>::max_exponent
 
static const int max_exponent10 = numeric_limits<double>::max_exponent10
 
static const bool has_infinity = numeric_limits<double>::has_infinity
 
static const bool has_quiet_NaN = numeric_limits<double>::has_quiet_NaN
 
static const bool has_signaling_NaN = numeric_limits<double>::has_signaling_NaN
 
static const float_denorm_style has_denorm = numeric_limits<double>::has_denorm
 
static const bool has_denorm_loss = numeric_limits<double>::has_denorm_loss
 
static const bool is_iec559 = numeric_limits<double>::is_iec559
 
static const bool is_bounded = numeric_limits<double>::is_bounded
 
static const bool is_modulo = numeric_limits<double>::is_modulo
 
static const bool traps = numeric_limits<double>::traps
 
static const bool tinyness_before = numeric_limits<double>::tinyness_before
 
static const float_round_style round_style = numeric_limits<double>::round_style
 
+

Detailed Description

+

template<>
+struct std::numeric_limits< stan::agrad::var >

+ +

Specialization of numeric limits for var objects.

+

This implementation of std::numeric_limits<stan::agrad::var> is used to treat var objects like doubles.

+ +

Definition at line 16 of file numeric_limits.hpp.

+

Member Function Documentation

+ +
+
+ + + + + +
+ + + + + + + +
static stan::agrad::var std::numeric_limits< stan::agrad::var >::denorm_min ()
+
+inlinestatic
+
+ +

Definition at line 42 of file numeric_limits.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
static stan::agrad::var std::numeric_limits< stan::agrad::var >::epsilon ()
+
+inlinestatic
+
+ +

Definition at line 26 of file numeric_limits.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
static stan::agrad::var std::numeric_limits< stan::agrad::var >::infinity ()
+
+inlinestatic
+
+ +

Definition at line 39 of file numeric_limits.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
static stan::agrad::var std::numeric_limits< stan::agrad::var >::max ()
+
+inlinestatic
+
+ +

Definition at line 19 of file numeric_limits.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
static stan::agrad::var std::numeric_limits< stan::agrad::var >::min ()
+
+inlinestatic
+
+ +

Definition at line 18 of file numeric_limits.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
static stan::agrad::var std::numeric_limits< stan::agrad::var >::quiet_NaN ()
+
+inlinestatic
+
+ +

Definition at line 40 of file numeric_limits.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
static stan::agrad::var std::numeric_limits< stan::agrad::var >::round_error ()
+
+inlinestatic
+
+ +

Definition at line 27 of file numeric_limits.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
static stan::agrad::var std::numeric_limits< stan::agrad::var >::signaling_NaN ()
+
+inlinestatic
+
+ +

Definition at line 41 of file numeric_limits.hpp.

+ +
+
+

Member Data Documentation

+ +
+
+ + + + + +
+ + + + +
const int std::numeric_limits< stan::agrad::var >::digits = numeric_limits<double>::digits
+
+static
+
+ +

Definition at line 20 of file numeric_limits.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + +
const int std::numeric_limits< stan::agrad::var >::digits10 = numeric_limits<double>::digits10
+
+static
+
+ +

Definition at line 21 of file numeric_limits.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + +
const float_denorm_style std::numeric_limits< stan::agrad::var >::has_denorm = numeric_limits<double>::has_denorm
+
+static
+
+ +

Definition at line 37 of file numeric_limits.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + +
const bool std::numeric_limits< stan::agrad::var >::has_denorm_loss = numeric_limits<double>::has_denorm_loss
+
+static
+
+ +

Definition at line 38 of file numeric_limits.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + +
const bool std::numeric_limits< stan::agrad::var >::has_infinity = numeric_limits<double>::has_infinity
+
+static
+
+ +

Definition at line 34 of file numeric_limits.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + +
const bool std::numeric_limits< stan::agrad::var >::has_quiet_NaN = numeric_limits<double>::has_quiet_NaN
+
+static
+
+ +

Definition at line 35 of file numeric_limits.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + +
const bool std::numeric_limits< stan::agrad::var >::has_signaling_NaN = numeric_limits<double>::has_signaling_NaN
+
+static
+
+ +

Definition at line 36 of file numeric_limits.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + +
const bool std::numeric_limits< stan::agrad::var >::is_bounded = numeric_limits<double>::is_bounded
+
+static
+
+ +

Definition at line 45 of file numeric_limits.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + +
const bool std::numeric_limits< stan::agrad::var >::is_exact = numeric_limits<double>::is_exact
+
+static
+
+ +

Definition at line 24 of file numeric_limits.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + +
const bool std::numeric_limits< stan::agrad::var >::is_iec559 = numeric_limits<double>::is_iec559
+
+static
+
+ +

Definition at line 44 of file numeric_limits.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + +
const bool std::numeric_limits< stan::agrad::var >::is_integer = numeric_limits<double>::is_integer
+
+static
+
+ +

Definition at line 23 of file numeric_limits.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + +
const bool std::numeric_limits< stan::agrad::var >::is_modulo = numeric_limits<double>::is_modulo
+
+static
+
+ +

Definition at line 46 of file numeric_limits.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + +
const bool std::numeric_limits< stan::agrad::var >::is_signed = numeric_limits<double>::is_signed
+
+static
+
+ +

Definition at line 22 of file numeric_limits.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + +
const bool std::numeric_limits< stan::agrad::var >::is_specialized = true
+
+static
+
+ +

Definition at line 17 of file numeric_limits.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + +
const int std::numeric_limits< stan::agrad::var >::max_exponent = numeric_limits<double>::max_exponent
+
+static
+
+ +

Definition at line 31 of file numeric_limits.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + +
const int std::numeric_limits< stan::agrad::var >::max_exponent10 = numeric_limits<double>::max_exponent10
+
+static
+
+ +

Definition at line 32 of file numeric_limits.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + +
const int std::numeric_limits< stan::agrad::var >::min_exponent = numeric_limits<double>::min_exponent
+
+static
+
+ +

Definition at line 29 of file numeric_limits.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + +
const int std::numeric_limits< stan::agrad::var >::min_exponent10 = numeric_limits<double>::min_exponent10
+
+static
+
+ +

Definition at line 30 of file numeric_limits.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + +
const int std::numeric_limits< stan::agrad::var >::radix = numeric_limits<double>::radix
+
+static
+
+ +

Definition at line 25 of file numeric_limits.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + +
const float_round_style std::numeric_limits< stan::agrad::var >::round_style = numeric_limits<double>::round_style
+
+static
+
+ +

Definition at line 50 of file numeric_limits.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + +
const bool std::numeric_limits< stan::agrad::var >::tinyness_before = numeric_limits<double>::tinyness_before
+
+static
+
+ +

Definition at line 49 of file numeric_limits.hpp.

+ +
+
+ +
+
+ + + + + +
+ + + + +
const bool std::numeric_limits< stan::agrad::var >::traps = numeric_limits<double>::traps
+
+static
+
+ +

Definition at line 48 of file numeric_limits.hpp.

+ +
+
+
The documentation for this struct was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/structterm__grammar.html b/doc/api/html/structterm__grammar.html new file mode 100644 index 00000000000..cf2d1918c87 --- /dev/null +++ b/doc/api/html/structterm__grammar.html @@ -0,0 +1,116 @@ + + + + + +Stan: term_grammar< Iterator > Struct Template Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ +
+
+
+
term_grammar< Iterator > Struct Template Reference
+
+
+ +

#include <expression_grammar.hpp>

+

Detailed Description

+

template<typename Iterator>
+struct term_grammar< Iterator >

+ + +

Definition at line 19 of file expression_grammar.hpp.

+

The documentation for this struct was generated from the following file: +
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/student__t_8hpp.html b/doc/api/html/student__t_8hpp.html new file mode 100644 index 00000000000..3e5875c238b --- /dev/null +++ b/doc/api/html/student__t_8hpp.html @@ -0,0 +1,160 @@ + + + + + +Stan: src/stan/prob/distributions/univariate/continuous/student_t.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
student_t.hpp File Reference
+
+
+
#include <boost/random/student_t_distribution.hpp>
+#include <boost/random/variate_generator.hpp>
+#include <stan/agrad/partials_vari.hpp>
+#include <stan/math/error_handling.hpp>
+#include <stan/math/constants.hpp>
+#include <stan/math/functions/square.hpp>
+#include <stan/math/functions/value_of.hpp>
+#include <stan/meta/traits.hpp>
+#include <stan/prob/constants.hpp>
+#include <stan/prob/traits.hpp>
+#include <stan/prob/internal_math.hpp>
+
+

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::prob
 Templated probability distributions.
 
+ + + + + + + + + + + + + + + + + + + + +

+Functions

template<bool propto, typename T_y , typename T_dof , typename T_loc , typename T_scale >
return_type< T_y, T_dof, T_loc,
+T_scale >::type 
stan::prob::student_t_log (const T_y &y, const T_dof &nu, const T_loc &mu, const T_scale &sigma)
 The log of the Student-t density for the given y, nu, mean, and scale parameter.
 
template<typename T_y , typename T_dof , typename T_loc , typename T_scale >
return_type< T_y, T_dof, T_loc,
+T_scale >::type 
stan::prob::student_t_log (const T_y &y, const T_dof &nu, const T_loc &mu, const T_scale &sigma)
 
template<typename T_y , typename T_dof , typename T_loc , typename T_scale >
return_type< T_y, T_dof, T_loc,
+T_scale >::type 
stan::prob::student_t_cdf (const T_y &y, const T_dof &nu, const T_loc &mu, const T_scale &sigma)
 
template<typename T_y , typename T_dof , typename T_loc , typename T_scale >
return_type< T_y, T_dof, T_loc,
+T_scale >::type 
stan::prob::student_t_cdf_log (const T_y &y, const T_dof &nu, const T_loc &mu, const T_scale &sigma)
 
template<typename T_y , typename T_dof , typename T_loc , typename T_scale >
return_type< T_y, T_dof, T_loc,
+T_scale >::type 
stan::prob::student_t_ccdf_log (const T_y &y, const T_dof &nu, const T_loc &mu, const T_scale &sigma)
 
template<class RNG >
double stan::prob::student_t_rng (const double nu, const double mu, const double sigma, RNG &rng)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/student__t_8hpp_source.html b/doc/api/html/student__t_8hpp_source.html new file mode 100644 index 00000000000..fe413d018ae --- /dev/null +++ b/doc/api/html/student__t_8hpp_source.html @@ -0,0 +1,865 @@ + + + + + +Stan: src/stan/prob/distributions/univariate/continuous/student_t.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
student_t.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__PROB__DISTRIBUTIONS__UNIVARIATE__CONTINUOUS__STUDENT_T_HPP__
+
2 #define __STAN__PROB__DISTRIBUTIONS__UNIVARIATE__CONTINUOUS__STUDENT_T_HPP__
+
3 
+
4 #include <boost/random/student_t_distribution.hpp>
+
5 #include <boost/random/variate_generator.hpp>
+
6 
+ + + + + +
12 #include <stan/meta/traits.hpp>
+
13 #include <stan/prob/constants.hpp>
+
14 #include <stan/prob/traits.hpp>
+ +
16 
+
17 namespace stan {
+
18 
+
19  namespace prob {
+
20 
+
46  template <bool propto, typename T_y, typename T_dof,
+
47  typename T_loc, typename T_scale>
+
48  typename return_type<T_y,T_dof,T_loc,T_scale>::type
+
49  student_t_log(const T_y& y, const T_dof& nu, const T_loc& mu,
+
50  const T_scale& sigma) {
+
51  static const char* function = "stan::prob::student_t_log(%1%)";
+
52 
+ + + + +
57 
+
58  // check if any vectors are zero length
+
59  if (!(stan::length(y)
+
60  && stan::length(nu)
+
61  && stan::length(mu)
+
62  && stan::length(sigma)))
+
63  return 0.0;
+
64 
+
65  double logp(0.0);
+
66 
+
67  // validate args (here done over var, which should be OK)
+
68  if (!check_not_nan(function, y, "Random variable", &logp))
+
69  return logp;
+
70  if(!check_finite(function, nu, "Degrees of freedom parameter",
+
71  &logp))
+
72  return logp;
+
73  if(!check_positive(function, nu, "Degrees of freedom parameter",
+
74  &logp))
+
75  return logp;
+
76  if (!check_finite(function, mu, "Location parameter",
+
77  &logp))
+
78  return logp;
+
79  if (!check_finite(function, sigma, "Scale parameter",
+
80  &logp))
+
81  return logp;
+
82  if (!check_positive(function, sigma, "Scale parameter",
+
83  &logp))
+
84  return logp;
+
85  if (!(check_consistent_sizes(function,
+
86  y,nu,mu,sigma,
+
87  "Random variable",
+
88  "Degrees of freedom parameter",
+
89  "Location parameter","Scale parameter",
+
90  &logp)))
+
91  return logp;
+
92 
+
93  // check if no variables are involved and prop-to
+ +
95  return 0.0;
+
96 
+
97  VectorView<const T_y> y_vec(y);
+
98  VectorView<const T_dof> nu_vec(nu);
+
99  VectorView<const T_loc> mu_vec(mu);
+
100  VectorView<const T_scale> sigma_vec(sigma);
+
101  size_t N = max_size(y, nu, mu, sigma);
+
102 
+
103  using std::log;
+
104  using boost::math::digamma;
+
105  using boost::math::lgamma;
+
106  using stan::math::square;
+
107  using stan::math::value_of;
+
108 
+ +
110  is_vector<T_dof>::value> half_nu(length(nu));
+
111  for (size_t i = 0; i < length(nu); i++)
+ +
113  half_nu[i] = 0.5 * value_of(nu_vec[i]);
+ +
115  is_vector<T_dof>::value> lgamma_half_nu(length(nu));
+ +
117  is_vector<T_dof>::value> lgamma_half_nu_plus_half(length(nu));
+ +
119  for (size_t i = 0; i < length(nu); i++) {
+
120  lgamma_half_nu[i] = lgamma(half_nu[i]);
+
121  lgamma_half_nu_plus_half[i] = lgamma(half_nu[i] + 0.5);
+
122  }
+ +
124  is_vector<T_dof>::value> digamma_half_nu(length(nu));
+ +
126  is_vector<T_dof>::value> digamma_half_nu_plus_half(length(nu));
+ +
128  for (size_t i = 0; i < length(nu); i++) {
+
129  digamma_half_nu[i] = digamma(half_nu[i]);
+
130  digamma_half_nu_plus_half[i] = digamma(half_nu[i] + 0.5);
+
131  }
+
132 
+
133 
+
134 
+ +
136  is_vector<T_dof>::value> log_nu(length(nu));
+
137  for (size_t i = 0; i < length(nu); i++)
+ +
139  log_nu[i] = log(value_of(nu_vec[i]));
+ +
141  is_vector<T_scale>::value> log_sigma(length(sigma));
+
142  for (size_t i = 0; i < length(sigma); i++)
+ +
144  log_sigma[i] = log(value_of(sigma_vec[i]));
+
145 
+ + + + + +
151  square_y_minus_mu_over_sigma__over_nu(N);
+
152 
+ + + + + +
158  log1p_exp(N);
+
159 
+
160  for (size_t i = 0; i < N; i++)
+ +
162  const double y_dbl = value_of(y_vec[i]);
+
163  const double mu_dbl = value_of(mu_vec[i]);
+
164  const double sigma_dbl = value_of(sigma_vec[i]);
+
165  const double nu_dbl = value_of(nu_vec[i]);
+
166  square_y_minus_mu_over_sigma__over_nu[i]
+
167  = square((y_dbl - mu_dbl) / sigma_dbl) / nu_dbl;
+
168  log1p_exp[i] = log1p(square_y_minus_mu_over_sigma__over_nu[i]);
+
169  }
+
170 
+ +
172  operands_and_partials(y,nu,mu,sigma);
+
173  for (size_t n = 0; n < N; n++) {
+
174  const double y_dbl = value_of(y_vec[n]);
+
175  const double mu_dbl = value_of(mu_vec[n]);
+
176  const double sigma_dbl = value_of(sigma_vec[n]);
+
177  const double nu_dbl = value_of(nu_vec[n]);
+ +
179  logp += NEG_LOG_SQRT_PI;
+ +
181  logp += lgamma_half_nu_plus_half[n] - lgamma_half_nu[n]
+
182  - 0.5 * log_nu[n];
+ +
184  logp -= log_sigma[n];
+ +
186  logp -= (half_nu[n] + 0.5)
+
187  * log1p_exp[n];
+
188 
+ +
190  operands_and_partials.d_x1[n]
+
191  += -(half_nu[n]+0.5)
+
192  * 1.0 / (1.0 + square_y_minus_mu_over_sigma__over_nu[n])
+
193  * (2.0 * (y_dbl - mu_dbl) / square(sigma_dbl) / nu_dbl);
+
194  }
+ +
196  const double inv_nu = 1.0 / nu_dbl;
+
197  operands_and_partials.d_x2[n]
+
198  += 0.5*digamma_half_nu_plus_half[n] - 0.5*digamma_half_nu[n]
+
199  - 0.5 * inv_nu
+
200  - 0.5*log1p_exp[n]
+
201  + (half_nu[n] + 0.5)
+
202  * (1.0/(1.0 + square_y_minus_mu_over_sigma__over_nu[n])
+
203  * square_y_minus_mu_over_sigma__over_nu[n] * inv_nu);
+
204  }
+ +
206  operands_and_partials.d_x3[n]
+
207  -= (half_nu[n] + 0.5)
+
208  / (1.0 + square_y_minus_mu_over_sigma__over_nu[n])
+
209  * (2.0 * (mu_dbl - y_dbl) / (sigma_dbl*sigma_dbl*nu_dbl));
+
210  }
+ +
212  const double inv_sigma = 1.0 / sigma_dbl;
+
213  operands_and_partials.d_x4[n]
+
214  += -inv_sigma
+
215  + (nu_dbl + 1.0) / (1.0 + square_y_minus_mu_over_sigma__over_nu[n])
+
216  * (square_y_minus_mu_over_sigma__over_nu[n] * inv_sigma);
+
217  }
+
218  }
+
219  return operands_and_partials.to_var(logp);
+
220  }
+
221 
+
222  template <typename T_y, typename T_dof, typename T_loc, typename T_scale>
+
223  inline
+ +
225  student_t_log(const T_y& y, const T_dof& nu, const T_loc& mu,
+
226  const T_scale& sigma) {
+
227  return student_t_log<false>(y,nu,mu,sigma);
+
228  }
+
229 
+
230  template <typename T_y, typename T_dof, typename T_loc, typename T_scale>
+ +
232  student_t_cdf(const T_y& y, const T_dof& nu, const T_loc& mu,
+
233  const T_scale& sigma) {
+
234 
+
235  // Size checks
+
236  if (!(stan::length(y) && stan::length(nu) && stan::length(mu)
+
237  && stan::length(sigma)))
+
238  return 1.0;
+
239 
+
240  static const char* function = "stan::prob::student_t_cdf(%1%)";
+
241 
+ + + + +
246  using stan::math::value_of;
+
247 
+
248  double P(1.0);
+
249 
+
250  if (!check_not_nan(function, y, "Random variable", &P))
+
251  return P;
+
252  if (!check_finite(function, nu, "Degrees of freedom parameter", &P))
+
253  return P;
+
254  if (!check_positive(function, nu, "Degrees of freedom parameter", &P))
+
255  return P;
+
256  if (!check_finite(function, mu, "Location parameter", &P))
+
257  return P;
+
258  if (!check_finite(function, sigma, "Scale parameter", &P))
+
259  return P;
+
260  if (!check_positive(function, sigma, "Scale parameter", &P))
+
261  return P;
+
262 
+
263  // Wrap arguments in vectors
+
264  VectorView<const T_y> y_vec(y);
+
265  VectorView<const T_dof> nu_vec(nu);
+
266  VectorView<const T_loc> mu_vec(mu);
+
267  VectorView<const T_scale> sigma_vec(sigma);
+
268  size_t N = max_size(y, nu, mu, sigma);
+
269 
+ +
271  operands_and_partials(y, nu, mu, sigma);
+
272 
+
273  // Explicit return for extreme values
+
274  // The gradients are technically ill-defined, but treated as zero
+
275  for (size_t i = 0; i < stan::length(y); i++) {
+
276  if (value_of(y_vec[i]) == -std::numeric_limits<double>::infinity())
+
277  return operands_and_partials.to_var(0.0);
+
278  }
+
279 
+
280  using boost::math::ibeta;
+
281  using boost::math::ibeta_derivative;
+
282  using boost::math::digamma;
+
283  using boost::math::beta;
+
284 
+
285  // Cache a few expensive function calls if nu is a parameter
+
286  double digammaHalf = 0;
+
287 
+ +
289  digamma_vec(stan::length(nu));
+ +
291  digammaNu_vec(stan::length(nu));
+ +
293  digammaNuPlusHalf_vec(stan::length(nu));
+ +
295  betaNuHalf_vec(stan::length(nu));
+
296 
+ +
298  digammaHalf = digamma(0.5);
+
299 
+
300  for (size_t i = 0; i < stan::length(nu); i++) {
+
301  const double nu_dbl = value_of(nu_vec[i]);
+
302 
+
303  digammaNu_vec[i] = digamma(0.5 * nu_dbl);
+
304  digammaNuPlusHalf_vec[i] = digamma(0.5 + 0.5 * nu_dbl);
+
305  betaNuHalf_vec[i] = beta(0.5, 0.5 * nu_dbl);
+
306  }
+
307  }
+
308 
+
309  // Compute vectorized CDF and gradient
+
310  for (size_t n = 0; n < N; n++) {
+
311 
+
312  // Explicit results for extreme values
+
313  // The gradients are technically ill-defined, but treated as zero
+
314  if (value_of(y_vec[n]) == std::numeric_limits<double>::infinity()) {
+
315  continue;
+
316  }
+
317 
+
318  const double sigma_inv = 1.0 / value_of(sigma_vec[n]);
+
319  const double t = (value_of(y_vec[n]) - value_of(mu_vec[n])) * sigma_inv;
+
320  const double nu_dbl = value_of(nu_vec[n]);
+
321  const double q = nu_dbl / (t * t);
+
322  const double r = 1.0 / (1.0 + q);
+
323  const double J = 2 * r * r * q / t;
+
324  double zJacobian = t > 0 ? - 0.5 : 0.5;
+
325 
+
326  if(q < 2)
+
327  {
+
328 
+
329  double z = ibeta(0.5 * nu_dbl, 0.5, 1.0 - r);
+
330  const double Pn = t > 0 ? 1.0 - 0.5 * z : 0.5 * z;
+
331  const double d_ibeta = ibeta_derivative(0.5 * nu_dbl, 0.5, 1.0 - r);
+
332 
+
333  P *= Pn;
+
334 
+ +
336  operands_and_partials.d_x1[n]
+
337  += - zJacobian * d_ibeta * J * sigma_inv / Pn;
+ +
339 
+
340  double g1 = 0;
+
341  double g2 = 0;
+
342 
+
343  stan::math::gradRegIncBeta(g1, g2, 0.5 * nu_dbl, 0.5, 1.0 - r,
+
344  digammaNu_vec[n], digammaHalf,
+
345  digammaNuPlusHalf_vec[n],
+
346  betaNuHalf_vec[n]);
+
347 
+
348  operands_and_partials.d_x2[n]
+
349  += zJacobian * ( d_ibeta * (r / t) * (r / t) + 0.5 * g1 ) / Pn;
+
350  }
+
351 
+ +
353  operands_and_partials.d_x3[n]
+
354  += zJacobian * d_ibeta * J * sigma_inv / Pn;
+ +
356  operands_and_partials.d_x4[n]
+
357  += zJacobian * d_ibeta * J * sigma_inv * t / Pn;
+
358 
+
359  }
+
360  else {
+
361 
+
362  double z = 1 - ibeta(0.5, 0.5 * nu_dbl, r);
+
363  zJacobian *= -1;
+
364 
+
365  const double Pn = t > 0 ? 1.0 - 0.5 * z : 0.5 * z;
+
366 
+
367  double d_ibeta = ibeta_derivative(0.5, 0.5 * nu_dbl, r);
+
368 
+
369  P *= Pn;
+
370 
+ +
372  operands_and_partials.d_x1[n]
+
373  += zJacobian * d_ibeta * J * sigma_inv / Pn;
+ +
375 
+
376  double g1 = 0;
+
377  double g2 = 0;
+
378 
+
379  stan::math::gradRegIncBeta(g1, g2, 0.5, 0.5 * nu_dbl, r,
+
380  digammaHalf, digammaNu_vec[n],
+
381  digammaNuPlusHalf_vec[n],
+
382  betaNuHalf_vec[n]);
+
383 
+
384  operands_and_partials.d_x2[n]
+
385  += zJacobian * ( - d_ibeta * (r / t) * (r / t) + 0.5 * g2 ) / Pn;
+
386  }
+ +
388  operands_and_partials.d_x3[n]
+
389  += - zJacobian * d_ibeta * J * sigma_inv / Pn;
+ +
391  operands_and_partials.d_x4[n]
+
392  += - zJacobian * d_ibeta * J * sigma_inv * t / Pn;
+
393  }
+
394  }
+
395 
+ +
397  for(size_t n = 0; n < stan::length(y); ++n)
+
398  operands_and_partials.d_x1[n] *= P;
+ +
400  for(size_t n = 0; n < stan::length(nu); ++n)
+
401  operands_and_partials.d_x2[n] *= P;
+ +
403  for(size_t n = 0; n < stan::length(mu); ++n)
+
404  operands_and_partials.d_x3[n] *= P;
+ +
406  for(size_t n = 0; n < stan::length(sigma); ++n)
+
407  operands_and_partials.d_x4[n] *= P;
+
408 
+
409  return operands_and_partials.to_var(P);
+
410  }
+
411 
+
412  template <typename T_y, typename T_dof, typename T_loc, typename T_scale>
+ +
414  student_t_cdf_log(const T_y& y, const T_dof& nu, const T_loc& mu,
+
415  const T_scale& sigma) {
+
416 
+
417  // Size checks
+
418  if (!(stan::length(y) && stan::length(nu) && stan::length(mu)
+
419  && stan::length(sigma)))
+
420  return 0.0;
+
421 
+
422  static const char* function = "stan::prob::student_t_cdf_log(%1%)";
+
423 
+ + + + +
428  using stan::math::value_of;
+
429 
+
430  double P(0.0);
+
431 
+
432  if (!check_not_nan(function, y, "Random variable", &P))
+
433  return P;
+
434  if (!check_finite(function, nu, "Degrees of freedom parameter", &P))
+
435  return P;
+
436  if (!check_positive(function, nu, "Degrees of freedom parameter", &P))
+
437  return P;
+
438  if (!check_finite(function, mu, "Location parameter", &P))
+
439  return P;
+
440  if (!check_finite(function, sigma, "Scale parameter", &P))
+
441  return P;
+
442  if (!check_positive(function, sigma, "Scale parameter", &P))
+
443  return P;
+
444 
+
445  // Wrap arguments in vectors
+
446  VectorView<const T_y> y_vec(y);
+
447  VectorView<const T_dof> nu_vec(nu);
+
448  VectorView<const T_loc> mu_vec(mu);
+
449  VectorView<const T_scale> sigma_vec(sigma);
+
450  size_t N = max_size(y, nu, mu, sigma);
+
451 
+ +
453  operands_and_partials(y, nu, mu, sigma);
+
454 
+
455  // Explicit return for extreme values
+
456  // The gradients are technically ill-defined, but treated as zero
+
457  for (size_t i = 0; i < stan::length(y); i++) {
+
458  if (value_of(y_vec[i]) == -std::numeric_limits<double>::infinity())
+
459  return operands_and_partials.to_var(stan::math::negative_infinity());
+
460  }
+
461 
+
462  using boost::math::ibeta;
+
463  using boost::math::ibeta_derivative;
+
464  using boost::math::digamma;
+
465  using boost::math::beta;
+
466 
+
467  // Cache a few expensive function calls if nu is a parameter
+
468  double digammaHalf = 0;
+
469 
+ +
471  digamma_vec(stan::length(nu));
+ +
473  digammaNu_vec(stan::length(nu));
+ +
475  digammaNuPlusHalf_vec(stan::length(nu));
+ +
477  betaNuHalf_vec(stan::length(nu));
+
478 
+ +
480  digammaHalf = digamma(0.5);
+
481 
+
482  for (size_t i = 0; i < stan::length(nu); i++) {
+
483  const double nu_dbl = value_of(nu_vec[i]);
+
484 
+
485  digammaNu_vec[i] = digamma(0.5 * nu_dbl);
+
486  digammaNuPlusHalf_vec[i] = digamma(0.5 + 0.5 * nu_dbl);
+
487  betaNuHalf_vec[i] = beta(0.5, 0.5 * nu_dbl);
+
488  }
+
489  }
+
490 
+
491  // Compute vectorized cdf_log and gradient
+
492  for (size_t n = 0; n < N; n++) {
+
493 
+
494  // Explicit results for extreme values
+
495  // The gradients are technically ill-defined, but treated as zero
+
496  if (value_of(y_vec[n]) == std::numeric_limits<double>::infinity()) {
+
497  continue;
+
498  }
+
499 
+
500  const double sigma_inv = 1.0 / value_of(sigma_vec[n]);
+
501  const double t = (value_of(y_vec[n]) - value_of(mu_vec[n])) * sigma_inv;
+
502  const double nu_dbl = value_of(nu_vec[n]);
+
503  const double q = nu_dbl / (t * t);
+
504  const double r = 1.0 / (1.0 + q);
+
505  const double J = 2 * r * r * q / t;
+
506  double zJacobian = t > 0 ? - 0.5 : 0.5;
+
507 
+
508  if(q < 2) {
+
509  double z = ibeta(0.5 * nu_dbl, 0.5, 1.0 - r);
+
510  const double Pn = t > 0 ? 1.0 - 0.5 * z : 0.5 * z;
+
511  const double d_ibeta = ibeta_derivative(0.5 * nu_dbl, 0.5, 1.0 - r);
+
512 
+
513  P += log(Pn);
+
514 
+ +
516  operands_and_partials.d_x1[n]
+
517  += - zJacobian * d_ibeta * J * sigma_inv / Pn;
+
518 
+ +
520 
+
521  double g1 = 0;
+
522  double g2 = 0;
+
523 
+
524  stan::math::gradRegIncBeta(g1, g2, 0.5 * nu_dbl, 0.5, 1.0 - r,
+
525  digammaNu_vec[n], digammaHalf,
+
526  digammaNuPlusHalf_vec[n],
+
527  betaNuHalf_vec[n]);
+
528 
+
529  operands_and_partials.d_x2[n]
+
530  += zJacobian * ( d_ibeta * (r / t) * (r / t) + 0.5 * g1 ) / Pn;
+
531  }
+
532 
+ +
534  operands_and_partials.d_x3[n]
+
535  += zJacobian * d_ibeta * J * sigma_inv / Pn;
+ +
537  operands_and_partials.d_x4[n]
+
538  += zJacobian * d_ibeta * J * sigma_inv * t / Pn;
+
539 
+
540  }
+
541  else {
+
542 
+
543  double z = 1 - ibeta(0.5, 0.5 * nu_dbl, r);
+
544  zJacobian *= -1;
+
545 
+
546  const double Pn = t > 0 ? 1.0 - 0.5 * z : 0.5 * z;
+
547 
+
548  double d_ibeta = ibeta_derivative(0.5, 0.5 * nu_dbl, r);
+
549 
+
550  P += log(Pn);
+
551 
+ +
553  operands_and_partials.d_x1[n]
+
554  += zJacobian * d_ibeta * J * sigma_inv / Pn;
+
555 
+ +
557 
+
558  double g1 = 0;
+
559  double g2 = 0;
+
560 
+
561  stan::math::gradRegIncBeta(g1, g2, 0.5, 0.5 * nu_dbl, r,
+
562  digammaHalf, digammaNu_vec[n],
+
563  digammaNuPlusHalf_vec[n],
+
564  betaNuHalf_vec[n]);
+
565 
+
566  operands_and_partials.d_x2[n]
+
567  += zJacobian * ( - d_ibeta * (r / t) * (r / t) + 0.5 * g2 ) / Pn;
+
568  }
+
569 
+ +
571  operands_and_partials.d_x3[n]
+
572  += - zJacobian * d_ibeta * J * sigma_inv / Pn;
+ +
574  operands_and_partials.d_x4[n]
+
575  += - zJacobian * d_ibeta * J * sigma_inv * t / Pn;
+
576  }
+
577  }
+
578 
+
579  return operands_and_partials.to_var(P);
+
580  }
+
581 
+
582  template <typename T_y, typename T_dof, typename T_loc, typename T_scale>
+ +
584  student_t_ccdf_log(const T_y& y, const T_dof& nu, const T_loc& mu,
+
585  const T_scale& sigma) {
+
586 
+
587  // Size checks
+
588  if (!(stan::length(y) && stan::length(nu) && stan::length(mu)
+
589  && stan::length(sigma)))
+
590  return 0.0;
+
591 
+
592  static const char* function = "stan::prob::student_t_ccdf_log(%1%)";
+
593 
+ + + + +
598  using stan::math::value_of;
+
599 
+
600  double P(0.0);
+
601 
+
602  if (!check_not_nan(function, y, "Random variable", &P))
+
603  return P;
+
604  if (!check_finite(function, nu, "Degrees of freedom parameter", &P))
+
605  return P;
+
606  if (!check_positive(function, nu, "Degrees of freedom parameter", &P))
+
607  return P;
+
608  if (!check_finite(function, mu, "Location parameter", &P))
+
609  return P;
+
610  if (!check_finite(function, sigma, "Scale parameter", &P))
+
611  return P;
+
612  if (!check_positive(function, sigma, "Scale parameter", &P))
+
613  return P;
+
614 
+
615  // Wrap arguments in vectors
+
616  VectorView<const T_y> y_vec(y);
+
617  VectorView<const T_dof> nu_vec(nu);
+
618  VectorView<const T_loc> mu_vec(mu);
+
619  VectorView<const T_scale> sigma_vec(sigma);
+
620  size_t N = max_size(y, nu, mu, sigma);
+
621 
+ +
623  operands_and_partials(y, nu, mu, sigma);
+
624 
+
625  // Explicit return for extreme values
+
626  // The gradients are technically ill-defined, but treated as zero
+
627  for (size_t i = 0; i < stan::length(y); i++) {
+
628  if (value_of(y_vec[i]) == -std::numeric_limits<double>::infinity())
+
629  return operands_and_partials.to_var(0.0);
+
630  }
+
631 
+
632  using boost::math::ibeta;
+
633  using boost::math::ibeta_derivative;
+
634  using boost::math::digamma;
+
635  using boost::math::beta;
+
636 
+
637  // Cache a few expensive function calls if nu is a parameter
+
638  double digammaHalf = 0;
+
639 
+ +
641  digamma_vec(stan::length(nu));
+ +
643  digammaNu_vec(stan::length(nu));
+ +
645  digammaNuPlusHalf_vec(stan::length(nu));
+ +
647  betaNuHalf_vec(stan::length(nu));
+
648 
+ +
650  digammaHalf = digamma(0.5);
+
651 
+
652  for (size_t i = 0; i < stan::length(nu); i++) {
+
653  const double nu_dbl = value_of(nu_vec[i]);
+
654 
+
655  digammaNu_vec[i] = digamma(0.5 * nu_dbl);
+
656  digammaNuPlusHalf_vec[i] = digamma(0.5 + 0.5 * nu_dbl);
+
657  betaNuHalf_vec[i] = beta(0.5, 0.5 * nu_dbl);
+
658  }
+
659  }
+
660 
+
661  // Compute vectorized cdf_log and gradient
+
662  for (size_t n = 0; n < N; n++) {
+
663 
+
664  // Explicit results for extreme values
+
665  // The gradients are technically ill-defined, but treated as zero
+
666  if (value_of(y_vec[n]) == std::numeric_limits<double>::infinity()) {
+
667  return operands_and_partials.to_var(stan::math::negative_infinity());
+
668  }
+
669 
+
670  const double sigma_inv = 1.0 / value_of(sigma_vec[n]);
+
671  const double t = (value_of(y_vec[n]) - value_of(mu_vec[n])) * sigma_inv;
+
672  const double nu_dbl = value_of(nu_vec[n]);
+
673  const double q = nu_dbl / (t * t);
+
674  const double r = 1.0 / (1.0 + q);
+
675  const double J = 2 * r * r * q / t;
+
676  double zJacobian = t > 0 ? - 0.5 : 0.5;
+
677 
+
678  if(q < 2) {
+
679  double z = ibeta(0.5 * nu_dbl, 0.5, 1.0 - r);
+
680  const double Pn = t > 0 ? 0.5 * z : 1.0 - 0.5 * z;
+
681  const double d_ibeta = ibeta_derivative(0.5 * nu_dbl, 0.5, 1.0 - r);
+
682 
+
683  P += log(Pn);
+
684 
+ +
686  operands_and_partials.d_x1[n]
+
687  += zJacobian * d_ibeta * J * sigma_inv / Pn;
+
688 
+ +
690 
+
691  double g1 = 0;
+
692  double g2 = 0;
+
693 
+
694  stan::math::gradRegIncBeta(g1, g2, 0.5 * nu_dbl, 0.5, 1.0 - r,
+
695  digammaNu_vec[n], digammaHalf,
+
696  digammaNuPlusHalf_vec[n],
+
697  betaNuHalf_vec[n]);
+
698 
+
699  operands_and_partials.d_x2[n]
+
700  -= zJacobian * ( d_ibeta * (r / t) * (r / t) + 0.5 * g1 ) / Pn;
+
701  }
+
702 
+ +
704  operands_and_partials.d_x3[n]
+
705  -= zJacobian * d_ibeta * J * sigma_inv / Pn;
+ +
707  operands_and_partials.d_x4[n]
+
708  -= zJacobian * d_ibeta * J * sigma_inv * t / Pn;
+
709 
+
710  }
+
711  else {
+
712 
+
713  double z = 1 - ibeta(0.5, 0.5 * nu_dbl, r);
+
714  zJacobian *= -1;
+
715 
+
716  const double Pn = t > 0 ? 0.5 * z : 1.0 - 0.5 * z;
+
717 
+
718  double d_ibeta = ibeta_derivative(0.5, 0.5 * nu_dbl, r);
+
719 
+
720  P += log(Pn);
+
721 
+ +
723  operands_and_partials.d_x1[n]
+
724  -= zJacobian * d_ibeta * J * sigma_inv / Pn;
+
725 
+ +
727 
+
728  double g1 = 0;
+
729  double g2 = 0;
+
730 
+
731  stan::math::gradRegIncBeta(g1, g2, 0.5, 0.5 * nu_dbl, r,
+
732  digammaHalf, digammaNu_vec[n],
+
733  digammaNuPlusHalf_vec[n],
+
734  betaNuHalf_vec[n]);
+
735 
+
736  operands_and_partials.d_x2[n]
+
737  -= zJacobian * ( - d_ibeta * (r / t) * (r / t) + 0.5 * g2 ) / Pn;
+
738  }
+
739 
+ +
741  operands_and_partials.d_x3[n]
+
742  += zJacobian * d_ibeta * J * sigma_inv / Pn;
+ +
744  operands_and_partials.d_x4[n]
+
745  += zJacobian * d_ibeta * J * sigma_inv * t / Pn;
+
746  }
+
747  }
+
748 
+
749  return operands_and_partials.to_var(P);
+
750  }
+
751 
+
752  template <class RNG>
+
753  inline double
+
754  student_t_rng(const double nu,
+
755  const double mu,
+
756  const double sigma,
+
757  RNG& rng) {
+
758  using boost::variate_generator;
+
759  using boost::random::student_t_distribution;
+
760 
+
761  static const char* function = "stan::prob::student_t_rng(%1%)";
+
762 
+ + +
765 
+
766  if(!check_finite(function, nu, "Degrees of freedom parameter"))
+
767  return 0;
+
768  if(!check_positive(function, nu, "Degrees of freedom parameter"))
+
769  return 0;
+
770  if (!check_finite(function, mu, "Location parameter"))
+
771  return 0;
+
772  if (!check_finite(function, sigma, "Scale parameter"))
+
773  return 0;
+
774  if (!check_positive(function, sigma, "Scale parameter"))
+
775  return 0;
+
776 
+
777  variate_generator<RNG&, student_t_distribution<> >
+
778  rng_unit_student_t(rng, student_t_distribution<>(nu));
+
779  return mu + sigma * rng_unit_student_t();
+
780  }
+
781  }
+
782 }
+
783 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/sub_8hpp.html b/doc/api/html/sub_8hpp.html new file mode 100644 index 00000000000..d7d03c1ffdf --- /dev/null +++ b/doc/api/html/sub_8hpp.html @@ -0,0 +1,129 @@ + + + + + +Stan: src/stan/math/functions/sub.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
sub.hpp File Reference
+
+
+
#include <vector>
+#include <cstddef>
+
+

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::math
 Matrices and templated mathematical functions.
 
+ + + +

+Functions

void stan::math::sub (std::vector< double > &x, std::vector< double > &y, std::vector< double > &result)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/sub_8hpp_source.html b/doc/api/html/sub_8hpp_source.html new file mode 100644 index 00000000000..b217386f021 --- /dev/null +++ b/doc/api/html/sub_8hpp_source.html @@ -0,0 +1,127 @@ + + + + + +Stan: src/stan/math/functions/sub.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
sub.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MATH__FUNCTIONS__SUB_HPP__
+
2 #define __STAN__MATH__FUNCTIONS__SUB_HPP__
+
3 
+
4 #include <vector>
+
5 #include <cstddef>
+
6 
+
7 namespace stan {
+
8  namespace math {
+
9 
+
10  inline void sub(std::vector<double>& x, std::vector<double>& y,
+
11  std::vector<double>& result) {
+
12  result.resize(x.size());
+
13  for (size_t i = 0; i < x.size(); ++i)
+
14  result[i] = x[i] - y[i];
+
15  }
+
16 
+
17  }
+
18 }
+
19 
+
20 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/sub__col_8hpp.html b/doc/api/html/sub__col_8hpp.html new file mode 100644 index 00000000000..0d5b28ac8e5 --- /dev/null +++ b/doc/api/html/sub__col_8hpp.html @@ -0,0 +1,133 @@ + + + + + +Stan: src/stan/math/matrix/sub_col.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
sub_col.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::math
 Matrices and templated mathematical functions.
 
+ + + + + +

+Functions

template<typename T >
Eigen::Matrix< T,
+Eigen::Dynamic, 1 > 
stan::math::sub_col (const Eigen::Matrix< T, Eigen::Dynamic, Eigen::Dynamic > &m, size_t i, size_t j, size_t nrows)
 Return a nrows x 1 subcolumn starting at (i-1,j-1).
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/sub__col_8hpp_source.html b/doc/api/html/sub__col_8hpp_source.html new file mode 100644 index 00000000000..a540ad361b7 --- /dev/null +++ b/doc/api/html/sub__col_8hpp_source.html @@ -0,0 +1,133 @@ + + + + + +Stan: src/stan/math/matrix/sub_col.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
sub_col.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MATH__MATRIX__SUB_COL_HPP__
+
2 #define __STAN__MATH__MATRIX__SUB_COL_HPP__
+
3 
+ + + +
7 
+
8 namespace stan {
+
9  namespace math {
+
10 
+
19  template <typename T>
+
20  inline
+
21  Eigen::Matrix<T,Eigen::Dynamic,1>
+
22  sub_col(const Eigen::Matrix<T,Eigen::Dynamic,Eigen::Dynamic>& m,
+
23  size_t i, size_t j, size_t nrows) {
+
24  validate_row_index(m,i,"sub_column");
+
25  if (nrows > 0) validate_row_index(m,i+nrows-1,"sub_column");
+
26  validate_column_index(m,j,"sub_column");
+
27  return m.block(i - 1,j - 1,nrows,1);
+
28  }
+
29 
+
30 
+
31  }
+
32 }
+
33 
+
34 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/sub__row_8hpp.html b/doc/api/html/sub__row_8hpp.html new file mode 100644 index 00000000000..d13e5163ce7 --- /dev/null +++ b/doc/api/html/sub__row_8hpp.html @@ -0,0 +1,133 @@ + + + + + +Stan: src/stan/math/matrix/sub_row.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
sub_row.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::math
 Matrices and templated mathematical functions.
 
+ + + + + +

+Functions

template<typename T >
Eigen::Matrix< T,
+1, Eigen::Dynamic > 
stan::math::sub_row (const Eigen::Matrix< T, Eigen::Dynamic, Eigen::Dynamic > &m, size_t i, size_t j, size_t ncols)
 Return a 1 x nrows subrow starting at (i-1,j-1).
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/sub__row_8hpp_source.html b/doc/api/html/sub__row_8hpp_source.html new file mode 100644 index 00000000000..22c8cba24a1 --- /dev/null +++ b/doc/api/html/sub__row_8hpp_source.html @@ -0,0 +1,133 @@ + + + + + +Stan: src/stan/math/matrix/sub_row.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
sub_row.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MATH__MATRIX__SUB_ROW_HPP__
+
2 #define __STAN__MATH__MATRIX__SUB_ROW_HPP__
+
3 
+ + + +
7 
+
8 namespace stan {
+
9 
+
10  namespace math {
+
11 
+
20  template <typename T>
+
21  inline
+
22  Eigen::Matrix<T,1,Eigen::Dynamic>
+
23  sub_row(const Eigen::Matrix<T,Eigen::Dynamic,Eigen::Dynamic>& m,
+
24  size_t i, size_t j, size_t ncols) {
+
25  validate_row_index(m,i,"sub_row");
+
26  validate_column_index(m,j,"sub_row");
+
27  if (ncols > 0) validate_column_index(m,j+ncols-1,"sub_row");
+
28  return m.block(i - 1,j - 1,1,ncols);
+
29  }
+
30 
+
31  }
+
32 }
+
33 
+
34 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/subtract_8hpp.html b/doc/api/html/subtract_8hpp.html new file mode 100644 index 00000000000..5ec9e56a2cf --- /dev/null +++ b/doc/api/html/subtract_8hpp.html @@ -0,0 +1,144 @@ + + + + + +Stan: src/stan/math/matrix/subtract.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
subtract.hpp File Reference
+
+
+
#include <boost/math/tools/promotion.hpp>
+#include <stan/math/matrix/Eigen.hpp>
+#include <stan/math/matrix/validate_matching_dims.hpp>
+
+

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::math
 Matrices and templated mathematical functions.
 
+ + + + + + + + + + + +

+Functions

template<typename T1 , typename T2 , int R, int C>
Eigen::Matrix< typename
+boost::math::tools::promote_args
+< T1, T2 >::type, R, C > 
stan::math::subtract (const Eigen::Matrix< T1, R, C > &m1, const Eigen::Matrix< T2, R, C > &m2)
 Return the result of subtracting the second specified matrix from the first specified matrix.
 
template<typename T1 , typename T2 , int R, int C>
Eigen::Matrix< typename
+boost::math::tools::promote_args
+< T1, T2 >::type, R, C > 
stan::math::subtract (const T1 &c, const Eigen::Matrix< T2, R, C > &m)
 
template<typename T1 , typename T2 , int R, int C>
Eigen::Matrix< typename
+boost::math::tools::promote_args
+< T1, T2 >::type, R, C > 
stan::math::subtract (const Eigen::Matrix< T1, R, C > &m, const T2 &c)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/subtract_8hpp_source.html b/doc/api/html/subtract_8hpp_source.html new file mode 100644 index 00000000000..33c846fb42a --- /dev/null +++ b/doc/api/html/subtract_8hpp_source.html @@ -0,0 +1,157 @@ + + + + + +Stan: src/stan/math/matrix/subtract.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
subtract.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MATH__MATRIX__SUBTRACT_HPP__
+
2 #define __STAN__MATH__MATRIX__SUBTRACT_HPP__
+
3 
+
4 #include <boost/math/tools/promotion.hpp>
+ + +
7 
+
8 namespace stan {
+
9  namespace math {
+
10 
+
24  template <typename T1, typename T2, int R, int C>
+
25  inline
+
26  Eigen::Matrix<typename boost::math::tools::promote_args<T1,T2>::type, R, C>
+
27  subtract(const Eigen::Matrix<T1,R,C>& m1,
+
28  const Eigen::Matrix<T2,R,C>& m2) {
+
29  stan::math::validate_matching_dims(m1,m2,"subtract");
+
30  Eigen::Matrix<typename boost::math::tools::promote_args<T1,T2>::type, R, C>
+
31  result(m1.rows(), m1.cols());
+
32  for (int i = 0; i < result.size(); ++i)
+
33  result(i) = m1(i) - m2(i);
+
34  return result;
+
35  }
+
36 
+
37  template <typename T1, typename T2, int R, int C>
+
38  inline
+
39  Eigen::Matrix<typename boost::math::tools::promote_args<T1,T2>::type, R, C>
+
40  subtract(const T1& c,
+
41  const Eigen::Matrix<T2,R,C>& m) {
+
42  Eigen::Matrix<typename boost::math::tools::promote_args<T1,T2>::type, R, C>
+
43  result(m.rows(),m.cols());
+
44  for (int i = 0; i < m.size(); ++i)
+
45  result(i) = c - m(i);
+
46  return result;
+
47  }
+
48 
+
49  template <typename T1, typename T2, int R, int C>
+
50  inline
+
51  Eigen::Matrix<typename boost::math::tools::promote_args<T1,T2>::type, R, C>
+
52  subtract(const Eigen::Matrix<T1,R,C>& m,
+
53  const T2& c) {
+
54  Eigen::Matrix<typename boost::math::tools::promote_args<T1,T2>::type, R, C>
+
55  result(m.rows(),m.cols());
+
56  for (int i = 0; i < m.size(); ++i)
+
57  result(i) = m(i) - c;
+
58  return result;
+
59  }
+
60 
+
61  }
+
62 }
+
63 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/sync_off.png b/doc/api/html/sync_off.png new file mode 100644 index 0000000000000000000000000000000000000000..3b443fc62892114406e3d399421b2a881b897acc GIT binary patch literal 853 zcmV-b1FHOqP)oT|#XixUYy%lpuf3i8{fX!o zUyDD0jOrAiT^tq>fLSOOABs-#u{dV^F$b{L9&!2=9&RmV;;8s^x&UqB$PCj4FdKbh zoB1WTskPUPu05XzFbA}=KZ-GP1fPpAfSs>6AHb12UlR%-i&uOlTpFNS7{jm@mkU1V zh`nrXr~+^lsV-s1dkZOaI|kYyVj3WBpPCY{n~yd%u%e+d=f%`N0FItMPtdgBb@py; zq@v6NVArhyTC7)ULw-Jy8y42S1~4n(3LkrW8mW(F-4oXUP3E`e#g**YyqI7h-J2zK zK{m9##m4ri!7N>CqQqCcnI3hqo1I;Yh&QLNY4T`*ptiQGozK>FF$!$+84Z`xwmeMh zJ0WT+OH$WYFALEaGj2_l+#DC3t7_S`vHpSivNeFbP6+r50cO8iu)`7i%Z4BTPh@_m3Tk!nAm^)5Bqnr%Ov|Baunj#&RPtRuK& z4RGz|D5HNrW83-#ydk}tVKJrNmyYt-sTxLGlJY5nc&Re zU4SgHNPx8~Yxwr$bsju?4q&%T1874xxzq+_%?h8_ofw~(bld=o3iC)LUNR*BY%c0y zWd_jX{Y8`l%z+ol1$@Qa?Cy!(0CVIEeYpKZ`(9{z>3$CIe;pJDQk$m3p}$>xBm4lb zKo{4S)`wdU9Ba9jJbVJ0C=SOefZe%d$8=2r={nu<_^a3~>c#t_U6dye5)JrR(_a^E f@}b6j1K9lwFJq@>o)+Ry00000NkvXXu0mjfWa5j* literal 0 HcmV?d00001 diff --git a/doc/api/html/sync_on.png b/doc/api/html/sync_on.png new file mode 100644 index 0000000000000000000000000000000000000000..e08320fb64e6fa33b573005ed6d8fe294e19db76 GIT binary patch literal 845 zcmV-T1G4;yP)Y;xxyHF2B5Wzm| zOOGupOTn@c(JmBOl)e;XMNnZuiTJP>rM8<|Q`7I_))aP?*T)ow&n59{}X4$3Goat zgjs?*aasfbrokzG5cT4K=uG`E14xZl@z)F={P0Y^?$4t z>v!teRnNZym<6h{7sLyF1V0HsfEl+l6TrZpsfr1}luH~F7L}ktXu|*uVX^RG$L0`K zWs3j|0tIvVe(N%_?2{(iCPFGf#B6Hjy6o&}D$A%W%jfO8_W%ZO#-mh}EM$LMn7joJ z05dHr!5Y92g+31l<%i1(=L1a1pXX+OYnalY>31V4K}BjyRe3)9n#;-cCVRD_IG1fT zOKGeNY8q;TL@K{dj@D^scf&VCs*-Jb>8b>|`b*osv52-!A?BpbYtTQBns5EAU**$m zSnVSm(teh>tQi*S*A>#ySc=n;`BHz`DuG4&g4Kf8lLhca+zvZ7t7RflD6-i-mcK=M z!=^P$*u2)bkY5asG4gsss!Hn%u~>}kIW`vMs%lJLH+u*9<4PaV_c6U`KqWXQH%+Nu zTv41O(^ZVi@qhjQdG!fbZw&y+2o!iYymO^?ud3{P*HdoX83YV*Uu_HB=?U&W9%AU# z80}k1SS-CXTU7dcQlsm<^oYLxVSseqY6NO}dc`Nj?8vrhNuCdm@^{a3AQ_>6myOj+ z`1RsLUXF|dm|3k7s2jD(B{rzE>WI2scH8i1;=O5Cc9xB3^aJk%fQjqsu+kH#0=_5a z0nCE8@dbQa-|YIuUVvG0L_IwHMEhOj$Mj4Uq05 X8=0q~qBNan00000NkvXXu0mjfptF>5 literal 0 HcmV?d00001 diff --git a/doc/api/html/tab_a.png b/doc/api/html/tab_a.png new file mode 100644 index 0000000000000000000000000000000000000000..3b725c41c5a527a3a3e40097077d0e206a681247 GIT binary patch literal 142 zcmeAS@N?(olHy`uVBq!ia0vp^j6kfy!2~3aiye;!QlXwMjv*C{Z|8b*H5dputLHD# z=<0|*y7z(Vor?d;H&?EG&cXR}?!j-Lm&u1OOI7AIF5&c)RFE;&p0MYK>*Kl@eiymD r@|NpwKX@^z+;{u_Z~trSBfrMKa%3`zocFjEXaR$#tDnm{r-UW|TZ1%4 literal 0 HcmV?d00001 diff --git a/doc/api/html/tab_b.png b/doc/api/html/tab_b.png new file mode 100644 index 0000000000000000000000000000000000000000..5f6601a813b57d522fb8e3d83a94db3c11bd004b GIT binary patch literal 170 zcmeAS@N?(olHy`uVBq!ia0vp^j6kfy!2~3aiye;!QiYx_jv*C{Z}0l@H8}{lJbb5j z@koWKnO@9+F40r>75L7yOy2aEZQj9IGhUePt6CX-V%z?=Md#j>u>9GS^hx`U_90)v zzY>Nv%(E01lyd(reV?ARTe9?0m9SvU>2o1dpM;m!GkCiCxvX=ZI-;YrdjIl`U`uzuDWSP?o#Dmo{%SgM#oan kX~E1%D-|#H#QbHoIja2U-MgvsK&LQxy85}Sb4q9e0Efg%P5=M^ literal 0 HcmV?d00001 diff --git a/doc/api/html/tabs.css b/doc/api/html/tabs.css new file mode 100644 index 00000000000..9cf578f23a1 --- /dev/null +++ b/doc/api/html/tabs.css @@ -0,0 +1,60 @@ +.tabs, .tabs2, .tabs3 { + background-image: url('tab_b.png'); + width: 100%; + z-index: 101; + font-size: 13px; + font-family: 'Lucida Grande',Geneva,Helvetica,Arial,sans-serif; +} + +.tabs2 { + font-size: 10px; +} +.tabs3 { + font-size: 9px; +} + +.tablist { + margin: 0; + padding: 0; + display: table; +} + +.tablist li { + float: left; + display: table-cell; + background-image: url('tab_b.png'); + line-height: 36px; + list-style: none; +} + +.tablist a { + display: block; + padding: 0 20px; + font-weight: bold; + background-image:url('tab_s.png'); + background-repeat:no-repeat; + background-position:right; + color: #283A5D; + text-shadow: 0px 1px 1px rgba(255, 255, 255, 0.9); + text-decoration: none; + outline: none; +} + +.tabs3 .tablist a { + padding: 0 10px; +} + +.tablist a:hover { + background-image: url('tab_h.png'); + background-repeat:repeat-x; + color: #fff; + text-shadow: 0px 1px 1px rgba(0, 0, 0, 1.0); + text-decoration: none; +} + +.tablist li.current a { + background-image: url('tab_a.png'); + background-repeat:repeat-x; + color: #fff; + text-shadow: 0px 1px 1px rgba(0, 0, 0, 1.0); +} diff --git a/doc/api/html/tail_8hpp.html b/doc/api/html/tail_8hpp.html new file mode 100644 index 00000000000..959ef8fbf74 --- /dev/null +++ b/doc/api/html/tail_8hpp.html @@ -0,0 +1,143 @@ + + + + + +Stan: src/stan/math/matrix/tail.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
tail.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::math
 Matrices and templated mathematical functions.
 
+ + + + + + + + + + + + +

+Functions

template<typename T >
Eigen::Matrix< T,
+Eigen::Dynamic, 1 > 
stan::math::tail (const Eigen::Matrix< T, Eigen::Dynamic, 1 > &v, size_t n)
 Return the specified number of elements as a vector from the back of the specified vector.
 
template<typename T >
Eigen::Matrix< T,
+1, Eigen::Dynamic > 
stan::math::tail (const Eigen::Matrix< T, 1, Eigen::Dynamic > &rv, size_t n)
 Return the specified number of elements as a row vector from the back of the specified row vector.
 
template<typename T >
std::vector< T > stan::math::tail (const std::vector< T > &sv, size_t n)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/tail_8hpp_source.html b/doc/api/html/tail_8hpp_source.html new file mode 100644 index 00000000000..9f811e0e044 --- /dev/null +++ b/doc/api/html/tail_8hpp_source.html @@ -0,0 +1,156 @@ + + + + + +Stan: src/stan/math/matrix/tail.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
tail.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MATH__MATRIX__TAIL_HPP__
+
2 #define __STAN__MATH__MATRIX__TAIL_HPP__
+
3 
+
4 #include <vector>
+ + + + +
9 
+
10 namespace stan {
+
11  namespace math {
+
12 
+
17  template <typename T>
+
18  inline
+
19  Eigen::Matrix<T,Eigen::Dynamic,1>
+
20  tail(const Eigen::Matrix<T,Eigen::Dynamic,1>& v,
+
21  size_t n) {
+
22  if (n != 0)
+
23  validate_row_index(v, v.size() - n + 1, "tail");
+
24  return v.tail(n);
+
25  }
+
26 
+
27 
+
32  template <typename T>
+
33  inline
+
34  Eigen::Matrix<T,1,Eigen::Dynamic>
+
35  tail(const Eigen::Matrix<T,1,Eigen::Dynamic>& rv,
+
36  size_t n) {
+
37  if (n != 0)
+
38  validate_column_index(rv, rv.size() - n + 1, "tail");
+
39  return rv.tail(n);
+
40  }
+
41 
+
42  template <typename T>
+
43  std::vector<T> tail(const std::vector<T>& sv,
+
44  size_t n) {
+
45  if (n != 0)
+
46  validate_std_vector_index(sv, sv.size() - n + 1, "tail");
+
47  std::vector<T> s;
+
48  for (typename std::vector<T>::size_type i = sv.size() - n; i < sv.size(); ++i)
+
49  s.push_back(sv[i]);
+
50  return s;
+
51  }
+
52 
+
53 
+
54  }
+
55 }
+
56 
+
57 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/term__grammar_8hpp.html b/doc/api/html/term__grammar_8hpp.html new file mode 100644 index 00000000000..f1aa70526fe --- /dev/null +++ b/doc/api/html/term__grammar_8hpp.html @@ -0,0 +1,138 @@ + + + + + +Stan: src/stan/gm/grammars/term_grammar.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
term_grammar.hpp File Reference
+
+
+
#include <string>
+#include <sstream>
+#include <vector>
+#include <boost/spirit/include/qi.hpp>
+#include <stan/gm/ast.hpp>
+#include <stan/gm/grammars/whitespace_grammar.hpp>
+#include <stan/gm/grammars/expression_grammar.hpp>
+
+

Go to the source code of this file.

+ + + + + + + + +

+Classes

struct  term_grammar< Iterator >
 
struct  stan::gm::expression_grammar< Iterator >
 
struct  stan::gm::term_grammar< Iterator >
 
+ + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::gm
 Directed graphical model compiler.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/term__grammar_8hpp_source.html b/doc/api/html/term__grammar_8hpp_source.html new file mode 100644 index 00000000000..a9d2aa4b1cd --- /dev/null +++ b/doc/api/html/term__grammar_8hpp_source.html @@ -0,0 +1,219 @@ + + + + + +Stan: src/stan/gm/grammars/term_grammar.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
term_grammar.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__GM__PARSER__TERM_GRAMMAR__HPP__
+
2 #define __STAN__GM__PARSER__TERM_GRAMMAR__HPP__
+
3 
+
4 #include <string>
+
5 #include <sstream>
+
6 #include <vector>
+
7 
+
8 #include <boost/spirit/include/qi.hpp>
+
9 
+
10 #include <stan/gm/ast.hpp>
+ + +
13 
+
14 namespace stan {
+
15 
+
16  namespace gm {
+
17 
+
18  template <typename Iterator>
+
19  struct term_grammar;
+
20 
+
21  template <typename Iterator>
+
22  struct expression_grammar;
+
23 
+
24  template <typename Iterator>
+
25  struct term_grammar
+
26  : public boost::spirit::qi::grammar<Iterator,
+
27  expression(var_origin),
+
28  whitespace_grammar<Iterator> > {
+
29 
+
30  term_grammar(variable_map& var_map,
+
31  std::stringstream& error_msgs,
+ +
33 
+ +
35 
+
36  std::stringstream& error_msgs_;
+
37 
+ +
39 
+
40 
+
41  boost::spirit::qi::rule<Iterator,
+
42  std::vector<expression>(var_origin),
+ + +
45 
+
46 
+
47  boost::spirit::qi::rule<Iterator,
+
48  std::vector<expression>(var_origin),
+ + +
51 
+
52 
+
53  boost::spirit::qi::rule<Iterator,
+ + + +
57 
+
58 
+
59  boost::spirit::qi::rule<Iterator,
+
60  boost::spirit::qi::locals<bool>,
+ + + +
64 
+
65 
+
66  boost::spirit::qi::rule<Iterator,
+
67  fun(var_origin),
+ + +
70 
+
71 
+
72  boost::spirit::qi::rule<Iterator,
+
73  std::string(),
+ + +
76 
+
77 
+
78  boost::spirit::qi::rule<Iterator,
+ + + +
82 
+
83 
+
84  boost::spirit::qi::rule<Iterator,
+
85  int_literal(),
+ + +
88 
+
89 
+
90  boost::spirit::qi::rule<Iterator,
+ + + +
94 
+
95 
+
96  boost::spirit::qi::rule<Iterator,
+ + + +
100 
+
101 
+
102  boost::spirit::qi::rule<Iterator,
+
103  variable(),
+ + +
106 
+
107  };
+
108 
+
109  }
+
110 }
+
111 
+
112 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/term__grammar__def_8hpp.html b/doc/api/html/term__grammar__def_8hpp.html new file mode 100644 index 00000000000..fe6988bb6b1 --- /dev/null +++ b/doc/api/html/term__grammar__def_8hpp.html @@ -0,0 +1,378 @@ + + + + + +Stan: src/stan/gm/grammars/term_grammar_def.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
term_grammar_def.hpp File Reference
+
+
+
#include <cstddef>
+#include <iomanip>
+#include <iostream>
+#include <istream>
+#include <map>
+#include <set>
+#include <sstream>
+#include <string>
+#include <utility>
+#include <vector>
+#include <stdexcept>
+#include <boost/spirit/include/qi.hpp>
+#include <boost/spirit/include/phoenix_core.hpp>
+#include <boost/spirit/include/phoenix_function.hpp>
+#include <boost/spirit/include/phoenix_fusion.hpp>
+#include <boost/spirit/include/phoenix_object.hpp>
+#include <boost/spirit/include/phoenix_operator.hpp>
+#include <boost/spirit/include/phoenix_stl.hpp>
+#include <boost/lexical_cast.hpp>
+#include <boost/fusion/include/adapt_struct.hpp>
+#include <boost/fusion/include/std_pair.hpp>
+#include <boost/config/warning_disable.hpp>
+#include <boost/spirit/include/qi_numeric.hpp>
+#include <boost/spirit/include/classic_position_iterator.hpp>
+#include <boost/spirit/include/support_multi_pass.hpp>
+#include <boost/tuple/tuple.hpp>
+#include <boost/variant/apply_visitor.hpp>
+#include <boost/variant/recursive_variant.hpp>
+#include <stan/gm/ast.hpp>
+#include <stan/gm/grammars/whitespace_grammar.hpp>
+#include <stan/gm/grammars/term_grammar.hpp>
+#include <stan/gm/grammars/expression_grammar.hpp>
+
+

Go to the source code of this file.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Classes

struct  stan::gm::set_fun_type
 
struct  stan::gm::set_fun_type::result< T1, T2 >
 
struct  stan::gm::set_fun_type_named
 
struct  stan::gm::set_fun_type_named::result< T1, T2, T3, T4 >
 
struct  stan::gm::multiplication_expr
 
struct  stan::gm::multiplication_expr::result< T1, T2, T3 >
 
struct  stan::gm::division_expr
 
struct  stan::gm::division_expr::result< T1, T2, T3 >
 
struct  stan::gm::left_division_expr
 
struct  stan::gm::left_division_expr::result< T1, T2, T3 >
 
struct  stan::gm::elt_multiplication_expr
 
struct  stan::gm::elt_multiplication_expr::result< T1, T2, T3 >
 
struct  stan::gm::elt_division_expr
 
struct  stan::gm::elt_division_expr::result< T1, T2, T3 >
 
struct  stan::gm::negate_expr
 
struct  stan::gm::negate_expr::result< T1, T2 >
 
struct  stan::gm::logical_negate_expr
 
struct  stan::gm::logical_negate_expr::result< T1, T2 >
 
struct  stan::gm::transpose_expr
 
struct  stan::gm::transpose_expr::result< T1, T2 >
 
struct  stan::gm::add_expression_dimss
 
struct  stan::gm::add_expression_dimss::result< T1, T2, T3, T4 >
 
struct  stan::gm::set_var_type
 
struct  stan::gm::set_var_type::result< T1, T2, T3, T4 >
 
struct  stan::gm::validate_int_expr3
 
struct  stan::gm::validate_int_expr3::result< T1, T2 >
 
struct  stan::gm::validate_expr_type
 
struct  stan::gm::validate_expr_type::result< T1, T2 >
 
+ + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::gm
 Directed graphical model compiler.
 
+ + + + + + + + + + + +

+Functions

 BOOST_FUSION_ADAPT_STRUCT (stan::gm::index_op,(stan::gm::expression, expr_)(std::vector< std::vector< stan::gm::expression > >, dimss_))
 
 BOOST_FUSION_ADAPT_STRUCT (stan::gm::fun,(std::string, name_)(std::vector< stan::gm::expression >, args_))
 
 BOOST_FUSION_ADAPT_STRUCT (stan::gm::int_literal,(int, val_)(stan::gm::expr_type, type_))
 
 BOOST_FUSION_ADAPT_STRUCT (stan::gm::double_literal,(double, val_)(stan::gm::expr_type, type_))
 
void stan::gm::generate_expression (const expression &e, std::ostream &o)
 
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Variables

boost::phoenix::function
+< set_fun_type > 
stan::gm::set_fun_type_f
 
boost::phoenix::function
+< set_fun_type_named > 
stan::gm::set_fun_type_named_f
 
boost::phoenix::function
+< multiplication_expr > 
stan::gm::multiplication
 
boost::phoenix::function
+< division_expr > 
stan::gm::division
 
boost::phoenix::function
+< left_division_expr > 
stan::gm::left_division
 
boost::phoenix::function
+< elt_multiplication_expr > 
stan::gm::elt_multiplication
 
boost::phoenix::function
+< elt_division_expr > 
stan::gm::elt_division
 
boost::phoenix::function
+< negate_expr > 
stan::gm::negate_expr_f
 
boost::phoenix::function
+< logical_negate_expr > 
stan::gm::logical_negate_expr_f
 
boost::phoenix::function
+< transpose_expr > 
stan::gm::transpose_f
 
boost::phoenix::function
+< add_expression_dimss > 
stan::gm::add_expression_dimss_f
 
boost::phoenix::function
+< set_var_type > 
stan::gm::set_var_type_f
 
boost::phoenix::function
+< validate_int_expr3 > 
stan::gm::validate_int_expr3_f
 
boost::phoenix::function
+< validate_expr_type > 
stan::gm::validate_expr_type_f
 
+

Function Documentation

+ +
+
+ + + + + + + + + + + + + + + + + + +
BOOST_FUSION_ADAPT_STRUCT (stan::gm::index_op ,
(stan::gm::expression, expr_)(std::vector< std::vector< stan::gm::expression > >, dimss_)  
)
+
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
BOOST_FUSION_ADAPT_STRUCT (stan::gm::fun ,
(std::string, name_)(std::vector< stan::gm::expression >, args_)  
)
+
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
BOOST_FUSION_ADAPT_STRUCT (stan::gm::int_literal ,
(int, val_)(stan::gm::expr_type, type_)  
)
+
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
BOOST_FUSION_ADAPT_STRUCT (stan::gm::double_literal ,
(double, val_)(stan::gm::expr_type, type_)  
)
+
+ +
+
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/term__grammar__def_8hpp_source.html b/doc/api/html/term__grammar__def_8hpp_source.html new file mode 100644 index 00000000000..8e92a5c5633 --- /dev/null +++ b/doc/api/html/term__grammar__def_8hpp_source.html @@ -0,0 +1,673 @@ + + + + + +Stan: src/stan/gm/grammars/term_grammar_def.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
term_grammar_def.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__GM__PARSER__TERM_GRAMMAR_DEF__HPP__
+
2 #define __STAN__GM__PARSER__TERM_GRAMMAR_DEF__HPP__
+
3 
+
4 #include <cstddef>
+
5 #include <iomanip>
+
6 #include <iostream>
+
7 #include <istream>
+
8 #include <map>
+
9 #include <set>
+
10 #include <sstream>
+
11 #include <string>
+
12 #include <utility>
+
13 #include <vector>
+
14 #include <stdexcept>
+
15 
+
16 #include <boost/spirit/include/qi.hpp>
+
17 // FIXME: get rid of unused include
+
18 #include <boost/spirit/include/phoenix_core.hpp>
+
19 #include <boost/spirit/include/phoenix_function.hpp>
+
20 #include <boost/spirit/include/phoenix_fusion.hpp>
+
21 #include <boost/spirit/include/phoenix_object.hpp>
+
22 #include <boost/spirit/include/phoenix_operator.hpp>
+
23 #include <boost/spirit/include/phoenix_stl.hpp>
+
24 
+
25 #include <boost/lexical_cast.hpp>
+
26 #include <boost/fusion/include/adapt_struct.hpp>
+
27 #include <boost/fusion/include/std_pair.hpp>
+
28 #include <boost/config/warning_disable.hpp>
+
29 #include <boost/spirit/include/qi.hpp>
+
30 #include <boost/spirit/include/qi_numeric.hpp>
+
31 #include <boost/spirit/include/classic_position_iterator.hpp>
+
32 #include <boost/spirit/include/phoenix_core.hpp>
+
33 #include <boost/spirit/include/phoenix_function.hpp>
+
34 #include <boost/spirit/include/phoenix_fusion.hpp>
+
35 #include <boost/spirit/include/phoenix_object.hpp>
+
36 #include <boost/spirit/include/phoenix_operator.hpp>
+
37 #include <boost/spirit/include/phoenix_stl.hpp>
+
38 #include <boost/spirit/include/support_multi_pass.hpp>
+
39 #include <boost/tuple/tuple.hpp>
+
40 #include <boost/variant/apply_visitor.hpp>
+
41 #include <boost/variant/recursive_variant.hpp>
+
42 
+
43 #include <stan/gm/ast.hpp>
+ + + +
47 
+ +
49  (stan::gm::expression, expr_)
+
50  (std::vector<std::vector<stan::gm::expression> >,
+
51  dimss_) );
+
52 
+ +
54  (std::string, name_)
+
55  (std::vector<stan::gm::expression>, args_) );
+
56 
+ +
58  (int,val_)
+
59  (stan::gm::expr_type,type_));
+
60 
+ +
62  (double,val_)
+
63  (stan::gm::expr_type,type_) );
+
64 
+
65 
+
66 
+
67 
+
68 namespace stan {
+
69 
+
70  namespace gm {
+
71 
+
72 
+
73  struct set_fun_type {
+
74  template <typename T1, typename T2>
+
75  struct result { typedef fun type; };
+
76 
+ +
78  std::ostream& error_msgs) const {
+
79  std::vector<expr_type> arg_types;
+
80  for (size_t i = 0; i < fun.args_.size(); ++i)
+
81  arg_types.push_back(fun.args_[i].expression_type());
+ +
83  arg_types,
+
84  error_msgs);
+
85  return fun;
+
86  }
+
87  };
+
88  boost::phoenix::function<set_fun_type> set_fun_type_f;
+
89 
+
90 
+ +
92  template <typename T1, typename T2, typename T3, typename T4>
+
93  struct result { typedef fun type; };
+
94 
+ +
96  const var_origin& var_origin,
+
97  bool& pass,
+
98  std::ostream& error_msgs) const {
+
99  std::vector<expr_type> arg_types;
+
100  for (size_t i = 0; i < fun.args_.size(); ++i)
+
101  arg_types.push_back(fun.args_[i].expression_type());
+ +
103  arg_types,
+
104  error_msgs);
+
105 
+
106  pass = !has_rng_suffix(fun.name_) || var_origin == derived_origin;
+
107  if (fun.name_ == "abs"
+
108  && fun.args_[0].expression_type().is_primitive_double()) {
+
109  error_msgs << "Warning: Function abs(real) is deprecated."
+
110  << std::endl
+
111  << " It will be removed in a future release."
+
112  << std::endl
+
113  << " Use fabs(real) instead."
+
114  << std::endl << std::endl;
+
115  }
+
116 
+
117 
+
118  if (!pass) {
+
119  error_msgs << "random number generators only allowed in generated quantities block"
+
120  << "; found function=" << fun.name_
+
121  << " in block=";
+
122  print_var_origin(error_msgs,var_origin);
+
123  error_msgs << std::endl;
+
124  }
+
125 
+
126  return fun;
+
127  }
+
128  };
+
129  boost::phoenix::function<set_fun_type_named> set_fun_type_named_f;
+
130 
+
131 
+
132 
+ +
134  template <typename T1, typename T2, typename T3>
+
135  struct result { typedef expression type; };
+
136 
+ +
138  const expression& expr2,
+
139  std::ostream& error_msgs) const {
+
140 
+
141  if (expr1.expression_type().is_primitive()
+
142  && expr2.expression_type().is_primitive()) {
+
143  return expr1 *= expr2;
+
144  }
+
145  std::vector<expression> args;
+
146  args.push_back(expr1);
+
147  args.push_back(expr2);
+
148  set_fun_type sft;
+
149  fun f("multiply",args);
+
150  sft(f,error_msgs);
+
151  return expression(f);
+
152  }
+
153  };
+
154  boost::phoenix::function<multiplication_expr> multiplication;
+
155 
+
156  void generate_expression(const expression& e, std::ostream& o);
+
157 
+
158  struct division_expr {
+
159  template <typename T1, typename T2, typename T3>
+
160  struct result { typedef expression type; };
+
161 
+ +
163  const expression& expr2,
+
164  std::ostream& error_msgs) const {
+
165  if (expr1.expression_type().is_primitive_int()
+
166  && expr2.expression_type().is_primitive_int()) {
+
167  // getting here, but not printing? only print error if problems?
+
168  error_msgs << "Warning: integer division implicitly rounds to integer."
+
169  << " Found int division: ";
+
170  generate_expression(expr1.expr_,error_msgs);
+
171  error_msgs << " / ";
+
172  generate_expression(expr2.expr_,error_msgs);
+
173  error_msgs << std::endl
+
174  << " Positive values rounded down, negative values rounded up or down"
+
175  << " in platform-dependent way."
+
176  << std::endl;
+
177  }
+
178 
+
179  if (expr1.expression_type().is_primitive()
+
180  && expr2.expression_type().is_primitive()) {
+
181  return expr1 /= expr2;
+
182  }
+
183  std::vector<expression> args;
+
184  args.push_back(expr1);
+
185  args.push_back(expr2);
+
186  set_fun_type sft;
+
187  if ((expr1.expression_type().type() == MATRIX_T
+
188  || expr1.expression_type().type() == ROW_VECTOR_T)
+
189  && expr2.expression_type().type() == MATRIX_T) {
+
190  fun f("mdivide_right",args);
+
191  sft(f,error_msgs);
+
192  return expression(f);
+
193  }
+
194 
+
195  fun f("divide",args);
+
196  sft(f,error_msgs);
+
197  return expression(f);
+
198  }
+
199  };
+
200  boost::phoenix::function<division_expr> division;
+
201 
+ +
203  template <typename T1, typename T2, typename T3>
+
204  struct result { typedef expression type; };
+
205 
+ +
207  const expression& expr2,
+
208  std::ostream& error_msgs) const {
+
209  if (expr1.expression_type().is_primitive()
+
210  && expr2.expression_type().is_primitive()) {
+
211  return expr1 /= expr2;
+
212  }
+
213  std::vector<expression> args;
+
214  args.push_back(expr1);
+
215  args.push_back(expr2);
+
216  set_fun_type sft;
+
217  if (expr1.expression_type().type() == MATRIX_T
+
218  && (expr2.expression_type().type() == VECTOR_T
+
219  || expr2.expression_type().type() == MATRIX_T)) {
+
220  fun f("mdivide_left",args);
+
221  sft(f,error_msgs);
+
222  return expression(f);
+
223  }
+
224  fun f("divide_left",args); // this doesn't exist, so will
+
225  // throw error on purpose
+
226  sft(f,error_msgs);
+
227  return expression(f);
+
228  }
+
229  };
+
230  boost::phoenix::function<left_division_expr> left_division;
+
231 
+ +
233  template <typename T1, typename T2, typename T3>
+
234  struct result { typedef expression type; };
+
235 
+ +
237  const expression& expr2,
+
238  std::ostream& error_msgs) const {
+
239 
+
240  if (expr1.expression_type().is_primitive()
+
241  && expr2.expression_type().is_primitive()) {
+
242  return expr1 *= expr2;
+
243  }
+
244  std::vector<expression> args;
+
245  args.push_back(expr1);
+
246  args.push_back(expr2);
+
247  set_fun_type sft;
+
248  fun f("elt_multiply",args);
+
249  sft(f,error_msgs);
+
250  return expression(f);
+
251  return expr1 += expr2;
+
252  }
+
253  };
+
254  boost::phoenix::function<elt_multiplication_expr> elt_multiplication;
+
255 
+ +
257  template <typename T1, typename T2, typename T3>
+
258  struct result { typedef expression type; };
+
259 
+ +
261  const expression& expr2,
+
262  std::ostream& error_msgs) const {
+
263 
+
264  if (expr1.expression_type().is_primitive()
+
265  && expr2.expression_type().is_primitive()) {
+
266  return expr1 /= expr2;
+
267  }
+
268  std::vector<expression> args;
+
269  args.push_back(expr1);
+
270  args.push_back(expr2);
+
271  set_fun_type sft;
+
272  fun f("elt_divide",args);
+
273  sft(f,error_msgs);
+
274  return expression(f);
+
275  return expr1 += expr2;
+
276  }
+
277  };
+
278  boost::phoenix::function<elt_division_expr> elt_division;
+
279 
+
280  // Cut-and-Paste from Spirit examples, including comment: We
+
281  // should be using expression::operator-. There's a bug in phoenix
+
282  // type deduction mechanism that prevents us from doing
+
283  // so. Phoenix will be switching to BOOST_TYPEOF. In the meantime,
+
284  // we will use a phoenix::function below:
+
285  struct negate_expr {
+
286  template <typename T1, typename T2>
+
287  struct result { typedef expression type; };
+
288 
+ +
290  std::ostream& error_msgs) const {
+
291  if (expr.expression_type().is_primitive()) {
+
292  return expression(unary_op('-', expr));
+
293  }
+
294  std::vector<expression> args;
+
295  args.push_back(expr);
+
296  set_fun_type sft;
+
297  fun f("minus",args);
+
298  sft(f,error_msgs);
+
299  return expression(f);
+
300  }
+
301  };
+
302  boost::phoenix::function<negate_expr> negate_expr_f;
+
303 
+ +
305  template <typename T1, typename T2>
+
306  struct result { typedef expression type; };
+
307 
+ +
309  std::ostream& error_msgs) const {
+
310  if (!expr.expression_type().is_primitive()) {
+
311  error_msgs << "logical negation operator ! only applies to int or real types; ";
+
312  return expression();
+
313  }
+
314  std::vector<expression> args;
+
315  args.push_back(expr);
+
316  set_fun_type sft;
+
317  fun f("logical_negation",args);
+
318  sft(f,error_msgs);
+
319  return expression(f);
+
320  }
+
321  };
+
322  boost::phoenix::function<logical_negate_expr> logical_negate_expr_f;
+
323 
+
324  struct transpose_expr {
+
325  template <typename T1, typename T2>
+
326  struct result { typedef expression type; };
+
327 
+ +
329  std::ostream& error_msgs) const {
+
330  if (expr.expression_type().is_primitive()) {
+
331  return expr; // transpose of basic is self -- works?
+
332  }
+
333  std::vector<expression> args;
+
334  args.push_back(expr);
+
335  set_fun_type sft;
+
336  fun f("transpose",args);
+
337  sft(f,error_msgs);
+
338  return expression(f);
+
339  }
+
340  };
+
341  boost::phoenix::function<transpose_expr> transpose_f;
+
342 
+ +
344  template <typename T1, typename T2, typename T3, typename T4>
+
345  struct result { typedef T1 type; };
+ +
347  std::vector<std::vector<stan::gm::expression> >& dimss,
+
348  bool& pass,
+
349  std::ostream& error_msgs) const {
+
350  index_op iop(expression,dimss);
+
351  iop.infer_type();
+
352  if (iop.type_.is_ill_formed()) {
+
353  error_msgs << "indexes inappropriate for expression." << std::endl;
+
354  pass = false;
+
355  } else {
+
356  pass = true;
+
357  }
+
358  return iop;
+
359  }
+
360  };
+
361  boost::phoenix::function<add_expression_dimss> add_expression_dimss_f;
+
362 
+
363  struct set_var_type {
+
364  template <typename T1, typename T2, typename T3, typename T4>
+
365  struct result { typedef variable type; };
+ +
367  variable_map& vm,
+
368  std::ostream& error_msgs,
+
369  bool& pass) const {
+
370  std::string name = var_expr.name_;
+
371  if (!vm.exists(name)) {
+
372  pass = false;
+
373  error_msgs << "variable \"" << name << '"' << " does not exist."
+
374  << std::endl;
+
375  return var_expr;
+
376  }
+
377  if (name == std::string("lp__")) {
+
378  error_msgs << std::endl
+
379  << "WARNING:"
+
380  << std::endl
+
381  << " Direct use of variable lp__ is deprecated and will be removed in a future release."
+
382  << std::endl
+
383  << " Please use increment_log_prob(u) in place of of lp__ <- lp__ + u."
+
384  << std::endl;
+
385  }
+
386  pass = true;
+
387  var_expr.set_type(vm.get_base_type(name),vm.get_num_dims(name));
+
388  return var_expr;
+
389  }
+
390  };
+
391  boost::phoenix::function<set_var_type> set_var_type_f;
+
392 
+ +
394  template <typename T1, typename T2>
+
395  struct result { typedef bool type; };
+
396 
+
397  bool operator()(const expression& expr,
+
398  std::stringstream& error_msgs) const {
+
399  if (!expr.expression_type().is_primitive_int()) {
+
400  error_msgs << "expression denoting integer required; found type="
+
401  << expr.expression_type() << std::endl;
+
402  return false;
+
403  }
+
404  return true;
+
405  }
+
406  };
+
407  boost::phoenix::function<validate_int_expr3> validate_int_expr3_f;
+
408 
+
409 
+ +
411  template <typename T1, typename T2>
+
412  struct result { typedef bool type; };
+
413 
+
414  bool operator()(const expression& expr,
+
415  std::ostream& error_msgs) const {
+
416  if (expr.expression_type().is_ill_formed()) {
+
417  error_msgs << "expression is ill formed" << std::endl;
+
418  return false;
+
419  }
+
420  return true;
+
421  }
+
422  };
+
423  boost::phoenix::function<validate_expr_type> validate_expr_type_f;
+
424 
+
425 
+
426 
+
427 
+
428 
+
429  template <typename Iterator>
+ +
431  std::stringstream& error_msgs,
+ +
433  : term_grammar::base_type(term_r),
+
434  var_map_(var_map),
+
435  error_msgs_(error_msgs),
+
436  expression_g(eg)
+
437  {
+
438  using boost::spirit::qi::_1;
+
439  using boost::spirit::qi::char_;
+
440  using boost::spirit::qi::double_;
+
441  using boost::spirit::qi::eps;
+
442  using boost::spirit::qi::int_;
+
443  using boost::spirit::qi::lexeme;
+
444  using boost::spirit::qi::lit;
+
445  using boost::spirit::qi::_pass;
+
446  using boost::spirit::qi::_val;
+
447  using boost::spirit::qi::labels::_r1;
+
448 
+
449  // _r1 : var_origin
+
450 
+
451  term_r.name("term");
+
452  term_r
+
453  = ( negated_factor_r(_r1)
+
454  [_val = _1]
+
455  >> *( (lit('*') > negated_factor_r(_r1)
+
456  [_val = multiplication(_val,_1,
+
457  boost::phoenix::ref(error_msgs_))])
+
458  | (lit('/') > negated_factor_r(_r1)
+
459  [_val = division(_val,_1,boost::phoenix::ref(error_msgs_))])
+
460  | (lit('\\') > negated_factor_r(_r1)
+
461  [_val = left_division(_val,_1,
+
462  boost::phoenix::ref(error_msgs_))])
+
463  | (lit(".*") > negated_factor_r(_r1)
+
464  [_val = elt_multiplication(_val,_1,
+
465  boost::phoenix::ref(error_msgs_))])
+
466  | (lit("./") > negated_factor_r(_r1)
+
467  [_val = elt_division(_val,_1,
+
468  boost::phoenix::ref(error_msgs_))])
+
469  )
+
470  )
+
471  ;
+
472 
+
473 
+ +
475  = lit('-') >> negated_factor_r(_r1)
+
476  [_val = negate_expr_f(_1,boost::phoenix::ref(error_msgs_))]
+
477  | lit('!') >> negated_factor_r(_r1)
+
478  [_val = logical_negate_expr_f(_1,boost::phoenix::ref(error_msgs_))]
+
479  | lit('+') >> negated_factor_r(_r1) [_val = _1]
+
480  | indexed_factor_r(_r1) [_val = _1];
+
481 
+
482 
+
483  indexed_factor_r.name("(optionally) indexed factor [sub]");
+ +
485  = factor_r(_r1) [_val = _1]
+
486  > * (
+
487  (+dims_r(_r1))
+
488  [_val = add_expression_dimss_f(_val, _1, _pass,
+
489  boost::phoenix::ref(error_msgs_))]
+
490  |
+
491  lit("'")
+
492  [_val = transpose_f(_val, boost::phoenix::ref(error_msgs_))]
+
493  )
+
494  ;
+
495 
+
496 
+
497  factor_r.name("factor");
+
498  factor_r =
+
499  fun_r(_r1) [_val = set_fun_type_named_f(_1,_r1,_pass,
+
500  boost::phoenix::ref(error_msgs_))]
+
501  | variable_r [_val = set_var_type_f(_1,boost::phoenix::ref(var_map_),
+
502  boost::phoenix::ref(error_msgs_),
+
503  _pass)]
+
504  | int_literal_r [_val = _1]
+
505  | double_literal_r [_val = _1]
+
506  | ( lit('(')
+
507  > expression_g(_r1) [_val = _1]
+
508  > lit(')') )
+
509  ;
+
510 
+
511  int_literal_r.name("integer literal");
+ +
513  %= int_
+
514  >> !( lit('.')
+
515  | lit('e')
+
516  | lit('E') );
+
517 
+
518 
+
519  double_literal_r.name("real literal");
+ +
521  %= double_;
+
522 
+
523 
+
524  fun_r.name("function and argument expressions");
+
525  fun_r
+
526  %= identifier_r // no test yet on valid naming
+
527  >> args_r(_r1);
+
528 
+
529 
+
530  identifier_r.name("identifier (expression grammar)");
+ +
532  %= lexeme[char_("a-zA-Z")
+
533  >> *char_("a-zA-Z0-9_.")];
+
534 
+
535 
+
536  args_r.name("function argument expressions");
+
537  args_r
+
538  %= (lit('(') >> lit(')'))
+
539  | ( ( lit('(')
+
540  >> (expression_g(_r1) % ',') )
+
541  > lit(')') )
+
542  ;
+
543 
+
544 
+
545  dims_r.name("array dimensions");
+
546  dims_r
+
547  %= lit('[')
+
548  > (expression_g(_r1)
+
549  [_pass = validate_int_expr3_f(_1,boost::phoenix::ref(error_msgs_))]
+
550  % ',')
+
551  > lit(']')
+
552  ;
+
553 
+
554 
+
555  variable_r.name("variable expression");
+
556  variable_r
+
557  %= identifier_r
+
558  > !lit('('); // negative lookahead to prevent failure in
+
559  // fun to try to evaluate as variable [cleaner
+
560  // error msgs]
+
561 
+
562  }
+
563  }
+
564 }
+
565 
+
566 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/term__grammar__inst_8cpp.html b/doc/api/html/term__grammar__inst_8cpp.html new file mode 100644 index 00000000000..d5fbc8ea0a4 --- /dev/null +++ b/doc/api/html/term__grammar__inst_8cpp.html @@ -0,0 +1,123 @@ + + + + + +Stan: src/stan/gm/grammars/term_grammar_inst.cpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
term_grammar_inst.cpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::gm
 Directed graphical model compiler.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/term__grammar__inst_8cpp_source.html b/doc/api/html/term__grammar__inst_8cpp_source.html new file mode 100644 index 00000000000..fd29b71a126 --- /dev/null +++ b/doc/api/html/term__grammar__inst_8cpp_source.html @@ -0,0 +1,115 @@ + + + + + +Stan: src/stan/gm/grammars/term_grammar_inst.cpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
term_grammar_inst.cpp
+
+
+Go to the documentation of this file.
+ +
3 
+
4 namespace stan {
+
5  namespace gm {
+
6  template struct term_grammar<pos_iterator_t>;
+
7  }
+
8 }
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/to__fvar_8hpp.html b/doc/api/html/to__fvar_8hpp.html new file mode 100644 index 00000000000..b8316431ecd --- /dev/null +++ b/doc/api/html/to__fvar_8hpp.html @@ -0,0 +1,170 @@ + + + + + +Stan: src/stan/agrad/fwd/matrix/to_fvar.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
to_fvar.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Functions

template<typename T >
fvar< T > stan::agrad::to_fvar (const T &x)
 
template<typename T >
fvar< T > stan::agrad::to_fvar (const fvar< T > &x)
 
matrix_fd stan::agrad::to_fvar (const stan::math::matrix_d &m)
 
matrix_fd stan::agrad::to_fvar (const matrix_fd &m)
 
matrix_fv stan::agrad::to_fvar (const matrix_fv &m)
 
matrix_ffd stan::agrad::to_fvar (const matrix_ffd &m)
 
matrix_ffv stan::agrad::to_fvar (const matrix_ffv &m)
 
vector_fd stan::agrad::to_fvar (const stan::math::vector_d &v)
 
vector_fd stan::agrad::to_fvar (const vector_fd &v)
 
vector_fv stan::agrad::to_fvar (const vector_fv &v)
 
vector_ffd stan::agrad::to_fvar (const vector_ffd &v)
 
vector_ffv stan::agrad::to_fvar (const vector_ffv &v)
 
row_vector_fd stan::agrad::to_fvar (const stan::math::row_vector_d &rv)
 
row_vector_fd stan::agrad::to_fvar (const row_vector_fd &rv)
 
row_vector_fv stan::agrad::to_fvar (const row_vector_fv &rv)
 
row_vector_ffd stan::agrad::to_fvar (const row_vector_ffd &rv)
 
row_vector_ffv stan::agrad::to_fvar (const row_vector_ffv &rv)
 
template<typename T , int R, int C>
Eigen::Matrix< fvar< T >, R, C > stan::agrad::to_fvar (const Eigen::Matrix< T, R, C > &val, const Eigen::Matrix< T, R, C > &deriv)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/to__fvar_8hpp_source.html b/doc/api/html/to__fvar_8hpp_source.html new file mode 100644 index 00000000000..2807b4fbb4f --- /dev/null +++ b/doc/api/html/to__fvar_8hpp_source.html @@ -0,0 +1,252 @@ + + + + + +Stan: src/stan/agrad/fwd/matrix/to_fvar.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
to_fvar.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__FWD__MATRIX__TO_FVAR_HPP__
+
2 #define __STAN__AGRAD__FWD__MATRIX__TO_FVAR_HPP__
+
3 
+
4 #include <vector>
+ + + + + +
10 
+
11 namespace stan {
+
12  namespace agrad {
+
13 
+
14  template<typename T>
+
15  inline
+
16  fvar<T>
+
17  to_fvar(const T& x) {
+
18  return fvar<T>(x);
+
19  }
+
20 
+
21  template<typename T>
+
22  inline
+
23  fvar<T>
+
24  to_fvar(const fvar<T>& x) {
+
25  return x;
+
26  }
+
27 
+
28  inline
+
29  matrix_fd
+ +
31  matrix_fd m_v(m.rows(), m.cols());
+
32  for (int j = 0; j < m.cols(); ++j)
+
33  for (int i = 0; i < m.rows(); ++i)
+
34  m_v(i,j) = m(i,j);
+
35  return m_v;
+
36  }
+
37 
+
38  inline
+
39  matrix_fd
+
40  to_fvar(const matrix_fd& m) {
+
41  return m;
+
42  }
+
43 
+
44  inline
+
45  matrix_fv
+
46  to_fvar(const matrix_fv& m) {
+
47  return m;
+
48  }
+
49 
+
50  inline
+ +
52  to_fvar(const matrix_ffd& m) {
+
53  return m;
+
54  }
+
55 
+
56  inline
+
57  matrix_ffv
+
58  to_fvar(const matrix_ffv& m) {
+
59  return m;
+
60  }
+
61 
+
62  inline
+
63  vector_fd
+ +
65  vector_fd v_v(v.size());
+
66  for (int i = 0; i < v.size(); ++i)
+
67  v_v[i] = v[i];
+
68  return v_v;
+
69  }
+
70 
+
71  inline
+
72  vector_fd
+
73  to_fvar(const vector_fd& v) {
+
74  return v;
+
75  }
+
76 
+
77  inline
+
78  vector_fv
+
79  to_fvar(const vector_fv& v) {
+
80  return v;
+
81  }
+
82 
+
83  inline
+ +
85  to_fvar(const vector_ffd& v) {
+
86  return v;
+
87  }
+
88 
+
89  inline
+
90  vector_ffv
+
91  to_fvar(const vector_ffv& v) {
+
92  return v;
+
93  }
+
94 
+
95  inline
+ + +
98  row_vector_fd rv_v(rv.size());
+
99  for (int i = 0; i < rv.size(); ++i)
+
100  rv_v[i] = rv[i];
+
101  return rv_v;
+
102  }
+
103 
+
104  inline
+ +
106  to_fvar(const row_vector_fd& rv) {
+
107  return rv;
+
108  }
+
109 
+
110  inline
+ +
112  to_fvar(const row_vector_fv& rv) {
+
113  return rv;
+
114  }
+
115 
+
116  inline
+ +
118  to_fvar(const row_vector_ffd& rv) {
+
119  return rv;
+
120  }
+
121 
+
122  inline
+ +
124  to_fvar(const row_vector_ffv& rv) {
+
125  return rv;
+
126  }
+
127 
+
128  template<typename T, int R, int C>
+
129  inline
+
130  Eigen::Matrix<fvar<T>, R, C>
+
131  to_fvar(const Eigen::Matrix<T,R,C>& val,
+
132  const Eigen::Matrix<T,R,C>& deriv) {
+
133  stan::math::validate_matching_dims(val,deriv, "to_fvar");
+
134  Eigen::Matrix<fvar<T>,R,C> ret(val.rows(), val.cols());
+
135  for(size_type i = 0; i < val.rows(); i++) {
+
136  for(size_type j = 0; j < val.cols(); j++) {
+
137  ret(i,j).val_ = val(i,j);
+
138  ret(i,j).d_ = deriv(i,j);
+
139  }
+
140  }
+
141  return ret;
+
142  }
+
143  }
+
144 }
+
145 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/to__var_8hpp.html b/doc/api/html/to__var_8hpp.html new file mode 100644 index 00000000000..466e2d2dfed --- /dev/null +++ b/doc/api/html/to__var_8hpp.html @@ -0,0 +1,154 @@ + + + + + +Stan: src/stan/agrad/rev/matrix/to_var.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
to_var.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+ + + + + + + + + + + + + + + + + + + + + + + + + +

+Functions

var stan::agrad::to_var (const double &x)
 Converts argument to an automatic differentiation variable.
 
var stan::agrad::to_var (const var &x)
 Converts argument to an automatic differentiation variable.
 
matrix_v stan::agrad::to_var (const stan::math::matrix_d &m)
 Converts argument to an automatic differentiation variable.
 
matrix_v stan::agrad::to_var (const matrix_v &m)
 Converts argument to an automatic differentiation variable.
 
vector_v stan::agrad::to_var (const stan::math::vector_d &v)
 Converts argument to an automatic differentiation variable.
 
vector_v stan::agrad::to_var (const vector_v &v)
 Converts argument to an automatic differentiation variable.
 
row_vector_v stan::agrad::to_var (const stan::math::row_vector_d &rv)
 Converts argument to an automatic differentiation variable.
 
row_vector_v stan::agrad::to_var (const row_vector_v &rv)
 Converts argument to an automatic differentiation variable.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/to__var_8hpp_source.html b/doc/api/html/to__var_8hpp_source.html new file mode 100644 index 00000000000..5299ab1bf8d --- /dev/null +++ b/doc/api/html/to__var_8hpp_source.html @@ -0,0 +1,157 @@ + + + + + +Stan: src/stan/agrad/rev/matrix/to_var.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
to_var.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__REV__MATRIX__TO_VAR_HPP__
+
2 #define __STAN__AGRAD__REV__MATRIX__TO_VAR_HPP__
+
3 
+
4 #include <vector>
+ + +
7 #include <stan/agrad/rev/var.hpp>
+ +
9 
+
10 namespace stan {
+
11  namespace agrad {
+
12 
+
21  inline var to_var(const double& x) {
+
22  return var(x);
+
23  }
+
32  inline var to_var(const var& x) {
+
33  return x;
+
34  }
+ +
44  matrix_v m_v(m.rows(), m.cols());
+
45  for (int j = 0; j < m.cols(); ++j)
+
46  for (int i = 0; i < m.rows(); ++i)
+
47  m_v(i,j) = m(i,j);
+
48  return m_v;
+
49  }
+
58  inline matrix_v to_var(const matrix_v& m) {
+
59  return m;
+
60  }
+ +
71  vector_v v_v(v.size());
+
72  for (int i = 0; i < v.size(); ++i)
+
73  v_v[i] = v[i];
+
74  return v_v;
+
75  }
+
85  inline vector_v to_var(const vector_v& v) {
+
86  return v;
+
87  }
+ +
98  row_vector_v rv_v(rv.size());
+
99  for (int i = 0; i < rv.size(); ++i)
+
100  rv_v[i] = rv[i];
+
101  return rv_v;
+
102  }
+
112  inline row_vector_v to_var(const row_vector_v& rv) {
+
113  return rv;
+
114  }
+
115 
+
116  }
+
117 }
+
118 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/to__vector_8hpp.html b/doc/api/html/to__vector_8hpp.html new file mode 100644 index 00000000000..b610b8176b1 --- /dev/null +++ b/doc/api/html/to__vector_8hpp.html @@ -0,0 +1,130 @@ + + + + + +Stan: src/stan/math/matrix/to_vector.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
to_vector.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::math
 Matrices and templated mathematical functions.
 
+ + + + +

+Functions

template<typename T , int R1, int R2>
Eigen::Matrix< T,
+Eigen::Dynamic, 1 > 
stan::math::to_vector (const Eigen::Matrix< T, R1, R2 > &m)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/to__vector_8hpp_source.html b/doc/api/html/to__vector_8hpp_source.html new file mode 100644 index 00000000000..5cc47b2cf47 --- /dev/null +++ b/doc/api/html/to__vector_8hpp_source.html @@ -0,0 +1,125 @@ + + + + + +Stan: src/stan/math/matrix/to_vector.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
to_vector.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MATH__MATRIX__TO_VECTOR_HPP__
+
2 #define __STAN__MATH__MATRIX__TO_VECTOR_HPP__
+
3 
+ +
5 
+
6 namespace stan {
+
7  namespace math {
+
8 
+
9  template <typename T, int R1, int R2>
+
10  inline
+
11  Eigen::Matrix<T,Eigen::Dynamic,1>
+
12  to_vector(const Eigen::Matrix<T,R1,R2>& m) {
+
13  return Eigen::Matrix<T,Eigen::Dynamic,1>::Map(m.data(), m.rows()*m.cols());
+
14  }
+
15 
+
16  }
+
17 }
+
18 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/trace_8hpp.html b/doc/api/html/trace_8hpp.html new file mode 100644 index 00000000000..5ccfc3fd5f7 --- /dev/null +++ b/doc/api/html/trace_8hpp.html @@ -0,0 +1,130 @@ + + + + + +Stan: src/stan/math/matrix/trace.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
trace.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::math
 Matrices and templated mathematical functions.
 
+ + + + + +

+Functions

template<typename T >
stan::math::trace (const Eigen::Matrix< T, Eigen::Dynamic, Eigen::Dynamic > &m)
 Returns the trace of the specified matrix.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/trace_8hpp_source.html b/doc/api/html/trace_8hpp_source.html new file mode 100644 index 00000000000..c8cb83581b7 --- /dev/null +++ b/doc/api/html/trace_8hpp_source.html @@ -0,0 +1,123 @@ + + + + + +Stan: src/stan/math/matrix/trace.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
trace.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MATH__MATRIX__TRACE_HPP__
+
2 #define __STAN__MATH__MATRIX__TRACE_HPP__
+
3 
+ +
5 
+
6 namespace stan {
+
7  namespace math {
+
8 
+
18  template <typename T>
+
19  inline T trace(const Eigen::Matrix<T,Eigen::Dynamic,Eigen::Dynamic>& m) {
+
20  return m.trace();
+
21  }
+
22 
+
23  }
+
24 }
+
25 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/transform_8hpp.html b/doc/api/html/transform_8hpp.html new file mode 100644 index 00000000000..c9d496dc488 --- /dev/null +++ b/doc/api/html/transform_8hpp.html @@ -0,0 +1,403 @@ + + + + + +Stan: src/stan/prob/transform.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
transform.hpp File Reference
+
+
+
#include <cmath>
+#include <cstddef>
+#include <limits>
+#include <stdexcept>
+#include <sstream>
+#include <vector>
+#include <boost/multi_array.hpp>
+#include <boost/throw_exception.hpp>
+#include <boost/math/tools/promotion.hpp>
+#include <stan/agrad/rev/matrix.hpp>
+#include <stan/math.hpp>
+#include <stan/math/matrix.hpp>
+#include <stan/math/matrix/sum.hpp>
+#include <stan/math/matrix/validate_less.hpp>
+#include <stan/math/error_handling.hpp>
+#include <stan/math/matrix_error_handling.hpp>
+#include <stan/math/matrix/multiply_lower_tri_self_transpose.hpp>
+
+

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::prob
 Templated probability distributions.
 
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Functions

template<typename T >
bool stan::prob::factor_cov_matrix (Eigen::Array< T, Eigen::Dynamic, 1 > &CPCs, Eigen::Array< T, Eigen::Dynamic, 1 > &sds, const Eigen::Matrix< T, Eigen::Dynamic, Eigen::Dynamic > &Sigma)
 This function is intended to make starting values, given a covariance matrix Sigma.
 
template<typename T >
Eigen::Matrix< T,
+Eigen::Dynamic, Eigen::Dynamic > 
stan::prob::read_corr_L (const Eigen::Array< T, Eigen::Dynamic, 1 > &CPCs, const size_t K)
 Return the Cholesky factor of the correlation matrix of the specified dimensionality corresponding to the specified canonical partial correlations.
 
template<typename T >
Eigen::Matrix< T,
+Eigen::Dynamic, Eigen::Dynamic > 
stan::prob::read_corr_matrix (const Eigen::Array< T, Eigen::Dynamic, 1 > &CPCs, const size_t K)
 Return the correlation matrix of the specified dimensionality corresponding to the specified canonical partial correlations.
 
template<typename T >
Eigen::Matrix< T,
+Eigen::Dynamic, Eigen::Dynamic > 
stan::prob::read_corr_L (const Eigen::Array< T, Eigen::Dynamic, 1 > &CPCs, const size_t K, T &log_prob)
 Return the Cholesky factor of the correlation matrix of the specified dimensionality corresponding to the specified canonical partial correlations, incrementing the specified scalar reference with the log absolute determinant of the Jacobian of the transformation.
 
template<typename T >
Eigen::Matrix< T,
+Eigen::Dynamic, Eigen::Dynamic > 
stan::prob::read_corr_matrix (const Eigen::Array< T, Eigen::Dynamic, 1 > &CPCs, const size_t K, T &log_prob)
 Return the correlation matrix of the specified dimensionality corresponding to the specified canonical partial correlations, incrementing the specified scalar reference with the log absolute determinant of the Jacobian of the transformation.
 
template<typename T >
Eigen::Matrix< T,
+Eigen::Dynamic, Eigen::Dynamic > 
stan::prob::read_cov_L (const Eigen::Array< T, Eigen::Dynamic, 1 > &CPCs, const Eigen::Array< T, Eigen::Dynamic, 1 > &sds, T &log_prob)
 This is the function that should be called prior to evaluating the density of any elliptical distribution.
 
template<typename T >
Eigen::Matrix< T,
+Eigen::Dynamic, Eigen::Dynamic > 
stan::prob::read_cov_matrix (const Eigen::Array< T, Eigen::Dynamic, 1 > &CPCs, const Eigen::Array< T, Eigen::Dynamic, 1 > &sds, T &log_prob)
 A generally worse alternative to call prior to evaluating the density of an elliptical distribution.
 
template<typename T >
Eigen::Matrix< T,
+Eigen::Dynamic, Eigen::Dynamic > 
stan::prob::read_cov_matrix (const Eigen::Array< T, Eigen::Dynamic, 1 > &CPCs, const Eigen::Array< T, Eigen::Dynamic, 1 > &sds)
 Builds a covariance matrix from CPCs and standard deviations.
 
template<typename T >
const Eigen::Array< T,
+Eigen::Dynamic, 1 > 
stan::prob::make_nu (const T eta, const size_t K)
 This function calculates the degrees of freedom for the t distribution that corresponds to the shape parameter in the Lewandowski et.
 
template<typename T >
stan::prob::identity_constrain (T x)
 Returns the result of applying the identity constraint transform to the input.
 
template<typename T >
stan::prob::identity_constrain (const T x, T &)
 Returns the result of applying the identity constraint transform to the input and increments the log probability reference with the log absolute Jacobian determinant.
 
template<typename T >
stan::prob::identity_free (const T y)
 Returns the result of applying the inverse of the identity constraint transform to the input.
 
template<typename T >
stan::prob::positive_constrain (const T x)
 Return the positive value for the specified unconstrained input.
 
template<typename T >
stan::prob::positive_constrain (const T x, T &lp)
 Return the positive value for the specified unconstrained input, incrementing the scalar reference with the log absolute Jacobian determinant.
 
template<typename T >
stan::prob::positive_free (const T y)
 Return the unconstrained value corresponding to the specified positive-constrained value.
 
template<typename T , typename TL >
stan::prob::lb_constrain (const T x, const TL lb)
 Return the lower-bounded value for the specified unconstrained input and specified lower bound.
 
template<typename T , typename TL >
boost::math::tools::promote_args
+< T, TL >::type 
stan::prob::lb_constrain (const T x, const TL lb, T &lp)
 Return the lower-bounded value for the speicifed unconstrained input and specified lower bound, incrementing the specified reference with the log absolute Jacobian determinant of the transform.
 
template<typename T , typename TL >
boost::math::tools::promote_args
+< T, TL >::type 
stan::prob::lb_free (const T y, const TL lb)
 Return the unconstrained value that produces the specified lower-bound constrained value.
 
template<typename T , typename TU >
boost::math::tools::promote_args
+< T, TU >::type 
stan::prob::ub_constrain (const T x, const TU ub)
 Return the upper-bounded value for the specified unconstrained scalar and upper bound.
 
template<typename T , typename TU >
boost::math::tools::promote_args
+< T, TU >::type 
stan::prob::ub_constrain (const T x, const TU ub, T &lp)
 Return the upper-bounded value for the specified unconstrained scalar and upper bound and increment the specified log probability reference with the log absolute Jacobian determinant of the transform.
 
template<typename T , typename TU >
boost::math::tools::promote_args
+< T, TU >::type 
stan::prob::ub_free (const T y, const TU ub)
 Return the free scalar that corresponds to the specified upper-bounded value with respect to the specified upper bound.
 
template<typename T , typename TL , typename TU >
boost::math::tools::promote_args
+< T, TL, TU >::type 
stan::prob::lub_constrain (const T x, TL lb, TU ub)
 Return the lower- and upper-bounded scalar derived by transforming the specified free scalar given the specified lower and upper bounds.
 
template<typename T , typename TL , typename TU >
boost::math::tools::promote_args
+< T, TL, TU >::type 
stan::prob::lub_constrain (const T x, const TL lb, const TU ub, T &lp)
 Return the lower- and upper-bounded scalar derived by transforming the specified free scalar given the specified lower and upper bounds and increment the specified log probability with the log absolute Jacobian determinant.
 
template<typename T , typename TL , typename TU >
boost::math::tools::promote_args
+< T, TL, TU >::type 
stan::prob::lub_free (const T y, TL lb, TU ub)
 Return the unconstrained scalar that transforms to the specified lower- and upper-bounded scalar given the specified bounds.
 
template<typename T >
stan::prob::prob_constrain (const T x)
 Return a probability value constrained to fall between 0 and 1 (inclusive) for the specified free scalar.
 
template<typename T >
stan::prob::prob_constrain (const T x, T &lp)
 Return a probability value constrained to fall between 0 and 1 (inclusive) for the specified free scalar and increment the specified log probability reference with the log absolute Jacobian determinant of the transform.
 
template<typename T >
stan::prob::prob_free (const T y)
 Return the free scalar that when transformed to a probability produces the specified scalar.
 
template<typename T >
stan::prob::corr_constrain (const T x)
 Return the result of transforming the specified scalar to have a valid correlation value between -1 and 1 (inclusive).
 
template<typename T >
stan::prob::corr_constrain (const T x, T &lp)
 Return the result of transforming the specified scalar to have a valid correlation value between -1 and 1 (inclusive).
 
template<typename T >
stan::prob::corr_free (const T y)
 Return the unconstrained scalar that when transformed to a valid correlation produces the specified value.
 
template<typename T >
Eigen::Matrix< T,
+Eigen::Dynamic, 1 > 
stan::prob::unit_vector_constrain (const Eigen::Matrix< T, Eigen::Dynamic, 1 > &y)
 Return the unit length vector corresponding to the free vector y.
 
template<typename T >
Eigen::Matrix< T,
+Eigen::Dynamic, 1 > 
stan::prob::unit_vector_constrain (const Eigen::Matrix< T, Eigen::Dynamic, 1 > &y, T &lp)
 Return the unit length vector corresponding to the free vector y.
 
template<typename T >
Eigen::Matrix< T,
+Eigen::Dynamic, 1 > 
stan::prob::unit_vector_free (const Eigen::Matrix< T, Eigen::Dynamic, 1 > &x)
 
template<typename T >
Eigen::Matrix< T,
+Eigen::Dynamic, 1 > 
stan::prob::simplex_constrain (const Eigen::Matrix< T, Eigen::Dynamic, 1 > &y)
 Return the simplex corresponding to the specified free vector.
 
template<typename T >
Eigen::Matrix< T,
+Eigen::Dynamic, 1 > 
stan::prob::simplex_constrain (const Eigen::Matrix< T, Eigen::Dynamic, 1 > &y, T &lp)
 Return the simplex corresponding to the specified free vector and increment the specified log probability reference with the log absolute Jacobian determinant of the transform.
 
template<typename T >
Eigen::Matrix< T,
+Eigen::Dynamic, 1 > 
stan::prob::simplex_free (const Eigen::Matrix< T, Eigen::Dynamic, 1 > &x)
 Return an unconstrained vector that when transformed produces the specified simplex.
 
template<typename T >
Eigen::Matrix< T,
+Eigen::Dynamic, 1 > 
stan::prob::ordered_constrain (const Eigen::Matrix< T, Eigen::Dynamic, 1 > &x)
 Return an increasing ordered vector derived from the specified free vector.
 
template<typename T >
Eigen::Matrix< T,
+Eigen::Dynamic, 1 > 
stan::prob::ordered_constrain (const Eigen::Matrix< T, Eigen::Dynamic, 1 > &x, T &lp)
 Return a positive valued, increasing ordered vector derived from the specified free vector and increment the specified log probability reference with the log absolute Jacobian determinant of the transform.
 
template<typename T >
Eigen::Matrix< T,
+Eigen::Dynamic, 1 > 
stan::prob::ordered_free (const Eigen::Matrix< T, Eigen::Dynamic, 1 > &y)
 Return the vector of unconstrained scalars that transform to the specified positive ordered vector.
 
template<typename T >
Eigen::Matrix< T,
+Eigen::Dynamic, 1 > 
stan::prob::positive_ordered_constrain (const Eigen::Matrix< T, Eigen::Dynamic, 1 > &x)
 Return an increasing positive ordered vector derived from the specified free vector.
 
template<typename T >
Eigen::Matrix< T,
+Eigen::Dynamic, 1 > 
stan::prob::positive_ordered_constrain (const Eigen::Matrix< T, Eigen::Dynamic, 1 > &x, T &lp)
 Return a positive valued, increasing positive ordered vector derived from the specified free vector and increment the specified log probability reference with the log absolute Jacobian determinant of the transform.
 
template<typename T >
Eigen::Matrix< T,
+Eigen::Dynamic, 1 > 
stan::prob::positive_ordered_free (const Eigen::Matrix< T, Eigen::Dynamic, 1 > &y)
 Return the vector of unconstrained scalars that transform to the specified positive ordered vector.
 
template<typename T >
Eigen::Matrix< T,
+Eigen::Dynamic, Eigen::Dynamic > 
stan::prob::cholesky_factor_constrain (const Eigen::Matrix< T, Eigen::Dynamic, 1 > &x, int M, int N)
 Return the Cholesky factor of the specified size read from the specified vector.
 
template<typename T >
Eigen::Matrix< T,
+Eigen::Dynamic, Eigen::Dynamic > 
stan::prob::cholesky_factor_constrain (const Eigen::Matrix< T, Eigen::Dynamic, 1 > &x, int M, int N, T &lp)
 Return the Cholesky factor of the specified size read from the specified vector and increment the specified log probability reference with the log Jacobian adjustment of the transform.
 
template<typename T >
Eigen::Matrix< T,
+Eigen::Dynamic, 1 > 
stan::prob::cholesky_factor_free (const Eigen::Matrix< T, Eigen::Dynamic, Eigen::Dynamic > &y)
 Return the unconstrained vector of parameters correspdonding to the specified Cholesky factor.
 
template<typename T >
Eigen::Matrix< T,
+Eigen::Dynamic, Eigen::Dynamic > 
stan::prob::corr_matrix_constrain (const Eigen::Matrix< T, Eigen::Dynamic, 1 > &x, typename Eigen::Matrix< T, Eigen::Dynamic, 1 >::size_type k)
 Return the correlation matrix of the specified dimensionality derived from the specified vector of unconstrained values.
 
template<typename T >
Eigen::Matrix< T,
+Eigen::Dynamic, Eigen::Dynamic > 
stan::prob::corr_matrix_constrain (const Eigen::Matrix< T, Eigen::Dynamic, 1 > &x, typename Eigen::Matrix< T, Eigen::Dynamic, 1 >::size_type k, T &lp)
 Return the correlation matrix of the specified dimensionality derived from the specified vector of unconstrained values.
 
template<typename T >
Eigen::Matrix< T,
+Eigen::Dynamic, 1 > 
stan::prob::corr_matrix_free (const Eigen::Matrix< T, Eigen::Dynamic, Eigen::Dynamic > &y)
 Return the vector of unconstrained partial correlations that define the specified correlation matrix when transformed.
 
template<typename T >
Eigen::Matrix< T,
+Eigen::Dynamic, Eigen::Dynamic > 
stan::prob::cov_matrix_constrain (const Eigen::Matrix< T, Eigen::Dynamic, 1 > &x, typename Eigen::Matrix< T, Eigen::Dynamic, 1 >::size_type K)
 Return the symmetric, positive-definite matrix of dimensions K by K resulting from transforming the specified finite vector of size K plus (K choose 2).
 
template<typename T >
Eigen::Matrix< T,
+Eigen::Dynamic, Eigen::Dynamic > 
stan::prob::cov_matrix_constrain (const Eigen::Matrix< T, Eigen::Dynamic, 1 > &x, typename Eigen::Matrix< T, Eigen::Dynamic, 1 >::size_type K, T &lp)
 Return the symmetric, positive-definite matrix of dimensions K by K resulting from transforming the specified finite vector of size K plus (K choose 2).
 
template<typename T >
Eigen::Matrix< T,
+Eigen::Dynamic, 1 > 
stan::prob::cov_matrix_free (const Eigen::Matrix< T, Eigen::Dynamic, Eigen::Dynamic > &y)
 The covariance matrix derived from the symmetric view of the lower-triangular view of the K by K specified matrix is freed to return a vector of size K + (K choose 2).
 
template<typename T >
Eigen::Matrix< T,
+Eigen::Dynamic, Eigen::Dynamic > 
stan::prob::cov_matrix_constrain_lkj (const Eigen::Matrix< T, Eigen::Dynamic, 1 > &x, size_t k)
 Return the covariance matrix of the specified dimensionality derived from constraining the specified vector of unconstrained values.
 
template<typename T >
Eigen::Matrix< T,
+Eigen::Dynamic, Eigen::Dynamic > 
stan::prob::cov_matrix_constrain_lkj (const Eigen::Matrix< T, Eigen::Dynamic, 1 > &x, size_t k, T &lp)
 Return the covariance matrix of the specified dimensionality derived from constraining the specified vector of unconstrained values and increment the specified log probability reference with the log absolute Jacobian determinant.
 
template<typename T >
Eigen::Matrix< T,
+Eigen::Dynamic, 1 > 
stan::prob::cov_matrix_free_lkj (const Eigen::Matrix< T, Eigen::Dynamic, Eigen::Dynamic > &y)
 Return the vector of unconstrained partial correlations and deviations that transform to the specified covariance matrix.
 
+ + + +

+Variables

const double stan::prob::CONSTRAINT_TOLERANCE = 1E-8
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/transform_8hpp_source.html b/doc/api/html/transform_8hpp_source.html new file mode 100644 index 00000000000..d2d46cc536a --- /dev/null +++ b/doc/api/html/transform_8hpp_source.html @@ -0,0 +1,1073 @@ + + + + + +Stan: src/stan/prob/transform.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
transform.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__PROB__TRANSFORM_HPP__
+
2 #define __STAN__PROB__TRANSFORM_HPP__
+
3 
+
4 #include <cmath>
+
5 #include <cstddef>
+
6 #include <limits>
+
7 #include <stdexcept>
+
8 #include <sstream>
+
9 #include <vector>
+
10 #include <boost/multi_array.hpp>
+
11 #include <boost/throw_exception.hpp>
+
12 #include <boost/math/tools/promotion.hpp>
+ +
14 #include <stan/math.hpp>
+
15 #include <stan/math/matrix.hpp>
+
16 #include <stan/math/matrix/sum.hpp>
+ + + +
20 
+ +
22 
+
23 namespace stan {
+
24 
+
25  namespace prob {
+
26 
+
27 
+
28  const double CONSTRAINT_TOLERANCE = 1E-8;
+
29 
+
30 
+
43  template<typename T>
+
44  bool
+
45  factor_cov_matrix(Eigen::Array<T,Eigen::Dynamic,1>& CPCs,
+
46  Eigen::Array<T,Eigen::Dynamic,1>& sds,
+
47  const Eigen::Matrix<T,Eigen::Dynamic,Eigen::Dynamic>& Sigma) {
+
48 
+
49  size_t K = sds.rows();
+
50 
+
51  sds = Sigma.diagonal().array();
+
52  if( (sds <= 0.0).any() ) return false;
+
53  sds = sds.sqrt();
+
54 
+
55  Eigen::DiagonalMatrix<T,Eigen::Dynamic> D(K);
+
56  D.diagonal() = sds.inverse();
+
57  sds = sds.log(); // now unbounded
+
58 
+
59  Eigen::Matrix<T,Eigen::Dynamic,Eigen::Dynamic> R = D * Sigma * D;
+
60  // to hopefully prevent pivoting due to floating point error
+
61  R.diagonal().setOnes();
+
62  Eigen::LDLT<Eigen::Matrix<T,Eigen::Dynamic,Eigen::Dynamic> > ldlt;
+
63  ldlt = R.ldlt();
+
64  if (!ldlt.isPositive())
+
65  return false;
+
66  Eigen::Matrix<T,Eigen::Dynamic,Eigen::Dynamic> U = ldlt.matrixU();
+
67 
+
68  size_t position = 0;
+
69  size_t pull = K - 1;
+
70 
+
71  Eigen::Array<T,1,Eigen::Dynamic> temp = U.row(0).tail(pull);
+
72 
+
73  CPCs.head(pull) = temp;
+
74 
+
75  Eigen::Array<T,Eigen::Dynamic,1> acc(K);
+
76  acc(0) = -0.0;
+
77  acc.tail(pull) = 1.0 - temp.square();
+
78  for(size_t i = 1; i < (K - 1); i++) {
+
79  position += pull;
+
80  pull--;
+
81  temp = U.row(i).tail(pull);
+
82  temp /= sqrt(acc.tail(pull) / acc(i));
+
83  CPCs.segment(position, pull) = temp;
+
84  acc.tail(pull) *= 1.0 - temp.square();
+
85  }
+
86  CPCs = 0.5 * ( (1.0 + CPCs) / (1.0 - CPCs) ).log(); // now unbounded
+
87  return true;
+
88  }
+
89 
+
90  // MATRIX TRANSFORMS +/- JACOBIANS
+
91 
+
113  template <typename T>
+
114  Eigen::Matrix<T,Eigen::Dynamic,Eigen::Dynamic>
+
115  read_corr_L(const Eigen::Array<T,Eigen::Dynamic,1>& CPCs, // on (-1,1)
+
116  const size_t K) {
+
117  Eigen::Array<T,Eigen::Dynamic,1> temp;
+
118  Eigen::Array<T,Eigen::Dynamic,1> acc(K-1);
+
119  acc.setOnes();
+
120  // Cholesky factor of correlation matrix
+
121  Eigen::Array<T,Eigen::Dynamic,Eigen::Dynamic> L(K,K);
+
122  L.setZero();
+
123 
+
124  size_t position = 0;
+
125  size_t pull = K - 1;
+
126 
+
127  L(0,0) = 1.0;
+
128  L.col(0).tail(pull) = temp = CPCs.head(pull);
+
129  acc.tail(pull) = 1.0 - temp.square();
+
130  for(size_t i = 1; i < (K - 1); i++) {
+
131  position += pull;
+
132  pull--;
+
133  temp = CPCs.segment(position, pull);
+
134  L(i,i) = sqrt(acc(i-1));
+
135  L.col(i).tail(pull) = temp * acc.tail(pull).sqrt();
+
136  acc.tail(pull) *= 1.0 - temp.square();
+
137  }
+
138  L(K-1,K-1) = sqrt(acc(K-2));
+
139  return L.matrix();
+
140  }
+
141 
+
155  template <typename T>
+
156  Eigen::Matrix<T,Eigen::Dynamic,Eigen::Dynamic>
+
157  read_corr_matrix(const Eigen::Array<T,Eigen::Dynamic,1>& CPCs,
+
158  const size_t K) {
+
159  Eigen::Matrix<T,Eigen::Dynamic,Eigen::Dynamic> L
+
160  = read_corr_L(CPCs, K);
+ + +
163  }
+
164 
+
191  template <typename T>
+
192  Eigen::Matrix<T,Eigen::Dynamic,Eigen::Dynamic>
+
193  read_corr_L(const Eigen::Array<T,Eigen::Dynamic,1>& CPCs,
+
194  const size_t K,
+
195  T& log_prob) {
+
196 
+
197  size_t k = 0;
+
198  size_t i = 0;
+
199  T log_1cpc2;
+
200  double lead = K - 2.0;
+
201  // no need to abs() because this Jacobian determinant
+
202  // is strictly positive (and triangular)
+
203  // skip last row (odd indexing) because it adds nothing by design
+ +
205  for (size_type j = 0;
+
206  j < (CPCs.rows() - 1);
+
207  ++j) {
+
208  using stan::math::log1m;
+
209  using stan::math::square;
+
210  log_1cpc2 = log1m(square(CPCs[j]));
+
211  // derivative of correlation wrt CPC
+
212  log_prob += lead / 2.0 * log_1cpc2;
+
213  i++;
+
214  if (i > K) {
+
215  k++;
+
216  i = k + 1;
+
217  lead = K - k - 1.0;
+
218  }
+
219  }
+
220  return read_corr_L(CPCs, K);
+
221  }
+
222 
+
241  template <typename T>
+
242  Eigen::Matrix<T,Eigen::Dynamic,Eigen::Dynamic>
+
243  read_corr_matrix(const Eigen::Array<T,Eigen::Dynamic,1>& CPCs,
+
244  const size_t K,
+
245  T& log_prob) {
+
246 
+
247  Eigen::Matrix<T,Eigen::Dynamic,Eigen::Dynamic> L
+
248  = read_corr_L(CPCs, K, log_prob);
+ + +
251  }
+
252 
+
263  template <typename T>
+
264  Eigen::Matrix<T,Eigen::Dynamic,Eigen::Dynamic>
+
265  read_cov_L(const Eigen::Array<T,Eigen::Dynamic,1>& CPCs,
+
266  const Eigen::Array<T,Eigen::Dynamic,1>& sds,
+
267  T& log_prob) {
+
268  size_t K = sds.rows();
+
269  // adjust due to transformation from correlations to covariances
+
270  log_prob += (sds.log().sum() + stan::math::LOG_2) * K;
+
271  return sds.matrix().asDiagonal() * read_corr_L(CPCs, K, log_prob);
+
272  }
+
273 
+
283  template <typename T>
+
284  Eigen::Matrix<T,Eigen::Dynamic,Eigen::Dynamic>
+
285  read_cov_matrix(const Eigen::Array<T,Eigen::Dynamic,1>& CPCs,
+
286  const Eigen::Array<T,Eigen::Dynamic,1>& sds,
+
287  T& log_prob) {
+
288 
+
289  Eigen::Matrix<T,Eigen::Dynamic,Eigen::Dynamic> L
+
290  = read_cov_L(CPCs, sds, log_prob);
+ + +
293  }
+
294 
+
302  template<typename T>
+
303  Eigen::Matrix<T,Eigen::Dynamic,Eigen::Dynamic>
+
304  read_cov_matrix(const Eigen::Array<T,Eigen::Dynamic,1>& CPCs,
+
305  const Eigen::Array<T,Eigen::Dynamic,1>& sds) {
+
306 
+
307  size_t K = sds.rows();
+
308  Eigen::DiagonalMatrix<T,Eigen::Dynamic> D(K);
+
309  D.diagonal() = sds;
+
310  Eigen::Matrix<T,Eigen::Dynamic,Eigen::Dynamic> L
+
311  = D * read_corr_L(CPCs, K);
+ + +
314  }
+
315 
+
316 
+
326  template<typename T>
+
327  const Eigen::Array<T,Eigen::Dynamic,1>
+
328  make_nu(const T eta, const size_t K) {
+
329 
+
330  Eigen::Array<T,Eigen::Dynamic,1> nu(K * (K - 1) / 2);
+
331 
+
332  T alpha = eta + (K - 2.0) / 2.0; // from Lewandowski et. al.
+
333 
+
334  // Best (1978) implies nu = 2 * alpha for the dof in a t
+
335  // distribution that generates a beta variate on (-1,1)
+
336  T alpha2 = 2.0 * alpha;
+
337 
+ +
339  for (size_type j = 0; j < (K - 1); j++) {
+
340  nu(j) = alpha2;
+
341  }
+
342  size_t counter = K - 1;
+
343  for (size_type i = 1; i < (K - 1); i++) {
+
344  alpha -= 0.5;
+
345  alpha2 = 2.0 * alpha;
+
346  for (size_type j = i + 1; j < K; j++) {
+
347  nu(counter) = alpha2;
+
348  counter++;
+
349  }
+
350  }
+
351  return nu;
+
352  }
+
353 
+
354 
+
355 
+
356 
+
357  // IDENTITY
+
358 
+
371  template <typename T>
+
372  inline
+ +
374  return x;
+
375  }
+
376 
+
390  template <typename T>
+
391  inline
+
392  T identity_constrain(const T x, T& /*lp*/) {
+
393  return x;
+
394  }
+
395 
+
407  template <typename T>
+
408  inline
+
409  T identity_free(const T y) {
+
410  return y;
+
411  }
+
412 
+
413 
+
414  // POSITIVE
+
415 
+
426  template <typename T>
+
427  inline
+
428  T positive_constrain(const T x) {
+
429  return exp(x);
+
430  }
+
431 
+
448  template <typename T>
+
449  inline
+
450  T positive_constrain(const T x, T& lp) {
+
451  lp += x;
+
452  return exp(x);
+
453  }
+
454 
+
471  template <typename T>
+
472  inline
+
473  T positive_free(const T y) {
+
474  stan::math::check_positive("stan::prob::positive_free(%1%)", y, "Positive variable");
+
475  return log(y);
+
476  }
+
477 
+
478  // LOWER BOUND
+
479 
+
499  template <typename T, typename TL>
+
500  inline
+
501  T lb_constrain(const T x, const TL lb) {
+
502  if (lb == -std::numeric_limits<double>::infinity())
+
503  return identity_constrain(x);
+
504  return exp(x) + lb;
+
505  }
+
506 
+
523  template <typename T, typename TL>
+
524  inline
+
525  typename boost::math::tools::promote_args<T,TL>::type
+
526  lb_constrain(const T x, const TL lb, T& lp) {
+
527  if (lb == -std::numeric_limits<double>::infinity())
+
528  return identity_constrain(x,lp);
+
529  lp += x;
+
530  return exp(x) + lb;
+
531  }
+
532 
+
548  template <typename T, typename TL>
+
549  inline
+
550  typename boost::math::tools::promote_args<T,TL>::type
+
551  lb_free(const T y, const TL lb) {
+
552  if (lb == -std::numeric_limits<double>::infinity())
+
553  return identity_free(y);
+
554  stan::math::check_greater_or_equal("stan::prob::lb_free(%1%)",
+
555  y, lb, "Lower bounded variable");
+
556  return log(y - lb);
+
557  }
+
558 
+
559 
+
560  // UPPER BOUND
+
561 
+
581  template <typename T, typename TU>
+
582  inline
+
583  typename boost::math::tools::promote_args<T,TU>::type
+
584  ub_constrain(const T x, const TU ub) {
+
585  if (ub == std::numeric_limits<double>::infinity())
+
586  return identity_constrain(x);
+
587  return ub - exp(x);
+
588  }
+
589 
+
613  template <typename T, typename TU>
+
614  inline
+
615  typename boost::math::tools::promote_args<T,TU>::type
+
616  ub_constrain(const T x, const TU ub, T& lp) {
+
617  if (ub == std::numeric_limits<double>::infinity())
+
618  return identity_constrain(x,lp);
+
619  lp += x;
+
620  return ub - exp(x);
+
621  }
+
622 
+
645  template <typename T, typename TU>
+
646  inline
+
647  typename boost::math::tools::promote_args<T,TU>::type
+
648  ub_free(const T y, const TU ub) {
+
649  if (ub == std::numeric_limits<double>::infinity())
+
650  return identity_free(y);
+
651  stan::math::check_less_or_equal("stan::prob::ub_free(%1%)",
+
652  y, ub, "Upper bounded variable");
+
653  return log(ub - y);
+
654  }
+
655 
+
656 
+
657  // LOWER & UPPER BOUNDS
+
658 
+
686  template <typename T, typename TL, typename TU>
+
687  inline
+
688  typename boost::math::tools::promote_args<T,TL,TU>::type
+
689  lub_constrain(const T x, TL lb, TU ub) {
+
690  stan::math::validate_less(lb,ub,"lb","ub","lub_constrain/3");
+
691 
+
692  if (lb == -std::numeric_limits<double>::infinity())
+
693  return ub_constrain(x,ub);
+
694  if (ub == std::numeric_limits<double>::infinity())
+
695  return lb_constrain(x,lb);
+
696 
+
697  T inv_logit_x;
+
698  if (x > 0) {
+
699  T exp_minus_x = exp(-x);
+
700  inv_logit_x = 1.0 / (1.0 + exp_minus_x);
+
701  // Prevent x from reaching one unless it really really should.
+
702  if ((x < std::numeric_limits<double>::infinity())
+
703  && (inv_logit_x == 1))
+
704  inv_logit_x = 1 - 1e-15;
+
705  } else {
+
706  T exp_x = exp(x);
+
707  inv_logit_x = 1.0 - 1.0 / (1.0 + exp_x);
+
708  // Prevent x from reaching zero unless it really really should.
+
709  if ((x > -std::numeric_limits<double>::infinity())
+
710  && (inv_logit_x== 0))
+
711  inv_logit_x = 1e-15;
+
712  }
+
713  return lb + (ub - lb) * inv_logit_x;
+
714  }
+
715 
+
757  template <typename T, typename TL, typename TU>
+
758  typename boost::math::tools::promote_args<T,TL,TU>::type
+
759  lub_constrain(const T x, const TL lb, const TU ub, T& lp) {
+
760  if (!(lb < ub)) {
+
761  std::stringstream s;
+
762  s << "domain error in lub_constrain; lower bound = " << lb
+
763  << " must be strictly less than upper bound = " << ub;
+
764  throw std::domain_error(s.str());
+
765  }
+
766  if (lb == -std::numeric_limits<double>::infinity())
+
767  return ub_constrain(x,ub,lp);
+
768  if (ub == std::numeric_limits<double>::infinity())
+
769  return lb_constrain(x,lb,lp);
+
770  T inv_logit_x;
+
771  if (x > 0) {
+
772  T exp_minus_x = exp(-x);
+
773  inv_logit_x = 1.0 / (1.0 + exp_minus_x);
+
774  lp += log(ub - lb) - x - 2 * log1p(exp_minus_x);
+
775  // Prevent x from reaching one unless it really really should.
+
776  if ((x < std::numeric_limits<double>::infinity())
+
777  && (inv_logit_x == 1))
+
778  inv_logit_x = 1 - 1e-15;
+
779  } else {
+
780  T exp_x = exp(x);
+
781  inv_logit_x = 1.0 - 1.0 / (1.0 + exp_x);
+
782  lp += log(ub - lb) + x - 2 * log1p(exp_x);
+
783  // Prevent x from reaching zero unless it really really should.
+
784  if ((x > -std::numeric_limits<double>::infinity())
+
785  && (inv_logit_x== 0))
+
786  inv_logit_x = 1e-15;
+
787  }
+
788  return lb + (ub - lb) * inv_logit_x;
+
789  }
+
790 
+
821  template <typename T, typename TL, typename TU>
+
822  inline
+
823  typename boost::math::tools::promote_args<T,TL,TU>::type
+
824  lub_free(const T y, TL lb, TU ub) {
+
825  using stan::math::logit;
+
826  stan::math::check_bounded("stan::prob::lub_free(%1%)",
+
827  y, lb, ub, "Bounded variable");
+
828  if (lb == -std::numeric_limits<double>::infinity())
+
829  return ub_free(y,ub);
+
830  if (ub == std::numeric_limits<double>::infinity())
+
831  return lb_free(y,lb);
+
832  return logit((y - lb) / (ub - lb));
+
833  }
+
834 
+
835 
+
836  // PROBABILITY
+
837 
+
851  template <typename T>
+
852  inline
+
853  T prob_constrain(const T x) {
+
854  using stan::math::inv_logit;
+
855  return inv_logit(x);
+
856  }
+
857 
+
879  template <typename T>
+
880  inline
+
881  T prob_constrain(const T x, T& lp) {
+
882  using stan::math::inv_logit;
+
883  using stan::math::log1m;
+
884  T inv_logit_x = inv_logit(x);
+
885  lp += log(inv_logit_x) + log1m(inv_logit_x);
+
886  return inv_logit_x;
+
887  }
+
888 
+
903  template <typename T>
+
904  inline
+
905  T prob_free(const T y) {
+
906  using stan::math::logit;
+
907  stan::math::check_bounded("stan::prob::prob_free(%1%)",
+
908  y, 0, 1, "Probability variable");
+
909  return logit(y);
+
910  }
+
911 
+
912 
+
913  // CORRELATION
+
914 
+
927  template <typename T>
+
928  inline
+
929  T corr_constrain(const T x) {
+
930  return tanh(x);
+
931  }
+
932 
+
945  template <typename T>
+
946  inline
+
947  T corr_constrain(const T x, T& lp) {
+
948  using stan::math::log1m;
+
949  T tanh_x = tanh(x);
+
950  lp += log1m(tanh_x * tanh_x);
+
951  return tanh_x;
+
952  }
+
953 
+
970  template <typename T>
+
971  inline
+
972  T corr_free(const T y) {
+
973  stan::math::check_bounded("stan::prob::lub_free(%1%)",
+
974  y, -1, 1, "Correlation variable");
+
975  return atanh(y);
+
976  }
+
977 
+
978 
+
979  // Unit vector
+
980 
+
989  template <typename T>
+
990  Eigen::Matrix<T,Eigen::Dynamic,1>
+
991  unit_vector_constrain(const Eigen::Matrix<T,Eigen::Dynamic,1>& y) {
+ +
993  int Km1 = y.size();
+
994  Eigen::Matrix<T,Eigen::Dynamic,1> x(Km1 + 1);
+
995  x(0) = 1.0;
+
996  const T half_pi = T(M_PI/2.0);
+
997  for (size_type k = 1; k <= Km1; ++k) {
+
998  T yk_1 = y(k-1) + half_pi;
+
999  T sin_yk_1 = sin(yk_1);
+
1000  x(k) = x(k-1)*sin_yk_1;
+
1001  x(k-1) *= cos(yk_1);
+
1002  }
+
1003  return x;
+
1004  }
+
1005 
+
1015  template <typename T>
+
1016  Eigen::Matrix<T,Eigen::Dynamic,1>
+
1017  unit_vector_constrain(const Eigen::Matrix<T,Eigen::Dynamic,1>& y, T &lp) {
+ +
1019  int Km1 = y.size();
+
1020  Eigen::Matrix<T,Eigen::Dynamic,1> x(Km1 + 1);
+
1021  x(0) = 1.0;
+
1022  const T half_pi = T(M_PI/2.0);
+
1023  for (size_type k = 1; k <= Km1; ++k) {
+
1024  T yk_1 = y(k-1) + half_pi;
+
1025  T sin_yk_1 = sin(yk_1);
+
1026  x(k) = x(k-1)*sin_yk_1;
+
1027  x(k-1) *= cos(yk_1);
+
1028  if (k < Km1)
+
1029  lp += (Km1 - k)*log(fabs(sin_yk_1));
+
1030  }
+
1031  return x;
+
1032  }
+
1033 
+
1034  template <typename T>
+
1035  Eigen::Matrix<T,Eigen::Dynamic,1>
+
1036  unit_vector_free(const Eigen::Matrix<T,Eigen::Dynamic,1>& x) {
+ +
1038  stan::math::check_unit_vector("stan::prob::unit_vector_free(%1%)", x, "Unit vector variable");
+
1039  int Km1 = x.size() - 1;
+
1040  Eigen::Matrix<T,Eigen::Dynamic,1> y(Km1);
+
1041  T sumSq = x(Km1)*x(Km1);
+
1042  const T half_pi = T(M_PI/2.0);
+
1043  for (size_type k = Km1; --k >= 0; ) {
+
1044  y(k) = atan2(sqrt(sumSq),x(k)) - half_pi;
+
1045  sumSq += x(k)*x(k);
+
1046  }
+
1047  return y;
+
1048  }
+
1049 
+
1050  // SIMPLEX
+
1051 
+
1052 
+
1065  template <typename T>
+
1066  Eigen::Matrix<T,Eigen::Dynamic,1>
+
1067  simplex_constrain(const Eigen::Matrix<T,Eigen::Dynamic,1>& y) {
+
1068  // cut & paste simplex_constrain(Eigen::Matrix,T) w/o Jacobian
+ +
1070  using stan::math::logit;
+
1071  using stan::math::inv_logit;
+
1072  using stan::math::log1m;
+
1073  int Km1 = y.size();
+
1074  Eigen::Matrix<T,Eigen::Dynamic,1> x(Km1 + 1);
+
1075  T stick_len(1.0);
+
1076  for (size_type k = 0; k < Km1; ++k) {
+
1077  T z_k(inv_logit(y(k) - log(Km1 - k)));
+
1078  x(k) = stick_len * z_k;
+
1079  stick_len -= x(k);
+
1080  }
+
1081  x(Km1) = stick_len;
+
1082  return x;
+
1083  }
+
1084 
+
1098  template <typename T>
+
1099  Eigen::Matrix<T,Eigen::Dynamic,1>
+
1100  simplex_constrain(const Eigen::Matrix<T,Eigen::Dynamic,1>& y,
+
1101  T& lp) {
+
1102  using stan::math::logit;
+
1103  using stan::math::inv_logit;
+
1104  using stan::math::log1p_exp;
+
1105  using stan::math::log1m;
+ +
1107  int Km1 = y.size(); // K = Km1 + 1
+
1108  Eigen::Matrix<T,Eigen::Dynamic,1> x(Km1 + 1);
+
1109  T stick_len(1.0);
+
1110  for (size_type k = 0; k < Km1; ++k) {
+
1111  double eq_share = -log(Km1 - k); // = logit(1.0/(Km1 + 1 - k));
+
1112  T adj_y_k(y(k) + eq_share);
+
1113  T z_k(inv_logit(adj_y_k));
+
1114  x(k) = stick_len * z_k;
+
1115  lp += log(stick_len);
+
1116  lp -= log1p_exp(-adj_y_k);
+
1117  lp -= log1p_exp(adj_y_k);
+
1118  stick_len -= x(k); // equivalently *= (1 - z_k);
+
1119  }
+
1120  x(Km1) = stick_len; // no Jacobian contrib for last dim
+
1121  return x;
+
1122  }
+
1123 
+
1138  template <typename T>
+
1139  Eigen::Matrix<T,Eigen::Dynamic,1>
+
1140  simplex_free(const Eigen::Matrix<T,Eigen::Dynamic,1>& x) {
+
1141  using stan::math::logit;
+ +
1143  stan::math::check_simplex("stan::prob::simplex_free(%1%)", x, "Simplex variable");
+
1144  int Km1 = x.size() - 1;
+
1145  Eigen::Matrix<T,Eigen::Dynamic,1> y(Km1);
+
1146  T stick_len(x(Km1));
+
1147  for (size_type k = Km1; --k >= 0; ) {
+
1148  stick_len += x(k);
+
1149  T z_k(x(k) / stick_len);
+
1150  y(k) = logit(z_k) + log(Km1 - k);
+
1151  // log(Km-k) = logit(1.0 / (Km1 + 1 - k));
+
1152  }
+
1153  return y;
+
1154  }
+
1155 
+
1156 
+
1157  // ORDERED
+
1158 
+
1168  template <typename T>
+
1169  Eigen::Matrix<T,Eigen::Dynamic,1>
+
1170  ordered_constrain(const Eigen::Matrix<T,Eigen::Dynamic,1>& x) {
+ +
1172  size_type k = x.size();
+
1173  Eigen::Matrix<T,Eigen::Dynamic,1> y(k);
+
1174  if (k == 0)
+
1175  return y;
+
1176  y[0] = x[0];
+
1177  for (size_type i = 1;
+
1178  i < k;
+
1179  ++i)
+
1180  y[i] = y[i-1] + exp(x[i]);
+
1181  return y;
+
1182  }
+
1183 
+
1196  template <typename T>
+
1197  inline
+
1198  Eigen::Matrix<T,Eigen::Dynamic,1>
+
1199  ordered_constrain(const Eigen::Matrix<T,Eigen::Dynamic,1>& x, T& lp) {
+ +
1201  for (size_type i = 1; i < x.size(); ++i)
+
1202  lp += x(i);
+
1203  return ordered_constrain(x);
+
1204  }
+
1205 
+
1206 
+
1207 
+
1221  template <typename T>
+
1222  Eigen::Matrix<T,Eigen::Dynamic,1>
+
1223  ordered_free(const Eigen::Matrix<T,Eigen::Dynamic,1>& y) {
+
1224  stan::math::check_ordered("stan::prob::ordered_free(%1%)",
+
1225  y, "Ordered variable");
+ +
1227  size_type k = y.size();
+
1228  Eigen::Matrix<T,Eigen::Dynamic,1> x(k);
+
1229  if (k == 0)
+
1230  return x;
+
1231  x[0] = y[0];
+
1232  for (size_type i = 1; i < k; ++i)
+
1233  x[i] = log(y[i] - y[i-1]);
+
1234  return x;
+
1235  }
+
1236 
+
1237 
+
1238  // POSITIVE ORDERED
+
1239 
+
1249  template <typename T>
+
1250  Eigen::Matrix<T,Eigen::Dynamic,1>
+
1251  positive_ordered_constrain(const Eigen::Matrix<T,Eigen::Dynamic,1>& x) {
+ +
1253  size_type k = x.size();
+
1254  Eigen::Matrix<T,Eigen::Dynamic,1> y(k);
+
1255  if (k == 0)
+
1256  return y;
+
1257  y[0] = exp(x[0]);
+
1258  for (size_type i = 1;
+
1259  i < k;
+
1260  ++i)
+
1261  y[i] = y[i-1] + exp(x[i]);
+
1262  return y;
+
1263  }
+
1264 
+
1277  template <typename T>
+
1278  inline
+
1279  Eigen::Matrix<T,Eigen::Dynamic,1>
+
1280  positive_ordered_constrain(const Eigen::Matrix<T,Eigen::Dynamic,1>& x, T& lp) {
+ +
1282  for (size_type i = 0; i < x.size(); ++i)
+
1283  lp += x(i);
+
1284  return positive_ordered_constrain(x);
+
1285  }
+
1286 
+
1287 
+
1288 
+
1302  template <typename T>
+
1303  Eigen::Matrix<T,Eigen::Dynamic,1>
+
1304  positive_ordered_free(const Eigen::Matrix<T,Eigen::Dynamic,1>& y) {
+
1305  stan::math::check_positive_ordered("stan::prob::positive_ordered_free(%1%)",
+
1306  y, "Positive ordered variable");
+ +
1308  size_type k = y.size();
+
1309  Eigen::Matrix<T,Eigen::Dynamic,1> x(k);
+
1310  if (k == 0)
+
1311  return x;
+
1312  x[0] = log(y[0]);
+
1313  for (size_type i = 1; i < k; ++i)
+
1314  x[i] = log(y[i] - y[i-1]);
+
1315  return x;
+
1316  }
+
1317 
+
1318 
+
1319  // CHOLESKY FACTOR
+
1320 
+
1332  template <typename T>
+
1333  Eigen::Matrix<T,Eigen::Dynamic,Eigen::Dynamic>
+
1334  cholesky_factor_constrain(const Eigen::Matrix<T,Eigen::Dynamic,1>& x,
+
1335  int M,
+
1336  int N) {
+
1337  using std::exp;
+
1338  if (M < N)
+
1339  throw std::domain_error("cholesky_factor_constrain: num rows must be >= num cols");
+
1340  if (x.size() != ((N * (N + 1)) / 2 + (M - N) * N))
+
1341  throw std::domain_error("cholesky_factor_constrain: x.size() must be (N * (N + 1)) / 2 + (M - N) * N");
+
1342  Eigen::Matrix<T,Eigen::Dynamic,Eigen::Dynamic> y(M,N);
+
1343  T zero(0);
+
1344  int pos = 0;
+
1345  // upper square
+
1346  for (int m = 0; m < N; ++m) {
+
1347  for (int n = 0; n < m; ++n)
+
1348  y(m,n) = x(pos++);
+
1349  y(m,m) = exp(x(pos++));
+
1350  for (int n = m + 1; n < N; ++n)
+
1351  y(m,n) = zero;
+
1352  }
+
1353  // lower rectangle
+
1354  for (int m = N; m < M; ++m)
+
1355  for (int n = 0; n < N; ++n)
+
1356  y(m,n) = x(pos++);
+
1357  return y;
+
1358  }
+
1359 
+
1374  template <typename T>
+
1375  Eigen::Matrix<T,Eigen::Dynamic,Eigen::Dynamic>
+
1376  cholesky_factor_constrain(const Eigen::Matrix<T,Eigen::Dynamic,1>& x,
+
1377  int M,
+
1378  int N,
+
1379  T& lp) {
+
1380  // cut-and-paste from above, so checks twice
+
1381 
+
1382  using stan::math::sum;
+
1383  if (x.size() != ((N * (N + 1)) / 2 + (M - N) * N))
+
1384  throw std::domain_error("cholesky_factor_constrain: x.size() must be (k choose 2) + k");
+
1385  int pos = 0;
+
1386  std::vector<T> log_jacobians(N);
+
1387  for (int n = 0; n < N; ++n) {
+
1388  pos += n;
+
1389  log_jacobians[n] = x(pos++);
+
1390  }
+
1391  lp += sum(log_jacobians); // optimized for autodiff vs. direct lp +=
+
1392  return cholesky_factor_constrain(x,M,N);
+
1393  }
+
1394 
+
1404  template <typename T>
+
1405  Eigen::Matrix<T,Eigen::Dynamic,1>
+
1406  cholesky_factor_free(const Eigen::Matrix<T,Eigen::Dynamic,Eigen::Dynamic>& y) {
+
1407  using std::log;
+
1408  double result;
+
1409  if (!stan::math::check_cholesky_factor("cholesky_factor_free(%1%)",y,"y",&result))
+
1410  throw std::domain_error("cholesky_factor_free: y is not a Cholesky factor");
+
1411  int M = y.rows();
+
1412  int N = y.cols();
+
1413  Eigen::Matrix<T,Eigen::Dynamic,1> x((N * (N + 1)) / 2 + (M - N) * N);
+
1414  int pos = 0;
+
1415  // lower triangle of upper square
+
1416  for (int m = 0; m < N; ++m) {
+
1417  for (int n = 0; n < m; ++n)
+
1418  x(pos++) = y(m,n);
+
1419  // diagonal of upper square
+
1420  x(pos++) = log(y(m,m));
+
1421  }
+
1422  // lower rectangle
+
1423  for (int m = N; m < M; ++m)
+
1424  for (int n = 0; n < N; ++n)
+
1425  x(pos++) = y(m,n);
+
1426  return x;
+
1427  }
+
1428 
+
1429  // CORRELATION MATRIX
+
1454  template <typename T>
+
1455  Eigen::Matrix<T,Eigen::Dynamic,Eigen::Dynamic>
+
1456  corr_matrix_constrain(const Eigen::Matrix<T,Eigen::Dynamic,1>& x,
+ + +
1459  size_type k_choose_2 = (k * (k - 1)) / 2;
+
1460  if (k_choose_2 != x.size())
+
1461  throw std::invalid_argument ("x is not a valid correlation matrix");
+
1462  Eigen::Array<T,Eigen::Dynamic,1> cpcs(k_choose_2);
+
1463  for (size_type i = 0; i < k_choose_2; ++i)
+
1464  cpcs[i] = corr_constrain(x[i]);
+
1465  return read_corr_matrix(cpcs,k);
+
1466  }
+
1467 
+
1487  template <typename T>
+
1488  Eigen::Matrix<T,Eigen::Dynamic,Eigen::Dynamic>
+
1489  corr_matrix_constrain(const Eigen::Matrix<T,Eigen::Dynamic,1>& x,
+ +
1491  T& lp) {
+ +
1493  size_type k_choose_2 = (k * (k - 1)) / 2;
+
1494  if (k_choose_2 != x.size())
+
1495  throw std::invalid_argument ("x is not a valid correlation matrix");
+
1496  Eigen::Array<T,Eigen::Dynamic,1> cpcs(k_choose_2);
+
1497  for (size_type i = 0; i < k_choose_2; ++i)
+
1498  cpcs[i] = corr_constrain(x[i],lp);
+
1499  return read_corr_matrix(cpcs,k,lp);
+
1500  }
+
1501 
+
1522  template <typename T>
+
1523  Eigen::Matrix<T,Eigen::Dynamic,1>
+
1524  corr_matrix_free(const Eigen::Matrix<T,Eigen::Dynamic,Eigen::Dynamic>& y) {
+
1525  typedef typename
+ +
1527  size_type k = y.rows();
+
1528  if (y.cols() != k)
+
1529  throw std::domain_error("y is not a square matrix");
+
1530  if (k == 0)
+
1531  throw std::domain_error("y has no elements");
+
1532  size_type k_choose_2 = (k * (k-1)) / 2;
+
1533  Eigen::Array<T,Eigen::Dynamic,1> x(k_choose_2);
+
1534  Eigen::Array<T,Eigen::Dynamic,1> sds(k);
+
1535  bool successful = factor_cov_matrix(x,sds,y);
+
1536  if (!successful)
+
1537  throw std::runtime_error("factor_cov_matrix failed on y");
+
1538  for (size_type i = 0; i < k; ++i) {
+
1539  // sds on log scale unconstrained
+
1540  if (fabs(sds[i] - 0.0) >= CONSTRAINT_TOLERANCE) {
+
1541  std::stringstream s;
+
1542  s << "all standard deviations must be zero."
+
1543  << " found log(sd[" << i << "])=" << sds[i] << std::endl;
+
1544  BOOST_THROW_EXCEPTION(std::runtime_error(s.str()));
+
1545  }
+
1546  }
+
1547  return x.matrix();
+
1548  }
+
1549 
+
1550 
+
1551  // COVARIANCE MATRIX
+
1552 
+
1565  template <typename T>
+
1566  Eigen::Matrix<T,Eigen::Dynamic,Eigen::Dynamic>
+
1567  cov_matrix_constrain(const Eigen::Matrix<T,Eigen::Dynamic,1>& x,
+ +
1569  using std::exp;
+ +
1571  Eigen::Matrix<T,Eigen::Dynamic,Eigen::Dynamic> L(K,K);
+
1572  if (x.size() != (K * (K + 1)) / 2)
+
1573  throw std::domain_error("x.size() != K + (K choose 2)");
+
1574  int i = 0;
+
1575  for (size_type m = 0; m < K; ++m) {
+
1576  for (int n = 0; n < m; ++n)
+
1577  L(m,n) = x(i++);
+
1578  L(m,m) = exp(x(i++));
+
1579  for (size_type n = m + 1; n < K; ++n)
+
1580  L(m,n) = 0.0;
+
1581  }
+
1582  // FIXME: return multiply_self_transpose
+
1583  return L * L.transpose();
+
1584  }
+
1585 
+
1586 
+
1599  template <typename T>
+
1600  Eigen::Matrix<T,Eigen::Dynamic,Eigen::Dynamic>
+
1601  cov_matrix_constrain(const Eigen::Matrix<T,Eigen::Dynamic,1>& x,
+ +
1603  T& lp) {
+
1604  using std::exp;
+ +
1606  if (x.size() != (K * (K + 1)) / 2)
+
1607  throw std::domain_error("x.size() != K + (K choose 2)");
+
1608  Eigen::Matrix<T,Eigen::Dynamic,Eigen::Dynamic> L(K,K);
+
1609  int i = 0;
+
1610  for (size_type m = 0; m < K; ++m) {
+
1611  for (size_type n = 0; n < m; ++n)
+
1612  L(m,n) = x(i++);
+
1613  L(m,m) = exp(x(i++));
+
1614  for (size_type n = m + 1; n < K; ++n)
+
1615  L(m,n) = 0.0;
+
1616  }
+
1617  // Jacobian for complete transform, including exp() above
+
1618  lp += (K * stan::math::LOG_2); // needless constant; want propto
+
1619  for (int k = 0; k < K; ++k)
+
1620  lp += (K - k + 1) * log(L(k,k)); // only +1 because index from 0
+
1621  return L * L.transpose();
+
1622  // return tri_multiply_transpose(L);
+
1623  }
+
1624 
+
1647  template <typename T>
+
1648  Eigen::Matrix<T,Eigen::Dynamic,1>
+
1649  cov_matrix_free(const Eigen::Matrix<T,Eigen::Dynamic,Eigen::Dynamic>& y) {
+
1650  using std::log;
+
1651  int K = y.rows();
+
1652  if (y.cols() != K)
+
1653  throw std::domain_error("y is not a square matrix");
+
1654  if (K == 0)
+
1655  throw std::domain_error("y has no elements");
+
1656  for (int k = 0; k < K; ++k)
+
1657  if (!(y(k,k) > 0.0))
+
1658  throw std::domain_error("y has non-positive diagonal");
+
1659  Eigen::Matrix<T,Eigen::Dynamic,1> x((K * (K + 1)) / 2);
+
1660  // FIXME: see Eigen LDLT for rank-revealing version -- use that
+
1661  // even if less efficient?
+
1662  Eigen::LLT<Eigen::Matrix<T,Eigen::Dynamic,Eigen::Dynamic> >
+
1663  llt(y.rows());
+
1664  llt.compute(y);
+
1665  Eigen::Matrix<T,Eigen::Dynamic,Eigen::Dynamic> L = llt.matrixL();
+
1666  int i = 0;
+
1667  for (int m = 0; m < K; ++m) {
+
1668  for (int n = 0; n < m; ++n)
+
1669  x(i++) = L(m,n);
+
1670  x(i++) = log(L(m,m));
+
1671  }
+
1672  return x;
+
1673  }
+
1674 
+
1694  template <typename T>
+
1695  Eigen::Matrix<T,Eigen::Dynamic,Eigen::Dynamic>
+
1696  cov_matrix_constrain_lkj(const Eigen::Matrix<T,Eigen::Dynamic,1>& x,
+
1697  size_t k) {
+
1698  size_t k_choose_2 = (k * (k - 1)) / 2;
+
1699  Eigen::Array<T,Eigen::Dynamic,1> cpcs(k_choose_2);
+
1700  int pos = 0;
+
1701  for (size_t i = 0; i < k_choose_2; ++i)
+
1702  cpcs[i] = corr_constrain(x[pos++]);
+
1703  Eigen::Array<T,Eigen::Dynamic,1> sds(k);
+
1704  for (size_t i = 0; i < k; ++i)
+
1705  sds[i] = positive_constrain(x[pos++]);
+
1706  return read_cov_matrix(cpcs, sds);
+
1707  }
+
1708 
+
1733  template <typename T>
+
1734  Eigen::Matrix<T,Eigen::Dynamic,Eigen::Dynamic>
+
1735  cov_matrix_constrain_lkj(const Eigen::Matrix<T,Eigen::Dynamic,1>& x,
+
1736  size_t k,
+
1737  T& lp) {
+
1738  size_t k_choose_2 = (k * (k - 1)) / 2;
+
1739  Eigen::Array<T,Eigen::Dynamic,1> cpcs(k_choose_2);
+
1740  int pos = 0;
+
1741  for (size_t i = 0; i < k_choose_2; ++i)
+
1742  cpcs[i] = corr_constrain(x[pos++], lp);
+
1743  Eigen::Array<T,Eigen::Dynamic,1> sds(k);
+
1744  for (size_t i = 0; i < k; ++i)
+
1745  sds[i] = positive_constrain(x[pos++],lp);
+
1746  return read_cov_matrix(cpcs, sds, lp);
+
1747  }
+
1748 
+
1767  template <typename T>
+
1768  Eigen::Matrix<T,Eigen::Dynamic,1>
+ +
1770  const Eigen::Matrix<T,Eigen::Dynamic,Eigen::Dynamic>& y) {
+
1771  typedef typename
+ +
1773  size_type k = y.rows();
+
1774  if (y.cols() != k)
+
1775  throw std::domain_error("y is not a square matrix");
+
1776  if (k == 0)
+
1777  throw std::domain_error("y has no elements");
+
1778  size_type k_choose_2 = (k * (k-1)) / 2;
+
1779  Eigen::Array<T,Eigen::Dynamic,1> cpcs(k_choose_2);
+
1780  Eigen::Array<T,Eigen::Dynamic,1> sds(k);
+
1781  bool successful = factor_cov_matrix(cpcs,sds,y);
+
1782  if (!successful)
+
1783  throw std::runtime_error ("factor_cov_matrix failed on y");
+
1784  Eigen::Matrix<T,Eigen::Dynamic,1> x(k_choose_2 + k);
+
1785  size_type pos = 0;
+
1786  for (size_type i = 0; i < k_choose_2; ++i)
+
1787  x[pos++] = cpcs[i];
+
1788  for (size_type i = 0; i < k; ++i)
+
1789  x[pos++] = sds[i];
+
1790  return x;
+
1791  }
+
1792 
+
1793  }
+
1794 
+
1795 }
+
1796 
+
1797 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/transpose_8hpp.html b/doc/api/html/transpose_8hpp.html new file mode 100644 index 00000000000..cefd535accd --- /dev/null +++ b/doc/api/html/transpose_8hpp.html @@ -0,0 +1,129 @@ + + + + + +Stan: src/stan/math/matrix/transpose.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
transpose.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::math
 Matrices and templated mathematical functions.
 
+ + + + +

+Functions

template<typename T , int R, int C>
Eigen::Matrix< T, C, R > stan::math::transpose (const Eigen::Matrix< T, R, C > &m)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/transpose_8hpp_source.html b/doc/api/html/transpose_8hpp_source.html new file mode 100644 index 00000000000..44b824deeee --- /dev/null +++ b/doc/api/html/transpose_8hpp_source.html @@ -0,0 +1,125 @@ + + + + + +Stan: src/stan/math/matrix/transpose.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
transpose.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MATH__MATRIX__TRANSPOSE_HPP__
+
2 #define __STAN__MATH__MATRIX__TRANSPOSE_HPP__
+
3 
+ +
5 
+
6 namespace stan {
+
7  namespace math {
+
8 
+
9  template <typename T, int R, int C>
+
10  Eigen::Matrix<T,C,R>
+
11  inline
+
12  transpose(const Eigen::Matrix<T,R,C>& m) {
+
13  return m.transpose();
+
14  }
+
15 
+
16  }
+
17 }
+
18 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/trigamma_8hpp.html b/doc/api/html/trigamma_8hpp.html new file mode 100644 index 00000000000..07145a62b05 --- /dev/null +++ b/doc/api/html/trigamma_8hpp.html @@ -0,0 +1,129 @@ + + + + + +Stan: src/stan/math/functions/trigamma.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
trigamma.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::math
 Matrices and templated mathematical functions.
 
+ + + + +

+Functions

template<typename T >
stan::math::trigamma (T x)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/trigamma_8hpp_source.html b/doc/api/html/trigamma_8hpp_source.html new file mode 100644 index 00000000000..258d8df288e --- /dev/null +++ b/doc/api/html/trigamma_8hpp_source.html @@ -0,0 +1,182 @@ + + + + + +Stan: src/stan/math/functions/trigamma.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
trigamma.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MATH__FUNCTIONS__TRIGAMMA_HPP__
+
2 #define __STAN__MATH__FUNCTIONS__TRIGAMMA_HPP__
+
3 
+
4  // Reference:
+
5  // BE Schneider,
+
6  // Algorithm AS 121:
+
7  // Trigamma Function,
+
8  // Applied Statistics,
+
9  // Volume 27, Number 1, pages 97-99, 1978.
+
10 
+
11 #include <stan/math/constants.hpp>
+
12 
+
13 namespace stan {
+
14 
+
15  namespace math {
+
16 
+
17  template <typename T>
+
18  inline
+
19  T
+
20  trigamma(T x) {
+
21 
+
22  using std::floor;
+
23  using std::sin;
+
24 
+
25  double small = 0.0001;
+
26  double large = 5.0;
+
27  T value;
+
28  T y;
+
29  T z;
+
30 
+
31  //bernoulli numbers
+
32  double b2 = 1.0 / 6.0;
+
33  double b4 = -1.0 / 30.0;
+
34  double b6 = 1.0 / 42.0;
+
35  double b8 = -1.0 / 30.0;
+
36 
+
37  //negative integers and zero return postiive infinity
+
38  //see http://mathworld.wolfram.com/PolygammaFunction.html
+
39  if ((x <= 0.0) && (floor(x) == x)) {
+
40  value = positive_infinity();
+
41  return value;
+
42  }
+
43 
+
44  //negative non-integers: use the reflection formula
+
45  //see http://mathworld.wolfram.com/PolygammaFunction.html
+
46  if((x <= 0) && (floor(x) != x)) {
+
47  value = -trigamma(-x + 1.0) + (pi() / sin(-pi() * x))
+
48  * (pi() / sin(-pi() * x));
+
49  return value;
+
50  }
+
51 
+
52  //small value approximation if x <= small.
+
53  if (x <= small)
+
54  return 1.0 / (x * x);
+
55 
+
56  //use recurrence relation until x >= large
+
57  //see http://mathworld.wolfram.com/PolygammaFunction.html
+
58  z = x;
+
59  value = 0.0;
+
60  while (z < large) {
+
61  value += 1.0 / (z * z);
+
62  z += 1.0;
+
63  }
+
64 
+
65  //asymptotic expansion as a Laurent series if x >= large
+
66  //see http://en.wikipedia.org/wiki/Trigamma_function
+
67  y = 1.0 / (z * z);
+
68  value += 0.5 * y + (1.0 + y * (b2 + y * (b4 + y * (b6 + y * b8)))) / z;
+
69 
+
70  return value;
+
71  }
+
72  }
+
73 }
+
74 
+
75 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/uniform_8hpp.html b/doc/api/html/uniform_8hpp.html new file mode 100644 index 00000000000..82693bf81e1 --- /dev/null +++ b/doc/api/html/uniform_8hpp.html @@ -0,0 +1,158 @@ + + + + + +Stan: src/stan/prob/distributions/univariate/continuous/uniform.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
uniform.hpp File Reference
+
+
+
#include <boost/random/uniform_real_distribution.hpp>
+#include <boost/random/variate_generator.hpp>
+#include <stan/agrad/partials_vari.hpp>
+#include <stan/math/error_handling.hpp>
+#include <stan/math/constants.hpp>
+#include <stan/math/functions/value_of.hpp>
+#include <stan/meta/traits.hpp>
+#include <stan/prob/constants.hpp>
+#include <stan/prob/traits.hpp>
+
+

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::prob
 Templated probability distributions.
 
+ + + + + + + + + + + + + + + + + + + + +

+Functions

template<bool propto, typename T_y , typename T_low , typename T_high >
return_type< T_y, T_low,
+T_high >::type 
stan::prob::uniform_log (const T_y &y, const T_low &alpha, const T_high &beta)
 The log of a uniform density for the given y, lower, and upper bound.
 
template<typename T_y , typename T_low , typename T_high >
return_type< T_y, T_low,
+T_high >::type 
stan::prob::uniform_log (const T_y &y, const T_low &alpha, const T_high &beta)
 
template<typename T_y , typename T_low , typename T_high >
return_type< T_y, T_low,
+T_high >::type 
stan::prob::uniform_cdf (const T_y &y, const T_low &alpha, const T_high &beta)
 
template<typename T_y , typename T_low , typename T_high >
return_type< T_y, T_low,
+T_high >::type 
stan::prob::uniform_cdf_log (const T_y &y, const T_low &alpha, const T_high &beta)
 
template<typename T_y , typename T_low , typename T_high >
return_type< T_y, T_low,
+T_high >::type 
stan::prob::uniform_ccdf_log (const T_y &y, const T_low &alpha, const T_high &beta)
 
template<class RNG >
double stan::prob::uniform_rng (const double alpha, const double beta, RNG &rng)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/uniform_8hpp_source.html b/doc/api/html/uniform_8hpp_source.html new file mode 100644 index 00000000000..84d7bfb8384 --- /dev/null +++ b/doc/api/html/uniform_8hpp_source.html @@ -0,0 +1,473 @@ + + + + + +Stan: src/stan/prob/distributions/univariate/continuous/uniform.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
uniform.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__PROB__DISTRIBUTIONS__UNIVARIATE__CONTINUOUS__UNIFORM_HPP__
+
2 #define __STAN__PROB__DISTRIBUTIONS__UNIVARIATE__CONTINUOUS__UNIFORM_HPP__
+
3 
+
4 #include <boost/random/uniform_real_distribution.hpp>
+
5 #include <boost/random/variate_generator.hpp>
+
6 
+ + + + +
11 #include <stan/meta/traits.hpp>
+
12 #include <stan/prob/constants.hpp>
+
13 #include <stan/prob/traits.hpp>
+
14 
+
15 namespace stan {
+
16 
+
17  namespace prob {
+
18 
+
19  // CONTINUOUS, UNIVARIATE DENSITIES
+
41  template <bool propto,
+
42  typename T_y, typename T_low, typename T_high>
+
43  typename return_type<T_y,T_low,T_high>::type
+
44  uniform_log(const T_y& y, const T_low& alpha, const T_high& beta) {
+
45  static const char* function = "stan::prob::uniform_log(%1%)";
+
46 
+ + + + + +
52 
+
53  // check if any vectors are zero length
+
54  if (!(stan::length(y)
+
55  && stan::length(alpha)
+
56  && stan::length(beta)))
+
57  return 0.0;
+
58 
+
59  // set up return value accumulator
+
60  double logp(0.0);
+
61  if(!check_not_nan(function, y, "Random variable", &logp))
+
62  return logp;
+
63  if (!check_finite(function, alpha, "Lower bound parameter", &logp))
+
64  return logp;
+
65  if (!check_finite(function, beta, "Upper bound parameter", &logp))
+
66  return logp;
+
67  if (!check_greater(function, beta, alpha, "Upper bound parameter",
+
68  &logp))
+
69  return logp;
+
70  if (!(check_consistent_sizes(function,
+
71  y,alpha,beta,
+
72  "Random variable","Lower bound parameter",
+
73  "Upper bound parameter",
+
74  &logp)))
+
75  return logp;
+
76 
+
77 
+
78  // check if no variables are involved and prop-to
+ +
80  return 0.0;
+
81 
+
82  VectorView<const T_y> y_vec(y);
+
83  VectorView<const T_low> alpha_vec(alpha);
+
84  VectorView<const T_high> beta_vec(beta);
+
85  size_t N = max_size(y, alpha, beta);
+
86 
+
87  for (size_t n = 0; n < N; n++) {
+
88  const double y_dbl = value_of(y_vec[n]);
+
89  if (y_dbl < value_of(alpha_vec[n])
+
90  || y_dbl > value_of(beta_vec[n]))
+
91  return LOG_ZERO;
+
92  }
+
93 
+ + +
96  inv_beta_minus_alpha(max_size(alpha,beta));
+
97  for (size_t i = 0; i < max_size(alpha,beta); i++)
+ +
99  inv_beta_minus_alpha[i]
+
100  = 1.0 / (value_of(beta_vec[i]) - value_of(alpha_vec[i]));
+ + +
103  log_beta_minus_alpha(max_size(alpha,beta));
+
104  for (size_t i = 0; i < max_size(alpha,beta); i++)
+ +
106  log_beta_minus_alpha[i]
+
107  = log(value_of(beta_vec[i]) - value_of(alpha_vec[i]));
+
108 
+ +
110  operands_and_partials(y,alpha,beta);
+
111  for (size_t n = 0; n < N; n++) {
+ +
113  logp -= log_beta_minus_alpha[n];
+
114 
+ +
116  operands_and_partials.d_x2[n] += inv_beta_minus_alpha[n];
+ +
118  operands_and_partials.d_x3[n] -= inv_beta_minus_alpha[n];
+
119  }
+
120  return operands_and_partials.to_var(logp);
+
121  }
+
122 
+
123  template <typename T_y, typename T_low, typename T_high>
+
124  inline
+ +
126  uniform_log(const T_y& y, const T_low& alpha, const T_high& beta) {
+
127  return uniform_log<false>(y,alpha,beta);
+
128  }
+
129 
+
130  template <typename T_y, typename T_low, typename T_high>
+ +
132  uniform_cdf(const T_y& y, const T_low& alpha, const T_high& beta) {
+
133  static const char* function = "stan::prob::uniform_cdf(%1%)";
+
134 
+ + + +
138  using stan::math::value_of;
+ +
140 
+
141  // check if any vectors are zero length
+
142  if (!(stan::length(y)
+
143  && stan::length(alpha)
+
144  && stan::length(beta)))
+
145  return 1.0;
+
146 
+
147  // set up return value accumulator
+
148  double cdf(1.0);
+
149  if(!check_not_nan(function, y, "Random variable", &cdf))
+
150  return cdf;
+
151  if (!check_finite(function, alpha, "Lower bound parameter", &cdf))
+
152  return cdf;
+
153  if (!check_finite(function, beta, "Upper bound parameter", &cdf))
+
154  return cdf;
+
155  if (!check_greater(function, beta, alpha, "Upper bound parameter", &cdf))
+
156  return cdf;
+
157  if (!(check_consistent_sizes(function,
+
158  y,alpha,beta,
+
159  "Random variable","Lower bound parameter",
+
160  "Upper bound parameter",
+
161  &cdf)))
+
162  return cdf;
+
163 
+
164  VectorView<const T_y> y_vec(y);
+
165  VectorView<const T_low> alpha_vec(alpha);
+
166  VectorView<const T_high> beta_vec(beta);
+
167  size_t N = max_size(y, alpha, beta);
+
168 
+
169  for (size_t n = 0; n < N; n++) {
+
170  const double y_dbl = value_of(y_vec[n]);
+
171  if (y_dbl < value_of(alpha_vec[n])
+
172  || y_dbl > value_of(beta_vec[n]))
+
173  return 0.0;
+
174  }
+
175 
+ +
177  operands_and_partials(y,alpha,beta);
+
178  for (size_t n = 0; n < N; n++) {
+
179  const double y_dbl = value_of(y_vec[n]);
+
180  const double alpha_dbl = value_of(alpha_vec[n]);
+
181  const double beta_dbl = value_of(beta_vec[n]);
+
182  const double b_min_a = beta_dbl - alpha_dbl;
+
183  const double cdf_ = (y_dbl - alpha_dbl) / b_min_a;
+
184 
+
185  //cdf
+
186  cdf *= cdf_;
+
187 
+
188  //gradients
+ +
190  operands_and_partials.d_x1[n] += 1.0 / b_min_a / cdf_;
+ +
192  operands_and_partials.d_x2[n] += (y_dbl - beta_dbl) / b_min_a
+
193  / b_min_a / cdf_;
+ +
195  operands_and_partials.d_x3[n] -= 1.0 / b_min_a;
+
196  }
+
197 
+ +
199  for (size_t n = 0; n < stan::length(y); ++n)
+
200  operands_and_partials.d_x1[n] *= cdf;
+ +
202  for (size_t n = 0; n < stan::length(alpha); ++n)
+
203  operands_and_partials.d_x2[n] *= cdf;
+ +
205  for (size_t n = 0; n < stan::length(beta); ++n)
+
206  operands_and_partials.d_x3[n] *= cdf;
+
207 
+
208  return operands_and_partials.to_var(cdf);
+
209  }
+
210 
+
211  template <typename T_y, typename T_low, typename T_high>
+ +
213  uniform_cdf_log(const T_y& y, const T_low& alpha, const T_high& beta) {
+
214  static const char* function = "stan::prob::uniform_cdf_log(%1%)";
+
215 
+ + + +
219  using stan::math::value_of;
+ +
221 
+
222  // check if any vectors are zero length
+
223  if (!(stan::length(y)
+
224  && stan::length(alpha)
+
225  && stan::length(beta)))
+
226  return 0.0;
+
227 
+
228  // set up return value accumulator
+
229  double cdf_log(0.0);
+
230  if(!check_not_nan(function, y, "Random variable", &cdf_log))
+
231  return cdf_log;
+
232  if (!check_finite(function, alpha, "Lower bound parameter", &cdf_log))
+
233  return cdf_log;
+
234  if (!check_finite(function, beta, "Upper bound parameter", &cdf_log))
+
235  return cdf_log;
+
236  if (!check_greater(function, beta, alpha, "Upper bound parameter",
+
237  &cdf_log))
+
238  return cdf_log;
+
239  if (!(check_consistent_sizes(function,
+
240  y,alpha,beta,
+
241  "Random variable","Lower bound parameter",
+
242  "Upper bound parameter",
+
243  &cdf_log)))
+
244  return cdf_log;
+
245 
+
246  VectorView<const T_y> y_vec(y);
+
247  VectorView<const T_low> alpha_vec(alpha);
+
248  VectorView<const T_high> beta_vec(beta);
+
249  size_t N = max_size(y, alpha, beta);
+
250 
+ +
252  operands_and_partials(y,alpha,beta);
+
253 
+
254  for (size_t n = 0; n < N; n++) {
+
255  const double y_dbl = value_of(y_vec[n]);
+
256  if (y_dbl < value_of(alpha_vec[n])
+
257  || y_dbl > value_of(beta_vec[n]))
+ +
259  if (y_dbl == value_of(beta_vec[n]))
+
260  return operands_and_partials.to_var(0.0);
+
261  }
+
262 
+
263  for (size_t n = 0; n < N; n++) {
+
264  const double y_dbl = value_of(y_vec[n]);
+
265  const double alpha_dbl = value_of(alpha_vec[n]);
+
266  const double beta_dbl = value_of(beta_vec[n]);
+
267  const double b_min_a = beta_dbl - alpha_dbl;
+
268  const double cdf_log_ = (y_dbl - alpha_dbl) / b_min_a;
+
269 
+
270  //cdf_log
+
271  cdf_log += log(cdf_log_);
+
272 
+
273  //gradients
+ +
275  operands_and_partials.d_x1[n] += 1.0 / b_min_a / cdf_log_;
+ +
277  operands_and_partials.d_x2[n] += (y_dbl - beta_dbl) / b_min_a
+
278  / b_min_a / cdf_log_;
+ +
280  operands_and_partials.d_x3[n] -= 1.0 / b_min_a;
+
281  }
+
282 
+
283  return operands_and_partials.to_var(cdf_log);
+
284  }
+
285 
+
286  template <typename T_y, typename T_low, typename T_high>
+ +
288  uniform_ccdf_log(const T_y& y, const T_low& alpha, const T_high& beta) {
+
289  static const char* function = "stan::prob::uniform_ccdf_log(%1%)";
+
290 
+ + + +
294  using stan::math::value_of;
+ +
296 
+
297  // check if any vectors are zero length
+
298  if (!(stan::length(y)
+
299  && stan::length(alpha)
+
300  && stan::length(beta)))
+
301  return 0.0;
+
302 
+
303  // set up return value accumulator
+
304  double ccdf_log(0.0);
+
305  if(!check_not_nan(function, y, "Random variable", &ccdf_log))
+
306  return ccdf_log;
+
307  if (!check_finite(function, alpha, "Lower bound parameter", &ccdf_log))
+
308  return ccdf_log;
+
309  if (!check_finite(function, beta, "Upper bound parameter", &ccdf_log))
+
310  return ccdf_log;
+
311  if (!check_greater(function, beta, alpha, "Upper bound parameter",
+
312  &ccdf_log))
+
313  return ccdf_log;
+
314  if (!(check_consistent_sizes(function,
+
315  y,alpha,beta,
+
316  "Random variable","Lower bound parameter",
+
317  "Upper bound parameter",
+
318  &ccdf_log)))
+
319  return ccdf_log;
+
320 
+
321  VectorView<const T_y> y_vec(y);
+
322  VectorView<const T_low> alpha_vec(alpha);
+
323  VectorView<const T_high> beta_vec(beta);
+
324  size_t N = max_size(y, alpha, beta);
+
325 
+
326  for (size_t n = 0; n < N; n++) {
+
327  const double y_dbl = value_of(y_vec[n]);
+
328  if (y_dbl < value_of(alpha_vec[n])
+
329  || y_dbl > value_of(beta_vec[n]))
+
330  return 0.0;
+
331  if (y_dbl == value_of(beta_vec[n]))
+
332  return LOG_ZERO;
+
333  }
+
334 
+ +
336  operands_and_partials(y,alpha,beta);
+
337  for (size_t n = 0; n < N; n++) {
+
338  const double y_dbl = value_of(y_vec[n]);
+
339  const double alpha_dbl = value_of(alpha_vec[n]);
+
340  const double beta_dbl = value_of(beta_vec[n]);
+
341  const double b_min_a = beta_dbl - alpha_dbl;
+
342  const double ccdf_log_ = 1.0 - (y_dbl - alpha_dbl) / b_min_a;
+
343 
+
344  //ccdf_log
+
345  ccdf_log += log(ccdf_log_);
+
346 
+
347  //gradients
+ +
349  operands_and_partials.d_x1[n] -= 1.0 / b_min_a / ccdf_log_;
+ +
351  operands_and_partials.d_x2[n] -= (y_dbl - beta_dbl) / b_min_a
+
352  / b_min_a / ccdf_log_;
+ +
354  operands_and_partials.d_x3[n] += (y_dbl - alpha_dbl) / b_min_a
+
355  / b_min_a / ccdf_log_;
+
356  }
+
357 
+
358  return operands_and_partials.to_var(ccdf_log);
+
359  }
+
360 
+
361  template <class RNG>
+
362  inline double
+
363  uniform_rng(const double alpha,
+
364  const double beta,
+
365  RNG& rng) {
+
366  using boost::variate_generator;
+
367  using boost::random::uniform_real_distribution;
+
368 
+
369  static const char* function = "stan::prob::uniform_rng(%1%)";
+
370 
+ + +
373 
+
374  if (!check_finite(function, alpha, "Lower bound parameter"))
+
375  return 0;
+
376  if (!check_finite(function, beta, "Upper bound parameter"))
+
377  return 0;
+
378  if (!check_greater(function, beta, alpha, "Upper bound parameter"))
+
379  return 0;
+
380 
+
381  variate_generator<RNG&, uniform_real_distribution<> >
+
382  uniform_rng(rng, uniform_real_distribution<>(alpha, beta));
+
383  return uniform_rng();
+
384  }
+
385  }
+
386 }
+
387 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/unit__e__metric_8hpp.html b/doc/api/html/unit__e__metric_8hpp.html new file mode 100644 index 00000000000..21c23d502c8 --- /dev/null +++ b/doc/api/html/unit__e__metric_8hpp.html @@ -0,0 +1,131 @@ + + + + + +Stan: src/stan/mcmc/hmc/hamiltonians/unit_e_metric.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
unit_e_metric.hpp File Reference
+
+
+
#include <boost/random/variate_generator.hpp>
+#include <boost/random/normal_distribution.hpp>
+#include <stan/mcmc/hmc/hamiltonians/base_hamiltonian.hpp>
+#include <stan/mcmc/hmc/hamiltonians/unit_e_point.hpp>
+
+

Go to the source code of this file.

+ + + + +

+Classes

class  stan::mcmc::unit_e_metric< M, BaseRNG >
 
+ + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::mcmc
 Markov chain Monte Carlo samplers.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/unit__e__metric_8hpp_source.html b/doc/api/html/unit__e__metric_8hpp_source.html new file mode 100644 index 00000000000..5f5a58ae9bf --- /dev/null +++ b/doc/api/html/unit__e__metric_8hpp_source.html @@ -0,0 +1,167 @@ + + + + + +Stan: src/stan/mcmc/hmc/hamiltonians/unit_e_metric.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
unit_e_metric.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MCMC__UNIT__E__METRIC__BETA__
+
2 #define __STAN__MCMC__UNIT__E__METRIC__BETA__
+
3 
+
4 #include <boost/random/variate_generator.hpp>
+
5 #include <boost/random/normal_distribution.hpp>
+
6 
+ + +
9 
+
10 namespace stan {
+
11 
+
12  namespace mcmc {
+
13 
+
14  // Euclidean manifold with unit metric
+
15  template <typename M, typename BaseRNG>
+
16  class unit_e_metric: public base_hamiltonian<M, unit_e_point, BaseRNG> {
+
17 
+
18  public:
+
19 
+
20  unit_e_metric(M& m, std::ostream* e):
+
21  base_hamiltonian<M, unit_e_point, BaseRNG>(m, e) {};
+ +
23 
+
24  double T(unit_e_point& z) {
+
25  return 0.5 * z.p.squaredNorm();
+
26  }
+
27 
+
28  double tau(unit_e_point& z) { return T(z); }
+
29  double phi(unit_e_point& z) { return this->V(z); }
+
30 
+
31  const Eigen::VectorXd dtau_dq(unit_e_point& z) {
+
32  return Eigen::VectorXd::Zero(this->_model.num_params_r());
+
33  }
+
34 
+
35  const Eigen::VectorXd dtau_dp(unit_e_point& z) {
+
36  return z.p;
+
37  }
+
38 
+
39  const Eigen::VectorXd dphi_dq(unit_e_point& z) {
+
40  return z.g;
+
41  }
+
42 
+
43  void sample_p(unit_e_point& z, BaseRNG& rng) {
+
44 
+
45  boost::variate_generator<BaseRNG&, boost::normal_distribution<> >
+
46  _rand_unit_gaus(rng, boost::normal_distribution<>());
+
47 
+
48  for (int i = 0; i < z.p.size(); ++i)
+
49  z.p(i) = _rand_unit_gaus();
+
50 
+
51  }
+
52 
+
53  };
+
54 
+
55  } // mcmc
+
56 
+
57 } // stan
+
58 
+
59 
+
60 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/unit__e__nuts_8hpp.html b/doc/api/html/unit__e__nuts_8hpp.html new file mode 100644 index 00000000000..56fb56b015b --- /dev/null +++ b/doc/api/html/unit__e__nuts_8hpp.html @@ -0,0 +1,131 @@ + + + + + +Stan: src/stan/mcmc/hmc/nuts/unit_e_nuts.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
unit_e_nuts.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + +

+Classes

class  stan::mcmc::unit_e_nuts< M, BaseRNG >
 
+ + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::mcmc
 Markov chain Monte Carlo samplers.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/unit__e__nuts_8hpp_source.html b/doc/api/html/unit__e__nuts_8hpp_source.html new file mode 100644 index 00000000000..921f151fcb6 --- /dev/null +++ b/doc/api/html/unit__e__nuts_8hpp_source.html @@ -0,0 +1,149 @@ + + + + + +Stan: src/stan/mcmc/hmc/nuts/unit_e_nuts.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
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 
+ + + + +
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 
+ +
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 Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/unit__e__point_8hpp.html b/doc/api/html/unit__e__point_8hpp.html new file mode 100644 index 00000000000..86a609b4cee --- /dev/null +++ b/doc/api/html/unit__e__point_8hpp.html @@ -0,0 +1,128 @@ + + + + + +Stan: src/stan/mcmc/hmc/hamiltonians/unit_e_point.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
unit_e_point.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + +

+Classes

class  stan::mcmc::unit_e_point
 
+ + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::mcmc
 Markov chain Monte Carlo samplers.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/unit__e__point_8hpp_source.html b/doc/api/html/unit__e__point_8hpp_source.html new file mode 100644 index 00000000000..0fd4444c209 --- /dev/null +++ b/doc/api/html/unit__e__point_8hpp_source.html @@ -0,0 +1,132 @@ + + + + + +Stan: src/stan/mcmc/hmc/hamiltonians/unit_e_point.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
unit_e_point.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MCMC__UNIT__E__POINT__BETA__
+
2 #define __STAN__MCMC__UNIT__E__POINT__BETA__
+
3 
+ +
5 
+
6 namespace stan {
+
7 
+
8  namespace mcmc {
+
9 
+
10  // Point in a phase space with a base
+
11  // Euclidean manifold with unit metric
+
12  class unit_e_point: public ps_point {
+
13 
+
14  public:
+
15 
+
16  unit_e_point(int n): ps_point(n) {};
+
17 
+
18  };
+
19 
+
20  } // mcmc
+
21 
+
22 } // stan
+
23 
+
24 
+
25 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/unit__e__static__hmc_8hpp.html b/doc/api/html/unit__e__static__hmc_8hpp.html new file mode 100644 index 00000000000..52bd6d8a9d9 --- /dev/null +++ b/doc/api/html/unit__e__static__hmc_8hpp.html @@ -0,0 +1,131 @@ + + + + + +Stan: src/stan/mcmc/hmc/static/unit_e_static_hmc.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
unit_e_static_hmc.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + +

+Classes

class  stan::mcmc::unit_e_static_hmc< M, BaseRNG >
 
+ + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::mcmc
 Markov chain Monte Carlo samplers.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/unit__e__static__hmc_8hpp_source.html b/doc/api/html/unit__e__static__hmc_8hpp_source.html new file mode 100644 index 00000000000..3dd8f1f8f6d --- /dev/null +++ b/doc/api/html/unit__e__static__hmc_8hpp_source.html @@ -0,0 +1,144 @@ + + + + + +Stan: src/stan/mcmc/hmc/static/unit_e_static_hmc.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
unit_e_static_hmc.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MCMC__UNIT__E__STATIC__HMC__BETA__
+
2 #define __STAN__MCMC__UNIT__E__STATIC__HMC__BETA__
+
3 
+ + + + +
8 
+
9 namespace stan {
+
10 
+
11  namespace mcmc {
+
12 
+
13  // Hamiltonian Monte Carlo on a
+
14  // Euclidean manifold with unit metric
+
15  // and static integration time
+
16 
+
17  template <typename M, class BaseRNG>
+ +
19  unit_e_point,
+
20  unit_e_metric,
+
21  expl_leapfrog,
+
22  BaseRNG> {
+
23 
+
24  public:
+
25 
+
26  unit_e_static_hmc(M &m, BaseRNG& rng, std::ostream* o = &std::cout, std::ostream* e = 0):
+
27  base_static_hmc<M, unit_e_point, unit_e_metric, expl_leapfrog, BaseRNG>(m, rng, o, e)
+
28  { this->_name = "Static HMC with a unit Euclidean metric"; }
+
29 
+
30  };
+
31 
+
32  } // mcmc
+
33 
+
34 } // stan
+
35 
+
36 
+
37 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/univariate_2continuous_8hpp.html b/doc/api/html/univariate_2continuous_8hpp.html new file mode 100644 index 00000000000..bb4d28133cb --- /dev/null +++ b/doc/api/html/univariate_2continuous_8hpp.html @@ -0,0 +1,130 @@ + + + + + +Stan: src/stan/prob/distributions/univariate/continuous.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
continuous.hpp File Reference
+
+
+
#include <stan/prob/distributions/univariate/continuous/beta.hpp>
+#include <stan/prob/distributions/univariate/continuous/cauchy.hpp>
+#include <stan/prob/distributions/univariate/continuous/chi_square.hpp>
+#include <stan/prob/distributions/univariate/continuous/double_exponential.hpp>
+#include <stan/prob/distributions/univariate/continuous/exponential.hpp>
+#include <stan/prob/distributions/univariate/continuous/exp_mod_normal.hpp>
+#include <stan/prob/distributions/univariate/continuous/gamma.hpp>
+#include <stan/prob/distributions/univariate/continuous/gumbel.hpp>
+#include <stan/prob/distributions/univariate/continuous/inv_chi_square.hpp>
+#include <stan/prob/distributions/univariate/continuous/inv_gamma.hpp>
+#include <stan/prob/distributions/univariate/continuous/logistic.hpp>
+#include <stan/prob/distributions/univariate/continuous/lognormal.hpp>
+#include <stan/prob/distributions/univariate/continuous/normal.hpp>
+#include <stan/prob/distributions/univariate/continuous/pareto.hpp>
+#include <stan/prob/distributions/univariate/continuous/rayleigh.hpp>
+#include <stan/prob/distributions/univariate/continuous/scaled_inv_chi_square.hpp>
+#include <stan/prob/distributions/univariate/continuous/skew_normal.hpp>
+#include <stan/prob/distributions/univariate/continuous/student_t.hpp>
+#include <stan/prob/distributions/univariate/continuous/uniform.hpp>
+#include <stan/prob/distributions/univariate/continuous/von_mises.hpp>
+#include <stan/prob/distributions/univariate/continuous/weibull.hpp>
+
+

Go to the source code of this file.

+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/univariate_2continuous_8hpp_source.html b/doc/api/html/univariate_2continuous_8hpp_source.html new file mode 100644 index 00000000000..2687021876e --- /dev/null +++ b/doc/api/html/univariate_2continuous_8hpp_source.html @@ -0,0 +1,134 @@ + + + + + +Stan: src/stan/prob/distributions/univariate/continuous.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
continuous.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__PROB__DISTRIBUTIONS__UNIVARIATE__CONTINUOUS_HPP__
+
2 #define __STAN__PROB__DISTRIBUTIONS__UNIVARIATE__CONTINUOUS_HPP__
+
3 
+ + + + + + + + + + + + + + + + + + + + + +
25 
+
26 
+
27 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/univariate_2discrete_8hpp.html b/doc/api/html/univariate_2discrete_8hpp.html new file mode 100644 index 00000000000..26fc22e2374 --- /dev/null +++ b/doc/api/html/univariate_2discrete_8hpp.html @@ -0,0 +1,116 @@ + + + + + +Stan: src/stan/prob/distributions/univariate/discrete.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
discrete.hpp File Reference
+
+ +
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/univariate_2discrete_8hpp_source.html b/doc/api/html/univariate_2discrete_8hpp_source.html new file mode 100644 index 00000000000..69390eb3ee3 --- /dev/null +++ b/doc/api/html/univariate_2discrete_8hpp_source.html @@ -0,0 +1,119 @@ + + + + + +Stan: src/stan/prob/distributions/univariate/discrete.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
discrete.hpp
+
+ +
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/univariate_8hpp.html b/doc/api/html/univariate_8hpp.html new file mode 100644 index 00000000000..24e9ba5832f --- /dev/null +++ b/doc/api/html/univariate_8hpp.html @@ -0,0 +1,111 @@ + + + + + +Stan: src/stan/prob/distributions/univariate.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
univariate.hpp File Reference
+
+ +
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/univariate_8hpp_source.html b/doc/api/html/univariate_8hpp_source.html new file mode 100644 index 00000000000..eff9ece9402 --- /dev/null +++ b/doc/api/html/univariate_8hpp_source.html @@ -0,0 +1,114 @@ + + + + + +Stan: src/stan/prob/distributions/univariate.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
univariate.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__PROB__DISTRIBUTIONS__UNIVARIATE_HPP__
+
2 #define __STAN__PROB__DISTRIBUTIONS__UNIVARIATE_HPP__
+
3 
+ + +
6 
+
7 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/unvalued__argument_8hpp.html b/doc/api/html/unvalued__argument_8hpp.html new file mode 100644 index 00000000000..88c30b2193e --- /dev/null +++ b/doc/api/html/unvalued__argument_8hpp.html @@ -0,0 +1,130 @@ + + + + + +Stan: src/stan/gm/arguments/unvalued_argument.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
unvalued_argument.hpp File Reference
+
+
+
#include <iostream>
+#include <vector>
+#include <stan/gm/arguments/argument.hpp>
+
+

Go to the source code of this file.

+ + + + +

+Classes

class  stan::gm::unvalued_argument
 
+ + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::gm
 Directed graphical model compiler.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/unvalued__argument_8hpp_source.html b/doc/api/html/unvalued__argument_8hpp_source.html new file mode 100644 index 00000000000..3651b76f9bd --- /dev/null +++ b/doc/api/html/unvalued__argument_8hpp_source.html @@ -0,0 +1,167 @@ + + + + + +Stan: src/stan/gm/arguments/unvalued_argument.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
unvalued_argument.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__GM__ARGUMENTS__UNVALUED__ARGUMENT__BETA__
+
2 #define __STAN__GM__ARGUMENTS__UNVALUED__ARGUMENT__BETA__
+
3 #include <iostream>
+
4 
+
5 #include <vector>
+ +
7 
+
8 namespace stan {
+
9 
+
10  namespace gm {
+
11 
+
12  class unvalued_argument: public argument {
+
13 
+
14  public:
+
15 
+ +
17  : _is_present(false) {}
+
18 
+
19  void print(std::ostream* s, const int depth, const std::string prefix) {}
+
20 
+
21  void print_help(std::ostream* s, const int depth, const bool recurse = false) {
+
22  if (!s)
+
23  return;
+
24 
+
25  std::string indent(indent_width * depth, ' ');
+
26  std::string subindent(indent_width, ' ');
+
27 
+
28  *s << indent << _name << std::endl;
+
29  *s << indent << subindent << _description << std::endl;
+
30  *s << std::endl;
+
31 
+
32  }
+
33 
+
34  bool parse_args(std::vector<std::string>& args, std::ostream* out,
+
35  std::ostream* err, bool& help_flag) {
+
36  if (args.size() == 0)
+
37  return true;
+
38 
+
39  if ((args.back() == "help") || (args.back() == "help-all")) {
+
40  print_help(out, 0);
+
41  help_flag |= true;
+
42  args.clear();
+
43  return true;
+
44  }
+
45 
+
46  _is_present = true;
+
47  return true;
+
48  };
+
49 
+
50  bool is_present() {
+
51  return _is_present;
+
52  }
+
53 
+
54  protected:
+ +
56  };
+
57 
+
58  } // gm
+
59 } // stan
+
60 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/v__vari_8hpp.html b/doc/api/html/v__vari_8hpp.html new file mode 100644 index 00000000000..f928eef5cd6 --- /dev/null +++ b/doc/api/html/v__vari_8hpp.html @@ -0,0 +1,128 @@ + + + + + +Stan: src/stan/agrad/rev/internal/v_vari.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
v_vari.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + +

+Classes

class  stan::agrad::op_v_vari
 
+ + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/v__vari_8hpp_source.html b/doc/api/html/v__vari_8hpp_source.html new file mode 100644 index 00000000000..6ff99be101e --- /dev/null +++ b/doc/api/html/v__vari_8hpp_source.html @@ -0,0 +1,128 @@ + + + + + +Stan: src/stan/agrad/rev/internal/v_vari.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
v_vari.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__REV__INTERNAL__V_VARI_HPP__
+
2 #define __STAN__AGRAD__REV__INTERNAL__V_VARI_HPP__
+
3 
+ +
5 
+
6 namespace stan {
+
7  namespace agrad {
+
8 
+
9  class op_v_vari : public vari {
+
10  protected:
+ +
12  public:
+
13  op_v_vari(double f, vari* avi) :
+
14  vari(f),
+
15  avi_(avi) {
+
16  }
+
17  };
+
18 
+
19  }
+
20 }
+
21 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/validate__column__index_8hpp.html b/doc/api/html/validate__column__index_8hpp.html new file mode 100644 index 00000000000..d900f32f1ee --- /dev/null +++ b/doc/api/html/validate__column__index_8hpp.html @@ -0,0 +1,131 @@ + + + + + +Stan: src/stan/math/matrix/validate_column_index.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
validate_column_index.hpp File Reference
+
+
+
#include <sstream>
+#include <stdexcept>
+#include <stan/math/matrix/Eigen.hpp>
+
+

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::math
 Matrices and templated mathematical functions.
 
+ + + + +

+Functions

template<typename T , int R, int C>
void stan::math::validate_column_index (const Eigen::Matrix< T, R, C > &m, size_t j, const char *msg)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/validate__column__index_8hpp_source.html b/doc/api/html/validate__column__index_8hpp_source.html new file mode 100644 index 00000000000..116a3247354 --- /dev/null +++ b/doc/api/html/validate__column__index_8hpp_source.html @@ -0,0 +1,132 @@ + + + + + +Stan: src/stan/math/matrix/validate_column_index.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
validate_column_index.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MATH__MATRIX__VALIDATE_COLUMN_INDEX_HPP__
+
2 #define __STAN__MATH__MATRIX__VALIDATE_COLUMN_INDEX_HPP__
+
3 
+
4 #include <sstream>
+
5 #include <stdexcept>
+ +
7 
+
8 namespace stan {
+
9  namespace math {
+
10 
+
11  template <typename T, int R, int C>
+
12  void validate_column_index(const Eigen::Matrix<T,R,C>& m,
+
13  size_t j,
+
14  const char* msg) {
+
15  if (j > 0 && j <= static_cast<size_t>(m.cols())) return;
+
16  std::stringstream ss;
+
17  ss << "require 0 < column index <= number of columns in " << msg;
+
18  ss << " found cols()=" << m.cols()
+
19  << "; index j=" << j;
+
20  throw std::domain_error(ss.str());
+
21  }
+
22 
+
23  }
+
24 }
+
25 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/validate__greater_8hpp.html b/doc/api/html/validate__greater_8hpp.html new file mode 100644 index 00000000000..9c015a5aecd --- /dev/null +++ b/doc/api/html/validate__greater_8hpp.html @@ -0,0 +1,130 @@ + + + + + +Stan: src/stan/math/matrix/validate_greater.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
validate_greater.hpp File Reference
+
+
+
#include <sstream>
+#include <stdexcept>
+
+

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::math
 Matrices and templated mathematical functions.
 
+ + + + +

+Functions

template<typename T1 , typename T2 >
void stan::math::validate_greater (const T1 &x, const T2 &y, const char *x_name, const char *y_name, const char *fun_name)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/validate__greater_8hpp_source.html b/doc/api/html/validate__greater_8hpp_source.html new file mode 100644 index 00000000000..5cee6cd1a23 --- /dev/null +++ b/doc/api/html/validate__greater_8hpp_source.html @@ -0,0 +1,133 @@ + + + + + +Stan: src/stan/math/matrix/validate_greater.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
validate_greater.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MATH__MATRIX__VALIDATE_GREATER_HPP__
+
2 #define __STAN__MATH__MATRIX__VALIDATE_GREATER_HPP__
+
3 
+
4 #include <sstream>
+
5 #include <stdexcept>
+
6 
+
7 namespace stan {
+
8  namespace math {
+
9 
+
10  template <typename T1, typename T2>
+
11  inline
+
12  void validate_greater(const T1& x, const T2& y,
+
13  const char* x_name, const char* y_name,
+
14  const char* fun_name) {
+
15  if (x > y) return;
+
16  std::stringstream ss;
+
17  ss << "require " << x_name << " > " << y_name
+
18  << " in " << fun_name
+
19  << "; found " << x_name << "=" << x
+
20  << ", " << y_name << "=" << y;
+
21  throw std::domain_error(ss.str());
+
22  }
+
23 
+
24  }
+
25 }
+
26 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/validate__greater__or__equal_8hpp.html b/doc/api/html/validate__greater__or__equal_8hpp.html new file mode 100644 index 00000000000..a14c37a81d0 --- /dev/null +++ b/doc/api/html/validate__greater__or__equal_8hpp.html @@ -0,0 +1,130 @@ + + + + + +Stan: src/stan/math/matrix/validate_greater_or_equal.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
validate_greater_or_equal.hpp File Reference
+
+
+
#include <sstream>
+#include <stdexcept>
+
+

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::math
 Matrices and templated mathematical functions.
 
+ + + + +

+Functions

template<typename T1 , typename T2 >
void stan::math::validate_greater_or_equal (const T1 &x, const T2 &y, const char *x_name, const char *y_name, const char *fun_name)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/validate__greater__or__equal_8hpp_source.html b/doc/api/html/validate__greater__or__equal_8hpp_source.html new file mode 100644 index 00000000000..8f3dd7cb221 --- /dev/null +++ b/doc/api/html/validate__greater__or__equal_8hpp_source.html @@ -0,0 +1,133 @@ + + + + + +Stan: src/stan/math/matrix/validate_greater_or_equal.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
validate_greater_or_equal.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MATH__MATRIX__VALIDATE_GREATER_OR_EQUAL_HPP__
+
2 #define __STAN__MATH__MATRIX__VALIDATE_GREATER_OR_EQUAL_HPP__
+
3 
+
4 #include <sstream>
+
5 #include <stdexcept>
+
6 
+
7 namespace stan {
+
8  namespace math {
+
9 
+
10  template <typename T1, typename T2>
+
11  inline
+
12  void validate_greater_or_equal(const T1& x, const T2& y,
+
13  const char* x_name, const char* y_name,
+
14  const char* fun_name) {
+
15  if (x >= y) return;
+
16  std::stringstream ss;
+
17  ss << "require " << x_name << " >= " << y_name
+
18  << " in " << fun_name
+
19  << "; found " << x_name << "=" << x
+
20  << ", " << y_name << "=" << y;
+
21  throw std::domain_error(ss.str());
+
22  }
+
23 
+
24  }
+
25 }
+
26 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/validate__less_8hpp.html b/doc/api/html/validate__less_8hpp.html new file mode 100644 index 00000000000..daabdad5f92 --- /dev/null +++ b/doc/api/html/validate__less_8hpp.html @@ -0,0 +1,130 @@ + + + + + +Stan: src/stan/math/matrix/validate_less.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
validate_less.hpp File Reference
+
+
+
#include <sstream>
+#include <stdexcept>
+
+

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::math
 Matrices and templated mathematical functions.
 
+ + + + +

+Functions

template<typename T1 , typename T2 >
void stan::math::validate_less (const T1 &x, const T2 &y, const char *x_name, const char *y_name, const char *fun_name)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/validate__less_8hpp_source.html b/doc/api/html/validate__less_8hpp_source.html new file mode 100644 index 00000000000..2b34f7084a4 --- /dev/null +++ b/doc/api/html/validate__less_8hpp_source.html @@ -0,0 +1,133 @@ + + + + + +Stan: src/stan/math/matrix/validate_less.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
validate_less.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MATH__MATRIX__VALIDATE_LESS_HPP__
+
2 #define __STAN__MATH__MATRIX__VALIDATE_LESS_HPP__
+
3 
+
4 #include <sstream>
+
5 #include <stdexcept>
+
6 
+
7 namespace stan {
+
8  namespace math {
+
9 
+
10  template <typename T1, typename T2>
+
11  inline
+
12  void validate_less(const T1& x, const T2& y,
+
13  const char* x_name, const char* y_name,
+
14  const char* fun_name) {
+
15  if (x < y) return;
+
16  std::stringstream ss;
+
17  ss << "require " << x_name << " < " << y_name
+
18  << " in " << fun_name
+
19  << "; found " << x_name << "=" << x
+
20  << ", " << y_name << "=" << y;
+
21  throw std::domain_error(ss.str());
+
22  }
+
23 
+
24  }
+
25 }
+
26 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/validate__less__or__equal_8hpp.html b/doc/api/html/validate__less__or__equal_8hpp.html new file mode 100644 index 00000000000..bca9a189d55 --- /dev/null +++ b/doc/api/html/validate__less__or__equal_8hpp.html @@ -0,0 +1,130 @@ + + + + + +Stan: src/stan/math/matrix/validate_less_or_equal.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
validate_less_or_equal.hpp File Reference
+
+
+
#include <sstream>
+#include <stdexcept>
+
+

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::math
 Matrices and templated mathematical functions.
 
+ + + + +

+Functions

template<typename T1 , typename T2 >
void stan::math::validate_less_or_equal (const T1 &x, const T2 &y, const char *x_name, const char *y_name, const char *fun_name)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/validate__less__or__equal_8hpp_source.html b/doc/api/html/validate__less__or__equal_8hpp_source.html new file mode 100644 index 00000000000..862f11a3217 --- /dev/null +++ b/doc/api/html/validate__less__or__equal_8hpp_source.html @@ -0,0 +1,133 @@ + + + + + +Stan: src/stan/math/matrix/validate_less_or_equal.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
validate_less_or_equal.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MATH__MATRIX__VALIDATE_LESS_OR_EQUAL_HPP__
+
2 #define __STAN__MATH__MATRIX__VALIDATE_LESS_OR_EQUAL_HPP__
+
3 
+
4 #include <sstream>
+
5 #include <stdexcept>
+
6 
+
7 namespace stan {
+
8  namespace math {
+
9 
+
10  template <typename T1, typename T2>
+
11  inline
+
12  void validate_less_or_equal(const T1& x, const T2& y,
+
13  const char* x_name, const char* y_name,
+
14  const char* fun_name) {
+
15  if (x <= y) return;
+
16  std::stringstream ss;
+
17  ss << "require " << x_name << " <= " << y_name
+
18  << " in " << fun_name
+
19  << "; found " << x_name << "=" << x
+
20  << ", " << y_name << "=" << y;
+
21  throw std::domain_error(ss.str());
+
22  }
+
23 
+
24  }
+
25 }
+
26 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/validate__matching__dims_8hpp.html b/doc/api/html/validate__matching__dims_8hpp.html new file mode 100644 index 00000000000..297a35db257 --- /dev/null +++ b/doc/api/html/validate__matching__dims_8hpp.html @@ -0,0 +1,131 @@ + + + + + +Stan: src/stan/math/matrix/validate_matching_dims.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
validate_matching_dims.hpp File Reference
+
+
+
#include <sstream>
+#include <stdexcept>
+#include <stan/math/matrix/Eigen.hpp>
+
+

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::math
 Matrices and templated mathematical functions.
 
+ + + + +

+Functions

template<typename T1 , int R1, int C1, typename T2 , int R2, int C2>
void stan::math::validate_matching_dims (const Eigen::Matrix< T1, R1, C1 > &x1, const Eigen::Matrix< T2, R2, C2 > &x2, const char *msg)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/validate__matching__dims_8hpp_source.html b/doc/api/html/validate__matching__dims_8hpp_source.html new file mode 100644 index 00000000000..04e4b6d890a --- /dev/null +++ b/doc/api/html/validate__matching__dims_8hpp_source.html @@ -0,0 +1,134 @@ + + + + + +Stan: src/stan/math/matrix/validate_matching_dims.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
validate_matching_dims.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MATH__MATRIX__VALIDATE_MATCHING_DIMS_HPP__
+
2 #define __STAN__MATH__MATRIX__VALIDATE_MATCHING_DIMS_HPP__
+
3 
+
4 #include <sstream>
+
5 #include <stdexcept>
+ +
7 
+
8 namespace stan {
+
9  namespace math {
+
10 
+
11  template <typename T1, int R1, int C1, typename T2, int R2, int C2>
+
12  inline void validate_matching_dims(const Eigen::Matrix<T1,R1,C1>& x1,
+
13  const Eigen::Matrix<T2,R2,C2>& x2,
+
14  const char* msg) {
+
15  if (x1.rows() == x2.rows()
+
16  && x1.cols() == x2.cols()) return;
+
17  std::stringstream ss;
+
18  ss << "error in call to " << msg
+
19  << "; require matching dimensions, but found"
+
20  << " arg1(rows=" << x1.rows() << ",cols=" << x1.cols() << ");"
+
21  << " arg2(rows=" << x2.rows() << ",cols=" << x2.cols() << ")";
+
22  throw std::domain_error(ss.str());
+
23  }
+
24 
+
25  }
+
26 }
+
27 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/validate__matching__sizes_8hpp.html b/doc/api/html/validate__matching__sizes_8hpp.html new file mode 100644 index 00000000000..79c61944d09 --- /dev/null +++ b/doc/api/html/validate__matching__sizes_8hpp.html @@ -0,0 +1,144 @@ + + + + + +Stan: src/stan/math/matrix/validate_matching_sizes.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
validate_matching_sizes.hpp File Reference
+
+
+
#include <sstream>
+#include <stdexcept>
+#include <vector>
+#include <stan/math/matrix/Eigen.hpp>
+
+

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::math
 Matrices and templated mathematical functions.
 
+ + + + + + + + + + + + + + + + +

+Functions

template<typename T1 , typename T2 >
void stan::math::validate_matching_sizes (const std::vector< T1 > &x1, const std::vector< T2 > &x2, const char *msg)
 
template<typename T1 , int R1, int C1, typename T2 , int R2, int C2>
void stan::math::validate_matching_sizes (const Eigen::Matrix< T1, R1, C1 > &x1, const Eigen::Matrix< T2, R2, C2 > &x2, const char *msg)
 
template<typename Derived , typename T2 , int R2, int C2>
void stan::math::validate_matching_sizes (const Eigen::Block< Derived > &x1, const Eigen::Matrix< T2, R2, C2 > &x2, const char *msg)
 
template<typename T1 , int R1, int C1, typename Derived >
void stan::math::validate_matching_sizes (const Eigen::Matrix< T1, R1, C1 > &x1, const Eigen::Block< Derived > &x2, const char *msg)
 
template<typename Derived1 , typename Derived2 >
void stan::math::validate_matching_sizes (const Eigen::Block< Derived1 > &x1, const Eigen::Block< Derived2 > &x2, const char *msg)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/validate__matching__sizes_8hpp_source.html b/doc/api/html/validate__matching__sizes_8hpp_source.html new file mode 100644 index 00000000000..49d91915b2c --- /dev/null +++ b/doc/api/html/validate__matching__sizes_8hpp_source.html @@ -0,0 +1,194 @@ + + + + + +Stan: src/stan/math/matrix/validate_matching_sizes.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
validate_matching_sizes.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MATH__MATRIX__VALIDATE_MATCHING_SIZES_HPP__
+
2 #define __STAN__MATH__MATRIX__VALIDATE_MATCHING_SIZES_HPP__
+
3 
+
4 #include <sstream>
+
5 #include <stdexcept>
+
6 #include <vector>
+ +
8 
+
9 namespace stan {
+
10  namespace math {
+
11 
+
12  template <typename T1, typename T2>
+
13  inline void validate_matching_sizes(const std::vector<T1>& x1,
+
14  const std::vector<T2>& x2,
+
15  const char* msg) {
+
16  if (x1.size() == x2.size()) return;
+
17  std::stringstream ss;
+
18  ss << "error in call to " << msg
+
19  << "; require matching sizes, but found"
+
20  << " arg1(size=" << x1.size() << ");"
+
21  << " arg2(size=" << x2.size() << ");";
+
22  throw std::domain_error(ss.str());
+
23  }
+
24 
+
25  template <typename T1, int R1, int C1, typename T2, int R2, int C2>
+
26  inline void validate_matching_sizes(const Eigen::Matrix<T1,R1,C1>& x1,
+
27  const Eigen::Matrix<T2,R2,C2>& x2,
+
28  const char* msg) {
+
29  if (x1.size() == x2.size()) return;
+
30  std::stringstream ss;
+
31  ss << "error in call to " << msg
+
32  << "; require matching sizes, but found"
+
33  << " arg1(rows=" << x1.rows() << ",cols=" << x1.cols()
+
34  << ",size=" << (x1.rows() * x1.cols()) << ");"
+
35  << " arg2(rows=" << x2.rows() << ",cols=" << x2.cols()
+
36  << ",size=" << (x2.rows() * x2.cols()) << ")";
+
37  throw std::domain_error(ss.str());
+
38  }
+
39 
+
40  template <typename Derived, typename T2, int R2, int C2>
+
41  inline void validate_matching_sizes(const Eigen::Block<Derived>& x1,
+
42  const Eigen::Matrix<T2,R2,C2>& x2,
+
43  const char* msg) {
+
44  if (x1.size() == x2.size()) return;
+
45  std::stringstream ss;
+
46  ss << "error in call to " << msg
+
47  << "; require matching sizes, but found"
+
48  << " arg1(rows=" << x1.rows() << ",cols=" << x1.cols()
+
49  << ",size=" << (x1.rows() * x1.cols()) << ");"
+
50  << " arg2(rows=" << x2.rows() << ",cols=" << x2.cols()
+
51  << ",size=" << (x2.rows() * x2.cols()) << ")";
+
52  throw std::domain_error(ss.str());
+
53  }
+
54 
+
55  template <typename T1, int R1, int C1, typename Derived>
+
56  inline void validate_matching_sizes(const Eigen::Matrix<T1,R1,C1>& x1,
+
57  const Eigen::Block<Derived>& x2,
+
58  const char* msg) {
+
59  if (x1.size() == x2.size()) return;
+
60  std::stringstream ss;
+
61  ss << "error in call to " << msg
+
62  << "; require matching sizes, but found"
+
63  << " arg1(rows=" << x1.rows() << ",cols=" << x1.cols()
+
64  << ",size=" << (x1.rows() * x1.cols()) << ");"
+
65  << " arg2(rows=" << x2.rows() << ",cols=" << x2.cols()
+
66  << ",size=" << (x2.rows() * x2.cols()) << ")";
+
67  throw std::domain_error(ss.str());
+
68  }
+
69 
+
70  template <typename Derived1, typename Derived2>
+
71  inline void validate_matching_sizes(const Eigen::Block<Derived1>& x1,
+
72  const Eigen::Block<Derived2>& x2,
+
73  const char* msg) {
+
74  if (x1.size() == x2.size()) return;
+
75  std::stringstream ss;
+
76  ss << "error in call to " << msg
+
77  << "; require matching sizes, but found"
+
78  << " arg1(rows=" << x1.rows() << ",cols=" << x1.cols()
+
79  << ",size=" << (x1.rows() * x1.cols()) << ");"
+
80  << " arg2(rows=" << x2.rows() << ",cols=" << x2.cols()
+
81  << ",size=" << (x2.rows() * x2.cols()) << ")";
+
82  throw std::domain_error(ss.str());
+
83  }
+
84 
+
85  }
+
86 }
+
87 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/validate__multiplicable_8hpp.html b/doc/api/html/validate__multiplicable_8hpp.html new file mode 100644 index 00000000000..3e9428ddc60 --- /dev/null +++ b/doc/api/html/validate__multiplicable_8hpp.html @@ -0,0 +1,131 @@ + + + + + +Stan: src/stan/math/matrix/validate_multiplicable.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
validate_multiplicable.hpp File Reference
+
+
+
#include <sstream>
+#include <stdexcept>
+#include <stan/math/matrix/Eigen.hpp>
+
+

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::math
 Matrices and templated mathematical functions.
 
+ + + + +

+Functions

template<typename T1 , typename T2 >
void stan::math::validate_multiplicable (const T1 &x1, const T2 &x2, const char *msg)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/validate__multiplicable_8hpp_source.html b/doc/api/html/validate__multiplicable_8hpp_source.html new file mode 100644 index 00000000000..fa783cdb77e --- /dev/null +++ b/doc/api/html/validate__multiplicable_8hpp_source.html @@ -0,0 +1,134 @@ + + + + + +Stan: src/stan/math/matrix/validate_multiplicable.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
validate_multiplicable.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MATH__MATRIX__VALIDATE_MULTIPLICABLE_HPP__
+
2 #define __STAN__MATH__MATRIX__VALIDATE_MULTIPLICABLE_HPP__
+
3 
+
4 #include <sstream>
+
5 #include <stdexcept>
+ +
7 
+
8 namespace stan {
+
9  namespace math {
+
10 
+
11  template <typename T1, typename T2>
+
12  inline void validate_multiplicable(const T1& x1,
+
13  const T2& x2,
+
14  const char* msg) {
+
15  if (x1.cols() == static_cast<typename T1::size_type>(x2.rows()))
+
16  return;
+
17  std::stringstream ss;
+
18  ss << "error in call to " << msg
+
19  << "; require cols of arg1 to match rows of arg2, but found "
+
20  << " arg1 rows=" << x1.rows() << " arg1 cols=" << x1.cols()
+
21  << " arg2 rows=" << x2.rows() << " arg2 cols=" << x2.cols();
+
22  throw std::domain_error(ss.str());
+
23  }
+
24 
+
25  }
+
26 }
+
27 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/validate__non__negative__index_8hpp.html b/doc/api/html/validate__non__negative__index_8hpp.html new file mode 100644 index 00000000000..ca2a644e83e --- /dev/null +++ b/doc/api/html/validate__non__negative__index_8hpp.html @@ -0,0 +1,129 @@ + + + + + +Stan: src/stan/math/error_handling/matrix/validate_non_negative_index.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
validate_non_negative_index.hpp File Reference
+
+
+
#include <sstream>
+#include <stdexcept>
+
+

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::math
 Matrices and templated mathematical functions.
 
+ + + +

+Functions

void stan::math::validate_non_negative_index (const std::string &var_name, const std::string &expr, int val)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/validate__non__negative__index_8hpp_source.html b/doc/api/html/validate__non__negative__index_8hpp_source.html new file mode 100644 index 00000000000..5f6b5354d98 --- /dev/null +++ b/doc/api/html/validate__non__negative__index_8hpp_source.html @@ -0,0 +1,134 @@ + + + + + +Stan: src/stan/math/error_handling/matrix/validate_non_negative_index.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
validate_non_negative_index.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MATH__ERROR_HANDLING__MATRIX__VALIDATE_NON_NEGATIVE_INDEX_HPP__
+
2 #define __STAN__MATH__ERROR_HANDLING__MATRIX__VALIDATE_NON_NEGATIVE_INDEX_HPP__
+
3 
+
4 #include <sstream>
+
5 #include <stdexcept>
+
6 
+
7 namespace stan {
+
8  namespace math {
+
9 
+
10  inline
+
11  void
+
12  validate_non_negative_index(const std::string& var_name,
+
13  const std::string& expr,
+
14  int val) {
+
15  if (val < 0) {
+
16  std::stringstream msg;
+
17  msg << "Found negative dimension size in variable declaration"
+
18  << "; variable=" << var_name
+
19  << "; dimension size expression=" << expr
+
20  << "; expression value=" << val;
+
21  throw std::invalid_argument(msg.str());
+
22  }
+
23  }
+
24 
+
25  }
+
26 }
+
27 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/validate__non__negative__rep_8hpp.html b/doc/api/html/validate__non__negative__rep_8hpp.html new file mode 100644 index 00000000000..03c635ea022 --- /dev/null +++ b/doc/api/html/validate__non__negative__rep_8hpp.html @@ -0,0 +1,131 @@ + + + + + +Stan: src/stan/math/validate_non_negative_rep.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
validate_non_negative_rep.hpp File Reference
+
+
+
#include <stdexcept>
+#include <sstream>
+#include <string>
+
+

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::math
 Matrices and templated mathematical functions.
 
+ + + + +

+Functions

void stan::math::validate_non_negative_rep (int n, const std::string &fun)
 If argument is negative, throw a domain error indicating the function with the specified name.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/validate__non__negative__rep_8hpp_source.html b/doc/api/html/validate__non__negative__rep_8hpp_source.html new file mode 100644 index 00000000000..31170a115dc --- /dev/null +++ b/doc/api/html/validate__non__negative__rep_8hpp_source.html @@ -0,0 +1,131 @@ + + + + + +Stan: src/stan/math/validate_non_negative_rep.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
validate_non_negative_rep.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MATH__VALIDATE_NON_NEGATIVE_REP_HPP__
+
2 #define __STAN__MATH__VALIDATE_NON_NEGATIVE_REP_HPP__
+
3 
+
4 #include <stdexcept>
+
5 #include <sstream>
+
6 #include <string>
+
7 
+
8 namespace stan {
+
9 
+
10  namespace math {
+
11 
+
20  inline void validate_non_negative_rep(int n, const std::string& fun) {
+
21  if (n >= 0) return;
+
22  std::stringstream msg;
+
23  msg << "error in " << fun
+
24  << "; number of replications must be positive"
+
25  << "; found n=" << n;
+
26  throw std::domain_error(msg.str());
+
27  }
+
28 
+
29  }
+
30 }
+
31 
+
32 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/validate__nonzero__size_8hpp.html b/doc/api/html/validate__nonzero__size_8hpp.html new file mode 100644 index 00000000000..4726f9aa3e7 --- /dev/null +++ b/doc/api/html/validate__nonzero__size_8hpp.html @@ -0,0 +1,130 @@ + + + + + +Stan: src/stan/math/matrix/validate_nonzero_size.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
validate_nonzero_size.hpp File Reference
+
+
+
#include <sstream>
+#include <stdexcept>
+
+

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::math
 Matrices and templated mathematical functions.
 
+ + + + +

+Functions

template<typename T >
void stan::math::validate_nonzero_size (const T &x, const char *msg)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/validate__nonzero__size_8hpp_source.html b/doc/api/html/validate__nonzero__size_8hpp_source.html new file mode 100644 index 00000000000..31cdff209e4 --- /dev/null +++ b/doc/api/html/validate__nonzero__size_8hpp_source.html @@ -0,0 +1,128 @@ + + + + + +Stan: src/stan/math/matrix/validate_nonzero_size.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
validate_nonzero_size.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MATH__MATRIX__VALIDATE_NONZERO_SIZE_HPP__
+
2 #define __STAN__MATH__MATRIX__VALIDATE_NONZERO_SIZE_HPP__
+
3 
+
4 #include <sstream>
+
5 #include <stdexcept>
+
6 
+
7 namespace stan {
+
8  namespace math {
+
9 
+
10  template <typename T>
+
11  inline void validate_nonzero_size(const T& x, const char* msg) {
+
12  if (x.size() > 0) return;
+
13  std::stringstream ss;
+
14  ss << "require non-zero size for " << msg
+
15  << "found size=" << x.size();
+
16  throw std::domain_error(ss.str());
+
17  }
+
18 
+
19  }
+
20 }
+
21 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/validate__row__index_8hpp.html b/doc/api/html/validate__row__index_8hpp.html new file mode 100644 index 00000000000..fb3f81fe3e2 --- /dev/null +++ b/doc/api/html/validate__row__index_8hpp.html @@ -0,0 +1,132 @@ + + + + + +Stan: src/stan/math/matrix/validate_row_index.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
validate_row_index.hpp File Reference
+
+
+
#include <sstream>
+#include <stdexcept>
+#include <stan/math/matrix/Eigen.hpp>
+#include <stan/math/matrix/validate_square.hpp>
+
+

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::math
 Matrices and templated mathematical functions.
 
+ + + + +

+Functions

template<typename T , int R, int C>
void stan::math::validate_row_index (const Eigen::Matrix< T, R, C > &m, size_t i, const char *msg)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/validate__row__index_8hpp_source.html b/doc/api/html/validate__row__index_8hpp_source.html new file mode 100644 index 00000000000..a30fc04ed5c --- /dev/null +++ b/doc/api/html/validate__row__index_8hpp_source.html @@ -0,0 +1,133 @@ + + + + + +Stan: src/stan/math/matrix/validate_row_index.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
validate_row_index.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MATH__MATRIX__VALIDATE_ROW_INDEX_HPP__
+
2 #define __STAN__MATH__MATRIX__VALIDATE_ROW_INDEX_HPP__
+
3 
+
4 #include <sstream>
+
5 #include <stdexcept>
+ + +
8 
+
9 namespace stan {
+
10  namespace math {
+
11 
+
12  template <typename T, int R, int C>
+
13  void validate_row_index(const Eigen::Matrix<T,R,C>& m,
+
14  size_t i,
+
15  const char* msg) {
+
16  if (i > 0 && i <= static_cast<size_t>(m.rows())) return;
+
17  std::stringstream ss;
+
18  ss << "require 0 < row index <= number of rows in " << msg;
+
19  ss << " found rows()=" << m.rows()
+
20  << "; index i=" << i;
+
21  throw std::domain_error(ss.str());
+
22  }
+
23 
+
24  }
+
25 }
+
26 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/validate__square_8hpp.html b/doc/api/html/validate__square_8hpp.html new file mode 100644 index 00000000000..2d39b764746 --- /dev/null +++ b/doc/api/html/validate__square_8hpp.html @@ -0,0 +1,131 @@ + + + + + +Stan: src/stan/math/matrix/validate_square.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
validate_square.hpp File Reference
+
+
+
#include <sstream>
+#include <stdexcept>
+#include <stan/math/matrix/Eigen.hpp>
+
+

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::math
 Matrices and templated mathematical functions.
 
+ + + + +

+Functions

template<typename T , int R, int C>
void stan::math::validate_square (const Eigen::Matrix< T, R, C > &x, const char *msg)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/validate__square_8hpp_source.html b/doc/api/html/validate__square_8hpp_source.html new file mode 100644 index 00000000000..bd4f474dc13 --- /dev/null +++ b/doc/api/html/validate__square_8hpp_source.html @@ -0,0 +1,132 @@ + + + + + +Stan: src/stan/math/matrix/validate_square.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
validate_square.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MATH__MATRIX__VALIDATE_SQUARE_HPP__
+
2 #define __STAN__MATH__MATRIX__VALIDATE_SQUARE_HPP__
+
3 
+
4 #include <sstream>
+
5 #include <stdexcept>
+ +
7 
+
8 namespace stan {
+
9  namespace math {
+
10 
+
11  template <typename T, int R, int C>
+
12  void validate_square(const Eigen::Matrix<T,R,C>& x,
+
13  const char* msg) {
+
14  if (x.rows() == x.cols()) return;
+
15  std::stringstream ss;
+
16  ss << "error in call to " << msg
+
17  << "; require square matrix, but found"
+
18  << " rows=" << x.rows()
+
19  << "; cols=" << x.cols();
+
20  throw std::domain_error(ss.str());
+
21  }
+
22 
+
23  }
+
24 }
+
25 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/validate__std__vector__index_8hpp.html b/doc/api/html/validate__std__vector__index_8hpp.html new file mode 100644 index 00000000000..0a34f37c816 --- /dev/null +++ b/doc/api/html/validate__std__vector__index_8hpp.html @@ -0,0 +1,131 @@ + + + + + +Stan: src/stan/math/matrix/validate_std_vector_index.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
validate_std_vector_index.hpp File Reference
+
+
+
#include <sstream>
+#include <stdexcept>
+#include <vector>
+
+

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::math
 Matrices and templated mathematical functions.
 
+ + + + +

+Functions

template<typename T >
void stan::math::validate_std_vector_index (const std::vector< T > &sv, size_t j, const char *msg)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/validate__std__vector__index_8hpp_source.html b/doc/api/html/validate__std__vector__index_8hpp_source.html new file mode 100644 index 00000000000..47d509069ea --- /dev/null +++ b/doc/api/html/validate__std__vector__index_8hpp_source.html @@ -0,0 +1,133 @@ + + + + + +Stan: src/stan/math/matrix/validate_std_vector_index.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
validate_std_vector_index.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MATH__MATRIX__VALIDATE_STD_VECTOR_INDEX_HPP__
+
2 #define __STAN__MATH__MATRIX__VALIDATE_STD_VECTOR_INDEX_HPP__
+
3 
+
4 #include <sstream>
+
5 #include <stdexcept>
+
6 #include <vector>
+
7 
+
8 namespace stan {
+
9  namespace math {
+
10 
+
11  template <typename T>
+
12  void validate_std_vector_index(const std::vector<T>& sv,
+
13  size_t j,
+
14  const char* msg) {
+
15  if (j > 0 && j <= sv.size()) return;
+
16  std::stringstream ss;
+
17  ss << "require 0 < index <= vector size" << msg;
+
18  ss << "; found vector size=" << sv.size()
+
19  << "; index j=" << j;
+
20  throw std::domain_error(ss.str());
+
21  }
+
22 
+
23  }
+
24 }
+
25 
+
26 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/validate__symmetric_8hpp.html b/doc/api/html/validate__symmetric_8hpp.html new file mode 100644 index 00000000000..2d57686e4a7 --- /dev/null +++ b/doc/api/html/validate__symmetric_8hpp.html @@ -0,0 +1,132 @@ + + + + + +Stan: src/stan/math/matrix/validate_symmetric.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
validate_symmetric.hpp File Reference
+
+
+
#include <sstream>
+#include <stdexcept>
+#include <stan/math/matrix/Eigen.hpp>
+#include <stan/math/matrix/validate_square.hpp>
+
+

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::math
 Matrices and templated mathematical functions.
 
+ + + + +

+Functions

template<typename T , int R, int C>
void stan::math::validate_symmetric (const Eigen::Matrix< T, R, C > &x, const char *msg)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/validate__symmetric_8hpp_source.html b/doc/api/html/validate__symmetric_8hpp_source.html new file mode 100644 index 00000000000..9bf65236e22 --- /dev/null +++ b/doc/api/html/validate__symmetric_8hpp_source.html @@ -0,0 +1,140 @@ + + + + + +Stan: src/stan/math/matrix/validate_symmetric.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
validate_symmetric.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MATH__MATRIX__VALIDATE_SYMMETRIC_HPP__
+
2 #define __STAN__MATH__MATRIX__VALIDATE_SYMMETRIC_HPP__
+
3 
+
4 #include <sstream>
+
5 #include <stdexcept>
+ + +
8 
+
9 namespace stan {
+
10  namespace math {
+
11 
+
12  template <typename T, int R, int C>
+
13  void validate_symmetric(const Eigen::Matrix<T,R,C>& x,
+
14  const char* msg) {
+
15  // tolerance = 1E-8
+
16  validate_square(x,msg);
+
17  for (int i = 0; i < x.rows(); ++i) {
+
18  for (int j = 0; j < x.cols(); ++j) {
+
19  if (x(i,j) != x(j,i)) {
+
20  std::stringstream ss;
+
21  ss << "error in call to " << msg
+
22  << "; require symmetric matrix, but found"
+
23  << "; x[" << i << "," << j << "]=" << x(i,j)
+
24  << "; x[" << j << "," << i << "]=" << x(j,i);
+
25  throw std::domain_error(ss.str());
+
26  }
+
27  }
+
28  }
+
29  }
+
30 
+
31  }
+
32 }
+
33 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/validate__vector_8hpp.html b/doc/api/html/validate__vector_8hpp.html new file mode 100644 index 00000000000..318e8d46a61 --- /dev/null +++ b/doc/api/html/validate__vector_8hpp.html @@ -0,0 +1,131 @@ + + + + + +Stan: src/stan/math/matrix/validate_vector.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
validate_vector.hpp File Reference
+
+
+
#include <sstream>
+#include <stdexcept>
+#include <stan/math/matrix/Eigen.hpp>
+
+

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::math
 Matrices and templated mathematical functions.
 
+ + + + +

+Functions

template<typename T , int R, int C>
void stan::math::validate_vector (const Eigen::Matrix< T, R, C > &x, const char *msg)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/validate__vector_8hpp_source.html b/doc/api/html/validate__vector_8hpp_source.html new file mode 100644 index 00000000000..b4c15697902 --- /dev/null +++ b/doc/api/html/validate__vector_8hpp_source.html @@ -0,0 +1,131 @@ + + + + + +Stan: src/stan/math/matrix/validate_vector.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
validate_vector.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MATH__MATRIX__VALIDATE_VECTOR_HPP__
+
2 #define __STAN__MATH__MATRIX__VALIDATE_VECTOR_HPP__
+
3 
+
4 #include <sstream>
+
5 #include <stdexcept>
+ +
7 
+
8 namespace stan {
+
9  namespace math {
+
10 
+
11  template <typename T, int R, int C>
+
12  inline void validate_vector(const Eigen::Matrix<T,R,C>& x,
+
13  const char* msg) {
+
14  if (x.rows() == 1 || x.cols() == 1) return;
+
15  std::stringstream ss;
+
16  ss << "error in " << msg
+
17  << "; require vector, found "
+
18  << " rows=" << x.rows() << "cols=" << x.cols();
+
19  throw std::domain_error(ss.str());
+
20  }
+
21 
+
22  }
+
23 }
+
24 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/valued__argument_8hpp.html b/doc/api/html/valued__argument_8hpp.html new file mode 100644 index 00000000000..bb8352365b8 --- /dev/null +++ b/doc/api/html/valued__argument_8hpp.html @@ -0,0 +1,128 @@ + + + + + +Stan: src/stan/gm/arguments/valued_argument.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
valued_argument.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + +

+Classes

class  stan::gm::valued_argument
 
+ + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::gm
 Directed graphical model compiler.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/valued__argument_8hpp_source.html b/doc/api/html/valued__argument_8hpp_source.html new file mode 100644 index 00000000000..fbc52273486 --- /dev/null +++ b/doc/api/html/valued__argument_8hpp_source.html @@ -0,0 +1,161 @@ + + + + + +Stan: src/stan/gm/arguments/valued_argument.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
valued_argument.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__GM__ARGUMENTS__VALUED__ARGUMENT__BETA__
+
2 #define __STAN__GM__ARGUMENTS__VALUED__ARGUMENT__BETA__
+
3 
+ +
5 
+
6 namespace stan {
+
7 
+
8  namespace gm {
+
9 
+
10  class valued_argument: public argument {
+
11 
+
12  public:
+
13 
+
14  virtual void print(std::ostream* s, const int depth, const std::string prefix) {
+
15  if (!s)
+
16  return;
+
17 
+
18  std::string indent(compute_indent(depth), ' ');
+
19 
+
20  *s << prefix << indent << _name << " = " << print_value();
+
21  if(is_default())
+
22  *s << " (Default)";
+
23  *s << std::endl;
+
24  }
+
25 
+
26  virtual void print_help(std::ostream* s, const int depth, const bool recurse = false) {
+
27  if (!s)
+
28  return;
+
29 
+
30  std::string indent(indent_width * depth, ' ');
+
31  std::string subindent(indent_width, ' ');
+
32 
+
33  *s << indent << _name << "=<" << _value_type << ">" << std::endl;
+
34  *s << indent << subindent << _description << std::endl;
+
35  *s << indent << subindent << "Valid values:" << print_valid() << std::endl;
+
36  *s << indent << subindent << "Defaults to " << _default << std::endl;
+
37  *s << std::endl;
+
38 
+
39  }
+
40 
+
41  virtual std::string print_value() = 0;
+
42  virtual std::string print_valid() = 0;
+
43  virtual bool is_default() = 0;
+
44 
+
45  protected:
+
46 
+
47  std::string _default;
+
48  std::string _value_type;
+
49 
+
50  };
+
51 
+
52  } // gm
+
53 } // stan
+
54 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/var_8hpp.html b/doc/api/html/var_8hpp.html new file mode 100644 index 00000000000..bea046b2a01 --- /dev/null +++ b/doc/api/html/var_8hpp.html @@ -0,0 +1,139 @@ + + + + + +Stan: src/stan/agrad/rev/var.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
var.hpp File Reference
+
+
+
#include <ostream>
+#include <stan/math/matrix/Eigen.hpp>
+#include <stan/agrad/rev/vari.hpp>
+
+

Go to the source code of this file.

+ + + + + +

+Classes

class  stan::agrad::var
 Independent (input) and dependent (output) variables for gradients. More...
 
+ + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+ + + + + +

+Functions

static void stan::agrad::recover_memory ()
 
static void stan::agrad::grad (chainable *vi)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/var_8hpp_source.html b/doc/api/html/var_8hpp_source.html new file mode 100644 index 00000000000..1ffa263277a --- /dev/null +++ b/doc/api/html/var_8hpp_source.html @@ -0,0 +1,253 @@ + + + + + +Stan: src/stan/agrad/rev/var.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
var.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__REV__VAR_HPP__
+
2 #define __STAN__AGRAD__REV__VAR_HPP__
+
3 
+
4 #include <ostream>
+ + +
7 
+
8 namespace stan {
+
9  namespace agrad {
+
10 
+
11  // forward declare
+
12  static void recover_memory();
+
13  static void grad(chainable* vi);
+
14 
+
28  class var {
+
29  public:
+
30 
+
31  // FIXME: doc what this is for
+
32  typedef double Scalar;
+
33 
+
41  vari * vi_;
+
42 
+ +
53  return (vi_ == static_cast<vari*>(0U));
+
54  }
+
55 
+
61  explicit var(vari* vi)
+
62  : vi_(vi)
+
63  { }
+
64 
+
72  var()
+
73  : vi_(static_cast<vari*>(0U))
+
74  { }
+
75 
+
82  var(bool b) :
+
83  vi_(new vari(static_cast<double>(b))) {
+
84  }
+
85 
+
92  var(char c) :
+
93  vi_(new vari(static_cast<double>(c))) {
+
94  }
+
95 
+
102  var(short n) :
+
103  vi_(new vari(static_cast<double>(n))) {
+
104  }
+
105 
+
112  var(unsigned short n) :
+
113  vi_(new vari(static_cast<double>(n))) {
+
114  }
+
115 
+
122  var(int n) :
+
123  vi_(new vari(static_cast<double>(n))) {
+
124  }
+
125 
+
132  var(unsigned int n) :
+
133  vi_(new vari(static_cast<double>(n))) {
+
134  }
+
135 
+
142  var(long int n) :
+
143  vi_(new vari(static_cast<double>(n))) {
+
144  }
+
145 
+
152  var(unsigned long int n) :
+
153  vi_(new vari(static_cast<double>(n))) {
+
154  }
+
155 
+
162  var(unsigned long long n) :
+
163  vi_(new vari(static_cast<double>(n))) {
+
164  }
+
165 
+
172  var(long long n) :
+
173  vi_(new vari(static_cast<double>(n))) {
+
174  }
+
175 
+
182  var(float x) :
+
183  vi_(new vari(static_cast<double>(x))) {
+
184  }
+
185 
+
191  var(double x) :
+
192  vi_(new vari(x)) {
+
193  }
+
194 
+
201  var(long double x) :
+
202  vi_(new vari(static_cast<double>(x))) {
+
203  }
+
204 
+
210  inline double val() const {
+
211  return vi_->val_;
+
212  }
+
213 
+
222  inline double adj() const {
+
223  return vi_->adj_;
+
224  }
+
225 
+
238  void grad(std::vector<var>& x,
+
239  std::vector<double>& g) {
+ +
241  g.resize(x.size());
+
242  for (size_t i = 0; i < x.size(); ++i)
+
243  g[i] = x[i].vi_->adj_;
+
244  recover_memory();
+
245  }
+
246 
+
263  void grad() {
+ +
265  recover_memory();
+
266  }
+
267 
+
268  // POINTER OVERRIDES
+
269 
+
282  inline vari& operator*() {
+
283  return *vi_;
+
284  }
+
285 
+
296  inline vari* operator->() {
+
297  return vi_;
+
298  }
+
299 
+
300  // COMPOUND ASSIGNMENT OPERATORS
+
301 
+
312  inline var& operator+=(const var& b);
+
313 
+
324  inline var& operator+=(const double b);
+
325 
+
337  inline var& operator-=(const var& b);
+
338 
+
350  inline var& operator-=(const double b);
+
351 
+
363  inline var& operator*=(const var& b);
+
364 
+
376  inline var& operator*=(const double b);
+
377 
+
388  inline var& operator/=(const var& b);
+
389 
+
401  inline var& operator/=(const double b);
+
402 
+
411  friend std::ostream& operator<<(std::ostream& os, const var& v) {
+
412  if (v.vi_ == 0)
+
413  return os << "uninitialized";
+
414  return os << v.val() << ':' << v.adj();
+
415  }
+
416  };
+
417 
+
418  }
+
419 }
+
420 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/var__adaptation_8hpp.html b/doc/api/html/var__adaptation_8hpp.html new file mode 100644 index 00000000000..737d7c0fa55 --- /dev/null +++ b/doc/api/html/var__adaptation_8hpp.html @@ -0,0 +1,131 @@ + + + + + +Stan: src/stan/mcmc/var_adaptation.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
var_adaptation.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + +

+Classes

class  stan::mcmc::var_adaptation
 
+ + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::mcmc
 Markov chain Monte Carlo samplers.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/var__adaptation_8hpp_source.html b/doc/api/html/var__adaptation_8hpp_source.html new file mode 100644 index 00000000000..6f57980b632 --- /dev/null +++ b/doc/api/html/var__adaptation_8hpp_source.html @@ -0,0 +1,163 @@ + + + + + +Stan: src/stan/mcmc/var_adaptation.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
var_adaptation.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MCMC__VAR__ADAPTATION__BETA__
+
2 #define __STAN__MCMC__VAR__ADAPTATION__BETA__
+
3 
+
4 #include <vector>
+ +
6 
+ + +
9 
+
10 namespace stan {
+
11 
+
12  namespace mcmc {
+
13 
+ +
15 
+
16  public:
+
17 
+
18  var_adaptation(int n): windowed_adaptation("variance"), _estimator(n) {}
+
19 
+
20  bool learn_variance(Eigen::VectorXd& var, const Eigen::VectorXd& q) {
+
21 
+ +
23 
+
24  if (end_adaptation_window()) {
+
25 
+ +
27 
+ +
29 
+
30  double n = static_cast<double>(_estimator.num_samples());
+
31  var = (n / (n + 5.0)) * var
+
32  + 1e-3 * (5.0 / (n + 5.0)) * Eigen::VectorXd::Ones(var.size());
+
33 
+ +
35 
+ +
37  return true;
+
38 
+
39  }
+
40 
+ +
42  return false;
+
43 
+
44  }
+
45 
+
46  protected:
+
47 
+ +
49 
+
50  };
+
51 
+
52  } // mcmc
+
53 
+
54 } // stan
+
55 
+
56 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/var__context_8hpp.html b/doc/api/html/var__context_8hpp.html new file mode 100644 index 00000000000..534a64e0d86 --- /dev/null +++ b/doc/api/html/var__context_8hpp.html @@ -0,0 +1,132 @@ + + + + + +Stan: src/stan/io/var_context.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
var_context.hpp File Reference
+
+
+
#include <sstream>
+#include <stdexcept>
+#include <string>
+#include <vector>
+
+

Go to the source code of this file.

+ + + + + +

+Classes

class  stan::io::var_context
 A var_reader reads array variables of integer and floating point type by name and dimension. More...
 
+ + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::io
 Input/output utilities.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/var__context_8hpp_source.html b/doc/api/html/var__context_8hpp_source.html new file mode 100644 index 00000000000..65bd4d0b37c --- /dev/null +++ b/doc/api/html/var__context_8hpp_source.html @@ -0,0 +1,294 @@ + + + + + +Stan: src/stan/io/var_context.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
var_context.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__IO__VAR_CONTEXT_HPP__
+
2 #define __STAN__IO__VAR_CONTEXT_HPP__
+
3 
+
4 #include <sstream>
+
5 #include <stdexcept>
+
6 #include <string>
+
7 #include <vector>
+
8 
+
9 namespace stan {
+
10 
+
11  namespace io {
+
12 
+
29  class var_context {
+
30  public:
+
31 
+
41  virtual bool contains_r(const std::string& name) const = 0;
+
42 
+
55  virtual std::vector<double> vals_r(const std::string& name) const = 0;
+
56 
+
65  virtual std::vector<size_t> dims_r(const std::string& name) const = 0;
+
66 
+
75  virtual bool contains_i(const std::string& name) const = 0;
+
76 
+
85  virtual std::vector<int> vals_i(const std::string& name) const = 0;
+
86 
+
95  virtual std::vector<size_t> dims_i(const std::string& name) const = 0;
+
96 
+
103  virtual void names_r(std::vector<std::string>& names) const = 0;
+
104 
+
111  virtual void names_i(std::vector<std::string>& names) const = 0;
+
112 
+
113  void add_vec(std::stringstream& msg,
+
114  const std::vector<size_t>& dims) const {
+
115  msg << '(';
+
116  for (size_t i = 0; i < dims.size(); ++i) {
+
117  if (i > 0) msg << ',';
+
118  msg << dims[i];
+
119  }
+
120  msg << ')';
+
121  }
+
122 
+
123  void validate_dims(const std::string& stage,
+
124  const std::string& name,
+
125  const std::string& base_type,
+
126  const std::vector<size_t>& dims_declared) const {
+
127  bool is_int_type = base_type == "int";
+
128  if (is_int_type) {
+
129  if (!contains_i(name)) {
+
130  std::stringstream msg;
+
131  msg << (contains_r(name)
+
132  ? "int variable contained non-int values"
+
133  : "variable does not exist" )
+
134  << "; processing stage=" << stage
+
135  << "; variable name=" << name
+
136  << "; base type=" << base_type;
+
137  throw std::runtime_error(msg.str());
+
138  }
+
139  } else {
+
140  if (!contains_r(name)) {
+
141  std::stringstream msg;
+
142  msg << "variable does not exist"
+
143  << "; processing stage=" << stage
+
144  << "; variable name=" << name
+
145  << "; base type=" << base_type;
+
146  throw std::runtime_error(msg.str());
+
147  }
+
148  }
+
149  std::vector<size_t> dims = dims_r(name);
+
150  if (dims.size() != dims_declared.size()) {
+
151  std::stringstream msg;
+
152  msg << "mismatch in number dimensions declared and found in context"
+
153  << "; processing stage=" << stage
+
154  << "; variable name=" << name
+
155  << "; dims declared=";
+
156  add_vec(msg,dims_declared);
+
157  msg << "; dims found=";
+
158  add_vec(msg,dims);
+
159  throw std::runtime_error(msg.str());
+
160  }
+
161  for (size_t i = 0; i < dims.size(); ++i) {
+
162  if (dims_declared[i] != dims[i]) {
+
163  std::stringstream msg;
+
164  msg << "mismatch in dimension declared and found in context"
+
165  << "; processing stage=" << stage
+
166  << "; variable name=" << name
+
167  << "; position="
+
168  << i
+
169  << "; dims declared=";
+
170  add_vec(msg,dims_declared);
+
171  msg << "; dims found=";
+
172  add_vec(msg,dims);
+
173  throw std::runtime_error(msg.str());
+
174  }
+
175  }
+
176  }
+
177 
+
178  static std::vector<size_t> to_vec() {
+
179  return std::vector<size_t>();
+
180  }
+
181  static std::vector<size_t> to_vec(size_t n1) {
+
182  std::vector<size_t> v(1);
+
183  v[0] = n1;
+
184  return v;
+
185  }
+
186  static std::vector<size_t> to_vec(size_t n1, size_t n2) {
+
187  std::vector<size_t> v(2);
+
188  v[0] = n1;
+
189  v[1] = n2;
+
190  return v;
+
191  }
+
192  static std::vector<size_t> to_vec(size_t n1, size_t n2,
+
193  size_t n3) {
+
194  std::vector<size_t> v(3);
+
195  v[0] = n1;
+
196  v[1] = n2;
+
197  v[2] = n3;
+
198  return v;
+
199  }
+
200  static std::vector<size_t> to_vec(size_t n1, size_t n2,
+
201  size_t n3, size_t n4) {
+
202  std::vector<size_t> v(4);
+
203  v[0] = n1;
+
204  v[1] = n2;
+
205  v[2] = n3;
+
206  v[3] = n4;
+
207  return v;
+
208  }
+
209  static std::vector<size_t> to_vec(size_t n1, size_t n2,
+
210  size_t n3, size_t n4,
+
211  size_t n5) {
+
212  std::vector<size_t> v(5);
+
213  v[0] = n1;
+
214  v[1] = n2;
+
215  v[2] = n3;
+
216  v[3] = n4;
+
217  v[4] = n5;
+
218  return v;
+
219  }
+
220  static std::vector<size_t> to_vec(size_t n1, size_t n2,
+
221  size_t n3, size_t n4,
+
222  size_t n5, size_t n6) {
+
223  std::vector<size_t> v(6);
+
224  v[0] = n1;
+
225  v[1] = n2;
+
226  v[2] = n3;
+
227  v[3] = n4;
+
228  v[4] = n5;
+
229  v[5] = n6;
+
230  return v;
+
231  }
+
232  static std::vector<size_t> to_vec(size_t n1, size_t n2,
+
233  size_t n3, size_t n4,
+
234  size_t n5, size_t n6,
+
235  size_t n7) {
+
236  std::vector<size_t> v(7);
+
237  v[0] = n1;
+
238  v[1] = n2;
+
239  v[2] = n3;
+
240  v[3] = n4;
+
241  v[4] = n5;
+
242  v[5] = n6;
+
243  v[6] = n7;
+
244  return v;
+
245  }
+
246  static std::vector<size_t> to_vec(size_t n1, size_t n2,
+
247  size_t n3, size_t n4,
+
248  size_t n5, size_t n6,
+
249  size_t n7, size_t n8) {
+
250  std::vector<size_t> v(8);
+
251  v[0] = n1;
+
252  v[1] = n2;
+
253  v[2] = n3;
+
254  v[3] = n4;
+
255  v[4] = n5;
+
256  v[5] = n6;
+
257  v[6] = n7;
+
258  v[7] = n8;
+
259  return v;
+
260  }
+
261  };
+
262 
+
263 
+
264  }
+
265 
+
266 }
+
267 
+
268 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/var__decls__grammar_8hpp.html b/doc/api/html/var__decls__grammar_8hpp.html new file mode 100644 index 00000000000..259c9593874 --- /dev/null +++ b/doc/api/html/var__decls__grammar_8hpp.html @@ -0,0 +1,134 @@ + + + + + +Stan: src/stan/gm/grammars/var_decls_grammar.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
var_decls_grammar.hpp File Reference
+
+
+
#include <string>
+#include <sstream>
+#include <vector>
+#include <boost/spirit/include/qi.hpp>
+#include <stan/gm/ast.hpp>
+#include <stan/gm/grammars/whitespace_grammar.hpp>
+#include <stan/gm/grammars/expression_grammar.hpp>
+
+

Go to the source code of this file.

+ + + + +

+Classes

struct  stan::gm::var_decls_grammar< Iterator >
 
+ + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::gm
 Directed graphical model compiler.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/var__decls__grammar_8hpp_source.html b/doc/api/html/var__decls__grammar_8hpp_source.html new file mode 100644 index 00000000000..f88f27f0a2f --- /dev/null +++ b/doc/api/html/var__decls__grammar_8hpp_source.html @@ -0,0 +1,259 @@ + + + + + +Stan: src/stan/gm/grammars/var_decls_grammar.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
var_decls_grammar.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__GM__PARSER__VAR_DECLS_GRAMMAR__HPP__
+
2 #define __STAN__GM__PARSER__VAR_DECLS_GRAMMAR__HPP__
+
3 
+
4 #include <string>
+
5 #include <sstream>
+
6 #include <vector>
+
7 
+
8 #include <boost/spirit/include/qi.hpp>
+
9 
+
10 #include <stan/gm/ast.hpp>
+ + +
13 
+
14 namespace stan {
+
15 
+
16  namespace gm {
+
17 
+
18  template <typename Iterator>
+ +
20  : boost::spirit::qi::grammar<Iterator,
+
21  boost::spirit::qi::locals<bool>,
+
22  std::vector<var_decl>(bool,var_origin),
+
23  whitespace_grammar<Iterator> > {
+
24 
+ +
26  std::stringstream& error_msgs);
+
27 
+
28  // global info for parses
+ +
30  std::stringstream& error_msgs_;
+
31 
+
32  // grammars
+ +
34 
+ +
36 
+
37  // rules
+
38 
+
39  boost::spirit::qi::rule<Iterator,
+ + + +
43 
+
44  boost::spirit::qi::rule<Iterator,
+ + + +
48 
+
49  boost::spirit::qi::rule<Iterator,
+ + + +
53 
+
54  boost::spirit::qi::rule<Iterator,
+
55  std::vector<expression>(var_origin),
+ + +
58 
+
59  boost::spirit::qi::rule<Iterator,
+ + + +
63 
+
64  boost::spirit::qi::rule<Iterator,
+
65  std::string(),
+ + +
68 
+
69  boost::spirit::qi::rule<Iterator,
+
70  std::string(),
+ + +
73 
+
74  boost::spirit::qi::rule<Iterator,
+ + + +
78 
+
79  boost::spirit::qi::rule<Iterator,
+ + + +
83 
+
84  boost::spirit::qi::rule<Iterator,
+
85  std::vector<expression>(var_origin),
+ + +
88 
+
89  boost::spirit::qi::rule<Iterator,
+ + + +
93 
+
94  boost::spirit::qi::rule<Iterator,
+ + + +
98 
+
99  boost::spirit::qi::rule<Iterator,
+
100  range(var_origin),
+ + +
103 
+
104  boost::spirit::qi::rule<Iterator,
+
105  range(var_origin),
+ + +
108 
+
109  boost::spirit::qi::rule<Iterator,
+
110  range(var_origin),
+ + +
113 
+
114  boost::spirit::qi::rule<Iterator,
+ + + +
118 
+
119  boost::spirit::qi::rule<Iterator,
+ + + +
123 
+
124  boost::spirit::qi::rule<Iterator,
+ + + +
128 
+
129  boost::spirit::qi::rule<Iterator,
+ + + +
133 
+
134  boost::spirit::qi::rule<Iterator,
+
135  boost::spirit::qi::locals<bool>,
+
136  var_decl(bool,var_origin),
+ + +
139 
+
140  boost::spirit::qi::rule<Iterator,
+
141  boost::spirit::qi::locals<bool>,
+
142  std::vector<var_decl>(bool,var_origin),
+ + +
145 
+
146 
+
147  };
+
148 
+
149  }
+
150 }
+
151 
+
152 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/var__decls__grammar__def_8hpp.html b/doc/api/html/var__decls__grammar__def_8hpp.html new file mode 100644 index 00000000000..305f0526489 --- /dev/null +++ b/doc/api/html/var__decls__grammar__def_8hpp.html @@ -0,0 +1,161 @@ + + + + + +Stan: src/stan/gm/grammars/var_decls_grammar_def.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
var_decls_grammar_def.hpp File Reference
+
+
+
#include <boost/spirit/include/qi.hpp>
+#include <boost/spirit/include/phoenix_core.hpp>
+#include <boost/spirit/include/phoenix_function.hpp>
+#include <boost/spirit/include/phoenix_fusion.hpp>
+#include <boost/spirit/include/phoenix_object.hpp>
+#include <boost/spirit/include/phoenix_operator.hpp>
+#include <boost/spirit/include/phoenix_stl.hpp>
+#include <boost/lexical_cast.hpp>
+#include <boost/fusion/include/adapt_struct.hpp>
+#include <boost/fusion/include/std_pair.hpp>
+#include <boost/config/warning_disable.hpp>
+#include <boost/spirit/include/qi_numeric.hpp>
+#include <stan/gm/ast.hpp>
+#include <stan/gm/grammars/var_decls_grammar.hpp>
+#include <stan/gm/grammars/common_adaptors_def.hpp>
+
+

Go to the source code of this file.

+ + + + +

+Functions

 BOOST_FUSION_ADAPT_STRUCT (stan::gm::int_var_decl,(stan::gm::range, range_)(std::string, name_)(std::vector< stan::gm::expression >, dims_)) BOOST_FUSION_ADAPT_STRUCT(stan
 
+

Function Documentation

+ +
+
+ + + + + + + + + + + + + + + + + + +
BOOST_FUSION_ADAPT_STRUCT (stan::gm::int_var_decl ,
(stan::gm::range, range_)(std::string, name_)(std::vector< stan::gm::expression >, dims_)  
)
+
+ +

Definition at line 22 of file var_decls_grammar_def.hpp.

+ +
+
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/var__decls__grammar__def_8hpp_source.html b/doc/api/html/var__decls__grammar__def_8hpp_source.html new file mode 100644 index 00000000000..4cb6d5b1973 --- /dev/null +++ b/doc/api/html/var__decls__grammar__def_8hpp_source.html @@ -0,0 +1,1017 @@ + + + + + +Stan: src/stan/gm/grammars/var_decls_grammar_def.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
var_decls_grammar_def.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__GM__PARSER__VAR_DECLS_GRAMMAR_DEF__HPP__
+
2 #define __STAN__GM__PARSER__VAR_DECLS_GRAMMAR_DEF__HPP__
+
3 
+
4 #include <boost/spirit/include/qi.hpp>
+
5 // FIXME: get rid of unused include
+
6 #include <boost/spirit/include/phoenix_core.hpp>
+
7 #include <boost/spirit/include/phoenix_function.hpp>
+
8 #include <boost/spirit/include/phoenix_fusion.hpp>
+
9 #include <boost/spirit/include/phoenix_object.hpp>
+
10 #include <boost/spirit/include/phoenix_operator.hpp>
+
11 #include <boost/spirit/include/phoenix_stl.hpp>
+
12 
+
13 #include <boost/lexical_cast.hpp>
+
14 #include <boost/fusion/include/adapt_struct.hpp>
+
15 #include <boost/fusion/include/std_pair.hpp>
+
16 #include <boost/config/warning_disable.hpp>
+
17 #include <boost/spirit/include/qi_numeric.hpp>
+
18 #include <stan/gm/ast.hpp>
+ + +
21 
+ +
23  (stan::gm::range, range_)
+
24  (std::string, name_)
+
25  (std::vector<stan::gm::expression>, dims_) )
+
26 
+
27 BOOST_FUSION_ADAPT_STRUCT(stan::gm::double_var_decl,
+
28  (stan::gm::range, range_)
+
29  (std::string, name_)
+
30  (std::vector<stan::gm::expression>, dims_) )
+
31 
+
32 BOOST_FUSION_ADAPT_STRUCT(stan::gm::vector_var_decl,
+
33  (stan::gm::range, range_)
+
34  (stan::gm::expression, M_)
+
35  (std::string, name_)
+
36  (std::vector<stan::gm::expression>, dims_) )
+
37 
+
38 BOOST_FUSION_ADAPT_STRUCT(stan::gm::row_vector_var_decl,
+
39  (stan::gm::range, range_)
+
40  (stan::gm::expression, N_)
+
41  (std::string, name_)
+
42  (std::vector<stan::gm::expression>, dims_) )
+
43 
+
44 BOOST_FUSION_ADAPT_STRUCT(stan::gm::matrix_var_decl,
+
45  (stan::gm::range, range_)
+
46  (stan::gm::expression, M_)
+
47  (stan::gm::expression, N_)
+
48  (std::string, name_)
+
49  (std::vector<stan::gm::expression>, dims_) )
+
50 
+
51 BOOST_FUSION_ADAPT_STRUCT(stan::gm::unit_vector_var_decl,
+
52  (stan::gm::expression, K_)
+
53  (std::string, name_)
+
54  (std::vector<stan::gm::expression>, dims_) )
+
55 
+
56 BOOST_FUSION_ADAPT_STRUCT(stan::gm::simplex_var_decl,
+
57  (stan::gm::expression, K_)
+
58  (std::string, name_)
+
59  (std::vector<stan::gm::expression>, dims_) )
+
60 
+
61 BOOST_FUSION_ADAPT_STRUCT(stan::gm::ordered_var_decl,
+
62  (stan::gm::expression, K_)
+
63  (std::string, name_)
+
64  (std::vector<stan::gm::expression>, dims_) )
+
65 
+
66 BOOST_FUSION_ADAPT_STRUCT(stan::gm::positive_ordered_var_decl,
+
67  (stan::gm::expression, K_)
+
68  (std::string, name_)
+
69  (std::vector<stan::gm::expression>, dims_) )
+
70 
+
71 BOOST_FUSION_ADAPT_STRUCT(stan::gm::cholesky_factor_var_decl,
+
72  (stan::gm::expression, M_)
+
73  (stan::gm::expression, N_)
+
74  (std::string, name_)
+
75  (std::vector<stan::gm::expression>, dims_) )
+
76 
+
77 BOOST_FUSION_ADAPT_STRUCT(stan::gm::cov_matrix_var_decl,
+
78  (stan::gm::expression, K_)
+
79  (std::string, name_)
+
80  (std::vector<stan::gm::expression>, dims_) )
+
81 
+
82 BOOST_FUSION_ADAPT_STRUCT(stan::gm::corr_matrix_var_decl,
+
83  (stan::gm::expression, K_)
+
84  (std::string, name_)
+
85  (std::vector<stan::gm::expression>, dims_) )
+
86 
+
87 namespace stan {
+
88 
+
89  namespace gm {
+
90 
+
91  struct validate_no_constraints_vis : public boost::static_visitor<bool> {
+
92  std::stringstream& error_msgs_;
+
93  validate_no_constraints_vis(std::stringstream& error_msgs)
+
94  : error_msgs_(error_msgs) {
+
95  }
+
96  bool operator()(const nil& /*x*/) const {
+
97  error_msgs_ << "nil declarations not allowed";
+
98  return false; // fail if arises
+
99  }
+
100  bool operator()(const int_var_decl& x) const {
+
101  if (x.range_.has_low() || x.range_.has_high()) {
+
102  error_msgs_ << "require unconstrained."
+
103  << " found range constraint." << std::endl;
+
104  return false;
+
105  }
+
106  return true;
+
107  }
+
108  bool operator()(const double_var_decl& x) const {
+
109  if (x.range_.has_low() || x.range_.has_high()) {
+
110  error_msgs_ << "require unconstrained."
+
111  << " found range constraint." << std::endl;
+
112  return false;
+
113  }
+
114  return true;
+
115  }
+
116  bool operator()(const vector_var_decl& /*x*/) const {
+
117  return true;
+
118  }
+
119  bool operator()(const row_vector_var_decl& /*x*/) const {
+
120  return true;
+
121  }
+
122  bool operator()(const matrix_var_decl& /*x*/) const {
+
123  return true;
+
124  }
+
125  bool operator()(const unit_vector_var_decl& /*x*/) const {
+
126  error_msgs_ << "require unconstrained variable declaration."
+
127  << " found unit_vector." << std::endl;
+
128  return false;
+
129  }
+
130  bool operator()(const simplex_var_decl& /*x*/) const {
+
131  error_msgs_ << "require unconstrained variable declaration."
+
132  << " found simplex." << std::endl;
+
133  return false;
+
134  }
+
135  bool operator()(const ordered_var_decl& /*x*/) const {
+
136  error_msgs_ << "require unconstrained variable declaration."
+
137  << " found ordered." << std::endl;
+
138  return false;
+
139  }
+
140  bool operator()(const positive_ordered_var_decl& /*x*/) const {
+
141  error_msgs_ << "require unconstrained variable declaration."
+
142  << " found positive_ordered." << std::endl;
+
143  return false;
+
144  }
+
145  bool operator()(const cholesky_factor_var_decl& /*x*/) const {
+
146  error_msgs_ << "require unconstrained variable declaration."
+
147  << " found cholesky_factor." << std::endl;
+
148  return false;
+
149  }
+
150  bool operator()(const cov_matrix_var_decl& /*x*/) const {
+
151  error_msgs_ << "require unconstrained variable declaration."
+
152  << " found cov_matrix." << std::endl;
+
153  return false;
+
154  }
+
155  bool operator()(const corr_matrix_var_decl& /*x*/) const {
+
156  error_msgs_ << "require unconstrained variable declaration."
+
157  << " found corr_matrix." << std::endl;
+
158  return false;
+
159  }
+
160  };
+
161 
+
162  struct data_only_expression : public boost::static_visitor<bool> {
+
163  std::stringstream& error_msgs_;
+
164  variable_map& var_map_;
+
165  data_only_expression(std::stringstream& error_msgs,
+
166  variable_map& var_map)
+
167  : error_msgs_(error_msgs),
+
168  var_map_(var_map) {
+
169  }
+
170  bool operator()(const nil& /*e*/) const {
+
171  return true;
+
172  }
+
173  bool operator()(const int_literal& /*x*/) const {
+
174  return true;
+
175  }
+
176  bool operator()(const double_literal& /*x*/) const {
+
177  return true;
+
178  }
+
179  bool operator()(const array_literal& x) const {
+
180  for (size_t i = 0; i < x.args_.size(); ++i)
+
181  if (!boost::apply_visitor(*this,x.args_[i].expr_))
+
182  return false;
+
183  return true;
+
184  }
+
185  bool operator()(const variable& x) const {
+
186  var_origin origin = var_map_.get_origin(x.name_);
+
187  bool is_data = (origin == data_origin)
+
188  || (origin == transformed_data_origin)
+
189  || (origin == local_origin);
+
190  if (!is_data) {
+
191  error_msgs_ << "non-data variables not allowed in dimension declarations."
+
192  << std::endl
+
193  << " found variable=" << x.name_
+
194  << "; declared in block=";
+
195  print_var_origin(error_msgs_,origin);
+
196  error_msgs_ << std::endl;
+
197  }
+
198  return is_data;
+
199  }
+
200  bool operator()(const fun& x) const {
+
201  for (size_t i = 0; i < x.args_.size(); ++i)
+
202  if (!boost::apply_visitor(*this,x.args_[i].expr_))
+
203  return false;
+
204  return true;
+
205  }
+
206  bool operator()(const index_op& x) const {
+
207  if (!boost::apply_visitor(*this,x.expr_.expr_))
+
208  return false;
+
209  for (size_t i = 0; i < x.dimss_.size(); ++i)
+
210  for (size_t j = 0; j < x.dimss_[i].size(); ++j)
+
211  if (!boost::apply_visitor(*this,x.dimss_[i][j].expr_))
+
212  return false;
+
213  return true;
+
214  }
+
215  bool operator()(const binary_op& x) const {
+
216  return boost::apply_visitor(*this,x.left.expr_)
+
217  && boost::apply_visitor(*this,x.right.expr_);
+
218  }
+
219  bool operator()(const unary_op& x) const {
+
220  return boost::apply_visitor(*this,x.subject.expr_);
+
221  }
+
222  };
+
223 
+
224 
+
225  struct add_var {
+
226  template <typename T1, typename T2, typename T3, typename T4, typename T5>
+
227  struct result { typedef T1 type; };
+
228  // each type derived from base_var_decl gets own instance
+
229  template <typename T>
+
230  T operator()(const T& var_decl,
+
231  variable_map& vm,
+
232  bool& pass,
+
233  const var_origin& vo,
+
234  std::ostream& error_msgs) const {
+
235  if (vm.exists(var_decl.name_)) {
+
236  // variable already exists
+
237  pass = false;
+
238  error_msgs << "duplicate declaration of variable, name="
+
239  << var_decl.name_;
+
240 
+
241  error_msgs << "; attempt to redeclare as ";
+
242  print_var_origin(error_msgs,vo); // FIXME -- need original vo
+
243 
+
244  error_msgs << "; original declaration as ";
+
245  print_var_origin(error_msgs,vm.get_origin(var_decl.name_));
+
246 
+
247  error_msgs << std::endl;
+
248  return var_decl;
+
249  }
+ +
251  && var_decl.base_type_ == INT_T) {
+
252  pass = false;
+
253  error_msgs << "integer parameters or transformed parameters are not allowed; "
+
254  << " found declared type int, parameter name=" << var_decl.name_
+
255  << std::endl;
+
256  return var_decl;
+
257  }
+
258  pass = true; // probably don't need to set true
+
259  vm.add(var_decl.name_,var_decl,vo);
+
260  return var_decl;
+
261  }
+
262  };
+
263  boost::phoenix::function<add_var> add_var_f;
+
264 
+
265 
+
266  struct validate_decl_constraints {
+
267  template <typename T1, typename T2, typename T3, typename T4>
+
268  struct result { typedef bool type; };
+
269 
+
270  bool operator()(const bool& allow_constraints,
+
271  const bool& declaration_ok,
+
272  const var_decl& var_decl,
+
273  std::stringstream& error_msgs) const {
+
274  if (!declaration_ok) {
+
275  error_msgs << "Problem with declaration." << std::endl;
+
276  return false; // short-circuits test of constraints
+
277  }
+
278  if (allow_constraints)
+
279  return true;
+
280  validate_no_constraints_vis vis(error_msgs);
+
281  bool constraints_ok = boost::apply_visitor(vis,var_decl.decl_);
+
282  return constraints_ok;
+
283  }
+
284  };
+
285  boost::phoenix::function<validate_decl_constraints>
+
286  validate_decl_constraints_f;
+
287 
+
288  struct validate_identifier {
+
289  std::set<std::string> reserved_word_set_;
+
290 
+
291  template <typename T1, typename T2>
+
292  struct result { typedef bool type; };
+
293 
+
294  void reserve(const std::string& w) {
+
295  reserved_word_set_.insert(w);
+
296  }
+
297 
+
298  validate_identifier() {
+
299  reserve("for");
+
300  reserve("in");
+
301  reserve("while");
+
302  reserve("repeat");
+
303  reserve("until");
+
304  reserve("if");
+
305  reserve("then");
+
306  reserve("else");
+
307  reserve("true");
+
308  reserve("false");
+
309 
+
310  reserve("int");
+
311  reserve("real");
+
312  reserve("vector");
+
313  reserve("unit_vector");
+
314  reserve("simplex");
+
315  reserve("ordered");
+
316  reserve("positive_ordered");
+
317  reserve("row_vector");
+
318  reserve("matrix");
+
319  reserve("cholesky_factor_cov");
+
320  reserve("cov_matrix");
+
321  reserve("corr_matrix");
+
322 
+
323 
+
324  reserve("model");
+
325  reserve("data");
+
326  reserve("parameters");
+
327  reserve("quantities");
+
328  reserve("transformed");
+
329  reserve("generated");
+
330 
+
331  reserve("var");
+
332 
+
333  reserve("alignas");
+
334  reserve("alignof");
+
335  reserve("and");
+
336  reserve("and_eq");
+
337  reserve("asm");
+
338  reserve("auto");
+
339  reserve("bitand");
+
340  reserve("bitor");
+
341  reserve("bool");
+
342  reserve("break");
+
343  reserve("case");
+
344  reserve("catch");
+
345  reserve("char");
+
346  reserve("char16_t");
+
347  reserve("char32_t");
+
348  reserve("class");
+
349  reserve("compl");
+
350  reserve("const");
+
351  reserve("constexpr");
+
352  reserve("const_cast");
+
353  reserve("continue");
+
354  reserve("decltype");
+
355  reserve("default");
+
356  reserve("delete");
+
357  reserve("do");
+
358  reserve("double");
+
359  reserve("dynamic_cast");
+
360  reserve("else");
+
361  reserve("enum");
+
362  reserve("explicit");
+
363  reserve("export");
+
364  reserve("extern");
+
365  reserve("false");
+
366  reserve("float");
+
367  reserve("for");
+
368  reserve("friend");
+
369  reserve("goto");
+
370  reserve("if");
+
371  reserve("inline");
+
372  reserve("int");
+
373  reserve("long");
+
374  reserve("mutable");
+
375  reserve("namespace");
+
376  reserve("new");
+
377  reserve("noexcept");
+
378  reserve("not");
+
379  reserve("not_eq");
+
380  reserve("nullptr");
+
381  reserve("operator");
+
382  reserve("or");
+
383  reserve("or_eq");
+
384  reserve("private");
+
385  reserve("protected");
+
386  reserve("public");
+
387  reserve("register");
+
388  reserve("reinterpret_cast");
+
389  reserve("return");
+
390  reserve("short");
+
391  reserve("signed");
+
392  reserve("sizeof");
+
393  reserve("static");
+
394  reserve("static_assert");
+
395  reserve("static_cast");
+
396  reserve("struct");
+
397  reserve("switch");
+
398  reserve("template");
+
399  reserve("this");
+
400  reserve("thread_local");
+
401  reserve("throw");
+
402  reserve("true");
+
403  reserve("try");
+
404  reserve("typedef");
+
405  reserve("typeid");
+
406  reserve("typename");
+
407  reserve("union");
+
408  reserve("unsigned");
+
409  reserve("using");
+
410  reserve("virtual");
+
411  reserve("void");
+
412  reserve("volatile");
+
413  reserve("wchar_t");
+
414  reserve("while");
+
415  reserve("xor");
+
416  reserve("xor_eq");
+
417 
+
418  // function names declared in signatures
+ +
420  using std::set;
+
421  using std::string;
+
422  const function_signatures& sigs = function_signatures::instance();
+
423  set<string> fun_names = sigs.key_set();
+
424  fun_names.erase("pi");
+
425  fun_names.erase("e");
+
426  fun_names.erase("sqrt2");
+
427  fun_names.erase("log2");
+
428  fun_names.erase("log10");
+
429  fun_names.erase("not_a_number");
+
430  fun_names.erase("positive_infinity");
+
431  fun_names.erase("negative_infinity");
+
432  fun_names.erase("epsilon");
+
433  fun_names.erase("negative_epsilon");
+
434  for (set<string>::iterator it = fun_names.begin();
+
435  it != fun_names.end();
+
436  ++it)
+
437  reserve(*it);
+
438 
+
439  }
+
440 
+
441  bool operator()(const std::string& identifier,
+
442  std::stringstream& error_msgs) const {
+
443  int len = identifier.size();
+
444  if (len >= 2
+
445  && identifier[len-1] == '_'
+
446  && identifier[len-2] == '_') {
+
447  error_msgs << "variable identifier (name) may not end in double underscore (__)"
+
448  << std::endl
+
449  << " found identifer=" << identifier << std::endl;
+
450  return false;
+
451  }
+
452  size_t period_position = identifier.find('.');
+
453  if (period_position != std::string::npos) {
+
454  error_msgs << "variable identifier may not contain a period (.)"
+
455  << std::endl
+
456  << " found period at position (indexed from 0)=" << period_position
+
457  << std::endl
+
458  << " found identifier=" << identifier
+
459  << std::endl;
+
460  return false;
+
461  }
+
462  if (reserved_word_set_.find(identifier) != reserved_word_set_.end()) {
+
463  error_msgs << "variable identifier (name) may not be reserved word"
+
464  << std::endl
+
465  << " found identifier=" << identifier
+
466  << std::endl;
+
467  return false;
+
468  }
+
469  return true;
+
470  }
+
471  };
+
472  boost::phoenix::function<validate_identifier> validate_identifier_f;
+
473 
+
474  // copies single dimension from M to N if only M declared
+
475  struct copy_square_cholesky_dimension_if_necessary {
+
476  template <typename T1>
+
477  struct result { typedef void type; };
+
478  void operator()(cholesky_factor_var_decl& var_decl) const {
+
479  if (is_nil(var_decl.N_))
+
480  var_decl.N_ = var_decl.M_;
+
481  }
+
482  };
+
483  boost::phoenix::function<copy_square_cholesky_dimension_if_necessary>
+
484  copy_square_cholesky_dimension_if_necessary_f;
+
485 
+
486  struct empty_range {
+
487  template <typename T1>
+
488  struct result { typedef range type; };
+
489  range operator()(std::stringstream& /*error_msgs*/) const {
+
490  return range();
+
491  }
+
492  };
+
493  boost::phoenix::function<empty_range> empty_range_f;
+
494 
+
495  struct validate_int_expr {
+
496  template <typename T1, typename T2>
+
497  struct result { typedef bool type; };
+
498 
+
499  bool operator()(const expression& expr,
+
500  std::stringstream& error_msgs) const {
+
501  if (!expr.expression_type().is_primitive_int()) {
+
502  error_msgs << "expression denoting integer required; found type="
+
503  << expr.expression_type() << std::endl;
+
504  return false;
+
505  }
+
506  return true;
+
507  }
+
508  };
+
509  boost::phoenix::function<validate_int_expr> validate_int_expr_f;
+
510 
+
511  struct set_int_range_lower {
+
512  template <typename T1, typename T2, typename T3>
+
513  struct result { typedef bool type; };
+
514  bool operator()(range& range,
+
515  const expression& expr,
+
516  std::stringstream& error_msgs) const {
+
517  range.low_ = expr;
+
518  validate_int_expr validator;
+
519  return validator(expr,error_msgs);
+
520  }
+
521  };
+
522  boost::phoenix::function<set_int_range_lower> set_int_range_lower_f;
+
523 
+
524  struct set_int_range_upper {
+
525  template <typename T1, typename T2, typename T3>
+
526  struct result { typedef bool type; };
+
527  bool operator()(range& range,
+
528  const expression& expr,
+
529  std::stringstream& error_msgs) const {
+
530  range.high_ = expr;
+
531  validate_int_expr validator;
+
532  return validator(expr,error_msgs);
+
533  }
+
534  };
+
535  boost::phoenix::function<set_int_range_upper> set_int_range_upper_f;
+
536 
+
537 
+
538 
+
539  struct validate_int_data_expr {
+
540  template <typename T1, typename T2, typename T3>
+
541  struct result { typedef bool type; };
+
542 
+
543  bool operator()(const expression& expr,
+
544  variable_map& var_map,
+
545  std::stringstream& error_msgs) const {
+
546  if (!expr.expression_type().is_primitive_int()) {
+
547  error_msgs << "dimension declaration requires expression denoting integer;"
+
548  << " found type="
+
549  << expr.expression_type()
+
550  << std::endl;
+
551  return false;
+
552  }
+
553  data_only_expression vis(error_msgs,var_map);
+
554  bool only_data_dimensions = boost::apply_visitor(vis,expr.expr_);
+
555  return only_data_dimensions;
+
556  }
+
557  };
+
558  boost::phoenix::function<validate_int_data_expr> validate_int_data_expr_f;
+
559 
+
560  struct validate_double_expr {
+
561  template <typename T1, typename T2>
+
562  struct result { typedef bool type; };
+
563 
+
564  bool operator()(const expression& expr,
+
565  std::stringstream& error_msgs) const {
+
566  if (!expr.expression_type().is_primitive_double()
+
567  && !expr.expression_type().is_primitive_int()) {
+
568  error_msgs << "expression denoting double required; found type="
+
569  << expr.expression_type() << std::endl;
+
570  return false;
+
571  }
+
572  return true;
+
573  }
+
574  };
+
575  boost::phoenix::function<validate_double_expr> validate_double_expr_f;
+
576 
+
577 
+
578  struct set_double_range_lower {
+
579  template <typename T1, typename T2, typename T3>
+
580  struct result { typedef bool type; };
+
581  bool operator()(range& range,
+
582  const expression& expr,
+
583  std::stringstream& error_msgs) const {
+
584  range.low_ = expr;
+
585  validate_double_expr validator;
+
586  return validator(expr,error_msgs);
+
587  }
+
588  };
+
589  boost::phoenix::function<set_double_range_lower> set_double_range_lower_f;
+
590 
+
591  struct set_double_range_upper {
+
592  template <typename T1, typename T2, typename T3>
+
593  struct result { typedef bool type; };
+
594  bool operator()(range& range,
+
595  const expression& expr,
+
596  std::stringstream& error_msgs) const {
+
597  range.high_ = expr;
+
598  validate_double_expr validator;
+
599  return validator(expr,error_msgs);
+
600  }
+
601  };
+
602  boost::phoenix::function<set_double_range_upper> set_double_range_upper_f;
+
603 
+
604 
+
605  template <typename Iterator>
+
606  var_decls_grammar<Iterator>::var_decls_grammar(variable_map& var_map,
+
607  std::stringstream& error_msgs)
+
608  : var_decls_grammar::base_type(var_decls_r),
+
609  var_map_(var_map),
+
610  error_msgs_(error_msgs),
+
611  expression_g(var_map,error_msgs),
+
612  expression07_g(var_map,error_msgs,false)
+
613  {
+
614 
+
615  using boost::spirit::qi::_1;
+
616  using boost::spirit::qi::_3;
+
617  using boost::spirit::qi::char_;
+
618  using boost::spirit::qi::eps;
+
619  using boost::spirit::qi::lexeme;
+
620  using boost::spirit::qi::lit;
+
621  using boost::spirit::qi::no_skip;
+
622  using boost::spirit::qi::_pass;
+
623  using boost::spirit::qi::_val;
+
624  using boost::spirit::qi::labels::_a;
+
625  using boost::spirit::qi::labels::_r1;
+
626  using boost::spirit::qi::labels::_r2;
+
627 
+
628  var_decls_r.name("variable declarations");
+
629  var_decls_r
+
630  %= *var_decl_r(_r1,_r2);
+
631 
+
632  // _a = error state local,
+
633  // _r1 constraints allowed inherited,
+
634  // _r2 var_origin
+
635  var_decl_r.name("variable declaration");
+
636  var_decl_r
+
637  %= (int_decl_r(_r2)
+
638  [_val = add_var_f(_1,boost::phoenix::ref(var_map_),_a,_r2,
+
639  boost::phoenix::ref(error_msgs))]
+
640  | double_decl_r(_r2)
+
641  [_val = add_var_f(_1,boost::phoenix::ref(var_map_),_a,_r2,
+
642  boost::phoenix::ref(error_msgs_))]
+
643  | vector_decl_r(_r2)
+
644  [_val = add_var_f(_1,boost::phoenix::ref(var_map_),_a,_r2,
+
645  boost::phoenix::ref(error_msgs_))]
+
646  | row_vector_decl_r(_r2)
+
647  [_val = add_var_f(_1,boost::phoenix::ref(var_map_),_a,_r2,
+
648  boost::phoenix::ref(error_msgs_))]
+
649  | matrix_decl_r(_r2)
+
650  [_val = add_var_f(_1,boost::phoenix::ref(var_map_),_a,_r2,
+
651  boost::phoenix::ref(error_msgs_))]
+
652  | unit_vector_decl_r(_r2)
+
653  [_val = add_var_f(_1,boost::phoenix::ref(var_map_),_a,_r2,
+
654  boost::phoenix::ref(error_msgs_))]
+
655  | simplex_decl_r(_r2)
+
656  [_val = add_var_f(_1,boost::phoenix::ref(var_map_),_a,_r2,
+
657  boost::phoenix::ref(error_msgs_))]
+
658  | ordered_decl_r(_r2)
+
659  [_val = add_var_f(_1,boost::phoenix::ref(var_map_),_a,_r2,
+
660  boost::phoenix::ref(error_msgs_))]
+
661  | positive_ordered_decl_r(_r2)
+
662  [_val = add_var_f(_1,boost::phoenix::ref(var_map_),_a,_r2,
+
663  boost::phoenix::ref(error_msgs_))]
+
664  | cholesky_factor_decl_r(_r2)
+
665  [_val = add_var_f(_1,boost::phoenix::ref(var_map_),_a,_r2,
+
666  boost::phoenix::ref(error_msgs_))]
+
667  | cov_matrix_decl_r(_r2)
+
668  [_val = add_var_f(_1,boost::phoenix::ref(var_map_),_a,_r2,
+
669  boost::phoenix::ref(error_msgs_))]
+
670  | corr_matrix_decl_r(_r2)
+
671  [_val = add_var_f(_1,boost::phoenix::ref(var_map_),_a,_r2,
+
672  boost::phoenix::ref(error_msgs_))]
+
673  )
+
674  > eps
+
675  [_pass
+
676  = validate_decl_constraints_f(_r1,_a,_val,
+
677  boost::phoenix::ref(error_msgs_))]
+
678  ;
+
679 
+
680  int_decl_r.name("integer declaration");
+
681  int_decl_r
+
682  %= ( lit("int")
+
683  >> no_skip[!char_("a-zA-Z0-9_")] )
+
684  > -range_brackets_int_r(_r1)
+
685  // >> (lit(' ') | lit('\n') | lit('\t') | lit('\r'))
+
686  > identifier_r
+
687  > opt_dims_r(_r1)
+
688  > lit(';');
+
689 
+
690  double_decl_r.name("real declaration");
+
691  double_decl_r
+
692  %= ( lit("real")
+
693  >> no_skip[!char_("a-zA-Z0-9_")] )
+
694  > -range_brackets_double_r(_r1)
+
695  > identifier_r
+
696  > opt_dims_r(_r1)
+
697  > lit(';');
+
698 
+
699  vector_decl_r.name("vector declaration");
+
700  vector_decl_r
+
701  %= lit("vector")
+
702  > -range_brackets_double_r(_r1)
+
703  > lit('[')
+
704  > expression_g(_r1)
+
705  [_pass = validate_int_expr_f(_1,boost::phoenix::ref(error_msgs_))]
+
706  > lit(']')
+
707  > identifier_r
+
708  > opt_dims_r(_r1)
+
709  > lit(';');
+
710 
+
711  row_vector_decl_r.name("row vector declaration");
+
712  row_vector_decl_r
+
713  %= lit("row_vector")
+
714  > -range_brackets_double_r(_r1)
+
715  > lit('[')
+
716  > expression_g(_r1)
+
717  [_pass = validate_int_expr_f(_1,boost::phoenix::ref(error_msgs_))]
+
718  > lit(']')
+
719  > identifier_r
+
720  > opt_dims_r(_r1)
+
721  > lit(';');
+
722 
+
723  matrix_decl_r.name("matrix declaration");
+
724  matrix_decl_r
+
725  %= lit("matrix")
+
726  > -range_brackets_double_r(_r1)
+
727  > lit('[')
+
728  > expression_g(_r1)
+
729  [_pass = validate_int_expr_f(_1,boost::phoenix::ref(error_msgs_))]
+
730  > lit(',')
+
731  > expression_g(_r1)
+
732  [_pass = validate_int_expr_f(_1,boost::phoenix::ref(error_msgs_))]
+
733  > lit(']')
+
734  > identifier_r
+
735  > opt_dims_r(_r1)
+
736  > lit(';');
+
737 
+
738  unit_vector_decl_r.name("unit_vector declaration");
+
739  unit_vector_decl_r
+
740  %= lit("unit_vector")
+
741  > lit('[')
+
742  > expression_g(_r1)
+
743  [_pass = validate_int_expr_f(_1,boost::phoenix::ref(error_msgs_))]
+
744  > lit(']')
+
745  > identifier_r
+
746  > opt_dims_r(_r1)
+
747  > lit(';');
+
748 
+
749  simplex_decl_r.name("simplex declaration");
+
750  simplex_decl_r
+
751  %= lit("simplex")
+
752  > lit('[')
+
753  > expression_g(_r1)
+
754  [_pass = validate_int_expr_f(_1,boost::phoenix::ref(error_msgs_))]
+
755  > lit(']')
+
756  > identifier_r
+
757  > opt_dims_r(_r1)
+
758  > lit(';');
+
759 
+
760  ordered_decl_r.name("ordered declaration");
+
761  ordered_decl_r
+
762  %= lit("ordered")
+
763  > lit('[')
+
764  > expression_g(_r1)
+
765  [_pass = validate_int_expr_f(_1,boost::phoenix::ref(error_msgs_))]
+
766  > lit(']')
+
767  > identifier_r
+
768  > opt_dims_r(_r1)
+
769  > lit(';');
+
770 
+
771  positive_ordered_decl_r.name("positive_ordered declaration");
+
772  positive_ordered_decl_r
+
773  %= lit("positive_ordered")
+
774  > lit('[')
+
775  > expression_g(_r1)
+
776  [_pass = validate_int_expr_f(_1,boost::phoenix::ref(error_msgs_))]
+
777  > lit(']')
+
778  > identifier_r
+
779  > opt_dims_r(_r1)
+
780  > lit(';');
+
781 
+
782  cholesky_factor_decl_r.name("cholesky factor declaration");
+
783  cholesky_factor_decl_r
+
784  %= lit("cholesky_factor_cov")
+
785  > lit('[')
+
786  > expression_g(_r1)
+
787  [_pass = validate_int_expr_f(_1,boost::phoenix::ref(error_msgs_))]
+
788  > -( lit(',')
+
789  > expression_g(_r1)
+
790  [_pass = validate_int_expr_f(_1,boost::phoenix::ref(error_msgs_))]
+
791  )
+
792  > lit(']')
+
793  > identifier_r
+
794  > opt_dims_r(_r1)
+
795  > lit(';')
+
796  > eps
+
797  [copy_square_cholesky_dimension_if_necessary_f(_val)];
+
798 
+
799  cov_matrix_decl_r.name("covariance matrix declaration");
+
800  cov_matrix_decl_r
+
801  %= lit("cov_matrix")
+
802  > lit('[')
+
803  > expression_g(_r1)
+
804  [_pass = validate_int_expr_f(_1,boost::phoenix::ref(error_msgs_))]
+
805  > lit(']')
+
806  > identifier_r
+
807  > opt_dims_r(_r1)
+
808  > lit(';');
+
809 
+
810  corr_matrix_decl_r.name("correlation matrix declaration");
+
811  corr_matrix_decl_r
+
812  %= lit("corr_matrix")
+
813  > lit('[')
+
814  > expression_g(_r1)
+
815  [_pass = validate_int_expr_f(_1,boost::phoenix::ref(error_msgs_))]
+
816  > lit(']')
+
817  > identifier_r
+
818  > opt_dims_r(_r1)
+
819  > lit(';');
+
820 
+
821  opt_dims_r.name("array dimensions (optional)");
+
822  opt_dims_r
+
823  %= - dims_r(_r1);
+
824 
+
825  dims_r.name("array dimensions");
+
826  dims_r
+
827  %= lit('[')
+
828  > (expression_g(_r1)
+
829  [_pass = validate_int_data_expr_f(_1,
+
830  boost::phoenix::ref(var_map_),
+
831  boost::phoenix::ref(error_msgs_))]
+
832  % ',')
+
833  > lit(']')
+
834  ;
+
835 
+
836  range_brackets_int_r.name("integer range expression pair, brackets");
+
837  range_brackets_int_r
+
838  = lit('<') [_val = empty_range_f(boost::phoenix::ref(error_msgs_))]
+
839  >> (
+
840  ( (lit("lower")
+
841  >> lit('=')
+
842  >> expression07_g(_r1)
+
843  [ _pass = set_int_range_lower_f(_val,_1,
+
844  boost::phoenix::ref(error_msgs_)) ])
+
845  >> -( lit(',')
+
846  >> lit("upper")
+
847  >> lit('=')
+
848  >> expression07_g(_r1)
+
849  [ _pass = set_int_range_upper_f(_val,_1,
+
850  boost::phoenix::ref(error_msgs_)) ] ) )
+
851  |
+
852  ( lit("upper")
+
853  >> lit('=')
+
854  >> expression07_g(_r1)
+
855  [ _pass = set_int_range_upper_f(_val,_1,
+
856  boost::phoenix::ref(error_msgs_)) ])
+
857  )
+
858  >> lit('>');
+
859 
+
860  range_brackets_double_r.name("real range expression pair, brackets");
+
861  range_brackets_double_r
+
862  = lit('<') [_val = empty_range_f(boost::phoenix::ref(error_msgs_))]
+
863  > (
+
864  ( (lit("lower")
+
865  > lit('=')
+
866  > expression07_g(_r1)
+
867  [ _pass = set_double_range_lower_f(_val,_1,
+
868  boost::phoenix::ref(error_msgs_)) ])
+
869  > -( lit(',')
+
870  > lit("upper")
+
871  > lit('=')
+
872  > expression07_g(_r1)
+
873  [ _pass = set_double_range_upper_f(_val,_1,
+
874  boost::phoenix::ref(error_msgs_)) ] ) )
+
875  |
+
876  ( lit("upper")
+
877  > lit('=')
+
878  > expression07_g(_r1)
+
879  [ _pass = set_double_range_upper_f(_val,_1,
+
880  boost::phoenix::ref(error_msgs_)) ])
+
881  )
+
882  > lit('>');
+
883 
+
884  identifier_r.name("identifier");
+
885  identifier_r
+
886  %= identifier_name_r
+
887  [_pass = validate_identifier_f(_val,boost::phoenix::ref(error_msgs_))]
+
888  ;
+
889 
+
890  identifier_name_r.name("identifier subrule");
+
891  identifier_name_r
+
892  %= lexeme[char_("a-zA-Z")
+
893  >> *char_("a-zA-Z0-9_.")]
+
894  ;
+
895 
+
896 
+
897  range_r.name("range expression pair, colon");
+
898  range_r
+
899  %= expression_g(_r1)
+
900  [_pass = validate_int_expr_f(_1,boost::phoenix::ref(error_msgs_))]
+
901  >> lit(':')
+
902  >> expression_g(_r1)
+
903  [_pass = validate_int_expr_f(_1,boost::phoenix::ref(error_msgs_))];
+
904 
+
905  }
+
906 
+
907 
+
908  }
+
909 }
+
910 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/var__decls__grammar__inst_8cpp.html b/doc/api/html/var__decls__grammar__inst_8cpp.html new file mode 100644 index 00000000000..3b5ca214482 --- /dev/null +++ b/doc/api/html/var__decls__grammar__inst_8cpp.html @@ -0,0 +1,123 @@ + + + + + +Stan: src/stan/gm/grammars/var_decls_grammar_inst.cpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
var_decls_grammar_inst.cpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::gm
 Directed graphical model compiler.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/var__decls__grammar__inst_8cpp_source.html b/doc/api/html/var__decls__grammar__inst_8cpp_source.html new file mode 100644 index 00000000000..32c262415ee --- /dev/null +++ b/doc/api/html/var__decls__grammar__inst_8cpp_source.html @@ -0,0 +1,115 @@ + + + + + +Stan: src/stan/gm/grammars/var_decls_grammar_inst.cpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
var_decls_grammar_inst.cpp
+
+
+Go to the documentation of this file.
+ +
3 
+
4 namespace stan {
+
5  namespace gm {
+
6  template struct var_decls_grammar<pos_iterator_t>;
+
7  }
+
8 }
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/var__stack_8cpp.html b/doc/api/html/var__stack_8cpp.html new file mode 100644 index 00000000000..8b197452edb --- /dev/null +++ b/doc/api/html/var__stack_8cpp.html @@ -0,0 +1,155 @@ + + + + + +Stan: src/stan/agrad/rev/var_stack.cpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
var_stack.cpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+ + + +

+Macros

#define __STAN__AGRAD__REV__VAR_STACK_CPP__
 
+ + + + + + + + + +

+Variables

std::vector< chainable * > stan::agrad::var_stack_
 
std::vector< chainable * > stan::agrad::var_nochain_stack_
 
std::vector< chainable_alloc * > stan::agrad::var_alloc_stack_
 
memory::stack_alloc stan::agrad::memalloc_
 
+

Macro Definition Documentation

+ +
+
+ + + + +
#define __STAN__AGRAD__REV__VAR_STACK_CPP__
+
+ +

Definition at line 2 of file var_stack.cpp.

+ +
+
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/var__stack_8cpp_source.html b/doc/api/html/var__stack_8cpp_source.html new file mode 100644 index 00000000000..48848f75706 --- /dev/null +++ b/doc/api/html/var__stack_8cpp_source.html @@ -0,0 +1,126 @@ + + + + + +Stan: src/stan/agrad/rev/var_stack.cpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
var_stack.cpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__REV__VAR_STACK_CPP__
+
2 #define __STAN__AGRAD__REV__VAR_STACK_CPP__
+
3 
+ +
5 
+
6 namespace stan {
+
7 
+
8  namespace agrad {
+
9 
+
10  std::vector<chainable*> var_stack_;
+
11  std::vector<chainable*> var_nochain_stack_;
+
12  std::vector<chainable_alloc*> var_alloc_stack_;
+ +
14 
+
15  }
+
16 
+
17 }
+
18 
+
19 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/var__stack_8hpp.html b/doc/api/html/var__stack_8hpp.html new file mode 100644 index 00000000000..4ae21e4554c --- /dev/null +++ b/doc/api/html/var__stack_8hpp.html @@ -0,0 +1,140 @@ + + + + + +Stan: src/stan/agrad/rev/var_stack.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
var_stack.hpp File Reference
+
+
+
#include <vector>
+#include <stan/memory/stack_alloc.hpp>
+
+

Go to the source code of this file.

+ + + + + +

+Classes

class  stan::agrad::chainable_alloc
 A chainable_alloc is an object which is constructed and destructed normally but the memory lifespan is managed along with the arena allocator for the gradient calculation. More...
 
+ + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+ + + + + + + +

+Functions

static void stan::agrad::recover_memory ()
 Recover memory used for all variables for reuse.
 
static void stan::agrad::free_memory ()
 Return all memory used for gradients back to the system.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/var__stack_8hpp_source.html b/doc/api/html/var__stack_8hpp_source.html new file mode 100644 index 00000000000..93a45bbba5d --- /dev/null +++ b/doc/api/html/var__stack_8hpp_source.html @@ -0,0 +1,151 @@ + + + + + +Stan: src/stan/agrad/rev/var_stack.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
var_stack.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__REV__VAR_STACK_HPP__
+
2 #define __STAN__AGRAD__REV__VAR_STACK_HPP__
+
3 
+
4 #include <vector>
+ +
6 
+
7 namespace stan {
+
8  namespace agrad {
+
9 
+
10  // forward declaration of chainable
+
11  class chainable;
+
12  class chainable_alloc;
+
13 
+
14  // FIXME: manage all this as a single singleton (thread local)
+
15  extern std::vector<chainable*> var_stack_;
+
16  extern std::vector<chainable*> var_nochain_stack_;
+
17  extern std::vector<chainable_alloc*> var_alloc_stack_;
+
18  extern memory::stack_alloc memalloc_;
+
19 
+ +
27  public:
+ +
29  var_alloc_stack_.push_back(this);
+
30  }
+
31  virtual ~chainable_alloc() { };
+
32  };
+
33 
+
37  static void recover_memory() {
+
38  var_stack_.clear();
+
39  var_nochain_stack_.clear();
+
40  for (size_t i = 0; i < var_alloc_stack_.size(); i++)
+
41  delete var_alloc_stack_[i];
+
42  var_alloc_stack_.clear();
+ +
44  }
+
45 
+
49  static void free_memory() {
+ +
51  }
+
52 
+
53 
+
54  }
+
55 }
+
56 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/vari_8hpp.html b/doc/api/html/vari_8hpp.html new file mode 100644 index 00000000000..f94f2a21669 --- /dev/null +++ b/doc/api/html/vari_8hpp.html @@ -0,0 +1,131 @@ + + + + + +Stan: src/stan/agrad/rev/vari.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
vari.hpp File Reference
+
+
+
#include <ostream>
+#include <stan/agrad/rev/var_stack.hpp>
+#include <stan/agrad/rev/chainable.hpp>
+
+

Go to the source code of this file.

+ + + + + +

+Classes

class  stan::agrad::vari
 The variable implementation base class. More...
 
+ + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/vari_8hpp_source.html b/doc/api/html/vari_8hpp_source.html new file mode 100644 index 00000000000..a8a433eac71 --- /dev/null +++ b/doc/api/html/vari_8hpp_source.html @@ -0,0 +1,166 @@ + + + + + +Stan: src/stan/agrad/rev/vari.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
vari.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__REV__VARI_HPP__
+
2 #define __STAN__AGRAD__REV__VARI_HPP__
+
3 
+
4 #include <ostream>
+
5 
+ + +
8 
+
9 namespace stan {
+
10  namespace agrad {
+
11 
+
12  // forward declaration of var
+
13  class var;
+
14 
+
28  class vari : public chainable {
+
29  private:
+
30  friend class var;
+
31 
+
32  public:
+
33 
+
37  const double val_;
+
38 
+
43  double adj_;
+
44 
+
57  vari(const double x):
+
58  val_(x),
+
59  adj_(0.0) {
+
60  var_stack_.push_back(this);
+
61  }
+
62 
+
63  vari(const double x,bool stacked):
+
64  val_(x),
+
65  adj_(0.0) {
+
66  if (stacked)
+
67  var_stack_.push_back(this);
+
68  else
+
69  var_nochain_stack_.push_back(this);
+
70  }
+
71 
+
79  virtual ~vari() {
+
80  // throw std::logic_error("vari destruction handled automatically");
+
81  }
+
82 
+
88  virtual void init_dependent() {
+
89  adj_ = 1.0; // droot/droot = 1
+
90  }
+
91 
+
95  virtual void set_zero_adjoint() {
+
96  adj_ = 0.0;
+
97  }
+
98 
+
108  friend std::ostream& operator<<(std::ostream& os, const vari* v) {
+
109  return os << v << " " << v->val_ << " : " << v->adj_;
+
110  }
+
111  };
+
112 
+
113  }
+
114 }
+
115 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/vd__vari_8hpp.html b/doc/api/html/vd__vari_8hpp.html new file mode 100644 index 00000000000..d30ddaba8d8 --- /dev/null +++ b/doc/api/html/vd__vari_8hpp.html @@ -0,0 +1,128 @@ + + + + + +Stan: src/stan/agrad/rev/internal/vd_vari.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
vd_vari.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + +

+Classes

class  stan::agrad::op_vd_vari
 
+ + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/vd__vari_8hpp_source.html b/doc/api/html/vd__vari_8hpp_source.html new file mode 100644 index 00000000000..a41039cd192 --- /dev/null +++ b/doc/api/html/vd__vari_8hpp_source.html @@ -0,0 +1,130 @@ + + + + + +Stan: src/stan/agrad/rev/internal/vd_vari.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
vd_vari.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__REV__INTERNAL__VD_VARI_HPP__
+
2 #define __STAN__AGRAD__REV__INTERNAL__VD_VARI_HPP__
+
3 
+ +
5 
+
6 namespace stan {
+
7  namespace agrad {
+
8 
+
9  class op_vd_vari : public vari {
+
10  protected:
+ +
12  double bd_;
+
13  public:
+
14  op_vd_vari(double f, vari* avi, double b) :
+
15  vari(f),
+
16  avi_(avi),
+
17  bd_(b) {
+
18  }
+
19  };
+
20 
+
21  }
+
22 }
+
23 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/vdd__vari_8hpp.html b/doc/api/html/vdd__vari_8hpp.html new file mode 100644 index 00000000000..d6df187d126 --- /dev/null +++ b/doc/api/html/vdd__vari_8hpp.html @@ -0,0 +1,128 @@ + + + + + +Stan: src/stan/agrad/rev/internal/vdd_vari.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
vdd_vari.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + +

+Classes

class  stan::agrad::op_vdd_vari
 
+ + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/vdd__vari_8hpp_source.html b/doc/api/html/vdd__vari_8hpp_source.html new file mode 100644 index 00000000000..4cebaf824ba --- /dev/null +++ b/doc/api/html/vdd__vari_8hpp_source.html @@ -0,0 +1,132 @@ + + + + + +Stan: src/stan/agrad/rev/internal/vdd_vari.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
vdd_vari.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__REV__INTERNAL__VDD_VARI_HPP__
+
2 #define __STAN__AGRAD__REV__INTERNAL__VDD_VARI_HPP__
+
3 
+ +
5 
+
6 namespace stan {
+
7  namespace agrad {
+
8 
+
9  class op_vdd_vari : public vari {
+
10  protected:
+ +
12  double bd_;
+
13  double cd_;
+
14  public:
+
15  op_vdd_vari(double f, vari* avi, double b, double c) :
+
16  vari(f),
+
17  avi_(avi),
+
18  bd_(b),
+
19  cd_(c) {
+
20  }
+
21  };
+
22 
+
23  }
+
24 }
+
25 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/vdv__vari_8hpp.html b/doc/api/html/vdv__vari_8hpp.html new file mode 100644 index 00000000000..556c7a366fc --- /dev/null +++ b/doc/api/html/vdv__vari_8hpp.html @@ -0,0 +1,128 @@ + + + + + +Stan: src/stan/agrad/rev/internal/vdv_vari.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
vdv_vari.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + +

+Classes

class  stan::agrad::op_vdv_vari
 
+ + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/vdv__vari_8hpp_source.html b/doc/api/html/vdv__vari_8hpp_source.html new file mode 100644 index 00000000000..d980c273298 --- /dev/null +++ b/doc/api/html/vdv__vari_8hpp_source.html @@ -0,0 +1,132 @@ + + + + + +Stan: src/stan/agrad/rev/internal/vdv_vari.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
vdv_vari.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__REV__INTERNAL__VDV_VARI_HPP__
+
2 #define __STAN__AGRAD__REV__INTERNAL__VDV_VARI_HPP__
+
3 
+ +
5 
+
6 namespace stan {
+
7  namespace agrad {
+
8 
+
9  class op_vdv_vari : public vari {
+
10  protected:
+ +
12  double bd_;
+ +
14  public:
+
15  op_vdv_vari(double f, vari* avi, double b, vari* cvi) :
+
16  vari(f),
+
17  avi_(avi),
+
18  bd_(b),
+
19  cvi_(cvi) {
+
20  }
+
21  };
+
22 
+
23  }
+
24 }
+
25 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/vector__vari_8hpp.html b/doc/api/html/vector__vari_8hpp.html new file mode 100644 index 00000000000..9e19e4387c8 --- /dev/null +++ b/doc/api/html/vector__vari_8hpp.html @@ -0,0 +1,130 @@ + + + + + +Stan: src/stan/agrad/rev/internal/vector_vari.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
vector_vari.hpp File Reference
+
+
+
#include <vector>
+#include <stan/agrad/rev/var.hpp>
+#include <stan/agrad/rev/vari.hpp>
+
+

Go to the source code of this file.

+ + + + +

+Classes

class  stan::agrad::op_vector_vari
 
+ + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/vector__vari_8hpp_source.html b/doc/api/html/vector__vari_8hpp_source.html new file mode 100644 index 00000000000..9c8b31a5a3e --- /dev/null +++ b/doc/api/html/vector__vari_8hpp_source.html @@ -0,0 +1,140 @@ + + + + + +Stan: src/stan/agrad/rev/internal/vector_vari.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
vector_vari.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__REV__INTERNAL__VECTOR_VARI_HPP__
+
2 #define __STAN__AGRAD__REV__INTERNAL__VECTOR_VARI_HPP__
+
3 
+
4 #include <vector>
+
5 #include <stan/agrad/rev/var.hpp>
+ +
7 
+
8 namespace stan {
+
9  namespace agrad {
+
10 
+
11  class op_vector_vari : public vari {
+
12  protected:
+
13  const size_t size_;
+ +
15  public:
+
16  op_vector_vari(double f, const std::vector<stan::agrad::var>& vs) :
+
17  vari(f),
+
18  size_(vs.size()) {
+
19  vis_ = (vari**) operator new(sizeof(vari*) * vs.size());
+
20  for (size_t i = 0; i < vs.size(); ++i)
+
21  vis_[i] = vs[i].vi_;
+
22  }
+
23  vari* operator[](size_t n) const {
+
24  return vis_[n];
+
25  }
+
26  size_t size() {
+
27  return size_;
+
28  }
+
29  };
+
30 
+
31  }
+
32 }
+
33 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/version_8hpp.html b/doc/api/html/version_8hpp.html new file mode 100644 index 00000000000..abcc8725d7d --- /dev/null +++ b/doc/api/html/version_8hpp.html @@ -0,0 +1,132 @@ + + + + + +Stan: src/stan/version.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
version.hpp File Reference
+
+
+
#include <string>
+
+

Go to the source code of this file.

+ + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
+ + + + + + + + + + +

+Variables

const std::string stan::MAJOR_VERSION = "2"
 Major version number for Stan package.
 
const std::string stan::MINOR_VERSION = "2"
 Minor version number for Stan package.
 
const std::string stan::PATCH_VERSION = "0"
 Patch version for Stan package.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/version_8hpp_source.html b/doc/api/html/version_8hpp_source.html new file mode 100644 index 00000000000..3f8b2c76e34 --- /dev/null +++ b/doc/api/html/version_8hpp_source.html @@ -0,0 +1,123 @@ + + + + + +Stan: src/stan/version.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
version.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__VERSION_HPP__
+
2 #define __STAN__VERSION_HPP__
+
3 
+
4 #include <string>
+
5 
+
6 namespace stan {
+
7 
+
9  const std::string MAJOR_VERSION = "2";
+
10 
+
12  const std::string MINOR_VERSION = "2";
+
13 
+
15  const std::string PATCH_VERSION = "0";
+
16 
+
17 }
+
18 
+
19 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/von__mises_8hpp.html b/doc/api/html/von__mises_8hpp.html new file mode 100644 index 00000000000..8f0a2259e16 --- /dev/null +++ b/doc/api/html/von__mises_8hpp.html @@ -0,0 +1,139 @@ + + + + + +Stan: src/stan/prob/distributions/univariate/continuous/von_mises.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
von_mises.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::prob
 Templated probability distributions.
 
+ + + + + + + +

+Functions

template<bool propto, typename T_y , typename T_loc , typename T_scale >
return_type< T_y, T_loc,
+T_scale >::type 
stan::prob::von_mises_log (T_y const &y, T_loc const &mu, T_scale const &kappa)
 
template<typename T_y , typename T_loc , typename T_scale >
return_type< T_y, T_loc,
+T_scale >::type 
stan::prob::von_mises_log (T_y const &y, T_loc const &mu, T_scale const &kappa)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/von__mises_8hpp_source.html b/doc/api/html/von__mises_8hpp_source.html new file mode 100644 index 00000000000..9d56e9f3e9f --- /dev/null +++ b/doc/api/html/von__mises_8hpp_source.html @@ -0,0 +1,232 @@ + + + + + +Stan: src/stan/prob/distributions/univariate/continuous/von_mises.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
von_mises.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__PROB__DISTRIBUTIONS__UNIVARIATE__CONTINUOUS__VON_MISES_HPP__
+
2 #define __STAN__PROB__DISTRIBUTIONS__UNIVARIATE__CONTINUOUS__VON_MISES_HPP__
+
3 
+ + +
6 #include <stan/math.hpp>
+
7 #include <stan/meta/traits.hpp>
+ +
9 #include <stan/prob/traits.hpp>
+
10 
+
11 namespace stan {
+
12 
+
13  namespace prob {
+
14 
+
15  template<bool propto,
+
16  typename T_y, typename T_loc, typename T_scale>
+
17  typename return_type<T_y,T_loc,T_scale>::type
+
18  von_mises_log(T_y const& y, T_loc const& mu, T_scale const& kappa) {
+
19  static char const* const function = "stan::prob::von_mises_log(%1%)";
+
20 
+
21  // check if any vectors are zero length
+
22  if (!(stan::length(y)
+
23  && stan::length(mu)
+
24  && stan::length(kappa)))
+
25  return 0.0;
+
26 
+ + + + + + + +
34 
+
35  // Result accumulator.
+
36  double logp = 0.0;
+
37 
+
38  // Validate arguments.
+
39  if (!check_finite(function, y, "Random variable", &logp))
+
40  return logp;
+
41  if(!check_finite(function, mu, "Location paramter", &logp))
+
42  return logp;
+
43  if(!check_finite(function, kappa, "Scale parameter", &logp))
+
44  return logp;
+
45  if(!check_positive(function, kappa, "Scale parameter", &logp))
+
46  return logp;
+
47  if(!check_consistent_sizes(function, y, mu, kappa, "Random variable",
+
48  "Location parameter", "Scale parameter",
+
49  &logp))
+
50  return logp;
+
51 
+
52  // check if no variables are involved and prop-to
+ +
54  return logp;
+
55 
+
56  // Determine constants.
+
57  const bool y_const = is_constant_struct<T_y>::value;
+
58  const bool mu_const = is_constant_struct<T_loc>::value;
+
59  const bool kappa_const = is_constant_struct<T_scale>::value;
+
60 
+
61  // Determine which expensive computations to perform.
+
62  const bool compute_bessel0 = include_summand<propto,T_scale>::value;
+
63  const bool compute_bessel1 = !kappa_const;
+
64  const double TWO_PI = 2.0 * stan::math::pi();
+
65 
+
66  // Wrap scalars into vector views.
+
67  VectorView<const T_y> y_vec(y);
+
68  VectorView<const T_loc> mu_vec(mu);
+
69  VectorView<const T_scale> kappa_vec(kappa);
+
70 
+ + +
73  for (size_t i = 0; i < length(kappa); i++) {
+
74  kappa_dbl[i] = value_of(kappa_vec[i]);
+ +
76  log_bessel0[i] = log(boost::math::cyl_bessel_i(0, value_of(kappa_vec[i])));
+
77  }
+ +
79 
+
80  size_t N = max_size(y, mu, kappa);
+
81 
+
82  for (size_t n = 0; n < N; n++) {
+
83  // Extract argument values.
+
84  const double y_ = value_of(y_vec[n]);
+
85  const double y_dbl = y_ - std::floor(y_ / TWO_PI) * TWO_PI;
+
86  const double mu_dbl = value_of(mu_vec[n]);
+
87 
+
88  // Reusable values.
+
89  double bessel0 = 0;
+
90  if (compute_bessel0)
+
91  bessel0 = boost::math::cyl_bessel_i(0, kappa_dbl[n]);
+
92  double bessel1 = 0;
+
93  if (compute_bessel1)
+
94  bessel1 = boost::math::cyl_bessel_i(-1, kappa_dbl[n]);
+
95  const double kappa_sin = kappa_dbl[n] * std::sin(mu_dbl - y_dbl);
+
96  const double kappa_cos = kappa_dbl[n] * std::cos(mu_dbl - y_dbl);
+
97 
+
98  // Log probability.
+ +
100  logp -= LOG_TWO_PI;
+ +
102  logp -= log_bessel0[n];
+ +
104  logp += kappa_cos;
+
105 
+
106  // Gradient.
+
107  if (!y_const)
+
108  oap.d_x1[n] += kappa_sin;
+
109  if (!mu_const)
+
110  oap.d_x2[n] -= kappa_sin;
+
111  if (!kappa_const)
+
112  oap.d_x3[n] += kappa_cos / kappa_dbl[n] - bessel1 / bessel0;
+
113  }
+
114 
+
115  return oap.to_var(logp);
+
116  }
+
117 
+
118  template<typename T_y, typename T_loc, typename T_scale>
+ +
120  von_mises_log(T_y const& y, T_loc const& mu, T_scale const& kappa) {
+
121  return von_mises_log<false>(y, mu, kappa);
+
122  }
+
123  }
+
124 }
+
125 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/vv__vari_8hpp.html b/doc/api/html/vv__vari_8hpp.html new file mode 100644 index 00000000000..c4c93a63d90 --- /dev/null +++ b/doc/api/html/vv__vari_8hpp.html @@ -0,0 +1,128 @@ + + + + + +Stan: src/stan/agrad/rev/internal/vv_vari.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
vv_vari.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + +

+Classes

class  stan::agrad::op_vv_vari
 
+ + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/vv__vari_8hpp_source.html b/doc/api/html/vv__vari_8hpp_source.html new file mode 100644 index 00000000000..271c534ff8a --- /dev/null +++ b/doc/api/html/vv__vari_8hpp_source.html @@ -0,0 +1,130 @@ + + + + + +Stan: src/stan/agrad/rev/internal/vv_vari.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
vv_vari.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__REV__INTERNAL__VV_VARI_HPP__
+
2 #define __STAN__AGRAD__REV__INTERNAL__VV_VARI_HPP__
+
3 
+ +
5 
+
6 namespace stan {
+
7  namespace agrad {
+
8 
+
9  class op_vv_vari : public vari {
+
10  protected:
+ + +
13  public:
+
14  op_vv_vari(double f, vari* avi, vari* bvi):
+
15  vari(f),
+
16  avi_(avi),
+
17  bvi_(bvi) {
+
18  }
+
19  };
+
20 
+
21  }
+
22 }
+
23 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/vvd__vari_8hpp.html b/doc/api/html/vvd__vari_8hpp.html new file mode 100644 index 00000000000..2e0fa35faea --- /dev/null +++ b/doc/api/html/vvd__vari_8hpp.html @@ -0,0 +1,128 @@ + + + + + +Stan: src/stan/agrad/rev/internal/vvd_vari.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
vvd_vari.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + +

+Classes

class  stan::agrad::op_vvd_vari
 
+ + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/vvd__vari_8hpp_source.html b/doc/api/html/vvd__vari_8hpp_source.html new file mode 100644 index 00000000000..0f2a1c4bf34 --- /dev/null +++ b/doc/api/html/vvd__vari_8hpp_source.html @@ -0,0 +1,132 @@ + + + + + +Stan: src/stan/agrad/rev/internal/vvd_vari.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
vvd_vari.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__REV__INTERNAL__VVD_VARI_HPP__
+
2 #define __STAN__AGRAD__REV__INTERNAL__VVD_VARI_HPP__
+
3 
+ +
5 
+
6 namespace stan {
+
7  namespace agrad {
+
8 
+
9  class op_vvd_vari : public vari {
+
10  protected:
+ + +
13  double cd_;
+
14  public:
+
15  op_vvd_vari(double f, vari* avi, vari* bvi, double c) :
+
16  vari(f),
+
17  avi_(avi),
+
18  bvi_(bvi),
+
19  cd_(c) {
+
20  }
+
21  };
+
22 
+
23  }
+
24 }
+
25 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/vvv__vari_8hpp.html b/doc/api/html/vvv__vari_8hpp.html new file mode 100644 index 00000000000..4ac39b70bae --- /dev/null +++ b/doc/api/html/vvv__vari_8hpp.html @@ -0,0 +1,128 @@ + + + + + +Stan: src/stan/agrad/rev/internal/vvv_vari.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
vvv_vari.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + +

+Classes

class  stan::agrad::op_vvv_vari
 
+ + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::agrad
 Function gradients via reverse-mode automatic differentiation.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/vvv__vari_8hpp_source.html b/doc/api/html/vvv__vari_8hpp_source.html new file mode 100644 index 00000000000..6f497bb2ab3 --- /dev/null +++ b/doc/api/html/vvv__vari_8hpp_source.html @@ -0,0 +1,132 @@ + + + + + +Stan: src/stan/agrad/rev/internal/vvv_vari.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
vvv_vari.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__REV__INTERNAL__VVV_VARI_HPP__
+
2 #define __STAN__AGRAD__REV__INTERNAL__VVV_VARI_HPP__
+
3 
+ +
5 
+
6 namespace stan {
+
7  namespace agrad {
+
8 
+
9  class op_vvv_vari : public vari {
+
10  protected:
+ + + +
14  public:
+
15  op_vvv_vari(double f, vari* avi, vari* bvi, vari* cvi) :
+
16  vari(f),
+
17  avi_(avi),
+
18  bvi_(bvi),
+
19  cvi_(cvi) {
+
20  }
+
21  };
+
22 
+
23  }
+
24 }
+
25 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/weibull_8hpp.html b/doc/api/html/weibull_8hpp.html new file mode 100644 index 00000000000..62e9fc5002c --- /dev/null +++ b/doc/api/html/weibull_8hpp.html @@ -0,0 +1,157 @@ + + + + + +Stan: src/stan/prob/distributions/univariate/continuous/weibull.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
weibull.hpp File Reference
+
+
+
#include <boost/random/weibull_distribution.hpp>
+#include <boost/random/variate_generator.hpp>
+#include <stan/agrad/partials_vari.hpp>
+#include <stan/math/error_handling.hpp>
+#include <stan/math/functions/multiply_log.hpp>
+#include <stan/math/functions/value_of.hpp>
+#include <stan/meta/traits.hpp>
+#include <stan/prob/constants.hpp>
+#include <stan/prob/traits.hpp>
+
+

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::prob
 Templated probability distributions.
 
+ + + + + + + + + + + + + + + + + + + +

+Functions

template<bool propto, typename T_y , typename T_shape , typename T_scale >
return_type< T_y, T_shape,
+T_scale >::type 
stan::prob::weibull_log (const T_y &y, const T_shape &alpha, const T_scale &sigma)
 
template<typename T_y , typename T_shape , typename T_scale >
return_type< T_y, T_shape,
+T_scale >::type 
stan::prob::weibull_log (const T_y &y, const T_shape &alpha, const T_scale &sigma)
 
template<typename T_y , typename T_shape , typename T_scale >
return_type< T_y, T_shape,
+T_scale >::type 
stan::prob::weibull_cdf (const T_y &y, const T_shape &alpha, const T_scale &sigma)
 
template<typename T_y , typename T_shape , typename T_scale >
return_type< T_y, T_shape,
+T_scale >::type 
stan::prob::weibull_cdf_log (const T_y &y, const T_shape &alpha, const T_scale &sigma)
 
template<typename T_y , typename T_shape , typename T_scale >
return_type< T_y, T_shape,
+T_scale >::type 
stan::prob::weibull_ccdf_log (const T_y &y, const T_shape &alpha, const T_scale &sigma)
 
template<class RNG >
double stan::prob::weibull_rng (const double alpha, const double sigma, RNG &rng)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/weibull_8hpp_source.html b/doc/api/html/weibull_8hpp_source.html new file mode 100644 index 00000000000..fdc88a7e884 --- /dev/null +++ b/doc/api/html/weibull_8hpp_source.html @@ -0,0 +1,474 @@ + + + + + +Stan: src/stan/prob/distributions/univariate/continuous/weibull.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
weibull.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__PROB__DISTRIBUTIONS__WEIBULL_HPP__
+
2 #define __STAN__PROB__DISTRIBUTIONS__WEIBULL_HPP__
+
3 
+
4 #include <boost/random/weibull_distribution.hpp>
+
5 #include <boost/random/variate_generator.hpp>
+
6 
+ + + + +
11 #include <stan/meta/traits.hpp>
+
12 #include <stan/prob/constants.hpp>
+
13 #include <stan/prob/traits.hpp>
+
14 
+
15 namespace stan {
+
16 
+
17  namespace prob {
+
18 
+
19  // Weibull(y|sigma,alpha) [y >= 0; sigma > 0; alpha > 0]
+
20  // FIXME: document
+
21  template <bool propto,
+
22  typename T_y, typename T_shape, typename T_scale>
+
23  typename return_type<T_y,T_shape,T_scale>::type
+
24  weibull_log(const T_y& y, const T_shape& alpha, const T_scale& sigma) {
+
25  static const char* function = "stan::prob::weibull_log(%1%)";
+
26 
+ + + + + + +
33 
+
34  // check if any vectors are zero length
+
35  if (!(stan::length(y)
+
36  && stan::length(alpha)
+
37  && stan::length(sigma)))
+
38  return 0.0;
+
39 
+
40  // set up return value accumulator
+
41  double logp(0.0);
+
42  if(!check_finite(function, y, "Random variable", &logp))
+
43  return logp;
+
44  if(!check_finite(function, alpha, "Shape parameter",
+
45  &logp))
+
46  return logp;
+
47  if(!check_positive(function, alpha, "Shape parameter",
+
48  &logp))
+
49  return logp;
+
50  if(!check_not_nan(function, sigma, "Scale parameter",
+
51  &logp))
+
52  return logp;
+
53  if(!check_positive(function, sigma, "Scale parameter",
+
54  &logp))
+
55  return logp;
+
56  if (!(check_consistent_sizes(function,
+
57  y,alpha,sigma,
+
58  "Random variable","Shape parameter","Scale parameter",
+
59  &logp)))
+
60  return logp;
+
61 
+
62  // check if no variables are involved and prop-to
+ +
64  return 0.0;
+
65 
+
66  VectorView<const T_y> y_vec(y);
+
67  VectorView<const T_shape> alpha_vec(alpha);
+
68  VectorView<const T_scale> sigma_vec(sigma);
+
69  size_t N = max_size(y, alpha, sigma);
+
70 
+
71  for (size_t n = 0; n < N; n++) {
+
72  const double y_dbl = value_of(y_vec[n]);
+
73  if (y_dbl < 0)
+
74  return LOG_ZERO;
+
75  }
+
76 
+ +
78  is_vector<T_shape>::value> log_alpha(length(alpha));
+
79  for (size_t i = 0; i < length(alpha); i++)
+ +
81  log_alpha[i] = log(value_of(alpha_vec[i]));
+
82 
+ +
84  is_vector<T_y>::value> log_y(length(y));
+
85  for (size_t i = 0; i < length(y); i++)
+ +
87  log_y[i] = log(value_of(y_vec[i]));
+
88 
+ +
90  is_vector<T_scale>::value> log_sigma(length(sigma));
+
91  for (size_t i = 0; i < length(sigma); i++)
+ +
93  log_sigma[i] = log(value_of(sigma_vec[i]));
+
94 
+ +
96  is_vector<T_scale>::value> inv_sigma(length(sigma));
+
97  for (size_t i = 0; i < length(sigma); i++)
+ +
99  inv_sigma[i] = 1.0 / value_of(sigma_vec[i]);
+
100 
+ + +
103  y_div_sigma_pow_alpha(N);
+
104  for (size_t i = 0; i < N; i++)
+ +
106  const double y_dbl = value_of(y_vec[i]);
+
107  const double alpha_dbl = value_of(alpha_vec[i]);
+
108  y_div_sigma_pow_alpha[i] = pow(y_dbl * inv_sigma[i], alpha_dbl);
+
109  }
+
110 
+
111  agrad::OperandsAndPartials<T_y,T_shape,T_scale> operands_and_partials(y,alpha,sigma);
+
112  for (size_t n = 0; n < N; n++) {
+
113  const double alpha_dbl = value_of(alpha_vec[n]);
+ +
115  logp += log_alpha[n];
+ +
117  logp += (alpha_dbl-1.0)*log_y[n];
+ +
119  logp -= alpha_dbl*log_sigma[n];
+ +
121  logp -= y_div_sigma_pow_alpha[n];
+
122 
+ +
124  const double inv_y = 1.0 / value_of(y_vec[n]);
+
125  operands_and_partials.d_x1[n]
+
126  += (alpha_dbl-1.0) * inv_y
+
127  - alpha_dbl * y_div_sigma_pow_alpha[n] * inv_y;
+
128  }
+ +
130  operands_and_partials.d_x2[n]
+
131  += 1.0/alpha_dbl
+
132  + (1.0 - y_div_sigma_pow_alpha[n]) * (log_y[n] - log_sigma[n]);
+ +
134  operands_and_partials.d_x3[n]
+
135  += -alpha_dbl * inv_sigma[n]
+
136  + alpha_dbl * inv_sigma[n] * y_div_sigma_pow_alpha[n];
+
137  }
+
138  return operands_and_partials.to_var(logp);
+
139  }
+
140 
+
141  template <typename T_y, typename T_shape, typename T_scale>
+
142  inline
+ +
144  weibull_log(const T_y& y, const T_shape& alpha, const T_scale& sigma) {
+
145  return weibull_log<false>(y,alpha,sigma);
+
146  }
+
147 
+
148  template <typename T_y, typename T_shape, typename T_scale>
+ +
150  weibull_cdf(const T_y& y, const T_shape& alpha, const T_scale& sigma) {
+
151 
+
152  static const char* function = "stan::prob::weibull_cdf(%1%)";
+
153 
+ + + +
157  using boost::math::tools::promote_args;
+
158  using stan::math::value_of;
+
159 
+
160  // check if any vectors are zero length
+
161  if (!(stan::length(y)
+
162  && stan::length(alpha)
+
163  && stan::length(sigma)))
+
164  return 1.0;
+
165 
+
166  double cdf(1.0);
+
167  if (!check_nonnegative(function, y, "Random variable", &cdf))
+
168  return cdf;
+
169  if (!check_finite(function, alpha, "Shape parameter", &cdf))
+
170  return cdf;
+
171  if (!check_positive(function, alpha, "Shape parameter", &cdf))
+
172  return cdf;
+
173  if (!check_finite(function, sigma, "Scale parameter", &cdf))
+
174  return cdf;
+
175  if (!check_positive(function, sigma, "Scale parameter", &cdf))
+
176  return cdf;
+
177 
+ +
179  operands_and_partials(y, alpha, sigma);
+
180 
+
181  VectorView<const T_y> y_vec(y);
+
182  VectorView<const T_scale> sigma_vec(sigma);
+
183  VectorView<const T_shape> alpha_vec(alpha);
+
184  size_t N = max_size(y, sigma, alpha);
+
185  for (size_t n = 0; n < N; n++) {
+
186  const double y_dbl = value_of(y_vec[n]);
+
187  const double sigma_dbl = value_of(sigma_vec[n]);
+
188  const double alpha_dbl = value_of(alpha_vec[n]);
+
189  const double pow_ = pow(y_dbl / sigma_dbl, alpha_dbl);
+
190  const double exp_ = exp(-pow_);
+
191  const double cdf_ = 1.0 - exp_;
+
192 
+
193  //cdf
+
194  cdf *= cdf_;
+
195 
+
196  //gradients
+
197  const double rep_deriv = exp_ * pow_ / cdf_;
+ +
199  operands_and_partials.d_x1[n] += rep_deriv * alpha_dbl / y_dbl;
+ +
201  operands_and_partials.d_x2[n] += rep_deriv * log(y_dbl / sigma_dbl);
+ +
203  operands_and_partials.d_x3[n] -= rep_deriv * alpha_dbl / sigma_dbl;
+
204  }
+
205 
+ +
207  for (size_t n = 0; n < stan::length(y); ++n)
+
208  operands_and_partials.d_x1[n] *= cdf;
+ +
210  for (size_t n = 0; n < stan::length(alpha); ++n)
+
211  operands_and_partials.d_x2[n] *= cdf;
+ +
213  for (size_t n = 0; n < stan::length(sigma); ++n)
+
214  operands_and_partials.d_x3[n] *= cdf;
+
215 
+
216  return operands_and_partials.to_var(cdf);
+
217  }
+
218 
+
219  template <typename T_y, typename T_shape, typename T_scale>
+ +
221  weibull_cdf_log(const T_y& y, const T_shape& alpha, const T_scale& sigma) {
+
222 
+
223  static const char* function = "stan::prob::weibull_cdf_log(%1%)";
+
224 
+ + + +
228  using boost::math::tools::promote_args;
+
229  using stan::math::value_of;
+
230 
+
231  // check if any vectors are zero length
+
232  if (!(stan::length(y)
+
233  && stan::length(alpha)
+
234  && stan::length(sigma)))
+
235  return 0.0;
+
236 
+
237  double cdf_log(0.0);
+
238  if (!check_nonnegative(function, y, "Random variable", &cdf_log))
+
239  return cdf_log;
+
240  if (!check_finite(function, alpha, "Shape parameter", &cdf_log))
+
241  return cdf_log;
+
242  if (!check_positive(function, alpha, "Shape parameter", &cdf_log))
+
243  return cdf_log;
+
244  if (!check_finite(function, sigma, "Scale parameter", &cdf_log))
+
245  return cdf_log;
+
246  if (!check_positive(function, sigma, "Scale parameter", &cdf_log))
+
247  return cdf_log;
+
248 
+ +
250  operands_and_partials(y, alpha, sigma);
+
251 
+
252  VectorView<const T_y> y_vec(y);
+
253  VectorView<const T_scale> sigma_vec(sigma);
+
254  VectorView<const T_shape> alpha_vec(alpha);
+
255  size_t N = max_size(y, sigma, alpha);
+
256  for (size_t n = 0; n < N; n++) {
+
257  const double y_dbl = value_of(y_vec[n]);
+
258  const double sigma_dbl = value_of(sigma_vec[n]);
+
259  const double alpha_dbl = value_of(alpha_vec[n]);
+
260  const double pow_ = pow(y_dbl / sigma_dbl, alpha_dbl);
+
261  const double exp_ = exp(-pow_);
+
262  const double cdf_log_ = 1.0 - exp_;
+
263 
+
264  //cdf_log
+
265  cdf_log += log(cdf_log_);
+
266 
+
267  //gradients
+
268  const double rep_deriv = pow_ / (1.0 / exp_ - 1.0);
+ +
270  operands_and_partials.d_x1[n] += rep_deriv * alpha_dbl / y_dbl;
+ +
272  operands_and_partials.d_x2[n] += rep_deriv * log(y_dbl / sigma_dbl);
+ +
274  operands_and_partials.d_x3[n] -= rep_deriv * alpha_dbl / sigma_dbl;
+
275  }
+
276 
+
277  return operands_and_partials.to_var(cdf_log);
+
278  }
+
279 
+
280  template <typename T_y, typename T_shape, typename T_scale>
+ +
282  weibull_ccdf_log(const T_y& y, const T_shape& alpha, const T_scale& sigma) {
+
283 
+
284  static const char* function = "stan::prob::weibull_ccdf_log(%1%)";
+
285 
+ + + +
289  using boost::math::tools::promote_args;
+
290  using stan::math::value_of;
+
291 
+
292  // check if any vectors are zero length
+
293  if (!(stan::length(y)
+
294  && stan::length(alpha)
+
295  && stan::length(sigma)))
+
296  return 0.0;
+
297 
+
298  double ccdf_log(0.0);
+
299  if (!check_nonnegative(function, y, "Random variable", &ccdf_log))
+
300  return ccdf_log;
+
301  if (!check_finite(function, alpha, "Shape parameter", &ccdf_log))
+
302  return ccdf_log;
+
303  if (!check_positive(function, alpha, "Shape parameter", &ccdf_log))
+
304  return ccdf_log;
+
305  if (!check_finite(function, sigma, "Scale parameter", &ccdf_log))
+
306  return ccdf_log;
+
307  if (!check_positive(function, sigma, "Scale parameter", &ccdf_log))
+
308  return ccdf_log;
+
309 
+ +
311  operands_and_partials(y, alpha, sigma);
+
312 
+
313  VectorView<const T_y> y_vec(y);
+
314  VectorView<const T_scale> sigma_vec(sigma);
+
315  VectorView<const T_shape> alpha_vec(alpha);
+
316  size_t N = max_size(y, sigma, alpha);
+
317  for (size_t n = 0; n < N; n++) {
+
318  const double y_dbl = value_of(y_vec[n]);
+
319  const double sigma_dbl = value_of(sigma_vec[n]);
+
320  const double alpha_dbl = value_of(alpha_vec[n]);
+
321  const double pow_ = pow(y_dbl / sigma_dbl, alpha_dbl);
+
322 
+
323  //ccdf_log
+
324  ccdf_log -= pow_;
+
325 
+
326  //gradients
+ +
328  operands_and_partials.d_x1[n] -= alpha_dbl / y_dbl * pow_;
+ +
330  operands_and_partials.d_x2[n] -= log(y_dbl / sigma_dbl) * pow_;
+ +
332  operands_and_partials.d_x3[n] += alpha_dbl / sigma_dbl * pow_;
+
333  }
+
334 
+
335  return operands_and_partials.to_var(ccdf_log);
+
336  }
+
337 
+
338  template <class RNG>
+
339  inline double
+
340  weibull_rng(const double alpha,
+
341  const double sigma,
+
342  RNG& rng) {
+
343  using boost::variate_generator;
+
344  using boost::random::weibull_distribution;
+
345 
+
346  static const char* function = "stan::prob::weibull_rng(%1%)";
+
347 
+ + + +
351 
+
352  if(!check_finite(function, alpha, "Shape parameter"))
+
353  return 0;
+
354  if(!check_positive(function, alpha, "Shape parameter"))
+
355  return 0;
+
356  if(!check_not_nan(function, sigma, "Scale parameter"))
+
357  return 0;
+
358  if(!check_positive(function, sigma, "Scale parameter"))
+
359  return 0;
+
360 
+
361  variate_generator<RNG&, weibull_distribution<> >
+
362  weibull_rng(rng, weibull_distribution<>(alpha, sigma));
+
363  return weibull_rng();
+
364  }
+
365  }
+
366 }
+
367 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/welford__covar__estimator_8hpp.html b/doc/api/html/welford__covar__estimator_8hpp.html new file mode 100644 index 00000000000..b7375262706 --- /dev/null +++ b/doc/api/html/welford__covar__estimator_8hpp.html @@ -0,0 +1,129 @@ + + + + + +Stan: src/stan/prob/welford_covar_estimator.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
welford_covar_estimator.hpp File Reference
+
+
+
#include <vector>
+#include <stan/math/matrix/Eigen.hpp>
+
+

Go to the source code of this file.

+ + + + +

+Classes

class  stan::prob::welford_covar_estimator
 
+ + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::prob
 Templated probability distributions.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/welford__covar__estimator_8hpp_source.html b/doc/api/html/welford__covar__estimator_8hpp_source.html new file mode 100644 index 00000000000..34d7b5d1620 --- /dev/null +++ b/doc/api/html/welford__covar__estimator_8hpp_source.html @@ -0,0 +1,165 @@ + + + + + +Stan: src/stan/prob/welford_covar_estimator.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
welford_covar_estimator.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__PROB__WELFORD__COVAR__ESTIMATOR__BETA__
+
2 #define __STAN__PROB__WELFORD__COVAR__ESTIMATOR__BETA__
+
3 
+
4 #include <vector>
+ +
6 
+
7 namespace stan {
+
8 
+
9  namespace prob {
+
10 
+ +
12 
+
13  public:
+
14 
+
15  welford_covar_estimator(int n): _m(Eigen::VectorXd::Zero(n)),
+
16  _m2(Eigen::MatrixXd::Zero(n, n))
+
17  { restart(); }
+
18 
+
19  void restart() {
+
20  _num_samples = 0;
+
21  _m.setZero();
+
22  _m2.setZero();
+
23  }
+
24 
+
25  void add_sample(const Eigen::VectorXd& q) {
+
26 
+
27  ++_num_samples;
+
28 
+
29  Eigen::VectorXd delta(q - _m);
+
30  _m += delta / _num_samples;
+
31  _m2 += (q - _m) * delta.transpose();
+
32 
+
33  }
+
34 
+
35  int num_samples() { return _num_samples; }
+
36 
+
37  void sample_mean(Eigen::VectorXd& mean) { mean = _m; }
+
38 
+
39  void sample_covariance(Eigen::MatrixXd& covar) {
+
40  if(_num_samples > 1)
+
41  covar = _m2 / (_num_samples - 1.0);
+
42  }
+
43 
+
44  protected:
+
45 
+
46  double _num_samples;
+
47 
+
48  Eigen::VectorXd _m;
+
49  Eigen::MatrixXd _m2;
+
50 
+
51  };
+
52 
+
53  } // prob
+
54 
+
55 } // stan
+
56 
+
57 
+
58 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/welford__var__estimator_8hpp.html b/doc/api/html/welford__var__estimator_8hpp.html new file mode 100644 index 00000000000..794f9cff70c --- /dev/null +++ b/doc/api/html/welford__var__estimator_8hpp.html @@ -0,0 +1,129 @@ + + + + + +Stan: src/stan/prob/welford_var_estimator.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
welford_var_estimator.hpp File Reference
+
+
+
#include <vector>
+#include <stan/math/matrix/Eigen.hpp>
+
+

Go to the source code of this file.

+ + + + +

+Classes

class  stan::prob::welford_var_estimator
 
+ + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::prob
 Templated probability distributions.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/welford__var__estimator_8hpp_source.html b/doc/api/html/welford__var__estimator_8hpp_source.html new file mode 100644 index 00000000000..c727ab4d51a --- /dev/null +++ b/doc/api/html/welford__var__estimator_8hpp_source.html @@ -0,0 +1,165 @@ + + + + + +Stan: src/stan/prob/welford_var_estimator.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
welford_var_estimator.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__PROB__WELFORD__VAR__ESTIMATOR__BETA__
+
2 #define __STAN__PROB__WELFORD__VAR__ESTIMATOR__BETA__
+
3 
+
4 #include <vector>
+ +
6 
+
7 namespace stan {
+
8 
+
9  namespace prob {
+
10 
+ +
12 
+
13  public:
+
14 
+
15  welford_var_estimator(int n): _m(Eigen::VectorXd::Zero(n)),
+
16  _m2(Eigen::VectorXd::Zero(n))
+
17  { restart(); }
+
18 
+
19  void restart() {
+
20  _num_samples = 0;
+
21  _m.setZero();
+
22  _m2.setZero();
+
23  }
+
24 
+
25  void add_sample(const Eigen::VectorXd& q) {
+
26 
+
27  ++_num_samples;
+
28 
+
29  Eigen::VectorXd delta(q - _m);
+
30  _m += delta / _num_samples;
+
31  _m2 += delta.cwiseProduct(q - _m);
+
32 
+
33  }
+
34 
+
35  int num_samples() { return _num_samples; }
+
36 
+
37  void sample_mean(Eigen::VectorXd& mean) { mean = _m; }
+
38 
+
39  void sample_variance(Eigen::VectorXd& var) {
+
40  if(_num_samples > 1)
+
41  var = _m2 / (_num_samples - 1.0);
+
42  }
+
43 
+
44  protected:
+
45 
+
46  double _num_samples;
+
47 
+
48  Eigen::VectorXd _m;
+
49  Eigen::VectorXd _m2;
+
50 
+
51  };
+
52 
+
53  } // prob
+
54 
+
55 } // stan
+
56 
+
57 
+
58 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/whitespace__grammar_8hpp.html b/doc/api/html/whitespace__grammar_8hpp.html new file mode 100644 index 00000000000..a6f8efb6534 --- /dev/null +++ b/doc/api/html/whitespace__grammar_8hpp.html @@ -0,0 +1,128 @@ + + + + + +Stan: src/stan/gm/grammars/whitespace_grammar.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
whitespace_grammar.hpp File Reference
+
+
+
#include <boost/spirit/include/qi.hpp>
+
+

Go to the source code of this file.

+ + + + +

+Classes

struct  stan::gm::whitespace_grammar< Iterator >
 
+ + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::gm
 Directed graphical model compiler.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/whitespace__grammar_8hpp_source.html b/doc/api/html/whitespace__grammar_8hpp_source.html new file mode 100644 index 00000000000..40b77425fec --- /dev/null +++ b/doc/api/html/whitespace__grammar_8hpp_source.html @@ -0,0 +1,133 @@ + + + + + +Stan: src/stan/gm/grammars/whitespace_grammar.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
whitespace_grammar.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__GM__PARSER__WHITESPACE_GRAMMAR_HPP__
+
2 #define __STAN__GM__PARSER__WHITESPACE_GRAMMAR_HPP__
+
3 
+
4 #include <boost/spirit/include/qi.hpp>
+
5 
+
6 namespace stan {
+
7 
+
8  namespace gm {
+
9 
+
10  template <typename Iterator>
+ +
12  : public boost::spirit::qi::grammar<Iterator> {
+
13  public:
+ +
15  // private:
+
16  boost::spirit::qi::rule<Iterator> whitespace;
+
17  };
+
18 
+
19 
+
20  }
+
21 
+
22 }
+
23 
+
24 
+
25 
+
26 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/whitespace__grammar__def_8hpp.html b/doc/api/html/whitespace__grammar__def_8hpp.html new file mode 100644 index 00000000000..e175ab5eef1 --- /dev/null +++ b/doc/api/html/whitespace__grammar__def_8hpp.html @@ -0,0 +1,123 @@ + + + + + +Stan: src/stan/gm/grammars/whitespace_grammar_def.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
whitespace_grammar_def.hpp File Reference
+
+
+
#include <boost/spirit/include/qi.hpp>
+#include <stan/gm/grammars/whitespace_grammar.hpp>
+
+

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::gm
 Directed graphical model compiler.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/whitespace__grammar__def_8hpp_source.html b/doc/api/html/whitespace__grammar__def_8hpp_source.html new file mode 100644 index 00000000000..685c297eba5 --- /dev/null +++ b/doc/api/html/whitespace__grammar__def_8hpp_source.html @@ -0,0 +1,142 @@ + + + + + +Stan: src/stan/gm/grammars/whitespace_grammar_def.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
whitespace_grammar_def.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__GM__PARSER__WHITESPACE_GRAMMAR_DEF__HPP__
+
2 #define __STAN__GM__PARSER__WHITESPACE_GRAMMAR_DEF__HPP__
+
3 
+
4 #include <boost/spirit/include/qi.hpp>
+
5 
+ +
7 
+
8 namespace stan {
+
9 
+
10  namespace gm {
+
11 
+
12  template <typename Iterator>
+ +
14  : whitespace_grammar::base_type(whitespace)
+
15  {
+
16  using boost::spirit::qi::omit;
+
17  using boost::spirit::qi::char_;
+
18  using boost::spirit::qi::eol;
+
19  whitespace
+
20  = ( ( omit["/*"]
+
21  >> *(char_ - "*/") )
+
22  > omit["*/"] )
+
23  | ( omit["//"] >> *(char_ - eol) )
+
24  | ( omit["#"] >> *(char_ - eol) )
+
25  | boost::spirit::ascii::space_type()
+
26  ;
+
27  }
+
28 
+
29  }
+
30 
+
31 }
+
32 
+
33 
+
34 
+
35 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/whitespace__grammar__inst_8cpp.html b/doc/api/html/whitespace__grammar__inst_8cpp.html new file mode 100644 index 00000000000..15a92b34047 --- /dev/null +++ b/doc/api/html/whitespace__grammar__inst_8cpp.html @@ -0,0 +1,123 @@ + + + + + +Stan: src/stan/gm/grammars/whitespace_grammar_inst.cpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
whitespace_grammar_inst.cpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::gm
 Directed graphical model compiler.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/whitespace__grammar__inst_8cpp_source.html b/doc/api/html/whitespace__grammar__inst_8cpp_source.html new file mode 100644 index 00000000000..25ee5f3905c --- /dev/null +++ b/doc/api/html/whitespace__grammar__inst_8cpp_source.html @@ -0,0 +1,115 @@ + + + + + +Stan: src/stan/gm/grammars/whitespace_grammar_inst.cpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
whitespace_grammar_inst.cpp
+
+
+Go to the documentation of this file.
+ +
3 
+
4 namespace stan {
+
5  namespace gm {
+
6  template struct whitespace_grammar<pos_iterator_t>;
+
7  }
+
8 }
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/windowed__adaptation_8hpp.html b/doc/api/html/windowed__adaptation_8hpp.html new file mode 100644 index 00000000000..c74e34ff3b3 --- /dev/null +++ b/doc/api/html/windowed__adaptation_8hpp.html @@ -0,0 +1,130 @@ + + + + + +Stan: src/stan/mcmc/windowed_adaptation.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
windowed_adaptation.hpp File Reference
+
+
+
#include <ostream>
+#include <string>
+#include <stan/mcmc/base_adaptation.hpp>
+
+

Go to the source code of this file.

+ + + + +

+Classes

class  stan::mcmc::windowed_adaptation
 
+ + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::mcmc
 Markov chain Monte Carlo samplers.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/windowed__adaptation_8hpp_source.html b/doc/api/html/windowed__adaptation_8hpp_source.html new file mode 100644 index 00000000000..d1645bd7e2f --- /dev/null +++ b/doc/api/html/windowed__adaptation_8hpp_source.html @@ -0,0 +1,234 @@ + + + + + +Stan: src/stan/mcmc/windowed_adaptation.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
windowed_adaptation.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__MCMC__WINDOWED__ADAPTATION__BETA__
+
2 #define __STAN__MCMC__WINDOWED__ADAPTATION__BETA__
+
3 
+
4 #include <ostream>
+
5 #include <string>
+
6 
+ +
8 
+
9 namespace stan {
+
10 
+
11  namespace mcmc {
+
12 
+ +
14 
+
15  public:
+
16 
+
17  windowed_adaptation(std::string name): _estimator_name(name) {
+
18  _num_warmup = 0;
+ + + +
22 
+
23  restart();
+
24  }
+
25 
+
26  void restart() {
+ + + +
30  }
+
31 
+
32  void set_window_params(unsigned int num_warmup,
+
33  unsigned int init_buffer,
+
34  unsigned int term_buffer,
+
35  unsigned int base_window,
+
36  std::ostream* e = 0) {
+
37 
+
38  if (num_warmup < 20) {
+
39  if (e) {
+
40  *e << "WARNING: No " << _estimator_name << " estimation is" << std::endl;
+
41  *e << " performed for num_warmup < 20" << std::endl << std::endl;
+
42  }
+
43  return;
+
44  }
+
45 
+
46  if (init_buffer + base_window + term_buffer > num_warmup) {
+
47 
+
48  if (e) {
+
49  *e << "WARNING: The initial buffer, adaptation window, and terminal buffer" << std::endl;
+
50  *e << " overflow the total number of warmup iterations." << std::endl;
+
51  }
+
52 
+
53  _num_warmup = num_warmup;
+
54  _adapt_init_buffer = 0.15 * num_warmup;
+
55  _adapt_term_buffer = 0.10 * num_warmup;
+ +
57 
+
58  if(e) {
+
59  *e << " Defaulting to a 15%/75%/10% partition," << std::endl;
+
60  *e << " init_buffer = " << _adapt_init_buffer << std::endl;
+
61  *e << " adapt_window = " << _adapt_base_window << std::endl;
+
62  *e << " term_buffer = " << _adapt_term_buffer << std::endl << std::endl;
+
63  }
+
64 
+
65  return;
+
66 
+
67  }
+
68 
+
69  _num_warmup = num_warmup;
+
70  _adapt_init_buffer = init_buffer;
+
71  _adapt_term_buffer = term_buffer;
+
72  _adapt_base_window = base_window;
+
73  restart();
+
74 
+
75  }
+
76 
+ + + + +
81  }
+
82 
+ + + +
86  }
+
87 
+ +
89 
+ +
91 
+
92  _adapt_window_size *= 2;
+ +
94 
+ +
96 
+
97  // Bounday of the following window, not the window just computed
+
98  unsigned int next_window_boundary = _adapt_next_window + 2 * _adapt_window_size;
+
99 
+
100  // If the following window overtakes the full adaptation window,
+
101  // then stretch the current window to the end of the full window
+
102  if (next_window_boundary >= _num_warmup - _adapt_term_buffer) {
+ +
104  }
+
105 
+
106  }
+
107 
+
108  protected:
+
109 
+
110  std::string _estimator_name;
+
111 
+
112  unsigned int _num_warmup;
+
113  unsigned int _adapt_init_buffer;
+
114  unsigned int _adapt_term_buffer;
+
115  unsigned int _adapt_base_window;
+
116 
+
117  unsigned int _adapt_window_counter;
+
118  unsigned int _adapt_next_window;
+
119  unsigned int _adapt_window_size;
+
120 
+
121  };
+
122 
+
123  } // mcmc
+
124 
+
125 } // stan
+
126 
+
127 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/wishart_8hpp.html b/doc/api/html/wishart_8hpp.html new file mode 100644 index 00000000000..03232ae0a78 --- /dev/null +++ b/doc/api/html/wishart_8hpp.html @@ -0,0 +1,155 @@ + + + + + +Stan: src/stan/prob/distributions/multivariate/continuous/wishart.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
wishart.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::prob
 Templated probability distributions.
 
+ + + + + + + + + + + +

+Functions

template<bool propto, typename T_y , typename T_dof , typename T_scale >
boost::math::tools::promote_args
+< T_y, T_dof, T_scale >::type 
stan::prob::wishart_log (const Eigen::Matrix< T_y, Eigen::Dynamic, Eigen::Dynamic > &W, const T_dof &nu, const Eigen::Matrix< T_scale, Eigen::Dynamic, Eigen::Dynamic > &S)
 The log of the Wishart density for the given W, degrees of freedom, and scale matrix.
 
template<typename T_y , typename T_dof , typename T_scale >
boost::math::tools::promote_args
+< T_y, T_dof, T_scale >::type 
stan::prob::wishart_log (const Eigen::Matrix< T_y, Eigen::Dynamic, Eigen::Dynamic > &W, const T_dof &nu, const Eigen::Matrix< T_scale, Eigen::Dynamic, Eigen::Dynamic > &S)
 
template<class RNG >
Eigen::Matrix< double,
+Eigen::Dynamic, Eigen::Dynamic > 
stan::prob::wishart_rng (const double nu, const Eigen::Matrix< double, Eigen::Dynamic, Eigen::Dynamic > &S, RNG &rng)
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/wishart_8hpp_source.html b/doc/api/html/wishart_8hpp_source.html new file mode 100644 index 00000000000..e9a1b3ffbfe --- /dev/null +++ b/doc/api/html/wishart_8hpp_source.html @@ -0,0 +1,251 @@ + + + + + +Stan: src/stan/prob/distributions/multivariate/continuous/wishart.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
wishart.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__PROB__DISTRIBUTIONS__MULTIVARIATE__CONTINUOUS__WISHART_HPP__
+
2 #define __STAN__PROB__DISTRIBUTIONS__MULTIVARIATE__CONTINUOUS__WISHART_HPP__
+
3 
+ + + + +
8 #include <stan/prob/traits.hpp>
+
9 #include <boost/concept_check.hpp>
+ + + + + + + + + + + +
21 
+
22 namespace stan {
+
23 
+
24  namespace prob {
+
25 
+
26  // Wishart(Sigma|n,Omega) [Sigma, Omega symmetric, non-neg, definite;
+
27  // Sigma.dims() = Omega.dims();
+
28  // n > Sigma.rows() - 1]
+
56  template <bool propto,
+
57  typename T_y, typename T_dof, typename T_scale>
+
58  typename boost::math::tools::promote_args<T_y,T_dof,T_scale>::type
+
59  wishart_log(const Eigen::Matrix<T_y,Eigen::Dynamic,Eigen::Dynamic>& W,
+
60  const T_dof& nu,
+
61  const Eigen::Matrix<T_scale,Eigen::Dynamic,Eigen::Dynamic>& S) {
+
62  static const char* function = "stan::prob::wishart_log(%1%)";
+
63 
+ + +
66  using boost::math::tools::promote_args;
+
67 
+ +
69  typename promote_args<T_y,T_dof,T_scale>::type lp(0.0);
+
70  if (!check_greater(function, nu, k-1,
+
71  "Degrees of freedom parameter", &lp))
+
72  return lp;
+
73  if (!check_size_match(function,
+
74  W.rows(), "Rows of random variable",
+
75  W.cols(), "columns of random variable",
+
76  &lp))
+
77  return lp;
+
78  if (!check_size_match(function,
+
79  S.rows(), "Rows of scale parameter",
+
80  S.cols(), "columns of scale parameter",
+
81  &lp))
+
82  return lp;
+
83  if (!check_size_match(function,
+
84  W.rows(), "Rows of random variable",
+
85  S.rows(), "columns of scale parameter",
+
86  &lp))
+
87  return lp;
+
88  // FIXME: domain checks
+
89 
+ + +
92  using stan::math::LDLT_factor;
+ +
94 
+ +
96  if (!check_ldlt_factor(function,ldlt_W,"LDLT_Factor of random variable",&lp)) {
+
97  return lp;
+
98  }
+ +
100  if (!check_ldlt_factor(function,ldlt_S,"LDLT_Factor of scale parameter",&lp)) {
+
101  return lp;
+
102  }
+
103 
+
104  using stan::math::trace;
+
105  using stan::math::lmgamma;
+ +
107  lp += nu * k * NEG_LOG_TWO_OVER_TWO;
+
108 
+ +
110  lp -= lmgamma(k, 0.5 * nu);
+
111 
+ +
113  lp -= 0.5 * nu * log_determinant_ldlt(ldlt_S);
+
114 
+ +
116 // L_S = crossprod(mdivide_left_tri_low(L_S));
+
117 // Eigen::Matrix<T_scale,Eigen::Dynamic,1> S_inv_vec = Eigen::Map<
+
118 // const Eigen::Matrix<T_scale,Eigen::Dynamic,Eigen::Dynamic> >(
+
119 // &L_S(0), L_S.size(), 1);
+
120 // Eigen::Matrix<T_y,Eigen::Dynamic,1> W_vec = Eigen::Map<
+
121 // const Eigen::Matrix<T_y,Eigen::Dynamic,Eigen::Dynamic> >(
+
122 // &W(0), W.size(), 1);
+
123 // lp -= 0.5 * dot_product(S_inv_vec, W_vec); // trace(S^-1 * W)
+
124  Eigen::Matrix<typename promote_args<T_y,T_scale>::type,Eigen::Dynamic,Eigen::Dynamic> Sinv_W(mdivide_left_ldlt(ldlt_S,W));
+
125  lp -= 0.5*trace(Sinv_W);
+
126  }
+
127 
+
128  if (include_summand<propto,T_y,T_dof>::value && nu != (k + 1))
+
129  lp += 0.5*(nu - k - 1.0) * log_determinant_ldlt(ldlt_W);
+
130  return lp;
+
131  }
+
132 
+
133  template <typename T_y, typename T_dof, typename T_scale>
+
134  inline
+
135  typename boost::math::tools::promote_args<T_y,T_dof,T_scale>::type
+
136  wishart_log(const Eigen::Matrix<T_y,Eigen::Dynamic,Eigen::Dynamic>& W,
+
137  const T_dof& nu,
+
138  const Eigen::Matrix<T_scale,Eigen::Dynamic,Eigen::Dynamic>& S) {
+
139  return wishart_log<false>(W,nu,S);
+
140  }
+
141 
+
142  template <class RNG>
+
143  inline Eigen::Matrix<double, Eigen::Dynamic, Eigen::Dynamic>
+
144  wishart_rng(const double nu,
+
145  const Eigen::Matrix<double,Eigen::Dynamic,Eigen::Dynamic>& S,
+
146  RNG& rng) {
+
147 
+
148  static const char* function = "stan::prob::wishart_rng(%1%)";
+
149 
+ + +
152 
+
153  check_positive(function,nu,"degrees of freedom");
+
154  check_size_match(function,
+
155  S.rows(), "Rows of scale parameter",
+
156  S.cols(), "columns of scale parameter");
+
157 
+
158  Eigen::Matrix<double,Eigen::Dynamic,Eigen::Dynamic> B(S.rows(), S.cols());
+
159  B.setZero();
+
160 
+
161  for(int i = 0; i < S.cols(); i++) {
+
162  B(i,i) = std::sqrt(chi_square_rng(nu - i, rng));
+
163  for(int j = 0; j < i; j++)
+
164  B(j,i) = normal_rng(0,1,rng);
+
165  }
+
166 
+
167  return stan::math::multiply_lower_tri_self_transpose(S.llt().matrixL() * B);
+
168  }
+
169  }
+
170 }
+
171 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/writer_8hpp.html b/doc/api/html/writer_8hpp.html new file mode 100644 index 00000000000..a130464c4ed --- /dev/null +++ b/doc/api/html/writer_8hpp.html @@ -0,0 +1,130 @@ + + + + + +Stan: src/stan/io/writer.hpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
writer.hpp File Reference
+
+
+
#include <stdexcept>
+#include <stan/prob/transform.hpp>
+
+

Go to the source code of this file.

+ + + + + +

+Classes

class  stan::io::writer< T >
 A stream-based writer for integer, scalar, vector, matrix and array data types, which transforms from constrained to a sequence of constrained variables. More...
 
+ + + + + + + +

+Namespaces

namespace  stan
 Probability, optimization and sampling library.
 
namespace  stan::io
 Input/output utilities.
 
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/api/html/writer_8hpp_source.html b/doc/api/html/writer_8hpp_source.html new file mode 100644 index 00000000000..bc820645787 --- /dev/null +++ b/doc/api/html/writer_8hpp_source.html @@ -0,0 +1,332 @@ + + + + + +Stan: src/stan/io/writer.hpp Source File + + + + + + + + + +
+
+ + + + + + + +
+
Stan +  2.2.0 +
+
probability, sampling & optimization
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
writer.hpp
+
+
+Go to the documentation of this file.
1 #ifndef __STAN__IO__WRITER_HPP__
+
2 #define __STAN__IO__WRITER_HPP__
+
3 
+
4 #include <stdexcept>
+ +
6 
+
7 namespace stan {
+
8 
+
9  namespace io {
+
10 
+
23  template <typename T>
+
24  class writer {
+
25  private:
+
26  std::vector<T> data_r_;
+
27  std::vector<int> data_i_;
+
28  public:
+
29 
+
30  typedef Eigen::Matrix<T,Eigen::Dynamic,Eigen::Dynamic> matrix_t;
+
31  typedef Eigen::Matrix<T,Eigen::Dynamic,1> vector_t;
+
32  typedef Eigen::Matrix<T,1,Eigen::Dynamic> row_vector_t;
+
33 
+
34  typedef Eigen::Array<T,Eigen::Dynamic,1> array_vec_t;
+
35 
+
40  const double CONSTRAINT_TOLERANCE;
+
41 
+
49  writer(std::vector<T>& data_r,
+
50  std::vector<int>& data_i)
+
51  : data_r_(data_r),
+
52  data_i_(data_i),
+ +
54  data_r_.clear();
+
55  data_i_.clear();
+
56  }
+
57 
+
61  ~writer() { }
+
62 
+
69  std::vector<T>& data_r() {
+
70  return data_r_;
+
71  }
+
72 
+
73 
+
80  std::vector<int>& data_i() {
+
81  return data_i_;
+
82  }
+
83 
+
89  void integer(int n) {
+
90  data_i_.push_back(n);
+
91  }
+
92 
+
100  void scalar_unconstrain(T& y) {
+
101  data_r_.push_back(y);
+
102  }
+
103 
+ +
116  if (y < 0.0)
+
117  BOOST_THROW_EXCEPTION(std::runtime_error ("y is negative"));
+
118  data_r_.push_back(log(y));
+
119  }
+
120 
+
132  void scalar_lb_unconstrain(double lb, T& y) {
+
133  data_r_.push_back(stan::prob::lb_free(y,lb));
+
134  }
+
135 
+
146  void scalar_ub_unconstrain(double ub, T& y) {
+
147  data_r_.push_back(stan::prob::ub_free(y,ub));
+
148  }
+
149 
+
162  void scalar_lub_unconstrain(double lb, double ub, T& y) {
+
163  data_r_.push_back(stan::prob::lub_free(y,lb,ub));
+
164  }
+
165 
+
176  void corr_unconstrain(T& y) {
+
177  data_r_.push_back(stan::prob::corr_free(y));
+
178  }
+
179 
+
191  void prob_unconstrain(T& y) {
+
192  data_r_.push_back(stan::prob::prob_free(y));
+
193  }
+
194 
+ +
211  if (y.size() == 0) return;
+
212  stan::math::check_ordered("stan::io::ordered_unconstrain(%1%)", y, "Vector");
+
213  data_r_.push_back(y[0]);
+
214  for (typename vector_t::size_type i = 1; i < y.size(); ++i) {
+
215  data_r_.push_back(log(y[i] - y[i-1]));
+
216  }
+
217  }
+
218 
+ +
235  // reimplements pos_ordered_free in prob to avoid malloc
+
236  if (y.size() == 0) return;
+
237  stan::math::check_positive_ordered("stan::io::positive_ordered_unconstrain(%1%)", y, "Vector");
+
238  data_r_.push_back(log(y[0]));
+
239  for (typename vector_t::size_type i = 1; i < y.size(); ++i) {
+
240  data_r_.push_back(log(y[i] - y[i-1]));
+
241  }
+
242  }
+
243 
+
244 
+
250  void vector_unconstrain(const vector_t& y) {
+
251  for (typename vector_t::size_type i = 0; i < y.size(); ++i)
+
252  data_r_.push_back(y[i]);
+
253  }
+
254 
+ +
261  for (typename vector_t::size_type i = 0; i < y.size(); ++i)
+
262  data_r_.push_back(y[i]);
+
263  }
+
264 
+
270  void matrix_unconstrain(const matrix_t& y) {
+
271  for (typename matrix_t::size_type j = 0; j < y.cols(); ++j)
+
272  for (typename matrix_t::size_type i = 0; i < y.rows(); ++i)
+
273  data_r_.push_back(y(i,j));
+
274  }
+
275 
+
276  void vector_lb_unconstrain(double lb, vector_t& y) {
+
277  for (int i = 0; i < y.size(); ++i)
+
278  scalar_lb_unconstrain(lb,y(i));
+
279  }
+ +
281  for (int i = 0; i < y.size(); ++i)
+
282  scalar_lb_unconstrain(lb,y(i));
+
283  }
+
284  void matrix_lb_unconstrain(double lb, matrix_t& y) {
+
285  for (typename matrix_t::size_type j = 0; j < y.cols(); ++j)
+
286  for (typename matrix_t::size_type i = 0; i < y.rows(); ++i)
+
287  scalar_lb_unconstrain(lb,y(i,j));
+
288  }
+
289 
+
290  void vector_ub_unconstrain(double ub, vector_t& y) {
+
291  for (int i = 0; i < y.size(); ++i)
+
292  scalar_ub_unconstrain(ub,y(i));
+
293  }
+ +
295  for (int i = 0; i < y.size(); ++i)
+
296  scalar_ub_unconstrain(ub,y(i));
+
297  }
+
298  void matrix_ub_unconstrain(double ub, matrix_t& y) {
+
299  for (typename matrix_t::size_type j = 0; j < y.cols(); ++j)
+
300  for (typename matrix_t::size_type i = 0; i < y.rows(); ++i)
+
301  scalar_ub_unconstrain(ub,y(i,j));
+
302  }
+
303 
+
304 
+
305  void vector_lub_unconstrain(double lb, double ub, vector_t& y) {
+
306  for (int i = 0; i < y.size(); ++i)
+
307  scalar_lub_unconstrain(lb,ub,y(i));
+
308  }
+
309  void row_vector_lub_unconstrain(double lb, double ub, row_vector_t& y) {
+
310  for (int i = 0; i < y.size(); ++i)
+
311  scalar_lub_unconstrain(lb,ub,y(i));
+
312  }
+
313  void matrix_lub_unconstrain(double lb, double ub, matrix_t& y) {
+
314  for (typename matrix_t::size_type j = 0; j < y.cols(); ++j)
+
315  for (typename matrix_t::size_type i = 0; i < y.rows(); ++i)
+
316  scalar_lub_unconstrain(lb,ub,y(i,j));
+
317  }
+
318 
+
319 
+
320 
+ +
336  stan::math::check_unit_vector("stan::io::unit_vector_unconstrain(%1%)", y, "Vector");
+ +
338  for (typename vector_t::size_type i = 0; i < uy.size(); ++i)
+
339  data_r_.push_back(uy[i]);
+
340  }
+
341 
+
342 
+ +
358  stan::math::check_simplex("stan::io::simplex_unconstrain(%1%)", y, "Vector");
+ +
360  for (typename vector_t::size_type i = 0; i < uy.size(); ++i)
+
361  data_r_.push_back(uy[i]);
+
362  }
+
363 
+ +
376  // FIXME: optimize by unrolling cholesky_factor_free
+
377  Eigen::Matrix<T,Eigen::Dynamic,1> y_free
+ +
379  for (int i = 0; i < y_free.size(); ++i)
+
380  data_r_.push_back(y_free[i]);
+
381  }
+
382 
+
383 
+ +
396  typename matrix_t::size_type k = y.rows();
+
397  if (k == 0 || y.cols() != k)
+
398  BOOST_THROW_EXCEPTION(
+
399  std::runtime_error ("y must have elements and y must be a square matrix"));
+
400  typename matrix_t::size_type k_choose_2 = (k * (k-1)) / 2;
+
401  array_vec_t cpcs(k_choose_2);
+
402  array_vec_t sds(k);
+
403  bool successful = stan::prob::factor_cov_matrix(cpcs,sds,y);
+
404  if(!successful)
+
405  BOOST_THROW_EXCEPTION(std::runtime_error ("factor_cov_matrix failed"));
+
406  for (typename matrix_t::size_type i = 0; i < k_choose_2; ++i)
+
407  data_r_.push_back(cpcs[i]);
+
408  for (typename matrix_t::size_type i = 0; i < k; ++i)
+
409  data_r_.push_back(sds[i]);
+
410  }
+
411 
+ +
428  stan::math::check_corr_matrix("stan::io::corr_matrix_unconstrain(%1%)", y, "Matrix");
+
429  size_t k = y.rows();
+
430  size_t k_choose_2 = (k * (k-1)) / 2;
+
431  array_vec_t cpcs(k_choose_2);
+
432  array_vec_t sds(k);
+
433  bool successful = stan::prob::factor_cov_matrix(cpcs,sds,y);
+
434  if (!successful)
+
435  BOOST_THROW_EXCEPTION(std::runtime_error ("y cannot be factorized by factor_cov_matrix"));
+
436  for (size_t i = 0; i < k; ++i) {
+
437  // sds on log scale unconstrained
+
438  if (fabs(sds[i] - 0.0) >= CONSTRAINT_TOLERANCE)
+
439  BOOST_THROW_EXCEPTION(std::runtime_error ("sds on log scale are unconstrained"));
+
440  }
+
441  for (size_t i = 0; i < k_choose_2; ++i)
+
442  data_r_.push_back(cpcs[i]);
+
443  }
+
444 
+
445  };
+
446  }
+
447 
+
448 }
+
449 
+
450 #endif
+
+
+
+ +      + [ Stan Home Page ] + + + © 2011–2014, + Stan Development Team. +      + + +
diff --git a/doc/stan-reference-2.2.0.pdf b/doc/stan-reference-2.2.0.pdf new file mode 100644 index 0000000000000000000000000000000000000000..9fd7157487d1d41eb4499aae6e1007ba22a8c4a2 GIT binary patch literal 1553572 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

)nDKs(m5QODu$z+Tu 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%0DB`Bz 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

YuuKGPBPnb3pIM?9K??@}n-zbs_KQlPCa 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

WfZIwV5?32LDMi@ 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

R(=zyJ4lkZN^}e?XD{1&m*9881scDu%t1 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

uItCoUNINe26aWMu{S)xMtv%2ep~YRzbaU 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

`;|%Kx0MWt0COj=vP9}DfI_U^6 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¬4b|c%~16pa;+_56KQgaa+D-Lb7 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

80V}5A2CxBXv;ZwP(Wa{;H^Vu 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®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 z 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�G+3lT@H;ILN?nIGpg_64M;C6GlNR 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 P+4)jr{QMdQx5@qs46_+e literal 0 HcmV?d00001

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 z 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